From e09993b9a2c21d197bfbcef236c24f28bf85e978 Mon Sep 17 00:00:00 2001 From: ysaito1001 Date: Thu, 2 Oct 2025 11:55:28 -0500 Subject: [PATCH 1/5] Update models due to the latest partitions --- aws/sdk/aws-models/bedrock-runtime.json | 706 +- aws/sdk/aws-models/cloudwatch-logs.json | 1605 +- .../{config.json => config-service.json} | 1131 +- aws/sdk/aws-models/dynamodb.json | 676 +- aws/sdk/aws-models/ec2.json | 116238 ++++++++------- aws/sdk/aws-models/ecs.json | 5053 +- aws/sdk/aws-models/glacier.json | 44 - aws/sdk/aws-models/iam.json | 2827 +- aws/sdk/aws-models/kms.json | 1045 +- aws/sdk/aws-models/lambda.json | 4220 +- aws/sdk/aws-models/polly.json | 113 +- aws/sdk/aws-models/qldb-session.json | 44 - .../{route53.json => route-53.json} | 309 +- aws/sdk/aws-models/s3-control.json | 45486 +++--- aws/sdk/aws-models/s3.json | 75079 +++++----- aws/sdk/aws-models/sdk-endpoints.json | 14827 +- aws/sdk/aws-models/sdk-partitions.json | 100 +- aws/sdk/aws-models/sso-oidc.json | 269 +- aws/sdk/aws-models/sso.json | 44 - aws/sdk/aws-models/sts.json | 205 +- aws/sdk/aws-models/timestream-query.json | 939 +- aws/sdk/aws-models/timestream-write.json | 402 +- aws/sdk/aws-models/transcribe-streaming.json | 1741 +- 23 files changed, 158277 insertions(+), 114826 deletions(-) rename aws/sdk/aws-models/{config.json => config-service.json} (89%) rename aws/sdk/aws-models/{route53.json => route-53.json} (96%) diff --git a/aws/sdk/aws-models/bedrock-runtime.json b/aws/sdk/aws-models/bedrock-runtime.json index 22a51dac92c..b8250721c9a 100644 --- a/aws/sdk/aws-models/bedrock-runtime.json +++ b/aws/sdk/aws-models/bedrock-runtime.json @@ -49,6 +49,9 @@ }, { "target": "com.amazonaws.bedrockruntime#InferenceResource" + }, + { + "target": "com.amazonaws.bedrockruntime#TokenizerResource" } ], "traits": { @@ -585,17 +588,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -609,17 +601,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -633,17 +614,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -657,17 +627,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -771,6 +730,9 @@ { "target": "com.amazonaws.bedrockruntime#ServiceQuotaExceededException" }, + { + "target": "com.amazonaws.bedrockruntime#ServiceUnavailableException" + }, { "target": "com.amazonaws.bedrockruntime#ThrottlingException" }, @@ -1075,6 +1037,15 @@ "smithy.api#documentation": "

The Model automatically decides if a tool should be called or whether to generate text instead. For example, {\"auto\" : {}}.

" } }, + "com.amazonaws.bedrockruntime#AutomatedReasoningRuleIdentifier": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 12 + }, + "smithy.api#pattern": "^[a-z0-9]{12}$" + } + }, "com.amazonaws.bedrockruntime#BidirectionalInputPayloadPart": { "type": "structure", "members": { @@ -2030,6 +2001,26 @@ "smithy.api#documentation": "

The trace object in a response from ConverseStream. Currently, you can only trace guardrails.

" } }, + "com.amazonaws.bedrockruntime#ConverseTokensRequest": { + "type": "structure", + "members": { + "messages": { + "target": "com.amazonaws.bedrockruntime#Messages", + "traits": { + "smithy.api#documentation": "

An array of messages to count tokens for.

" + } + }, + "system": { + "target": "com.amazonaws.bedrockruntime#SystemContentBlocks", + "traits": { + "smithy.api#documentation": "

The system content blocks to count tokens for. System content provides instructions or context to the model about how it should behave or respond. The token count will include any system content provided.

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

The inputs from a Converse API request for token counting.

This structure mirrors the input format for the Converse operation, allowing you to count tokens for conversation-based inference requests.

" + } + }, "com.amazonaws.bedrockruntime#ConverseTrace": { "type": "structure", "members": { @@ -2050,6 +2041,102 @@ "smithy.api#documentation": "

The trace object in a response from Converse. Currently, you can only trace guardrails.

" } }, + "com.amazonaws.bedrockruntime#CountTokens": { + "type": "operation", + "input": { + "target": "com.amazonaws.bedrockruntime#CountTokensRequest" + }, + "output": { + "target": "com.amazonaws.bedrockruntime#CountTokensResponse" + }, + "errors": [ + { + "target": "com.amazonaws.bedrockruntime#AccessDeniedException" + }, + { + "target": "com.amazonaws.bedrockruntime#InternalServerException" + }, + { + "target": "com.amazonaws.bedrockruntime#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.bedrockruntime#ServiceUnavailableException" + }, + { + "target": "com.amazonaws.bedrockruntime#ThrottlingException" + }, + { + "target": "com.amazonaws.bedrockruntime#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns the token count for a given inference request. This operation helps you estimate token usage before sending requests to foundation models by returning the token count that would be used if the same input were sent to the model in an inference request.

Token counting is model-specific because different models use different tokenization strategies. The token count returned by this operation will match the token count that would be charged if the same input were sent to the model in an InvokeModel or Converse request.

You can use this operation to:

This operation accepts the same input formats as InvokeModel and Converse, allowing you to count tokens for both raw text inputs and structured conversation formats.

The following operations are related to CountTokens:

", + "smithy.api#http": { + "code": 200, + "method": "POST", + "uri": "/model/{modelId}/count-tokens" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.bedrockruntime#CountTokensInput": { + "type": "union", + "members": { + "invokeModel": { + "target": "com.amazonaws.bedrockruntime#InvokeModelTokensRequest", + "traits": { + "smithy.api#documentation": "

An InvokeModel request for which to count tokens. Use this field when you want to count tokens for a raw text input that would be sent to the InvokeModel operation.

" + } + }, + "converse": { + "target": "com.amazonaws.bedrockruntime#ConverseTokensRequest", + "traits": { + "smithy.api#documentation": "

A Converse request for which to count tokens. Use this field when you want to count tokens for a conversation-based input that would be sent to the Converse operation.

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

The input value for token counting. The value should be either an InvokeModel or Converse request body.

" + } + }, + "com.amazonaws.bedrockruntime#CountTokensRequest": { + "type": "structure", + "members": { + "modelId": { + "target": "com.amazonaws.bedrockruntime#FoundationModelVersionIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier or ARN of the foundation model to use for token counting. Each model processes tokens differently, so the token count is specific to the model you specify.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "input": { + "target": "com.amazonaws.bedrockruntime#CountTokensInput", + "traits": { + "smithy.api#documentation": "

The input for which to count tokens. The structure of this parameter depends on whether you're counting tokens for an InvokeModel or Converse request:

The input format must be compatible with the model specified in the modelId parameter.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.bedrockruntime#CountTokensResponse": { + "type": "structure", + "members": { + "inputTokens": { + "target": "smithy.api#Integer", + "traits": { + "smithy.api#documentation": "

The number of tokens in the provided input according to the specified model's tokenization rules. This count represents the number of input tokens that would be processed if the same input were sent to the model in an inference request. Use this value to estimate costs and ensure your inputs stay within model token limits.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.bedrockruntime#DocumentBlock": { "type": "structure", "members": { @@ -2315,6 +2402,17 @@ "smithy.api#documentation": "

Contains the content of a document.

" } }, + "com.amazonaws.bedrockruntime#FoundationModelVersionIdentifier": { + "type": "string", + "traits": { + "smithy.api#documentation": "ARN or ID of a Bedrock model", + "smithy.api#length": { + "min": 1, + "max": 256 + }, + "smithy.api#pattern": "^[a-zA-Z_\\.\\-/0-9:]+$" + } + }, "com.amazonaws.bedrockruntime#GetAsyncInvoke": { "type": "operation", "input": { @@ -2480,6 +2578,12 @@ "smithy.api#documentation": "

The contextual grounding policy used for the guardrail assessment.

" } }, + "automatedReasoningPolicy": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningPolicyAssessment", + "traits": { + "smithy.api#documentation": "

The automated reasoning policy assessment results, including logical validation findings for the input content.

" + } + }, "invocationMetrics": { "target": "com.amazonaws.bedrockruntime#GuardrailInvocationMetrics", "traits": { @@ -2515,6 +2619,477 @@ "target": "com.amazonaws.bedrockruntime#GuardrailAssessment" } }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningDifferenceScenarioList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningScenario" + }, + "traits": { + "smithy.api#length": { + "max": 2 + } + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningFinding": { + "type": "union", + "members": { + "valid": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningValidFinding", + "traits": { + "smithy.api#documentation": "

Contains the result when the automated reasoning evaluation determines that the claims in the input are logically valid and definitively true based on the provided premises and policy rules.

" + } + }, + "invalid": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningInvalidFinding", + "traits": { + "smithy.api#documentation": "

Contains the result when the automated reasoning evaluation determines that the claims in the input are logically invalid and contradict the established premises or policy rules.

" + } + }, + "satisfiable": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningSatisfiableFinding", + "traits": { + "smithy.api#documentation": "

Contains the result when the automated reasoning evaluation determines that the claims in the input could be either true or false depending on additional assumptions not provided in the input context.

" + } + }, + "impossible": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningImpossibleFinding", + "traits": { + "smithy.api#documentation": "

Contains the result when the automated reasoning evaluation determines that no valid logical conclusions can be drawn due to contradictions in the premises or policy rules themselves.

" + } + }, + "translationAmbiguous": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTranslationAmbiguousFinding", + "traits": { + "smithy.api#documentation": "

Contains the result when the automated reasoning evaluation detects that the input has multiple valid logical interpretations, requiring additional context or clarification to proceed with validation.

" + } + }, + "tooComplex": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTooComplexFinding", + "traits": { + "smithy.api#documentation": "

Contains the result when the automated reasoning evaluation cannot process the input due to its complexity or volume exceeding the system's processing capacity for logical analysis.

" + } + }, + "noTranslations": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningNoTranslationsFinding", + "traits": { + "smithy.api#documentation": "

Contains the result when the automated reasoning evaluation cannot extract any relevant logical information from the input that can be validated against the policy rules.

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

Represents a logical validation result from automated reasoning policy evaluation. The finding indicates whether claims in the input are logically valid, invalid, satisfiable, impossible, or have other logical issues.

" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningFindingList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningFinding" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningImpossibleFinding": { + "type": "structure", + "members": { + "translation": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTranslation", + "traits": { + "smithy.api#documentation": "

The logical translation of the input that this finding evaluates.

" + } + }, + "contradictingRules": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningRuleList", + "traits": { + "smithy.api#documentation": "

The automated reasoning policy rules that contradict the claims and/or premises in the input.

" + } + }, + "logicWarning": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningLogicWarning", + "traits": { + "smithy.api#documentation": "

Indication of a logic issue with the translation without needing to consider the automated reasoning policy rules.

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

Indicates that no valid claims can be made due to logical contradictions in the premises or rules.

" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningInputTextReference": { + "type": "structure", + "members": { + "text": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningStatementNaturalLanguageContent", + "traits": { + "smithy.api#documentation": "

The specific text from the original input that this reference points to.

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

References a portion of the original input text that corresponds to logical elements.

" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningInputTextReferenceList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningInputTextReference" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningInvalidFinding": { + "type": "structure", + "members": { + "translation": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTranslation", + "traits": { + "smithy.api#documentation": "

The logical translation of the input that this finding invalidates.

" + } + }, + "contradictingRules": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningRuleList", + "traits": { + "smithy.api#documentation": "

The automated reasoning policy rules that contradict the claims in the input.

" + } + }, + "logicWarning": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningLogicWarning", + "traits": { + "smithy.api#documentation": "

Indication of a logic issue with the translation without needing to consider the automated reasoning policy rules.

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

Indicates that the claims are logically false and contradictory to the established rules or premises.

" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningLogicWarning": { + "type": "structure", + "members": { + "type": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningLogicWarningType", + "traits": { + "smithy.api#documentation": "

The category of the detected logical issue, such as statements that are always true or always false.

" + } + }, + "premises": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningStatementList", + "traits": { + "smithy.api#documentation": "

The logical statements that serve as premises under which the claims are validated.

" + } + }, + "claims": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningStatementList", + "traits": { + "smithy.api#documentation": "

The logical statements that are validated while assuming the policy and premises.

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

Identifies logical issues in the translated statements that exist independent of any policy rules, such as statements that are always true or always false.

" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningLogicWarningType": { + "type": "enum", + "members": { + "ALWAYS_FALSE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ALWAYS_FALSE" + } + }, + "ALWAYS_TRUE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ALWAYS_TRUE" + } + } + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningNoTranslationsFinding": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

Indicates that no relevant logical information could be extracted from the input for validation.

" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningPoliciesProcessed": { + "type": "integer" + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningPolicyAssessment": { + "type": "structure", + "members": { + "findings": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningFindingList", + "traits": { + "smithy.api#documentation": "

List of logical validation results produced by evaluating the input content against automated reasoning policies.

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

Contains the results of automated reasoning policy evaluation, including logical findings about the validity of claims made in the input content.

" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningPolicyUnitsProcessed": { + "type": "integer" + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningPolicyVersionArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:automated-reasoning-policy/[a-z0-9]{12}(:([1-9][0-9]{0,11}))?$" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningRule": { + "type": "structure", + "members": { + "identifier": { + "target": "com.amazonaws.bedrockruntime#AutomatedReasoningRuleIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the automated reasoning rule.

" + } + }, + "policyVersionArn": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningPolicyVersionArn", + "traits": { + "smithy.api#documentation": "

The ARN of the automated reasoning policy version that contains this rule.

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

References a specific automated reasoning policy rule that was applied during evaluation.

" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningRuleList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningRule" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningSatisfiableFinding": { + "type": "structure", + "members": { + "translation": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTranslation", + "traits": { + "smithy.api#documentation": "

The logical translation of the input that this finding evaluates.

" + } + }, + "claimsTrueScenario": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningScenario", + "traits": { + "smithy.api#documentation": "

An example scenario demonstrating how the claims could be logically true.

" + } + }, + "claimsFalseScenario": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningScenario", + "traits": { + "smithy.api#documentation": "

An example scenario demonstrating how the claims could be logically false.

" + } + }, + "logicWarning": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningLogicWarning", + "traits": { + "smithy.api#documentation": "

Indication of a logic issue with the translation without needing to consider the automated reasoning policy rules.

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

Indicates that the claims could be either true or false depending on additional assumptions not provided in the input.

" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningScenario": { + "type": "structure", + "members": { + "statements": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningStatementList", + "traits": { + "smithy.api#documentation": "

List of logical assignments and statements that define this scenario.

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

Represents a logical scenario where claims can be evaluated as true or false, containing specific logical assignments.

" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningStatement": { + "type": "structure", + "members": { + "logic": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningStatementLogicContent", + "traits": { + "smithy.api#documentation": "

The formal logical representation of the statement.

" + } + }, + "naturalLanguage": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningStatementNaturalLanguageContent", + "traits": { + "smithy.api#documentation": "

The natural language explanation of the logical statement.

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

A logical statement that includes both formal logic representation and natural language explanation.

" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningStatementList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningStatement" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningStatementLogicContent": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 1000 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningStatementNaturalLanguageContent": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 1000 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTooComplexFinding": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

Indicates that the input exceeds the processing capacity due to the volume or complexity of the logical information.

" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTranslation": { + "type": "structure", + "members": { + "premises": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningStatementList", + "traits": { + "smithy.api#documentation": "

The logical statements that serve as the foundation or assumptions for the claims.

" + } + }, + "claims": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningStatementList", + "traits": { + "smithy.api#documentation": "

The logical statements that are being validated against the premises and policy rules.

" + } + }, + "untranslatedPremises": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningInputTextReferenceList", + "traits": { + "smithy.api#documentation": "

References to portions of the original input text that correspond to the premises but could not be fully translated.

" + } + }, + "untranslatedClaims": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningInputTextReferenceList", + "traits": { + "smithy.api#documentation": "

References to portions of the original input text that correspond to the claims but could not be fully translated.

" + } + }, + "confidence": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTranslationConfidence", + "traits": { + "smithy.api#documentation": "

A confidence score between 0 and 1 indicating how certain the system is about the logical translation.

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

Contains the logical translation of natural language input into formal logical statements, including premises, claims, and confidence scores.

" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTranslationAmbiguousFinding": { + "type": "structure", + "members": { + "options": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTranslationOptionList", + "traits": { + "smithy.api#documentation": "

Different logical interpretations that were detected during translation of the input.

" + } + }, + "differenceScenarios": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningDifferenceScenarioList", + "traits": { + "smithy.api#documentation": "

Scenarios showing how the different translation options differ in meaning.

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

Indicates that the input has multiple valid logical interpretations, requiring additional context or clarification.

" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTranslationConfidence": { + "type": "double", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 1 + } + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTranslationList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTranslation" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTranslationOption": { + "type": "structure", + "members": { + "translations": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTranslationList", + "traits": { + "smithy.api#documentation": "

Example translations that provide this possible interpretation of the input.

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

Represents one possible logical interpretation of ambiguous input content.

" + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTranslationOptionList": { + "type": "list", + "member": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTranslationOption" + }, + "traits": { + "smithy.api#length": { + "max": 2 + } + } + }, + "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningValidFinding": { + "type": "structure", + "members": { + "translation": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningTranslation", + "traits": { + "smithy.api#documentation": "

The logical translation of the input that this finding validates.

" + } + }, + "claimsTrueScenario": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningScenario", + "traits": { + "smithy.api#documentation": "

An example scenario demonstrating how the claims are logically true.

" + } + }, + "supportingRules": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningRuleList", + "traits": { + "smithy.api#documentation": "

The automated reasoning policy rules that support why this result is considered valid.

" + } + }, + "logicWarning": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningLogicWarning", + "traits": { + "smithy.api#documentation": "

Indication of a logic issue with the translation without needing to consider the automated reasoning policy rules.

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

Indicates that the claims are definitively true and logically implied by the premises, with no possible alternative interpretations.

" + } + }, "com.amazonaws.bedrockruntime#GuardrailConfiguration": { "type": "structure", "members": { @@ -3919,6 +4494,18 @@ "traits": { "smithy.api#documentation": "

The content policy image units processed by the guardrail.

" } + }, + "automatedReasoningPolicyUnits": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningPolicyUnitsProcessed", + "traits": { + "smithy.api#documentation": "

The number of text units processed by the automated reasoning policy.

" + } + }, + "automatedReasoningPolicies": { + "target": "com.amazonaws.bedrockruntime#GuardrailAutomatedReasoningPoliciesProcessed", + "traits": { + "smithy.api#documentation": "

The number of automated reasoning policies that were processed during the guardrail evaluation.

" + } } }, "traits": { @@ -4090,7 +4677,7 @@ "traits": { "smithy.api#documentation": "

A list of stop sequences. A stop sequence is a sequence of characters that causes the model to stop generating the response.

", "smithy.api#length": { - "max": 4 + "max": 2500 } } } @@ -4298,6 +4885,21 @@ "smithy.api#output": {} } }, + "com.amazonaws.bedrockruntime#InvokeModelTokensRequest": { + "type": "structure", + "members": { + "body": { + "target": "com.amazonaws.bedrockruntime#Body", + "traits": { + "smithy.api#documentation": "

The request body to count tokens for, formatted according to the model's expected input format. To learn about the input format for different models, see Model inference parameters and responses.

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

The body of an InvokeModel API request for token counting. This structure mirrors the input format for the InvokeModel operation, allowing you to count tokens for raw text inference requests.

" + } + }, "com.amazonaws.bedrockruntime#InvokeModelWithBidirectionalStream": { "type": "operation", "input": { @@ -5449,6 +6051,12 @@ "traits": { "smithy.api#enumValue": "content_filtered" } + }, + "MODEL_CONTEXT_WINDOW_EXCEEDED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "model_context_window_exceeded" + } } } }, @@ -5619,6 +6227,14 @@ "smithy.api#documentation": "

The tokens used in a message API inference call.

" } }, + "com.amazonaws.bedrockruntime#TokenizerResource": { + "type": "resource", + "operations": [ + { + "target": "com.amazonaws.bedrockruntime#CountTokens" + } + ] + }, "com.amazonaws.bedrockruntime#Tool": { "type": "union", "members": { diff --git a/aws/sdk/aws-models/cloudwatch-logs.json b/aws/sdk/aws-models/cloudwatch-logs.json index d2a383edfc5..85ff8b6add0 100644 --- a/aws/sdk/aws-models/cloudwatch-logs.json +++ b/aws/sdk/aws-models/cloudwatch-logs.json @@ -163,12 +163,12 @@ "target": "com.amazonaws.cloudwatchlogs#OverwriteIfExists", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Specifies whether to overwrite the value if the key already exists in the log event. If you omit this, the default is false.

" + "smithy.api#documentation": "

Specifies whether to overwrite the value if the key already exists in the log event. If\n you omit this, the default is false.

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

This object defines one key that will be added with the \n addKeys processor.

" + "smithy.api#documentation": "

This object defines one key that will be added with the addKeys processor.

" } }, "com.amazonaws.cloudwatchlogs#AddKeyValue": { @@ -186,13 +186,13 @@ "entries": { "target": "com.amazonaws.cloudwatchlogs#AddKeyEntries", "traits": { - "smithy.api#documentation": "

An array of objects, where each object contains the information about one key to add to the log event.

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

An array of objects, where each object contains the information about one key to add to\n the log event.

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

This processor adds new key-value pairs to the log event.

\n

For more information about this processor including examples, see \n addKeys in the CloudWatch Logs User Guide.

" + "smithy.api#documentation": "

This processor adds new key-value pairs to the log event.

\n

For more information about this processor including examples, see addKeys in the CloudWatch Logs User Guide.

" } }, "com.amazonaws.cloudwatchlogs#AllowedActionForAllowVendedLogsDeliveryForResource": { @@ -266,14 +266,14 @@ "priority": { "target": "com.amazonaws.cloudwatchlogs#Priority", "traits": { - "smithy.api#documentation": "

The priority level of this anomaly, as determined by CloudWatch Logs. Priority is computed based on log \n severity labels such as FATAL and ERROR and the amount of deviation from the baseline.\n Possible values are\n HIGH, MEDIUM, and LOW.

" + "smithy.api#documentation": "

The priority level of this anomaly, as determined by CloudWatch Logs. Priority is\n computed based on log severity labels such as FATAL and ERROR and\n the amount of deviation from the baseline. Possible values are HIGH,\n MEDIUM, and LOW.

" } }, "firstSeen": { "target": "com.amazonaws.cloudwatchlogs#EpochMillis", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The date and time when the anomaly detector first saw this anomaly. \n It is specified as epoch time, which is the number of seconds\n since January 1, 1970, 00:00:00 UTC.

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

The date and time when the anomaly detector first saw this anomaly. It is specified as\n epoch time, which is the number of seconds since January 1, 1970, 00:00:00\n UTC.

", "smithy.api#required": {} } }, @@ -281,14 +281,14 @@ "target": "com.amazonaws.cloudwatchlogs#EpochMillis", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The date and time when the anomaly detector most recently saw this anomaly. \n It is specified as epoch time, which is the number of seconds\n since January 1, 1970, 00:00:00 UTC.

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

The date and time when the anomaly detector most recently saw this anomaly. It is\n specified as epoch time, which is the number of seconds since January 1, 1970, 00:00:00\n UTC.

", "smithy.api#required": {} } }, "description": { "target": "com.amazonaws.cloudwatchlogs#Description", "traits": { - "smithy.api#documentation": "

A human-readable description of the anomaly. This description is generated by\n CloudWatch Logs.

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

A human-readable description of the anomaly. This description is generated by CloudWatch Logs.

", "smithy.api#required": {} } }, @@ -302,42 +302,42 @@ "state": { "target": "com.amazonaws.cloudwatchlogs#State", "traits": { - "smithy.api#documentation": "

Indicates the current state of this anomaly. If it is still being treated as an anomaly, the value\n is Active. If you have suppressed this anomaly by using the UpdateAnomaly operation,\n the value is Suppressed. If this behavior is now considered to be normal, the value\n is Baseline.

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

Indicates the current state of this anomaly. If it is still being treated as an anomaly,\n the value is Active. If you have suppressed this anomaly by using the UpdateAnomaly operation, the value is Suppressed. If this behavior is\n now considered to be normal, the value is Baseline.

", "smithy.api#required": {} } }, "histogram": { "target": "com.amazonaws.cloudwatchlogs#Histogram", "traits": { - "smithy.api#documentation": "

A map showing times when the anomaly detector ran, and the number of occurrences of this anomaly that \n were detected at each of those runs. The times are specified in epoch time, which is the number of seconds\n since January 1, 1970, 00:00:00 UTC.

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

A map showing times when the anomaly detector ran, and the number of occurrences of this\n anomaly that were detected at each of those runs. The times are specified in epoch time, which\n is the number of seconds since January 1, 1970, 00:00:00 UTC.

", "smithy.api#required": {} } }, "logSamples": { "target": "com.amazonaws.cloudwatchlogs#LogSamples", "traits": { - "smithy.api#documentation": "

An array of sample log event messages that are considered to be part of this anomaly.

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

An array of sample log event messages that are considered to be part of this\n anomaly.

", "smithy.api#required": {} } }, "patternTokens": { "target": "com.amazonaws.cloudwatchlogs#PatternTokens", "traits": { - "smithy.api#documentation": "

An array of structures where each structure contains information about one token that makes up the pattern.

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

An array of structures where each structure contains information about one token that\n makes up the pattern.

", "smithy.api#required": {} } }, "logGroupArnList": { "target": "com.amazonaws.cloudwatchlogs#LogGroupArnList", "traits": { - "smithy.api#documentation": "

An array of ARNS of the log groups that contained log events considered to be part of this anomaly.

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

An array of ARNS of the log groups that contained log events considered to be part of this\n anomaly.

", "smithy.api#required": {} } }, "suppressed": { "target": "com.amazonaws.cloudwatchlogs#Boolean", "traits": { - "smithy.api#documentation": "

Indicates whether this anomaly is currently suppressed. To suppress an anomaly, \n use UpdateAnomaly.

" + "smithy.api#documentation": "

Indicates whether this anomaly is currently suppressed. To suppress an anomaly, use UpdateAnomaly.

" } }, "suppressedDate": { @@ -351,18 +351,18 @@ "target": "com.amazonaws.cloudwatchlogs#EpochMillis", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

If the anomaly is suppressed, this indicates when the suppression will end. If this value is 0, \n the anomaly was suppressed with no expiration, with the INFINITE value.

" + "smithy.api#documentation": "

If the anomaly is suppressed, this indicates when the suppression will end. If this value\n is 0, the anomaly was suppressed with no expiration, with the\n INFINITE value.

" } }, "isPatternLevelSuppression": { "target": "com.amazonaws.cloudwatchlogs#Boolean", "traits": { - "smithy.api#documentation": "

If this anomaly is suppressed, this field is true if the suppression is because the \n pattern is suppressed. If false, then only this particular anomaly is suppressed.

" + "smithy.api#documentation": "

If this anomaly is suppressed, this field is true if the suppression is\n because the pattern is suppressed. If false, then only this particular anomaly is\n suppressed.

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

This structure represents one anomaly that has been found by a logs anomaly detector.

\n

For more information about patterns and anomalies, see CreateLogAnomalyDetector.\n

" + "smithy.api#documentation": "

This structure represents one anomaly that has been found by a logs anomaly\n detector.

\n

For more information about patterns and anomalies, see CreateLogAnomalyDetector.

" } }, "com.amazonaws.cloudwatchlogs#AnomalyDetector": { @@ -398,13 +398,13 @@ "anomalyDetectorStatus": { "target": "com.amazonaws.cloudwatchlogs#AnomalyDetectorStatus", "traits": { - "smithy.api#documentation": "

Specifies the current status of the anomaly detector. To pause an anomaly detector, use\n the enabled parameter in the UpdateLogAnomalyDetector \n operation.

" + "smithy.api#documentation": "

Specifies the current status of the anomaly detector. To pause an anomaly detector, use\n the enabled parameter in the UpdateLogAnomalyDetector operation.

" } }, "kmsKeyId": { "target": "com.amazonaws.cloudwatchlogs#KmsKeyId", "traits": { - "smithy.api#documentation": "

The ID of the KMS key assigned to this anomaly detector, if any.

" + "smithy.api#documentation": "

The ARN of the KMS key assigned to this anomaly detector, if any.

" } }, "creationTimeStamp": { @@ -424,7 +424,7 @@ "anomalyVisibilityTime": { "target": "com.amazonaws.cloudwatchlogs#AnomalyVisibilityTime", "traits": { - "smithy.api#documentation": "

The number of days used as the life cycle of anomalies. After this time, anomalies are automatically baselined \n and the anomaly detector model will treat new occurrences of similar event as normal.

" + "smithy.api#documentation": "

The number of days used as the life cycle of anomalies. After this time, anomalies are\n automatically baselined and the anomaly detector model will treat new occurrences of similar\n event as normal.

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

Associates the specified KMS key with either one log group in the account, or with all stored\n CloudWatch Logs query insights results in the account.

\n

When you use AssociateKmsKey, you specify either the logGroupName parameter\n or the resourceIdentifier parameter. You can't specify both of those parameters in the same operation.

\n \n \n

If you delete the key that is used to encrypt log events or log group query results,\n then all the associated stored log events or query results that were encrypted with that key \n will be unencryptable and unusable.

\n
\n \n

CloudWatch Logs supports only symmetric KMS keys. Do not use an associate\n an asymmetric KMS key with your log group or query results. For more information, see Using\n Symmetric and Asymmetric Keys.

\n
\n

It can take up to 5 minutes for this operation to take effect.

\n

If you attempt to associate a KMS key with a log group but the KMS key does not exist or the KMS key is disabled, you receive an\n InvalidParameterException error.

" + "smithy.api#documentation": "

Associates the specified KMS key with either one log group in the\n account, or with all stored CloudWatch Logs query insights results in the\n account.

\n

When you use AssociateKmsKey, you specify either the\n logGroupName parameter or the resourceIdentifier parameter. You\n can't specify both of those parameters in the same operation.

\n \n \n

If you delete the key that is used to encrypt log events or log group query results,\n then all the associated stored log events or query results that were encrypted with that key\n will be unencryptable and unusable.

\n
\n \n

CloudWatch Logs supports only symmetric KMS keys. Do not associate an\n asymmetric KMS key with your log group or query results. For more\n information, see Using Symmetric and Asymmetric\n Keys.

\n
\n

It can take up to 5 minutes for this operation to take effect.

\n

If you attempt to associate a KMS key with a log group but the KMS key does not exist or the KMS key is disabled, you receive an\n InvalidParameterException error.

" } }, "com.amazonaws.cloudwatchlogs#AssociateKmsKeyRequest": { @@ -547,7 +547,7 @@ "logGroupName": { "target": "com.amazonaws.cloudwatchlogs#LogGroupName", "traits": { - "smithy.api#documentation": "

The name of the log group.

\n

In your AssociateKmsKey operation,\n you must specify either the resourceIdentifier parameter or the logGroup parameter, \n but you can't specify both.

" + "smithy.api#documentation": "

The name of the log group.

\n

In your AssociateKmsKey operation, you must specify either the\n resourceIdentifier parameter or the logGroup parameter, but you\n can't specify both.

" } }, "kmsKeyId": { @@ -560,7 +560,7 @@ "resourceIdentifier": { "target": "com.amazonaws.cloudwatchlogs#ResourceIdentifier", "traits": { - "smithy.api#documentation": "

Specifies the target for this operation. You must specify one of the following:

\n \n

In your AssociateKmsKey operation,\n you must specify either the resourceIdentifier parameter or the logGroup parameter, \n but you can't specify both.

" + "smithy.api#documentation": "

Specifies the target for this operation. You must specify one of the following:

\n \n

In your AssociateKmsKey operation, you must specify either the\n resourceIdentifier parameter or the logGroup parameter, but you\n can't specify both.

" } } }, @@ -580,30 +580,30 @@ "quoteCharacter": { "target": "com.amazonaws.cloudwatchlogs#QuoteCharacter", "traits": { - "smithy.api#documentation": "

The character used used as a text qualifier for a single column of data. If you omit this, \n the double quotation mark \" character is used.

" + "smithy.api#documentation": "

The character used used as a text qualifier for a single column of data. If you omit this,\n the double quotation mark \" character is used.

" } }, "delimiter": { "target": "com.amazonaws.cloudwatchlogs#Delimiter", "traits": { - "smithy.api#documentation": "

The character used to separate each column in the original comma-separated value log event. If you omit this, the processor looks for\n the comma , character as the delimiter.

" + "smithy.api#documentation": "

The character used to separate each column in the original comma-separated value log\n event. If you omit this, the processor looks for the comma , character as the\n delimiter.

" } }, "columns": { "target": "com.amazonaws.cloudwatchlogs#Columns", "traits": { - "smithy.api#documentation": "

An array of names to use for the columns in the transformed log event.

\n

If you omit this, default column names ([column_1, column_2 ...]) are used.

" + "smithy.api#documentation": "

An array of names to use for the columns in the transformed log event.

\n

If you omit this, default column names ([column_1, column_2 ...]) are\n used.

" } }, "source": { "target": "com.amazonaws.cloudwatchlogs#Source", "traits": { - "smithy.api#documentation": "

The path to the field in the log event that has the comma separated values to be parsed. If you omit this value, the whole log message is processed.

" + "smithy.api#documentation": "

The path to the field in the log event that has the comma separated values to be parsed.\n If you omit this value, the whole log message is processed.

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

The CSV processor parses comma-separated values (CSV) from the log events into columns.

\n

For more information about this processor including examples, see \n csv in the CloudWatch Logs User Guide.

" + "smithy.api#documentation": "

The CSV processor parses comma-separated values (CSV) from the log events\n into columns.

\n

For more information about this processor including examples, see csv in the CloudWatch Logs User Guide.

" } }, "com.amazonaws.cloudwatchlogs#CancelExportTask": { @@ -693,7 +693,7 @@ "service": { "target": "com.amazonaws.cloudwatchlogs#Service", "traits": { - "smithy.api#documentation": "

A string specifying which service this configuration template applies to. For more information about supported services see \n Enable logging from Amazon Web Services \n services..

" + "smithy.api#documentation": "

A string specifying which service this configuration template applies to. For more\n information about supported services see Enable logging from\n Amazon Web Services services..

" } }, "logType": { @@ -717,42 +717,42 @@ "defaultDeliveryConfigValues": { "target": "com.amazonaws.cloudwatchlogs#ConfigurationTemplateDeliveryConfigValues", "traits": { - "smithy.api#documentation": "

A mapping that displays the default value of each property within a delivery's configuration,\n if it is not specified in the request.

" + "smithy.api#documentation": "

A mapping that displays the default value of each property within a delivery's\n configuration, if it is not specified in the request.

" } }, "allowedFields": { "target": "com.amazonaws.cloudwatchlogs#AllowedFields", "traits": { - "smithy.api#documentation": "

The allowed fields that a caller can use in the recordFields parameter of a CreateDelivery or \n UpdateDeliveryConfiguration operation.

" + "smithy.api#documentation": "

The allowed fields that a caller can use in the recordFields parameter of a\n CreateDelivery or UpdateDeliveryConfiguration operation.

" } }, "allowedOutputFormats": { "target": "com.amazonaws.cloudwatchlogs#OutputFormats", "traits": { - "smithy.api#documentation": "

The list of delivery destination output formats that are supported by this log source.

" + "smithy.api#documentation": "

The list of delivery destination output formats that are supported by this log\n source.

" } }, "allowedActionForAllowVendedLogsDeliveryForResource": { "target": "com.amazonaws.cloudwatchlogs#AllowedActionForAllowVendedLogsDeliveryForResource", "traits": { - "smithy.api#documentation": "

The action permissions that a caller needs to have to be able to successfully create a delivery source on the \n desired resource type when calling PutDeliverySource.

" + "smithy.api#documentation": "

The action permissions that a caller needs to have to be able to successfully create a\n delivery source on the desired resource type when calling PutDeliverySource.

" } }, "allowedFieldDelimiters": { "target": "com.amazonaws.cloudwatchlogs#AllowedFieldDelimiters", "traits": { - "smithy.api#documentation": "

The valid values that a caller can use as field delimiters when calling CreateDelivery or \n UpdateDeliveryConfiguration \n on a delivery that delivers in Plain, W3C, or Raw format.

" + "smithy.api#documentation": "

The valid values that a caller can use as field delimiters when calling CreateDelivery or UpdateDeliveryConfiguration on a delivery that delivers in Plain,\n W3C, or Raw format.

" } }, "allowedSuffixPathFields": { "target": "com.amazonaws.cloudwatchlogs#RecordFields", "traits": { - "smithy.api#documentation": "

The list of variable fields that can be used in the suffix path of a delivery that delivers to an S3 bucket.

" + "smithy.api#documentation": "

The list of variable fields that can be used in the suffix path of a delivery that\n delivers to an S3 bucket.

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

A structure containing information about the deafult settings and available settings that you can use to configure a delivery or a \n delivery destination.

" + "smithy.api#documentation": "

A structure containing information about the deafult settings and available settings that\n you can use to configure a delivery or a\n delivery\n destination.

" } }, "com.amazonaws.cloudwatchlogs#ConfigurationTemplateDeliveryConfigValues": { @@ -761,24 +761,24 @@ "recordFields": { "target": "com.amazonaws.cloudwatchlogs#RecordFields", "traits": { - "smithy.api#documentation": "

The default record fields that will be delivered when a list of record fields is not provided in \n a CreateDelivery operation.

" + "smithy.api#documentation": "

The default record fields that will be delivered when a list of record fields is not\n provided in a CreateDelivery operation.

" } }, "fieldDelimiter": { "target": "com.amazonaws.cloudwatchlogs#FieldDelimiter", "traits": { - "smithy.api#documentation": "

The default field delimiter that is used in a CreateDelivery operation when\n the field delimiter is not specified in that operation. The field delimiter is used only when \n the final output delivery is in Plain, W3C, or Raw format.

" + "smithy.api#documentation": "

The default field delimiter that is used in a CreateDelivery operation when the field delimiter is not specified in that\n operation. The field delimiter is used only when the final output delivery is in\n Plain, W3C, or Raw format.

" } }, "s3DeliveryConfiguration": { "target": "com.amazonaws.cloudwatchlogs#S3DeliveryConfiguration", "traits": { - "smithy.api#documentation": "

The delivery parameters that are used when you create a delivery to a delivery destination that is an S3 Bucket.

" + "smithy.api#documentation": "

The delivery parameters that are used when you create a delivery to a delivery destination\n that is an S3 Bucket.

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

This structure contains the default values that are used for each configuration parameter when you use\n CreateDelivery to create a deliver under the current service type, resource type, and log type.

" + "smithy.api#documentation": "

This structure contains the default values that are used for each configuration parameter\n when you use CreateDelivery to create a deliver under the current service type, resource type,\n and log type.

" } }, "com.amazonaws.cloudwatchlogs#ConfigurationTemplates": { @@ -805,13 +805,13 @@ "entries": { "target": "com.amazonaws.cloudwatchlogs#CopyValueEntries", "traits": { - "smithy.api#documentation": "

An array of CopyValueEntry objects, where each object contains the information about one field value to copy.

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

An array of CopyValueEntry objects, where each object contains the\n information about one field value to copy.

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

This processor copies values within a log event. \n You can also use this processor to add metadata to log events by copying the values of the following metadata keys into the log events: \n @logGroupName, @logGroupStream, @accountId, @regionName.

\n

For more information about this processor including examples, see \n copyValue in the CloudWatch Logs User Guide.

" + "smithy.api#documentation": "

This processor copies values within a log event. You can also use this processor to add\n metadata to log events by copying the values of the following metadata keys into the log\n events: @logGroupName, @logGroupStream, @accountId,\n @regionName.

\n

For more information about this processor including examples, see copyValue in the CloudWatch Logs User Guide.

" } }, "com.amazonaws.cloudwatchlogs#CopyValueEntries": { @@ -847,12 +847,12 @@ "target": "com.amazonaws.cloudwatchlogs#OverwriteIfExists", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Specifies whether to overwrite the value if the destination key already exists. If you omit this, the default is false.

" + "smithy.api#documentation": "

Specifies whether to overwrite the value if the destination key already exists. If you\n omit this, the default is false.

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

This object defines one value to be copied with the \n copyValue processor.

" + "smithy.api#documentation": "

This object defines one value to be copied with the copyValue processor.

" } }, "com.amazonaws.cloudwatchlogs#Count": { @@ -893,7 +893,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a delivery. A delivery is a connection between a logical delivery source and a logical\n delivery destination\n that you have already created.

\n

Only some Amazon Web Services services support being configured as a delivery source using this operation. These services are listed\n as Supported [V2 Permissions] in the table at \n Enabling \n logging from Amazon Web Services services.\n

\n

A delivery destination can represent a log group in CloudWatch Logs, an Amazon S3 bucket, or a delivery stream in Firehose.

\n

To configure logs delivery between a supported Amazon Web Services service and a destination, you must do the following:

\n \n

You can configure a single delivery source to send logs to multiple destinations by creating multiple deliveries. You \n can also create multiple deliveries to configure multiple delivery sources to send logs to the same delivery destination.

\n

To update an existing delivery configuration, use UpdateDeliveryConfiguration.

" + "smithy.api#documentation": "

Creates a delivery. A delivery is a connection between a logical\n delivery source and a logical delivery destination\n that you have already created.

\n

Only some Amazon Web Services services support being configured as a delivery source using\n this operation. These services are listed as Supported [V2\n Permissions] in the table at Enabling logging from\n Amazon Web Services services.\n

\n

A delivery destination can represent a log group in CloudWatch Logs, an Amazon S3 bucket, a delivery stream in Firehose, or X-Ray.

\n

To configure logs delivery between a supported Amazon Web Services service and a\n destination, you must do the following:

\n \n

You can configure a single delivery source to send logs to multiple destinations by\n creating multiple deliveries. You can also create multiple deliveries to configure multiple\n delivery sources to send logs to the same delivery destination.

\n

To update an existing delivery configuration, use UpdateDeliveryConfiguration.

" } }, "com.amazonaws.cloudwatchlogs#CreateDeliveryRequest": { @@ -916,25 +916,25 @@ "recordFields": { "target": "com.amazonaws.cloudwatchlogs#RecordFields", "traits": { - "smithy.api#documentation": "

The list of record fields to be delivered to the destination, in order. \n If the delivery's log source has mandatory fields, they must be included in this list.

" + "smithy.api#documentation": "

The list of record fields to be delivered to the destination, in order. If the delivery's\n log source has mandatory fields, they must be included in this list.

" } }, "fieldDelimiter": { "target": "com.amazonaws.cloudwatchlogs#FieldDelimiter", "traits": { - "smithy.api#documentation": "

The field delimiter to use between record fields when the final output format of a delivery\n is in Plain, W3C, or Raw format.

" + "smithy.api#documentation": "

The field delimiter to use between record fields when the final output format of a\n delivery is in Plain, W3C, or Raw format.

" } }, "s3DeliveryConfiguration": { "target": "com.amazonaws.cloudwatchlogs#S3DeliveryConfiguration", "traits": { - "smithy.api#documentation": "

This structure contains parameters that are valid only when the delivery's delivery destination is an S3 bucket.

" + "smithy.api#documentation": "

This structure contains parameters that are valid only when the delivery's delivery\n destination is an S3 bucket.

" } }, "tags": { "target": "com.amazonaws.cloudwatchlogs#Tags", "traits": { - "smithy.api#documentation": "

An optional list of key-value pairs to associate with the resource.

\n

For more information about tagging, see \n Tagging Amazon Web Services resources\n

" + "smithy.api#documentation": "

An optional list of key-value pairs to associate with the resource.

\n

For more information about tagging, see Tagging Amazon Web Services resources\n

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

Creates an export task so that you can efficiently export data from a log group to an\n Amazon S3 bucket. When you perform a CreateExportTask operation, you must use\n credentials that have permission to write to the S3 bucket that you specify as the\n destination.

\n

Exporting log data to S3 buckets that are encrypted by KMS is supported.\n Exporting log data to Amazon S3 buckets that have S3 Object Lock enabled with a\n retention period is also supported.

\n

Exporting to S3 buckets that are encrypted with AES-256 is supported.

\n

This is an asynchronous call. If all the required information is provided, this \n operation initiates an export task and responds with the ID of the task. After the task has started,\n you can use DescribeExportTasks to get the status of the export task. Each account can\n only have one active (RUNNING or PENDING) export task at a time.\n To cancel an export task, use CancelExportTask.

\n

You can export logs from multiple log groups or multiple time ranges to the same S3\n bucket. To separate log data for each export task, specify a prefix to be used as the Amazon\n S3 key prefix for all exported objects.

\n \n

We recommend that you don't regularly export to Amazon S3 as a way to continuously archive your logs. For that use case, we instaed recommend that \n you use subscriptions. For more information about subscriptions, see \n Real-time processing of log data with subscriptions.

\n
\n \n

Time-based sorting on chunks of log data inside an exported file is not guaranteed. You can\n sort the exported log field data by using Linux utilities.

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

Creates an export task so that you can efficiently export data from a log group to an\n Amazon S3 bucket. When you perform a CreateExportTask operation, you must use\n credentials that have permission to write to the S3 bucket that you specify as the\n destination.

\n

Exporting log data to S3 buckets that are encrypted by KMS is supported.\n Exporting log data to Amazon S3 buckets that have S3 Object Lock enabled with a\n retention period is also supported.

\n

Exporting to S3 buckets that are encrypted with AES-256 is supported.

\n

This is an asynchronous call. If all the required information is provided, this\n operation initiates an export task and responds with the ID of the task. After the task has\n started, you can use DescribeExportTasks to get the status of the export task. Each account can only\n have one active (RUNNING or PENDING) export task at a time. To\n cancel an export task, use CancelExportTask.

\n

You can export logs from multiple log groups or multiple time ranges to the same S3\n bucket. To separate log data for each export task, specify a prefix to be used as the Amazon\n S3 key prefix for all exported objects.

\n \n

We recommend that you don't regularly export to Amazon S3 as a way to\n continuously archive your logs. For that use case, we instead recommend that you use\n subscriptions. For more information about subscriptions, see Real-time processing of log data\n with subscriptions.

\n
\n \n

Time-based sorting on chunks of log data inside an exported file is not guaranteed. You\n can sort the exported log field data by using Linux utilities.

\n
" } }, "com.amazonaws.cloudwatchlogs#CreateExportTaskRequest": { @@ -1007,7 +1007,7 @@ "logStreamNamePrefix": { "target": "com.amazonaws.cloudwatchlogs#LogStreamName", "traits": { - "smithy.api#documentation": "

Export only log streams that match the provided prefix. If you don't\n specify a value, no prefix filter is applied.

" + "smithy.api#documentation": "

Export only log streams that match the provided prefix. If you don't specify a value,\n no prefix filter is applied.

" } }, "from": { @@ -1034,7 +1034,7 @@ "destinationPrefix": { "target": "com.amazonaws.cloudwatchlogs#ExportDestinationPrefix", "traits": { - "smithy.api#documentation": "

The prefix used as the start of the key for every object exported. If you don't\n specify a value, the default is exportedlogs.

\n

The length of this parameter must comply with the S3 object key name length limits. The object key name is a sequence of Unicode characters with UTF-8 encoding, \n and can be up to 1,024 bytes.

" + "smithy.api#documentation": "

The prefix used as the start of the key for every object exported. If you don't specify\n a value, the default is exportedlogs.

\n

The length of this parameter must comply with the S3 object key name length limits. The\n object key name is a sequence of Unicode characters with UTF-8 encoding, and can be up to\n 1,024 bytes.

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

Creates an anomaly detector that regularly scans one or more \n log groups and look for patterns\n and anomalies in the logs.

\n

An anomaly detector can help surface issues by automatically discovering anomalies in your log event traffic. \n An anomaly detector uses machine learning algorithms to scan log events and find patterns.\n \n A pattern is a shared text structure that recurs among your log fields. Patterns provide a useful tool for \n analyzing large sets of logs because a large number of log events can often be\n compressed into a few patterns.

\n

The anomaly detector uses pattern recognition to find anomalies, which are unusual log \n events. It uses the evaluationFrequency to compare current log events and patterns\n with trained baselines.

\n

Fields within a pattern are called tokens.\n Fields that vary within a pattern, such as a \n request ID or timestamp, are referred to as dynamic tokens and\n represented by <*>.

\n

The following is an example of a pattern:

\n

\n [INFO] Request time: <*> ms\n

\n

This pattern\n represents log events like [INFO] Request time: 327 ms and other similar log events\n that differ only by the number, in this csse 327. When the pattern is displayed, the different numbers are replaced\n by <*>\n

\n \n

Any parts of log events that are masked as sensitive data are not scanned for anomalies. For more information\n about masking sensitive data, see \n Help protect sensitive log data with\n masking.\n

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

Creates an anomaly detector that regularly scans one or more log\n groups and look for patterns and anomalies in the logs.

\n

An anomaly detector can help surface issues by automatically discovering anomalies in your\n log event traffic. An anomaly detector uses machine learning algorithms to scan log events and\n find patterns. A pattern is a shared text structure that recurs among\n your log fields. Patterns provide a useful tool for analyzing large sets of logs because a\n large number of log events can often be compressed into a few patterns.

\n

The anomaly detector uses pattern recognition to find anomalies, which are\n unusual log events. It uses the evaluationFrequency to compare current log events\n and patterns with trained baselines.

\n

Fields within a pattern are called tokens. Fields that vary within a\n pattern, such as a request ID or timestamp, are referred to as dynamic\n tokens and represented by <*>.

\n

The following is an example of a pattern:

\n

\n [INFO] Request time: <*> ms\n

\n

This pattern represents log events like [INFO] Request time: 327 ms and other\n similar log events that differ only by the number, in this csse 327. When the pattern is\n displayed, the different numbers are replaced by <*>\n

\n \n

Any parts of log events that are masked as sensitive data are not scanned for anomalies.\n For more information about masking sensitive data, see Help protect sensitive log\n data with masking.

\n
" } }, "com.amazonaws.cloudwatchlogs#CreateLogAnomalyDetectorRequest": { @@ -1091,7 +1091,7 @@ "logGroupArnList": { "target": "com.amazonaws.cloudwatchlogs#LogGroupArnList", "traits": { - "smithy.api#documentation": "

An array containing the ARN of the log group that this anomaly detector will watch. You can specify only one\n log group ARN.

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

An array containing the ARN of the log group that this anomaly detector will watch. You\n can specify only one log group ARN.

", "smithy.api#required": {} } }, @@ -1104,31 +1104,31 @@ "evaluationFrequency": { "target": "com.amazonaws.cloudwatchlogs#EvaluationFrequency", "traits": { - "smithy.api#documentation": "

Specifies how often the anomaly detector is to run and look for anomalies. Set this value\n according to the frequency that the log group receives new logs. For example, if the log group\n receives new log events every 10 minutes, then 15 minutes might be a good setting for \n evaluationFrequency .

" + "smithy.api#documentation": "

Specifies how often the anomaly detector is to run and look for anomalies. Set this value\n according to the frequency that the log group receives new logs. For example, if the log group\n receives new log events every 10 minutes, then 15 minutes might be a good setting for\n evaluationFrequency .

" } }, "filterPattern": { "target": "com.amazonaws.cloudwatchlogs#FilterPattern", "traits": { - "smithy.api#documentation": "

You can use this parameter to limit the anomaly detection model to examine only log events\n that match the pattern you specify here. For more information, see Filter and Pattern Syntax.

" + "smithy.api#documentation": "

You can use this parameter to limit the anomaly detection model to examine only log events\n that match the pattern you specify here. For more information, see Filter and Pattern\n Syntax.

" } }, "kmsKeyId": { - "target": "com.amazonaws.cloudwatchlogs#KmsKeyId", + "target": "com.amazonaws.cloudwatchlogs#DetectorKmsKeyArn", "traits": { - "smithy.api#documentation": "

Optionally assigns a KMS key to secure this anomaly detector and its findings. If a key is \n assigned, the anomalies found and the model used by this detector are encrypted at rest with the key. If \n a key is assigned to an anomaly detector, a user must have permissions for both this key and for the \n anomaly detector to retrieve information about the anomalies that it finds.

\n

For more information about using a KMS key and to see the required IAM\n policy, see Use a KMS key with an anomaly detector.

" + "smithy.api#documentation": "

Optionally assigns a KMS key to secure this anomaly detector and its\n findings. If a key is assigned, the anomalies found and the model used by this detector are\n encrypted at rest with the key. If a key is assigned to an anomaly detector, a user must have\n permissions for both this key and for the anomaly detector to retrieve information about the\n anomalies that it finds.

\n

Make sure the value provided is a valid KMS key ARN. For more information\n about using a KMS key and to see the required IAM policy, see\n Use a KMS key with an anomaly detector.

" } }, "anomalyVisibilityTime": { "target": "com.amazonaws.cloudwatchlogs#AnomalyVisibilityTime", "traits": { - "smithy.api#documentation": "

The number of days to have visibility on an anomaly. After this time period has elapsed for an anomaly, \n it will be automatically baselined and the anomaly detector will treat new occurrences of a similar anomaly as \n normal. Therefore, \n if you do not correct the cause of an \n anomaly during the time period specified in anomalyVisibilityTime, it will be considered normal \n going forward and will not be detected as an anomaly.

" + "smithy.api#documentation": "

The number of days to have visibility on an anomaly. After this time period has elapsed\n for an anomaly, it will be automatically baselined and the anomaly detector will treat new\n occurrences of a similar anomaly as normal. Therefore, if you do not correct the cause of an\n anomaly during the time period specified in anomalyVisibilityTime, it will be\n considered normal going forward and will not be detected as an anomaly.

" } }, "tags": { "target": "com.amazonaws.cloudwatchlogs#Tags", "traits": { - "smithy.api#documentation": "

An optional list of key-value pairs to associate with the resource.

\n

For more information about tagging, see \n Tagging Amazon Web Services resources\n

" + "smithy.api#documentation": "

An optional list of key-value pairs to associate with the resource.

\n

For more information about tagging, see Tagging Amazon Web Services resources\n

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

Creates a log group with the specified name. You can create up to 1,000,000 log groups per Region per account.

\n

You must use the following guidelines when naming a log group:

\n \n

When you create a log group, by default the log events in the log group do not expire.\n To set a retention policy so that events expire and are deleted after a specified time, use\n PutRetentionPolicy.

\n

If you associate an KMS key with the log group, ingested data is\n encrypted using the KMS key. This association is stored as long as the data\n encrypted with the KMS key is still within CloudWatch Logs. This enables\n CloudWatch Logs to decrypt this data whenever it is requested.

\n

If you attempt to associate a KMS key with the log group but the KMS key does not exist or the KMS key is disabled, you receive an\n InvalidParameterException error.

\n \n

CloudWatch Logs supports only symmetric KMS keys. Do not associate an\n asymmetric KMS key with your log group. For more information, see Using\n Symmetric and Asymmetric Keys.

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

Creates a log group with the specified name. You can create up to 1,000,000 log groups\n per Region per account.

\n

You must use the following guidelines when naming a log group:

\n \n

When you create a log group, by default the log events in the log group do not expire.\n To set a retention policy so that events expire and are deleted after a specified time, use\n PutRetentionPolicy.

\n

If you associate an KMS key with the log group, ingested data is\n encrypted using the KMS key. This association is stored as long as the data\n encrypted with the KMS key is still within CloudWatch Logs. This enables\n CloudWatch Logs to decrypt this data whenever it is requested.

\n

If you attempt to associate a KMS key with the log group but the KMS key does not exist or the KMS key is disabled, you receive an\n InvalidParameterException error.

\n \n

CloudWatch Logs supports only symmetric KMS keys. Do not associate an\n asymmetric KMS key with your log group. For more information, see Using\n Symmetric and Asymmetric Keys.

\n
" } }, "com.amazonaws.cloudwatchlogs#CreateLogGroupRequest": { @@ -1198,13 +1198,13 @@ "tags": { "target": "com.amazonaws.cloudwatchlogs#Tags", "traits": { - "smithy.api#documentation": "

The key-value pairs to use for the tags.

\n

You can grant users access to certain log groups while preventing them from accessing other log groups.\n To do so, tag your groups and use IAM policies that refer to those tags. To assign tags when \n you create a log group, you must have either the logs:TagResource or logs:TagLogGroup\n permission. For more information about tagging, see \n Tagging Amazon Web Services resources.\n For more information about using tags to control access, see \n Controlling access to Amazon Web Services resources using tags.

" + "smithy.api#documentation": "

The key-value pairs to use for the tags.

\n

You can grant users access to certain log groups while preventing them from accessing\n other log groups. To do so, tag your groups and use IAM policies that refer to\n those tags. To assign tags when you create a log group, you must have either the\n logs:TagResource or logs:TagLogGroup permission. For more\n information about tagging, see Tagging Amazon Web Services resources. For\n more information about using tags to control access, see Controlling access to Amazon Web Services\n resources using tags.

" } }, "logGroupClass": { "target": "com.amazonaws.cloudwatchlogs#LogGroupClass", "traits": { - "smithy.api#documentation": "

Use this parameter to specify the log group class for this log group. There are two classes:

\n \n

If you omit this parameter, the default of STANDARD is used.

\n \n

The value of logGroupClass can't be changed after a log group is created.

\n
\n

For details about the features supported by each class, see \n Log classes\n

" + "smithy.api#documentation": "

Use this parameter to specify the log group class for this log group. There are three\n classes:

\n \n

If you omit this parameter, the default of STANDARD is used.

\n \n

The value of logGroupClass can't be changed after a log group is\n created.

\n
\n

For details about the features supported by each class, see Log classes\n

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

Creates a log stream for the specified log group. A log stream is a sequence of log events\n that originate from a single source, such as an application instance or a resource that is \n being monitored.

\n

There is no limit on the number of log streams that you can create for a log group. There is a limit \n of 50 TPS on CreateLogStream operations, after which transactions are throttled.

\n

You must use the following guidelines when naming a log stream:

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

Creates a log stream for the specified log group. A log stream is a sequence of log\n events that originate from a single source, such as an application instance or a resource that\n is being monitored.

\n

There is no limit on the number of log streams that you can create for a log group.\n There is a limit of 50 TPS on CreateLogStream operations, after which\n transactions are throttled.

\n

You must use the following guidelines when naming a log stream:

\n " } }, "com.amazonaws.cloudwatchlogs#CreateLogStreamRequest": { @@ -1266,6 +1266,9 @@ "target": "com.amazonaws.cloudwatchlogs#Arn" } }, + "com.amazonaws.cloudwatchlogs#Data": { + "type": "blob" + }, "com.amazonaws.cloudwatchlogs#DataAlreadyAcceptedException": { "type": "structure", "members": { @@ -1277,7 +1280,7 @@ } }, "traits": { - "smithy.api#documentation": "

The event was already logged.

\n \n

\n PutLogEvents\n actions are now always accepted and never return\n DataAlreadyAcceptedException regardless of whether a given batch of log events\n has already been accepted.

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

The event was already logged.

\n \n

\n PutLogEvents actions are now always accepted and never return\n DataAlreadyAcceptedException regardless of whether a given batch of log\n events has already been accepted.

\n
", "smithy.api#error": "client" } }, @@ -1333,7 +1336,7 @@ "targetFormat": { "target": "com.amazonaws.cloudwatchlogs#TargetFormat", "traits": { - "smithy.api#documentation": "

The datetime format to use for the converted data in the target field.

\n

If you omit this, the default of \n yyyy-MM-dd'T'HH:mm:ss.SSS'Z is used.

" + "smithy.api#documentation": "

The datetime format to use for the converted data in the target field.

\n

If you omit this, the default of yyyy-MM-dd'T'HH:mm:ss.SSS'Z is used.

" } }, "matchPatterns": { @@ -1346,30 +1349,30 @@ "sourceTimezone": { "target": "com.amazonaws.cloudwatchlogs#SourceTimezone", "traits": { - "smithy.api#documentation": "

The time zone of the source field. If you omit this, the default used is the UTC zone.

" + "smithy.api#documentation": "

The time zone of the source field. If you omit this, the default used is the UTC\n zone.

" } }, "targetTimezone": { "target": "com.amazonaws.cloudwatchlogs#TargetTimezone", "traits": { - "smithy.api#documentation": "

The time zone of the target field. If you omit this, the default used is the UTC zone.

" + "smithy.api#documentation": "

The time zone of the target field. If you omit this, the default used is the UTC\n zone.

" } }, "locale": { "target": "com.amazonaws.cloudwatchlogs#Locale", "traits": { - "smithy.api#documentation": "

The locale of the source field. If you omit this, the default of locale.ROOT is used.

" + "smithy.api#documentation": "

The locale of the source field. If you omit this, the default of locale.ROOT\n is used.

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

This processor converts a datetime string into a format that you specify.

\n

For more information about this processor including examples, see \n datetimeConverter in the CloudWatch Logs User Guide.

" + "smithy.api#documentation": "

This processor converts a datetime string into a format that you specify.

\n

For more information about this processor including examples, see datetimeConverter in the CloudWatch Logs User\n Guide.

" } }, "com.amazonaws.cloudwatchlogs#Days": { "type": "integer", "traits": { - "smithy.api#documentation": "

The number of days to retain the log events in the specified log group.\n Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557, 2922, 3288, and 3653.

\n

To set a log group so that its log events do not expire, use DeleteRetentionPolicy.

" + "smithy.api#documentation": "

The number of days to retain the log events in the specified log group. Possible values\n are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1096, 1827, 2192, 2557,\n 2922, 3288, and 3653.

\n

To set a log group so that its log events do not expire, use DeleteRetentionPolicy.

" } }, "com.amazonaws.cloudwatchlogs#DefaultValue": { @@ -1398,7 +1401,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes a CloudWatch Logs account policy. This stops the account-wide policy from applying to log groups in the account. If you delete a data protection \n policy or subscription filter policy, any log-group level policies of those types remain in effect.

\n

To use this operation, you must be signed on with the correct permissions depending on the type of policy\n that you are deleting.

\n \n

If you delete a field index policy, the indexing of the log events that happened before\n you deleted the policy will still be used for up to 30 days to improve CloudWatch Logs Insights queries.

" + "smithy.api#documentation": "

Deletes a CloudWatch Logs account policy. This stops the account-wide policy from\n applying to log groups in the account. If you delete a data protection policy or subscription\n filter policy, any log-group level policies of those types remain in effect.

\n

To use this operation, you must be signed on with the correct permissions depending on the\n type of policy that you are deleting.

\n \n

If you delete a field index policy, the indexing of the log events that happened before\n you deleted the policy will still be used for up to 30 days to improve CloudWatch Logs\n Insights queries.

" } }, "com.amazonaws.cloudwatchlogs#DeleteAccountPolicyRequest": { @@ -1455,7 +1458,7 @@ "logGroupIdentifier": { "target": "com.amazonaws.cloudwatchlogs#LogGroupIdentifier", "traits": { - "smithy.api#documentation": "

The name or ARN of the log group that you want to delete the data protection policy for.

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

The name or ARN of the log group that you want to delete the data protection policy\n for.

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

Deletes a delivery. A delivery is a connection between a logical delivery source and a logical\n delivery destination. Deleting a delivery only deletes the connection between the delivery source and delivery destination. It does\n not delete the delivery destination or the delivery source.

" + "smithy.api#documentation": "

Deletes a delivery. A delivery is a connection between a logical\n delivery source and a logical delivery\n destination. Deleting a delivery only deletes the connection between the delivery\n source and delivery destination. It does not delete the delivery destination or the delivery\n source.

" } }, "com.amazonaws.cloudwatchlogs#DeleteDeliveryDestination": { @@ -1525,7 +1528,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes a delivery destination. A delivery is a connection between a logical delivery source and a logical\n delivery destination.

\n

You can't delete a delivery destination if any current deliveries are associated with it. To find whether any deliveries are associated with \n this delivery destination, use the DescribeDeliveries operation and check the deliveryDestinationArn field in the results.

" + "smithy.api#documentation": "

Deletes a delivery destination. A delivery is a connection between a\n logical delivery source and a logical delivery\n destination.

\n

You can't delete a delivery destination if any current deliveries are associated with it.\n To find whether any deliveries are associated with this delivery destination, use the DescribeDeliveries operation and check the deliveryDestinationArn\n field in the results.

" } }, "com.amazonaws.cloudwatchlogs#DeleteDeliveryDestinationPolicy": { @@ -1551,7 +1554,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes a delivery destination policy. For more information about these policies,\n see PutDeliveryDestinationPolicy.

" + "smithy.api#documentation": "

Deletes a delivery destination policy. For more information about these policies, see\n PutDeliveryDestinationPolicy.

" } }, "com.amazonaws.cloudwatchlogs#DeleteDeliveryDestinationPolicyRequest": { @@ -1575,7 +1578,7 @@ "name": { "target": "com.amazonaws.cloudwatchlogs#DeliveryDestinationName", "traits": { - "smithy.api#documentation": "

The name of the delivery destination that you want to delete. You can find a list of delivery destionation names\n by using the DescribeDeliveryDestinations\n operation.

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

The name of the delivery destination that you want to delete. You can find a list of\n delivery destination names by using the DescribeDeliveryDestinations operation.

", "smithy.api#required": {} } } @@ -1590,7 +1593,7 @@ "id": { "target": "com.amazonaws.cloudwatchlogs#DeliveryId", "traits": { - "smithy.api#documentation": "

The unique ID of the delivery to delete. You can find the ID of a delivery with the \n DescribeDeliveries operation.

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

The unique ID of the delivery to delete. You can find the ID of a delivery with the DescribeDeliveries operation.

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

Deletes a delivery source. A delivery is a connection between a logical delivery source and a logical\n delivery destination.

\n

You can't delete a delivery source if any current deliveries are associated with it. To find whether any deliveries are associated with \n this delivery source, use the DescribeDeliveries operation and check the deliverySourceName field in the results.

" + "smithy.api#documentation": "

Deletes a delivery source. A delivery is a connection between a\n logical delivery source and a logical delivery\n destination.

\n

You can't delete a delivery source if any current deliveries are associated with it. To\n find whether any deliveries are associated with this delivery source, use the DescribeDeliveries operation and check the deliverySourceName field in\n the results.

" } }, "com.amazonaws.cloudwatchlogs#DeleteDeliverySourceRequest": { @@ -1669,7 +1672,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the specified destination, and eventually disables all the\n subscription filters that publish to it. This operation does not delete the \n physical resource encapsulated by the destination.

" + "smithy.api#documentation": "

Deletes the specified destination, and eventually disables all the subscription filters\n that publish to it. This operation does not delete the physical resource encapsulated by the\n destination.

" } }, "com.amazonaws.cloudwatchlogs#DeleteDestinationRequest": { @@ -1713,7 +1716,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes a log-group level field index policy that was applied to a single log group. The indexing of the log events that happened before\n you delete the policy will still be used for as many as 30 days to improve CloudWatch Logs Insights queries.

\n

You can't use this operation to delete an account-level index policy. Instead, use \n DeletAccountPolicy.

\n

If you delete a log-group level field index policy and there is an account-level field index policy, in a few minutes the log group begins using that account-wide policy to index new\n incoming log events.

" + "smithy.api#documentation": "

Deletes a log-group level field index policy that was applied to a single log group. The\n indexing of the log events that happened before you delete the policy will still be used for\n as many as 30 days to improve CloudWatch Logs Insights queries.

\n

You can't use this operation to delete an account-level index policy. Instead, use DeletAccountPolicy.

\n

If you delete a log-group level field index policy and there is an account-level field\n index policy, in a few minutes the log group begins using that account-wide policy to index\n new incoming log events.

" } }, "com.amazonaws.cloudwatchlogs#DeleteIndexPolicyRequest": { @@ -1722,7 +1725,7 @@ "logGroupIdentifier": { "target": "com.amazonaws.cloudwatchlogs#LogGroupIdentifier", "traits": { - "smithy.api#documentation": "

The log group to delete the index policy for. You can specify either the name or the ARN of the log group.

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

The log group to delete the index policy for. You can specify either the name or the ARN\n of the log group.

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

Deletes the integration between CloudWatch Logs and OpenSearch Service. If your integration has active vended logs dashboards, \n you must specify true for the force parameter, otherwise the operation will fail. If you delete the integration by \n setting force to true, \n all your vended logs dashboards powered by OpenSearch Service will be deleted and the data that was on them \n will no longer be accessible.

" + "smithy.api#documentation": "

Deletes the integration between CloudWatch Logs and OpenSearch Service. If your\n integration has active vended logs dashboards, you must specify true for the\n force parameter, otherwise the operation will fail. If you delete the\n integration by setting force to true, all your vended logs\n dashboards powered by OpenSearch Service will be deleted and the data that was on them will no\n longer be accessible.

" } }, "com.amazonaws.cloudwatchlogs#DeleteIntegrationRequest": { @@ -1770,7 +1773,7 @@ "integrationName": { "target": "com.amazonaws.cloudwatchlogs#IntegrationName", "traits": { - "smithy.api#documentation": "

The name of the integration to delete. To find the name of your integration, use \n ListIntegrations.

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

The name of the integration to delete. To find the name of your integration, use ListIntegrations.

", "smithy.api#required": {} } }, @@ -1778,7 +1781,7 @@ "target": "com.amazonaws.cloudwatchlogs#Force", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Specify true to force the deletion of the integration even if vended logs dashboards currently exist.

\n

The default is false.

" + "smithy.api#documentation": "

Specify true to force the deletion of the integration even if vended logs\n dashboards currently exist.

\n

The default is false.

" } } }, @@ -1805,7 +1808,7 @@ } }, "traits": { - "smithy.api#documentation": "

This processor deletes entries from a log event. These entries are key-value pairs.

\n

For more information about this processor including examples, see \n deleteKeys in the CloudWatch Logs User Guide.

" + "smithy.api#documentation": "

This processor deletes entries from a log event. These entries are key-value pairs.

\n

For more information about this processor including examples, see deleteKeys in the CloudWatch Logs User Guide.

" } }, "com.amazonaws.cloudwatchlogs#DeleteLogAnomalyDetector": { @@ -1840,7 +1843,7 @@ "anomalyDetectorArn": { "target": "com.amazonaws.cloudwatchlogs#AnomalyDetectorArn", "traits": { - "smithy.api#documentation": "

The ARN of the anomaly detector to delete. You can find the ARNs of log anomaly detectors \n in your account by using the ListLogAnomalyDetectors\n operation.

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

The ARN of the anomaly detector to delete. You can find the ARNs of log anomaly detectors\n in your account by using the ListLogAnomalyDetectors operation.

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

Deletes the specified log group and permanently deletes all the archived\n log events associated with the log group.

" + "smithy.api#documentation": "

Deletes the specified log group and permanently deletes all the archived log events\n associated with the log group.

" } }, "com.amazonaws.cloudwatchlogs#DeleteLogGroupRequest": { @@ -1913,7 +1916,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the specified log stream and permanently deletes all the archived log events associated\n with the log stream.

" + "smithy.api#documentation": "

Deletes the specified log stream and permanently deletes all the archived log events\n associated with the log stream.

" } }, "com.amazonaws.cloudwatchlogs#DeleteLogStreamRequest": { @@ -2006,7 +2009,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes a saved CloudWatch Logs Insights query definition. \n A query definition contains details about a saved CloudWatch Logs Insights query.

\n

Each DeleteQueryDefinition operation can delete one query definition.

\n

You must have the logs:DeleteQueryDefinition permission to be able to perform\n this operation.

" + "smithy.api#documentation": "

Deletes a saved CloudWatch Logs Insights query definition. A query definition contains\n details about a saved CloudWatch Logs Insights query.

\n

Each DeleteQueryDefinition operation can delete one query definition.

\n

You must have the logs:DeleteQueryDefinition permission to be able to perform\n this operation.

" } }, "com.amazonaws.cloudwatchlogs#DeleteQueryDefinitionRequest": { @@ -2015,7 +2018,7 @@ "queryDefinitionId": { "target": "com.amazonaws.cloudwatchlogs#QueryId", "traits": { - "smithy.api#documentation": "

The ID of the query definition that you want to delete. You can use DescribeQueryDefinitions to retrieve the\n IDs of your saved query definitions.

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

The ID of the query definition that you want to delete. You can use DescribeQueryDefinitions to retrieve the IDs of your saved query\n definitions.

", "smithy.api#required": {} } } @@ -2051,6 +2054,9 @@ { "target": "com.amazonaws.cloudwatchlogs#InvalidParameterException" }, + { + "target": "com.amazonaws.cloudwatchlogs#OperationAbortedException" + }, { "target": "com.amazonaws.cloudwatchlogs#ResourceNotFoundException" }, @@ -2059,7 +2065,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes a resource policy from this account. This revokes \n the access of the identities in that policy to put log events to this account.

" + "smithy.api#documentation": "

Deletes a resource policy from this account. This revokes the access of the identities\n in that policy to put log events to this account.

" } }, "com.amazonaws.cloudwatchlogs#DeleteResourcePolicyRequest": { @@ -2070,6 +2076,18 @@ "traits": { "smithy.api#documentation": "

The name of the policy to be revoked. This parameter is required.

" } + }, + "resourceArn": { + "target": "com.amazonaws.cloudwatchlogs#Arn", + "traits": { + "smithy.api#documentation": "

The ARN of the CloudWatch Logs resource for which the resource policy needs to be\n deleted

" + } + }, + "expectedRevisionId": { + "target": "com.amazonaws.cloudwatchlogs#ExpectedRevisionId", + "traits": { + "smithy.api#documentation": "

The expected revision ID of the resource policy. Required when deleting a resource-scoped\n policy to prevent concurrent modifications.

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

Deletes the specified retention policy.

\n

Log events do not expire if they belong to log groups without a retention policy.

" + "smithy.api#documentation": "

Deletes the specified retention policy.

\n

Log events do not expire if they belong to log groups without a retention\n policy.

" } }, "com.amazonaws.cloudwatchlogs#DeleteRetentionPolicyRequest": { @@ -2191,7 +2209,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the log transformer for the specified log group. As soon as you do this, \n the transformation of incoming log events according to that transformer stops. If this account has an \n account-level transformer that applies to this log group, the log group begins\n using that account-level transformer when this log-group level transformer is deleted.

\n

After you delete a transformer, be sure to edit any metric filters or subscription filters that relied\n on the transformed versions of the log events.

" + "smithy.api#documentation": "

Deletes the log transformer for the specified log group. As soon as you do this, the\n transformation of incoming log events according to that transformer stops. If this account has\n an account-level transformer that applies to this log group, the log group begins using that\n account-level transformer when this log-group level transformer is deleted.

\n

After you delete a transformer, be sure to edit any metric filters or subscription filters\n that relied on the transformed versions of the log events.

" } }, "com.amazonaws.cloudwatchlogs#DeleteTransformerRequest": { @@ -2200,7 +2218,7 @@ "logGroupIdentifier": { "target": "com.amazonaws.cloudwatchlogs#LogGroupIdentifier", "traits": { - "smithy.api#documentation": "

Specify either the name or ARN of the log group to delete the transformer for. If the log group is in a source account\n and you are using a monitoring account, you must use the log group ARN.

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

Specify either the name or ARN of the log group to delete the transformer for. If the log\n group is in a source account and you are using a monitoring account, you must use the log\n group ARN.

", "smithy.api#required": {} } } @@ -2226,7 +2244,7 @@ "traits": { "smithy.api#length": { "min": 1, - "max": 1 + "max": 2 } } }, @@ -2266,7 +2284,7 @@ "deliveryDestinationType": { "target": "com.amazonaws.cloudwatchlogs#DeliveryDestinationType", "traits": { - "smithy.api#documentation": "

Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Firehose.

" + "smithy.api#documentation": "

Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, Firehose, or X-Ray.

" } }, "recordFields": { @@ -2278,13 +2296,13 @@ "fieldDelimiter": { "target": "com.amazonaws.cloudwatchlogs#FieldDelimiter", "traits": { - "smithy.api#documentation": "

The field delimiter that is used between record fields when the final output format of a delivery\n is in Plain, W3C, or Raw format.

" + "smithy.api#documentation": "

The field delimiter that is used between record fields when the final output format of a\n delivery is in Plain, W3C, or Raw format.

" } }, "s3DeliveryConfiguration": { "target": "com.amazonaws.cloudwatchlogs#S3DeliveryConfiguration", "traits": { - "smithy.api#documentation": "

This structure contains delivery configurations that apply only when the delivery destination resource is an S3 bucket.

" + "smithy.api#documentation": "

This structure contains delivery configurations that apply only when the delivery\n destination resource is an S3 bucket.

" } }, "tags": { @@ -2295,7 +2313,7 @@ } }, "traits": { - "smithy.api#documentation": "

This structure contains information about one delivery in your account.

\n

A delivery is a connection between a logical delivery source and a logical\n delivery destination.

\n

For more information, see CreateDelivery.

\n

To update an existing delivery configuration, use UpdateDeliveryConfiguration.

" + "smithy.api#documentation": "

This structure contains information about one delivery in your\n account.

\n

A delivery is a connection between a logical delivery source and a\n logical delivery destination.

\n

For more information, see CreateDelivery.

\n

To update an existing delivery configuration, use UpdateDeliveryConfiguration.

" } }, "com.amazonaws.cloudwatchlogs#DeliveryDestination": { @@ -2316,7 +2334,7 @@ "deliveryDestinationType": { "target": "com.amazonaws.cloudwatchlogs#DeliveryDestinationType", "traits": { - "smithy.api#documentation": "

Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose.

" + "smithy.api#documentation": "

Displays whether this delivery destination is CloudWatch Logs, Amazon S3,\n Firehose, or X-Ray.

" } }, "outputFormat": { @@ -2328,7 +2346,7 @@ "deliveryDestinationConfiguration": { "target": "com.amazonaws.cloudwatchlogs#DeliveryDestinationConfiguration", "traits": { - "smithy.api#documentation": "

A structure that contains the ARN of the Amazon Web Services resource that will receive the logs.

" + "smithy.api#documentation": "

A structure that contains the ARN of the Amazon Web Services resource that will receive the\n logs.

" } }, "tags": { @@ -2339,7 +2357,7 @@ } }, "traits": { - "smithy.api#documentation": "

This structure contains information about one delivery destination in your account. \n A delivery destination is an Amazon Web Services resource that represents an \n Amazon Web Services service that logs can be sent to. CloudWatch Logs, Amazon S3, are supported as Firehose delivery destinations.

\n

To configure logs delivery between a supported Amazon Web Services service and a destination, you must do the following:

\n \n

You can configure a single delivery source to send logs to multiple destinations by creating multiple deliveries. You \n can also create multiple deliveries to configure multiple delivery sources to send logs to the same delivery destination.

" + "smithy.api#documentation": "

This structure contains information about one delivery destination in\n your account. A delivery destination is an Amazon Web Services resource that represents an\n Amazon Web Services service that logs can be sent to. CloudWatch Logs, Amazon S3,\n Firehose, and X-Ray are supported as delivery destinations.

\n

To configure logs delivery between a supported Amazon Web Services service and a\n destination, you must do the following:

\n \n

You can configure a single delivery source to send logs to multiple destinations by\n creating multiple deliveries. You can also create multiple deliveries to configure multiple\n delivery sources to send logs to the same delivery destination.

" } }, "com.amazonaws.cloudwatchlogs#DeliveryDestinationConfiguration": { @@ -2348,7 +2366,7 @@ "destinationResourceArn": { "target": "com.amazonaws.cloudwatchlogs#Arn", "traits": { - "smithy.api#documentation": "

The ARN of the Amazon Web Services destination that this delivery destination represents. That Amazon Web Services destination\n can be a log group in CloudWatch Logs, an Amazon S3 bucket, or a delivery stream in Firehose.

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

The ARN of the Amazon Web Services destination that this delivery destination represents.\n That Amazon Web Services destination can be a log group in CloudWatch Logs, an Amazon S3 bucket, or a delivery stream in Firehose.

", "smithy.api#required": {} } } @@ -2396,6 +2414,12 @@ "traits": { "smithy.api#enumValue": "FH" } + }, + "XRAY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "XRAY" + } } } }, @@ -2407,7 +2431,7 @@ "traits": { "smithy.api#length": { "min": 1, - "max": 3 + "max": 4 } } }, @@ -2445,7 +2469,7 @@ "resourceArns": { "target": "com.amazonaws.cloudwatchlogs#ResourceArns", "traits": { - "smithy.api#documentation": "

This array contains the ARN of the Amazon Web Services resource that sends logs and is represented by \n this delivery source. Currently, only one ARN can be in the array.

" + "smithy.api#documentation": "

This array contains the ARN of the Amazon Web Services resource that sends logs and is\n represented by this delivery source. Currently, only one ARN can be in the array.

" } }, "service": { @@ -2457,7 +2481,7 @@ "logType": { "target": "com.amazonaws.cloudwatchlogs#LogType", "traits": { - "smithy.api#documentation": "

The type of log that the source is sending. For valid values for this parameter, see the documentation for\n the source service.

" + "smithy.api#documentation": "

The type of log that the source is sending. For valid values for this parameter, see the\n documentation for the source service.

" } }, "tags": { @@ -2468,7 +2492,7 @@ } }, "traits": { - "smithy.api#documentation": "

This structure contains information about one delivery source in your account. \n A delivery source is an Amazon Web Services resource that sends logs to an\n Amazon Web Services destination. The destination can be CloudWatch Logs, Amazon S3, or Firehose.

\n

Only some Amazon Web Services services support being configured as a delivery source. These services are listed\n as Supported [V2 Permissions] in the table at \n Enabling \n logging from Amazon Web Services services.\n

\n

To configure logs delivery between a supported Amazon Web Services service and a destination, you must do the following:

\n \n

You can configure a single delivery source to send logs to multiple destinations by creating multiple deliveries. You \n can also create multiple deliveries to configure multiple delivery sources to send logs to the same delivery destination.

" + "smithy.api#documentation": "

This structure contains information about one delivery source in your\n account. A delivery source is an Amazon Web Services resource that sends logs to an Amazon Web Services destination. The destination can be CloudWatch Logs, Amazon S3, or\n Firehose.

\n

Only some Amazon Web Services services support being configured as a delivery source. These\n services are listed as Supported [V2 Permissions] in the\n table at Enabling logging from\n Amazon Web Services services.\n

\n

To configure logs delivery between a supported Amazon Web Services service and a\n destination, you must do the following:

\n \n

You can configure a single delivery source to send logs to multiple destinations by\n creating multiple deliveries. You can also create multiple deliveries to configure multiple\n delivery sources to send logs to the same delivery destination.

" } }, "com.amazonaws.cloudwatchlogs#DeliverySourceName": { @@ -2522,7 +2546,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a list of all CloudWatch Logs account policies in the account.

\n

To use this operation, you must be signed on with the correct permissions depending on the type of policy that you are retrieving information for.

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

Returns a list of all CloudWatch Logs account policies in the account.

\n

To use this operation, you must be signed on with the correct permissions depending on the\n type of policy that you are retrieving information for.

\n " } }, "com.amazonaws.cloudwatchlogs#DescribeAccountPoliciesRequest": { @@ -2531,26 +2555,26 @@ "policyType": { "target": "com.amazonaws.cloudwatchlogs#PolicyType", "traits": { - "smithy.api#documentation": "

Use this parameter to limit the returned policies to only the policies that match the policy type that you\n specify.

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

Use this parameter to limit the returned policies to only the policies that match the\n policy type that you specify.

", "smithy.api#required": {} } }, "policyName": { "target": "com.amazonaws.cloudwatchlogs#PolicyName", "traits": { - "smithy.api#documentation": "

Use this parameter to limit the returned policies to only the policy with the name that you specify.

" + "smithy.api#documentation": "

Use this parameter to limit the returned policies to only the policy with the name that\n you specify.

" } }, "accountIdentifiers": { "target": "com.amazonaws.cloudwatchlogs#AccountIds", "traits": { - "smithy.api#documentation": "

If you are using an account that is set up as a monitoring account for CloudWatch unified cross-account\n observability, you can use this to specify the account ID of a source account. If you do, \n the operation returns the account policy for the specified account. Currently, you can specify only\n one account ID in this parameter.

\n

If you\n omit this parameter, only the policy in the current account is returned.

" + "smithy.api#documentation": "

If you are using an account that is set up as a monitoring account for CloudWatch\n unified cross-account observability, you can use this to specify the account ID of a source\n account. If you do, the operation returns the account policy for the specified account.\n Currently, you can specify only one account ID in this parameter.

\n

If you omit this parameter, only the policy in the current account is returned.

" } }, "nextToken": { "target": "com.amazonaws.cloudwatchlogs#NextToken", "traits": { - "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a previous call.)

" + "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a previous\n call.)

" } } }, @@ -2564,13 +2588,13 @@ "accountPolicies": { "target": "com.amazonaws.cloudwatchlogs#AccountPolicies", "traits": { - "smithy.api#documentation": "

An array of structures that contain information about the CloudWatch Logs account policies that match \n the specified filters.

" + "smithy.api#documentation": "

An array of structures that contain information about the CloudWatch Logs account\n policies that match the specified filters.

" } }, "nextToken": { "target": "com.amazonaws.cloudwatchlogs#NextToken", "traits": { - "smithy.api#documentation": "

The token to use when requesting the next set of items. The token expires after 24 hours.

" + "smithy.api#documentation": "

The token to use when requesting the next set of items. The token expires after 24\n hours.

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

Use this operation to return the valid and default values that are used when creating delivery sources, delivery destinations, and deliveries.\n For more information about deliveries, see CreateDelivery.

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

Use this operation to return the valid and default values that are used when creating\n delivery sources, delivery destinations, and deliveries. For more information about\n deliveries, see CreateDelivery.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", @@ -2616,25 +2640,25 @@ "service": { "target": "com.amazonaws.cloudwatchlogs#Service", "traits": { - "smithy.api#documentation": "

Use this parameter to filter the response to include only the \n configuration templates that apply to the Amazon Web Services service that you specify here.

" + "smithy.api#documentation": "

Use this parameter to filter the response to include only the configuration templates that\n apply to the Amazon Web Services service that you specify here.

" } }, "logTypes": { "target": "com.amazonaws.cloudwatchlogs#LogTypes", "traits": { - "smithy.api#documentation": "

Use this parameter to filter the response to include only the \n configuration templates that apply to the log types that you specify here.

" + "smithy.api#documentation": "

Use this parameter to filter the response to include only the configuration templates that\n apply to the log types that you specify here.

" } }, "resourceTypes": { "target": "com.amazonaws.cloudwatchlogs#ResourceTypes", "traits": { - "smithy.api#documentation": "

Use this parameter to filter the response to include only the \n configuration templates that apply to the resource types that you specify here.

" + "smithy.api#documentation": "

Use this parameter to filter the response to include only the configuration templates that\n apply to the resource types that you specify here.

" } }, "deliveryDestinationTypes": { "target": "com.amazonaws.cloudwatchlogs#DeliveryDestinationTypes", "traits": { - "smithy.api#documentation": "

Use this parameter to filter the response to include only the \n configuration templates that apply to the delivery destination types that you specify here.

" + "smithy.api#documentation": "

Use this parameter to filter the response to include only the configuration templates that\n apply to the delivery destination types that you specify here.

" } }, "nextToken": { @@ -2643,7 +2667,7 @@ "limit": { "target": "com.amazonaws.cloudwatchlogs#DescribeLimit", "traits": { - "smithy.api#documentation": "

Use this parameter to limit the number of configuration templates that are returned\n in the response.

" + "smithy.api#documentation": "

Use this parameter to limit the number of configuration templates that are returned in the\n response.

" } } }, @@ -2657,7 +2681,7 @@ "configurationTemplates": { "target": "com.amazonaws.cloudwatchlogs#ConfigurationTemplates", "traits": { - "smithy.api#documentation": "

An array of objects, where each object describes one configuration template that matches\n the filters that you specified in the request.

" + "smithy.api#documentation": "

An array of objects, where each object describes one configuration template that matches\n the filters that you specified in the request.

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

Retrieves a list of the deliveries that have been created in the account.

\n

A delivery is a \n connection between a \n delivery source\n and a \n \n delivery destination\n .

\n

A delivery source represents an Amazon Web Services resource that sends logs to an logs delivery destination. \n The destination can be CloudWatch Logs, Amazon S3, or Firehose. \n Only some Amazon Web Services services support being configured as a delivery source. These services are listed\n in Enable logging from Amazon Web Services \n services.\n

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

Retrieves a list of the deliveries that have been created in the account.

\n

A delivery is a connection between a \n delivery\n source\n and a \n delivery destination\n .

\n

A delivery source represents an Amazon Web Services resource that sends logs to an logs\n delivery destination. The destination can be CloudWatch Logs, Amazon S3, Firehose or X-Ray. Only some Amazon Web Services services support being\n configured as a delivery source. These services are listed in Enable logging from\n Amazon Web Services services.\n

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", @@ -2723,7 +2747,7 @@ "deliveries": { "target": "com.amazonaws.cloudwatchlogs#Deliveries", "traits": { - "smithy.api#documentation": "

An array of structures. Each structure contains information about one delivery in the account.

" + "smithy.api#documentation": "

An array of structures. Each structure contains information about one delivery in the\n account.

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

Retrieves a list of the delivery destinations that have been created in the account.

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

Retrieves a list of the delivery destinations that have been created in the\n account.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", @@ -2775,7 +2799,7 @@ "limit": { "target": "com.amazonaws.cloudwatchlogs#DescribeLimit", "traits": { - "smithy.api#documentation": "

Optionally specify the maximum number of delivery destinations to return in the response.

" + "smithy.api#documentation": "

Optionally specify the maximum number of delivery destinations to return in the\n response.

" } } }, @@ -2789,7 +2813,7 @@ "deliveryDestinations": { "target": "com.amazonaws.cloudwatchlogs#DeliveryDestinations", "traits": { - "smithy.api#documentation": "

An array of structures. Each structure contains information about one delivery destination in the account.

" + "smithy.api#documentation": "

An array of structures. Each structure contains information about one delivery destination\n in the account.

" } }, "nextToken": { @@ -2841,7 +2865,7 @@ "limit": { "target": "com.amazonaws.cloudwatchlogs#DescribeLimit", "traits": { - "smithy.api#documentation": "

Optionally specify the maximum number of delivery sources to return in the response.

" + "smithy.api#documentation": "

Optionally specify the maximum number of delivery sources to return in the\n response.

" } } }, @@ -2855,7 +2879,7 @@ "deliverySources": { "target": "com.amazonaws.cloudwatchlogs#DeliverySources", "traits": { - "smithy.api#documentation": "

An array of structures. Each structure contains information about one delivery source in the account.

" + "smithy.api#documentation": "

An array of structures. Each structure contains information about one delivery source in\n the account.

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

Lists all your destinations. The results are ASCII-sorted by destination name.

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

Lists all your destinations. The results are ASCII-sorted by destination\n name.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", @@ -2898,19 +2922,19 @@ "DestinationNamePrefix": { "target": "com.amazonaws.cloudwatchlogs#DestinationName", "traits": { - "smithy.api#documentation": "

The prefix to match. If you don't specify a value, no prefix filter is applied.

" + "smithy.api#documentation": "

The prefix to match. If you don't specify a value, no prefix filter is\n applied.

" } }, "nextToken": { "target": "com.amazonaws.cloudwatchlogs#NextToken", "traits": { - "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a previous call.)

" + "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a previous\n call.)

" } }, "limit": { "target": "com.amazonaws.cloudwatchlogs#DescribeLimit", "traits": { - "smithy.api#documentation": "

The maximum number of items returned. If you don't specify a value, the default maximum value of \n 50 items is used.

" + "smithy.api#documentation": "

The maximum number of items returned. If you don't specify a value, the default maximum\n value of 50 items is used.

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

Lists the specified export tasks. You can list all your export tasks or filter \n the results based on task ID or task status.

" + "smithy.api#documentation": "

Lists the specified export tasks. You can list all your export tasks or filter the\n results based on task ID or task status.

" } }, "com.amazonaws.cloudwatchlogs#DescribeExportTasksRequest": { @@ -2967,19 +2991,19 @@ "statusCode": { "target": "com.amazonaws.cloudwatchlogs#ExportTaskStatusCode", "traits": { - "smithy.api#documentation": "

The status code of the export task. Specifying a status code filters the results to zero or more export tasks.

" + "smithy.api#documentation": "

The status code of the export task. Specifying a status code filters the results to\n zero or more export tasks.

" } }, "nextToken": { "target": "com.amazonaws.cloudwatchlogs#NextToken", "traits": { - "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a previous call.)

" + "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a previous\n call.)

" } }, "limit": { "target": "com.amazonaws.cloudwatchlogs#DescribeLimit", "traits": { - "smithy.api#documentation": "

The maximum number of items returned. If you don't specify a value, the default is up to 50 items.

" + "smithy.api#documentation": "

The maximum number of items returned. If you don't specify a value, the default is up\n to 50 items.

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

Returns a list of field indexes listed in the field index policies of \n one or more log groups. For more information about field index policies, see\n PutIndexPolicy.

" + "smithy.api#documentation": "

Returns a list of custom and default field indexes which are discovered in log data. For\n more information about field index policies, see PutIndexPolicy.

" } }, "com.amazonaws.cloudwatchlogs#DescribeFieldIndexesLogGroupIdentifiers": { @@ -3051,7 +3075,7 @@ "logGroupIdentifiers": { "target": "com.amazonaws.cloudwatchlogs#DescribeFieldIndexesLogGroupIdentifiers", "traits": { - "smithy.api#documentation": "

An array containing the names or ARNs of the log groups that you want\n to retrieve field indexes for.

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

An array containing the names or ARNs of the log groups that you want to retrieve field\n indexes for.

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

Returns the field index policies of \n one or more log groups. For more information about field index policies, see\n PutIndexPolicy.

\n

If a specified log group has a log-group level index policy, that policy is returned by this operation.

\n

If a specified log group doesn't have a log-group level index policy, but an account-wide index policy applies to it, \n that account-wide policy is returned by this operation.

\n

To find information about only account-level policies, use DescribeAccountPolicies instead.

" + "smithy.api#documentation": "

Returns the field index policies of the specified log group. For more information about\n field index policies, see PutIndexPolicy.

\n

If a specified log group has a log-group level index policy, that policy is returned by\n this operation.

\n

If a specified log group doesn't have a log-group level index policy, but an account-wide\n index policy applies to it, that account-wide policy is returned by this operation.

\n

To find information about only account-level policies, use DescribeAccountPolicies instead.

" } }, "com.amazonaws.cloudwatchlogs#DescribeIndexPoliciesLogGroupIdentifiers": { @@ -3127,7 +3151,7 @@ "logGroupIdentifiers": { "target": "com.amazonaws.cloudwatchlogs#DescribeIndexPoliciesLogGroupIdentifiers", "traits": { - "smithy.api#documentation": "

An array containing the name or ARN of the log group that you want\n to retrieve field index policies for.

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

An array containing the name or ARN of the log group that you want to retrieve field index\n policies for.

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

Lists the specified log groups. You can list all your log groups or filter the results by prefix.\n The results are ASCII-sorted by log group name.

\n

CloudWatch Logs doesn't support IAM policies that control access to the DescribeLogGroups action by using the \n aws:ResourceTag/key-name\n condition key. Other CloudWatch Logs actions\n do support the use of the aws:ResourceTag/key-name\n condition key to control access.\n For more information about using tags to control access, see \n Controlling access to Amazon Web Services resources using tags.

\n

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account and \n view data from the linked source accounts. For more information, see \n CloudWatch cross-account observability.

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

Returns information about log groups. You can return all your log groups or filter the\n results by prefix. The results are ASCII-sorted by log group name.

\n

CloudWatch Logs doesn't support IAM policies that control access to the\n DescribeLogGroups action by using the\n aws:ResourceTag/key-name\n condition key. Other CloudWatch\n Logs actions do support the use of the\n aws:ResourceTag/key-name\n condition key to control access.\n For more information about using tags to control access, see Controlling access to Amazon Web Services\n resources using tags.

\n

If you are using CloudWatch cross-account observability, you can use this operation\n in a monitoring account and view data from the linked source accounts. For more information,\n see CloudWatch cross-account observability.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", @@ -3204,49 +3228,67 @@ ] } }, + "com.amazonaws.cloudwatchlogs#DescribeLogGroupsLogGroupIdentifiers": { + "type": "list", + "member": { + "target": "com.amazonaws.cloudwatchlogs#LogGroupIdentifier" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 50 + } + } + }, "com.amazonaws.cloudwatchlogs#DescribeLogGroupsRequest": { "type": "structure", "members": { "accountIdentifiers": { "target": "com.amazonaws.cloudwatchlogs#AccountIds", "traits": { - "smithy.api#documentation": "

When includeLinkedAccounts is set to True, use this parameter to\n specify the list of accounts to search. You can specify as many as 20 account IDs in the array.

" + "smithy.api#documentation": "

When includeLinkedAccounts is set to true, use this parameter to\n specify the list of accounts to search. You can specify as many as 20 account IDs in the\n array.

" } }, "logGroupNamePrefix": { "target": "com.amazonaws.cloudwatchlogs#LogGroupName", "traits": { - "smithy.api#documentation": "

The prefix to match.

\n \n

\n logGroupNamePrefix and logGroupNamePattern are mutually exclusive. \n Only one \n of these parameters can be passed.\n

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

The prefix to match.

\n \n

\n logGroupNamePrefix and logGroupNamePattern are mutually exclusive.\n Only one of these parameters can be passed.

\n
" } }, "logGroupNamePattern": { "target": "com.amazonaws.cloudwatchlogs#LogGroupNamePattern", "traits": { - "smithy.api#documentation": "

If you specify a string for this parameter, the operation returns only log groups that have names\nthat match the string based on a case-sensitive substring search. For example, if you specify Foo, log groups\nnamed FooBar, aws/Foo, and GroupFoo would match, but foo, \nF/o/o and Froo would not match.

\n

If you specify logGroupNamePattern in your request, then only\n arn, creationTime, and logGroupName\n are included in the response.

\n \n

\n logGroupNamePattern and logGroupNamePrefix are mutually exclusive. \n Only one \n of these parameters can be passed.\n

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

If you specify a string for this parameter, the operation returns only log groups that\n have names that match the string based on a case-sensitive substring search. For example, if\n you specify DataLogs, log groups named DataLogs,\n aws/DataLogs, and GroupDataLogs would match, but\n datalogs, Data/log/s and Groupdata would not\n match.

\n

If you specify logGroupNamePattern in your request, then only\n arn, creationTime, and logGroupName are included in\n the response.

\n \n

\n logGroupNamePattern and logGroupNamePrefix are mutually exclusive.\n Only one of these parameters can be passed.

\n
" } }, "nextToken": { "target": "com.amazonaws.cloudwatchlogs#NextToken", "traits": { - "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a previous call.)

" + "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a previous\n call.)

" } }, "limit": { "target": "com.amazonaws.cloudwatchlogs#DescribeLimit", "traits": { - "smithy.api#documentation": "

The maximum number of items returned. If you don't specify a value, the default is up to 50 items.

" + "smithy.api#documentation": "

The maximum number of items returned. If you don't specify a value, the default is up\n to 50 items.

" } }, "includeLinkedAccounts": { "target": "com.amazonaws.cloudwatchlogs#IncludeLinkedAccounts", "traits": { - "smithy.api#documentation": "

If you are using a monitoring account, set this to True to have the operation\n return log groups in \n the accounts listed in accountIdentifiers.

\n

If this parameter is set to true and accountIdentifiers\n\n contains a null value, the operation returns all log groups in the monitoring account\n and all log groups in all source accounts that are linked to the monitoring account.

" + "smithy.api#documentation": "

If you are using a monitoring account, set this to true to have the operation\n return log groups in the accounts listed in accountIdentifiers.

\n

If this parameter is set to true and accountIdentifiers contains\n a null value, the operation returns all log groups in the monitoring account and all log\n groups in all source accounts that are linked to the monitoring account.

\n

The default for this parameter is false.

" } }, "logGroupClass": { "target": "com.amazonaws.cloudwatchlogs#LogGroupClass", "traits": { - "smithy.api#documentation": "

Specifies the log group class for this log group. There are two classes:

\n \n

For details about the features supported by each class, see \n Log classes\n

" + "smithy.api#documentation": "

Use this parameter to limit the results to only those log groups in the specified log\n group class. If you omit this parameter, log groups of all classes can be returned.

\n

Specifies the log group class for this log group. There are three classes:

\n \n

For details about the features supported by each class, see Log classes\n

" + } + }, + "logGroupIdentifiers": { + "target": "com.amazonaws.cloudwatchlogs#DescribeLogGroupsLogGroupIdentifiers", + "traits": { + "smithy.api#documentation": "

Use this array to filter the list of log groups returned. If you specify this parameter,\n the only other filter that you can choose to specify is\n includeLinkedAccounts.

\n

If you are using this operation in a monitoring account, you can specify the ARNs of log\n groups in source accounts and in the monitoring account itself. If you are using this\n operation in an account that is not a cross-account monitoring account, you can specify only\n log group names in the same account as the operation.

" } } }, @@ -3260,7 +3302,7 @@ "logGroups": { "target": "com.amazonaws.cloudwatchlogs#LogGroups", "traits": { - "smithy.api#documentation": "

The log groups.

\n

If the retentionInDays value is not included for a log group, then that log\n group's events do not expire.

" + "smithy.api#documentation": "

An array of structures, where each structure contains the information about one log\n group.

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

Lists the log streams for the specified log group. \n You can list all the log streams or filter the results by prefix.\n You can also control how the results are ordered.

\n

You can specify the log group to search by using either logGroupIdentifier or logGroupName.\n You must include one of these two parameters, but you can't include both.\n

\n

This operation has a limit of 25 transactions per second, after which transactions are throttled.

\n

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account and \n view data from the linked source accounts. For more information, see \n CloudWatch cross-account observability.

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

Lists the log streams for the specified log group. You can list all the log streams or\n filter the results by prefix. You can also control how the results are ordered.

\n

You can specify the log group to search by using either logGroupIdentifier or\n logGroupName. You must include one of these two parameters, but you can't\n include both.

\n

This operation has a limit of 25 transactions per second, after which transactions are\n throttled.

\n

If you are using CloudWatch cross-account observability, you can use this operation\n in a monitoring account and view data from the linked source accounts. For more information,\n see CloudWatch cross-account observability.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", @@ -3306,13 +3348,13 @@ "logGroupName": { "target": "com.amazonaws.cloudwatchlogs#LogGroupName", "traits": { - "smithy.api#documentation": "

The name of the log group.

\n \n

\n You must include either logGroupIdentifier or logGroupName, but not \n both.\n

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

The name of the log group.

\n \n

You must include either logGroupIdentifier or logGroupName,\n but not both.

\n
" } }, "logGroupIdentifier": { "target": "com.amazonaws.cloudwatchlogs#LogGroupIdentifier", "traits": { - "smithy.api#documentation": "

Specify either the name or ARN of the log group to view. If the log group is in a source account\n and you are using a monitoring account, you must use the log group ARN.

\n \n

\n You must include either logGroupIdentifier or logGroupName, but not \n both.\n

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

Specify either the name or ARN of the log group to view. If the log group is in a source\n account and you are using a monitoring account, you must use the log group ARN.

\n \n

You must include either logGroupIdentifier or logGroupName,\n but not both.

\n
" } }, "logStreamNamePrefix": { @@ -3324,25 +3366,25 @@ "orderBy": { "target": "com.amazonaws.cloudwatchlogs#OrderBy", "traits": { - "smithy.api#documentation": "

If the value is LogStreamName, the results are ordered by log stream name.\n If the value is LastEventTime, the results are ordered by the event time. \n The default value is LogStreamName.

\n

If you order the results by event time, you cannot specify the logStreamNamePrefix parameter.

\n

\n lastEventTimestamp represents the time of the most recent log event in the\n log stream in CloudWatch Logs. This number is expressed as the number of milliseconds after\n Jan 1, 1970 00:00:00 UTC. lastEventTimestamp updates on an\n eventual consistency basis. It typically updates in less than an hour from ingestion, but in\n rare situations might take longer.

" + "smithy.api#documentation": "

If the value is LogStreamName, the results are ordered by log stream name.\n If the value is LastEventTime, the results are ordered by the event time. The\n default value is LogStreamName.

\n

If you order the results by event time, you cannot specify the\n logStreamNamePrefix parameter.

\n

\n lastEventTimestamp represents the time of the most recent log event in the\n log stream in CloudWatch Logs. This number is expressed as the number of milliseconds after\n Jan 1, 1970 00:00:00 UTC. lastEventTimestamp updates on an\n eventual consistency basis. It typically updates in less than an hour from ingestion, but in\n rare situations might take longer.

" } }, "descending": { "target": "com.amazonaws.cloudwatchlogs#Descending", "traits": { - "smithy.api#documentation": "

If the value is true, results are returned in descending order. \n If the value is to false, results are returned in ascending order.\n The default value is false.

" + "smithy.api#documentation": "

If the value is true, results are returned in descending order. If the value is to\n false, results are returned in ascending order. The default value is false.

" } }, "nextToken": { "target": "com.amazonaws.cloudwatchlogs#NextToken", "traits": { - "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a previous call.)

" + "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a previous\n call.)

" } }, "limit": { "target": "com.amazonaws.cloudwatchlogs#DescribeLimit", "traits": { - "smithy.api#documentation": "

The maximum number of items returned. If you don't specify a value, the default is up to 50 items.

" + "smithy.api#documentation": "

The maximum number of items returned. If you don't specify a value, the default is up\n to 50 items.

" } } }, @@ -3414,25 +3456,25 @@ "nextToken": { "target": "com.amazonaws.cloudwatchlogs#NextToken", "traits": { - "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a previous call.)

" + "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a previous\n call.)

" } }, "limit": { "target": "com.amazonaws.cloudwatchlogs#DescribeLimit", "traits": { - "smithy.api#documentation": "

The maximum number of items returned. If you don't specify a value, the default is up to 50 items.

" + "smithy.api#documentation": "

The maximum number of items returned. If you don't specify a value, the default is up\n to 50 items.

" } }, "metricName": { "target": "com.amazonaws.cloudwatchlogs#MetricName", "traits": { - "smithy.api#documentation": "

Filters results to include only those with the specified metric name. If you include this parameter in your request, you \n must also include the metricNamespace parameter.

" + "smithy.api#documentation": "

Filters results to include only those with the specified metric name. If you include\n this parameter in your request, you must also include the metricNamespace\n parameter.

" } }, "metricNamespace": { "target": "com.amazonaws.cloudwatchlogs#MetricNamespace", "traits": { - "smithy.api#documentation": "

Filters results to include only those in the specified namespace. If you include this parameter in your request, you \n must also include the metricName parameter.

" + "smithy.api#documentation": "

Filters results to include only those in the specified namespace. If you include this\n parameter in your request, you must also include the metricName\n parameter.

" } } }, @@ -3501,7 +3543,7 @@ "status": { "target": "com.amazonaws.cloudwatchlogs#QueryStatus", "traits": { - "smithy.api#documentation": "

Limits the returned queries to only those that have the specified status. Valid values are Cancelled, \n Complete, Failed, Running, and Scheduled.

" + "smithy.api#documentation": "

Limits the returned queries to only those that have the specified status. Valid values are\n Cancelled, Complete, Failed, Running,\n and Scheduled.

" } }, "maxResults": { @@ -3516,7 +3558,7 @@ "queryLanguage": { "target": "com.amazonaws.cloudwatchlogs#QueryLanguage", "traits": { - "smithy.api#documentation": "

Limits the returned queries to only the queries that use the specified query language.

" + "smithy.api#documentation": "

Limits the returned queries to only the queries that use the specified query\n language.

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

This operation returns a paginated list of your saved CloudWatch Logs Insights query definitions. You can\n retrieve query definitions from the current account or from a source account that is linked to the current account.

\n

You can use the queryDefinitionNamePrefix parameter to limit the results to only the\n query definitions that have names that start with a certain string.

" + "smithy.api#documentation": "

This operation returns a paginated list of your saved CloudWatch Logs Insights query\n definitions. You can retrieve query definitions from the current account or from a source\n account that is linked to the current account.

\n

You can use the queryDefinitionNamePrefix parameter to limit the results to\n only the query definitions that have names that start with a certain string.

" } }, "com.amazonaws.cloudwatchlogs#DescribeQueryDefinitionsRequest": { @@ -3567,13 +3609,13 @@ "queryLanguage": { "target": "com.amazonaws.cloudwatchlogs#QueryLanguage", "traits": { - "smithy.api#documentation": "

The query language used for this query. For more information about the query languages that CloudWatch Logs supports, \n see Supported query languages.

" + "smithy.api#documentation": "

The query language used for this query. For more information about the query languages\n that CloudWatch Logs supports, see Supported query\n languages.

" } }, "queryDefinitionNamePrefix": { "target": "com.amazonaws.cloudwatchlogs#QueryDefinitionName", "traits": { - "smithy.api#documentation": "

Use this parameter to filter your results to only the query definitions that have names that start with the prefix you specify.

" + "smithy.api#documentation": "

Use this parameter to filter your results to only the query definitions that have names\n that start with the prefix you specify.

" } }, "maxResults": { @@ -3636,7 +3678,19 @@ "limit": { "target": "com.amazonaws.cloudwatchlogs#DescribeLimit", "traits": { - "smithy.api#documentation": "

The maximum number of resource policies to be displayed with one call of this API.

" + "smithy.api#documentation": "

The maximum number of resource policies to be displayed with one call of this\n API.

" + } + }, + "resourceArn": { + "target": "com.amazonaws.cloudwatchlogs#Arn", + "traits": { + "smithy.api#documentation": "

The ARN of the CloudWatch Logs resource for which to query the resource policy.

" + } + }, + "policyScope": { + "target": "com.amazonaws.cloudwatchlogs#PolicyScope", + "traits": { + "smithy.api#documentation": "

Specifies the scope of the resource policy. Valid values are ACCOUNT or\n RESOURCE. When not specified, defaults to ACCOUNT.

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

Lists the subscription filters for the specified log group. You can list all the subscription filters or filter the results by prefix.\n The results are ASCII-sorted by filter name.

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

Lists the subscription filters for the specified log group. You can list all the\n subscription filters or filter the results by prefix. The results are ASCII-sorted by filter\n name.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", @@ -3703,19 +3757,19 @@ "filterNamePrefix": { "target": "com.amazonaws.cloudwatchlogs#FilterName", "traits": { - "smithy.api#documentation": "

The prefix to match. If you don't specify a value, no prefix filter is applied.

" + "smithy.api#documentation": "

The prefix to match. If you don't specify a value, no prefix filter is\n applied.

" } }, "nextToken": { "target": "com.amazonaws.cloudwatchlogs#NextToken", "traits": { - "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a previous call.)

" + "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a previous\n call.)

" } }, "limit": { "target": "com.amazonaws.cloudwatchlogs#DescribeLimit", "traits": { - "smithy.api#documentation": "

The maximum number of items returned. If you don't specify a value, the default is up to 50 items.

" + "smithy.api#documentation": "

The maximum number of items returned. If you don't specify a value, the default is up\n to 50 items.

" } } }, @@ -3772,7 +3826,7 @@ "accessPolicy": { "target": "com.amazonaws.cloudwatchlogs#AccessPolicy", "traits": { - "smithy.api#documentation": "

An IAM policy document that governs which Amazon Web Services accounts can create subscription filters\n against this destination.

" + "smithy.api#documentation": "

An IAM policy document that governs which Amazon Web Services accounts can create\n subscription filters against this destination.

" } }, "arn": { @@ -3825,6 +3879,16 @@ "target": "com.amazonaws.cloudwatchlogs#Destination" } }, + "com.amazonaws.cloudwatchlogs#DetectorKmsKeyArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 256 + }, + "smithy.api#pattern": "^arn:aws[a-z\\-]*:kms:[-a-z0-9]*:[0-9]*:key/[-a-z0-9]*$" + } + }, "com.amazonaws.cloudwatchlogs#DetectorName": { "type": "string", "traits": { @@ -3883,7 +3947,7 @@ } ], "traits": { - "smithy.api#documentation": "

Disassociates the specified KMS key from the specified log\n group or from all CloudWatch Logs Insights query results in the account.

\n

When you use DisassociateKmsKey, you specify either the logGroupName parameter\n or the resourceIdentifier parameter. You can't specify both of those parameters in the same operation.

\n \n

It can take up to 5 minutes for this operation to take effect.

" + "smithy.api#documentation": "

Disassociates the specified KMS key from the specified log group or\n from all CloudWatch Logs Insights query results in the account.

\n

When you use DisassociateKmsKey, you specify either the\n logGroupName parameter or the resourceIdentifier parameter. You\n can't specify both of those parameters in the same operation.

\n \n

It can take up to 5 minutes for this operation to take effect.

" } }, "com.amazonaws.cloudwatchlogs#DisassociateKmsKeyRequest": { @@ -3892,13 +3956,13 @@ "logGroupName": { "target": "com.amazonaws.cloudwatchlogs#LogGroupName", "traits": { - "smithy.api#documentation": "

The name of the log group.

\n

In your DisassociateKmsKey operation,\n you must specify either the resourceIdentifier parameter or the logGroup parameter, \n but you can't specify both.

" + "smithy.api#documentation": "

The name of the log group.

\n

In your DisassociateKmsKey operation, you must specify either the\n resourceIdentifier parameter or the logGroup parameter, but you\n can't specify both.

" } }, "resourceIdentifier": { "target": "com.amazonaws.cloudwatchlogs#ResourceIdentifier", "traits": { - "smithy.api#documentation": "

Specifies the target for this operation. You must specify one of the following:

\n \n

In your DisssociateKmsKey operation,\n you must specify either the resourceIdentifier parameter or the logGroup parameter, \n but you can't specify both.

" + "smithy.api#documentation": "

Specifies the target for this operation. You must specify one of the following:

\n \n

In your DisssociateKmsKey operation, you must specify either the\n resourceIdentifier parameter or the logGroup parameter, but you\n can't specify both.

" } } }, @@ -3923,7 +3987,7 @@ } }, "traits": { - "smithy.api#documentation": "

The method used to distribute log data to the destination, which can be either\n random or grouped by log stream.

" + "smithy.api#documentation": "

The method used to distribute log data to the destination, which can be either random\n or grouped by log stream.

" } }, "com.amazonaws.cloudwatchlogs#DynamicTokenPosition": { @@ -3932,6 +3996,12 @@ "smithy.api#default": 0 } }, + "com.amazonaws.cloudwatchlogs#EmitSystemFields": { + "type": "list", + "member": { + "target": "com.amazonaws.cloudwatchlogs#SystemField" + } + }, "com.amazonaws.cloudwatchlogs#EncryptionKey": { "type": "string", "traits": { @@ -3947,13 +4017,13 @@ "keyAttributes": { "target": "com.amazonaws.cloudwatchlogs#EntityKeyAttributes", "traits": { - "smithy.api#documentation": "

The attributes of the entity which identify the specific entity, as a list of \n key-value pairs. Entities with the same keyAttributes are considered to \n be the same entity.

\n

There are five allowed attributes (key names): Type, \n ResourceType, Identifier\n Name, and \n Environment.

\n

For details about how to use the key attributes, see How \n to add related information to telemetry in the CloudWatch\n User Guide.

" + "smithy.api#documentation": "

The attributes of the entity which identify the specific entity, as a list of key-value\n pairs. Entities with the same keyAttributes are considered to be the same\n entity.

\n

There are five allowed attributes (key names): Type,\n ResourceType, Identifier\n Name, and Environment.

\n

For details about how to use the key attributes, see How to add\n related information to telemetry in the CloudWatch User\n Guide.

" } }, "attributes": { "target": "com.amazonaws.cloudwatchlogs#EntityAttributes", "traits": { - "smithy.api#documentation": "

Additional attributes of the entity that are not used to specify the identity of the\n entity. A list of key-value pairs.

\n

For details about how to use the attributes, see How \n to add related information to telemetry in the CloudWatch\n User Guide.

" + "smithy.api#documentation": "

Additional attributes of the entity that are not used to specify the identity of the\n entity. A list of key-value pairs.

\n

For details about how to use the attributes, see How to add\n related information to telemetry in the CloudWatch User\n Guide.

" } } }, @@ -4150,6 +4220,41 @@ "smithy.api#default": 0 } }, + "com.amazonaws.cloudwatchlogs#EventSource": { + "type": "enum", + "members": { + "CLOUD_TRAIL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CloudTrail" + } + }, + "ROUTE53_RESOLVER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Route53Resolver" + } + }, + "VPC_FLOW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VPCFlow" + } + }, + "EKS_AUDIT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EKSAudit" + } + }, + "AWSWAF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWSWAF" + } + } + } + }, "com.amazonaws.cloudwatchlogs#EventsLimit": { "type": "integer", "traits": { @@ -4159,6 +4264,14 @@ } } }, + "com.amazonaws.cloudwatchlogs#ExpectedRevisionId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1 + } + } + }, "com.amazonaws.cloudwatchlogs#ExportDestinationBucket": { "type": "string", "traits": { @@ -4213,7 +4326,7 @@ "destinationPrefix": { "target": "com.amazonaws.cloudwatchlogs#ExportDestinationPrefix", "traits": { - "smithy.api#documentation": "

The prefix that was used as the start of Amazon S3 key for every object exported.

" + "smithy.api#documentation": "

The prefix that was used as the start of Amazon S3 key for every object\n exported.

" } }, "status": { @@ -4377,7 +4490,7 @@ "logGroupIdentifier": { "target": "com.amazonaws.cloudwatchlogs#LogGroupIdentifier", "traits": { - "smithy.api#documentation": "

If this field index appears in an index policy that applies only to a \n single log group, the ARN of that log group is displayed here.

" + "smithy.api#documentation": "

If this field index appears in an index policy that applies only to a single log group,\n the ARN of that log group is displayed here.

" } }, "fieldIndexName": { @@ -4389,13 +4502,13 @@ "lastScanTime": { "target": "com.amazonaws.cloudwatchlogs#Timestamp", "traits": { - "smithy.api#documentation": "

The most recent time that CloudWatch Logs scanned ingested log events to search for this field index to improve the speed of future \n CloudWatch Logs Insights queries that search for this field index.

" + "smithy.api#documentation": "

The most recent time that CloudWatch Logs scanned ingested log events to search for\n this field index to improve the speed of future CloudWatch Logs Insights queries that\n search for this field index.

" } }, "firstEventTime": { "target": "com.amazonaws.cloudwatchlogs#Timestamp", "traits": { - "smithy.api#documentation": "

The time and date of the earliest log event that matches this field index, after the index policy that contains it was created.

" + "smithy.api#documentation": "

The time and date of the earliest log event that matches this field index, after the index\n policy that contains it was created.

" } }, "lastEventTime": { @@ -4406,7 +4519,7 @@ } }, "traits": { - "smithy.api#documentation": "

This structure describes one log event field that is used as an index in at least\n one index policy in this account.

" + "smithy.api#documentation": "

This structure describes one log event field that is used as an index in at least one\n index policy in this account.

" } }, "com.amazonaws.cloudwatchlogs#FieldIndexName": { @@ -4425,6 +4538,29 @@ "target": "com.amazonaws.cloudwatchlogs#FieldIndex" } }, + "com.amazonaws.cloudwatchlogs#FieldSelectionCriteria": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 2000 + } + } + }, + "com.amazonaws.cloudwatchlogs#FieldsData": { + "type": "structure", + "members": { + "data": { + "target": "com.amazonaws.cloudwatchlogs#Data", + "traits": { + "smithy.api#documentation": "

The actual log data content returned in the streaming response. This contains the fields\n and values of the log event in a structured format that can be parsed and processed by the\n client.

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

A structure containing the extracted fields from a log event. These fields are extracted\n based on the log format and can be used for structured querying and analysis.

" + } + }, "com.amazonaws.cloudwatchlogs#FilterCount": { "type": "integer" }, @@ -4448,7 +4584,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists log events from the specified log group. You can list all the log events or filter the results\n using a filter pattern, a time range, and the name of the log stream.

\n

You must have the logs:FilterLogEvents permission to perform this operation.

\n

You can specify the log group to search by using either logGroupIdentifier or logGroupName.\n You must include one of these two parameters, but you can't include both.\n

\n

By default, this operation returns as many log events as can fit in 1 MB (up to 10,000\n log events) or all the events found within the specified time range. If the results include a\n token, that means there are more log events available. You can get additional results by\n specifying the token in a subsequent call. This operation can return empty results while there\n are more log events available through the token.

\n

The returned log events are sorted by event timestamp, the timestamp when the event was ingested\n by CloudWatch Logs, and the ID of the PutLogEvents request.

\n

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account and \n view data from the linked source accounts. For more information, see \n CloudWatch cross-account observability.

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

Lists log events from the specified log group. You can list all the log events or\n filter the results using one or more of the following:

\n \n

You must have the logs:FilterLogEvents permission to perform this\n operation.

\n

You can specify the log group to search by using either logGroupIdentifier or\n logGroupName. You must include one of these two parameters, but you can't\n include both.

\n

\n FilterLogEvents is a paginated operation. Each page returned can contain up\n to 1 MB of log events or up to 10,000 log events. A returned page might only be partially\n full, or even empty. For example, if the result of a query would return 15,000 log events, the\n first page isn't guaranteed to have 10,000 log events even if they all fit into 1 MB.

\n

Partially full or empty pages don't necessarily mean that pagination is finished. If the\n results include a nextToken, there might be more log events available. You can\n return these additional log events by providing the nextToken in a subsequent\n FilterLogEvents operation. If the results don't include a\n nextToken, then pagination is finished.

\n

Specifying the limit parameter only guarantees that a single page doesn't\n return more log events than the specified limit, but it might return fewer events than the\n limit. This is the expected API behavior.

\n

The returned log events are sorted by event timestamp, the timestamp when the event was\n ingested by CloudWatch Logs, and the ID of the PutLogEvents request.

\n

If you are using CloudWatch cross-account observability, you can use this operation\n in a monitoring account and view data from the linked source accounts. For more information,\n see CloudWatch cross-account observability.

\n \n

If you are using log\n transformation, the FilterLogEvents operation returns only the\n original versions of log events, before they were transformed. To view the transformed\n versions, you must use a CloudWatch Logs\n query.\n

\n
", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", @@ -4462,25 +4598,25 @@ "logGroupName": { "target": "com.amazonaws.cloudwatchlogs#LogGroupName", "traits": { - "smithy.api#documentation": "

The name of the log group to search.

\n \n

\n You must include either logGroupIdentifier or logGroupName, but not \n both.\n

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

The name of the log group to search.

\n \n

You must include either logGroupIdentifier or logGroupName,\n but not both.

\n
" } }, "logGroupIdentifier": { "target": "com.amazonaws.cloudwatchlogs#LogGroupIdentifier", "traits": { - "smithy.api#documentation": "

Specify either the name or ARN of the log group to view log events from. If the log group is in a source account\n and you are using a monitoring account, you must use the log group ARN.

\n \n

\n You must include either logGroupIdentifier or logGroupName, but not \n both.\n

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

Specify either the name or ARN of the log group to view log events from. If the log group\n is in a source account and you are using a monitoring account, you must use the log group\n ARN.

\n \n

You must include either logGroupIdentifier or logGroupName,\n but not both.

\n
" } }, "logStreamNames": { "target": "com.amazonaws.cloudwatchlogs#InputLogStreamNames", "traits": { - "smithy.api#documentation": "

Filters the results to only logs from the log streams in this list.

\n

If you specify a value for both logStreamNames and logStreamNamePrefix, the action\n returns an InvalidParameterException error.

" + "smithy.api#documentation": "

Filters the results to only logs from the log streams in this list.

\n

If you specify a value for both logStreamNames and\n logStreamNamePrefix, the action returns an\n InvalidParameterException error.

" } }, "logStreamNamePrefix": { "target": "com.amazonaws.cloudwatchlogs#LogStreamName", "traits": { - "smithy.api#documentation": "

Filters the results to include only events from log streams that have names starting with this prefix.

\n

If you specify a value for both logStreamNamePrefix and logStreamNames, the action\n returns an InvalidParameterException error.

" + "smithy.api#documentation": "

Filters the results to include only events from log streams that have names starting with\n this prefix.

\n

If you specify a value for both logStreamNamePrefix and\n logStreamNames, the action returns an InvalidParameterException\n error.

" } }, "startTime": { @@ -4498,13 +4634,13 @@ "filterPattern": { "target": "com.amazonaws.cloudwatchlogs#FilterPattern", "traits": { - "smithy.api#documentation": "

The filter pattern to use. For more information, see Filter and Pattern Syntax.

\n

If not provided, all the events are matched.

" + "smithy.api#documentation": "

The filter pattern to use. For more information, see Filter and Pattern\n Syntax.

\n

If not provided, all the events are matched.

" } }, "nextToken": { "target": "com.amazonaws.cloudwatchlogs#NextToken", "traits": { - "smithy.api#documentation": "

The token for the next set of events to return. (You received this token from a previous call.)

" + "smithy.api#documentation": "

The token for the next set of events to return. (You received this token from a\n previous call.)

" } }, "limit": { @@ -4526,7 +4662,7 @@ "target": "com.amazonaws.cloudwatchlogs#Unmask", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Specify true to display the log event fields with all sensitive data unmasked and visible.\n The default is false.

\n

To use this operation with this parameter, you must be signed into an account with the logs:Unmask\n permission.

" + "smithy.api#documentation": "

Specify true to display the log event fields with all sensitive data unmasked\n and visible. The default is false.

\n

To use this operation with this parameter, you must be signed into an account with the\n logs:Unmask permission.

" } } }, @@ -4546,13 +4682,13 @@ "searchedLogStreams": { "target": "com.amazonaws.cloudwatchlogs#SearchedLogStreams", "traits": { - "smithy.api#documentation": "

\n Important As of May 15, 2020, this parameter is no longer\n supported. This parameter returns an empty list.

\n

Indicates which log streams have been searched and whether each has been searched completely.

" + "smithy.api#documentation": "

\n Important As of May 15, 2020, this parameter is no longer\n supported. This parameter returns an empty list.

\n

Indicates which log streams have been searched and whether each has been searched\n completely.

" } }, "nextToken": { "target": "com.amazonaws.cloudwatchlogs#NextToken", "traits": { - "smithy.api#documentation": "

The token to use when requesting the next set of items. The token expires after 24 hours.

" + "smithy.api#documentation": "

The token to use when requesting the next set of items. The token expires after 24\n hours.

\n

If the results don't include a nextToken, then pagination is finished.\n

" } } }, @@ -4697,7 +4833,7 @@ "logGroupIdentifier": { "target": "com.amazonaws.cloudwatchlogs#LogGroupIdentifier", "traits": { - "smithy.api#documentation": "

The name or ARN of the log group that contains the data protection policy that you want to see.

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

The name or ARN of the log group that contains the data protection policy that you want to\n see.

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

Returns complete information about one logical delivery. A delivery is a \n connection between a \n delivery source\n and a \n \n delivery destination\n .

\n

A delivery source represents an Amazon Web Services resource that sends logs to an logs delivery destination. \n The destination can be CloudWatch Logs, Amazon S3, or Firehose. \n Only some Amazon Web Services services support being configured as a delivery source. These services are listed\n in Enable logging from Amazon Web Services \n services.\n

\n

You need to specify the delivery id in this operation. You can find the IDs of the deliveries in your account with the \n DescribeDeliveries operation.

" + "smithy.api#documentation": "

Returns complete information about one logical delivery. A delivery\n is a connection between a \n delivery\n source\n and a \n delivery destination\n .

\n

A delivery source represents an Amazon Web Services resource that sends logs to an logs\n delivery destination. The destination can be CloudWatch Logs, Amazon S3, or Firehose. Only some Amazon Web Services services support being configured as a delivery\n source. These services are listed in Enable logging from\n Amazon Web Services services.\n

\n

You need to specify the delivery id in this operation. You can find the IDs\n of the deliveries in your account with the DescribeDeliveries operation.

" } }, "com.amazonaws.cloudwatchlogs#GetDeliveryDestination": { @@ -4810,7 +4946,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves the delivery destination policy assigned to the delivery destination that you specify.\n For more information about delivery destinations and their policies, see \n PutDeliveryDestinationPolicy.

" + "smithy.api#documentation": "

Retrieves the delivery destination policy assigned to the delivery destination that you\n specify. For more information about delivery destinations and their policies, see PutDeliveryDestinationPolicy.

" } }, "com.amazonaws.cloudwatchlogs#GetDeliveryDestinationPolicyRequest": { @@ -4987,7 +5123,7 @@ "integrationName": { "target": "com.amazonaws.cloudwatchlogs#IntegrationName", "traits": { - "smithy.api#documentation": "

The name of the integration that you want to find information about. To find the name of your integration, use \n ListIntegrations\n

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

The name of the integration that you want to find information about. To find the name of\n your integration, use ListIntegrations\n

", "smithy.api#required": {} } } @@ -5008,7 +5144,7 @@ "integrationType": { "target": "com.amazonaws.cloudwatchlogs#IntegrationType", "traits": { - "smithy.api#documentation": "

The type of integration. Integrations with OpenSearch Service have the type OPENSEARCH.

" + "smithy.api#documentation": "

The type of integration. Integrations with OpenSearch Service have the type\n OPENSEARCH.

" } }, "integrationStatus": { @@ -5020,7 +5156,7 @@ "integrationDetails": { "target": "com.amazonaws.cloudwatchlogs#IntegrationDetails", "traits": { - "smithy.api#documentation": "

A structure that contains information about the integration configuration. For an integration \n with OpenSearch Service, this includes information about OpenSearch Service resources such as the collection, the workspace, \n and policies.

" + "smithy.api#documentation": "

A structure that contains information about the integration configuration. For an\n integration with OpenSearch Service, this includes information about OpenSearch Service\n resources such as the collection, the workspace, and policies.

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

Retrieves information about the log anomaly detector that you specify.

" + "smithy.api#documentation": "

Retrieves information about the log anomaly detector that you specify. The KMS key ARN detected is valid.

" } }, "com.amazonaws.cloudwatchlogs#GetLogAnomalyDetectorRequest": { @@ -5060,7 +5196,7 @@ "anomalyDetectorArn": { "target": "com.amazonaws.cloudwatchlogs#AnomalyDetectorArn", "traits": { - "smithy.api#documentation": "

The ARN of the anomaly detector to retrieve information about. You can find the ARNs of log anomaly detectors \n in your account by using the ListLogAnomalyDetectors\n operation.

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

The ARN of the anomaly detector to retrieve information about. You can find the ARNs of\n log anomaly detectors in your account by using the ListLogAnomalyDetectors operation.

", "smithy.api#required": {} } } @@ -5081,13 +5217,13 @@ "logGroupArnList": { "target": "com.amazonaws.cloudwatchlogs#LogGroupArnList", "traits": { - "smithy.api#documentation": "

An array of structures, where each structure contains the ARN of a log group\n associated with this anomaly detector.

" + "smithy.api#documentation": "

An array of structures, where each structure contains the ARN of a log group associated\n with this anomaly detector.

" } }, "evaluationFrequency": { "target": "com.amazonaws.cloudwatchlogs#EvaluationFrequency", "traits": { - "smithy.api#documentation": "

Specifies how often the anomaly detector runs and look for anomalies. Set this value\n according to the frequency that the log group receives new logs. For example, if the log group\n receives new log events every 10 minutes, then setting evaluationFrequency to\n FIFTEEN_MIN might be appropriate.

" + "smithy.api#documentation": "

Specifies how often the anomaly detector runs and look for anomalies. Set this value\n according to the frequency that the log group receives new logs. For example, if the log group\n receives new log events every 10 minutes, then setting evaluationFrequency to\n FIFTEEN_MIN might be appropriate.

" } }, "filterPattern": { @@ -5096,13 +5232,13 @@ "anomalyDetectorStatus": { "target": "com.amazonaws.cloudwatchlogs#AnomalyDetectorStatus", "traits": { - "smithy.api#documentation": "

Specifies whether the anomaly detector is currently active. To change its status, use\n the enabled parameter in the UpdateLogAnomalyDetector \n operation.

" + "smithy.api#documentation": "

Specifies whether the anomaly detector is currently active. To change its status, use the\n enabled parameter in the UpdateLogAnomalyDetector operation.

" } }, "kmsKeyId": { "target": "com.amazonaws.cloudwatchlogs#KmsKeyId", "traits": { - "smithy.api#documentation": "

The ID of the KMS key assigned to this anomaly detector, if any.

" + "smithy.api#documentation": "

The ARN of the KMS key assigned to this anomaly detector, if any.

" } }, "creationTimeStamp": { @@ -5122,7 +5258,7 @@ "anomalyVisibilityTime": { "target": "com.amazonaws.cloudwatchlogs#AnomalyVisibilityTime", "traits": { - "smithy.api#documentation": "

The number of days used as the life cycle of anomalies. After this time, anomalies are automatically baselined \n and the anomaly detector model will treat new occurrences of similar event as normal.

" + "smithy.api#documentation": "

The number of days used as the life cycle of anomalies. After this time, anomalies are\n automatically baselined and the anomaly detector model will treat new occurrences of similar\n event as normal.

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

Lists log events from the specified log stream. You can list all of the log events or\n filter using a time range.

\n

By default, this operation returns as many log events as can fit in a response size of 1MB (up to 10,000 log events). \n You can get additional log events by specifying one of the tokens in a subsequent call.\n This operation can return empty results while there are more log events available through the token.

\n

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account and \n view data from the linked source accounts. For more information, see \n CloudWatch cross-account observability.

\n

You can specify the log group to search by using either logGroupIdentifier or logGroupName.\n You must include one of these two parameters, but you can't include both.\n

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

Lists log events from the specified log stream. You can list all of the log events or\n filter using a time range.

\n

\n GetLogEvents is a paginated operation. Each page returned can contain up to 1\n MB of log events or up to 10,000 log events. A returned page might only be partially full, or\n even empty. For example, if the result of a query would return 15,000 log events, the first\n page isn't guaranteed to have 10,000 log events even if they all fit into 1 MB.

\n

Partially full or empty pages don't necessarily mean that pagination is finished. As long\n as the nextBackwardToken or nextForwardToken returned is NOT equal\n to the nextToken that you passed into the API call, there might be more log\n events available. The token that you use depends on the direction you want to move in along\n the log stream. The returned tokens are never null.

\n \n

If you set startFromHead to true and you don’t include\n endTime in your request, you can end up in a situation where the pagination\n doesn't terminate. This can happen when the new log events are being added to the target log\n streams faster than they are being read. This situation is a good use case for the CloudWatch Logs\n Live Tail feature.

\n
\n

If you are using CloudWatch cross-account observability, you can use this operation\n in a monitoring account and view data from the linked source accounts. For more information,\n see CloudWatch cross-account observability.

\n

You can specify the log group to search by using either logGroupIdentifier or\n logGroupName. You must include one of these two parameters, but you can't\n include both.

\n \n

If you are using log\n transformation, the GetLogEvents operation returns only the original\n versions of log events, before they were transformed. To view the transformed versions, you\n must use a CloudWatch Logs\n query.\n

\n
", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextForwardToken", @@ -5181,13 +5317,13 @@ "logGroupName": { "target": "com.amazonaws.cloudwatchlogs#LogGroupName", "traits": { - "smithy.api#documentation": "

The name of the log group.

\n \n

\n You must include either logGroupIdentifier or logGroupName, but not \n both.\n

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

The name of the log group.

\n \n

You must include either logGroupIdentifier or logGroupName,\n but not both.

\n
" } }, "logGroupIdentifier": { "target": "com.amazonaws.cloudwatchlogs#LogGroupIdentifier", "traits": { - "smithy.api#documentation": "

Specify either the name or ARN of the log group to view events from. If the log group is in a source account\n and you are using a monitoring account, you must use the log group ARN.

\n \n

\n You must include either logGroupIdentifier or logGroupName, but not \n both.\n

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

Specify either the name or ARN of the log group to view events from. If the log group is\n in a source account and you are using a monitoring account, you must use the log group\n ARN.

\n \n

You must include either logGroupIdentifier or logGroupName,\n but not both.

\n
" } }, "logStreamName": { @@ -5212,7 +5348,7 @@ "nextToken": { "target": "com.amazonaws.cloudwatchlogs#NextToken", "traits": { - "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a previous call.)

" + "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a previous\n call.)

" } }, "limit": { @@ -5224,14 +5360,14 @@ "startFromHead": { "target": "com.amazonaws.cloudwatchlogs#StartFromHead", "traits": { - "smithy.api#documentation": "

If the value is true, the earliest log events are returned first.\n If the value is false, the latest log events are returned first.\n The default value is false.

\n

If you are using a previous nextForwardToken value as the nextToken in this operation, \n you must specify true for startFromHead.

" + "smithy.api#documentation": "

If the value is true, the earliest log events are returned first. If the value is\n false, the latest log events are returned first. The default value is false.

\n

If you are using a previous nextForwardToken value as the\n nextToken in this operation, you must specify true for\n startFromHead.

" } }, "unmask": { "target": "com.amazonaws.cloudwatchlogs#Unmask", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Specify true to display the log event fields with all sensitive data unmasked and visible.\n The default is false.

\n

To use this operation with this parameter, you must be signed into an account with the logs:Unmask\n permission.

" + "smithy.api#documentation": "

Specify true to display the log event fields with all sensitive data unmasked\n and visible. The default is false.

\n

To use this operation with this parameter, you must be signed into an account with the\n logs:Unmask permission.

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

Returns a list of the fields that are included in log events in the specified log group.\n Includes the percentage of log events that contain each field. The search is limited to a time\n period that you specify.

\n

You can specify the log group to search by using either logGroupIdentifier or logGroupName.\n You must specify one of these parameters, but you can't specify both.\n

\n

In the results, fields that start with @ are fields generated by CloudWatch\n Logs. For example, @timestamp is the timestamp of each log event. For more\n information about the fields that are generated by CloudWatch logs, see Supported\n Logs and Discovered Fields.

\n

The response results are sorted by the frequency percentage, starting \n with the highest percentage.

\n

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account and \n view data from the linked source accounts. For more information, see \n CloudWatch cross-account observability.

" + "smithy.api#documentation": "

Returns a list of the fields that are included in log events in the specified log group.\n Includes the percentage of log events that contain each field. The search is limited to a time\n period that you specify.

\n

You can specify the log group to search by using either logGroupIdentifier or\n logGroupName. You must specify one of these parameters, but you can't specify\n both.

\n

In the results, fields that start with @ are fields generated by CloudWatch\n Logs. For example, @timestamp is the timestamp of each log event. For more\n information about the fields that are generated by CloudWatch logs, see Supported\n Logs and Discovered Fields.

\n

The response results are sorted by the frequency percentage, starting with the highest\n percentage.

\n

If you are using CloudWatch cross-account observability, you can use this operation\n in a monitoring account and view data from the linked source accounts. For more information,\n see CloudWatch cross-account observability.

" } }, "com.amazonaws.cloudwatchlogs#GetLogGroupFieldsRequest": { @@ -5297,19 +5433,19 @@ "logGroupName": { "target": "com.amazonaws.cloudwatchlogs#LogGroupName", "traits": { - "smithy.api#documentation": "

The name of the log group to search.

\n \n

\n You must include either logGroupIdentifier or logGroupName, but not \n both.\n

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

The name of the log group to search.

\n \n

You must include either logGroupIdentifier or logGroupName,\n but not both.

\n
" } }, "time": { "target": "com.amazonaws.cloudwatchlogs#Timestamp", "traits": { - "smithy.api#documentation": "

The time to set as the center of the query. If you specify time, the 8 minutes before and\n 8 minutes after this time are searched. If you omit time, the most recent 15 minutes\n up to the current time are searched.

\n

The time value is specified as epoch time, which is the number of seconds\n since January 1, 1970, 00:00:00 UTC.

" + "smithy.api#documentation": "

The time to set as the center of the query. If you specify time, the 8\n minutes before and 8 minutes after this time are searched. If you omit time, the\n most recent 15 minutes up to the current time are searched.

\n

The time value is specified as epoch time, which is the number of seconds\n since January 1, 1970, 00:00:00 UTC.

" } }, "logGroupIdentifier": { "target": "com.amazonaws.cloudwatchlogs#LogGroupIdentifier", "traits": { - "smithy.api#documentation": "

Specify either the name or ARN of the log group to view. If the log group is in a source account and\n you are using a monitoring account, you must specify the ARN.

\n \n

\n You must include either logGroupIdentifier or logGroupName, but not \n both.\n

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

Specify either the name or ARN of the log group to view. If the log group is in a source\n account and you are using a monitoring account, you must specify the ARN.

\n \n

You must include either logGroupIdentifier or logGroupName,\n but not both.

\n
" } } }, @@ -5331,6 +5467,94 @@ "smithy.api#output": {} } }, + "com.amazonaws.cloudwatchlogs#GetLogObject": { + "type": "operation", + "input": { + "target": "com.amazonaws.cloudwatchlogs#GetLogObjectRequest" + }, + "output": { + "target": "com.amazonaws.cloudwatchlogs#GetLogObjectResponse" + }, + "errors": [ + { + "target": "com.amazonaws.cloudwatchlogs#AccessDeniedException" + }, + { + "target": "com.amazonaws.cloudwatchlogs#InvalidOperationException" + }, + { + "target": "com.amazonaws.cloudwatchlogs#InvalidParameterException" + }, + { + "target": "com.amazonaws.cloudwatchlogs#LimitExceededException" + }, + { + "target": "com.amazonaws.cloudwatchlogs#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves a large logging object (LLO) and streams it back. This API is used to fetch the\n content of large portions of log events that have been ingested through the\n PutOpenTelemetryLogs API. When log events contain fields that would cause the total event size\n to exceed 1MB, CloudWatch Logs automatically processes up to 10 fields, starting with the\n largest fields. Each field is truncated as needed to keep the total event size as close to 1MB\n as possible. The excess portions are stored as Large Log Objects (LLOs) and these fields are\n processed separately and LLO reference system fields (in the format\n @ptr.$[path.to.field]) are added. The path in the reference field reflects the\n original JSON structure where the large field was located. For example, this could be\n @ptr.$['input']['message'], @ptr.$['AAA']['BBB']['CCC']['DDD'],\n @ptr.$['AAA'], or any other path matching your log structure.

", + "smithy.api#endpoint": { + "hostPrefix": "streaming-" + } + } + }, + "com.amazonaws.cloudwatchlogs#GetLogObjectRequest": { + "type": "structure", + "members": { + "unmask": { + "target": "com.amazonaws.cloudwatchlogs#Unmask", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

A boolean flag that indicates whether to unmask sensitive log data. When set to true, any\n masked or redacted data in the log object will be displayed in its original form. Default is\n false.

" + } + }, + "logObjectPointer": { + "target": "com.amazonaws.cloudwatchlogs#LogObjectPointer", + "traits": { + "smithy.api#documentation": "

A pointer to the specific log object to retrieve. This is a required parameter that\n uniquely identifies the log object within CloudWatch Logs. The pointer is typically obtained\n from a previous query or filter operation.

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

The parameters for the GetLogObject operation.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.cloudwatchlogs#GetLogObjectResponse": { + "type": "structure", + "members": { + "fieldStream": { + "target": "com.amazonaws.cloudwatchlogs#GetLogObjectResponseStream", + "traits": { + "smithy.api#documentation": "

A stream of structured log data returned by the GetLogObject operation. This stream\n contains log events with their associated metadata and extracted fields.

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

The response from the GetLogObject operation.

", + "smithy.api#output": {} + } + }, + "com.amazonaws.cloudwatchlogs#GetLogObjectResponseStream": { + "type": "union", + "members": { + "fields": { + "target": "com.amazonaws.cloudwatchlogs#FieldsData" + }, + "InternalStreamingException": { + "target": "com.amazonaws.cloudwatchlogs#InternalStreamingException", + "traits": { + "smithy.api#documentation": "

An internal error occurred during the streaming of log data. This exception is thrown when\n there's an issue with the internal streaming mechanism used by the GetLogObject\n operation.

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

A stream of structured log data returned by the GetLogObject operation. This stream\n contains log events with their associated metadata and extracted fields.

", + "smithy.api#streaming": {} + } + }, "com.amazonaws.cloudwatchlogs#GetLogRecord": { "type": "operation", "input": { @@ -5371,7 +5595,7 @@ "target": "com.amazonaws.cloudwatchlogs#Unmask", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Specify true to display the log event fields with all sensitive data unmasked and visible.\n The default is false.

\n

To use this operation with this parameter, you must be signed into an account with the logs:Unmask\n permission.

" + "smithy.api#documentation": "

Specify true to display the log event fields with all sensitive data unmasked\n and visible. The default is false.

\n

To use this operation with this parameter, you must be signed into an account with the\n logs:Unmask permission.

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

Returns the results from the specified query.

\n

Only the fields requested in the query are returned, along with a @ptr\n field, which is the identifier for the log record. You can use the value of @ptr\n in a GetLogRecord\n operation to get the full log record.

\n

\n GetQueryResults does not start running a query. To run a query, use StartQuery. For more information about how long results of previous queries\n are available, see CloudWatch Logs quotas.

\n

If the value of the Status field in the output is Running, this operation \n returns only partial results. If you see a value of Scheduled or Running for the status, \n you can retry the operation later to see the final results.

\n

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account to start \n queries in linked source accounts. For more information, see \n CloudWatch cross-account observability.

" + "smithy.api#documentation": "

Returns the results from the specified query.

\n

Only the fields requested in the query are returned, along with a @ptr field,\n which is the identifier for the log record. You can use the value of @ptr in a\n GetLogRecord\n operation to get the full log record.

\n

\n GetQueryResults does not start running a query. To run a query, use StartQuery. For more information about how long results of previous queries are\n available, see CloudWatch Logs\n quotas.

\n

If the value of the Status field in the output is Running, this\n operation returns only partial results. If you see a value of Scheduled or\n Running for the status, you can retry the operation later to see the final\n results.

\n

If you are using CloudWatch cross-account observability, you can use this operation\n in a monitoring account to start queries in linked source accounts. For more information, see\n CloudWatch cross-account observability.

" } }, "com.amazonaws.cloudwatchlogs#GetQueryResultsRequest": { @@ -5437,7 +5661,7 @@ "queryLanguage": { "target": "com.amazonaws.cloudwatchlogs#QueryLanguage", "traits": { - "smithy.api#documentation": "

The query language used for this query. For more information about the query languages that CloudWatch Logs supports, \n see Supported query languages.

" + "smithy.api#documentation": "

The query language used for this query. For more information about the query languages\n that CloudWatch Logs supports, see Supported query\n languages.

" } }, "results": { @@ -5455,7 +5679,7 @@ "status": { "target": "com.amazonaws.cloudwatchlogs#QueryStatus", "traits": { - "smithy.api#documentation": "

The status of the most recent running of the query. Possible values are Cancelled, \n Complete, Failed, Running, Scheduled, \n Timeout, and Unknown.

\n

Queries time out after 60 minutes of runtime. To avoid having your queries time out,\n reduce the time range being searched or partition your query into a number of queries.

" + "smithy.api#documentation": "

The status of the most recent running of the query. Possible values are\n Cancelled, Complete, Failed, Running,\n Scheduled, Timeout, and Unknown.

\n

Queries time out after 60 minutes of runtime. To avoid having your queries time out,\n reduce the time range being searched or partition your query into a number of queries.

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

Returns the information about the log transformer associated with this log group.

\n

This operation returns data only for transformers created at the log group level. To get information\n for an account-level transformer, use DescribeAccountPolicies.

" + "smithy.api#documentation": "

Returns the information about the log transformer associated with this log group.

\n

This operation returns data only for transformers created at the log group level. To get\n information for an account-level transformer, use DescribeAccountPolicies.

" } }, "com.amazonaws.cloudwatchlogs#GetTransformerRequest": { @@ -5501,7 +5725,7 @@ "logGroupIdentifier": { "target": "com.amazonaws.cloudwatchlogs#LogGroupIdentifier", "traits": { - "smithy.api#documentation": "

Specify either the name or ARN of the log group to return transformer information for. If the log group is in a source account\n and you are using a monitoring account, you must use the log group ARN.

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

Specify either the name or ARN of the log group to return transformer information for. If\n the log group is in a source account and you are using a monitoring account, you must use the\n log group ARN.

", "smithy.api#required": {} } } @@ -5522,13 +5746,13 @@ "creationTime": { "target": "com.amazonaws.cloudwatchlogs#Timestamp", "traits": { - "smithy.api#documentation": "

The creation time of the transformer, expressed as the number of milliseconds after Jan\n 1, 1970 00:00:00 UTC.

" + "smithy.api#documentation": "

The creation time of the transformer, expressed as the number of milliseconds after Jan\n 1, 1970 00:00:00 UTC.

" } }, "lastModifiedTime": { "target": "com.amazonaws.cloudwatchlogs#Timestamp", "traits": { - "smithy.api#documentation": "

The date and time when this transformer was most recently modified, expressed as the number of milliseconds after Jan\n 1, 1970 00:00:00 UTC.

" + "smithy.api#documentation": "

The date and time when this transformer was most recently modified, expressed as the\n number of milliseconds after Jan 1, 1970 00:00:00 UTC.

" } }, "transformerConfig": { @@ -5548,19 +5772,19 @@ "source": { "target": "com.amazonaws.cloudwatchlogs#Source", "traits": { - "smithy.api#documentation": "

The path to the field in the log event that you want to parse. If you omit this value, the whole log message is parsed.

" + "smithy.api#documentation": "

The path to the field in the log event that you want to parse. If you omit this value, the\n whole log message is parsed.

" } }, "match": { "target": "com.amazonaws.cloudwatchlogs#GrokMatch", "traits": { - "smithy.api#documentation": "

The grok pattern to match against the log event. For a list of \n supported grok patterns, see Supported grok patterns.

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

The grok pattern to match against the log event. For a list of supported grok patterns,\n see Supported grok patterns.

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

This processor uses pattern matching to parse and structure unstructured data. This processor can also extract fields from log messages.

\n

For more information about this processor including examples, see \n grok in the CloudWatch Logs User Guide.

" + "smithy.api#documentation": "

This processor uses pattern matching to parse and structure unstructured data. This\n processor can also extract fields from log messages.

\n

For more information about this processor including examples, see grok in the CloudWatch Logs User Guide.

" } }, "com.amazonaws.cloudwatchlogs#GrokMatch": { @@ -5568,7 +5792,7 @@ "traits": { "smithy.api#length": { "min": 1, - "max": 128 + "max": 512 } } }, @@ -5614,13 +5838,13 @@ "policyName": { "target": "com.amazonaws.cloudwatchlogs#PolicyName", "traits": { - "smithy.api#documentation": "

The name of this policy. Responses about log group-level field index policies don't have this field, because those policies\n don't have names.

" + "smithy.api#documentation": "

The name of this policy. Responses about log group-level field index policies don't have\n this field, because those policies don't have names.

" } }, "source": { "target": "com.amazonaws.cloudwatchlogs#IndexSource", "traits": { - "smithy.api#documentation": "

This field indicates whether this is an account-level index policy or an index policy that applies\n only to a single log group.

" + "smithy.api#documentation": "

This field indicates whether this is an account-level index policy or an index policy that\n applies only to a single log group.

" } } }, @@ -5683,13 +5907,13 @@ "message": { "target": "com.amazonaws.cloudwatchlogs#EventMessage", "traits": { - "smithy.api#documentation": "

The raw event message. Each log event can be no larger than 256 KB.

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

The raw event message. Each log event can be no larger than 1 MB.

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

Represents a log event, which is a record of activity that was recorded \n by the application or resource being monitored.

" + "smithy.api#documentation": "

Represents a log event, which is a record of activity that was recorded by the\n application or resource being monitored.

" } }, "com.amazonaws.cloudwatchlogs#InputLogEvents": { @@ -5728,12 +5952,12 @@ "openSearchIntegrationDetails": { "target": "com.amazonaws.cloudwatchlogs#OpenSearchIntegrationDetails", "traits": { - "smithy.api#documentation": "

This structure contains complete information about one integration between CloudWatch Logs and\n OpenSearch Service.

" + "smithy.api#documentation": "

This structure contains complete information about one integration between CloudWatch Logs and OpenSearch Service.

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

This structure contains information about the integration configuration. For an integration \n with OpenSearch Service, this includes information about OpenSearch Service resources such as the collection, the workspace, \n and policies.

\n

This structure\n is returned by a GetIntegration operation.

" + "smithy.api#documentation": "

This structure contains information about the integration configuration. For an\n integration with OpenSearch Service, this includes information about OpenSearch Service\n resources such as the collection, the workspace, and policies.

\n

This structure is returned by a GetIntegration operation.

" } }, "com.amazonaws.cloudwatchlogs#IntegrationName": { @@ -5805,7 +6029,7 @@ "integrationType": { "target": "com.amazonaws.cloudwatchlogs#IntegrationType", "traits": { - "smithy.api#documentation": "

The type of integration. Integrations with OpenSearch Service have the type OPENSEARCH.

" + "smithy.api#documentation": "

The type of integration. Integrations with OpenSearch Service have the type\n OPENSEARCH.

" } }, "integrationStatus": { @@ -5816,7 +6040,7 @@ } }, "traits": { - "smithy.api#documentation": "

This structure contains information about one CloudWatch Logs integration. This structure\n is returned by a ListIntegrations operation.

" + "smithy.api#documentation": "

This structure contains information about one CloudWatch Logs integration. This\n structure is returned by a ListIntegrations operation.

" } }, "com.amazonaws.cloudwatchlogs#IntegrationType": { @@ -5833,6 +6057,18 @@ "com.amazonaws.cloudwatchlogs#Interleaved": { "type": "boolean" }, + "com.amazonaws.cloudwatchlogs#InternalStreamingException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.cloudwatchlogs#Message" + } + }, + "traits": { + "smithy.api#documentation": "

An internal error occurred during the streaming of log data. This exception is thrown when\n there's an issue with the internal streaming mechanism used by the GetLogObject\n operation.

", + "smithy.api#error": "client" + } + }, "com.amazonaws.cloudwatchlogs#InvalidOperationException": { "type": "structure", "members": { @@ -5868,7 +6104,7 @@ } }, "traits": { - "smithy.api#documentation": "

The sequence token is not valid. You can get the correct sequence token in \n the expectedSequenceToken field in the InvalidSequenceTokenException\n message.

\n \n

\n PutLogEvents\n actions are now always accepted and never return\n InvalidSequenceTokenException regardless of receiving an invalid sequence token.

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

The sequence token is not valid. You can get the correct sequence token in the\n expectedSequenceToken field in the InvalidSequenceTokenException\n message.

\n \n

\n PutLogEvents actions are now always accepted and never return\n InvalidSequenceTokenException regardless of receiving an invalid sequence\n token.

\n
", "smithy.api#error": "client" } }, @@ -5949,7 +6185,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a list of anomalies that log anomaly detectors have found. For details about the structure format of\n each anomaly object that is returned, see the example in this section.

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

Returns a list of anomalies that log anomaly detectors have found. For details about the\n structure format of each anomaly object that is returned, see the example in this\n section.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", @@ -5973,19 +6209,19 @@ "anomalyDetectorArn": { "target": "com.amazonaws.cloudwatchlogs#AnomalyDetectorArn", "traits": { - "smithy.api#documentation": "

Use this to optionally limit the results to only the anomalies found by a certain \n anomaly detector.

" + "smithy.api#documentation": "

Use this to optionally limit the results to only the anomalies found by a certain anomaly\n detector.

" } }, "suppressionState": { "target": "com.amazonaws.cloudwatchlogs#SuppressionState", "traits": { - "smithy.api#documentation": "

You can specify this parameter if you want to the operation to return only anomalies that \n are currently either suppressed or unsuppressed.

" + "smithy.api#documentation": "

You can specify this parameter if you want to the operation to return only anomalies that\n are currently either suppressed or unsuppressed.

" } }, "limit": { "target": "com.amazonaws.cloudwatchlogs#ListAnomaliesLimit", "traits": { - "smithy.api#documentation": "

The maximum number of items to return. If you don't specify a value, the default maximum value of \n 50 items is used.

" + "smithy.api#documentation": "

The maximum number of items to return. If you don't specify a value, the default\n maximum value of 50 items is used.

" } }, "nextToken": { @@ -6002,7 +6238,7 @@ "anomalies": { "target": "com.amazonaws.cloudwatchlogs#Anomalies", "traits": { - "smithy.api#documentation": "

An array of structures, where each structure contains information about one anomaly that a log\n anomaly detector has found.

" + "smithy.api#documentation": "

An array of structures, where each structure contains information about one anomaly that a\n log anomaly detector has found.

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

Returns a list of integrations between CloudWatch Logs and other services in this account. Currently, only one\n integration can be created in an account, and this integration must be with OpenSearch Service.

" + "smithy.api#documentation": "

Returns a list of integrations between CloudWatch Logs and other services in this\n account. Currently, only one integration can be created in an account, and this integration\n must be with OpenSearch Service.

" } }, "com.amazonaws.cloudwatchlogs#ListIntegrationsRequest": { @@ -6039,7 +6275,7 @@ "integrationNamePrefix": { "target": "com.amazonaws.cloudwatchlogs#IntegrationNamePrefix", "traits": { - "smithy.api#documentation": "

To limit the results to integrations that start with a certain name prefix, specify that name prefix here.

" + "smithy.api#documentation": "

To limit the results to integrations that start with a certain name prefix, specify that\n name prefix here.

" } }, "integrationType": { @@ -6051,7 +6287,7 @@ "integrationStatus": { "target": "com.amazonaws.cloudwatchlogs#IntegrationStatus", "traits": { - "smithy.api#documentation": "

To limit the results to integrations with a certain status, specify that status here.

" + "smithy.api#documentation": "

To limit the results to integrations with a certain status, specify that status\n here.

" } } }, @@ -6065,7 +6301,7 @@ "integrationSummaries": { "target": "com.amazonaws.cloudwatchlogs#IntegrationSummaries", "traits": { - "smithy.api#documentation": "

An array, where each object in the array contains information about one CloudWatch Logs integration in this account.

" + "smithy.api#documentation": "

An array, where each object in the array contains information about one CloudWatch Logs\n integration in this account.

" } } }, @@ -6073,6 +6309,15 @@ "smithy.api#output": {} } }, + "com.amazonaws.cloudwatchlogs#ListLimit": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, "com.amazonaws.cloudwatchlogs#ListLogAnomalyDetectors": { "type": "operation", "input": { @@ -6120,13 +6365,13 @@ "filterLogGroupArn": { "target": "com.amazonaws.cloudwatchlogs#LogGroupArn", "traits": { - "smithy.api#documentation": "

Use this to optionally filter the results to only include anomaly detectors that are associated with the \n specified log group.

" + "smithy.api#documentation": "

Use this to optionally filter the results to only include anomaly detectors that are\n associated with the specified log group.

" } }, "limit": { "target": "com.amazonaws.cloudwatchlogs#ListLogAnomalyDetectorsLimit", "traits": { - "smithy.api#documentation": "

The maximum number of items to return. If you don't specify a value, the default maximum value of \n 50 items is used.

" + "smithy.api#documentation": "

The maximum number of items to return. If you don't specify a value, the default\n maximum value of 50 items is used.

" } }, "nextToken": { @@ -6143,7 +6388,7 @@ "anomalyDetectors": { "target": "com.amazonaws.cloudwatchlogs#AnomalyDetectors", "traits": { - "smithy.api#documentation": "

An array of structures, where each structure in the array contains information about one anomaly detector.

" + "smithy.api#documentation": "

An array of structures, where each structure in the array contains information about one\n anomaly detector.

" } }, "nextToken": { @@ -6154,6 +6399,26 @@ "smithy.api#output": {} } }, + "com.amazonaws.cloudwatchlogs#ListLogGroups": { + "type": "operation", + "input": { + "target": "com.amazonaws.cloudwatchlogs#ListLogGroupsRequest" + }, + "output": { + "target": "com.amazonaws.cloudwatchlogs#ListLogGroupsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.cloudwatchlogs#InvalidParameterException" + }, + { + "target": "com.amazonaws.cloudwatchlogs#ServiceUnavailableException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns a list of log groups in the Region in your account. If you are performing this\n action in a monitoring account, you can choose to also return log groups from source accounts\n that are linked to the monitoring account. For more information about using cross-account\n observability to set up monitoring accounts and source accounts, see \n CloudWatch cross-account observability.

\n

You can optionally filter the list by log group class and by using regular expressions in\n your request to match strings in the log group names.

\n

This operation is paginated. By default, your first use of this operation returns 50\n results, and includes a token to use in a subsequent operation to return more results.

" + } + }, "com.amazonaws.cloudwatchlogs#ListLogGroupsForQuery": { "type": "operation", "input": { @@ -6177,7 +6442,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a list of the log groups that were analyzed during a single CloudWatch Logs Insights query. This can be useful for queries\n that use\n log group name prefixes or the filterIndex command, because the log groups are dynamically selected in these cases.

\n

For more information about field indexes, see \n Create field indexes to improve query performance and reduce costs.

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

Returns a list of the log groups that were analyzed during a single CloudWatch Logs\n Insights query. This can be useful for queries that use log group name prefixes or the\n filterIndex command, because the log groups are dynamically selected in these\n cases.

\n

For more information about field indexes, see Create field indexes\n to improve query performance and reduce costs.

", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", @@ -6201,7 +6466,7 @@ "queryId": { "target": "com.amazonaws.cloudwatchlogs#QueryId", "traits": { - "smithy.api#documentation": "

The ID of the query to use. This query ID is from the response\n to your StartQuery operation.

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

The ID of the query to use. This query ID is from the response to your StartQuery operation.

", "smithy.api#required": {} } }, @@ -6236,6 +6501,64 @@ "smithy.api#output": {} } }, + "com.amazonaws.cloudwatchlogs#ListLogGroupsRequest": { + "type": "structure", + "members": { + "logGroupNamePattern": { + "target": "com.amazonaws.cloudwatchlogs#LogGroupNameRegexPattern", + "traits": { + "smithy.api#documentation": "

Use this parameter to limit the returned log groups to only those with names that match\n the pattern that you specify. This parameter is a regular expression that can match prefixes\n and substrings, and supports wildcard matching and matching multiple patterns, as in the\n following examples.

\n \n

You can specify as many as five different regular expression patterns in this field, each\n of which must be between 3 and 24 characters. You can include the ^ symbol as\n many as five times, and include the | symbol as many as four times.

" + } + }, + "logGroupClass": { + "target": "com.amazonaws.cloudwatchlogs#LogGroupClass", + "traits": { + "smithy.api#documentation": "

Use this parameter to limit the results to only those log groups in the specified log\n group class. If you omit this parameter, log groups of all classes can be returned.

" + } + }, + "includeLinkedAccounts": { + "target": "com.amazonaws.cloudwatchlogs#IncludeLinkedAccounts", + "traits": { + "smithy.api#documentation": "

If you are using a monitoring account, set this to true to have the operation\n return log groups in the accounts listed in accountIdentifiers.

\n

If this parameter is set to true and accountIdentifiers contains\n a null value, the operation returns all log groups in the monitoring account and all log\n groups in all source accounts that are linked to the monitoring account.

\n

The default for this parameter is false.

" + } + }, + "accountIdentifiers": { + "target": "com.amazonaws.cloudwatchlogs#AccountIds", + "traits": { + "smithy.api#documentation": "

When includeLinkedAccounts is set to true, use this parameter to\n specify the list of accounts to search. You can specify as many as 20 account IDs in the\n array.

" + } + }, + "nextToken": { + "target": "com.amazonaws.cloudwatchlogs#NextToken" + }, + "limit": { + "target": "com.amazonaws.cloudwatchlogs#ListLimit", + "traits": { + "smithy.api#documentation": "

The maximum number of log groups to return. If you omit this parameter, the default is\n up to 50 log groups.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.cloudwatchlogs#ListLogGroupsResponse": { + "type": "structure", + "members": { + "logGroups": { + "target": "com.amazonaws.cloudwatchlogs#LogGroupSummaries", + "traits": { + "smithy.api#documentation": "

An array of structures, where each structure contains the information about one log\n group.

" + } + }, + "nextToken": { + "target": "com.amazonaws.cloudwatchlogs#NextToken" + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.cloudwatchlogs#ListTagsForResource": { "type": "operation", "input": { @@ -6256,7 +6579,7 @@ } ], "traits": { - "smithy.api#documentation": "

Displays the tags associated with a CloudWatch Logs resource. Currently, log groups \n and destinations support tagging.

" + "smithy.api#documentation": "

Displays the tags associated with a CloudWatch Logs resource. Currently, log groups and\n destinations support tagging.

" } }, "com.amazonaws.cloudwatchlogs#ListTagsForResourceRequest": { @@ -6265,7 +6588,7 @@ "resourceArn": { "target": "com.amazonaws.cloudwatchlogs#AmazonResourceName", "traits": { - "smithy.api#documentation": "

The ARN of the resource that you want to view tags for.

\n

The ARN format of a log group is \n arn:aws:logs:Region:account-id:log-group:log-group-name\n \n

\n

The ARN format of a destination is \n arn:aws:logs:Region:account-id:destination:destination-name\n \n

\n

For more information about ARN format, see CloudWatch Logs \n resources and operations.

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

The ARN of the resource that you want to view tags for.

\n

The ARN format of a log group is\n arn:aws:logs:Region:account-id:log-group:log-group-name\n \n

\n

The ARN format of a destination is\n arn:aws:logs:Region:account-id:destination:destination-name\n \n

\n

For more information about ARN format, see CloudWatch Logs\n resources and operations.

", "smithy.api#required": {} } } @@ -6308,7 +6631,7 @@ "smithy.api#deprecated": { "message": "Please use the generic tagging API ListTagsForResource" }, - "smithy.api#documentation": "\n

The ListTagsLogGroup operation is on the path to deprecation. We recommend that you use \n ListTagsForResource instead.

\n
\n

Lists the tags for the specified log group.

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

The ListTagsLogGroup operation is on the path to deprecation. We recommend that you use\n ListTagsForResource instead.

\n
\n

Lists the tags for the specified log group.

" } }, "com.amazonaws.cloudwatchlogs#ListTagsLogGroupRequest": { @@ -6352,7 +6675,7 @@ "source": { "target": "com.amazonaws.cloudwatchlogs#Source", "traits": { - "smithy.api#documentation": "

The key in the log event that has a list of objects that will be converted to a map.

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

The key in the log event that has a list of objects that will be converted to a\n map.

", "smithy.api#required": {} } }, @@ -6366,7 +6689,7 @@ "valueKey": { "target": "com.amazonaws.cloudwatchlogs#ValueKey", "traits": { - "smithy.api#documentation": "

If this is specified, the values that you specify in this parameter will be extracted from the source objects and put into the values of the generated map.\n Otherwise, original objects in the source list will be put into the values of the generated map.

" + "smithy.api#documentation": "

If this is specified, the values that you specify in this parameter will be extracted from\n the source objects and put into the values of the generated map. Otherwise,\n original objects in the source list will be put into the values of the generated map.

" } }, "target": { @@ -6379,18 +6702,18 @@ "target": "com.amazonaws.cloudwatchlogs#Flatten", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

A Boolean value to indicate whether the list will be flattened into single items. Specify true to flatten the list. The default is false\n

" + "smithy.api#documentation": "

A Boolean value to indicate whether the list will be flattened into single items. Specify\n true to flatten the list. The default is false\n

" } }, "flattenedElement": { "target": "com.amazonaws.cloudwatchlogs#FlattenedElement", "traits": { - "smithy.api#documentation": "

If you set flatten to true, use flattenedElement to specify which element, first or last, to keep.

\n

You must specify this parameter if flatten is true\n

" + "smithy.api#documentation": "

If you set flatten to true, use flattenedElement to\n specify which element, first or last, to keep.

\n

You must specify this parameter if flatten is true\n

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

This processor takes a list of objects that contain key fields, and converts them into a map of target keys.

\n

For more information about this processor including examples, see \n listToMap in the CloudWatch Logs User Guide.

" + "smithy.api#documentation": "

This processor takes a list of objects that contain key fields, and converts them into a\n map of target keys.

\n

For more information about this processor including examples, see listToMap in the CloudWatch Logs User Guide.

" } }, "com.amazonaws.cloudwatchlogs#LiveTailSessionLogEvent": { @@ -6428,7 +6751,7 @@ } }, "traits": { - "smithy.api#documentation": "

This object contains the information for one log event returned in a Live Tail stream.

" + "smithy.api#documentation": "

This object contains the information for one log event returned in a Live Tail\n stream.

" } }, "com.amazonaws.cloudwatchlogs#LiveTailSessionMetadata": { @@ -6438,12 +6761,12 @@ "target": "com.amazonaws.cloudwatchlogs#IsSampled", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

If this is true, then more than 500 log events matched the request for this update, and the \n sessionResults includes a sample of 500 of those events.

\n

If this is false, then 500 or fewer log events matched the request for this update, so no sampling\n was necessary. In this case, the \n sessionResults array includes all log events that matched your request during this time.

" + "smithy.api#documentation": "

If this is true, then more than 500 log events matched the request for this\n update, and the sessionResults includes a sample of 500 of those events.

\n

If this is false, then 500 or fewer log events matched the request for this\n update, so no sampling was necessary. In this case, the sessionResults array\n includes all log events that matched your request during this time.

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

This object contains the metadata for one LiveTailSessionUpdate structure. It indicates whether\n that update includes only a sample of 500 log events out of a larger number of ingested log events, or if it contains\n all of the matching log events ingested during that second of time.

" + "smithy.api#documentation": "

This object contains the metadata for one LiveTailSessionUpdate structure. It\n indicates whether that update includes only a sample of 500 log events out of a larger number\n of ingested log events, or if it contains all of the matching log events ingested during that\n second of time.

" } }, "com.amazonaws.cloudwatchlogs#LiveTailSessionResults": { @@ -6458,7 +6781,7 @@ "requestId": { "target": "com.amazonaws.cloudwatchlogs#RequestId", "traits": { - "smithy.api#documentation": "

The unique ID generated by CloudWatch Logs to identify this Live Tail session request.

" + "smithy.api#documentation": "

The unique ID generated by CloudWatch Logs to identify this Live Tail session\n request.

" } }, "sessionId": { @@ -6470,30 +6793,30 @@ "logGroupIdentifiers": { "target": "com.amazonaws.cloudwatchlogs#StartLiveTailLogGroupIdentifiers", "traits": { - "smithy.api#documentation": "

An array of the names and ARNs of the log groups included in this Live Tail session.

" + "smithy.api#documentation": "

An array of the names and ARNs of the log groups included in this Live Tail\n session.

" } }, "logStreamNames": { "target": "com.amazonaws.cloudwatchlogs#InputLogStreamNames", "traits": { - "smithy.api#documentation": "

If your StartLiveTail operation request included a logStreamNames parameter that filtered the session\n to only include certain log streams, these streams are listed here.

" + "smithy.api#documentation": "

If your StartLiveTail operation request included a logStreamNames parameter\n that filtered the session to only include certain log streams, these streams are listed\n here.

" } }, "logStreamNamePrefixes": { "target": "com.amazonaws.cloudwatchlogs#InputLogStreamNames", "traits": { - "smithy.api#documentation": "

If your StartLiveTail operation request included a logStreamNamePrefixes parameter that filtered the session\n to only include log streams that have names that start with certain prefixes, these prefixes are listed here.

" + "smithy.api#documentation": "

If your StartLiveTail operation request included a logStreamNamePrefixes\n parameter that filtered the session to only include log streams that have names that start\n with certain prefixes, these prefixes are listed here.

" } }, "logEventFilterPattern": { "target": "com.amazonaws.cloudwatchlogs#FilterPattern", "traits": { - "smithy.api#documentation": "

An optional pattern to filter the results to include only log events that match the pattern.\n For example, a filter pattern of error 404 displays only log events that include both error \n and 404.

\n

For more information about filter pattern syntax, see Filter and Pattern Syntax.

" + "smithy.api#documentation": "

An optional pattern to filter the results to include only log events that match the\n pattern. For example, a filter pattern of error 404 displays only log events that\n include both error and 404.

\n

For more information about filter pattern syntax, see Filter and Pattern\n Syntax.

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

This object contains information about this Live Tail session, including the log groups included and the \n log stream filters, if any.

" + "smithy.api#documentation": "

This object contains information about this Live Tail session, including the log groups\n included and the log stream filters, if any.

" } }, "com.amazonaws.cloudwatchlogs#LiveTailSessionUpdate": { @@ -6508,7 +6831,7 @@ "sessionResults": { "target": "com.amazonaws.cloudwatchlogs#LiveTailSessionResults", "traits": { - "smithy.api#documentation": "

An array, where each member of the array includes the information for one log event in the Live Tail session.

\n

A sessionResults array can include as many as 500 log events. If the number of \n log events matching the request exceeds 500 per second, the\n log events are sampled down to 500 log events to be included in each sessionUpdate structure.

" + "smithy.api#documentation": "

An array, where each member of the array includes the information for one log event in the\n Live Tail session.

\n

A sessionResults array can include as many as 500 log events. If the number\n of log events matching the request exceeds 500 per second, the log events are sampled down to\n 500 log events to be included in each sessionUpdate structure.

" } } }, @@ -6541,7 +6864,7 @@ } }, "traits": { - "smithy.api#documentation": "

This structure contains the information for one sample log event that is associated \n with an anomaly found by a log anomaly detector.

" + "smithy.api#documentation": "

This structure contains the information for one sample log event that is associated with\n an anomaly found by a log anomaly detector.

" } }, "com.amazonaws.cloudwatchlogs#LogEventIndex": { @@ -6574,7 +6897,7 @@ "arn": { "target": "com.amazonaws.cloudwatchlogs#Arn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the log group. This version of the ARN includes a trailing :* after the log group name.

\n

Use this version to refer to the ARN in IAM policies when specifying permissions for most API actions. The exception is when specifying permissions for TagResource, UntagResource, and \n ListTagsForResource. \n The permissions for those three actions require the ARN version that doesn't include a trailing :*.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the log group. This version of the ARN includes a\n trailing :* after the log group name.

\n

Use this version to refer to the ARN in IAM policies when specifying\n permissions for most API actions. The exception is when specifying permissions for TagResource, UntagResource,\n and ListTagsForResource. The permissions for those three actions require the ARN\n version that doesn't include a trailing :*.

" } }, "storedBytes": { @@ -6592,25 +6915,25 @@ "dataProtectionStatus": { "target": "com.amazonaws.cloudwatchlogs#DataProtectionStatus", "traits": { - "smithy.api#documentation": "

Displays whether this log group has a protection policy, or whether it had one in the past. For more information, see \n PutDataProtectionPolicy.

" + "smithy.api#documentation": "

Displays whether this log group has a protection policy, or whether it had one in the\n past. For more information, see PutDataProtectionPolicy.

" } }, "inheritedProperties": { "target": "com.amazonaws.cloudwatchlogs#InheritedProperties", "traits": { - "smithy.api#documentation": "

Displays all the properties that this log group has inherited from account-level \n settings.

" + "smithy.api#documentation": "

Displays all the properties that this log group has inherited from account-level\n settings.

" } }, "logGroupClass": { "target": "com.amazonaws.cloudwatchlogs#LogGroupClass", "traits": { - "smithy.api#documentation": "

This specifies the log group class for this log group. There are two classes:

\n \n

For details about the features supported by each class, see \n Log classes\n

" + "smithy.api#documentation": "

This specifies the log group class for this log group. There are three classes:

\n \n

For details about the features supported by the Standard and Infrequent Access classes,\n see Log classes\n

" } }, "logGroupArn": { "target": "com.amazonaws.cloudwatchlogs#Arn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the log group. This version of the ARN doesn't include a trailing :* after the log group name.

\n

Use this version to refer to the ARN in the following situations:

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

The Amazon Resource Name (ARN) of the log group. This version of the ARN doesn't\n include a trailing :* after the log group name.

\n

Use this version to refer to the ARN in the following situations:

\n " } } }, @@ -6648,6 +6971,12 @@ "traits": { "smithy.api#enumValue": "INFREQUENT_ACCESS" } + }, + "DELIVERY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELIVERY" + } } } }, @@ -6714,18 +7043,69 @@ "smithy.api#pattern": "^[\\.\\-_/#A-Za-z0-9]*$" } }, + "com.amazonaws.cloudwatchlogs#LogGroupNameRegexPattern": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 3, + "max": 129 + }, + "smithy.api#pattern": "^(\\^?[\\.\\-_\\/#A-Za-z0-9]{3,24})(\\|\\^?[\\.\\-_\\/#A-Za-z0-9]{3,24}){0,4}$" + } + }, "com.amazonaws.cloudwatchlogs#LogGroupNames": { "type": "list", "member": { "target": "com.amazonaws.cloudwatchlogs#LogGroupName" } }, + "com.amazonaws.cloudwatchlogs#LogGroupSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.cloudwatchlogs#LogGroupSummary" + } + }, + "com.amazonaws.cloudwatchlogs#LogGroupSummary": { + "type": "structure", + "members": { + "logGroupName": { + "target": "com.amazonaws.cloudwatchlogs#LogGroupName", + "traits": { + "smithy.api#documentation": "

The name of the log group.

" + } + }, + "logGroupArn": { + "target": "com.amazonaws.cloudwatchlogs#Arn", + "traits": { + "smithy.api#documentation": "

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

" + } + }, + "logGroupClass": { + "target": "com.amazonaws.cloudwatchlogs#LogGroupClass", + "traits": { + "smithy.api#documentation": "

The log group class for this log group. For details about the features supported by each\n log group class, see Log classes\n

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

This structure contains information about one log group in your account.

" + } + }, "com.amazonaws.cloudwatchlogs#LogGroups": { "type": "list", "member": { "target": "com.amazonaws.cloudwatchlogs#LogGroup" } }, + "com.amazonaws.cloudwatchlogs#LogObjectPointer": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 512 + } + } + }, "com.amazonaws.cloudwatchlogs#LogRecord": { "type": "map", "key": { @@ -6774,13 +7154,13 @@ "lastIngestionTime": { "target": "com.amazonaws.cloudwatchlogs#Timestamp", "traits": { - "smithy.api#documentation": "

The ingestion time, expressed as the number of milliseconds after Jan 1, 1970\n 00:00:00 UTC The lastIngestionTime value updates on an eventual consistency basis. It \n typically updates in less than an hour after ingestion, but in rare situations might take longer.

" + "smithy.api#documentation": "

The ingestion time, expressed as the number of milliseconds after Jan 1, 1970\n 00:00:00 UTC The lastIngestionTime value updates on an eventual\n consistency basis. It typically updates in less than an hour after ingestion, but in rare\n situations might take longer.

" } }, "uploadSequenceToken": { "target": "com.amazonaws.cloudwatchlogs#SequenceToken", "traits": { - "smithy.api#documentation": "

The sequence token.

\n \n

The sequence token is now ignored in \n PutLogEvents\n actions. PutLogEvents actions are always accepted regardless of receiving an invalid sequence token. \n You don't need to obtain uploadSequenceToken to use a PutLogEvents action.

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

The sequence token.

\n \n

The sequence token is now ignored in PutLogEvents actions.\n PutLogEvents actions are always accepted regardless of receiving an invalid\n sequence token. You don't need to obtain uploadSequenceToken to use a\n PutLogEvents action.

\n
" } }, "arn": { @@ -6800,7 +7180,7 @@ } }, "traits": { - "smithy.api#documentation": "

Represents a log stream, which is a sequence of log events from \n a single emitter of logs.

" + "smithy.api#documentation": "

Represents a log stream, which is a sequence of log events from a single emitter of\n logs.

" } }, "com.amazonaws.cloudwatchlogs#LogStreamName": { @@ -7004,6 +7384,9 @@ { "target": "com.amazonaws.cloudwatchlogs#GetLogGroupFields" }, + { + "target": "com.amazonaws.cloudwatchlogs#GetLogObject" + }, { "target": "com.amazonaws.cloudwatchlogs#GetLogRecord" }, @@ -7022,6 +7405,9 @@ { "target": "com.amazonaws.cloudwatchlogs#ListLogAnomalyDetectors" }, + { + "target": "com.amazonaws.cloudwatchlogs#ListLogGroups" + }, { "target": "com.amazonaws.cloudwatchlogs#ListLogGroupsForQuery" }, @@ -7129,7 +7515,7 @@ "name": "logs" }, "aws.protocols#awsJson1_1": {}, - "smithy.api#documentation": "

You can use Amazon CloudWatch Logs to monitor, store, and access your log files from\n EC2 instances, CloudTrail, and other sources. You can then retrieve the associated\n log data from CloudWatch Logs using the CloudWatch console. Alternatively, you can use\n CloudWatch Logs commands in the Amazon Web Services CLI, CloudWatch Logs API, or CloudWatch\n Logs SDK.

\n

You can use CloudWatch Logs to:

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

You can use Amazon CloudWatch Logs to monitor, store, and access your log files from\n EC2 instances, CloudTrail, and other sources. You can then retrieve the associated\n log data from CloudWatch Logs using the CloudWatch console. Alternatively, you can use\n CloudWatch Logs commands in the Amazon Web Services CLI, CloudWatch Logs API, or CloudWatch\n Logs SDK.

\n

You can use CloudWatch Logs to:

\n ", "smithy.api#title": "Amazon CloudWatch Logs", "smithy.api#xmlNamespace": { "uri": "http://monitoring.amazonaws.com/doc/2014-03-28/" @@ -8021,17 +8407,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -8045,17 +8420,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -8069,17 +8433,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -8093,17 +8446,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { @@ -8178,7 +8520,7 @@ } }, "traits": { - "smithy.api#documentation": "

This processor converts a string to lowercase.

\n

For more information about this processor including examples, see \n lowerCaseString in the CloudWatch Logs User Guide.

" + "smithy.api#documentation": "

This processor converts a string to lowercase.

\n

For more information about this processor including examples, see lowerCaseString in the CloudWatch Logs User Guide.

" } }, "com.amazonaws.cloudwatchlogs#LowerCaseStringWithKeys": { @@ -8204,7 +8546,7 @@ } }, "traits": { - "smithy.api#documentation": "

The query string is not valid. Details about this error are displayed in a \n QueryCompileError object. For more information, see \n QueryCompileError.

\n

For more information about valid query syntax, see\n CloudWatch Logs Insights Query Syntax.

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

The query string is not valid. Details about this error are displayed in a\n QueryCompileError object. For more information, see QueryCompileError.

\n

For more information about valid query syntax, see CloudWatch Logs Insights Query\n Syntax.

", "smithy.api#error": "client" } }, @@ -8265,12 +8607,24 @@ "target": "com.amazonaws.cloudwatchlogs#ApplyOnTransformedLogs", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

This parameter is valid only for log groups that have an active log transformer. For more information about\n log transformers, see PutTransformer.

\n

If this value is true, the metric filter\n is applied on the transformed version of the log events instead of the original ingested log events.

" + "smithy.api#documentation": "

This parameter is valid only for log groups that have an active log transformer. For more\n information about log transformers, see PutTransformer.

\n

If this value is true, the metric filter is applied on the transformed\n version of the log events instead of the original ingested log events.

" + } + }, + "fieldSelectionCriteria": { + "target": "com.amazonaws.cloudwatchlogs#FieldSelectionCriteria", + "traits": { + "smithy.api#documentation": "

The filter expression that specifies which log events are processed by this metric filter based on system fields. Returns the fieldSelectionCriteria value if it was specified when the metric filter was created.

" + } + }, + "emitSystemFieldDimensions": { + "target": "com.amazonaws.cloudwatchlogs#EmitSystemFields", + "traits": { + "smithy.api#documentation": "

The list of system fields that are emitted as additional dimensions in the generated metrics. Returns the emitSystemFieldDimensions value if it was specified when the metric filter was created.

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

Metric filters express how CloudWatch Logs would extract metric observations \n from ingested log events and transform them into metric data in a CloudWatch metric.

" + "smithy.api#documentation": "

Metric filters express how CloudWatch Logs would extract metric observations from\n ingested log events and transform them into metric data in a CloudWatch metric.

" } }, "com.amazonaws.cloudwatchlogs#MetricFilterMatchRecord": { @@ -8346,33 +8700,33 @@ "metricNamespace": { "target": "com.amazonaws.cloudwatchlogs#MetricNamespace", "traits": { - "smithy.api#documentation": "

A custom namespace to contain your metric in CloudWatch. Use namespaces to group together metrics\n that are similar. For more information, see Namespaces.

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

A custom namespace to contain your metric in CloudWatch. Use namespaces to group\n together metrics that are similar. For more information, see Namespaces.

", "smithy.api#required": {} } }, "metricValue": { "target": "com.amazonaws.cloudwatchlogs#MetricValue", "traits": { - "smithy.api#documentation": "

The value to publish to the CloudWatch metric when a filter pattern matches a log event.

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

The value to publish to the CloudWatch metric when a filter pattern matches a log\n event.

", "smithy.api#required": {} } }, "defaultValue": { "target": "com.amazonaws.cloudwatchlogs#DefaultValue", "traits": { - "smithy.api#documentation": "

(Optional) The value to emit when a filter pattern does not match a log event. \n This value can be null.

" + "smithy.api#documentation": "

(Optional) The value to emit when a filter pattern does not match a log event. This\n value can be null.

" } }, "dimensions": { "target": "com.amazonaws.cloudwatchlogs#Dimensions", "traits": { - "smithy.api#documentation": "

The fields to use as dimensions for the metric. One metric filter can include\n as many as three dimensions.

\n \n

Metrics extracted from log events are charged as custom metrics.\n To prevent unexpected high charges, do not specify high-cardinality fields such as \n IPAddress or requestID as dimensions. Each different value \n found for \n a dimension is treated as a separate metric and accrues charges as a separate custom metric.\n

\n

CloudWatch Logs disables a metric filter if it generates 1000 different name/value pairs for your\n specified dimensions within a certain amount of time. This helps to prevent accidental high\n charges.

\n

You can also set up a billing alarm to alert you if your charges are higher than \n expected. For more information, \n see \n Creating a Billing Alarm to Monitor Your Estimated Amazon Web Services Charges.\n

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

The fields to use as dimensions for the metric. One metric filter can include as many as\n three dimensions.

\n \n

Metrics extracted from log events are charged as custom metrics. To prevent unexpected\n high charges, do not specify high-cardinality fields such as IPAddress or\n requestID as dimensions. Each different value found for a dimension is\n treated as a separate metric and accrues charges as a separate custom metric.

\n

CloudWatch Logs disables a metric filter if it generates 1000 different name/value\n pairs for your specified dimensions within a certain amount of time. This helps to prevent\n accidental high charges.

\n

You can also set up a billing alarm to alert you if your charges are higher than\n expected. For more information, see \n Creating a Billing Alarm to Monitor Your Estimated Amazon Web Services Charges.\n

\n
" } }, "unit": { "target": "com.amazonaws.cloudwatchlogs#StandardUnit", "traits": { - "smithy.api#documentation": "

The unit to assign to the metric. If you omit this, the unit is set as None.

" + "smithy.api#documentation": "

The unit to assign to the metric. If you omit this, the unit is set as\n None.

" } } }, @@ -8435,12 +8789,12 @@ "target": "com.amazonaws.cloudwatchlogs#OverwriteIfExists", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Specifies whether to overwrite the value if the destination key already exists. If you omit this, the default is false.

" + "smithy.api#documentation": "

Specifies whether to overwrite the value if the destination key already exists. If you\n omit this, the default is false.

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

This object defines one key that will be moved with the \n moveKey processor.

" + "smithy.api#documentation": "

This object defines one key that will be moved with the moveKey processor.

" } }, "com.amazonaws.cloudwatchlogs#MoveKeys": { @@ -8449,19 +8803,19 @@ "entries": { "target": "com.amazonaws.cloudwatchlogs#MoveKeyEntries", "traits": { - "smithy.api#documentation": "

An array of objects, where each object contains the information about one key to move.

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

An array of objects, where each object contains the information about one key to move.\n

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

This processor moves a key from one field to another. The original key is deleted.

\n

For more information about this processor including examples, see \n moveKeys in the CloudWatch Logs User Guide.

" + "smithy.api#documentation": "

This processor moves a key from one field to another. The original key is deleted.

\n

For more information about this processor including examples, see moveKeys in the CloudWatch Logs User Guide.

" } }, "com.amazonaws.cloudwatchlogs#NextToken": { "type": "string", "traits": { - "smithy.api#documentation": "

The token for the next set of items to return. The token expires after 24 hours.

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

The token for the next set of items to return. The token expires after 24\n hours.

", "smithy.api#length": { "min": 1 } @@ -8476,6 +8830,17 @@ } } }, + "com.amazonaws.cloudwatchlogs#OCSFVersion": { + "type": "enum", + "members": { + "V1_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "V1.1" + } + } + } + }, "com.amazonaws.cloudwatchlogs#OpenSearchApplication": { "type": "structure", "members": { @@ -8500,12 +8865,12 @@ "status": { "target": "com.amazonaws.cloudwatchlogs#OpenSearchResourceStatus", "traits": { - "smithy.api#documentation": "

This structure contains information about the status of this OpenSearch Service resource.

" + "smithy.api#documentation": "

This structure contains information about the status of this OpenSearch Service\n resource.

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

This structure contains information about the OpenSearch Service application used for this integration.\n An OpenSearch Service application is the web application created by the integration with CloudWatch Logs. It hosts the vended logs dashboards.

" + "smithy.api#documentation": "

This structure contains information about the OpenSearch Service application used for this\n integration. An OpenSearch Service application is the web application created by the\n integration with CloudWatch Logs. It hosts the vended logs dashboards.

" } }, "com.amazonaws.cloudwatchlogs#OpenSearchApplicationEndpoint": { @@ -8546,12 +8911,12 @@ "status": { "target": "com.amazonaws.cloudwatchlogs#OpenSearchResourceStatus", "traits": { - "smithy.api#documentation": "

This structure contains information about the status of this OpenSearch Service resource.

" + "smithy.api#documentation": "

This structure contains information about the status of this OpenSearch Service\n resource.

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

This structure contains information about the OpenSearch Service collection used for this integration.\n An OpenSearch Service collection is a logical grouping of one or more indexes that represent an analytics workload. \n For more information, see Creating and managing OpenSearch Service Serverless collections.

" + "smithy.api#documentation": "

This structure contains information about the OpenSearch Service collection used for this\n integration. An OpenSearch Service collection is a logical grouping of one or more indexes\n that represent an analytics workload. For more information, see Creating and\n managing OpenSearch Service Serverless collections.

" } }, "com.amazonaws.cloudwatchlogs#OpenSearchCollectionEndpoint": { @@ -8576,12 +8941,12 @@ "status": { "target": "com.amazonaws.cloudwatchlogs#OpenSearchResourceStatus", "traits": { - "smithy.api#documentation": "

This structure contains information about the status of this OpenSearch Service resource.

" + "smithy.api#documentation": "

This structure contains information about the status of this OpenSearch Service\n resource.

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

This structure contains information about the OpenSearch Service data access policy used for this integration. The access \n policy defines the access controls for the collection. This data access policy was automatically created as part of the integration setup.\n For more information about OpenSearch Service data access policies, see Data access control for Amazon OpenSearch Serverless in the OpenSearch Service Developer Guide.

" + "smithy.api#documentation": "

This structure contains information about the OpenSearch Service data access policy used\n for this integration. The access policy defines the access controls for the collection. This\n data access policy was automatically created as part of the integration setup. For more\n information about OpenSearch Service data access policies, see Data access\n control for Amazon OpenSearch Serverless in the OpenSearch Service Developer\n Guide.

" } }, "com.amazonaws.cloudwatchlogs#OpenSearchDataSource": { @@ -8596,12 +8961,12 @@ "status": { "target": "com.amazonaws.cloudwatchlogs#OpenSearchResourceStatus", "traits": { - "smithy.api#documentation": "

This structure contains information about the status of this OpenSearch Service resource.

" + "smithy.api#documentation": "

This structure contains information about the status of this OpenSearch Service\n resource.

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

This structure contains information about the OpenSearch Service data source used for this integration. This data source was \n created as part of the integration setup.\n An OpenSearch Service data source defines the source and destination for OpenSearch Service queries. It includes the role required to execute queries and write to collections.

\n

For more information about OpenSearch Service data sources , see Creating OpenSearch Service data source integrations with Amazon S3.\n

" + "smithy.api#documentation": "

This structure contains information about the OpenSearch Service data source used for this\n integration. This data source was created as part of the integration setup. An OpenSearch Service data source defines the source and destination for OpenSearch Service queries. It\n includes the role required to execute queries and write to collections.

\n

For more information about OpenSearch Service data sources , see Creating\n OpenSearch Service data source integrations with Amazon S3.\n

" } }, "com.amazonaws.cloudwatchlogs#OpenSearchDataSourceName": { @@ -8626,12 +8991,12 @@ "status": { "target": "com.amazonaws.cloudwatchlogs#OpenSearchResourceStatus", "traits": { - "smithy.api#documentation": "

This structure contains information about the status of this OpenSearch Service resource.

" + "smithy.api#documentation": "

This structure contains information about the status of this OpenSearch Service\n resource.

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

This structure contains information about the OpenSearch Service encryption policy used for this integration. The encryption policy was created\n automatically when you created the integration. For more information, see Encryption policies in the OpenSearch Service Developer Guide.\n

" + "smithy.api#documentation": "

This structure contains information about the OpenSearch Service encryption policy used\n for this integration. The encryption policy was created automatically when you created the\n integration. For more information, see Encryption policies in the OpenSearch Service Developer Guide.

" } }, "com.amazonaws.cloudwatchlogs#OpenSearchIntegrationDetails": { @@ -8640,54 +9005,54 @@ "dataSource": { "target": "com.amazonaws.cloudwatchlogs#OpenSearchDataSource", "traits": { - "smithy.api#documentation": "

This structure contains information about the OpenSearch Service data source used for this integration. This data source was \n created as part of the integration setup.\n An OpenSearch Service data source defines the source and destination for OpenSearch Service queries. It includes the role required to execute queries and write to collections.

\n

For more information about OpenSearch Service data sources , see Creating OpenSearch Service data source integrations with Amazon S3.\n

" + "smithy.api#documentation": "

This structure contains information about the OpenSearch Service data source used for this\n integration. This data source was created as part of the integration setup. An OpenSearch Service data source defines the source and destination for OpenSearch Service queries. It\n includes the role required to execute queries and write to collections.

\n

For more information about OpenSearch Service data sources , see Creating\n OpenSearch Service data source integrations with Amazon S3.\n

" } }, "application": { "target": "com.amazonaws.cloudwatchlogs#OpenSearchApplication", "traits": { - "smithy.api#documentation": "

This structure contains information about the OpenSearch Service application used for this integration.\n An OpenSearch Service application is the web application that was created by the integration with CloudWatch Logs. It hosts the vended logs dashboards.

" + "smithy.api#documentation": "

This structure contains information about the OpenSearch Service application used for this\n integration. An OpenSearch Service application is the web application that was created by the\n integration with CloudWatch Logs. It hosts the vended logs dashboards.

" } }, "collection": { "target": "com.amazonaws.cloudwatchlogs#OpenSearchCollection", "traits": { - "smithy.api#documentation": "

This structure contains information about the OpenSearch Service collection used for this integration. This collection was \n created as part of the integration setup.\n An OpenSearch Service collection is a logical grouping of one or more indexes that represent an analytics workload. \n For more information, see Creating and managing OpenSearch Service Serverless collections.

" + "smithy.api#documentation": "

This structure contains information about the OpenSearch Service collection used for this\n integration. This collection was created as part of the integration setup. An OpenSearch Service collection is a logical grouping of one or more indexes that represent an analytics\n workload. For more information, see Creating and\n managing OpenSearch Service Serverless collections.

" } }, "workspace": { "target": "com.amazonaws.cloudwatchlogs#OpenSearchWorkspace", "traits": { - "smithy.api#documentation": "

This structure contains information about the OpenSearch Service workspace used for this integration.\n An OpenSearch Service workspace is the collection of dashboards along with other OpenSearch Service tools. This workspace was created automatically as part of the integration setup.\n For more information, see Centralized OpenSearch user interface (Dashboards) with \n OpenSearch Service.

" + "smithy.api#documentation": "

This structure contains information about the OpenSearch Service workspace used for this\n integration. An OpenSearch Service workspace is the collection of dashboards along with other\n OpenSearch Service tools. This workspace was created automatically as part of the\n integration setup. For more information, see Centralized OpenSearch user\n interface (Dashboards) with OpenSearch Service.

" } }, "encryptionPolicy": { "target": "com.amazonaws.cloudwatchlogs#OpenSearchEncryptionPolicy", "traits": { - "smithy.api#documentation": "

This structure contains information about the OpenSearch Service encryption policy used for this integration. The encryption policy was created\n automatically when you created the integration. For more information, see Encryption policies in the OpenSearch Service Developer Guide.\n

" + "smithy.api#documentation": "

This structure contains information about the OpenSearch Service encryption policy used\n for this integration. The encryption policy was created automatically when you created the\n integration. For more information, see Encryption policies in the OpenSearch Service Developer Guide.

" } }, "networkPolicy": { "target": "com.amazonaws.cloudwatchlogs#OpenSearchNetworkPolicy", "traits": { - "smithy.api#documentation": "

This structure contains information about the OpenSearch Service network policy used for this integration. The network \n policy assigns network access settings to collections. \n For more information, see Network policies in the OpenSearch Service Developer Guide.

" + "smithy.api#documentation": "

This structure contains information about the OpenSearch Service network policy used for\n this integration. The network policy assigns network access settings to collections. For more\n information, see Network policies in the OpenSearch Service Developer Guide.

" } }, "accessPolicy": { "target": "com.amazonaws.cloudwatchlogs#OpenSearchDataAccessPolicy", "traits": { - "smithy.api#documentation": "

This structure contains information about the OpenSearch Service data access policy used for this integration. The access \n policy defines the access controls for the collection. This data access policy was automatically created as part of the integration setup.\n For more information about OpenSearch Service data access policies, see Data access control for Amazon OpenSearch Serverless in the OpenSearch Service Developer Guide.

" + "smithy.api#documentation": "

This structure contains information about the OpenSearch Service data access policy used\n for this integration. The access policy defines the access controls for the collection. This\n data access policy was automatically created as part of the integration setup. For more\n information about OpenSearch Service data access policies, see Data access\n control for Amazon OpenSearch Serverless in the OpenSearch Service Developer\n Guide.

" } }, "lifecyclePolicy": { "target": "com.amazonaws.cloudwatchlogs#OpenSearchLifecyclePolicy", "traits": { - "smithy.api#documentation": "

This structure contains information about the OpenSearch Service data lifecycle policy used for this integration. The lifecycle policy\n determines the lifespan of the data in the collection. It was automatically created as part of the integration setup.

\n

For more information, see Using data lifecycle policies with OpenSearch Service Serverless \n in the OpenSearch Service Developer Guide.

" + "smithy.api#documentation": "

This structure contains information about the OpenSearch Service data lifecycle policy\n used for this integration. The lifecycle policy determines the lifespan of the data in the\n collection. It was automatically created as part of the integration setup.

\n

For more information, see Using data\n lifecycle policies with OpenSearch Service Serverless in the OpenSearch Service\n Developer Guide.

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

This structure contains complete information about one CloudWatch Logs integration. This structure\n is returned by a GetIntegration operation.

" + "smithy.api#documentation": "

This structure contains complete information about one CloudWatch Logs integration.\n This structure is returned by a GetIntegration operation.

" } }, "com.amazonaws.cloudwatchlogs#OpenSearchLifecyclePolicy": { @@ -8702,12 +9067,12 @@ "status": { "target": "com.amazonaws.cloudwatchlogs#OpenSearchResourceStatus", "traits": { - "smithy.api#documentation": "

This structure contains information about the status of this OpenSearch Service resource.

" + "smithy.api#documentation": "

This structure contains information about the status of this OpenSearch Service\n resource.

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

This structure contains information about the OpenSearch Service data lifecycle policy used for this integration. The lifecycle policy\n determines the lifespan of the data in the collection. It was automatically created as part of the integration setup.

\n

For more information, see Using data lifecycle policies with OpenSearch Service Serverless \n in the OpenSearch Service Developer Guide.

" + "smithy.api#documentation": "

This structure contains information about the OpenSearch Service data lifecycle policy\n used for this integration. The lifecycle policy determines the lifespan of the data in the\n collection. It was automatically created as part of the integration setup.

\n

For more information, see Using data\n lifecycle policies with OpenSearch Service Serverless in the OpenSearch Service\n Developer Guide.

" } }, "com.amazonaws.cloudwatchlogs#OpenSearchNetworkPolicy": { @@ -8722,12 +9087,12 @@ "status": { "target": "com.amazonaws.cloudwatchlogs#OpenSearchResourceStatus", "traits": { - "smithy.api#documentation": "

This structure contains information about the status of this OpenSearch Service resource.

" + "smithy.api#documentation": "

This structure contains information about the status of this OpenSearch Service\n resource.

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

This structure contains information about the OpenSearch Service network policy used for this integration. The network \n policy assigns network access settings to collections. \n For more information, see Network policies in the OpenSearch Service Developer Guide.

" + "smithy.api#documentation": "

This structure contains information about the OpenSearch Service network policy used for\n this integration. The network policy assigns network access settings to collections. For more\n information, see Network policies in the OpenSearch Service Developer Guide.

" } }, "com.amazonaws.cloudwatchlogs#OpenSearchPolicyName": { @@ -8746,33 +9111,33 @@ "kmsKeyArn": { "target": "com.amazonaws.cloudwatchlogs#Arn", "traits": { - "smithy.api#documentation": "

To have the vended dashboard data encrypted with KMS instead of the CloudWatch Logs default \n encryption method, specify the ARN of the KMS key that you want to use.

" + "smithy.api#documentation": "

To have the vended dashboard data encrypted with KMS instead of the CloudWatch Logs default encryption method, specify the ARN of the KMS key that you\n want to use.

" } }, "dataSourceRoleArn": { "target": "com.amazonaws.cloudwatchlogs#Arn", "traits": { - "smithy.api#documentation": "

Specify the ARN of an IAM role that CloudWatch Logs will use to create the integration. This role must have the permissions necessary to access the OpenSearch Service\n collection to be able to create the dashboards. For more information about the permissions needed, see Permissions that the integration needs in the CloudWatch Logs User Guide.

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

Specify the ARN of an IAM role that CloudWatch Logs will use to create\n the integration. This role must have the permissions necessary to access the OpenSearch Service collection to be able to create the dashboards. For more information about the permissions\n needed, see Permissions that\n the integration needs in the CloudWatch Logs User Guide.

", "smithy.api#required": {} } }, "dashboardViewerPrincipals": { "target": "com.amazonaws.cloudwatchlogs#DashboardViewerPrincipals", "traits": { - "smithy.api#documentation": "

Specify the ARNs of IAM roles and IAM users who you want to grant permission to for viewing the dashboards.

\n \n

In addition to specifying these users here, you must also grant them the CloudWatchOpenSearchDashboardAccess \n IAM policy. For more information, see IAM policies for users.

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

Specify the ARNs of IAM roles and IAM users who you want to\n grant permission to for viewing the dashboards.

\n \n

In addition to specifying these users here, you must also grant them the CloudWatchOpenSearchDashboardAccess\n IAM policy. For more information, see IAM policies for\n users.

\n
", "smithy.api#required": {} } }, "applicationArn": { "target": "com.amazonaws.cloudwatchlogs#Arn", "traits": { - "smithy.api#documentation": "

If you want to use an existing OpenSearch Service application for your integration with OpenSearch Service, specify it here. If you \n omit this, a new application will be created.

" + "smithy.api#documentation": "

If you want to use an existing OpenSearch Service application for your integration with\n OpenSearch Service, specify it here. If you omit this, a new application will be\n created.

" } }, "retentionDays": { "target": "com.amazonaws.cloudwatchlogs#CollectionRetentionDays", "traits": { - "smithy.api#documentation": "

Specify how many days that you want the data derived by OpenSearch Service to be retained in the index that the dashboard refers to. \n This also sets the maximum time period that you can choose when viewing data in the dashboard. Choosing a longer time frame will incur additional costs.

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

Specify how many days that you want the data derived by OpenSearch Service to be retained\n in the index that the dashboard refers to. This also sets the maximum time period that you can\n choose when viewing data in the dashboard. Choosing a longer time frame will incur additional\n costs.

", "smithy.api#required": {} } } @@ -8798,7 +9163,7 @@ } }, "traits": { - "smithy.api#documentation": "

This structure contains information about the status of an OpenSearch Service resource.

" + "smithy.api#documentation": "

This structure contains information about the status of an OpenSearch Service\n resource.

" } }, "com.amazonaws.cloudwatchlogs#OpenSearchResourceStatusType": { @@ -8836,12 +9201,12 @@ "status": { "target": "com.amazonaws.cloudwatchlogs#OpenSearchResourceStatus", "traits": { - "smithy.api#documentation": "

This structure contains information about the status of an OpenSearch Service resource.

" + "smithy.api#documentation": "

This structure contains information about the status of an OpenSearch Service\n resource.

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

This structure contains information about the OpenSearch Service workspace used for this integration.\n An OpenSearch Service workspace is the collection of dashboards along with other OpenSearch Service tools. This workspace was created automatically as part of the integration setup.\n For more information, see Centralized OpenSearch user interface (Dashboards) with \n OpenSearch Service.

" + "smithy.api#documentation": "

This structure contains information about the OpenSearch Service workspace used for this\n integration. An OpenSearch Service workspace is the collection of dashboards along with other\n OpenSearch Service tools. This workspace was created automatically as part of the\n integration setup. For more information, see Centralized OpenSearch user\n interface (Dashboards) with OpenSearch Service.

" } }, "com.amazonaws.cloudwatchlogs#OpenSearchWorkspaceId": { @@ -8968,12 +9333,12 @@ "source": { "target": "com.amazonaws.cloudwatchlogs#Source", "traits": { - "smithy.api#documentation": "

Omit this parameter and the whole log message will be processed by this processor. No other value than @message is allowed for source.

" + "smithy.api#documentation": "

Omit this parameter and the whole log message will be processed by this processor. No\n other value than @message is allowed for source.

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

This processor parses CloudFront vended logs, extract fields, and convert them into\n JSON format. Encoded field values are decoded. Values that are integers and doubles are treated as such.\n For more information about this processor including examples, see \n parseCloudfront\n

\n

For more information about CloudFront log format, see \n \n Configure and use standard logs (access logs).

\n

If you use this processor, it must be the first processor in your transformer.

" + "smithy.api#documentation": "

This processor parses CloudFront vended logs, extract fields, and convert them into\n JSON format. Encoded field values are decoded. Values that are integers and doubles are\n treated as such. For more information about this processor including examples, see parseCloudfront\n

\n

For more information about CloudFront log format, see Configure and use standard\n logs (access logs).

\n

If you use this processor, it must be the first processor in your transformer.

" } }, "com.amazonaws.cloudwatchlogs#ParseJSON": { @@ -8982,18 +9347,18 @@ "source": { "target": "com.amazonaws.cloudwatchlogs#Source", "traits": { - "smithy.api#documentation": "

Path to the field in the log event that will be parsed. Use dot notation to access child fields. For example, store.book\n

" + "smithy.api#documentation": "

Path to the field in the log event that will be parsed. Use dot notation to access child\n fields. For example, store.book\n

" } }, "destination": { "target": "com.amazonaws.cloudwatchlogs#DestinationField", "traits": { - "smithy.api#documentation": "

The location to put the parsed key value pair into. If you \n omit this parameter, it is placed under the root node.

" + "smithy.api#documentation": "

The location to put the parsed key value pair into. If you omit this parameter, it is\n placed under the root node.

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

This processor parses log events that are in JSON format. It can extract JSON key-value pairs and place them\n under a destination that you specify.

\n

Additionally, because you must have at least one parse-type processor in a transformer, you can use ParseJSON as that\n processor for JSON-format logs, so that you can also apply other processors, such as mutate processors, to these logs.

\n

For more information about this processor including examples, see \n parseJSON in the CloudWatch Logs User Guide.

" + "smithy.api#documentation": "

This processor parses log events that are in JSON format. It can extract JSON key-value\n pairs and place them under a destination that you specify.

\n

Additionally, because you must have at least one parse-type processor in a transformer,\n you can use ParseJSON as that processor for JSON-format logs, so that you can\n also apply other processors, such as mutate processors, to these logs.

\n

For more information about this processor including examples, see parseJSON in the CloudWatch Logs User Guide.

" } }, "com.amazonaws.cloudwatchlogs#ParseKeyValue": { @@ -9002,7 +9367,7 @@ "source": { "target": "com.amazonaws.cloudwatchlogs#Source", "traits": { - "smithy.api#documentation": "

Path to the field in the log event that will be parsed. Use dot notation to access child fields. For example, store.book\n

" + "smithy.api#documentation": "

Path to the field in the log event that will be parsed. Use dot notation to access child\n fields. For example, store.book\n

" } }, "destination": { @@ -9014,13 +9379,13 @@ "fieldDelimiter": { "target": "com.amazonaws.cloudwatchlogs#ParserFieldDelimiter", "traits": { - "smithy.api#documentation": "

The field delimiter string that is used between key-value pairs in the original log events.\n If you omit this, \n the ampersand & character is used.

" + "smithy.api#documentation": "

The field delimiter string that is used between key-value pairs in the original log\n events. If you omit this, the ampersand & character is used.

" } }, "keyValueDelimiter": { "target": "com.amazonaws.cloudwatchlogs#KeyValueDelimiter", "traits": { - "smithy.api#documentation": "

The delimiter string to use between the key and value in each pair in the transformed log event.

\n

If you omit this, \n the equal = character is used.

" + "smithy.api#documentation": "

The delimiter string to use between the key and value in each pair in the transformed log\n event.

\n

If you omit this, the equal = character is used.

" } }, "keyPrefix": { @@ -9032,19 +9397,19 @@ "nonMatchValue": { "target": "com.amazonaws.cloudwatchlogs#NonMatchValue", "traits": { - "smithy.api#documentation": "

A value to insert into the value field in the result, when a key-value pair is not successfully split.

" + "smithy.api#documentation": "

A value to insert into the value field in the result, when a key-value pair is not\n successfully split.

" } }, "overwriteIfExists": { "target": "com.amazonaws.cloudwatchlogs#OverwriteIfExists", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Specifies whether to overwrite the value if the destination key already exists. If you omit this, the default is false.

" + "smithy.api#documentation": "

Specifies whether to overwrite the value if the destination key already exists. If you\n omit this, the default is false.

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

This processor parses a specified field in the original log event into key-value pairs.

\n

For more information about this processor including examples, see \n parseKeyValue in the CloudWatch Logs User Guide.

" + "smithy.api#documentation": "

This processor parses a specified field in the original log event into key-value pairs.

\n

For more information about this processor including examples, see parseKeyValue in the CloudWatch Logs User Guide.

" } }, "com.amazonaws.cloudwatchlogs#ParsePostgres": { @@ -9053,12 +9418,12 @@ "source": { "target": "com.amazonaws.cloudwatchlogs#Source", "traits": { - "smithy.api#documentation": "

Omit this parameter and the whole log message will be processed by this processor. No other value than @message is allowed for source.

" + "smithy.api#documentation": "

Omit this parameter and the whole log message will be processed by this processor. No\n other value than @message is allowed for source.

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

Use this processor to parse RDS for PostgreSQL vended logs, extract fields, and and convert them into a JSON format. This processor always\n processes the entire log event message.\n For more information about this processor including examples, see \n parsePostGres.

\n

For more information about RDS for PostgreSQL log format, see \n \n RDS for PostgreSQL database log filesTCP flag sequence.

\n \n

If you use this processor, it must be the first processor in your transformer.

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

Use this processor to parse RDS for PostgreSQL vended logs, extract fields, and\n and convert them into a JSON format. This processor always processes the entire log event\n message. For more information about this processor including examples, see parsePostGres.

\n

For more information about RDS for PostgreSQL log format, see \n RDS for PostgreSQL database log filesTCP flag sequence.

\n \n

If you use this processor, it must be the first processor in your transformer.

\n
" } }, "com.amazonaws.cloudwatchlogs#ParseRoute53": { @@ -9067,12 +9432,40 @@ "source": { "target": "com.amazonaws.cloudwatchlogs#Source", "traits": { - "smithy.api#documentation": "

Omit this parameter and the whole log message will be processed by this processor. No other value than @message is allowed for source.

" + "smithy.api#documentation": "

Omit this parameter and the whole log message will be processed by this processor. No\n other value than @message is allowed for source.

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

Use this processor to parse Route 53 vended logs, extract fields, and and convert them into a JSON format. This processor always\n processes the entire log event message.\n For more information about this processor including examples, see \n parseRoute53.

\n \n

If you use this processor, it must be the first processor in your transformer.

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

Use this processor to parse Route 53 vended logs, extract fields, and and\n convert them into a JSON format. This processor always processes the entire log event message.\n For more information about this processor including examples, see parseRoute53.

\n \n

If you use this processor, it must be the first processor in your transformer.

\n
" + } + }, + "com.amazonaws.cloudwatchlogs#ParseToOCSF": { + "type": "structure", + "members": { + "source": { + "target": "com.amazonaws.cloudwatchlogs#Source", + "traits": { + "smithy.api#documentation": "

The path to the field in the log event that you want to parse. If you omit this value, the\n whole log message is parsed.

" + } + }, + "eventSource": { + "target": "com.amazonaws.cloudwatchlogs#EventSource", + "traits": { + "smithy.api#documentation": "

Specify the service or process that produces the log events that will be converted with\n this processor.

", + "smithy.api#required": {} + } + }, + "ocsfVersion": { + "target": "com.amazonaws.cloudwatchlogs#OCSFVersion", + "traits": { + "smithy.api#documentation": "

Specify which version of the OCSF schema to use for the transformed log events.

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

This processor converts logs into Open Cybersecurity Schema\n Framework (OCSF) events.

\n

For more information about this processor including examples, see parseToOSCF in the CloudWatch Logs User Guide.

" } }, "com.amazonaws.cloudwatchlogs#ParseVPC": { @@ -9081,12 +9474,12 @@ "source": { "target": "com.amazonaws.cloudwatchlogs#Source", "traits": { - "smithy.api#documentation": "

Omit this parameter and the whole log message will be processed by this processor. No other value than @message is allowed for source.

" + "smithy.api#documentation": "

Omit this parameter and the whole log message will be processed by this processor. No\n other value than @message is allowed for source.

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

Use this processor to parse Amazon VPC vended logs, extract fields, and and convert them into a JSON format. This processor always\n processes the entire log event message.

\n

This processor doesn't support custom log formats, such as NAT gateway logs. For more information about custom log formats in Amazon VPC, see\n \n parseVPC\n For more information about this processor including examples, see \n parseVPC.

\n \n

If you use this processor, it must be the first processor in your transformer.

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

Use this processor to parse Amazon VPC vended logs, extract fields, and and\n convert them into a JSON format. This processor always processes the entire log event\n message.

\n

This processor doesn't support custom log formats, such as NAT gateway logs. For more\n information about custom log formats in Amazon VPC, see \n parseVPC For more information about this processor including examples, see parseVPC.

\n \n

If you use this processor, it must be the first processor in your transformer.

\n
" } }, "com.amazonaws.cloudwatchlogs#ParseWAF": { @@ -9095,12 +9488,12 @@ "source": { "target": "com.amazonaws.cloudwatchlogs#Source", "traits": { - "smithy.api#documentation": "

Omit this parameter and the whole log message will be processed by this processor. No other value than @message is allowed for source.

" + "smithy.api#documentation": "

Omit this parameter and the whole log message will be processed by this processor. No\n other value than @message is allowed for source.

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

Use this processor to parse WAF vended logs, extract fields, and and convert them into a JSON format. This processor always\n processes the entire log event message.\n For more information about this processor including examples, see \n parseWAF.

\n

For more information about WAF log format, see \n \n Log examples for web ACL traffic.

\n \n

If you use this processor, it must be the first processor in your transformer.

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

Use this processor to parse WAF vended logs, extract fields, and and\n convert them into a JSON format. This processor always processes the entire log event message.\n For more information about this processor including examples, see parseWAF.

\n

For more information about WAF log format, see Log examples for web ACL\n traffic.

\n \n

If you use this processor, it must be the first processor in your transformer.

\n
" } }, "com.amazonaws.cloudwatchlogs#ParserFieldDelimiter": { @@ -9144,7 +9537,7 @@ "target": "com.amazonaws.cloudwatchlogs#DynamicTokenPosition", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

For a dynamic token, this indicates where in the pattern that this token appears, related\n to other dynamic tokens. The dynamic token that appears first has a value of 1, the \n one that appears second is 2, and so on.

" + "smithy.api#documentation": "

For a dynamic token, this indicates where in the pattern that this token appears, related\n to other dynamic tokens. The dynamic token that appears first has a value of 1,\n the one that appears second is 2, and so on.

" } }, "isDynamic": { @@ -9156,24 +9549,24 @@ "tokenString": { "target": "com.amazonaws.cloudwatchlogs#TokenString", "traits": { - "smithy.api#documentation": "

The string represented by this token. If this is a dynamic token, the\n value will be <*>\n

" + "smithy.api#documentation": "

The string represented by this token. If this is a dynamic token, the value will be\n <*>\n

" } }, "enumerations": { "target": "com.amazonaws.cloudwatchlogs#Enumerations", "traits": { - "smithy.api#documentation": "

Contains the values found for a dynamic token, and the number of times each value was found.

" + "smithy.api#documentation": "

Contains the values found for a dynamic token, and the number of times each value was\n found.

" } }, "inferredTokenName": { "target": "com.amazonaws.cloudwatchlogs#InferredTokenName", "traits": { - "smithy.api#documentation": "

A name that CloudWatch Logs assigned to this dynamic token to make the pattern more readable. The string part of \n the inferredTokenName gives you a clearer idea of the content of this token. The number part of \n the inferredTokenName shows where in the pattern this token appears, compared to other dynamic tokens.\n CloudWatch Logs assigns the string part of the name based on analyzing the content of the log events that contain it.

\n

For example, an inferred token name of IPAddress-3 means that the token represents an IP address, and this \n token is the third dynamic token in the pattern.

" + "smithy.api#documentation": "

A name that CloudWatch Logs assigned to this dynamic token to make the pattern more\n readable. The string part of the inferredTokenName gives you a clearer idea of\n the content of this token. The number part of the inferredTokenName shows where\n in the pattern this token appears, compared to other dynamic tokens. CloudWatch Logs\n assigns the string part of the name based on analyzing the content of the log events that\n contain it.

\n

For example, an inferred token name of IPAddress-3 means that the token\n represents an IP address, and this token is the third dynamic token in the pattern.

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

A structure that contains information about one pattern token related to \n an anomaly.

\n

For more information about patterns and tokens, see CreateLogAnomalyDetector.\n

" + "smithy.api#documentation": "

A structure that contains information about one pattern token related to an\n anomaly.

\n

For more information about patterns and tokens, see CreateLogAnomalyDetector.

" } }, "com.amazonaws.cloudwatchlogs#PatternTokens": { @@ -9218,6 +9611,23 @@ "com.amazonaws.cloudwatchlogs#PolicyName": { "type": "string" }, + "com.amazonaws.cloudwatchlogs#PolicyScope": { + "type": "enum", + "members": { + "ACCOUNT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACCOUNT" + } + }, + "RESOURCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RESOURCE" + } + } + } + }, "com.amazonaws.cloudwatchlogs#PolicyType": { "type": "enum", "members": { @@ -9244,6 +9654,12 @@ "traits": { "smithy.api#enumValue": "TRANSFORMER_POLICY" } + }, + "METRIC_EXTRACTION_POLICY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "METRIC_EXTRACTION_POLICY" + } } } }, @@ -9261,133 +9677,139 @@ "addKeys": { "target": "com.amazonaws.cloudwatchlogs#AddKeys", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n addKeys processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the addKeys processor in your transformer.

" } }, "copyValue": { "target": "com.amazonaws.cloudwatchlogs#CopyValue", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n copyValue processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the copyValue processor in your transformer.

" } }, "csv": { "target": "com.amazonaws.cloudwatchlogs#CSV", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n CSV processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the CSV processor in your transformer.

" } }, "dateTimeConverter": { "target": "com.amazonaws.cloudwatchlogs#DateTimeConverter", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n datetimeConverter processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the datetimeConverter processor in your transformer.

" } }, "deleteKeys": { "target": "com.amazonaws.cloudwatchlogs#DeleteKeys", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n deleteKeys processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the deleteKeys processor in your transformer.

" } }, "grok": { "target": "com.amazonaws.cloudwatchlogs#Grok", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n grok processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the grok processor in your transformer.

" } }, "listToMap": { "target": "com.amazonaws.cloudwatchlogs#ListToMap", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n listToMap processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the listToMap processor in your transformer.

" } }, "lowerCaseString": { "target": "com.amazonaws.cloudwatchlogs#LowerCaseString", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n lowerCaseString processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the lowerCaseString processor in your transformer.

" } }, "moveKeys": { "target": "com.amazonaws.cloudwatchlogs#MoveKeys", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n moveKeys processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the moveKeys processor in your transformer.

" } }, "parseCloudfront": { "target": "com.amazonaws.cloudwatchlogs#ParseCloudfront", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n parseCloudfront processor in your transformer.

\n

If you use this processor, it must be the first processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the parseCloudfront processor in your transformer.

\n

If you use this processor, it must be the first processor in your transformer.

" } }, "parseJSON": { "target": "com.amazonaws.cloudwatchlogs#ParseJSON", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n parseJSON processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the parseJSON processor in your transformer.

" } }, "parseKeyValue": { "target": "com.amazonaws.cloudwatchlogs#ParseKeyValue", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n parseKeyValue processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the parseKeyValue processor in your transformer.

" } }, "parseRoute53": { "target": "com.amazonaws.cloudwatchlogs#ParseRoute53", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n parseRoute53 processor in your transformer.

\n

If you use this processor, it must be the first processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the parseRoute53 processor in your transformer.

\n

If you use this processor, it must be the first processor in your transformer.

" + } + }, + "parseToOCSF": { + "target": "com.amazonaws.cloudwatchlogs#ParseToOCSF", + "traits": { + "smithy.api#documentation": "

Use this parameter to convert logs into Open Cybersecurity Schema (OCSF) format.

" } }, "parsePostgres": { "target": "com.amazonaws.cloudwatchlogs#ParsePostgres", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n parsePostGres processor in your transformer.

\n

If you use this processor, it must be the first processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the parsePostGres processor in your transformer.

\n

If you use this processor, it must be the first processor in your transformer.

" } }, "parseVPC": { "target": "com.amazonaws.cloudwatchlogs#ParseVPC", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n parseVPC processor in your transformer.

\n

If you use this processor, it must be the first processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the parseVPC processor in your transformer.

\n

If you use this processor, it must be the first processor in your transformer.

" } }, "parseWAF": { "target": "com.amazonaws.cloudwatchlogs#ParseWAF", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n parseWAF processor in your transformer.

\n

If you use this processor, it must be the first processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the parseWAF processor in your transformer.

\n

If you use this processor, it must be the first processor in your transformer.

" } }, "renameKeys": { "target": "com.amazonaws.cloudwatchlogs#RenameKeys", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n renameKeys processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the renameKeys processor in your transformer.

" } }, "splitString": { "target": "com.amazonaws.cloudwatchlogs#SplitString", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n splitString processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the splitString processor in your transformer.

" } }, "substituteString": { "target": "com.amazonaws.cloudwatchlogs#SubstituteString", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n substituteString processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the substituteString processor in your transformer.

" } }, "trimString": { "target": "com.amazonaws.cloudwatchlogs#TrimString", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n trimString processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the trimString processor in your transformer.

" } }, "typeConverter": { "target": "com.amazonaws.cloudwatchlogs#TypeConverter", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n typeConverter processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the typeConverter processor in your transformer.

" } }, "upperCaseString": { "target": "com.amazonaws.cloudwatchlogs#UpperCaseString", "traits": { - "smithy.api#documentation": "

Use this parameter to include the \n upperCaseString processor in your transformer.

" + "smithy.api#documentation": "

Use this parameter to include the upperCaseString processor in your transformer.

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

Creates an account-level data protection policy, subscription filter policy, or field index policy\n that applies to all log groups \n or a subset of log groups in the account.

\n

To use this operation, you must be signed on with the correct permissions depending on the type of policy that you are creating.

\n \n

\n Data protection policy\n

\n

A data protection policy can help safeguard sensitive \n data that's ingested by your log groups by auditing and masking the sensitive log data. Each account can have only\n one account-level data protection policy.

\n \n

Sensitive data is detected and masked when it is ingested into a log group. When you set a \n data protection policy, log events ingested into the log groups before that time are not masked.

\n
\n

If you use PutAccountPolicy to create a data protection policy for your whole account, it applies to both existing log groups\n and all log groups that are created later in this account. The account-level policy is applied to existing log groups\n with eventual consistency. It might take up to 5 minutes before sensitive data in existing log groups begins to be masked.

\n

By default, when a user views a log event that includes masked data, the sensitive data is replaced by asterisks.\n A user who has the logs:Unmask permission can use a \n GetLogEvents or \n FilterLogEvents\n operation with the unmask parameter set to true to view the unmasked \n log events. Users with the logs:Unmask can also view unmasked data in the CloudWatch Logs\n console by running a CloudWatch Logs Insights query with the unmask query command.

\n

For more information, including a list of types of data that can be audited and masked, see\n Protect sensitive log data with masking.

\n

To use the PutAccountPolicy operation for a data protection policy, you must be signed on with \n the logs:PutDataProtectionPolicy\n and logs:PutAccountPolicy permissions.

\n

The PutAccountPolicy operation applies to all log groups in the account. You can use \n PutDataProtectionPolicy\n to create a data protection policy that applies to just one log group. \n If a log group has its own data protection policy and \n the account also has an account-level data protection policy, then the two policies are cumulative. Any sensitive term\n specified in either policy is masked.

\n

\n Subscription filter policy\n

\n

A subscription filter policy sets up a real-time feed of log events from CloudWatch Logs to other Amazon Web Services services.\n Account-level subscription filter policies apply to both existing log groups and log groups that are created later in \n this account. Supported destinations are Kinesis Data Streams, Firehose, and \n Lambda. When log events are sent to the receiving service, they are Base64 encoded and \n compressed with the GZIP format.

\n

The following destinations are supported for subscription filters:

\n \n

Each account can have one account-level subscription filter policy per Region. \n If you are updating an existing filter, you must specify the correct name in PolicyName.\n To perform a PutAccountPolicy subscription filter operation for any destination except a Lambda \n function, you must also have the iam:PassRole permission.

\n

\n Transformer policy\n

\n

Creates or updates a log transformer policy for your account. You use log transformers to transform log events into\n a different format, making them easier for you to process and analyze. You can also transform logs from different sources into standardized formats that \n contain\n relevant, source-specific information. After you have created a transformer, \n CloudWatch Logs performs this transformation at the time of log ingestion. You can then refer to the transformed versions of the logs during\n operations such as querying with CloudWatch Logs Insights or creating metric filters or subscription filters.

\n

You can also use a transformer to copy metadata from metadata keys into the log events themselves. This metadata can include log group name, \n log stream name, account ID and Region.

\n

A transformer for a log group is a series of processors, where each processor applies one type of transformation to the log events\n ingested into this log group. For more information about the available processors to use in a transformer, see \n Processors that you can use.

\n

Having log events in standardized format enables visibility across your applications for your log analysis, reporting, and alarming needs. \n CloudWatch Logs provides transformation for common log types with out-of-the-box transformation templates for major Amazon Web Services log sources such \n as VPC flow logs, Lambda, and Amazon RDS. You can use pre-built transformation templates or create custom transformation policies.

\n

You can create transformers only for the log groups in the Standard log class.

\n

You can have one account-level transformer policy that applies to all log groups in the account. \n Or you can create as many as 20 account-level transformer policies that are each scoped to a subset of log groups with \n the selectionCriteria parameter. If you have multiple\n account-level transformer policies with selection criteria, no two of them can use the same or overlapping log group name prefixes.\n For example, if you have one policy filtered to log groups that start with my-log, you can't have another field index\n policy filtered to my-logpprod or my-logging.

\n

You can also set up a transformer at the log-group level. For more information, see \n PutTransformer. If there is both a \n log-group level transformer created with PutTransformer and an account-level transformer that could apply to the same log \n group, the log group uses only the log-group level transformer. It ignores the account-level transformer.

\n

\n Field index policy\n

\n

You can use field index policies to create indexes on fields found in \n log events in the log group. Creating field indexes can help lower the scan volume for CloudWatch Logs Insights queries that reference\n those fields, because these queries attempt to skip the processing of log events that are known to not match the indexed field.\n Good fields to index are fields that you often need to query for and fields or values that match only a small fraction of the total log events.\n Common examples of indexes\n include request ID, session ID, user IDs, or instance IDs. For more information, see \n Create field indexes to improve query performance and reduce costs\n

\n

To find the fields that are in your log group events, use the \n GetLogGroupFields\n operation.

\n

For example, suppose you have created a field index for requestId. Then, any \n CloudWatch Logs Insights query on that log group that includes requestId = value\n \n or requestId in [value, value, ...] will attempt to process only the log events where\n the indexed field matches the specified value.

\n

Matches of log events to the names of indexed fields are case-sensitive. For example, an indexed field\n of RequestId won't match a log event containing requestId.

\n

You can have one account-level field index policy that applies to all log groups in the account. \n Or you can create as many as 20 account-level field index policies that are each scoped to a subset of log groups with \n the selectionCriteria parameter. If you have multiple\n account-level index policies with selection criteria, no two of them can use the same or overlapping log group name prefixes.\n For example, if you have one policy filtered to log groups that start with my-log, you can't have another field index\n policy filtered to my-logpprod or my-logging.

\n

If you create an account-level field index policy in a monitoring account in cross-account observability, the policy is applied only\n to the monitoring account and not to any source accounts.

\n

If you want to create a field index policy for a single log group, you can use PutIndexPolicy instead of \n PutAccountPolicy. If you do so, that log group will use only that log-group level policy, and will ignore the account-level policy\n that you create with PutAccountPolicy.

" + "smithy.api#documentation": "

Creates an account-level data protection policy, subscription filter policy, field index\n policy, transformer policy, or metric extraction policy that applies to all log groups or a\n subset of log groups in the account.

\n

To use this operation, you must be signed on with the correct permissions depending on the\n type of policy that you are creating.

\n \n

\n Data protection policy\n

\n

A data protection policy can help safeguard sensitive data that's ingested by your log\n groups by auditing and masking the sensitive log data. Each account can have only one\n account-level data protection policy.

\n \n

Sensitive data is detected and masked when it is ingested into a log group. When you set\n a data protection policy, log events ingested into the log groups before that time are not\n masked.

\n
\n

If you use PutAccountPolicy to create a data protection policy for your whole\n account, it applies to both existing log groups and all log groups that are created later in\n this account. The account-level policy is applied to existing log groups with eventual\n consistency. It might take up to 5 minutes before sensitive data in existing log groups begins\n to be masked.

\n

By default, when a user views a log event that includes masked data, the sensitive data is\n replaced by asterisks. A user who has the logs:Unmask permission can use a GetLogEvents or FilterLogEvents operation with the unmask parameter set to\n true to view the unmasked log events. Users with the logs:Unmask\n can also view unmasked data in the CloudWatch Logs console by running a CloudWatch Logs\n Insights query with the unmask query command.

\n

For more information, including a list of types of data that can be audited and masked,\n see Protect sensitive log data\n with masking.

\n

To use the PutAccountPolicy operation for a data protection policy, you must\n be signed on with the logs:PutDataProtectionPolicy and\n logs:PutAccountPolicy permissions.

\n

The PutAccountPolicy operation applies to all log groups in the account. You\n can use PutDataProtectionPolicy to create a data protection policy that applies to just one\n log group. If a log group has its own data protection policy and the account also has an\n account-level data protection policy, then the two policies are cumulative. Any sensitive term\n specified in either policy is masked.

\n

\n Subscription filter policy\n

\n

A subscription filter policy sets up a real-time feed of log events from CloudWatch Logs to other Amazon Web Services services. Account-level subscription filter policies apply to\n both existing log groups and log groups that are created later in this account. Supported\n destinations are Kinesis Data Streams, Firehose, and Lambda. When log\n events are sent to the receiving service, they are Base64 encoded and compressed with the GZIP\n format.

\n

The following destinations are supported for subscription filters:

\n \n

Each account can have one account-level subscription filter policy per Region. If you are\n updating an existing filter, you must specify the correct name in PolicyName. To\n perform a PutAccountPolicy subscription filter operation for any destination\n except a Lambda function, you must also have the iam:PassRole\n permission.

\n

\n Transformer policy\n

\n

Creates or updates a log transformer policy for your account. You use\n log transformers to transform log events into a different format, making them easier for you\n to process and analyze. You can also transform logs from different sources into standardized\n formats that contain relevant, source-specific information. After you have created a\n transformer, CloudWatch Logs performs this transformation at the time of log ingestion. You\n can then refer to the transformed versions of the logs during operations such as querying with\n CloudWatch Logs Insights or creating metric filters or subscription filters.

\n

You can also use a transformer to copy metadata from metadata keys into the log events\n themselves. This metadata can include log group name, log stream name, account ID and\n Region.

\n

A transformer for a log group is a series of processors, where each processor applies one\n type of transformation to the log events ingested into this log group. For more information\n about the available processors to use in a transformer, see Processors that you can use.

\n

Having log events in standardized format enables visibility across your applications for\n your log analysis, reporting, and alarming needs. CloudWatch Logs provides transformation\n for common log types with out-of-the-box transformation templates for major Amazon Web Services\n log sources such as VPC flow logs, Lambda, and Amazon RDS. You can use\n pre-built transformation templates or create custom transformation policies.

\n

You can create transformers only for the log groups in the Standard log class.

\n

You can have one account-level transformer policy that applies to all log groups in the\n account. Or you can create as many as 20 account-level transformer policies that are each\n scoped to a subset of log groups with the selectionCriteria parameter. If you\n have multiple account-level transformer policies with selection criteria, no two of them can\n use the same or overlapping log group name prefixes. For example, if you have one policy\n filtered to log groups that start with my-log, you can't have another field index\n policy filtered to my-logpprod or my-logging.

\n

CloudWatch Logs provides default field indexes for all log groups in the Standard log\n class. Default field indexes are automatically available for the following fields:

\n \n

Default field indexes are in addition to any custom field indexes you define within your\n policy. Default field indexes are not counted towards your field index quota.

\n

You can also set up a transformer at the log-group level. For more information, see PutTransformer. If there is both a log-group level transformer created with\n PutTransformer and an account-level transformer that could apply to the same\n log group, the log group uses only the log-group level transformer. It ignores the\n account-level transformer.

\n

\n Field index policy\n

\n

You can use field index policies to create indexes on fields found in log events in the\n log group. Creating field indexes can help lower the scan volume for CloudWatch Logs\n Insights queries that reference those fields, because these queries attempt to skip the\n processing of log events that are known to not match the indexed field. Good fields to index\n are fields that you often need to query for and fields or values that match only a small\n fraction of the total log events. Common examples of indexes include request ID, session ID,\n user IDs, or instance IDs. For more information, see Create field indexes\n to improve query performance and reduce costs\n

\n

To find the fields that are in your log group events, use the GetLogGroupFields operation.

\n

For example, suppose you have created a field index for requestId. Then, any\n CloudWatch Logs Insights query on that log group that includes requestId =\n value\n or requestId in [value,\n value, ...] will attempt to process only the log events where\n the indexed field matches the specified value.

\n

Matches of log events to the names of indexed fields are case-sensitive. For example, an\n indexed field of RequestId won't match a log event containing\n requestId.

\n

You can have one account-level field index policy that applies to all log groups in the\n account. Or you can create as many as 20 account-level field index policies that are each\n scoped to a subset of log groups with the selectionCriteria parameter. If you\n have multiple account-level index policies with selection criteria, no two of them can use the\n same or overlapping log group name prefixes. For example, if you have one policy filtered to\n log groups that start with my-log, you can't have another field index policy\n filtered to my-logpprod or my-logging.

\n

If you create an account-level field index policy in a monitoring account in cross-account\n observability, the policy is applied only to the monitoring account and not to any source\n accounts.

\n

If you want to create a field index policy for a single log group, you can use PutIndexPolicy instead of PutAccountPolicy. If you do so, that log\n group will use only that log-group level policy, and will ignore the account-level policy that\n you create with PutAccountPolicy.

\n

\n Metric extraction policy\n

\n

A metric extraction policy controls whether CloudWatch Metrics can be created through the\n Embedded Metrics Format (EMF) for log groups in your account. By default, EMF metric creation\n is enabled for all log groups. You can use metric extraction policies to disable EMF metric\n creation for your entire account or specific log groups.

\n

When a policy disables EMF metric creation for a log group, log events in the EMF format\n are still ingested, but no CloudWatch Metrics are created from them.

\n \n

Creating a policy disables metrics for AWS features that use EMF to create metrics, such\n as CloudWatch Container Insights and CloudWatch Application Signals. To prevent turning off\n those features by accident, we recommend that you exclude the underlying log-groups through\n a selection-criteria such as LogGroupNamePrefix NOT IN [\"/aws/containerinsights\",\n \"/aws/ecs/containerinsights\", \"/aws/application-signals/data\"].

\n
\n

Each account can have either one account-level metric extraction policy that applies to\n all log groups, or up to 5 policies that are each scoped to a subset of log groups with the\n selectionCriteria parameter. The selection criteria supports filtering by\n LogGroupName and LogGroupNamePrefix using the operators\n IN and NOT IN. You can specify up to 50 values in each\n IN or NOT IN list.

\n

The selection criteria can be specified in these formats:

\n

\n LogGroupName IN [\"log-group-1\", \"log-group-2\"]\n

\n

\n LogGroupNamePrefix NOT IN [\"/aws/prefix1\", \"/aws/prefix2\"]\n

\n

If you have multiple account-level metric extraction policies with selection criteria, no\n two of them can have overlapping criteria. For example, if you have one policy with selection\n criteria LogGroupNamePrefix IN [\"my-log\"], you can't have another metric\n extraction policy with selection criteria LogGroupNamePrefix IN [\"/my-log-prod\"]\n or LogGroupNamePrefix IN [\"/my-logging\"], as the set of log groups matching these\n prefixes would be a subset of the log groups matching the first policy's prefix, creating an\n overlap.

\n

When using NOT IN, only one policy with this operator is allowed per\n account.

\n

When combining policies with IN and NOT IN operators, the\n overlap check ensures that policies don't have conflicting effects. Two policies with\n IN and NOT IN operators do not overlap if and only if every value\n in the IN policy is completely contained within some value in the NOT\n IN policy. For example:

\n " } }, "com.amazonaws.cloudwatchlogs#PutAccountPolicyRequest": { @@ -9446,7 +9868,7 @@ "policyDocument": { "target": "com.amazonaws.cloudwatchlogs#AccountPolicyDocument", "traits": { - "smithy.api#documentation": "

Specify the policy, in JSON.

\n

\n Data protection policy\n

\n

A data protection policy must include two JSON blocks:

\n \n

For an example data protection policy, see the Examples section on this page.

\n \n

The contents of the two DataIdentifer arrays must match exactly.

\n
\n

In addition to the two JSON blocks, the policyDocument can also include Name,\n Description, and Version fields. The Name is different than the \n operation's policyName parameter, and is used as a dimension when\n CloudWatch Logs reports audit findings metrics to CloudWatch.

\n

The JSON specified in policyDocument can be up to 30,720 characters long.

\n

\n Subscription filter policy\n

\n

A subscription filter policy can include the following attributes in a JSON block:

\n \n

\n Transformer policy\n

\n

A transformer policy must include one JSON block with the array of processors and their configurations. For more information\n about available processors, see \n Processors that you can use.

\n

\n Field index policy\n

\n

A field index filter policy can include the following attribute in a JSON block:

\n \n

It must contain at least one field index.

\n

The following is an example\n of an index policy document that creates two indexes, RequestId and TransactionId.

\n

\n \"policyDocument\": \"{ \\\"Fields\\\": [ \\\"RequestId\\\", \\\"TransactionId\\\" ] }\"\n

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

Specify the policy, in JSON.

\n

\n Data protection policy\n

\n

A data protection policy must include two JSON blocks:

\n \n

For an example data protection policy, see the Examples\n section on this page.

\n \n

The contents of the two DataIdentifer arrays must match exactly.

\n
\n

In addition to the two JSON blocks, the policyDocument can also include\n Name, Description, and Version fields. The\n Name is different than the operation's policyName parameter, and\n is used as a dimension when CloudWatch Logs reports audit findings metrics to CloudWatch.

\n

The JSON specified in policyDocument can be up to 30,720 characters\n long.

\n

\n Subscription filter policy\n

\n

A subscription filter policy can include the following attributes in a JSON block:

\n \n

\n Transformer policy\n

\n

A transformer policy must include one JSON block with the array of processors and their\n configurations. For more information about available processors, see Processors that you can use.

\n

\n Field index policy\n

\n

A field index filter policy can include the following attribute in a JSON block:

\n \n

It must contain at least one field index.

\n

The following is an example of an index policy document that creates two indexes,\n RequestId and TransactionId.

\n

\n \"policyDocument\": \"{ \\\"Fields\\\": [ \\\"RequestId\\\", \\\"TransactionId\\\" ]\n }\"\n

", "smithy.api#required": {} } }, @@ -9460,13 +9882,13 @@ "scope": { "target": "com.amazonaws.cloudwatchlogs#Scope", "traits": { - "smithy.api#documentation": "

Currently the only valid value for this parameter is ALL, which specifies that the data \n protection policy applies to all log groups in the account. If you omit this parameter, the default\n of ALL is used.

" + "smithy.api#documentation": "

Currently the only valid value for this parameter is ALL, which specifies\n that the data protection policy applies to all log groups in the account. If you omit this\n parameter, the default of ALL is used.

" } }, "selectionCriteria": { "target": "com.amazonaws.cloudwatchlogs#SelectionCriteria", "traits": { - "smithy.api#documentation": "

Use this parameter to apply the new policy to a subset of log groups in the account.

\n

Specifing selectionCriteria is valid only when you specify SUBSCRIPTION_FILTER_POLICY, FIELD_INDEX_POLICY\n or TRANSFORMER_POLICYfor policyType.

\n

If policyType is SUBSCRIPTION_FILTER_POLICY, the only supported \n selectionCriteria filter is LogGroupName NOT IN []\n

\n

If policyType is FIELD_INDEX_POLICY or TRANSFORMER_POLICY, the only supported \n selectionCriteria filter is LogGroupNamePrefix\n

\n

The selectionCriteria\n string can be up to 25KB in length. The length is determined by using its UTF-8 bytes.

\n

Using the selectionCriteria parameter with SUBSCRIPTION_FILTER_POLICY is useful to help prevent infinite loops. \n For more information, see Log recursion prevention.

" + "smithy.api#documentation": "

Use this parameter to apply the new policy to a subset of log groups in the\n account.

\n

Specifying selectionCriteria is valid only when you specify\n SUBSCRIPTION_FILTER_POLICY, FIELD_INDEX_POLICY or\n TRANSFORMER_POLICYfor policyType.

\n

If policyType is SUBSCRIPTION_FILTER_POLICY, the only supported\n selectionCriteria filter is LogGroupName NOT IN []\n

\n

If policyType is FIELD_INDEX_POLICY or\n TRANSFORMER_POLICY, the only supported selectionCriteria filter is\n LogGroupNamePrefix\n

\n

The selectionCriteria string can be up to 25KB in length. The length is\n determined by using its UTF-8 bytes.

\n

Using the selectionCriteria parameter with\n SUBSCRIPTION_FILTER_POLICY is useful to help prevent infinite loops. For more\n information, see Log recursion\n prevention.

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

Creates a data protection policy for the specified log group. A data protection policy can help safeguard sensitive \n data that's ingested by the log group by auditing and masking the sensitive log data.

\n \n

Sensitive data is detected and masked when it is ingested into the log group. When you set a \n data protection policy, log events ingested into the log group before that time are not masked.

\n
\n

By default, when a user views a log event that includes masked data, the sensitive data is replaced by asterisks.\n A user who has the logs:Unmask permission can use a \n GetLogEvents or \n FilterLogEvents\n operation with the unmask parameter set to true to view the unmasked \n log events. Users with the logs:Unmask can also view unmasked data in the CloudWatch Logs\n console by running a CloudWatch Logs Insights query with the unmask query command.

\n

For more information, including a list of types of data that can be audited and masked, see\n Protect sensitive log data with masking.

\n

The PutDataProtectionPolicy operation applies to only the specified log group. You can also use \n PutAccountPolicy\n to create an account-level data protection policy that applies to all log groups in the account, \n including both existing log groups and log groups that are created level. If a log group has its own data protection policy and \n the account also has an account-level data protection policy, then the two policies are cumulative. Any sensitive term\n specified in either policy is masked.

" + "smithy.api#documentation": "

Creates a data protection policy for the specified log group. A data protection policy can\n help safeguard sensitive data that's ingested by the log group by auditing and masking the\n sensitive log data.

\n \n

Sensitive data is detected and masked when it is ingested into the log group. When you\n set a data protection policy, log events ingested into the log group before that time are\n not masked.

\n
\n

By default, when a user views a log event that includes masked data, the sensitive data is\n replaced by asterisks. A user who has the logs:Unmask permission can use a GetLogEvents or FilterLogEvents operation with the unmask parameter set to\n true to view the unmasked log events. Users with the logs:Unmask\n can also view unmasked data in the CloudWatch Logs console by running a CloudWatch Logs\n Insights query with the unmask query command.

\n

For more information, including a list of types of data that can be audited and masked,\n see Protect sensitive log data\n with masking.

\n

The PutDataProtectionPolicy operation applies to only the specified log\n group. You can also use PutAccountPolicy to create an account-level data protection policy that applies to\n all log groups in the account, including both existing log groups and log groups that are\n created level. If a log group has its own data protection policy and the account also has an\n account-level data protection policy, then the two policies are cumulative. Any sensitive term\n specified in either policy is masked.

" } }, "com.amazonaws.cloudwatchlogs#PutDataProtectionPolicyRequest": { @@ -9530,7 +9952,7 @@ "policyDocument": { "target": "com.amazonaws.cloudwatchlogs#DataProtectionPolicyDocument", "traits": { - "smithy.api#documentation": "

Specify the data protection policy, in JSON.

\n

This policy must include two JSON blocks:

\n \n

For an example data protection policy, see the Examples section on this page.

\n \n

The contents of the two DataIdentifer arrays must match exactly.

\n
\n

In addition to the two JSON blocks, the policyDocument can also include Name,\n Description, and Version fields. The Name is used as a dimension when\n CloudWatch Logs reports audit findings metrics to CloudWatch.

\n

The JSON specified in policyDocument can be up to 30,720 characters.

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

Specify the data protection policy, in JSON.

\n

This policy must include two JSON blocks:

\n \n

For an example data protection policy, see the Examples\n section on this page.

\n \n

The contents of the two DataIdentifer arrays must match exactly.

\n
\n

In addition to the two JSON blocks, the policyDocument can also include\n Name, Description, and Version fields. The\n Name is used as a dimension when CloudWatch Logs reports audit findings\n metrics to CloudWatch.

\n

The JSON specified in policyDocument can be up to 30,720 characters.

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

Creates or updates a logical delivery destination. A delivery destination is an Amazon Web Services resource that represents an \n Amazon Web Services service that logs can be sent to. CloudWatch Logs, Amazon S3, and\n Firehose are supported as logs delivery destinations.

\n

To configure logs delivery between a supported Amazon Web Services service and a destination, you must do the following:

\n \n

You can configure a single delivery source to send logs to multiple destinations by creating multiple deliveries. You \n can also create multiple deliveries to configure multiple delivery sources to send logs to the same delivery destination.

\n

Only some Amazon Web Services services support being configured as a delivery source. These services are listed\n as Supported [V2 Permissions] in the table at \n Enabling \n logging from Amazon Web Services services.\n

\n

If you use this operation to update an existing delivery destination, all the current delivery destination parameters are overwritten\n with the new parameter values that you specify.

" + "smithy.api#documentation": "

Creates or updates a logical delivery destination. A delivery\n destination is an Amazon Web Services resource that represents an Amazon Web Services service\n that logs can be sent to. CloudWatch Logs, Amazon S3, and Firehose are\n supported as logs delivery destinations and X-Ray as the trace delivery\n destination.

\n

To configure logs delivery between a supported Amazon Web Services service and a\n destination, you must do the following:

\n \n

You can configure a single delivery source to send logs to multiple destinations by\n creating multiple deliveries. You can also create multiple deliveries to configure multiple\n delivery sources to send logs to the same delivery destination.

\n

Only some Amazon Web Services services support being configured as a delivery source. These\n services are listed as Supported [V2 Permissions] in the\n table at Enabling logging from\n Amazon Web Services services.\n

\n

If you use this operation to update an existing delivery destination, all the current\n delivery destination parameters are overwritten with the new parameter values that you\n specify.

" } }, "com.amazonaws.cloudwatchlogs#PutDeliveryDestinationPolicy": { @@ -9620,7 +10042,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates and assigns an IAM policy that grants permissions to CloudWatch Logs to deliver \n logs cross-account to a specified destination in this account. To configure the delivery of logs from an \n Amazon Web Services service in another account to a logs delivery destination in the current account, you must do the following:

\n \n

Only some Amazon Web Services services support being configured as a delivery source. These services are listed\n as Supported [V2 Permissions] in the table at \n Enabling \n logging from Amazon Web Services services.\n

\n

The contents of the policy must include two statements. One statement enables general logs delivery, and the other\n allows delivery to the chosen destination. See the examples for the needed policies.

" + "smithy.api#documentation": "

Creates and assigns an IAM policy that grants permissions to CloudWatch Logs to deliver logs cross-account to a specified destination in this account. To\n configure the delivery of logs from an Amazon Web Services service in another account to a logs\n delivery destination in the current account, you must do the following:

\n \n

Only some Amazon Web Services services support being configured as a delivery source. These\n services are listed as Supported [V2 Permissions] in the\n table at Enabling logging from\n Amazon Web Services services.\n

\n

The contents of the policy must include two statements. One statement enables general logs\n delivery, and the other allows delivery to the chosen destination. See the examples for the\n needed policies.

" } }, "com.amazonaws.cloudwatchlogs#PutDeliveryDestinationPolicyRequest": { @@ -9665,7 +10087,7 @@ "name": { "target": "com.amazonaws.cloudwatchlogs#DeliveryDestinationName", "traits": { - "smithy.api#documentation": "

A name for this delivery destination. This name must be unique for all delivery destinations in your account.

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

A name for this delivery destination. This name must be unique for all delivery\n destinations in your account.

", "smithy.api#required": {} } }, @@ -9678,14 +10100,19 @@ "deliveryDestinationConfiguration": { "target": "com.amazonaws.cloudwatchlogs#DeliveryDestinationConfiguration", "traits": { - "smithy.api#documentation": "

A structure that contains the ARN of the Amazon Web Services resource that will receive the logs.

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

A structure that contains the ARN of the Amazon Web Services resource that will receive the\n logs.

\n \n

\n deliveryDestinationConfiguration is required for CloudWatch Logs,\n Amazon S3, Firehose log delivery destinations and not required for\n X-Ray trace delivery destinations. deliveryDestinationType is\n needed for X-Ray trace delivery destinations but not required for other logs\n delivery destinations.

\n
" + } + }, + "deliveryDestinationType": { + "target": "com.amazonaws.cloudwatchlogs#DeliveryDestinationType", + "traits": { + "smithy.api#documentation": "

The type of delivery destination. This parameter specifies the target service where log\n data will be delivered. Valid values include:

\n \n

The delivery destination type determines the format and configuration options available\n for log delivery.

" } }, "tags": { "target": "com.amazonaws.cloudwatchlogs#Tags", "traits": { - "smithy.api#documentation": "

An optional list of key-value pairs to associate with the resource.

\n

For more information about tagging, see \n Tagging Amazon Web Services resources\n

" + "smithy.api#documentation": "

An optional list of key-value pairs to associate with the resource.

\n

For more information about tagging, see Tagging Amazon Web Services resources\n

" } } }, @@ -9699,7 +10126,7 @@ "deliveryDestination": { "target": "com.amazonaws.cloudwatchlogs#DeliveryDestination", "traits": { - "smithy.api#documentation": "

A structure containing information about the delivery destination that you just created or updated.

" + "smithy.api#documentation": "

A structure containing information about the delivery destination that you just created or\n updated.

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

Creates or updates a logical delivery source. A delivery source represents an Amazon Web Services resource that sends logs to an\n logs delivery destination. The destination can be CloudWatch Logs, Amazon S3, or Firehose.

\n

To configure logs delivery between a delivery destination and an Amazon Web Services service that is supported as a delivery source, you must do the following:

\n \n

You can configure a single delivery source to send logs to multiple destinations by creating multiple deliveries. You \n can also create multiple deliveries to configure multiple delivery sources to send logs to the same delivery destination.

\n

Only some Amazon Web Services services support being configured as a delivery source. These services are listed\n as Supported [V2 Permissions] in the table at \n Enabling \n logging from Amazon Web Services services.\n

\n

If you use this operation to update an existing delivery source, all the current delivery source parameters are overwritten\n with the new parameter values that you specify.

" + "smithy.api#documentation": "

Creates or updates a logical delivery source. A delivery source\n represents an Amazon Web Services resource that sends logs to an logs delivery destination. The\n destination can be CloudWatch Logs, Amazon S3, Firehose or X-Ray for sending traces.

\n

To configure logs delivery between a delivery destination and an Amazon Web Services\n service that is supported as a delivery source, you must do the following:

\n \n

You can configure a single delivery source to send logs to multiple destinations by\n creating multiple deliveries. You can also create multiple deliveries to configure multiple\n delivery sources to send logs to the same delivery destination.

\n

Only some Amazon Web Services services support being configured as a delivery source. These\n services are listed as Supported [V2 Permissions] in the\n table at Enabling logging from\n Amazon Web Services services.\n

\n

If you use this operation to update an existing delivery source, all the current delivery\n source parameters are overwritten with the new parameter values that you specify.

" } }, "com.amazonaws.cloudwatchlogs#PutDeliverySourceRequest": { @@ -9745,28 +10172,28 @@ "name": { "target": "com.amazonaws.cloudwatchlogs#DeliverySourceName", "traits": { - "smithy.api#documentation": "

A name for this delivery source. This name must be unique for all delivery sources in your account.

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

A name for this delivery source. This name must be unique for all delivery sources in your\n account.

", "smithy.api#required": {} } }, "resourceArn": { "target": "com.amazonaws.cloudwatchlogs#Arn", "traits": { - "smithy.api#documentation": "

The ARN of the Amazon Web Services resource that is generating and sending logs. \n For example, arn:aws:workmail:us-east-1:123456789012:organization/m-1234EXAMPLEabcd1234abcd1234abcd1234\n

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

The ARN of the Amazon Web Services resource that is generating and sending logs. For\n example,\n arn:aws:workmail:us-east-1:123456789012:organization/m-1234EXAMPLEabcd1234abcd1234abcd1234\n

", "smithy.api#required": {} } }, "logType": { "target": "com.amazonaws.cloudwatchlogs#LogType", "traits": { - "smithy.api#documentation": "

Defines the type of log that the source is sending.

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

Defines the type of log that the source is sending.

\n ", "smithy.api#required": {} } }, "tags": { "target": "com.amazonaws.cloudwatchlogs#Tags", "traits": { - "smithy.api#documentation": "

An optional list of key-value pairs to associate with the resource.

\n

For more information about tagging, see \n Tagging Amazon Web Services resources\n

" + "smithy.api#documentation": "

An optional list of key-value pairs to associate with the resource.

\n

For more information about tagging, see Tagging Amazon Web Services resources\n

" } } }, @@ -9780,7 +10207,7 @@ "deliverySource": { "target": "com.amazonaws.cloudwatchlogs#DeliverySource", "traits": { - "smithy.api#documentation": "

A structure containing information about the delivery source that was just created or updated.

" + "smithy.api#documentation": "

A structure containing information about the delivery source that was just created or\n updated.

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

Creates or updates a destination. This operation is used only to create destinations for cross-account subscriptions.

\n

A destination encapsulates a physical resource (such as an Amazon Kinesis stream). With\n a destination, you can subscribe to a real-time stream of log events for a different account,\n ingested using PutLogEvents.

\n

Through an access policy, a destination controls what is written to it.\n By default, PutDestination does not set any access policy with the destination,\n which means a cross-account user cannot call PutSubscriptionFilter against\n this destination. To enable this, the destination owner must call PutDestinationPolicy after PutDestination.

\n

To perform a PutDestination operation, you must also have the \n iam:PassRole permission.

" + "smithy.api#documentation": "

Creates or updates a destination. This operation is used only to create destinations\n for cross-account subscriptions.

\n

A destination encapsulates a physical resource (such as an Amazon Kinesis stream). With\n a destination, you can subscribe to a real-time stream of log events for a different account,\n ingested using PutLogEvents.

\n

Through an access policy, a destination controls what is written to it. By default,\n PutDestination does not set any access policy with the destination, which means\n a cross-account user cannot call PutSubscriptionFilter against this destination. To enable this, the destination\n owner must call PutDestinationPolicy after PutDestination.

\n

To perform a PutDestination operation, you must also have the\n iam:PassRole permission.

" } }, "com.amazonaws.cloudwatchlogs#PutDestinationPolicy": { @@ -9831,7 +10258,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates or updates an access policy associated with an existing\n destination. An access policy is an IAM policy document that is used\n to authorize claims to register a subscription filter against a given destination.

" + "smithy.api#documentation": "

Creates or updates an access policy associated with an existing destination. An access\n policy is an IAM\n policy document that is used to authorize claims to register a subscription filter\n against a given destination.

" } }, "com.amazonaws.cloudwatchlogs#PutDestinationPolicyRequest": { @@ -9854,7 +10281,7 @@ "forceUpdate": { "target": "com.amazonaws.cloudwatchlogs#ForceUpdate", "traits": { - "smithy.api#documentation": "

Specify true if you are updating an existing destination policy to grant permission to\n an organization ID instead of granting permission to individual Amazon Web Services accounts. Before\n you update a destination policy this way, you must first update the subscription\n filters in the accounts that send logs to this destination. If you do not, the subscription\n filters might stop working. By specifying true\n for forceUpdate, you are affirming that you have already updated the subscription \n filters.\n For more information, see \n Updating an existing cross-account subscription\n

\n

If you omit this parameter, the default of false is used.

" + "smithy.api#documentation": "

Specify true if you are updating an existing destination policy to grant permission to an\n organization ID instead of granting permission to individual Amazon Web Services accounts.\n Before you update a destination policy this way, you must first update the subscription\n filters in the accounts that send logs to this destination. If you do not, the subscription\n filters might stop working. By specifying true for forceUpdate, you\n are affirming that you have already updated the subscription filters. For more information,\n see Updating an\n existing cross-account subscription\n

\n

If you omit this parameter, the default of false is used.

" } } }, @@ -9889,7 +10316,7 @@ "tags": { "target": "com.amazonaws.cloudwatchlogs#Tags", "traits": { - "smithy.api#documentation": "

An optional list of key-value pairs to associate with the resource.

\n

For more information about tagging, see \n Tagging Amazon Web Services resources\n

" + "smithy.api#documentation": "

An optional list of key-value pairs to associate with the resource.

\n

For more information about tagging, see Tagging Amazon Web Services resources\n

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

Creates or updates a field index policy for the specified log group. Only log groups\n in the Standard log class support field index policies. For more information about log classes, see\n Log classes.

\n

You can use field index policies to create field indexes on fields found in \n log events in the log group. Creating field indexes speeds up and lowers the costs for CloudWatch Logs Insights queries that reference\n those field indexes, because these queries attempt to skip the processing of log events that are known to not match the indexed field.\n Good fields to index are fields that you often need to query for and fields or values that match only a small fraction of the total log events.\n Common examples of indexes\n include request ID, session ID, userID, and instance IDs. For more information, see Create field indexes to improve query performance and reduce costs.

\n

To find the fields that are in your log group events, use the \n GetLogGroupFields\n operation.

\n

For example, suppose you have created a field index for requestId. Then, any \n CloudWatch Logs Insights query on that log group that includes requestId = value\n \n or requestId IN [value, value, ...] will process fewer log events\n to reduce costs, and have improved performance.

\n

Each index policy has the following quotas and restrictions:

\n \n

Matches of log events to the names of indexed fields are case-sensitive. For example, a field index\n of RequestId won't match a log event containing requestId.

\n

Log group-level field index policies created with PutIndexPolicy override account-level field \n index policies created with PutAccountPolicy. If you use\n PutIndexPolicy to create a field\n index policy for a log group, that log group uses only that policy. The log group ignores any account-wide\n field index policy that you might have created.

" + "smithy.api#documentation": "

Creates or updates a field index policy for the specified log group.\n Only log groups in the Standard log class support field index policies. For more information\n about log classes, see Log\n classes.

\n

You can use field index policies to create field indexes on fields\n found in log events in the log group. Creating field indexes speeds up and lowers the costs\n for CloudWatch Logs Insights queries that reference those field indexes, because these\n queries attempt to skip the processing of log events that are known to not match the indexed\n field. Good fields to index are fields that you often need to query for and fields or values\n that match only a small fraction of the total log events. Common examples of indexes include\n request ID, session ID, userID, and instance IDs. For more information, see Create field indexes to improve query performance and reduce costs.

\n

To find the fields that are in your log group events, use the GetLogGroupFields operation.

\n

For example, suppose you have created a field index for requestId. Then, any\n CloudWatch Logs Insights query on that log group that includes requestId =\n value\n or requestId IN [value,\n value, ...] will process fewer log events to reduce costs, and\n have improved performance.

\n

CloudWatch Logs provides default field indexes for all log groups in the Standard log\n class. Default field indexes are automatically available for the following fields:

\n \n

Default field indexes are in addition to any custom field indexes you define within your\n policy. Default field indexes are not counted towards your field index quota.

\n

Each index policy has the following quotas and restrictions:

\n \n

Matches of log events to the names of indexed fields are case-sensitive. For example, a\n field index of RequestId won't match a log event containing\n requestId.

\n

Log group-level field index policies created with PutIndexPolicy override\n account-level field index policies created with PutAccountPolicy. If you use PutIndexPolicy to create a field index\n policy for a log group, that log group uses only that policy. The log group ignores any\n account-wide field index policy that you might have created.

" } }, "com.amazonaws.cloudwatchlogs#PutIndexPolicyRequest": { @@ -9946,14 +10373,14 @@ "logGroupIdentifier": { "target": "com.amazonaws.cloudwatchlogs#LogGroupIdentifier", "traits": { - "smithy.api#documentation": "

Specify either the log group name or log group ARN to apply this field index policy to. If you specify an ARN, use the format\n arn:aws:logs:region:account-id:log-group:log_group_name Don't include an * at the end.

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

Specify either the log group name or log group ARN to apply this field index policy to. If\n you specify an ARN, use the format\n arn:aws:logs:region:account-id:log-group:log_group_name\n Don't include an * at the end.

", "smithy.api#required": {} } }, "policyDocument": { "target": "com.amazonaws.cloudwatchlogs#PolicyDocument", "traits": { - "smithy.api#documentation": "

The index policy document, in JSON format. The following is an example\n of an index policy document that creates two indexes, RequestId and TransactionId.

\n

\n \"policyDocument\": \"{ \"Fields\": [ \"RequestId\", \"TransactionId\" ] }\"\n

\n

The policy document must include at least one field index. For more information about the fields\n that can be included and other restrictions, see Field index syntax and quotas.

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

The index policy document, in JSON format. The following is an example of an index policy\n document that creates two indexes, RequestId and\n TransactionId.

\n

\n \"policyDocument\": \"{ \"Fields\": [ \"RequestId\", \"TransactionId\" ] }\"\n

\n

The policy document must include at least one field index. For more information about the\n fields that can be included and other restrictions, see Field index\n syntax and quotas.

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

Creates an integration between CloudWatch Logs and another service in this account. Currently, only integrations with \n OpenSearch Service are supported, and currently you can have only one integration in your account.

\n

Integrating with OpenSearch Service makes it possible for you to create curated vended logs dashboards, powered \n by OpenSearch Service analytics. For more information, see \n Vended log dashboards powered by Amazon OpenSearch Service.

\n

You can use this operation only to create a new integration. You can't modify an existing integration.

" + "smithy.api#documentation": "

Creates an integration between CloudWatch Logs and another service in this account.\n Currently, only integrations with OpenSearch Service are supported, and currently you can have\n only one integration in your account.

\n

Integrating with OpenSearch Service makes it possible for you to create curated vended\n logs dashboards, powered by OpenSearch Service analytics. For more information, see Vended log\n dashboards powered by Amazon OpenSearch Service.

\n

You can use this operation only to create a new integration. You can't modify an existing\n integration.

" } }, "com.amazonaws.cloudwatchlogs#PutIntegrationRequest": { @@ -10015,14 +10442,14 @@ "resourceConfig": { "target": "com.amazonaws.cloudwatchlogs#ResourceConfig", "traits": { - "smithy.api#documentation": "

A structure that contains configuration information for the integration that you are creating.

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

A structure that contains configuration information for the integration that you are\n creating.

", "smithy.api#required": {} } }, "integrationType": { "target": "com.amazonaws.cloudwatchlogs#IntegrationType", "traits": { - "smithy.api#documentation": "

The type of integration. Currently, the only supported type is OPENSEARCH.

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

The type of integration. Currently, the only supported type is\n OPENSEARCH.

", "smithy.api#required": {} } } @@ -10043,7 +10470,7 @@ "integrationStatus": { "target": "com.amazonaws.cloudwatchlogs#IntegrationStatus", "traits": { - "smithy.api#documentation": "

The status of the integration that you just created.

\n

After you create an integration, it takes a few minutes to complete. During this time, you'll see the status as PROVISIONING.

" + "smithy.api#documentation": "

The status of the integration that you just created.

\n

After you create an integration, it takes a few minutes to complete. During this time,\n you'll see the status as PROVISIONING.

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

Uploads a batch of log events to the specified log stream.

\n \n

The sequence token is now ignored in PutLogEvents\n actions. PutLogEvents\n actions are always accepted and never return InvalidSequenceTokenException or\n DataAlreadyAcceptedException even if the sequence token is not valid. You can use\n parallel PutLogEvents actions on the same log stream.

\n
\n

The batch of events must satisfy the following constraints:

\n \n

If a call to PutLogEvents returns \"UnrecognizedClientException\" the most\n likely cause is a non-valid Amazon Web Services access key ID or secret key.

" + "smithy.api#documentation": "

Uploads a batch of log events to the specified log stream.

\n \n

The sequence token is now ignored in PutLogEvents actions.\n PutLogEvents actions are always accepted and never return\n InvalidSequenceTokenException or DataAlreadyAcceptedException\n even if the sequence token is not valid. You can use parallel PutLogEvents\n actions on the same log stream.

\n
\n

The batch of events must satisfy the following constraints:

\n \n \n

The quota of five requests per second per log stream has been removed. Instead,\n PutLogEvents actions are throttled based on a per-second per-account quota.\n You can request an increase to the per-second throttling quota by using the Service Quotas service.

\n
\n

If a call to PutLogEvents returns \"UnrecognizedClientException\" the most\n likely cause is a non-valid Amazon Web Services access key ID or secret key.

" } }, "com.amazonaws.cloudwatchlogs#PutLogEventsRequest": { @@ -10110,7 +10537,7 @@ "sequenceToken": { "target": "com.amazonaws.cloudwatchlogs#SequenceToken", "traits": { - "smithy.api#documentation": "

The sequence token obtained from the response of the previous PutLogEvents\n call.

\n \n

The sequenceToken parameter is now ignored in PutLogEvents\n actions. PutLogEvents\n actions are now accepted and never return InvalidSequenceTokenException or\n DataAlreadyAcceptedException even if the sequence token is not valid.

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

The sequence token obtained from the response of the previous PutLogEvents\n call.

\n \n

The sequenceToken parameter is now ignored in PutLogEvents\n actions. PutLogEvents actions are now accepted and never return\n InvalidSequenceTokenException or DataAlreadyAcceptedException\n even if the sequence token is not valid.

\n
" } }, "entity": { @@ -10130,7 +10557,7 @@ "nextSequenceToken": { "target": "com.amazonaws.cloudwatchlogs#SequenceToken", "traits": { - "smithy.api#documentation": "

The next sequence token.

\n \n

This field has been deprecated.

\n

The sequence token is now ignored in PutLogEvents\n actions. PutLogEvents\n actions are always accepted even if the sequence token is not valid. You can use\n parallel PutLogEvents actions on the same log stream and you do not need\n to wait for the response of a previous PutLogEvents action to obtain \n the nextSequenceToken value.

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

The next sequence token.

\n \n

This field has been deprecated.

\n

The sequence token is now ignored in PutLogEvents actions.\n PutLogEvents actions are always accepted even if the sequence token is not\n valid. You can use parallel PutLogEvents actions on the same log stream and you\n do not need to wait for the response of a previous PutLogEvents action to\n obtain the nextSequenceToken value.

\n
" } }, "rejectedLogEventsInfo": { @@ -10142,7 +10569,7 @@ "rejectedEntityInfo": { "target": "com.amazonaws.cloudwatchlogs#RejectedEntityInfo", "traits": { - "smithy.api#documentation": "

Information about why the entity is rejected when calling \n PutLogEvents. Only returned when the entity is rejected.

\n \n

When the entity is rejected, the events may still be accepted.

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

Information about why the entity is rejected when calling PutLogEvents. Only\n returned when the entity is rejected.

\n \n

When the entity is rejected, the events may still be accepted.

\n
" } } }, @@ -10179,7 +10606,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates or updates a metric filter and associates it with the specified log group. With\n metric filters, you can configure rules to extract metric data from log events ingested\n through PutLogEvents.

\n

The maximum number of metric filters that can be associated with a log group is\n 100.

\n

Using regular expressions in filter patterns is supported. For these filters, \n there is a quota of two regular expression patterns within a single filter pattern. There\n is also a quota of five regular expression patterns per log group.\n For more information about using regular expressions in filter patterns, \n see \n Filter pattern syntax for metric filters, subscription filters, filter log events, and Live Tail.

\n

When you create a metric filter, you can also optionally assign a unit and dimensions\n to the metric that is created.

\n \n

Metrics extracted from log events are charged as custom metrics.\n To prevent unexpected high charges, do not specify high-cardinality fields such as \n IPAddress or requestID as dimensions. Each different value \n found for \n a dimension is treated as a separate metric and accrues charges as a separate custom metric.\n

\n

CloudWatch Logs might disable a metric filter if it generates 1,000 different name/value pairs for\n your specified dimensions within one hour.

\n

You can also set up a billing alarm to alert you if your charges are higher than \n expected. For more information, \n see \n Creating a Billing Alarm to Monitor Your Estimated Amazon Web Services Charges.\n

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

Creates or updates a metric filter and associates it with the specified log group. With\n metric filters, you can configure rules to extract metric data from log events ingested\n through PutLogEvents.

\n

The maximum number of metric filters that can be associated with a log group is\n 100.

\n

Using regular expressions in filter patterns is supported. For these filters, there is a\n quota of two regular expression patterns within a single filter pattern. There is also a quota\n of five regular expression patterns per log group. For more information about using regular\n expressions in filter patterns, see Filter pattern syntax for\n metric filters, subscription filters, filter log events, and Live Tail.

\n

When you create a metric filter, you can also optionally assign a unit and dimensions to\n the metric that is created.

\n \n

Metrics extracted from log events are charged as custom metrics. To prevent unexpected\n high charges, do not specify high-cardinality fields such as IPAddress or\n requestID as dimensions. Each different value found for a dimension is\n treated as a separate metric and accrues charges as a separate custom metric.

\n

CloudWatch Logs might disable a metric filter if it generates 1,000 different\n name/value pairs for your specified dimensions within one hour.

\n

You can also set up a billing alarm to alert you if your charges are higher than\n expected. For more information, see \n Creating a Billing Alarm to Monitor Your Estimated Amazon Web Services Charges.\n

\n
" } }, "com.amazonaws.cloudwatchlogs#PutMetricFilterRequest": { @@ -10217,7 +10644,19 @@ "target": "com.amazonaws.cloudwatchlogs#ApplyOnTransformedLogs", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

This parameter is valid only for log groups that have an active log transformer. For more information about\n log transformers, see PutTransformer.

\n

If the log group uses either a log-group level or account-level transformer, and you specify true, the metric filter\n will be applied on the transformed version of the log events instead of the original ingested log events.

" + "smithy.api#documentation": "

This parameter is valid only for log groups that have an active log transformer. For more\n information about log transformers, see PutTransformer.

\n

If the log group uses either a log-group level or account-level transformer, and you\n specify true, the metric filter will be applied on the transformed version of the\n log events instead of the original ingested log events.

" + } + }, + "fieldSelectionCriteria": { + "target": "com.amazonaws.cloudwatchlogs#FieldSelectionCriteria", + "traits": { + "smithy.api#documentation": "

A filter expression that specifies which log events should be processed by this metric filter based on system fields such as source account and source region. Uses selection criteria syntax with operators like =, !=, AND, OR, IN, NOT IN. Example: @aws.region = \"us-east-1\" or @aws.account IN [\"123456789012\", \"987654321098\"]. Maximum length: 2000 characters.

" + } + }, + "emitSystemFieldDimensions": { + "target": "com.amazonaws.cloudwatchlogs#EmitSystemFields", + "traits": { + "smithy.api#documentation": "

A list of system fields to emit as additional dimensions in the generated metrics. Valid values are @aws.account and @aws.region. These dimensions help identify the source of centralized log data and count toward the total dimension limit for metric filters.

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

Creates or updates a query definition for CloudWatch Logs Insights. For \n more information, see Analyzing Log Data with CloudWatch Logs Insights.

\n

To update a query definition, specify its queryDefinitionId in your request.\n The values of name, queryString, and logGroupNames are\n changed to the values that you specify in your update operation. No current values are\n retained from the current query definition. For example, imagine updating a current query\n definition that includes log groups. If you don't specify the logGroupNames\n parameter in your update operation, the query definition changes to contain no log\n groups.

\n

You must have the logs:PutQueryDefinition permission to be able to perform\n this operation.

" + "smithy.api#documentation": "

Creates or updates a query definition for CloudWatch Logs Insights. For more information,\n see Analyzing Log Data with CloudWatch Logs Insights.

\n

To update a query definition, specify its queryDefinitionId in your request.\n The values of name, queryString, and logGroupNames are\n changed to the values that you specify in your update operation. No current values are\n retained from the current query definition. For example, imagine updating a current query\n definition that includes log groups. If you don't specify the logGroupNames\n parameter in your update operation, the query definition changes to contain no log\n groups.

\n

You must have the logs:PutQueryDefinition permission to be able to perform\n this operation.

" } }, "com.amazonaws.cloudwatchlogs#PutQueryDefinitionRequest": { @@ -10257,7 +10696,7 @@ "queryLanguage": { "target": "com.amazonaws.cloudwatchlogs#QueryLanguage", "traits": { - "smithy.api#documentation": "

Specify the query language to use for this query. The options are Logs Insights QL, OpenSearch PPL, and OpenSearch SQL. For more information about the query languages that CloudWatch Logs supports, \n see Supported query languages.

" + "smithy.api#documentation": "

Specify the query language to use for this query. The options are Logs Insights QL,\n OpenSearch PPL, and OpenSearch SQL. For more information about the query languages that\n CloudWatch Logs supports, see Supported query\n languages.

" } }, "name": { @@ -10276,20 +10715,20 @@ "logGroupNames": { "target": "com.amazonaws.cloudwatchlogs#LogGroupNames", "traits": { - "smithy.api#documentation": "

Use this parameter to include specific log groups as part of your query definition. If your query\n uses the OpenSearch Service query language, you specify the log group names inside the querystring instead of here.

\n

If you are updating an existing query definition for the Logs Insights QL or OpenSearch Service PPL and you omit this parameter, then the updated\n definition will contain no log groups.

" + "smithy.api#documentation": "

Use this parameter to include specific log groups as part of your query definition. If\n your query uses the OpenSearch Service query language, you specify the log group names inside\n the querystring instead of here.

\n

If you are updating an existing query definition for the Logs Insights QL or OpenSearch Service PPL and you omit this parameter, then the updated definition will contain no log\n groups.

" } }, "queryString": { "target": "com.amazonaws.cloudwatchlogs#QueryDefinitionString", "traits": { - "smithy.api#documentation": "

The query string to use for this definition. \n For more information, see CloudWatch Logs Insights Query Syntax.

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

The query string to use for this definition. For more information, see CloudWatch Logs\n Insights Query Syntax.

", "smithy.api#required": {} } }, "clientToken": { "target": "com.amazonaws.cloudwatchlogs#ClientToken", "traits": { - "smithy.api#documentation": "

Used as an idempotency token, to avoid returning an exception if the service receives the same \n request twice because of a network\n\n error.

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

Used as an idempotency token, to avoid returning an exception if the service receives the\n same request twice because of a network error.

", "smithy.api#idempotencyToken": {} } } @@ -10327,12 +10766,18 @@ { "target": "com.amazonaws.cloudwatchlogs#LimitExceededException" }, + { + "target": "com.amazonaws.cloudwatchlogs#OperationAbortedException" + }, + { + "target": "com.amazonaws.cloudwatchlogs#ResourceNotFoundException" + }, { "target": "com.amazonaws.cloudwatchlogs#ServiceUnavailableException" } ], "traits": { - "smithy.api#documentation": "

Creates or updates a resource policy allowing other Amazon Web Services services to put log events to\n this account, such as Amazon Route 53. An account can have up to 10 resource policies per Amazon Web Services\n Region.

" + "smithy.api#documentation": "

Creates or updates a resource policy allowing other Amazon Web Services services to put\n log events to this account, such as Amazon Route 53. An account can have up to 10 resource\n policies per Amazon Web Services Region.

" } }, "com.amazonaws.cloudwatchlogs#PutResourcePolicyRequest": { @@ -10347,7 +10792,19 @@ "policyDocument": { "target": "com.amazonaws.cloudwatchlogs#PolicyDocument", "traits": { - "smithy.api#documentation": "

Details of the new policy, including the identity of the principal that is enabled to put logs to this account. This is formatted as a JSON string.\n This parameter is required.

\n

The following example creates a resource policy enabling the Route 53 service to put\n DNS query logs in to the specified log group. Replace \"logArn\" with the ARN of \n your CloudWatch Logs resource, such as a log group or log stream.

\n

CloudWatch Logs also supports aws:SourceArn\n and aws:SourceAccount\ncondition context keys.

\n

In the example resource policy, you would replace the value of SourceArn with\n the resource making the call from Route 53 to CloudWatch Logs. You would also\n replace the value of SourceAccount with the Amazon Web Services account ID making\n that call.

\n

\n

\n {\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Sid\": \"Route53LogsToCloudWatchLogs\",\n \"Effect\": \"Allow\",\n \"Principal\": {\n \"Service\": [\n \"route53.amazonaws.com\"\n ]\n },\n \"Action\": \"logs:PutLogEvents\",\n \"Resource\": \"logArn\",\n \"Condition\": {\n \"ArnLike\": {\n \"aws:SourceArn\": \"myRoute53ResourceArn\"\n },\n \"StringEquals\": {\n \"aws:SourceAccount\": \"myAwsAccountId\"\n }\n }\n }\n ]\n}\n

" + "smithy.api#documentation": "

Details of the new policy, including the identity of the principal that is enabled to\n put logs to this account. This is formatted as a JSON string. This parameter is\n required.

\n

The following example creates a resource policy enabling the Route 53 service to put\n DNS query logs in to the specified log group. Replace \"logArn\" with the ARN of\n your CloudWatch Logs resource, such as a log group or log stream.

\n

CloudWatch Logs also supports aws:SourceArn and aws:SourceAccount condition context keys.

\n

In the example resource policy, you would replace the value of SourceArn with\n the resource making the call from Route 53 to CloudWatch Logs. You would also\n replace the value of SourceAccount with the Amazon Web Services account ID making\n that call.

\n

\n

\n { \"Version\": \"2012-10-17\", \"Statement\": [ { \"Sid\": \"Route53LogsToCloudWatchLogs\",\n \"Effect\": \"Allow\", \"Principal\": { \"Service\": [ \"route53.amazonaws.com\" ] }, \"Action\":\n \"logs:PutLogEvents\", \"Resource\": \"logArn\", \"Condition\": { \"ArnLike\": { \"aws:SourceArn\":\n \"myRoute53ResourceArn\" }, \"StringEquals\": { \"aws:SourceAccount\": \"myAwsAccountId\" } } } ]\n }\n

" + } + }, + "resourceArn": { + "target": "com.amazonaws.cloudwatchlogs#Arn", + "traits": { + "smithy.api#documentation": "

The ARN of the CloudWatch Logs resource to which the resource policy needs to be added\n or attached. Currently only supports LogGroup ARN.

" + } + }, + "expectedRevisionId": { + "target": "com.amazonaws.cloudwatchlogs#ExpectedRevisionId", + "traits": { + "smithy.api#documentation": "

The expected revision ID of the resource policy. Required when resourceArn is\n provided to prevent concurrent modifications. Use null when creating a resource\n policy for the first time.

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

The new policy.

" } + }, + "revisionId": { + "target": "com.amazonaws.cloudwatchlogs#ExpectedRevisionId", + "traits": { + "smithy.api#documentation": "

The revision ID of the created or updated resource policy. Only returned for\n resource-scoped policies.

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

Sets the retention of the specified log group. With a retention policy, you can\n configure the number of days for which to retain log events in the specified log\n group.

\n \n

CloudWatch Logs doesn't immediately delete log events when they reach their retention\n setting. It typically takes up to 72 hours after that before log events are deleted, but in\n rare situations might take longer.

\n

To illustrate, imagine that you change a log group to have a longer retention setting\n when it contains log events that are past the expiration date, but haven't been deleted.\n Those log events will take up to 72 hours to be deleted after the new retention date is\n reached. To make sure that log data is deleted permanently, keep a log group at its lower\n retention setting until 72 hours after the previous retention period ends. Alternatively,\n wait to change the retention setting until you confirm that the earlier log events are\n deleted.

\n

When log events reach their retention setting they are marked for deletion. After\n they are marked for deletion, they do not add to your archival storage costs anymore, even if \n they are not actually deleted until later. These log events marked for deletion are also not \n included when you use an API to retrieve the storedBytes value to see how many bytes a log group is storing.

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

Sets the retention of the specified log group. With a retention policy, you can\n configure the number of days for which to retain log events in the specified log\n group.

\n \n

CloudWatch Logs doesn't immediately delete log events when they reach their retention\n setting. It typically takes up to 72 hours after that before log events are deleted, but in\n rare situations might take longer.

\n

To illustrate, imagine that you change a log group to have a longer retention setting\n when it contains log events that are past the expiration date, but haven't been deleted.\n Those log events will take up to 72 hours to be deleted after the new retention date is\n reached. To make sure that log data is deleted permanently, keep a log group at its lower\n retention setting until 72 hours after the previous retention period ends. Alternatively,\n wait to change the retention setting until you confirm that the earlier log events are\n deleted.

\n

When log events reach their retention setting they are marked for deletion. After they\n are marked for deletion, they do not add to your archival storage costs anymore, even if\n they are not actually deleted until later. These log events marked for deletion are also not\n included when you use an API to retrieve the storedBytes value to see how many\n bytes a log group is storing.

\n
" } }, "com.amazonaws.cloudwatchlogs#PutRetentionPolicyRequest": { @@ -10445,7 +10908,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates or updates a subscription filter and associates it with the specified log\n group. With subscription filters, you can subscribe to a real-time stream of log events\n ingested through PutLogEvents\n and have them delivered to a specific destination. When log events are sent to the receiving\n service, they are Base64 encoded and compressed with the GZIP format.

\n

The following destinations are supported for subscription filters:

\n \n

Each log group can have up to two subscription filters associated with it. If you are\n updating an existing filter, you must specify the correct name in filterName.\n

\n

Using regular expressions in filter patterns is supported. For these filters, \n there is a quotas of quota of two regular expression patterns within a single filter pattern. There\n is also a quota of five regular expression patterns per log group.\n For more information about using regular expressions in filter patterns, \n see \n Filter pattern syntax for metric filters, subscription filters, filter log events, and Live Tail.

\n

To perform a PutSubscriptionFilter operation for any destination except a Lambda function, \n you must also have the \n iam:PassRole permission.

" + "smithy.api#documentation": "

Creates or updates a subscription filter and associates it with the specified log\n group. With subscription filters, you can subscribe to a real-time stream of log events\n ingested through PutLogEvents\n and have them delivered to a specific destination. When log events are sent to the receiving\n service, they are Base64 encoded and compressed with the GZIP format.

\n

The following destinations are supported for subscription filters:

\n \n

Each log group can have up to two subscription filters associated with it. If you are\n updating an existing filter, you must specify the correct name in filterName.

\n

Using regular expressions in filter patterns is supported. For these filters, there is a\n quotas of quota of two regular expression patterns within a single filter pattern. There is\n also a quota of five regular expression patterns per log group. For more information about\n using regular expressions in filter patterns, see Filter pattern syntax for\n metric filters, subscription filters, filter log events, and Live Tail.

\n

To perform a PutSubscriptionFilter operation for any destination except a\n Lambda function, you must also have the iam:PassRole\n permission.

" } }, "com.amazonaws.cloudwatchlogs#PutSubscriptionFilterRequest": { @@ -10475,7 +10938,7 @@ "destinationArn": { "target": "com.amazonaws.cloudwatchlogs#DestinationArn", "traits": { - "smithy.api#documentation": "

The ARN of the destination to deliver matching log events to. Currently, the supported\n destinations are:

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

The ARN of the destination to deliver matching log events to. Currently, the supported\n destinations are:

\n ", "smithy.api#required": {} } }, @@ -10488,14 +10951,26 @@ "distribution": { "target": "com.amazonaws.cloudwatchlogs#Distribution", "traits": { - "smithy.api#documentation": "

The method used to distribute log data to the destination. By default, log data is\n grouped by log stream, but the grouping can be set to random for a more even distribution.\n This property is only applicable when the destination is an Amazon Kinesis data stream.

" + "smithy.api#documentation": "

The method used to distribute log data to the destination. By default, log data is\n grouped by log stream, but the grouping can be set to random for a more even distribution.\n This property is only applicable when the destination is an Amazon Kinesis data stream.\n

" } }, "applyOnTransformedLogs": { "target": "com.amazonaws.cloudwatchlogs#ApplyOnTransformedLogs", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

This parameter is valid only for log groups that have an active log transformer. For more information about\n log transformers, see PutTransformer.

\n

If the log group uses either a log-group level or account-level transformer, and you specify true, the subscription filter\n will be applied on the transformed version of the log events instead of the original ingested log events.

" + "smithy.api#documentation": "

This parameter is valid only for log groups that have an active log transformer. For more\n information about log transformers, see PutTransformer.

\n

If the log group uses either a log-group level or account-level transformer, and you\n specify true, the subscription filter will be applied on the transformed version\n of the log events instead of the original ingested log events.

" + } + }, + "fieldSelectionCriteria": { + "target": "com.amazonaws.cloudwatchlogs#FieldSelectionCriteria", + "traits": { + "smithy.api#documentation": "

A filter expression that specifies which log events should be processed by this subscription filter based on system fields such as source account and source region. Uses selection criteria syntax with operators like =, !=, AND, OR, IN, NOT IN. Example: @aws.region NOT IN [\"cn-north-1\"] or @aws.account = \"123456789012\" AND @aws.region = \"us-east-1\". Maximum length: 2000 characters.

" + } + }, + "emitSystemFields": { + "target": "com.amazonaws.cloudwatchlogs#EmitSystemFields", + "traits": { + "smithy.api#documentation": "

A list of system fields to include in the log events sent to the subscription destination. Valid values are @aws.account and @aws.region. These fields provide source information for centralized log data in the forwarded payload.

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

Creates or updates a log transformer for a single log group. You use log transformers to transform log events into\n a different format, making them easier for you to process and analyze. You can also transform logs from different sources into standardized formats that \n contains\n relevant, source-specific information.

\n

After you have created a transformer, \n CloudWatch Logs performs the transformations at the time of log ingestion. You can then refer to the transformed versions of the logs during\n operations such as querying with CloudWatch Logs Insights or creating metric filters or subscription filers.

\n

You can also use a transformer to copy metadata from metadata keys into the log events themselves. This metadata can include log group name, \n log stream name, account ID and Region.

\n

A transformer for a log group is a series of processors, where each processor applies one type of transformation to the log events\n ingested into this log group. The processors work one after another, in the order that you list them, like a pipeline. For more information about the available processors to use in a transformer, see \n Processors that you can use.

\n

Having log events in standardized format enables visibility across your applications for your log analysis, reporting, and alarming needs. \n CloudWatch Logs provides transformation for common log types with out-of-the-box transformation templates for major Amazon Web Services log sources such \n as VPC flow logs, Lambda, and Amazon RDS. You can use pre-built transformation templates or create custom transformation policies.

\n

You can create transformers only for the log groups in the Standard log class.

\n

You can also set up a transformer at the account level. For more information, see \n PutAccountPolicy. If there is both a \n log-group level transformer created with PutTransformer and an account-level transformer that could apply to the same log \n group, the log group uses only the log-group level transformer. It ignores the account-level transformer.

" + "smithy.api#documentation": "

Creates or updates a log transformer for a single log group. You use\n log transformers to transform log events into a different format, making them easier for you\n to process and analyze. You can also transform logs from different sources into standardized\n formats that contains relevant, source-specific information.

\n

After you have created a transformer, CloudWatch Logs performs the transformations at\n the time of log ingestion. You can then refer to the transformed versions of the logs during\n operations such as querying with CloudWatch Logs Insights or creating metric filters or\n subscription filers.

\n

You can also use a transformer to copy metadata from metadata keys into the log events\n themselves. This metadata can include log group name, log stream name, account ID and\n Region.

\n

A transformer for a log group is a series of processors, where each processor applies one\n type of transformation to the log events ingested into this log group. The processors work one\n after another, in the order that you list them, like a pipeline. For more information about\n the available processors to use in a transformer, see Processors that you can use.

\n

Having log events in standardized format enables visibility across your applications for\n your log analysis, reporting, and alarming needs. CloudWatch Logs provides transformation\n for common log types with out-of-the-box transformation templates for major Amazon Web Services\n log sources such as VPC flow logs, Lambda, and Amazon RDS. You can use\n pre-built transformation templates or create custom transformation policies.

\n

You can create transformers only for the log groups in the Standard log class.

\n

You can also set up a transformer at the account level. For more information, see PutAccountPolicy. If there is both a log-group level transformer created with\n PutTransformer and an account-level transformer that could apply to the same\n log group, the log group uses only the log-group level transformer. It ignores the\n account-level transformer.

" } }, "com.amazonaws.cloudwatchlogs#PutTransformerRequest": { @@ -10548,7 +11023,7 @@ "transformerConfig": { "target": "com.amazonaws.cloudwatchlogs#Processors", "traits": { - "smithy.api#documentation": "

This structure contains the configuration of this log transformer. A log transformer is an array of processors,\n where each processor applies one type of transformation to the log events that are ingested.

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

This structure contains the configuration of this log transformer. A log transformer is an\n array of processors, where each processor applies one type of transformation to the log events\n that are ingested.

", "smithy.api#required": {} } } @@ -10606,7 +11081,7 @@ "queryLanguage": { "target": "com.amazonaws.cloudwatchlogs#QueryLanguage", "traits": { - "smithy.api#documentation": "

The query language used for this query. For more information about the query languages that CloudWatch Logs supports, \n see Supported query languages.

" + "smithy.api#documentation": "

The query language used for this query. For more information about the query languages\n that CloudWatch Logs supports, see Supported query\n languages.

" } }, "queryDefinitionId": { @@ -10624,7 +11099,7 @@ "queryString": { "target": "com.amazonaws.cloudwatchlogs#QueryDefinitionString", "traits": { - "smithy.api#documentation": "

The query string to use for this definition.\n For more information, see CloudWatch Logs Insights Query Syntax.

" + "smithy.api#documentation": "

The query string to use for this definition. For more information, see CloudWatch Logs\n Insights Query Syntax.

" } }, "lastModified": { @@ -10636,12 +11111,12 @@ "logGroupNames": { "target": "com.amazonaws.cloudwatchlogs#LogGroupNames", "traits": { - "smithy.api#documentation": "

If this query definition contains a list of log groups that it is limited to, that list appears here.

" + "smithy.api#documentation": "

If this query definition contains a list of log groups that it is limited to, that list\n appears here.

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

This structure contains details about a saved CloudWatch Logs Insights query definition.

" + "smithy.api#documentation": "

This structure contains details about a saved CloudWatch Logs Insights query\n definition.

" } }, "com.amazonaws.cloudwatchlogs#QueryDefinitionList": { @@ -10672,7 +11147,7 @@ "type": "string", "traits": { "smithy.api#length": { - "min": 0, + "min": 1, "max": 256 } } @@ -10683,7 +11158,7 @@ "queryLanguage": { "target": "com.amazonaws.cloudwatchlogs#QueryLanguage", "traits": { - "smithy.api#documentation": "

The query language used for this query. For more information about the query languages that CloudWatch Logs supports, \n see Supported query languages.

" + "smithy.api#documentation": "

The query language used for this query. For more information about the query languages\n that CloudWatch Logs supports, see Supported query\n languages.

" } }, "queryId": { @@ -10701,7 +11176,7 @@ "status": { "target": "com.amazonaws.cloudwatchlogs#QueryStatus", "traits": { - "smithy.api#documentation": "

The status of this query. Possible values are Cancelled,\n Complete, Failed, Running, Scheduled, and Unknown.

" + "smithy.api#documentation": "

The status of this query. Possible values are Cancelled,\n Complete, Failed, Running, Scheduled,\n and Unknown.

" } }, "createTime": { @@ -10718,7 +11193,7 @@ } }, "traits": { - "smithy.api#documentation": "

Information about one CloudWatch Logs Insights query that matches the request in a DescribeQueries operation.

" + "smithy.api#documentation": "

Information about one CloudWatch Logs Insights query that matches the request in a\n DescribeQueries operation.

" } }, "com.amazonaws.cloudwatchlogs#QueryInfoList": { @@ -10786,7 +11261,7 @@ "target": "com.amazonaws.cloudwatchlogs#StatsValue", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

An estimate of the number of log events that were skipped when processing this query, \n because the query contained an indexed field. Skipping these entries lowers query costs and \n improves the query performance time.\n For more information about field indexes, see \n PutIndexPolicy.

" + "smithy.api#documentation": "

An estimate of the number of log events that were skipped when processing this query,\n because the query contained an indexed field. Skipping these entries lowers query costs and\n improves the query performance time. For more information about field indexes, see PutIndexPolicy.

" } }, "bytesScanned": { @@ -10800,7 +11275,7 @@ "target": "com.amazonaws.cloudwatchlogs#StatsValue", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

An estimate of the number of bytes in the log events that were skipped when processing this query, \n because the query contained an indexed field. Skipping these entries lowers query costs and improves the query performance time. For more information about field indexes, see \n PutIndexPolicy.

" + "smithy.api#documentation": "

An estimate of the number of bytes in the log events that were skipped when processing\n this query, because the query contained an indexed field. Skipping these entries lowers query\n costs and improves the query performance time. For more information about field indexes, see\n PutIndexPolicy.

" } }, "logGroupsScanned": { @@ -10812,7 +11287,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the number of log events scanned by the query, the number of log events that matched the \n query criteria, and the total number of bytes in the log events that were scanned.

\n

If the query involved log groups that have field index policies, the estimated number of \n skipped log events and the total bytes of those skipped log events are included. Using field indexes to skip log events in\n queries reduces scan volume and improves performance. For more information, see \n Create field indexes to improve query performance and reduce scan volume.

" + "smithy.api#documentation": "

Contains the number of log events scanned by the query, the number of log events that\n matched the query criteria, and the total number of bytes in the log events that were\n scanned.

\n

If the query involved log groups that have field index policies, the estimated number of\n skipped log events and the total bytes of those skipped log events are included. Using field\n indexes to skip log events in queries reduces scan volume and improves performance. For more\n information, see Create field indexes\n to improve query performance and reduce scan volume.

" } }, "com.amazonaws.cloudwatchlogs#QueryStatus": { @@ -10886,18 +11361,18 @@ "name": { "target": "com.amazonaws.cloudwatchlogs#FieldHeader", "traits": { - "smithy.api#documentation": "

The name to use when specifying this record field in a \n CreateDelivery or \n UpdateDeliveryConfiguration operation.

" + "smithy.api#documentation": "

The name to use when specifying this record field in a CreateDelivery or UpdateDeliveryConfiguration operation.

" } }, "mandatory": { "target": "com.amazonaws.cloudwatchlogs#Boolean", "traits": { - "smithy.api#documentation": "

If this is true, the record field must be present in the recordFields parameter provided to a \n CreateDelivery or \n UpdateDeliveryConfiguration operation.

" + "smithy.api#documentation": "

If this is true, the record field must be present in the\n recordFields parameter provided to a CreateDelivery or UpdateDeliveryConfiguration operation.

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

A structure that represents a valid record field header and whether it is mandatory.

" + "smithy.api#documentation": "

A structure that represents a valid record field header and whether it is\n mandatory.

" } }, "com.amazonaws.cloudwatchlogs#RecordFields": { @@ -10918,13 +11393,13 @@ "errorType": { "target": "com.amazonaws.cloudwatchlogs#EntityRejectionErrorType", "traits": { - "smithy.api#documentation": "

The type of error that caused the rejection of the entity when calling\n PutLogEvents.

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

The type of error that caused the rejection of the entity when calling\n PutLogEvents.

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

If an entity is rejected when a PutLogEvents request was made, this\n includes details about the reason for the rejection.

" + "smithy.api#documentation": "

If an entity is rejected when a PutLogEvents request was made, this includes\n details about the reason for the rejection.

" } }, "com.amazonaws.cloudwatchlogs#RejectedLogEventsInfo": { @@ -10986,12 +11461,12 @@ "target": "com.amazonaws.cloudwatchlogs#OverwriteIfExists", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Specifies whether to overwrite the existing value if the destination key already exists. The default is false\n

" + "smithy.api#documentation": "

Specifies whether to overwrite the existing value if the destination key already exists.\n The default is false\n

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

This object defines one key that will be renamed with the \n renameKey processor.

" + "smithy.api#documentation": "

This object defines one key that will be renamed with the renameKey processor.

" } }, "com.amazonaws.cloudwatchlogs#RenameKeys": { @@ -11000,13 +11475,13 @@ "entries": { "target": "com.amazonaws.cloudwatchlogs#RenameKeyEntries", "traits": { - "smithy.api#documentation": "

An array of RenameKeyEntry objects, where each object contains the information about a single key to rename.

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

An array of RenameKeyEntry objects, where each object contains the\n information about a single key to rename.

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

Use this processor to rename keys in a log event.

\n

For more information about this processor including examples, see \n renameKeys in the CloudWatch Logs User Guide.

" + "smithy.api#documentation": "

Use this processor to rename keys in a log event.

\n

For more information about this processor including examples, see renameKeys in the CloudWatch Logs User Guide.

" } }, "com.amazonaws.cloudwatchlogs#RenameTo": { @@ -11107,10 +11582,28 @@ "traits": { "smithy.api#documentation": "

Timestamp showing when this policy was last updated, expressed as the number of\n milliseconds after Jan 1, 1970 00:00:00 UTC.

" } + }, + "policyScope": { + "target": "com.amazonaws.cloudwatchlogs#PolicyScope", + "traits": { + "smithy.api#documentation": "

Specifies scope of the resource policy. Valid values are ACCOUNT or RESOURCE.

" + } + }, + "resourceArn": { + "target": "com.amazonaws.cloudwatchlogs#Arn", + "traits": { + "smithy.api#documentation": "

The ARN of the CloudWatch Logs resource to which the resource policy is attached. Only\n populated for resource-scoped policies.

" + } + }, + "revisionId": { + "target": "com.amazonaws.cloudwatchlogs#ExpectedRevisionId", + "traits": { + "smithy.api#documentation": "

The revision ID of the resource policy. Only populated for resource-scoped\n policies.

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

A policy enabling one or more entities to put logs to a log group in this account.

" + "smithy.api#documentation": "

A policy enabling one or more entities to put logs to a log group in this\n account.

" } }, "com.amazonaws.cloudwatchlogs#ResourceType": { @@ -11152,7 +11645,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains one field from one log event returned by a CloudWatch Logs Insights query, along with the value of that field.

\n

For more information about the fields that are \n generated by CloudWatch logs, see \n Supported Logs and Discovered Fields.

" + "smithy.api#documentation": "

Contains one field from one log event returned by a CloudWatch Logs Insights query, along\n with the value of that field.

\n

For more information about the fields that are generated by CloudWatch logs, see Supported\n Logs and Discovered Fields.

" } }, "com.amazonaws.cloudwatchlogs#ResultRows": { @@ -11175,18 +11668,18 @@ "suffixPath": { "target": "com.amazonaws.cloudwatchlogs#DeliverySuffixPath", "traits": { - "smithy.api#documentation": "

This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables \n to use in the suffix path will vary by each log source. To find the values supported for the suffix path for each log source, \n use the DescribeConfigurationTemplates operation and check the \n allowedSuffixPathFields field in the response.

" + "smithy.api#documentation": "

This string allows re-configuring the S3 object prefix to contain either static or\n variable sections. The valid variables to use in the suffix path will vary by each log source.\n To find the values supported for the suffix path for each log source, use the DescribeConfigurationTemplates operation and check the\n allowedSuffixPathFields field in the response.

" } }, "enableHiveCompatiblePath": { "target": "com.amazonaws.cloudwatchlogs#Boolean", "traits": { - "smithy.api#documentation": "

This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive.

" + "smithy.api#documentation": "

This parameter causes the S3 objects that contain delivered logs to use a prefix structure\n that allows for integration with Apache Hive.

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

This structure contains delivery configurations that apply only when the delivery destination resource is an S3 bucket.

" + "smithy.api#documentation": "

This structure contains delivery configurations that apply only when the delivery\n destination resource is an S3 bucket.

" } }, "com.amazonaws.cloudwatchlogs#Scope": { @@ -11300,7 +11793,7 @@ } }, "traits": { - "smithy.api#documentation": "

This exception is returned in a Live Tail stream when the Live Tail session times out. Live Tail sessions time\n out after three hours.

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

This exception is returned in a Live Tail stream when the Live Tail session times out.\n Live Tail sessions time out after three hours.

", "smithy.api#error": "client" } }, @@ -11327,13 +11820,22 @@ "entries": { "target": "com.amazonaws.cloudwatchlogs#SplitStringEntries", "traits": { - "smithy.api#documentation": "

An array of SplitStringEntry objects, where each object contains the information about one field to split.

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

An array of SplitStringEntry objects, where each object contains the\n information about one field to split.

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

Use this processor to split a field into an array of strings using a delimiting character.

\n

For more information about this processor including examples, see \n splitString in the CloudWatch Logs User Guide.

" + "smithy.api#documentation": "

Use this processor to split a field into an array of strings using a delimiting\n character.

\n

For more information about this processor including examples, see splitString in the CloudWatch Logs User Guide.

" + } + }, + "com.amazonaws.cloudwatchlogs#SplitStringDelimiter": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + } } }, "com.amazonaws.cloudwatchlogs#SplitStringEntries": { @@ -11359,7 +11861,7 @@ } }, "delimiter": { - "target": "com.amazonaws.cloudwatchlogs#Delimiter", + "target": "com.amazonaws.cloudwatchlogs#SplitStringDelimiter", "traits": { "smithy.api#documentation": "

The separator characters to split the string entry on.

", "smithy.api#required": {} @@ -11367,7 +11869,7 @@ } }, "traits": { - "smithy.api#documentation": "

This object defines one log field that will be split with the \n splitString processor.

" + "smithy.api#documentation": "

This object defines one log field that will be split with the splitString processor.

" } }, "com.amazonaws.cloudwatchlogs#StandardUnit": { @@ -11566,7 +12068,7 @@ } ], "traits": { - "smithy.api#documentation": "

Starts a Live Tail streaming session for one or more log groups. A Live Tail session returns a stream of \n log events that have\n been recently ingested in the log groups. For more information, see \n Use Live Tail to view logs in near real time.\n

\n

The response to this operation is a response stream, over which \n the server sends live log events and the client receives them.

\n

The following objects are sent over the stream:

\n \n \n

You can end a session before it times out by closing the session stream or by closing the client that is receiving the \n stream. The session also ends if the established connection between the client and the server breaks.

\n
\n

For examples of using an SDK to start a Live Tail session, see \n \n Start a Live Tail session using an Amazon Web Services SDK.

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

Starts a Live Tail streaming session for one or more log groups. A Live Tail session\n returns a stream of log events that have been recently ingested in the log groups. For more\n information, see Use Live Tail to view logs\n in near real time.

\n

The response to this operation is a response stream, over which the server sends live log\n events and the client receives them.

\n

The following objects are sent over the stream:

\n \n \n

The StartLiveTail API routes requests to\n streaming-logs.Region.amazonaws.com using SDK host\n prefix injection. VPC endpoint support is not available for this API.

\n
\n \n

You can end a session before it times out by closing the session stream or by closing\n the client that is receiving the stream. The session also ends if the established connection\n between the client and the server breaks.

\n
\n

For examples of using an SDK to start a Live Tail session, see Start\n a Live Tail session using an Amazon Web Services SDK.

", "smithy.api#endpoint": { "hostPrefix": "streaming-" } @@ -11590,26 +12092,26 @@ "logGroupIdentifiers": { "target": "com.amazonaws.cloudwatchlogs#StartLiveTailLogGroupIdentifiers", "traits": { - "smithy.api#documentation": "

An array where each item in the array is a log group to include in the Live Tail session.

\n

Specify each log group by its ARN.

\n

If you specify an ARN, the ARN can't end with an asterisk (*).

\n \n

You can include up to 10 log groups.

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

An array where each item in the array is a log group to include in the Live Tail\n session.

\n

Specify each log group by its ARN.

\n

If you specify an ARN, the ARN can't end with an asterisk (*).

\n \n

You can include up to 10 log groups.

\n
", "smithy.api#required": {} } }, "logStreamNames": { "target": "com.amazonaws.cloudwatchlogs#InputLogStreamNames", "traits": { - "smithy.api#documentation": "

If you specify this parameter, then only log events in the log streams that you specify here are \n included in the Live Tail session.

\n

If you specify this field, you can't also specify the logStreamNamePrefixes field.

\n \n

You can specify this parameter only if you specify only one log group in logGroupIdentifiers.

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

If you specify this parameter, then only log events in the log streams that you specify\n here are included in the Live Tail session.

\n

If you specify this field, you can't also specify the logStreamNamePrefixes\n field.

\n \n

You can specify this parameter only if you specify only one log group in\n logGroupIdentifiers.

\n
" } }, "logStreamNamePrefixes": { "target": "com.amazonaws.cloudwatchlogs#InputLogStreamNames", "traits": { - "smithy.api#documentation": "

If you specify this parameter, then only log events in the log streams that have names that start with the \n prefixes that you specify here are \n included in the Live Tail session.

\n

If you specify this field, you can't also specify the logStreamNames field.

\n \n

You can specify this parameter only if you specify only one log group in logGroupIdentifiers.

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

If you specify this parameter, then only log events in the log streams that have names\n that start with the prefixes that you specify here are included in the Live Tail\n session.

\n

If you specify this field, you can't also specify the logStreamNames\n field.

\n \n

You can specify this parameter only if you specify only one log group in\n logGroupIdentifiers.

\n
" } }, "logEventFilterPattern": { "target": "com.amazonaws.cloudwatchlogs#FilterPattern", "traits": { - "smithy.api#documentation": "

An optional pattern to use to filter the results to include only log events that match the pattern.\n For example, a filter pattern of error 404 causes only log events that include both error \n and 404 to be included in the Live Tail stream.

\n

Regular expression filter patterns are supported.

\n

For more information about filter pattern syntax, see Filter and Pattern Syntax.

" + "smithy.api#documentation": "

An optional pattern to use to filter the results to include only log events that match the\n pattern. For example, a filter pattern of error 404 causes only log events that\n include both error and 404 to be included in the Live Tail\n stream.

\n

Regular expression filter patterns are supported.

\n

For more information about filter pattern syntax, see Filter and Pattern\n Syntax.

" } } }, @@ -11623,7 +12125,7 @@ "responseStream": { "target": "com.amazonaws.cloudwatchlogs#StartLiveTailResponseStream", "traits": { - "smithy.api#documentation": "

An object that includes the stream returned by your request. It can include both log events and exceptions.

" + "smithy.api#documentation": "

An object that includes the stream returned by your request. It can include both log\n events and exceptions.

" } } }, @@ -11637,7 +12139,7 @@ "sessionStart": { "target": "com.amazonaws.cloudwatchlogs#LiveTailSessionStart", "traits": { - "smithy.api#documentation": "

This object contains information about this Live Tail session, including the log groups included and the \n log stream filters, if any.

" + "smithy.api#documentation": "

This object contains information about this Live Tail session, including the log groups\n included and the log stream filters, if any.

" } }, "sessionUpdate": { @@ -11649,7 +12151,7 @@ "SessionTimeoutException": { "target": "com.amazonaws.cloudwatchlogs#SessionTimeoutException", "traits": { - "smithy.api#documentation": "

This exception is returned in the stream when the Live Tail session times out. Live Tail sessions time\n out after three hours.

" + "smithy.api#documentation": "

This exception is returned in the stream when the Live Tail session times out. Live Tail\n sessions time out after three hours.

" } }, "SessionStreamingException": { @@ -11660,7 +12162,7 @@ } }, "traits": { - "smithy.api#documentation": "

This object includes the stream returned by your \n StartLiveTail\n request.

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

This object includes the stream returned by your StartLiveTail\n request.

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

Starts a query of one or more log groups using CloudWatch Logs Insights. You specify the log groups\n and time range to query and the query string to use.

\n

For more information, see CloudWatch Logs Insights Query Syntax.

\n

After you run a query using StartQuery, the query results are stored by CloudWatch Logs. \n You can use GetQueryResults to retrieve\n the results of a query, using the queryId that StartQuery returns.\n

\n \n

To specify the log groups to query, a StartQuery operation must include one of the following:

\n \n
\n

If you have associated a KMS key with the query results in this account, \n then \n StartQuery uses that key to \n encrypt the results when it stores them. If no key is associated with query results, the query results are \n encrypted with the default CloudWatch Logs encryption method.

\n

Queries time out after 60 minutes of runtime. If your queries are timing out, reduce the\n time range being searched or partition your query into a number of queries.

\n

If you are using CloudWatch cross-account observability, you can use this operation in a\n monitoring account to start a query in a linked source account. For more information, see\n CloudWatch\n cross-account observability. For a cross-account StartQuery operation,\n the query definition must be defined in the monitoring account.

\n

You can have up to 30 concurrent CloudWatch Logs insights queries, including queries\n that have been added to dashboards.

" + "smithy.api#documentation": "

Starts a query of one or more log groups using CloudWatch Logs Insights. You specify\n the log groups and time range to query and the query string to use.

\n

For more information, see CloudWatch Logs Insights Query\n Syntax.

\n

After you run a query using StartQuery, the query results are stored by\n CloudWatch Logs. You can use GetQueryResults to retrieve the results of a query, using the queryId\n that StartQuery returns.

\n \n

To specify the log groups to query, a StartQuery operation must include one\n of the following:

\n \n
\n

If you have associated a KMS key with the query results in this\n account, then StartQuery uses\n that key to encrypt the results when it stores them. If no key is associated with query\n results, the query results are encrypted with the default CloudWatch Logs encryption\n method.

\n

Queries time out after 60 minutes of runtime. If your queries are timing out, reduce the\n time range being searched or partition your query into a number of queries.

\n

If you are using CloudWatch cross-account observability, you can use this operation\n in a monitoring account to start a query in a linked source account. For more information, see\n CloudWatch cross-account observability. For a cross-account StartQuery\n operation, the query definition must be defined in the monitoring account.

\n

You can have up to 30 concurrent CloudWatch Logs insights queries, including queries\n that have been added to dashboards.

" } }, "com.amazonaws.cloudwatchlogs#StartQueryRequest": { @@ -11699,25 +12201,25 @@ "queryLanguage": { "target": "com.amazonaws.cloudwatchlogs#QueryLanguage", "traits": { - "smithy.api#documentation": "

Specify the query language to use for this query. The options are Logs Insights QL, OpenSearch PPL, and OpenSearch SQL. For more information about the query languages that CloudWatch Logs supports, \n see Supported query languages.

" + "smithy.api#documentation": "

Specify the query language to use for this query. The options are Logs Insights QL,\n OpenSearch PPL, and OpenSearch SQL. For more information about the query languages that\n CloudWatch Logs supports, see Supported query\n languages.

" } }, "logGroupName": { "target": "com.amazonaws.cloudwatchlogs#LogGroupName", "traits": { - "smithy.api#documentation": "

The log group on which to perform the query.

\n \n

A StartQuery operation must include exactly one of the following\n parameters: logGroupName, logGroupNames, or\n logGroupIdentifiers. The exception is queries using the OpenSearch Service SQL query\n language, where you specify the log group names inside the querystring instead of here.

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

The log group on which to perform the query.

\n \n

A StartQuery operation must include exactly one of the following\n parameters: logGroupName, logGroupNames, or\n logGroupIdentifiers. The exception is queries using the OpenSearch Service\n SQL query language, where you specify the log group names inside the\n querystring instead of here.

\n
" } }, "logGroupNames": { "target": "com.amazonaws.cloudwatchlogs#LogGroupNames", "traits": { - "smithy.api#documentation": "

The list of log groups to be queried. You can include up to 50 log groups.

\n \n

A StartQuery operation must include exactly one of the following\n parameters: logGroupName, logGroupNames, or\n logGroupIdentifiers. The exception is queries using the OpenSearch Service SQL query\n language, where you specify the log group names inside the querystring instead of here.

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

The list of log groups to be queried. You can include up to 50 log groups.

\n \n

A StartQuery operation must include exactly one of the following\n parameters: logGroupName, logGroupNames, or\n logGroupIdentifiers. The exception is queries using the OpenSearch Service\n SQL query language, where you specify the log group names inside the\n querystring instead of here.

\n
" } }, "logGroupIdentifiers": { "target": "com.amazonaws.cloudwatchlogs#LogGroupIdentifiers", "traits": { - "smithy.api#documentation": "

The list of log groups to query. You can include up to 50 log groups.

\n

You can specify them by the log group name or ARN. If a log group that you're querying is\n in a source account and you're using a monitoring account, you must specify the ARN of the log\n group here. The query definition must also be defined in the monitoring account.

\n

If you specify an ARN, use the format\n arn:aws:logs:region:account-id:log-group:log_group_name Don't include an * at the end.

\n

A StartQuery operation must include exactly one of the following parameters:\n logGroupName, logGroupNames, or logGroupIdentifiers. The exception is queries using the OpenSearch Service SQL query\n language, where you specify the log group names inside the querystring instead of here.

" + "smithy.api#documentation": "

The list of log groups to query. You can include up to 50 log groups.

\n

You can specify them by the log group name or ARN. If a log group that you're querying is\n in a source account and you're using a monitoring account, you must specify the ARN of the log\n group here. The query definition must also be defined in the monitoring account.

\n

If you specify an ARN, use the format\n arn:aws:logs:region:account-id:log-group:log_group_name\n Don't include an * at the end.

\n

A StartQuery operation must include exactly one of the following parameters:\n logGroupName, logGroupNames, or logGroupIdentifiers.\n The exception is queries using the OpenSearch Service SQL query language, where you specify\n the log group names inside the querystring instead of here.

" } }, "startTime": { @@ -11737,14 +12239,14 @@ "queryString": { "target": "com.amazonaws.cloudwatchlogs#QueryString", "traits": { - "smithy.api#documentation": "

The query string to use.\n For more information, see CloudWatch Logs Insights Query Syntax.

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

The query string to use. For more information, see CloudWatch Logs Insights Query\n Syntax.

", "smithy.api#required": {} } }, "limit": { "target": "com.amazonaws.cloudwatchlogs#EventsLimit", "traits": { - "smithy.api#documentation": "

The maximum number of log events to return in the query. If the query string uses the fields command,\n only the specified fields and their values are returned. The default is 10,000.

" + "smithy.api#documentation": "

The maximum number of log events to return in the query. If the query string uses the\n fields command, only the specified fields and their values are returned. The\n default is 10,000.

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

Stops a CloudWatch Logs Insights query that is in progress. If the query has already ended, the operation\n returns an error indicating that the specified query is not running.

" + "smithy.api#documentation": "

Stops a CloudWatch Logs Insights query that is in progress. If the query has already\n ended, the operation returns an error indicating that the specified query is not\n running.

" } }, "com.amazonaws.cloudwatchlogs#StopQueryRequest": { @@ -11893,7 +12395,7 @@ "target": "com.amazonaws.cloudwatchlogs#ApplyOnTransformedLogs", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

This parameter is valid only for log groups that have an active log transformer. For more information about\n log transformers, see PutTransformer.

\n

If this value is true, the subscription filter\n is applied on the transformed version of the log events instead of the original ingested log events.

" + "smithy.api#documentation": "

This parameter is valid only for log groups that have an active log transformer. For more\n information about log transformers, see PutTransformer.

\n

If this value is true, the subscription filter is applied on the transformed\n version of the log events instead of the original ingested log events.

" } }, "creationTime": { @@ -11901,6 +12403,18 @@ "traits": { "smithy.api#documentation": "

The creation time of the subscription filter, expressed as the number of milliseconds\n after Jan 1, 1970 00:00:00 UTC.

" } + }, + "fieldSelectionCriteria": { + "target": "com.amazonaws.cloudwatchlogs#FieldSelectionCriteria", + "traits": { + "smithy.api#documentation": "

The filter expression that specifies which log events are processed by this subscription filter based on system fields. Returns the fieldSelectionCriteria value if it was specified when the subscription filter was created.

" + } + }, + "emitSystemFields": { + "target": "com.amazonaws.cloudwatchlogs#EmitSystemFields", + "traits": { + "smithy.api#documentation": "

The list of system fields that are included in the log events sent to the subscription destination. Returns the emitSystemFields value if it was specified when the subscription filter was created.

" + } } }, "traits": { @@ -11919,13 +12433,13 @@ "entries": { "target": "com.amazonaws.cloudwatchlogs#SubstituteStringEntries", "traits": { - "smithy.api#documentation": "

An array of objects, where each object contains the information about one key to match and replace.

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

An array of objects, where each object contains the information about one key to match and\n replace.

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

This processor matches a key’s value against a regular expression and replaces all matches with a replacement string.

\n

For more information about this processor including examples, see \n substituteString in the CloudWatch Logs User Guide.

" + "smithy.api#documentation": "

This processor matches a key’s value against a regular expression and replaces all matches\n with a replacement string.

\n

For more information about this processor including examples, see substituteString in the CloudWatch Logs User Guide.

" } }, "com.amazonaws.cloudwatchlogs#SubstituteStringEntries": { @@ -11953,7 +12467,7 @@ "from": { "target": "com.amazonaws.cloudwatchlogs#FromKey", "traits": { - "smithy.api#documentation": "

The regular expression string to be replaced. Special regex characters such as [ and ] must be escaped using \\\\ \n when using double quotes and with \\ when using single quotes. For more information, \n see \n Class Pattern on the Oracle web site.

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

The regular expression string to be replaced. Special regex characters such as [ and ]\n must be escaped using \\\\ when using double quotes and with \\ when using single quotes. For\n more information, see Class Pattern on the Oracle web site.

", "smithy.api#required": {} } }, @@ -11966,7 +12480,7 @@ } }, "traits": { - "smithy.api#documentation": "

This object defines one log field key that will be replaced using the \n substituteString processor.

" + "smithy.api#documentation": "

This object defines one log field key that will be replaced using the substituteString processor.

" } }, "com.amazonaws.cloudwatchlogs#Success": { @@ -11982,7 +12496,7 @@ "target": "com.amazonaws.cloudwatchlogs#Integer", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

Specifies the number of seconds, minutes or hours to suppress this anomaly. There is no maximum.

" + "smithy.api#documentation": "

Specifies the number of seconds, minutes or hours to suppress this anomaly. There is no\n maximum.

" } }, "suppressionUnit": { @@ -11993,7 +12507,7 @@ } }, "traits": { - "smithy.api#documentation": "

If you are suppressing an anomaly temporariliy, this structure defines how long the suppression period\n is to be.

" + "smithy.api#documentation": "

If you are suppressing an anomaly temporariliy, this structure defines how long the\n suppression period is to be.

" } }, "com.amazonaws.cloudwatchlogs#SuppressionState": { @@ -12053,6 +12567,9 @@ } } }, + "com.amazonaws.cloudwatchlogs#SystemField": { + "type": "string" + }, "com.amazonaws.cloudwatchlogs#TagKey": { "type": "string", "traits": { @@ -12106,7 +12623,7 @@ "smithy.api#deprecated": { "message": "Please use the generic tagging API TagResource" }, - "smithy.api#documentation": "\n

The TagLogGroup operation is on the path to deprecation. We recommend that you use \n TagResource instead.

\n
\n

Adds or updates the specified tags for the specified log group.

\n

To list the tags for a log group, use ListTagsForResource.\n To remove tags, use UntagResource.

\n

For more information about tags, see Tag Log Groups in Amazon CloudWatch Logs\n in the Amazon CloudWatch Logs User Guide.

\n

CloudWatch Logs doesn't support IAM policies that prevent users from assigning specified tags to \n log groups using the aws:Resource/key-name\n or aws:TagKeys condition keys. \n For more information about using tags to control access, see \n Controlling access to Amazon Web Services resources using tags.

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

The TagLogGroup operation is on the path to deprecation. We recommend that you use\n TagResource\n instead.

\n
\n

Adds or updates the specified tags for the specified log group.

\n

To list the tags for a log group, use ListTagsForResource. To remove tags, use UntagResource.

\n

For more information about tags, see Tag Log Groups in Amazon CloudWatch Logs in the Amazon CloudWatch Logs\n User Guide.

\n

CloudWatch Logs doesn't support IAM policies that prevent users from assigning specified\n tags to log groups using the aws:Resource/key-name\n or\n aws:TagKeys condition keys. For more information about using tags to control\n access, see Controlling access to Amazon Web Services resources using tags.

" } }, "com.amazonaws.cloudwatchlogs#TagLogGroupRequest": { @@ -12157,7 +12674,7 @@ } ], "traits": { - "smithy.api#documentation": "

Assigns one or more tags (key-value pairs) to the specified CloudWatch Logs resource. \n Currently, the only CloudWatch Logs resources that \n can be tagged are log groups and destinations.

\n

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

\n

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

\n

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

\n

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

" + "smithy.api#documentation": "

Assigns one or more tags (key-value pairs) to the specified CloudWatch Logs resource.\n Currently, the only CloudWatch Logs resources that can be tagged are log groups and\n destinations.

\n

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

\n

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

\n

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

\n

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

" } }, "com.amazonaws.cloudwatchlogs#TagResourceRequest": { @@ -12166,7 +12683,7 @@ "resourceArn": { "target": "com.amazonaws.cloudwatchlogs#AmazonResourceName", "traits": { - "smithy.api#documentation": "

The ARN of the resource that you're adding tags to.

\n

The ARN format of a log group is \n arn:aws:logs:Region:account-id:log-group:log-group-name\n \n

\n

The ARN format of a destination is \n arn:aws:logs:Region:account-id:destination:destination-name\n \n

\n

For more information about ARN format, see CloudWatch Logs \n resources and operations.

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

The ARN of the resource that you're adding tags to.

\n

The ARN format of a log group is\n arn:aws:logs:Region:account-id:log-group:log-group-name\n \n

\n

The ARN format of a destination is\n arn:aws:logs:Region:account-id:destination:destination-name\n \n

\n

For more information about ARN format, see CloudWatch Logs\n resources and operations.

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

Use this operation to test a log transformer. You enter the transformer configuration and a set of log events to test with. The operation\n responds with an array that includes the original log events and the transformed versions.

" + "smithy.api#documentation": "

Use this operation to test a log transformer. You enter the transformer configuration and\n a set of log events to test with. The operation responds with an array that includes the\n original log events and the transformed versions.

" } }, "com.amazonaws.cloudwatchlogs#TestTransformerRequest": { @@ -12337,7 +12854,7 @@ "transformerConfig": { "target": "com.amazonaws.cloudwatchlogs#Processors", "traits": { - "smithy.api#documentation": "

This structure contains the configuration of this log transformer that you want to test. A log transformer is an array of processors,\n where each processor applies one type of transformation to the log events that are ingested.

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

This structure contains the configuration of this log transformer that you want to test. A\n log transformer is an array of processors, where each processor applies one type of\n transformation to the log events that are ingested.

", "smithy.api#required": {} } }, @@ -12359,7 +12876,7 @@ "transformedLogs": { "target": "com.amazonaws.cloudwatchlogs#TransformedLogs", "traits": { - "smithy.api#documentation": "

An array where each member of the array includes both the original version and the transformed version of one of the log events that you input.

" + "smithy.api#documentation": "

An array where each member of the array includes both the original version and the\n transformed version of one of the log events that you input.

" } } }, @@ -12472,7 +12989,7 @@ } }, "traits": { - "smithy.api#documentation": "

This structure contains information for one log event that\n has been processed by a log transformer.

" + "smithy.api#documentation": "

This structure contains information for one log event that has been processed by a log\n transformer.

" } }, "com.amazonaws.cloudwatchlogs#TransformedLogs": { @@ -12493,7 +13010,7 @@ } }, "traits": { - "smithy.api#documentation": "

Use this processor to remove leading and trailing whitespace.

\n

For more information about this processor including examples, see \n trimString in the CloudWatch Logs User Guide.

" + "smithy.api#documentation": "

Use this processor to remove leading and trailing whitespace.

\n

For more information about this processor including examples, see trimString in the CloudWatch Logs User Guide.

" } }, "com.amazonaws.cloudwatchlogs#TrimStringWithKeys": { @@ -12543,13 +13060,13 @@ "entries": { "target": "com.amazonaws.cloudwatchlogs#TypeConverterEntries", "traits": { - "smithy.api#documentation": "

An array of TypeConverterEntry objects, where each object contains the information about one field to change the type of.

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

An array of TypeConverterEntry objects, where each object contains the\n information about one field to change the type of.

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

Use this processor to convert a value type associated with the specified key to the specified type. It's\n a casting processor that changes the types of the specified fields. Values can be converted into one of the following datatypes: integer, \n double, string and boolean.

\n

For more information about this processor including examples, see \n trimString in the CloudWatch Logs User Guide.

" + "smithy.api#documentation": "

Use this processor to convert a value type associated with the specified key to the\n specified type. It's a casting processor that changes the types of the specified fields.\n Values can be converted into one of the following datatypes: integer,\n double, string and boolean.

\n

For more information about this processor including examples, see trimString in the CloudWatch Logs User Guide.

" } }, "com.amazonaws.cloudwatchlogs#TypeConverterEntries": { @@ -12577,13 +13094,13 @@ "type": { "target": "com.amazonaws.cloudwatchlogs#Type", "traits": { - "smithy.api#documentation": "

The type to convert the field value to. Valid values are integer, \n double, string and boolean.

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

The type to convert the field value to. Valid values are integer,\n double, string and boolean.

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

This object defines one value type that will be converted using the \n typeConverter processor.

" + "smithy.api#documentation": "

This object defines one value type that will be converted using the typeConverter processor.

" } }, "com.amazonaws.cloudwatchlogs#Unmask": { @@ -12621,7 +13138,7 @@ "smithy.api#deprecated": { "message": "Please use the generic tagging API UntagResource" }, - "smithy.api#documentation": "\n

The UntagLogGroup operation is on the path to deprecation. We recommend that you use \n UntagResource instead.

\n
\n

Removes the specified tags from the specified log group.

\n

To list the tags for a log group, use ListTagsForResource.\n To add tags, use TagResource.

\n

CloudWatch Logs doesn't support IAM policies that prevent users from assigning specified tags to \n log groups using the aws:Resource/key-name\n or aws:TagKeys condition keys. \n

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

The UntagLogGroup operation is on the path to deprecation. We recommend that you use\n UntagResource instead.

\n
\n

Removes the specified tags from the specified log group.

\n

To list the tags for a log group, use ListTagsForResource. To add tags, use TagResource.

\n

When using IAM policies to control tag management for CloudWatch Logs log groups, the\n condition keys aws:Resource/key-name and aws:TagKeys cannot be used\n to restrict which tags users can assign.

" } }, "com.amazonaws.cloudwatchlogs#UntagLogGroupRequest": { @@ -12678,7 +13195,7 @@ "resourceArn": { "target": "com.amazonaws.cloudwatchlogs#AmazonResourceName", "traits": { - "smithy.api#documentation": "

The ARN of the CloudWatch Logs resource that you're removing tags from.

\n

The ARN format of a log group is \n arn:aws:logs:Region:account-id:log-group:log-group-name\n \n

\n

The ARN format of a destination is \n arn:aws:logs:Region:account-id:destination:destination-name\n \n

\n

For more information about ARN format, see CloudWatch Logs \n resources and operations.

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

The ARN of the CloudWatch Logs resource that you're removing tags from.

\n

The ARN format of a log group is\n arn:aws:logs:Region:account-id:log-group:log-group-name\n \n

\n

The ARN format of a destination is\n arn:aws:logs:Region:account-id:destination:destination-name\n \n

\n

For more information about ARN format, see CloudWatch Logs\n resources and operations.

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

Use this operation to suppress anomaly detection for a specified anomaly or pattern. If you suppress \n an anomaly, CloudWatch Logs won't report new occurrences of that anomaly and won't\n update that anomaly \n with new data. If you suppress a pattern, CloudWatch Logs won't report any anomalies related to that pattern.

\n

You must specify either anomalyId or patternId, but you can't specify both parameters in the \n same operation.

\n

If you have previously used this operation to suppress detection of a pattern or anomaly, you can use it again to cause\n CloudWatch Logs to end the suppression. To do this, use this operation and specify the anomaly or pattern to \n stop suppressing, and omit the suppressionType and suppressionPeriod parameters.

" + "smithy.api#documentation": "

Use this operation to suppress anomaly detection for a specified\n anomaly or pattern. If you suppress an anomaly, CloudWatch Logs won't report new\n occurrences of that anomaly and won't update that anomaly with new data. If you suppress a\n pattern, CloudWatch Logs won't report any anomalies related to that pattern.

\n

You must specify either anomalyId or patternId, but you can't\n specify both parameters in the same operation.

\n

If you have previously used this operation to suppress detection of a pattern or anomaly,\n you can use it again to cause CloudWatch Logs to end the suppression. To do this, use this\n operation and specify the anomaly or pattern to stop suppressing, and omit the\n suppressionType and suppressionPeriod parameters.

" } }, "com.amazonaws.cloudwatchlogs#UpdateAnomalyRequest": { @@ -12726,13 +13243,13 @@ "anomalyId": { "target": "com.amazonaws.cloudwatchlogs#AnomalyId", "traits": { - "smithy.api#documentation": "

If you are suppressing or unsuppressing an anomaly, specify its unique ID here. You can find anomaly IDs by\n using the ListAnomalies operation.

" + "smithy.api#documentation": "

If you are suppressing or unsuppressing an anomaly, specify its unique ID here. You can\n find anomaly IDs by using the ListAnomalies\n operation.

" } }, "patternId": { "target": "com.amazonaws.cloudwatchlogs#PatternId", "traits": { - "smithy.api#documentation": "

If you are suppressing or unsuppressing an pattern, specify its unique ID here. You can find pattern IDs by\n using the ListAnomalies operation.

" + "smithy.api#documentation": "

If you are suppressing or unsuppressing an pattern, specify its unique ID here. You can\n find pattern IDs by using the ListAnomalies\n operation.

" } }, "anomalyDetectorArn": { @@ -12745,7 +13262,7 @@ "suppressionType": { "target": "com.amazonaws.cloudwatchlogs#SuppressionType", "traits": { - "smithy.api#documentation": "

Use this to specify whether the suppression to be temporary or infinite. If you specify LIMITED,\n you must also specify a suppressionPeriod. If you specify INFINITE,\n any value for suppressionPeriod is ignored.

" + "smithy.api#documentation": "

Use this to specify whether the suppression to be temporary or infinite. If you specify\n LIMITED, you must also specify a suppressionPeriod. If you specify\n INFINITE, any value for suppressionPeriod is ignored.

" } }, "suppressionPeriod": { @@ -12757,7 +13274,7 @@ "baseline": { "target": "com.amazonaws.cloudwatchlogs#Baseline", "traits": { - "smithy.api#documentation": "

Set this to true to prevent CloudWatch Logs from displaying this behavior as an anomaly in the future. The behavior is then treated as \n baseline behavior. However, if similar but \n more severe occurrences of this behavior occur in the future, those will still be reported as anomalies.

\n

The default is false\n

" + "smithy.api#documentation": "

Set this to true to prevent CloudWatch Logs from displaying this behavior\n as an anomaly in the future. The behavior is then treated as baseline behavior. However, if\n similar but more severe occurrences of this behavior occur in the future, those will still be\n reported as anomalies.

\n

The default is false\n

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

Use this operation to update the configuration of a delivery to change either the \n S3 path pattern or the format of the delivered logs. You can't use this operation to change the\n source or destination of the delivery.

" + "smithy.api#documentation": "

Use this operation to update the configuration of a delivery to change\n either the S3 path pattern or the format of the delivered logs. You can't use this operation\n to change the source or destination of the delivery.

" } }, "com.amazonaws.cloudwatchlogs#UpdateDeliveryConfigurationRequest": { @@ -12810,19 +13327,19 @@ "recordFields": { "target": "com.amazonaws.cloudwatchlogs#RecordFields", "traits": { - "smithy.api#documentation": "

The list of record fields to be delivered to the destination, in order. \n If the delivery's log source has mandatory fields, they must be included in this list.

" + "smithy.api#documentation": "

The list of record fields to be delivered to the destination, in order. If the delivery's\n log source has mandatory fields, they must be included in this list.

" } }, "fieldDelimiter": { "target": "com.amazonaws.cloudwatchlogs#FieldDelimiter", "traits": { - "smithy.api#documentation": "

The field delimiter to use between record fields when the final output format of a delivery\n is in Plain, W3C, or Raw format.

" + "smithy.api#documentation": "

The field delimiter to use between record fields when the final output format of a\n delivery is in Plain, W3C, or Raw format.

" } }, "s3DeliveryConfiguration": { "target": "com.amazonaws.cloudwatchlogs#S3DeliveryConfiguration", "traits": { - "smithy.api#documentation": "

This structure contains parameters that are valid only when the delivery's delivery destination is an S3 bucket.

" + "smithy.api#documentation": "

This structure contains parameters that are valid only when the delivery's delivery\n destination is an S3 bucket.

" } } }, @@ -12876,7 +13393,7 @@ "evaluationFrequency": { "target": "com.amazonaws.cloudwatchlogs#EvaluationFrequency", "traits": { - "smithy.api#documentation": "

Specifies how often the anomaly detector runs and look for anomalies. Set this value\n according to the frequency that the log group receives new logs. For example, if the log group\n receives new log events every 10 minutes, then setting evaluationFrequency to\n FIFTEEN_MIN might be appropriate.

" + "smithy.api#documentation": "

Specifies how often the anomaly detector runs and look for anomalies. Set this value\n according to the frequency that the log group receives new logs. For example, if the log group\n receives new log events every 10 minutes, then setting evaluationFrequency to\n FIFTEEN_MIN might be appropriate.

" } }, "filterPattern": { @@ -12885,7 +13402,7 @@ "anomalyVisibilityTime": { "target": "com.amazonaws.cloudwatchlogs#AnomalyVisibilityTime", "traits": { - "smithy.api#documentation": "

The number of days to use as the life cycle of anomalies. After this time, anomalies are automatically baselined \n and the anomaly detector model will treat new occurrences of similar event as normal. Therefore, if you do not correct the cause of an \n anomaly during this time, it will be considered normal going forward and will not be detected.

" + "smithy.api#documentation": "

The number of days to use as the life cycle of anomalies. After this time, anomalies are\n automatically baselined and the anomaly detector model will treat new occurrences of similar\n event as normal. Therefore, if you do not correct the cause of an anomaly during this time, it\n will be considered normal going forward and will not be detected.

" } }, "enabled": { @@ -12912,7 +13429,7 @@ } }, "traits": { - "smithy.api#documentation": "

This processor converts a string field to uppercase.

\n

For more information about this processor including examples, see \n upperCaseString in the CloudWatch Logs User Guide.

" + "smithy.api#documentation": "

This processor converts a string field to uppercase.

\n

For more information about this processor including examples, see upperCaseString in the CloudWatch Logs User Guide.

" } }, "com.amazonaws.cloudwatchlogs#UpperCaseStringWithKeys": { diff --git a/aws/sdk/aws-models/config.json b/aws/sdk/aws-models/config-service.json similarity index 89% rename from aws/sdk/aws-models/config.json rename to aws/sdk/aws-models/config-service.json index 9e4f4565fdc..21573ec4f5d 100644 --- a/aws/sdk/aws-models/config.json +++ b/aws/sdk/aws-models/config-service.json @@ -586,6 +586,77 @@ "target": "com.amazonaws.configservice#AggregationAuthorization" } }, + "com.amazonaws.configservice#AggregatorFilterResourceType": { + "type": "structure", + "members": { + "Type": { + "target": "com.amazonaws.configservice#AggregatorFilterType", + "traits": { + "smithy.api#documentation": "

The type of resource type filter to apply. INCLUDE specifies that the list of resource types in the Value field will be aggregated and no other resource types will be filtered.

" + } + }, + "Value": { + "target": "com.amazonaws.configservice#ResourceTypeValueList", + "traits": { + "smithy.api#documentation": "

Comma-separate list of resource types to filter your aggregated configuration recorders.

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

An object to filter the configuration recorders based on the resource types in scope for recording.

" + } + }, + "com.amazonaws.configservice#AggregatorFilterServicePrincipal": { + "type": "structure", + "members": { + "Type": { + "target": "com.amazonaws.configservice#AggregatorFilterType", + "traits": { + "smithy.api#documentation": "

The type of service principal filter to apply. INCLUDE specifies that the list of service principals in the Value field will be aggregated and no other service principals will be filtered.

" + } + }, + "Value": { + "target": "com.amazonaws.configservice#ServicePrincipalValueList", + "traits": { + "smithy.api#documentation": "

Comma-separated list of service principals for the linked Amazon Web Services services to filter your aggregated service-linked configuration recorders.

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

An object to filter service-linked configuration recorders in an aggregator based on the linked Amazon Web Services service.

" + } + }, + "com.amazonaws.configservice#AggregatorFilterType": { + "type": "enum", + "members": { + "INCLUDE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INCLUDE" + } + } + } + }, + "com.amazonaws.configservice#AggregatorFilters": { + "type": "structure", + "members": { + "ResourceType": { + "target": "com.amazonaws.configservice#AggregatorFilterResourceType", + "traits": { + "smithy.api#documentation": "

An object to filter the configuration recorders based on the resource types in scope for recording.

" + } + }, + "ServicePrincipal": { + "target": "com.amazonaws.configservice#AggregatorFilterServicePrincipal", + "traits": { + "smithy.api#documentation": "

An object to filter service-linked configuration recorders in an aggregator based on the linked Amazon Web Services service.

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

An object to filter the data you specify for an aggregator.

" + } + }, "com.amazonaws.configservice#AggregatorRegionList": { "type": "list", "member": { @@ -621,6 +692,65 @@ } } }, + "com.amazonaws.configservice#AssociateResourceTypes": { + "type": "operation", + "input": { + "target": "com.amazonaws.configservice#AssociateResourceTypesRequest" + }, + "output": { + "target": "com.amazonaws.configservice#AssociateResourceTypesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.configservice#ConflictException" + }, + { + "target": "com.amazonaws.configservice#NoSuchConfigurationRecorderException" + }, + { + "target": "com.amazonaws.configservice#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Adds all resource types specified in the ResourceTypes list to the RecordingGroup of specified configuration recorder and includes those resource types when recording.

\n

For this operation, the specified configuration recorder must use a RecordingStrategy that is either INCLUSION_BY_RESOURCE_TYPES or EXCLUSION_BY_RESOURCE_TYPES.

" + } + }, + "com.amazonaws.configservice#AssociateResourceTypesRequest": { + "type": "structure", + "members": { + "ConfigurationRecorderArn": { + "target": "com.amazonaws.configservice#AmazonResourceName", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the specified configuration recorder.

", + "smithy.api#required": {} + } + }, + "ResourceTypes": { + "target": "com.amazonaws.configservice#ResourceTypeList", + "traits": { + "smithy.api#documentation": "

The list of resource types you want to add to the recording group of the specified configuration recorder.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.configservice#AssociateResourceTypesResponse": { + "type": "structure", + "members": { + "ConfigurationRecorder": { + "target": "com.amazonaws.configservice#ConfigurationRecorder", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.configservice#AutoRemediationAttemptSeconds": { "type": "long", "traits": { @@ -729,19 +859,19 @@ "configuration": { "target": "com.amazonaws.configservice#Configuration", "traits": { - "smithy.api#documentation": "

The description of the resource configuration.

" + "smithy.api#documentation": "

A JSON-encoded string that contains the contents for the resource configuration. This string needs to be deserialized using json.loads() before you can access the contents.\n

" } }, "supplementaryConfiguration": { "target": "com.amazonaws.configservice#SupplementaryConfiguration", "traits": { - "smithy.api#documentation": "

Configuration attributes that Config returns for certain\n\t\t\tresource types to supplement the information returned for the\n\t\t\tconfiguration parameter.

" + "smithy.api#documentation": "

A string to string map that contains additional contents for the resource configuration.Config returns this field for certain\n\t\t\tresource types to supplement the information returned for the\n\t\t\tconfiguration field.

\n

This string needs to be deserialized using json.loads() before you can access the contents.

" } }, "recordingFrequency": { "target": "com.amazonaws.configservice#RecordingFrequency", "traits": { - "smithy.api#documentation": "

The recording frequency that Config uses to record configuration changes for the resource.

" + "smithy.api#documentation": "

The recording frequency that Config uses to record configuration changes for the resource.

\n \n

This field only appears in the API response when DAILY recording is enabled for a resource type.\n\t\t\t\tIf this field is not present, CONTINUOUS recording is enabled for that resource type. For more information on daily recording and continuous recording, see Recording Frequency in the Config\n\t\t\t\t\t\tDeveloper Guide.

\n
" } }, "configurationItemDeliveryTime": { @@ -1210,7 +1340,7 @@ "Scope": { "target": "com.amazonaws.configservice#Scope", "traits": { - "smithy.api#documentation": "

Defines which resources can trigger an evaluation for the rule.\n\t\t\tThe scope can include one or more resource types, a combination of\n\t\t\tone resource type and one resource ID, or a combination of a tag key\n\t\t\tand value. Specify a scope to constrain the resources that can\n\t\t\ttrigger an evaluation for the rule. If you do not specify a scope,\n\t\t\tevaluations are triggered when any resource in the recording group\n\t\t\tchanges.

\n \n

The scope can be empty.

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

Defines which resources can trigger an evaluation for the rule.\n\t\t\tThe scope can include one or more resource types, a combination of\n\t\t\tone resource type and one resource ID, or a combination of a tag key\n\t\t\tand value. Specify a scope to constrain the resources that can\n\t\t\ttrigger an evaluation for the rule. If you do not specify a scope,\n\t\t\tevaluations are triggered when any resource in the recording group\n\t\t\tchanges.

" } }, "Source": { @@ -1420,7 +1550,7 @@ } }, "traits": { - "smithy.api#documentation": "

Status information for your Config Managed rules and Config Custom Policy rules. The\n\t\t\tstatus includes information such as the last time the rule ran, the\n\t\t\tlast time it failed, and the related error for the last\n\t\t\tfailure.

\n

This action does not return status information about Config Custom Lambda rules.

" + "smithy.api#documentation": "

Status information for your Config Managed rules and Config Custom Policy rules. The\n\t\t\tstatus includes information such as the last time the rule ran, the\n\t\t\tlast time it failed, and the related error for the last\n\t\t\tfailure.

\n

This operation does not return status information about Config Custom Lambda rules.

" } }, "com.amazonaws.configservice#ConfigRuleEvaluationStatusList": { @@ -1579,6 +1709,12 @@ "traits": { "smithy.api#documentation": "

Amazon Web Services service that created the configuration aggregator.

" } + }, + "AggregatorFilters": { + "target": "com.amazonaws.configservice#AggregatorFilters", + "traits": { + "smithy.api#documentation": "

An object to filter the data you specify for an aggregator.

" + } } }, "traits": { @@ -1721,25 +1857,25 @@ "configuration": { "target": "com.amazonaws.configservice#Configuration", "traits": { - "smithy.api#documentation": "

The description of the resource configuration.

" + "smithy.api#documentation": "

A JSON-encoded string that contains the contents for the resource configuration. This string needs to be deserialized using json.loads() before you can access the contents.

" } }, "supplementaryConfiguration": { "target": "com.amazonaws.configservice#SupplementaryConfiguration", "traits": { - "smithy.api#documentation": "

Configuration attributes that Config returns for certain\n\t\t\tresource types to supplement the information returned for the\n\t\t\t\tconfiguration parameter.

" + "smithy.api#documentation": "

A string to string map that contains additional contents for the resource configuration.Config returns this field for certain\n\t\t\tresource types to supplement the information returned for the\n\t\t\tconfiguration field.

\n

This string to string map needs to be deserialized using json.loads() before you can accessing the contents.

" } }, "recordingFrequency": { "target": "com.amazonaws.configservice#RecordingFrequency", "traits": { - "smithy.api#documentation": "

The recording frequency that Config uses to record configuration changes for the resource.

" + "smithy.api#documentation": "

The recording frequency that Config uses to record configuration changes for the resource.

\n \n

This field only appears in the API response when DAILY recording is enabled for a resource type.\n\t\t\t\tIf this field is not present, CONTINUOUS recording is enabled for that resource type. For more information on daily recording and continuous recording, see Recording Frequency in the Config\n\t\t\t\t\t\tDeveloper Guide.

\n
" } }, "configurationItemDeliveryTime": { "target": "com.amazonaws.configservice#ConfigurationItemDeliveryTime", "traits": { - "smithy.api#documentation": "

The time when configuration changes for the resource were delivered.

\n \n

This field is optional and is not guaranteed to be present in a configuration item (CI). If you are using daily recording,\n\t\t\tthis field will be populated. However, if you are using continuous recording,\n\t\t\tthis field will be omitted since the delivery time is instantaneous as the CI is available right away. For more information on daily recording and continuous recording, see Recording Frequency in the Config\n\t\t\t\t\tDeveloper Guide.

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

The time when configuration changes for the resource were delivered.

\n \n

This field is optional and is not guaranteed to be present in a configuration item (CI). If you are using daily recording,\n\t\t\tthis field will be populated. However, if you are using continuous recording,\n\t\t\tthis field will be omitted since the delivery time is instantaneous as the CI is available right away.

\n

For more information on daily recording and continuous recording, see Recording Frequency in the Config\n\t\t\t\t\tDeveloper Guide.

\n
" } } }, @@ -1800,33 +1936,100 @@ "com.amazonaws.configservice#ConfigurationRecorder": { "type": "structure", "members": { + "arn": { + "target": "com.amazonaws.configservice#AmazonResourceName", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the specified configuration recorder.

" + } + }, "name": { "target": "com.amazonaws.configservice#RecorderName", "traits": { - "smithy.api#documentation": "

The name of the configuration recorder. Config automatically assigns the name of \"default\" when creating the configuration recorder.

\n \n

You cannot change the name of the configuration recorder after it has been created. To change the configuration recorder name, you must delete it and create a new configuration recorder with a new name.

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

The name of the configuration recorder.

\n

For customer managed configuration recorders, Config automatically assigns the name of \"default\" when creating a configuration recorder if you do not specify a name at creation time.

\n

For service-linked configuration recorders, Config automatically assigns a name that has the prefix \"AWSConfigurationRecorderFor\" to a new service-linked configuration recorder.

\n \n

\n Changing the name of a configuration recorder\n

\n

To change the name of the customer managed configuration recorder, you must delete it and create a new customer managed configuration recorder with a new name.

\n

You cannot change the name of a service-linked configuration recorder.

\n
" } }, "roleARN": { "target": "com.amazonaws.configservice#String", "traits": { - "smithy.api#documentation": "

Amazon Resource Name (ARN) of the IAM role assumed by Config and used by the configuration recorder.

\n \n

While the API model does not require this field, the server will reject a request without a defined roleARN for the configuration recorder.

\n
\n \n

\n Pre-existing Config role\n

\n

If you have used an Amazon Web Services service that uses Config, such as Security Hub or\n\t\t\t\tControl Tower, and an Config role has already been created, make sure that the\n\t\t\t\tIAM role that you use when setting up Config keeps the same minimum\n\t\t\t\tpermissions as the already created Config role. You must do this so that the\n\t\t\t\tother Amazon Web Services service continues to run as expected.

\n

For example, if Control Tower has an IAM role that allows Config to read\n\t\t\t\tAmazon Simple Storage Service (Amazon S3) objects, make sure that the same permissions are granted\n\t\t\t\twithin the IAM role you use when setting up Config. Otherwise, it may\n\t\t\t\tinterfere with how Control Tower operates. For more information about IAM\n\t\t\t\troles for Config,\n\t\t\t\tsee \n Identity and Access Management for Config\n in the Config Developer Guide.\n\t\t\t

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

The Amazon Resource Name (ARN) of the IAM role assumed by Config and used by the specified configuration recorder.

\n \n

\n The server will reject a request without a defined roleARN for the configuration recorder\n

\n

While the API model does not require this field, the server will reject a request without a defined roleARN for the configuration recorder.

\n

\n Policies and compliance results\n

\n

\n IAM policies\n\t\t\t\tand other policies managed in Organizations\n\t\t\t\tcan impact whether Config\n\t\t\t\thas permissions to record configuration changes for your resources. Additionally, rules directly evaluate the configuration of a resource and rules don't take into account these policies when running evaluations.\n\t\t\t\tMake sure that the policies in effect align with how you intend to use Config.

\n

\n Keep Minimum Permisions When Reusing an IAM role\n

\n

If you use an Amazon Web Services service that uses Config, such as Security Hub or\n\t\t\t\tControl Tower, and an IAM role has already been created, make sure that the\n\t\t\t\tIAM role that you use when setting up Config keeps the same minimum\n\t\t\t\tpermissions as the pre-existing IAM role. You must do this to ensure that the\n\t\t\t\tother Amazon Web Services service continues to run as expected.

\n

For example, if Control Tower has an IAM role that allows Config to read\n\t\t\t\tS3 objects, make sure that the same permissions are granted\n\t\t\t\tto the IAM role you use when setting up Config. Otherwise, it may\n\t\t\t\tinterfere with how Control Tower operates.

\n

\n The service-linked IAM role for Config must be used for service-linked configuration recorders\n

\n

For service-linked configuration recorders, you must use the service-linked IAM role for Config: AWSServiceRoleForConfig.

\n
" } }, "recordingGroup": { "target": "com.amazonaws.configservice#RecordingGroup", "traits": { - "smithy.api#documentation": "

Specifies which resource types Config\n\t\t\trecords for configuration changes.

\n \n

\n High Number of Config Evaluations\n

\n

You may notice increased activity in your account during your initial month recording with Config when compared to subsequent months. During the\n\t\t\t\tinitial bootstrapping process, Config runs evaluations on all the resources in your account that you have selected\n\t\t\t\tfor Config to record.

\n

If you are running ephemeral workloads, you may see increased activity from Config as it records configuration changes associated with creating and deleting these\n\t\t\t\ttemporary resources. An ephemeral workload is a temporary use of computing resources that are loaded\n\t\t\t\tand run when needed. Examples include Amazon Elastic Compute Cloud (Amazon EC2)\n\t\t\t\tSpot Instances, Amazon EMR jobs, and Auto Scaling. If you want\n\t\t\t\tto avoid the increased activity from running ephemeral workloads, you can run these\n\t\t\t\ttypes of workloads in a separate account with Config turned off to avoid\n\t\t\t\tincreased configuration recording and rule evaluations.

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

Specifies which resource types are in scope for the configuration recorder to record.

\n \n

\n High Number of Config Evaluations\n

\n

You might notice increased activity in your account during your initial month recording with Config when compared to subsequent months. During the\n\t\t\t\tinitial bootstrapping process, Config runs evaluations on all the resources in your account that you have selected\n\t\t\t\tfor Config to record.

\n

If you are running ephemeral workloads, you may see increased activity from Config as it records configuration changes associated with creating and deleting these\n\t\t\t\ttemporary resources. An ephemeral workload is a temporary use of computing resources that are loaded\n\t\t\t\tand run when needed. Examples include Amazon Elastic Compute Cloud (Amazon EC2)\n\t\t\t\tSpot Instances, Amazon EMR jobs, and Auto Scaling.

\n

If you want to avoid the increased activity from running ephemeral workloads, you can set up the configuration recorder to exclude these resource types from being recorded, or run these types of workloads in a separate account with Config turned off to avoid\n\t\t\t\tincreased configuration recording and rule evaluations.

\n
" } }, "recordingMode": { "target": "com.amazonaws.configservice#RecordingMode", "traits": { - "smithy.api#documentation": "

Specifies the default recording frequency that Config uses to record configuration changes.\n\t\t\t\n\t\t\tConfig supports Continuous recording and Daily recording.

\n \n \n

Firewall Manager depends on continuous recording to monitor your resources. If you are using Firewall Manager,\n\t\t\tit is recommended that you set the recording frequency to Continuous.

\n
\n

You can also override the recording frequency for specific resource types.

" + "smithy.api#documentation": "

Specifies the default recording frequency for the configuration recorder.\n\t\t\t\n\t\t\tConfig supports Continuous recording and Daily recording.

\n \n \n

\n Some resource types require continuous recording\n

\n

Firewall Manager depends on continuous recording to monitor your resources. If you are using Firewall Manager,\n\t\t\tit is recommended that you set the recording frequency to Continuous.

\n
\n

You can also override the recording frequency for specific resource types.

" + } + }, + "recordingScope": { + "target": "com.amazonaws.configservice#RecordingScope", + "traits": { + "smithy.api#documentation": "

Specifies whether the ConfigurationItems in scope for the specified configuration recorder are recorded for free (INTERNAL) or if it impacts the costs to your bill (PAID).

" + } + }, + "servicePrincipal": { + "target": "com.amazonaws.configservice#ServicePrincipal", + "traits": { + "smithy.api#documentation": "

For service-linked configuration recorders, specifies the linked Amazon Web Services service for the configuration recorder.

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

Records configuration changes to your specified resource types.\n\t\t\tFor more information about the configuration recorder,\n\t\t\tsee \n Managing the Configuration Recorder\n in the Config Developer Guide.

" + "smithy.api#documentation": "

Records configuration changes to the resource types in scope.

\n

For more information about the configuration recorder,\n\t\t\tsee \n Working with the Configuration Recorder\n in the Config Developer Guide.

" + } + }, + "com.amazonaws.configservice#ConfigurationRecorderFilter": { + "type": "structure", + "members": { + "filterName": { + "target": "com.amazonaws.configservice#ConfigurationRecorderFilterName", + "traits": { + "smithy.api#documentation": "

The name of the type of filter. Currently, only recordingScope is supported.

" + } + }, + "filterValue": { + "target": "com.amazonaws.configservice#ConfigurationRecorderFilterValues", + "traits": { + "smithy.api#documentation": "

The value of the filter. For recordingScope, valid values include: INTERNAL and PAID.

\n

\n INTERNAL indicates that the ConfigurationItems in scope for the configuration recorder are recorded for free.

\n

\n PAID indicates that the ConfigurationItems in scope for the configuration recorder impact the costs to your bill.

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

Filters configuration recorders by recording scope.

" + } + }, + "com.amazonaws.configservice#ConfigurationRecorderFilterList": { + "type": "list", + "member": { + "target": "com.amazonaws.configservice#ConfigurationRecorderFilter" + } + }, + "com.amazonaws.configservice#ConfigurationRecorderFilterName": { + "type": "enum", + "members": { + "RecordingScope": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "recordingScope" + } + } + } + }, + "com.amazonaws.configservice#ConfigurationRecorderFilterValue": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[0-9a-zA-Z\\\\*\\\\.\\\\\\/\\\\?-]*$" + } + }, + "com.amazonaws.configservice#ConfigurationRecorderFilterValues": { + "type": "list", + "member": { + "target": "com.amazonaws.configservice#ConfigurationRecorderFilterValue" } }, "com.amazonaws.configservice#ConfigurationRecorderList": { @@ -1844,6 +2047,12 @@ "com.amazonaws.configservice#ConfigurationRecorderStatus": { "type": "structure", "members": { + "arn": { + "target": "com.amazonaws.configservice#AmazonResourceName", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the configuration recorder.

" + } + }, "name": { "target": "com.amazonaws.configservice#String", "traits": { @@ -1892,10 +2101,16 @@ "traits": { "smithy.api#documentation": "

The time of the latest change in status of an recording event processed by the recorder.

" } + }, + "servicePrincipal": { + "target": "com.amazonaws.configservice#ServicePrincipal", + "traits": { + "smithy.api#documentation": "

For service-linked configuration recorders, the service principal of the linked Amazon Web Services service.

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

The current status of the configuration recorder.

\n \n

For a detailed status of recording events over time, add your Config events to CloudWatch metrics and use CloudWatch metrics.

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

The current status of the configuration recorder.

\n

For a detailed status of recording events over time, add your Config events to CloudWatch metrics and use CloudWatch metrics.

" } }, "com.amazonaws.configservice#ConfigurationRecorderStatusList": { @@ -1904,9 +2119,65 @@ "target": "com.amazonaws.configservice#ConfigurationRecorderStatus" } }, + "com.amazonaws.configservice#ConfigurationRecorderSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.configservice#ConfigurationRecorderSummary" + } + }, + "com.amazonaws.configservice#ConfigurationRecorderSummary": { + "type": "structure", + "members": { + "arn": { + "target": "com.amazonaws.configservice#AmazonResourceName", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the configuration recorder.

", + "smithy.api#required": {} + } + }, + "name": { + "target": "com.amazonaws.configservice#RecorderName", + "traits": { + "smithy.api#documentation": "

The name of the configuration recorder.

", + "smithy.api#required": {} + } + }, + "servicePrincipal": { + "target": "com.amazonaws.configservice#ServicePrincipal", + "traits": { + "smithy.api#documentation": "

For service-linked configuration recorders, indicates which Amazon Web Services service the configuration recorder is linked to.

" + } + }, + "recordingScope": { + "target": "com.amazonaws.configservice#RecordingScope", + "traits": { + "smithy.api#documentation": "

Indicates whether the ConfigurationItems in scope for the configuration recorder are recorded for free (INTERNAL) or if you are charged a service fee for recording (PAID).

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

A summary of a configuration recorder, including the arn, name, servicePrincipal, and recordingScope.

" + } + }, "com.amazonaws.configservice#ConfigurationStateId": { "type": "string" }, + "com.amazonaws.configservice#ConflictException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.configservice#ErrorMessage", + "traits": { + "smithy.api#documentation": "

Error executing the command

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

For PutServiceLinkedConfigurationRecorder, you cannot create a service-linked recorder because a service-linked recorder already exists for the specified service.

\n

For DeleteServiceLinkedConfigurationRecorder, you cannot delete the service-linked recorder because it is currently in use by the linked Amazon Web Services service.

\n

For DeleteDeliveryChannel, you cannot delete the specified delivery channel because the customer managed configuration recorder is running. Use the StopConfigurationRecorder operation to stop the customer managed configuration\n\t\t\trecorder.

\n

For AssociateResourceTypes and DisassociateResourceTypes, one of the following errors:

\n ", + "smithy.api#error": "client" + } + }, "com.amazonaws.configservice#ConformancePackArn": { "type": "string", "traits": { @@ -2608,7 +2879,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the specified Config rule and all of its evaluation\n\t\t\tresults.

\n

Config sets the state of a rule to DELETING\n\t\t\tuntil the deletion is complete. You cannot update a rule while it is\n\t\t\tin this state. If you make a PutConfigRule or\n\t\t\t\tDeleteConfigRule request for the rule, you will\n\t\t\treceive a ResourceInUseException.

\n

You can check the state of a rule by using the\n\t\t\t\tDescribeConfigRules request.

" + "smithy.api#documentation": "

Deletes the specified Config rule and all of its evaluation\n\t\t\tresults.

\n

Config sets the state of a rule to DELETING\n\t\t\tuntil the deletion is complete. You cannot update a rule while it is\n\t\t\tin this state. If you make a PutConfigRule or\n\t\t\t\tDeleteConfigRule request for the rule, you will\n\t\t\treceive a ResourceInUseException.

\n

You can check the state of a rule by using the\n\t\t\t\tDescribeConfigRules request.

\n \n

\n Recommendation: Consider excluding the AWS::Config::ResourceCompliance resource type from recording before deleting rules\n

\n

Deleting rules creates configuration items (CIs) for AWS::Config::ResourceCompliance\n\t\t\t\tthat can affect your costs for the configuration recorder. If you are deleting rules which evaluate a large number of resource types,\n\t\t\t\tthis can lead to a spike in the number of CIs recorded.

\n

To avoid the associated costs, you can opt to disable recording \n\t\t\t\tfor the AWS::Config::ResourceCompliance resource type before deleting rules, and re-enable recording after the rules have been deleted.

\n

However, since deleting rules is an asynchronous process, it might take an hour or more to complete. During the time\n\t\t\t\twhen recording is disabled for AWS::Config::ResourceCompliance, rule evaluations will not be recorded in the associated resource’s history.

\n
" } }, "com.amazonaws.configservice#DeleteConfigRuleRequest": { @@ -2670,10 +2941,13 @@ "errors": [ { "target": "com.amazonaws.configservice#NoSuchConfigurationRecorderException" + }, + { + "target": "com.amazonaws.configservice#UnmodifiableEntityException" } ], "traits": { - "smithy.api#documentation": "

Deletes the configuration recorder.

\n

After the configuration recorder is deleted, Config will\n\t\t\tnot record resource configuration changes until you create a new\n\t\t\tconfiguration recorder.

\n

This action does not delete the configuration information that\n\t\t\twas previously recorded. You will be able to access the previously\n\t\t\trecorded information by using the\n\t\t\t\tGetResourceConfigHistory action, but you will not\n\t\t\tbe able to access this information in the Config console until\n\t\t\tyou create a new configuration recorder.

" + "smithy.api#documentation": "

Deletes the customer managed configuration recorder.

\n

This operation does not delete the configuration information that\n\t\t\twas previously recorded. You will be able to access the previously\n\t\t\trecorded information by using the\n\t\t\tGetResourceConfigHistory operation, but you will not\n\t\t\tbe able to access this information in the Config console until\n\t\t\tyou have created a new customer managed configuration recorder.

" } }, "com.amazonaws.configservice#DeleteConfigurationRecorderRequest": { @@ -2682,13 +2956,13 @@ "ConfigurationRecorderName": { "target": "com.amazonaws.configservice#RecorderName", "traits": { - "smithy.api#documentation": "

The name of the configuration recorder to be deleted. You can\n\t\t\tretrieve the name of your configuration recorder by using the\n\t\t\t\tDescribeConfigurationRecorders action.

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

The name of the customer managed configuration recorder that you want to delete. You can\n\t\t\tretrieve the name of your configuration recorders by using the DescribeConfigurationRecorders operation.

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

The request object for the\n\t\t\t\tDeleteConfigurationRecorder action.

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

The request object for the\n\t\t\t\tDeleteConfigurationRecorder operation.

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

Deletes the specified conformance pack and all the Config rules, remediation actions, and all evaluation results within that \n\t\t\tconformance pack.

\n

Config sets the conformance pack to DELETE_IN_PROGRESS until the deletion is complete. \n\t\t\tYou cannot update a conformance pack while it is in this state.

" + "smithy.api#documentation": "

Deletes the specified conformance pack and all the Config rules, remediation actions, and all evaluation results within that \n\t\t\tconformance pack.

\n

Config sets the conformance pack to DELETE_IN_PROGRESS until the deletion is complete. \n\t\t\tYou cannot update a conformance pack while it is in this state.

\n \n

\n Recommendation: Consider excluding the AWS::Config::ResourceCompliance resource type from recording before deleting rules\n

\n

Deleting rules creates configuration items (CIs) for AWS::Config::ResourceCompliance\n\t\t\t\tthat can affect your costs for the configuration recorder. If you are deleting rules which evaluate a large number of resource types,\n\t\t\t\tthis can lead to a spike in the number of CIs recorded.

\n

To avoid the associated costs, you can opt to disable recording \n\t\t\t\tfor the AWS::Config::ResourceCompliance resource type before deleting rules, and re-enable recording after the rules have been deleted.

\n

However, since deleting rules is an asynchronous process, it might take an hour or more to complete. During the time\n\t\t\t\twhen recording is disabled for AWS::Config::ResourceCompliance, rule evaluations will not be recorded in the associated resource’s history.

\n
" } }, "com.amazonaws.configservice#DeleteConformancePackRequest": { @@ -2744,7 +3018,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the delivery channel.

\n

Before you can delete the delivery channel, you must stop the\n\t\t\tconfiguration recorder by using the StopConfigurationRecorder action.

" + "smithy.api#documentation": "

Deletes the delivery channel.

\n

Before you can delete the delivery channel, you must stop the customer managed configuration recorder. You can use the StopConfigurationRecorder operation to stop the customer managed configuration recorder.

" } }, "com.amazonaws.configservice#DeleteDeliveryChannelRequest": { @@ -2753,7 +3027,7 @@ "DeliveryChannelName": { "target": "com.amazonaws.configservice#ChannelName", "traits": { - "smithy.api#documentation": "

The name of the delivery channel to delete.

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

The name of the delivery channel that you want to delete.

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

Deletes the specified organization Config rule and all of its evaluation results from all member accounts in that organization.

\n

Only a management account and a delegated administrator account can delete an organization Config rule.\n\t\tWhen calling this API with a delegated administrator, you must ensure Organizations \n\t\t\tListDelegatedAdministrator permissions are added.

\n

Config sets the state of a rule to DELETE_IN_PROGRESS until the deletion is complete. \n\t\t\tYou cannot update a rule while it is in this state.

" + "smithy.api#documentation": "

Deletes the specified organization Config rule and all of its evaluation results from all member accounts in that organization.

\n

Only a management account and a delegated administrator account can delete an organization Config rule.\n\t\tWhen calling this API with a delegated administrator, you must ensure Organizations \n\t\t\tListDelegatedAdministrator permissions are added.

\n

Config sets the state of a rule to DELETE_IN_PROGRESS until the deletion is complete. \n\t\t\tYou cannot update a rule while it is in this state.

\n \n

\n Recommendation: Consider excluding the AWS::Config::ResourceCompliance resource type from recording before deleting rules\n

\n

Deleting rules creates configuration items (CIs) for AWS::Config::ResourceCompliance\n\t\t\t\tthat can affect your costs for the configuration recorder. If you are deleting rules which evaluate a large number of resource types,\n\t\t\t\tthis can lead to a spike in the number of CIs recorded.

\n

To avoid the associated costs, you can opt to disable recording \n\t\t\t\tfor the AWS::Config::ResourceCompliance resource type before deleting rules, and re-enable recording after the rules have been deleted.

\n

However, since deleting rules is an asynchronous process, it might take an hour or more to complete. During the time\n\t\t\t\twhen recording is disabled for AWS::Config::ResourceCompliance, rule evaluations will not be recorded in the associated resource’s history.

\n
" } }, "com.amazonaws.configservice#DeleteOrganizationConfigRuleRequest": { @@ -2865,7 +3139,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the specified organization conformance pack and all of the Config rules and remediation actions from\n\t\t\tall member accounts in that organization.

\n

Only a management account or a delegated administrator account can delete an organization conformance pack.\n\tWhen calling this API with a delegated administrator, you must ensure Organizations \n\t\tListDelegatedAdministrator permissions are added.

\n

Config sets the state of a conformance pack to DELETE_IN_PROGRESS until the deletion is complete. \n\t\t\t\tYou cannot update a conformance pack while it is in this state.

" + "smithy.api#documentation": "

Deletes the specified organization conformance pack and all of the Config rules and remediation actions from\n\t\t\tall member accounts in that organization.

\n

Only a management account or a delegated administrator account can delete an organization conformance pack.\n\tWhen calling this API with a delegated administrator, you must ensure Organizations \n\t\tListDelegatedAdministrator permissions are added.

\n

Config sets the state of a conformance pack to DELETE_IN_PROGRESS until the deletion is complete. \n\t\t\t\tYou cannot update a conformance pack while it is in this state.

\n \n

\n Recommendation: Consider excluding the AWS::Config::ResourceCompliance resource type from recording before deleting rules\n

\n

Deleting rules creates configuration items (CIs) for AWS::Config::ResourceCompliance\n\t\t\t\tthat can affect your costs for the configuration recorder. If you are deleting rules which evaluate a large number of resource types,\n\t\t\t\tthis can lead to a spike in the number of CIs recorded.

\n

To avoid the associated costs, you can opt to disable recording \n\t\t\t\tfor the AWS::Config::ResourceCompliance resource type before deleting rules, and re-enable recording after the rules have been deleted.

\n

However, since deleting rules is an asynchronous process, it might take an hour or more to complete. During the time\n\t\t\t\twhen recording is disabled for AWS::Config::ResourceCompliance, rule evaluations will not be recorded in the associated resource’s history.

\n
" } }, "com.amazonaws.configservice#DeleteOrganizationConformancePackRequest": { @@ -3106,6 +3380,66 @@ "smithy.api#input": {} } }, + "com.amazonaws.configservice#DeleteServiceLinkedConfigurationRecorder": { + "type": "operation", + "input": { + "target": "com.amazonaws.configservice#DeleteServiceLinkedConfigurationRecorderRequest" + }, + "output": { + "target": "com.amazonaws.configservice#DeleteServiceLinkedConfigurationRecorderResponse" + }, + "errors": [ + { + "target": "com.amazonaws.configservice#ConflictException" + }, + { + "target": "com.amazonaws.configservice#NoSuchConfigurationRecorderException" + }, + { + "target": "com.amazonaws.configservice#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes an existing service-linked configuration recorder.

\n

This operation does not delete the configuration information that was previously recorded. You will be able to access the previously\n\t\t\trecorded information by using the\n\t\t\tGetResourceConfigHistory operation, but you will not\n\t\t\tbe able to access this information in the Config console until\n\t\t\tyou have created a new service-linked configuration recorder for the same service.

\n \n

\n The recording scope determines if you receive configuration items\n

\n

The recording scope is set by the service that is linked to the configuration recorder and determines whether you receive configuration items (CIs) in the delivery channel. If the recording scope is internal, you will not receive CIs in the delivery channel.

\n
" + } + }, + "com.amazonaws.configservice#DeleteServiceLinkedConfigurationRecorderRequest": { + "type": "structure", + "members": { + "ServicePrincipal": { + "target": "com.amazonaws.configservice#ServicePrincipal", + "traits": { + "smithy.api#documentation": "

The service principal of the Amazon Web Services service for the service-linked configuration recorder that you want to delete.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.configservice#DeleteServiceLinkedConfigurationRecorderResponse": { + "type": "structure", + "members": { + "Arn": { + "target": "com.amazonaws.configservice#AmazonResourceName", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the specified configuration recorder.

", + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.configservice#RecorderName", + "traits": { + "smithy.api#documentation": "

The name of the specified configuration recorder.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.configservice#DeleteStoredQuery": { "type": "operation", "input": { @@ -3445,7 +3779,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a list of the conformance packs and their associated compliance status with the count of compliant and noncompliant Config rules within each \n\t\t\tconformance pack. Also returns the total rule count which includes compliant rules, noncompliant rules, and rules that cannot be evaluated due to insufficient data.

\n \n

The results can return an empty result page, but if you have a nextToken, the results are displayed on the next page.

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

Returns a list of the existing and deleted conformance packs and their associated compliance status with the count of compliant and noncompliant Config rules within each \n\t\t\tconformance pack. Also returns the total rule count which includes compliant rules, noncompliant rules, and rules that cannot be evaluated due to insufficient data.

\n \n

The results can return an empty result page, but if you have a nextToken, the results are displayed on the next page.

\n
", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -3598,7 +3932,7 @@ } ], "traits": { - "smithy.api#documentation": "

Indicates whether the specified Config rules are compliant.\n\t\t\tIf a rule is noncompliant, this action returns the number of Amazon Web Services\n\t\t\tresources that do not comply with the rule.

\n

A rule is compliant if all of the evaluated resources comply\n\t\t\twith it. It is noncompliant if any of these resources do not\n\t\t\tcomply.

\n

If Config has no current evaluation results for the rule,\n\t\t\tit returns INSUFFICIENT_DATA. This result might\n\t\t\tindicate one of the following conditions:

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

Indicates whether the specified Config rules are compliant.\n\t\t\tIf a rule is noncompliant, this operation returns the number of Amazon Web Services\n\t\t\tresources that do not comply with the rule.

\n

A rule is compliant if all of the evaluated resources comply\n\t\t\twith it. It is noncompliant if any of these resources do not\n\t\t\tcomply.

\n

If Config has no current evaluation results for the rule,\n\t\t\tit returns INSUFFICIENT_DATA. This result might\n\t\t\tindicate one of the following conditions:

\n ", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -3671,7 +4005,7 @@ } ], "traits": { - "smithy.api#documentation": "

Indicates whether the specified Amazon Web Services resources are compliant. If\n\t\t\ta resource is noncompliant, this action returns the number of Config rules that the resource does not comply with.

\n

A resource is compliant if it complies with all the Config\n\t\t\trules that evaluate it. It is noncompliant if it does not comply\n\t\t\twith one or more of these rules.

\n

If Config has no current evaluation results for the\n\t\t\tresource, it returns INSUFFICIENT_DATA. This result\n\t\t\tmight indicate one of the following conditions about the rules that\n\t\t\tevaluate the resource:

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

Indicates whether the specified Amazon Web Services resources are compliant. If\n\t\t\ta resource is noncompliant, this operation returns the number of Config rules that the resource does not comply with.

\n

A resource is compliant if it complies with all the Config\n\t\t\trules that evaluate it. It is noncompliant if it does not comply\n\t\t\twith one or more of these rules.

\n

If Config has no current evaluation results for the\n\t\t\tresource, it returns INSUFFICIENT_DATA. This result\n\t\t\tmight indicate one of the following conditions about the rules that\n\t\t\tevaluate the resource:

\n ", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -3686,7 +4020,7 @@ "ResourceType": { "target": "com.amazonaws.configservice#StringWithCharLimit256", "traits": { - "smithy.api#documentation": "

The types of Amazon Web Services resources for which you want compliance\n\t\t\tinformation (for example, AWS::EC2::Instance). For this\n\t\t\taction, you can specify that the resource type is an Amazon Web Services account by\n\t\t\tspecifying AWS::::Account.

" + "smithy.api#documentation": "

The types of Amazon Web Services resources for which you want compliance\n\t\t\tinformation (for example, AWS::EC2::Instance). For this operation, you can specify that the resource type is an Amazon Web Services account by\n\t\t\tspecifying AWS::::Account.

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

Returns the details of one or more configuration aggregators.\n\t\t\tIf the configuration aggregator is not specified, this action\n\t\t\treturns the details for all the configuration aggregators associated\n\t\t\twith the account.

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

Returns the details of one or more configuration aggregators.\n\t\t\tIf the configuration aggregator is not specified, this operation\n\t\t\treturns the details for all the configuration aggregators associated\n\t\t\twith the account.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -4085,10 +4419,13 @@ "errors": [ { "target": "com.amazonaws.configservice#NoSuchConfigurationRecorderException" + }, + { + "target": "com.amazonaws.configservice#ValidationException" } ], "traits": { - "smithy.api#documentation": "

Returns the current status of the specified configuration\n\t\t\trecorder as well as the status of the last recording event for the recorder. If a configuration recorder is not specified, this action\n\t\t\treturns the status of all configuration recorders associated with\n\t\t\tthe account.

\n \n

>You can specify only one configuration recorder for each Amazon Web Services Region for each account.\n\t\t\t\tFor a detailed status of recording events over time, add your Config events to Amazon CloudWatch metrics and use CloudWatch metrics.

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

Returns the current status of the configuration\n\t\t\trecorder you specify as well as the status of the last recording event for the configuration recorders.

\n

For a detailed status of recording events over time, add your Config events to Amazon CloudWatch metrics and use CloudWatch metrics.

\n

If a configuration recorder is not specified, this operation returns the status for the customer managed configuration recorder configured for the\n\t\t\taccount, if applicable.

\n \n

When making a request to this operation, you can only specify one configuration recorder.

\n
" } }, "com.amazonaws.configservice#DescribeConfigurationRecorderStatusRequest": { @@ -4097,7 +4434,19 @@ "ConfigurationRecorderNames": { "target": "com.amazonaws.configservice#ConfigurationRecorderNameList", "traits": { - "smithy.api#documentation": "

The name(s) of the configuration recorder. If the name is not\n\t\t\tspecified, the action returns the current status of all the\n\t\t\tconfiguration recorders associated with the account.

" + "smithy.api#documentation": "

The name of the configuration recorder. If the name is not\n\t\t\tspecified, the operation returns the status for the customer managed configuration recorder configured for the\n\t\t\taccount, if applicable.

\n \n

When making a request to this operation, you can only specify one configuration recorder.

\n
" + } + }, + "ServicePrincipal": { + "target": "com.amazonaws.configservice#ServicePrincipal", + "traits": { + "smithy.api#documentation": "

For service-linked configuration recorders, you can use the service principal of the linked Amazon Web Services service to specify the configuration recorder.

" + } + }, + "Arn": { + "target": "com.amazonaws.configservice#AmazonResourceName", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the configuration recorder that you want to specify.

" } } }, @@ -4132,10 +4481,13 @@ "errors": [ { "target": "com.amazonaws.configservice#NoSuchConfigurationRecorderException" + }, + { + "target": "com.amazonaws.configservice#ValidationException" } ], "traits": { - "smithy.api#documentation": "

Returns the details for the specified configuration recorders.\n\t\t\tIf the configuration recorder is not specified, this action returns\n\t\t\tthe details for all configuration recorders associated with the\n\t\t\taccount.

\n \n

You can specify only one configuration recorder for each Amazon Web Services Region for each account.

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

Returns details for the configuration recorder you specify.

\n

If a configuration recorder is not specified, this operation returns details for the customer managed configuration recorder configured for the\n\t\t\taccount, if applicable.

\n \n

When making a request to this operation, you can only specify one configuration recorder.

\n
", "smithy.test#smokeTests": [ { "id": "DescribeConfigurationRecordersSuccess", @@ -4157,7 +4509,19 @@ "ConfigurationRecorderNames": { "target": "com.amazonaws.configservice#ConfigurationRecorderNameList", "traits": { - "smithy.api#documentation": "

A list of configuration recorder names.

" + "smithy.api#documentation": "

A list of names of the configuration recorders that you want to specify.

\n \n

When making a request to this operation, you can only specify one configuration recorder.

\n
" + } + }, + "ServicePrincipal": { + "target": "com.amazonaws.configservice#ServicePrincipal", + "traits": { + "smithy.api#documentation": "

For service-linked configuration recorders, you can use the service principal of the linked Amazon Web Services service to specify the configuration recorder.

" + } + }, + "Arn": { + "target": "com.amazonaws.configservice#AmazonResourceName", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the configuration recorder that you want to specify.

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

Returns the current status of the specified delivery channel.\n\t\t\tIf a delivery channel is not specified, this action returns the\n\t\t\tcurrent status of all delivery channels associated with the\n\t\t\taccount.

\n \n

Currently, you can specify only one delivery channel per\n\t\t\t\tregion in your account.

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

Returns the current status of the specified delivery channel.\n\t\t\tIf a delivery channel is not specified, this operation returns the\n\t\t\tcurrent status of all delivery channels associated with the\n\t\t\taccount.

\n \n

Currently, you can specify only one delivery channel per\n\t\t\t\tregion in your account.

\n
" } }, "com.amazonaws.configservice#DescribeDeliveryChannelStatusRequest": { @@ -4503,7 +4867,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns details about the specified delivery channel. If a\n\t\t\tdelivery channel is not specified, this action returns the details\n\t\t\tof all delivery channels associated with the account.

\n \n

Currently, you can specify only one delivery channel per\n\t\t\t\tregion in your account.

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

Returns details about the specified delivery channel. If a\n\t\t\tdelivery channel is not specified, this operation returns the details\n\t\t\tof all delivery channels associated with the account.

\n \n

Currently, you can specify only one delivery channel per\n\t\t\t\tregion in your account.

\n
" } }, "com.amazonaws.configservice#DescribeDeliveryChannelsRequest": { @@ -5087,7 +5451,7 @@ "ConfigRuleName": { "target": "com.amazonaws.configservice#ConfigRuleName", "traits": { - "smithy.api#documentation": "

A list of Config rule names.

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

The name of the Config rule.

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

Returns the details of one or more retention configurations. If\n\t\t\tthe retention configuration name is not specified, this action\n\t\t\treturns the details for all the retention configurations for that\n\t\t\taccount.

\n \n

Currently, Config supports only one retention\n\t\t\t\tconfiguration per region in your account.

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

Returns the details of one or more retention configurations. If\n\t\t\tthe retention configuration name is not specified, this operation\n\t\t\treturns the details for all the retention configurations for that\n\t\t\taccount.

\n \n

Currently, Config supports only one retention\n\t\t\t\tconfiguration per region in your account.

\n
", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", @@ -5212,6 +5576,65 @@ } } }, + "com.amazonaws.configservice#DisassociateResourceTypes": { + "type": "operation", + "input": { + "target": "com.amazonaws.configservice#DisassociateResourceTypesRequest" + }, + "output": { + "target": "com.amazonaws.configservice#DisassociateResourceTypesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.configservice#ConflictException" + }, + { + "target": "com.amazonaws.configservice#NoSuchConfigurationRecorderException" + }, + { + "target": "com.amazonaws.configservice#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Removes all resource types specified in the ResourceTypes list from the RecordingGroup of configuration recorder and excludes these resource types when recording.

\n

For this operation, the configuration recorder must use a RecordingStrategy that is either INCLUSION_BY_RESOURCE_TYPES or EXCLUSION_BY_RESOURCE_TYPES.

" + } + }, + "com.amazonaws.configservice#DisassociateResourceTypesRequest": { + "type": "structure", + "members": { + "ConfigurationRecorderArn": { + "target": "com.amazonaws.configservice#AmazonResourceName", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the specified configuration recorder.

", + "smithy.api#required": {} + } + }, + "ResourceTypes": { + "target": "com.amazonaws.configservice#ResourceTypeList", + "traits": { + "smithy.api#documentation": "

The list of resource types you want to remove from the recording group of the specified configuration recorder.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.configservice#DisassociateResourceTypesResponse": { + "type": "structure", + "members": { + "ConfigurationRecorder": { + "target": "com.amazonaws.configservice#ConfigurationRecorder", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.configservice#DiscoveredResourceIdentifierList": { "type": "list", "member": { @@ -5520,7 +5943,7 @@ } }, "traits": { - "smithy.api#documentation": "

Specifies whether the configuration recorder excludes certain resource types from being recorded.\n\t\t\tUse the resourceTypes field to enter a comma-separated list of resource types you want to exclude from recording.

\n

By default, when Config adds support for a new resource type in the Region where you set up the configuration recorder,\n\t\t\tincluding global resource types, Config starts recording resources of that type automatically.

\n \n

\n How to use the exclusion recording strategy \n

\n

To use this option, you must set the useOnly\n\t\t\t\tfield of RecordingStrategy\n\t\t\t\tto EXCLUSION_BY_RESOURCE_TYPES.

\n

Config will then record configuration changes for all supported resource types, except the resource types that you specify to exclude from being recorded.

\n

\n Global resource types and the exclusion recording strategy \n

\n

Unless specifically listed as exclusions,\n\t\t\t\tAWS::RDS::GlobalCluster will be recorded automatically in all supported Config Regions were the configuration recorder is enabled.

\n

IAM users, groups, roles, and customer managed policies will be recorded in the Region where you set up the configuration recorder if that is a Region where Config was available before February 2022.\n\t\t\t\tYou cannot be record the global IAM resouce types in Regions supported by Config after February 2022. This list where you cannot record the global IAM resource types includes the following Regions:

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

Specifies whether the configuration recorder excludes certain resource types from being recorded.\n\t\t\tUse the resourceTypes field to enter a comma-separated list of resource types you want to exclude from recording.

\n

By default, when Config adds support for a new resource type in the Region where you set up the configuration recorder,\n\t\t\tincluding global resource types, Config starts recording resources of that type automatically.

\n \n

\n How to use the exclusion recording strategy \n

\n

To use this option, you must set the useOnly\n\t\t\t\tfield of RecordingStrategy\n\t\t\t\tto EXCLUSION_BY_RESOURCE_TYPES.

\n

Config will then record configuration changes for all supported resource types, except the resource types that you specify to exclude from being recorded.

\n

\n Global resource types and the exclusion recording strategy \n

\n

Unless specifically listed as exclusions,\n\t\t\t\tAWS::RDS::GlobalCluster will be recorded automatically in all supported Config Regions were the configuration recorder is enabled.

\n

IAM users, groups, roles, and customer managed policies will be recorded in the Region where you set up the configuration recorder if that is a Region where Config was available before February 2022.\n\t\t\t\tYou cannot be record the global IAM resouce types in Regions supported by Config after February 2022. For a list of those Regions,\n\t\t\t\tsee Recording Amazon Web Services Resources | Global Resources.

\n
" } }, "com.amazonaws.configservice#ExecutionControls": { @@ -6118,7 +6541,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns configuration item that is aggregated for your specific resource in a specific source account and region.

" + "smithy.api#documentation": "

Returns configuration item that is aggregated for your specific resource in a specific source account and region.

\n \n

The API does not return results for deleted resources.

\n
" } }, "com.amazonaws.configservice#GetAggregateResourceConfigRequest": { @@ -6957,7 +7380,7 @@ } ], "traits": { - "smithy.api#documentation": "\n

For accurate reporting on the compliance status, you must record the AWS::Config::ResourceCompliance resource type.\n\t\t\tFor more information, see Selecting Which Resources Config Records.

\n
\n

Returns a list of ConfigurationItems for the specified resource.\n\t\t\tThe list contains details about each state of the resource\n\t\t\tduring the specified time interval. If you specified a retention\n\t\t\tperiod to retain your ConfigurationItems between a\n\t\t\tminimum of 30 days and a maximum of 7 years (2557 days), Config\n\t\t\treturns the ConfigurationItems for the specified\n\t\t\tretention period.

\n

The response is paginated. By default, Config returns a\n\t\t\tlimit of 10 configuration items per page. You can customize this\n\t\t\tnumber with the limit parameter. The response includes\n\t\t\ta nextToken string. To get the next page of results,\n\t\t\trun the request again and specify the string for the\n\t\t\t\tnextToken parameter.

\n \n

Each call to the API is limited to span a duration of seven\n\t\t\t\tdays. It is likely that the number of records returned is\n\t\t\t\tsmaller than the specified limit. In such cases,\n\t\t\t\tyou can make another call, using the\n\t\t\t\tnextToken.

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

For accurate reporting on the compliance status, you must record the AWS::Config::ResourceCompliance resource type.

\n

For more information, see Recording Amazon Web Services Resources in the Config Resources Developer Guide.

\n
\n

Returns a list of configurations items (CIs) for the specified resource.

\n

\n Contents\n

\n

The list contains details about each state of the resource\n\t\t\tduring the specified time interval. If you specified a retention\n\t\t\tperiod to retain your CIs between a\n\t\t\tminimum of 30 days and a maximum of 7 years (2557 days), Config\n\t\t\treturns the CIs for the specified\n\t\t\tretention period.

\n

\n Pagination\n

\n

The response is paginated. By default, Config returns a\n\t\t\tlimit of 10 configuration items per page. You can customize this\n\t\t\tnumber with the limit parameter. The response includes\n\t\t\ta nextToken string. To get the next page of results,\n\t\t\trun the request again and specify the string for the\n\t\t\t\tnextToken parameter.

\n \n

Each call to the API is limited to span a duration of seven\n\t\t\t\tdays. It is likely that the number of records returned is\n\t\t\t\tsmaller than the specified limit. In such cases,\n\t\t\t\tyou can make another call, using the\n\t\t\t\tnextToken.

\n
", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", @@ -7026,7 +7449,7 @@ "configurationItems": { "target": "com.amazonaws.configservice#ConfigurationItemList", "traits": { - "smithy.api#documentation": "

A list that contains the configuration history of one or more\n\t\t\tresources.

" + "smithy.api#documentation": "

An array of ConfigurationItems Objects. Contatins the configuration history for one or more\n\t\t\tresources.

" } }, "nextToken": { @@ -7241,7 +7664,7 @@ } }, "traits": { - "smithy.api#documentation": "

Your Amazon S3 bucket policy does not permit Config to\n\t\t\twrite to it.

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

Your Amazon S3 bucket policy does not allow Config to\n\t\t\twrite to it.

", "smithy.api#error": "client" } }, @@ -7256,7 +7679,7 @@ } }, "traits": { - "smithy.api#documentation": "

Indicates one of the following errors:

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

Indicates one of the following errors:

\n ", "smithy.api#error": "client" } }, @@ -7277,7 +7700,7 @@ } }, "traits": { - "smithy.api#documentation": "

You have provided a name for the configuration recorder that is not\n\t\t\tvalid.

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

The configuration recorder name is not valid. The prefix \"AWSConfigurationRecorderFor\" is reserved for service-linked configuration recorders.

", "smithy.api#error": "client" } }, @@ -7367,7 +7790,7 @@ } }, "traits": { - "smithy.api#documentation": "

Indicates one of the following errors:

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

One of the following errors:

\n ", "smithy.api#error": "client" } }, @@ -7397,7 +7820,7 @@ } }, "traits": { - "smithy.api#documentation": "

You have provided a null or empty Amazon Resource Name (ARN) for the IAM role assumed by Config and used by the configuration recorder.

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

You have provided a null or empty Amazon Resource Name (ARN) for the IAM role assumed by Config and used by the customer managed configuration recorder.

", "smithy.api#error": "client" } }, @@ -7472,7 +7895,7 @@ } }, "traits": { - "smithy.api#documentation": "

You cannot delete the delivery channel you specified because\n\t\t\tthe configuration recorder is running.

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

You cannot delete the delivery channel you specified because the customer managed configuration recorder is running.

", "smithy.api#error": "client" } }, @@ -7503,7 +7926,7 @@ } }, "traits": { - "smithy.api#documentation": "

For StartConfigRulesEvaluation API, this exception\n\t\t\tis thrown if an evaluation is in progress or if you call the StartConfigRulesEvaluation API more than once per\n\t\t\tminute.

\n

For PutConfigurationAggregator API, this exception\n\t\t\tis thrown if the number of accounts and aggregators exceeds the\n\t\t\tlimit.

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

For PutServiceLinkedConfigurationRecorder API, this exception\n\t\t\tis thrown if the number of service-linked roles in the account exceeds the limit.

\n

For StartConfigRulesEvaluation API, this exception\n\t\t\tis thrown if an evaluation is in progress or if you call the StartConfigRulesEvaluation API more than once per\n\t\t\tminute.

\n

For PutConfigurationAggregator API, this exception\n\t\t\tis thrown if the number of accounts and aggregators exceeds the\n\t\t\tlimit.

", "smithy.api#error": "client" } }, @@ -7600,6 +8023,77 @@ "smithy.api#output": {} } }, + "com.amazonaws.configservice#ListConfigurationRecorders": { + "type": "operation", + "input": { + "target": "com.amazonaws.configservice#ListConfigurationRecordersRequest" + }, + "output": { + "target": "com.amazonaws.configservice#ListConfigurationRecordersResponse" + }, + "errors": [ + { + "target": "com.amazonaws.configservice#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns a list of configuration recorders depending on the filters you specify.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "ConfigurationRecorderSummaries", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.configservice#ListConfigurationRecordersRequest": { + "type": "structure", + "members": { + "Filters": { + "target": "com.amazonaws.configservice#ConfigurationRecorderFilterList", + "traits": { + "smithy.api#documentation": "

Filters the results based on a list of ConfigurationRecorderFilter objects that you specify.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.configservice#MaxResults", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

The maximum number of results to include in the response.

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

The NextToken string returned on a previous page that you use to get the next page of results in a paginated response.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.configservice#ListConfigurationRecordersResponse": { + "type": "structure", + "members": { + "ConfigurationRecorderSummaries": { + "target": "com.amazonaws.configservice#ConfigurationRecorderSummaries", + "traits": { + "smithy.api#documentation": "

A list of ConfigurationRecorderSummary objects that includes.

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

The NextToken string returned on a previous page that you use to get the next page of results in a paginated response.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.configservice#ListConformancePackComplianceScores": { "type": "operation", "input": { @@ -7711,7 +8205,7 @@ } ], "traits": { - "smithy.api#documentation": "

Accepts a resource type and returns a list of resource\n\t\t\tidentifiers for the resources of that type. A resource identifier\n\t\t\tincludes the resource type, ID, and (if available) the custom\n\t\t\tresource name. The results consist of resources that Config has\n\t\t\tdiscovered, including those that Config is not currently\n\t\t\trecording. You can narrow the results to include only resources that\n\t\t\thave specific resource IDs or a resource name.

\n \n

You can specify either resource IDs or a resource name, but\n\t\t\t\tnot both, in the same request.

\n
\n

The response is paginated. By default, Config lists 100\n\t\t\tresource identifiers on each page. You can customize this number\n\t\t\twith the limit parameter. The response includes a\n\t\t\t\tnextToken string. To get the next page of results,\n\t\t\trun the request again and specify the string for the\n\t\t\t\tnextToken parameter.

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

Returns a list of resource\n\t\t\tresource identifiers for the specified resource types for the resources of that type. A resource identifier\n\t\t\tincludes the resource type, ID, and (if available) the custom\n\t\t\tresource name.

\n

The results consist of resources that Config has\n\t\t\tdiscovered, including those that Config is not currently\n\t\t\trecording. You can narrow the results to include only resources that\n\t\t\thave specific resource IDs or a resource name.

\n \n

You can specify either resource IDs or a resource name, but\n\t\t\t\tnot both, in the same request.

\n
\n \n

\n CloudFormation stack recording behavior in Config\n

\n

When a CloudFormation stack fails to create (for example, it enters the ROLLBACK_FAILED state), \n\t\t\t\tConfig does not record a configuration item (CI) for that stack. Configuration items are only recorded for stacks that reach \n\t\t\t\tthe following states:

\n \n

Because no CI is created for a failed stack creation, you won't see configuration history \n\t\t\t\tfor that stack in Config, even after the stack is deleted. This helps make sure that Config only \n\t\t\t\ttracks resources that were successfully provisioned.

\n
", "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", @@ -7933,7 +8427,7 @@ "NextToken": { "target": "com.amazonaws.configservice#String", "traits": { - "smithy.api#documentation": "

If the previous paginated request didn't return all of the remaining results, the response object's NextToken parameter value is set to a token. \n\t\t\tTo retrieve the next set of results, call this action again and assign that token to the request object's NextToken parameter. \n\t\t\tIf there are no remaining results, the previous response object's NextToken parameter is set to null.

" + "smithy.api#documentation": "

If the previous paginated request didn't return all of the remaining results, the response object's NextToken parameter value is set to a token. \n\t\t\tTo retrieve the next set of results, call this operation again and assign that token to the request object's NextToken parameter. \n\t\t\tIf there are no remaining results, the previous response object's NextToken parameter is set to null.

" } } }, @@ -7979,7 +8473,7 @@ "ResourceArn": { "target": "com.amazonaws.configservice#AmazonResourceName", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) that identifies the resource for which to list the tags. Currently, the supported resources are ConfigRule, ConfigurationAggregator and AggregatorAuthorization.

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

The Amazon Resource Name (ARN) that identifies the resource for which to list the tags. The following resources are supported:

\n ", "smithy.api#required": {} } }, @@ -8147,6 +8641,16 @@ "smithy.api#error": "client" } }, + "com.amazonaws.configservice#MaxResults": { + "type": "integer", + "traits": { + "smithy.api#default": 0, + "smithy.api#range": { + "min": 0, + "max": 20 + } + } + }, "com.amazonaws.configservice#MaximumExecutionFrequency": { "type": "enum", "members": { @@ -8334,7 +8838,7 @@ } }, "traits": { - "smithy.api#documentation": "

There are no configuration recorders available to provide the\n\t\t\trole needed to describe your resources. Create a configuration\n\t\t\trecorder.

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

There are no customer managed configuration recorders available to record your resources. Use the PutConfigurationRecorder operation to create the customer managed configuration\n\t\t\trecorder.

", "smithy.api#error": "client" } }, @@ -8577,7 +9081,7 @@ } }, "traits": { - "smithy.api#documentation": "

For PutConfigurationAggregator API, you can see this exception for the following reasons:

\n \n

For all OrganizationConfigRule and OrganizationConformancePack APIs, Config throws an exception if APIs are called from member accounts. All APIs must be called from organization management account.

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

For PutConfigurationAggregator API, you can see this exception for the following reasons:

\n \n

For all OrganizationConfigRule and OrganizationConformancePack APIs, Config throws an exception if APIs are called from member accounts. All APIs must be called from organization management account.

", "smithy.api#error": "client" } }, @@ -8689,7 +9193,7 @@ "min": 1, "max": 64 }, - "smithy.api#pattern": "\\S" + "smithy.api#pattern": "^[A-Za-z0-9-_]+$" } }, "com.amazonaws.configservice#OrganizationConfigRuleNames": { @@ -9599,7 +10103,7 @@ } ], "traits": { - "smithy.api#documentation": "

Authorizes the aggregator account and region to collect data\n\t\t\tfrom the source account and region.

\n \n

\n PutAggregationAuthorization is an idempotent API. Subsequent requests won’t create a duplicate resource if one was already created. If a following request has different tags values,\n\t\t\tConfig will ignore these differences and treat it as an idempotent request of the previous. In this case, tags will not be updated, even if they are different.

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

Authorizes the aggregator account and region to collect data\n\t\t\tfrom the source account and region.

\n \n

\n Tags are added at creation and cannot be updated with this operation\n

\n

\n PutAggregationAuthorization is an idempotent API. Subsequent requests won’t create a duplicate resource if one was already created. If a following request has different tags values,\n\t\t\tConfig will ignore these differences and treat it as an idempotent request of the previous. In this case, tags will not be updated, even if they are different.

\n

Use TagResource and UntagResource to update tags after creation.

\n
" } }, "com.amazonaws.configservice#PutAggregationAuthorizationRequest": { @@ -9670,7 +10174,7 @@ } ], "traits": { - "smithy.api#documentation": "

Adds or updates an Config rule to evaluate if your\n\t\t\tAmazon Web Services resources comply with your desired configurations. For information on how many Config rules you can have per account, \n\t\t\tsee \n Service Limits\n in the Config Developer Guide.

\n

There are two types of rules: Config Managed Rules and Config Custom Rules.\n\t\t\tYou can use PutConfigRule to create both Config Managed Rules and Config Custom Rules.

\n

Config Managed Rules are predefined,\n\t\t\tcustomizable rules created by Config. For a list of managed rules, see\n\t\t\tList of Config\n\t\t\t\tManaged Rules. If you are adding an Config managed rule, you must specify the\n\t\t\trule's identifier for the SourceIdentifier key.

\n

Config Custom Rules are rules that you create from scratch. There are two ways to create Config custom rules: with Lambda functions\n\t\t\t( Lambda Developer Guide) and with Guard (Guard GitHub\n\t\t\t\t\tRepository), a policy-as-code language.\n\t\t\t\n\t\t\tConfig custom rules created with Lambda\n\t\t\tare called Config Custom Lambda Rules and Config custom rules created with\n\t\t\tGuard are called Config Custom Policy Rules.

\n

If you are adding a new Config Custom Lambda rule,\n\t\t\tyou first need to create an Lambda function that the rule invokes to evaluate\n\t\t\tyour resources. When you use PutConfigRule to add a Custom Lambda rule to Config, you must specify the Amazon Resource\n\t\t\tName (ARN) that Lambda assigns to the function. You specify the ARN\n\t\t\tin the SourceIdentifier key. This key is part of the\n\t\t\tSource object, which is part of the\n\t\t\tConfigRule object.

\n

For any new Config rule that you add, specify the\n\t\t\t\tConfigRuleName in the ConfigRule\n\t\t\tobject. Do not specify the ConfigRuleArn or the\n\t\t\tConfigRuleId. These values are generated by Config for new rules.

\n

If you are updating a rule that you added previously, you can\n\t\t\tspecify the rule by ConfigRuleName,\n\t\t\t\tConfigRuleId, or ConfigRuleArn in the\n\t\t\t\tConfigRule data type that you use in this\n\t\t\trequest.

\n

For more information about developing and using Config\n\t\t\trules, see Evaluating Resources with Config Rules\n\t\t\tin the Config Developer Guide.

\n \n

\n PutConfigRule is an idempotent API. Subsequent requests won’t create a duplicate resource if one was already created. If a following request has different tags values,\n\t\t\tConfig will ignore these differences and treat it as an idempotent request of the previous. In this case, tags will not be updated, even if they are different.

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

Adds or updates an Config rule to evaluate if your\n\t\t\tAmazon Web Services resources comply with your desired configurations. For information on how many Config rules you can have per account, \n\t\t\tsee \n Service Limits\n in the Config Developer Guide.

\n

There are two types of rules: Config Managed Rules and Config Custom Rules.\n\t\t\tYou can use PutConfigRule to create both Config Managed Rules and Config Custom Rules.

\n

Config Managed Rules are predefined,\n\t\t\tcustomizable rules created by Config. For a list of managed rules, see\n\t\t\tList of Config\n\t\t\t\tManaged Rules. If you are adding an Config managed rule, you must specify the\n\t\t\trule's identifier for the SourceIdentifier key.

\n

Config Custom Rules are rules that you create from scratch. There are two ways to create Config custom rules: with Lambda functions\n\t\t\t( Lambda Developer Guide) and with Guard (Guard GitHub\n\t\t\t\t\tRepository), a policy-as-code language.\n\t\t\t\n\t\t\tConfig custom rules created with Lambda\n\t\t\tare called Config Custom Lambda Rules and Config custom rules created with\n\t\t\tGuard are called Config Custom Policy Rules.

\n

If you are adding a new Config Custom Lambda rule,\n\t\t\tyou first need to create an Lambda function that the rule invokes to evaluate\n\t\t\tyour resources. When you use PutConfigRule to add a Custom Lambda rule to Config, you must specify the Amazon Resource\n\t\t\tName (ARN) that Lambda assigns to the function. You specify the ARN\n\t\t\tin the SourceIdentifier key. This key is part of the\n\t\t\tSource object, which is part of the\n\t\t\tConfigRule object.

\n

For any new Config rule that you add, specify the\n\t\t\t\tConfigRuleName in the ConfigRule\n\t\t\tobject. Do not specify the ConfigRuleArn or the\n\t\t\tConfigRuleId. These values are generated by Config for new rules.

\n

If you are updating a rule that you added previously, you can\n\t\t\tspecify the rule by ConfigRuleName,\n\t\t\t\tConfigRuleId, or ConfigRuleArn in the\n\t\t\t\tConfigRule data type that you use in this\n\t\t\trequest.

\n

For more information about developing and using Config\n\t\t\trules, see Evaluating Resources with Config Rules\n\t\t\tin the Config Developer Guide.

\n \n

\n Tags are added at creation and cannot be updated with this operation\n

\n

\n PutConfigRule is an idempotent API. Subsequent requests won’t create a duplicate resource if one was already created. If a following request has different tags values,\n\t\t\tConfig will ignore these differences and treat it as an idempotent request of the previous. In this case, tags will not be updated, even if they are different.

\n

Use TagResource and UntagResource to update tags after creation.

\n
" } }, "com.amazonaws.configservice#PutConfigRuleRequest": { @@ -9723,7 +10227,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates and updates the configuration aggregator with the\n\t\t\tselected source accounts and regions. The source account can be\n\t\t\tindividual account(s) or an organization.

\n

\n accountIds that are passed will be replaced with existing accounts.\n\t\t\tIf you want to add additional accounts into the aggregator, call DescribeConfigurationAggregators to get the previous accounts and then append new ones.

\n \n

Config should be enabled in source accounts and regions\n\t\t\t\tyou want to aggregate.

\n

If your source type is an organization, you must be signed in to the management account or a registered delegated administrator and all the features must be enabled in your organization. \n\t\t\t\tIf the caller is a management account, Config calls EnableAwsServiceAccess API to enable integration between Config and Organizations.\n\t\t\t\tIf the caller is a registered delegated administrator, Config calls ListDelegatedAdministrators API to verify whether the caller is a valid delegated administrator.

\n

To register a delegated administrator, see Register a Delegated Administrator in the Config developer guide.

\n
\n \n

\n PutConfigurationAggregator is an idempotent API. Subsequent requests won’t create a duplicate resource if one was already created. If a following request has different tags values,\n\t\t\tConfig will ignore these differences and treat it as an idempotent request of the previous. In this case, tags will not be updated, even if they are different.

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

Creates and updates the configuration aggregator with the\n\t\t\tselected source accounts and regions. The source account can be\n\t\t\tindividual account(s) or an organization.

\n

\n accountIds that are passed will be replaced with existing accounts.\n\t\t\tIf you want to add additional accounts into the aggregator, call DescribeConfigurationAggregators to get the previous accounts and then append new ones.

\n \n

Config should be enabled in source accounts and regions\n\t\t\t\tyou want to aggregate.

\n

If your source type is an organization, you must be signed in to the management account or a registered delegated administrator and all the features must be enabled in your organization. \n\t\t\t\tIf the caller is a management account, Config calls EnableAwsServiceAccess API to enable integration between Config and Organizations.\n\t\t\t\tIf the caller is a registered delegated administrator, Config calls ListDelegatedAdministrators API to verify whether the caller is a valid delegated administrator.

\n

To register a delegated administrator, see Register a Delegated Administrator in the Config developer guide.

\n
\n \n

\n Tags are added at creation and cannot be updated with this operation\n

\n

\n PutConfigurationAggregator is an idempotent API. Subsequent requests won’t create a duplicate resource if one was already created. If a following request has different tags values,\n\t\t\tConfig will ignore these differences and treat it as an idempotent request of the previous. In this case, tags will not be updated, even if they are different.

\n

Use TagResource and UntagResource to update tags after creation.

\n
" } }, "com.amazonaws.configservice#PutConfigurationAggregatorRequest": { @@ -9753,6 +10257,12 @@ "traits": { "smithy.api#documentation": "

An array of tag object.

" } + }, + "AggregatorFilters": { + "target": "com.amazonaws.configservice#AggregatorFilters", + "traits": { + "smithy.api#documentation": "

An object to filter configuration recorders in an aggregator. Either ResourceType or ServicePrincipal is required.

" + } } }, "traits": { @@ -9794,12 +10304,15 @@ { "target": "com.amazonaws.configservice#MaxNumberOfConfigurationRecordersExceededException" }, + { + "target": "com.amazonaws.configservice#UnmodifiableEntityException" + }, { "target": "com.amazonaws.configservice#ValidationException" } ], "traits": { - "smithy.api#documentation": "

Creates a new configuration recorder to record configuration changes for specified resource types.

\n

You can also use this action to change the roleARN\n\t\t\tor the recordingGroup of an existing recorder.\n\t\t\tFor more information, see \n Managing the Configuration Recorder\n in the Config Developer Guide.

\n \n

You can specify only one configuration recorder for each Amazon Web Services Region for each account.

\n

If the configuration recorder does not have the\n\t\t\t\t\trecordingGroup field\n\t\t\t\tspecified, the default is to record all supported resource\n\t\t\t\ttypes.

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

Creates or updates the customer managed configuration recorder.

\n

You can use this operation to create a new customer managed configuration recorder or to update the roleARN and the recordingGroup for an existing customer managed configuration recorder.

\n

To start the customer managed configuration recorder and begin recording configuration changes for the resource types you specify,\n\t\t\tuse the StartConfigurationRecorder operation.

\n

For more information, see \n Working with the Configuration Recorder\n in the Config Developer Guide.

\n \n

\n One customer managed configuration recorder per account per Region\n

\n

You can create only one customer managed configuration recorder for each account for each Amazon Web Services Region.

\n

\n Default is to record all supported resource types, excluding the global IAM resource types\n

\n

If you have not specified values for the recordingGroup field, the default for the customer managed configuration recorder is to record all supported resource\n\t\t\t\ttypes, excluding the global IAM resource types: AWS::IAM::Group, AWS::IAM::Policy, AWS::IAM::Role, and AWS::IAM::User.

\n

\n Tags are added at creation and cannot be updated\n

\n

\n PutConfigurationRecorder is an idempotent API. Subsequent requests won’t create a duplicate resource if one was already created. If a following request has different tags values,\n\t\t\t\tConfig will ignore these differences and treat it as an idempotent request of the previous. In this case, tags will not be updated, even if they are different.

\n

Use TagResource and UntagResource to update tags after creation.

\n
" } }, "com.amazonaws.configservice#PutConfigurationRecorderRequest": { @@ -9808,9 +10321,15 @@ "ConfigurationRecorder": { "target": "com.amazonaws.configservice#ConfigurationRecorder", "traits": { - "smithy.api#documentation": "

An object for the configuration recorder to record configuration changes for specified resource types.

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

An object for the configuration recorder. A configuration recorder records configuration changes for the resource types in scope.

", "smithy.api#required": {} } + }, + "Tags": { + "target": "com.amazonaws.configservice#TagsList", + "traits": { + "smithy.api#documentation": "

The tags for the customer managed configuration recorder. Each tag consists of a key and an optional value, both of which you define.

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

Creates or updates a conformance pack. A conformance pack is a collection of Config rules that can be easily deployed in an account and a region and across an organization.\n\t\t\tFor information on how many conformance packs you can have per account, \n\t\t\tsee \n Service Limits\n in the Config Developer Guide.

\n

This API creates a service-linked role AWSServiceRoleForConfigConforms in your account. \n\t\tThe service-linked role is created only when the role does not exist in your account.

\n \n

You must specify only one of the follow parameters: TemplateS3Uri, TemplateBody or TemplateSSMDocumentDetails.

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

Creates or updates a conformance pack. A conformance pack is a collection of Config rules that can be easily deployed in an account and a region and across an organization.\n\t\t\tFor information on how many conformance packs you can have per account, \n\t\t\tsee \n Service Limits\n in the Config Developer Guide.

\n \n

When you use PutConformancePack to deploy conformance packs in your account,\n\t\t\t\tthe operation can create Config rules and remediation actions without\n\t\t\t\trequiring config:PutConfigRule or\n\t\t\t\t\tconfig:PutRemediationConfigurations permissions in your account IAM\n\t\t\t\tpolicies.

\n

This API uses the AWSServiceRoleForConfigConforms service-linked role in your\n\t\t\t\taccount to create conformance pack resources. This service-linked role includes the\n\t\t\t\tpermissions to create Config rules and remediation configurations, even\n\t\t\t\tif your account IAM policies explicitly deny these actions.

\n
\n

This API creates a service-linked role AWSServiceRoleForConfigConforms in your account. \n\t\tThe service-linked role is created only when the role does not exist in your account.

\n \n

You must specify only one of the follow parameters: TemplateS3Uri, TemplateBody or TemplateSSMDocumentDetails.

\n
" } }, "com.amazonaws.configservice#PutConformancePackRequest": { @@ -9866,7 +10385,7 @@ "TemplateBody": { "target": "com.amazonaws.configservice#TemplateBody", "traits": { - "smithy.api#documentation": "

A string containing the full conformance pack template body. The structure containing the template body has a minimum length of 1 byte and a maximum length of 51,200 bytes.

\n \n

You can use a YAML template with two resource types: Config rule (AWS::Config::ConfigRule) and remediation action (AWS::Config::RemediationConfiguration).

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

A string that contains the full conformance pack template body. The structure containing the template body has a minimum length of 1 byte and a maximum length of 51,200 bytes.

\n \n

You can use a YAML template with two resource types: Config rule (AWS::Config::ConfigRule) and remediation action (AWS::Config::RemediationConfiguration).

\n
" } }, "DeliveryS3Bucket": { @@ -9947,7 +10466,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a delivery channel object to deliver configuration\n\t\t\tinformation and other compliance information to an Amazon S3 bucket and Amazon SNS topic.\n\t\t\tFor more information,\n\t\t\tsee Notifications that Config Sends to an Amazon SNS topic.

\n

Before you can create a delivery channel, you must create a\n\t\t\tconfiguration recorder.

\n

You can use this action to change the Amazon S3 bucket or an\n\t\t\tAmazon SNS topic of the existing delivery channel. To change the\n\t\t\tAmazon S3 bucket or an Amazon SNS topic, call this action and\n\t\t\tspecify the changed values for the S3 bucket and the SNS topic. If\n\t\t\tyou specify a different value for either the S3 bucket or the SNS\n\t\t\ttopic, this action will keep the existing value for the parameter\n\t\t\tthat is not changed.

\n \n

You can have only one delivery channel per region in your\n\t\t\t\taccount.

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

Creates or updates a delivery channel to deliver configuration\n\t\t\tinformation and other compliance information.

\n

You can use this operation to create a new delivery channel or to update the Amazon S3 bucket and the\n\t\t\tAmazon SNS topic of an existing delivery channel.

\n

For more information, see \n Working with the Delivery Channel\n in the Config Developer Guide.\n

\n \n

\n One delivery channel per account per Region\n

\n

You can have only one delivery channel for each account for each Amazon Web Services Region.

\n
" } }, "com.amazonaws.configservice#PutDeliveryChannelRequest": { @@ -9956,7 +10475,7 @@ "DeliveryChannel": { "target": "com.amazonaws.configservice#DeliveryChannel", "traits": { - "smithy.api#documentation": "

The configuration delivery channel object that delivers the\n\t\t\tconfiguration information to an Amazon S3 bucket and to an Amazon\n\t\t\tSNS topic.

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

An object for the delivery channel. A delivery channel sends notifications and updated configuration states.\n\t\t

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

Used by an Lambda function to deliver evaluation results to\n\t\t\tConfig. This action is required in every Lambda function\n\t\t\tthat is invoked by an Config rule.

" + "smithy.api#documentation": "

Used by an Lambda function to deliver evaluation results to\n\t\t\tConfig. This operation is required in every Lambda function\n\t\t\tthat is invoked by an Config rule.

" } }, "com.amazonaws.configservice#PutEvaluationsRequest": { @@ -10208,7 +10727,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deploys conformance packs across member accounts in an Amazon Web Services Organization. For information on how many organization conformance packs and how many Config rules you can have per account, \n\t\t\tsee \n Service Limits\n in the Config Developer Guide.

\n

Only a management account and a delegated administrator can call this API. \n\t\t\tWhen calling this API with a delegated administrator, you must ensure Organizations \n\t\t\tListDelegatedAdministrator permissions are added. An organization can have up to 3 delegated administrators.

\n

This API enables organization service access for config-multiaccountsetup.amazonaws.com\n\t\t\tthrough the EnableAWSServiceAccess action and creates a \n\t\t\tservice-linked role AWSServiceRoleForConfigMultiAccountSetup in the management or delegated administrator account of your organization. \n\t\t\tThe service-linked role is created only when the role does not exist in the caller account. \n\t\t\tTo use this API with delegated administrator, register a delegated administrator by calling Amazon Web Services Organization \n\t\t\tregister-delegate-admin for config-multiaccountsetup.amazonaws.com.

\n \n

Prerequisite: Ensure you call EnableAllFeatures API to enable all features in an organization.

\n

You must specify either the TemplateS3Uri or the TemplateBody parameter, but not both. \n\t\t\tIf you provide both Config uses the TemplateS3Uri parameter and ignores the TemplateBody parameter.

\n

Config sets the state of a conformance pack to CREATE_IN_PROGRESS and UPDATE_IN_PROGRESS until the conformance pack is created or updated. \n\t\t\t\tYou cannot update a conformance pack while it is in this state.

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

Deploys conformance packs across member accounts in an Amazon Web Services Organization. For information on how many organization conformance packs and how many Config rules you can have per account, \n\t\t\tsee \n Service Limits\n in the Config Developer Guide.

\n

Only a management account and a delegated administrator can call this API. \n\t\t\tWhen calling this API with a delegated administrator, you must ensure Organizations \n\t\t\tListDelegatedAdministrator permissions are added. An organization can have up to 3 delegated administrators.

\n \n

When you use PutOrganizationConformancePack to deploy conformance packs across\n\t\t\t\tmember accounts, the operation can create Config rules and remediation\n\t\t\t\tactions without requiring config:PutConfigRule or\n\t\t\t\t\tconfig:PutRemediationConfigurations permissions in member account\n\t\t\t\tIAM policies.

\n

This API uses the AWSServiceRoleForConfigConforms service-linked role in each\n\t\t\t\tmember account to create conformance pack resources. This service-linked role\n\t\t\t\tincludes the permissions to create Config rules and remediation\n\t\t\t\tconfigurations, even if member account IAM policies explicitly deny these\n\t\t\t\tactions.

\n
\n

This API enables organization service access for config-multiaccountsetup.amazonaws.com\n\t\t\tthrough the EnableAWSServiceAccess action and creates a \n\t\t\tservice-linked role AWSServiceRoleForConfigMultiAccountSetup in the management or delegated administrator account of your organization. \n\t\t\tThe service-linked role is created only when the role does not exist in the caller account. \n\t\t\tTo use this API with delegated administrator, register a delegated administrator by calling Amazon Web Services Organization \n\t\t\tregister-delegate-admin for config-multiaccountsetup.amazonaws.com.

\n \n

Prerequisite: Ensure you call EnableAllFeatures API to enable all features in an organization.

\n

You must specify either the TemplateS3Uri or the TemplateBody parameter, but not both. \n\t\t\tIf you provide both Config uses the TemplateS3Uri parameter and ignores the TemplateBody parameter.

\n

Config sets the state of a conformance pack to CREATE_IN_PROGRESS and UPDATE_IN_PROGRESS until the conformance pack is created or updated. \n\t\t\t\tYou cannot update a conformance pack while it is in this state.

\n
" } }, "com.amazonaws.configservice#PutOrganizationConformancePackRequest": { @@ -10230,7 +10749,7 @@ "TemplateBody": { "target": "com.amazonaws.configservice#TemplateBody", "traits": { - "smithy.api#documentation": "

A string containing full conformance pack template body. Structure containing the template body\n\t\t\twith a minimum length of 1 byte and a maximum length of 51,200 bytes.

" + "smithy.api#documentation": "

A string that contains the full conformance pack template body. Structure containing the template body\n\t\t\twith a minimum length of 1 byte and a maximum length of 51,200 bytes.

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

A remediation exception is when a specified resource is no longer considered for auto-remediation. \n\t\t\tThis API adds a new exception or updates an existing exception for a specified resource with a specified Config rule.

\n \n

\n Exceptions block auto remediation\n

\n

Config generates a remediation exception when a problem occurs running a remediation action for a specified resource. \n\t\t\tRemediation exceptions blocks auto-remediation until the exception is cleared.

\n
\n \n

\n Manual remediation is recommended when placing an exception\n

\n

When placing an exception on an Amazon Web Services resource, it is recommended that remediation is set as manual remediation until\n\t\t\tthe given Config rule for the specified resource evaluates the resource as NON_COMPLIANT.\n\t\t\tOnce the resource has been evaluated as NON_COMPLIANT, you can add remediation exceptions and change the remediation type back from Manual to Auto if you want to use auto-remediation.\n\t\t\tOtherwise, using auto-remediation before a NON_COMPLIANT evaluation result can delete resources before the exception is applied.

\n
\n \n

\n Exceptions can only be performed on non-compliant resources\n

\n

Placing an exception can only be performed on resources that are NON_COMPLIANT.\n\t\t\tIf you use this API for COMPLIANT resources or resources that are NOT_APPLICABLE, a remediation exception will not be generated.\n\t\t\tFor more information on the conditions that initiate the possible Config evaluation results,\n\t\t\tsee Concepts | Config Rules in the Config Developer Guide.

\n
\n \n

\n Auto remediation can be initiated even for compliant resources\n

\n

If you enable auto remediation for a specific Config rule using the PutRemediationConfigurations API or the Config console,\n\t\t\t\tit initiates the remediation process for all non-compliant resources for that specific rule.\n\t\t\t\tThe auto remediation process relies on the compliance data snapshot which is captured on a periodic basis.\n\t\t\t\tAny non-compliant resource that is updated between the snapshot schedule will continue to be remediated based on the last known compliance data snapshot.

\n

This means that in some cases auto remediation can be initiated even for compliant resources, since the bootstrap processor uses a database that can have stale evaluation results based on the last known compliance data snapshot.

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

A remediation exception is when a specified resource is no longer considered for auto-remediation. \n\t\t\tThis API adds a new exception or updates an existing exception for a specified resource with a specified Config rule.

\n \n

\n Exceptions block auto remediation\n

\n

Config generates a remediation exception when a problem occurs running a remediation action for a specified resource. \n\t\t\tRemediation exceptions blocks auto-remediation until the exception is cleared.

\n
\n \n

\n Manual remediation is recommended when placing an exception\n

\n

When placing an exception on an Amazon Web Services resource, it is recommended that remediation is set as manual remediation until\n\t\t\tthe given Config rule for the specified resource evaluates the resource as NON_COMPLIANT.\n\t\t\tOnce the resource has been evaluated as NON_COMPLIANT, you can add remediation exceptions and change the remediation type back from Manual to Auto if you want to use auto-remediation.\n\t\t\tOtherwise, using auto-remediation before a NON_COMPLIANT evaluation result can delete resources before the exception is applied.

\n
\n \n

\n Exceptions can only be performed on non-compliant resources\n

\n

Placing an exception can only be performed on resources that are NON_COMPLIANT.\n\t\t\tIf you use this API for COMPLIANT resources or resources that are NOT_APPLICABLE, a remediation exception will not be generated.\n\t\t\tFor more information on the conditions that initiate the possible Config evaluation results,\n\t\t\tsee Concepts | Config Rules in the Config Developer Guide.

\n
\n \n

\n Exceptions cannot be placed on service-linked remediation actions\n

\n

You cannot place an exception on service-linked remediation actions, such as remediation actions put by an organizational conformance pack.

\n
\n \n

\n Auto remediation can be initiated even for compliant resources\n

\n

If you enable auto remediation for a specific Config rule using the PutRemediationConfigurations API or the Config console,\n\t\t\t\tit initiates the remediation process for all non-compliant resources for that specific rule.\n\t\t\t\tThe auto remediation process relies on the compliance data snapshot which is captured on a periodic basis.\n\t\t\t\tAny non-compliant resource that is updated between the snapshot schedule will continue to be remediated based on the last known compliance data snapshot.

\n

This means that in some cases auto remediation can be initiated even for compliant resources, since the bootstrap processor uses a database that can have stale evaluation results based on the last known compliance data snapshot.

\n
" } }, "com.amazonaws.configservice#PutRemediationExceptionsRequest": { @@ -10516,6 +11035,73 @@ "smithy.api#output": {} } }, + "com.amazonaws.configservice#PutServiceLinkedConfigurationRecorder": { + "type": "operation", + "input": { + "target": "com.amazonaws.configservice#PutServiceLinkedConfigurationRecorderRequest" + }, + "output": { + "target": "com.amazonaws.configservice#PutServiceLinkedConfigurationRecorderResponse" + }, + "errors": [ + { + "target": "com.amazonaws.configservice#ConflictException" + }, + { + "target": "com.amazonaws.configservice#InsufficientPermissionsException" + }, + { + "target": "com.amazonaws.configservice#LimitExceededException" + }, + { + "target": "com.amazonaws.configservice#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a service-linked configuration recorder that is linked to a specific Amazon Web Services service based on the ServicePrincipal you specify.

\n

The configuration recorder's name, recordingGroup, recordingMode, and recordingScope is set by the service that is linked to the configuration recorder.

\n

For more information and a list of supported services/service principals, see \n Working with the Configuration Recorder\n in the Config Developer Guide.

\n

This API creates a service-linked role AWSServiceRoleForConfig in your account. The service-linked role is created only when the role does not exist in your account.

\n \n

\n The recording scope determines if you receive configuration items\n

\n

The recording scope is set by the service that is linked to the configuration recorder and determines whether you receive configuration items (CIs) in the delivery channel. If the recording scope is internal, you will not receive CIs in the delivery channel.

\n

\n Tags are added at creation and cannot be updated with this operation\n

\n

Use TagResource and UntagResource to update tags after creation.

\n
" + } + }, + "com.amazonaws.configservice#PutServiceLinkedConfigurationRecorderRequest": { + "type": "structure", + "members": { + "ServicePrincipal": { + "target": "com.amazonaws.configservice#ServicePrincipal", + "traits": { + "smithy.api#documentation": "

The service principal of the Amazon Web Services service for the service-linked configuration recorder that you want to create.

", + "smithy.api#required": {} + } + }, + "Tags": { + "target": "com.amazonaws.configservice#TagsList", + "traits": { + "smithy.api#documentation": "

The tags for a service-linked configuration recorder. Each tag consists of a key and an optional value, both of which you define.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.configservice#PutServiceLinkedConfigurationRecorderResponse": { + "type": "structure", + "members": { + "Arn": { + "target": "com.amazonaws.configservice#AmazonResourceName", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the specified configuration recorder.

" + } + }, + "Name": { + "target": "com.amazonaws.configservice#RecorderName", + "traits": { + "smithy.api#documentation": "

The name of the specified configuration recorder.

\n

For service-linked configuration recorders, Config automatically assigns a name that has the prefix \"AWSConfigurationRecorderFor\" to the new service-linked configuration recorder.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.configservice#PutStoredQuery": { "type": "operation", "input": { @@ -10536,7 +11122,7 @@ } ], "traits": { - "smithy.api#documentation": "

Saves a new query or updates an existing saved query. The QueryName must be unique for a single Amazon Web Services account and a single Amazon Web Services Region.\n\t\t\tYou can create upto 300 queries in a single Amazon Web Services account and a single Amazon Web Services Region.

\n \n

\n PutStoredQuery is an idempotent API. Subsequent requests won’t create a duplicate resource if one was already created. If a following request has different tags values,\n\t\t\tConfig will ignore these differences and treat it as an idempotent request of the previous. In this case, tags will not be updated, even if they are different.

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

Saves a new query or updates an existing saved query. The QueryName must be unique for a single Amazon Web Services account and a single Amazon Web Services Region.\n\t\t\tYou can create upto 300 queries in a single Amazon Web Services account and a single Amazon Web Services Region.

\n \n

\n Tags are added at creation and cannot be updated\n

\n

\n PutStoredQuery is an idempotent API. Subsequent requests won’t create a duplicate resource if one was already created. If a following request has different tags values,\n\t\t\tConfig will ignore these differences and treat it as an idempotent request of the previous. In this case, tags will not be updated, even if they are different.

\n
" } }, "com.amazonaws.configservice#PutStoredQueryRequest": { @@ -10667,6 +11253,12 @@ "traits": { "smithy.api#enumValue": "Failure" } + }, + "NotApplicable": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NotApplicable" + } } } }, @@ -10701,7 +11293,7 @@ "target": "com.amazonaws.configservice#IncludeGlobalResourceTypes", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

This option is a bundle which only applies to the global IAM resource types:\n\t\t\tIAM users, groups, roles, and customer managed policies. These global IAM resource types can only be recorded\n\t\t\tby Config in Regions where Config was available before February 2022.\n\t\t\tYou cannot be record the global IAM resouce types in Regions supported by Config after February 2022.\n\t\t\tThis list where you cannot record the global IAM resource types includes the following Regions:

\n \n \n

\n Aurora global clusters are recorded in all enabled Regions\n

\n

The AWS::RDS::GlobalCluster resource type will be recorded in all supported Config Regions where the configuration recorder is enabled, even if includeGlobalResourceTypes is setfalse.\n\t\t\t\tThe includeGlobalResourceTypes option is a bundle which only applies to IAM users, groups, roles, and customer managed policies.\n\t\t\t

\n

If you do not want to record AWS::RDS::GlobalCluster in all enabled Regions, use one of the following recording strategies:

\n
    \n
  1. \n

    \n Record all current and future resource types with exclusions (EXCLUSION_BY_RESOURCE_TYPES), or

    \n
  2. \n
  3. \n

    \n Record specific resource types (INCLUSION_BY_RESOURCE_TYPES).

    \n
  4. \n
\n

For more information, see Selecting Which Resources are Recorded in the Config developer guide.

\n
\n \n

\n includeGlobalResourceTypes and the exclusion recording strategy\n

\n

The includeGlobalResourceTypes field has no impact on the EXCLUSION_BY_RESOURCE_TYPES recording strategy.\n\t\t\t\tThis means that the global IAM resource types (IAM users, groups, roles, and customer managed policies) will\n\t\t\t\tnot be automatically added as exclusions for exclusionByResourceTypes when includeGlobalResourceTypes is set to false.

\n

The includeGlobalResourceTypes field should only be used to modify the AllSupported field, as the default for\n\t\t\t\tthe AllSupported field is to record configuration changes for all supported resource types excluding the global\n\t\t\t\tIAM resource types. To include the global IAM resource types when AllSupported is set to true, make sure to set includeGlobalResourceTypes to true.

\n

To exclude the global IAM resource types for the EXCLUSION_BY_RESOURCE_TYPES recording strategy, you need to manually add them to the resourceTypes field of exclusionByResourceTypes.

\n
\n \n

\n Required and optional fields\n

\n

Before you set this field to true,\n\t\t\tset the allSupported field of RecordingGroup to\n\t\t\ttrue. Optionally, you can set the useOnly field of RecordingStrategy to ALL_SUPPORTED_RESOURCE_TYPES.

\n
\n \n

\n Overriding fields\n

\n

If you set this field to false but list global IAM resource types in the resourceTypes field of RecordingGroup,\n\t\t\tConfig will still record configuration changes for those specified resource types regardless of if you set the includeGlobalResourceTypes field to false.

\n

If you do not want to record configuration changes to the global IAM resource types (IAM users, groups, roles, and customer managed policies), make sure to not list them in the resourceTypes field\n\t\t\tin addition to setting the includeGlobalResourceTypes field to false.

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

This option is a bundle which only applies to the global IAM resource types:\n\t\t\tIAM users, groups, roles, and customer managed policies. These global IAM resource types can only be recorded\n\t\t\tby Config in Regions where Config was available before February 2022.\n\t\t\tYou cannot be record the global IAM resouce types in Regions supported by Config after February 2022. For a list of those Regions,\n\t\t\tsee Recording Amazon Web Services Resources | Global Resources.

\n \n

\n Aurora global clusters are recorded in all enabled Regions\n

\n

The AWS::RDS::GlobalCluster resource type will be recorded in all supported Config Regions where the configuration recorder is enabled, even if includeGlobalResourceTypes is setfalse.\n\t\t\t\tThe includeGlobalResourceTypes option is a bundle which only applies to IAM users, groups, roles, and customer managed policies.\n\t\t\t

\n

If you do not want to record AWS::RDS::GlobalCluster in all enabled Regions, use one of the following recording strategies:

\n
    \n
  1. \n

    \n Record all current and future resource types with exclusions (EXCLUSION_BY_RESOURCE_TYPES), or

    \n
  2. \n
  3. \n

    \n Record specific resource types (INCLUSION_BY_RESOURCE_TYPES).

    \n
  4. \n
\n

For more information, see Selecting Which Resources are Recorded in the Config developer guide.

\n
\n \n

\n includeGlobalResourceTypes and the exclusion recording strategy\n

\n

The includeGlobalResourceTypes field has no impact on the EXCLUSION_BY_RESOURCE_TYPES recording strategy.\n\t\t\t\tThis means that the global IAM resource types (IAM users, groups, roles, and customer managed policies) will\n\t\t\t\tnot be automatically added as exclusions for exclusionByResourceTypes when includeGlobalResourceTypes is set to false.

\n

The includeGlobalResourceTypes field should only be used to modify the AllSupported field, as the default for\n\t\t\t\tthe AllSupported field is to record configuration changes for all supported resource types excluding the global\n\t\t\t\tIAM resource types. To include the global IAM resource types when AllSupported is set to true, make sure to set includeGlobalResourceTypes to true.

\n

To exclude the global IAM resource types for the EXCLUSION_BY_RESOURCE_TYPES recording strategy, you need to manually add them to the resourceTypes field of exclusionByResourceTypes.

\n
\n \n

\n Required and optional fields\n

\n

Before you set this field to true,\n\t\t\tset the allSupported field of RecordingGroup to\n\t\t\ttrue. Optionally, you can set the useOnly field of RecordingStrategy to ALL_SUPPORTED_RESOURCE_TYPES.

\n
\n \n

\n Overriding fields\n

\n

If you set this field to false but list global IAM resource types in the resourceTypes field of RecordingGroup,\n\t\t\tConfig will still record configuration changes for those specified resource types regardless of if you set the includeGlobalResourceTypes field to false.

\n

If you do not want to record configuration changes to the global IAM resource types (IAM users, groups, roles, and customer managed policies), make sure to not list them in the resourceTypes field\n\t\t\tin addition to setting the includeGlobalResourceTypes field to false.

\n
" } }, "resourceTypes": { @@ -10719,7 +11311,7 @@ "recordingStrategy": { "target": "com.amazonaws.configservice#RecordingStrategy", "traits": { - "smithy.api#documentation": "

An object that specifies the recording strategy for the configuration recorder.

\n \n \n

\n Required and optional fields\n

\n

The recordingStrategy field is optional when you set the\n\t\t\tallSupported field of RecordingGroup to true.

\n

The recordingStrategy field is optional when you list resource types in the\n\t\t\t\tresourceTypes field of RecordingGroup.

\n

The recordingStrategy field is required if you list resource types to exclude from recording in the resourceTypes field of ExclusionByResourceTypes.

\n
\n \n

\n Overriding fields\n

\n

If you choose EXCLUSION_BY_RESOURCE_TYPES for the recording strategy, the exclusionByResourceTypes field will override other properties in the request.

\n

For example, even if you set includeGlobalResourceTypes to false, global IAM resource types will still be automatically\n\t\t\trecorded in this option unless those resource types are specifically listed as exclusions in the resourceTypes field of exclusionByResourceTypes.

\n
\n \n

\n Global resources types and the resource exclusion recording strategy\n

\n

By default, if you choose the EXCLUSION_BY_RESOURCE_TYPES recording strategy,\n\t\t\twhen Config adds support for a new resource type in the Region where you set up the configuration recorder, including global resource types,\n\t\t\tConfig starts recording resources of that type automatically.

\n

Unless specifically listed as exclusions,\n\t\t\t\tAWS::RDS::GlobalCluster will be recorded automatically in all supported Config Regions were the configuration recorder is enabled.

\n

IAM users, groups, roles, and customer managed policies will be recorded in the Region where you set up the configuration recorder if that is a Region where Config was available before February 2022.\n\t\t\t\tYou cannot be record the global IAM resouce types in Regions supported by Config after February 2022. This list where you cannot record the global IAM resource types includes the following Regions:

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

An object that specifies the recording strategy for the configuration recorder.

\n \n \n

\n Required and optional fields\n

\n

The recordingStrategy field is optional when you set the\n\t\t\tallSupported field of RecordingGroup to true.

\n

The recordingStrategy field is optional when you list resource types in the\n\t\t\t\tresourceTypes field of RecordingGroup.

\n

The recordingStrategy field is required if you list resource types to exclude from recording in the resourceTypes field of ExclusionByResourceTypes.

\n
\n \n

\n Overriding fields\n

\n

If you choose EXCLUSION_BY_RESOURCE_TYPES for the recording strategy, the exclusionByResourceTypes field will override other properties in the request.

\n

For example, even if you set includeGlobalResourceTypes to false, global IAM resource types will still be automatically\n\t\t\trecorded in this option unless those resource types are specifically listed as exclusions in the resourceTypes field of exclusionByResourceTypes.

\n
\n \n

\n Global resources types and the resource exclusion recording strategy\n

\n

By default, if you choose the EXCLUSION_BY_RESOURCE_TYPES recording strategy,\n\t\t\twhen Config adds support for a new resource type in the Region where you set up the configuration recorder, including global resource types,\n\t\t\tConfig starts recording resources of that type automatically.

\n

Unless specifically listed as exclusions,\n\t\t\t\tAWS::RDS::GlobalCluster will be recorded automatically in all supported Config Regions were the configuration recorder is enabled.

\n

IAM users, groups, roles, and customer managed policies will be recorded in the Region where you set up the configuration recorder if that is a Region where Config was available before February 2022.\n\t\t\t\tYou cannot be record the global IAM resouce types in Regions supported by Config after February 2022. For a list of those Regions,\n\t\t\t\tsee Recording Amazon Web Services Resources | Global Resources.

\n
" } } }, @@ -10733,7 +11325,7 @@ "recordingFrequency": { "target": "com.amazonaws.configservice#RecordingFrequency", "traits": { - "smithy.api#documentation": "

The default recording frequency that Config uses to record configuration changes.

\n \n

Daily recording is not supported for the following resource types:

\n \n

For the allSupported (ALL_SUPPORTED_RESOURCE_TYPES) recording strategy, these resource types will be set to Continuous recording.

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

The default recording frequency that Config uses to record configuration changes.

\n \n

Daily recording cannot be specified for the following resource types:

\n \n

For the allSupported (ALL_SUPPORTED_RESOURCE_TYPES) recording strategy, these resource types will be set to Continuous recording.

\n
", "smithy.api#required": {} } }, @@ -10760,7 +11352,7 @@ "resourceTypes": { "target": "com.amazonaws.configservice#RecordingModeResourceTypesList", "traits": { - "smithy.api#documentation": "

A comma-separated list that specifies which resource types Config\n\t\t\tincludes in the override.

\n \n

Daily recording is not supported for the following resource types:

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

A comma-separated list that specifies which resource types Config\n\t\t\tincludes in the override.

\n \n

Daily recording cannot be specified for the following resource types:

\n \n
", "smithy.api#required": {} } }, @@ -10794,6 +11386,23 @@ "target": "com.amazonaws.configservice#ResourceType" } }, + "com.amazonaws.configservice#RecordingScope": { + "type": "enum", + "members": { + "INTERNAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INTERNAL" + } + }, + "PAID": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PAID" + } + } + } + }, "com.amazonaws.configservice#RecordingStrategy": { "type": "structure", "members": { @@ -11100,6 +11709,12 @@ "traits": { "smithy.api#enumValue": "FAILED" } + }, + "UNKNOWN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UNKNOWN" + } } } }, @@ -11202,6 +11817,24 @@ "traits": { "smithy.api#enumValue": "FAILED" } + }, + "IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IN_PROGRESS" + } + }, + "EXITED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EXITED" + } + }, + "UNKNOWN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UNKNOWN" + } } } }, @@ -14134,6 +14767,216 @@ "traits": { "smithy.api#enumValue": "AWS::SSM::Document" } + }, + "AppConfigExtensionAssociation": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::AppConfig::ExtensionAssociation" + } + }, + "AppIntegrationsApplication": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::AppIntegrations::Application" + } + }, + "AppSyncApiCache": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::AppSync::ApiCache" + } + }, + "BedrockGuardrail": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::Bedrock::Guardrail" + } + }, + "BedrockKnowledgeBase": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::Bedrock::KnowledgeBase" + } + }, + "CognitoIdentityPool": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::Cognito::IdentityPool" + } + }, + "ConnectRule": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::Connect::Rule" + } + }, + "ConnectUser": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::Connect::User" + } + }, + "EC2ClientVpnTargetNetworkAssociation": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::EC2::ClientVpnTargetNetworkAssociation" + } + }, + "EC2EIPAssociation": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::EC2::EIPAssociation" + } + }, + "EC2IPAMResourceDiscovery": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::EC2::IPAMResourceDiscovery" + } + }, + "EC2IPAMResourceDiscoveryAssociation": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::EC2::IPAMResourceDiscoveryAssociation" + } + }, + "EC2InstanceConnectEndpoint": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::EC2::InstanceConnectEndpoint" + } + }, + "EC2SnapshotBlockPublicAccess": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::EC2::SnapshotBlockPublicAccess" + } + }, + "EC2VPCBlockPublicAccessExclusion": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::EC2::VPCBlockPublicAccessExclusion" + } + }, + "EC2VPCBlockPublicAccessOptions": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::EC2::VPCBlockPublicAccessOptions" + } + }, + "EC2VPCEndpointConnectionNotification": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::EC2::VPCEndpointConnectionNotification" + } + }, + "EC2VPNConnectionRoute": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::EC2::VPNConnectionRoute" + } + }, + "EvidentlySegment": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::Evidently::Segment" + } + }, + "IAMOIDCProvider": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::IAM::OIDCProvider" + } + }, + "InspectorV2Activation": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::InspectorV2::Activation" + } + }, + "MSKClusterPolicy": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::MSK::ClusterPolicy" + } + }, + "MSKVpcConnection": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::MSK::VpcConnection" + } + }, + "MediaConnectGateway": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::MediaConnect::Gateway" + } + }, + "MemoryDBSubnetGroup": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::MemoryDB::SubnetGroup" + } + }, + "OpenSearchServerlessCollection": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::OpenSearchServerless::Collection" + } + }, + "OpenSearchServerlessVpcEndpoint": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::OpenSearchServerless::VpcEndpoint" + } + }, + "RedshiftEndpointAuthorization": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::Redshift::EndpointAuthorization" + } + }, + "Route53ProfilesProfile": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::Route53Profiles::Profile" + } + }, + "S3StorageLensGroup": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::S3::StorageLensGroup" + } + }, + "S3ExpressBucketPolicy": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::S3Express::BucketPolicy" + } + }, + "S3ExpressDirectoryBucket": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::S3Express::DirectoryBucket" + } + }, + "SageMakerInferenceExperiment": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::SageMaker::InferenceExperiment" + } + }, + "SecurityHubStandard": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::SecurityHub::Standard" + } + }, + "TransferProfile": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS::Transfer::Profile" + } } } }, @@ -14152,6 +14995,22 @@ } } }, + "com.amazonaws.configservice#ResourceTypeValue": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + }, + "smithy.api#pattern": "^[a-zA-Z0-9]{2,64}::[a-zA-Z0-9]{2,64}::[a-zA-Z0-9]{2,64}$" + } + }, + "com.amazonaws.configservice#ResourceTypeValueList": { + "type": "list", + "member": { + "target": "com.amazonaws.configservice#ResourceTypeValue" + } + }, "com.amazonaws.configservice#ResourceTypes": { "type": "list", "member": { @@ -14511,6 +15370,32 @@ "smithy.api#output": {} } }, + "com.amazonaws.configservice#ServicePrincipal": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[\\w+=,.@-]+$" + } + }, + "com.amazonaws.configservice#ServicePrincipalValue": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[\\w+=,.@-]+$" + } + }, + "com.amazonaws.configservice#ServicePrincipalValueList": { + "type": "list", + "member": { + "target": "com.amazonaws.configservice#ServicePrincipalValue" + } + }, "com.amazonaws.configservice#SortBy": { "type": "enum", "members": { @@ -14643,6 +15528,9 @@ "type": "service", "version": "2014-11-12", "operations": [ + { + "target": "com.amazonaws.configservice#AssociateResourceTypes" + }, { "target": "com.amazonaws.configservice#BatchGetAggregateResourceConfig" }, @@ -14691,6 +15579,9 @@ { "target": "com.amazonaws.configservice#DeleteRetentionConfiguration" }, + { + "target": "com.amazonaws.configservice#DeleteServiceLinkedConfigurationRecorder" + }, { "target": "com.amazonaws.configservice#DeleteStoredQuery" }, @@ -14772,6 +15663,9 @@ { "target": "com.amazonaws.configservice#DescribeRetentionConfigurations" }, + { + "target": "com.amazonaws.configservice#DisassociateResourceTypes" + }, { "target": "com.amazonaws.configservice#GetAggregateComplianceDetailsByConfigRule" }, @@ -14832,6 +15726,9 @@ { "target": "com.amazonaws.configservice#ListAggregateDiscoveredResources" }, + { + "target": "com.amazonaws.configservice#ListConfigurationRecorders" + }, { "target": "com.amazonaws.configservice#ListConformancePackComplianceScores" }, @@ -14889,6 +15786,9 @@ { "target": "com.amazonaws.configservice#PutRetentionConfiguration" }, + { + "target": "com.amazonaws.configservice#PutServiceLinkedConfigurationRecorder" + }, { "target": "com.amazonaws.configservice#PutStoredQuery" }, @@ -15812,17 +16712,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -15836,17 +16725,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -15860,17 +16738,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -15884,17 +16751,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { @@ -16020,10 +16876,13 @@ }, { "target": "com.amazonaws.configservice#NoSuchConfigurationRecorderException" + }, + { + "target": "com.amazonaws.configservice#UnmodifiableEntityException" } ], "traits": { - "smithy.api#documentation": "

Starts recording configurations of the Amazon Web Services resources you have\n\t\t\tselected to record in your Amazon Web Services account.

\n

You must have created at least one delivery channel to\n\t\t\tsuccessfully start the configuration recorder.

" + "smithy.api#documentation": "

Starts the customer managed configuration recorder. The customer managed configuration recorder will begin recording configuration changes for the resource types you specify.

\n

You must have created a delivery channel to\n\t\t\tsuccessfully start the customer managed configuration recorder. You can use the PutDeliveryChannel operation to create a delivery channel.

" } }, "com.amazonaws.configservice#StartConfigurationRecorderRequest": { @@ -16032,13 +16891,13 @@ "ConfigurationRecorderName": { "target": "com.amazonaws.configservice#RecorderName", "traits": { - "smithy.api#documentation": "

The name of the recorder object that records each configuration\n\t\t\tchange made to the resources.

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

The name of the customer managed configuration recorder that you want to start.

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

The input for the StartConfigurationRecorder\n\t\t\taction.

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

The input for the StartConfigurationRecorder\n\t\t\toperation.

", "smithy.api#input": {} } }, @@ -16146,7 +17005,7 @@ "EvaluationMode": { "target": "com.amazonaws.configservice#EvaluationMode", "traits": { - "smithy.api#documentation": "

The mode of an evaluation. The valid values for this API are DETECTIVE and PROACTIVE.

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

The mode of an evaluation.

\n \n

The only valid value for this API is PROACTIVE.

\n
", "smithy.api#required": {} } }, @@ -16240,10 +17099,13 @@ "errors": [ { "target": "com.amazonaws.configservice#NoSuchConfigurationRecorderException" + }, + { + "target": "com.amazonaws.configservice#UnmodifiableEntityException" } ], "traits": { - "smithy.api#documentation": "

Stops recording configurations of the Amazon Web Services resources you have selected to record in your Amazon Web Services account.

" + "smithy.api#documentation": "

Stops the customer managed configuration recorder. The customer managed configuration recorder will stop recording configuration changes for the resource types you have specified.

" } }, "com.amazonaws.configservice#StopConfigurationRecorderRequest": { @@ -16252,13 +17114,13 @@ "ConfigurationRecorderName": { "target": "com.amazonaws.configservice#RecorderName", "traits": { - "smithy.api#documentation": "

The name of the recorder object that records each configuration change made to the resources.

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

The name of the customer managed configuration recorder that you want to stop.

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

The input for the StopConfigurationRecorder action.

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

The input for the StopConfigurationRecorder operation.

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

Associates the specified tags to a resource with the specified resourceArn. If existing tags on a resource are not specified in the request parameters, they are not changed.\n\t\t\tIf existing tags are specified, however, then their values will be updated. When a resource is deleted, the tags associated with that resource are deleted as well.

" + "smithy.api#documentation": "

Associates the specified tags to a resource with the specified ResourceArn. If existing tags on a resource are not specified in the request parameters, they are not changed.\n\t\t\tIf existing tags are specified, however, then their values will be updated. When a resource is deleted, the tags associated with that resource are deleted as well.

" } }, "com.amazonaws.configservice#TagResourceRequest": { @@ -16505,7 +17367,7 @@ "ResourceArn": { "target": "com.amazonaws.configservice#AmazonResourceName", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) that identifies the resource for which to list the tags. Currently, the supported resources are ConfigRule, ConfigurationAggregator and AggregatorAuthorization.

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

The Amazon Resource Name (ARN) that identifies the resource for which to list the tags. The following resources are supported:

\n ", "smithy.api#required": {} } }, @@ -16626,6 +17488,21 @@ "smithy.api#error": "client" } }, + "com.amazonaws.configservice#UnmodifiableEntityException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.configservice#ErrorMessage", + "traits": { + "smithy.api#documentation": "

Error executing the command

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

The requested operation is not valid.

\n

For PutConfigurationRecorder,\n\t\t\tyou will see this exception because you cannot use this operation to create a service-linked configuration recorder. Use the PutServiceLinkedConfigurationRecorder operation to create a service-linked configuration\n\t\t\trecorder.

\n

For DeleteConfigurationRecorder, you will see this exception because you cannot use this operation to delete a service-linked configuration recorder. Use the DeleteServiceLinkedConfigurationRecorder operation to delete a service-linked configuration\n\t\t\trecorder.

\n

For StartConfigurationRecorder and StopConfigurationRecorder, you will see this exception because these operations do not affect service-linked configuration recorders.\n\t\t\tService-linked configuration recorders are always recording. To stop recording, you must delete the service-linked configuration recorder. Use the DeleteServiceLinkedConfigurationRecorder operation to delete a service-linked configuration\n\t\t\trecorder.

", + "smithy.api#error": "client" + } + }, "com.amazonaws.configservice#UnprocessedResourceIdentifierList": { "type": "list", "member": { @@ -16658,7 +17535,7 @@ "ResourceArn": { "target": "com.amazonaws.configservice#AmazonResourceName", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) that identifies the resource for which to list the tags. Currently, the supported resources are ConfigRule, ConfigurationAggregator and AggregatorAuthorization.

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

The Amazon Resource Name (ARN) that identifies the resource for which to list the tags. The following resources are supported:

\n ", "smithy.api#required": {} } }, @@ -16685,7 +17562,7 @@ } }, "traits": { - "smithy.api#documentation": "

The requested action is not valid.

\n

For PutStoredQuery, you will see this exception if there are missing required fields or if the input value fails the validation, or if you are trying to create more than 300 queries.

\n

For GetStoredQuery, ListStoredQuery, and DeleteStoredQuery you will see this exception if there are missing required fields or if the input value fails the validation.

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

The requested operation is not valid. You will see this exception if there are missing required fields or if the input value fails the validation.

\n

For PutStoredQuery, one of the following errors:

\n \n

For DescribeConfigurationRecorders and DescribeConfigurationRecorderStatus, one of the following errors:

\n \n

For AssociateResourceTypes and DisassociateResourceTypes, one of the following errors:

\n ", "smithy.api#error": "client" } }, diff --git a/aws/sdk/aws-models/dynamodb.json b/aws/sdk/aws-models/dynamodb.json index 7114bc3d72f..6145b5bd3d0 100644 --- a/aws/sdk/aws-models/dynamodb.json +++ b/aws/sdk/aws-models/dynamodb.json @@ -475,6 +475,9 @@ "smithy.api#documentation": "

Represents the settings of a target tracking scaling policy that will be\n modified.

" } }, + "com.amazonaws.dynamodb#AvailabilityErrorMessage": { + "type": "string" + }, "com.amazonaws.dynamodb#Backfilling": { "type": "boolean" }, @@ -785,6 +788,9 @@ }, { "target": "com.amazonaws.dynamodb#RequestLimitExceeded" + }, + { + "target": "com.amazonaws.dynamodb#ThrottlingException" } ], "traits": { @@ -852,6 +858,9 @@ }, { "target": "com.amazonaws.dynamodb#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.dynamodb#ThrottlingException" } ], "traits": { @@ -1173,11 +1182,17 @@ { "target": "com.amazonaws.dynamodb#ProvisionedThroughputExceededException" }, + { + "target": "com.amazonaws.dynamodb#ReplicatedWriteConflictException" + }, { "target": "com.amazonaws.dynamodb#RequestLimitExceeded" }, { "target": "com.amazonaws.dynamodb#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.dynamodb#ThrottlingException" } ], "traits": { @@ -1795,6 +1810,23 @@ } } }, + "com.amazonaws.dynamodb#ContributorInsightsMode": { + "type": "enum", + "members": { + "ACCESSED_AND_THROTTLED_KEYS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACCESSED_AND_THROTTLED_KEYS" + } + }, + "THROTTLED_KEYS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "THROTTLED_KEYS" + } + } + } + }, "com.amazonaws.dynamodb#ContributorInsightsRule": { "type": "string", "traits": { @@ -1868,6 +1900,12 @@ "traits": { "smithy.api#documentation": "

Describes the current status for contributor insights for the given table and index,\n if applicable.

" } + }, + "ContributorInsightsMode": { + "target": "com.amazonaws.dynamodb#ContributorInsightsMode", + "traits": { + "smithy.api#documentation": "

Indicates the current mode of CloudWatch Contributor Insights, specifying whether it\n tracks all access and throttled events or throttled events only for the DynamoDB\n table or index.

" + } } }, "traits": { @@ -1984,7 +2022,7 @@ "OnDemandThroughput": { "target": "com.amazonaws.dynamodb#OnDemandThroughput", "traits": { - "smithy.api#documentation": "

The maximum number of read and write units for the global secondary index being\n created. If you use this parameter, you must specify MaxReadRequestUnits,\n MaxWriteRequestUnits, or both. You must use either\n OnDemand Throughput or ProvisionedThroughput based on your table's\n capacity mode.

" + "smithy.api#documentation": "

The maximum number of read and write units for the global secondary index being\n created. If you use this parameter, you must specify MaxReadRequestUnits,\n MaxWriteRequestUnits, or both. You must use either OnDemand\n Throughput or ProvisionedThroughput based on your table's\n capacity mode.

" } }, "WarmThroughput": { @@ -2069,6 +2107,21 @@ "smithy.api#output": {} } }, + "com.amazonaws.dynamodb#CreateGlobalTableWitnessGroupMemberAction": { + "type": "structure", + "members": { + "RegionName": { + "target": "com.amazonaws.dynamodb#RegionName", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services Region name to be added as a witness Region for the MRSC global\n table. The witness must be in a different Region than the replicas and within the same\n Region set:

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

Specifies the action to add a new witness Region to a MRSC global table. A MRSC global\n table can be configured with either three replicas, or with two replicas and one\n witness.

" + } + }, "com.amazonaws.dynamodb#CreateReplicaAction": { "type": "structure", "members": { @@ -2188,13 +2241,13 @@ "LocalSecondaryIndexes": { "target": "com.amazonaws.dynamodb#LocalSecondaryIndexList", "traits": { - "smithy.api#documentation": "

One or more local secondary indexes (the maximum is 5) to be created on the table.\n Each index is scoped to a given partition key value. There is a 10 GB size limit per\n partition key value; otherwise, the size of a local secondary index is\n unconstrained.

\n

Each local secondary index in the array includes the following:

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

One or more local secondary indexes (the maximum is 5) to be created on the table.\n Each index is scoped to a given partition key value. There is a 10 GB size limit per\n partition key value; otherwise, the size of a local secondary index is\n unconstrained.

\n

Each local secondary index in the array includes the following:

\n " } }, "GlobalSecondaryIndexes": { "target": "com.amazonaws.dynamodb#GlobalSecondaryIndexList", "traits": { - "smithy.api#documentation": "

One or more global secondary indexes (the maximum is 20) to be created on the table.\n Each global secondary index in the array includes the following:

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

One or more global secondary indexes (the maximum is 20) to be created on the table.\n Each global secondary index in the array includes the following:

\n " } }, "BillingMode": { @@ -2458,6 +2511,21 @@ "smithy.api#documentation": "

Represents a global secondary index to be deleted from an existing table.

" } }, + "com.amazonaws.dynamodb#DeleteGlobalTableWitnessGroupMemberAction": { + "type": "structure", + "members": { + "RegionName": { + "target": "com.amazonaws.dynamodb#RegionName", + "traits": { + "smithy.api#documentation": "

The witness Region name to be removed from the MRSC global table.

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

Specifies the action to remove a witness Region from a MRSC global table. You cannot\n delete a single witness from a MRSC global table - you must delete both a replica and\n the witness together. The deletion of both a witness and replica converts the remaining\n replica to a single-Region DynamoDB table.

" + } + }, "com.amazonaws.dynamodb#DeleteItem": { "type": "operation", "input": { @@ -2491,6 +2559,9 @@ { "target": "com.amazonaws.dynamodb#ResourceNotFoundException" }, + { + "target": "com.amazonaws.dynamodb#ThrottlingException" + }, { "target": "com.amazonaws.dynamodb#TransactionConflictException" } @@ -2776,7 +2847,7 @@ "aws.api#clientDiscoveredEndpoint": { "required": false }, - "smithy.api#documentation": "

The DeleteTable operation deletes a table and all of its items. After a\n DeleteTable request, the specified table is in the\n DELETING state until DynamoDB completes the deletion. If the table is\n in the ACTIVE state, you can delete it. If a table is in\n CREATING or UPDATING states, then DynamoDB returns a\n ResourceInUseException. If the specified table does not exist, DynamoDB\n returns a ResourceNotFoundException. If table is already in the\n DELETING state, no error is returned.

\n \n

For global tables, this operation only applies to\n global tables using Version 2019.11.21 (Current version).

\n
\n \n

DynamoDB might continue to accept data read and write operations, such as\n GetItem and PutItem, on a table in the\n DELETING state until the table deletion is complete. For the full\n list of table states, see TableStatus.

\n
\n

When you delete a table, any indexes on that table are also deleted.

\n

If you have DynamoDB Streams enabled on the table, then the corresponding stream on\n that table goes into the DISABLED state, and the stream is automatically\n deleted after 24 hours.

\n

Use the DescribeTable action to check the status of the table.

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

The DeleteTable operation deletes a table and all of its items. After a\n DeleteTable request, the specified table is in the\n DELETING state until DynamoDB completes the deletion. If the table is\n in the ACTIVE state, you can delete it. If a table is in\n CREATING or UPDATING states, then DynamoDB returns a\n ResourceInUseException. If the specified table does not exist, DynamoDB\n returns a ResourceNotFoundException. If table is already in the\n DELETING state, no error is returned.

\n \n

DynamoDB might continue to accept data read and write operations, such as\n GetItem and PutItem, on a table in the\n DELETING state until the table deletion is complete. For the full\n list of table states, see TableStatus.

\n
\n

When you delete a table, any indexes on that table are also deleted.

\n

If you have DynamoDB Streams enabled on the table, then the corresponding stream on\n that table goes into the DISABLED state, and the stream is automatically\n deleted after 24 hours.

\n

Use the DescribeTable action to check the status of the table.

", "smithy.api#examples": [ { "title": "To delete a table", @@ -3036,6 +3107,12 @@ "traits": { "smithy.api#documentation": "

Returns information about the last failure that was encountered.

\n

The most common exceptions for a FAILED status are:

\n " } + }, + "ContributorInsightsMode": { + "target": "com.amazonaws.dynamodb#ContributorInsightsMode", + "traits": { + "smithy.api#documentation": "

The mode of CloudWatch Contributor Insights for DynamoDB that determines\n which events are emitted. Can be set to track all access and throttled events or throttled\n events only.

" + } } }, "traits": { @@ -3466,7 +3543,7 @@ "aws.api#clientDiscoveredEndpoint": { "required": false }, - "smithy.api#documentation": "

Returns information about the table, including the current status of the table, when\n it was created, the primary key schema, and any indexes on the table.

\n \n

For global tables, this operation only applies to global tables using Version\n 2019.11.21 (Current version).

\n
\n \n

If you issue a DescribeTable request immediately after a\n CreateTable request, DynamoDB might return a\n ResourceNotFoundException. This is because\n DescribeTable uses an eventually consistent query, and the metadata\n for your table might not be available at that moment. Wait for a few seconds, and\n then try the DescribeTable request again.

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

Returns information about the table, including the current status of the table, when\n it was created, the primary key schema, and any indexes on the table.

\n \n

If you issue a DescribeTable request immediately after a\n CreateTable request, DynamoDB might return a\n ResourceNotFoundException. This is because\n DescribeTable uses an eventually consistent query, and the metadata\n for your table might not be available at that moment. Wait for a few seconds, and\n then try the DescribeTable request again.

\n
", "smithy.waiters#waitable": { "TableExists": { "acceptors": [ @@ -3554,7 +3631,7 @@ } ], "traits": { - "smithy.api#documentation": "

Describes auto scaling settings across replicas of the global table at once.

\n \n

For global tables, this operation only applies to global tables using Version\n 2019.11.21 (Current version).

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

Describes auto scaling settings across replicas of the global table at once.

" } }, "com.amazonaws.dynamodb#DescribeTableReplicaAutoScalingInput": { @@ -5607,17 +5684,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -5631,17 +5697,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -5655,17 +5710,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -5679,17 +5723,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { @@ -7833,9 +7866,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -7869,9 +7902,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -7921,9 +7954,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -7949,9 +7982,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -7977,9 +8010,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8005,9 +8038,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8033,9 +8066,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8061,9 +8094,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8136,9 +8169,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8174,9 +8207,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8212,9 +8245,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8250,9 +8283,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8319,9 +8352,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8369,9 +8402,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8396,9 +8429,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8458,9 +8491,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8494,9 +8527,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8546,9 +8579,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8574,9 +8607,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8602,9 +8635,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8630,9 +8663,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8658,9 +8691,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8686,9 +8719,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8761,9 +8794,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8799,9 +8832,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8837,9 +8870,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8875,9 +8908,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8944,9 +8977,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -8994,9 +9027,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -9021,9 +9054,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -9083,9 +9116,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -9119,9 +9152,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -9171,9 +9204,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -9199,9 +9232,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -9227,9 +9260,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -9255,9 +9288,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -9283,9 +9316,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -9311,9 +9344,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -9386,9 +9419,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -9424,9 +9457,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -9462,9 +9495,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -9500,9 +9533,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -9569,9 +9602,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -9619,9 +9652,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -9646,9 +9679,9 @@ "properties": { "authSchemes": [ { - "signingRegion": "us-east-1", "signingName": "dynamodb", - "name": "sigv4" + "name": "sigv4", + "signingRegion": "us-east-1" } ] }, @@ -12574,19 +12607,6 @@ "Region": "cn-north-1" } }, - { - "documentation": "{UseFIPS=true, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-iso-east-1}", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "UseFIPS": true, - "UseDualStack": true, - "AccountId": "111111111111", - "AccountIdEndpointMode": "preferred", - "Region": "us-iso-east-1" - } - }, { "documentation": "{UseFIPS=true, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { @@ -12602,19 +12622,6 @@ "Region": "us-iso-east-1" } }, - { - "documentation": "{UseFIPS=false, UseDualStack=true, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-iso-east-1}", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "UseFIPS": false, - "UseDualStack": true, - "AccountId": "111111111111", - "AccountIdEndpointMode": "preferred", - "Region": "us-iso-east-1" - } - }, { "documentation": "{UseFIPS=false, UseDualStack=false, AccountId=111111111111, AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { @@ -12807,19 +12814,6 @@ "Region": "us-iso-east-1" } }, - { - "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-iso-east-1}", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "UseFIPS": true, - "UseDualStack": true, - "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", - "AccountIdEndpointMode": "preferred", - "Region": "us-iso-east-1" - } - }, { "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { @@ -12835,19 +12829,6 @@ "Region": "us-iso-east-1" } }, - { - "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-iso-east-1}", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "UseFIPS": false, - "UseDualStack": true, - "ResourceArn": "arn:aws:dynamodb:us-east-1:222222222222:table/table_name", - "AccountIdEndpointMode": "preferred", - "Region": "us-iso-east-1" - } - }, { "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArn=arn:aws:dynamodb:us-east-1:222222222222:table/table_name, AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { @@ -12950,21 +12931,6 @@ "Region": "us-iso-east-1" } }, - { - "documentation": "{UseFIPS=true, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-iso-east-1}", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "UseFIPS": true, - "UseDualStack": true, - "ResourceArnList": [ - "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" - ], - "AccountIdEndpointMode": "preferred", - "Region": "us-iso-east-1" - } - }, { "documentation": "{UseFIPS=true, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { @@ -12982,21 +12948,6 @@ "Region": "us-iso-east-1" } }, - { - "documentation": "{UseFIPS=false, UseDualStack=true, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-iso-east-1}", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "UseFIPS": false, - "UseDualStack": true, - "ResourceArnList": [ - "arn:aws:dynamodb:us-east-1:333333333333:table/table_name" - ], - "AccountIdEndpointMode": "preferred", - "Region": "us-iso-east-1" - } - }, { "documentation": "{UseFIPS=false, UseDualStack=false, ResourceArnList=[arn:aws:dynamodb:us-east-1:333333333333:table/table_name], AccountIdEndpointMode=preferred, Region=us-iso-east-1}", "expect": { @@ -13706,6 +13657,9 @@ { "target": "com.amazonaws.dynamodb#ResourceNotFoundException" }, + { + "target": "com.amazonaws.dynamodb#ThrottlingException" + }, { "target": "com.amazonaws.dynamodb#TransactionConflictException" } @@ -13815,6 +13769,9 @@ { "target": "com.amazonaws.dynamodb#ResourceNotFoundException" }, + { + "target": "com.amazonaws.dynamodb#ThrottlingException" + }, { "target": "com.amazonaws.dynamodb#TransactionCanceledException" }, @@ -14451,6 +14408,9 @@ }, { "target": "com.amazonaws.dynamodb#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.dynamodb#ThrottlingException" } ], "traits": { @@ -14658,13 +14618,13 @@ "ProvisionedThroughput": { "target": "com.amazonaws.dynamodb#ProvisionedThroughput", "traits": { - "smithy.api#documentation": "

Represents the provisioned throughput settings for the specified global secondary\n index.

\n

For current minimum and maximum provisioned throughput values, see Service,\n Account, and Table Quotas in the Amazon DynamoDB Developer\n Guide.

" + "smithy.api#documentation": "

Represents the provisioned throughput settings for the specified global secondary\n index. You must use either OnDemandThroughput or\n ProvisionedThroughput based on your table's capacity mode.

\n

For current minimum and maximum provisioned throughput values, see Service,\n Account, and Table Quotas in the Amazon DynamoDB Developer\n Guide.

" } }, "OnDemandThroughput": { "target": "com.amazonaws.dynamodb#OnDemandThroughput", "traits": { - "smithy.api#documentation": "

The maximum number of read and write units for the specified global secondary index.\n If you use this parameter, you must specify MaxReadRequestUnits,\n MaxWriteRequestUnits, or both.

" + "smithy.api#documentation": "

The maximum number of read and write units for the specified global secondary index.\n If you use this parameter, you must specify MaxReadRequestUnits,\n MaxWriteRequestUnits, or both. You must use either\n OnDemandThroughput or ProvisionedThroughput based on your\n table's capacity mode.

" } }, "WarmThroughput": { @@ -15050,6 +15010,64 @@ } } }, + "com.amazonaws.dynamodb#GlobalTableWitnessDescription": { + "type": "structure", + "members": { + "RegionName": { + "target": "com.amazonaws.dynamodb#RegionName", + "traits": { + "smithy.api#documentation": "

The name of the Amazon Web Services Region that serves as a witness for the MRSC global\n table.

" + } + }, + "WitnessStatus": { + "target": "com.amazonaws.dynamodb#WitnessStatus", + "traits": { + "smithy.api#documentation": "

The current status of the witness Region in the MRSC global table.

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

Represents the properties of a witness Region in a MRSC global table.

" + } + }, + "com.amazonaws.dynamodb#GlobalTableWitnessDescriptionList": { + "type": "list", + "member": { + "target": "com.amazonaws.dynamodb#GlobalTableWitnessDescription" + } + }, + "com.amazonaws.dynamodb#GlobalTableWitnessGroupUpdate": { + "type": "structure", + "members": { + "Create": { + "target": "com.amazonaws.dynamodb#CreateGlobalTableWitnessGroupMemberAction", + "traits": { + "smithy.api#documentation": "

Specifies a witness Region to be added to a new MRSC global table. The witness must be\n added when creating the MRSC global table.

" + } + }, + "Delete": { + "target": "com.amazonaws.dynamodb#DeleteGlobalTableWitnessGroupMemberAction", + "traits": { + "smithy.api#documentation": "

Specifies a witness Region to be removed from an existing global table. Must be done\n in conjunction with removing a replica. The deletion of both a witness and replica\n converts the remaining replica to a single-Region DynamoDB table.

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

Represents one of the following:

\n \n

You can configure one witness per MRSC global table.

" + } + }, + "com.amazonaws.dynamodb#GlobalTableWitnessGroupUpdateList": { + "type": "list", + "member": { + "target": "com.amazonaws.dynamodb#GlobalTableWitnessGroupUpdate" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1 + } + } + }, "com.amazonaws.dynamodb#IdempotentParameterMismatchException": { "type": "structure", "members": { @@ -15079,7 +15097,7 @@ } }, "traits": { - "smithy.api#documentation": "

\n There was a conflict when importing from the specified S3 source. \n This can occur when the current import conflicts with a previous import request \n that had the same client token.\n

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

There was a conflict when importing from the specified S3 source. This can occur when\n the current import conflicts with a previous import request that had the same client\n token.

", "smithy.api#error": "client" } }, @@ -15104,7 +15122,7 @@ } }, "traits": { - "smithy.api#documentation": "

\n The specified import was not found.\n

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

The specified import was not found.

", "smithy.api#error": "client" } }, @@ -15985,7 +16003,7 @@ } }, "traits": { - "smithy.api#documentation": "

There is no limit to the number of daily on-demand backups that can be taken.

\n

For most purposes, up to 500 simultaneous table operations are allowed per account. These operations\n include CreateTable, UpdateTable,\n DeleteTable,UpdateTimeToLive,\n RestoreTableFromBackup, and RestoreTableToPointInTime.

\n

When you are creating a table with one or more secondary\n indexes, you can have up to 250 such requests running at a time. However, if the table or\n index specifications are complex, then DynamoDB might temporarily reduce the number\n of concurrent operations.

\n

When importing into DynamoDB, up to 50 simultaneous import table operations are allowed per account.

\n

There is a soft account quota of 2,500 tables.

\n

GetRecords was called with a value of more than 1000 for the limit request parameter.

\n

More than 2 processes are reading from the same streams shard at the same time. Exceeding\n this limit may result in request throttling.

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

There is no limit to the number of daily on-demand backups that can be taken.

\n

For most purposes, up to 500 simultaneous table operations are allowed per account.\n These operations include CreateTable, UpdateTable,\n DeleteTable,UpdateTimeToLive,\n RestoreTableFromBackup, and RestoreTableToPointInTime.

\n

When you are creating a table with one or more secondary indexes, you can have up\n to 250 such requests running at a time. However, if the table or index specifications\n are complex, then DynamoDB might temporarily reduce the number of concurrent\n operations.

\n

When importing into DynamoDB, up to 50 simultaneous import table operations are\n allowed per account.

\n

There is a soft account quota of 2,500 tables.

\n

GetRecords was called with a value of more than 1000 for the limit request\n parameter.

\n

More than 2 processes are reading from the same streams shard at the same time.\n Exceeding this limit may result in request throttling.

", "smithy.api#error": "client" } }, @@ -16975,7 +16993,7 @@ } }, "traits": { - "smithy.api#documentation": "

The operation tried to access a nonexistent resource-based policy.

\n

If you specified an ExpectedRevisionId, it's possible that a policy is present for the resource but its revision ID didn't match the expected value.

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

The operation tried to access a nonexistent resource-based policy.

\n

If you specified an ExpectedRevisionId, it's possible that a policy is\n present for the resource but its revision ID didn't match the expected value.

", "smithy.api#error": "client" } }, @@ -17036,7 +17054,7 @@ "NonKeyAttributes": { "target": "com.amazonaws.dynamodb#NonKeyAttributeNameList", "traits": { - "smithy.api#documentation": "

Represents the non-key attribute names which will be projected into the index.

\n

For global and local secondary indexes, the total count of NonKeyAttributes summed\n across all of the secondary indexes, must not exceed 100. If you project the same\n attribute into two different indexes, this counts as two distinct attributes when\n determining the total. This limit only applies when you specify the ProjectionType of\n INCLUDE. You still can specify the ProjectionType of ALL to\n project all attributes from the source table, even if the table has more than 100\n attributes.

" + "smithy.api#documentation": "

Represents the non-key attribute names which will be projected into the index.

\n

For global and local secondary indexes, the total count of\n NonKeyAttributes summed across all of the secondary indexes, must not\n exceed 100. If you project the same attribute into two different indexes, this counts as\n two distinct attributes when determining the total. This limit only applies when you\n specify the ProjectionType of INCLUDE. You still can specify the\n ProjectionType of ALL to project all attributes from the source table, even\n if the table has more than 100 attributes.

" } } }, @@ -17138,10 +17156,16 @@ "traits": { "smithy.api#documentation": "

You exceeded your maximum allowed provisioned throughput.

" } + }, + "ThrottlingReasons": { + "target": "com.amazonaws.dynamodb#ThrottlingReasonList", + "traits": { + "smithy.api#documentation": "

A list of ThrottlingReason that\n provide detailed diagnostic information about why the request was throttled.\n

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

Your request rate is too high. The Amazon Web Services SDKs for DynamoDB\n automatically retry requests that receive this exception. Your request is eventually\n successful, unless your retry queue is too large to finish. Reduce the frequency of\n requests and use exponential backoff. For more information, go to Error Retries and Exponential Backoff in the Amazon DynamoDB Developer Guide.

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

The request was denied due to request throttling. For detailed information about\n why the request was throttled and the ARN of the impacted resource, find the ThrottlingReason field in the returned exception. The Amazon Web Services\n SDKs for DynamoDB automatically retry requests that receive this exception.\n Your request is eventually successful, unless your retry queue is too large to finish.\n Reduce the frequency of requests and use exponential backoff. For more information, go\n to Error Retries and Exponential Backoff in the Amazon DynamoDB Developer Guide.

", "smithy.api#error": "client" } }, @@ -17238,6 +17262,9 @@ { "target": "com.amazonaws.dynamodb#ResourceNotFoundException" }, + { + "target": "com.amazonaws.dynamodb#ThrottlingException" + }, { "target": "com.amazonaws.dynamodb#TransactionConflictException" } @@ -17515,6 +17542,9 @@ }, { "target": "com.amazonaws.dynamodb#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.dynamodb#ThrottlingException" } ], "traits": { @@ -17714,6 +17744,9 @@ "smithy.api#output": {} } }, + "com.amazonaws.dynamodb#Reason": { + "type": "string" + }, "com.amazonaws.dynamodb#RecoveryPeriodInDays": { "type": "integer", "traits": { @@ -18302,6 +18335,24 @@ "traits": { "smithy.api#enumValue": "INACCESSIBLE_ENCRYPTION_CREDENTIALS" } + }, + "ARCHIVING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ARCHIVING" + } + }, + "ARCHIVED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ARCHIVED" + } + }, + "REPLICATION_NOT_AUTHORIZED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REPLICATION_NOT_AUTHORIZED" + } } } }, @@ -18345,8 +18396,9 @@ } }, "traits": { - "smithy.api#documentation": "

The request was rejected because one or more items in the request are being modified by a request in another Region.

", - "smithy.api#error": "client" + "smithy.api#documentation": "

The request was rejected because one or more items in the request are being modified\n by a request in another Region.

", + "smithy.api#error": "client", + "smithy.api#retryable": {} } }, "com.amazonaws.dynamodb#ReplicationGroupUpdate": { @@ -18391,13 +18443,22 @@ "members": { "message": { "target": "com.amazonaws.dynamodb#ErrorMessage" + }, + "ThrottlingReasons": { + "target": "com.amazonaws.dynamodb#ThrottlingReasonList", + "traits": { + "smithy.api#documentation": "

A list of ThrottlingReason that\n provide detailed diagnostic information about why the request was throttled.\n

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

Throughput exceeds the current throughput quota for your account. Please contact\n Amazon Web ServicesSupport to request a\n quota increase.

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

Throughput exceeds the current throughput quota for your account. For detailed\n information about why the request was throttled and the ARN of the impacted resource,\n find the ThrottlingReason field in the returned exception. Contact Amazon Web Services Support to request a quota\n increase.

", "smithy.api#error": "client" } }, + "com.amazonaws.dynamodb#Resource": { + "type": "string" + }, "com.amazonaws.dynamodb#ResourceArnString": { "type": "string", "traits": { @@ -18418,7 +18479,7 @@ } }, "traits": { - "smithy.api#documentation": "

The operation conflicts with the resource's availability. For example:

\n \n

When appropriate, wait for the ongoing update to complete and attempt the request again.

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

The operation conflicts with the resource's availability. For example:

\n \n

When appropriate, wait for the ongoing update to complete and attempt the request\n again.

", "smithy.api#error": "client" } }, @@ -19049,6 +19110,9 @@ }, { "target": "com.amazonaws.dynamodb#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.dynamodb#ThrottlingException" } ], "traits": { @@ -19704,13 +19768,13 @@ "LocalSecondaryIndexes": { "target": "com.amazonaws.dynamodb#LocalSecondaryIndexDescriptionList", "traits": { - "smithy.api#documentation": "

Represents one or more local secondary indexes on the table. Each index is scoped to a\n given partition key value. Tables with one or more local secondary indexes are subject\n to an item collection size limit, where the amount of data within a given item\n collection cannot exceed 10 GB. Each element is composed of:

\n \n

If the table is in the DELETING state, no information about indexes will\n be returned.

" + "smithy.api#documentation": "

Represents one or more local secondary indexes on the table. Each index is scoped to a\n given partition key value. Tables with one or more local secondary indexes are subject\n to an item collection size limit, where the amount of data within a given item\n collection cannot exceed 10 GB. Each element is composed of:

\n \n

If the table is in the DELETING state, no information about indexes will\n be returned.

" } }, "GlobalSecondaryIndexes": { "target": "com.amazonaws.dynamodb#GlobalSecondaryIndexDescriptionList", "traits": { - "smithy.api#documentation": "

The global secondary indexes, if any, on the table. Each index is scoped to a given\n partition key value. Each element is composed of:

\n \n

If the table is in the DELETING state, no information about indexes will\n be returned.

" + "smithy.api#documentation": "

The global secondary indexes, if any, on the table. Each index is scoped to a given\n partition key value. Each element is composed of:

\n \n

If the table is in the DELETING state, no information about indexes will\n be returned.

" } }, "StreamSpecification": { @@ -19743,6 +19807,12 @@ "smithy.api#documentation": "

Represents replicas of the table.

" } }, + "GlobalTableWitnesses": { + "target": "com.amazonaws.dynamodb#GlobalTableWitnessDescriptionList", + "traits": { + "smithy.api#documentation": "

The witness Region and its current status in the MRSC global table. Only one witness\n Region can be configured per MRSC global table.

" + } + }, "RestoreSummary": { "target": "com.amazonaws.dynamodb#RestoreSummary", "traits": { @@ -19788,7 +19858,7 @@ "MultiRegionConsistency": { "target": "com.amazonaws.dynamodb#MultiRegionConsistency", "traits": { - "smithy.api#documentation": "

Indicates one of the following consistency modes for a global table:

\n \n

If you don't specify this field, the global table consistency mode defaults to EVENTUAL.

" + "smithy.api#documentation": "

Indicates one of the following consistency modes for a global table:

\n \n

If you don't specify this field, the global table consistency mode defaults to\n EVENTUAL. For more information about global tables consistency modes,\n see \n Consistency modes in DynamoDB developer guide.

" } } }, @@ -19838,7 +19908,7 @@ } }, "traits": { - "smithy.api#documentation": "

A source table with the name TableName does not currently exist within\n the subscriber's account or the subscriber is operating in the wrong Amazon Web Services Region.

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

A source table with the name TableName does not currently exist within\n the subscriber's account or the subscriber is operating in the wrong Amazon Web Services\n Region.

", "smithy.api#error": "client" } }, @@ -19886,6 +19956,12 @@ "traits": { "smithy.api#enumValue": "ARCHIVED" } + }, + "REPLICATION_NOT_AUTHORIZED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REPLICATION_NOT_AUTHORIZED" + } } } }, @@ -19912,7 +19988,7 @@ } }, "traits": { - "smithy.api#documentation": "

Represents the warm throughput value (in read units per second and write units per second)\n of the table. Warm throughput is applicable for DynamoDB Standard-IA tables and specifies\n the minimum provisioned capacity maintained for immediate data access.

" + "smithy.api#documentation": "

Represents the warm throughput value (in read units per second and write units per\n second) of the table. Warm throughput is applicable for DynamoDB Standard-IA tables and\n specifies the minimum provisioned capacity maintained for immediate data access.

" } }, "com.amazonaws.dynamodb#Tag": { @@ -20024,6 +20100,55 @@ } } }, + "com.amazonaws.dynamodb#ThrottlingException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.dynamodb#AvailabilityErrorMessage" + }, + "throttlingReasons": { + "target": "com.amazonaws.dynamodb#ThrottlingReasonList", + "traits": { + "smithy.api#documentation": "

A list of ThrottlingReason that\n provide detailed diagnostic information about why the request was throttled.\n

" + } + } + }, + "traits": { + "aws.protocols#awsQueryError": { + "code": "Throttling", + "httpResponseCode": 400 + }, + "smithy.api#documentation": "

The request was denied due to request throttling. For detailed information about why\n the request was throttled and the ARN of the impacted resource, find the ThrottlingReason field in the returned exception.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.dynamodb#ThrottlingReason": { + "type": "structure", + "members": { + "reason": { + "target": "com.amazonaws.dynamodb#Reason", + "traits": { + "smithy.api#documentation": "

The reason for throttling. The throttling reason follows a specific format:\n ResourceType+OperationType+LimitType:

\n \n

Examples of complete throttling reasons:

\n \n

This helps identify exactly what resource is being throttled, what type of operation\n caused it, and why the throttling occurred.

" + } + }, + "resource": { + "target": "com.amazonaws.dynamodb#Resource", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the DynamoDB table or index that experienced the\n throttling event.

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

Represents the specific reason why a DynamoDB request was throttled and the\n ARN of the impacted resource. This helps identify exactly what resource is being throttled, \n what type of operation caused it, and why the throttling occurred.

" + } + }, + "com.amazonaws.dynamodb#ThrottlingReasonList": { + "type": "list", + "member": { + "target": "com.amazonaws.dynamodb#ThrottlingReason" + } + }, "com.amazonaws.dynamodb#TimeRangeLowerBound": { "type": "timestamp" }, @@ -20164,6 +20289,9 @@ { "target": "com.amazonaws.dynamodb#ResourceNotFoundException" }, + { + "target": "com.amazonaws.dynamodb#ThrottlingException" + }, { "target": "com.amazonaws.dynamodb#TransactionCanceledException" } @@ -20292,6 +20420,9 @@ { "target": "com.amazonaws.dynamodb#ResourceNotFoundException" }, + { + "target": "com.amazonaws.dynamodb#ThrottlingException" + }, { "target": "com.amazonaws.dynamodb#TransactionCanceledException" }, @@ -20303,7 +20434,12 @@ "aws.api#clientDiscoveredEndpoint": { "required": false }, - "smithy.api#documentation": "

\n TransactWriteItems is a synchronous write operation that groups up to 100\n action requests. These actions can target items in different tables, but not in\n different Amazon Web Services accounts or Regions, and no two actions can target the same\n item. For example, you cannot both ConditionCheck and Update\n the same item. The aggregate size of the items in the transaction cannot exceed 4\n MB.

\n

The actions are completed atomically so that either all of them succeed, or all of\n them fail. They are defined by the following objects:

\n \n

DynamoDB rejects the entire TransactWriteItems request if any of the\n following is true:

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

\n TransactWriteItems is a synchronous write operation that groups up to 100\n action requests. These actions can target items in different tables, but not in\n different Amazon Web Services accounts or Regions, and no two actions can target the same\n item. For example, you cannot both ConditionCheck and Update\n the same item. The aggregate size of the items in the transaction cannot exceed 4\n MB.

\n

The actions are completed atomically so that either all of them succeed, or all of\n them fail. They are defined by the following objects:

\n \n

DynamoDB rejects the entire TransactWriteItems request if any of the\n following is true:

\n ", + "smithy.rules#operationContextParams": { + "ResourceArnList": { + "path": "TransactItems[*].[ConditionCheck.TableName, Put.TableName, Delete.TableName, Update.TableName][]" + } + } } }, "com.amazonaws.dynamodb#TransactWriteItemsInput": { @@ -20371,7 +20507,7 @@ } }, "traits": { - "smithy.api#documentation": "

The entire transaction request was canceled.

\n

DynamoDB cancels a TransactWriteItems request under the following\n circumstances:

\n \n

DynamoDB cancels a TransactGetItems request under the\n following circumstances:

\n \n \n

If using Java, DynamoDB lists the cancellation reasons on the\n CancellationReasons property. This property is not set for other\n languages. Transaction cancellation reasons are ordered in the order of requested\n items, if an item has no error it will have None code and\n Null message.

\n
\n

Cancellation reason codes and possible error messages:

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

The entire transaction request was canceled.

\n

DynamoDB cancels a TransactWriteItems request under the following\n circumstances:

\n \n

DynamoDB cancels a TransactGetItems request under the\n following circumstances:

\n \n \n

If using Java, DynamoDB lists the cancellation reasons on the\n CancellationReasons property. This property is not set for other\n languages. Transaction cancellation reasons are ordered in the order of requested\n items, if an item has no error it will have None code and\n Null message.

\n
\n

Cancellation reason codes and possible error messages:

\n ", "smithy.api#error": "client" } }, @@ -20395,7 +20531,7 @@ } }, "traits": { - "smithy.api#documentation": "

The transaction with the given request token is already in progress.

\n

\n Recommended Settings \n

\n \n

\n This is a general recommendation for handling the TransactionInProgressException. These settings help \n ensure that the client retries will trigger completion of the ongoing TransactWriteItems request.\n

\n
\n \n

\n Assuming default retry policy, \n example timeout settings based on the guidelines above are as follows: \n

\n

Example timeline:

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

The transaction with the given request token is already in progress.

\n

Recommended Settings

\n \n

This is a general recommendation for handling the\n TransactionInProgressException. These settings help ensure that the\n client retries will trigger completion of the ongoing\n TransactWriteItems request.

\n
\n \n

Assuming default retry policy, example timeout settings based on the guidelines\n above are as follows:

\n

Example timeline:

\n ", "smithy.api#error": "client" } }, @@ -20535,7 +20671,7 @@ "aws.api#clientDiscoveredEndpoint": { "required": false }, - "smithy.api#documentation": "

\n UpdateContinuousBackups enables or disables point in time recovery for\n the specified table. A successful UpdateContinuousBackups call returns the\n current ContinuousBackupsDescription. Continuous backups are\n ENABLED on all tables at table creation. If point in time recovery is\n enabled, PointInTimeRecoveryStatus will be set to ENABLED.

\n

Once continuous backups and point in time recovery are enabled, you can restore to\n any point in time within EarliestRestorableDateTime and\n LatestRestorableDateTime.

\n

\n LatestRestorableDateTime is typically 5 minutes before the current time.\n You can restore your table to any point in time in the last 35 days. You can set the\n RecoveryPeriodInDays to any value between 1 and 35 days.

" + "smithy.api#documentation": "

\n UpdateContinuousBackups enables or disables point in time recovery for\n the specified table. A successful UpdateContinuousBackups call returns the\n current ContinuousBackupsDescription. Continuous backups are\n ENABLED on all tables at table creation. If point in time recovery is\n enabled, PointInTimeRecoveryStatus will be set to ENABLED.

\n

Once continuous backups and point in time recovery are enabled, you can restore to\n any point in time within EarliestRestorableDateTime and\n LatestRestorableDateTime.

\n

\n LatestRestorableDateTime is typically 5 minutes before the current time.\n You can restore your table to any point in time in the last 35 days. You can set the\n RecoveryPeriodInDays to any value between 1 and 35 days.

" } }, "com.amazonaws.dynamodb#UpdateContinuousBackupsInput": { @@ -20622,6 +20758,12 @@ "smithy.api#documentation": "

Represents the contributor insights action.

", "smithy.api#required": {} } + }, + "ContributorInsightsMode": { + "target": "com.amazonaws.dynamodb#ContributorInsightsMode", + "traits": { + "smithy.api#documentation": "

Specifies whether to track all access and throttled events or throttled events only for\n the DynamoDB table or index.

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

The status of contributor insights

" } + }, + "ContributorInsightsMode": { + "target": "com.amazonaws.dynamodb#ContributorInsightsMode", + "traits": { + "smithy.api#documentation": "

The updated mode of CloudWatch Contributor Insights that determines whether to monitor\n all access and throttled events or to track throttled events exclusively.

" + } } }, "traits": { @@ -20722,7 +20870,7 @@ "aws.api#clientDiscoveredEndpoint": { "required": false }, - "smithy.api#documentation": "

Adds or removes replicas in the specified global table. The global table must already\n exist to be able to use this operation. Any replica to be added must be empty, have the\n same name as the global table, have the same key schema, have DynamoDB Streams enabled,\n and have the same provisioned and maximum write capacity units.

\n \n

This documentation is for version 2017.11.29 (Legacy) of global tables, which should be avoided for new global tables. Customers should use Global Tables version 2019.11.21 (Current) when possible, because it provides greater flexibility, higher efficiency, and consumes less write capacity than 2017.11.29 (Legacy).

\n

To determine which version you're using, see Determining the global table version you are using. To update existing global tables from version 2017.11.29 (Legacy) to version 2019.11.21 (Current), see Upgrading global tables.

\n
\n \n

For global tables, this operation only applies to global tables using Version\n 2019.11.21 (Current version). If you are using global tables Version\n 2019.11.21 you can use UpdateTable instead.

\n

Although you can use UpdateGlobalTable to add replicas and remove\n replicas in a single request, for simplicity we recommend that you issue separate\n requests for adding or removing replicas.

\n
\n

If global secondary indexes are specified, then the following conditions must also be\n met:

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

Adds or removes replicas in the specified global table. The global table must already\n exist to be able to use this operation. Any replica to be added must be empty, have the\n same name as the global table, have the same key schema, have DynamoDB Streams enabled,\n and have the same provisioned and maximum write capacity units.

\n \n

This documentation is for version 2017.11.29 (Legacy) of global tables, which should be avoided for new global tables. Customers should use Global Tables version 2019.11.21 (Current) when possible, because it provides greater flexibility, higher efficiency, and consumes less write capacity than 2017.11.29 (Legacy).

\n

To determine which version you're using, see Determining the global table version you are using. To update existing global tables from version 2017.11.29 (Legacy) to version 2019.11.21 (Current), see Upgrading global tables.

\n
\n \n

If you are using global tables Version\n 2019.11.21 (Current) you can use UpdateTable instead.

\n

Although you can use UpdateGlobalTable to add replicas and remove\n replicas in a single request, for simplicity we recommend that you issue separate\n requests for adding or removing replicas.

\n
\n

If global secondary indexes are specified, then the following conditions must also be\n met:

\n " } }, "com.amazonaws.dynamodb#UpdateGlobalTableInput": { @@ -20903,6 +21051,9 @@ { "target": "com.amazonaws.dynamodb#ResourceNotFoundException" }, + { + "target": "com.amazonaws.dynamodb#ThrottlingException" + }, { "target": "com.amazonaws.dynamodb#TransactionConflictException" } @@ -21260,7 +21411,7 @@ "aws.api#clientDiscoveredEndpoint": { "required": false }, - "smithy.api#documentation": "

Modifies the provisioned throughput settings, global secondary indexes, or DynamoDB\n Streams settings for a given table.

\n \n

For global tables, this operation only applies to global tables using Version\n 2019.11.21 (Current version).

\n
\n

You can only perform one of the following operations at once:

\n \n

\n UpdateTable is an asynchronous operation; while it's executing, the table\n status changes from ACTIVE to UPDATING. While it's\n UPDATING, you can't issue another UpdateTable request.\n When the table returns to the ACTIVE state, the UpdateTable\n operation is complete.

" + "smithy.api#documentation": "

Modifies the provisioned throughput settings, global secondary indexes, or DynamoDB\n Streams settings for a given table.

\n

You can only perform one of the following operations at once:

\n \n

\n UpdateTable is an asynchronous operation; while it's executing, the table\n status changes from ACTIVE to UPDATING. While it's\n UPDATING, you can't issue another UpdateTable request.\n When the table returns to the ACTIVE state, the UpdateTable\n operation is complete.

" } }, "com.amazonaws.dynamodb#UpdateTableInput": { @@ -21315,7 +21466,7 @@ "ReplicaUpdates": { "target": "com.amazonaws.dynamodb#ReplicationGroupUpdateList", "traits": { - "smithy.api#documentation": "

A list of replica update actions (create, delete, or update) for the table.

\n \n

For global tables, this property only applies to global tables using Version\n 2019.11.21 (Current version).

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

A list of replica update actions (create, delete, or update) for the table.

" } }, "TableClass": { @@ -21333,7 +21484,13 @@ "MultiRegionConsistency": { "target": "com.amazonaws.dynamodb#MultiRegionConsistency", "traits": { - "smithy.api#documentation": "

Specifies the consistency mode for a new global table. This parameter is only valid\n when you create a global table by specifying one or more Create actions in the ReplicaUpdates action list.

\n

You can specify one of the following consistency modes:

\n \n

If you don't specify this parameter, the global table consistency mode defaults to\n EVENTUAL.

" + "smithy.api#documentation": "

Specifies the consistency mode for a new global table. This parameter is only valid\n when you create a global table by specifying one or more Create actions in the ReplicaUpdates action list.

\n

You can specify one of the following consistency modes:

\n \n

If you don't specify this field, the global table consistency mode defaults to\n EVENTUAL. For more information about global tables consistency modes,\n see \n Consistency modes in DynamoDB developer guide.

" + } + }, + "GlobalTableWitnessUpdates": { + "target": "com.amazonaws.dynamodb#GlobalTableWitnessGroupUpdateList", + "traits": { + "smithy.api#documentation": "

A list of witness updates for a MRSC global table. A witness provides a cost-effective\n alternative to a full replica in a MRSC global table by maintaining replicated change\n data written to global table replicas. You cannot perform read or write operations on a\n witness. For each witness, you can request one action:

\n \n

You can create or delete only one witness per UpdateTable\n operation.

\n

For more information, see Multi-Region strong consistency (MRSC) in the Amazon DynamoDB\n Developer Guide

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

Updates auto scaling settings on your global tables at once.

\n \n

For global tables, this operation only applies to global tables using Version\n 2019.11.21 (Current version).

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

Updates auto scaling settings on your global tables at once.

" } }, "com.amazonaws.dynamodb#UpdateTableReplicaAutoScalingInput": { @@ -21534,6 +21691,29 @@ "smithy.api#documentation": "

Provides visibility into the number of read and write operations your table or\n secondary index can instantaneously support. The settings can be modified using the\n UpdateTable operation to meet the throughput requirements of an\n upcoming peak event.

" } }, + "com.amazonaws.dynamodb#WitnessStatus": { + "type": "enum", + "members": { + "CREATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATING" + } + }, + "DELETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETING" + } + }, + "ACTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACTIVE" + } + } + } + }, "com.amazonaws.dynamodb#WriteRequest": { "type": "structure", "members": { diff --git a/aws/sdk/aws-models/ec2.json b/aws/sdk/aws-models/ec2.json index d6d3cb7ad33..b51d3c0e6e2 100644 --- a/aws/sdk/aws-models/ec2.json +++ b/aws/sdk/aws-models/ec2.json @@ -288,7 +288,7 @@ "target": "com.amazonaws.ec2#AcceptAddressTransferResult" }, "traits": { - "smithy.api#documentation": "

Accepts an Elastic IP address transfer. For more information, see Accept a transferred Elastic IP address in the Amazon Virtual Private Cloud User Guide.

" + "smithy.api#documentation": "

Accepts an Elastic IP address transfer. For more information, see Accept a transferred Elastic IP address in the Amazon VPC User Guide.

" } }, "com.amazonaws.ec2#AcceptAddressTransferRequest": { @@ -336,6 +336,56 @@ "smithy.api#output": {} } }, + "com.amazonaws.ec2#AcceptCapacityReservationBillingOwnership": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#AcceptCapacityReservationBillingOwnershipRequest" + }, + "output": { + "target": "com.amazonaws.ec2#AcceptCapacityReservationBillingOwnershipResult" + }, + "traits": { + "smithy.api#documentation": "

Accepts a request to assign billing of the available capacity of a shared Capacity\n\t\t\tReservation to your account. For more information, see Billing assignment for shared\n\t\t\t\t\tAmazon EC2 Capacity Reservations.

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

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

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

The ID of the Capacity Reservation for which to accept the request.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#AcceptCapacityReservationBillingOwnershipResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ec2#AcceptReservedInstancesExchangeQuote": { "type": "operation", "input": { @@ -354,14 +404,14 @@ "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

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

" + "smithy.api#documentation": "

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

" } }, "ReservedInstanceIds": { "target": "com.amazonaws.ec2#ReservedInstanceIdSet", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the Convertible Reserved Instances to exchange for another Convertible\n Reserved Instance of the same or higher value.

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

The IDs of the Convertible Reserved Instances to exchange for another Convertible Reserved\n Instance of the same or higher value.

", "smithy.api#required": {}, "smithy.api#xmlName": "ReservedInstanceId" } @@ -369,7 +419,7 @@ "TargetConfigurations": { "target": "com.amazonaws.ec2#TargetConfigurationRequestSet", "traits": { - "smithy.api#documentation": "

The configuration of the target Convertible Reserved Instance to exchange for your\n current Convertible Reserved Instances.

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

The configuration of the target Convertible Reserved Instance to exchange for your current\n Convertible Reserved Instances.

", "smithy.api#xmlName": "TargetConfiguration" } } @@ -879,6 +929,16 @@ } } }, + "com.amazonaws.ec2#AccountID": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 12, + "max": 12 + }, + "smithy.api#pattern": "^[0-9]{12}$" + } + }, "com.amazonaws.ec2#ActiveInstance": { "type": "structure", "members": { @@ -928,6 +988,86 @@ } } }, + "com.amazonaws.ec2#ActiveVpnTunnelStatus": { + "type": "structure", + "members": { + "Phase1EncryptionAlgorithm": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Phase1EncryptionAlgorithm", + "smithy.api#documentation": "

The encryption algorithm negotiated in Phase 1 IKE negotiations.

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

The encryption algorithm negotiated in Phase 2 IKE negotiations.

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

The integrity algorithm negotiated in Phase 1 IKE negotiations.

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

The integrity algorithm negotiated in Phase 2 IKE negotiations.

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

The Diffie-Hellman group number being used in Phase 1 IKE negotiations.

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

The Diffie-Hellman group number being used in Phase 2 IKE negotiations.

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

The version of the Internet Key Exchange (IKE) protocol being used.

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

The current provisioning status of the VPN tunnel.

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

The reason for the current provisioning status.

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

Contains information about the current security configuration of an active VPN tunnel.

" + } + }, "com.amazonaws.ec2#ActivityStatus": { "type": "enum", "members": { @@ -983,6 +1123,32 @@ } } }, + "com.amazonaws.ec2#AddIpamOrganizationalUnitExclusion": { + "type": "structure", + "members": { + "OrganizationsEntityPath": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

An Amazon Web Services Organizations entity path. Build the path for the OU(s) using Amazon Web Services Organizations IDs separated by a /. Include all child OUs by ending the path with /*.

\n \n

For more information on how to construct an entity path, see Understand the Amazon Web Services Organizations entity path in the Amazon Web Services Identity and Access Management User Guide.

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

Add an Organizational Unit (OU) exclusion to your IPAM. If your IPAM is integrated with Amazon Web Services Organizations and you add an organizational unit (OU) exclusion, IPAM will not manage the IP addresses in accounts in that OU exclusion. There is a limit on the number of exclusions you can create. For more information, see Quotas for your IPAM in the Amazon VPC IPAM User Guide.

" + } + }, + "com.amazonaws.ec2#AddIpamOrganizationalUnitExclusionSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#AddIpamOrganizationalUnitExclusion" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 10 + } + } + }, "com.amazonaws.ec2#AddPrefixListEntries": { "type": "list", "member": { @@ -1150,22 +1316,6 @@ "com.amazonaws.ec2#Address": { "type": "structure", "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance that the address is associated with (if any).

", - "smithy.api#xmlName": "instanceId" - } - }, - "PublicIp": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "PublicIp", - "smithy.api#documentation": "

The Elastic IP address.

", - "smithy.api#xmlName": "publicIp" - } - }, "AllocationId": { "target": "com.amazonaws.ec2#String", "traits": { @@ -1261,6 +1411,38 @@ "smithy.api#documentation": "

The carrier IP address associated. This option is only available for network interfaces\n which reside in a subnet in a Wavelength Zone (for example an EC2 instance).

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

The ID of the subnet where the IP address is allocated.

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

The service that manages the elastic IP address.

\n \n

The only option supported today is alb.

\n
", + "smithy.api#xmlName": "serviceManaged" + } + }, + "InstanceId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance that the address is associated with (if any).

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

The Elastic IP address.

", + "smithy.api#xmlName": "publicIp" + } } }, "traits": { @@ -1415,7 +1597,7 @@ } }, "traits": { - "smithy.api#documentation": "

Details on the Elastic IP address transfer. For more information, see Transfer Elastic IP addresses in the Amazon Virtual Private Cloud User Guide.

" + "smithy.api#documentation": "

Details on the Elastic IP address transfer. For more information, see Transfer Elastic IP addresses in the Amazon VPC User Guide.

" } }, "com.amazonaws.ec2#AddressTransferList": { @@ -1459,7 +1641,7 @@ "target": "com.amazonaws.ec2#AdvertiseByoipCidrResult" }, "traits": { - "smithy.api#documentation": "

Advertises an IPv4 or IPv6 address range that is provisioned for use with your Amazon Web Services resources through \n bring your own IP addresses (BYOIP).

\n

You can perform this operation at most once every 10 seconds, even if you specify different \n address ranges each time.

\n

We recommend that you stop advertising the BYOIP CIDR from other locations when you advertise\n it from Amazon Web Services. To minimize down time, you can configure your Amazon Web Services resources to use an address from a\n BYOIP CIDR before it is advertised, and then simultaneously stop advertising it from the current \n location and start advertising it through Amazon Web Services.

\n

It can take a few minutes before traffic to the specified addresses starts routing to Amazon Web Services\n because of BGP propagation delays.

\n

To stop advertising the BYOIP CIDR, use WithdrawByoipCidr.

" + "smithy.api#documentation": "

Advertises an IPv4 or IPv6 address range that is provisioned for use with your Amazon Web Services resources through \n bring your own IP addresses (BYOIP).

\n

You can perform this operation at most once every 10 seconds, even if you specify different \n address ranges each time.

\n

We recommend that you stop advertising the BYOIP CIDR from other locations when you advertise\n it from Amazon Web Services. To minimize down time, you can configure your Amazon Web Services resources to use an address from a\n BYOIP CIDR before it is advertised, and then simultaneously stop advertising it from the current \n location and start advertising it through Amazon Web Services.

\n

It can take a few minutes before traffic to the specified addresses starts routing to Amazon Web Services\n because of BGP propagation delays.

" } }, "com.amazonaws.ec2#AdvertiseByoipCidrRequest": { @@ -1538,7 +1720,7 @@ "target": "com.amazonaws.ec2#AllocateAddressResult" }, "traits": { - "smithy.api#documentation": "

Allocates an Elastic IP address to your Amazon Web Services account. After you allocate the Elastic IP address you can associate \n it with an instance or network interface. After you release an Elastic IP address, it is released to the IP address \n pool and can be allocated to a different Amazon Web Services account.

\n

You can allocate an Elastic IP address from an address pool owned by Amazon Web Services or from an address pool created \n from a public IPv4 address range that you have brought to Amazon Web Services for use with your Amazon Web Services resources using bring your own \n IP addresses (BYOIP). For more information, see Bring Your Own IP Addresses (BYOIP) in the Amazon Elastic Compute Cloud User Guide.

\n

If you release an Elastic IP address, you might be able to recover it. You cannot recover\n an Elastic IP address that you released after it is allocated to another Amazon Web Services account. To attempt to recover an Elastic IP address that you released, specify\n it in this operation.

\n

For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

\n

You can allocate a carrier IP address which is a public IP address from a telecommunication carrier, \n to a network interface which resides in a subnet in a Wavelength Zone (for example an EC2 instance).

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

Allocates an Elastic IP address to your Amazon Web Services account. After you allocate the Elastic IP address you can associate \n it with an instance or network interface. After you release an Elastic IP address, it is released to the IP address \n pool and can be allocated to a different Amazon Web Services account.

\n

You can allocate an Elastic IP address from an address pool owned by Amazon Web Services or from an address pool created \n from a public IPv4 address range that you have brought to Amazon Web Services for use with your Amazon Web Services resources using bring your own \n IP addresses (BYOIP). For more information, see Bring Your Own IP Addresses (BYOIP) in the Amazon EC2 User Guide.

\n

If you release an Elastic IP address, you might be able to recover it. You cannot recover\n an Elastic IP address that you released after it is allocated to another Amazon Web Services account. To attempt to recover an Elastic IP address that you released, specify\n it in this operation.

\n

For more information, see Elastic IP Addresses in the Amazon EC2 User Guide.

\n

You can allocate a carrier IP address which is a public IP address from a telecommunication carrier, \n to a network interface which resides in a subnet in a Wavelength Zone (for example an EC2 instance).

", "smithy.api#examples": [ { "title": "To allocate an Elastic IP address", @@ -1578,7 +1760,7 @@ "NetworkBorderGroup": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

A unique set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services\n advertises IP addresses. Use this parameter to limit the IP address to this location. IP\n addresses cannot move between network border groups.

\n

Use DescribeAvailabilityZones to view the network border groups.

" + "smithy.api#documentation": "

A unique set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services\n advertises IP addresses. Use this parameter to limit the IP address to this location. IP\n addresses cannot move between network border groups.

" } }, "CustomerOwnedIpv4Pool": { @@ -1587,6 +1769,19 @@ "smithy.api#documentation": "

The ID of a customer-owned address pool. Use this parameter to let Amazon EC2 \n select an address from the address pool. Alternatively, specify a specific \n address from the address pool.

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

The tags to assign to the Elastic IP address.

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

The ID of an IPAM pool which has an Amazon-provided or BYOIP public IPv4 CIDR provisioned to it. For more information, see Allocate sequential Elastic IP addresses from an IPAM pool in the Amazon VPC IPAM User Guide.

" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { @@ -1594,13 +1789,6 @@ "smithy.api#documentation": "

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

", "smithy.api#xmlName": "dryRun" } - }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", - "traits": { - "smithy.api#documentation": "

The tags to assign to the Elastic IP address.

", - "smithy.api#xmlName": "TagSpecification" - } } }, "traits": { @@ -1610,14 +1798,6 @@ "com.amazonaws.ec2#AllocateAddressResult": { "type": "structure", "members": { - "PublicIp": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "PublicIp", - "smithy.api#documentation": "

The Elastic IP address.

", - "smithy.api#xmlName": "publicIp" - } - }, "AllocationId": { "target": "com.amazonaws.ec2#String", "traits": { @@ -1673,6 +1853,14 @@ "smithy.api#documentation": "

The carrier IP address. This option is only available for network interfaces that reside\n in a subnet in a Wavelength Zone.

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

The Elastic IP address.

", + "smithy.api#xmlName": "publicIp" + } } }, "traits": { @@ -1694,54 +1882,12 @@ "com.amazonaws.ec2#AllocateHostsRequest": { "type": "structure", "members": { - "AutoPlacement": { - "target": "com.amazonaws.ec2#AutoPlacement", - "traits": { - "aws.protocols#ec2QueryName": "AutoPlacement", - "smithy.api#documentation": "

Indicates whether the host accepts any untargeted instance launches that match its\n instance type configuration, or if it only accepts Host tenancy instance launches that\n specify its unique host ID. For more information, see Understanding auto-placement and affinity in the\n Amazon EC2 User Guide.

\n

Default: on\n

", - "smithy.api#xmlName": "autoPlacement" - } - }, - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Availability Zone in which to allocate the Dedicated Host.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "availabilityZone" - } - }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

", - "smithy.api#xmlName": "clientToken" - } - }, - "InstanceType": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

Specifies the instance type to be supported by the Dedicated Hosts. If you specify an\n instance type, the Dedicated Hosts support instances of the specified instance type\n only.

\n

If you want the Dedicated Hosts to support multiple instance types in a specific\n instance family, omit this parameter and specify InstanceFamily instead. You cannot specify InstanceType and InstanceFamily in the\n same request.

", - "smithy.api#xmlName": "instanceType" - } - }, "InstanceFamily": { "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#documentation": "

Specifies the instance family to be supported by the Dedicated Hosts. If you specify\n an instance family, the Dedicated Hosts support multiple instance types within that\n instance family.

\n

If you want the Dedicated Hosts to support a specific instance type only, omit this\n parameter and specify InstanceType instead. You cannot\n specify InstanceFamily and InstanceType in the same request.

" } }, - "Quantity": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "Quantity", - "smithy.api#documentation": "

The number of Dedicated Hosts to allocate to your account with these parameters. If you are \n allocating the Dedicated Hosts on an Outpost, and you specify AssetIds, \n you can omit this parameter. In this case, Amazon EC2 allocates a Dedicated Host on each \n specified hardware asset. If you specify both AssetIds and \n Quantity, then the value that you specify for \n Quantity must be equal to the number of asset IDs specified.

", - "smithy.api#xmlName": "quantity" - } - }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { @@ -1773,6 +1919,52 @@ "smithy.api#documentation": "

The IDs of the Outpost hardware assets on which to allocate the Dedicated Hosts. Targeting \n specific hardware assets on an Outpost can help to minimize latency between your workloads. \n This parameter is supported only if you specify OutpostArn. \n If you are allocating the Dedicated Hosts in a Region, omit this parameter.

\n ", "smithy.api#xmlName": "AssetId" } + }, + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#AvailabilityZoneId", + "traits": { + "smithy.api#documentation": "

The ID of the Availability Zone.

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

Indicates whether the host accepts any untargeted instance launches that match its\n instance type configuration, or if it only accepts Host tenancy instance launches that\n specify its unique host ID. For more information, see Understanding auto-placement and affinity in the\n Amazon EC2 User Guide.

\n

Default: off\n

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

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

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

Specifies the instance type to be supported by the Dedicated Hosts. If you specify an\n instance type, the Dedicated Hosts support instances of the specified instance type\n only.

\n

If you want the Dedicated Hosts to support multiple instance types in a specific\n instance family, omit this parameter and specify InstanceFamily instead. You cannot specify InstanceType and InstanceFamily in the\n same request.

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

The number of Dedicated Hosts to allocate to your account with these parameters. If you are \n allocating the Dedicated Hosts on an Outpost, and you specify AssetIds, \n you can omit this parameter. In this case, Amazon EC2 allocates a Dedicated Host on each \n specified hardware asset. If you specify both AssetIds and \n Quantity, then the value that you specify for \n Quantity must be equal to the number of asset IDs specified.

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

The Availability Zone in which to allocate the Dedicated Host.

", + "smithy.api#xmlName": "availabilityZone" + } } }, "traits": { @@ -1840,7 +2032,7 @@ "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

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

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency.

", "smithy.api#idempotencyToken": {} } }, @@ -1996,6 +2188,40 @@ "traits": { "smithy.api#enumValue": "used" } + }, + "future": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "future" + } + } + } + }, + "com.amazonaws.ec2#AllowedImagesSettingsDisabledState": { + "type": "enum", + "members": { + "disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disabled" + } + } + } + }, + "com.amazonaws.ec2#AllowedImagesSettingsEnabledState": { + "type": "enum", + "members": { + "enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enabled" + } + }, + "audit_mode": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "audit-mode" + } } } }, @@ -2138,6 +2364,9 @@ { "target": "com.amazonaws.ec2#AcceptAddressTransfer" }, + { + "target": "com.amazonaws.ec2#AcceptCapacityReservationBillingOwnership" + }, { "target": "com.amazonaws.ec2#AcceptReservedInstancesExchangeQuote" }, @@ -2183,6 +2412,9 @@ { "target": "com.amazonaws.ec2#AssociateAddress" }, + { + "target": "com.amazonaws.ec2#AssociateCapacityReservationBillingOwner" + }, { "target": "com.amazonaws.ec2#AssociateClientVpnTargetNetwork" }, @@ -2207,9 +2439,15 @@ { "target": "com.amazonaws.ec2#AssociateNatGatewayAddress" }, + { + "target": "com.amazonaws.ec2#AssociateRouteServer" + }, { "target": "com.amazonaws.ec2#AssociateRouteTable" }, + { + "target": "com.amazonaws.ec2#AssociateSecurityGroupVpc" + }, { "target": "com.amazonaws.ec2#AssociateSubnetCidrBlock" }, @@ -2270,6 +2508,9 @@ { "target": "com.amazonaws.ec2#CancelConversionTask" }, + { + "target": "com.amazonaws.ec2#CancelDeclarativePoliciesReport" + }, { "target": "com.amazonaws.ec2#CancelExportTask" }, @@ -2303,6 +2544,9 @@ { "target": "com.amazonaws.ec2#CreateCapacityReservation" }, + { + "target": "com.amazonaws.ec2#CreateCapacityReservationBySplitting" + }, { "target": "com.amazonaws.ec2#CreateCapacityReservationFleet" }, @@ -2330,6 +2574,9 @@ { "target": "com.amazonaws.ec2#CreateDefaultVpc" }, + { + "target": "com.amazonaws.ec2#CreateDelegateMacVolumeOwnershipTask" + }, { "target": "com.amazonaws.ec2#CreateDhcpOptions" }, @@ -2348,6 +2595,9 @@ { "target": "com.amazonaws.ec2#CreateImage" }, + { + "target": "com.amazonaws.ec2#CreateImageUsageReport" + }, { "target": "com.amazonaws.ec2#CreateInstanceConnectEndpoint" }, @@ -2363,6 +2613,9 @@ { "target": "com.amazonaws.ec2#CreateIpam" }, + { + "target": "com.amazonaws.ec2#CreateIpamExternalResourceVerificationToken" + }, { "target": "com.amazonaws.ec2#CreateIpamPool" }, @@ -2393,6 +2646,15 @@ { "target": "com.amazonaws.ec2#CreateLocalGatewayRouteTableVpcAssociation" }, + { + "target": "com.amazonaws.ec2#CreateLocalGatewayVirtualInterface" + }, + { + "target": "com.amazonaws.ec2#CreateLocalGatewayVirtualInterfaceGroup" + }, + { + "target": "com.amazonaws.ec2#CreateMacSystemIntegrityProtectionModificationTask" + }, { "target": "com.amazonaws.ec2#CreateManagedPrefixList" }, @@ -2435,6 +2697,15 @@ { "target": "com.amazonaws.ec2#CreateRoute" }, + { + "target": "com.amazonaws.ec2#CreateRouteServer" + }, + { + "target": "com.amazonaws.ec2#CreateRouteServerEndpoint" + }, + { + "target": "com.amazonaws.ec2#CreateRouteServerPeer" + }, { "target": "com.amazonaws.ec2#CreateRouteTable" }, @@ -2525,6 +2796,9 @@ { "target": "com.amazonaws.ec2#CreateVpc" }, + { + "target": "com.amazonaws.ec2#CreateVpcBlockPublicAccessExclusion" + }, { "target": "com.amazonaws.ec2#CreateVpcEndpoint" }, @@ -2579,6 +2853,9 @@ { "target": "com.amazonaws.ec2#DeleteFpgaImage" }, + { + "target": "com.amazonaws.ec2#DeleteImageUsageReport" + }, { "target": "com.amazonaws.ec2#DeleteInstanceConnectEndpoint" }, @@ -2591,6 +2868,9 @@ { "target": "com.amazonaws.ec2#DeleteIpam" }, + { + "target": "com.amazonaws.ec2#DeleteIpamExternalResourceVerificationToken" + }, { "target": "com.amazonaws.ec2#DeleteIpamPool" }, @@ -2621,6 +2901,12 @@ { "target": "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVpcAssociation" }, + { + "target": "com.amazonaws.ec2#DeleteLocalGatewayVirtualInterface" + }, + { + "target": "com.amazonaws.ec2#DeleteLocalGatewayVirtualInterfaceGroup" + }, { "target": "com.amazonaws.ec2#DeleteManagedPrefixList" }, @@ -2663,6 +2949,15 @@ { "target": "com.amazonaws.ec2#DeleteRoute" }, + { + "target": "com.amazonaws.ec2#DeleteRouteServer" + }, + { + "target": "com.amazonaws.ec2#DeleteRouteServerEndpoint" + }, + { + "target": "com.amazonaws.ec2#DeleteRouteServerPeer" + }, { "target": "com.amazonaws.ec2#DeleteRouteTable" }, @@ -2747,6 +3042,9 @@ { "target": "com.amazonaws.ec2#DeleteVpc" }, + { + "target": "com.amazonaws.ec2#DeleteVpcBlockPublicAccessExclusion" + }, { "target": "com.amazonaws.ec2#DeleteVpcEndpointConnectionNotifications" }, @@ -2819,9 +3117,24 @@ { "target": "com.amazonaws.ec2#DescribeByoipCidrs" }, + { + "target": "com.amazonaws.ec2#DescribeCapacityBlockExtensionHistory" + }, + { + "target": "com.amazonaws.ec2#DescribeCapacityBlockExtensionOfferings" + }, { "target": "com.amazonaws.ec2#DescribeCapacityBlockOfferings" }, + { + "target": "com.amazonaws.ec2#DescribeCapacityBlocks" + }, + { + "target": "com.amazonaws.ec2#DescribeCapacityBlockStatus" + }, + { + "target": "com.amazonaws.ec2#DescribeCapacityReservationBillingRequests" + }, { "target": "com.amazonaws.ec2#DescribeCapacityReservationFleets" }, @@ -2858,6 +3171,9 @@ { "target": "com.amazonaws.ec2#DescribeCustomerGateways" }, + { + "target": "com.amazonaws.ec2#DescribeDeclarativePoliciesReports" + }, { "target": "com.amazonaws.ec2#DescribeDhcpOptions" }, @@ -2918,9 +3234,18 @@ { "target": "com.amazonaws.ec2#DescribeImageAttribute" }, + { + "target": "com.amazonaws.ec2#DescribeImageReferences" + }, { "target": "com.amazonaws.ec2#DescribeImages" }, + { + "target": "com.amazonaws.ec2#DescribeImageUsageReportEntries" + }, + { + "target": "com.amazonaws.ec2#DescribeImageUsageReports" + }, { "target": "com.amazonaws.ec2#DescribeImportImageTasks" }, @@ -2942,6 +3267,9 @@ { "target": "com.amazonaws.ec2#DescribeInstanceEventWindows" }, + { + "target": "com.amazonaws.ec2#DescribeInstanceImageMetadata" + }, { "target": "com.amazonaws.ec2#DescribeInstances" }, @@ -2963,6 +3291,9 @@ { "target": "com.amazonaws.ec2#DescribeIpamByoasn" }, + { + "target": "com.amazonaws.ec2#DescribeIpamExternalResourceVerificationTokens" + }, { "target": "com.amazonaws.ec2#DescribeIpamPools" }, @@ -3014,6 +3345,9 @@ { "target": "com.amazonaws.ec2#DescribeMacHosts" }, + { + "target": "com.amazonaws.ec2#DescribeMacModificationTasks" + }, { "target": "com.amazonaws.ec2#DescribeManagedPrefixLists" }, @@ -3047,6 +3381,9 @@ { "target": "com.amazonaws.ec2#DescribeNetworkInterfaces" }, + { + "target": "com.amazonaws.ec2#DescribeOutpostLags" + }, { "target": "com.amazonaws.ec2#DescribePlacementGroups" }, @@ -3077,6 +3414,15 @@ { "target": "com.amazonaws.ec2#DescribeReservedInstancesOfferings" }, + { + "target": "com.amazonaws.ec2#DescribeRouteServerEndpoints" + }, + { + "target": "com.amazonaws.ec2#DescribeRouteServerPeers" + }, + { + "target": "com.amazonaws.ec2#DescribeRouteServers" + }, { "target": "com.amazonaws.ec2#DescribeRouteTables" }, @@ -3095,6 +3441,12 @@ { "target": "com.amazonaws.ec2#DescribeSecurityGroups" }, + { + "target": "com.amazonaws.ec2#DescribeSecurityGroupVpcAssociations" + }, + { + "target": "com.amazonaws.ec2#DescribeServiceLinkVirtualInterfaces" + }, { "target": "com.amazonaws.ec2#DescribeSnapshotAttribute" }, @@ -3134,6 +3486,9 @@ { "target": "com.amazonaws.ec2#DescribeTags" }, + { + "target": "com.amazonaws.ec2#DescribeTrafficMirrorFilterRules" + }, { "target": "com.amazonaws.ec2#DescribeTrafficMirrorFilters" }, @@ -3206,12 +3561,21 @@ { "target": "com.amazonaws.ec2#DescribeVpcAttribute" }, + { + "target": "com.amazonaws.ec2#DescribeVpcBlockPublicAccessExclusions" + }, + { + "target": "com.amazonaws.ec2#DescribeVpcBlockPublicAccessOptions" + }, { "target": "com.amazonaws.ec2#DescribeVpcClassicLink" }, { "target": "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupport" }, + { + "target": "com.amazonaws.ec2#DescribeVpcEndpointAssociations" + }, { "target": "com.amazonaws.ec2#DescribeVpcEndpointConnectionNotifications" }, @@ -3263,6 +3627,9 @@ { "target": "com.amazonaws.ec2#DisableAddressTransfer" }, + { + "target": "com.amazonaws.ec2#DisableAllowedImagesSettings" + }, { "target": "com.amazonaws.ec2#DisableAwsNetworkPerformanceMetricSubscription" }, @@ -3290,6 +3657,9 @@ { "target": "com.amazonaws.ec2#DisableIpamOrganizationAdminAccount" }, + { + "target": "com.amazonaws.ec2#DisableRouteServerPropagation" + }, { "target": "com.amazonaws.ec2#DisableSerialConsoleAccess" }, @@ -3311,6 +3681,9 @@ { "target": "com.amazonaws.ec2#DisassociateAddress" }, + { + "target": "com.amazonaws.ec2#DisassociateCapacityReservationBillingOwner" + }, { "target": "com.amazonaws.ec2#DisassociateClientVpnTargetNetwork" }, @@ -3332,9 +3705,15 @@ { "target": "com.amazonaws.ec2#DisassociateNatGatewayAddress" }, + { + "target": "com.amazonaws.ec2#DisassociateRouteServer" + }, { "target": "com.amazonaws.ec2#DisassociateRouteTable" }, + { + "target": "com.amazonaws.ec2#DisassociateSecurityGroupVpc" + }, { "target": "com.amazonaws.ec2#DisassociateSubnetCidrBlock" }, @@ -3356,6 +3735,9 @@ { "target": "com.amazonaws.ec2#EnableAddressTransfer" }, + { + "target": "com.amazonaws.ec2#EnableAllowedImagesSettings" + }, { "target": "com.amazonaws.ec2#EnableAwsNetworkPerformanceMetricSubscription" }, @@ -3386,6 +3768,9 @@ { "target": "com.amazonaws.ec2#EnableReachabilityAnalyzerOrganizationSharing" }, + { + "target": "com.amazonaws.ec2#EnableRouteServerPropagation" + }, { "target": "com.amazonaws.ec2#EnableSerialConsoleAccess" }, @@ -3419,6 +3804,15 @@ { "target": "com.amazonaws.ec2#ExportTransitGatewayRoutes" }, + { + "target": "com.amazonaws.ec2#ExportVerifiedAccessInstanceClientConfiguration" + }, + { + "target": "com.amazonaws.ec2#GetActiveVpnTunnelStatus" + }, + { + "target": "com.amazonaws.ec2#GetAllowedImagesSettings" + }, { "target": "com.amazonaws.ec2#GetAssociatedEnclaveCertificateIamRoles" }, @@ -3440,6 +3834,9 @@ { "target": "com.amazonaws.ec2#GetConsoleScreenshot" }, + { + "target": "com.amazonaws.ec2#GetDeclarativePoliciesReportSummary" + }, { "target": "com.amazonaws.ec2#GetDefaultCreditSpecification" }, @@ -3515,6 +3912,15 @@ { "target": "com.amazonaws.ec2#GetReservedInstancesExchangeQuote" }, + { + "target": "com.amazonaws.ec2#GetRouteServerAssociations" + }, + { + "target": "com.amazonaws.ec2#GetRouteServerPropagations" + }, + { + "target": "com.amazonaws.ec2#GetRouteServerRoutingDatabase" + }, { "target": "com.amazonaws.ec2#GetSecurityGroupsForVpc" }, @@ -3554,6 +3960,9 @@ { "target": "com.amazonaws.ec2#GetVerifiedAccessEndpointPolicy" }, + { + "target": "com.amazonaws.ec2#GetVerifiedAccessEndpointTargets" + }, { "target": "com.amazonaws.ec2#GetVerifiedAccessGroupPolicy" }, @@ -3638,6 +4047,12 @@ { "target": "com.amazonaws.ec2#ModifyInstanceCapacityReservationAttributes" }, + { + "target": "com.amazonaws.ec2#ModifyInstanceConnectEndpoint" + }, + { + "target": "com.amazonaws.ec2#ModifyInstanceCpuOptions" + }, { "target": "com.amazonaws.ec2#ModifyInstanceCreditSpecification" }, @@ -3656,6 +4071,9 @@ { "target": "com.amazonaws.ec2#ModifyInstanceMetadataOptions" }, + { + "target": "com.amazonaws.ec2#ModifyInstanceNetworkPerformanceOptions" + }, { "target": "com.amazonaws.ec2#ModifyInstancePlacement" }, @@ -3689,9 +4107,15 @@ { "target": "com.amazonaws.ec2#ModifyPrivateDnsNameOptions" }, + { + "target": "com.amazonaws.ec2#ModifyPublicIpDnsNameOptions" + }, { "target": "com.amazonaws.ec2#ModifyReservedInstances" }, + { + "target": "com.amazonaws.ec2#ModifyRouteServer" + }, { "target": "com.amazonaws.ec2#ModifySecurityGroupRules" }, @@ -3755,6 +4179,12 @@ { "target": "com.amazonaws.ec2#ModifyVpcAttribute" }, + { + "target": "com.amazonaws.ec2#ModifyVpcBlockPublicAccessExclusion" + }, + { + "target": "com.amazonaws.ec2#ModifyVpcBlockPublicAccessOptions" + }, { "target": "com.amazonaws.ec2#ModifyVpcEndpoint" }, @@ -3797,6 +4227,9 @@ { "target": "com.amazonaws.ec2#MoveByoipCidrToIpam" }, + { + "target": "com.amazonaws.ec2#MoveCapacityReservationInstances" + }, { "target": "com.amazonaws.ec2#ProvisionByoipCidr" }, @@ -3812,6 +4245,9 @@ { "target": "com.amazonaws.ec2#PurchaseCapacityBlock" }, + { + "target": "com.amazonaws.ec2#PurchaseCapacityBlockExtension" + }, { "target": "com.amazonaws.ec2#PurchaseHostReservation" }, @@ -3836,6 +4272,9 @@ { "target": "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupSources" }, + { + "target": "com.amazonaws.ec2#RejectCapacityReservationBillingOwnership" + }, { "target": "com.amazonaws.ec2#RejectTransitGatewayMulticastDomainAssociations" }, @@ -3863,6 +4302,9 @@ { "target": "com.amazonaws.ec2#ReplaceIamInstanceProfileAssociation" }, + { + "target": "com.amazonaws.ec2#ReplaceImageCriteriaInAllowedImagesSettings" + }, { "target": "com.amazonaws.ec2#ReplaceNetworkAclAssociation" }, @@ -3953,6 +4395,9 @@ { "target": "com.amazonaws.ec2#SendDiagnosticInterrupt" }, + { + "target": "com.amazonaws.ec2#StartDeclarativePoliciesReport" + }, { "target": "com.amazonaws.ec2#StartInstances" }, @@ -4955,17 +5400,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -4979,17 +5413,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -5003,17 +5426,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -5027,17 +5439,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { @@ -5257,6 +5658,14 @@ "smithy.api#xmlName": "availabilityZone" } }, + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone.

", + "smithy.api#xmlName": "availabilityZoneId" + } + }, "Instance": { "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { @@ -5341,7 +5750,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "DestinationPrefixListId", - "smithy.api#documentation": "

The prefix of the Amazon Web Service.

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

The prefix of the Amazon Web Services service.

", "smithy.api#xmlName": "destinationPrefixListId" } }, @@ -5712,6 +6121,15 @@ } } }, + "com.amazonaws.ec2#AsPath": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ec2#AsnAssociation": { "type": "structure", "members": { @@ -5885,28 +6303,12 @@ "target": "com.amazonaws.ec2#AssignIpv6AddressesResult" }, "traits": { - "smithy.api#documentation": "

Assigns one or more IPv6 addresses to the specified network interface. You can\n specify one or more specific IPv6 addresses, or you can specify the number of IPv6\n addresses to be automatically assigned from within the subnet's IPv6 CIDR block range.\n You can assign as many IPv6 addresses to a network interface as you can assign private\n IPv4 addresses, and the limit varies per instance type. For information, see IP Addresses Per Network Interface Per Instance Type\n in the Amazon Elastic Compute Cloud User Guide.

\n

You must specify either the IPv6 addresses or the IPv6 address count in the request.

\n

You can optionally use Prefix Delegation on the network interface. You must specify\n either the IPV6 Prefix Delegation prefixes, or the IPv6 Prefix Delegation count. For\n information, see \n Assigning prefixes to Amazon EC2 network interfaces in the Amazon Elastic Compute Cloud User Guide.

" + "smithy.api#documentation": "

Assigns the specified IPv6 addresses to the specified network interface. You can\n specify specific IPv6 addresses, or you can specify the number of IPv6 addresses to be\n automatically assigned from the subnet's IPv6 CIDR block range. You can assign as many\n IPv6 addresses to a network interface as you can assign private IPv4 addresses, and the\n limit varies by instance type.

\n

You must specify either the IPv6 addresses or the IPv6 address count in the request.

\n

You can optionally use Prefix Delegation on the network interface. You must specify\n either the IPV6 Prefix Delegation prefixes, or the IPv6 Prefix Delegation count. For\n information, see Assigning prefixes to network\n interfaces in the Amazon EC2 User Guide.

" } }, "com.amazonaws.ec2#AssignIpv6AddressesRequest": { "type": "structure", "members": { - "Ipv6AddressCount": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "Ipv6AddressCount", - "smithy.api#documentation": "

The number of additional IPv6 addresses to assign to the network interface. \n \t\tThe specified number of IPv6 addresses are assigned in addition to the \n \t\texisting IPv6 addresses that are already assigned to the network interface. \n \t\tAmazon EC2 automatically selects the IPv6 addresses from the subnet range. You \n \t\tcan't use this option if specifying specific IPv6 addresses.

", - "smithy.api#xmlName": "ipv6AddressCount" - } - }, - "Ipv6Addresses": { - "target": "com.amazonaws.ec2#Ipv6AddressList", - "traits": { - "aws.protocols#ec2QueryName": "Ipv6Addresses", - "smithy.api#documentation": "

The IPv6 addresses to be assigned to the network interface. You can't use this option if you're specifying a number of IPv6 addresses.

", - "smithy.api#xmlName": "ipv6Addresses" - } - }, "Ipv6PrefixCount": { "target": "com.amazonaws.ec2#Integer", "traits": { @@ -5916,7 +6318,7 @@ "Ipv6Prefixes": { "target": "com.amazonaws.ec2#IpPrefixList", "traits": { - "smithy.api#documentation": "

One or more IPv6 prefixes assigned to the network interface. You cannot use this option if you use the Ipv6PrefixCount option.

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

One or more IPv6 prefixes assigned to the network interface. You can't use this option if you use the Ipv6PrefixCount option.

", "smithy.api#xmlName": "Ipv6Prefix" } }, @@ -5929,6 +6331,22 @@ "smithy.api#required": {}, "smithy.api#xmlName": "networkInterfaceId" } + }, + "Ipv6Addresses": { + "target": "com.amazonaws.ec2#Ipv6AddressList", + "traits": { + "aws.protocols#ec2QueryName": "Ipv6Addresses", + "smithy.api#documentation": "

The IPv6 addresses to be assigned to the network interface. You can't use this option\n if you're specifying a number of IPv6 addresses.

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

The number of additional IPv6 addresses to assign to the network interface. The\n specified number of IPv6 addresses are assigned in addition to the existing IPv6\n addresses that are already assigned to the network interface. Amazon EC2 automatically\n selects the IPv6 addresses from the subnet range. You can't use this option if\n specifying specific IPv6 addresses.

", + "smithy.api#xmlName": "ipv6AddressCount" + } } }, "traits": { @@ -5942,7 +6360,7 @@ "target": "com.amazonaws.ec2#Ipv6AddressList", "traits": { "aws.protocols#ec2QueryName": "AssignedIpv6Addresses", - "smithy.api#documentation": "

The new IPv6 addresses assigned to the network interface. Existing IPv6 addresses \n \tthat were assigned to the network interface before the request are not included.

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

The new IPv6 addresses assigned to the network interface. Existing IPv6 addresses that\n were assigned to the network interface before the request are not included.

", "smithy.api#xmlName": "assignedIpv6Addresses" } }, @@ -5976,7 +6394,7 @@ "target": "com.amazonaws.ec2#AssignPrivateIpAddressesResult" }, "traits": { - "smithy.api#documentation": "

Assigns one or more secondary private IP addresses to the specified network interface.

\n

You can specify one or more specific secondary IP addresses, or you can specify the number \n of secondary IP addresses to be automatically assigned within the subnet's CIDR block range. \n The number of secondary IP addresses that you can assign to an instance varies by instance type.\n For information about instance types, see Instance Types in the Amazon Elastic Compute Cloud User Guide. For more information about \n Elastic IP addresses, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.

\n

When you move a secondary private IP address to another network interface, any Elastic IP address \n that is associated with the IP address is also moved.

\n

Remapping an IP address is an asynchronous operation. When you move an IP address from one network\n interface to another, check network/interfaces/macs/mac/local-ipv4s in the instance\n metadata to confirm that the remapping is complete.

\n

You must specify either the IP addresses or the IP address count in the request.

\n

You can optionally use Prefix Delegation on the network interface. You must specify\n either the IPv4 Prefix Delegation prefixes, or the IPv4 Prefix Delegation count. For\n information, see \n Assigning prefixes to Amazon EC2 network interfaces in the Amazon Elastic Compute Cloud User Guide.

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

Assigns the specified secondary private IP addresses to the specified network\n interface.

\n

You can specify specific secondary IP addresses, or you can specify the number of\n secondary IP addresses to be automatically assigned from the subnet's CIDR block range.\n The number of secondary IP addresses that you can assign to an instance varies by\n instance type. For more information about Elastic IP addresses, see Elastic IP\n Addresses in the Amazon EC2 User Guide.

\n

When you move a secondary private IP address to another network interface, any Elastic\n IP address that is associated with the IP address is also moved.

\n

Remapping an IP address is an asynchronous operation. When you move an IP address from\n one network interface to another, check\n network/interfaces/macs/mac/local-ipv4s in the instance metadata to\n confirm that the remapping is complete.

\n

You must specify either the IP addresses or the IP address count in the\n request.

\n

You can optionally use Prefix Delegation on the network interface. You must specify\n either the IPv4 Prefix Delegation prefixes, or the IPv4 Prefix Delegation count. For\n information, see Assigning prefixes to network\n interfaces in the Amazon EC2 User Guide.

", "smithy.api#examples": [ { "title": "To assign a specific secondary private IP address to an interface", @@ -6002,12 +6420,17 @@ "com.amazonaws.ec2#AssignPrivateIpAddressesRequest": { "type": "structure", "members": { - "AllowReassignment": { - "target": "com.amazonaws.ec2#Boolean", + "Ipv4Prefixes": { + "target": "com.amazonaws.ec2#IpPrefixList", "traits": { - "aws.protocols#ec2QueryName": "AllowReassignment", - "smithy.api#documentation": "

Indicates whether to allow an IP address that is already assigned to another network interface or instance to be reassigned to the specified network interface.

", - "smithy.api#xmlName": "allowReassignment" + "smithy.api#documentation": "

One or more IPv4 prefixes assigned to the network interface. You can't use this option if you use the Ipv4PrefixCount option.

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

The number of IPv4 prefixes that Amazon Web Services automatically assigns to the network interface. You can't use this option if you use the Ipv4 Prefixes option.

" } }, "NetworkInterfaceId": { @@ -6024,7 +6447,7 @@ "target": "com.amazonaws.ec2#PrivateIpAddressStringList", "traits": { "aws.protocols#ec2QueryName": "PrivateIpAddress", - "smithy.api#documentation": "

The IP addresses to be assigned as a secondary private IP address to the network interface. You can't specify this parameter when also specifying a number of secondary IP addresses.

\n

If you don't specify an IP address, Amazon EC2 automatically selects an IP address within the subnet range.

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

The IP addresses to be assigned as a secondary private IP address to the network\n interface. You can't specify this parameter when also specifying a number of secondary\n IP addresses.

\n

If you don't specify an IP address, Amazon EC2 automatically selects an IP address within\n the subnet range.

", "smithy.api#xmlName": "privateIpAddress" } }, @@ -6032,21 +6455,16 @@ "target": "com.amazonaws.ec2#Integer", "traits": { "aws.protocols#ec2QueryName": "SecondaryPrivateIpAddressCount", - "smithy.api#documentation": "

The number of secondary IP addresses to assign to the network interface. You can't specify this parameter when also specifying private IP addresses.

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

The number of secondary IP addresses to assign to the network interface. You can't\n specify this parameter when also specifying private IP addresses.

", "smithy.api#xmlName": "secondaryPrivateIpAddressCount" } }, - "Ipv4Prefixes": { - "target": "com.amazonaws.ec2#IpPrefixList", - "traits": { - "smithy.api#documentation": "

One or more IPv4 prefixes assigned to the network interface. You cannot use this option if you use the Ipv4PrefixCount option.

", - "smithy.api#xmlName": "Ipv4Prefix" - } - }, - "Ipv4PrefixCount": { - "target": "com.amazonaws.ec2#Integer", + "AllowReassignment": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The number of IPv4 prefixes that Amazon Web Services automatically assigns to the network interface. You cannot use this option if you use the Ipv4 Prefixes option.

" + "aws.protocols#ec2QueryName": "AllowReassignment", + "smithy.api#documentation": "

Indicates whether to allow an IP address that is already assigned to another network\n interface or instance to be reassigned to the specified network interface.

", + "smithy.api#xmlName": "allowReassignment" } } }, @@ -6096,7 +6514,7 @@ "target": "com.amazonaws.ec2#AssignPrivateNatGatewayAddressResult" }, "traits": { - "smithy.api#documentation": "

Assigns one or more private IPv4 addresses to a private NAT gateway. For more information, see \n Work with NAT gateways in the Amazon VPC User Guide.

" + "smithy.api#documentation": "

Assigns private IPv4 addresses to a private NAT gateway. For more information, see \n Work with NAT gateways in the Amazon VPC User Guide.

" } }, "com.amazonaws.ec2#AssignPrivateNatGatewayAddressRequest": { @@ -6240,14 +6658,6 @@ "smithy.api#documentation": "

Deprecated.

" } }, - "AllowReassociation": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "AllowReassociation", - "smithy.api#documentation": "

Reassociation is automatic, but you can specify false to ensure the operation fails if the Elastic IP address is already associated with another resource.

", - "smithy.api#xmlName": "allowReassociation" - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { @@ -6271,6 +6681,14 @@ "smithy.api#documentation": "

The primary or secondary private IP address to associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.

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

Reassociation is automatic, but you can specify false to ensure the operation fails if the Elastic IP address is already associated with another resource.

", + "smithy.api#xmlName": "allowReassociation" + } } }, "traits": { @@ -6293,6 +6711,64 @@ "smithy.api#output": {} } }, + "com.amazonaws.ec2#AssociateCapacityReservationBillingOwner": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#AssociateCapacityReservationBillingOwnerRequest" + }, + "output": { + "target": "com.amazonaws.ec2#AssociateCapacityReservationBillingOwnerResult" + }, + "traits": { + "smithy.api#documentation": "

Initiates a request to assign billing of the unused capacity of a shared Capacity\n\t\t\tReservation to a consumer account that is consolidated under the same Amazon Web Services\n\t\t\torganizations payer account. For more information, see Billing assignment for shared\n\t\t\t\t\tAmazon EC2 Capacity Reservations.

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

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

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

The ID of the Capacity Reservation.

", + "smithy.api#required": {} + } + }, + "UnusedReservationBillingOwnerId": { + "target": "com.amazonaws.ec2#AccountID", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the consumer account to which to assign billing.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#AssociateCapacityReservationBillingOwnerResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ec2#AssociateClientVpnTargetNetwork": { "type": "operation", "input": { @@ -6327,7 +6803,7 @@ "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

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

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. \nFor more information, see Ensuring idempotency.

", "smithy.api#idempotencyToken": {} } }, @@ -6375,7 +6851,7 @@ "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Associates a set of DHCP options (that you've previously created) with the specified VPC, or associates no DHCP options with the VPC.

\n

After you associate the options with the VPC, any existing instances and all new instances that you launch in that VPC use the options. You don't need to restart or relaunch the instances. They automatically pick up the changes within a few hours, depending on how frequently the instance renews its DHCP lease. You can explicitly renew the lease using the operating system on the instance.

\n

For more information, see DHCP options sets\n in the Amazon VPC User Guide.

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

Associates a set of DHCP options (that you've previously created) with the specified VPC, or associates no DHCP options with the VPC.

\n

After you associate the options with the VPC, any existing instances and all new instances that you launch in that VPC use the options. You don't need to restart or relaunch the instances. They automatically pick up the changes within a few hours, depending on how frequently the instance renews its DHCP lease. You can explicitly renew the lease using the operating system on the instance.

\n

For more information, see DHCP option sets\n in the Amazon VPC User Guide.

", "smithy.api#examples": [ { "title": "To associate a DHCP options set with a VPC", @@ -6586,7 +7062,7 @@ "target": "com.amazonaws.ec2#AssociateInstanceEventWindowResult" }, "traits": { - "smithy.api#documentation": "

Associates one or more targets with an event window. Only one type of target (instance IDs,\n Dedicated Host IDs, or tags) can be specified with an event window.

\n

For more information, see Define event windows for scheduled\n events in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Associates one or more targets with an event window. Only one type of target (instance\n IDs, Dedicated Host IDs, or tags) can be specified with an event window.

\n

For more information, see Define event windows for scheduled\n events in the Amazon EC2 User Guide.

" } }, "com.amazonaws.ec2#AssociateInstanceEventWindowRequest": { @@ -6774,7 +7250,7 @@ "target": "com.amazonaws.ec2#AssociateNatGatewayAddressResult" }, "traits": { - "smithy.api#documentation": "

Associates Elastic IP addresses (EIPs) and private IPv4 addresses with a public NAT gateway. For more information, \n see Work with NAT gateways in the Amazon VPC User Guide.

\n

By default, you can associate up to 2 Elastic IP addresses per public NAT gateway. You can increase the limit by requesting a quota adjustment. For more information, see Elastic IP address quotas in the Amazon VPC User Guide.

\n \n

When you associate an EIP or secondary EIPs with a public NAT gateway, the network border group of the EIPs must match the network border group of the Availability Zone (AZ) that the public NAT gateway is in. If it's not the same, the EIP will fail to associate. You can see the network border group for the subnet's AZ by viewing the details of the subnet. Similarly, you can view the network border group of an EIP by viewing the details of the EIP address. For more information about network border groups and EIPs, see Allocate an Elastic IP address in the Amazon VPC User Guide. \n

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

Associates Elastic IP addresses (EIPs) and private IPv4 addresses with a public NAT gateway. For more information, \n see Work with NAT gateways in the Amazon VPC User Guide.

\n

By default, you can associate up to 2 Elastic IP addresses per public NAT gateway. You can increase the limit by requesting a quota adjustment. \n For more information, see Elastic IP address quotas in the Amazon VPC User Guide.

\n \n

When you associate an EIP or secondary EIPs with a public NAT gateway, the network border group of the EIPs \n must match the network border group of the Availability Zone (AZ) that the public NAT gateway is in. If it's not the same, \n the EIP will fail to associate. You can see the network border group for the subnet's AZ by viewing the details of the subnet.\n Similarly, you can view the network border group of an EIP by viewing the details of the EIP address. For more information \n about network border groups and EIPs, see Allocate an Elastic IP address in the Amazon VPC User Guide. \n

\n
" } }, "com.amazonaws.ec2#AssociateNatGatewayAddressRequest": { @@ -6839,6 +7315,64 @@ "smithy.api#output": {} } }, + "com.amazonaws.ec2#AssociateRouteServer": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#AssociateRouteServerRequest" + }, + "output": { + "target": "com.amazonaws.ec2#AssociateRouteServerResult" + }, + "traits": { + "smithy.api#documentation": "

Associates a route server with a VPC to enable dynamic route updates.

\n

A route server association is the connection established between a route server and a VPC.

\n

For more information see Dynamic routing in your VPC with VPC Route Server in the Amazon VPC User Guide.

" + } + }, + "com.amazonaws.ec2#AssociateRouteServerRequest": { + "type": "structure", + "members": { + "RouteServerId": { + "target": "com.amazonaws.ec2#RouteServerId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The unique identifier for the route server to be associated.

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

The ID of the VPC to associate with the route server.

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

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

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

Information about the association between the route server and the VPC.

", + "smithy.api#xmlName": "routeServerAssociation" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ec2#AssociateRouteTable": { "type": "operation", "input": { @@ -6867,6 +7401,18 @@ "com.amazonaws.ec2#AssociateRouteTableRequest": { "type": "structure", "members": { + "GatewayId": { + "target": "com.amazonaws.ec2#RouteGatewayId", + "traits": { + "smithy.api#documentation": "

The ID of the internet gateway or virtual private gateway.

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

The ID of a public IPv4 pool. A public IPv4 pool is a pool of IPv4 addresses that you've brought to Amazon Web Services with BYOIP.

" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { @@ -6875,16 +7421,6 @@ "smithy.api#xmlName": "dryRun" } }, - "RouteTableId": { - "target": "com.amazonaws.ec2#RouteTableId", - "traits": { - "aws.protocols#ec2QueryName": "RouteTableId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the route table.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "routeTableId" - } - }, "SubnetId": { "target": "com.amazonaws.ec2#SubnetId", "traits": { @@ -6893,10 +7429,14 @@ "smithy.api#xmlName": "subnetId" } }, - "GatewayId": { - "target": "com.amazonaws.ec2#RouteGatewayId", + "RouteTableId": { + "target": "com.amazonaws.ec2#RouteTableId", "traits": { - "smithy.api#documentation": "

The ID of the internet gateway or virtual private gateway.

" + "aws.protocols#ec2QueryName": "RouteTableId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the route table.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "routeTableId" } } }, @@ -6928,6 +7468,64 @@ "smithy.api#output": {} } }, + "com.amazonaws.ec2#AssociateSecurityGroupVpc": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#AssociateSecurityGroupVpcRequest" + }, + "output": { + "target": "com.amazonaws.ec2#AssociateSecurityGroupVpcResult" + }, + "traits": { + "smithy.api#documentation": "

Associates a security group with another VPC in the same Region. This enables you to use the same security group with network interfaces and instances in the specified VPC.

\n \n \n " + } + }, + "com.amazonaws.ec2#AssociateSecurityGroupVpcRequest": { + "type": "structure", + "members": { + "GroupId": { + "target": "com.amazonaws.ec2#SecurityGroupId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A security group ID.

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

A VPC ID.

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

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

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#AssociateSecurityGroupVpcResult": { + "type": "structure", + "members": { + "State": { + "target": "com.amazonaws.ec2#SecurityGroupVpcAssociationState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the association.

", + "smithy.api#xmlName": "state" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ec2#AssociateSubnetCidrBlock": { "type": "operation", "input": { @@ -6943,12 +7541,16 @@ "com.amazonaws.ec2#AssociateSubnetCidrBlockRequest": { "type": "structure", "members": { - "Ipv6CidrBlock": { - "target": "com.amazonaws.ec2#String", + "Ipv6IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", "traits": { - "aws.protocols#ec2QueryName": "Ipv6CidrBlock", - "smithy.api#documentation": "

The IPv6 CIDR block for your subnet.

", - "smithy.api#xmlName": "ipv6CidrBlock" + "smithy.api#documentation": "

An IPv6 IPAM pool ID.

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

An IPv6 netmask length.

" } }, "SubnetId": { @@ -6961,16 +7563,12 @@ "smithy.api#xmlName": "subnetId" } }, - "Ipv6IpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", - "traits": { - "smithy.api#documentation": "

An IPv6 IPAM pool ID.

" - } - }, - "Ipv6NetmaskLength": { - "target": "com.amazonaws.ec2#NetmaskLength", + "Ipv6CidrBlock": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

An IPv6 netmask length.

" + "aws.protocols#ec2QueryName": "Ipv6CidrBlock", + "smithy.api#documentation": "

The IPv6 CIDR block for your subnet.

", + "smithy.api#xmlName": "ipv6CidrBlock" } } }, @@ -7193,7 +7791,7 @@ "target": "com.amazonaws.ec2#AssociateTrunkInterfaceResult" }, "traits": { - "smithy.api#documentation": "

Associates a branch network interface with a trunk network interface.

\n

Before you create the association, run the create-network-interface command and set\n --interface-type to trunk. You must also create a network interface for each branch network interface that you want to associate with the trunk network interface.

" + "smithy.api#documentation": "

Associates a branch network interface with a trunk network interface.

\n

Before you create the association, use CreateNetworkInterface command and set the interface type\n to trunk. You must also create a network interface for \n each branch network interface that you want to associate with the trunk \n network interface.

" } }, "com.amazonaws.ec2#AssociateTrunkInterfaceRequest": { @@ -7230,7 +7828,7 @@ "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see How to Ensure\n Idempotency.

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

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see Ensuring\n idempotency.

", "smithy.api#idempotencyToken": {} } }, @@ -7260,7 +7858,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see How to Ensure\n Idempotency.

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

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see Ensuring\n idempotency.

", "smithy.api#xmlName": "clientToken" } } @@ -7278,36 +7876,18 @@ "target": "com.amazonaws.ec2#AssociateVpcCidrBlockResult" }, "traits": { - "smithy.api#documentation": "

Associates a CIDR block with your VPC. You can associate a secondary IPv4 CIDR block,\n an Amazon-provided IPv6 CIDR block, or an IPv6 CIDR block from an IPv6 address pool that\n you provisioned through bring your own IP addresses (BYOIP).

\n

You must specify one of the following in the request: an IPv4 CIDR block, an IPv6\n pool, or an Amazon-provided IPv6 CIDR block.

\n

For more information about associating CIDR blocks with your VPC and applicable\n restrictions, see IP addressing for your VPCs and subnets \n in the Amazon VPC User Guide.

" + "smithy.api#documentation": "

Associates a CIDR block with your VPC. You can associate a secondary IPv4 CIDR block,\n an Amazon-provided IPv6 CIDR block, or an IPv6 CIDR block from an IPv6 address pool that\n you provisioned through bring your own IP addresses (BYOIP).

\n

You must specify one of the following in the request: an IPv4 CIDR block, an IPv6\n pool, or an Amazon-provided IPv6 CIDR block.

\n

For more information about associating CIDR blocks with your VPC and applicable\n restrictions, see IP addressing for your VPCs and subnets \n in the Amazon VPC User Guide.

" } }, "com.amazonaws.ec2#AssociateVpcCidrBlockRequest": { "type": "structure", "members": { - "AmazonProvidedIpv6CidrBlock": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "AmazonProvidedIpv6CidrBlock", - "smithy.api#documentation": "

Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You\n cannot specify the range of IPv6 addresses or the size of the CIDR block.

", - "smithy.api#xmlName": "amazonProvidedIpv6CidrBlock" - } - }, "CidrBlock": { "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#documentation": "

An IPv4 CIDR block to associate with the VPC.

" } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", - "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "vpcId" - } - }, "Ipv6CidrBlockNetworkBorderGroup": { "target": "com.amazonaws.ec2#String", "traits": { @@ -7349,6 +7929,24 @@ "traits": { "smithy.api#documentation": "

The netmask length of the IPv6 CIDR you would like to associate from an Amazon VPC IP Address Manager (IPAM) pool. For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide.

" } + }, + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", + "traits": { + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "vpcId" + } + }, + "AmazonProvidedIpv6CidrBlock": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "AmazonProvidedIpv6CidrBlock", + "smithy.api#documentation": "

Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You\n cannot specify the range of IPv6 addresses or the size of the CIDR block.

", + "smithy.api#xmlName": "amazonProvidedIpv6CidrBlock" + } } }, "traits": { @@ -7447,6 +8045,15 @@ } } }, + "com.amazonaws.ec2#AssociatedSubnetList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#SubnetId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ec2#AssociatedTargetNetwork": { "type": "structure", "members": { @@ -7622,15 +8229,6 @@ "smithy.api#xmlName": "dryRun" } }, - "Groups": { - "target": "com.amazonaws.ec2#GroupIdStringList", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the security groups. You cannot specify security groups from a different VPC.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "SecurityGroupId" - } - }, "InstanceId": { "target": "com.amazonaws.ec2#InstanceId", "traits": { @@ -7650,6 +8248,15 @@ "smithy.api#required": {}, "smithy.api#xmlName": "vpcId" } + }, + "Groups": { + "target": "com.amazonaws.ec2#GroupIdStringList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of the security groups. You cannot specify security groups from a different VPC.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "SecurityGroupId" + } } }, "traits": { @@ -7759,34 +8366,32 @@ "com.amazonaws.ec2#AttachNetworkInterfaceRequest": { "type": "structure", "members": { - "DeviceIndex": { + "NetworkCardIndex": { "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "DeviceIndex", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The index of the device for the network interface attachment.

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

The index of the network card. Some instance types support multiple network cards. The\n primary network interface must be assigned to network card index 0. The default is\n network card index 0.

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

Configures ENA Express for the network interface that this action attaches to the\n instance.

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

The number of ENA queues to be created with the instance.

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

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

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

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

", "smithy.api#xmlName": "dryRun" } }, - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", - "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "instanceId" - } - }, "NetworkInterfaceId": { "target": "com.amazonaws.ec2#NetworkInterfaceId", "traits": { @@ -7797,16 +8402,24 @@ "smithy.api#xmlName": "networkInterfaceId" } }, - "NetworkCardIndex": { - "target": "com.amazonaws.ec2#Integer", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "smithy.api#documentation": "

The index of the network card. Some instance types support multiple network cards. \n The primary network interface must be assigned to network card index 0. \n The default is network card index 0.

" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "instanceId" } }, - "EnaSrdSpecification": { - "target": "com.amazonaws.ec2#EnaSrdSpecification", + "DeviceIndex": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

Configures ENA Express for the network interface that this action attaches to the instance.

" + "aws.protocols#ec2QueryName": "DeviceIndex", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The index of the device for the network interface attachment.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "deviceIndex" } } }, @@ -7874,7 +8487,7 @@ "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring Idempotency.

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

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring idempotency.

", "smithy.api#idempotencyToken": {} } }, @@ -7922,7 +8535,7 @@ "target": "com.amazonaws.ec2#VolumeAttachment" }, "traits": { - "smithy.api#documentation": "

Attaches an EBS volume to a running or stopped instance and exposes it to the instance\n with the specified device name.

\n

Encrypted EBS volumes must be attached to instances that support Amazon EBS encryption. For\n more information, see Amazon EBS encryption in the Amazon EBS User Guide.

\n

After you attach an EBS volume, you must make it available. For more information, see \n Make an EBS volume available for use.

\n

If a volume has an Amazon Web Services Marketplace product code:

\n \n

For more information, see Attach an Amazon EBS volume to an instance in the\n Amazon EBS User Guide.

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

Attaches an Amazon EBS volume to a running or stopped \n instance, and exposes it to the instance with the specified device name.

\n \n

The maximum number of Amazon EBS volumes that you can attach to an instance depends on the \n instance type. If you exceed the volume attachment limit for an instance type, the attachment \n request fails with the AttachmentLimitExceeded error. For more information, \n see Instance \n volume limits.

\n
\n

After you attach an EBS volume, you must make it available for use. For more information, \n see Make an \n EBS volume available for use.

\n

If a volume has an Amazon Web Services Marketplace product code:

\n \n

For more information, see Attach an Amazon EBS volume to an instance in the\n Amazon EBS User Guide.

", "smithy.api#examples": [ { "title": "To attach a volume to an instance", @@ -7992,7 +8605,7 @@ "target": "com.amazonaws.ec2#AttachVpnGatewayResult" }, "traits": { - "smithy.api#documentation": "

Attaches a virtual private gateway to a VPC. You can attach one virtual private\n gateway to one VPC at a time.

\n

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN\n User Guide.

" + "smithy.api#documentation": "

Attaches an available virtual private gateway to a VPC. You can attach one virtual private\n gateway to one VPC at a time.

\n

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN\n User Guide.

" } }, "com.amazonaws.ec2#AttachVpnGatewayRequest": { @@ -8085,6 +8698,23 @@ "smithy.api#documentation": "

ENA Express is compatible with both TCP and UDP transport protocols. When it's enabled, TCP traffic \n\t\t\tautomatically uses it. However, some UDP-based applications are designed to handle network packets that are \n\t\t\tout of order, without a need for retransmission, such as live video broadcasting or other near-real-time \n\t\t\tapplications. For UDP traffic, you can specify whether to use ENA Express, based on your application \n\t\t\tenvironment needs.

" } }, + "com.amazonaws.ec2#AttachmentLimitType": { + "type": "enum", + "members": { + "SHARED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "shared" + } + }, + "DEDICATED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "dedicated" + } + } + } + }, "com.amazonaws.ec2#AttachmentStatus": { "type": "enum", "members": { @@ -8130,6 +8760,63 @@ "smithy.api#documentation": "

Describes a value for a resource attribute that is a Boolean value.

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

The name of the attribute.

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

The configuration value that is most frequently observed for the attribute.

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

The number of accounts with the same configuration value for the attribute that is\n most frequently observed.

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

The number of accounts with a configuration value different from the most frequently\n observed value for the attribute.

", + "smithy.api#xmlName": "numberOfUnmatchedAccounts" + } + }, + "RegionalSummaries": { + "target": "com.amazonaws.ec2#RegionalSummaryList", + "traits": { + "aws.protocols#ec2QueryName": "RegionalSummarySet", + "smithy.api#documentation": "

The summary report for each Region for the attribute.

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

A summary report for the attribute across all Regions.

" + } + }, + "com.amazonaws.ec2#AttributeSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#AttributeSummary", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ec2#AttributeValue": { "type": "structure", "members": { @@ -8263,7 +8950,7 @@ "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

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

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. \nFor more information, see Ensuring idempotency.

", "smithy.api#idempotencyToken": {} } }, @@ -8351,6 +9038,13 @@ "com.amazonaws.ec2#AuthorizeSecurityGroupEgressRequest": { "type": "structure", "members": { + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags applied to the security group rule.

", + "smithy.api#xmlName": "TagSpecification" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { @@ -8369,27 +9063,28 @@ "smithy.api#xmlName": "groupId" } }, - "IpPermissions": { - "target": "com.amazonaws.ec2#IpPermissionList", + "SourceSecurityGroupName": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "IpPermissions", - "smithy.api#documentation": "

The permissions for the security group rules.

", - "smithy.api#xmlName": "ipPermissions" + "aws.protocols#ec2QueryName": "SourceSecurityGroupName", + "smithy.api#documentation": "

Not supported. Use IP permissions instead.

", + "smithy.api#xmlName": "sourceSecurityGroupName" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "SourceSecurityGroupOwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The tags applied to the security group rule.

", - "smithy.api#xmlName": "TagSpecification" + "aws.protocols#ec2QueryName": "SourceSecurityGroupOwnerId", + "smithy.api#documentation": "

Not supported. Use IP permissions instead.

", + "smithy.api#xmlName": "sourceSecurityGroupOwnerId" } }, - "CidrIp": { + "IpProtocol": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "CidrIp", + "aws.protocols#ec2QueryName": "IpProtocol", "smithy.api#documentation": "

Not supported. Use IP permissions instead.

", - "smithy.api#xmlName": "cidrIp" + "smithy.api#xmlName": "ipProtocol" } }, "FromPort": { @@ -8400,14 +9095,6 @@ "smithy.api#xmlName": "fromPort" } }, - "IpProtocol": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "IpProtocol", - "smithy.api#documentation": "

Not supported. Use IP permissions instead.

", - "smithy.api#xmlName": "ipProtocol" - } - }, "ToPort": { "target": "com.amazonaws.ec2#Integer", "traits": { @@ -8416,20 +9103,20 @@ "smithy.api#xmlName": "toPort" } }, - "SourceSecurityGroupName": { + "CidrIp": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SourceSecurityGroupName", + "aws.protocols#ec2QueryName": "CidrIp", "smithy.api#documentation": "

Not supported. Use IP permissions instead.

", - "smithy.api#xmlName": "sourceSecurityGroupName" + "smithy.api#xmlName": "cidrIp" } }, - "SourceSecurityGroupOwnerId": { - "target": "com.amazonaws.ec2#String", + "IpPermissions": { + "target": "com.amazonaws.ec2#IpPermissionList", "traits": { - "aws.protocols#ec2QueryName": "SourceSecurityGroupOwnerId", - "smithy.api#documentation": "

Not supported. Use IP permissions instead.

", - "smithy.api#xmlName": "sourceSecurityGroupOwnerId" + "aws.protocols#ec2QueryName": "IpPermissions", + "smithy.api#documentation": "

The permissions for the security group rules.

", + "smithy.api#xmlName": "ipPermissions" } } }, @@ -8473,19 +9160,19 @@ "smithy.api#documentation": "

Adds the specified inbound (ingress) rules to a security group.

\n

An inbound rule permits instances to receive traffic from the specified IPv4 or IPv6 \n address range, the IP address ranges that are specified by a prefix list, or the instances \n that are associated with a destination security group. For more information, see Security group rules.

\n

You must specify exactly one of the following sources: an IPv4 or IPv6 address range,\n a prefix list, or a security group. You must specify a protocol for each rule (for example, TCP). \n If the protocol is TCP or UDP, you must also specify a port or port range. If the protocol is \n ICMP or ICMPv6, you must also specify the ICMP/ICMPv6 type and code.

\n

Rule changes are propagated to instances associated with the security group as quickly \n as possible. However, a small delay might occur.

\n

For examples of rules that you can add to security groups for specific access scenarios, \n see Security group rules for different use cases in the Amazon EC2 User Guide.

\n

For more information about security group quotas, see Amazon VPC quotas in the Amazon VPC User Guide.

", "smithy.api#examples": [ { - "title": "To add a rule that allows inbound SSH traffic from an IPv4 address range", - "documentation": "This example enables inbound traffic on TCP port 22 (SSH). The rule includes a description to help you identify it later.", + "title": "To add a rule that allows inbound HTTP traffic from another security group", + "documentation": "This example enables inbound traffic on TCP port 80 from the specified security group. The group must be in the same VPC or a peer VPC. Incoming traffic is allowed based on the private IP addresses of instances that are associated with the specified security group.", "input": { - "GroupId": "sg-903004f8", + "GroupId": "sg-111aaa22", "IpPermissions": [ { "IpProtocol": "tcp", - "FromPort": 22, - "ToPort": 22, - "IpRanges": [ + "FromPort": 80, + "ToPort": 80, + "UserIdGroupPairs": [ { - "CidrIp": "203.0.113.0/24", - "Description": "SSH access from the LA office" + "GroupId": "sg-1a2b3c4d", + "Description": "HTTP access from other instances" } ] } @@ -8494,19 +9181,19 @@ "output": {} }, { - "title": "To add a rule that allows inbound HTTP traffic from another security group", - "documentation": "This example enables inbound traffic on TCP port 80 from the specified security group. The group must be in the same VPC or a peer VPC. Incoming traffic is allowed based on the private IP addresses of instances that are associated with the specified security group.", + "title": "To add a rule that allows inbound SSH traffic from an IPv4 address range", + "documentation": "This example enables inbound traffic on TCP port 22 (SSH). The rule includes a description to help you identify it later.", "input": { - "GroupId": "sg-111aaa22", + "GroupId": "sg-903004f8", "IpPermissions": [ { "IpProtocol": "tcp", - "FromPort": 80, - "ToPort": 80, - "UserIdGroupPairs": [ + "FromPort": 22, + "ToPort": 22, + "IpRanges": [ { - "GroupId": "sg-1a2b3c4d", - "Description": "HTTP access from other instances" + "CidrIp": "203.0.113.0/24", + "Description": "SSH access from the LA office" } ] } @@ -8544,7 +9231,7 @@ "CidrIp": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IPv4 address range, in CIDR format.

\n

To specify an IPv6 address range, use IP permissions instead.

\n

To specify multiple rules and descriptions for the rules, use IP permissions instead.

" + "smithy.api#documentation": "

The IPv4 address range, in CIDR format.

\n \n

\n Amazon Web Services canonicalizes IPv4 and IPv6 CIDRs. For example, if you specify 100.68.0.18/18 for the CIDR block, \n Amazon Web Services canonicalizes the CIDR block to 100.68.0.0/18. Any subsequent DescribeSecurityGroups and DescribeSecurityGroupRules calls will \n return the canonicalized form of the CIDR block. Additionally, if you attempt to add another rule with the \n non-canonical form of the CIDR (such as 100.68.0.18/18) and there is already a rule for the canonicalized \n form of the CIDR block (such as 100.68.0.0/18), the API throws an duplicate rule error.

\n
\n

To specify an IPv6 address range, use IP permissions instead.

\n

To specify multiple rules and descriptions for the rules, use IP permissions instead.

" } }, "FromPort": { @@ -8595,6 +9282,13 @@ "smithy.api#documentation": "

If the protocol is TCP or UDP, this is the end of the port range.\n If the protocol is ICMP, this is the ICMP code or -1 (all ICMP codes). \n If the start port is -1 (all ICMP types), then the end port must be -1 (all ICMP codes).

\n

To specify multiple rules and descriptions for the rules, use IP permissions instead.

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

The tags applied to the security group rule.

", + "smithy.api#xmlName": "TagSpecification" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { @@ -8602,13 +9296,6 @@ "smithy.api#documentation": "

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

", "smithy.api#xmlName": "dryRun" } - }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", - "traits": { - "smithy.api#documentation": "

The tags applied to the security group rule.

", - "smithy.api#xmlName": "TagSpecification" - } } }, "traits": { @@ -8696,19 +9383,11 @@ "com.amazonaws.ec2#AvailabilityZone": { "type": "structure", "members": { - "State": { - "target": "com.amazonaws.ec2#AvailabilityZoneState", - "traits": { - "aws.protocols#ec2QueryName": "ZoneState", - "smithy.api#documentation": "

The state of the Availability Zone, Local Zone, or Wavelength Zone. This value is always\n available.

", - "smithy.api#xmlName": "zoneState" - } - }, "OptInStatus": { "target": "com.amazonaws.ec2#AvailabilityZoneOptInStatus", "traits": { "aws.protocols#ec2QueryName": "OptInStatus", - "smithy.api#documentation": "

For Availability Zones, this parameter always has the value of\n opt-in-not-required.

\n

For Local Zones and Wavelength Zones, this parameter is the opt-in status. The possible\n values are opted-in, and not-opted-in.

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

For Availability Zones, this parameter always has the value of\n opt-in-not-required.

\n

For Local Zones and Wavelength Zones, this parameter is the opt-in status. The possible\n values are opted-in and not-opted-in.

", "smithy.api#xmlName": "optInStatus" } }, @@ -8748,7 +9427,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "GroupName", - "smithy.api#documentation": "

For Availability Zones, this parameter has the same value as the Region name.

\n

For Local Zones, the name of the associated group, for example\n us-west-2-lax-1.

\n

For Wavelength Zones, the name of the associated group, for example\n us-east-1-wl1-bos-wlz-1.

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

The name of the zone group. For example:

\n ", "smithy.api#xmlName": "groupName" } }, @@ -8764,7 +9443,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "ZoneType", - "smithy.api#documentation": "

The type of zone. The valid values are availability-zone,\n local-zone, and wavelength-zone.

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

The type of zone.

\n

Valid values: availability-zone | local-zone |\n wavelength-zone\n

", "smithy.api#xmlName": "zoneType" } }, @@ -8783,6 +9462,22 @@ "smithy.api#documentation": "

The ID of the zone that handles some of the Local Zone or Wavelength Zone control plane\n operations, such as API calls.

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

The long name of the Availability Zone group, Local Zone group, or Wavelength Zone\n group.

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

The state of the Availability Zone, Local Zone, or Wavelength Zone. The possible values are\n available, unavailable, and constrained.

", + "smithy.api#xmlName": "zoneState" + } } }, "traits": { @@ -8929,6 +9624,38 @@ } } }, + "com.amazonaws.ec2#BandwidthWeightingType": { + "type": "enum", + "members": { + "DEFAULT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "default" + } + }, + "VPC_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "vpc-1" + } + }, + "EBS_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ebs-1" + } + } + } + }, + "com.amazonaws.ec2#BandwidthWeightingTypeList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#BandwidthWeightingType", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ec2#BareMetal": { "type": "enum", "members": { @@ -9008,6 +9735,36 @@ "com.amazonaws.ec2#BaselineIops": { "type": "integer" }, + "com.amazonaws.ec2#BaselinePerformanceFactors": { + "type": "structure", + "members": { + "Cpu": { + "target": "com.amazonaws.ec2#CpuPerformanceFactor", + "traits": { + "aws.protocols#ec2QueryName": "Cpu", + "smithy.api#documentation": "

The CPU performance to consider, using an instance family as the baseline reference.

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

The baseline performance to consider, using an instance family as a baseline reference.\n The instance family establishes the lowest acceptable level of performance. Amazon EC2 uses this\n baseline to guide instance type selection, but there is no guarantee that the selected\n instance types will always exceed the baseline for every application.

\n

Currently, this parameter only supports CPU performance as a baseline performance\n factor. For example, specifying c6i would use the CPU performance of the\n c6i family as the baseline reference.

" + } + }, + "com.amazonaws.ec2#BaselinePerformanceFactorsRequest": { + "type": "structure", + "members": { + "Cpu": { + "target": "com.amazonaws.ec2#CpuPerformanceFactorRequest", + "traits": { + "smithy.api#documentation": "

The CPU performance to consider, using an instance family as the baseline reference.

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

The baseline performance to consider, using an instance family as a baseline reference.\n The instance family establishes the lowest acceptable level of performance. Amazon EC2 uses this\n baseline to guide instance type selection, but there is no guarantee that the selected\n instance types will always exceed the baseline for every application.

\n

Currently, this parameter only supports CPU performance as a baseline performance\n factor. For example, specifying c6i would use the CPU performance of the\n c6i family as the baseline reference.

" + } + }, "com.amazonaws.ec2#BaselineThroughputInMBps": { "type": "double" }, @@ -9102,11 +9859,27 @@ "com.amazonaws.ec2#BlockDeviceMapping": { "type": "structure", "members": { + "Ebs": { + "target": "com.amazonaws.ec2#EbsBlockDevice", + "traits": { + "aws.protocols#ec2QueryName": "Ebs", + "smithy.api#documentation": "

Parameters used to automatically set up EBS volumes when the instance is\n launched.

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

To omit the device from the block device mapping, specify an empty string. When this\n property is specified, the device is removed from the block device mapping regardless of\n the assigned value.

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

The device name (for example, /dev/sdh or xvdh).

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

The device name. For available device names, see Device names for volumes.

", "smithy.api#xmlName": "deviceName" } }, @@ -9117,12 +9890,54 @@ "smithy.api#documentation": "

The virtual device name (ephemeralN). Instance store volumes are numbered\n starting from 0. An instance type with 2 available instance store volumes can specify\n mappings for ephemeral0 and ephemeral1. The number of\n available instance store volumes depends on the instance type. After you connect to the\n instance, you must mount the volume.

\n

NVMe instance store volumes are automatically enumerated and assigned a device name.\n Including them in your block device mapping has no effect.

\n

Constraints: For M3 instances, you must specify instance store volumes in the block\n device mapping for the instance. When you launch an M3 instance, we ignore any instance\n store volumes specified in the block device mapping for the AMI.

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

Describes a block device mapping, which defines the EBS volumes and instance store\n volumes to attach to an instance at launch.

" + } + }, + "com.amazonaws.ec2#BlockDeviceMappingList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#BlockDeviceMapping", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#BlockDeviceMappingRequestList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#BlockDeviceMapping", + "traits": { + "smithy.api#xmlName": "BlockDeviceMapping" + } + } + }, + "com.amazonaws.ec2#BlockDeviceMappingResponse": { + "type": "structure", + "members": { + "DeviceName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "DeviceName", + "smithy.api#documentation": "

The device name (for example, /dev/sdh or xvdh).

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

The virtual device name.

", + "smithy.api#xmlName": "virtualName" + } }, "Ebs": { - "target": "com.amazonaws.ec2#EbsBlockDevice", + "target": "com.amazonaws.ec2#EbsBlockDeviceResponse", "traits": { "aws.protocols#ec2QueryName": "Ebs", - "smithy.api#documentation": "

Parameters used to automatically set up EBS volumes when the instance is\n launched.

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

Parameters used to automatically set up EBS volumes when the instance is\n launched.

", "smithy.api#xmlName": "ebs" } }, @@ -9130,31 +9945,61 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NoDevice", - "smithy.api#documentation": "

To omit the device from the block device mapping, specify an empty string. When this\n property is specified, the device is removed from the block device mapping regardless of\n the assigned value.

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

Suppresses the specified device included in the block device mapping.

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

Describes a block device mapping, which defines the EBS volumes and instance store\n volumes to attach to an instance at launch.

" + "smithy.api#documentation": "

Describes a block device mapping, which defines the EBS volumes and instance store\n volumes to attach to an instance at launch.

" } }, - "com.amazonaws.ec2#BlockDeviceMappingList": { + "com.amazonaws.ec2#BlockDeviceMappingResponseList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#BlockDeviceMapping", + "target": "com.amazonaws.ec2#BlockDeviceMappingResponse", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#BlockDeviceMappingRequestList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#BlockDeviceMapping", - "traits": { - "smithy.api#xmlName": "BlockDeviceMapping" + "com.amazonaws.ec2#BlockPublicAccessMode": { + "type": "enum", + "members": { + "off": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "off" + } + }, + "block_bidirectional": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "block-bidirectional" + } + }, + "block_ingress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "block-ingress" + } + } + } + }, + "com.amazonaws.ec2#BlockPublicAccessStates": { + "type": "structure", + "members": { + "InternetGatewayBlockMode": { + "target": "com.amazonaws.ec2#BlockPublicAccessMode", + "traits": { + "aws.protocols#ec2QueryName": "InternetGatewayBlockMode", + "smithy.api#documentation": "

The mode of VPC BPA.

\n ", + "smithy.api#xmlName": "internetGatewayBlockMode" + } } + }, + "traits": { + "smithy.api#documentation": "

The state of VPC Block Public Access (BPA).

" } }, "com.amazonaws.ec2#Boolean": { @@ -9215,6 +10060,9 @@ "com.amazonaws.ec2#BoxedInteger": { "type": "integer" }, + "com.amazonaws.ec2#BoxedLong": { + "type": "long" + }, "com.amazonaws.ec2#BundleId": { "type": "string" }, @@ -9236,7 +10084,7 @@ "target": "com.amazonaws.ec2#BundleInstanceResult" }, "traits": { - "smithy.api#documentation": "

Bundles an Amazon instance store-backed Windows instance.

\n

During bundling, only the root device volume (C:\\) is bundled. Data on other instance store volumes is not preserved.

\n \n

This action is not applicable for Linux/Unix instances or Windows instances that are backed by Amazon EBS.

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

Bundles an Amazon instance store-backed Windows instance.

\n

During bundling, only the root device volume (C:\\) is bundled. Data on other instance\n store volumes is not preserved.

\n \n

This action is not applicable for Linux/Unix instances or Windows instances that are\n backed by Amazon EBS.

\n
" } }, "com.amazonaws.ec2#BundleInstanceRequest": { @@ -9254,7 +10102,7 @@ "target": "com.amazonaws.ec2#Storage", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The bucket in which to store the AMI. You can specify a bucket that you already own or a new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone else, Amazon EC2 returns an error.

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

The bucket in which to store the AMI. You can specify a bucket that you already own or a\n new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone\n else, Amazon EC2 returns an error.

", "smithy.api#required": {} } }, @@ -9292,22 +10140,6 @@ "com.amazonaws.ec2#BundleTask": { "type": "structure", "members": { - "BundleId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "BundleId", - "smithy.api#documentation": "

The ID of the bundle task.

", - "smithy.api#xmlName": "bundleId" - } - }, - "BundleTaskError": { - "target": "com.amazonaws.ec2#BundleTaskError", - "traits": { - "aws.protocols#ec2QueryName": "Error", - "smithy.api#documentation": "

If the task fails, a description of the error.

", - "smithy.api#xmlName": "error" - } - }, "InstanceId": { "target": "com.amazonaws.ec2#String", "traits": { @@ -9316,12 +10148,20 @@ "smithy.api#xmlName": "instanceId" } }, - "Progress": { + "BundleId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Progress", - "smithy.api#documentation": "

The level of task completion, as a percent (for example, 20%).

", - "smithy.api#xmlName": "progress" + "aws.protocols#ec2QueryName": "BundleId", + "smithy.api#documentation": "

The ID of the bundle task.

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

The state of the task.

", + "smithy.api#xmlName": "state" } }, "StartTime": { @@ -9332,12 +10172,12 @@ "smithy.api#xmlName": "startTime" } }, - "State": { - "target": "com.amazonaws.ec2#BundleTaskState", + "UpdateTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the task.

", - "smithy.api#xmlName": "state" + "aws.protocols#ec2QueryName": "UpdateTime", + "smithy.api#documentation": "

The time of the most recent update for the task.

", + "smithy.api#xmlName": "updateTime" } }, "Storage": { @@ -9348,12 +10188,20 @@ "smithy.api#xmlName": "storage" } }, - "UpdateTime": { - "target": "com.amazonaws.ec2#DateTime", + "Progress": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "UpdateTime", - "smithy.api#documentation": "

The time of the most recent update for the task.

", - "smithy.api#xmlName": "updateTime" + "aws.protocols#ec2QueryName": "Progress", + "smithy.api#documentation": "

The level of task completion, as a percent (for example, 20%).

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

If the task fails, a description of the error.

", + "smithy.api#xmlName": "error" } } }, @@ -9555,7 +10403,7 @@ "target": "com.amazonaws.ec2#ByoipCidrState", "traits": { "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the address pool.

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

The state of the address range.

\n ", "smithy.api#xmlName": "state" } }, @@ -9634,6 +10482,23 @@ } } }, + "com.amazonaws.ec2#CallerRole": { + "type": "enum", + "members": { + "odcr_owner": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "odcr-owner" + } + }, + "unused_reservation_billing_owner": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "unused-reservation-billing-owner" + } + } + } + }, "com.amazonaws.ec2#CancelBatchErrorCode": { "type": "enum", "members": { @@ -9726,7 +10591,7 @@ "target": "com.amazonaws.ec2#CancelCapacityReservationResult" }, "traits": { - "smithy.api#documentation": "

Cancels the specified Capacity Reservation, releases the reserved capacity, and changes the Capacity Reservation's state to\n\t\t\tcancelled.

\n

Instances running in the reserved capacity continue running until you stop them. Stopped\n\t\t\tinstances that target the Capacity Reservation can no longer launch. Modify these instances to either\n\t\t\ttarget a different Capacity Reservation, launch On-Demand Instance capacity, or run in any open Capacity Reservation\n\t\t\tthat has matching attributes and sufficient capacity.

" + "smithy.api#documentation": "

Cancels the specified Capacity Reservation, releases the reserved capacity, and\n\t\t\tchanges the Capacity Reservation's state to cancelled.

\n

You can cancel a Capacity Reservation that is in the following states:

\n \n \n

You can't modify or cancel a Capacity Block. For more information, see Capacity Blocks for ML.

\n
\n

If a future-dated Capacity Reservation enters the delayed state, the\n\t\t\tcommitment duration is waived, and you can cancel it as soon as it enters the\n\t\t\t\tactive state.

\n

Instances running in the reserved capacity continue running until you stop them.\n\t\t\tStopped instances that target the Capacity Reservation can no longer launch. Modify\n\t\t\tthese instances to either target a different Capacity Reservation, launch On-Demand\n\t\t\tInstance capacity, or run in any open Capacity Reservation that has matching attributes\n\t\t\tand sufficient capacity.

" } }, "com.amazonaws.ec2#CancelCapacityReservationFleetError": { @@ -9768,7 +10633,7 @@ "target": "com.amazonaws.ec2#CancelCapacityReservationFleetsResult" }, "traits": { - "smithy.api#documentation": "

Cancels one or more Capacity Reservation Fleets. When you cancel a Capacity Reservation \n\t\t\tFleet, the following happens:

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

Cancels one or more Capacity Reservation Fleets. When you cancel a Capacity\n\t\t\tReservation Fleet, the following happens:

\n " } }, "com.amazonaws.ec2#CancelCapacityReservationFleetsRequest": { @@ -9801,7 +10666,7 @@ "target": "com.amazonaws.ec2#CapacityReservationFleetCancellationStateSet", "traits": { "aws.protocols#ec2QueryName": "SuccessfulFleetCancellationSet", - "smithy.api#documentation": "

Information about the Capacity Reservation Fleets that were successfully cancelled.

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

Information about the Capacity Reservation Fleets that were successfully\n\t\t\tcancelled.

", "smithy.api#xmlName": "successfulFleetCancellationSet" } }, @@ -9859,6 +10724,14 @@ "com.amazonaws.ec2#CancelConversionRequest": { "type": "structure", "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

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

", + "smithy.api#xmlName": "dryRun" + } + }, "ConversionTaskId": { "target": "com.amazonaws.ec2#ConversionTaskId", "traits": { @@ -9869,14 +10742,6 @@ "smithy.api#xmlName": "conversionTaskId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

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

", - "smithy.api#xmlName": "dryRun" - } - }, "ReasonMessage": { "target": "com.amazonaws.ec2#String", "traits": { @@ -9899,7 +10764,57 @@ "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Cancels an active conversion task. The task can be the import of an instance or volume. The action removes all\n artifacts of the conversion, including a partially uploaded volume or instance. If the conversion is complete or is\n in the process of transferring the final disk image, the command fails and returns an exception.

\n

For more information, see Importing a Virtual Machine Using the Amazon\n EC2 CLI.

" + "smithy.api#documentation": "

Cancels an active conversion task. The task can be the import of an instance or volume. The action removes all\n artifacts of the conversion, including a partially uploaded volume or instance. If the conversion is complete or is\n in the process of transferring the final disk image, the command fails and returns an exception.

" + } + }, + "com.amazonaws.ec2#CancelDeclarativePoliciesReport": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CancelDeclarativePoliciesReportRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CancelDeclarativePoliciesReportResult" + }, + "traits": { + "smithy.api#documentation": "

Cancels the generation of an account status report.

\n

You can only cancel a report while it has the running status. Reports\n with other statuses (complete, cancelled, or\n error) can't be canceled.

\n

For more information, see Generating the account status report for declarative policies in the\n Amazon Web Services Organizations User Guide.

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

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

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

The ID of the report.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#CancelDeclarativePoliciesReportResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Is true if the request succeeds, and an error otherwise.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.ec2#CancelExportTask": { @@ -9941,7 +10856,7 @@ "target": "com.amazonaws.ec2#CancelImageLaunchPermissionResult" }, "traits": { - "smithy.api#documentation": "

Removes your Amazon Web Services account from the launch permissions for the specified AMI. For more\n information, see \n Cancel having an AMI shared with your Amazon Web Services account in the \n Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Removes your Amazon Web Services account from the launch permissions for the specified AMI.\n For more information, see Cancel having an AMI shared with\n your Amazon Web Services account in the Amazon EC2 User Guide.

" } }, "com.amazonaws.ec2#CancelImageLaunchPermissionRequest": { @@ -10061,7 +10976,7 @@ "target": "com.amazonaws.ec2#CancelReservedInstancesListingResult" }, "traits": { - "smithy.api#documentation": "

Cancels the specified Reserved Instance listing in the Reserved Instance Marketplace.

\n

For more information, see \n Reserved Instance Marketplace \n in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Cancels the specified Reserved Instance listing in the Reserved Instance\n Marketplace.

\n

For more information, see Sell in the Reserved Instance\n Marketplace in the Amazon EC2 User Guide.

" } }, "com.amazonaws.ec2#CancelReservedInstancesListingRequest": { @@ -10461,7 +11376,7 @@ "target": "com.amazonaws.ec2#AllocationType", "traits": { "aws.protocols#ec2QueryName": "AllocationType", - "smithy.api#documentation": "

The usage type. used indicates that the instance capacity is \n\t\t\tin use by instances that are running in the Capacity Reservation.

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

The usage type. used indicates that the instance capacity is in use by\n\t\t\tinstances that are running in the Capacity Reservation.

", "smithy.api#xmlName": "allocationType" } }, @@ -10469,7 +11384,7 @@ "target": "com.amazonaws.ec2#Integer", "traits": { "aws.protocols#ec2QueryName": "Count", - "smithy.api#documentation": "

The amount of instance capacity associated with the usage. For example a value of \n\t\t\t4 indicates that instance capacity for 4 instances is currently in use.

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

The amount of instance capacity associated with the usage. For example a value of\n\t\t\t\t4 indicates that instance capacity for 4 instances is currently in\n\t\t\tuse.

", "smithy.api#xmlName": "count" } } @@ -10487,46 +11402,54 @@ } } }, - "com.amazonaws.ec2#CapacityBlockOffering": { + "com.amazonaws.ec2#CapacityBlock": { "type": "structure", "members": { - "CapacityBlockOfferingId": { - "target": "com.amazonaws.ec2#OfferingId", + "CapacityBlockId": { + "target": "com.amazonaws.ec2#CapacityBlockId", "traits": { - "aws.protocols#ec2QueryName": "CapacityBlockOfferingId", - "smithy.api#documentation": "

The ID of the Capacity Block offering.

", - "smithy.api#xmlName": "capacityBlockOfferingId" + "aws.protocols#ec2QueryName": "CapacityBlockId", + "smithy.api#documentation": "

The ID of the Capacity Block.

", + "smithy.api#xmlName": "capacityBlockId" } }, - "InstanceType": { + "UltraserverType": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type of the Capacity Block offering.

", - "smithy.api#xmlName": "instanceType" + "aws.protocols#ec2QueryName": "UltraserverType", + "smithy.api#documentation": "

The EC2 UltraServer type of the Capacity Block.

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

The Availability Zone of the Capacity Block offering.

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

The Availability Zone of the Capacity Block.

", "smithy.api#xmlName": "availabilityZone" } }, - "InstanceCount": { - "target": "com.amazonaws.ec2#Integer", + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "InstanceCount", - "smithy.api#documentation": "

The number of instances in the Capacity Block offering.

", - "smithy.api#xmlName": "instanceCount" + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The Availability Zone ID of the Capacity Block.

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

The ID of the Capacity Reservation.

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

The start date of the Capacity Block offering.

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

The date and time at which the Capacity Block was started.

", "smithy.api#xmlName": "startDate" } }, @@ -10534,740 +11457,453 @@ "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { "aws.protocols#ec2QueryName": "EndDate", - "smithy.api#documentation": "

The end date of the Capacity Block offering.

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

The date and time at which the Capacity Block expires. When a Capacity Block expires,\n\t\t\tall instances in the Capacity Block are terminated.

", "smithy.api#xmlName": "endDate" } }, - "CapacityBlockDurationHours": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "CapacityBlockDurationHours", - "smithy.api#documentation": "

The amount of time of the Capacity Block reservation in hours.

", - "smithy.api#xmlName": "capacityBlockDurationHours" - } - }, - "UpfrontFee": { - "target": "com.amazonaws.ec2#String", + "CreateDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "UpfrontFee", - "smithy.api#documentation": "

The total price to be paid up front.

", - "smithy.api#xmlName": "upfrontFee" + "aws.protocols#ec2QueryName": "CreateDate", + "smithy.api#documentation": "

The date and time at which the Capacity Block was created.

", + "smithy.api#xmlName": "createDate" } }, - "CurrencyCode": { - "target": "com.amazonaws.ec2#String", + "State": { + "target": "com.amazonaws.ec2#CapacityBlockResourceState", "traits": { - "aws.protocols#ec2QueryName": "CurrencyCode", - "smithy.api#documentation": "

The currency of the payment for the Capacity Block.

", - "smithy.api#xmlName": "currencyCode" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the Capacity Block.

", + "smithy.api#xmlName": "state" } }, - "Tenancy": { - "target": "com.amazonaws.ec2#CapacityReservationTenancy", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "aws.protocols#ec2QueryName": "Tenancy", - "smithy.api#documentation": "

The tenancy of the Capacity Block.

", - "smithy.api#xmlName": "tenancy" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags assigned to the Capacity Block.

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

The recommended Capacity Block that fits your search requirements.

" - } - }, - "com.amazonaws.ec2#CapacityBlockOfferingSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#CapacityBlockOffering", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

Reserve powerful GPU instances on a future date to support your short duration machine learning (ML) workloads. Instances that run inside a Capacity Block are automatically placed close together inside Amazon EC2 UltraClusters, for low-latency, petabit-scale, non-blocking networking.

\n

You can also reserve Amazon EC2 UltraServers. UltraServers connect multiple EC2 instances using a low-latency, high-bandwidth accelerator interconnect (NeuronLink). They are built to tackle very large-scale AI/ML workloads that require significant processing power. For more information, see Amazon EC2 UltraServers.

" } }, - "com.amazonaws.ec2#CapacityReservation": { + "com.amazonaws.ec2#CapacityBlockExtension": { "type": "structure", "members": { "CapacityReservationId": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#CapacityReservationId", "traits": { "aws.protocols#ec2QueryName": "CapacityReservationId", - "smithy.api#documentation": "

The ID of the Capacity Reservation.

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

The reservation ID of the Capacity Block extension.

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

The ID of the Amazon Web Services account that owns the Capacity Reservation.

", - "smithy.api#xmlName": "ownerId" - } - }, - "CapacityReservationArn": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Capacity Reservation.

", - "smithy.api#xmlName": "capacityReservationArn" - } - }, - "AvailabilityZoneId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZoneId", - "smithy.api#documentation": "

The Availability Zone ID of the Capacity Reservation.

", - "smithy.api#xmlName": "availabilityZoneId" - } - }, "InstanceType": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The type of instance for which the Capacity Reservation reserves capacity.

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

The instance type of the Capacity Block extension.

", "smithy.api#xmlName": "instanceType" } }, - "InstancePlatform": { - "target": "com.amazonaws.ec2#CapacityReservationInstancePlatform", + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "InstancePlatform", - "smithy.api#documentation": "

The type of operating system for which the Capacity Reservation reserves capacity.

", - "smithy.api#xmlName": "instancePlatform" + "aws.protocols#ec2QueryName": "InstanceCount", + "smithy.api#documentation": "

The number of instances in the Capacity Block extension.

", + "smithy.api#xmlName": "instanceCount" } }, "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#AvailabilityZoneName", "traits": { "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone in which the capacity is reserved.

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

The Availability Zone of the Capacity Block extension.

", "smithy.api#xmlName": "availabilityZone" } }, - "Tenancy": { - "target": "com.amazonaws.ec2#CapacityReservationTenancy", + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#AvailabilityZoneId", "traits": { - "aws.protocols#ec2QueryName": "Tenancy", - "smithy.api#documentation": "

Indicates the tenancy of the Capacity Reservation. A Capacity Reservation can have one of the following tenancy settings:

\n ", - "smithy.api#xmlName": "tenancy" + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The Availability Zone ID of the Capacity Block extension.

", + "smithy.api#xmlName": "availabilityZoneId" } }, - "TotalInstanceCount": { - "target": "com.amazonaws.ec2#Integer", + "CapacityBlockExtensionOfferingId": { + "target": "com.amazonaws.ec2#OfferingId", "traits": { - "aws.protocols#ec2QueryName": "TotalInstanceCount", - "smithy.api#documentation": "

The total number of instances for which the Capacity Reservation reserves capacity.

", - "smithy.api#xmlName": "totalInstanceCount" + "aws.protocols#ec2QueryName": "CapacityBlockExtensionOfferingId", + "smithy.api#documentation": "

The ID of the Capacity Block extension offering.

", + "smithy.api#xmlName": "capacityBlockExtensionOfferingId" } }, - "AvailableInstanceCount": { + "CapacityBlockExtensionDurationHours": { "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "AvailableInstanceCount", - "smithy.api#documentation": "

The remaining capacity. Indicates the number of instances that can be launched in the Capacity Reservation.

", - "smithy.api#xmlName": "availableInstanceCount" + "aws.protocols#ec2QueryName": "CapacityBlockExtensionDurationHours", + "smithy.api#documentation": "

The duration of the Capacity Block extension in hours.

", + "smithy.api#xmlName": "capacityBlockExtensionDurationHours" } }, - "EbsOptimized": { - "target": "com.amazonaws.ec2#Boolean", + "CapacityBlockExtensionStatus": { + "target": "com.amazonaws.ec2#CapacityBlockExtensionStatus", "traits": { - "aws.protocols#ec2QueryName": "EbsOptimized", - "smithy.api#documentation": "

Indicates whether the Capacity Reservation supports EBS-optimized instances. This optimization provides\n\t\t\tdedicated throughput to Amazon EBS and an optimized configuration stack to provide\n\t\t\toptimal I/O performance. This optimization isn't available with all instance types.\n\t\t\tAdditional usage charges apply when using an EBS- optimized instance.

", - "smithy.api#xmlName": "ebsOptimized" + "aws.protocols#ec2QueryName": "CapacityBlockExtensionStatus", + "smithy.api#documentation": "

The status of the Capacity Block extension. A Capacity Block extension can have one of\n\t\t\tthe following statuses:

\n ", + "smithy.api#xmlName": "capacityBlockExtensionStatus" } }, - "EphemeralStorage": { - "target": "com.amazonaws.ec2#Boolean", + "CapacityBlockExtensionPurchaseDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "EphemeralStorage", - "smithy.api#documentation": "

\n Deprecated.\n

", - "smithy.api#xmlName": "ephemeralStorage" + "aws.protocols#ec2QueryName": "CapacityBlockExtensionPurchaseDate", + "smithy.api#documentation": "

The date when the Capacity Block extension was purchased.

", + "smithy.api#xmlName": "capacityBlockExtensionPurchaseDate" } }, - "State": { - "target": "com.amazonaws.ec2#CapacityReservationState", + "CapacityBlockExtensionStartDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The current state of the Capacity Reservation. A Capacity Reservation can be in one of the following states:

\n ", - "smithy.api#xmlName": "state" + "aws.protocols#ec2QueryName": "CapacityBlockExtensionStartDate", + "smithy.api#documentation": "

The start date of the Capacity Block extension.

", + "smithy.api#xmlName": "capacityBlockExtensionStartDate" } }, - "StartDate": { + "CapacityBlockExtensionEndDate": { "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "StartDate", - "smithy.api#documentation": "

The date and time at which the Capacity Reservation was started.

", - "smithy.api#xmlName": "startDate" + "aws.protocols#ec2QueryName": "CapacityBlockExtensionEndDate", + "smithy.api#documentation": "

The end date of the Capacity Block extension.

", + "smithy.api#xmlName": "capacityBlockExtensionEndDate" } }, - "EndDate": { - "target": "com.amazonaws.ec2#DateTime", + "UpfrontFee": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "EndDate", - "smithy.api#documentation": "

The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity\n\t\t\tis released and you can no longer launch instances into it. The Capacity Reservation's state changes to\n\t\t\t\texpired when it reaches its end date and time.

", - "smithy.api#xmlName": "endDate" + "aws.protocols#ec2QueryName": "UpfrontFee", + "smithy.api#documentation": "

The total price to be paid up front.

", + "smithy.api#xmlName": "upfrontFee" } }, - "EndDateType": { - "target": "com.amazonaws.ec2#EndDateType", + "CurrencyCode": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "EndDateType", - "smithy.api#documentation": "

Indicates the way in which the Capacity Reservation ends. A Capacity Reservation can have one of the following end\n\t\t\ttypes:

\n ", - "smithy.api#xmlName": "endDateType" + "aws.protocols#ec2QueryName": "CurrencyCode", + "smithy.api#documentation": "

The currency of the payment for the Capacity Block extension.

", + "smithy.api#xmlName": "currencyCode" } - }, - "InstanceMatchCriteria": { - "target": "com.amazonaws.ec2#InstanceMatchCriteria", + } + }, + "traits": { + "smithy.api#documentation": "

Describes a Capacity Block extension. With an extension, you can extend the duration\n\t\t\tof time for an existing Capacity Block.

" + } + }, + "com.amazonaws.ec2#CapacityBlockExtensionOffering": { + "type": "structure", + "members": { + "CapacityBlockExtensionOfferingId": { + "target": "com.amazonaws.ec2#OfferingId", "traits": { - "aws.protocols#ec2QueryName": "InstanceMatchCriteria", - "smithy.api#documentation": "

Indicates the type of instance launches that the Capacity Reservation accepts. The options\n\t\t\tinclude:

\n ", - "smithy.api#xmlName": "instanceMatchCriteria" + "aws.protocols#ec2QueryName": "CapacityBlockExtensionOfferingId", + "smithy.api#documentation": "

The ID of the Capacity Block extension offering.

", + "smithy.api#xmlName": "capacityBlockExtensionOfferingId" } }, - "CreateDate": { - "target": "com.amazonaws.ec2#DateTime", + "InstanceType": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "CreateDate", - "smithy.api#documentation": "

The date and time at which the Capacity Reservation was created.

", - "smithy.api#xmlName": "createDate" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type of the Capacity Block that will be extended.

", + "smithy.api#xmlName": "instanceType" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the Capacity Reservation.

", - "smithy.api#xmlName": "tagSet" + "aws.protocols#ec2QueryName": "InstanceCount", + "smithy.api#documentation": "

The number of instances in the Capacity Block extension offering.

", + "smithy.api#xmlName": "instanceCount" } }, - "OutpostArn": { - "target": "com.amazonaws.ec2#OutpostArn", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#AvailabilityZoneName", "traits": { - "aws.protocols#ec2QueryName": "OutpostArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost on which the Capacity \n\t \t\tReservation was created.

", - "smithy.api#xmlName": "outpostArn" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone of the Capacity Block that will be extended.

", + "smithy.api#xmlName": "availabilityZone" } }, - "CapacityReservationFleetId": { - "target": "com.amazonaws.ec2#String", + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#AvailabilityZoneId", "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationFleetId", - "smithy.api#documentation": "

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

", - "smithy.api#xmlName": "capacityReservationFleetId" + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The Availability Zone ID of the Capacity Block that will be extended.

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

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

", - "smithy.api#xmlName": "placementGroupArn" + "aws.protocols#ec2QueryName": "StartDate", + "smithy.api#documentation": "

The start date of the Capacity Block that will be extended.

", + "smithy.api#xmlName": "startDate" } }, - "CapacityAllocations": { - "target": "com.amazonaws.ec2#CapacityAllocations", + "CapacityBlockExtensionStartDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "CapacityAllocationSet", - "smithy.api#documentation": "

Information about instance capacity usage.

", - "smithy.api#xmlName": "capacityAllocationSet" + "aws.protocols#ec2QueryName": "CapacityBlockExtensionStartDate", + "smithy.api#documentation": "

The date and time at which the Capacity Block extension will start. This date is also\n\t\t\tthe same as the end date of the Capacity Block that will be extended.

", + "smithy.api#xmlName": "capacityBlockExtensionStartDate" } }, - "ReservationType": { - "target": "com.amazonaws.ec2#CapacityReservationType", + "CapacityBlockExtensionEndDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "ReservationType", - "smithy.api#documentation": "

The type of Capacity Reservation.

", - "smithy.api#xmlName": "reservationType" + "aws.protocols#ec2QueryName": "CapacityBlockExtensionEndDate", + "smithy.api#documentation": "

The date and time at which the Capacity Block extension expires. When a Capacity Block\n\t\t\texpires, the reserved capacity is released and you can no longer launch instances into\n\t\t\tit. The Capacity Block's state changes to expired when it reaches its end\n\t\t\tdate

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

Describes a Capacity Reservation.

" - } - }, - "com.amazonaws.ec2#CapacityReservationFleet": { - "type": "structure", - "members": { - "CapacityReservationFleetId": { - "target": "com.amazonaws.ec2#CapacityReservationFleetId", + }, + "CapacityBlockExtensionDurationHours": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationFleetId", - "smithy.api#documentation": "

The ID of the Capacity Reservation Fleet.

", - "smithy.api#xmlName": "capacityReservationFleetId" + "aws.protocols#ec2QueryName": "CapacityBlockExtensionDurationHours", + "smithy.api#documentation": "

The amount of time of the Capacity Block extension offering in hours.

", + "smithy.api#xmlName": "capacityBlockExtensionDurationHours" } }, - "CapacityReservationFleetArn": { + "UpfrontFee": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationFleetArn", - "smithy.api#documentation": "

The ARN of the Capacity Reservation Fleet.

", - "smithy.api#xmlName": "capacityReservationFleetArn" + "aws.protocols#ec2QueryName": "UpfrontFee", + "smithy.api#documentation": "

The total price of the Capacity Block extension offering, to be paid up front.

", + "smithy.api#xmlName": "upfrontFee" } }, - "State": { - "target": "com.amazonaws.ec2#CapacityReservationFleetState", + "CurrencyCode": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the Capacity Reservation Fleet. Possible states include:

\n ", - "smithy.api#xmlName": "state" + "aws.protocols#ec2QueryName": "CurrencyCode", + "smithy.api#documentation": "

The currency of the payment for the Capacity Block extension offering.

", + "smithy.api#xmlName": "currencyCode" } }, - "TotalTargetCapacity": { - "target": "com.amazonaws.ec2#Integer", + "Tenancy": { + "target": "com.amazonaws.ec2#CapacityReservationTenancy", "traits": { - "aws.protocols#ec2QueryName": "TotalTargetCapacity", - "smithy.api#documentation": "

The total number of capacity units for which the Capacity Reservation Fleet reserves capacity. \n\t\t\tFor more information, see Total target capacity \n\t\t\tin the Amazon EC2 User Guide.

", - "smithy.api#xmlName": "totalTargetCapacity" - } - }, - "TotalFulfilledCapacity": { - "target": "com.amazonaws.ec2#Double", - "traits": { - "aws.protocols#ec2QueryName": "TotalFulfilledCapacity", - "smithy.api#documentation": "

The capacity units that have been fulfilled.

", - "smithy.api#xmlName": "totalFulfilledCapacity" - } - }, - "Tenancy": { - "target": "com.amazonaws.ec2#FleetCapacityReservationTenancy", - "traits": { - "aws.protocols#ec2QueryName": "Tenancy", - "smithy.api#documentation": "

The tenancy of the Capacity Reservation Fleet. Tenancies include:

\n ", - "smithy.api#xmlName": "tenancy" - } - }, - "EndDate": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "aws.protocols#ec2QueryName": "EndDate", - "smithy.api#documentation": "

The date and time at which the Capacity Reservation Fleet expires.

", - "smithy.api#xmlName": "endDate" - } - }, - "CreateTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "aws.protocols#ec2QueryName": "CreateTime", - "smithy.api#documentation": "

The date and time at which the Capacity Reservation Fleet was created.

", - "smithy.api#xmlName": "createTime" - } - }, - "InstanceMatchCriteria": { - "target": "com.amazonaws.ec2#FleetInstanceMatchCriteria", - "traits": { - "aws.protocols#ec2QueryName": "InstanceMatchCriteria", - "smithy.api#documentation": "

Indicates the type of instance launches that the Capacity Reservation Fleet accepts. All \n\t\t\tCapacity Reservations in the Fleet inherit this instance matching criteria.

\n

Currently, Capacity Reservation Fleets support open instance matching criteria \n\t\t\tonly. This means that instances that have matching attributes (instance type, platform, and \n\t\t\tAvailability Zone) run in the Capacity Reservations automatically. Instances do not need to \n\t\t\texplicitly target a Capacity Reservation Fleet to use its reserved capacity.

", - "smithy.api#xmlName": "instanceMatchCriteria" - } - }, - "AllocationStrategy": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "AllocationStrategy", - "smithy.api#documentation": "

The strategy used by the Capacity Reservation Fleet to determine which of the specified \n\t\t\tinstance types to use. For more information, see For more information, see \n\t\t\t\n\t\t\t\tAllocation strategy in the Amazon EC2 User Guide.

", - "smithy.api#xmlName": "allocationStrategy" - } - }, - "InstanceTypeSpecifications": { - "target": "com.amazonaws.ec2#FleetCapacityReservationSet", - "traits": { - "aws.protocols#ec2QueryName": "InstanceTypeSpecificationSet", - "smithy.api#documentation": "

Information about the instance types for which to reserve the capacity.

", - "smithy.api#xmlName": "instanceTypeSpecificationSet" - } - }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", - "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags assigned to the Capacity Reservation Fleet.

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

Information about a Capacity Reservation Fleet.

" - } - }, - "com.amazonaws.ec2#CapacityReservationFleetCancellationState": { - "type": "structure", - "members": { - "CurrentFleetState": { - "target": "com.amazonaws.ec2#CapacityReservationFleetState", - "traits": { - "aws.protocols#ec2QueryName": "CurrentFleetState", - "smithy.api#documentation": "

The current state of the Capacity Reservation Fleet.

", - "smithy.api#xmlName": "currentFleetState" - } - }, - "PreviousFleetState": { - "target": "com.amazonaws.ec2#CapacityReservationFleetState", - "traits": { - "aws.protocols#ec2QueryName": "PreviousFleetState", - "smithy.api#documentation": "

The previous state of the Capacity Reservation Fleet.

", - "smithy.api#xmlName": "previousFleetState" - } - }, - "CapacityReservationFleetId": { - "target": "com.amazonaws.ec2#CapacityReservationFleetId", - "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationFleetId", - "smithy.api#documentation": "

The ID of the Capacity Reservation Fleet that was successfully cancelled.

", - "smithy.api#xmlName": "capacityReservationFleetId" + "aws.protocols#ec2QueryName": "Tenancy", + "smithy.api#documentation": "

Indicates the tenancy of the Capacity Block extension offering. A Capacity Block can\n\t\t\thave one of the following tenancy settings:

\n ", + "smithy.api#xmlName": "tenancy" } } }, "traits": { - "smithy.api#documentation": "

Describes a Capacity Reservation Fleet that was successfully cancelled.

" - } - }, - "com.amazonaws.ec2#CapacityReservationFleetCancellationStateSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#CapacityReservationFleetCancellationState", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

The recommended Capacity Block extension that fits your search requirements.

" } }, - "com.amazonaws.ec2#CapacityReservationFleetId": { - "type": "string" - }, - "com.amazonaws.ec2#CapacityReservationFleetIdSet": { + "com.amazonaws.ec2#CapacityBlockExtensionOfferingSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#CapacityReservationFleetId", + "target": "com.amazonaws.ec2#CapacityBlockExtensionOffering", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#CapacityReservationFleetSet": { + "com.amazonaws.ec2#CapacityBlockExtensionSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#CapacityReservationFleet", + "target": "com.amazonaws.ec2#CapacityBlockExtension", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#CapacityReservationFleetState": { + "com.amazonaws.ec2#CapacityBlockExtensionStatus": { "type": "enum", "members": { - "SUBMITTED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "submitted" - } - }, - "MODIFYING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "modifying" - } - }, - "ACTIVE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "active" - } - }, - "PARTIALLY_FULFILLED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "partially_fulfilled" - } - }, - "EXPIRING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "expiring" - } - }, - "EXPIRED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "expired" - } - }, - "CANCELLING": { + "PAYMENT_PENDING": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "cancelling" + "smithy.api#enumValue": "payment-pending" } }, - "CANCELLED": { + "PAYMENT_FAILED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "cancelled" + "smithy.api#enumValue": "payment-failed" } }, - "FAILED": { + "PAYMENT_SUCCEEDED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "failed" - } - } - } - }, - "com.amazonaws.ec2#CapacityReservationGroup": { - "type": "structure", - "members": { - "GroupArn": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "GroupArn", - "smithy.api#documentation": "

The ARN of the resource group.

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

The ID of the Amazon Web Services account that owns the resource group.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "payment-succeeded" } } - }, - "traits": { - "smithy.api#documentation": "

Describes a resource group to which a Capacity Reservation has been added.

" - } - }, - "com.amazonaws.ec2#CapacityReservationGroupSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#CapacityReservationGroup", - "traits": { - "smithy.api#xmlName": "item" - } } }, - "com.amazonaws.ec2#CapacityReservationId": { + "com.amazonaws.ec2#CapacityBlockId": { "type": "string" }, - "com.amazonaws.ec2#CapacityReservationIdSet": { + "com.amazonaws.ec2#CapacityBlockIds": { "type": "list", "member": { - "target": "com.amazonaws.ec2#CapacityReservationId", + "target": "com.amazonaws.ec2#CapacityBlockId", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#CapacityReservationInstancePlatform": { + "com.amazonaws.ec2#CapacityBlockInterconnectStatus": { "type": "enum", "members": { - "LINUX_UNIX": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Linux/UNIX" - } - }, - "RED_HAT_ENTERPRISE_LINUX": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Red Hat Enterprise Linux" - } - }, - "SUSE_LINUX": { + "ok": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "SUSE Linux" + "smithy.api#enumValue": "ok" } }, - "WINDOWS": { + "impaired": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "Windows" + "smithy.api#enumValue": "impaired" } }, - "WINDOWS_WITH_SQL_SERVER": { + "insufficient_data": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "Windows with SQL Server" + "smithy.api#enumValue": "insufficient-data" } - }, - "WINDOWS_WITH_SQL_SERVER_ENTERPRISE": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#CapacityBlockOffering": { + "type": "structure", + "members": { + "CapacityBlockOfferingId": { + "target": "com.amazonaws.ec2#OfferingId", "traits": { - "smithy.api#enumValue": "Windows with SQL Server Enterprise" + "aws.protocols#ec2QueryName": "CapacityBlockOfferingId", + "smithy.api#documentation": "

The ID of the Capacity Block offering.

", + "smithy.api#xmlName": "capacityBlockOfferingId" } }, - "WINDOWS_WITH_SQL_SERVER_STANDARD": { - "target": "smithy.api#Unit", + "InstanceType": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "Windows with SQL Server Standard" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type of the Capacity Block offering.

", + "smithy.api#xmlName": "instanceType" } }, - "WINDOWS_WITH_SQL_SERVER_WEB": { - "target": "smithy.api#Unit", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "Windows with SQL Server Web" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone of the Capacity Block offering.

", + "smithy.api#xmlName": "availabilityZone" } }, - "LINUX_WITH_SQL_SERVER_STANDARD": { - "target": "smithy.api#Unit", + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "Linux with SQL Server Standard" + "aws.protocols#ec2QueryName": "InstanceCount", + "smithy.api#documentation": "

The number of instances in the Capacity Block offering.

", + "smithy.api#xmlName": "instanceCount" } }, - "LINUX_WITH_SQL_SERVER_WEB": { - "target": "smithy.api#Unit", + "StartDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#enumValue": "Linux with SQL Server Web" + "aws.protocols#ec2QueryName": "StartDate", + "smithy.api#documentation": "

The start date of the Capacity Block offering.

", + "smithy.api#xmlName": "startDate" } }, - "LINUX_WITH_SQL_SERVER_ENTERPRISE": { - "target": "smithy.api#Unit", + "EndDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#enumValue": "Linux with SQL Server Enterprise" + "aws.protocols#ec2QueryName": "EndDate", + "smithy.api#documentation": "

The end date of the Capacity Block offering.

", + "smithy.api#xmlName": "endDate" } }, - "RHEL_WITH_SQL_SERVER_STANDARD": { - "target": "smithy.api#Unit", + "CapacityBlockDurationHours": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "RHEL with SQL Server Standard" + "aws.protocols#ec2QueryName": "CapacityBlockDurationHours", + "smithy.api#documentation": "

The number of hours (in addition to capacityBlockDurationMinutes) for the\n\t\t\tduration of the Capacity Block reservation. For example, if a Capacity Block starts at\n\t\t\t\t04:55 and ends at 11:30, the hours field would be 6.

", + "smithy.api#xmlName": "capacityBlockDurationHours" } }, - "RHEL_WITH_SQL_SERVER_ENTERPRISE": { - "target": "smithy.api#Unit", + "UpfrontFee": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "RHEL with SQL Server Enterprise" + "aws.protocols#ec2QueryName": "UpfrontFee", + "smithy.api#documentation": "

The total price to be paid up front.

", + "smithy.api#xmlName": "upfrontFee" } }, - "RHEL_WITH_SQL_SERVER_WEB": { - "target": "smithy.api#Unit", + "CurrencyCode": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "RHEL with SQL Server Web" + "aws.protocols#ec2QueryName": "CurrencyCode", + "smithy.api#documentation": "

The currency of the payment for the Capacity Block.

", + "smithy.api#xmlName": "currencyCode" } }, - "RHEL_WITH_HA": { - "target": "smithy.api#Unit", + "Tenancy": { + "target": "com.amazonaws.ec2#CapacityReservationTenancy", "traits": { - "smithy.api#enumValue": "RHEL with HA" + "aws.protocols#ec2QueryName": "Tenancy", + "smithy.api#documentation": "

The tenancy of the Capacity Block.

", + "smithy.api#xmlName": "tenancy" } }, - "RHEL_WITH_HA_AND_SQL_SERVER_STANDARD": { - "target": "smithy.api#Unit", + "UltraserverType": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "RHEL with HA and SQL Server Standard" + "aws.protocols#ec2QueryName": "UltraserverType", + "smithy.api#documentation": "

The EC2 UltraServer type of the Capacity Block offering.

", + "smithy.api#xmlName": "ultraserverType" } }, - "RHEL_WITH_HA_AND_SQL_SERVER_ENTERPRISE": { - "target": "smithy.api#Unit", + "UltraserverCount": { + "target": "com.amazonaws.ec2#BoxedInteger", "traits": { - "smithy.api#enumValue": "RHEL with HA and SQL Server Enterprise" + "aws.protocols#ec2QueryName": "UltraserverCount", + "smithy.api#documentation": "

The number of EC2 UltraServers in the offering.

", + "smithy.api#xmlName": "ultraserverCount" } }, - "UBUNTU_PRO_LINUX": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Ubuntu Pro" - } - } - } - }, - "com.amazonaws.ec2#CapacityReservationOptions": { - "type": "structure", - "members": { - "UsageStrategy": { - "target": "com.amazonaws.ec2#FleetCapacityReservationUsageStrategy", - "traits": { - "aws.protocols#ec2QueryName": "UsageStrategy", - "smithy.api#documentation": "

Indicates whether to use unused Capacity Reservations for fulfilling On-Demand capacity.

\n

If you specify use-capacity-reservations-first, the fleet uses unused\n Capacity Reservations to fulfill On-Demand capacity up to the target On-Demand capacity. If\n multiple instance pools have unused Capacity Reservations, the On-Demand allocation\n strategy (lowest-price or prioritized) is applied. If the number\n of unused Capacity Reservations is less than the On-Demand target capacity, the remaining\n On-Demand target capacity is launched according to the On-Demand allocation strategy\n (lowest-price or prioritized).

\n

If you do not specify a value, the fleet fulfils the On-Demand capacity according to the\n chosen On-Demand allocation strategy.

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

Describes the strategy for using unused Capacity Reservations for fulfilling On-Demand\n capacity.

\n \n

This strategy can only be used if the EC2 Fleet is of type\n instant.

\n
\n

For more information about Capacity Reservations, see On-Demand Capacity\n Reservations in the Amazon EC2 User Guide. For examples of using\n Capacity Reservations in an EC2 Fleet, see EC2 Fleet example\n configurations in the Amazon EC2 User Guide.

" - } - }, - "com.amazonaws.ec2#CapacityReservationOptionsRequest": { - "type": "structure", - "members": { - "UsageStrategy": { - "target": "com.amazonaws.ec2#FleetCapacityReservationUsageStrategy", + "CapacityBlockDurationMinutes": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

Indicates whether to use unused Capacity Reservations for fulfilling On-Demand capacity.

\n

If you specify use-capacity-reservations-first, the fleet uses unused\n Capacity Reservations to fulfill On-Demand capacity up to the target On-Demand capacity. If\n multiple instance pools have unused Capacity Reservations, the On-Demand allocation\n strategy (lowest-price or prioritized) is applied. If the number\n of unused Capacity Reservations is less than the On-Demand target capacity, the remaining\n On-Demand target capacity is launched according to the On-Demand allocation strategy\n (lowest-price or prioritized).

\n

If you do not specify a value, the fleet fulfils the On-Demand capacity according to the\n chosen On-Demand allocation strategy.

" + "aws.protocols#ec2QueryName": "CapacityBlockDurationMinutes", + "smithy.api#documentation": "

The number of minutes (in addition to capacityBlockDurationHours) for the\n\t\t\tduration of the Capacity Block reservation. For example, if a Capacity Block starts at\n\t\t\t\t08:55 and ends at 11:30, the minutes field would be 35.

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

Describes the strategy for using unused Capacity Reservations for fulfilling On-Demand\n capacity.

\n \n

This strategy can only be used if the EC2 Fleet is of type instant.

\n
\n

For more information about Capacity Reservations, see On-Demand Capacity\n Reservations in the Amazon EC2 User Guide. For examples of using\n Capacity Reservations in an EC2 Fleet, see EC2 Fleet example\n configurations in the Amazon EC2 User Guide.

" - } - }, - "com.amazonaws.ec2#CapacityReservationPreference": { - "type": "enum", - "members": { - "open": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "open" - } - }, - "none": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "none" - } - } + "smithy.api#documentation": "

The recommended Capacity Block that fits your search requirements.

" } }, - "com.amazonaws.ec2#CapacityReservationSet": { + "com.amazonaws.ec2#CapacityBlockOfferingSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#CapacityReservation", + "target": "com.amazonaws.ec2#CapacityBlockOffering", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#CapacityReservationSpecification": { - "type": "structure", - "members": { - "CapacityReservationPreference": { - "target": "com.amazonaws.ec2#CapacityReservationPreference", - "traits": { - "smithy.api#documentation": "

Indicates the instance's Capacity Reservation preferences. Possible preferences include:

\n " - } - }, - "CapacityReservationTarget": { - "target": "com.amazonaws.ec2#CapacityReservationTarget", - "traits": { - "smithy.api#documentation": "

Information about the target Capacity Reservation or Capacity Reservation group.

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

Describes an instance's Capacity Reservation targeting option. You can specify only one parameter \n\t\t\tat a time. If you specify CapacityReservationPreference and \n\t\t\tCapacityReservationTarget, the request fails.

\n

Use the CapacityReservationPreference parameter to configure the instance\n\t\t\tto run as an On-Demand Instance or to run in any open Capacity Reservation that has\n\t\t\tmatching attributes (instance type, platform, Availability Zone). Use the\n\t\t\tCapacityReservationTarget parameter to explicitly target a specific\n\t\t\t \tCapacity Reservation or a Capacity Reservation group.

" - } - }, - "com.amazonaws.ec2#CapacityReservationSpecificationResponse": { - "type": "structure", - "members": { - "CapacityReservationPreference": { - "target": "com.amazonaws.ec2#CapacityReservationPreference", - "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationPreference", - "smithy.api#documentation": "

Describes the instance's Capacity Reservation preferences. Possible preferences include:

\n ", - "smithy.api#xmlName": "capacityReservationPreference" - } - }, - "CapacityReservationTarget": { - "target": "com.amazonaws.ec2#CapacityReservationTargetResponse", - "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationTarget", - "smithy.api#documentation": "

Information about the targeted Capacity Reservation or Capacity Reservation group.

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

Describes the instance's Capacity Reservation targeting preferences. The action returns the\n capacityReservationPreference response element if the instance is\n configured to run in On-Demand capacity, or if it is configured in run in any\n open Capacity Reservation that has matching attributes (instance type, platform,\n Availability Zone). The action returns the capacityReservationTarget\n response element if the instance explicily targets a specific Capacity Reservation or Capacity Reservation group.

" - } - }, - "com.amazonaws.ec2#CapacityReservationState": { + "com.amazonaws.ec2#CapacityBlockResourceState": { "type": "enum", "members": { "active": { @@ -11282,16 +11918,16 @@ "smithy.api#enumValue": "expired" } }, - "cancelled": { + "unavailable": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "cancelled" + "smithy.api#enumValue": "unavailable" } }, - "pending": { + "cancelled": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "pending" + "smithy.api#enumValue": "cancelled" } }, "failed": { @@ -11320,894 +11956,1006 @@ } } }, - "com.amazonaws.ec2#CapacityReservationTarget": { + "com.amazonaws.ec2#CapacityBlockSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CapacityBlock", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#CapacityBlockStatus": { "type": "structure", "members": { - "CapacityReservationId": { - "target": "com.amazonaws.ec2#CapacityReservationId", + "CapacityBlockId": { + "target": "com.amazonaws.ec2#CapacityBlockId", "traits": { - "smithy.api#documentation": "

The ID of the Capacity Reservation in which to run the instance.

" + "aws.protocols#ec2QueryName": "CapacityBlockId", + "smithy.api#documentation": "

The ID of the Capacity Block.

", + "smithy.api#xmlName": "capacityBlockId" } }, - "CapacityReservationResourceGroupArn": { - "target": "com.amazonaws.ec2#String", + "InterconnectStatus": { + "target": "com.amazonaws.ec2#CapacityBlockInterconnectStatus", + "traits": { + "aws.protocols#ec2QueryName": "InterconnectStatus", + "smithy.api#documentation": "

The status of the high-bandwidth accelerator interconnect. Possible states include:

\n ", + "smithy.api#xmlName": "interconnectStatus" + } + }, + "TotalCapacity": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "TotalCapacity", + "smithy.api#documentation": "

The combined amount of Available and Unavailable capacity in the Capacity Block.

", + "smithy.api#xmlName": "totalCapacity" + } + }, + "TotalAvailableCapacity": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The ARN of the Capacity Reservation resource group in which to run the instance.

" + "aws.protocols#ec2QueryName": "TotalAvailableCapacity", + "smithy.api#documentation": "

The remaining capacity. Indicates the number of resources that can be launched into the Capacity Block.

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

The unavailable capacity. Indicates the instance capacity that is unavailable for use \n\t\t\tdue to a system status check failure.

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

The availability of capacity for the Capacity Block reservations.

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

Describes a target Capacity Reservation or Capacity Reservation group.

" + "smithy.api#documentation": "

Describes the availability of capacity for a Capacity Block.

" } }, - "com.amazonaws.ec2#CapacityReservationTargetResponse": { + "com.amazonaws.ec2#CapacityBlockStatusSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CapacityBlockStatus", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#CapacityReservation": { "type": "structure", "members": { "CapacityReservationId": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "CapacityReservationId", - "smithy.api#documentation": "

The ID of the targeted Capacity Reservation.

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

The ID of the Capacity Reservation.

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

The ARN of the targeted Capacity Reservation group.

", - "smithy.api#xmlName": "capacityReservationResourceGroupArn" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the Capacity Reservation.

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

Describes a target Capacity Reservation or Capacity Reservation group.

" - } - }, - "com.amazonaws.ec2#CapacityReservationTenancy": { - "type": "enum", - "members": { - "default": { - "target": "smithy.api#Unit", + }, + "CapacityReservationArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "default" + "aws.protocols#ec2QueryName": "CapacityReservationArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Capacity Reservation.

", + "smithy.api#xmlName": "capacityReservationArn" } }, - "dedicated": { - "target": "smithy.api#Unit", + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "dedicated" + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The Availability Zone ID of the Capacity Reservation.

", + "smithy.api#xmlName": "availabilityZoneId" } - } - } - }, - "com.amazonaws.ec2#CapacityReservationType": { - "type": "enum", - "members": { - "DEFAULT": { - "target": "smithy.api#Unit", + }, + "InstanceType": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "default" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The type of instance for which the Capacity Reservation reserves capacity.

", + "smithy.api#xmlName": "instanceType" } }, - "CAPACITY_BLOCK": { - "target": "smithy.api#Unit", + "InstancePlatform": { + "target": "com.amazonaws.ec2#CapacityReservationInstancePlatform", "traits": { - "smithy.api#enumValue": "capacity-block" + "aws.protocols#ec2QueryName": "InstancePlatform", + "smithy.api#documentation": "

The type of operating system for which the Capacity Reservation reserves\n\t\t\tcapacity.

", + "smithy.api#xmlName": "instancePlatform" } - } - } - }, - "com.amazonaws.ec2#CarrierGateway": { - "type": "structure", - "members": { - "CarrierGatewayId": { - "target": "com.amazonaws.ec2#CarrierGatewayId", + }, + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "CarrierGatewayId", - "smithy.api#documentation": "

The ID of the carrier gateway.

", - "smithy.api#xmlName": "carrierGatewayId" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone in which the capacity is reserved.

", + "smithy.api#xmlName": "availabilityZone" } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "Tenancy": { + "target": "com.amazonaws.ec2#CapacityReservationTenancy", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC associated with the carrier gateway.

", - "smithy.api#xmlName": "vpcId" + "aws.protocols#ec2QueryName": "Tenancy", + "smithy.api#documentation": "

Indicates the tenancy of the Capacity Reservation. A Capacity Reservation can have one\n\t\t\tof the following tenancy settings:

\n ", + "smithy.api#xmlName": "tenancy" + } + }, + "TotalInstanceCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "TotalInstanceCount", + "smithy.api#documentation": "

The total number of instances for which the Capacity Reservation reserves\n\t\t\tcapacity.

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

The remaining capacity. Indicates the number of instances that can be launched in the\n\t\t\tCapacity Reservation.

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

Indicates whether the Capacity Reservation supports EBS-optimized instances. This\n\t\t\toptimization provides dedicated throughput to Amazon EBS and an optimized configuration\n\t\t\tstack to provide optimal I/O performance. This optimization isn't available with all\n\t\t\tinstance types. Additional usage charges apply when using an EBS- optimized\n\t\t\tinstance.

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

\n Deprecated.\n

", + "smithy.api#xmlName": "ephemeralStorage" } }, "State": { - "target": "com.amazonaws.ec2#CarrierGatewayState", + "target": "com.amazonaws.ec2#CapacityReservationState", "traits": { "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the carrier gateway.

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

The current state of the Capacity Reservation. A Capacity Reservation can be in one of\n\t\t\tthe following states:

\n ", "smithy.api#xmlName": "state" } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "StartDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the carrier gateway.

", - "smithy.api#xmlName": "ownerId" + "aws.protocols#ec2QueryName": "StartDate", + "smithy.api#documentation": "

The date and time at which the Capacity Reservation was started.

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

The date and time at which the Capacity Reservation expires. When a Capacity\n\t\t\tReservation expires, the reserved capacity is released and you can no longer launch\n\t\t\tinstances into it. The Capacity Reservation's state changes to expired when\n\t\t\tit reaches its end date and time.

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

Indicates the way in which the Capacity Reservation ends. A Capacity Reservation can\n\t\t\thave one of the following end types:

\n ", + "smithy.api#xmlName": "endDateType" + } + }, + "InstanceMatchCriteria": { + "target": "com.amazonaws.ec2#InstanceMatchCriteria", + "traits": { + "aws.protocols#ec2QueryName": "InstanceMatchCriteria", + "smithy.api#documentation": "

Indicates the type of instance launches that the Capacity Reservation accepts. The\n\t\t\toptions include:

\n ", + "smithy.api#xmlName": "instanceMatchCriteria" + } + }, + "CreateDate": { + "target": "com.amazonaws.ec2#DateTime", + "traits": { + "aws.protocols#ec2QueryName": "CreateDate", + "smithy.api#documentation": "

The date and time at which the Capacity Reservation was created.

", + "smithy.api#xmlName": "createDate" } }, "Tags": { "target": "com.amazonaws.ec2#TagList", "traits": { "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags assigned to the carrier gateway.

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

Any tags assigned to the Capacity Reservation.

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

Describes a carrier gateway.

" - } - }, - "com.amazonaws.ec2#CarrierGatewayId": { - "type": "string" - }, - "com.amazonaws.ec2#CarrierGatewayIdSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#CarrierGatewayId" - } - }, - "com.amazonaws.ec2#CarrierGatewayMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#CarrierGatewaySet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#CarrierGateway", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#CarrierGatewayState": { - "type": "enum", - "members": { - "pending": { - "target": "smithy.api#Unit", + }, + "OutpostArn": { + "target": "com.amazonaws.ec2#OutpostArn", "traits": { - "smithy.api#enumValue": "pending" + "aws.protocols#ec2QueryName": "OutpostArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost on which the Capacity Reservation was\n\t\t\tcreated.

", + "smithy.api#xmlName": "outpostArn" } }, - "available": { - "target": "smithy.api#Unit", + "CapacityReservationFleetId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "available" + "aws.protocols#ec2QueryName": "CapacityReservationFleetId", + "smithy.api#documentation": "

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

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

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

", + "smithy.api#xmlName": "placementGroupArn" } }, - "deleted": { - "target": "smithy.api#Unit", + "CapacityAllocations": { + "target": "com.amazonaws.ec2#CapacityAllocations", "traits": { - "smithy.api#enumValue": "deleted" + "aws.protocols#ec2QueryName": "CapacityAllocationSet", + "smithy.api#documentation": "

Information about instance capacity usage.

", + "smithy.api#xmlName": "capacityAllocationSet" } - } - } - }, - "com.amazonaws.ec2#CertificateArn": { - "type": "string" - }, - "com.amazonaws.ec2#CertificateAuthentication": { - "type": "structure", - "members": { - "ClientRootCertificateChain": { - "target": "com.amazonaws.ec2#String", + }, + "ReservationType": { + "target": "com.amazonaws.ec2#CapacityReservationType", "traits": { - "aws.protocols#ec2QueryName": "ClientRootCertificateChain", - "smithy.api#documentation": "

The ARN of the client certificate.

", - "smithy.api#xmlName": "clientRootCertificateChain" + "aws.protocols#ec2QueryName": "ReservationType", + "smithy.api#documentation": "

The type of Capacity Reservation.

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

Information about the client certificate used for authentication.

" - } - }, - "com.amazonaws.ec2#CertificateAuthenticationRequest": { - "type": "structure", - "members": { - "ClientRootCertificateChainArn": { - "target": "com.amazonaws.ec2#String", + }, + "UnusedReservationBillingOwnerId": { + "target": "com.amazonaws.ec2#AccountID", "traits": { - "smithy.api#documentation": "

The ARN of the client certificate. The certificate must be signed by a certificate \n\t\t\tauthority (CA) and it must be provisioned in Certificate Manager (ACM).

" + "aws.protocols#ec2QueryName": "UnusedReservationBillingOwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account to which billing of the unused capacity of\n\t\t\tthe Capacity Reservation is assigned.

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

Information about your commitment for a future-dated Capacity Reservation.

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

The delivery method for a future-dated Capacity Reservation. incremental\n\t\t\tindicates that the requested capacity is delivered in addition to any running instances\n\t\t\tand reserved capacity that you have in your account at the requested date and\n\t\t\ttime.

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

The ID of the Capacity Block.

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

Information about the client certificate to be used for authentication.

" + "smithy.api#documentation": "

Describes a Capacity Reservation.

" } }, - "com.amazonaws.ec2#CertificateId": { - "type": "string" - }, - "com.amazonaws.ec2#CidrAuthorizationContext": { + "com.amazonaws.ec2#CapacityReservationBillingRequest": { "type": "structure", "members": { - "Message": { + "CapacityReservationId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The plain-text authorization message for the prefix and account.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "CapacityReservationId", + "smithy.api#documentation": "

The ID of the Capacity Reservation.

", + "smithy.api#xmlName": "capacityReservationId" } }, - "Signature": { + "RequestedBy": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The signed authorization message for the prefix and account.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "RequestedBy", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that initiated the request.

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

Provides authorization for Amazon to bring a specific IP address range to a specific\n Amazon Web Services account using bring your own IP addresses (BYOIP). For more information, see Configuring your BYOIP address range in the Amazon Elastic Compute Cloud User Guide.

" - } - }, - "com.amazonaws.ec2#CidrBlock": { - "type": "structure", - "members": { - "CidrBlock": { - "target": "com.amazonaws.ec2#String", + }, + "UnusedReservationBillingOwnerId": { + "target": "com.amazonaws.ec2#AccountID", "traits": { - "aws.protocols#ec2QueryName": "CidrBlock", - "smithy.api#documentation": "

The IPv4 CIDR block.

", - "smithy.api#xmlName": "cidrBlock" + "aws.protocols#ec2QueryName": "UnusedReservationBillingOwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account to which the request was sent.

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

Describes an IPv4 CIDR block.

" - } - }, - "com.amazonaws.ec2#CidrBlockSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#CidrBlock", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ClassicLinkDnsSupport": { - "type": "structure", - "members": { - "ClassicLinkDnsSupported": { - "target": "com.amazonaws.ec2#Boolean", + }, + "LastUpdateTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "ClassicLinkDnsSupported", - "smithy.api#documentation": "

Indicates whether ClassicLink DNS support is enabled for the VPC.

", - "smithy.api#xmlName": "classicLinkDnsSupported" + "aws.protocols#ec2QueryName": "LastUpdateTime", + "smithy.api#documentation": "

The date and time, in UTC time format, at which the request was initiated.

", + "smithy.api#xmlName": "lastUpdateTime" } }, - "VpcId": { + "Status": { + "target": "com.amazonaws.ec2#CapacityReservationBillingRequestStatus", + "traits": { + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The status of the request. For more information, see View billing assignment\n\t\t\t\trequests for a shared Amazon EC2 Capacity Reservation.

", + "smithy.api#xmlName": "status" + } + }, + "StatusMessage": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#xmlName": "vpcId" + "aws.protocols#ec2QueryName": "StatusMessage", + "smithy.api#documentation": "

Information about the status.

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

Information about the Capacity Reservation.

", + "smithy.api#xmlName": "capacityReservationInfo" } } }, "traits": { - "smithy.api#documentation": "\n

Deprecated.

\n
\n

Describes the ClassicLink DNS support status of a VPC.

" + "smithy.api#documentation": "

Information about a request to assign billing of the unused capacity of a Capacity\n\t\t\tReservation.

" } }, - "com.amazonaws.ec2#ClassicLinkDnsSupportList": { + "com.amazonaws.ec2#CapacityReservationBillingRequestSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#ClassicLinkDnsSupport", + "target": "com.amazonaws.ec2#CapacityReservationBillingRequest", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#ClassicLinkInstance": { - "type": "structure", + "com.amazonaws.ec2#CapacityReservationBillingRequestStatus": { + "type": "enum", "members": { - "Groups": { - "target": "com.amazonaws.ec2#GroupIdentifierList", + "pending": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "GroupSet", - "smithy.api#documentation": "

The security groups.

", - "smithy.api#xmlName": "groupSet" + "smithy.api#enumValue": "pending" } }, - "InstanceId": { - "target": "com.amazonaws.ec2#String", + "accepted": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#xmlName": "instanceId" + "smithy.api#enumValue": "accepted" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "rejected": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the instance.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "rejected" } }, - "VpcId": { - "target": "com.amazonaws.ec2#String", + "cancelled": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#xmlName": "vpcId" + "smithy.api#enumValue": "cancelled" } - } - }, - "traits": { - "smithy.api#documentation": "\n

Deprecated.

\n
\n

Describes a linked EC2-Classic instance.

" - } - }, - "com.amazonaws.ec2#ClassicLinkInstanceList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ClassicLinkInstance", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ClassicLoadBalancer": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.ec2#String", + }, + "revoked": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Name", - "smithy.api#documentation": "

The name of the load balancer.

", - "smithy.api#xmlName": "name" + "smithy.api#enumValue": "revoked" + } + }, + "expired": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "expired" } } - }, - "traits": { - "smithy.api#documentation": "

Describes a Classic Load Balancer.

" } }, - "com.amazonaws.ec2#ClassicLoadBalancers": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ClassicLoadBalancer", - "traits": { - "smithy.api#xmlName": "item" - } - }, + "com.amazonaws.ec2#CapacityReservationCommitmentDuration": { + "type": "long", "traits": { - "smithy.api#length": { + "smithy.api#range": { "min": 1, - "max": 5 - } - } - }, - "com.amazonaws.ec2#ClassicLoadBalancersConfig": { - "type": "structure", - "members": { - "ClassicLoadBalancers": { - "target": "com.amazonaws.ec2#ClassicLoadBalancers", - "traits": { - "aws.protocols#ec2QueryName": "ClassicLoadBalancers", - "smithy.api#documentation": "

One or more Classic Load Balancers.

", - "smithy.api#xmlName": "classicLoadBalancers" - } + "max": 200000000 } - }, - "traits": { - "smithy.api#documentation": "

Describes the Classic Load Balancers to attach to a Spot Fleet. Spot Fleet registers\n the running Spot Instances with these Classic Load Balancers.

" } }, - "com.amazonaws.ec2#ClientCertificateRevocationListStatus": { + "com.amazonaws.ec2#CapacityReservationCommitmentInfo": { "type": "structure", "members": { - "Code": { - "target": "com.amazonaws.ec2#ClientCertificateRevocationListStatusCode", + "CommittedInstanceCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The state of the client certificate revocation list.

", - "smithy.api#xmlName": "code" + "aws.protocols#ec2QueryName": "CommittedInstanceCount", + "smithy.api#documentation": "

The instance capacity that you committed to when you requested the future-dated\n\t\t\tCapacity Reservation.

", + "smithy.api#xmlName": "committedInstanceCount" } }, - "Message": { - "target": "com.amazonaws.ec2#String", + "CommitmentEndDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "Message", - "smithy.api#documentation": "

A message about the status of the client certificate revocation list, if applicable.

", - "smithy.api#xmlName": "message" + "aws.protocols#ec2QueryName": "CommitmentEndDate", + "smithy.api#documentation": "

The date and time at which the commitment duration expires, in the ISO8601 format in\n\t\t\tthe UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ). You can't decrease the\n\t\t\tinstance count or cancel the Capacity Reservation before this date and time.

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

Describes the state of a client certificate revocation list.

" + "smithy.api#documentation": "

Information about your commitment for a future-dated Capacity Reservation.

" } }, - "com.amazonaws.ec2#ClientCertificateRevocationListStatusCode": { + "com.amazonaws.ec2#CapacityReservationDeliveryPreference": { "type": "enum", "members": { - "pending": { + "FIXED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "pending" + "smithy.api#enumValue": "fixed" } }, - "active": { + "INCREMENTAL": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "active" + "smithy.api#enumValue": "incremental" } } } }, - "com.amazonaws.ec2#ClientConnectOptions": { + "com.amazonaws.ec2#CapacityReservationFleet": { "type": "structure", "members": { - "Enabled": { - "target": "com.amazonaws.ec2#Boolean", + "CapacityReservationFleetId": { + "target": "com.amazonaws.ec2#CapacityReservationFleetId", "traits": { - "smithy.api#documentation": "

Indicates whether client connect options are enabled. The default is false (not enabled).

" + "aws.protocols#ec2QueryName": "CapacityReservationFleetId", + "smithy.api#documentation": "

The ID of the Capacity Reservation Fleet.

", + "smithy.api#xmlName": "capacityReservationFleetId" } }, - "LambdaFunctionArn": { + "CapacityReservationFleetArn": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Lambda function used for connection authorization.

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

The options for managing connection authorization for new client connections.

" - } - }, - "com.amazonaws.ec2#ClientConnectResponseOptions": { - "type": "structure", - "members": { - "Enabled": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "Enabled", - "smithy.api#documentation": "

Indicates whether client connect options are enabled.

", - "smithy.api#xmlName": "enabled" + "aws.protocols#ec2QueryName": "CapacityReservationFleetArn", + "smithy.api#documentation": "

The ARN of the Capacity Reservation Fleet.

", + "smithy.api#xmlName": "capacityReservationFleetArn" } }, - "LambdaFunctionArn": { - "target": "com.amazonaws.ec2#String", + "State": { + "target": "com.amazonaws.ec2#CapacityReservationFleetState", "traits": { - "aws.protocols#ec2QueryName": "LambdaFunctionArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Lambda function used for connection authorization.

", - "smithy.api#xmlName": "lambdaFunctionArn" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the Capacity Reservation Fleet. Possible states include:

\n ", + "smithy.api#xmlName": "state" } }, - "Status": { - "target": "com.amazonaws.ec2#ClientVpnEndpointAttributeStatus", + "TotalTargetCapacity": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The status of any updates to the client connect options.

", - "smithy.api#xmlName": "status" + "aws.protocols#ec2QueryName": "TotalTargetCapacity", + "smithy.api#documentation": "

The total number of capacity units for which the Capacity Reservation Fleet reserves\n\t\t\tcapacity. For more information, see Total target\n\t\t\t\tcapacity in the Amazon EC2 User Guide.

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

The options for managing connection authorization for new client connections.

" - } - }, - "com.amazonaws.ec2#ClientData": { - "type": "structure", - "members": { - "Comment": { - "target": "com.amazonaws.ec2#String", + }, + "TotalFulfilledCapacity": { + "target": "com.amazonaws.ec2#Double", "traits": { - "smithy.api#documentation": "

A user-defined comment about the disk upload.

" + "aws.protocols#ec2QueryName": "TotalFulfilledCapacity", + "smithy.api#documentation": "

The capacity units that have been fulfilled.

", + "smithy.api#xmlName": "totalFulfilledCapacity" } }, - "UploadEnd": { - "target": "com.amazonaws.ec2#DateTime", + "Tenancy": { + "target": "com.amazonaws.ec2#FleetCapacityReservationTenancy", "traits": { - "smithy.api#documentation": "

The time that the disk upload ends.

" + "aws.protocols#ec2QueryName": "Tenancy", + "smithy.api#documentation": "

The tenancy of the Capacity Reservation Fleet. Tenancies include:

\n ", + "smithy.api#xmlName": "tenancy" } }, - "UploadSize": { - "target": "com.amazonaws.ec2#Double", + "EndDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#documentation": "

The size of the uploaded disk image, in GiB.

" + "aws.protocols#ec2QueryName": "EndDate", + "smithy.api#documentation": "

The date and time at which the Capacity Reservation Fleet expires.

", + "smithy.api#xmlName": "endDate" } }, - "UploadStart": { - "target": "com.amazonaws.ec2#DateTime", + "CreateTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#documentation": "

The time that the disk upload starts.

" + "aws.protocols#ec2QueryName": "CreateTime", + "smithy.api#documentation": "

The date and time at which the Capacity Reservation Fleet was created.

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

Describes the client-specific data.

" - } - }, - "com.amazonaws.ec2#ClientLoginBannerOptions": { - "type": "structure", - "members": { - "Enabled": { - "target": "com.amazonaws.ec2#Boolean", + }, + "InstanceMatchCriteria": { + "target": "com.amazonaws.ec2#FleetInstanceMatchCriteria", "traits": { - "smithy.api#documentation": "

Enable or disable a customizable text banner that will be displayed on\n\t\t\tAmazon Web Services provided clients when a VPN session is established.

\n

Valid values: true | false\n

\n

Default value: false\n

" + "aws.protocols#ec2QueryName": "InstanceMatchCriteria", + "smithy.api#documentation": "

Indicates the type of instance launches that the Capacity Reservation Fleet accepts.\n\t\t\tAll Capacity Reservations in the Fleet inherit this instance matching criteria.

\n

Currently, Capacity Reservation Fleets support open instance matching\n\t\t\tcriteria only. This means that instances that have matching attributes (instance type,\n\t\t\tplatform, and Availability Zone) run in the Capacity Reservations automatically.\n\t\t\tInstances do not need to explicitly target a Capacity Reservation Fleet to use its\n\t\t\treserved capacity.

", + "smithy.api#xmlName": "instanceMatchCriteria" } }, - "BannerText": { + "AllocationStrategy": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Customizable text that will be displayed in a banner on Amazon Web Services provided\n\t\t\tclients when a VPN session is established. UTF-8 encoded characters only. Maximum of\n\t\t\t1400 characters.

" + "aws.protocols#ec2QueryName": "AllocationStrategy", + "smithy.api#documentation": "

The strategy used by the Capacity Reservation Fleet to determine which of the\n\t\t\tspecified instance types to use. For more information, see For more information, see\n\t\t\t\tAllocation\n\t\t\t\tstrategy in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "allocationStrategy" + } + }, + "InstanceTypeSpecifications": { + "target": "com.amazonaws.ec2#FleetCapacityReservationSet", + "traits": { + "aws.protocols#ec2QueryName": "InstanceTypeSpecificationSet", + "smithy.api#documentation": "

Information about the instance types for which to reserve the capacity.

", + "smithy.api#xmlName": "instanceTypeSpecificationSet" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags assigned to the Capacity Reservation Fleet.

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

Options for enabling a customizable text banner that will be displayed on\n\t\t\tAmazon Web Services provided clients when a VPN session is established.

" + "smithy.api#documentation": "

Information about a Capacity Reservation Fleet.

" } }, - "com.amazonaws.ec2#ClientLoginBannerResponseOptions": { + "com.amazonaws.ec2#CapacityReservationFleetCancellationState": { "type": "structure", "members": { - "Enabled": { - "target": "com.amazonaws.ec2#Boolean", + "CurrentFleetState": { + "target": "com.amazonaws.ec2#CapacityReservationFleetState", "traits": { - "aws.protocols#ec2QueryName": "Enabled", - "smithy.api#documentation": "

Current state of text banner feature.

\n

Valid values: true | false\n

", - "smithy.api#xmlName": "enabled" + "aws.protocols#ec2QueryName": "CurrentFleetState", + "smithy.api#documentation": "

The current state of the Capacity Reservation Fleet.

", + "smithy.api#xmlName": "currentFleetState" } }, - "BannerText": { - "target": "com.amazonaws.ec2#String", + "PreviousFleetState": { + "target": "com.amazonaws.ec2#CapacityReservationFleetState", "traits": { - "aws.protocols#ec2QueryName": "BannerText", - "smithy.api#documentation": "

Customizable text that will be displayed in a banner on Amazon Web Services provided\n\t\t\tclients when a VPN session is established. UTF-8 encoded\n\t\t\tcharacters only. Maximum of 1400 characters.

", - "smithy.api#xmlName": "bannerText" + "aws.protocols#ec2QueryName": "PreviousFleetState", + "smithy.api#documentation": "

The previous state of the Capacity Reservation Fleet.

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

The ID of the Capacity Reservation Fleet that was successfully cancelled.

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

Current state of options for customizable text banner that will be displayed on\n\t\t\tAmazon Web Services provided clients when a VPN session is established.

" + "smithy.api#documentation": "

Describes a Capacity Reservation Fleet that was successfully cancelled.

" } }, - "com.amazonaws.ec2#ClientSecretType": { - "type": "string", - "traits": { - "smithy.api#sensitive": {} + "com.amazonaws.ec2#CapacityReservationFleetCancellationStateSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CapacityReservationFleetCancellationState", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#ClientVpnAuthentication": { - "type": "structure", + "com.amazonaws.ec2#CapacityReservationFleetId": { + "type": "string" + }, + "com.amazonaws.ec2#CapacityReservationFleetIdSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CapacityReservationFleetId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#CapacityReservationFleetSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CapacityReservationFleet", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#CapacityReservationFleetState": { + "type": "enum", "members": { - "Type": { - "target": "com.amazonaws.ec2#ClientVpnAuthenticationType", + "SUBMITTED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Type", - "smithy.api#documentation": "

The authentication type used.

", - "smithy.api#xmlName": "type" + "smithy.api#enumValue": "submitted" } }, - "ActiveDirectory": { - "target": "com.amazonaws.ec2#DirectoryServiceAuthentication", + "MODIFYING": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ActiveDirectory", - "smithy.api#documentation": "

Information about the Active Directory, if applicable.

", - "smithy.api#xmlName": "activeDirectory" + "smithy.api#enumValue": "modifying" } }, - "MutualAuthentication": { - "target": "com.amazonaws.ec2#CertificateAuthentication", + "ACTIVE": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "MutualAuthentication", - "smithy.api#documentation": "

Information about the authentication certificates, if applicable.

", - "smithy.api#xmlName": "mutualAuthentication" + "smithy.api#enumValue": "active" } }, - "FederatedAuthentication": { - "target": "com.amazonaws.ec2#FederatedAuthentication", + "PARTIALLY_FULFILLED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "FederatedAuthentication", - "smithy.api#documentation": "

Information about the IAM SAML identity provider, if applicable.

", - "smithy.api#xmlName": "federatedAuthentication" + "smithy.api#enumValue": "partially_fulfilled" + } + }, + "EXPIRING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "expiring" + } + }, + "EXPIRED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "expired" + } + }, + "CANCELLING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "cancelling" + } + }, + "CANCELLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "cancelled" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "failed" + } + } + } + }, + "com.amazonaws.ec2#CapacityReservationGroup": { + "type": "structure", + "members": { + "GroupArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "GroupArn", + "smithy.api#documentation": "

The ARN of the resource group.

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

The ID of the Amazon Web Services account that owns the resource group.

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

Describes the authentication methods used by a Client VPN endpoint. For more information, see Authentication \n\t\t\tin the Client VPN Administrator Guide.

" + "smithy.api#documentation": "

Describes a resource group to which a Capacity Reservation has been added.

" } }, - "com.amazonaws.ec2#ClientVpnAuthenticationList": { + "com.amazonaws.ec2#CapacityReservationGroupSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#ClientVpnAuthentication", + "target": "com.amazonaws.ec2#CapacityReservationGroup", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#ClientVpnAuthenticationRequest": { + "com.amazonaws.ec2#CapacityReservationId": { + "type": "string" + }, + "com.amazonaws.ec2#CapacityReservationIdSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CapacityReservationId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#CapacityReservationInfo": { "type": "structure", "members": { - "Type": { - "target": "com.amazonaws.ec2#ClientVpnAuthenticationType", + "InstanceType": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The type of client authentication to be used.

" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type for the Capacity Reservation.

", + "smithy.api#xmlName": "instanceType" } }, - "ActiveDirectory": { - "target": "com.amazonaws.ec2#DirectoryServiceAuthenticationRequest", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#AvailabilityZoneName", "traits": { - "smithy.api#documentation": "

Information about the Active Directory to be used, if applicable. You must provide this information if Type is directory-service-authentication.

" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone for the Capacity Reservation.

", + "smithy.api#xmlName": "availabilityZone" } }, - "MutualAuthentication": { - "target": "com.amazonaws.ec2#CertificateAuthenticationRequest", + "Tenancy": { + "target": "com.amazonaws.ec2#CapacityReservationTenancy", "traits": { - "smithy.api#documentation": "

Information about the authentication certificates to be used, if applicable. You must provide this information if Type is certificate-authentication.

" + "aws.protocols#ec2QueryName": "Tenancy", + "smithy.api#documentation": "

The tenancy of the Capacity Reservation.

", + "smithy.api#xmlName": "tenancy" } }, - "FederatedAuthentication": { - "target": "com.amazonaws.ec2#FederatedAuthenticationRequest", + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#AvailabilityZoneId", "traits": { - "smithy.api#documentation": "

Information about the IAM SAML identity provider to be used, if applicable. You must provide this information if Type is federated-authentication.

" + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone.

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

Describes the authentication method to be used by a Client VPN endpoint. For more information, see Authentication \n\t\t\tin the Client VPN Administrator Guide.

" - } - }, - "com.amazonaws.ec2#ClientVpnAuthenticationRequestList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ClientVpnAuthenticationRequest" + "smithy.api#documentation": "

Information about a Capacity Reservation.

" } }, - "com.amazonaws.ec2#ClientVpnAuthenticationType": { + "com.amazonaws.ec2#CapacityReservationInstancePlatform": { "type": "enum", "members": { - "certificate_authentication": { + "LINUX_UNIX": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "certificate-authentication" + "smithy.api#enumValue": "Linux/UNIX" } }, - "directory_service_authentication": { + "RED_HAT_ENTERPRISE_LINUX": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "directory-service-authentication" + "smithy.api#enumValue": "Red Hat Enterprise Linux" } }, - "federated_authentication": { + "SUSE_LINUX": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "federated-authentication" + "smithy.api#enumValue": "SUSE Linux" } - } - } - }, - "com.amazonaws.ec2#ClientVpnAuthorizationRuleStatus": { - "type": "structure", - "members": { - "Code": { - "target": "com.amazonaws.ec2#ClientVpnAuthorizationRuleStatusCode", + }, + "WINDOWS": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The state of the authorization rule.

", - "smithy.api#xmlName": "code" + "smithy.api#enumValue": "Windows" } }, - "Message": { - "target": "com.amazonaws.ec2#String", + "WINDOWS_WITH_SQL_SERVER": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Message", - "smithy.api#documentation": "

A message about the status of the authorization rule, if applicable.

", - "smithy.api#xmlName": "message" + "smithy.api#enumValue": "Windows with SQL Server" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the state of an authorization rule.

" - } - }, - "com.amazonaws.ec2#ClientVpnAuthorizationRuleStatusCode": { - "type": "enum", - "members": { - "authorizing": { + }, + "WINDOWS_WITH_SQL_SERVER_ENTERPRISE": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "authorizing" + "smithy.api#enumValue": "Windows with SQL Server Enterprise" } }, - "active": { + "WINDOWS_WITH_SQL_SERVER_STANDARD": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "active" + "smithy.api#enumValue": "Windows with SQL Server Standard" } }, - "failed": { + "WINDOWS_WITH_SQL_SERVER_WEB": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "failed" + "smithy.api#enumValue": "Windows with SQL Server Web" } }, - "revoking": { + "LINUX_WITH_SQL_SERVER_STANDARD": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "revoking" + "smithy.api#enumValue": "Linux with SQL Server Standard" } - } - } - }, - "com.amazonaws.ec2#ClientVpnConnection": { - "type": "structure", - "members": { - "ClientVpnEndpointId": { - "target": "com.amazonaws.ec2#String", + }, + "LINUX_WITH_SQL_SERVER_WEB": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ClientVpnEndpointId", - "smithy.api#documentation": "

The ID of the Client VPN endpoint to which the client is connected.

", - "smithy.api#xmlName": "clientVpnEndpointId" + "smithy.api#enumValue": "Linux with SQL Server Web" } }, - "Timestamp": { - "target": "com.amazonaws.ec2#String", + "LINUX_WITH_SQL_SERVER_ENTERPRISE": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Timestamp", - "smithy.api#documentation": "

The current date and time.

", - "smithy.api#xmlName": "timestamp" + "smithy.api#enumValue": "Linux with SQL Server Enterprise" } }, - "ConnectionId": { - "target": "com.amazonaws.ec2#String", + "RHEL_WITH_SQL_SERVER_STANDARD": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ConnectionId", - "smithy.api#documentation": "

The ID of the client connection.

", - "smithy.api#xmlName": "connectionId" + "smithy.api#enumValue": "RHEL with SQL Server Standard" } }, - "Username": { - "target": "com.amazonaws.ec2#String", + "RHEL_WITH_SQL_SERVER_ENTERPRISE": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Username", - "smithy.api#documentation": "

The username of the client who established the client connection. This information is only provided \n\t\t\tif Active Directory client authentication is used.

", - "smithy.api#xmlName": "username" + "smithy.api#enumValue": "RHEL with SQL Server Enterprise" } }, - "ConnectionEstablishedTime": { - "target": "com.amazonaws.ec2#String", + "RHEL_WITH_SQL_SERVER_WEB": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ConnectionEstablishedTime", - "smithy.api#documentation": "

The date and time the client connection was established.

", - "smithy.api#xmlName": "connectionEstablishedTime" + "smithy.api#enumValue": "RHEL with SQL Server Web" } }, - "IngressBytes": { - "target": "com.amazonaws.ec2#String", + "RHEL_WITH_HA": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IngressBytes", - "smithy.api#documentation": "

The number of bytes sent by the client.

", - "smithy.api#xmlName": "ingressBytes" + "smithy.api#enumValue": "RHEL with HA" } }, - "EgressBytes": { - "target": "com.amazonaws.ec2#String", + "RHEL_WITH_HA_AND_SQL_SERVER_STANDARD": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EgressBytes", - "smithy.api#documentation": "

The number of bytes received by the client.

", - "smithy.api#xmlName": "egressBytes" + "smithy.api#enumValue": "RHEL with HA and SQL Server Standard" } }, - "IngressPackets": { - "target": "com.amazonaws.ec2#String", + "RHEL_WITH_HA_AND_SQL_SERVER_ENTERPRISE": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IngressPackets", - "smithy.api#documentation": "

The number of packets sent by the client.

", - "smithy.api#xmlName": "ingressPackets" + "smithy.api#enumValue": "RHEL with HA and SQL Server Enterprise" } }, - "EgressPackets": { - "target": "com.amazonaws.ec2#String", + "UBUNTU_PRO_LINUX": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EgressPackets", - "smithy.api#documentation": "

The number of packets received by the client.

", - "smithy.api#xmlName": "egressPackets" + "smithy.api#enumValue": "Ubuntu Pro" } - }, - "ClientIp": { - "target": "com.amazonaws.ec2#String", + } + } + }, + "com.amazonaws.ec2#CapacityReservationOptions": { + "type": "structure", + "members": { + "UsageStrategy": { + "target": "com.amazonaws.ec2#FleetCapacityReservationUsageStrategy", "traits": { - "aws.protocols#ec2QueryName": "ClientIp", - "smithy.api#documentation": "

The IP address of the client.

", - "smithy.api#xmlName": "clientIp" + "aws.protocols#ec2QueryName": "UsageStrategy", + "smithy.api#documentation": "

Indicates whether to use unused Capacity Reservations for fulfilling On-Demand capacity.

\n

If you specify use-capacity-reservations-first, the fleet uses unused\n Capacity Reservations to fulfill On-Demand capacity up to the target On-Demand capacity. If\n multiple instance pools have unused Capacity Reservations, the On-Demand allocation\n strategy (lowest-price or prioritized) is applied. If the number\n of unused Capacity Reservations is less than the On-Demand target capacity, the remaining\n On-Demand target capacity is launched according to the On-Demand allocation strategy\n (lowest-price or prioritized).

\n

If you do not specify a value, the fleet fulfils the On-Demand capacity according to the\n chosen On-Demand allocation strategy.

", + "smithy.api#xmlName": "usageStrategy" } - }, - "CommonName": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the strategy for using unused Capacity Reservations for fulfilling On-Demand\n capacity.

\n \n

This strategy can only be used if the EC2 Fleet is of type\n instant.

\n
\n

For more information about Capacity Reservations, see On-Demand Capacity\n Reservations in the Amazon EC2 User Guide. For examples of using\n Capacity Reservations in an EC2 Fleet, see EC2 Fleet example\n configurations in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#CapacityReservationOptionsRequest": { + "type": "structure", + "members": { + "UsageStrategy": { + "target": "com.amazonaws.ec2#FleetCapacityReservationUsageStrategy", "traits": { - "aws.protocols#ec2QueryName": "CommonName", - "smithy.api#documentation": "

The common name associated with the client. This is either the name of the client certificate,\n\t\t\tor the Active Directory user name.

", - "smithy.api#xmlName": "commonName" + "smithy.api#documentation": "

Indicates whether to use unused Capacity Reservations for fulfilling On-Demand capacity.

\n

If you specify use-capacity-reservations-first, the fleet uses unused\n Capacity Reservations to fulfill On-Demand capacity up to the target On-Demand capacity. If\n multiple instance pools have unused Capacity Reservations, the On-Demand allocation\n strategy (lowest-price or prioritized) is applied. If the number\n of unused Capacity Reservations is less than the On-Demand target capacity, the remaining\n On-Demand target capacity is launched according to the On-Demand allocation strategy\n (lowest-price or prioritized).

\n

If you do not specify a value, the fleet fulfils the On-Demand capacity according to the\n chosen On-Demand allocation strategy.

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

Describes the strategy for using unused Capacity Reservations for fulfilling On-Demand\n capacity.

\n \n

This strategy can only be used if the EC2 Fleet is of type instant.

\n
\n

For more information about Capacity Reservations, see On-Demand Capacity\n Reservations in the Amazon EC2 User Guide. For examples of using\n Capacity Reservations in an EC2 Fleet, see EC2 Fleet example\n configurations in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#CapacityReservationPreference": { + "type": "enum", + "members": { + "capacity_reservations_only": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The current state of the client connection.

", - "smithy.api#xmlName": "status" + "smithy.api#enumValue": "capacity-reservations-only" } }, - "ConnectionEndTime": { - "target": "com.amazonaws.ec2#String", + "open": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ConnectionEndTime", - "smithy.api#documentation": "

The date and time the client connection was terminated.

", - "smithy.api#xmlName": "connectionEndTime" + "smithy.api#enumValue": "open" } }, - "PostureComplianceStatuses": { - "target": "com.amazonaws.ec2#ValueStringList", + "none": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PostureComplianceStatusSet", - "smithy.api#documentation": "

The statuses returned by the client connect handler for posture compliance, if applicable.

", - "smithy.api#xmlName": "postureComplianceStatusSet" + "smithy.api#enumValue": "none" } } - }, - "traits": { - "smithy.api#documentation": "

Describes a client connection.

" } }, - "com.amazonaws.ec2#ClientVpnConnectionSet": { + "com.amazonaws.ec2#CapacityReservationSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#ClientVpnConnection", + "target": "com.amazonaws.ec2#CapacityReservation", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#ClientVpnConnectionStatus": { + "com.amazonaws.ec2#CapacityReservationSpecification": { "type": "structure", "members": { - "Code": { - "target": "com.amazonaws.ec2#ClientVpnConnectionStatusCode", + "CapacityReservationPreference": { + "target": "com.amazonaws.ec2#CapacityReservationPreference", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The state of the client connection.

", - "smithy.api#xmlName": "code" + "smithy.api#documentation": "

Indicates the instance's Capacity Reservation preferences. Possible preferences\n\t\t\tinclude:

\n " } }, - "Message": { - "target": "com.amazonaws.ec2#String", + "CapacityReservationTarget": { + "target": "com.amazonaws.ec2#CapacityReservationTarget", "traits": { - "aws.protocols#ec2QueryName": "Message", - "smithy.api#documentation": "

A message about the status of the client connection, if applicable.

", - "smithy.api#xmlName": "message" + "smithy.api#documentation": "

Information about the target Capacity Reservation or Capacity Reservation\n\t\t\tgroup.

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

Describes the status of a client connection.

" + "smithy.api#documentation": "

Describes an instance's Capacity Reservation targeting option.

\n

Use the CapacityReservationPreference parameter to configure the instance\n\t\t\tto run as an On-Demand Instance, to run in any open Capacity Reservation\n\t\t\tthat has matching attributes, or to run only in a Capacity Reservation or Capacity\n\t\t\tReservation group. Use the CapacityReservationTarget parameter to\n\t\t\texplicitly target a specific Capacity Reservation or a Capacity Reservation\n\t\t\tgroup.

\n

You can only specify CapacityReservationPreference and\n\t\t\t\tCapacityReservationTarget if the\n\t\t\t\tCapacityReservationPreference is\n\t\t\t\tcapacity-reservations-only.

" } }, - "com.amazonaws.ec2#ClientVpnConnectionStatusCode": { + "com.amazonaws.ec2#CapacityReservationSpecificationResponse": { + "type": "structure", + "members": { + "CapacityReservationPreference": { + "target": "com.amazonaws.ec2#CapacityReservationPreference", + "traits": { + "aws.protocols#ec2QueryName": "CapacityReservationPreference", + "smithy.api#documentation": "

Describes the instance's Capacity Reservation preferences. Possible preferences include:

\n ", + "smithy.api#xmlName": "capacityReservationPreference" + } + }, + "CapacityReservationTarget": { + "target": "com.amazonaws.ec2#CapacityReservationTargetResponse", + "traits": { + "aws.protocols#ec2QueryName": "CapacityReservationTarget", + "smithy.api#documentation": "

Information about the targeted Capacity Reservation or Capacity Reservation group.

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

Describes the instance's Capacity Reservation targeting preferences. The action returns the\n capacityReservationPreference response element if the instance is\n configured to run in On-Demand capacity, or if it is configured in run in any\n open Capacity Reservation that has matching attributes (instance type, platform,\n Availability Zone). The action returns the capacityReservationTarget\n response element if the instance explicily targets a specific Capacity Reservation or Capacity Reservation group.

" + } + }, + "com.amazonaws.ec2#CapacityReservationState": { "type": "enum", "members": { "active": { @@ -12216,305 +12964,283 @@ "smithy.api#enumValue": "active" } }, - "failed_to_terminate": { + "expired": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "failed-to-terminate" + "smithy.api#enumValue": "expired" } }, - "terminating": { + "cancelled": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "terminating" + "smithy.api#enumValue": "cancelled" } }, - "terminated": { + "pending": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "terminated" - } - } - } - }, - "com.amazonaws.ec2#ClientVpnEndpoint": { - "type": "structure", - "members": { - "ClientVpnEndpointId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "ClientVpnEndpointId", - "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", - "smithy.api#xmlName": "clientVpnEndpointId" + "smithy.api#enumValue": "pending" } }, - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A brief description of the endpoint.

", - "smithy.api#xmlName": "description" - } - }, - "Status": { - "target": "com.amazonaws.ec2#ClientVpnEndpointStatus", + "failed": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The current state of the Client VPN endpoint.

", - "smithy.api#xmlName": "status" + "smithy.api#enumValue": "failed" } }, - "CreationTime": { - "target": "com.amazonaws.ec2#String", + "scheduled": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CreationTime", - "smithy.api#documentation": "

The date and time the Client VPN endpoint was created.

", - "smithy.api#xmlName": "creationTime" + "smithy.api#enumValue": "scheduled" } }, - "DeletionTime": { - "target": "com.amazonaws.ec2#String", + "payment_pending": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DeletionTime", - "smithy.api#documentation": "

The date and time the Client VPN endpoint was deleted, if applicable.

", - "smithy.api#xmlName": "deletionTime" + "smithy.api#enumValue": "payment-pending" } }, - "DnsName": { - "target": "com.amazonaws.ec2#String", + "payment_failed": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DnsName", - "smithy.api#documentation": "

The DNS name to be used by clients when connecting to the Client VPN endpoint.

", - "smithy.api#xmlName": "dnsName" + "smithy.api#enumValue": "payment-failed" } }, - "ClientCidrBlock": { - "target": "com.amazonaws.ec2#String", + "assessing": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ClientCidrBlock", - "smithy.api#documentation": "

The IPv4 address range, in CIDR notation, from which client IP addresses are assigned.

", - "smithy.api#xmlName": "clientCidrBlock" + "smithy.api#enumValue": "assessing" } }, - "DnsServers": { - "target": "com.amazonaws.ec2#ValueStringList", + "delayed": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DnsServer", - "smithy.api#documentation": "

Information about the DNS servers to be used for DNS resolution.

", - "smithy.api#xmlName": "dnsServer" + "smithy.api#enumValue": "delayed" } }, - "SplitTunnel": { - "target": "com.amazonaws.ec2#Boolean", + "unsupported": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SplitTunnel", - "smithy.api#documentation": "

Indicates whether split-tunnel is enabled in the Client VPN endpoint.

\n

For information about split-tunnel VPN endpoints, see Split-Tunnel Client VPN endpoint \n\t\t\tin the Client VPN Administrator Guide.

", - "smithy.api#xmlName": "splitTunnel" + "smithy.api#enumValue": "unsupported" } }, - "VpnProtocol": { - "target": "com.amazonaws.ec2#VpnProtocol", + "unavailable": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VpnProtocol", - "smithy.api#documentation": "

The protocol used by the VPN session.

", - "smithy.api#xmlName": "vpnProtocol" + "smithy.api#enumValue": "unavailable" } - }, - "TransportProtocol": { - "target": "com.amazonaws.ec2#TransportProtocol", + } + } + }, + "com.amazonaws.ec2#CapacityReservationStatus": { + "type": "structure", + "members": { + "CapacityReservationId": { + "target": "com.amazonaws.ec2#CapacityReservationId", "traits": { - "aws.protocols#ec2QueryName": "TransportProtocol", - "smithy.api#documentation": "

The transport protocol used by the Client VPN endpoint.

", - "smithy.api#xmlName": "transportProtocol" + "aws.protocols#ec2QueryName": "CapacityReservationId", + "smithy.api#documentation": "

The ID of the Capacity Reservation.

", + "smithy.api#xmlName": "capacityReservationId" } }, - "VpnPort": { + "TotalCapacity": { "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "VpnPort", - "smithy.api#documentation": "

The port number for the Client VPN endpoint.

", - "smithy.api#xmlName": "vpnPort" - } - }, - "AssociatedTargetNetworks": { - "target": "com.amazonaws.ec2#AssociatedTargetNetworkSet", - "traits": { - "aws.protocols#ec2QueryName": "AssociatedTargetNetwork", - "smithy.api#deprecated": { - "message": "This property is deprecated. To view the target networks associated with a Client VPN endpoint, call DescribeClientVpnTargetNetworks and inspect the clientVpnTargetNetworks response element." - }, - "smithy.api#documentation": "

Information about the associated target networks. A target network is a subnet in a VPC.

", - "smithy.api#xmlName": "associatedTargetNetwork" - } - }, - "ServerCertificateArn": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "ServerCertificateArn", - "smithy.api#documentation": "

The ARN of the server certificate.

", - "smithy.api#xmlName": "serverCertificateArn" - } - }, - "AuthenticationOptions": { - "target": "com.amazonaws.ec2#ClientVpnAuthenticationList", - "traits": { - "aws.protocols#ec2QueryName": "AuthenticationOptions", - "smithy.api#documentation": "

Information about the authentication method used by the Client VPN endpoint.

", - "smithy.api#xmlName": "authenticationOptions" - } - }, - "ConnectionLogOptions": { - "target": "com.amazonaws.ec2#ConnectionLogResponseOptions", - "traits": { - "aws.protocols#ec2QueryName": "ConnectionLogOptions", - "smithy.api#documentation": "

Information about the client connection logging options for the Client VPN endpoint.

", - "smithy.api#xmlName": "connectionLogOptions" + "aws.protocols#ec2QueryName": "TotalCapacity", + "smithy.api#documentation": "

The combined amount of Available and Unavailable capacity in the Capacity Reservation.

", + "smithy.api#xmlName": "totalCapacity" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "TotalAvailableCapacity": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the Client VPN endpoint.

", - "smithy.api#xmlName": "tagSet" + "aws.protocols#ec2QueryName": "TotalAvailableCapacity", + "smithy.api#documentation": "

The remaining capacity. Indicates the amount of resources that can be launched into the Capacity Reservation.

", + "smithy.api#xmlName": "totalAvailableCapacity" } }, - "SecurityGroupIds": { - "target": "com.amazonaws.ec2#ClientVpnSecurityGroupIdSet", + "TotalUnavailableCapacity": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "SecurityGroupIdSet", - "smithy.api#documentation": "

The IDs of the security groups for the target network.

", - "smithy.api#xmlName": "securityGroupIdSet" + "aws.protocols#ec2QueryName": "TotalUnavailableCapacity", + "smithy.api#documentation": "

The used capacity. Indicates that the capacity is in use by resources that are running in the Capacity Reservation.

", + "smithy.api#xmlName": "totalUnavailableCapacity" } - }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the availability of capacity for a Capacity Reservation.

" + } + }, + "com.amazonaws.ec2#CapacityReservationStatusSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CapacityReservationStatus", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#CapacityReservationTarget": { + "type": "structure", + "members": { + "CapacityReservationId": { + "target": "com.amazonaws.ec2#CapacityReservationId", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#xmlName": "vpcId" + "smithy.api#documentation": "

The ID of the Capacity Reservation in which to run the instance.

" } }, - "SelfServicePortalUrl": { + "CapacityReservationResourceGroupArn": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SelfServicePortalUrl", - "smithy.api#documentation": "

The URL of the self-service portal.

", - "smithy.api#xmlName": "selfServicePortalUrl" - } - }, - "ClientConnectOptions": { - "target": "com.amazonaws.ec2#ClientConnectResponseOptions", - "traits": { - "aws.protocols#ec2QueryName": "ClientConnectOptions", - "smithy.api#documentation": "

The options for managing connection authorization for new client connections.

", - "smithy.api#xmlName": "clientConnectOptions" - } - }, - "SessionTimeoutHours": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "SessionTimeoutHours", - "smithy.api#documentation": "

The maximum VPN session duration time in hours.

\n

Valid values: 8 | 10 | 12 | 24\n

\n

Default value: 24\n

", - "smithy.api#xmlName": "sessionTimeoutHours" - } - }, - "ClientLoginBannerOptions": { - "target": "com.amazonaws.ec2#ClientLoginBannerResponseOptions", - "traits": { - "aws.protocols#ec2QueryName": "ClientLoginBannerOptions", - "smithy.api#documentation": "

Options for enabling a customizable text banner that will be displayed on Amazon Web Services provided clients when a VPN session is\n\t\t\testablished.

", - "smithy.api#xmlName": "clientLoginBannerOptions" + "smithy.api#documentation": "

The ARN of the Capacity Reservation resource group in which to run the\n\t\t\tinstance.

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

Describes a Client VPN endpoint.

" + "smithy.api#documentation": "

Describes a target Capacity Reservation or Capacity Reservation group.

" } }, - "com.amazonaws.ec2#ClientVpnEndpointAttributeStatus": { + "com.amazonaws.ec2#CapacityReservationTargetResponse": { "type": "structure", "members": { - "Code": { - "target": "com.amazonaws.ec2#ClientVpnEndpointAttributeStatusCode", + "CapacityReservationId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The status code.

", - "smithy.api#xmlName": "code" + "aws.protocols#ec2QueryName": "CapacityReservationId", + "smithy.api#documentation": "

The ID of the targeted Capacity Reservation.

", + "smithy.api#xmlName": "capacityReservationId" } }, - "Message": { + "CapacityReservationResourceGroupArn": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Message", - "smithy.api#documentation": "

The status message.

", - "smithy.api#xmlName": "message" + "aws.protocols#ec2QueryName": "CapacityReservationResourceGroupArn", + "smithy.api#documentation": "

The ARN of the targeted Capacity Reservation group.

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

Describes the status of the Client VPN endpoint attribute.

" + "smithy.api#documentation": "

Describes a target Capacity Reservation or Capacity Reservation group.

" } }, - "com.amazonaws.ec2#ClientVpnEndpointAttributeStatusCode": { + "com.amazonaws.ec2#CapacityReservationTenancy": { "type": "enum", "members": { - "applying": { + "default": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "applying" + "smithy.api#enumValue": "default" } }, - "applied": { + "dedicated": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "applied" + "smithy.api#enumValue": "dedicated" } } } }, - "com.amazonaws.ec2#ClientVpnEndpointId": { - "type": "string" - }, - "com.amazonaws.ec2#ClientVpnEndpointIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ClientVpnEndpointId", - "traits": { - "smithy.api#xmlName": "item" + "com.amazonaws.ec2#CapacityReservationType": { + "type": "enum", + "members": { + "DEFAULT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "default" + } + }, + "CAPACITY_BLOCK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "capacity-block" + } } } }, - "com.amazonaws.ec2#ClientVpnEndpointStatus": { + "com.amazonaws.ec2#CarrierGateway": { "type": "structure", "members": { - "Code": { - "target": "com.amazonaws.ec2#ClientVpnEndpointStatusCode", + "CarrierGatewayId": { + "target": "com.amazonaws.ec2#CarrierGatewayId", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The state of the Client VPN endpoint. Possible states include:

\n ", - "smithy.api#xmlName": "code" + "aws.protocols#ec2QueryName": "CarrierGatewayId", + "smithy.api#documentation": "

The ID of the carrier gateway.

", + "smithy.api#xmlName": "carrierGatewayId" } }, - "Message": { + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", + "traits": { + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC associated with the carrier gateway.

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

The state of the carrier gateway.

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

A message about the status of the Client VPN endpoint.

", - "smithy.api#xmlName": "message" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the carrier gateway.

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

The tags assigned to the carrier gateway.

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

Describes the state of a Client VPN endpoint.

" + "smithy.api#documentation": "

Describes a carrier gateway.

" } }, - "com.amazonaws.ec2#ClientVpnEndpointStatusCode": { + "com.amazonaws.ec2#CarrierGatewayId": { + "type": "string" + }, + "com.amazonaws.ec2#CarrierGatewayIdSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CarrierGatewayId" + } + }, + "com.amazonaws.ec2#CarrierGatewayMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#CarrierGatewaySet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CarrierGateway", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#CarrierGatewayState": { "type": "enum", "members": { - "pending_associate": { + "pending": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "pending-associate" + "smithy.api#enumValue": "pending" } }, "available": { @@ -12537,846 +13263,750 @@ } } }, - "com.amazonaws.ec2#ClientVpnRoute": { + "com.amazonaws.ec2#CertificateArn": { + "type": "string" + }, + "com.amazonaws.ec2#CertificateAuthentication": { "type": "structure", "members": { - "ClientVpnEndpointId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "ClientVpnEndpointId", - "smithy.api#documentation": "

The ID of the Client VPN endpoint with which the route is associated.

", - "smithy.api#xmlName": "clientVpnEndpointId" - } - }, - "DestinationCidr": { + "ClientRootCertificateChain": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DestinationCidr", - "smithy.api#documentation": "

The IPv4 address range, in CIDR notation, of the route destination.

", - "smithy.api#xmlName": "destinationCidr" + "aws.protocols#ec2QueryName": "ClientRootCertificateChain", + "smithy.api#documentation": "

The ARN of the client certificate.

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

Information about the client certificate used for authentication.

" + } + }, + "com.amazonaws.ec2#CertificateAuthenticationRequest": { + "type": "structure", + "members": { + "ClientRootCertificateChainArn": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TargetSubnet", - "smithy.api#documentation": "

The ID of the subnet through which traffic is routed.

", - "smithy.api#xmlName": "targetSubnet" + "smithy.api#documentation": "

The ARN of the client certificate. The certificate must be signed by a certificate \n\t\t\tauthority (CA) and it must be provisioned in Certificate Manager (ACM).

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

Information about the client certificate to be used for authentication.

" + } + }, + "com.amazonaws.ec2#CertificateId": { + "type": "string" + }, + "com.amazonaws.ec2#CidrAuthorizationContext": { + "type": "structure", + "members": { + "Message": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Type", - "smithy.api#documentation": "

The route type.

", - "smithy.api#xmlName": "type" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The plain-text authorization message for the prefix and account.

", + "smithy.api#required": {} } }, - "Origin": { + "Signature": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Origin", - "smithy.api#documentation": "

Indicates how the route was associated with the Client VPN endpoint. \n\t\t\tassociate indicates that the route was automatically added when the target network \n\t\t\twas associated with the Client VPN endpoint. add-route indicates that the route \n\t\t\twas manually added using the CreateClientVpnRoute action.

", - "smithy.api#xmlName": "origin" - } - }, - "Status": { - "target": "com.amazonaws.ec2#ClientVpnRouteStatus", - "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The current state of the route.

", - "smithy.api#xmlName": "status" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The signed authorization message for the prefix and account.

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

Provides authorization for Amazon to bring a specific IP address range to a specific\n Amazon Web Services account using bring your own IP addresses (BYOIP). For more information, see Configuring your BYOIP address range in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#CidrBlock": { + "type": "structure", + "members": { + "CidrBlock": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A brief description of the route.

", - "smithy.api#xmlName": "description" + "aws.protocols#ec2QueryName": "CidrBlock", + "smithy.api#documentation": "

The IPv4 CIDR block.

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

Information about a Client VPN endpoint route.

" + "smithy.api#documentation": "

Describes an IPv4 CIDR block.

" } }, - "com.amazonaws.ec2#ClientVpnRouteSet": { + "com.amazonaws.ec2#CidrBlockSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#ClientVpnRoute", + "target": "com.amazonaws.ec2#CidrBlock", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#ClientVpnRouteStatus": { + "com.amazonaws.ec2#ClassicLinkDnsSupport": { "type": "structure", "members": { - "Code": { - "target": "com.amazonaws.ec2#ClientVpnRouteStatusCode", + "ClassicLinkDnsSupported": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The state of the Client VPN endpoint route.

", - "smithy.api#xmlName": "code" + "aws.protocols#ec2QueryName": "ClassicLinkDnsSupported", + "smithy.api#documentation": "

Indicates whether ClassicLink DNS support is enabled for the VPC.

", + "smithy.api#xmlName": "classicLinkDnsSupported" } }, - "Message": { + "VpcId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Message", - "smithy.api#documentation": "

A message about the status of the Client VPN endpoint route, if applicable.

", - "smithy.api#xmlName": "message" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC.

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

Describes the state of a Client VPN endpoint route.

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

Deprecated.

\n
\n

Describes the ClassicLink DNS support status of a VPC.

" } }, - "com.amazonaws.ec2#ClientVpnRouteStatusCode": { - "type": "enum", + "com.amazonaws.ec2#ClassicLinkDnsSupportList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ClassicLinkDnsSupport", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ClassicLinkInstance": { + "type": "structure", "members": { - "creating": { - "target": "smithy.api#Unit", + "Groups": { + "target": "com.amazonaws.ec2#GroupIdentifierList", "traits": { - "smithy.api#enumValue": "creating" + "aws.protocols#ec2QueryName": "GroupSet", + "smithy.api#documentation": "

The security groups.

", + "smithy.api#xmlName": "groupSet" } }, - "active": { - "target": "smithy.api#Unit", + "InstanceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "active" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#xmlName": "instanceId" } }, - "failed": { - "target": "smithy.api#Unit", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "failed" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the instance.

", + "smithy.api#xmlName": "tagSet" } }, - "deleting": { - "target": "smithy.api#Unit", + "VpcId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "deleting" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#xmlName": "vpcId" } } + }, + "traits": { + "smithy.api#documentation": "\n

Deprecated.

\n
\n

Describes a linked EC2-Classic instance.

" } }, - "com.amazonaws.ec2#ClientVpnSecurityGroupIdSet": { + "com.amazonaws.ec2#ClassicLinkInstanceList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#SecurityGroupId", + "target": "com.amazonaws.ec2#ClassicLinkInstance", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#CloudWatchLogGroupArn": { - "type": "string" - }, - "com.amazonaws.ec2#CloudWatchLogOptions": { + "com.amazonaws.ec2#ClassicLoadBalancer": { "type": "structure", "members": { - "LogEnabled": { - "target": "com.amazonaws.ec2#Boolean", + "Name": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "LogEnabled", - "smithy.api#documentation": "

Status of VPN tunnel logging feature. Default value is False.

\n

Valid values: True | False\n

", - "smithy.api#xmlName": "logEnabled" - } - }, - "LogGroupArn": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "LogGroupArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the CloudWatch log group to send logs to.

", - "smithy.api#xmlName": "logGroupArn" - } - }, - "LogOutputFormat": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "LogOutputFormat", - "smithy.api#documentation": "

Configured log format. Default format is json.

\n

Valid values: json | text\n

", - "smithy.api#xmlName": "logOutputFormat" + "aws.protocols#ec2QueryName": "Name", + "smithy.api#documentation": "

The name of the load balancer.

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

Options for sending VPN tunnel logs to CloudWatch.

" + "smithy.api#documentation": "

Describes a Classic Load Balancer.

" } }, - "com.amazonaws.ec2#CloudWatchLogOptionsSpecification": { + "com.amazonaws.ec2#ClassicLoadBalancers": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ClassicLoadBalancer", + "traits": { + "smithy.api#xmlName": "item" + } + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 5 + } + } + }, + "com.amazonaws.ec2#ClassicLoadBalancersConfig": { "type": "structure", "members": { - "LogEnabled": { - "target": "com.amazonaws.ec2#Boolean", + "ClassicLoadBalancers": { + "target": "com.amazonaws.ec2#ClassicLoadBalancers", "traits": { - "smithy.api#documentation": "

Enable or disable VPN tunnel logging feature. Default value is False.

\n

Valid values: True | False\n

" + "aws.protocols#ec2QueryName": "ClassicLoadBalancers", + "smithy.api#documentation": "

One or more Classic Load Balancers.

", + "smithy.api#xmlName": "classicLoadBalancers" } - }, - "LogGroupArn": { - "target": "com.amazonaws.ec2#CloudWatchLogGroupArn", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the Classic Load Balancers to attach to a Spot Fleet. Spot Fleet registers\n the running Spot Instances with these Classic Load Balancers.

" + } + }, + "com.amazonaws.ec2#ClientCertificateRevocationListStatus": { + "type": "structure", + "members": { + "Code": { + "target": "com.amazonaws.ec2#ClientCertificateRevocationListStatusCode", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the CloudWatch log group to send logs to.

" + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The state of the client certificate revocation list.

", + "smithy.api#xmlName": "code" } }, - "LogOutputFormat": { + "Message": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Set log format. Default format is json.

\n

Valid values: json | text\n

" + "aws.protocols#ec2QueryName": "Message", + "smithy.api#documentation": "

A message about the status of the client certificate revocation list, if applicable.

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

Options for sending VPN tunnel logs to CloudWatch.

" + "smithy.api#documentation": "

Describes the state of a client certificate revocation list.

" } }, - "com.amazonaws.ec2#CoipAddressUsage": { - "type": "structure", + "com.amazonaws.ec2#ClientCertificateRevocationListStatusCode": { + "type": "enum", "members": { - "AllocationId": { - "target": "com.amazonaws.ec2#String", + "pending": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AllocationId", - "smithy.api#documentation": "

The allocation ID of the address.

", - "smithy.api#xmlName": "allocationId" + "smithy.api#enumValue": "pending" } }, - "AwsAccountId": { - "target": "com.amazonaws.ec2#String", + "active": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AwsAccountId", - "smithy.api#documentation": "

The Amazon Web Services account ID.

", - "smithy.api#xmlName": "awsAccountId" + "smithy.api#enumValue": "active" } - }, - "AwsService": { - "target": "com.amazonaws.ec2#String", + } + } + }, + "com.amazonaws.ec2#ClientConnectOptions": { + "type": "structure", + "members": { + "Enabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "AwsService", - "smithy.api#documentation": "

The Amazon Web Services service.

", - "smithy.api#xmlName": "awsService" + "smithy.api#documentation": "

Indicates whether client connect options are enabled. The default is false (not enabled).

" } }, - "CoIp": { + "LambdaFunctionArn": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "CoIp", - "smithy.api#documentation": "

The customer-owned IP address.

", - "smithy.api#xmlName": "coIp" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Lambda function used for connection authorization.

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

Describes address usage for a customer-owned address pool.

" - } - }, - "com.amazonaws.ec2#CoipAddressUsageSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#CoipAddressUsage", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

The options for managing connection authorization for new client connections.

" } }, - "com.amazonaws.ec2#CoipCidr": { + "com.amazonaws.ec2#ClientConnectResponseOptions": { "type": "structure", "members": { - "Cidr": { - "target": "com.amazonaws.ec2#String", + "Enabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Cidr", - "smithy.api#documentation": "

\n An address range in a customer-owned IP address space.\n

", - "smithy.api#xmlName": "cidr" + "aws.protocols#ec2QueryName": "Enabled", + "smithy.api#documentation": "

Indicates whether client connect options are enabled.

", + "smithy.api#xmlName": "enabled" } }, - "CoipPoolId": { - "target": "com.amazonaws.ec2#Ipv4PoolCoipId", + "LambdaFunctionArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "CoipPoolId", - "smithy.api#documentation": "

\n The ID of the address pool.\n

", - "smithy.api#xmlName": "coipPoolId" + "aws.protocols#ec2QueryName": "LambdaFunctionArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Lambda function used for connection authorization.

", + "smithy.api#xmlName": "lambdaFunctionArn" } }, - "LocalGatewayRouteTableId": { - "target": "com.amazonaws.ec2#String", + "Status": { + "target": "com.amazonaws.ec2#ClientVpnEndpointAttributeStatus", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableId", - "smithy.api#documentation": "

\n The ID of the local gateway route table.\n

", - "smithy.api#xmlName": "localGatewayRouteTableId" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The status of any updates to the client connect options.

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

\n Information about a customer-owned IP address range.\n

" + "smithy.api#documentation": "

The options for managing connection authorization for new client connections.

" } }, - "com.amazonaws.ec2#CoipPool": { + "com.amazonaws.ec2#ClientData": { "type": "structure", "members": { - "PoolId": { - "target": "com.amazonaws.ec2#Ipv4PoolCoipId", - "traits": { - "aws.protocols#ec2QueryName": "PoolId", - "smithy.api#documentation": "

The ID of the address pool.

", - "smithy.api#xmlName": "poolId" - } - }, - "PoolCidrs": { - "target": "com.amazonaws.ec2#ValueStringList", + "Comment": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PoolCidrSet", - "smithy.api#documentation": "

The address ranges of the address pool.

", - "smithy.api#xmlName": "poolCidrSet" + "smithy.api#documentation": "

A user-defined comment about the disk upload.

" } }, - "LocalGatewayRouteTableId": { - "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", + "UploadEnd": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableId", - "smithy.api#documentation": "

The ID of the local gateway route table.

", - "smithy.api#xmlName": "localGatewayRouteTableId" + "smithy.api#documentation": "

The time that the disk upload ends.

" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "UploadSize": { + "target": "com.amazonaws.ec2#Double", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#documentation": "

The size of the uploaded disk image, in GiB.

" } }, - "PoolArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "UploadStart": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "PoolArn", - "smithy.api#documentation": "

The ARN of the address pool.

", - "smithy.api#xmlName": "poolArn" + "smithy.api#documentation": "

The time that the disk upload starts.

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

Describes a customer-owned address pool.

" - } - }, - "com.amazonaws.ec2#CoipPoolId": { - "type": "string" - }, - "com.amazonaws.ec2#CoipPoolIdSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Ipv4PoolCoipId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#CoipPoolMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#CoipPoolSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#CoipPool", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ComponentAccount": { - "type": "string", - "traits": { - "smithy.api#pattern": "^\\d{12}$" - } - }, - "com.amazonaws.ec2#ComponentRegion": { - "type": "string", - "traits": { - "smithy.api#pattern": "^[a-z]{2}-[a-z]+-[1-9]+$" - } - }, - "com.amazonaws.ec2#ConfirmProductInstance": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ConfirmProductInstanceRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ConfirmProductInstanceResult" - }, - "traits": { - "smithy.api#documentation": "

Determines whether a product code is associated with an instance. This action can only\n be used by the owner of the product code. It is useful when a product code owner must\n verify whether another user's instance is eligible for support.

", - "smithy.api#examples": [ - { - "title": "To confirm the product instance", - "documentation": "This example determines whether the specified product code is associated with the specified instance.", - "input": { - "ProductCode": "774F4FF8", - "InstanceId": "i-1234567890abcdef0" - }, - "output": { - "OwnerId": "123456789012" - } - } - ] + "smithy.api#documentation": "

Describes the client-specific data.

" } }, - "com.amazonaws.ec2#ConfirmProductInstanceRequest": { + "com.amazonaws.ec2#ClientLoginBannerOptions": { "type": "structure", "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", + "Enabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance.

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

Enable or disable a customizable text banner that will be displayed on\n\t\t\tAmazon Web Services provided clients when a VPN session is established.

\n

Valid values: true | false\n

\n

Default value: false\n

" } }, - "ProductCode": { + "BannerText": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The product code. This must be a product code that you own.

", - "smithy.api#required": {} - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

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

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Customizable text that will be displayed in a banner on Amazon Web Services provided\n\t\t\tclients when a VPN session is established. UTF-8 encoded characters only. Maximum of\n\t\t\t1400 characters.

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

Options for enabling a customizable text banner that will be displayed on\n\t\t\tAmazon Web Services provided clients when a VPN session is established.

" } }, - "com.amazonaws.ec2#ConfirmProductInstanceResult": { + "com.amazonaws.ec2#ClientLoginBannerResponseOptions": { "type": "structure", "members": { - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "Enabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The Amazon Web Services account ID of the instance owner. This is only present if the\n product code is attached to the instance.

", - "smithy.api#xmlName": "ownerId" + "aws.protocols#ec2QueryName": "Enabled", + "smithy.api#documentation": "

Current state of text banner feature.

\n

Valid values: true | false\n

", + "smithy.api#xmlName": "enabled" } }, - "Return": { - "target": "com.amazonaws.ec2#Boolean", + "BannerText": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

The return value of the request. Returns true if the specified product\n code is owned by the requester and associated with the specified instance.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "BannerText", + "smithy.api#documentation": "

Customizable text that will be displayed in a banner on Amazon Web Services provided\n\t\t\tclients when a VPN session is established. UTF-8 encoded\n\t\t\tcharacters only. Maximum of 1400 characters.

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

Current state of options for customizable text banner that will be displayed on\n\t\t\tAmazon Web Services provided clients when a VPN session is established.

" } }, - "com.amazonaws.ec2#ConnectionLogOptions": { + "com.amazonaws.ec2#ClientRouteEnforcementOptions": { "type": "structure", "members": { - "Enabled": { + "Enforced": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Indicates whether connection logging is enabled.

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

The name of the CloudWatch Logs log group. Required if connection logging is enabled.

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

The name of the CloudWatch Logs log stream to which the connection data is published.

" + "smithy.api#documentation": "

Enable or disable Client Route Enforcement. The state can either be true\n\t\t\t(enabled) or false (disabled). The default is false.

\n

Valid values: true | false\n

\n

Default value: false\n

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

Describes the client connection logging options for the Client VPN endpoint.

" + "smithy.api#documentation": "

Client Route Enforcement is a feature of Client VPN that helps enforce administrator defined\n\t\t\troutes on devices connected through the VPN. This feature helps improve your security\n\t\t\tposture by ensuring that network traffic originating from a connected client is not\n\t\t\tinadvertently sent outside the VPN tunnel.

\n

Client Route Enforcement works by monitoring the route table of a connected device for\n\t\t\trouting policy changes to the VPN connection. If the feature detects any VPN routing\n\t\t\tpolicy modifications, it will automatically force an update to the route table,\n\t\t\treverting it back to the expected route configurations.

" } }, - "com.amazonaws.ec2#ConnectionLogResponseOptions": { + "com.amazonaws.ec2#ClientRouteEnforcementResponseOptions": { "type": "structure", "members": { - "Enabled": { + "Enforced": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Indicates whether client connection logging is enabled for the Client VPN endpoint.

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

The name of the Amazon CloudWatch Logs log group to which connection logging data is published.

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

The name of the Amazon CloudWatch Logs log stream to which connection logging data is published.

" + "aws.protocols#ec2QueryName": "Enforced", + "smithy.api#documentation": "

Status of the client route enforcement feature, indicating whether Client Route Enforcement\n\t\t\tis true (enabled) or false (disabled).

\n

Valid values: true | false\n

\n

Default value: false\n

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

Information about the client connection logging options for a Client VPN endpoint.

" + "smithy.api#documentation": "

The current status of Client Route Enforcement.

" } }, - "com.amazonaws.ec2#ConnectionNotification": { + "com.amazonaws.ec2#ClientSecretType": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.ec2#ClientVpnAuthentication": { "type": "structure", "members": { - "ConnectionNotificationId": { - "target": "com.amazonaws.ec2#String", + "Type": { + "target": "com.amazonaws.ec2#ClientVpnAuthenticationType", "traits": { - "aws.protocols#ec2QueryName": "ConnectionNotificationId", - "smithy.api#documentation": "

The ID of the notification.

", - "smithy.api#xmlName": "connectionNotificationId" + "aws.protocols#ec2QueryName": "Type", + "smithy.api#documentation": "

The authentication type used.

", + "smithy.api#xmlName": "type" } }, - "ServiceId": { - "target": "com.amazonaws.ec2#String", + "ActiveDirectory": { + "target": "com.amazonaws.ec2#DirectoryServiceAuthentication", "traits": { - "aws.protocols#ec2QueryName": "ServiceId", - "smithy.api#documentation": "

The ID of the endpoint service.

", - "smithy.api#xmlName": "serviceId" + "aws.protocols#ec2QueryName": "ActiveDirectory", + "smithy.api#documentation": "

Information about the Active Directory, if applicable.

", + "smithy.api#xmlName": "activeDirectory" } }, - "VpcEndpointId": { - "target": "com.amazonaws.ec2#String", + "MutualAuthentication": { + "target": "com.amazonaws.ec2#CertificateAuthentication", "traits": { - "aws.protocols#ec2QueryName": "VpcEndpointId", - "smithy.api#documentation": "

The ID of the VPC endpoint.

", - "smithy.api#xmlName": "vpcEndpointId" + "aws.protocols#ec2QueryName": "MutualAuthentication", + "smithy.api#documentation": "

Information about the authentication certificates, if applicable.

", + "smithy.api#xmlName": "mutualAuthentication" } }, - "ConnectionNotificationType": { - "target": "com.amazonaws.ec2#ConnectionNotificationType", + "FederatedAuthentication": { + "target": "com.amazonaws.ec2#FederatedAuthentication", "traits": { - "aws.protocols#ec2QueryName": "ConnectionNotificationType", - "smithy.api#documentation": "

The type of notification.

", - "smithy.api#xmlName": "connectionNotificationType" + "aws.protocols#ec2QueryName": "FederatedAuthentication", + "smithy.api#documentation": "

Information about the IAM SAML identity provider, if applicable.

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

Describes the authentication methods used by a Client VPN endpoint. For more information, see Authentication \n\t\t\tin the Client VPN Administrator Guide.

" + } + }, + "com.amazonaws.ec2#ClientVpnAuthenticationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ClientVpnAuthentication", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ClientVpnAuthenticationRequest": { + "type": "structure", + "members": { + "Type": { + "target": "com.amazonaws.ec2#ClientVpnAuthenticationType", + "traits": { + "smithy.api#documentation": "

The type of client authentication to be used.

" } }, - "ConnectionNotificationArn": { - "target": "com.amazonaws.ec2#String", + "ActiveDirectory": { + "target": "com.amazonaws.ec2#DirectoryServiceAuthenticationRequest", "traits": { - "aws.protocols#ec2QueryName": "ConnectionNotificationArn", - "smithy.api#documentation": "

The ARN of the SNS topic for the notification.

", - "smithy.api#xmlName": "connectionNotificationArn" + "smithy.api#documentation": "

Information about the Active Directory to be used, if applicable. You must provide this information if Type is directory-service-authentication.

" } }, - "ConnectionEvents": { - "target": "com.amazonaws.ec2#ValueStringList", + "MutualAuthentication": { + "target": "com.amazonaws.ec2#CertificateAuthenticationRequest", "traits": { - "aws.protocols#ec2QueryName": "ConnectionEvents", - "smithy.api#documentation": "

The events for the notification. Valid values are Accept,\n Connect, Delete, and Reject.

", - "smithy.api#xmlName": "connectionEvents" + "smithy.api#documentation": "

Information about the authentication certificates to be used, if applicable. You must provide this information if Type is certificate-authentication.

" } }, - "ConnectionNotificationState": { - "target": "com.amazonaws.ec2#ConnectionNotificationState", + "FederatedAuthentication": { + "target": "com.amazonaws.ec2#FederatedAuthenticationRequest", "traits": { - "aws.protocols#ec2QueryName": "ConnectionNotificationState", - "smithy.api#documentation": "

The state of the notification.

", - "smithy.api#xmlName": "connectionNotificationState" + "smithy.api#documentation": "

Information about the IAM SAML identity provider to be used, if applicable. You must provide this information if Type is federated-authentication.

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

Describes a connection notification for a VPC endpoint or VPC endpoint\n service.

" - } - }, - "com.amazonaws.ec2#ConnectionNotificationId": { - "type": "string" - }, - "com.amazonaws.ec2#ConnectionNotificationIdsList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ConnectionNotificationId", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

Describes the authentication method to be used by a Client VPN endpoint. For more information, see Authentication \n\t\t\tin the Client VPN Administrator Guide.

" } }, - "com.amazonaws.ec2#ConnectionNotificationSet": { + "com.amazonaws.ec2#ClientVpnAuthenticationRequestList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#ConnectionNotification", - "traits": { - "smithy.api#xmlName": "item" - } + "target": "com.amazonaws.ec2#ClientVpnAuthenticationRequest" } }, - "com.amazonaws.ec2#ConnectionNotificationState": { + "com.amazonaws.ec2#ClientVpnAuthenticationType": { "type": "enum", "members": { - "Enabled": { + "certificate_authentication": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "Enabled" + "smithy.api#enumValue": "certificate-authentication" } }, - "Disabled": { + "directory_service_authentication": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "Disabled" + "smithy.api#enumValue": "directory-service-authentication" } - } - } - }, - "com.amazonaws.ec2#ConnectionNotificationType": { - "type": "enum", - "members": { - "Topic": { + }, + "federated_authentication": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "Topic" + "smithy.api#enumValue": "federated-authentication" } } } }, - "com.amazonaws.ec2#ConnectionTrackingConfiguration": { + "com.amazonaws.ec2#ClientVpnAuthorizationRuleStatus": { "type": "structure", "members": { - "TcpEstablishedTimeout": { - "target": "com.amazonaws.ec2#Integer", + "Code": { + "target": "com.amazonaws.ec2#ClientVpnAuthorizationRuleStatusCode", "traits": { - "aws.protocols#ec2QueryName": "TcpEstablishedTimeout", - "smithy.api#documentation": "

Timeout (in seconds) for idle TCP\n\t\t\t\t\t\tconnections in an established state. Min: 60 seconds. Max: 432000 seconds (5\n\t\t\t\t\t\tdays). Default: 432000 seconds. Recommended: Less than 432000 seconds.

", - "smithy.api#xmlName": "tcpEstablishedTimeout" + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The state of the authorization rule.

", + "smithy.api#xmlName": "code" } }, - "UdpStreamTimeout": { - "target": "com.amazonaws.ec2#Integer", + "Message": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "UdpStreamTimeout", - "smithy.api#documentation": "

Timeout (in seconds) for idle UDP\n\t\t\t\t\t\tflows classified as streams which have seen more than one request-response\n\t\t\t\t\t\ttransaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180\n\t\t\t\t\t\tseconds.

", - "smithy.api#xmlName": "udpStreamTimeout" - } - }, - "UdpTimeout": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "UdpTimeout", - "smithy.api#documentation": "

Timeout (in seconds) for idle UDP flows that\n\t\t\t\t\t\thave seen traffic only in a single direction or a single request-response\n\t\t\t\t\t\ttransaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.

", - "smithy.api#xmlName": "udpTimeout" + "aws.protocols#ec2QueryName": "Message", + "smithy.api#documentation": "

A message about the status of the authorization rule, if applicable.

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

A security group connection tracking configuration that enables you to set the idle timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

" + "smithy.api#documentation": "

Describes the state of an authorization rule.

" } }, - "com.amazonaws.ec2#ConnectionTrackingSpecification": { - "type": "structure", + "com.amazonaws.ec2#ClientVpnAuthorizationRuleStatusCode": { + "type": "enum", "members": { - "TcpEstablishedTimeout": { - "target": "com.amazonaws.ec2#Integer", + "authorizing": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TcpEstablishedTimeout", - "smithy.api#documentation": "

Timeout (in seconds) for idle TCP\n\t\t\t\t\t\tconnections in an established state. Min: 60 seconds. Max: 432000 seconds (5\n\t\t\t\t\t\tdays). Default: 432000 seconds. Recommended: Less than 432000 seconds.

", - "smithy.api#xmlName": "tcpEstablishedTimeout" + "smithy.api#enumValue": "authorizing" } }, - "UdpTimeout": { - "target": "com.amazonaws.ec2#Integer", + "active": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "UdpTimeout", - "smithy.api#documentation": "

Timeout (in seconds) for idle UDP flows that\n\t\t\t\t\t\thave seen traffic only in a single direction or a single request-response\n\t\t\t\t\t\ttransaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.

", - "smithy.api#xmlName": "udpTimeout" + "smithy.api#enumValue": "active" } }, - "UdpStreamTimeout": { - "target": "com.amazonaws.ec2#Integer", + "failed": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "UdpStreamTimeout", - "smithy.api#documentation": "

Timeout (in seconds) for idle UDP\n\t\t\t\t\t\tflows classified as streams which have seen more than one request-response\n\t\t\t\t\t\ttransaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180\n\t\t\t\t\t\tseconds.

", - "smithy.api#xmlName": "udpStreamTimeout" + "smithy.api#enumValue": "failed" + } + }, + "revoking": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "revoking" } } - }, - "traits": { - "smithy.api#documentation": "

A security group connection tracking specification that enables you to set the idle timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

" } }, - "com.amazonaws.ec2#ConnectionTrackingSpecificationRequest": { + "com.amazonaws.ec2#ClientVpnConnection": { "type": "structure", "members": { - "TcpEstablishedTimeout": { - "target": "com.amazonaws.ec2#Integer", + "ClientVpnEndpointId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Timeout (in seconds) for idle TCP\n\t\t\t\t\t\tconnections in an established state. Min: 60 seconds. Max: 432000 seconds (5\n\t\t\t\t\t\tdays). Default: 432000 seconds. Recommended: Less than 432000 seconds.

" + "aws.protocols#ec2QueryName": "ClientVpnEndpointId", + "smithy.api#documentation": "

The ID of the Client VPN endpoint to which the client is connected.

", + "smithy.api#xmlName": "clientVpnEndpointId" } }, - "UdpStreamTimeout": { - "target": "com.amazonaws.ec2#Integer", + "Timestamp": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Timeout (in seconds) for idle UDP\n\t\t\t\t\t\tflows classified as streams which have seen more than one request-response\n\t\t\t\t\t\ttransaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180\n\t\t\t\t\t\tseconds.

" + "aws.protocols#ec2QueryName": "Timestamp", + "smithy.api#documentation": "

The current date and time.

", + "smithy.api#xmlName": "timestamp" } }, - "UdpTimeout": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

Timeout (in seconds) for idle UDP flows that\n\t\t\t\t\t\thave seen traffic only in a single direction or a single request-response\n\t\t\t\t\t\ttransaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.

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

A security group connection tracking specification request that enables you to set the idle timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

" - } - }, - "com.amazonaws.ec2#ConnectionTrackingSpecificationResponse": { - "type": "structure", - "members": { - "TcpEstablishedTimeout": { - "target": "com.amazonaws.ec2#Integer", + "ConnectionId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TcpEstablishedTimeout", - "smithy.api#documentation": "

Timeout (in seconds) for idle TCP\n\t\t\t\t\t\tconnections in an established state. Min: 60 seconds. Max: 432000 seconds (5\n\t\t\t\t\t\tdays). Default: 432000 seconds. Recommended: Less than 432000 seconds.

", - "smithy.api#xmlName": "tcpEstablishedTimeout" + "aws.protocols#ec2QueryName": "ConnectionId", + "smithy.api#documentation": "

The ID of the client connection.

", + "smithy.api#xmlName": "connectionId" } }, - "UdpStreamTimeout": { - "target": "com.amazonaws.ec2#Integer", + "Username": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "UdpStreamTimeout", - "smithy.api#documentation": "

Timeout (in seconds) for idle UDP\n\t\t\t\t\t\tflows classified as streams which have seen more than one request-response\n\t\t\t\t\t\ttransaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180\n\t\t\t\t\t\tseconds.

", - "smithy.api#xmlName": "udpStreamTimeout" + "aws.protocols#ec2QueryName": "Username", + "smithy.api#documentation": "

The username of the client who established the client connection. This information is only provided \n\t\t\tif Active Directory client authentication is used.

", + "smithy.api#xmlName": "username" } }, - "UdpTimeout": { - "target": "com.amazonaws.ec2#Integer", + "ConnectionEstablishedTime": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "UdpTimeout", - "smithy.api#documentation": "

Timeout (in seconds) for idle UDP flows that\n\t\t\t\t\t\thave seen traffic only in a single direction or a single request-response\n\t\t\t\t\t\ttransaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.

", - "smithy.api#xmlName": "udpTimeout" + "aws.protocols#ec2QueryName": "ConnectionEstablishedTime", + "smithy.api#documentation": "

The date and time the client connection was established.

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

A security group connection tracking specification response that enables you to set the idle timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

" - } - }, - "com.amazonaws.ec2#ConnectivityType": { - "type": "enum", - "members": { - "PRIVATE": { - "target": "smithy.api#Unit", + }, + "IngressBytes": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "private" + "aws.protocols#ec2QueryName": "IngressBytes", + "smithy.api#documentation": "

The number of bytes sent by the client.

", + "smithy.api#xmlName": "ingressBytes" } }, - "PUBLIC": { - "target": "smithy.api#Unit", + "EgressBytes": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "public" + "aws.protocols#ec2QueryName": "EgressBytes", + "smithy.api#documentation": "

The number of bytes received by the client.

", + "smithy.api#xmlName": "egressBytes" } - } - } - }, - "com.amazonaws.ec2#ContainerFormat": { - "type": "enum", - "members": { - "ova": { - "target": "smithy.api#Unit", + }, + "IngressPackets": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "ova" + "aws.protocols#ec2QueryName": "IngressPackets", + "smithy.api#documentation": "

The number of packets sent by the client.

", + "smithy.api#xmlName": "ingressPackets" } - } - } - }, - "com.amazonaws.ec2#ConversionIdStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ConversionTaskId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ConversionTask": { - "type": "structure", - "members": { - "ConversionTaskId": { + }, + "EgressPackets": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ConversionTaskId", - "smithy.api#documentation": "

The ID of the conversion task.

", - "smithy.api#xmlName": "conversionTaskId" + "aws.protocols#ec2QueryName": "EgressPackets", + "smithy.api#documentation": "

The number of packets received by the client.

", + "smithy.api#xmlName": "egressPackets" } }, - "ExpirationTime": { + "ClientIp": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ExpirationTime", - "smithy.api#documentation": "

The time when the task expires. If the upload isn't complete before the expiration time, we automatically cancel\n the task.

", - "smithy.api#xmlName": "expirationTime" + "aws.protocols#ec2QueryName": "ClientIp", + "smithy.api#documentation": "

The IP address of the client.

", + "smithy.api#xmlName": "clientIp" } }, - "ImportInstance": { - "target": "com.amazonaws.ec2#ImportInstanceTaskDetails", + "ClientIpv6Address": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ImportInstance", - "smithy.api#documentation": "

If the task is for importing an instance, this contains information about the import instance task.

", - "smithy.api#xmlName": "importInstance" + "aws.protocols#ec2QueryName": "ClientIpv6Address", + "smithy.api#documentation": "

The IPv6 address assigned to the client connection when using a dual-stack Client VPN endpoint. This field is only populated when the endpoint is configured for dual-stack addressing, and the client is using IPv6 for connectivity.

", + "smithy.api#xmlName": "clientIpv6Address" } }, - "ImportVolume": { - "target": "com.amazonaws.ec2#ImportVolumeTaskDetails", + "CommonName": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ImportVolume", - "smithy.api#documentation": "

If the task is for importing a volume, this contains information about the import volume task.

", - "smithy.api#xmlName": "importVolume" + "aws.protocols#ec2QueryName": "CommonName", + "smithy.api#documentation": "

The common name associated with the client. This is either the name of the client certificate,\n\t\t\tor the Active Directory user name.

", + "smithy.api#xmlName": "commonName" } }, - "State": { - "target": "com.amazonaws.ec2#ConversionTaskState", + "Status": { + "target": "com.amazonaws.ec2#ClientVpnConnectionStatus", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the conversion task.

", - "smithy.api#xmlName": "state" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The current state of the client connection.

", + "smithy.api#xmlName": "status" } }, - "StatusMessage": { + "ConnectionEndTime": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "StatusMessage", - "smithy.api#documentation": "

The status message related to the conversion task.

", - "smithy.api#xmlName": "statusMessage" + "aws.protocols#ec2QueryName": "ConnectionEndTime", + "smithy.api#documentation": "

The date and time the client connection was terminated.

", + "smithy.api#xmlName": "connectionEndTime" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "PostureComplianceStatuses": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the task.

", - "smithy.api#xmlName": "tagSet" + "aws.protocols#ec2QueryName": "PostureComplianceStatusSet", + "smithy.api#documentation": "

The statuses returned by the client connect handler for posture compliance, if applicable.

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

Describes a conversion task.

" + "smithy.api#documentation": "

Describes a client connection.

" } }, - "com.amazonaws.ec2#ConversionTaskId": { - "type": "string" + "com.amazonaws.ec2#ClientVpnConnectionSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ClientVpnConnection", + "traits": { + "smithy.api#xmlName": "item" + } + } }, - "com.amazonaws.ec2#ConversionTaskState": { + "com.amazonaws.ec2#ClientVpnConnectionStatus": { + "type": "structure", + "members": { + "Code": { + "target": "com.amazonaws.ec2#ClientVpnConnectionStatusCode", + "traits": { + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The state of the client connection.

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

A message about the status of the client connection, if applicable.

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

Describes the status of a client connection.

" + } + }, + "com.amazonaws.ec2#ClientVpnConnectionStatusCode": { "type": "enum", "members": { "active": { @@ -13385,861 +14015,776 @@ "smithy.api#enumValue": "active" } }, - "cancelling": { + "failed_to_terminate": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "cancelling" + "smithy.api#enumValue": "failed-to-terminate" } }, - "cancelled": { + "terminating": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "cancelled" + "smithy.api#enumValue": "terminating" } }, - "completed": { + "terminated": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "completed" + "smithy.api#enumValue": "terminated" } } } }, - "com.amazonaws.ec2#CoolOffPeriodRequestHours": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 72 - } - } - }, - "com.amazonaws.ec2#CoolOffPeriodResponseHours": { - "type": "integer" - }, - "com.amazonaws.ec2#CopyFpgaImage": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CopyFpgaImageRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CopyFpgaImageResult" - }, - "traits": { - "smithy.api#documentation": "

Copies the specified Amazon FPGA Image (AFI) to the current Region.

" - } - }, - "com.amazonaws.ec2#CopyFpgaImageRequest": { + "com.amazonaws.ec2#ClientVpnEndpoint": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ClientVpnEndpointId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

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

" + "aws.protocols#ec2QueryName": "ClientVpnEndpointId", + "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", + "smithy.api#xmlName": "clientVpnEndpointId" } }, - "SourceFpgaImageId": { + "Description": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the source AFI.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A brief description of the endpoint.

", + "smithy.api#xmlName": "description" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "Status": { + "target": "com.amazonaws.ec2#ClientVpnEndpointStatus", "traits": { - "smithy.api#documentation": "

The description for the new AFI.

" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The current state of the Client VPN endpoint.

", + "smithy.api#xmlName": "status" } }, - "Name": { + "CreationTime": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The name for the new AFI. The default is the name of the source AFI.

" + "aws.protocols#ec2QueryName": "CreationTime", + "smithy.api#documentation": "

The date and time the Client VPN endpoint was created.

", + "smithy.api#xmlName": "creationTime" } }, - "SourceRegion": { + "DeletionTime": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Region that contains the source AFI.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "DeletionTime", + "smithy.api#documentation": "

The date and time the Client VPN endpoint was deleted, if applicable.

", + "smithy.api#xmlName": "deletionTime" } }, - "ClientToken": { + "DnsName": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. \n For more information, see Ensuring idempotency.

" + "aws.protocols#ec2QueryName": "DnsName", + "smithy.api#documentation": "

The DNS name to be used by clients when connecting to the Client VPN endpoint.

", + "smithy.api#xmlName": "dnsName" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#CopyFpgaImageResult": { - "type": "structure", - "members": { - "FpgaImageId": { + }, + "ClientCidrBlock": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "FpgaImageId", - "smithy.api#documentation": "

The ID of the new AFI.

", - "smithy.api#xmlName": "fpgaImageId" + "aws.protocols#ec2QueryName": "ClientCidrBlock", + "smithy.api#documentation": "

The IPv4 address range, in CIDR notation, from which client IP addresses are assigned.

", + "smithy.api#xmlName": "clientCidrBlock" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#CopyImage": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CopyImageRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CopyImageResult" - }, - "traits": { - "smithy.api#documentation": "

Initiates the copy of an AMI. You can copy an AMI from one Region to another, or from a\n Region to an Outpost. You can't copy an AMI from an Outpost to a Region, from one Outpost\n to another, or within the same Outpost. To copy an AMI to another partition, see CreateStoreImageTask.

\n

To copy an AMI from one Region to another, specify the source Region using the \n \t\tSourceRegion parameter, and specify the \n \t\tdestination Region using its endpoint. Copies of encrypted backing snapshots for\n \t\tthe AMI are encrypted. Copies of unencrypted backing snapshots remain unencrypted, \n \t\tunless you set Encrypted during the copy operation. You cannot \n \t\tcreate an unencrypted copy of an encrypted backing snapshot.

\n

To copy an AMI from a Region to an Outpost, specify the source Region using the \n \t\tSourceRegion parameter, and specify the \n \t\tARN of the destination Outpost using DestinationOutpostArn. \n \t\tBacking snapshots copied to an Outpost are encrypted by default using the default\n \t\tencryption key for the Region, or a different key that you specify in the request using \n \t\tKmsKeyId. Outposts do not support unencrypted \n \t snapshots. For more information, \n \t\t\tAmazon EBS local snapshots on Outposts in the Amazon EBS User Guide.

\n

For more information about the prerequisites and limits when copying an AMI, see Copy an AMI in the\n Amazon EC2 User Guide.

", - "smithy.api#examples": [ - { - "title": "To copy an AMI to another region", - "documentation": "This example copies the specified AMI from the us-east-1 region to the current region.", - "input": { - "Description": "", - "Name": "My server", - "SourceImageId": "ami-5731123e", - "SourceRegion": "us-east-1" - }, - "output": { - "ImageId": "ami-438bea42" - } + }, + "DnsServers": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "aws.protocols#ec2QueryName": "DnsServer", + "smithy.api#documentation": "

Information about the DNS servers to be used for DNS resolution.

", + "smithy.api#xmlName": "dnsServer" } - ] - } - }, - "com.amazonaws.ec2#CopyImageRequest": { - "type": "structure", - "members": { - "ClientToken": { - "target": "com.amazonaws.ec2#String", + }, + "SplitTunnel": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier you provide to ensure\n idempotency of the request. For more information, see Ensuring idempotency \n in the Amazon EC2 API Reference.

" + "aws.protocols#ec2QueryName": "SplitTunnel", + "smithy.api#documentation": "

Indicates whether split-tunnel is enabled in the Client VPN endpoint.

\n

For information about split-tunnel VPN endpoints, see Split-Tunnel Client VPN endpoint \n\t\t\tin the Client VPN Administrator Guide.

", + "smithy.api#xmlName": "splitTunnel" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "VpnProtocol": { + "target": "com.amazonaws.ec2#VpnProtocol", "traits": { - "smithy.api#documentation": "

A description for the new AMI in the destination Region.

" + "aws.protocols#ec2QueryName": "VpnProtocol", + "smithy.api#documentation": "

The protocol used by the VPN session.

", + "smithy.api#xmlName": "vpnProtocol" } }, - "Encrypted": { - "target": "com.amazonaws.ec2#Boolean", + "TransportProtocol": { + "target": "com.amazonaws.ec2#TransportProtocol", "traits": { - "aws.protocols#ec2QueryName": "Encrypted", - "smithy.api#documentation": "

Specifies whether the destination snapshots of the copied image should be encrypted. You\n can encrypt a copy of an unencrypted snapshot, but you cannot create an unencrypted copy of an\n encrypted snapshot. The default KMS key for Amazon EBS is used unless you specify a non-default\n Key Management Service (KMS) KMS key using KmsKeyId. For more information, see Amazon EBS encryption in the\n Amazon EBS User Guide.

", - "smithy.api#xmlName": "encrypted" + "aws.protocols#ec2QueryName": "TransportProtocol", + "smithy.api#documentation": "

The transport protocol used by the Client VPN endpoint.

", + "smithy.api#xmlName": "transportProtocol" } }, - "KmsKeyId": { - "target": "com.amazonaws.ec2#KmsKeyId", + "VpnPort": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "KmsKeyId", - "smithy.api#documentation": "

The identifier of the symmetric Key Management Service (KMS) KMS key to use when creating\n \t\tencrypted volumes. If this parameter is not specified, your Amazon Web Services managed KMS key for Amazon EBS is used. \n \t\tIf you specify a KMS key, you must also set the encrypted state to true.

\n

You can specify a KMS key using any of the following:

\n \n

Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an identifier that is not valid,\n the action can appear to complete, but eventually fails.

\n

The specified KMS key must exist in the destination Region.

\n

Amazon EBS does not support asymmetric KMS keys.

", - "smithy.api#xmlName": "kmsKeyId" + "aws.protocols#ec2QueryName": "VpnPort", + "smithy.api#documentation": "

The port number for the Client VPN endpoint.

", + "smithy.api#xmlName": "vpnPort" } }, - "Name": { - "target": "com.amazonaws.ec2#String", + "AssociatedTargetNetworks": { + "target": "com.amazonaws.ec2#AssociatedTargetNetworkSet", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The name of the new AMI in the destination Region.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "AssociatedTargetNetwork", + "smithy.api#deprecated": { + "message": "This property is deprecated. To view the target networks associated with a Client VPN endpoint, call DescribeClientVpnTargetNetworks and inspect the clientVpnTargetNetworks response element." + }, + "smithy.api#documentation": "

Information about the associated target networks. A target network is a subnet in a VPC.

", + "smithy.api#xmlName": "associatedTargetNetwork" } }, - "SourceImageId": { + "ServerCertificateArn": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the AMI to copy.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "ServerCertificateArn", + "smithy.api#documentation": "

The ARN of the server certificate.

", + "smithy.api#xmlName": "serverCertificateArn" } }, - "SourceRegion": { - "target": "com.amazonaws.ec2#String", + "AuthenticationOptions": { + "target": "com.amazonaws.ec2#ClientVpnAuthenticationList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The name of the Region that contains the AMI to copy.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "AuthenticationOptions", + "smithy.api#documentation": "

Information about the authentication method used by the Client VPN endpoint.

", + "smithy.api#xmlName": "authenticationOptions" } }, - "DestinationOutpostArn": { - "target": "com.amazonaws.ec2#String", + "ConnectionLogOptions": { + "target": "com.amazonaws.ec2#ConnectionLogResponseOptions", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost to which to copy the AMI. Only \n \t\tspecify this parameter when copying an AMI from an Amazon Web Services Region to an Outpost. \n \t\tThe AMI must be in the Region of the destination Outpost. You cannot copy an \n \t\tAMI from an Outpost to a Region, from one Outpost to another, or within the same \n \t\tOutpost.

\n

For more information, see Copy AMIs from an Amazon Web Services\n Region to an Outpost in the Amazon EBS User Guide.

" + "aws.protocols#ec2QueryName": "ConnectionLogOptions", + "smithy.api#documentation": "

Information about the client connection logging options for the Client VPN endpoint.

", + "smithy.api#xmlName": "connectionLogOptions" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

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

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the Client VPN endpoint.

", + "smithy.api#xmlName": "tagSet" } }, - "CopyImageTags": { - "target": "com.amazonaws.ec2#Boolean", + "SecurityGroupIds": { + "target": "com.amazonaws.ec2#ClientVpnSecurityGroupIdSet", "traits": { - "smithy.api#documentation": "

Indicates whether to include your user-defined AMI tags when copying the AMI.

\n

The following tags will not be copied:

\n \n

Default: Your user-defined AMI tags are not copied.

" + "aws.protocols#ec2QueryName": "SecurityGroupIdSet", + "smithy.api#documentation": "

The IDs of the security groups for the target network.

", + "smithy.api#xmlName": "securityGroupIdSet" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "smithy.api#documentation": "

The tags to apply to the new AMI and new snapshots. You can tag the AMI, the snapshots, or\n both.

\n \n

If you specify other values for ResourceType, the request fails.

\n

To tag an AMI or snapshot after it has been created, see CreateTags.

", - "smithy.api#xmlName": "TagSpecification" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC.

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

Contains the parameters for CopyImage.

", - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#CopyImageResult": { - "type": "structure", - "members": { - "ImageId": { + }, + "SelfServicePortalUrl": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The ID of the new AMI.

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

Contains the output of CopyImage.

", - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#CopySnapshot": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CopySnapshotRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CopySnapshotResult" - }, - "traits": { - "smithy.api#documentation": "

Copies a point-in-time snapshot of an EBS volume and stores it in Amazon S3. You can copy a\n snapshot within the same Region, from one Region to another, or from a Region to an Outpost. \n You can't copy a snapshot from an Outpost to a Region, from one Outpost to another, or within \n the same Outpost.

\n

You can use the snapshot to create EBS volumes or Amazon Machine Images (AMIs).

\n

When copying snapshots to a Region, copies of encrypted EBS snapshots remain encrypted. \n \tCopies of unencrypted snapshots remain unencrypted, unless you enable encryption for the \n \tsnapshot copy operation. By default, encrypted snapshot copies use the default Key Management Service (KMS) \n \tKMS key; however, you can specify a different KMS key. To copy an encrypted \n \tsnapshot that has been shared from another account, you must have permissions for the KMS key \n \tused to encrypt the snapshot.

\n

Snapshots copied to an Outpost are encrypted by default using the default\n \t\tencryption key for the Region, or a different key that you specify in the request using \n \t\tKmsKeyId. Outposts do not support unencrypted \n \t snapshots. For more information, \n \t\t\tAmazon EBS local snapshots on Outposts in the Amazon EBS User Guide.

\n

Snapshots created by copying another snapshot have an arbitrary volume ID that should not\n be used for any purpose.

\n

For more information, see Copy an Amazon EBS snapshot in the\n Amazon EBS User Guide.

", - "smithy.api#examples": [ - { - "title": "To copy a snapshot", - "documentation": "This example copies a snapshot with the snapshot ID of ``snap-066877671789bd71b`` from the ``us-west-2`` region to the ``us-east-1`` region and adds a short description to identify the snapshot.", - "input": { - "SourceRegion": "us-west-2", - "SourceSnapshotId": "snap-066877671789bd71b", - "Description": "This is my copied snapshot.", - "DestinationRegion": "us-east-1" - }, - "output": { - "SnapshotId": "snap-066877671789bd71b" - } - } - ] - } - }, - "com.amazonaws.ec2#CopySnapshotRequest": { - "type": "structure", - "members": { - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

A description for the EBS snapshot.

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

The Amazon Resource Name (ARN) of the Outpost to which to copy the snapshot. Only \n\t\tspecify this parameter when copying a snapshot from an Amazon Web Services Region to an Outpost. \n\t\tThe snapshot must be in the Region for the destination Outpost. You cannot copy a \n\t\tsnapshot from an Outpost to a Region, from one Outpost to another, or within the same \n\t\tOutpost.

\n

For more information, see \n \t\tCopy snapshots from an Amazon Web Services Region to an Outpost in the \n \t\tAmazon EBS User Guide.

" - } - }, - "DestinationRegion": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "DestinationRegion", - "smithy.api#documentation": "

The destination Region to use in the PresignedUrl parameter of a snapshot\n copy operation. This parameter is only valid for specifying the destination Region in a\n PresignedUrl parameter, where it is required.

\n

The snapshot copy is sent to the regional endpoint that you sent the HTTP\n \trequest to (for example, ec2.us-east-1.amazonaws.com). With the CLI, this is\n specified using the --region parameter or the default Region in your Amazon Web Services\n configuration file.

", - "smithy.api#xmlName": "destinationRegion" + "aws.protocols#ec2QueryName": "SelfServicePortalUrl", + "smithy.api#documentation": "

The URL of the self-service portal.

", + "smithy.api#xmlName": "selfServicePortalUrl" } }, - "Encrypted": { - "target": "com.amazonaws.ec2#Boolean", + "ClientConnectOptions": { + "target": "com.amazonaws.ec2#ClientConnectResponseOptions", "traits": { - "aws.protocols#ec2QueryName": "Encrypted", - "smithy.api#documentation": "

To encrypt a copy of an unencrypted snapshot if encryption by default is not enabled, \n enable encryption using this parameter. Otherwise, omit this parameter. Encrypted snapshots \n are encrypted, even if you omit this parameter and encryption by default is not enabled. You \n cannot set this parameter to false. For more information, see Amazon EBS encryption in the \n Amazon EBS User Guide.

", - "smithy.api#xmlName": "encrypted" + "aws.protocols#ec2QueryName": "ClientConnectOptions", + "smithy.api#documentation": "

The options for managing connection authorization for new client connections.

", + "smithy.api#xmlName": "clientConnectOptions" } }, - "KmsKeyId": { - "target": "com.amazonaws.ec2#KmsKeyId", + "SessionTimeoutHours": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "KmsKeyId", - "smithy.api#documentation": "

The identifier of the Key Management Service (KMS) KMS key to use for Amazon EBS encryption.\n If this parameter is not specified, your KMS key for Amazon EBS is used. If KmsKeyId is\n specified, the encrypted state must be true.

\n

You can specify the KMS key using any of the following:

\n \n

Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an ID, alias, or ARN that is not valid, \n the action can appear to complete, but eventually fails.

", - "smithy.api#xmlName": "kmsKeyId" + "aws.protocols#ec2QueryName": "SessionTimeoutHours", + "smithy.api#documentation": "

The maximum VPN session duration time in hours.

\n

Valid values: 8 | 10 | 12 | 24\n

\n

Default value: 24\n

", + "smithy.api#xmlName": "sessionTimeoutHours" } }, - "PresignedUrl": { - "target": "com.amazonaws.ec2#CopySnapshotRequestPSU", + "ClientLoginBannerOptions": { + "target": "com.amazonaws.ec2#ClientLoginBannerResponseOptions", "traits": { - "aws.protocols#ec2QueryName": "PresignedUrl", - "smithy.api#documentation": "

When you copy an encrypted source snapshot using the Amazon EC2 Query API, you must supply a\n pre-signed URL. This parameter is optional for unencrypted snapshots. For more information,\n see Query\n requests.

\n

The PresignedUrl should use the snapshot source endpoint, the\n CopySnapshot action, and include the SourceRegion,\n SourceSnapshotId, and DestinationRegion parameters. The\n PresignedUrl must be signed using Amazon Web Services Signature Version 4. Because EBS\n snapshots are stored in Amazon S3, the signing algorithm for this parameter uses the same logic\n that is described in Authenticating Requests: Using Query\n Parameters (Amazon Web Services Signature Version 4) in the Amazon Simple Storage Service API Reference. An\n invalid or improperly signed PresignedUrl will cause the copy operation to fail\n asynchronously, and the snapshot will move to an error state.

", - "smithy.api#xmlName": "presignedUrl" + "aws.protocols#ec2QueryName": "ClientLoginBannerOptions", + "smithy.api#documentation": "

Options for enabling a customizable text banner that will be displayed on Amazon Web Services provided clients when a VPN session is\n\t\t\testablished.

", + "smithy.api#xmlName": "clientLoginBannerOptions" } }, - "SourceRegion": { - "target": "com.amazonaws.ec2#String", + "ClientRouteEnforcementOptions": { + "target": "com.amazonaws.ec2#ClientRouteEnforcementResponseOptions", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Region that contains the snapshot to be copied.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "ClientRouteEnforcementOptions", + "smithy.api#documentation": "

Client route enforcement is a feature of the Client VPN service that helps enforce administrator defined routes on devices connected through the VPN. T\n\t\this feature helps improve your security posture by ensuring that network traffic originating from a connected client is not inadvertently sent outside the VPN tunnel.

\n

Client route enforcement works by monitoring the route table of a connected device for routing policy changes to the VPN connection. If the feature detects any VPN routing policy modifications, it will automatically force an update to the route table, \n\t\t\treverting it back to the expected route configurations.

", + "smithy.api#xmlName": "clientRouteEnforcementOptions" } }, - "SourceSnapshotId": { - "target": "com.amazonaws.ec2#String", + "DisconnectOnSessionTimeout": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the EBS snapshot to copy.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "DisconnectOnSessionTimeout", + "smithy.api#documentation": "

Indicates whether the client VPN session is disconnected after the maximum sessionTimeoutHours is reached. If true, users are prompted to reconnect client VPN. If false, client VPN attempts to reconnect automatically. The default value is true.

", + "smithy.api#xmlName": "disconnectOnSessionTimeout" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "EndpointIpAddressType": { + "target": "com.amazonaws.ec2#EndpointIpAddressType", "traits": { - "smithy.api#documentation": "

The tags to apply to the new snapshot.

", - "smithy.api#xmlName": "TagSpecification" + "aws.protocols#ec2QueryName": "EndpointIpAddressType", + "smithy.api#documentation": "

The IP address type of the Client VPN endpoint. Possible values are ipv4 for IPv4 addressing only, ipv6 for IPv6 addressing only, or dual-stack for both IPv4 and IPv6 addressing.

", + "smithy.api#xmlName": "endpointIpAddressType" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "TrafficIpAddressType": { + "target": "com.amazonaws.ec2#TrafficIpAddressType", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

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

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "TrafficIpAddressType", + "smithy.api#documentation": "

The IP address type of the Client VPN endpoint. Possible values are either ipv4 for IPv4 addressing only, ipv6 for IPv6 addressing only, or dual-stack for both IPv4 and IPv6 addressing.

", + "smithy.api#xmlName": "trafficIpAddressType" } } }, "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#CopySnapshotRequestPSU": { - "type": "string", - "traits": { - "smithy.api#sensitive": {} + "smithy.api#documentation": "

Describes a Client VPN endpoint.

" } }, - "com.amazonaws.ec2#CopySnapshotResult": { + "com.amazonaws.ec2#ClientVpnEndpointAttributeStatus": { "type": "structure", "members": { - "SnapshotId": { - "target": "com.amazonaws.ec2#String", + "Code": { + "target": "com.amazonaws.ec2#ClientVpnEndpointAttributeStatusCode", "traits": { - "aws.protocols#ec2QueryName": "SnapshotId", - "smithy.api#documentation": "

The ID of the new snapshot.

", - "smithy.api#xmlName": "snapshotId" + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The status code.

", + "smithy.api#xmlName": "code" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "Message": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags applied to the new snapshot.

", - "smithy.api#xmlName": "tagSet" + "aws.protocols#ec2QueryName": "Message", + "smithy.api#documentation": "

The status message.

", + "smithy.api#xmlName": "message" } } }, "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#CopyTagsFromSource": { - "type": "enum", - "members": { - "volume": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "volume" - } - } - } - }, - "com.amazonaws.ec2#CoreCount": { - "type": "integer" - }, - "com.amazonaws.ec2#CoreCountList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#CoreCount", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

Describes the status of the Client VPN endpoint attribute.

" } }, - "com.amazonaws.ec2#CoreNetworkArn": { - "type": "string" - }, - "com.amazonaws.ec2#CpuManufacturer": { + "com.amazonaws.ec2#ClientVpnEndpointAttributeStatusCode": { "type": "enum", "members": { - "INTEL": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "intel" - } - }, - "AMD": { + "applying": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "amd" + "smithy.api#enumValue": "applying" } }, - "AMAZON_WEB_SERVICES": { + "applied": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "amazon-web-services" + "smithy.api#enumValue": "applied" } } } }, - "com.amazonaws.ec2#CpuManufacturerName": { + "com.amazonaws.ec2#ClientVpnEndpointId": { "type": "string" }, - "com.amazonaws.ec2#CpuManufacturerSet": { + "com.amazonaws.ec2#ClientVpnEndpointIdList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#CpuManufacturer", + "target": "com.amazonaws.ec2#ClientVpnEndpointId", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#CpuOptions": { + "com.amazonaws.ec2#ClientVpnEndpointStatus": { "type": "structure", "members": { - "CoreCount": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "CoreCount", - "smithy.api#documentation": "

The number of CPU cores for the instance.

", - "smithy.api#xmlName": "coreCount" - } - }, - "ThreadsPerCore": { - "target": "com.amazonaws.ec2#Integer", + "Code": { + "target": "com.amazonaws.ec2#ClientVpnEndpointStatusCode", "traits": { - "aws.protocols#ec2QueryName": "ThreadsPerCore", - "smithy.api#documentation": "

The number of threads per CPU core.

", - "smithy.api#xmlName": "threadsPerCore" + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The state of the Client VPN endpoint. Possible states include:

\n ", + "smithy.api#xmlName": "code" } }, - "AmdSevSnp": { - "target": "com.amazonaws.ec2#AmdSevSnpSpecification", + "Message": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AmdSevSnp", - "smithy.api#documentation": "

Indicates whether the instance is enabled for AMD SEV-SNP. For more information, see \n AMD SEV-SNP.

", - "smithy.api#xmlName": "amdSevSnp" + "aws.protocols#ec2QueryName": "Message", + "smithy.api#documentation": "

A message about the status of the Client VPN endpoint.

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

The CPU options for the instance.

" + "smithy.api#documentation": "

Describes the state of a Client VPN endpoint.

" } }, - "com.amazonaws.ec2#CpuOptionsRequest": { - "type": "structure", + "com.amazonaws.ec2#ClientVpnEndpointStatusCode": { + "type": "enum", "members": { - "CoreCount": { - "target": "com.amazonaws.ec2#Integer", + "pending_associate": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The number of CPU cores for the instance.

" + "smithy.api#enumValue": "pending-associate" } }, - "ThreadsPerCore": { - "target": "com.amazonaws.ec2#Integer", + "available": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The number of threads per CPU core. To disable multithreading for the instance,\n specify a value of 1. Otherwise, specify the default value of\n 2.

" + "smithy.api#enumValue": "available" } }, - "AmdSevSnp": { - "target": "com.amazonaws.ec2#AmdSevSnpSpecification", + "deleting": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported \n with M6a, R6a, and C6a instance types only. For more information, see \n AMD SEV-SNP.

" + "smithy.api#enumValue": "deleting" + } + }, + "deleted": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "deleted" } } - }, - "traits": { - "smithy.api#documentation": "

The CPU options for the instance. Both the core count and threads per core must be\n specified in the request.

" - } - }, - "com.amazonaws.ec2#CreateCapacityReservation": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateCapacityReservationRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateCapacityReservationResult" - }, - "traits": { - "smithy.api#documentation": "

Creates a new Capacity Reservation with the specified attributes.

\n

Capacity Reservations enable you to reserve capacity for your Amazon EC2 instances in a specific Availability Zone for any duration. This \n\t\t\tgives you the flexibility to selectively add capacity reservations and still get the Regional RI discounts for that usage. \n\t\t\tBy creating Capacity Reservations, you ensure that you always have access to Amazon EC2 capacity when you need it, for as long as you need it. \n\t\t\tFor more information, see Capacity Reservations in the Amazon EC2 User Guide.

\n

Your request to create a Capacity Reservation could fail if Amazon EC2 does not have sufficient capacity to\n\t\t\tfulfill the request. If your request fails due to Amazon EC2 capacity constraints, either try\n\t\t\tagain at a later time, try in a different Availability Zone, or request a smaller\n\t\t\tcapacity reservation. If your application is flexible across instance types and sizes,\n\t\t\ttry to create a Capacity Reservation with different instance attributes.

\n

Your request could also fail if the requested quantity exceeds your On-Demand Instance\n\t\t\tlimit for the selected instance type. If your request fails due to limit constraints,\n\t\t\tincrease your On-Demand Instance limit for the required instance type and try again. For\n\t\t\tmore information about increasing your instance limits, see Amazon EC2 Service\n\t\t\t\tQuotas in the Amazon EC2 User Guide.

" - } - }, - "com.amazonaws.ec2#CreateCapacityReservationFleet": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateCapacityReservationFleetRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateCapacityReservationFleetResult" - }, - "traits": { - "smithy.api#documentation": "

Creates a Capacity Reservation Fleet. For more information, see Create a Capacity \n\t\t\tReservation Fleet in the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#CreateCapacityReservationFleetRequest": { + "com.amazonaws.ec2#ClientVpnRoute": { "type": "structure", "members": { - "AllocationStrategy": { + "ClientVpnEndpointId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The strategy used by the Capacity Reservation Fleet to determine which of the \n\t\t\tspecified instance types to use. Currently, only the prioritized \n\t\t\tallocation strategy is supported. For more information, see \n\t\t\t\tAllocation strategy in the Amazon EC2 User Guide.

\n

Valid values: prioritized\n

" + "aws.protocols#ec2QueryName": "ClientVpnEndpointId", + "smithy.api#documentation": "

The ID of the Client VPN endpoint with which the route is associated.

", + "smithy.api#xmlName": "clientVpnEndpointId" } }, - "ClientToken": { + "DestinationCidr": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

", - "smithy.api#idempotencyToken": {} + "aws.protocols#ec2QueryName": "DestinationCidr", + "smithy.api#documentation": "

The IPv4 address range, in CIDR notation, of the route destination.

", + "smithy.api#xmlName": "destinationCidr" } }, - "InstanceTypeSpecifications": { - "target": "com.amazonaws.ec2#ReservationFleetInstanceSpecificationList", + "TargetSubnet": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Information about the instance types for which to reserve the capacity.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "InstanceTypeSpecification" + "aws.protocols#ec2QueryName": "TargetSubnet", + "smithy.api#documentation": "

The ID of the subnet through which traffic is routed.

", + "smithy.api#xmlName": "targetSubnet" } }, - "Tenancy": { - "target": "com.amazonaws.ec2#FleetCapacityReservationTenancy", + "Type": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Indicates the tenancy of the Capacity Reservation Fleet. All Capacity Reservations \n\t\t\tin the Fleet inherit this tenancy. The Capacity Reservation Fleet can have one of \n\t\t\tthe following tenancy settings:

\n " + "aws.protocols#ec2QueryName": "Type", + "smithy.api#documentation": "

The route type.

", + "smithy.api#xmlName": "type" } }, - "TotalTargetCapacity": { - "target": "com.amazonaws.ec2#Integer", + "Origin": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The total number of capacity units to be reserved by the Capacity Reservation Fleet. This \n\t\t\tvalue, together with the instance type weights that you assign to each instance type used by \n\t\t\tthe Fleet determine the number of instances for which the Fleet reserves capacity. Both values \n\t\t\tare based on units that make sense for your workload. For more information, see \n\t\t\t\tTotal target capacity in the Amazon EC2 User Guide.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Origin", + "smithy.api#documentation": "

Indicates how the route was associated with the Client VPN endpoint. \n\t\t\tassociate indicates that the route was automatically added when the target network \n\t\t\twas associated with the Client VPN endpoint. add-route indicates that the route \n\t\t\twas manually added using the CreateClientVpnRoute action.

", + "smithy.api#xmlName": "origin" } }, - "EndDate": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "Status": { + "target": "com.amazonaws.ec2#ClientVpnRouteStatus", "traits": { - "smithy.api#documentation": "

The date and time at which the Capacity Reservation Fleet expires. When the Capacity \n\t\t\tReservation Fleet expires, its state changes to expired and all of the Capacity \n\t\t\tReservations in the Fleet expire.

\n

The Capacity Reservation Fleet expires within an hour after the specified time. For example, \n\t\t\tif you specify 5/31/2019, 13:30:55, the Capacity Reservation Fleet \n\t\t\tis guaranteed to expire between 13:30:55 and 14:30:55 on \n\t\t\t5/31/2019.\n\t\t

" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The current state of the route.

", + "smithy.api#xmlName": "status" } }, - "InstanceMatchCriteria": { - "target": "com.amazonaws.ec2#FleetInstanceMatchCriteria", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Indicates the type of instance launches that the Capacity Reservation Fleet accepts. All \n\t\t\tCapacity Reservations in the Fleet inherit this instance matching criteria.

\n

Currently, Capacity Reservation Fleets support open instance matching criteria \n\t\t\tonly. This means that instances that have matching attributes (instance type, platform, and \n\t\t\tAvailability Zone) run in the Capacity Reservations automatically. Instances do not need to \n\t\t\texplicitly target a Capacity Reservation Fleet to use its reserved capacity.

" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A brief description of the route.

", + "smithy.api#xmlName": "description" } - }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + } + }, + "traits": { + "smithy.api#documentation": "

Information about a Client VPN endpoint route.

" + } + }, + "com.amazonaws.ec2#ClientVpnRouteSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ClientVpnRoute", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ClientVpnRouteStatus": { + "type": "structure", + "members": { + "Code": { + "target": "com.amazonaws.ec2#ClientVpnRouteStatusCode", "traits": { - "smithy.api#documentation": "

The tags to assign to the Capacity Reservation Fleet. The tags are automatically assigned \n\t\t\tto the Capacity Reservations in the Fleet.

", - "smithy.api#xmlName": "TagSpecification" + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The state of the Client VPN endpoint route.

", + "smithy.api#xmlName": "code" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Message": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

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

" + "aws.protocols#ec2QueryName": "Message", + "smithy.api#documentation": "

A message about the status of the Client VPN endpoint route, if applicable.

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

Describes the state of a Client VPN endpoint route.

" } }, - "com.amazonaws.ec2#CreateCapacityReservationFleetResult": { - "type": "structure", + "com.amazonaws.ec2#ClientVpnRouteStatusCode": { + "type": "enum", "members": { - "CapacityReservationFleetId": { - "target": "com.amazonaws.ec2#CapacityReservationFleetId", + "creating": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationFleetId", - "smithy.api#documentation": "

The ID of the Capacity Reservation Fleet.

", - "smithy.api#xmlName": "capacityReservationFleetId" + "smithy.api#enumValue": "creating" } }, - "State": { - "target": "com.amazonaws.ec2#CapacityReservationFleetState", + "active": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The status of the Capacity Reservation Fleet.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "active" } }, - "TotalTargetCapacity": { - "target": "com.amazonaws.ec2#Integer", + "failed": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TotalTargetCapacity", - "smithy.api#documentation": "

The total number of capacity units for which the Capacity Reservation Fleet reserves capacity.

", - "smithy.api#xmlName": "totalTargetCapacity" + "smithy.api#enumValue": "failed" } }, - "TotalFulfilledCapacity": { - "target": "com.amazonaws.ec2#Double", + "deleting": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TotalFulfilledCapacity", - "smithy.api#documentation": "

The requested capacity units that have been successfully reserved.

", - "smithy.api#xmlName": "totalFulfilledCapacity" + "smithy.api#enumValue": "deleting" } - }, - "InstanceMatchCriteria": { - "target": "com.amazonaws.ec2#FleetInstanceMatchCriteria", + } + } + }, + "com.amazonaws.ec2#ClientVpnSecurityGroupIdSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#SecurityGroupId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#CloudWatchLogGroupArn": { + "type": "string" + }, + "com.amazonaws.ec2#CloudWatchLogOptions": { + "type": "structure", + "members": { + "LogEnabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "InstanceMatchCriteria", - "smithy.api#documentation": "

The instance matching criteria for the Capacity Reservation Fleet.

", - "smithy.api#xmlName": "instanceMatchCriteria" + "aws.protocols#ec2QueryName": "LogEnabled", + "smithy.api#documentation": "

Status of VPN tunnel logging feature. Default value is False.

\n

Valid values: True | False\n

", + "smithy.api#xmlName": "logEnabled" } }, - "AllocationStrategy": { + "LogGroupArn": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AllocationStrategy", - "smithy.api#documentation": "

The allocation strategy used by the Capacity Reservation Fleet.

", - "smithy.api#xmlName": "allocationStrategy" - } - }, - "CreateTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "aws.protocols#ec2QueryName": "CreateTime", - "smithy.api#documentation": "

The date and time at which the Capacity Reservation Fleet was created.

", - "smithy.api#xmlName": "createTime" + "aws.protocols#ec2QueryName": "LogGroupArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the CloudWatch log group to send logs to.

", + "smithy.api#xmlName": "logGroupArn" } }, - "EndDate": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "LogOutputFormat": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "EndDate", - "smithy.api#documentation": "

The date and time at which the Capacity Reservation Fleet expires.

", - "smithy.api#xmlName": "endDate" + "aws.protocols#ec2QueryName": "LogOutputFormat", + "smithy.api#documentation": "

Configured log format. Default format is json.

\n

Valid values: json | text\n

", + "smithy.api#xmlName": "logOutputFormat" } - }, - "Tenancy": { - "target": "com.amazonaws.ec2#FleetCapacityReservationTenancy", + } + }, + "traits": { + "smithy.api#documentation": "

Options for sending VPN tunnel logs to CloudWatch.

" + } + }, + "com.amazonaws.ec2#CloudWatchLogOptionsSpecification": { + "type": "structure", + "members": { + "LogEnabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Tenancy", - "smithy.api#documentation": "

Indicates the tenancy of Capacity Reservation Fleet.

", - "smithy.api#xmlName": "tenancy" + "smithy.api#documentation": "

Enable or disable VPN tunnel logging feature. Default value is False.

\n

Valid values: True | False\n

" } }, - "FleetCapacityReservations": { - "target": "com.amazonaws.ec2#FleetCapacityReservationSet", + "LogGroupArn": { + "target": "com.amazonaws.ec2#CloudWatchLogGroupArn", "traits": { - "aws.protocols#ec2QueryName": "FleetCapacityReservationSet", - "smithy.api#documentation": "

Information about the individual Capacity Reservations in the Capacity Reservation Fleet.

", - "smithy.api#xmlName": "fleetCapacityReservationSet" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the CloudWatch log group to send logs to.

" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "LogOutputFormat": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags assigned to the Capacity Reservation Fleet.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#documentation": "

Set log format. Default format is json.

\n

Valid values: json | text\n

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

Options for sending VPN tunnel logs to CloudWatch.

" } }, - "com.amazonaws.ec2#CreateCapacityReservationRequest": { + "com.amazonaws.ec2#CoipAddressUsage": { "type": "structure", "members": { - "ClientToken": { + "AllocationId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

" + "aws.protocols#ec2QueryName": "AllocationId", + "smithy.api#documentation": "

The allocation ID of the address.

", + "smithy.api#xmlName": "allocationId" } }, - "InstanceType": { + "AwsAccountId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The instance type for which to reserve capacity. For more information, see Instance types in the Amazon EC2 User Guide.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "AwsAccountId", + "smithy.api#documentation": "

The Amazon Web Services account ID.

", + "smithy.api#xmlName": "awsAccountId" } }, - "InstancePlatform": { - "target": "com.amazonaws.ec2#CapacityReservationInstancePlatform", + "AwsService": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of operating system for which to reserve capacity.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "AwsService", + "smithy.api#documentation": "

The Amazon Web Services service.

", + "smithy.api#xmlName": "awsService" } }, - "AvailabilityZone": { - "target": "com.amazonaws.ec2#AvailabilityZoneName", + "CoIp": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The Availability Zone in which to create the Capacity Reservation.

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

The ID of the Availability Zone in which to create the Capacity Reservation.

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

Indicates the tenancy of the Capacity Reservation. A Capacity Reservation can have one of the following tenancy settings:

\n " - } - }, - "InstanceCount": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The number of instances for which to reserve capacity.

\n

Valid range: 1 - 1000

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

Indicates whether the Capacity Reservation supports EBS-optimized instances. This optimization provides\n\t\t\tdedicated throughput to Amazon EBS and an optimized configuration stack to provide\n\t\t\toptimal I/O performance. This optimization isn't available with all instance types.\n\t\t\tAdditional usage charges apply when using an EBS- optimized instance.

" + "aws.protocols#ec2QueryName": "CoIp", + "smithy.api#documentation": "

The customer-owned IP address.

", + "smithy.api#xmlName": "coIp" } - }, - "EphemeralStorage": { - "target": "com.amazonaws.ec2#Boolean", + } + }, + "traits": { + "smithy.api#documentation": "

Describes address usage for a customer-owned address pool.

" + } + }, + "com.amazonaws.ec2#CoipAddressUsageSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CoipAddressUsage", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#CoipCidr": { + "type": "structure", + "members": { + "Cidr": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

\n Deprecated.\n

" + "aws.protocols#ec2QueryName": "Cidr", + "smithy.api#documentation": "

\n An address range in a customer-owned IP address space.\n

", + "smithy.api#xmlName": "cidr" } }, - "EndDate": { - "target": "com.amazonaws.ec2#DateTime", + "CoipPoolId": { + "target": "com.amazonaws.ec2#Ipv4PoolCoipId", "traits": { - "smithy.api#documentation": "

The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity\n\t\t\tis released and you can no longer launch instances into it. The Capacity Reservation's state changes to\n\t\t\t\texpired when it reaches its end date and time.

\n

You must provide an EndDate value if EndDateType is\n\t\t\t\tlimited. Omit EndDate if EndDateType is\n\t\t\t\tunlimited.

\n

If the EndDateType is limited, the Capacity Reservation is cancelled within an hour from the specified time. For example, if you specify \n\t\t\t5/31/2019, 13:30:55, the Capacity Reservation is guaranteed to end between 13:30:55 and 14:30:55 on 5/31/2019.

" + "aws.protocols#ec2QueryName": "CoipPoolId", + "smithy.api#documentation": "

\n The ID of the address pool.\n

", + "smithy.api#xmlName": "coipPoolId" } }, - "EndDateType": { - "target": "com.amazonaws.ec2#EndDateType", + "LocalGatewayRouteTableId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Indicates the way in which the Capacity Reservation ends. A Capacity Reservation can have one of the following end\n\t\t\ttypes:

\n " + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableId", + "smithy.api#documentation": "

\n The ID of the local gateway route table.\n

", + "smithy.api#xmlName": "localGatewayRouteTableId" } - }, - "InstanceMatchCriteria": { - "target": "com.amazonaws.ec2#InstanceMatchCriteria", + } + }, + "traits": { + "smithy.api#documentation": "

\n Information about a customer-owned IP address range.\n

" + } + }, + "com.amazonaws.ec2#CoipPool": { + "type": "structure", + "members": { + "PoolId": { + "target": "com.amazonaws.ec2#Ipv4PoolCoipId", "traits": { - "smithy.api#documentation": "

Indicates the type of instance launches that the Capacity Reservation accepts. The options\n\t\t\tinclude:

\n \n

Default: open\n

" + "aws.protocols#ec2QueryName": "PoolId", + "smithy.api#documentation": "

The ID of the address pool.

", + "smithy.api#xmlName": "poolId" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "PoolCidrs": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

The tags to apply to the Capacity Reservation during launch.

" + "aws.protocols#ec2QueryName": "PoolCidrSet", + "smithy.api#documentation": "

The address ranges of the address pool.

", + "smithy.api#xmlName": "poolCidrSet" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "LocalGatewayRouteTableId": { + "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", "traits": { - "smithy.api#documentation": "

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

" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableId", + "smithy.api#documentation": "

The ID of the local gateway route table.

", + "smithy.api#xmlName": "localGatewayRouteTableId" } }, - "OutpostArn": { - "target": "com.amazonaws.ec2#OutpostArn", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#documentation": "

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

" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags.

", + "smithy.api#xmlName": "tagSet" } }, - "PlacementGroupArn": { - "target": "com.amazonaws.ec2#PlacementGroupArn", + "PoolArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "smithy.api#documentation": "

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

" + "aws.protocols#ec2QueryName": "PoolArn", + "smithy.api#documentation": "

The ARN of the address pool.

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

Describes a customer-owned address pool.

" } }, - "com.amazonaws.ec2#CreateCapacityReservationResult": { - "type": "structure", - "members": { - "CapacityReservation": { - "target": "com.amazonaws.ec2#CapacityReservation", - "traits": { - "aws.protocols#ec2QueryName": "CapacityReservation", - "smithy.api#documentation": "

Information about the Capacity Reservation.

", - "smithy.api#xmlName": "capacityReservation" - } + "com.amazonaws.ec2#CoipPoolId": { + "type": "string" + }, + "com.amazonaws.ec2#CoipPoolIdSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Ipv4PoolCoipId", + "traits": { + "smithy.api#xmlName": "item" } - }, + } + }, + "com.amazonaws.ec2#CoipPoolMaxResults": { + "type": "integer", "traits": { - "smithy.api#output": {} + "smithy.api#range": { + "min": 5, + "max": 1000 + } } }, - "com.amazonaws.ec2#CreateCarrierGateway": { + "com.amazonaws.ec2#CoipPoolSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CoipPool", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ComponentAccount": { + "type": "string", + "traits": { + "smithy.api#pattern": "^\\d{12}$" + } + }, + "com.amazonaws.ec2#ComponentRegion": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[a-z]{2}-[a-z]+-[1-9]+$" + } + }, + "com.amazonaws.ec2#ConfirmProductInstance": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateCarrierGatewayRequest" + "target": "com.amazonaws.ec2#ConfirmProductInstanceRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateCarrierGatewayResult" + "target": "com.amazonaws.ec2#ConfirmProductInstanceResult" }, "traits": { - "smithy.api#documentation": "

Creates a carrier gateway. For more information about carrier gateways, see Carrier gateways in the Amazon Web Services Wavelength Developer Guide.

" + "smithy.api#documentation": "

Determines whether a product code is associated with an instance. This action can only\n be used by the owner of the product code. It is useful when a product code owner must\n verify whether another user's instance is eligible for support.

", + "smithy.api#examples": [ + { + "title": "To confirm the product instance", + "documentation": "This example determines whether the specified product code is associated with the specified instance.", + "input": { + "ProductCode": "774F4FF8", + "InstanceId": "i-1234567890abcdef0" + }, + "output": { + "OwnerId": "123456789012" + } + } + ] } }, - "com.amazonaws.ec2#CreateCarrierGatewayRequest": { + "com.amazonaws.ec2#ConfirmProductInstanceRequest": { "type": "structure", "members": { - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC to associate with the carrier gateway.

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

The ID of the instance.

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

The tags to associate with the carrier gateway.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The product code. This must be a product code that you own.

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

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

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

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see How to ensure\n idempotency.

", - "smithy.api#idempotencyToken": {} + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

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

", + "smithy.api#xmlName": "dryRun" } } }, @@ -14247,15 +14792,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateCarrierGatewayResult": { + "com.amazonaws.ec2#ConfirmProductInstanceResult": { "type": "structure", "members": { - "CarrierGateway": { - "target": "com.amazonaws.ec2#CarrierGateway", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "CarrierGateway", - "smithy.api#documentation": "

Information about the carrier gateway.

", - "smithy.api#xmlName": "carrierGateway" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

The return value of the request. Returns true if the specified product\n code is owned by the requester and associated with the specified instance.

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

The Amazon Web Services account ID of the instance owner. This is only present if the\n product code is attached to the instance.

", + "smithy.api#xmlName": "ownerId" } } }, @@ -14263,349 +14816,499 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateClientVpnEndpoint": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateClientVpnEndpointRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateClientVpnEndpointResult" - }, - "traits": { - "smithy.api#documentation": "

Creates a Client VPN endpoint. A Client VPN endpoint is the resource you create and configure to \n\t\t\tenable and manage client VPN sessions. It is the destination endpoint at which all client VPN sessions \n\t\t\tare terminated.

" - } - }, - "com.amazonaws.ec2#CreateClientVpnEndpointRequest": { + "com.amazonaws.ec2#ConnectionLogOptions": { "type": "structure", "members": { - "ClientCidrBlock": { - "target": "com.amazonaws.ec2#String", + "Enabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IPv4 address range, in CIDR notation, from which to assign client IP addresses. The address range cannot overlap with the local CIDR of the VPC in which the associated subnet is located, or the routes that you add manually. The address range cannot be changed after the Client VPN endpoint has been created. Client CIDR range must have a size of at least /22 and must not be greater than /12.

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

Indicates whether connection logging is enabled.

" } }, - "ServerCertificateArn": { + "CloudwatchLogGroup": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ARN of the server certificate. For more information, see \n\t\t\tthe Certificate Manager User Guide.

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

The name of the CloudWatch Logs log group. Required if connection logging is enabled.

" } }, - "AuthenticationOptions": { - "target": "com.amazonaws.ec2#ClientVpnAuthenticationRequestList", + "CloudwatchLogStream": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Information about the authentication method to be used to authenticate clients.

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

The name of the CloudWatch Logs log stream to which the connection data is published.

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

Describes the client connection logging options for the Client VPN endpoint.

" + } + }, + "com.amazonaws.ec2#ConnectionLogResponseOptions": { + "type": "structure", + "members": { + "Enabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Information about the client connection logging options.

\n

If you enable client connection logging, data about client connections is sent to a\n\t\t\tCloudwatch Logs log stream. The following information is logged:

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

Indicates whether client connection logging is enabled for the Client VPN endpoint.

" } }, - "DnsServers": { - "target": "com.amazonaws.ec2#ValueStringList", + "CloudwatchLogGroup": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Information about the DNS servers to be used for DNS resolution. A Client VPN endpoint can\n\t\t\thave up to two DNS servers. If no DNS server is specified, the DNS address configured on the device is used for the DNS server.

" + "smithy.api#documentation": "

The name of the Amazon CloudWatch Logs log group to which connection logging data is published.

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

The transport protocol to be used by the VPN session.

\n

Default value: udp\n

" + "smithy.api#documentation": "

The name of the Amazon CloudWatch Logs log stream to which connection logging data is published.

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

Information about the client connection logging options for a Client VPN endpoint.

" + } + }, + "com.amazonaws.ec2#ConnectionNotification": { + "type": "structure", + "members": { + "ConnectionNotificationId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The port number to assign to the Client VPN endpoint for TCP and UDP traffic.

\n

Valid Values: 443 | 1194\n

\n

Default Value: 443\n

" + "aws.protocols#ec2QueryName": "ConnectionNotificationId", + "smithy.api#documentation": "

The ID of the notification.

", + "smithy.api#xmlName": "connectionNotificationId" } }, - "Description": { + "ServiceId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

A brief description of the Client VPN endpoint.

" + "aws.protocols#ec2QueryName": "ServiceId", + "smithy.api#documentation": "

The ID of the endpoint service.

", + "smithy.api#xmlName": "serviceId" } }, - "SplitTunnel": { - "target": "com.amazonaws.ec2#Boolean", + "VpcEndpointId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Indicates whether split-tunnel is enabled on the Client VPN endpoint.

\n

By default, split-tunnel on a VPN endpoint is disabled.

\n

For information about split-tunnel VPN endpoints, see Split-tunnel Client VPN endpoint in the \n\t\t\tClient VPN Administrator Guide.

" + "aws.protocols#ec2QueryName": "VpcEndpointId", + "smithy.api#documentation": "

The ID of the VPC endpoint.

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

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

" + "aws.protocols#ec2QueryName": "ConnectionNotificationType", + "smithy.api#documentation": "

The type of notification.

", + "smithy.api#xmlName": "connectionNotificationType" } }, - "ClientToken": { + "ConnectionNotificationArn": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", - "smithy.api#idempotencyToken": {} + "aws.protocols#ec2QueryName": "ConnectionNotificationArn", + "smithy.api#documentation": "

The ARN of the SNS topic for the notification.

", + "smithy.api#xmlName": "connectionNotificationArn" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "ConnectionEvents": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

The tags to apply to the Client VPN endpoint during creation.

", - "smithy.api#xmlName": "TagSpecification" + "aws.protocols#ec2QueryName": "ConnectionEvents", + "smithy.api#documentation": "

The events for the notification. Valid values are Accept,\n Connect, Delete, and Reject.

", + "smithy.api#xmlName": "connectionEvents" } }, - "SecurityGroupIds": { - "target": "com.amazonaws.ec2#ClientVpnSecurityGroupIdSet", + "ConnectionNotificationState": { + "target": "com.amazonaws.ec2#ConnectionNotificationState", "traits": { - "smithy.api#documentation": "

The IDs of one or more security groups to apply to the target network. You must also specify the ID of the VPC that contains the security groups.

", - "smithy.api#xmlName": "SecurityGroupId" + "aws.protocols#ec2QueryName": "ConnectionNotificationState", + "smithy.api#documentation": "

The state of the notification.

", + "smithy.api#xmlName": "connectionNotificationState" } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "ServiceRegion": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The ID of the VPC to associate with the Client VPN endpoint. If no security group IDs are specified in the request, the default security group for the VPC is applied.

" + "aws.protocols#ec2QueryName": "ServiceRegion", + "smithy.api#documentation": "

The Region for the endpoint service.

", + "smithy.api#xmlName": "serviceRegion" } - }, - "SelfServicePortal": { - "target": "com.amazonaws.ec2#SelfServicePortal", + } + }, + "traits": { + "smithy.api#documentation": "

Describes a connection notification for a VPC endpoint or VPC endpoint\n service.

" + } + }, + "com.amazonaws.ec2#ConnectionNotificationId": { + "type": "string" + }, + "com.amazonaws.ec2#ConnectionNotificationIdsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ConnectionNotificationId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ConnectionNotificationSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ConnectionNotification", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ConnectionNotificationState": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Specify whether to enable the self-service portal for the Client VPN endpoint.

\n

Default Value: enabled\n

" + "smithy.api#enumValue": "Enabled" } }, - "ClientConnectOptions": { - "target": "com.amazonaws.ec2#ClientConnectOptions", + "Disabled": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The options for managing connection authorization for new client connections.

" + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.ec2#ConnectionNotificationType": { + "type": "enum", + "members": { + "Topic": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Topic" + } + } + } + }, + "com.amazonaws.ec2#ConnectionTrackingConfiguration": { + "type": "structure", + "members": { + "TcpEstablishedTimeout": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "TcpEstablishedTimeout", + "smithy.api#documentation": "

Timeout (in seconds) for idle TCP\n\t\t\t\t\t\tconnections in an established state. Min: 60 seconds. Max: 432000 seconds (5\n\t\t\t\t\t\tdays). Default: 432000 seconds. Recommended: Less than 432000 seconds.

", + "smithy.api#xmlName": "tcpEstablishedTimeout" } }, - "SessionTimeoutHours": { + "UdpStreamTimeout": { "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The maximum VPN session duration time in hours.

\n

Valid values: 8 | 10 | 12 | 24\n

\n

Default value: 24\n

" + "aws.protocols#ec2QueryName": "UdpStreamTimeout", + "smithy.api#documentation": "

Timeout (in seconds) for idle UDP\n\t\t\t\t\t\tflows classified as streams which have seen more than one request-response\n\t\t\t\t\t\ttransaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180\n\t\t\t\t\t\tseconds.

", + "smithy.api#xmlName": "udpStreamTimeout" } }, - "ClientLoginBannerOptions": { - "target": "com.amazonaws.ec2#ClientLoginBannerOptions", + "UdpTimeout": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

Options for enabling a customizable text banner that will be displayed on\n\t\t\tAmazon Web Services provided clients when a VPN session is established.

" + "aws.protocols#ec2QueryName": "UdpTimeout", + "smithy.api#documentation": "

Timeout (in seconds) for idle UDP flows that\n\t\t\t\t\t\thave seen traffic only in a single direction or a single request-response\n\t\t\t\t\t\ttransaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.

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

A security group connection tracking configuration that enables you to set the idle\n timeout for connection tracking on an Elastic network interface. For more information,\n see Connection tracking timeouts in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#CreateClientVpnEndpointResult": { + "com.amazonaws.ec2#ConnectionTrackingSpecification": { "type": "structure", "members": { - "ClientVpnEndpointId": { - "target": "com.amazonaws.ec2#String", + "TcpEstablishedTimeout": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "ClientVpnEndpointId", - "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", - "smithy.api#xmlName": "clientVpnEndpointId" + "aws.protocols#ec2QueryName": "TcpEstablishedTimeout", + "smithy.api#documentation": "

Timeout (in seconds) for idle TCP\n\t\t\t\t\t\tconnections in an established state. Min: 60 seconds. Max: 432000 seconds (5\n\t\t\t\t\t\tdays). Default: 432000 seconds. Recommended: Less than 432000 seconds.

", + "smithy.api#xmlName": "tcpEstablishedTimeout" } }, - "Status": { - "target": "com.amazonaws.ec2#ClientVpnEndpointStatus", + "UdpTimeout": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The current state of the Client VPN endpoint.

", - "smithy.api#xmlName": "status" + "aws.protocols#ec2QueryName": "UdpTimeout", + "smithy.api#documentation": "

Timeout (in seconds) for idle UDP flows that\n\t\t\t\t\t\thave seen traffic only in a single direction or a single request-response\n\t\t\t\t\t\ttransaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.

", + "smithy.api#xmlName": "udpTimeout" } }, - "DnsName": { - "target": "com.amazonaws.ec2#String", + "UdpStreamTimeout": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "DnsName", - "smithy.api#documentation": "

The DNS name to be used by clients when establishing their VPN session.

", - "smithy.api#xmlName": "dnsName" + "aws.protocols#ec2QueryName": "UdpStreamTimeout", + "smithy.api#documentation": "

Timeout (in seconds) for idle UDP\n\t\t\t\t\t\tflows classified as streams which have seen more than one request-response\n\t\t\t\t\t\ttransaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180\n\t\t\t\t\t\tseconds.

", + "smithy.api#xmlName": "udpStreamTimeout" } } }, "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#CreateClientVpnRoute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateClientVpnRouteRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateClientVpnRouteResult" - }, - "traits": { - "smithy.api#documentation": "

Adds a route to a network to a Client VPN endpoint. Each Client VPN endpoint has a route table that describes the \n\t\t\tavailable destination network routes. Each route in the route table specifies the path for traffic to specific resources or networks.

" + "smithy.api#documentation": "

A security group connection tracking specification that enables you to set the idle\n timeout for connection tracking on an Elastic network interface. For more information,\n see Connection tracking timeouts in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#CreateClientVpnRouteRequest": { + "com.amazonaws.ec2#ConnectionTrackingSpecificationRequest": { "type": "structure", "members": { - "ClientVpnEndpointId": { - "target": "com.amazonaws.ec2#ClientVpnEndpointId", + "TcpEstablishedTimeout": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Client VPN endpoint to which to add the route.

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

Timeout (in seconds) for idle TCP\n\t\t\t\t\t\tconnections in an established state. Min: 60 seconds. Max: 432000 seconds (5\n\t\t\t\t\t\tdays). Default: 432000 seconds. Recommended: Less than 432000 seconds.

" } }, - "DestinationCidrBlock": { - "target": "com.amazonaws.ec2#String", + "UdpStreamTimeout": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IPv4 address range, in CIDR notation, of the route destination. For example:

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

Timeout (in seconds) for idle UDP\n\t\t\t\t\t\tflows classified as streams which have seen more than one request-response\n\t\t\t\t\t\ttransaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180\n\t\t\t\t\t\tseconds.

" } }, - "TargetVpcSubnetId": { - "target": "com.amazonaws.ec2#SubnetId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the subnet through which you want to route traffic. The specified subnet must be\n\t\t\tan existing target network of the Client VPN endpoint.

\n

Alternatively, if you're adding a route for the local network, specify local.

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

Timeout (in seconds) for idle UDP flows that\n\t\t\t\t\t\thave seen traffic only in a single direction or a single request-response\n\t\t\t\t\t\ttransaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.

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

A security group connection tracking specification request that enables you to set the\n idle timeout for connection tracking on an Elastic network interface. For more\n information, see Connection tracking timeouts in the\n Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#ConnectionTrackingSpecificationResponse": { + "type": "structure", + "members": { + "TcpEstablishedTimeout": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

A brief description of the route.

" + "aws.protocols#ec2QueryName": "TcpEstablishedTimeout", + "smithy.api#documentation": "

Timeout (in seconds) for idle TCP\n\t\t\t\t\t\tconnections in an established state. Min: 60 seconds. Max: 432000 seconds (5\n\t\t\t\t\t\tdays). Default: 432000 seconds. Recommended: Less than 432000 seconds.

", + "smithy.api#xmlName": "tcpEstablishedTimeout" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "UdpStreamTimeout": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", - "smithy.api#idempotencyToken": {} + "aws.protocols#ec2QueryName": "UdpStreamTimeout", + "smithy.api#documentation": "

Timeout (in seconds) for idle UDP\n\t\t\t\t\t\tflows classified as streams which have seen more than one request-response\n\t\t\t\t\t\ttransaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180\n\t\t\t\t\t\tseconds.

", + "smithy.api#xmlName": "udpStreamTimeout" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "UdpTimeout": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

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

" + "aws.protocols#ec2QueryName": "UdpTimeout", + "smithy.api#documentation": "

Timeout (in seconds) for idle UDP flows that\n\t\t\t\t\t\thave seen traffic only in a single direction or a single request-response\n\t\t\t\t\t\ttransaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.

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

A security group connection tracking specification response that enables you to set\n the idle timeout for connection tracking on an Elastic network interface. For more\n information, see Connection tracking timeouts in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#CreateClientVpnRouteResult": { - "type": "structure", + "com.amazonaws.ec2#ConnectivityType": { + "type": "enum", "members": { - "Status": { - "target": "com.amazonaws.ec2#ClientVpnRouteStatus", + "PRIVATE": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The current state of the route.

", - "smithy.api#xmlName": "status" + "smithy.api#enumValue": "private" + } + }, + "PUBLIC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "public" } } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateCoipCidr": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateCoipCidrRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateCoipCidrResult" - }, - "traits": { - "smithy.api#documentation": "

\n Creates a range of customer-owned IP addresses.\n

" + "com.amazonaws.ec2#ContainerFormat": { + "type": "enum", + "members": { + "ova": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ova" + } + } } }, - "com.amazonaws.ec2#CreateCoipCidrRequest": { + "com.amazonaws.ec2#ConversionIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ConversionTaskId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ConversionTask": { "type": "structure", "members": { - "Cidr": { + "ConversionTaskId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

\n A customer-owned IP address range to create.\n

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "ConversionTaskId", + "smithy.api#documentation": "

The ID of the conversion task.

", + "smithy.api#xmlName": "conversionTaskId" } }, - "CoipPoolId": { - "target": "com.amazonaws.ec2#Ipv4PoolCoipId", + "ExpirationTime": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

\n The ID of the address pool.\n

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "ExpirationTime", + "smithy.api#documentation": "

The time when the task expires. If the upload isn't complete before the expiration time, we automatically cancel\n the task.

", + "smithy.api#xmlName": "expirationTime" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ImportInstance": { + "target": "com.amazonaws.ec2#ImportInstanceTaskDetails", "traits": { - "smithy.api#documentation": "

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

" + "aws.protocols#ec2QueryName": "ImportInstance", + "smithy.api#documentation": "

If the task is for importing an instance, this contains information about the import instance task.

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

If the task is for importing a volume, this contains information about the import volume task.

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

The state of the conversion task.

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

The status message related to the conversion task.

", + "smithy.api#xmlName": "statusMessage" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the task.

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

Describes a conversion task.

" } }, - "com.amazonaws.ec2#CreateCoipCidrResult": { - "type": "structure", + "com.amazonaws.ec2#ConversionTaskId": { + "type": "string" + }, + "com.amazonaws.ec2#ConversionTaskState": { + "type": "enum", "members": { - "CoipCidr": { - "target": "com.amazonaws.ec2#CoipCidr", + "active": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CoipCidr", - "smithy.api#documentation": "

\n Information about a range of customer-owned IP addresses.\n

", - "smithy.api#xmlName": "coipCidr" + "smithy.api#enumValue": "active" + } + }, + "cancelling": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "cancelling" + } + }, + "cancelled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "cancelled" + } + }, + "completed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "completed" } } - }, + } + }, + "com.amazonaws.ec2#CoolOffPeriodRequestHours": { + "type": "integer", "traits": { - "smithy.api#output": {} + "smithy.api#range": { + "min": 1, + "max": 72 + } } }, - "com.amazonaws.ec2#CreateCoipPool": { + "com.amazonaws.ec2#CoolOffPeriodResponseHours": { + "type": "integer" + }, + "com.amazonaws.ec2#CopyFpgaImage": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateCoipPoolRequest" + "target": "com.amazonaws.ec2#CopyFpgaImageRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateCoipPoolResult" + "target": "com.amazonaws.ec2#CopyFpgaImageResult" }, "traits": { - "smithy.api#documentation": "

Creates a pool of customer-owned IP (CoIP) addresses.

" + "smithy.api#documentation": "

Copies the specified Amazon FPGA Image (AFI) to the current Region.

" } }, - "com.amazonaws.ec2#CreateCoipPoolRequest": { + "com.amazonaws.ec2#CopyFpgaImageRequest": { "type": "structure", "members": { - "LocalGatewayRouteTableId": { - "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

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

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

\n The ID of the local gateway route table.\n

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

The ID of the source AFI.

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

\n The tags to assign to the CoIP address pool.\n

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

The description for the new AFI.

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

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

" + "smithy.api#documentation": "

The name for the new AFI. The default is the name of the source AFI.

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

The Region that contains the source AFI.

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

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. \n \tFor more information, see Ensuring idempotency.

" } } }, @@ -14613,15 +15316,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateCoipPoolResult": { + "com.amazonaws.ec2#CopyFpgaImageResult": { "type": "structure", "members": { - "CoipPool": { - "target": "com.amazonaws.ec2#CoipPool", + "FpgaImageId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "CoipPool", - "smithy.api#documentation": "

Information about the CoIP address pool.

", - "smithy.api#xmlName": "coipPool" + "aws.protocols#ec2QueryName": "FpgaImageId", + "smithy.api#documentation": "

The ID of the new AFI.

", + "smithy.api#xmlName": "fpgaImageId" } } }, @@ -14629,156 +15332,272 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateCustomerGateway": { + "com.amazonaws.ec2#CopyImage": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateCustomerGatewayRequest" + "target": "com.amazonaws.ec2#CopyImageRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateCustomerGatewayResult" + "target": "com.amazonaws.ec2#CopyImageResult" }, "traits": { - "smithy.api#documentation": "

Provides information to Amazon Web Services about your customer gateway device. The\n customer gateway device is the appliance at your end of the VPN connection. You\n must provide the IP address of the customer gateway device’s external\n interface. The IP address must be static and can be behind a device performing network\n address translation (NAT).

\n

For devices that use Border Gateway Protocol (BGP), you can also provide the device's\n BGP Autonomous System Number (ASN). You can use an existing ASN assigned to your network.\n If you don't have an ASN already, you can use a private ASN. For more information, see \n Customer gateway \n options for your Site-to-Site VPN connection in the Amazon Web Services Site-to-Site VPN User Guide.

\n

To create more than one customer gateway with the same VPN type, IP address, and\n BGP ASN, specify a unique device name for each customer gateway. An identical request\n returns information about the existing customer gateway; it doesn't create a new customer\n gateway.

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

Initiates an AMI copy operation. You must specify the source AMI ID and both the source\n and destination locations. The copy operation must be initiated in the destination\n Region.

\n

\n CopyImage supports the following source to destination copies:\n

\n \n

\n CopyImage does not support the following source to destination copies:\n

\n \n

\n Destination specification\n

\n \n

\n Snapshot encryption\n

\n \n

For more information, including the required permissions for copying an AMI, see Copy an Amazon EC2 AMI in the\n Amazon EC2 User Guide.

", "smithy.api#examples": [ { - "title": "To create a customer gateway", - "documentation": "This example creates a customer gateway with the specified IP address for its outside interface.", + "title": "To copy an AMI to another region", + "documentation": "This example copies the specified AMI from the us-east-1 region to the current region.", "input": { - "Type": "ipsec.1", - "PublicIp": "12.1.2.3", - "BgpAsn": 65534 + "Description": "", + "Name": "My server", + "SourceImageId": "ami-5731123e", + "SourceRegion": "us-east-1" }, "output": { - "CustomerGateway": { - "CustomerGatewayId": "cgw-0e11f167", - "IpAddress": "12.1.2.3", - "State": "available", - "Type": "ipsec.1", - "BgpAsn": "65534" - } + "ImageId": "ami-438bea42" } } ] } }, - "com.amazonaws.ec2#CreateCustomerGatewayRequest": { + "com.amazonaws.ec2#CopyImageRequest": { "type": "structure", "members": { - "BgpAsn": { - "target": "com.amazonaws.ec2#Integer", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

For customer gateway devices that support BGP, specify the device's ASN. You must specify either BgpAsn or BgpAsnExtended when creating the customer gateway. If the ASN is larger than 2,147,483,647, you must use BgpAsnExtended.

\n

Default: 65000

\n

Valid values: 1 to 2,147,483,647\n

" + "smithy.api#documentation": "

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For\n more information, see Ensuring idempotency in\n Amazon EC2 API requests in the Amazon EC2 API\n Reference.

", + "smithy.api#idempotencyToken": {} } }, - "PublicIp": { + "Description": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

\n This member has been deprecated. The Internet-routable IP address for the customer gateway's outside interface. The\n address must be static.

" + "smithy.api#documentation": "

A description for the new AMI.

" } }, - "CertificateArn": { + "Encrypted": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Encrypted", + "smithy.api#documentation": "

Specifies whether to encrypt the snapshots of the copied image.

\n

You can encrypt a copy of an unencrypted snapshot, but you cannot create an unencrypted\n copy of an encrypted snapshot. The default KMS key for Amazon EBS is used unless you specify a\n non-default Key Management Service (KMS) KMS key using KmsKeyId. For more information, see Use encryption with\n EBS-backed AMIs in the Amazon EC2 User Guide.

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

The identifier of the symmetric Key Management Service (KMS) KMS key to use when creating encrypted volumes.\n If this parameter is not specified, your Amazon Web Services managed KMS key for Amazon EBS is used. If you\n specify a KMS key, you must also set the encrypted state to true.

\n

You can specify a KMS key using any of the following:

\n \n

Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an identifier\n that is not valid, the action can appear to complete, but eventually fails.

\n

The specified KMS key must exist in the destination Region.

\n

Amazon EBS does not support asymmetric KMS keys.

", + "smithy.api#xmlName": "kmsKeyId" + } + }, + "Name": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the customer gateway certificate.

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

The name of the new AMI.

", + "smithy.api#required": {} } }, - "Type": { - "target": "com.amazonaws.ec2#GatewayType", + "SourceImageId": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of VPN connection that this customer gateway supports\n (ipsec.1).

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

The ID of the AMI to copy.

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

The name of the Region that contains the AMI to copy.

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

The Amazon Resource Name (ARN) of the Outpost for the new AMI.

\n

Only specify this parameter when copying an AMI from an Amazon Web Services Region to an Outpost. The\n AMI must be in the Region of the destination Outpost. You can't copy an AMI from an Outpost to\n a Region, from one Outpost to another, or within the same Outpost.

\n

For more information, see Copy AMIs from an Amazon Web Services Region\n to an Outpost in the Amazon EBS User Guide.

\n

Only one of DestinationAvailabilityZone,\n DestinationAvailabilityZoneId, or DestinationOutpostArn can be\n specified.

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

Specifies whether to copy your user-defined AMI tags to the new AMI.

\n

The following tags are not be copied:

\n \n

Default: Your user-defined AMI tags are not copied.

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

The tags to apply to the customer gateway.

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

The tags to apply to the new AMI and new snapshots. You can tag the AMI, the snapshots, or\n both.

\n \n

If you specify other values for ResourceType, the request fails.

\n

To tag an AMI or snapshot after it has been created, see CreateTags.

", "smithy.api#xmlName": "TagSpecification" } }, - "DeviceName": { + "SnapshotCopyCompletionDurationMinutes": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "smithy.api#documentation": "

Specify a completion duration, in 15 minute increments, to initiate a time-based AMI copy.\n The specified completion duration applies to each of the snapshots associated with the AMI.\n Each snapshot associated with the AMI will be completed within the specified completion\n duration, with copy throughput automatically adjusted for each snapshot based on its size to\n meet the timing target.

\n

If you do not specify a value, the AMI copy operation is completed on a best-effort \n basis.

\n \n

This parameter is not supported when copying an AMI to or from a Local Zone, or to an\n Outpost.

\n
\n

For more information, see Time-based copies for Amazon EBS snapshots and\n EBS-backed AMIs.

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

A name for the customer gateway device.

\n

Length Constraints: Up to 255 characters.

" + "smithy.api#documentation": "

The Local Zone for the new AMI (for example, cn-north-1-pkx-1a).

\n

Only one of DestinationAvailabilityZone,\n DestinationAvailabilityZoneId, or DestinationOutpostArn can be\n specified.

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

IPv4 address for the customer gateway device's outside interface. The address must be\n static. If OutsideIpAddressType in your VPN connection options is set to\n PrivateIpv4, you can use an RFC6598 or RFC1918 private IPv4 address. If\n OutsideIpAddressType is set to PublicIpv4, you can use a\n public IPv4 address.

" + "smithy.api#documentation": "

The ID of the Local Zone for the new AMI (for example, cnn1-pkx1-az1).

\n

Only one of DestinationAvailabilityZone,\n DestinationAvailabilityZoneId, or DestinationOutpostArn can be\n specified.

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

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

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

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

", "smithy.api#xmlName": "dryRun" } - }, - "BgpAsnExtended": { - "target": "com.amazonaws.ec2#Long", - "traits": { - "smithy.api#documentation": "

For customer gateway devices that support BGP, specify the device's ASN. You must specify either BgpAsn or BgpAsnExtended when creating the customer gateway. If the ASN is larger than 2,147,483,647, you must use BgpAsnExtended.

\n

Valid values: 2,147,483,648 to 4,294,967,295\n

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

Contains the parameters for CreateCustomerGateway.

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

Contains the parameters for CopyImage.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateCustomerGatewayResult": { + "com.amazonaws.ec2#CopyImageResult": { "type": "structure", "members": { - "CustomerGateway": { - "target": "com.amazonaws.ec2#CustomerGateway", + "ImageId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "CustomerGateway", - "smithy.api#documentation": "

Information about the customer gateway.

", - "smithy.api#xmlName": "customerGateway" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the new AMI.

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

Contains the output of CreateCustomerGateway.

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

Contains the output of CopyImage.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateDefaultSubnet": { + "com.amazonaws.ec2#CopySnapshot": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateDefaultSubnetRequest" + "target": "com.amazonaws.ec2#CopySnapshotRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateDefaultSubnetResult" + "target": "com.amazonaws.ec2#CopySnapshotResult" }, "traits": { - "smithy.api#documentation": "

Creates a default subnet with a size /20 IPv4 CIDR block in the\n specified Availability Zone in your default VPC. You can have only one default subnet\n per Availability Zone. For more information, see Create a default\n subnet in the Amazon VPC User Guide.

" + "smithy.api#documentation": "

Creates an exact copy of an Amazon EBS snapshot.

\n

The location of the source snapshot determines whether you can copy it or not, \n and the allowed destinations for the snapshot copy.

\n \n

When copying snapshots to a Region, the encryption outcome for the snapshot copy depends on the \n Amazon EBS encryption by default setting for the destination Region, the encryption status of the source \n snapshot, and the encryption parameters you specify in the request. For more information, see \n Encryption and snapshot copying.

\n

Snapshots copied to an Outpost must be encrypted. Unencrypted snapshots are not supported \n on Outposts. For more information, \n Amazon EBS local snapshots on Outposts.

\n \n

Snapshots copies have an arbitrary source volume ID. Do not use this volume ID for \n any purpose.

\n
\n

For more information, see Copy an Amazon EBS snapshot in the\n Amazon EBS User Guide.

", + "smithy.api#examples": [ + { + "title": "To copy a snapshot", + "documentation": "This example copies a snapshot with the snapshot ID of ``snap-066877671789bd71b`` from the ``us-west-2`` region to the ``us-east-1`` region and adds a short description to identify the snapshot.", + "input": { + "SourceRegion": "us-west-2", + "SourceSnapshotId": "snap-066877671789bd71b", + "Description": "This is my copied snapshot.", + "DestinationRegion": "us-east-1" + }, + "output": { + "SnapshotId": "snap-066877671789bd71b" + } + } + ] } }, - "com.amazonaws.ec2#CreateDefaultSubnetRequest": { + "com.amazonaws.ec2#CopySnapshotRequest": { "type": "structure", "members": { - "AvailabilityZone": { - "target": "com.amazonaws.ec2#AvailabilityZoneName", + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A description for the EBS snapshot.

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

The Amazon Resource Name (ARN) of the Outpost to which to copy the snapshot.

\n \n

Only supported when copying a snapshot to an Outpost.

\n
\n

For more information, see \n \t\tCopy snapshots from an Amazon Web Services Region to an Outpost in the \n Amazon EBS User Guide.

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

The destination Region to use in the PresignedUrl parameter of a snapshot\n copy operation. This parameter is only valid for specifying the destination Region in a\n PresignedUrl parameter, where it is required.

\n

The snapshot copy is sent to the regional endpoint that you sent the HTTP\n \trequest to (for example, ec2.us-east-1.amazonaws.com). With the CLI, this is\n specified using the --region parameter or the default Region in your Amazon Web Services\n configuration file.

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

To encrypt a copy of an unencrypted snapshot if encryption by default is not enabled, \n enable encryption using this parameter. Otherwise, omit this parameter. Copies of encrypted \n snapshots are encrypted, even if you omit this parameter and encryption by default is not \n enabled. You cannot set this parameter to false. For more information, see Amazon EBS encryption in the \n Amazon EBS User Guide.

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

The identifier of the KMS key to use for Amazon EBS encryption.\n If this parameter is not specified, your KMS key for Amazon EBS is used. If KmsKeyId is\n specified, the encrypted state must be true.

\n

You can specify the KMS key using any of the following:

\n \n

Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an ID, alias, or ARN that is not valid, \n the action can appear to complete, but eventually fails.

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

When you copy an encrypted source snapshot using the Amazon EC2 Query API, you must supply a\n pre-signed URL. This parameter is optional for unencrypted snapshots. For more information,\n see Query\n requests.

\n

The PresignedUrl should use the snapshot source endpoint, the\n CopySnapshot action, and include the SourceRegion,\n SourceSnapshotId, and DestinationRegion parameters. The\n PresignedUrl must be signed using Amazon Web Services Signature Version 4. Because EBS\n snapshots are stored in Amazon S3, the signing algorithm for this parameter uses the same logic\n that is described in \n Authenticating Requests: Using Query Parameters (Amazon Web Services Signature Version 4) in the Amazon S3 API Reference. An\n invalid or improperly signed PresignedUrl will cause the copy operation to fail\n asynchronously, and the snapshot will move to an error state.

", + "smithy.api#xmlName": "presignedUrl" + } + }, + "SourceRegion": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Availability Zone in which to create the default subnet.

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

The ID of the Region that contains the snapshot to be copied.

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

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

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

The ID of the EBS snapshot to copy.

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

The tags to apply to the new snapshot.

", + "smithy.api#xmlName": "TagSpecification" + } + }, + "CompletionDurationMinutes": { + "target": "com.amazonaws.ec2#SnapshotCompletionDurationMinutesRequest", + "traits": { + "smithy.api#documentation": "\n

Not supported when copying snapshots to or from Local Zones or Outposts.

\n
\n

Specify a completion duration, in 15 minute increments, to initiate a time-based snapshot \n copy. Time-based snapshot copy operations complete within the specified duration. For more \n information, see \n Time-based copies.

\n

If you do not specify a value, the snapshot copy operation is completed on a \n best-effort basis.

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

The Local Zone, for example, cn-north-1-pkx-1a to which to copy the \n snapshot.

\n \n

Only supported when copying a snapshot to a Local Zone.

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

Indicates whether to create an IPv6 only subnet. If you already have a default subnet\n for this Availability Zone, you must delete it before you can create an IPv6 only subnet.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

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

", + "smithy.api#xmlName": "dryRun" } } }, @@ -14786,15 +15605,29 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateDefaultSubnetResult": { + "com.amazonaws.ec2#CopySnapshotRequestPSU": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.ec2#CopySnapshotResult": { "type": "structure", "members": { - "Subnet": { - "target": "com.amazonaws.ec2#Subnet", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "aws.protocols#ec2QueryName": "Subnet", - "smithy.api#documentation": "

Information about the subnet.

", - "smithy.api#xmlName": "subnet" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags applied to the new snapshot.

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

The ID of the new snapshot.

", + "smithy.api#xmlName": "snapshotId" } } }, @@ -14802,183 +15635,222 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateDefaultVpc": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateDefaultVpcRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateDefaultVpcResult" - }, - "traits": { - "smithy.api#documentation": "

Creates a default VPC with a size /16 IPv4 CIDR block and a default subnet\n\t\t\tin each Availability Zone. For more information about the components of a default VPC,\n\t\t\tsee Default VPCs \n\t\t in the Amazon VPC User Guide. You cannot specify the components of the \n\t\t default VPC yourself.

\n

If you deleted your previous default VPC, you can create a default VPC. You cannot have\n\t\t\tmore than one default VPC per Region.

" - } - }, - "com.amazonaws.ec2#CreateDefaultVpcRequest": { - "type": "structure", + "com.amazonaws.ec2#CopyTagsFromSource": { + "type": "enum", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "volume": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

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

" + "smithy.api#enumValue": "volume" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateDefaultVpcResult": { - "type": "structure", + "com.amazonaws.ec2#CoreCount": { + "type": "integer" + }, + "com.amazonaws.ec2#CoreCountList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CoreCount", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#CoreNetworkArn": { + "type": "string" + }, + "com.amazonaws.ec2#CpuManufacturer": { + "type": "enum", "members": { - "Vpc": { - "target": "com.amazonaws.ec2#Vpc", + "INTEL": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Vpc", - "smithy.api#documentation": "

Information about the VPC.

", - "smithy.api#xmlName": "vpc" + "smithy.api#enumValue": "intel" + } + }, + "AMD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "amd" + } + }, + "AMAZON_WEB_SERVICES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "amazon-web-services" + } + }, + "APPLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "apple" } } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateDhcpOptions": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateDhcpOptionsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateDhcpOptionsResult" + "com.amazonaws.ec2#CpuManufacturerName": { + "type": "string" + }, + "com.amazonaws.ec2#CpuManufacturerSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CpuManufacturer", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#CpuOptions": { + "type": "structure", + "members": { + "CoreCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "CoreCount", + "smithy.api#documentation": "

The number of CPU cores for the instance.

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

The number of threads per CPU core.

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

Indicates whether the instance is enabled for AMD SEV-SNP. For more information, see \n AMD SEV-SNP.

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

Creates a custom set of DHCP options. After you create a DHCP option set, you associate\n\t it with a VPC. After you associate a DHCP option set with a VPC, all existing and newly \n\t launched instances in the VPC use this set of DHCP options.

\n

The following are the individual DHCP options you can specify. For more information, see \n DHCP options sets \n in the Amazon VPC User Guide.

\n ", - "smithy.api#examples": [ - { - "title": "To create a DHCP options set", - "documentation": "This example creates a DHCP options set.", - "input": { - "DhcpConfigurations": [ - { - "Key": "domain-name-servers", - "Values": [ - "10.2.5.1", - "10.2.5.2" - ] - } - ] - }, - "output": { - "DhcpOptions": { - "DhcpConfigurations": [ - { - "Values": [ - { - "Value": "10.2.5.2" - }, - { - "Value": "10.2.5.1" - } - ], - "Key": "domain-name-servers" - } - ], - "DhcpOptionsId": "dopt-d9070ebb" - } - } - } - ] + "smithy.api#documentation": "

The CPU options for the instance.

" } }, - "com.amazonaws.ec2#CreateDhcpOptionsRequest": { + "com.amazonaws.ec2#CpuOptionsRequest": { "type": "structure", "members": { - "DhcpConfigurations": { - "target": "com.amazonaws.ec2#NewDhcpConfigurationList", + "CoreCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "DhcpConfiguration", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A DHCP configuration option.

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

The number of CPU cores for the instance.

" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "ThreadsPerCore": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The tags to assign to the DHCP option.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

The number of threads per CPU core. To disable multithreading for the instance,\n specify a value of 1. Otherwise, specify the default value of\n 2.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "AmdSevSnp": { + "target": "com.amazonaws.ec2#AmdSevSnpSpecification", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

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

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported \n with M6a, R6a, and C6a instance types only. For more information, see \n AMD SEV-SNP.

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

The CPU options for the instance. Both the core count and threads per core must be\n specified in the request.

" } }, - "com.amazonaws.ec2#CreateDhcpOptionsResult": { + "com.amazonaws.ec2#CpuPerformanceFactor": { "type": "structure", "members": { - "DhcpOptions": { - "target": "com.amazonaws.ec2#DhcpOptions", + "References": { + "target": "com.amazonaws.ec2#PerformanceFactorReferenceSet", "traits": { - "aws.protocols#ec2QueryName": "DhcpOptions", - "smithy.api#documentation": "

A set of DHCP options.

", - "smithy.api#xmlName": "dhcpOptions" + "aws.protocols#ec2QueryName": "ReferenceSet", + "smithy.api#documentation": "

Specify an instance family to use as the baseline reference for CPU performance. All\n instance types that match your specified attributes will be compared against the CPU\n performance of the referenced instance family, regardless of CPU manufacturer or\n architecture differences.

\n \n

Currently, only one instance family can be specified in the list.

\n
", + "smithy.api#xmlName": "referenceSet" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

The CPU performance to consider, using an instance family as the baseline reference.

" } }, - "com.amazonaws.ec2#CreateEgressOnlyInternetGateway": { + "com.amazonaws.ec2#CpuPerformanceFactorRequest": { + "type": "structure", + "members": { + "References": { + "target": "com.amazonaws.ec2#PerformanceFactorReferenceSetRequest", + "traits": { + "smithy.api#documentation": "

Specify an instance family to use as the baseline reference for CPU performance. All\n instance types that match your specified attributes will be compared against the CPU\n performance of the referenced instance family, regardless of CPU manufacturer or\n architecture differences.

\n \n

Currently, only one instance family can be specified in the list.

\n
", + "smithy.api#xmlName": "Reference" + } + } + }, + "traits": { + "smithy.api#documentation": "

The CPU performance to consider, using an instance family as the baseline reference.

" + } + }, + "com.amazonaws.ec2#CreateCapacityReservation": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateEgressOnlyInternetGatewayRequest" + "target": "com.amazonaws.ec2#CreateCapacityReservationRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateEgressOnlyInternetGatewayResult" + "target": "com.amazonaws.ec2#CreateCapacityReservationResult" }, "traits": { - "smithy.api#documentation": "

[IPv6 only] Creates an egress-only internet gateway for your VPC. An egress-only\n\t\t\tinternet gateway is used to enable outbound communication over IPv6 from instances in\n\t\t\tyour VPC to the internet, and prevents hosts outside of your VPC from initiating an IPv6\n\t\t\tconnection with your instance.

" + "smithy.api#documentation": "

Creates a new Capacity Reservation with the specified attributes. Capacity\n\t\t\tReservations enable you to reserve capacity for your Amazon EC2 instances in a specific\n\t\t\tAvailability Zone for any duration.

\n

You can create a Capacity Reservation at any time, and you can choose when it starts.\n\t\t\tYou can create a Capacity Reservation for immediate use or you can request a Capacity\n\t\t\tReservation for a future date.

\n

For more information, see Reserve compute\n\t\t\t\tcapacity with On-Demand Capacity Reservations in the\n\t\t\t\tAmazon EC2 User Guide.

\n

Your request to create a Capacity Reservation could fail if:

\n " } }, - "com.amazonaws.ec2#CreateEgressOnlyInternetGatewayRequest": { + "com.amazonaws.ec2#CreateCapacityReservationBySplitting": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateCapacityReservationBySplittingRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateCapacityReservationBySplittingResult" + }, + "traits": { + "smithy.api#documentation": "

Create a new Capacity Reservation by splitting the capacity of the source Capacity\n\t\t\tReservation. The new Capacity Reservation will have the same attributes as the source\n\t\t\tCapacity Reservation except for tags. The source Capacity Reservation must be\n\t\t\t\tactive and owned by your Amazon Web Services account.

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

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

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

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n\t\t\trequest. For more information, see Ensuring idempotency.

" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

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

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

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

The ID of the Capacity Reservation from which you want to split the capacity.

", + "smithy.api#required": {} } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC for which to create the egress-only internet gateway.

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

The number of instances to split from the source Capacity Reservation.

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

The tags to assign to the egress-only internet gateway.

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

The tags to apply to the new Capacity Reservation.

", "smithy.api#xmlName": "TagSpecification" } } @@ -14987,23 +15859,31 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateEgressOnlyInternetGatewayResult": { + "com.amazonaws.ec2#CreateCapacityReservationBySplittingResult": { "type": "structure", "members": { - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "SourceCapacityReservation": { + "target": "com.amazonaws.ec2#CapacityReservation", "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n\t\t\trequest.

", - "smithy.api#xmlName": "clientToken" + "aws.protocols#ec2QueryName": "SourceCapacityReservation", + "smithy.api#documentation": "

Information about the source Capacity Reservation.

", + "smithy.api#xmlName": "sourceCapacityReservation" } }, - "EgressOnlyInternetGateway": { - "target": "com.amazonaws.ec2#EgressOnlyInternetGateway", + "DestinationCapacityReservation": { + "target": "com.amazonaws.ec2#CapacityReservation", "traits": { - "aws.protocols#ec2QueryName": "EgressOnlyInternetGateway", - "smithy.api#documentation": "

Information about the egress-only internet gateway.

", - "smithy.api#xmlName": "egressOnlyInternetGateway" + "aws.protocols#ec2QueryName": "DestinationCapacityReservation", + "smithy.api#documentation": "

Information about the destination Capacity Reservation.

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

The number of instances in the new Capacity Reservation. The number of instances in\n\t\t\tthe source Capacity Reservation was reduced by this amount.

", + "smithy.api#xmlName": "instanceCount" } } }, @@ -15011,246 +15891,320 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateFleet": { + "com.amazonaws.ec2#CreateCapacityReservationFleet": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateFleetRequest" + "target": "com.amazonaws.ec2#CreateCapacityReservationFleetRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateFleetResult" + "target": "com.amazonaws.ec2#CreateCapacityReservationFleetResult" }, "traits": { - "smithy.api#documentation": "

Creates an EC2 Fleet that contains the configuration information for On-Demand Instances and Spot Instances.\n Instances are launched immediately if there is available capacity.

\n

A single EC2 Fleet can include multiple launch specifications that vary by instance type,\n AMI, Availability Zone, or subnet.

\n

For more information, see EC2 Fleet in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Creates a Capacity Reservation Fleet. For more information, see Create a\n\t\t\t\tCapacity Reservation Fleet in the\n\t\t\tAmazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#CreateFleetError": { + "com.amazonaws.ec2#CreateCapacityReservationFleetRequest": { "type": "structure", "members": { - "LaunchTemplateAndOverrides": { - "target": "com.amazonaws.ec2#LaunchTemplateAndOverridesResponse", + "AllocationStrategy": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateAndOverrides", - "smithy.api#documentation": "

The launch templates and overrides that were used for launching the instances. The\n values that you specify in the Overrides replace the values in the launch template.

", - "smithy.api#xmlName": "launchTemplateAndOverrides" + "smithy.api#documentation": "

The strategy used by the Capacity Reservation Fleet to determine which of the\n\t\t\tspecified instance types to use. Currently, only the prioritized allocation\n\t\t\tstrategy is supported. For more information, see Allocation\n\t\t\t\tstrategy in the Amazon EC2 User Guide.

\n

Valid values: prioritized\n

" } }, - "Lifecycle": { - "target": "com.amazonaws.ec2#InstanceLifecycle", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Lifecycle", - "smithy.api#documentation": "

Indicates if the instance that could not be launched was a Spot Instance or On-Demand Instance.

", - "smithy.api#xmlName": "lifecycle" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

", + "smithy.api#idempotencyToken": {} } }, - "ErrorCode": { - "target": "com.amazonaws.ec2#String", + "InstanceTypeSpecifications": { + "target": "com.amazonaws.ec2#ReservationFleetInstanceSpecificationList", "traits": { - "aws.protocols#ec2QueryName": "ErrorCode", - "smithy.api#documentation": "

The error code that indicates why the instance could not be launched. For more\n information about error codes, see Error codes.

", - "smithy.api#xmlName": "errorCode" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Information about the instance types for which to reserve the capacity.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "InstanceTypeSpecification" } }, - "ErrorMessage": { - "target": "com.amazonaws.ec2#String", + "Tenancy": { + "target": "com.amazonaws.ec2#FleetCapacityReservationTenancy", "traits": { - "aws.protocols#ec2QueryName": "ErrorMessage", - "smithy.api#documentation": "

The error message that describes why the instance could not be launched. For more\n information about error messages, see Error codes.

", - "smithy.api#xmlName": "errorMessage" + "smithy.api#documentation": "

Indicates the tenancy of the Capacity Reservation Fleet. All Capacity Reservations in\n\t\t\tthe Fleet inherit this tenancy. The Capacity Reservation Fleet can have one of the\n\t\t\tfollowing tenancy settings:

\n " + } + }, + "TotalTargetCapacity": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The total number of capacity units to be reserved by the Capacity Reservation Fleet.\n\t\t\tThis value, together with the instance type weights that you assign to each instance\n\t\t\ttype used by the Fleet determine the number of instances for which the Fleet reserves\n\t\t\tcapacity. Both values are based on units that make sense for your workload. For more\n\t\t\tinformation, see Total target\n\t\t\t\tcapacity in the Amazon EC2 User Guide.

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

The date and time at which the Capacity Reservation Fleet expires. When the Capacity\n\t\t\tReservation Fleet expires, its state changes to expired and all of the\n\t\t\tCapacity Reservations in the Fleet expire.

\n

The Capacity Reservation Fleet expires within an hour after the specified time. For\n\t\t\texample, if you specify 5/31/2019, 13:30:55, the Capacity\n\t\t\tReservation Fleet is guaranteed to expire between 13:30:55 and\n\t\t\t\t14:30:55 on 5/31/2019.

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

Indicates the type of instance launches that the Capacity Reservation Fleet accepts.\n\t\t\tAll Capacity Reservations in the Fleet inherit this instance matching criteria.

\n

Currently, Capacity Reservation Fleets support open instance matching\n\t\t\tcriteria only. This means that instances that have matching attributes (instance type,\n\t\t\tplatform, and Availability Zone) run in the Capacity Reservations automatically.\n\t\t\tInstances do not need to explicitly target a Capacity Reservation Fleet to use its\n\t\t\treserved capacity.

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

The tags to assign to the Capacity Reservation Fleet. The tags are automatically\n\t\t\tassigned to the Capacity Reservations in the Fleet.

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

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

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

Describes the instances that could not be launched by the fleet.

" - } - }, - "com.amazonaws.ec2#CreateFleetErrorsSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#CreateFleetError", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateFleetInstance": { + "com.amazonaws.ec2#CreateCapacityReservationFleetResult": { "type": "structure", "members": { - "LaunchTemplateAndOverrides": { - "target": "com.amazonaws.ec2#LaunchTemplateAndOverridesResponse", + "CapacityReservationFleetId": { + "target": "com.amazonaws.ec2#CapacityReservationFleetId", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateAndOverrides", - "smithy.api#documentation": "

The launch templates and overrides that were used for launching the instances. The\n values that you specify in the Overrides replace the values in the launch template.

", - "smithy.api#xmlName": "launchTemplateAndOverrides" + "aws.protocols#ec2QueryName": "CapacityReservationFleetId", + "smithy.api#documentation": "

The ID of the Capacity Reservation Fleet.

", + "smithy.api#xmlName": "capacityReservationFleetId" } }, - "Lifecycle": { - "target": "com.amazonaws.ec2#InstanceLifecycle", + "State": { + "target": "com.amazonaws.ec2#CapacityReservationFleetState", "traits": { - "aws.protocols#ec2QueryName": "Lifecycle", - "smithy.api#documentation": "

Indicates if the instance that was launched is a Spot Instance or On-Demand Instance.

", - "smithy.api#xmlName": "lifecycle" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The status of the Capacity Reservation Fleet.

", + "smithy.api#xmlName": "state" } }, - "InstanceIds": { - "target": "com.amazonaws.ec2#InstanceIdsSet", + "TotalTargetCapacity": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "InstanceIds", - "smithy.api#documentation": "

The IDs of the instances.

", - "smithy.api#xmlName": "instanceIds" + "aws.protocols#ec2QueryName": "TotalTargetCapacity", + "smithy.api#documentation": "

The total number of capacity units for which the Capacity Reservation Fleet reserves\n\t\t\tcapacity.

", + "smithy.api#xmlName": "totalTargetCapacity" } }, - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", + "TotalFulfilledCapacity": { + "target": "com.amazonaws.ec2#Double", "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type.

", - "smithy.api#xmlName": "instanceType" + "aws.protocols#ec2QueryName": "TotalFulfilledCapacity", + "smithy.api#documentation": "

The requested capacity units that have been successfully reserved.

", + "smithy.api#xmlName": "totalFulfilledCapacity" } }, - "Platform": { - "target": "com.amazonaws.ec2#PlatformValues", + "InstanceMatchCriteria": { + "target": "com.amazonaws.ec2#FleetInstanceMatchCriteria", "traits": { - "aws.protocols#ec2QueryName": "Platform", - "smithy.api#documentation": "

The value is Windows for Windows instances. Otherwise, the value is\n blank.

", - "smithy.api#xmlName": "platform" + "aws.protocols#ec2QueryName": "InstanceMatchCriteria", + "smithy.api#documentation": "

The instance matching criteria for the Capacity Reservation Fleet.

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

The allocation strategy used by the Capacity Reservation Fleet.

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

The date and time at which the Capacity Reservation Fleet was created.

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

The date and time at which the Capacity Reservation Fleet expires.

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

Indicates the tenancy of Capacity Reservation Fleet.

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

Information about the individual Capacity Reservations in the Capacity Reservation\n\t\t\tFleet.

", + "smithy.api#xmlName": "fleetCapacityReservationSet" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags assigned to the Capacity Reservation Fleet.

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

Describes the instances that were launched by the fleet.

" - } - }, - "com.amazonaws.ec2#CreateFleetInstancesSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#CreateFleetInstance", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateFleetRequest": { + "com.amazonaws.ec2#CreateCapacityReservationRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

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

" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

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

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see Ensuring\n idempotency.

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

The instance type for which to reserve capacity.

\n \n

You can request future-dated Capacity Reservations for instance types in the C, M,\n\t\t\t\tR, I, T, and G instance families only.

\n
\n

For more information, see Instance types in the\n\t\t\t\tAmazon EC2 User Guide.

", + "smithy.api#required": {} } }, - "SpotOptions": { - "target": "com.amazonaws.ec2#SpotOptionsRequest", + "InstancePlatform": { + "target": "com.amazonaws.ec2#CapacityReservationInstancePlatform", "traits": { - "smithy.api#documentation": "

Describes the configuration of Spot Instances in an EC2 Fleet.

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

The type of operating system for which to reserve capacity.

", + "smithy.api#required": {} } }, - "OnDemandOptions": { - "target": "com.amazonaws.ec2#OnDemandOptionsRequest", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#AvailabilityZoneName", "traits": { - "smithy.api#documentation": "

Describes the configuration of On-Demand Instances in an EC2 Fleet.

" + "smithy.api#documentation": "

The Availability Zone in which to create the Capacity Reservation.

" } }, - "ExcessCapacityTerminationPolicy": { - "target": "com.amazonaws.ec2#FleetExcessCapacityTerminationPolicy", + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#AvailabilityZoneId", "traits": { - "smithy.api#documentation": "

Indicates whether running instances should be terminated if the total target capacity of\n the EC2 Fleet is decreased below the current size of the EC2 Fleet.

\n

Supported only for fleets of type maintain.

" + "smithy.api#documentation": "

The ID of the Availability Zone in which to create the Capacity Reservation.

" } }, - "LaunchTemplateConfigs": { - "target": "com.amazonaws.ec2#FleetLaunchTemplateConfigListRequest", + "Tenancy": { + "target": "com.amazonaws.ec2#CapacityReservationTenancy", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The configuration for the EC2 Fleet.

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

Indicates the tenancy of the Capacity Reservation. A Capacity Reservation can have one\n\t\t\tof the following tenancy settings:

\n " } }, - "TargetCapacitySpecification": { - "target": "com.amazonaws.ec2#TargetCapacitySpecificationRequest", + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The number of units to request.

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

The number of instances for which to reserve capacity.

\n \n

You can request future-dated Capacity Reservations for an instance count with a\n\t\t\t\tminimum of 64 vCPUs. For example, if you request a future-dated Capacity\n\t\t\t\tReservation for m5.xlarge instances, you must request at least 25\n\t\t\t\tinstances (16 * m5.xlarge = 64 vCPUs).

\n
\n

Valid range: 1 - 1000

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

Indicates whether running instances should be terminated when the EC2 Fleet expires.

" + "smithy.api#documentation": "

Indicates whether the Capacity Reservation supports EBS-optimized instances. This\n\t\t\toptimization provides dedicated throughput to Amazon EBS and an optimized configuration\n\t\t\tstack to provide optimal I/O performance. This optimization isn't available with all\n\t\t\tinstance types. Additional usage charges apply when using an EBS- optimized\n\t\t\tinstance.

" } }, - "Type": { - "target": "com.amazonaws.ec2#FleetType", + "EphemeralStorage": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The fleet type. The default value is maintain.

\n \n

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

" + "smithy.api#documentation": "

\n Deprecated.\n

" } }, - "ValidFrom": { + "EndDate": { "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#documentation": "

The start date and time of the request, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).\n The default is to start fulfilling the request immediately.

" + "smithy.api#documentation": "

The date and time at which the Capacity Reservation expires. When a Capacity\n\t\t\tReservation expires, the reserved capacity is released and you can no longer launch\n\t\t\tinstances into it. The Capacity Reservation's state changes to expired when\n\t\t\tit reaches its end date and time.

\n

You must provide an EndDate value if EndDateType is\n\t\t\t\tlimited. Omit EndDate if EndDateType is\n\t\t\t\tunlimited.

\n

If the EndDateType is limited, the Capacity Reservation is\n\t\t\tcancelled within an hour from the specified time. For example, if you specify 5/31/2019,\n\t\t\t13:30:55, the Capacity Reservation is guaranteed to end between 13:30:55 and 14:30:55 on\n\t\t\t5/31/2019.

\n

If you are requesting a future-dated Capacity Reservation, you can't specify an end\n\t\t\tdate and time that is within the commitment duration.

" } }, - "ValidUntil": { - "target": "com.amazonaws.ec2#DateTime", + "EndDateType": { + "target": "com.amazonaws.ec2#EndDateType", "traits": { - "smithy.api#documentation": "

The end date and time of the request, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).\n At this point, no new EC2 Fleet requests are placed or able to fulfill the request. If no value is specified, the request remains until you cancel it.

" + "smithy.api#documentation": "

Indicates the way in which the Capacity Reservation ends. A Capacity Reservation can\n\t\t\thave one of the following end types:

\n " } }, - "ReplaceUnhealthyInstances": { - "target": "com.amazonaws.ec2#Boolean", + "InstanceMatchCriteria": { + "target": "com.amazonaws.ec2#InstanceMatchCriteria", "traits": { - "smithy.api#documentation": "

Indicates whether EC2 Fleet should replace unhealthy Spot Instances. Supported only for\n fleets of type maintain. For more information, see EC2 Fleet\n health checks in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Indicates the type of instance launches that the Capacity Reservation accepts. The\n\t\t\toptions include:

\n \n \n

If you are requesting a future-dated Capacity Reservation, you must specify\n\t\t\t\t\ttargeted.

\n
\n

Default: open\n

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

The key-value pair for tagging the EC2 Fleet request on creation. For more information, see \n Tag your resources.

\n

If the fleet type is instant, specify a resource type of fleet \n to tag the fleet or instance to tag the instances at launch.

\n

If the fleet type is maintain or request, specify a resource\n type of fleet to tag the fleet. You cannot specify a resource type of\n instance. To tag instances at launch, specify the tags in a launch template.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

The tags to apply to the Capacity Reservation during launch.

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

Reserved.

" + "smithy.api#documentation": "

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

" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#CreateFleetResult": { - "type": "structure", - "members": { - "FleetId": { - "target": "com.amazonaws.ec2#FleetId", - "traits": { - "aws.protocols#ec2QueryName": "FleetId", - "smithy.api#documentation": "

The ID of the EC2 Fleet.

", - "smithy.api#xmlName": "fleetId" + }, + "OutpostArn": { + "target": "com.amazonaws.ec2#OutpostArn", + "traits": { + "smithy.api#documentation": "\n

Not supported for future-dated Capacity Reservations.

\n
\n

The Amazon Resource Name (ARN) of the Outpost on which to create the Capacity\n\t\t\tReservation.

" } }, - "Errors": { - "target": "com.amazonaws.ec2#CreateFleetErrorsSet", + "PlacementGroupArn": { + "target": "com.amazonaws.ec2#PlacementGroupArn", "traits": { - "aws.protocols#ec2QueryName": "ErrorSet", - "smithy.api#documentation": "

Information about the instances that could not be launched by the fleet. Supported only for\n fleets of type instant.

", - "smithy.api#xmlName": "errorSet" + "smithy.api#documentation": "\n

Not supported for future-dated Capacity Reservations.

\n
\n

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

" } }, - "Instances": { - "target": "com.amazonaws.ec2#CreateFleetInstancesSet", + "StartDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "FleetInstanceSet", - "smithy.api#documentation": "

Information about the instances that were launched by the fleet. Supported only for\n fleets of type instant.

", - "smithy.api#xmlName": "fleetInstanceSet" + "smithy.api#documentation": "\n

Required for future-dated Capacity Reservations only. To create a Capacity\n\t\t\t\tReservation for immediate use, omit this parameter.

\n
\n

The date and time at which the future-dated Capacity Reservation should become\n\t\t\tavailable for use, in the ISO8601 format in the UTC time zone\n\t\t\t\t(YYYY-MM-DDThh:mm:ss.sssZ).

\n

You can request a future-dated Capacity Reservation between 5 and 120 days in\n\t\t\tadvance.

" + } + }, + "CommitmentDuration": { + "target": "com.amazonaws.ec2#CapacityReservationCommitmentDuration", + "traits": { + "smithy.api#documentation": "\n

Required for future-dated Capacity Reservations only. To create a Capacity\n\t\t\t\tReservation for immediate use, omit this parameter.

\n
\n

Specify a commitment duration, in seconds, for the future-dated Capacity\n\t\t\tReservation.

\n

The commitment duration is a minimum duration for which you commit to having the\n\t\t\tfuture-dated Capacity Reservation in the active state in your account after\n\t\t\tit has been delivered.

\n

For more information, see Commitment\n\t\t\t\tduration.

" + } + }, + "DeliveryPreference": { + "target": "com.amazonaws.ec2#CapacityReservationDeliveryPreference", + "traits": { + "smithy.api#documentation": "\n

Required for future-dated Capacity Reservations only. To create a Capacity\n\t\t\t\tReservation for immediate use, omit this parameter.

\n
\n

Indicates that the requested capacity will be delivered in addition to any running\n\t\t\tinstances or reserved capacity that you have in your account at the requested date and\n\t\t\ttime.

\n

The only supported value is incremental.

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

Information about the Capacity Reservation.

", + "smithy.api#xmlName": "capacityReservation" } } }, @@ -15258,21 +16212,36 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateFlowLogs": { + "com.amazonaws.ec2#CreateCarrierGateway": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateFlowLogsRequest" + "target": "com.amazonaws.ec2#CreateCarrierGatewayRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateFlowLogsResult" + "target": "com.amazonaws.ec2#CreateCarrierGatewayResult" }, "traits": { - "smithy.api#documentation": "

Creates one or more flow logs to capture information about IP traffic for a specific network interface,\n subnet, or VPC.

\n

Flow log data for a monitored network interface is recorded as flow log records, which are log events \n consisting of fields that describe the traffic flow. For more information, see \n Flow log records \n in the Amazon Virtual Private Cloud User Guide.

\n

When publishing to CloudWatch Logs, flow log records are published to a log group, and each network \n interface has a unique log stream in the log group. When publishing to Amazon S3, flow log records for all \n of the monitored network interfaces are published to a single log file object that is stored in the specified \n bucket.

\n

For more information, see VPC Flow Logs in the Amazon Virtual Private Cloud User Guide.

" + "smithy.api#documentation": "

Creates a carrier gateway. For more information about carrier gateways, see Carrier gateways in the Amazon Web Services Wavelength Developer Guide.

" } }, - "com.amazonaws.ec2#CreateFlowLogsRequest": { + "com.amazonaws.ec2#CreateCarrierGatewayRequest": { "type": "structure", "members": { + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC to associate with the carrier gateway.

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

The tags to associate with the carrier gateway.

", + "smithy.api#xmlName": "TagSpecification" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { @@ -15282,85 +16251,186 @@ "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see How to ensure\n idempotency.

" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see How to ensure\n idempotency.

", + "smithy.api#idempotencyToken": {} } - }, - "DeliverLogsPermissionArn": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#CreateCarrierGatewayResult": { + "type": "structure", + "members": { + "CarrierGateway": { + "target": "com.amazonaws.ec2#CarrierGateway", "traits": { - "smithy.api#documentation": "

The ARN of the IAM role that allows Amazon EC2 to publish flow logs to the log destination.

\n

This parameter is required if the destination type is cloud-watch-logs,\n or if the destination type is kinesis-data-firehose and the delivery stream\n and the resources to monitor are in different accounts.

" + "aws.protocols#ec2QueryName": "CarrierGateway", + "smithy.api#documentation": "

Information about the carrier gateway.

", + "smithy.api#xmlName": "carrierGateway" } - }, - "DeliverCrossAccountRole": { + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#CreateClientVpnEndpoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateClientVpnEndpointRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateClientVpnEndpointResult" + }, + "traits": { + "smithy.api#documentation": "

Creates a Client VPN endpoint. A Client VPN endpoint is the resource you create and configure to \n\t\t\tenable and manage client VPN sessions. It is the destination endpoint at which all client VPN sessions \n\t\t\tare terminated.

" + } + }, + "com.amazonaws.ec2#CreateClientVpnEndpointRequest": { + "type": "structure", + "members": { + "ClientCidrBlock": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The ARN of the IAM role that allows Amazon EC2 to publish flow logs across accounts.

" + "smithy.api#documentation": "

The IPv4 address range, in CIDR notation, from which to assign client IP addresses. The address range cannot overlap with the local CIDR of the VPC in which the associated subnet is located, or the routes that you add manually. The address range cannot be changed after the Client VPN endpoint has been created. Client CIDR range must have a size of at least /22 and must not be greater than /12.

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

The name of a new or existing CloudWatch Logs log group where Amazon EC2 publishes your flow logs.

\n

This parameter is valid only if the destination type is cloud-watch-logs.

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

The ARN of the server certificate. For more information, see \n\t\t\tthe Certificate Manager User Guide.

", + "smithy.api#required": {} } }, - "ResourceIds": { - "target": "com.amazonaws.ec2#FlowLogResourceIds", + "AuthenticationOptions": { + "target": "com.amazonaws.ec2#ClientVpnAuthenticationRequestList", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the resources to monitor. For example, if the resource type is\n VPC, specify the IDs of the VPCs.

\n

Constraints: Maximum of 25 for transit gateway resource types. Maximum of 1000 for the\n other resource types.

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

Information about the authentication method to be used to authenticate clients.

", "smithy.api#required": {}, - "smithy.api#xmlName": "ResourceId" + "smithy.api#xmlName": "Authentication" } }, - "ResourceType": { - "target": "com.amazonaws.ec2#FlowLogsResourceType", + "ConnectionLogOptions": { + "target": "com.amazonaws.ec2#ConnectionLogOptions", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of resource to monitor.

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

Information about the client connection logging options.

\n

If you enable client connection logging, data about client connections is sent to a\n\t\t\tCloudwatch Logs log stream. The following information is logged:

\n ", "smithy.api#required": {} } }, - "TrafficType": { - "target": "com.amazonaws.ec2#TrafficType", + "DnsServers": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

The type of traffic to monitor (accepted traffic, rejected traffic, or all traffic).\n This parameter is not supported for transit gateway resource types. It is required for\n the other resource types.

" + "smithy.api#documentation": "

Information about the DNS servers to be used for DNS resolution. A Client VPN endpoint can\n\t\t\thave up to two DNS servers. If no DNS server is specified, the DNS address configured on the device is used for the DNS server.

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

The type of destination for the flow log data.

\n

Default: cloud-watch-logs\n

" + "smithy.api#documentation": "

The transport protocol to be used by the VPN session.

\n

Default value: udp\n

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

The port number to assign to the Client VPN endpoint for TCP and UDP traffic.

\n

Valid Values: 443 | 1194\n

\n

Default Value: 443\n

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

The destination for the flow log data. The meaning of this parameter depends on the destination type.

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

A brief description of the Client VPN endpoint.

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

Indicates whether split-tunnel is enabled on the Client VPN endpoint.

\n

By default, split-tunnel on a VPN endpoint is disabled.

\n

For information about split-tunnel VPN endpoints, see Split-tunnel Client VPN endpoint in the \n\t\t\tClient VPN Administrator Guide.

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

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

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

The fields to include in the flow log record. List the fields in the order in which\n they should appear. If you omit this parameter, the flow log is created using the\n default format. If you specify this parameter, you must include at least one\n field. For more information about the available fields, see Flow log\n records in the Amazon VPC User Guide or Transit Gateway Flow Log\n records in the Amazon Web Services Transit Gateway Guide.

\n

Specify the fields using the ${field-id} format, separated by spaces.

" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. \nFor more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} } }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The tags to apply to the flow logs.

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

The tags to apply to the Client VPN endpoint during creation.

", "smithy.api#xmlName": "TagSpecification" } }, - "MaxAggregationInterval": { + "SecurityGroupIds": { + "target": "com.amazonaws.ec2#ClientVpnSecurityGroupIdSet", + "traits": { + "smithy.api#documentation": "

The IDs of one or more security groups to apply to the target network. You must also specify the ID of the VPC that contains the security groups.

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

The ID of the VPC to associate with the Client VPN endpoint. If no security group IDs are specified in the request, the default security group for the VPC is applied.

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

Specify whether to enable the self-service portal for the Client VPN endpoint.

\n

Default Value: enabled\n

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

The options for managing connection authorization for new client connections.

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

The maximum interval of time during which a flow of packets is captured and aggregated into a flow log record. \n The possible values are 60 seconds (1 minute) or 600 seconds (10 minutes).\n This parameter must be 60 seconds for transit gateway resource types.

\n

When a network interface is attached to a Nitro-based\n instance, the aggregation interval is always 60 seconds or less, regardless\n of the value that you specify.

\n

Default: 600

" + "smithy.api#documentation": "

The maximum VPN session duration time in hours.

\n

Valid values: 8 | 10 | 12 | 24\n

\n

Default value: 24\n

" } }, - "DestinationOptions": { - "target": "com.amazonaws.ec2#DestinationOptionsRequest", + "ClientLoginBannerOptions": { + "target": "com.amazonaws.ec2#ClientLoginBannerOptions", "traits": { - "smithy.api#documentation": "

The destination options.

" + "smithy.api#documentation": "

Options for enabling a customizable text banner that will be displayed on\n\t\t\tAmazon Web Services provided clients when a VPN session is established.

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

Client route enforcement is a feature of the Client VPN service that helps enforce administrator defined routes on devices connected through the VPN. T\n\t\this feature helps improve your security posture by ensuring that network traffic originating from a connected client is not inadvertently sent outside the VPN tunnel.

\n

Client route enforcement works by monitoring the route table of a connected device for routing policy changes to the VPN connection. If the feature detects any VPN routing policy modifications, it will automatically force an update to the route table, \n\t\t\treverting it back to the expected route configurations.

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

Indicates whether the client VPN session is disconnected after the maximum timeout specified in SessionTimeoutHours is reached. If true, users are prompted to reconnect client VPN. If false, client VPN attempts to reconnect automatically. \n The default value is true.

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

The IP address type for the Client VPN endpoint. Valid values are ipv4\n\t\t\t(default) for IPv4 addressing only, ipv6 for IPv6 addressing only, or dual-stack for both IPv4 and IPv6\n\t\t\taddressing. When set to dual-stack, clients can connect to the endpoint\n\t\t\tusing either IPv4 or IPv6 addresses..

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

The IP address type for traffic within the Client VPN tunnel. Valid values are ipv4 (default) for IPv4 traffic only, ipv6 for IPv6 addressing only, or dual-stack for both IPv4 and IPv6 traffic. When set to dual-stack, clients can access both IPv4 and IPv6 resources through the VPN .

" } } }, @@ -15368,31 +16438,31 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateFlowLogsResult": { + "com.amazonaws.ec2#CreateClientVpnEndpointResult": { "type": "structure", "members": { - "ClientToken": { + "ClientVpnEndpointId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request.

", - "smithy.api#xmlName": "clientToken" + "aws.protocols#ec2QueryName": "ClientVpnEndpointId", + "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", + "smithy.api#xmlName": "clientVpnEndpointId" } }, - "FlowLogIds": { - "target": "com.amazonaws.ec2#ValueStringList", + "Status": { + "target": "com.amazonaws.ec2#ClientVpnEndpointStatus", "traits": { - "aws.protocols#ec2QueryName": "FlowLogIdSet", - "smithy.api#documentation": "

The IDs of the flow logs.

", - "smithy.api#xmlName": "flowLogIdSet" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The current state of the Client VPN endpoint.

", + "smithy.api#xmlName": "status" } }, - "Unsuccessful": { - "target": "com.amazonaws.ec2#UnsuccessfulItemSet", + "DnsName": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Unsuccessful", - "smithy.api#documentation": "

Information about the flow logs that could not be created successfully.

", - "smithy.api#xmlName": "unsuccessful" + "aws.protocols#ec2QueryName": "DnsName", + "smithy.api#documentation": "

The DNS name to be used by clients when establishing their VPN session.

", + "smithy.api#xmlName": "dnsName" } } }, @@ -15400,64 +16470,62 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateFpgaImage": { + "com.amazonaws.ec2#CreateClientVpnRoute": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateFpgaImageRequest" + "target": "com.amazonaws.ec2#CreateClientVpnRouteRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateFpgaImageResult" + "target": "com.amazonaws.ec2#CreateClientVpnRouteResult" }, "traits": { - "smithy.api#documentation": "

Creates an Amazon FPGA Image (AFI) from the specified design checkpoint (DCP).

\n

The create operation is asynchronous. To verify that the AFI is ready for use, \n check the output logs.

\n

An AFI contains the FPGA bitstream that is ready to download to an FPGA. \n You can securely deploy an AFI on multiple FPGA-accelerated instances.\n For more information, see the Amazon Web Services FPGA Hardware Development Kit.

" + "smithy.api#documentation": "

Adds a route to a network to a Client VPN endpoint. Each Client VPN endpoint has a route table that describes the \n\t\t\tavailable destination network routes. Each route in the route table specifies the path for traffic to specific resources or networks.

" } }, - "com.amazonaws.ec2#CreateFpgaImageRequest": { + "com.amazonaws.ec2#CreateClientVpnRouteRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ClientVpnEndpointId": { + "target": "com.amazonaws.ec2#ClientVpnEndpointId", "traits": { - "smithy.api#documentation": "

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

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

The ID of the Client VPN endpoint to which to add the route.

", + "smithy.api#required": {} } }, - "InputStorageLocation": { - "target": "com.amazonaws.ec2#StorageLocation", + "DestinationCidrBlock": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The location of the encrypted design checkpoint in Amazon S3. The input must be a tarball.

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

The IPv4 address range, in CIDR notation, of the route destination. For example:

\n ", "smithy.api#required": {} } }, - "LogsStorageLocation": { - "target": "com.amazonaws.ec2#StorageLocation", + "TargetVpcSubnetId": { + "target": "com.amazonaws.ec2#SubnetId", "traits": { - "smithy.api#documentation": "

The location in Amazon S3 for the output logs.

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

The ID of the subnet through which you want to route traffic. The specified subnet must be\n\t\t\tan existing target network of the Client VPN endpoint.

\n

Alternatively, if you're adding a route for the local network, specify local.

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

A description for the AFI.

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

A name for the AFI.

" + "smithy.api#documentation": "

A brief description of the route.

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

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. \n For more information, see Ensuring Idempotency.

" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. \nFor more information, see Ensuring idempotency.

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

The tags to apply to the FPGA image during creation.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

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

" } } }, @@ -15465,23 +16533,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateFpgaImageResult": { + "com.amazonaws.ec2#CreateClientVpnRouteResult": { "type": "structure", "members": { - "FpgaImageId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "FpgaImageId", - "smithy.api#documentation": "

The FPGA image identifier (AFI ID).

", - "smithy.api#xmlName": "fpgaImageId" - } - }, - "FpgaImageGlobalId": { - "target": "com.amazonaws.ec2#String", + "Status": { + "target": "com.amazonaws.ec2#ClientVpnRouteStatus", "traits": { - "aws.protocols#ec2QueryName": "FpgaImageGlobalId", - "smithy.api#documentation": "

The global FPGA image identifier (AGFI ID).

", - "smithy.api#xmlName": "fpgaImageGlobalId" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The current state of the route.

", + "smithy.api#xmlName": "status" } } }, @@ -15489,78 +16549,41 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateImage": { + "com.amazonaws.ec2#CreateCoipCidr": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateImageRequest" + "target": "com.amazonaws.ec2#CreateCoipCidrRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateImageResult" + "target": "com.amazonaws.ec2#CreateCoipCidrResult" }, "traits": { - "smithy.api#documentation": "

Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance \n \tthat is either running or stopped.

\n

If you customized your instance with instance store volumes or Amazon EBS volumes in addition to the root device volume, the \n \tnew AMI contains block device mapping information for those volumes. When you launch an instance from this new AMI, \n \tthe instance automatically launches with those additional volumes.

\n

For more information, see Create an Amazon EBS-backed Linux\n AMI in the Amazon Elastic Compute Cloud User Guide.

" + "smithy.api#documentation": "

\n Creates a range of customer-owned IP addresses.\n

" } }, - "com.amazonaws.ec2#CreateImageRequest": { + "com.amazonaws.ec2#CreateCoipCidrRequest": { "type": "structure", "members": { - "BlockDeviceMappings": { - "target": "com.amazonaws.ec2#BlockDeviceMappingRequestList", - "traits": { - "aws.protocols#ec2QueryName": "BlockDeviceMapping", - "smithy.api#documentation": "

The block device mappings.

\n

When using the CreateImage action:

\n ", - "smithy.api#xmlName": "blockDeviceMapping" - } - }, - "Description": { + "Cidr": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description for the new image.

", - "smithy.api#xmlName": "description" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

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

", - "smithy.api#xmlName": "dryRun" - } - }, - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", - "traits": { - "aws.protocols#ec2QueryName": "InstanceId", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance.

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

\n A customer-owned IP address range to create.\n

", + "smithy.api#required": {} } }, - "Name": { - "target": "com.amazonaws.ec2#String", + "CoipPoolId": { + "target": "com.amazonaws.ec2#Ipv4PoolCoipId", "traits": { - "aws.protocols#ec2QueryName": "Name", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A name for the new image.

\n

Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)

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

\n The ID of the address pool.\n

", + "smithy.api#required": {} } }, - "NoReboot": { + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "NoReboot", - "smithy.api#documentation": "

Indicates whether or not the instance should be automatically rebooted before creating \n the image. Specify one of the following values:

\n \n

Default: false\n

", - "smithy.api#xmlName": "noReboot" - } - }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", - "traits": { - "smithy.api#documentation": "

The tags to apply to the AMI and snapshots on creation. You can tag the AMI, the\n snapshots, or both.

\n \n

If you specify other values for ResourceType, the request fails.

\n

To tag an AMI or snapshot after it has been created, see CreateTags.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

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

" } } }, @@ -15568,15 +16591,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateImageResult": { + "com.amazonaws.ec2#CreateCoipCidrResult": { "type": "structure", "members": { - "ImageId": { - "target": "com.amazonaws.ec2#String", + "CoipCidr": { + "target": "com.amazonaws.ec2#CoipCidr", "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The ID of the new AMI.

", - "smithy.api#xmlName": "imageId" + "aws.protocols#ec2QueryName": "CoipCidr", + "smithy.api#documentation": "

\n Information about a range of customer-owned IP addresses.\n

", + "smithy.api#xmlName": "coipCidr" } } }, @@ -15584,60 +16607,40 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateInstanceConnectEndpoint": { + "com.amazonaws.ec2#CreateCoipPool": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateInstanceConnectEndpointRequest" + "target": "com.amazonaws.ec2#CreateCoipPoolRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateInstanceConnectEndpointResult" + "target": "com.amazonaws.ec2#CreateCoipPoolResult" }, "traits": { - "smithy.api#documentation": "

Creates an EC2 Instance Connect Endpoint.

\n

An EC2 Instance Connect Endpoint allows you to connect to an instance, without\n requiring the instance to have a public IPv4 address. For more information, see Connect to your instances without requiring a public IPv4 address using EC2\n Instance Connect Endpoint in the Amazon EC2 User\n Guide.

" + "smithy.api#documentation": "

Creates a pool of customer-owned IP (CoIP) addresses.

" } }, - "com.amazonaws.ec2#CreateInstanceConnectEndpointRequest": { + "com.amazonaws.ec2#CreateCoipPoolRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

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

" - } - }, - "SubnetId": { - "target": "com.amazonaws.ec2#SubnetId", + "LocalGatewayRouteTableId": { + "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the subnet in which to create the EC2 Instance Connect Endpoint.

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

\n The ID of the local gateway route table.\n

", "smithy.api#required": {} } }, - "SecurityGroupIds": { - "target": "com.amazonaws.ec2#SecurityGroupIdStringListRequest", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

One or more security groups to associate with the endpoint. If you don't specify a security group, \n the default security group for your VPC will be associated with the endpoint.

", - "smithy.api#xmlName": "SecurityGroupId" + "smithy.api#documentation": "

\n The tags to assign to the CoIP address pool.\n

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

Indicates whether your client's IP address is preserved as the source. The value is true or false.

\n \n

Default: true\n

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

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", - "smithy.api#idempotencyToken": {} - } - }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", - "traits": { - "smithy.api#documentation": "

The tags to apply to the EC2 Instance Connect Endpoint during creation.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

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

" } } }, @@ -15645,23 +16648,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateInstanceConnectEndpointResult": { + "com.amazonaws.ec2#CreateCoipPoolResult": { "type": "structure", "members": { - "InstanceConnectEndpoint": { - "target": "com.amazonaws.ec2#Ec2InstanceConnectEndpoint", - "traits": { - "aws.protocols#ec2QueryName": "InstanceConnectEndpoint", - "smithy.api#documentation": "

Information about the EC2 Instance Connect Endpoint.

", - "smithy.api#xmlName": "instanceConnectEndpoint" - } - }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "CoipPool": { + "target": "com.amazonaws.ec2#CoipPool", "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive idempotency token provided by the client in the the request.

", - "smithy.api#xmlName": "clientToken" + "aws.protocols#ec2QueryName": "CoipPool", + "smithy.api#documentation": "

Information about the CoIP address pool.

", + "smithy.api#xmlName": "coipPool" } } }, @@ -15669,132 +16664,160 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateInstanceEventWindow": { + "com.amazonaws.ec2#CreateCustomerGateway": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateInstanceEventWindowRequest" + "target": "com.amazonaws.ec2#CreateCustomerGatewayRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateInstanceEventWindowResult" + "target": "com.amazonaws.ec2#CreateCustomerGatewayResult" }, "traits": { - "smithy.api#documentation": "

Creates an event window in which scheduled events for the associated Amazon EC2 instances can\n run.

\n

You can define either a set of time ranges or a cron expression when creating the event\n window, but not both. All event window times are in UTC.

\n

You can create up to 200 event windows per Amazon Web Services Region.

\n

When you create the event window, targets (instance IDs, Dedicated Host IDs, or tags)\n are not yet associated with it. To ensure that the event window can be used, you must\n associate one or more targets with it by using the AssociateInstanceEventWindow API.

\n \n

Event windows are applicable only for scheduled events that stop, reboot, or\n terminate instances.

\n

Event windows are not applicable for:

\n \n
\n

For more information, see Define event windows for scheduled\n events in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Provides information to Amazon Web Services about your customer gateway device. The\n customer gateway device is the appliance at your end of the VPN connection. You\n must provide the IP address of the customer gateway device’s external\n interface. The IP address must be static and can be behind a device performing network\n address translation (NAT).

\n

For devices that use Border Gateway Protocol (BGP), you can also provide the device's\n BGP Autonomous System Number (ASN). You can use an existing ASN assigned to your network.\n If you don't have an ASN already, you can use a private ASN. For more information, see \n Customer gateway \n options for your Site-to-Site VPN connection in the Amazon Web Services Site-to-Site VPN User Guide.

\n

To create more than one customer gateway with the same VPN type, IP address, and\n BGP ASN, specify a unique device name for each customer gateway. An identical request\n returns information about the existing customer gateway; it doesn't create a new customer\n gateway.

", + "smithy.api#examples": [ + { + "title": "To create a customer gateway", + "documentation": "This example creates a customer gateway with the specified IP address for its outside interface.", + "input": { + "Type": "ipsec.1", + "PublicIp": "12.1.2.3", + "BgpAsn": 65534 + }, + "output": { + "CustomerGateway": { + "CustomerGatewayId": "cgw-0e11f167", + "IpAddress": "12.1.2.3", + "State": "available", + "Type": "ipsec.1", + "BgpAsn": "65534" + } + } + } + ] } }, - "com.amazonaws.ec2#CreateInstanceEventWindowRequest": { + "com.amazonaws.ec2#CreateCustomerGatewayRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "BgpAsn": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

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

" + "smithy.api#documentation": "

For customer gateway devices that support BGP, specify the device's ASN. You must specify either BgpAsn or BgpAsnExtended when creating the customer gateway. If the ASN is larger than 2,147,483,647, you must use BgpAsnExtended.

\n

Default: 65000

\n

Valid values: 1 to 2,147,483,647\n

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

The name of the event window.

" + "smithy.api#documentation": "

\n This member has been deprecated. The Internet-routable IP address for the customer gateway's outside interface. The\n address must be static.

" } }, - "TimeRanges": { - "target": "com.amazonaws.ec2#InstanceEventWindowTimeRangeRequestSet", + "CertificateArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The time range for the event window. If you specify a time range, you can't specify a cron\n expression.

", - "smithy.api#xmlName": "TimeRange" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the customer gateway certificate.

" } }, - "CronExpression": { - "target": "com.amazonaws.ec2#InstanceEventWindowCronExpression", + "Type": { + "target": "com.amazonaws.ec2#GatewayType", "traits": { - "smithy.api#documentation": "

The cron expression for the event window, for example, * 0-4,20-23 * * 1,5. If\n you specify a cron expression, you can't specify a time range.

\n

Constraints:

\n \n

For more information about cron expressions, see cron on the Wikipedia\n website.

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

The type of VPN connection that this customer gateway supports\n (ipsec.1).

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

The tags to apply to the event window.

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

The tags to apply to the customer gateway.

", "smithy.api#xmlName": "TagSpecification" } - } - }, - "traits": { - "smithy.api#input": {} - } + }, + "DeviceName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A name for the customer gateway device.

\n

Length Constraints: Up to 255 characters.

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

The IP address for the customer gateway device's outside interface. The address must be\n static. If OutsideIpAddressType in your VPN connection options is set to\n PrivateIpv4, you can use an RFC6598 or RFC1918 private IPv4 address. If\n OutsideIpAddressType is set to Ipv6, you can use an IPv6 address.

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

For customer gateway devices that support BGP, specify the device's ASN. You must specify either BgpAsn or BgpAsnExtended when creating the customer gateway. If the ASN is larger than 2,147,483,647, you must use BgpAsnExtended.

\n

Valid values: 2,147,483,648 to 4,294,967,295\n

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

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

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

Contains the parameters for CreateCustomerGateway.

", + "smithy.api#input": {} + } }, - "com.amazonaws.ec2#CreateInstanceEventWindowResult": { + "com.amazonaws.ec2#CreateCustomerGatewayResult": { "type": "structure", "members": { - "InstanceEventWindow": { - "target": "com.amazonaws.ec2#InstanceEventWindow", + "CustomerGateway": { + "target": "com.amazonaws.ec2#CustomerGateway", "traits": { - "aws.protocols#ec2QueryName": "InstanceEventWindow", - "smithy.api#documentation": "

Information about the event window.

", - "smithy.api#xmlName": "instanceEventWindow" + "aws.protocols#ec2QueryName": "CustomerGateway", + "smithy.api#documentation": "

Information about the customer gateway.

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

Contains the output of CreateCustomerGateway.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateInstanceExportTask": { + "com.amazonaws.ec2#CreateDefaultSubnet": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateInstanceExportTaskRequest" + "target": "com.amazonaws.ec2#CreateDefaultSubnetRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateInstanceExportTaskResult" + "target": "com.amazonaws.ec2#CreateDefaultSubnetResult" }, "traits": { - "smithy.api#documentation": "

Exports a running or stopped instance to an Amazon S3 bucket.

\n

For information about the prerequisites for your Amazon S3 bucket, supported operating systems,\n image formats, and known limitations for the types of instances you can export, see Exporting an instance as a VM Using VM\n Import/Export in the VM Import/Export User Guide.

" + "smithy.api#documentation": "

Creates a default subnet with a size /20 IPv4 CIDR block in the\n specified Availability Zone in your default VPC. You can have only one default subnet\n per Availability Zone. For more information, see Create a default\n subnet in the Amazon VPC User Guide.

" } }, - "com.amazonaws.ec2#CreateInstanceExportTaskRequest": { + "com.amazonaws.ec2#CreateDefaultSubnetRequest": { "type": "structure", "members": { - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description for the conversion task or the resource being exported. The maximum length is 255 characters.

", - "smithy.api#xmlName": "description" - } - }, - "ExportToS3Task": { - "target": "com.amazonaws.ec2#ExportToS3TaskSpecification", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#AvailabilityZoneName", "traits": { - "aws.protocols#ec2QueryName": "ExportToS3", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The format and location for an export instance task.

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

The Availability Zone in which to create the default subnet.

\n

Either AvailabilityZone or AvailabilityZoneId must be specified,\n but not both.

" } }, - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance.

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

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

" } }, - "TargetEnvironment": { - "target": "com.amazonaws.ec2#ExportEnvironment", + "Ipv6Native": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "TargetEnvironment", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The target virtualization environment.

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

Indicates whether to create an IPv6 only subnet. If you already have a default subnet\n for this Availability Zone, you must delete it before you can create an IPv6 only subnet.

" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#AvailabilityZoneId", "traits": { - "smithy.api#documentation": "

The tags to apply to the export instance task during creation.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

The ID of the Availability Zone.

\n

Either AvailabilityZone or AvailabilityZoneId must be specified,\n but not both.

" } } }, @@ -15802,15 +16825,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateInstanceExportTaskResult": { + "com.amazonaws.ec2#CreateDefaultSubnetResult": { "type": "structure", "members": { - "ExportTask": { - "target": "com.amazonaws.ec2#ExportTask", + "Subnet": { + "target": "com.amazonaws.ec2#Subnet", "traits": { - "aws.protocols#ec2QueryName": "ExportTask", - "smithy.api#documentation": "

Information about the export instance task.

", - "smithy.api#xmlName": "exportTask" + "aws.protocols#ec2QueryName": "Subnet", + "smithy.api#documentation": "

Information about the subnet.

", + "smithy.api#xmlName": "subnet" } } }, @@ -15818,47 +16841,25 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateInternetGateway": { + "com.amazonaws.ec2#CreateDefaultVpc": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateInternetGatewayRequest" + "target": "com.amazonaws.ec2#CreateDefaultVpcRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateInternetGatewayResult" + "target": "com.amazonaws.ec2#CreateDefaultVpcResult" }, "traits": { - "smithy.api#documentation": "

Creates an internet gateway for use with a VPC. After creating the internet gateway,\n\t\t\tyou attach it to a VPC using AttachInternetGateway.

\n

For more information, see Internet gateways in the \n Amazon VPC User Guide.

", - "smithy.api#examples": [ - { - "title": "To create an Internet gateway", - "documentation": "This example creates an Internet gateway.", - "output": { - "InternetGateway": { - "Tags": [], - "InternetGatewayId": "igw-c0a643a9", - "Attachments": [] - } - } - } - ] + "smithy.api#documentation": "

Creates a default VPC with a size /16 IPv4 CIDR block and a default subnet\n\t\t\tin each Availability Zone. For more information about the components of a default VPC,\n\t\t\tsee Default VPCs \n\t\t in the Amazon VPC User Guide. You cannot specify the components of the \n\t\t default VPC yourself.

\n

If you deleted your previous default VPC, you can create a default VPC. You cannot have\n\t\t\tmore than one default VPC per Region.

" } }, - "com.amazonaws.ec2#CreateInternetGatewayRequest": { + "com.amazonaws.ec2#CreateDefaultVpcRequest": { "type": "structure", "members": { - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", - "traits": { - "smithy.api#documentation": "

The tags to assign to the internet gateway.

", - "smithy.api#xmlName": "TagSpecification" - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

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

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

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

" } } }, @@ -15866,15 +16867,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateInternetGatewayResult": { + "com.amazonaws.ec2#CreateDefaultVpcResult": { "type": "structure", "members": { - "InternetGateway": { - "target": "com.amazonaws.ec2#InternetGateway", + "Vpc": { + "target": "com.amazonaws.ec2#Vpc", "traits": { - "aws.protocols#ec2QueryName": "InternetGateway", - "smithy.api#documentation": "

Information about the internet gateway.

", - "smithy.api#xmlName": "internetGateway" + "aws.protocols#ec2QueryName": "Vpc", + "smithy.api#documentation": "

Information about the VPC.

", + "smithy.api#xmlName": "vpc" } } }, @@ -15882,156 +16883,71 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateIpam": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateIpamRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateIpamResult" - }, - "traits": { - "smithy.api#documentation": "

Create an IPAM. Amazon VPC IP Address Manager (IPAM) is a VPC feature that you can use\n to automate your IP address management workflows including assigning, tracking,\n troubleshooting, and auditing IP addresses across Amazon Web Services Regions and accounts\n throughout your Amazon Web Services Organization.

\n

For more information, see Create an IPAM in the Amazon VPC IPAM User Guide.\n

" - } - }, - "com.amazonaws.ec2#CreateIpamPool": { + "com.amazonaws.ec2#CreateDelegateMacVolumeOwnershipTask": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateIpamPoolRequest" + "target": "com.amazonaws.ec2#CreateDelegateMacVolumeOwnershipTaskRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateIpamPoolResult" + "target": "com.amazonaws.ec2#CreateDelegateMacVolumeOwnershipTaskResult" }, "traits": { - "smithy.api#documentation": "

Create an IP address pool for Amazon VPC IP Address Manager (IPAM). In IPAM, a pool is a collection of contiguous IP addresses CIDRs. Pools enable you to organize your IP addresses according to your routing and security needs. For example, if you have separate routing and security needs for development and production applications, you can create a pool for each.

\n

For more information, see Create a top-level pool in the Amazon VPC IPAM User Guide.\n

" + "smithy.api#documentation": "

Delegates ownership of the Amazon EBS root volume for an Apple silicon \n Mac instance to an administrative user.

" } }, - "com.amazonaws.ec2#CreateIpamPoolRequest": { + "com.amazonaws.ec2#CreateDelegateMacVolumeOwnershipTaskRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

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

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

The ID of the scope in which you would like to create the IPAM pool.

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

In IPAM, the locale is the Amazon Web Services Region where you want to make an IPAM pool available for allocations. Only resources in the same Region as the locale of the pool can get IP address allocations from the pool. You can only allocate a CIDR for a VPC, for example, from an IPAM pool that shares a locale with the VPC’s Region. Note that once you choose a Locale for a pool, you cannot modify it. If you do not choose a locale, resources in Regions others than the IPAM's home region cannot use CIDRs from this pool.

\n

Possible values: Any Amazon Web Services Region, such as us-east-1.

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

The ID of the source IPAM pool. Use this option to create a pool within an existing pool. Note that the CIDR you provision for the pool within the source pool must be available in the source pool's CIDR range.

" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

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

A description for the IPAM pool.

" + "smithy.api#documentation": "

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

" } }, - "AddressFamily": { - "target": "com.amazonaws.ec2#AddressFamily", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IP protocol assigned to this IPAM pool. You must choose either IPv4 or IPv6 protocol for a pool.

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

The ID of the Amazon EC2 Mac instance.

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

If selected, IPAM will continuously look for resources within the CIDR range of this pool \n and automatically import them as allocations into your IPAM. The CIDRs that will be allocated for\n these resources must not already be allocated to other resources in order for the import to succeed. IPAM will import \n a CIDR regardless of its compliance with the pool's allocation rules, so a resource might be imported and subsequently \n marked as noncompliant. If IPAM discovers multiple CIDRs that overlap, IPAM will import the largest CIDR only. If IPAM \n discovers multiple CIDRs with matching CIDRs, IPAM will randomly import one of them only.\n

\n

A locale must be set on the pool for this feature to work.

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

Determines if the pool is publicly advertisable. This option is not available for pools with AddressFamily set to ipv4.

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

The minimum netmask length required for CIDR allocations in this IPAM pool to be compliant. The minimum netmask length must be \n less than the maximum netmask length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.

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

The maximum netmask length possible for CIDR allocations in this IPAM pool to be compliant. The maximum netmask length must be \n greater than the minimum netmask length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.

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

The default netmask length for allocations added to this pool. If, for example, the CIDR assigned to this pool is 10.0.0.0/8 and you enter 16 here, \n new allocations will default to 10.0.0.0/16.

" - } - }, - "AllocationResourceTags": { - "target": "com.amazonaws.ec2#RequestIpamResourceTagList", + "MacCredentials": { + "target": "com.amazonaws.ec2#SensitiveMacCredentials", "traits": { - "smithy.api#documentation": "

Tags that are required for resources that use CIDRs from this IPAM pool. Resources that do not have these tags will not be allowed to allocate space from the pool. If the resources have their tags changed after they have allocated space or if the allocation tagging requirements are changed on the pool, the resource may be marked as noncompliant.

", - "smithy.api#xmlName": "AllocationResourceTag" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Specifies the following credentials:

\n \n

The credentials must be specified in the following JSON format:

\n

\n {\n \"internalDiskPassword\":\"internal-disk-admin_password\",\n \"rootVolumeUsername\":\"root-volume-admin_username\",\n \"rootVolumepassword\":\"root-volume-admin_password\"\n}\n

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

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

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

The tags to assign to the volume ownership delegation task.

", "smithy.api#xmlName": "TagSpecification" } - }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} - } - }, - "AwsService": { - "target": "com.amazonaws.ec2#IpamPoolAwsService", - "traits": { - "smithy.api#documentation": "

Limits which service in Amazon Web Services that the pool can be used in. \"ec2\", for example, allows users to use space for Elastic IP addresses and VPCs.

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

The IP address source for pools in the public scope. Only used for provisioning IP address CIDRs to pools in the public scope. Default is byoip. For more information, see Create IPv6 pools in the Amazon VPC IPAM User Guide. \n By default, you can add only one Amazon-provided IPv6 CIDR block to a top-level IPv6 pool if PublicIpSource is amazon. For information on increasing the default limit, see Quotas for your IPAM in the Amazon VPC IPAM User Guide.

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

The resource used to provision CIDRs to a resource planning pool.

" - } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateIpamPoolResult": { + "com.amazonaws.ec2#CreateDelegateMacVolumeOwnershipTaskResult": { "type": "structure", "members": { - "IpamPool": { - "target": "com.amazonaws.ec2#IpamPool", + "MacModificationTask": { + "target": "com.amazonaws.ec2#MacModificationTask", "traits": { - "aws.protocols#ec2QueryName": "IpamPool", - "smithy.api#documentation": "

Information about the IPAM pool created.

", - "smithy.api#xmlName": "ipamPool" + "aws.protocols#ec2QueryName": "MacModificationTask", + "smithy.api#documentation": "

Information about the volume ownership delegation task.

", + "smithy.api#xmlName": "macModificationTask" } } }, @@ -16039,131 +16955,166 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateIpamRequest": { + "com.amazonaws.ec2#CreateDhcpOptions": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateDhcpOptionsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateDhcpOptionsResult" + }, + "traits": { + "smithy.api#documentation": "

Creates a custom set of DHCP options. After you create a DHCP option set, you associate\n\t it with a VPC. After you associate a DHCP option set with a VPC, all existing and newly \n\t launched instances in the VPC use this set of DHCP options.

\n

The following are the individual DHCP options you can specify. For more information, see \n DHCP option sets \n in the Amazon VPC User Guide.

\n ", + "smithy.api#examples": [ + { + "title": "To create a DHCP options set", + "documentation": "This example creates a DHCP options set.", + "input": { + "DhcpConfigurations": [ + { + "Key": "domain-name-servers", + "Values": [ + "10.2.5.1", + "10.2.5.2" + ] + } + ] + }, + "output": { + "DhcpOptions": { + "DhcpConfigurations": [ + { + "Values": [ + { + "Value": "10.2.5.2" + }, + { + "Value": "10.2.5.1" + } + ], + "Key": "domain-name-servers" + } + ], + "DhcpOptionsId": "dopt-d9070ebb" + } + } + } + ] + } + }, + "com.amazonaws.ec2#CreateDhcpOptionsRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

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

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

A description for the IPAM.

" - } - }, - "OperatingRegions": { - "target": "com.amazonaws.ec2#AddIpamOperatingRegionSet", + "DhcpConfigurations": { + "target": "com.amazonaws.ec2#NewDhcpConfigurationList", "traits": { - "smithy.api#documentation": "

The operating Regions for the IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

\n

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide.\n

", - "smithy.api#xmlName": "OperatingRegion" + "aws.protocols#ec2QueryName": "DhcpConfiguration", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A DHCP configuration option.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "dhcpConfiguration" } }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

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

The tags to assign to the DHCP option.

", "smithy.api#xmlName": "TagSpecification" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

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

", + "smithy.api#xmlName": "dryRun" } - }, - "Tier": { - "target": "com.amazonaws.ec2#IpamTier", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#CreateDhcpOptionsResult": { + "type": "structure", + "members": { + "DhcpOptions": { + "target": "com.amazonaws.ec2#DhcpOptions", "traits": { - "smithy.api#documentation": "

IPAM is offered in a Free Tier and an Advanced Tier. For more information about the features available in each tier and the costs associated with the tiers, see Amazon VPC pricing > IPAM tab.

" + "aws.protocols#ec2QueryName": "DhcpOptions", + "smithy.api#documentation": "

A set of DHCP options.

", + "smithy.api#xmlName": "dhcpOptions" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateIpamResourceDiscovery": { + "com.amazonaws.ec2#CreateEgressOnlyInternetGateway": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateIpamResourceDiscoveryRequest" + "target": "com.amazonaws.ec2#CreateEgressOnlyInternetGatewayRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateIpamResourceDiscoveryResult" + "target": "com.amazonaws.ec2#CreateEgressOnlyInternetGatewayResult" }, "traits": { - "smithy.api#documentation": "

Creates an IPAM resource discovery. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

" + "smithy.api#documentation": "

[IPv6 only] Creates an egress-only internet gateway for your VPC. An egress-only\n\t\t\tinternet gateway is used to enable outbound communication over IPv6 from instances in\n\t\t\tyour VPC to the internet, and prevents hosts outside of your VPC from initiating an IPv6\n\t\t\tconnection with your instance.

" } }, - "com.amazonaws.ec2#CreateIpamResourceDiscoveryRequest": { + "com.amazonaws.ec2#CreateEgressOnlyInternetGatewayRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

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

" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n\t\t\trequest. For more information, see Ensuring idempotency.

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

A description for the IPAM resource discovery.

" + "smithy.api#documentation": "

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

" } }, - "OperatingRegions": { - "target": "com.amazonaws.ec2#AddIpamOperatingRegionSet", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "smithy.api#documentation": "

Operating Regions for the IPAM resource discovery. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

", - "smithy.api#xmlName": "OperatingRegion" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC for which to create the egress-only internet gateway.

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

Tag specifications for the IPAM resource discovery.

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

The tags to assign to the egress-only internet gateway.

", "smithy.api#xmlName": "TagSpecification" } - }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

A client token for the IPAM resource discovery.

", - "smithy.api#idempotencyToken": {} - } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateIpamResourceDiscoveryResult": { + "com.amazonaws.ec2#CreateEgressOnlyInternetGatewayResult": { "type": "structure", "members": { - "IpamResourceDiscovery": { - "target": "com.amazonaws.ec2#IpamResourceDiscovery", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "IpamResourceDiscovery", - "smithy.api#documentation": "

An IPAM resource discovery.

", - "smithy.api#xmlName": "ipamResourceDiscovery" + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n\t\t\trequest.

", + "smithy.api#xmlName": "clientToken" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#CreateIpamResult": { - "type": "structure", - "members": { - "Ipam": { - "target": "com.amazonaws.ec2#Ipam", + }, + "EgressOnlyInternetGateway": { + "target": "com.amazonaws.ec2#EgressOnlyInternetGateway", "traits": { - "aws.protocols#ec2QueryName": "Ipam", - "smithy.api#documentation": "

Information about the IPAM created.

", - "smithy.api#xmlName": "ipam" + "aws.protocols#ec2QueryName": "EgressOnlyInternetGateway", + "smithy.api#documentation": "

Information about the egress-only internet gateway.

", + "smithy.api#xmlName": "egressOnlyInternetGateway" } } }, @@ -16171,261 +17122,247 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateIpamScope": { + "com.amazonaws.ec2#CreateFleet": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateIpamScopeRequest" + "target": "com.amazonaws.ec2#CreateFleetRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateIpamScopeResult" + "target": "com.amazonaws.ec2#CreateFleetResult" }, "traits": { - "smithy.api#documentation": "

Create an IPAM scope. In IPAM, a scope is the highest-level container within IPAM. An IPAM contains two default scopes. Each scope represents the IP space for a single network. The private scope is intended for all private IP address space. The public scope is intended for all public IP address space. Scopes enable you to reuse IP addresses across multiple unconnected networks without causing IP address overlap or conflict.

\n

For more information, see Add a scope in the Amazon VPC IPAM User Guide.

" + "smithy.api#documentation": "

Creates an EC2 Fleet that contains the configuration information for On-Demand Instances and Spot Instances.\n Instances are launched immediately if there is available capacity.

\n

A single EC2 Fleet can include multiple launch specifications that vary by instance type,\n AMI, Availability Zone, or subnet.

\n

For more information, see EC2 Fleet in the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#CreateIpamScopeRequest": { + "com.amazonaws.ec2#CreateFleetError": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "LaunchTemplateAndOverrides": { + "target": "com.amazonaws.ec2#LaunchTemplateAndOverridesResponse", "traits": { - "smithy.api#documentation": "

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

" + "aws.protocols#ec2QueryName": "LaunchTemplateAndOverrides", + "smithy.api#documentation": "

The launch templates and overrides that were used for launching the instances. The\n values that you specify in the Overrides replace the values in the launch template.

", + "smithy.api#xmlName": "launchTemplateAndOverrides" } }, - "IpamId": { - "target": "com.amazonaws.ec2#IpamId", + "Lifecycle": { + "target": "com.amazonaws.ec2#InstanceLifecycle", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the IPAM for which you're creating this scope.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Lifecycle", + "smithy.api#documentation": "

Indicates if the instance that could not be launched was a Spot Instance or On-Demand Instance.

", + "smithy.api#xmlName": "lifecycle" } }, - "Description": { + "ErrorCode": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

A description for the scope you're creating.

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

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

", - "smithy.api#xmlName": "TagSpecification" + "aws.protocols#ec2QueryName": "ErrorCode", + "smithy.api#documentation": "

The error code that indicates why the instance could not be launched. For more\n information about error codes, see Error codes.

", + "smithy.api#xmlName": "errorCode" } }, - "ClientToken": { + "ErrorMessage": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "aws.protocols#ec2QueryName": "ErrorMessage", + "smithy.api#documentation": "

The error message that describes why the instance could not be launched. For more\n information about error messages, see Error codes.

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

Describes the instances that could not be launched by the fleet.

" } }, - "com.amazonaws.ec2#CreateIpamScopeResult": { - "type": "structure", - "members": { - "IpamScope": { - "target": "com.amazonaws.ec2#IpamScope", - "traits": { - "aws.protocols#ec2QueryName": "IpamScope", - "smithy.api#documentation": "

Information about the created scope.

", - "smithy.api#xmlName": "ipamScope" - } + "com.amazonaws.ec2#CreateFleetErrorsSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CreateFleetError", + "traits": { + "smithy.api#xmlName": "item" } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateKeyPair": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateKeyPairRequest" - }, - "output": { - "target": "com.amazonaws.ec2#KeyPair" - }, - "traits": { - "smithy.api#documentation": "

Creates an ED25519 or 2048-bit RSA key pair with the specified name and in the\n specified PEM or PPK format. Amazon EC2 stores the public key and displays the private\n key for you to save to a file. The private key is returned as an unencrypted PEM encoded\n PKCS#1 private key or an unencrypted PPK formatted private key for use with PuTTY. If a\n key with the specified name already exists, Amazon EC2 returns an error.

\n

The key pair returned to you is available only in the Amazon Web Services Region in which you create it.\n If you prefer, you can create your own key pair using a third-party tool and upload it\n to any Region using ImportKeyPair.

\n

You can have up to 5,000 key pairs per Amazon Web Services Region.

\n

For more information, see Amazon EC2 key pairs in the\n Amazon Elastic Compute Cloud User Guide.

", - "smithy.api#examples": [ - { - "title": "To create a key pair", - "documentation": "This example creates a key pair named my-key-pair.", - "input": { - "KeyName": "my-key-pair" - } - } - ] - } - }, - "com.amazonaws.ec2#CreateKeyPairRequest": { + "com.amazonaws.ec2#CreateFleetInstance": { "type": "structure", "members": { - "KeyName": { - "target": "com.amazonaws.ec2#String", + "LaunchTemplateAndOverrides": { + "target": "com.amazonaws.ec2#LaunchTemplateAndOverridesResponse", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A unique name for the key pair.

\n

Constraints: Up to 255 ASCII characters

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "LaunchTemplateAndOverrides", + "smithy.api#documentation": "

The launch templates and overrides that were used for launching the instances. The\n values that you specify in the Overrides replace the values in the launch template.

", + "smithy.api#xmlName": "launchTemplateAndOverrides" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Lifecycle": { + "target": "com.amazonaws.ec2#InstanceLifecycle", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

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

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "Lifecycle", + "smithy.api#documentation": "

Indicates if the instance that was launched is a Spot Instance or On-Demand Instance.

", + "smithy.api#xmlName": "lifecycle" } }, - "KeyType": { - "target": "com.amazonaws.ec2#KeyType", + "InstanceIds": { + "target": "com.amazonaws.ec2#InstanceIdsSet", "traits": { - "smithy.api#documentation": "

The type of key pair. Note that ED25519 keys are not supported for Windows instances.

\n

Default: rsa\n

" + "aws.protocols#ec2QueryName": "InstanceIds", + "smithy.api#documentation": "

The IDs of the instances.

", + "smithy.api#xmlName": "instanceIds" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", "traits": { - "smithy.api#documentation": "

The tags to apply to the new key pair.

", - "smithy.api#xmlName": "TagSpecification" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type.

", + "smithy.api#xmlName": "instanceType" } }, - "KeyFormat": { - "target": "com.amazonaws.ec2#KeyFormat", + "Platform": { + "target": "com.amazonaws.ec2#PlatformValues", "traits": { - "smithy.api#documentation": "

The format of the key pair.

\n

Default: pem\n

" + "aws.protocols#ec2QueryName": "Platform", + "smithy.api#documentation": "

The value is windows for Windows instances in an EC2 Fleet. Otherwise, the value is\n blank.

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

Describes the instances that were launched by the fleet.

" } }, - "com.amazonaws.ec2#CreateLaunchTemplate": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateLaunchTemplateRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateLaunchTemplateResult" - }, - "traits": { - "smithy.api#documentation": "

Creates a launch template.

\n

A launch template contains the parameters to launch an instance. When you launch an\n instance using RunInstances, you can specify a launch template instead\n of providing the launch parameters in the request. For more information, see Launch\n an instance from a launch template in the\n Amazon Elastic Compute Cloud User Guide.

\n

To clone an existing launch template as the basis for a new launch template, use the \n Amazon EC2 console. The API, SDKs, and CLI do not support cloning a template. For more \n information, see Create a launch template from an existing launch template in the\n Amazon Elastic Compute Cloud User Guide.

", - "smithy.api#examples": [ - { - "title": "To create a launch template", - "documentation": "This example creates a launch template that specifies the subnet in which to launch the instance, assigns a public IP address and an IPv6 address to the instance, and creates a tag for the instance.", - "input": { - "LaunchTemplateName": "my-template", - "VersionDescription": "WebVersion1", - "LaunchTemplateData": { - "NetworkInterfaces": [ - { - "AssociatePublicIpAddress": true, - "DeviceIndex": 0, - "Ipv6AddressCount": 1, - "SubnetId": "subnet-7b16de0c" - } - ], - "ImageId": "ami-8c1be5f6", - "InstanceType": "t2.small", - "TagSpecifications": [ - { - "ResourceType": "instance", - "Tags": [ - { - "Key": "Name", - "Value": "webserver" - } - ] - } - ] - } - }, - "output": { - "LaunchTemplate": { - "LatestVersionNumber": 1, - "LaunchTemplateId": "lt-01238c059e3466abc", - "LaunchTemplateName": "my-template", - "DefaultVersionNumber": 1, - "CreatedBy": "arn:aws:iam::123456789012:root", - "CreateTime": "2017-11-27T09:13:24.000Z" - } - } - } - ] + "com.amazonaws.ec2#CreateFleetInstancesSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CreateFleetInstance", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#CreateLaunchTemplateRequest": { + "com.amazonaws.ec2#CreateFleetRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

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

" + "smithy.api#documentation": "

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

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

Unique, case-sensitive identifier you provide to ensure the idempotency of the\n request. For more information, see Ensuring\n idempotency.

\n

Constraint: Maximum 128 ASCII characters.

" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. If you do not specify a client token, a randomly generated token is used for\n the request to ensure idempotency.

\n

For more information, see Ensuring\n idempotency.

", + "smithy.api#idempotencyToken": {} } }, - "LaunchTemplateName": { - "target": "com.amazonaws.ec2#LaunchTemplateName", + "SpotOptions": { + "target": "com.amazonaws.ec2#SpotOptionsRequest", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A name for the launch template.

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

Describes the configuration of Spot Instances in an EC2 Fleet.

" } }, - "VersionDescription": { - "target": "com.amazonaws.ec2#VersionDescription", + "OnDemandOptions": { + "target": "com.amazonaws.ec2#OnDemandOptionsRequest", "traits": { - "smithy.api#documentation": "

A description for the first version of the launch template.

" + "smithy.api#documentation": "

Describes the configuration of On-Demand Instances in an EC2 Fleet.

" } }, - "LaunchTemplateData": { - "target": "com.amazonaws.ec2#RequestLaunchTemplateData", + "ExcessCapacityTerminationPolicy": { + "target": "com.amazonaws.ec2#FleetExcessCapacityTerminationPolicy", + "traits": { + "smithy.api#documentation": "

Indicates whether running instances should be terminated if the total target capacity of\n the EC2 Fleet is decreased below the current size of the EC2 Fleet.

\n

Supported only for fleets of type maintain.

" + } + }, + "LaunchTemplateConfigs": { + "target": "com.amazonaws.ec2#FleetLaunchTemplateConfigListRequest", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The information for the launch template.

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

The configuration for the EC2 Fleet.

", + "smithy.api#required": {} + } + }, + "TargetCapacitySpecification": { + "target": "com.amazonaws.ec2#TargetCapacitySpecificationRequest", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The number of units to request.

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

Indicates whether running instances should be terminated when the EC2 Fleet expires.

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

The fleet type. The default value is maintain.

\n \n

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

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

The start date and time of the request, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).\n The default is to start fulfilling the request immediately.

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

The end date and time of the request, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).\n At this point, no new EC2 Fleet requests are placed or able to fulfill the request. If no value is specified, the request remains until you cancel it.

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

Indicates whether EC2 Fleet should replace unhealthy Spot Instances. Supported only for\n fleets of type maintain. For more information, see EC2 Fleet\n health checks in the Amazon EC2 User Guide.

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

The tags to apply to the launch template on creation. To tag the launch template, the\n resource type must be launch-template.

\n

To specify the tags for the resources that are created when an instance is\n launched, you must use the TagSpecifications parameter in the launch template data structure.

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

The key-value pair for tagging the EC2 Fleet request on creation. For more information, see \n Tag your resources.

\n

If the fleet type is instant, specify a resource type of fleet \n to tag the fleet or instance to tag the instances at launch.

\n

If the fleet type is maintain or request, specify a resource\n type of fleet to tag the fleet. You cannot specify a resource type of\n instance. To tag instances at launch, specify the tags in a launch template.

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

Reserved.

" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateLaunchTemplateResult": { + "com.amazonaws.ec2#CreateFleetResult": { "type": "structure", "members": { - "LaunchTemplate": { - "target": "com.amazonaws.ec2#LaunchTemplate", + "FleetId": { + "target": "com.amazonaws.ec2#FleetId", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplate", - "smithy.api#documentation": "

Information about the launch template.

", - "smithy.api#xmlName": "launchTemplate" + "aws.protocols#ec2QueryName": "FleetId", + "smithy.api#documentation": "

The ID of the EC2 Fleet.

", + "smithy.api#xmlName": "fleetId" } }, - "Warning": { - "target": "com.amazonaws.ec2#ValidationWarning", + "Errors": { + "target": "com.amazonaws.ec2#CreateFleetErrorsSet", "traits": { - "aws.protocols#ec2QueryName": "Warning", - "smithy.api#documentation": "

If the launch template contains parameters or parameter combinations that are not\n valid, an error code and an error message are returned for each issue that's\n found.

", - "smithy.api#xmlName": "warning" + "aws.protocols#ec2QueryName": "ErrorSet", + "smithy.api#documentation": "

Information about the instances that could not be launched by the fleet. Supported only for\n fleets of type instant.

", + "smithy.api#xmlName": "errorSet" + } + }, + "Instances": { + "target": "com.amazonaws.ec2#CreateFleetInstancesSet", + "traits": { + "aws.protocols#ec2QueryName": "FleetInstanceSet", + "smithy.api#documentation": "

Information about the instances that were launched by the fleet. Supported only for\n fleets of type instant.

", + "smithy.api#xmlName": "fleetInstanceSet" } } }, @@ -16433,110 +17370,109 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateLaunchTemplateVersion": { + "com.amazonaws.ec2#CreateFlowLogs": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateLaunchTemplateVersionRequest" + "target": "com.amazonaws.ec2#CreateFlowLogsRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateLaunchTemplateVersionResult" + "target": "com.amazonaws.ec2#CreateFlowLogsResult" }, "traits": { - "smithy.api#documentation": "

Creates a new version of a launch template. You must specify an existing launch\n template, either by name or ID. You can determine whether the new version inherits \n parameters from a source version, and add or overwrite parameters as needed.

\n

Launch template versions are numbered in the order in which they are created. You\n can't specify, change, or replace the numbering of launch template versions.

\n

Launch templates are immutable; after you create a launch template, you can't modify\n it. Instead, you can create a new version of the launch template that includes the\n changes that you require.

\n

For more information, see Modify a launch template (manage launch template versions) in the\n Amazon Elastic Compute Cloud User Guide.

", - "smithy.api#examples": [ - { - "title": "To create a launch template version", - "documentation": "This example creates a new launch template version based on version 1 of the specified launch template and specifies a different AMI ID.", - "input": { - "LaunchTemplateId": "lt-0abcd290751193123", - "SourceVersion": "1", - "VersionDescription": "WebVersion2", - "LaunchTemplateData": { - "ImageId": "ami-c998b6b2" - } - }, - "output": { - "LaunchTemplateVersion": { - "VersionDescription": "WebVersion2", - "LaunchTemplateId": "lt-0abcd290751193123", - "LaunchTemplateName": "my-template", - "VersionNumber": 2, - "CreatedBy": "arn:aws:iam::123456789012:root", - "LaunchTemplateData": { - "ImageId": "ami-c998b6b2", - "InstanceType": "t2.micro", - "NetworkInterfaces": [ - { - "Ipv6Addresses": [ - { - "Ipv6Address": "2001:db8:1234:1a00::123" - } - ], - "DeviceIndex": 0, - "SubnetId": "subnet-7b16de0c", - "AssociatePublicIpAddress": true - } - ] - }, - "DefaultVersion": false, - "CreateTime": "2017-12-01T13:35:46.000Z" - } - } - } - ] + "smithy.api#documentation": "

Creates one or more flow logs to capture information about IP traffic for a specific network interface,\n subnet, or VPC.

\n

Flow log data for a monitored network interface is recorded as flow log records, which are log events \n consisting of fields that describe the traffic flow. For more information, see \n Flow log records \n in the Amazon VPC User Guide.

\n

When publishing to CloudWatch Logs, flow log records are published to a log group, and each network \n interface has a unique log stream in the log group. When publishing to Amazon S3, flow log records for all \n of the monitored network interfaces are published to a single log file object that is stored in the specified \n bucket.

\n

For more information, see VPC Flow Logs \n in the Amazon VPC User Guide.

" } }, - "com.amazonaws.ec2#CreateLaunchTemplateVersionRequest": { + "com.amazonaws.ec2#CreateFlowLogsRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

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

" + "smithy.api#documentation": "

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

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

Unique, case-sensitive identifier you provide to ensure the idempotency of the\n request. For more information, see Ensuring\n idempotency.

\n

Constraint: Maximum 128 ASCII characters.

" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see How to ensure\n idempotency.

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

The ID of the launch template.

\n

You must specify either the launch template ID or the\n launch template name, but not both.

" + "smithy.api#documentation": "

The ARN of the IAM role that allows Amazon EC2 to publish flow logs to the log destination.

\n

This parameter is required if the destination type is cloud-watch-logs,\n or if the destination type is kinesis-data-firehose and the delivery stream\n and the resources to monitor are in different accounts.

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

The name of the launch template.

\n

You must specify either the launch template ID or the\n launch template name, but not both.

" + "smithy.api#documentation": "

The ARN of the IAM role that allows Amazon EC2 to publish flow logs across accounts.

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

The version of the launch template on which to base the new version. \n Snapshots applied to the block device mapping are ignored when creating a new version \n unless they are explicitly included.

\n

If you specify this parameter, the new version inherits the launch parameters from the\n source version. If you specify additional launch parameters for the new version, they \n overwrite any corresponding launch parameters inherited from the source version.

\n

If you omit this parameter, the new version contains only the launch parameters\n that you specify for the new version.

" + "smithy.api#documentation": "

The name of a new or existing CloudWatch Logs log group where Amazon EC2 publishes your flow logs.

\n

This parameter is valid only if the destination type is cloud-watch-logs.

" } }, - "VersionDescription": { - "target": "com.amazonaws.ec2#VersionDescription", + "ResourceIds": { + "target": "com.amazonaws.ec2#FlowLogResourceIds", "traits": { - "smithy.api#documentation": "

A description for the version of the launch template.

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

The IDs of the resources to monitor. For example, if the resource type is\n VPC, specify the IDs of the VPCs.

\n

Constraints: Maximum of 25 for transit gateway resource types. Maximum of 1000 for the\n other resource types.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "ResourceId" } }, - "LaunchTemplateData": { - "target": "com.amazonaws.ec2#RequestLaunchTemplateData", + "ResourceType": { + "target": "com.amazonaws.ec2#FlowLogsResourceType", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The information for the launch template.

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

The type of resource to monitor.

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

The type of traffic to monitor (accepted traffic, rejected traffic, or all traffic).\n This parameter is not supported for transit gateway resource types. It is required for\n the other resource types.

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

The type of destination for the flow log data.

\n

Default: cloud-watch-logs\n

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

The destination for the flow log data. The meaning of this parameter depends on the destination type.

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

The fields to include in the flow log record. List the fields in the order in which\n they should appear. If you omit this parameter, the flow log is created using the\n default format. If you specify this parameter, you must include at least one\n field. For more information about the available fields, see Flow log records \n in the Amazon VPC User Guide or Transit Gateway Flow Log\n records in the Amazon Web Services Transit Gateway Guide.

\n

Specify the fields using the ${field-id} format, separated by spaces.

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

The tags to apply to the flow logs.

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

The maximum interval of time during which a flow of packets is captured and aggregated into a flow log record. \n The possible values are 60 seconds (1 minute) or 600 seconds (10 minutes).\n This parameter must be 60 seconds for transit gateway resource types.

\n

When a network interface is attached to a Nitro-based\n instance, the aggregation interval is always 60 seconds or less, regardless\n of the value that you specify.

\n

Default: 600

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

If true, and if a Systems Manager parameter is specified for ImageId,\n the AMI ID is displayed in the response for imageID. For more information, see Use a Systems \n Manager parameter instead of an AMI ID in the Amazon Elastic Compute Cloud User Guide.

\n

Default: false\n

" + "smithy.api#documentation": "

The destination options.

" } } }, @@ -16544,23 +17480,31 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateLaunchTemplateVersionResult": { + "com.amazonaws.ec2#CreateFlowLogsResult": { "type": "structure", "members": { - "LaunchTemplateVersion": { - "target": "com.amazonaws.ec2#LaunchTemplateVersion", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateVersion", - "smithy.api#documentation": "

Information about the launch template version.

", - "smithy.api#xmlName": "launchTemplateVersion" + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request.

", + "smithy.api#xmlName": "clientToken" } }, - "Warning": { - "target": "com.amazonaws.ec2#ValidationWarning", + "FlowLogIds": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "aws.protocols#ec2QueryName": "Warning", - "smithy.api#documentation": "

If the new version of the launch template contains parameters or parameter\n combinations that are not valid, an error code and an error message are returned for\n each issue that's found.

", - "smithy.api#xmlName": "warning" + "aws.protocols#ec2QueryName": "FlowLogIdSet", + "smithy.api#documentation": "

The IDs of the flow logs.

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

Information about the flow logs that could not be created successfully.

", + "smithy.api#xmlName": "unsuccessful" } } }, @@ -16568,57 +17512,64 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateLocalGatewayRoute": { + "com.amazonaws.ec2#CreateFpgaImage": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateLocalGatewayRouteRequest" + "target": "com.amazonaws.ec2#CreateFpgaImageRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateLocalGatewayRouteResult" + "target": "com.amazonaws.ec2#CreateFpgaImageResult" }, "traits": { - "smithy.api#documentation": "

Creates a static route for the specified local gateway route table. You must specify one of the \n following targets:

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

Creates an Amazon FPGA Image (AFI) from the specified design checkpoint (DCP).

\n

The create operation is asynchronous. To verify that the AFI was successfully \n created and is ready for use, check the output logs.

\n

An AFI contains the FPGA bitstream that is ready to download to an FPGA. \n You can securely deploy an AFI on multiple FPGA-accelerated instances.\n For more information, see the Amazon Web Services FPGA Hardware Development Kit.

" } }, - "com.amazonaws.ec2#CreateLocalGatewayRouteRequest": { + "com.amazonaws.ec2#CreateFpgaImageRequest": { "type": "structure", "members": { - "DestinationCidrBlock": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The CIDR range used for destination matches. Routing decisions are based on \n the most specific match.

" + "smithy.api#documentation": "

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

" } }, - "LocalGatewayRouteTableId": { - "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", + "InputStorageLocation": { + "target": "com.amazonaws.ec2#StorageLocation", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the local gateway route table.

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

The location of the encrypted design checkpoint in Amazon S3. The input must be a tarball.

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

The ID of the virtual interface group.

" + "smithy.api#documentation": "

The location in Amazon S3 for the output logs.

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

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

" + "smithy.api#documentation": "

A description for the AFI.

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

The ID of the network interface.

" + "smithy.api#documentation": "

A name for the AFI.

" } }, - "DestinationPrefixListId": { - "target": "com.amazonaws.ec2#PrefixListResourceId", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

\n The ID of the prefix list. Use a prefix list in place of DestinationCidrBlock. You \n cannot use DestinationPrefixListId and DestinationCidrBlock in the same request.\n

" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. \n \tFor more information, see Ensuring Idempotency.

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

The tags to apply to the FPGA image during creation.

", + "smithy.api#xmlName": "TagSpecification" } } }, @@ -16626,15 +17577,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateLocalGatewayRouteResult": { + "com.amazonaws.ec2#CreateFpgaImageResult": { "type": "structure", "members": { - "Route": { - "target": "com.amazonaws.ec2#LocalGatewayRoute", + "FpgaImageId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Route", - "smithy.api#documentation": "

Information about the route.

", - "smithy.api#xmlName": "route" + "aws.protocols#ec2QueryName": "FpgaImageId", + "smithy.api#documentation": "

The FPGA image identifier (AFI ID).

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

The global FPGA image identifier (AGFI ID).

", + "smithy.api#xmlName": "fpgaImageGlobalId" } } }, @@ -16642,111 +17601,84 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateLocalGatewayRouteTable": { + "com.amazonaws.ec2#CreateImage": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateLocalGatewayRouteTableRequest" + "target": "com.amazonaws.ec2#CreateImageRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateLocalGatewayRouteTableResult" + "target": "com.amazonaws.ec2#CreateImageResult" }, "traits": { - "smithy.api#documentation": "

\n Creates a local gateway route table. \n

" + "smithy.api#documentation": "

Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that is either running or\n stopped.

\n

If you customized your instance with instance store volumes or Amazon EBS volumes in addition\n to the root device volume, the new AMI contains block device mapping information for those\n volumes. When you launch an instance from this new AMI, the instance automatically launches\n with those additional volumes.

\n

The location of the source instance determines where you can create the snapshots of the\n AMI:

\n \n

For more information, see Create an Amazon EBS-backed AMI in\n the Amazon Elastic Compute Cloud User Guide.

" } }, - "com.amazonaws.ec2#CreateLocalGatewayRouteTableRequest": { + "com.amazonaws.ec2#CreateImageRequest": { "type": "structure", "members": { - "LocalGatewayId": { - "target": "com.amazonaws.ec2#LocalGatewayId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

\n The ID of the local gateway. \n

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

\n The mode of the local gateway route table.\n

" - } - }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

\n The tags assigned to the local gateway route table.\n

", + "smithy.api#documentation": "

The tags to apply to the AMI and snapshots on creation. You can tag the AMI, the\n snapshots, or both.

\n \n

If you specify other values for ResourceType, the request fails.

\n

To tag an AMI or snapshot after it has been created, see CreateTags.

", "smithy.api#xmlName": "TagSpecification" } }, + "SnapshotLocation": { + "target": "com.amazonaws.ec2#SnapshotLocationEnum", + "traits": { + "smithy.api#documentation": "\n

Only supported for instances in Local Zones. If the source instance is not in a Local\n Zone, omit this parameter.

\n
\n

The Amazon S3 location where the snapshots will be stored.

\n \n

Default: regional\n

" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#CreateLocalGatewayRouteTableResult": { - "type": "structure", - "members": { - "LocalGatewayRouteTable": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTable", + }, + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTable", - "smithy.api#documentation": "

Information about the local gateway route table.

", - "smithy.api#xmlName": "localGatewayRouteTable" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "instanceId" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociation": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationResult" - }, - "traits": { - "smithy.api#documentation": "

\n Creates a local gateway route table virtual interface group association. \n

" - } - }, - "com.amazonaws.ec2#CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequest": { - "type": "structure", - "members": { - "LocalGatewayRouteTableId": { - "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", + }, + "Name": { + "target": "com.amazonaws.ec2#String", "traits": { + "aws.protocols#ec2QueryName": "Name", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

\n The ID of the local gateway route table.\n

", - "smithy.api#required": {} + "smithy.api#documentation": "

A name for the new image.

\n

Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces\n ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or\n underscores(_)

", + "smithy.api#required": {}, + "smithy.api#xmlName": "name" } }, - "LocalGatewayVirtualInterfaceGroupId": { - "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

\n The ID of the local gateway route table virtual interface group association.\n

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description for the new image.

", + "smithy.api#xmlName": "description" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "NoReboot": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

\n The tags assigned to the local gateway route table virtual interface group association.\n

", - "smithy.api#xmlName": "TagSpecification" + "aws.protocols#ec2QueryName": "NoReboot", + "smithy.api#documentation": "

Indicates whether or not the instance should be automatically rebooted before creating the\n image. Specify one of the following values:

\n \n

Default: false\n

", + "smithy.api#xmlName": "noReboot" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "BlockDeviceMappings": { + "target": "com.amazonaws.ec2#BlockDeviceMappingRequestList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "BlockDeviceMapping", + "smithy.api#documentation": "

The block device mappings.

\n

When using the CreateImage action:

\n ", + "smithy.api#xmlName": "blockDeviceMapping" } } }, @@ -16754,15 +17686,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationResult": { + "com.amazonaws.ec2#CreateImageResult": { "type": "structure", "members": { - "LocalGatewayRouteTableVirtualInterfaceGroupAssociation": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociation", + "ImageId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableVirtualInterfaceGroupAssociation", - "smithy.api#documentation": "

Information about the local gateway route table virtual interface group association.

", - "smithy.api#xmlName": "localGatewayRouteTableVirtualInterfaceGroupAssociation" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the new AMI.

", + "smithy.api#xmlName": "imageId" } } }, @@ -16770,48 +17702,63 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateLocalGatewayRouteTableVpcAssociation": { + "com.amazonaws.ec2#CreateImageUsageReport": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateLocalGatewayRouteTableVpcAssociationRequest" + "target": "com.amazonaws.ec2#CreateImageUsageReportRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateLocalGatewayRouteTableVpcAssociationResult" + "target": "com.amazonaws.ec2#CreateImageUsageReportResult" }, "traits": { - "smithy.api#documentation": "

Associates the specified VPC with the specified local gateway route table.

" + "smithy.api#documentation": "

Creates a report that shows how your image is used across other Amazon Web Services accounts. The report\n provides visibility into which accounts are using the specified image, and how many resources\n (EC2 instances or launch templates) are referencing it.

\n

For more information, see View your AMI usage in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#CreateLocalGatewayRouteTableVpcAssociationRequest": { + "com.amazonaws.ec2#CreateImageUsageReportRequest": { "type": "structure", "members": { - "LocalGatewayRouteTableId": { - "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the local gateway route table.

", + "smithy.api#documentation": "

The ID of the image to report on.

", "smithy.api#required": {} } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "ResourceTypes": { + "target": "com.amazonaws.ec2#ImageUsageResourceTypeRequestList", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The resource types to include in the report.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "ResourceType" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "AccountIds": { + "target": "com.amazonaws.ec2#ImageUsageReportUserIdStringList", "traits": { - "smithy.api#documentation": "

The tags to assign to the local gateway route table VPC association.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

The Amazon Web Services account IDs to include in the report. To include all accounts, omit this\n parameter.

", + "smithy.api#xmlName": "AccountId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure idempotency of the request.

", + "smithy.api#idempotencyToken": {} + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags to apply to the report on creation. The ResourceType must be set to\n image-usage-report; any other value will cause the report creation to\n fail.

\n

To tag a report after it has been created, see CreateTags.

", + "smithy.api#xmlName": "TagSpecification" } } }, @@ -16819,15 +17766,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateLocalGatewayRouteTableVpcAssociationResult": { + "com.amazonaws.ec2#CreateImageUsageReportResult": { "type": "structure", "members": { - "LocalGatewayRouteTableVpcAssociation": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociation", + "ReportId": { + "target": "com.amazonaws.ec2#ImageUsageReportId", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableVpcAssociation", - "smithy.api#documentation": "

Information about the association.

", - "smithy.api#xmlName": "localGatewayRouteTableVpcAssociation" + "aws.protocols#ec2QueryName": "ReportId", + "smithy.api#documentation": "

The ID of the report.

", + "smithy.api#xmlName": "reportId" } } }, @@ -16835,70 +17782,66 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateManagedPrefixList": { + "com.amazonaws.ec2#CreateInstanceConnectEndpoint": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateManagedPrefixListRequest" + "target": "com.amazonaws.ec2#CreateInstanceConnectEndpointRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateManagedPrefixListResult" + "target": "com.amazonaws.ec2#CreateInstanceConnectEndpointResult" }, "traits": { - "smithy.api#documentation": "

Creates a managed prefix list. You can specify one or more entries for the prefix list. \n Each entry consists of a CIDR block and an optional description.

" + "smithy.api#documentation": "

Creates an EC2 Instance Connect Endpoint.

\n

An EC2 Instance Connect Endpoint allows you to connect to an instance, without\n requiring the instance to have a public IPv4 or public IPv6 address. For more\n information, see Connect to your instances using EC2 Instance Connect Endpoint in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#CreateManagedPrefixListRequest": { + "com.amazonaws.ec2#CreateInstanceConnectEndpointRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "PrefixListName": { - "target": "com.amazonaws.ec2#String", + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A name for the prefix list.

\n

Constraints: Up to 255 characters in length. The name cannot start with com.amazonaws.

", + "smithy.api#documentation": "

The ID of the subnet in which to create the EC2 Instance Connect Endpoint.

", "smithy.api#required": {} } }, - "Entries": { - "target": "com.amazonaws.ec2#AddPrefixListEntries", + "SecurityGroupIds": { + "target": "com.amazonaws.ec2#SecurityGroupIdStringListRequest", "traits": { - "smithy.api#documentation": "

One or more entries for the prefix list.

", - "smithy.api#xmlName": "Entry" + "smithy.api#documentation": "

One or more security groups to associate with the endpoint. If you don't specify a security group, \n the default security group for your VPC will be associated with the endpoint.

", + "smithy.api#xmlName": "SecurityGroupId" } }, - "MaxEntries": { - "target": "com.amazonaws.ec2#Integer", + "PreserveClientIp": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The maximum number of entries for the prefix list.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Indicates whether the client IP address is preserved as the source. The following are the possible values.

\n \n \n

\n PreserveClientIp is only supported on IPv4 EC2 Instance Connect\n Endpoints. To use PreserveClientIp, the value for\n IpAddressType must be ipv4.

\n
\n

Default: false\n

" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The tags to apply to the prefix list during creation.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "smithy.api#idempotencyToken": {} } }, - "AddressFamily": { - "target": "com.amazonaws.ec2#String", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IP address type.

\n

Valid Values: IPv4 | IPv6\n

", - "smithy.api#required": {} + "smithy.api#documentation": "

The tags to apply to the EC2 Instance Connect Endpoint during creation.

", + "smithy.api#xmlName": "TagSpecification" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "IpAddressType": { + "target": "com.amazonaws.ec2#IpAddressType", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier you provide to ensure the idempotency of the\n request. For more information, see Ensuring\n Idempotency.

\n

Constraints: Up to 255 UTF-8 characters in length.

", - "smithy.api#idempotencyToken": {} + "smithy.api#documentation": "

The IP address type of the endpoint.

\n

If no value is specified, the default value is determined by the IP address type of\n the subnet:

\n \n \n

\n PreserveClientIp is only supported on IPv4 EC2 Instance Connect\n Endpoints. To use PreserveClientIp, the value for\n IpAddressType must be ipv4.

\n
" } } }, @@ -16906,15 +17849,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateManagedPrefixListResult": { + "com.amazonaws.ec2#CreateInstanceConnectEndpointResult": { "type": "structure", "members": { - "PrefixList": { - "target": "com.amazonaws.ec2#ManagedPrefixList", + "InstanceConnectEndpoint": { + "target": "com.amazonaws.ec2#Ec2InstanceConnectEndpoint", "traits": { - "aws.protocols#ec2QueryName": "PrefixList", - "smithy.api#documentation": "

Information about the prefix list.

", - "smithy.api#xmlName": "prefixList" + "aws.protocols#ec2QueryName": "InstanceConnectEndpoint", + "smithy.api#documentation": "

Information about the EC2 Instance Connect Endpoint.

", + "smithy.api#xmlName": "instanceConnectEndpoint" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

Unique, case-sensitive idempotency token provided by the client in the the request.

", + "smithy.api#xmlName": "clientToken" } } }, @@ -16922,109 +17873,132 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateNatGateway": { + "com.amazonaws.ec2#CreateInstanceEventWindow": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateNatGatewayRequest" + "target": "com.amazonaws.ec2#CreateInstanceEventWindowRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateNatGatewayResult" + "target": "com.amazonaws.ec2#CreateInstanceEventWindowResult" }, "traits": { - "smithy.api#documentation": "

Creates a NAT gateway in the specified subnet. This action creates a network interface\n in the specified subnet with a private IP address from the IP address range of the\n subnet. You can create either a public NAT gateway or a private NAT gateway.

\n

With a public NAT gateway, internet-bound traffic from a private subnet can be routed\n to the NAT gateway, so that instances in a private subnet can connect to the internet.

\n

With a private NAT gateway, private communication is routed across VPCs and on-premises\n networks through a transit gateway or virtual private gateway. Common use cases include\n running large workloads behind a small pool of allowlisted IPv4 addresses, preserving\n private IPv4 addresses, and communicating between overlapping networks.

\n

For more information, see NAT gateways in the Amazon VPC User Guide.

\n \n

When you create a public NAT gateway and assign it an EIP or secondary EIPs, the network border group of the EIPs must match the network border group of the Availability Zone (AZ) that the public NAT gateway is in. If it's not the same, the NAT gateway will fail to launch. You can see the network border group for the subnet's AZ by viewing the details of the subnet. Similarly, you can view the network border group of an EIP by viewing the details of the EIP address. For more information about network border groups and EIPs, see Allocate an Elastic IP address in the Amazon VPC User Guide. \n

\n
", - "smithy.api#examples": [ - { - "title": "To create a NAT gateway", - "documentation": "This example creates a NAT gateway in subnet subnet-1a2b3c4d and associates an Elastic IP address with the allocation ID eipalloc-37fc1a52 with the NAT gateway.", - "input": { - "SubnetId": "subnet-1a2b3c4d", - "AllocationId": "eipalloc-37fc1a52" - }, - "output": { - "NatGateway": { - "NatGatewayAddresses": [ - { - "AllocationId": "eipalloc-37fc1a52" - } - ], - "VpcId": "vpc-1122aabb", - "State": "pending", - "NatGatewayId": "nat-08d48af2a8e83edfd", - "SubnetId": "subnet-1a2b3c4d", - "CreateTime": "2015-12-17T12:45:26.732Z" - } - } - } - ] + "smithy.api#documentation": "

Creates an event window in which scheduled events for the associated Amazon EC2 instances can\n run.

\n

You can define either a set of time ranges or a cron expression when creating the event\n window, but not both. All event window times are in UTC.

\n

You can create up to 200 event windows per Amazon Web Services Region.

\n

When you create the event window, targets (instance IDs, Dedicated Host IDs, or tags)\n are not yet associated with it. To ensure that the event window can be used, you must\n associate one or more targets with it by using the AssociateInstanceEventWindow API.

\n \n

Event windows are applicable only for scheduled events that stop, reboot, or\n terminate instances.

\n

Event windows are not applicable for:

\n \n
\n

For more information, see Define event windows for scheduled\n events in the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#CreateNatGatewayRequest": { + "com.amazonaws.ec2#CreateInstanceEventWindowRequest": { "type": "structure", "members": { - "AllocationId": { - "target": "com.amazonaws.ec2#AllocationId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

[Public NAT gateways only] The allocation ID of an Elastic IP address to associate \n with the NAT gateway. You cannot specify an Elastic IP address with a private NAT gateway.\n If the Elastic IP address is associated with another resource, you must first disassociate it.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "ClientToken": { + "Name": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n\t\t\trequest. For more information, see Ensuring idempotency.

\n

Constraint: Maximum 64 ASCII characters.

", - "smithy.api#idempotencyToken": {} + "smithy.api#documentation": "

The name of the event window.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "TimeRanges": { + "target": "com.amazonaws.ec2#InstanceEventWindowTimeRangeRequestSet", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The time range for the event window. If you specify a time range, you can't specify a\n cron expression.

", + "smithy.api#xmlName": "TimeRange" } }, - "SubnetId": { - "target": "com.amazonaws.ec2#SubnetId", + "CronExpression": { + "target": "com.amazonaws.ec2#InstanceEventWindowCronExpression", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the subnet in which to create the NAT gateway.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The cron expression for the event window, for example, * 0-4,20-23 * * 1,5.\n If you specify a cron expression, you can't specify a time range.

\n

Constraints:

\n \n

For more information about cron expressions, see cron on the Wikipedia\n website.

" } }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The tags to assign to the NAT gateway.

", + "smithy.api#documentation": "

The tags to apply to the event window.

", "smithy.api#xmlName": "TagSpecification" } - }, - "ConnectivityType": { - "target": "com.amazonaws.ec2#ConnectivityType", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#CreateInstanceEventWindowResult": { + "type": "structure", + "members": { + "InstanceEventWindow": { + "target": "com.amazonaws.ec2#InstanceEventWindow", "traits": { - "smithy.api#documentation": "

Indicates whether the NAT gateway supports public or private connectivity. \n The default is public connectivity.

" + "aws.protocols#ec2QueryName": "InstanceEventWindow", + "smithy.api#documentation": "

Information about the event window.

", + "smithy.api#xmlName": "instanceEventWindow" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#CreateInstanceExportTask": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateInstanceExportTaskRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateInstanceExportTaskResult" + }, + "traits": { + "smithy.api#documentation": "

Exports a running or stopped instance to an Amazon S3 bucket.

\n

For information about the prerequisites for your Amazon S3 bucket, supported operating systems,\n image formats, and known limitations for the types of instances you can export, see Exporting an instance as a VM Using VM\n Import/Export in the VM Import/Export User Guide.

" + } + }, + "com.amazonaws.ec2#CreateInstanceExportTaskRequest": { + "type": "structure", + "members": { + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags to apply to the export instance task during creation.

", + "smithy.api#xmlName": "TagSpecification" } }, - "PrivateIpAddress": { + "Description": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The private IPv4 address to assign to the NAT gateway. If you don't provide an address, a private IPv4 address will be automatically assigned.

" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description for the conversion task or the resource being exported. The maximum length is 255 characters.

", + "smithy.api#xmlName": "description" } }, - "SecondaryAllocationIds": { - "target": "com.amazonaws.ec2#AllocationIdList", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "smithy.api#documentation": "

Secondary EIP allocation IDs. For more information, see Create a NAT gateway \n in the Amazon VPC User Guide.

", - "smithy.api#xmlName": "SecondaryAllocationId" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "instanceId" } }, - "SecondaryPrivateIpAddresses": { - "target": "com.amazonaws.ec2#IpList", + "TargetEnvironment": { + "target": "com.amazonaws.ec2#ExportEnvironment", "traits": { - "smithy.api#documentation": "

Secondary private IPv4 addresses. For more information about secondary addresses, see Create a NAT gateway in the Amazon VPC User Guide.

", - "smithy.api#xmlName": "SecondaryPrivateIpAddress" + "aws.protocols#ec2QueryName": "TargetEnvironment", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The target virtualization environment.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "targetEnvironment" } }, - "SecondaryPrivateIpAddressCount": { - "target": "com.amazonaws.ec2#PrivateIpAddressCount", + "ExportToS3Task": { + "target": "com.amazonaws.ec2#ExportToS3TaskSpecification", "traits": { - "smithy.api#documentation": "

[Private NAT gateway only] The number of secondary private IPv4 addresses you want to assign to the NAT gateway. \n For more information about secondary addresses, see Create a NAT gateway \n in the Amazon VPC User Guide.

" + "aws.protocols#ec2QueryName": "ExportToS3", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The format and location for an export instance task.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "exportToS3" } } }, @@ -17032,23 +18006,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateNatGatewayResult": { + "com.amazonaws.ec2#CreateInstanceExportTaskResult": { "type": "structure", "members": { - "ClientToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier to ensure the idempotency of the request. Only returned if a client token was provided in the request.

", - "smithy.api#xmlName": "clientToken" - } - }, - "NatGateway": { - "target": "com.amazonaws.ec2#NatGateway", + "ExportTask": { + "target": "com.amazonaws.ec2#ExportTask", "traits": { - "aws.protocols#ec2QueryName": "NatGateway", - "smithy.api#documentation": "

Information about the NAT gateway.

", - "smithy.api#xmlName": "natGateway" + "aws.protocols#ec2QueryName": "ExportTask", + "smithy.api#documentation": "

Information about the export instance task.

", + "smithy.api#xmlName": "exportTask" } } }, @@ -17056,91 +18022,39 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateNetworkAcl": { + "com.amazonaws.ec2#CreateInternetGateway": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateNetworkAclRequest" + "target": "com.amazonaws.ec2#CreateInternetGatewayRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateNetworkAclResult" + "target": "com.amazonaws.ec2#CreateInternetGatewayResult" }, "traits": { - "smithy.api#documentation": "

Creates a network ACL in a VPC. Network ACLs provide an optional layer of security (in addition to security groups) for the instances in your VPC.

\n

For more information, see Network ACLs in the\n\t\t\t\tAmazon VPC User Guide.

", + "smithy.api#documentation": "

Creates an internet gateway for use with a VPC. After creating the internet gateway,\n\t\t\tyou attach it to a VPC using AttachInternetGateway.

\n

For more information, see Internet gateways in the \n Amazon VPC User Guide.

", "smithy.api#examples": [ { - "title": "To create a network ACL", - "documentation": "This example creates a network ACL for the specified VPC.", - "input": { - "VpcId": "vpc-a01106c2" - }, + "title": "To create an Internet gateway", + "documentation": "This example creates an Internet gateway.", "output": { - "NetworkAcl": { - "Associations": [], - "NetworkAclId": "acl-5fb85d36", - "VpcId": "vpc-a01106c2", + "InternetGateway": { "Tags": [], - "Entries": [ - { - "CidrBlock": "0.0.0.0/0", - "RuleNumber": 32767, - "Protocol": "-1", - "Egress": true, - "RuleAction": "deny" - }, - { - "CidrBlock": "0.0.0.0/0", - "RuleNumber": 32767, - "Protocol": "-1", - "Egress": false, - "RuleAction": "deny" - } - ], - "IsDefault": false - } - } - } - ] - } - }, - "com.amazonaws.ec2#CreateNetworkAclEntry": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateNetworkAclEntryRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Creates an entry (a rule) in a network ACL with the specified rule number. Each network ACL has a set of numbered ingress rules \n\t\t and a separate set of numbered egress rules. When determining whether a packet should be allowed in or out of a subnet associated \n\t\t with the ACL, we process the entries in the ACL according to the rule numbers, in ascending order. Each network ACL has a set of \n\t\t ingress rules and a separate set of egress rules.

\n

We recommend that you leave room between the rule numbers (for example, 100, 110, 120, ...), and not number them one right after the \n\t\t other (for example, 101, 102, 103, ...). This makes it easier to add a rule between existing ones without having to renumber the rules.

\n

After you add an entry, you can't modify it; you must either replace it, or create an entry and delete the old one.

\n

For more information about network ACLs, see Network ACLs \n in the Amazon VPC User Guide.

", - "smithy.api#examples": [ - { - "title": "To create a network ACL entry", - "documentation": "This example creates an entry for the specified network ACL. The rule allows ingress traffic from anywhere (0.0.0.0/0) on UDP port 53 (DNS) into any associated subnet.", - "input": { - "NetworkAclId": "acl-5fb85d36", - "RuleNumber": 100, - "Protocol": "17", - "RuleAction": "allow", - "Egress": false, - "CidrBlock": "0.0.0.0/0", - "PortRange": { - "From": 53, - "To": 53 + "InternetGatewayId": "igw-c0a643a9", + "Attachments": [] } } } ] } }, - "com.amazonaws.ec2#CreateNetworkAclEntryRequest": { + "com.amazonaws.ec2#CreateInternetGatewayRequest": { "type": "structure", "members": { - "CidrBlock": { - "target": "com.amazonaws.ec2#String", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "aws.protocols#ec2QueryName": "CidrBlock", - "smithy.api#documentation": "

The IPv4 network range to allow or deny, in CIDR notation (for example\n\t\t 172.16.0.0/24). We modify the specified CIDR block to its canonical form; for example, if you specify 100.68.0.18/18, we modify it to 100.68.0.0/18.

", - "smithy.api#xmlName": "cidrBlock" + "smithy.api#documentation": "

The tags to assign to the internet gateway.

", + "smithy.api#xmlName": "TagSpecification" } }, "DryRun": { @@ -17150,198 +18064,354 @@ "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } - }, - "Egress": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "Egress", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet).

", - "smithy.api#required": {}, - "smithy.api#xmlName": "egress" - } - }, - "IcmpTypeCode": { - "target": "com.amazonaws.ec2#IcmpTypeCode", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#CreateInternetGatewayResult": { + "type": "structure", + "members": { + "InternetGateway": { + "target": "com.amazonaws.ec2#InternetGateway", "traits": { - "smithy.api#documentation": "

ICMP protocol: The ICMP or ICMPv6 type and code. Required if specifying protocol \n\t\t 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR block.

", - "smithy.api#xmlName": "Icmp" + "aws.protocols#ec2QueryName": "InternetGateway", + "smithy.api#documentation": "

Information about the internet gateway.

", + "smithy.api#xmlName": "internetGateway" } - }, - "Ipv6CidrBlock": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#CreateIpam": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateIpamRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateIpamResult" + }, + "traits": { + "smithy.api#documentation": "

Create an IPAM. Amazon VPC IP Address Manager (IPAM) is a VPC feature that you can use\n to automate your IP address management workflows including assigning, tracking,\n troubleshooting, and auditing IP addresses across Amazon Web Services Regions and accounts\n throughout your Amazon Web Services Organization.

\n

For more information, see Create an IPAM in the Amazon VPC IPAM User Guide.\n

" + } + }, + "com.amazonaws.ec2#CreateIpamExternalResourceVerificationToken": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateIpamExternalResourceVerificationTokenRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateIpamExternalResourceVerificationTokenResult" + }, + "traits": { + "smithy.api#documentation": "

Create a verification token. A verification token is an Amazon Web Services-generated random value that you can use to prove ownership of an external resource. For example, you can use a verification token to validate that you control a public IP address range when you bring an IP address range to Amazon Web Services (BYOIP).\n

" + } + }, + "com.amazonaws.ec2#CreateIpamExternalResourceVerificationTokenRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Ipv6CidrBlock", - "smithy.api#documentation": "

The IPv6 network range to allow or deny, in CIDR notation (for example\n 2001:db8:1234:1a00::/64).

", - "smithy.api#xmlName": "ipv6CidrBlock" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "NetworkAclId": { - "target": "com.amazonaws.ec2#NetworkAclId", + "IpamId": { + "target": "com.amazonaws.ec2#IpamId", "traits": { - "aws.protocols#ec2QueryName": "NetworkAclId", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the network ACL.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "networkAclId" + "smithy.api#documentation": "

The ID of the IPAM that will create the token.

", + "smithy.api#required": {} } }, - "PortRange": { - "target": "com.amazonaws.ec2#PortRange", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "aws.protocols#ec2QueryName": "PortRange", - "smithy.api#documentation": "

TCP or UDP protocols: The range of ports the rule applies to.\n\t\t Required if specifying protocol 6 (TCP) or 17 (UDP).

", - "smithy.api#xmlName": "portRange" + "smithy.api#documentation": "

Token tags.

", + "smithy.api#xmlName": "TagSpecification" } }, - "Protocol": { + "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Protocol", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The protocol number. A value of \"-1\" means all protocols. If you specify \"-1\" or a\n \t\t\tprotocol number other than \"6\" (TCP), \"17\" (UDP), or \"1\" (ICMP), traffic on all ports is \n\t\t\tallowed, regardless of any ports or ICMP types or codes that you specify. If you specify \n\t\t\tprotocol \"58\" (ICMPv6) and specify an IPv4 CIDR block, traffic for all ICMP types and \n\t\t\tcodes allowed, regardless of any that you specify. If you specify protocol \"58\" (ICMPv6) \n\t\t\tand specify an IPv6 CIDR block, you must specify an ICMP type and code.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "protocol" + "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} } - }, - "RuleAction": { - "target": "com.amazonaws.ec2#RuleAction", - "traits": { - "aws.protocols#ec2QueryName": "RuleAction", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Indicates whether to allow or deny the traffic that matches the rule.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "ruleAction" - } - }, - "RuleNumber": { - "target": "com.amazonaws.ec2#Integer", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#CreateIpamExternalResourceVerificationTokenResult": { + "type": "structure", + "members": { + "IpamExternalResourceVerificationToken": { + "target": "com.amazonaws.ec2#IpamExternalResourceVerificationToken", "traits": { - "aws.protocols#ec2QueryName": "RuleNumber", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The rule number for the entry (for example, 100). ACL entries are processed in ascending order by rule number.

\n

Constraints: Positive integer from 1 to 32766. The range 32767 to 65535 is reserved for internal use.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "ruleNumber" + "aws.protocols#ec2QueryName": "IpamExternalResourceVerificationToken", + "smithy.api#documentation": "

The verification token.

", + "smithy.api#xmlName": "ipamExternalResourceVerificationToken" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateNetworkAclRequest": { + "com.amazonaws.ec2#CreateIpamPool": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateIpamPoolRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateIpamPoolResult" + }, + "traits": { + "smithy.api#documentation": "

Create an IP address pool for Amazon VPC IP Address Manager (IPAM). In IPAM, a pool is a collection of contiguous IP addresses CIDRs. Pools enable you to organize your IP addresses according to your routing and security needs. For example, if you have separate routing and security needs for development and production applications, you can create a pool for each.

\n

For more information, see Create a top-level pool in the Amazon VPC IPAM User Guide.\n

" + } + }, + "com.amazonaws.ec2#CreateIpamPoolRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "IpamScopeId": { + "target": "com.amazonaws.ec2#IpamScopeId", "traits": { - "aws.protocols#ec2QueryName": "VpcId", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "vpcId" + "smithy.api#documentation": "

The ID of the scope in which you would like to create the IPAM pool.

", + "smithy.api#required": {} + } + }, + "Locale": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The locale for the pool should be one of the following:

\n \n

Possible values: Any Amazon Web Services Region or supported Amazon Web Services Local Zone. Default is none and means any locale.

" + } + }, + "SourceIpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", + "traits": { + "smithy.api#documentation": "

The ID of the source IPAM pool. Use this option to create a pool within an existing pool. Note that the CIDR you provision for the pool within the source pool must be available in the source pool's CIDR range.

" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A description for the IPAM pool.

" + } + }, + "AddressFamily": { + "target": "com.amazonaws.ec2#AddressFamily", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IP protocol assigned to this IPAM pool. You must choose either IPv4 or IPv6 protocol for a pool.

", + "smithy.api#required": {} + } + }, + "AutoImport": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

If selected, IPAM will continuously look for resources within the CIDR range of this pool \n and automatically import them as allocations into your IPAM. The CIDRs that will be allocated for\n these resources must not already be allocated to other resources in order for the import to succeed. IPAM will import \n a CIDR regardless of its compliance with the pool's allocation rules, so a resource might be imported and subsequently \n marked as noncompliant. If IPAM discovers multiple CIDRs that overlap, IPAM will import the largest CIDR only. If IPAM \n discovers multiple CIDRs with matching CIDRs, IPAM will randomly import one of them only.\n

\n

A locale must be set on the pool for this feature to work.

" + } + }, + "PubliclyAdvertisable": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Determines if the pool is publicly advertisable. The request can only contain PubliclyAdvertisable if AddressFamily is ipv6 and PublicIpSource is byoip.

" + } + }, + "AllocationMinNetmaskLength": { + "target": "com.amazonaws.ec2#IpamNetmaskLength", + "traits": { + "smithy.api#documentation": "

The minimum netmask length required for CIDR allocations in this IPAM pool to be compliant. The minimum netmask length must be \n less than the maximum netmask length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.

" + } + }, + "AllocationMaxNetmaskLength": { + "target": "com.amazonaws.ec2#IpamNetmaskLength", + "traits": { + "smithy.api#documentation": "

The maximum netmask length possible for CIDR allocations in this IPAM pool to be compliant. The maximum netmask length must be \n greater than the minimum netmask length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.

" + } + }, + "AllocationDefaultNetmaskLength": { + "target": "com.amazonaws.ec2#IpamNetmaskLength", + "traits": { + "smithy.api#documentation": "

The default netmask length for allocations added to this pool. If, for example, the CIDR assigned to this pool is 10.0.0.0/8 and you enter 16 here, \n new allocations will default to 10.0.0.0/16.

" + } + }, + "AllocationResourceTags": { + "target": "com.amazonaws.ec2#RequestIpamResourceTagList", + "traits": { + "smithy.api#documentation": "

Tags that are required for resources that use CIDRs from this IPAM pool. Resources that do not have these tags will not be allowed to allocate space from the pool. If the resources have their tags changed after they have allocated space or if the allocation tagging requirements are changed on the pool, the resource may be marked as noncompliant.

", + "smithy.api#xmlName": "AllocationResourceTag" } }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The tags to assign to the network ACL.

", + "smithy.api#documentation": "

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

", "smithy.api#xmlName": "TagSpecification" } }, "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see Ensuring idempotency.

", + "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency.

", "smithy.api#idempotencyToken": {} } + }, + "AwsService": { + "target": "com.amazonaws.ec2#IpamPoolAwsService", + "traits": { + "smithy.api#documentation": "

Limits which service in Amazon Web Services that the pool can be used in. \"ec2\", for example, allows users to use space for Elastic IP addresses and VPCs.

" + } + }, + "PublicIpSource": { + "target": "com.amazonaws.ec2#IpamPoolPublicIpSource", + "traits": { + "smithy.api#documentation": "

The IP address source for pools in the public scope. Only used for provisioning IP address CIDRs to pools in the public scope. Default is byoip. For more information, see Create IPv6 pools in the Amazon VPC IPAM User Guide. \n By default, you can add only one Amazon-provided IPv6 CIDR block to a top-level IPv6 pool if PublicIpSource is amazon. For information on increasing the default limit, see Quotas for your IPAM in the Amazon VPC IPAM User Guide.

" + } + }, + "SourceResource": { + "target": "com.amazonaws.ec2#IpamPoolSourceResourceRequest", + "traits": { + "smithy.api#documentation": "

The resource used to provision CIDRs to a resource planning pool.

" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateNetworkAclResult": { + "com.amazonaws.ec2#CreateIpamPoolResult": { "type": "structure", "members": { - "NetworkAcl": { - "target": "com.amazonaws.ec2#NetworkAcl", + "IpamPool": { + "target": "com.amazonaws.ec2#IpamPool", "traits": { - "aws.protocols#ec2QueryName": "NetworkAcl", - "smithy.api#documentation": "

Information about the network ACL.

", - "smithy.api#xmlName": "networkAcl" + "aws.protocols#ec2QueryName": "IpamPool", + "smithy.api#documentation": "

Information about the IPAM pool created.

", + "smithy.api#xmlName": "ipamPool" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#CreateIpamRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A description for the IPAM.

" + } + }, + "OperatingRegions": { + "target": "com.amazonaws.ec2#AddIpamOperatingRegionSet", + "traits": { + "smithy.api#documentation": "

The operating Regions for the IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

\n

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide.\n

", + "smithy.api#xmlName": "OperatingRegion" + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

", + "smithy.api#xmlName": "TagSpecification" } }, "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier to ensure the idempotency of the request. Only returned if a client token was provided in the request.

", - "smithy.api#xmlName": "clientToken" + "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, + "Tier": { + "target": "com.amazonaws.ec2#IpamTier", + "traits": { + "smithy.api#documentation": "

IPAM is offered in a Free Tier and an Advanced Tier. For more information about the features available in each tier and the costs associated with the tiers, see Amazon VPC pricing > IPAM tab.

" + } + }, + "EnablePrivateGua": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Enable this option to use your own GUA ranges as private IPv6 addresses. This option is disabled by default.

" + } + }, + "MeteredAccount": { + "target": "com.amazonaws.ec2#IpamMeteredAccount", + "traits": { + "smithy.api#documentation": "

A metered account is an Amazon Web Services account that is charged for active IP addresses managed in IPAM. For more information, see Enable cost distribution in the Amazon VPC IPAM User Guide.

\n

Possible values:

\n " } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateNetworkInsightsAccessScope": { + "com.amazonaws.ec2#CreateIpamResourceDiscovery": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateNetworkInsightsAccessScopeRequest" + "target": "com.amazonaws.ec2#CreateIpamResourceDiscoveryRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateNetworkInsightsAccessScopeResult" + "target": "com.amazonaws.ec2#CreateIpamResourceDiscoveryResult" }, "traits": { - "smithy.api#documentation": "

Creates a Network Access Scope.

\n

Amazon Web Services Network Access Analyzer enables cloud networking and cloud operations teams \n to verify that their networks on Amazon Web Services conform to their network security and governance \n objectives. For more information, see the Amazon Web Services Network Access Analyzer Guide.

" + "smithy.api#documentation": "

Creates an IPAM resource discovery. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

" } }, - "com.amazonaws.ec2#CreateNetworkInsightsAccessScopeRequest": { + "com.amazonaws.ec2#CreateIpamResourceDiscoveryRequest": { "type": "structure", "members": { - "MatchPaths": { - "target": "com.amazonaws.ec2#AccessScopePathListRequest", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The paths to match.

", - "smithy.api#xmlName": "MatchPath" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "ExcludePaths": { - "target": "com.amazonaws.ec2#AccessScopePathListRequest", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The paths to exclude.

", - "smithy.api#xmlName": "ExcludePath" + "smithy.api#documentation": "

A description for the IPAM resource discovery.

" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "OperatingRegions": { + "target": "com.amazonaws.ec2#AddIpamOperatingRegionSet", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, \n see How to ensure idempotency.

", - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

Operating Regions for the IPAM resource discovery. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

", + "smithy.api#xmlName": "OperatingRegion" } }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The tags to apply.

", + "smithy.api#documentation": "

Tag specifications for the IPAM resource discovery.

", "smithy.api#xmlName": "TagSpecification" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

A client token for the IPAM resource discovery.

", + "smithy.api#idempotencyToken": {} } } }, @@ -17349,23 +18419,31 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateNetworkInsightsAccessScopeResult": { + "com.amazonaws.ec2#CreateIpamResourceDiscoveryResult": { "type": "structure", "members": { - "NetworkInsightsAccessScope": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScope", + "IpamResourceDiscovery": { + "target": "com.amazonaws.ec2#IpamResourceDiscovery", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAccessScope", - "smithy.api#documentation": "

The Network Access Scope.

", - "smithy.api#xmlName": "networkInsightsAccessScope" + "aws.protocols#ec2QueryName": "IpamResourceDiscovery", + "smithy.api#documentation": "

An IPAM resource discovery.

", + "smithy.api#xmlName": "ipamResourceDiscovery" } - }, - "NetworkInsightsAccessScopeContent": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeContent", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#CreateIpamResult": { + "type": "structure", + "members": { + "Ipam": { + "target": "com.amazonaws.ec2#Ipam", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeContent", - "smithy.api#documentation": "

The Network Access Scope content.

", - "smithy.api#xmlName": "networkInsightsAccessScopeContent" + "aws.protocols#ec2QueryName": "Ipam", + "smithy.api#documentation": "

Information about the IPAM created.

", + "smithy.api#xmlName": "ipam" } } }, @@ -17373,93 +18451,53 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateNetworkInsightsPath": { + "com.amazonaws.ec2#CreateIpamScope": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateNetworkInsightsPathRequest" + "target": "com.amazonaws.ec2#CreateIpamScopeRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateNetworkInsightsPathResult" + "target": "com.amazonaws.ec2#CreateIpamScopeResult" }, "traits": { - "smithy.api#documentation": "

Creates a path to analyze for reachability.

\n

Reachability Analyzer enables you to analyze and debug network reachability between\n two resources in your virtual private cloud (VPC). For more information, see the \n Reachability Analyzer Guide.

" + "smithy.api#documentation": "

Create an IPAM scope. In IPAM, a scope is the highest-level container within IPAM. An IPAM contains two default scopes. Each scope represents the IP space for a single network. The private scope is intended for all private IP address space. The public scope is intended for all public IP address space. Scopes enable you to reuse IP addresses across multiple unconnected networks without causing IP address overlap or conflict.

\n

For more information, see Add a scope in the Amazon VPC IPAM User Guide.

" } }, - "com.amazonaws.ec2#CreateNetworkInsightsPathRequest": { + "com.amazonaws.ec2#CreateIpamScopeRequest": { "type": "structure", "members": { - "SourceIp": { - "target": "com.amazonaws.ec2#IpAddress", - "traits": { - "smithy.api#documentation": "

The IP address of the source.

" - } - }, - "DestinationIp": { - "target": "com.amazonaws.ec2#IpAddress", - "traits": { - "smithy.api#documentation": "

The IP address of the destination.

" - } - }, - "Source": { - "target": "com.amazonaws.ec2#NetworkInsightsResourceId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID or ARN of the source. If the resource is in another account, you must specify an ARN.

", - "smithy.api#required": {} - } - }, - "Destination": { - "target": "com.amazonaws.ec2#NetworkInsightsResourceId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The ID or ARN of the destination. If the resource is in another account, you must specify an ARN.

" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "Protocol": { - "target": "com.amazonaws.ec2#Protocol", + "IpamId": { + "target": "com.amazonaws.ec2#IpamId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The protocol.

", + "smithy.api#documentation": "

The ID of the IPAM for which you're creating this scope.

", "smithy.api#required": {} } }, - "DestinationPort": { - "target": "com.amazonaws.ec2#Port", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The destination port.

" + "smithy.api#documentation": "

A description for the scope you're creating.

" } }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The tags to add to the path.

", + "smithy.api#documentation": "

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

", "smithy.api#xmlName": "TagSpecification" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, \n see How to ensure idempotency.

", - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} - } - }, - "FilterAtSource": { - "target": "com.amazonaws.ec2#PathRequestFilter", - "traits": { - "smithy.api#documentation": "

Scopes the analysis to network paths that match specific filters at the source. If you specify\n this parameter, you can't specify the parameters for the source IP address or the destination port.

" - } - }, - "FilterAtDestination": { - "target": "com.amazonaws.ec2#PathRequestFilter", - "traits": { - "smithy.api#documentation": "

Scopes the analysis to network paths that match specific filters at the destination. If you specify\n this parameter, you can't specify the parameter for the destination IP address.

" + "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} } } }, @@ -17467,15 +18505,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateNetworkInsightsPathResult": { + "com.amazonaws.ec2#CreateIpamScopeResult": { "type": "structure", "members": { - "NetworkInsightsPath": { - "target": "com.amazonaws.ec2#NetworkInsightsPath", + "IpamScope": { + "target": "com.amazonaws.ec2#IpamScope", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsPath", - "smithy.api#documentation": "

Information about the path.

", - "smithy.api#xmlName": "networkInsightsPath" + "aws.protocols#ec2QueryName": "IpamScope", + "smithy.api#documentation": "

Information about the created scope.

", + "smithy.api#xmlName": "ipamScope" } } }, @@ -17483,222 +18521,310 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateNetworkInterface": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateNetworkInterfaceRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateNetworkInterfaceResult" - }, - "traits": { - "smithy.api#documentation": "

Creates a network interface in the specified subnet.

\n

The number of IP addresses you can assign to a network interface varies by instance\n type. For more information, see IP Addresses Per ENI Per\n Instance Type in the Amazon Virtual Private Cloud User Guide.

\n

For more information about network interfaces, see Elastic network interfaces \n in the Amazon Elastic Compute Cloud User Guide.

" - } - }, - "com.amazonaws.ec2#CreateNetworkInterfacePermission": { + "com.amazonaws.ec2#CreateKeyPair": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateNetworkInterfacePermissionRequest" + "target": "com.amazonaws.ec2#CreateKeyPairRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateNetworkInterfacePermissionResult" + "target": "com.amazonaws.ec2#KeyPair" }, "traits": { - "smithy.api#documentation": "

Grants an Amazon Web Services-authorized account permission to attach the specified network interface to\n an instance in their account.

\n

You can grant permission to a single Amazon Web Services account only, and only one account at a time.

" + "smithy.api#documentation": "

Creates an ED25519 or 2048-bit RSA key pair with the specified name and in the\n specified format. Amazon EC2 stores the public key and displays the private\n key for you to save to a file. The private key is returned as an unencrypted PEM encoded\n PKCS#1 private key or an unencrypted PPK formatted private key for use with PuTTY. If a\n key with the specified name already exists, Amazon EC2 returns an error.

\n

The key pair returned to you is available only in the Amazon Web Services Region in which you create it.\n If you prefer, you can create your own key pair using a third-party tool and upload it\n to any Region using ImportKeyPair.

\n

You can have up to 5,000 key pairs per Amazon Web Services Region.

\n

For more information, see Amazon EC2 key pairs in the\n Amazon EC2 User Guide.

", + "smithy.api#examples": [ + { + "title": "To create a key pair", + "documentation": "This example creates a key pair named my-key-pair.", + "input": { + "KeyName": "my-key-pair" + } + } + ] } }, - "com.amazonaws.ec2#CreateNetworkInterfacePermissionRequest": { + "com.amazonaws.ec2#CreateKeyPairRequest": { "type": "structure", "members": { - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#NetworkInterfaceId", + "KeyName": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the network interface.

", + "smithy.api#documentation": "

A unique name for the key pair.

\n

Constraints: Up to 255 ASCII characters

", "smithy.api#required": {} } }, - "AwsAccountId": { - "target": "com.amazonaws.ec2#String", + "KeyType": { + "target": "com.amazonaws.ec2#KeyType", "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID.

" + "smithy.api#documentation": "

The type of key pair. Note that ED25519 keys are not supported for Windows instances.

\n

Default: rsa\n

" } }, - "AwsService": { - "target": "com.amazonaws.ec2#String", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The Amazon Web Service. Currently not supported.

" + "smithy.api#documentation": "

The tags to apply to the new key pair.

", + "smithy.api#xmlName": "TagSpecification" } }, - "Permission": { - "target": "com.amazonaws.ec2#InterfacePermissionType", + "KeyFormat": { + "target": "com.amazonaws.ec2#KeyFormat", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of permission to grant.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The format of the key pair.

\n

Default: pem\n

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is DryRunOperation. \n\t\t\tOtherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for CreateNetworkInterfacePermission.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateNetworkInterfacePermissionResult": { - "type": "structure", - "members": { - "InterfacePermission": { - "target": "com.amazonaws.ec2#NetworkInterfacePermission", - "traits": { - "aws.protocols#ec2QueryName": "InterfacePermission", - "smithy.api#documentation": "

Information about the permission for the network interface.

", - "smithy.api#xmlName": "interfacePermission" - } - } + "com.amazonaws.ec2#CreateLaunchTemplate": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateLaunchTemplateRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateLaunchTemplateResult" }, "traits": { - "smithy.api#documentation": "

Contains the output of CreateNetworkInterfacePermission.

", - "smithy.api#output": {} + "smithy.api#documentation": "

Creates a launch template.

\n

A launch template contains the parameters to launch an instance. When you launch an\n instance using RunInstances, you can specify a launch template instead\n of providing the launch parameters in the request. For more information, see Store\n instance launch parameters in Amazon EC2 launch templates in the\n Amazon EC2 User Guide.

\n

To clone an existing launch template as the basis for a new launch template, use the\n Amazon EC2 console. The API, SDKs, and CLI do not support cloning a template. For more\n information, see Create a launch template from an existing launch template in the\n Amazon EC2 User Guide.

", + "smithy.api#examples": [ + { + "title": "To create a launch template", + "documentation": "This example creates a launch template that specifies the subnet in which to launch the instance, assigns a public IP address and an IPv6 address to the instance, and creates a tag for the instance.", + "input": { + "LaunchTemplateName": "my-template", + "VersionDescription": "WebVersion1", + "LaunchTemplateData": { + "NetworkInterfaces": [ + { + "AssociatePublicIpAddress": true, + "DeviceIndex": 0, + "Ipv6AddressCount": 1, + "SubnetId": "subnet-7b16de0c" + } + ], + "ImageId": "ami-8c1be5f6", + "InstanceType": "t2.small", + "TagSpecifications": [ + { + "ResourceType": "instance", + "Tags": [ + { + "Key": "Name", + "Value": "webserver" + } + ] + } + ] + } + }, + "output": { + "LaunchTemplate": { + "LatestVersionNumber": 1, + "LaunchTemplateId": "lt-01238c059e3466abc", + "LaunchTemplateName": "my-template", + "DefaultVersionNumber": 1, + "CreatedBy": "arn:aws:iam::123456789012:root", + "CreateTime": "2017-11-27T09:13:24.000Z" + } + } + } + ] } }, - "com.amazonaws.ec2#CreateNetworkInterfaceRequest": { + "com.amazonaws.ec2#CreateLaunchTemplateRequest": { "type": "structure", "members": { - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description for the network interface.

", - "smithy.api#xmlName": "description" - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" } }, - "Groups": { - "target": "com.amazonaws.ec2#SecurityGroupIdStringList", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IDs of one or more security groups.

", - "smithy.api#xmlName": "SecurityGroupId" + "smithy.api#documentation": "

Unique, case-sensitive identifier you provide to ensure the idempotency of the\n request. If a client token isn't specified, a randomly generated token is used in the\n request to ensure idempotency.

\n

For more information, see Ensuring\n idempotency.

\n

Constraint: Maximum 128 ASCII characters.

", + "smithy.api#idempotencyToken": {} } }, - "Ipv6AddressCount": { - "target": "com.amazonaws.ec2#Integer", + "LaunchTemplateName": { + "target": "com.amazonaws.ec2#LaunchTemplateName", "traits": { - "aws.protocols#ec2QueryName": "Ipv6AddressCount", - "smithy.api#documentation": "

The number of IPv6 addresses to assign to a network interface. Amazon EC2\n automatically selects the IPv6 addresses from the subnet range.

\n

You can't specify a count of IPv6 addresses using this parameter if you've specified \n one of the following: specific IPv6 addresses, specific IPv6 prefixes, or a count of IPv6 prefixes.

\n

If your subnet has the AssignIpv6AddressOnCreation attribute set, you can\n override that setting by specifying 0 as the IPv6 address count.

", - "smithy.api#xmlName": "ipv6AddressCount" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A name for the launch template.

", + "smithy.api#required": {} } }, - "Ipv6Addresses": { - "target": "com.amazonaws.ec2#InstanceIpv6AddressList", - "traits": { - "aws.protocols#ec2QueryName": "Ipv6Addresses", - "smithy.api#documentation": "

The IPv6 addresses from the IPv6 CIDR block range of your subnet.

\n

You can't specify IPv6 addresses using this parameter if you've specified one of the \n following: a count of IPv6 addresses, specific IPv6 prefixes, or a count of IPv6 prefixes.

", - "smithy.api#xmlName": "ipv6Addresses" + "VersionDescription": { + "target": "com.amazonaws.ec2#VersionDescription", + "traits": { + "smithy.api#documentation": "

A description for the first version of the launch template.

" } }, - "PrivateIpAddress": { - "target": "com.amazonaws.ec2#String", + "LaunchTemplateData": { + "target": "com.amazonaws.ec2#RequestLaunchTemplateData", "traits": { - "aws.protocols#ec2QueryName": "PrivateIpAddress", - "smithy.api#documentation": "

The primary private IPv4 address of the network interface. If you don't specify an\n IPv4 address, Amazon EC2 selects one for you from the subnet's IPv4 CIDR range. If you\n specify an IP address, you cannot indicate any IP addresses specified in\n privateIpAddresses as primary (only one IP address can be designated as\n primary).

", - "smithy.api#xmlName": "privateIpAddress" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The information for the launch template.

", + "smithy.api#required": {} } }, - "PrivateIpAddresses": { - "target": "com.amazonaws.ec2#PrivateIpAddressSpecificationList", + "Operator": { + "target": "com.amazonaws.ec2#OperatorRequest", "traits": { - "aws.protocols#ec2QueryName": "PrivateIpAddresses", - "smithy.api#documentation": "

The private IPv4 addresses.

\n

You can't specify private IPv4 addresses if you've specified one of the following:\n a count of private IPv4 addresses, specific IPv4 prefixes, or a count of IPv4 prefixes.

", - "smithy.api#xmlName": "privateIpAddresses" + "smithy.api#documentation": "

Reserved for internal use.

" } }, - "SecondaryPrivateIpAddressCount": { - "target": "com.amazonaws.ec2#Integer", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "aws.protocols#ec2QueryName": "SecondaryPrivateIpAddressCount", - "smithy.api#documentation": "

The number of secondary private IPv4 addresses to assign to a network interface. When\n you specify a number of secondary IPv4 addresses, Amazon EC2 selects these IP addresses\n within the subnet's IPv4 CIDR range. You can't specify this option and specify more than\n one private IP address using privateIpAddresses.

\n

You can't specify a count of private IPv4 addresses if you've specified one of the following:\n specific private IPv4 addresses, specific IPv4 prefixes, or a count of IPv4 prefixes.

", - "smithy.api#xmlName": "secondaryPrivateIpAddressCount" + "smithy.api#documentation": "

The tags to apply to the launch template on creation. To tag the launch template, the\n resource type must be launch-template.

\n

To specify the tags for the resources that are created when an instance is launched,\n you must use the TagSpecifications parameter in the launch template\n data structure.

", + "smithy.api#xmlName": "TagSpecification" } - }, - "Ipv4Prefixes": { - "target": "com.amazonaws.ec2#Ipv4PrefixList", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#CreateLaunchTemplateResult": { + "type": "structure", + "members": { + "LaunchTemplate": { + "target": "com.amazonaws.ec2#LaunchTemplate", "traits": { - "smithy.api#documentation": "

The IPv4 prefixes assigned to the network interface.

\n

You can't specify IPv4 prefixes if you've specified one of the following:\n a count of IPv4 prefixes, specific private IPv4 addresses, or a count of private IPv4 addresses.

", - "smithy.api#xmlName": "Ipv4Prefix" + "aws.protocols#ec2QueryName": "LaunchTemplate", + "smithy.api#documentation": "

Information about the launch template.

", + "smithy.api#xmlName": "launchTemplate" } }, - "Ipv4PrefixCount": { - "target": "com.amazonaws.ec2#Integer", + "Warning": { + "target": "com.amazonaws.ec2#ValidationWarning", "traits": { - "smithy.api#documentation": "

The number of IPv4 prefixes that Amazon Web Services automatically assigns to the network interface.

\n

You can't specify a count of IPv4 prefixes if you've specified one of the following:\n specific IPv4 prefixes, specific private IPv4 addresses, or a count of private IPv4\n addresses.

" + "aws.protocols#ec2QueryName": "Warning", + "smithy.api#documentation": "

If the launch template contains parameters or parameter combinations that are not\n valid, an error code and an error message are returned for each issue that's\n found.

", + "smithy.api#xmlName": "warning" } - }, - "Ipv6Prefixes": { - "target": "com.amazonaws.ec2#Ipv6PrefixList", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#CreateLaunchTemplateVersion": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateLaunchTemplateVersionRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateLaunchTemplateVersionResult" + }, + "traits": { + "smithy.api#documentation": "

Creates a new version of a launch template. You must specify an existing launch\n template, either by name or ID. You can determine whether the new version inherits\n parameters from a source version, and add or overwrite parameters as needed.

\n

Launch template versions are numbered in the order in which they are created. You\n can't specify, change, or replace the numbering of launch template versions.

\n

Launch templates are immutable; after you create a launch template, you can't modify\n it. Instead, you can create a new version of the launch template that includes the\n changes that you require.

\n

For more information, see Modify a launch\n template (manage launch template versions) in the\n Amazon EC2 User Guide.

", + "smithy.api#examples": [ + { + "title": "To create a launch template version", + "documentation": "This example creates a new launch template version based on version 1 of the specified launch template and specifies a different AMI ID.", + "input": { + "LaunchTemplateId": "lt-0abcd290751193123", + "SourceVersion": "1", + "VersionDescription": "WebVersion2", + "LaunchTemplateData": { + "ImageId": "ami-c998b6b2" + } + }, + "output": { + "LaunchTemplateVersion": { + "VersionDescription": "WebVersion2", + "LaunchTemplateId": "lt-0abcd290751193123", + "LaunchTemplateName": "my-template", + "VersionNumber": 2, + "CreatedBy": "arn:aws:iam::123456789012:root", + "LaunchTemplateData": { + "ImageId": "ami-c998b6b2", + "InstanceType": "t2.micro", + "NetworkInterfaces": [ + { + "Ipv6Addresses": [ + { + "Ipv6Address": "2001:db8:1234:1a00::123" + } + ], + "DeviceIndex": 0, + "SubnetId": "subnet-7b16de0c", + "AssociatePublicIpAddress": true + } + ] + }, + "DefaultVersion": false, + "CreateTime": "2017-12-01T13:35:46.000Z" + } + } + } + ] + } + }, + "com.amazonaws.ec2#CreateLaunchTemplateVersionRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The IPv6 prefixes assigned to the network interface.

\n

You can't specify IPv6 prefixes if you've specified one of the following:\n a count of IPv6 prefixes, specific IPv6 addresses, or a count of IPv6 addresses.

", - "smithy.api#xmlName": "Ipv6Prefix" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" } }, - "Ipv6PrefixCount": { - "target": "com.amazonaws.ec2#Integer", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The number of IPv6 prefixes that Amazon Web Services automatically assigns to the network interface.

\n

You can't specify a count of IPv6 prefixes if you've specified one of the following:\n specific IPv6 prefixes, specific IPv6 addresses, or a count of IPv6 addresses.

" + "smithy.api#documentation": "

Unique, case-sensitive identifier you provide to ensure the idempotency of the\n request. If a client token isn't specified, a randomly generated token is used in the\n request to ensure idempotency.

\n

For more information, see Ensuring\n idempotency.

\n

Constraint: Maximum 128 ASCII characters.

", + "smithy.api#idempotencyToken": {} } }, - "InterfaceType": { - "target": "com.amazonaws.ec2#NetworkInterfaceCreationType", + "LaunchTemplateId": { + "target": "com.amazonaws.ec2#LaunchTemplateId", "traits": { - "smithy.api#documentation": "

The type of network interface. The default is interface.

\n

The only supported values are interface, efa, and trunk.

" + "smithy.api#documentation": "

The ID of the launch template.

\n

You must specify either the launch template ID or the launch template name, but not\n both.

" } }, - "SubnetId": { - "target": "com.amazonaws.ec2#SubnetId", + "LaunchTemplateName": { + "target": "com.amazonaws.ec2#LaunchTemplateName", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the subnet to associate with the network interface.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "subnetId" + "smithy.api#documentation": "

The name of the launch template.

\n

You must specify either the launch template ID or the launch template name, but not\n both.

" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "SourceVersion": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The tags to apply to the new network interface.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

The version of the launch template on which to base the new version. Snapshots applied\n to the block device mapping are ignored when creating a new version unless they are\n explicitly included.

\n

If you specify this parameter, the new version inherits the launch parameters from the\n source version. If you specify additional launch parameters for the new version, they\n overwrite any corresponding launch parameters inherited from the source version.

\n

If you omit this parameter, the new version contains only the launch parameters that\n you specify for the new version.

" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "VersionDescription": { + "target": "com.amazonaws.ec2#VersionDescription", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "smithy.api#documentation": "

A description for the version of the launch template.

" } }, - "EnablePrimaryIpv6": { - "target": "com.amazonaws.ec2#Boolean", + "LaunchTemplateData": { + "target": "com.amazonaws.ec2#RequestLaunchTemplateData", "traits": { - "smithy.api#documentation": "

If you’re creating a network interface in a dual-stack or IPv6-only subnet, you have\n the option to assign a primary IPv6 IP address. A primary IPv6 address is an IPv6 GUA\n address associated with an ENI that you have enabled to use a primary IPv6 address. Use this option if the instance that\n this ENI will be attached to relies on its IPv6 address not changing. Amazon Web Services\n will automatically assign an IPv6 address associated with the ENI attached to your\n instance to be the primary IPv6 address. Once you enable an IPv6 GUA address to be a\n primary IPv6, you cannot disable it. When you enable an IPv6 GUA address to be a primary\n IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is\n terminated or the network interface is detached. If you have multiple IPv6 addresses\n associated with an ENI attached to your instance and you enable a primary IPv6 address,\n the first IPv6 GUA address associated with the ENI becomes the primary IPv6\n address.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The information for the launch template.

", + "smithy.api#required": {} } }, - "ConnectionTrackingSpecification": { - "target": "com.amazonaws.ec2#ConnectionTrackingSpecificationRequest", + "ResolveAlias": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

A connection tracking specification for the network interface.

" + "smithy.api#documentation": "

If true, and if a Systems Manager parameter is specified for\n ImageId, the AMI ID is displayed in the response for\n imageID. For more information, see Use a Systems Manager parameter instead of an AMI ID in the\n Amazon EC2 User Guide.

\n

Default: false\n

" } } }, @@ -17706,23 +18832,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateNetworkInterfaceResult": { + "com.amazonaws.ec2#CreateLaunchTemplateVersionResult": { "type": "structure", "members": { - "NetworkInterface": { - "target": "com.amazonaws.ec2#NetworkInterface", + "LaunchTemplateVersion": { + "target": "com.amazonaws.ec2#LaunchTemplateVersion", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterface", - "smithy.api#documentation": "

Information about the network interface.

", - "smithy.api#xmlName": "networkInterface" + "aws.protocols#ec2QueryName": "LaunchTemplateVersion", + "smithy.api#documentation": "

Information about the launch template version.

", + "smithy.api#xmlName": "launchTemplateVersion" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "Warning": { + "target": "com.amazonaws.ec2#ValidationWarning", "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "clientToken" + "aws.protocols#ec2QueryName": "Warning", + "smithy.api#documentation": "

If the new version of the launch template contains parameters or parameter\n combinations that are not valid, an error code and an error message are returned for\n each issue that's found.

", + "smithy.api#xmlName": "warning" } } }, @@ -17730,73 +18856,57 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreatePlacementGroup": { + "com.amazonaws.ec2#CreateLocalGatewayRoute": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreatePlacementGroupRequest" + "target": "com.amazonaws.ec2#CreateLocalGatewayRouteRequest" }, "output": { - "target": "com.amazonaws.ec2#CreatePlacementGroupResult" + "target": "com.amazonaws.ec2#CreateLocalGatewayRouteResult" }, "traits": { - "smithy.api#documentation": "

Creates a placement group in which to launch instances. The strategy of the placement\n group determines how the instances are organized within the group.

\n

A cluster placement group is a logical grouping of instances within a\n single Availability Zone that benefit from low network latency, high network throughput.\n A spread placement group places instances on distinct hardware. A\n partition placement group places groups of instances in different\n partitions, where instances in one partition do not share the same hardware with\n instances in another partition.

\n

For more information, see Placement groups in the\n Amazon EC2 User Guide.

", - "smithy.api#examples": [ - { - "title": "To create a placement group", - "documentation": "This example creates a placement group with the specified name.", - "input": { - "GroupName": "my-cluster", - "Strategy": "cluster" - }, - "output": {} - } - ] + "smithy.api#documentation": "

Creates a static route for the specified local gateway route table. You must specify one of the \n following targets:

\n " } }, - "com.amazonaws.ec2#CreatePlacementGroupRequest": { + "com.amazonaws.ec2#CreateLocalGatewayRouteRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "DestinationCidrBlock": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The CIDR range used for destination matches. Routing decisions are based on \n the most specific match.

" } }, - "GroupName": { - "target": "com.amazonaws.ec2#String", + "LocalGatewayRouteTableId": { + "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", "traits": { - "aws.protocols#ec2QueryName": "GroupName", - "smithy.api#documentation": "

A name for the placement group. Must be unique within the scope of your account for\n the Region.

\n

Constraints: Up to 255 ASCII characters

", - "smithy.api#xmlName": "groupName" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the local gateway route table.

", + "smithy.api#required": {} } }, - "Strategy": { - "target": "com.amazonaws.ec2#PlacementStrategy", + "LocalGatewayVirtualInterfaceGroupId": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId", "traits": { - "aws.protocols#ec2QueryName": "Strategy", - "smithy.api#documentation": "

The placement strategy.

", - "smithy.api#xmlName": "strategy" + "smithy.api#documentation": "

The ID of the virtual interface group.

" } }, - "PartitionCount": { - "target": "com.amazonaws.ec2#Integer", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The number of partitions. Valid only when Strategy is\n set to partition.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", "traits": { - "smithy.api#documentation": "

The tags to apply to the new placement group.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

The ID of the network interface.

" } }, - "SpreadLevel": { - "target": "com.amazonaws.ec2#SpreadLevel", + "DestinationPrefixListId": { + "target": "com.amazonaws.ec2#PrefixListResourceId", "traits": { - "smithy.api#documentation": "

Determines how placement groups spread instances.

\n " + "smithy.api#documentation": "

\n The ID of the prefix list. Use a prefix list in place of DestinationCidrBlock. You \n cannot use DestinationPrefixListId and DestinationCidrBlock in the same request.\n

" } } }, @@ -17804,15 +18914,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreatePlacementGroupResult": { + "com.amazonaws.ec2#CreateLocalGatewayRouteResult": { "type": "structure", "members": { - "PlacementGroup": { - "target": "com.amazonaws.ec2#PlacementGroup", + "Route": { + "target": "com.amazonaws.ec2#LocalGatewayRoute", "traits": { - "aws.protocols#ec2QueryName": "PlacementGroup", - "smithy.api#documentation": "

Information about the placement group.

", - "smithy.api#xmlName": "placementGroup" + "aws.protocols#ec2QueryName": "Route", + "smithy.api#documentation": "

Information about the route.

", + "smithy.api#xmlName": "route" } } }, @@ -17820,48 +18930,62 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreatePublicIpv4Pool": { + "com.amazonaws.ec2#CreateLocalGatewayRouteTable": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreatePublicIpv4PoolRequest" + "target": "com.amazonaws.ec2#CreateLocalGatewayRouteTableRequest" }, "output": { - "target": "com.amazonaws.ec2#CreatePublicIpv4PoolResult" + "target": "com.amazonaws.ec2#CreateLocalGatewayRouteTableResult" }, "traits": { - "smithy.api#documentation": "

Creates a public IPv4 address pool. A public IPv4 pool is an EC2 IP address pool required for the public IPv4 CIDRs that you own and bring to Amazon Web Services to manage with IPAM. IPv6 addresses you bring to Amazon Web Services, however, use IPAM pools only. To monitor the status of pool creation, use DescribePublicIpv4Pools.

" + "smithy.api#documentation": "

\n Creates a local gateway route table. \n

" } }, - "com.amazonaws.ec2#CreatePublicIpv4PoolRequest": { + "com.amazonaws.ec2#CreateLocalGatewayRouteTableRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "LocalGatewayId": { + "target": "com.amazonaws.ec2#LocalGatewayId", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

\n The ID of the local gateway. \n

", + "smithy.api#required": {} + } + }, + "Mode": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTableMode", + "traits": { + "smithy.api#documentation": "

\n The mode of the local gateway route table.\n

" } }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

", + "smithy.api#documentation": "

\n The tags assigned to the local gateway route table.\n

", "smithy.api#xmlName": "TagSpecification" } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreatePublicIpv4PoolResult": { + "com.amazonaws.ec2#CreateLocalGatewayRouteTableResult": { "type": "structure", "members": { - "PoolId": { - "target": "com.amazonaws.ec2#Ipv4PoolEc2Id", + "LocalGatewayRouteTable": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTable", "traits": { - "aws.protocols#ec2QueryName": "PoolId", - "smithy.api#documentation": "

The ID of the public IPv4 pool.

", - "smithy.api#xmlName": "poolId" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTable", + "smithy.api#documentation": "

Information about the local gateway route table.

", + "smithy.api#xmlName": "localGatewayRouteTable" } } }, @@ -17869,65 +18993,48 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateReplaceRootVolumeTask": { + "com.amazonaws.ec2#CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociation": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateReplaceRootVolumeTaskRequest" + "target": "com.amazonaws.ec2#CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateReplaceRootVolumeTaskResult" + "target": "com.amazonaws.ec2#CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationResult" }, "traits": { - "smithy.api#documentation": "

Replaces the EBS-backed root volume for a running instance with a new \n volume that is restored to the original root volume's launch state, that is restored to a \n specific snapshot taken from the original root volume, or that is restored from an AMI \n that has the same key characteristics as that of the instance.

\n

For more information, see Replace a root volume in the Amazon Elastic Compute Cloud User Guide.

" + "smithy.api#documentation": "

\n Creates a local gateway route table virtual interface group association. \n

" } }, - "com.amazonaws.ec2#CreateReplaceRootVolumeTaskRequest": { + "com.amazonaws.ec2#CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequest": { "type": "structure", "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", + "LocalGatewayRouteTableId": { + "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance for which to replace the root volume.

", + "smithy.api#documentation": "

\n The ID of the local gateway route table.\n

", "smithy.api#required": {} } }, - "SnapshotId": { - "target": "com.amazonaws.ec2#SnapshotId", - "traits": { - "smithy.api#documentation": "

The ID of the snapshot from which to restore the replacement root volume. The \n specified snapshot must be a snapshot that you previously created from the original \n root volume.

\n

If you want to restore the replacement root volume to the initial launch state, \n or if you want to restore the replacement root volume from an AMI, omit this \n parameter.

" - } - }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. \n If you do not specify a client token, a randomly generated token is used for the request \n to ensure idempotency. For more information, see Ensuring idempotency.

", - "smithy.api#idempotencyToken": {} - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "LocalGatewayVirtualInterfaceGroupId": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

\n The ID of the local gateway route table virtual interface group association.\n

", + "smithy.api#required": {} } }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The tags to apply to the root volume replacement task.

", + "smithy.api#documentation": "

\n The tags assigned to the local gateway route table virtual interface group association.\n

", "smithy.api#xmlName": "TagSpecification" } }, - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", - "traits": { - "smithy.api#documentation": "

The ID of the AMI to use to restore the root volume. The specified AMI must have the \n same product code, billing information, architecture type, and virtualization type as \n that of the instance.

\n

If you want to restore the replacement volume from a specific snapshot, or if you want \n to restore it to its launch state, omit this parameter.

" - } - }, - "DeleteReplacedRootVolume": { + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Indicates whether to automatically delete the original root volume after the root volume \n replacement task completes. To delete the original root volume, specify true. \n If you choose to keep the original root volume after the replacement task completes, you must \n manually delete it when you no longer need it.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -17935,15 +19042,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateReplaceRootVolumeTaskResult": { + "com.amazonaws.ec2#CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationResult": { "type": "structure", "members": { - "ReplaceRootVolumeTask": { - "target": "com.amazonaws.ec2#ReplaceRootVolumeTask", + "LocalGatewayRouteTableVirtualInterfaceGroupAssociation": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociation", "traits": { - "aws.protocols#ec2QueryName": "ReplaceRootVolumeTask", - "smithy.api#documentation": "

Information about the root volume replacement task.

", - "smithy.api#xmlName": "replaceRootVolumeTask" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableVirtualInterfaceGroupAssociation", + "smithy.api#documentation": "

Information about the local gateway route table virtual interface group association.

", + "smithy.api#xmlName": "localGatewayRouteTableVirtualInterfaceGroupAssociation" } } }, @@ -17951,132 +19058,129 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateReservedInstancesListing": { + "com.amazonaws.ec2#CreateLocalGatewayRouteTableVpcAssociation": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateReservedInstancesListingRequest" + "target": "com.amazonaws.ec2#CreateLocalGatewayRouteTableVpcAssociationRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateReservedInstancesListingResult" + "target": "com.amazonaws.ec2#CreateLocalGatewayRouteTableVpcAssociationResult" }, "traits": { - "smithy.api#documentation": "

Creates a listing for Amazon EC2 Standard Reserved Instances to be sold in the Reserved Instance\n\t\t\tMarketplace. You can submit one Standard Reserved Instance listing at a time. To get a list of your\n\t\t\tStandard Reserved Instances, you can use the DescribeReservedInstances operation.

\n \n

Only Standard Reserved Instances can be sold in the Reserved Instance Marketplace. \n Convertible Reserved Instances cannot be sold.

\n
\n

The Reserved Instance Marketplace matches sellers who want to resell Standard Reserved Instance capacity that they no longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold through the Reserved Instance Marketplace work like any other Reserved Instances.

\n

To sell your Standard Reserved Instances, you must first register as a seller in the Reserved Instance\n Marketplace. After completing the registration process, you can create a Reserved Instance\n Marketplace listing of some or all of your Standard Reserved Instances, and specify the upfront price\n to receive for them. Your Standard Reserved Instance listings then become available for purchase. To\n view the details of your Standard Reserved Instance listing, you can use the\n DescribeReservedInstancesListings operation.

\n

For more information, see Reserved Instance Marketplace in the\n\t\t\t\tAmazon EC2 User Guide.

" + "smithy.api#documentation": "

Associates the specified VPC with the specified local gateway route table.

" } }, - "com.amazonaws.ec2#CreateReservedInstancesListingRequest": { + "com.amazonaws.ec2#CreateLocalGatewayRouteTableVpcAssociationRequest": { "type": "structure", "members": { - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "LocalGatewayRouteTableId": { + "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", "traits": { - "aws.protocols#ec2QueryName": "ClientToken", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Unique, case-sensitive identifier you provide to ensure idempotency of your\n\t\t\t\tlistings. This helps avoid duplicate listings. For more information, see \n\t\t\t\tEnsuring Idempotency.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "clientToken" + "smithy.api#documentation": "

The ID of the local gateway route table.

", + "smithy.api#required": {} } }, - "InstanceCount": { - "target": "com.amazonaws.ec2#Integer", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "aws.protocols#ec2QueryName": "InstanceCount", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The number of instances that are a part of a Reserved Instance account to be listed in the Reserved Instance Marketplace. This number should be less than or equal to the instance count associated with the Reserved Instance ID specified in this call.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "instanceCount" + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#required": {} } }, - "PriceSchedules": { - "target": "com.amazonaws.ec2#PriceScheduleSpecificationList", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "aws.protocols#ec2QueryName": "PriceSchedules", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A list specifying the price of the Standard Reserved Instance for each month remaining in the Reserved Instance term.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "priceSchedules" + "smithy.api#documentation": "

The tags to assign to the local gateway route table VPC association.

", + "smithy.api#xmlName": "TagSpecification" } }, - "ReservedInstancesId": { - "target": "com.amazonaws.ec2#ReservationId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the active Standard Reserved Instance.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "reservedInstancesId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for CreateReservedInstancesListing.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateReservedInstancesListingResult": { + "com.amazonaws.ec2#CreateLocalGatewayRouteTableVpcAssociationResult": { "type": "structure", "members": { - "ReservedInstancesListings": { - "target": "com.amazonaws.ec2#ReservedInstancesListingList", + "LocalGatewayRouteTableVpcAssociation": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociation", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesListingsSet", - "smithy.api#documentation": "

Information about the Standard Reserved Instance listing.

", - "smithy.api#xmlName": "reservedInstancesListingsSet" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableVpcAssociation", + "smithy.api#documentation": "

Information about the association.

", + "smithy.api#xmlName": "localGatewayRouteTableVpcAssociation" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of CreateReservedInstancesListing.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateRestoreImageTask": { + "com.amazonaws.ec2#CreateLocalGatewayVirtualInterface": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateRestoreImageTaskRequest" + "target": "com.amazonaws.ec2#CreateLocalGatewayVirtualInterfaceRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateRestoreImageTaskResult" + "target": "com.amazonaws.ec2#CreateLocalGatewayVirtualInterfaceResult" }, "traits": { - "smithy.api#documentation": "

Starts a task that restores an AMI from an Amazon S3 object that was previously created by using\n CreateStoreImageTask.

\n

To use this API, you must have the required permissions. For more information, see Permissions for storing and restoring AMIs using Amazon S3 in the\n Amazon EC2 User Guide.

\n

For more information, see Store and restore an AMI using\n \tAmazon S3 in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Create a virtual interface for a local gateway.

" } }, - "com.amazonaws.ec2#CreateRestoreImageTaskRequest": { + "com.amazonaws.ec2#CreateLocalGatewayVirtualInterfaceGroup": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateLocalGatewayVirtualInterfaceGroupRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateLocalGatewayVirtualInterfaceGroupResult" + }, + "traits": { + "smithy.api#documentation": "

Create a local gateway virtual interface group.

" + } + }, + "com.amazonaws.ec2#CreateLocalGatewayVirtualInterfaceGroupRequest": { "type": "structure", "members": { - "Bucket": { - "target": "com.amazonaws.ec2#String", + "LocalGatewayId": { + "target": "com.amazonaws.ec2#LocalGatewayId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The name of the Amazon S3 bucket that contains the stored AMI object.

", + "smithy.api#documentation": "

The ID of the local gateway.

", "smithy.api#required": {} } }, - "ObjectKey": { - "target": "com.amazonaws.ec2#String", + "LocalBgpAsn": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The name of the stored AMI object in the bucket.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The Autonomous System Number(ASN) for the local Border Gateway Protocol (BGP).

" } }, - "Name": { - "target": "com.amazonaws.ec2#String", + "LocalBgpAsnExtended": { + "target": "com.amazonaws.ec2#Long", "traits": { - "smithy.api#documentation": "

The name for the restored AMI. The name must be unique for AMIs in the Region for this\n account. If you do not provide a name, the new AMI gets the same name as the original\n AMI.

" + "smithy.api#documentation": "

The extended 32-bit ASN for the local BGP configuration.

" } }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The tags to apply to the AMI and snapshots on restoration. You can tag the AMI, the\n snapshots, or both.

\n ", + "smithy.api#documentation": "

The tags to apply to the local gateway virtual interface group when the resource is\n being created.

", "smithy.api#xmlName": "TagSpecification" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -18084,15 +19188,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateRestoreImageTaskResult": { + "com.amazonaws.ec2#CreateLocalGatewayVirtualInterfaceGroupResult": { "type": "structure", "members": { - "ImageId": { - "target": "com.amazonaws.ec2#String", + "LocalGatewayVirtualInterfaceGroup": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroup", "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The AMI ID.

", - "smithy.api#xmlName": "imageId" + "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceGroup", + "smithy.api#documentation": "

Information about the created local gateway virtual interface group.

", + "smithy.api#xmlName": "localGatewayVirtualInterfaceGroup" } } }, @@ -18100,148 +19204,72 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateRoute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateRouteRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateRouteResult" - }, - "traits": { - "smithy.api#documentation": "

Creates a route in a route table within a VPC.

\n

You must specify either a destination CIDR block or a prefix list ID. You must also specify \n exactly one of the resources from the parameter list.

\n

When determining how to route traffic, we use the route with the most specific match.\n For example, traffic is destined for the IPv4 address 192.0.2.3, and the\n route table includes the following two IPv4 routes:

\n \n

Both routes apply to the traffic destined for 192.0.2.3. However, the second route\n\t\t\t\tin the list covers a smaller number of IP addresses and is therefore more specific,\n\t\t\t\tso we use that route to determine where to target the traffic.

\n

For more information about route tables, see Route tables in the\n Amazon VPC User Guide.

", - "smithy.api#examples": [ - { - "title": "To create a route", - "documentation": "This example creates a route for the specified route table. The route matches all traffic (0.0.0.0/0) and routes it to the specified Internet gateway.", - "input": { - "RouteTableId": "rtb-22574640", - "DestinationCidrBlock": "0.0.0.0/0", - "GatewayId": "igw-c0a643a9" - } - } - ] - } - }, - "com.amazonaws.ec2#CreateRouteRequest": { + "com.amazonaws.ec2#CreateLocalGatewayVirtualInterfaceRequest": { "type": "structure", "members": { - "DestinationCidrBlock": { - "target": "com.amazonaws.ec2#String", + "LocalGatewayVirtualInterfaceGroupId": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId", "traits": { - "aws.protocols#ec2QueryName": "DestinationCidrBlock", - "smithy.api#documentation": "

The IPv4 CIDR address block used for the destination match. Routing decisions are based on the most specific match. We modify the specified CIDR block to its canonical form; for example, if you specify 100.68.0.18/18, we modify it to 100.68.0.0/18.

", - "smithy.api#xmlName": "destinationCidrBlock" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the local gateway virtual interface group.

", + "smithy.api#required": {} } }, - "DestinationIpv6CidrBlock": { - "target": "com.amazonaws.ec2#String", + "OutpostLagId": { + "target": "com.amazonaws.ec2#OutpostLagId", "traits": { - "aws.protocols#ec2QueryName": "DestinationIpv6CidrBlock", - "smithy.api#documentation": "

The IPv6 CIDR block used for the destination match. Routing decisions are based on the most specific match.

", - "smithy.api#xmlName": "destinationIpv6CidrBlock" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

References the Link Aggregation Group (LAG) that connects the Outpost to on-premises network devices.

", + "smithy.api#required": {} } }, - "DestinationPrefixListId": { - "target": "com.amazonaws.ec2#PrefixListResourceId", + "Vlan": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The ID of a prefix list used for the destination match.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The virtual local area network (VLAN) used for the local gateway virtual interface.

", + "smithy.api#required": {} } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" - } - }, - "VpcEndpointId": { - "target": "com.amazonaws.ec2#VpcEndpointId", - "traits": { - "smithy.api#documentation": "

The ID of a VPC endpoint. Supported for Gateway Load Balancer endpoints only.

" - } - }, - "EgressOnlyInternetGatewayId": { - "target": "com.amazonaws.ec2#EgressOnlyInternetGatewayId", - "traits": { - "aws.protocols#ec2QueryName": "EgressOnlyInternetGatewayId", - "smithy.api#documentation": "

[IPv6 traffic only] The ID of an egress-only internet gateway.

", - "smithy.api#xmlName": "egressOnlyInternetGatewayId" - } - }, - "GatewayId": { - "target": "com.amazonaws.ec2#RouteGatewayId", - "traits": { - "aws.protocols#ec2QueryName": "GatewayId", - "smithy.api#documentation": "

The ID of an internet gateway or virtual private gateway attached to your\n\t\t\tVPC.

", - "smithy.api#xmlName": "gatewayId" - } - }, - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", - "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of a NAT instance in your VPC. The operation fails if you specify an instance ID unless exactly one network interface is attached.

", - "smithy.api#xmlName": "instanceId" - } - }, - "NatGatewayId": { - "target": "com.amazonaws.ec2#NatGatewayId", - "traits": { - "aws.protocols#ec2QueryName": "NatGatewayId", - "smithy.api#documentation": "

[IPv4 traffic only] The ID of a NAT gateway.

", - "smithy.api#xmlName": "natGatewayId" - } - }, - "TransitGatewayId": { - "target": "com.amazonaws.ec2#TransitGatewayId", - "traits": { - "smithy.api#documentation": "

The ID of a transit gateway.

" - } - }, - "LocalGatewayId": { - "target": "com.amazonaws.ec2#LocalGatewayId", + "LocalAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The ID of the local gateway.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IP address assigned to the local gateway virtual interface on the Outpost side. Only IPv4 is supported.

", + "smithy.api#required": {} } }, - "CarrierGatewayId": { - "target": "com.amazonaws.ec2#CarrierGatewayId", + "PeerAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The ID of the carrier gateway.

\n

You can only use this option when the VPC contains a subnet which is associated with a Wavelength Zone.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The peer IP address for the local gateway virtual interface. Only IPv4 is\n supported.

", + "smithy.api#required": {} } }, - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#NetworkInterfaceId", + "PeerBgpAsn": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceId", - "smithy.api#documentation": "

The ID of a network interface.

", - "smithy.api#xmlName": "networkInterfaceId" + "smithy.api#documentation": "

The Autonomous System Number (ASN) of the Border Gateway Protocol (BGP) peer.

" } }, - "RouteTableId": { - "target": "com.amazonaws.ec2#RouteTableId", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "aws.protocols#ec2QueryName": "RouteTableId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the route table for the route.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "routeTableId" + "smithy.api#documentation": "

The tags to apply to a resource when the local gateway virtual interface is being created.

", + "smithy.api#xmlName": "TagSpecification" } }, - "VpcPeeringConnectionId": { - "target": "com.amazonaws.ec2#VpcPeeringConnectionId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "VpcPeeringConnectionId", - "smithy.api#documentation": "

The ID of a VPC peering connection.

", - "smithy.api#xmlName": "vpcPeeringConnectionId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "CoreNetworkArn": { - "target": "com.amazonaws.ec2#CoreNetworkArn", + "PeerBgpAsnExtended": { + "target": "com.amazonaws.ec2#Long", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the core network.

" + "smithy.api#documentation": "

The extended 32-bit ASN of the BGP peer for use with larger ASN values.

" } } }, @@ -18249,15 +19277,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateRouteResult": { + "com.amazonaws.ec2#CreateLocalGatewayVirtualInterfaceResult": { "type": "structure", "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + "LocalGatewayVirtualInterface": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterface", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterface", + "smithy.api#documentation": "

Information about the local gateway virtual interface.

", + "smithy.api#xmlName": "localGatewayVirtualInterface" } } }, @@ -18265,76 +19293,67 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateRouteTable": { + "com.amazonaws.ec2#CreateMacSystemIntegrityProtectionModificationTask": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateRouteTableRequest" + "target": "com.amazonaws.ec2#CreateMacSystemIntegrityProtectionModificationTaskRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateRouteTableResult" + "target": "com.amazonaws.ec2#CreateMacSystemIntegrityProtectionModificationTaskResult" }, "traits": { - "smithy.api#documentation": "

Creates a route table for the specified VPC. After you create a route table, you can add routes and associate the table with a subnet.

\n

For more information, see Route tables in the\n\t\t\t\tAmazon VPC User Guide.

", - "smithy.api#examples": [ - { - "title": "To create a route table", - "documentation": "This example creates a route table for the specified VPC.", - "input": { - "VpcId": "vpc-a01106c2" - }, - "output": { - "RouteTable": { - "Associations": [], - "RouteTableId": "rtb-22574640", - "VpcId": "vpc-a01106c2", - "PropagatingVgws": [], - "Tags": [], - "Routes": [ - { - "GatewayId": "local", - "DestinationCidrBlock": "10.0.0.0/16", - "State": "active" - } - ] - } - } - } - ] + "smithy.api#documentation": "

Creates a System Integrity Protection (SIP) modification task to configure the SIP settings \n for an x86 Mac instance or Apple silicon Mac instance. For more information, see \n \n Configure SIP for Amazon EC2 instances in the Amazon EC2 User Guide.

\n

When you configure the SIP settings for your instance, you can either enable \n or disable all SIP settings, or you can specify a custom SIP configuration that \n selectively enables or disables specific SIP settings.

\n \n

If you implement a custom configuration, \n connect to the instance and verify the settings to ensure that your \n requirements are properly implemented and functioning as intended.

\n

SIP configurations might change with macOS updates. We recommend that you \n review custom SIP settings after any macOS version upgrade to ensure \n continued compatibility and proper functionality of your security configurations.

\n
\n

To enable or disable all SIP settings, use the MacSystemIntegrityProtectionStatus \n parameter only. For example, to enable all SIP settings, specify the following:

\n \n

To specify a custom configuration that selectively enables or disables specific SIP \n settings, use the MacSystemIntegrityProtectionStatus \n parameter to enable or disable all SIP settings, and then use the \n MacSystemIntegrityProtectionConfiguration parameter \n to specify exceptions. In this case, the exceptions you specify for MacSystemIntegrityProtectionConfiguration override the value \n you specify for MacSystemIntegrityProtectionStatus. \n For example, to enable all SIP settings, except NvramProtections, \n specify the following:

\n " } }, - "com.amazonaws.ec2#CreateRouteTableRequest": { + "com.amazonaws.ec2#CreateMacSystemIntegrityProtectionModificationTaskRequest": { "type": "structure", "members": { + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "aws.protocols#ec2QueryName": "VpcId", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "vpcId" + "smithy.api#documentation": "

The ID of the Amazon EC2 Mac instance.

", + "smithy.api#required": {} } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "MacCredentials": { + "target": "com.amazonaws.ec2#SensitiveMacCredentials", "traits": { - "smithy.api#documentation": "

The tags to assign to the route table.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

\n [Apple silicon Mac instances only] Specifies the \n following credentials:

\n \n

The credentials must be specified in the following JSON format:

\n

\n {\n \"internalDiskPassword\":\"internal-disk-admin_password\",\n \"rootVolumeUsername\":\"root-volume-admin_username\",\n \"rootVolumepassword\":\"root-volume-admin_password\"\n}\n

" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "MacSystemIntegrityProtectionConfiguration": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionConfigurationRequest", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see Ensuring idempotency.

", - "smithy.api#idempotencyToken": {} + "smithy.api#documentation": "

Specifies the overrides to selectively enable or disable individual SIP settings. \n The individual settings you specify here override the overall SIP status you specify \n for MacSystemIntegrityProtectionStatus.

" + } + }, + "MacSystemIntegrityProtectionStatus": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionSettingStatus", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Specifies the overall SIP status for the instance. To enable all SIP settings, specify \n enabled. To disable all SIP settings, specify disabled.

", + "smithy.api#required": {} + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

Specifies tags to apply to the SIP modification task.

", + "smithy.api#xmlName": "TagSpecification" } } }, @@ -18342,23 +19361,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateRouteTableResult": { + "com.amazonaws.ec2#CreateMacSystemIntegrityProtectionModificationTaskResult": { "type": "structure", "members": { - "RouteTable": { - "target": "com.amazonaws.ec2#RouteTable", - "traits": { - "aws.protocols#ec2QueryName": "RouteTable", - "smithy.api#documentation": "

Information about the route table.

", - "smithy.api#xmlName": "routeTable" - } - }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "MacModificationTask": { + "target": "com.amazonaws.ec2#MacModificationTask", "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier to ensure the idempotency of the request. Only returned if a client token was provided in the request.

", - "smithy.api#xmlName": "clientToken" + "aws.protocols#ec2QueryName": "MacModificationTask", + "smithy.api#documentation": "

Information about the SIP modification task.

", + "smithy.api#xmlName": "macModificationTask" } } }, @@ -18366,71 +19377,70 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateSecurityGroup": { + "com.amazonaws.ec2#CreateManagedPrefixList": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateSecurityGroupRequest" + "target": "com.amazonaws.ec2#CreateManagedPrefixListRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateSecurityGroupResult" + "target": "com.amazonaws.ec2#CreateManagedPrefixListResult" }, "traits": { - "smithy.api#documentation": "

Creates a security group.

\n

A security group acts as a virtual firewall for your instance to control inbound and outbound traffic.\n For more information, see\n\t\t\t\tAmazon EC2 security groups in \n\t\t\t\tthe Amazon Elastic Compute Cloud User Guide and \n\t\t\t\tSecurity groups for your VPC in the\n\t\t\t\tAmazon Virtual Private Cloud User Guide.

\n

When you create a security group, you specify a friendly name of your choice. \n You can't have two security groups for the same VPC with the same name.

\n

You have a default security group for use in your VPC. If you don't specify a security group \n when you launch an instance, the instance is launched into the appropriate default security group. \n A default security group includes a default rule that grants instances unrestricted network access \n to each other.

\n

You can add or remove rules from your security groups using \n\t\t\t\t\tAuthorizeSecurityGroupIngress,\n\t\t\t\t\tAuthorizeSecurityGroupEgress,\n\t\t\t\t\tRevokeSecurityGroupIngress, and\n\t\t\t\t\tRevokeSecurityGroupEgress.

\n

For more information about VPC security group limits, see Amazon VPC Limits.

", - "smithy.api#examples": [ - { - "title": "To create a security group for a VPC", - "documentation": "This example creates a security group for the specified VPC.", - "input": { - "Description": "My security group", - "GroupName": "my-security-group", - "VpcId": "vpc-1a2b3c4d" - }, - "output": { - "GroupId": "sg-903004f8" - } - } - ] + "smithy.api#documentation": "

Creates a managed prefix list. You can specify entries for the prefix list. \n Each entry consists of a CIDR block and an optional description.

" } }, - "com.amazonaws.ec2#CreateSecurityGroupRequest": { + "com.amazonaws.ec2#CreateManagedPrefixListRequest": { "type": "structure", "members": { - "Description": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A description for the security group.

\n

Constraints: Up to 255 characters in length

\n

Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

", - "smithy.api#required": {}, - "smithy.api#xmlName": "GroupDescription" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "GroupName": { + "PrefixListName": { "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The name of the security group.

\n

Constraints: Up to 255 characters in length. Cannot start with sg-.

\n

Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

", + "smithy.api#documentation": "

A name for the prefix list.

\n

Constraints: Up to 255 characters in length. The name cannot start with com.amazonaws.

", "smithy.api#required": {} } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "Entries": { + "target": "com.amazonaws.ec2#AddPrefixListEntries", "traits": { - "smithy.api#documentation": "

The ID of the VPC. Required for a nondefault VPC.

" + "smithy.api#documentation": "

One or more entries for the prefix list.

", + "smithy.api#xmlName": "Entry" + } + }, + "MaxEntries": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The maximum number of entries for the prefix list.

", + "smithy.api#required": {} } }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The tags to assign to the security group.

", + "smithy.api#documentation": "

The tags to apply to the prefix list during creation.

", "smithy.api#xmlName": "TagSpecification" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "AddressFamily": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IP address type.

\n

Valid Values: IPv4 | IPv6\n

", + "smithy.api#required": {} + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Unique, case-sensitive identifier you provide to ensure the idempotency of the\n request. For more information, see Ensuring\n idempotency.

\n

Constraints: Up to 255 UTF-8 characters in length.

", + "smithy.api#idempotencyToken": {} } } }, @@ -18438,23 +19448,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateSecurityGroupResult": { + "com.amazonaws.ec2#CreateManagedPrefixListResult": { "type": "structure", "members": { - "GroupId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "GroupId", - "smithy.api#documentation": "

The ID of the security group.

", - "smithy.api#xmlName": "groupId" - } - }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "PrefixList": { + "target": "com.amazonaws.ec2#ManagedPrefixList", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags assigned to the security group.

", - "smithy.api#xmlName": "tagSet" + "aws.protocols#ec2QueryName": "PrefixList", + "smithy.api#documentation": "

Information about the prefix list.

", + "smithy.api#xmlName": "prefixList" } } }, @@ -18462,133 +19464,109 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateSnapshot": { + "com.amazonaws.ec2#CreateNatGateway": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateSnapshotRequest" + "target": "com.amazonaws.ec2#CreateNatGatewayRequest" }, "output": { - "target": "com.amazonaws.ec2#Snapshot" + "target": "com.amazonaws.ec2#CreateNatGatewayResult" }, "traits": { - "smithy.api#documentation": "

Creates a snapshot of an EBS volume and stores it in Amazon S3. You can use snapshots for\n \tbackups, to make copies of EBS volumes, and to save data before shutting down an\n \tinstance.

\n

You can create snapshots of volumes in a Region and volumes on an Outpost. If you \n \tcreate a snapshot of a volume in a Region, the snapshot must be stored in the same \n \tRegion as the volume. If you create a snapshot of a volume on an Outpost, the snapshot \n \tcan be stored on the same Outpost as the volume, or in the Region for that Outpost.

\n

When a snapshot is created, any Amazon Web Services Marketplace product codes that are associated with the\n source volume are propagated to the snapshot.

\n

You can take a snapshot of an attached volume that is in use. However, snapshots only\n capture data that has been written to your Amazon EBS volume at the time the snapshot command is\n issued; this might exclude any data that has been cached by any applications or the operating\n system. If you can pause any file systems on the volume long enough to take a snapshot, your\n snapshot should be complete. However, if you cannot pause all file writes to the volume, you\n should unmount the volume from within the instance, issue the snapshot command, and then\n remount the volume to ensure a consistent and complete snapshot. You may remount and use your\n volume while the snapshot status is pending.

\n

When you create a snapshot for an EBS volume that serves as a root device, we recommend \n that you stop the instance before taking the snapshot.

\n

Snapshots that are taken from encrypted volumes are automatically encrypted. Volumes that\n are created from encrypted snapshots are also automatically encrypted. Your encrypted volumes\n and any associated snapshots always remain protected.

\n

You can tag your snapshots during creation. For more information, see Tag your Amazon EC2\n resources in the Amazon Elastic Compute Cloud User Guide.

\n

For more information, see Amazon Elastic Block Store and Amazon EBS encryption in the Amazon EBS User Guide.

", + "smithy.api#documentation": "

Creates a NAT gateway in the specified subnet. This action creates a network interface\n in the specified subnet with a private IP address from the IP address range of the\n subnet. You can create either a public NAT gateway or a private NAT gateway.

\n

With a public NAT gateway, internet-bound traffic from a private subnet can be routed\n to the NAT gateway, so that instances in a private subnet can connect to the internet.

\n

With a private NAT gateway, private communication is routed across VPCs and on-premises\n networks through a transit gateway or virtual private gateway. Common use cases include\n running large workloads behind a small pool of allowlisted IPv4 addresses, preserving\n private IPv4 addresses, and communicating between overlapping networks.

\n

For more information, see NAT gateways in the Amazon VPC User Guide.

\n \n

When you create a public NAT gateway and assign it an EIP or secondary EIPs, \n the network border group of the EIPs must match the network border group of the Availability Zone (AZ) \n that the public NAT gateway is in. If it's not the same, the NAT gateway will fail to launch. \n You can see the network border group for the subnet's AZ by viewing the details of the subnet. \n Similarly, you can view the network border group of an EIP by viewing the details of the EIP address. \n For more information about network border groups and EIPs, see Allocate an Elastic IP address \n in the Amazon VPC User Guide. \n

\n
", "smithy.api#examples": [ { - "title": "To create a snapshot", - "documentation": "This example creates a snapshot of the volume with a volume ID of ``vol-1234567890abcdef0`` and a short description to identify the snapshot.", + "title": "To create a NAT gateway", + "documentation": "This example creates a NAT gateway in subnet subnet-1a2b3c4d and associates an Elastic IP address with the allocation ID eipalloc-37fc1a52 with the NAT gateway.", "input": { - "VolumeId": "vol-1234567890abcdef0", - "Description": "This is my root volume snapshot." + "SubnetId": "subnet-1a2b3c4d", + "AllocationId": "eipalloc-37fc1a52" }, "output": { - "Description": "This is my root volume snapshot.", - "Tags": [], - "VolumeId": "vol-1234567890abcdef0", - "State": "pending", - "VolumeSize": 8, - "StartTime": "2014-02-28T21:06:01.000Z", - "OwnerId": "012345678910", - "SnapshotId": "snap-066877671789bd71b" + "NatGateway": { + "NatGatewayAddresses": [ + { + "AllocationId": "eipalloc-37fc1a52" + } + ], + "VpcId": "vpc-1122aabb", + "State": "pending", + "NatGatewayId": "nat-08d48af2a8e83edfd", + "SubnetId": "subnet-1a2b3c4d", + "CreateTime": "2015-12-17T12:45:26.732Z" + } } } ] } }, - "com.amazonaws.ec2#CreateSnapshotRequest": { + "com.amazonaws.ec2#CreateNatGatewayRequest": { "type": "structure", "members": { - "Description": { - "target": "com.amazonaws.ec2#String", + "AllocationId": { + "target": "com.amazonaws.ec2#AllocationId", "traits": { - "smithy.api#documentation": "

A description for the snapshot.

" + "smithy.api#documentation": "

[Public NAT gateways only] The allocation ID of an Elastic IP address to associate \n with the NAT gateway. You cannot specify an Elastic IP address with a private NAT gateway.\n If the Elastic IP address is associated with another resource, you must first disassociate it.

" } }, - "OutpostArn": { + "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost on which to create a local \n \tsnapshot.

\n \n

For more information, see Create local snapshots from volumes on an Outpost in the Amazon EBS User Guide.

" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n\t\t\trequest. For more information, see Ensuring idempotency.

\n

Constraint: Maximum 64 ASCII characters.

", + "smithy.api#idempotencyToken": {} } }, - "VolumeId": { - "target": "com.amazonaws.ec2#VolumeId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Amazon EBS volume.

", + "smithy.api#documentation": "

The ID of the subnet in which to create the NAT gateway.

", "smithy.api#required": {} } }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The tags to apply to the snapshot during creation.

", + "smithy.api#documentation": "

The tags to assign to the NAT gateway.

", "smithy.api#xmlName": "TagSpecification" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#CreateSnapshots": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateSnapshotsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateSnapshotsResult" - }, - "traits": { - "smithy.api#documentation": "

Creates crash-consistent snapshots of multiple EBS volumes and stores the data in S3.\n Volumes are chosen by specifying an instance. Any attached volumes will produce one snapshot\n each that is crash-consistent across the instance.

\n

You can include all of the volumes currently attached to the instance, or you can exclude \n the root volume or specific data (non-root) volumes from the multi-volume snapshot set.

\n

You can create multi-volume snapshots of instances in a Region and instances on an \n \tOutpost. If you create snapshots from an instance in a Region, the snapshots must be stored \n \tin the same Region as the instance. If you create snapshots from an instance on an Outpost, \n \tthe snapshots can be stored on the same Outpost as the instance, or in the Region for that \n \tOutpost.

" - } - }, - "com.amazonaws.ec2#CreateSnapshotsRequest": { - "type": "structure", - "members": { - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

A description propagated to every snapshot specified by the instance.

" - } - }, - "InstanceSpecification": { - "target": "com.amazonaws.ec2#InstanceSpecification", + "ConnectivityType": { + "target": "com.amazonaws.ec2#ConnectivityType", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The instance to specify which volumes should be included in the snapshots.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Indicates whether the NAT gateway supports public or private connectivity. \n The default is public connectivity.

" } }, - "OutpostArn": { + "PrivateIpAddress": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost on which to create the local \n \t\tsnapshots.

\n \n

For more information, see \n \t\tCreate multi-volume local snapshots from instances on an Outpost in the \n \t\tAmazon EBS User Guide.

" + "smithy.api#documentation": "

The private IPv4 address to assign to the NAT gateway. If you don't provide an address, a private IPv4 address will be automatically assigned.

" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "SecondaryAllocationIds": { + "target": "com.amazonaws.ec2#AllocationIdList", "traits": { - "smithy.api#documentation": "

Tags to apply to every snapshot specified by the instance.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

Secondary EIP allocation IDs. For more information, see Create a NAT gateway \n in the Amazon VPC User Guide.

", + "smithy.api#xmlName": "SecondaryAllocationId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "SecondaryPrivateIpAddresses": { + "target": "com.amazonaws.ec2#IpList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Secondary private IPv4 addresses. For more information about secondary addresses, see \n Create a NAT gateway in the Amazon VPC User Guide.

", + "smithy.api#xmlName": "SecondaryPrivateIpAddress" } }, - "CopyTagsFromSource": { - "target": "com.amazonaws.ec2#CopyTagsFromSource", + "SecondaryPrivateIpAddressCount": { + "target": "com.amazonaws.ec2#PrivateIpAddressCount", "traits": { - "smithy.api#documentation": "

Copies the tags from the specified volume to corresponding snapshot.

" + "smithy.api#documentation": "

[Private NAT gateway only] The number of secondary private IPv4 addresses you want to assign to the NAT gateway. \n For more information about secondary addresses, see Create a NAT gateway \n in the Amazon VPC User Guide.

" } } }, @@ -18596,15 +19574,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateSnapshotsResult": { + "com.amazonaws.ec2#CreateNatGatewayResult": { "type": "structure", "members": { - "Snapshots": { - "target": "com.amazonaws.ec2#SnapshotSet", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SnapshotSet", - "smithy.api#documentation": "

List of snapshots.

", - "smithy.api#xmlName": "snapshotSet" + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

Unique, case-sensitive identifier to ensure the idempotency of the request. Only returned if a client token was provided in the request.

", + "smithy.api#xmlName": "clientToken" + } + }, + "NatGateway": { + "target": "com.amazonaws.ec2#NatGateway", + "traits": { + "aws.protocols#ec2QueryName": "NatGateway", + "smithy.api#documentation": "

Information about the NAT gateway.

", + "smithy.api#xmlName": "natGateway" } } }, @@ -18612,130 +19598,212 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateSpotDatafeedSubscription": { + "com.amazonaws.ec2#CreateNetworkAcl": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateSpotDatafeedSubscriptionRequest" + "target": "com.amazonaws.ec2#CreateNetworkAclRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateSpotDatafeedSubscriptionResult" + "target": "com.amazonaws.ec2#CreateNetworkAclResult" }, "traits": { - "smithy.api#documentation": "

Creates a data feed for Spot Instances, enabling you to view Spot Instance usage logs.\n You can create one data feed per Amazon Web Services account. For more information, see\n Spot Instance data feed \n in the Amazon EC2 User Guide for Linux Instances.

", + "smithy.api#documentation": "

Creates a network ACL in a VPC. Network ACLs provide an optional layer of security (in addition to security groups) for the instances in your VPC.

\n

For more information, see Network ACLs in the\n\t\t\t\tAmazon VPC User Guide.

", "smithy.api#examples": [ { - "title": "To create a Spot Instance datafeed", - "documentation": "This example creates a Spot Instance data feed for your AWS account.", + "title": "To create a network ACL", + "documentation": "This example creates a network ACL for the specified VPC.", "input": { - "Bucket": "my-s3-bucket", - "Prefix": "spotdata" + "VpcId": "vpc-a01106c2" }, "output": { - "SpotDatafeedSubscription": { - "OwnerId": "123456789012", - "Prefix": "spotdata", - "Bucket": "my-s3-bucket", - "State": "Active" + "NetworkAcl": { + "Associations": [], + "NetworkAclId": "acl-5fb85d36", + "VpcId": "vpc-a01106c2", + "Tags": [], + "Entries": [ + { + "CidrBlock": "0.0.0.0/0", + "RuleNumber": 32767, + "Protocol": "-1", + "Egress": true, + "RuleAction": "deny" + }, + { + "CidrBlock": "0.0.0.0/0", + "RuleNumber": 32767, + "Protocol": "-1", + "Egress": false, + "RuleAction": "deny" + } + ], + "IsDefault": false } } } ] } }, - "com.amazonaws.ec2#CreateSpotDatafeedSubscriptionRequest": { + "com.amazonaws.ec2#CreateNetworkAclEntry": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateNetworkAclEntryRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Creates an entry (a rule) in a network ACL with the specified rule number. Each network ACL has a set of numbered ingress rules \n\t\t and a separate set of numbered egress rules. When determining whether a packet should be allowed in or out of a subnet associated \n\t\t with the ACL, we process the entries in the ACL according to the rule numbers, in ascending order. Each network ACL has a set of \n\t\t ingress rules and a separate set of egress rules.

\n

We recommend that you leave room between the rule numbers (for example, 100, 110, 120, ...), and not number them one right after the \n\t\t other (for example, 101, 102, 103, ...). This makes it easier to add a rule between existing ones without having to renumber the rules.

\n

After you add an entry, you can't modify it; you must either replace it, or create an entry and delete the old one.

\n

For more information about network ACLs, see Network ACLs \n in the Amazon VPC User Guide.

", + "smithy.api#examples": [ + { + "title": "To create a network ACL entry", + "documentation": "This example creates an entry for the specified network ACL. The rule allows ingress traffic from anywhere (0.0.0.0/0) on UDP port 53 (DNS) into any associated subnet.", + "input": { + "NetworkAclId": "acl-5fb85d36", + "RuleNumber": 100, + "Protocol": "17", + "RuleAction": "allow", + "Egress": false, + "CidrBlock": "0.0.0.0/0", + "PortRange": { + "From": 53, + "To": 53 + } + } + } + ] + } + }, + "com.amazonaws.ec2#CreateNetworkAclEntryRequest": { "type": "structure", "members": { - "Bucket": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Bucket", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The name of the Amazon S3 bucket in which to store the Spot Instance data feed. For\n more information about bucket names, see Rules for bucket\n naming in the Amazon S3 Developer Guide.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "bucket" - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } }, - "Prefix": { - "target": "com.amazonaws.ec2#String", + "NetworkAclId": { + "target": "com.amazonaws.ec2#NetworkAclId", "traits": { - "aws.protocols#ec2QueryName": "Prefix", - "smithy.api#documentation": "

The prefix for the data feed file names.

", - "smithy.api#xmlName": "prefix" + "aws.protocols#ec2QueryName": "NetworkAclId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the network ACL.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "networkAclId" } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the parameters for CreateSpotDatafeedSubscription.

", - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#CreateSpotDatafeedSubscriptionResult": { - "type": "structure", - "members": { - "SpotDatafeedSubscription": { - "target": "com.amazonaws.ec2#SpotDatafeedSubscription", + }, + "RuleNumber": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "SpotDatafeedSubscription", - "smithy.api#documentation": "

The Spot Instance data feed subscription.

", - "smithy.api#xmlName": "spotDatafeedSubscription" + "aws.protocols#ec2QueryName": "RuleNumber", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The rule number for the entry (for example, 100). ACL entries are processed in ascending order by rule number.

\n

Constraints: Positive integer from 1 to 32766. The range 32767 to 65535 is reserved for internal use.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "ruleNumber" + } + }, + "Protocol": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Protocol", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The protocol number. A value of \"-1\" means all protocols. If you specify \"-1\" or a\n \t\t\tprotocol number other than \"6\" (TCP), \"17\" (UDP), or \"1\" (ICMP), traffic on all ports is \n\t\t\tallowed, regardless of any ports or ICMP types or codes that you specify. If you specify \n\t\t\tprotocol \"58\" (ICMPv6) and specify an IPv4 CIDR block, traffic for all ICMP types and \n\t\t\tcodes allowed, regardless of any that you specify. If you specify protocol \"58\" (ICMPv6) \n\t\t\tand specify an IPv6 CIDR block, you must specify an ICMP type and code.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "protocol" + } + }, + "RuleAction": { + "target": "com.amazonaws.ec2#RuleAction", + "traits": { + "aws.protocols#ec2QueryName": "RuleAction", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Indicates whether to allow or deny the traffic that matches the rule.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "ruleAction" + } + }, + "Egress": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Egress", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet).

", + "smithy.api#required": {}, + "smithy.api#xmlName": "egress" + } + }, + "CidrBlock": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "CidrBlock", + "smithy.api#documentation": "

The IPv4 network range to allow or deny, in CIDR notation (for example\n\t\t 172.16.0.0/24). We modify the specified CIDR block to its canonical form; for example, if you specify 100.68.0.18/18, we modify it to 100.68.0.0/18.

", + "smithy.api#xmlName": "cidrBlock" + } + }, + "Ipv6CidrBlock": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Ipv6CidrBlock", + "smithy.api#documentation": "

The IPv6 network range to allow or deny, in CIDR notation (for example\n 2001:db8:1234:1a00::/64).

", + "smithy.api#xmlName": "ipv6CidrBlock" + } + }, + "IcmpTypeCode": { + "target": "com.amazonaws.ec2#IcmpTypeCode", + "traits": { + "smithy.api#documentation": "

ICMP protocol: The ICMP or ICMPv6 type and code. Required if specifying protocol \n\t\t 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR block.

", + "smithy.api#xmlName": "Icmp" + } + }, + "PortRange": { + "target": "com.amazonaws.ec2#PortRange", + "traits": { + "aws.protocols#ec2QueryName": "PortRange", + "smithy.api#documentation": "

TCP or UDP protocols: The range of ports the rule applies to.\n\t\t Required if specifying protocol 6 (TCP) or 17 (UDP).

", + "smithy.api#xmlName": "portRange" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of CreateSpotDatafeedSubscription.

", - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#CreateStoreImageTask": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateStoreImageTaskRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateStoreImageTaskResult" - }, - "traits": { - "smithy.api#documentation": "

Stores an AMI as a single object in an Amazon S3 bucket.

\n

To use this API, you must have the required permissions. For more information, see Permissions for storing and restoring AMIs using Amazon S3 in the\n Amazon EC2 User Guide.

\n

For more information, see Store and restore an AMI using\n \tAmazon S3 in the Amazon EC2 User Guide.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateStoreImageTaskRequest": { + "com.amazonaws.ec2#CreateNetworkAclRequest": { "type": "structure", "members": { - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the AMI.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The tags to assign to the network ACL.

", + "smithy.api#xmlName": "TagSpecification" } }, - "Bucket": { + "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The name of the Amazon S3 bucket in which the AMI object will be stored. The bucket must be in\n the Region in which the request is being made. The AMI object appears in the bucket only after\n the upload task has completed.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} } }, - "S3ObjectTags": { - "target": "com.amazonaws.ec2#S3ObjectTagList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The tags to apply to the AMI object that will be stored in the Amazon S3 bucket.

", - "smithy.api#xmlName": "S3ObjectTag" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "vpcId" } } }, @@ -18743,15 +19811,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateStoreImageTaskResult": { + "com.amazonaws.ec2#CreateNetworkAclResult": { "type": "structure", "members": { - "ObjectKey": { + "NetworkAcl": { + "target": "com.amazonaws.ec2#NetworkAcl", + "traits": { + "aws.protocols#ec2QueryName": "NetworkAcl", + "smithy.api#documentation": "

Information about the network ACL.

", + "smithy.api#xmlName": "networkAcl" + } + }, + "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ObjectKey", - "smithy.api#documentation": "

The name of the stored AMI object in the S3 bucket.

", - "smithy.api#xmlName": "objectKey" + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

Unique, case-sensitive identifier to ensure the idempotency of the request. Only returned if a client token was provided in the request.

", + "smithy.api#xmlName": "clientToken" } } }, @@ -18759,81 +19835,49 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateSubnet": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateSubnetRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateSubnetResult" - }, - "traits": { - "smithy.api#documentation": "

Creates a subnet in the specified VPC. For an IPv4 only subnet, specify an IPv4 CIDR block.\n If the VPC has an IPv6 CIDR block, you can create an IPv6 only subnet or a dual stack subnet instead.\n For an IPv6 only subnet, specify an IPv6 CIDR block. For a dual stack subnet, specify both\n an IPv4 CIDR block and an IPv6 CIDR block.

\n

A subnet CIDR block must not overlap the CIDR block of an existing subnet in the VPC.\n After you create a subnet, you can't change its CIDR block.

\n

The allowed size for an IPv4 subnet is between a /28 netmask (16 IP addresses) and \n a /16 netmask (65,536 IP addresses). Amazon Web Services reserves both the first four and \n the last IPv4 address in each subnet's CIDR block. They're not available for your use.

\n

If you've associated an IPv6 CIDR block with your VPC, you can associate an IPv6 CIDR\n block with a subnet when you create it.

\n

If you add more than one subnet to a VPC, they're set up in a star topology with a\n logical router in the middle.

\n

When you stop an instance in a subnet, it retains its private IPv4 address. It's\n therefore possible to have a subnet with no running instances (they're all stopped), but\n no remaining IP addresses available.

\n

For more information, see Subnets in the Amazon VPC User Guide.

", - "smithy.api#examples": [ - { - "title": "To create a subnet", - "documentation": "This example creates a subnet in the specified VPC with the specified CIDR block. We recommend that you let us select an Availability Zone for you.", - "input": { - "VpcId": "vpc-a01106c2", - "CidrBlock": "10.0.1.0/24" - }, - "output": { - "Subnet": { - "VpcId": "vpc-a01106c2", - "CidrBlock": "10.0.1.0/24", - "State": "pending", - "AvailabilityZone": "us-west-2c", - "SubnetId": "subnet-9d4a7b6c", - "AvailableIpAddressCount": 251 - } - } - } - ] - } - }, - "com.amazonaws.ec2#CreateSubnetCidrReservation": { + "com.amazonaws.ec2#CreateNetworkInsightsAccessScope": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateSubnetCidrReservationRequest" + "target": "com.amazonaws.ec2#CreateNetworkInsightsAccessScopeRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateSubnetCidrReservationResult" + "target": "com.amazonaws.ec2#CreateNetworkInsightsAccessScopeResult" }, "traits": { - "smithy.api#documentation": "

Creates a subnet CIDR reservation. For more information, see Subnet CIDR reservations \n in the Amazon Virtual Private Cloud User Guide and Assign prefixes \n to network interfaces in the Amazon Elastic Compute Cloud User Guide.

" + "smithy.api#documentation": "

Creates a Network Access Scope.

\n

Amazon Web Services Network Access Analyzer enables cloud networking and cloud operations teams \n to verify that their networks on Amazon Web Services conform to their network security and governance \n objectives. For more information, see the Amazon Web Services Network Access Analyzer Guide.

" } }, - "com.amazonaws.ec2#CreateSubnetCidrReservationRequest": { + "com.amazonaws.ec2#CreateNetworkInsightsAccessScopeRequest": { "type": "structure", "members": { - "SubnetId": { - "target": "com.amazonaws.ec2#SubnetId", + "MatchPaths": { + "target": "com.amazonaws.ec2#AccessScopePathListRequest", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the subnet.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The paths to match.

", + "smithy.api#xmlName": "MatchPath" } }, - "Cidr": { - "target": "com.amazonaws.ec2#String", + "ExcludePaths": { + "target": "com.amazonaws.ec2#AccessScopePathListRequest", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IPv4 or IPV6 CIDR range to reserve.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The paths to exclude.

", + "smithy.api#xmlName": "ExcludePath" } }, - "ReservationType": { - "target": "com.amazonaws.ec2#SubnetCidrReservationType", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of reservation. The reservation type determines how the reserved IP addresses are \n assigned to resources.

\n ", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, \n see How to ensure idempotency.

", + "smithy.api#idempotencyToken": {}, "smithy.api#required": {} } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The description to assign to the subnet CIDR reservation.

" + "smithy.api#documentation": "

The tags to apply.

", + "smithy.api#xmlName": "TagSpecification" } }, "DryRun": { @@ -18841,28 +19885,29 @@ "traits": { "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", - "traits": { - "smithy.api#documentation": "

The tags to assign to the subnet CIDR reservation.

", - "smithy.api#xmlName": "TagSpecification" - } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateSubnetCidrReservationResult": { + "com.amazonaws.ec2#CreateNetworkInsightsAccessScopeResult": { "type": "structure", "members": { - "SubnetCidrReservation": { - "target": "com.amazonaws.ec2#SubnetCidrReservation", + "NetworkInsightsAccessScope": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScope", "traits": { - "aws.protocols#ec2QueryName": "SubnetCidrReservation", - "smithy.api#documentation": "

Information about the created subnet CIDR reservation.

", - "smithy.api#xmlName": "subnetCidrReservation" + "aws.protocols#ec2QueryName": "NetworkInsightsAccessScope", + "smithy.api#documentation": "

The Network Access Scope.

", + "smithy.api#xmlName": "networkInsightsAccessScope" + } + }, + "NetworkInsightsAccessScopeContent": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeContent", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeContent", + "smithy.api#documentation": "

The Network Access Scope content.

", + "smithy.api#xmlName": "networkInsightsAccessScopeContent" } } }, @@ -18870,90 +19915,93 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateSubnetRequest": { + "com.amazonaws.ec2#CreateNetworkInsightsPath": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateNetworkInsightsPathRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateNetworkInsightsPathResult" + }, + "traits": { + "smithy.api#documentation": "

Creates a path to analyze for reachability.

\n

Reachability Analyzer enables you to analyze and debug network reachability between\n two resources in your virtual private cloud (VPC). For more information, see the \n Reachability Analyzer Guide.

" + } + }, + "com.amazonaws.ec2#CreateNetworkInsightsPathRequest": { "type": "structure", "members": { - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", - "traits": { - "smithy.api#documentation": "

The tags to assign to the subnet.

", - "smithy.api#xmlName": "TagSpecification" - } - }, - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The Availability Zone or Local Zone for the subnet.

\n

Default: Amazon Web Services selects one for you. If you create more than one subnet in your VPC, we \n do not necessarily select a different zone for each subnet.

\n

To create a subnet in a Local Zone, set this value to the Local Zone ID, for example\n us-west-2-lax-1a. For information about the Regions that support Local Zones, \n see Local Zones locations.

\n

To create a subnet in an Outpost, set this value to the Availability Zone for the\n Outpost and specify the Outpost ARN.

" - } - }, - "AvailabilityZoneId": { - "target": "com.amazonaws.ec2#String", + "SourceIp": { + "target": "com.amazonaws.ec2#IpAddress", "traits": { - "smithy.api#documentation": "

The AZ ID or the Local Zone ID of the subnet.

" + "smithy.api#documentation": "

The IP address of the source.

" } }, - "CidrBlock": { - "target": "com.amazonaws.ec2#String", + "DestinationIp": { + "target": "com.amazonaws.ec2#IpAddress", "traits": { - "smithy.api#documentation": "

The IPv4 network range for the subnet, in CIDR notation. For example, 10.0.0.0/24. \n We modify the specified CIDR block to its canonical form; for example, if you specify \n 100.68.0.18/18, we modify it to 100.68.0.0/18.

\n

This parameter is not supported for an IPv6 only subnet.

" + "smithy.api#documentation": "

The IP address of the destination.

" } }, - "Ipv6CidrBlock": { - "target": "com.amazonaws.ec2#String", + "Source": { + "target": "com.amazonaws.ec2#NetworkInsightsResourceId", "traits": { - "smithy.api#documentation": "

The IPv6 network range for the subnet, in CIDR notation. This parameter is required\n for an IPv6 only subnet.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID or ARN of the source. If the resource is in another account, you must specify an ARN.

", + "smithy.api#required": {} } }, - "OutpostArn": { - "target": "com.amazonaws.ec2#String", + "Destination": { + "target": "com.amazonaws.ec2#NetworkInsightsResourceId", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost. If you specify an Outpost ARN, you must also\n specify the Availability Zone of the Outpost subnet.

" + "smithy.api#documentation": "

The ID or ARN of the destination. If the resource is in another account, you must specify an ARN.

" } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "Protocol": { + "target": "com.amazonaws.ec2#Protocol", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#documentation": "

The protocol.

", "smithy.api#required": {} } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "DestinationPort": { + "target": "com.amazonaws.ec2#Port", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The destination port.

" } }, - "Ipv6Native": { - "target": "com.amazonaws.ec2#Boolean", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

Indicates whether to create an IPv6 only subnet.

" + "smithy.api#documentation": "

The tags to add to the path.

", + "smithy.api#xmlName": "TagSpecification" } }, - "Ipv4IpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

An IPv4 IPAM pool ID for the subnet.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "Ipv4NetmaskLength": { - "target": "com.amazonaws.ec2#NetmaskLength", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

An IPv4 netmask length for the subnet.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, \n see How to ensure idempotency.

", + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} } }, - "Ipv6IpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", + "FilterAtSource": { + "target": "com.amazonaws.ec2#PathRequestFilter", "traits": { - "smithy.api#documentation": "

An IPv6 IPAM pool ID for the subnet.

" + "smithy.api#documentation": "

Scopes the analysis to network paths that match specific filters at the source. If you specify\n this parameter, you can't specify the parameters for the source IP address or the destination port.

" } }, - "Ipv6NetmaskLength": { - "target": "com.amazonaws.ec2#NetmaskLength", + "FilterAtDestination": { + "target": "com.amazonaws.ec2#PathRequestFilter", "traits": { - "smithy.api#documentation": "

An IPv6 netmask length for the subnet.

" + "smithy.api#documentation": "

Scopes the analysis to network paths that match specific filters at the destination. If you specify\n this parameter, you can't specify the parameter for the destination IP address.

" } } }, @@ -18961,15 +20009,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateSubnetResult": { + "com.amazonaws.ec2#CreateNetworkInsightsPathResult": { "type": "structure", "members": { - "Subnet": { - "target": "com.amazonaws.ec2#Subnet", + "NetworkInsightsPath": { + "target": "com.amazonaws.ec2#NetworkInsightsPath", "traits": { - "aws.protocols#ec2QueryName": "Subnet", - "smithy.api#documentation": "

Information about the subnet.

", - "smithy.api#xmlName": "subnet" + "aws.protocols#ec2QueryName": "NetworkInsightsPath", + "smithy.api#documentation": "

Information about the path.

", + "smithy.api#xmlName": "networkInsightsPath" } } }, @@ -18977,351 +20025,228 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateTags": { + "com.amazonaws.ec2#CreateNetworkInterface": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateTagsRequest" + "target": "com.amazonaws.ec2#CreateNetworkInterfaceRequest" }, "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Adds or overwrites only the specified tags for the specified Amazon EC2 resource or\n resources. When you specify an existing tag key, the value is overwritten with\n the new value. Each resource can have a maximum of 50 tags. Each tag consists of a key and\n optional value. Tag keys must be unique per resource.

\n

For more information about tags, see Tag your Amazon EC2 resources in the\n Amazon Elastic Compute Cloud User Guide. For more information about\n creating IAM policies that control users' access to resources based on tags, see Supported\n resource-level permissions for Amazon EC2 API actions in the Amazon\n Elastic Compute Cloud User Guide.

", - "smithy.api#examples": [ - { - "title": "To add a tag to a resource", - "documentation": "This example adds the tag Stack=production to the specified image, or overwrites an existing tag for the AMI where the tag key is Stack.", - "input": { - "Resources": [ - "ami-78a54011" - ], - "Tags": [ - { - "Key": "Stack", - "Value": "production" - } - ] - } - } - ] - } - }, - "com.amazonaws.ec2#CreateTagsRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" - } - }, - "Resources": { - "target": "com.amazonaws.ec2#ResourceIdList", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the resources, separated by spaces.

\n

Constraints: Up to 1000 resource IDs. We recommend breaking up this request into smaller batches.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "ResourceId" - } - }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The tags. The value parameter is required, but if you don't want the tag to have a value,\n specify the parameter with no value, and we set the value to an empty string.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "Tag" - } - } + "target": "com.amazonaws.ec2#CreateNetworkInterfaceResult" }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Creates a network interface in the specified subnet.

\n

The number of IP addresses you can assign to a network interface varies by instance\n type.

\n

For more information about network interfaces, see Elastic network interfaces in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#CreateTrafficMirrorFilter": { + "com.amazonaws.ec2#CreateNetworkInterfacePermission": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateTrafficMirrorFilterRequest" + "target": "com.amazonaws.ec2#CreateNetworkInterfacePermissionRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateTrafficMirrorFilterResult" + "target": "com.amazonaws.ec2#CreateNetworkInterfacePermissionResult" }, "traits": { - "smithy.api#documentation": "

Creates a Traffic Mirror filter.

\n

A Traffic Mirror filter is a set of rules that defines the traffic to mirror.

\n

By default, no traffic is mirrored. To mirror traffic, use CreateTrafficMirrorFilterRule to add Traffic Mirror rules to the filter. The rules you\n add define what traffic gets mirrored. You can also use ModifyTrafficMirrorFilterNetworkServices to mirror supported network services.

" + "smithy.api#documentation": "

Grants an Amazon Web Services-authorized account permission to attach the specified\n network interface to an instance in their account.

\n

You can grant permission to a single Amazon Web Services account only, and only one\n account at a time.

" } }, - "com.amazonaws.ec2#CreateTrafficMirrorFilterRequest": { + "com.amazonaws.ec2#CreateNetworkInterfacePermissionRequest": { "type": "structure", "members": { - "Description": { + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the network interface.

", + "smithy.api#required": {} + } + }, + "AwsAccountId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The description of the Traffic Mirror filter.

" + "smithy.api#documentation": "

The Amazon Web Services account ID.

" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "AwsService": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The tags to assign to a Traffic Mirror filter.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

The Amazon Web Services service. Currently not supported.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Permission": { + "target": "com.amazonaws.ec2#InterfacePermissionType", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The type of permission to grant.

", + "smithy.api#required": {} } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", - "smithy.api#idempotencyToken": {} + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for CreateNetworkInterfacePermission.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateTrafficMirrorFilterResult": { + "com.amazonaws.ec2#CreateNetworkInterfacePermissionResult": { "type": "structure", "members": { - "TrafficMirrorFilter": { - "target": "com.amazonaws.ec2#TrafficMirrorFilter", - "traits": { - "aws.protocols#ec2QueryName": "TrafficMirrorFilter", - "smithy.api#documentation": "

Information about the Traffic Mirror filter.

", - "smithy.api#xmlName": "trafficMirrorFilter" - } - }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "InterfacePermission": { + "target": "com.amazonaws.ec2#NetworkInterfacePermission", "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", - "smithy.api#xmlName": "clientToken" + "aws.protocols#ec2QueryName": "InterfacePermission", + "smithy.api#documentation": "

Information about the permission for the network interface.

", + "smithy.api#xmlName": "interfacePermission" } } }, "traits": { + "smithy.api#documentation": "

Contains the output of CreateNetworkInterfacePermission.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateTrafficMirrorFilterRule": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateTrafficMirrorFilterRuleRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateTrafficMirrorFilterRuleResult" - }, - "traits": { - "smithy.api#documentation": "

Creates a Traffic Mirror filter rule.

\n

A Traffic Mirror rule defines the Traffic Mirror source traffic to mirror.

\n

You need the Traffic Mirror filter ID when you create the rule.

" - } - }, - "com.amazonaws.ec2#CreateTrafficMirrorFilterRuleRequest": { + "com.amazonaws.ec2#CreateNetworkInterfaceRequest": { "type": "structure", "members": { - "TrafficMirrorFilterId": { - "target": "com.amazonaws.ec2#TrafficMirrorFilterId", + "Ipv4Prefixes": { + "target": "com.amazonaws.ec2#Ipv4PrefixList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the filter that this rule is associated with.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The IPv4 prefixes assigned to the network interface.

\n

You can't specify IPv4 prefixes if you've specified one of the following: a count of\n IPv4 prefixes, specific private IPv4 addresses, or a count of private IPv4\n addresses.

", + "smithy.api#xmlName": "Ipv4Prefix" } }, - "TrafficDirection": { - "target": "com.amazonaws.ec2#TrafficDirection", + "Ipv4PrefixCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of traffic.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The number of IPv4 prefixes that Amazon Web Services automatically assigns to the\n network interface.

\n

You can't specify a count of IPv4 prefixes if you've specified one of the following:\n specific IPv4 prefixes, specific private IPv4 addresses, or a count of private IPv4\n addresses.

" } }, - "RuleNumber": { - "target": "com.amazonaws.ec2#Integer", + "Ipv6Prefixes": { + "target": "com.amazonaws.ec2#Ipv6PrefixList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The number of the Traffic Mirror rule. This number must be unique for each Traffic Mirror rule in a given\n direction. The rules are processed in ascending order by rule number.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The IPv6 prefixes assigned to the network interface.

\n

You can't specify IPv6 prefixes if you've specified one of the following: a count of\n IPv6 prefixes, specific IPv6 addresses, or a count of IPv6 addresses.

", + "smithy.api#xmlName": "Ipv6Prefix" } }, - "RuleAction": { - "target": "com.amazonaws.ec2#TrafficMirrorRuleAction", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The action to take on the filtered traffic.

", - "smithy.api#required": {} - } - }, - "DestinationPortRange": { - "target": "com.amazonaws.ec2#TrafficMirrorPortRangeRequest", - "traits": { - "smithy.api#documentation": "

The destination port range.

" - } - }, - "SourcePortRange": { - "target": "com.amazonaws.ec2#TrafficMirrorPortRangeRequest", - "traits": { - "smithy.api#documentation": "

The source port range.

" - } - }, - "Protocol": { + "Ipv6PrefixCount": { "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The protocol, for example UDP, to assign to the Traffic Mirror rule.

\n

For information about the protocol value, see Protocol Numbers on the Internet Assigned Numbers Authority (IANA) website.

" + "smithy.api#documentation": "

The number of IPv6 prefixes that Amazon Web Services automatically assigns to the\n network interface.

\n

You can't specify a count of IPv6 prefixes if you've specified one of the following:\n specific IPv6 prefixes, specific IPv6 addresses, or a count of IPv6 addresses.

" } }, - "DestinationCidrBlock": { - "target": "com.amazonaws.ec2#String", + "InterfaceType": { + "target": "com.amazonaws.ec2#NetworkInterfaceCreationType", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The destination CIDR block to assign to the Traffic Mirror rule.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The type of network interface. The default is interface.

\n

If you specify efa-only, do not assign any IP addresses to the network\n interface. EFA-only network interfaces do not support IP addresses.

\n

The only supported values are interface, efa,\n efa-only, and trunk.

" } }, - "SourceCidrBlock": { - "target": "com.amazonaws.ec2#String", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The source CIDR block to assign to the Traffic Mirror rule.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The tags to apply to the new network interface.

", + "smithy.api#xmlName": "TagSpecification" } }, - "Description": { + "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The description of the Traffic Mirror rule.

" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} } }, - "DryRun": { + "EnablePrimaryIpv6": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

If you’re creating a network interface in a dual-stack or IPv6-only subnet, you have\n the option to assign a primary IPv6 IP address. A primary IPv6 address is an IPv6 GUA\n address associated with an ENI that you have enabled to use a primary IPv6 address. Use\n this option if the instance that this ENI will be attached to relies on its IPv6 address\n not changing. Amazon Web Services will automatically assign an IPv6 address associated\n with the ENI attached to your instance to be the primary IPv6 address. Once you enable\n an IPv6 GUA address to be a primary IPv6, you cannot disable it. When you enable an IPv6\n GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6\n address until the instance is terminated or the network interface is detached. If you\n have multiple IPv6 addresses associated with an ENI attached to your instance and you\n enable a primary IPv6 address, the first IPv6 GUA address associated with the ENI\n becomes the primary IPv6 address.

" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", - "smithy.api#idempotencyToken": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#CreateTrafficMirrorFilterRuleResult": { - "type": "structure", - "members": { - "TrafficMirrorFilterRule": { - "target": "com.amazonaws.ec2#TrafficMirrorFilterRule", + "ConnectionTrackingSpecification": { + "target": "com.amazonaws.ec2#ConnectionTrackingSpecificationRequest", "traits": { - "aws.protocols#ec2QueryName": "TrafficMirrorFilterRule", - "smithy.api#documentation": "

The Traffic Mirror rule.

", - "smithy.api#xmlName": "trafficMirrorFilterRule" + "smithy.api#documentation": "

A connection tracking specification for the network interface.

" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "Operator": { + "target": "com.amazonaws.ec2#OperatorRequest", "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", - "smithy.api#xmlName": "clientToken" + "smithy.api#documentation": "

Reserved for internal use.

" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#CreateTrafficMirrorSession": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateTrafficMirrorSessionRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateTrafficMirrorSessionResult" - }, - "traits": { - "smithy.api#documentation": "

Creates a Traffic Mirror session.

\n

A Traffic Mirror session actively copies packets from a Traffic Mirror source to a Traffic Mirror target. Create a filter, and then assign it\n to the session to define a subset of the traffic to mirror, for example all TCP\n traffic.

\n

The Traffic Mirror source and the Traffic Mirror target (monitoring appliances) can be in the same VPC, or in a different VPC connected via VPC peering or a transit gateway.

\n

By default, no traffic is mirrored. Use CreateTrafficMirrorFilter to\n create filter rules that specify the traffic to mirror.

" - } - }, - "com.amazonaws.ec2#CreateTrafficMirrorSessionRequest": { - "type": "structure", - "members": { - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#NetworkInterfaceId", + }, + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", "traits": { + "aws.protocols#ec2QueryName": "SubnetId", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the source network interface.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The ID of the subnet to associate with the network interface.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "subnetId" } }, - "TrafficMirrorTargetId": { - "target": "com.amazonaws.ec2#TrafficMirrorTargetId", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Traffic Mirror target.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description for the network interface.

", + "smithy.api#xmlName": "description" } }, - "TrafficMirrorFilterId": { - "target": "com.amazonaws.ec2#TrafficMirrorFilterId", + "PrivateIpAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Traffic Mirror filter.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "PrivateIpAddress", + "smithy.api#documentation": "

The primary private IPv4 address of the network interface. If you don't specify an\n IPv4 address, Amazon EC2 selects one for you from the subnet's IPv4 CIDR range. If you\n specify an IP address, you cannot indicate any IP addresses specified in\n privateIpAddresses as primary (only one IP address can be designated as\n primary).

", + "smithy.api#xmlName": "privateIpAddress" } }, - "PacketLength": { - "target": "com.amazonaws.ec2#Integer", + "Groups": { + "target": "com.amazonaws.ec2#SecurityGroupIdStringList", "traits": { - "smithy.api#documentation": "

The number of bytes in each packet to mirror. These are bytes after the VXLAN header. Do\n not specify this parameter when you want to mirror the entire packet. To mirror a subset of\n the packet, set this to the length (in bytes) that you want to mirror. For example, if you\n set this value to 100, then the first 100 bytes that meet the filter criteria are copied to\n the target.

\n

If you do not want to mirror the entire packet, use the PacketLength parameter to specify the number of bytes in each packet to mirror.

\n

For sessions with Network Load Balancer (NLB) Traffic Mirror targets the default PacketLength will be set to 8500. Valid values are 1-8500. Setting a PacketLength greater than 8500 will result in an error response.

" + "smithy.api#documentation": "

The IDs of the security groups.

", + "smithy.api#xmlName": "SecurityGroupId" } }, - "SessionNumber": { - "target": "com.amazonaws.ec2#Integer", + "PrivateIpAddresses": { + "target": "com.amazonaws.ec2#PrivateIpAddressSpecificationList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The session number determines the order in which sessions are evaluated when an interface is used by multiple sessions. The first session with a matching filter is the one that mirrors the packets.

\n

Valid values are 1-32766.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "PrivateIpAddresses", + "smithy.api#documentation": "

The private IPv4 addresses.

\n

You can't specify private IPv4 addresses if you've specified one of the following: a\n count of private IPv4 addresses, specific IPv4 prefixes, or a count of IPv4\n prefixes.

", + "smithy.api#xmlName": "privateIpAddresses" } }, - "VirtualNetworkId": { + "SecondaryPrivateIpAddressCount": { "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The VXLAN ID for the Traffic Mirror session. For more information about the VXLAN\n protocol, see RFC 7348. If you do\n not specify a VirtualNetworkId, an account-wide unique id is chosen at\n random.

" + "aws.protocols#ec2QueryName": "SecondaryPrivateIpAddressCount", + "smithy.api#documentation": "

The number of secondary private IPv4 addresses to assign to a network interface. When\n you specify a number of secondary IPv4 addresses, Amazon EC2 selects these IP addresses\n within the subnet's IPv4 CIDR range. You can't specify this option and specify more than\n one private IP address using privateIpAddresses.

\n

You can't specify a count of private IPv4 addresses if you've specified one of the\n following: specific private IPv4 addresses, specific IPv4 prefixes, or a count of IPv4\n prefixes.

", + "smithy.api#xmlName": "secondaryPrivateIpAddressCount" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "Ipv6Addresses": { + "target": "com.amazonaws.ec2#InstanceIpv6AddressList", "traits": { - "smithy.api#documentation": "

The description of the Traffic Mirror session.

" + "aws.protocols#ec2QueryName": "Ipv6Addresses", + "smithy.api#documentation": "

The IPv6 addresses from the IPv6 CIDR block range of your subnet.

\n

You can't specify IPv6 addresses using this parameter if you've specified one of the\n following: a count of IPv6 addresses, specific IPv6 prefixes, or a count of IPv6\n prefixes.

", + "smithy.api#xmlName": "ipv6Addresses" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "Ipv6AddressCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The tags to assign to a Traffic Mirror session.

", - "smithy.api#xmlName": "TagSpecification" + "aws.protocols#ec2QueryName": "Ipv6AddressCount", + "smithy.api#documentation": "

The number of IPv6 addresses to assign to a network interface. Amazon EC2\n automatically selects the IPv6 addresses from the subnet range.

\n

You can't specify a count of IPv6 addresses using this parameter if you've specified\n one of the following: specific IPv6 addresses, specific IPv6 prefixes, or a count of\n IPv6 prefixes.

\n

If your subnet has the AssignIpv6AddressOnCreation attribute set, you can\n override that setting by specifying 0 as the IPv6 address count.

", + "smithy.api#xmlName": "ipv6AddressCount" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", - "smithy.api#idempotencyToken": {} + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, @@ -19329,22 +20254,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateTrafficMirrorSessionResult": { + "com.amazonaws.ec2#CreateNetworkInterfaceResult": { "type": "structure", "members": { - "TrafficMirrorSession": { - "target": "com.amazonaws.ec2#TrafficMirrorSession", + "NetworkInterface": { + "target": "com.amazonaws.ec2#NetworkInterface", "traits": { - "aws.protocols#ec2QueryName": "TrafficMirrorSession", - "smithy.api#documentation": "

Information about the Traffic Mirror session.

", - "smithy.api#xmlName": "trafficMirrorSession" + "aws.protocols#ec2QueryName": "NetworkInterface", + "smithy.api#documentation": "

Information about the network interface.

", + "smithy.api#xmlName": "networkInterface" } }, "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "clientToken" } } @@ -19353,63 +20278,73 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateTrafficMirrorTarget": { + "com.amazonaws.ec2#CreatePlacementGroup": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateTrafficMirrorTargetRequest" + "target": "com.amazonaws.ec2#CreatePlacementGroupRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateTrafficMirrorTargetResult" + "target": "com.amazonaws.ec2#CreatePlacementGroupResult" }, "traits": { - "smithy.api#documentation": "

Creates a target for your Traffic Mirror session.

\n

A Traffic Mirror target is the destination for mirrored traffic. The Traffic Mirror source and\n the Traffic Mirror target (monitoring appliances) can be in the same VPC, or in\n different VPCs connected via VPC peering or a transit gateway.

\n

A Traffic Mirror target can be a network interface, a Network Load Balancer, or a Gateway Load Balancer endpoint.

\n

To use the target in a Traffic Mirror session, use CreateTrafficMirrorSession.

" + "smithy.api#documentation": "

Creates a placement group in which to launch instances. The strategy of the placement\n group determines how the instances are organized within the group.

\n

A cluster placement group is a logical grouping of instances within a\n single Availability Zone that benefit from low network latency, high network throughput.\n A spread placement group places instances on distinct hardware. A\n partition placement group places groups of instances in different\n partitions, where instances in one partition do not share the same hardware with\n instances in another partition.

\n

For more information, see Placement groups in the\n Amazon EC2 User Guide.

", + "smithy.api#examples": [ + { + "title": "To create a placement group", + "documentation": "This example creates a placement group with the specified name.", + "input": { + "GroupName": "my-cluster", + "Strategy": "cluster" + }, + "output": {} + } + ] } }, - "com.amazonaws.ec2#CreateTrafficMirrorTargetRequest": { + "com.amazonaws.ec2#CreatePlacementGroupRequest": { "type": "structure", "members": { - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#NetworkInterfaceId", - "traits": { - "smithy.api#documentation": "

The network interface ID that is associated with the target.

" - } - }, - "NetworkLoadBalancerArn": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Network Load Balancer that is associated with the target.

" - } - }, - "Description": { - "target": "com.amazonaws.ec2#String", + "PartitionCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The description of the Traffic Mirror target.

" + "smithy.api#documentation": "

The number of partitions. Valid only when Strategy is\n set to partition.

" } }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The tags to assign to the Traffic Mirror target.

", + "smithy.api#documentation": "

The tags to apply to the new placement group.

", "smithy.api#xmlName": "TagSpecification" } }, + "SpreadLevel": { + "target": "com.amazonaws.ec2#SpreadLevel", + "traits": { + "smithy.api#documentation": "

Determines how placement groups spread instances.

\n " + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "ClientToken": { + "GroupName": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", - "smithy.api#idempotencyToken": {} + "aws.protocols#ec2QueryName": "GroupName", + "smithy.api#documentation": "

A name for the placement group. Must be unique within the scope of your account for\n the Region.

\n

Constraints: Up to 255 ASCII characters

", + "smithy.api#xmlName": "groupName" } }, - "GatewayLoadBalancerEndpointId": { - "target": "com.amazonaws.ec2#VpcEndpointId", + "Strategy": { + "target": "com.amazonaws.ec2#PlacementStrategy", "traits": { - "smithy.api#documentation": "

The ID of the Gateway Load Balancer endpoint.

" + "aws.protocols#ec2QueryName": "Strategy", + "smithy.api#documentation": "

The placement strategy.

", + "smithy.api#xmlName": "strategy" } } }, @@ -19417,23 +20352,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateTrafficMirrorTargetResult": { + "com.amazonaws.ec2#CreatePlacementGroupResult": { "type": "structure", "members": { - "TrafficMirrorTarget": { - "target": "com.amazonaws.ec2#TrafficMirrorTarget", - "traits": { - "aws.protocols#ec2QueryName": "TrafficMirrorTarget", - "smithy.api#documentation": "

Information about the Traffic Mirror target.

", - "smithy.api#xmlName": "trafficMirrorTarget" - } - }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "PlacementGroup": { + "target": "com.amazonaws.ec2#PlacementGroup", "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", - "smithy.api#xmlName": "clientToken" + "aws.protocols#ec2QueryName": "PlacementGroup", + "smithy.api#documentation": "

Information about the placement group.

", + "smithy.api#xmlName": "placementGroup" } } }, @@ -19441,92 +20368,126 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateTransitGateway": { + "com.amazonaws.ec2#CreatePublicIpv4Pool": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateTransitGatewayRequest" + "target": "com.amazonaws.ec2#CreatePublicIpv4PoolRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateTransitGatewayResult" + "target": "com.amazonaws.ec2#CreatePublicIpv4PoolResult" }, "traits": { - "smithy.api#documentation": "

Creates a transit gateway.

\n

You can use a transit gateway to interconnect your virtual private clouds (VPC) and on-premises networks.\n After the transit gateway enters the available state, you can attach your VPCs and VPN\n connections to the transit gateway.

\n

To attach your VPCs, use CreateTransitGatewayVpcAttachment.

\n

To attach a VPN connection, use CreateCustomerGateway to create a customer \n gateway and specify the ID of the customer gateway and the ID of the transit gateway in a call to\n CreateVpnConnection.

\n

When you create a transit gateway, we create a default transit gateway route table and use it as the default association route table\n and the default propagation route table. You can use CreateTransitGatewayRouteTable to create\n additional transit gateway route tables. If you disable automatic route propagation, we do not create a default transit gateway route table. \n You can use EnableTransitGatewayRouteTablePropagation to propagate routes from a resource \n attachment to a transit gateway route table. If you disable automatic associations, you can use AssociateTransitGatewayRouteTable to associate a resource attachment with a transit gateway route table.

" + "smithy.api#documentation": "

Creates a public IPv4 address pool. A public IPv4 pool is an EC2 IP address pool required for the public IPv4 CIDRs that you own and bring to Amazon Web Services to manage with IPAM. IPv6 addresses you bring to Amazon Web Services, however, use IPAM pools only. To monitor the status of pool creation, use DescribePublicIpv4Pools.

" } }, - "com.amazonaws.ec2#CreateTransitGatewayConnect": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateTransitGatewayConnectRequest" + "com.amazonaws.ec2#CreatePublicIpv4PoolRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

", + "smithy.api#xmlName": "TagSpecification" + } + }, + "NetworkBorderGroup": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The Availability Zone (AZ) or Local Zone (LZ) network border group that the resource that the IP address is assigned to is in. Defaults to an AZ network border group. For more information on available Local Zones, see Local Zone availability in the Amazon EC2 User Guide.

" + } + } }, - "output": { - "target": "com.amazonaws.ec2#CreateTransitGatewayConnectResult" + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#CreatePublicIpv4PoolResult": { + "type": "structure", + "members": { + "PoolId": { + "target": "com.amazonaws.ec2#Ipv4PoolEc2Id", + "traits": { + "aws.protocols#ec2QueryName": "PoolId", + "smithy.api#documentation": "

The ID of the public IPv4 pool.

", + "smithy.api#xmlName": "poolId" + } + } }, "traits": { - "smithy.api#documentation": "

Creates a Connect attachment from a specified transit gateway attachment. A Connect attachment is a GRE-based tunnel attachment that you can use to establish a connection between a transit gateway and an appliance.

\n

A Connect attachment uses an existing VPC or Amazon Web Services Direct Connect attachment as the underlying transport mechanism.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayConnectPeer": { + "com.amazonaws.ec2#CreateReplaceRootVolumeTask": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateTransitGatewayConnectPeerRequest" + "target": "com.amazonaws.ec2#CreateReplaceRootVolumeTaskRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateTransitGatewayConnectPeerResult" + "target": "com.amazonaws.ec2#CreateReplaceRootVolumeTaskResult" }, "traits": { - "smithy.api#documentation": "

Creates a Connect peer for a specified transit gateway Connect attachment between a\n transit gateway and an appliance.

\n

The peer address and transit gateway address must be the same IP address family (IPv4 or IPv6).

\n

For more information, see Connect peers in the Transit Gateways Guide.

" + "smithy.api#documentation": "

Replaces the EBS-backed root volume for a running instance with a new \n volume that is restored to the original root volume's launch state, that is restored to a \n specific snapshot taken from the original root volume, or that is restored from an AMI \n that has the same key characteristics as that of the instance.

\n

For more information, see Replace a root volume in the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#CreateTransitGatewayConnectPeerRequest": { + "com.amazonaws.ec2#CreateReplaceRootVolumeTaskRequest": { "type": "structure", "members": { - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Connect attachment.

", + "smithy.api#documentation": "

The ID of the instance for which to replace the root volume.

", "smithy.api#required": {} } }, - "TransitGatewayAddress": { - "target": "com.amazonaws.ec2#String", + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", "traits": { - "smithy.api#documentation": "

The peer IP address (GRE outer IP address) on the transit gateway side of the Connect peer, which must be\n specified from a transit gateway CIDR block. If not specified, Amazon automatically assigns\n the first available IP address from the transit gateway CIDR block.

" + "smithy.api#documentation": "

The ID of the snapshot from which to restore the replacement root volume. The \n specified snapshot must be a snapshot that you previously created from the original \n root volume.

\n

If you want to restore the replacement root volume to the initial launch state, \n or if you want to restore the replacement root volume from an AMI, omit this \n parameter.

" } }, - "PeerAddress": { + "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The peer IP address (GRE outer IP address) on the appliance side of the Connect peer.

", - "smithy.api#required": {} - } - }, - "BgpOptions": { - "target": "com.amazonaws.ec2#TransitGatewayConnectRequestBgpOptions", - "traits": { - "smithy.api#documentation": "

The BGP options for the Connect peer.

" + "smithy.api#documentation": "

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. \n If you do not specify a client token, a randomly generated token is used for the request \n to ensure idempotency. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} } }, - "InsideCidrBlocks": { - "target": "com.amazonaws.ec2#InsideCidrBlocksStringList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The range of inside IP addresses that are used for BGP peering. You must specify a\n size /29 IPv4 CIDR block from the 169.254.0.0/16 range. The first address\n from the range must be configured on the appliance as the BGP IP address. You can also\n optionally specify a size /125 IPv6 CIDR block from the fd00::/8\n range.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The tags to apply to the Connect peer.

", + "smithy.api#documentation": "

The tags to apply to the root volume replacement task.

", "smithy.api#xmlName": "TagSpecification" } }, - "DryRun": { + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", + "traits": { + "smithy.api#documentation": "

The ID of the AMI to use to restore the root volume. The specified AMI must have the \n same product code, billing information, architecture type, and virtualization type as \n that of the instance.

\n

If you want to restore the replacement volume from a specific snapshot, or if you want \n to restore it to its launch state, omit this parameter.

" + } + }, + "DeleteReplacedRootVolume": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Indicates whether to automatically delete the original root volume after the root volume \n replacement task completes. To delete the original root volume, specify true. \n If you choose to keep the original root volume after the replacement task completes, you must \n manually delete it when you no longer need it.

" + } + }, + "VolumeInitializationRate": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "smithy.api#documentation": "

Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), in MiB/s, at which to download \n the snapshot blocks from Amazon S3 to the replacement root volume. This is also known as \n volume initialization. Specifying a volume initialization rate ensures that \n the volume is initialized at a predictable and consistent rate after creation.

\n

Omit this parameter if:

\n \n

For more information, see \n Initialize Amazon EBS volumes in the Amazon EC2 User Guide.

\n

Valid range: 100 - 300 MiB/s

" } } }, @@ -19534,15 +20495,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayConnectPeerResult": { + "com.amazonaws.ec2#CreateReplaceRootVolumeTaskResult": { "type": "structure", "members": { - "TransitGatewayConnectPeer": { - "target": "com.amazonaws.ec2#TransitGatewayConnectPeer", + "ReplaceRootVolumeTask": { + "target": "com.amazonaws.ec2#ReplaceRootVolumeTask", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayConnectPeer", - "smithy.api#documentation": "

Information about the Connect peer.

", - "smithy.api#xmlName": "transitGatewayConnectPeer" + "aws.protocols#ec2QueryName": "ReplaceRootVolumeTask", + "smithy.api#documentation": "

Information about the root volume replacement task.

", + "smithy.api#xmlName": "replaceRootVolumeTask" } } }, @@ -19550,115 +20511,132 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayConnectRequest": { + "com.amazonaws.ec2#CreateReservedInstancesListing": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateReservedInstancesListingRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateReservedInstancesListingResult" + }, + "traits": { + "smithy.api#documentation": "

Creates a listing for Amazon EC2 Standard Reserved Instances to be sold in the Reserved\n Instance Marketplace. You can submit one Standard Reserved Instance listing at a time. To get\n a list of your Standard Reserved Instances, you can use the DescribeReservedInstances operation.

\n \n

Only Standard Reserved Instances can be sold in the Reserved Instance Marketplace.\n Convertible Reserved Instances cannot be sold.

\n
\n

The Reserved Instance Marketplace matches sellers who want to resell Standard Reserved\n Instance capacity that they no longer need with buyers who want to purchase additional\n capacity. Reserved Instances bought and sold through the Reserved Instance Marketplace work\n like any other Reserved Instances.

\n

To sell your Standard Reserved Instances, you must first register as a seller in the\n Reserved Instance Marketplace. After completing the registration process, you can create a\n Reserved Instance Marketplace listing of some or all of your Standard Reserved Instances, and\n specify the upfront price to receive for them. Your Standard Reserved Instance listings then\n become available for purchase. To view the details of your Standard Reserved Instance listing,\n you can use the DescribeReservedInstancesListings operation.

\n

For more information, see Sell in the Reserved Instance\n Marketplace in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#CreateReservedInstancesListingRequest": { "type": "structure", "members": { - "TransportTransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "ReservedInstancesId": { + "target": "com.amazonaws.ec2#ReservationId", "traits": { + "aws.protocols#ec2QueryName": "ReservedInstancesId", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway attachment. You can specify a VPC attachment or Amazon Web Services Direct Connect attachment.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The ID of the active Standard Reserved Instance.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "reservedInstancesId" } }, - "Options": { - "target": "com.amazonaws.ec2#CreateTransitGatewayConnectRequestOptions", + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { + "aws.protocols#ec2QueryName": "InstanceCount", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Connect attachment options.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The number of instances that are a part of a Reserved Instance account to be listed in the\n Reserved Instance Marketplace. This number should be less than or equal to the instance count\n associated with the Reserved Instance ID specified in this call.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "instanceCount" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "PriceSchedules": { + "target": "com.amazonaws.ec2#PriceScheduleSpecificationList", "traits": { - "smithy.api#documentation": "

The tags to apply to the Connect attachment.

", - "smithy.api#xmlName": "TagSpecification" + "aws.protocols#ec2QueryName": "PriceSchedules", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A list specifying the price of the Standard Reserved Instance for each month remaining in\n the Reserved Instance term.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "priceSchedules" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#CreateTransitGatewayConnectRequestOptions": { - "type": "structure", - "members": { - "Protocol": { - "target": "com.amazonaws.ec2#ProtocolValue", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { + "aws.protocols#ec2QueryName": "ClientToken", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The tunnel protocol.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Unique, case-sensitive identifier you provide to ensure idempotency of your listings. This\n helps avoid duplicate listings. For more information, see Ensuring\n Idempotency.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "clientToken" } } }, "traits": { - "smithy.api#documentation": "

The options for a Connect attachment.

" + "smithy.api#documentation": "

Contains the parameters for CreateReservedInstancesListing.

", + "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayConnectResult": { + "com.amazonaws.ec2#CreateReservedInstancesListingResult": { "type": "structure", "members": { - "TransitGatewayConnect": { - "target": "com.amazonaws.ec2#TransitGatewayConnect", + "ReservedInstancesListings": { + "target": "com.amazonaws.ec2#ReservedInstancesListingList", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayConnect", - "smithy.api#documentation": "

Information about the Connect attachment.

", - "smithy.api#xmlName": "transitGatewayConnect" + "aws.protocols#ec2QueryName": "ReservedInstancesListingsSet", + "smithy.api#documentation": "

Information about the Standard Reserved Instance listing.

", + "smithy.api#xmlName": "reservedInstancesListingsSet" } } }, "traits": { + "smithy.api#documentation": "

Contains the output of CreateReservedInstancesListing.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayMulticastDomain": { + "com.amazonaws.ec2#CreateRestoreImageTask": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateTransitGatewayMulticastDomainRequest" + "target": "com.amazonaws.ec2#CreateRestoreImageTaskRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateTransitGatewayMulticastDomainResult" + "target": "com.amazonaws.ec2#CreateRestoreImageTaskResult" }, "traits": { - "smithy.api#documentation": "

Creates a multicast domain using the specified transit gateway.

\n

The transit gateway must be in the available state before you create a domain. Use DescribeTransitGateways to see the state of transit gateway.

" + "smithy.api#documentation": "

Starts a task that restores an AMI from an Amazon S3 object that was previously created by\n using CreateStoreImageTask.

\n

To use this API, you must have the required permissions. For more information, see Permissions for storing and restoring AMIs using S3 in the\n Amazon EC2 User Guide.

\n

For more information, see Store and restore an AMI using\n S3 in the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#CreateTransitGatewayMulticastDomainRequest": { + "com.amazonaws.ec2#CreateRestoreImageTaskRequest": { "type": "structure", "members": { - "TransitGatewayId": { - "target": "com.amazonaws.ec2#TransitGatewayId", + "Bucket": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway.

", + "smithy.api#documentation": "

The name of the Amazon S3 bucket that contains the stored AMI object.

", "smithy.api#required": {} } }, - "Options": { - "target": "com.amazonaws.ec2#CreateTransitGatewayMulticastDomainRequestOptions", + "ObjectKey": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The options for the transit gateway multicast domain.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The name of the stored AMI object in the bucket.

", + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The name for the restored AMI. The name must be unique for AMIs in the Region for this\n account. If you do not provide a name, the new AMI gets the same name as the original\n AMI.

" } }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The tags for the transit gateway multicast domain.

", + "smithy.api#documentation": "

The tags to apply to the AMI and snapshots on restoration. You can tag the AMI, the\n snapshots, or both.

\n ", "smithy.api#xmlName": "TagSpecification" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -19666,41 +20644,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayMulticastDomainRequestOptions": { + "com.amazonaws.ec2#CreateRestoreImageTaskResult": { "type": "structure", "members": { - "Igmpv2Support": { - "target": "com.amazonaws.ec2#Igmpv2SupportValue", - "traits": { - "smithy.api#documentation": "

Specify whether to enable Internet Group Management Protocol (IGMP) version 2 for the transit gateway multicast domain.

" - } - }, - "StaticSourcesSupport": { - "target": "com.amazonaws.ec2#StaticSourcesSupportValue", + "ImageId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Specify whether to enable support for statically configuring multicast group sources for a domain.

" - } - }, - "AutoAcceptSharedAssociations": { - "target": "com.amazonaws.ec2#AutoAcceptSharedAssociationsValue", - "traits": { - "smithy.api#documentation": "

Indicates whether to automatically accept cross-account subnet associations that are associated with the transit gateway multicast domain.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The options for the transit gateway multicast domain.

" - } - }, - "com.amazonaws.ec2#CreateTransitGatewayMulticastDomainResult": { - "type": "structure", - "members": { - "TransitGatewayMulticastDomain": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastDomain", - "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayMulticastDomain", - "smithy.api#documentation": "

Information about the transit gateway multicast domain.

", - "smithy.api#xmlName": "transitGatewayMulticastDomain" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The AMI ID.

", + "smithy.api#xmlName": "imageId" } } }, @@ -19708,70 +20660,154 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayPeeringAttachment": { + "com.amazonaws.ec2#CreateRoute": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateTransitGatewayPeeringAttachmentRequest" + "target": "com.amazonaws.ec2#CreateRouteRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateTransitGatewayPeeringAttachmentResult" + "target": "com.amazonaws.ec2#CreateRouteResult" }, "traits": { - "smithy.api#documentation": "

Requests a transit gateway peering attachment between the specified transit gateway\n (requester) and a peer transit gateway (accepter). The peer transit gateway can be in \n your account or a different Amazon Web Services account.

\n

After you create the peering attachment, the owner of the accepter transit gateway \n must accept the attachment request.

" + "smithy.api#documentation": "

Creates a route in a route table within a VPC.

\n

You must specify either a destination CIDR block or a prefix list ID. You must also specify \n exactly one of the resources from the parameter list.

\n

When determining how to route traffic, we use the route with the most specific match.\n For example, traffic is destined for the IPv4 address 192.0.2.3, and the\n route table includes the following two IPv4 routes:

\n \n

Both routes apply to the traffic destined for 192.0.2.3. However, the second route\n\t\t\t\tin the list covers a smaller number of IP addresses and is therefore more specific,\n\t\t\t\tso we use that route to determine where to target the traffic.

\n

For more information about route tables, see Route tables in the\n Amazon VPC User Guide.

", + "smithy.api#examples": [ + { + "title": "To create a route", + "documentation": "This example creates a route for the specified route table. The route matches all traffic (0.0.0.0/0) and routes it to the specified Internet gateway.", + "input": { + "RouteTableId": "rtb-22574640", + "DestinationCidrBlock": "0.0.0.0/0", + "GatewayId": "igw-c0a643a9" + } + } + ] } }, - "com.amazonaws.ec2#CreateTransitGatewayPeeringAttachmentRequest": { + "com.amazonaws.ec2#CreateRouteRequest": { "type": "structure", "members": { + "DestinationPrefixListId": { + "target": "com.amazonaws.ec2#PrefixListResourceId", + "traits": { + "smithy.api#documentation": "

The ID of a prefix list used for the destination match.

" + } + }, + "VpcEndpointId": { + "target": "com.amazonaws.ec2#VpcEndpointId", + "traits": { + "smithy.api#documentation": "

The ID of a VPC endpoint. Supported for Gateway Load Balancer endpoints only.

" + } + }, "TransitGatewayId": { "target": "com.amazonaws.ec2#TransitGatewayId", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The ID of a transit gateway.

" } }, - "PeerTransitGatewayId": { - "target": "com.amazonaws.ec2#TransitAssociationGatewayId", + "LocalGatewayId": { + "target": "com.amazonaws.ec2#LocalGatewayId", + "traits": { + "smithy.api#documentation": "

The ID of the local gateway.

" + } + }, + "CarrierGatewayId": { + "target": "com.amazonaws.ec2#CarrierGatewayId", + "traits": { + "smithy.api#documentation": "

The ID of the carrier gateway.

\n

You can only use this option when the VPC contains a subnet which is associated with a Wavelength Zone.

" + } + }, + "CoreNetworkArn": { + "target": "com.amazonaws.ec2#CoreNetworkArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the core network.

" + } + }, + "OdbNetworkArn": { + "target": "com.amazonaws.ec2#OdbNetworkArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the ODB network.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "RouteTableId": { + "target": "com.amazonaws.ec2#RouteTableId", "traits": { + "aws.protocols#ec2QueryName": "RouteTableId", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the peer transit gateway with which to create the peering attachment.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The ID of the route table for the route.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "routeTableId" } }, - "PeerAccountId": { + "DestinationCidrBlock": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the peer transit gateway.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "DestinationCidrBlock", + "smithy.api#documentation": "

The IPv4 CIDR address block used for the destination match. Routing decisions are based on the most specific match. We modify the specified CIDR block to its canonical form; for example, if you specify 100.68.0.18/18, we modify it to 100.68.0.0/18.

", + "smithy.api#xmlName": "destinationCidrBlock" } }, - "PeerRegion": { + "GatewayId": { + "target": "com.amazonaws.ec2#RouteGatewayId", + "traits": { + "aws.protocols#ec2QueryName": "GatewayId", + "smithy.api#documentation": "

The ID of an internet gateway or virtual private gateway attached to your\n\t\t\tVPC.

", + "smithy.api#xmlName": "gatewayId" + } + }, + "DestinationIpv6CidrBlock": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Region where the peer transit gateway is located.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "DestinationIpv6CidrBlock", + "smithy.api#documentation": "

The IPv6 CIDR block used for the destination match. Routing decisions are based on the most specific match.

", + "smithy.api#xmlName": "destinationIpv6CidrBlock" } }, - "Options": { - "target": "com.amazonaws.ec2#CreateTransitGatewayPeeringAttachmentRequestOptions", + "EgressOnlyInternetGatewayId": { + "target": "com.amazonaws.ec2#EgressOnlyInternetGatewayId", "traits": { - "smithy.api#documentation": "

Requests a transit gateway peering attachment.

" + "aws.protocols#ec2QueryName": "EgressOnlyInternetGatewayId", + "smithy.api#documentation": "

[IPv6 traffic only] The ID of an egress-only internet gateway.

", + "smithy.api#xmlName": "egressOnlyInternetGatewayId" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "smithy.api#documentation": "

The tags to apply to the transit gateway peering attachment.

", - "smithy.api#xmlName": "TagSpecification" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of a NAT instance in your VPC. The operation fails if you specify an instance ID unless exactly one network interface is attached.

", + "smithy.api#xmlName": "instanceId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "NetworkInterfaceId", + "smithy.api#documentation": "

The ID of a network interface.

", + "smithy.api#xmlName": "networkInterfaceId" + } + }, + "VpcPeeringConnectionId": { + "target": "com.amazonaws.ec2#VpcPeeringConnectionId", + "traits": { + "aws.protocols#ec2QueryName": "VpcPeeringConnectionId", + "smithy.api#documentation": "

The ID of a VPC peering connection.

", + "smithy.api#xmlName": "vpcPeeringConnectionId" + } + }, + "NatGatewayId": { + "target": "com.amazonaws.ec2#NatGatewayId", + "traits": { + "aws.protocols#ec2QueryName": "NatGatewayId", + "smithy.api#documentation": "

[IPv4 traffic only] The ID of a NAT gateway.

", + "smithy.api#xmlName": "natGatewayId" } } }, @@ -19779,69 +20815,83 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayPeeringAttachmentRequestOptions": { + "com.amazonaws.ec2#CreateRouteResult": { "type": "structure", "members": { - "DynamicRouting": { - "target": "com.amazonaws.ec2#DynamicRoutingValue", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Indicates whether dynamic routing is enabled or disabled.

" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } } }, "traits": { - "smithy.api#documentation": "

Describes whether dynamic routing is enabled or disabled for the transit gateway peering request.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayPeeringAttachmentResult": { - "type": "structure", - "members": { - "TransitGatewayPeeringAttachment": { - "target": "com.amazonaws.ec2#TransitGatewayPeeringAttachment", - "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayPeeringAttachment", - "smithy.api#documentation": "

The transit gateway peering attachment.

", - "smithy.api#xmlName": "transitGatewayPeeringAttachment" - } - } + "com.amazonaws.ec2#CreateRouteServer": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateRouteServerRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateRouteServerResult" }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Creates a new route server to manage dynamic routing in a VPC.

\n

Amazon VPC Route Server simplifies routing for traffic between workloads that are deployed within a VPC and its internet gateways. With this feature, \nVPC Route Server dynamically updates VPC and internet gateway route tables with your preferred IPv4 or IPv6 routes to achieve routing fault tolerance for those workloads. This enables you to automatically reroute traffic within a VPC, which increases the manageability of VPC routing and interoperability with third-party workloads.

\n

Route server supports the follow route table types:

\n \n

Route server does not support route tables associated with virtual private gateways. To propagate routes into a transit gateway route table, use Transit Gateway Connect.

\n

For more information see Dynamic routing in your VPC with VPC Route Server in the Amazon VPC User Guide.

" } }, - "com.amazonaws.ec2#CreateTransitGatewayPolicyTable": { + "com.amazonaws.ec2#CreateRouteServerEndpoint": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateTransitGatewayPolicyTableRequest" + "target": "com.amazonaws.ec2#CreateRouteServerEndpointRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateTransitGatewayPolicyTableResult" + "target": "com.amazonaws.ec2#CreateRouteServerEndpointResult" }, "traits": { - "smithy.api#documentation": "

Creates a transit gateway policy table.

" + "smithy.api#documentation": "

Creates a new endpoint for a route server in a specified subnet.

\n

A route server endpoint is an Amazon Web Services-managed component inside a subnet that facilitates BGP (Border Gateway Protocol) connections between your route server and your BGP peers.

\n

For more information see Dynamic routing in your VPC with VPC Route Server in the Amazon VPC User Guide.

" } }, - "com.amazonaws.ec2#CreateTransitGatewayPolicyTableRequest": { + "com.amazonaws.ec2#CreateRouteServerEndpointRequest": { "type": "structure", "members": { - "TransitGatewayId": { - "target": "com.amazonaws.ec2#TransitGatewayId", + "RouteServerId": { + "target": "com.amazonaws.ec2#RouteServerId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway used for the policy table.

", + "smithy.api#documentation": "

The ID of the route server for which to create an endpoint.

", "smithy.api#required": {} } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", "traits": { - "smithy.api#documentation": "

The tags specification for the transit gateway policy table created during the request.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the subnet in which to create the route server endpoint.

", + "smithy.api#required": {} + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Unique, case-sensitive identifier to ensure idempotency of the request.

", + "smithy.api#idempotencyToken": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags to apply to the route server endpoint during creation.

", + "smithy.api#xmlName": "TagSpecification" } } }, @@ -19849,15 +20899,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayPolicyTableResult": { + "com.amazonaws.ec2#CreateRouteServerEndpointResult": { "type": "structure", "members": { - "TransitGatewayPolicyTable": { - "target": "com.amazonaws.ec2#TransitGatewayPolicyTable", + "RouteServerEndpoint": { + "target": "com.amazonaws.ec2#RouteServerEndpoint", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayPolicyTable", - "smithy.api#documentation": "

Describes the created transit gateway policy table.

", - "smithy.api#xmlName": "transitGatewayPolicyTable" + "aws.protocols#ec2QueryName": "RouteServerEndpoint", + "smithy.api#documentation": "

Information about the created route server endpoint.

", + "smithy.api#xmlName": "routeServerEndpoint" } } }, @@ -19865,53 +20915,56 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayPrefixListReference": { + "com.amazonaws.ec2#CreateRouteServerPeer": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateTransitGatewayPrefixListReferenceRequest" + "target": "com.amazonaws.ec2#CreateRouteServerPeerRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateTransitGatewayPrefixListReferenceResult" + "target": "com.amazonaws.ec2#CreateRouteServerPeerResult" }, "traits": { - "smithy.api#documentation": "

Creates a reference (route) to a prefix list in a specified transit gateway route table.

" + "smithy.api#documentation": "

Creates a new BGP peer for a specified route server endpoint.

\n

A route server peer is a session between a route server endpoint and the device deployed in Amazon Web Services (such as a firewall appliance or other network security function running on an EC2 instance). The device must meet these requirements:

\n \n

For more information see Dynamic routing in your VPC with VPC Route Server in the Amazon VPC User Guide.

" } }, - "com.amazonaws.ec2#CreateTransitGatewayPrefixListReferenceRequest": { + "com.amazonaws.ec2#CreateRouteServerPeerRequest": { "type": "structure", "members": { - "TransitGatewayRouteTableId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "RouteServerEndpointId": { + "target": "com.amazonaws.ec2#RouteServerEndpointId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway route table.

", + "smithy.api#documentation": "

The ID of the route server endpoint for which to create a peer.

", "smithy.api#required": {} } }, - "PrefixListId": { - "target": "com.amazonaws.ec2#PrefixListResourceId", + "PeerAddress": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the prefix list that is used for destination matches.

", + "smithy.api#documentation": "

The IPv4 address of the peer device.

", "smithy.api#required": {} } }, - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "BgpOptions": { + "target": "com.amazonaws.ec2#RouteServerBgpOptionsRequest", "traits": { - "smithy.api#documentation": "

The ID of the attachment to which traffic is routed.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The BGP options for the peer, including ASN (Autonomous System Number) and BFD (Bidrectional Forwarding Detection) settings.

", + "smithy.api#required": {} } }, - "Blackhole": { + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Indicates whether to drop traffic that matches this route.

" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The tags to apply to the route server peer during creation.

", + "smithy.api#xmlName": "TagSpecification" } } }, @@ -19919,15 +20972,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayPrefixListReferenceResult": { + "com.amazonaws.ec2#CreateRouteServerPeerResult": { "type": "structure", "members": { - "TransitGatewayPrefixListReference": { - "target": "com.amazonaws.ec2#TransitGatewayPrefixListReference", + "RouteServerPeer": { + "target": "com.amazonaws.ec2#RouteServerPeer", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayPrefixListReference", - "smithy.api#documentation": "

Information about the prefix list reference.

", - "smithy.api#xmlName": "transitGatewayPrefixListReference" + "aws.protocols#ec2QueryName": "RouteServerPeer", + "smithy.api#documentation": "

Information about the created route server peer.

", + "smithy.api#xmlName": "routeServerPeer" } } }, @@ -19935,32 +20988,53 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayRequest": { + "com.amazonaws.ec2#CreateRouteServerRequest": { "type": "structure", "members": { - "Description": { + "AmazonSideAsn": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The private Autonomous System Number (ASN) for the Amazon side of the BGP session. Valid values are from 1 to 4294967295. We recommend using a private ASN in the 64512–65534 (16-bit ASN) or 4200000000–4294967294 (32-bit ASN) range.

", + "smithy.api#required": {} + } + }, + "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

A description of the transit gateway.

" + "smithy.api#documentation": "

Unique, case-sensitive identifier to ensure idempotency of the request.

", + "smithy.api#idempotencyToken": {} } }, - "Options": { - "target": "com.amazonaws.ec2#TransitGatewayRequestOptions", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The transit gateway options.

" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "PersistRoutes": { + "target": "com.amazonaws.ec2#RouteServerPersistRoutesAction", "traits": { - "smithy.api#documentation": "

The tags to apply to the transit gateway.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

Indicates whether routes should be persisted after all BGP sessions are terminated.

" } }, - "DryRun": { + "PersistRoutesDuration": { + "target": "com.amazonaws.ec2#BoxedLong", + "traits": { + "smithy.api#documentation": "

The number of minutes a route server will wait after BGP is re-established to unpersist the routes in the FIB and RIB. Value must be in the range of 1-5. Required if PersistRoutes is enabled.

\n

If you set the duration to 1 minute, then when your network appliance re-establishes BGP with route server, it has 1 minute to relearn it's adjacent network and advertise those routes to route server before route server resumes normal functionality. In most cases, 1 minute is probably sufficient. If, however, you have concerns that your BGP network may not be capable of fully re-establishing and re-learning everything in 1 minute, you can increase the duration up to 5 minutes.

" + } + }, + "SnsNotificationsEnabled": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Indicates whether SNS notifications should be enabled for route server events. Enabling SNS notifications persists BGP status changes to an SNS topic provisioned by Amazon Web Services.

" + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags to apply to the route server during creation.

", + "smithy.api#xmlName": "TagSpecification" } } }, @@ -19968,15 +21042,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayResult": { + "com.amazonaws.ec2#CreateRouteServerResult": { "type": "structure", "members": { - "TransitGateway": { - "target": "com.amazonaws.ec2#TransitGateway", + "RouteServer": { + "target": "com.amazonaws.ec2#RouteServer", "traits": { - "aws.protocols#ec2QueryName": "TransitGateway", - "smithy.api#documentation": "

Information about the transit gateway.

", - "smithy.api#xmlName": "transitGateway" + "aws.protocols#ec2QueryName": "RouteServer", + "smithy.api#documentation": "

Information about the created route server.

", + "smithy.api#xmlName": "routeServer" } } }, @@ -19984,53 +21058,76 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayRoute": { + "com.amazonaws.ec2#CreateRouteTable": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateTransitGatewayRouteRequest" + "target": "com.amazonaws.ec2#CreateRouteTableRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateTransitGatewayRouteResult" + "target": "com.amazonaws.ec2#CreateRouteTableResult" }, "traits": { - "smithy.api#documentation": "

Creates a static route for the specified transit gateway route table.

" + "smithy.api#documentation": "

Creates a route table for the specified VPC. After you create a route table, you can add routes and associate the table with a subnet.

\n

For more information, see Route tables in the\n\t\t\t\tAmazon VPC User Guide.

", + "smithy.api#examples": [ + { + "title": "To create a route table", + "documentation": "This example creates a route table for the specified VPC.", + "input": { + "VpcId": "vpc-a01106c2" + }, + "output": { + "RouteTable": { + "Associations": [], + "RouteTableId": "rtb-22574640", + "VpcId": "vpc-a01106c2", + "PropagatingVgws": [], + "Tags": [], + "Routes": [ + { + "GatewayId": "local", + "DestinationCidrBlock": "10.0.0.0/16", + "State": "active" + } + ] + } + } + } + ] } }, - "com.amazonaws.ec2#CreateTransitGatewayRouteRequest": { + "com.amazonaws.ec2#CreateRouteTableRequest": { "type": "structure", "members": { - "DestinationCidrBlock": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The CIDR range used for destination matches. Routing decisions are based on the\n most specific match.

", - "smithy.api#required": {} - } - }, - "TransitGatewayRouteTableId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway route table.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The tags to assign to the route table.

", + "smithy.api#xmlName": "TagSpecification" } }, - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The ID of the attachment.

" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} } }, - "Blackhole": { + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Indicates whether to drop traffic that matches this route.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "vpcId" } } }, @@ -20038,15 +21135,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayRouteResult": { + "com.amazonaws.ec2#CreateRouteTableResult": { "type": "structure", "members": { - "Route": { - "target": "com.amazonaws.ec2#TransitGatewayRoute", + "RouteTable": { + "target": "com.amazonaws.ec2#RouteTable", "traits": { - "aws.protocols#ec2QueryName": "Route", - "smithy.api#documentation": "

Information about the route.

", - "smithy.api#xmlName": "route" + "aws.protocols#ec2QueryName": "RouteTable", + "smithy.api#documentation": "

Information about the route table.

", + "smithy.api#xmlName": "routeTable" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

Unique, case-sensitive identifier to ensure the idempotency of the request. Only returned if a client token was provided in the request.

", + "smithy.api#xmlName": "clientToken" } } }, @@ -20054,60 +21159,71 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayRouteTable": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateTransitGatewayRouteTableRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateTransitGatewayRouteTableResult" - }, - "traits": { - "smithy.api#documentation": "

Creates a route table for the specified transit gateway.

" - } - }, - "com.amazonaws.ec2#CreateTransitGatewayRouteTableAnnouncement": { + "com.amazonaws.ec2#CreateSecurityGroup": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateTransitGatewayRouteTableAnnouncementRequest" + "target": "com.amazonaws.ec2#CreateSecurityGroupRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateTransitGatewayRouteTableAnnouncementResult" + "target": "com.amazonaws.ec2#CreateSecurityGroupResult" }, "traits": { - "smithy.api#documentation": "

Advertises a new transit gateway route table.

" + "smithy.api#documentation": "

Creates a security group.

\n

A security group acts as a virtual firewall for your instance to control inbound and outbound traffic.\n For more information, see\n\t\t\t\tAmazon EC2 security groups in \n\t\t\t\tthe Amazon EC2 User Guide and \n\t\t\t\tSecurity groups for your VPC in the\n\t\t\t\tAmazon VPC User Guide.

\n

When you create a security group, you specify a friendly name of your choice. \n You can't have two security groups for the same VPC with the same name.

\n

You have a default security group for use in your VPC. If you don't specify a security group \n when you launch an instance, the instance is launched into the appropriate default security group. \n A default security group includes a default rule that grants instances unrestricted network access \n to each other.

\n

You can add or remove rules from your security groups using \n\t\t\t\t\tAuthorizeSecurityGroupIngress,\n\t\t\t\t\tAuthorizeSecurityGroupEgress,\n\t\t\t\t\tRevokeSecurityGroupIngress, and\n\t\t\t\t\tRevokeSecurityGroupEgress.

\n

For more information about VPC security group limits, see Amazon VPC Limits.

", + "smithy.api#examples": [ + { + "title": "To create a security group for a VPC", + "documentation": "This example creates a security group for the specified VPC.", + "input": { + "Description": "My security group", + "GroupName": "my-security-group", + "VpcId": "vpc-1a2b3c4d" + }, + "output": { + "GroupId": "sg-903004f8" + } + } + ] } }, - "com.amazonaws.ec2#CreateTransitGatewayRouteTableAnnouncementRequest": { + "com.amazonaws.ec2#CreateSecurityGroupRequest": { "type": "structure", "members": { - "TransitGatewayRouteTableId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway route table.

", - "smithy.api#required": {} + "smithy.api#documentation": "

A description for the security group.

\n

Constraints: Up to 255 characters in length

\n

Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

", + "smithy.api#required": {}, + "smithy.api#xmlName": "GroupDescription" } }, - "PeeringAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "GroupName": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the peering attachment.

", + "smithy.api#documentation": "

The name of the security group. Names are case-insensitive and must be unique within the VPC.

\n

Constraints: Up to 255 characters in length. Can't start with sg-.

\n

Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

", "smithy.api#required": {} } }, + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", + "traits": { + "smithy.api#documentation": "

The ID of the VPC. Required for a nondefault VPC.

" + } + }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The tags specifications applied to the transit gateway route table announcement.

", + "smithy.api#documentation": "

The tags to assign to the security group.

", "smithy.api#xmlName": "TagSpecification" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, @@ -20115,59 +21231,31 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayRouteTableAnnouncementResult": { - "type": "structure", - "members": { - "TransitGatewayRouteTableAnnouncement": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableAnnouncement", - "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayRouteTableAnnouncement", - "smithy.api#documentation": "

Provides details about the transit gateway route table announcement.

", - "smithy.api#xmlName": "transitGatewayRouteTableAnnouncement" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#CreateTransitGatewayRouteTableRequest": { + "com.amazonaws.ec2#CreateSecurityGroupResult": { "type": "structure", "members": { - "TransitGatewayId": { - "target": "com.amazonaws.ec2#TransitGatewayId", + "GroupId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "GroupId", + "smithy.api#documentation": "

The ID of the security group.

", + "smithy.api#xmlName": "groupId" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#documentation": "

The tags to apply to the transit gateway route table.

" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags assigned to the security group.

", + "smithy.api#xmlName": "tagSet" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#CreateTransitGatewayRouteTableResult": { - "type": "structure", - "members": { - "TransitGatewayRouteTable": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTable", + "SecurityGroupArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayRouteTable", - "smithy.api#documentation": "

Information about the transit gateway route table.

", - "smithy.api#xmlName": "transitGatewayRouteTable" + "aws.protocols#ec2QueryName": "SecurityGroupArn", + "smithy.api#documentation": "

The security group ARN.

", + "smithy.api#xmlName": "securityGroupArn" } } }, @@ -20175,61 +21263,80 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayVpcAttachment": { + "com.amazonaws.ec2#CreateSnapshot": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateTransitGatewayVpcAttachmentRequest" + "target": "com.amazonaws.ec2#CreateSnapshotRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateTransitGatewayVpcAttachmentResult" + "target": "com.amazonaws.ec2#Snapshot" }, "traits": { - "smithy.api#documentation": "

Attaches the specified VPC to the specified transit gateway.

\n

If you attach a VPC with a CIDR range that overlaps the CIDR range of a VPC that is already attached,\n the new VPC CIDR range is not propagated to the default propagation route table.

\n

To send VPC traffic to an attached transit gateway, add a route to the VPC route table using CreateRoute.

" + "smithy.api#documentation": "

Creates a snapshot of an EBS volume and stores it in Amazon S3. You can use snapshots for\n \tbackups, to make copies of EBS volumes, and to save data before shutting down an\n \tinstance.

\n

The location of the source EBS volume determines where you can create the snapshot.

\n \n

When a snapshot is created, any Amazon Web Services Marketplace product codes that are associated with the\n source volume are propagated to the snapshot.

\n

You can take a snapshot of an attached volume that is in use. However, snapshots only\n capture data that has been written to your Amazon EBS volume at the time the snapshot command is\n issued; this might exclude any data that has been cached by any applications or the operating\n system. If you can pause any file systems on the volume long enough to take a snapshot, your\n snapshot should be complete. However, if you cannot pause all file writes to the volume, you\n should unmount the volume from within the instance, issue the snapshot command, and then\n remount the volume to ensure a consistent and complete snapshot. You may remount and use your\n volume while the snapshot status is pending.

\n

When you create a snapshot for an EBS volume that serves as a root device, we recommend \n that you stop the instance before taking the snapshot.

\n

Snapshots that are taken from encrypted volumes are automatically encrypted. Volumes that\n are created from encrypted snapshots are also automatically encrypted. Your encrypted volumes\n and any associated snapshots always remain protected. For more information, see Amazon EBS encryption\n in the Amazon EBS User Guide.

", + "smithy.api#examples": [ + { + "title": "To create a snapshot", + "documentation": "This example creates a snapshot of the volume with a volume ID of ``vol-1234567890abcdef0`` and a short description to identify the snapshot.", + "input": { + "VolumeId": "vol-1234567890abcdef0", + "Description": "This is my root volume snapshot." + }, + "output": { + "Description": "This is my root volume snapshot.", + "Tags": [], + "VolumeId": "vol-1234567890abcdef0", + "State": "pending", + "VolumeSize": 8, + "StartTime": "2014-02-28T21:06:01.000Z", + "OwnerId": "012345678910", + "SnapshotId": "snap-066877671789bd71b" + } + } + ] } }, - "com.amazonaws.ec2#CreateTransitGatewayVpcAttachmentRequest": { + "com.amazonaws.ec2#CreateSnapshotRequest": { "type": "structure", "members": { - "TransitGatewayId": { - "target": "com.amazonaws.ec2#TransitGatewayId", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway.

", - "smithy.api#required": {} + "smithy.api#documentation": "

A description for the snapshot.

" } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "OutpostArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#required": {} + "smithy.api#documentation": "\n

Only supported for volumes on Outposts. If the source volume is not on an Outpost, \n omit this parameter.

\n
\n \n

For more information, see Create local snapshots from volumes on an Outpost in the Amazon EBS User Guide.

" } }, - "SubnetIds": { - "target": "com.amazonaws.ec2#TransitGatewaySubnetIdList", + "VolumeId": { + "target": "com.amazonaws.ec2#VolumeId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of one or more subnets. You can specify only one subnet per Availability Zone. \n You must specify at least one subnet, but we recommend that you specify two subnets for better availability.\n The transit gateway uses one IP address from each specified subnet.

", + "smithy.api#documentation": "

The ID of the Amazon EBS volume.

", "smithy.api#required": {} } }, - "Options": { - "target": "com.amazonaws.ec2#CreateTransitGatewayVpcAttachmentRequestOptions", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The VPC attachment options.

" + "smithy.api#documentation": "

The tags to apply to the snapshot during creation.

", + "smithy.api#xmlName": "TagSpecification" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "Location": { + "target": "com.amazonaws.ec2#SnapshotLocationEnum", "traits": { - "smithy.api#documentation": "

The tags to apply to the VPC attachment.

" + "smithy.api#documentation": "\n

Only supported for volumes in Local Zones. If the source volume is not in a Local Zone, \n omit this parameter.

\n
\n \n

Default value: regional\n

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, @@ -20237,47 +21344,80 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayVpcAttachmentRequestOptions": { + "com.amazonaws.ec2#CreateSnapshots": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateSnapshotsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateSnapshotsResult" + }, + "traits": { + "smithy.api#documentation": "

Creates crash-consistent snapshots of multiple EBS volumes attached to an Amazon EC2 instance.\n Volumes are chosen by specifying an instance. Each volume attached to the specified instance \n will produce one snapshot that is crash-consistent across the instance. You can include all of \n the volumes currently attached to the instance, or you can exclude the root volume or specific \n data (non-root) volumes from the multi-volume snapshot set.

\n

The location of the source instance determines where you can create the snapshots.

\n " + } + }, + "com.amazonaws.ec2#CreateSnapshotsRequest": { "type": "structure", "members": { - "DnsSupport": { - "target": "com.amazonaws.ec2#DnsSupportValue", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Enable or disable DNS support. The default is enable.

" + "smithy.api#documentation": "

A description propagated to every snapshot specified by the instance.

" } }, - "SecurityGroupReferencingSupport": { - "target": "com.amazonaws.ec2#SecurityGroupReferencingSupportValue", + "InstanceSpecification": { + "target": "com.amazonaws.ec2#InstanceSpecification", "traits": { - "smithy.api#documentation": "\n

This parameter is in preview and may not be available for your account.

\n
\n

Enables you to reference a security group across VPCs attached to a transit gateway. Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.

\n

If you don't enable or disable SecurityGroupReferencingSupport in the request, the\n attachment will inherit the security group referencing support setting on the transit\n gateway.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The instance to specify which volumes should be included in the snapshots.

", + "smithy.api#required": {} } }, - "Ipv6Support": { - "target": "com.amazonaws.ec2#Ipv6SupportValue", + "OutpostArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Enable or disable IPv6 support. The default is disable.

" + "smithy.api#documentation": "\n

Only supported for instances on Outposts. If the source instance is not on an Outpost, \n omit this parameter.

\n
\n \n

For more information, see \n Create local snapshots from volumes on an Outpost in the Amazon EBS User Guide.

" } }, - "ApplianceModeSupport": { - "target": "com.amazonaws.ec2#ApplianceModeSupportValue", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

Enable or disable support for appliance mode. If enabled, a traffic flow between a source and destination uses the same Availability Zone for the VPC attachment for the lifetime of that flow. The default is disable.

" + "smithy.api#documentation": "

Tags to apply to every snapshot specified by the instance.

", + "smithy.api#xmlName": "TagSpecification" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "CopyTagsFromSource": { + "target": "com.amazonaws.ec2#CopyTagsFromSource", + "traits": { + "smithy.api#documentation": "

Copies the tags from the specified volume to corresponding snapshot.

" + } + }, + "Location": { + "target": "com.amazonaws.ec2#SnapshotLocationEnum", + "traits": { + "smithy.api#documentation": "\n

Only supported for instances in Local Zones. If the source instance is not in a Local Zone, \n omit this parameter.

\n
\n \n

Default value: regional\n

" } } }, "traits": { - "smithy.api#documentation": "

Describes the options for a VPC attachment.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateTransitGatewayVpcAttachmentResult": { + "com.amazonaws.ec2#CreateSnapshotsResult": { "type": "structure", "members": { - "TransitGatewayVpcAttachment": { - "target": "com.amazonaws.ec2#TransitGatewayVpcAttachment", + "Snapshots": { + "target": "com.amazonaws.ec2#SnapshotSet", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayVpcAttachment", - "smithy.api#documentation": "

Information about the VPC attachment.

", - "smithy.api#xmlName": "transitGatewayVpcAttachment" + "aws.protocols#ec2QueryName": "SnapshotSet", + "smithy.api#documentation": "

List of snapshots.

", + "smithy.api#xmlName": "snapshotSet" } } }, @@ -20285,183 +21425,130 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateVerifiedAccessEndpoint": { + "com.amazonaws.ec2#CreateSpotDatafeedSubscription": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointRequest" + "target": "com.amazonaws.ec2#CreateSpotDatafeedSubscriptionRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointResult" + "target": "com.amazonaws.ec2#CreateSpotDatafeedSubscriptionResult" }, "traits": { - "smithy.api#documentation": "

An Amazon Web Services Verified Access endpoint is where you define your application along with an optional endpoint-level access policy.

" + "smithy.api#documentation": "

Creates a data feed for Spot Instances, enabling you to view Spot Instance usage logs.\n You can create one data feed per Amazon Web Services account. For more information, see\n Spot Instance data feed \n in the Amazon EC2 User Guide.

", + "smithy.api#examples": [ + { + "title": "To create a Spot Instance datafeed", + "documentation": "This example creates a Spot Instance data feed for your AWS account.", + "input": { + "Bucket": "my-s3-bucket", + "Prefix": "spotdata" + }, + "output": { + "SpotDatafeedSubscription": { + "OwnerId": "123456789012", + "Prefix": "spotdata", + "Bucket": "my-s3-bucket", + "State": "Active" + } + } + } + ] } }, - "com.amazonaws.ec2#CreateVerifiedAccessEndpointEniOptions": { + "com.amazonaws.ec2#CreateSpotDatafeedSubscriptionRequest": { "type": "structure", "members": { - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#NetworkInterfaceId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The ID of the network interface.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "Protocol": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpointProtocol", + "Bucket": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IP protocol.

" + "aws.protocols#ec2QueryName": "Bucket", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The name of the Amazon S3 bucket in which to store the Spot Instance data feed. For\n more information about bucket names, see Bucket naming rules \n in the Amazon S3 User Guide.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "bucket" } }, - "Port": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortNumber", + "Prefix": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IP port number.

" + "aws.protocols#ec2QueryName": "Prefix", + "smithy.api#documentation": "

The prefix for the data feed file names.

", + "smithy.api#xmlName": "prefix" } } }, "traits": { - "smithy.api#documentation": "

Describes the network interface options when creating an Amazon Web Services Verified Access endpoint using the\n network-interface type.

" + "smithy.api#documentation": "

Contains the parameters for CreateSpotDatafeedSubscription.

", + "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateVerifiedAccessEndpointLoadBalancerOptions": { + "com.amazonaws.ec2#CreateSpotDatafeedSubscriptionResult": { "type": "structure", "members": { - "Protocol": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpointProtocol", - "traits": { - "smithy.api#documentation": "

The IP protocol.

" - } - }, - "Port": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortNumber", - "traits": { - "smithy.api#documentation": "

The IP port number.

" - } - }, - "LoadBalancerArn": { - "target": "com.amazonaws.ec2#LoadBalancerArn", - "traits": { - "smithy.api#documentation": "

The ARN of the load balancer.

" - } - }, - "SubnetIds": { - "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointSubnetIdList", + "SpotDatafeedSubscription": { + "target": "com.amazonaws.ec2#SpotDatafeedSubscription", "traits": { - "smithy.api#documentation": "

The IDs of the subnets.

", - "smithy.api#xmlName": "SubnetId" + "aws.protocols#ec2QueryName": "SpotDatafeedSubscription", + "smithy.api#documentation": "

The Spot Instance data feed subscription.

", + "smithy.api#xmlName": "spotDatafeedSubscription" } } }, "traits": { - "smithy.api#documentation": "

Describes the load balancer options when creating an Amazon Web Services Verified Access endpoint using the\n load-balancer type.

" + "smithy.api#documentation": "

Contains the output of CreateSpotDatafeedSubscription.

", + "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateVerifiedAccessEndpointRequest": { + "com.amazonaws.ec2#CreateStoreImageTask": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateStoreImageTaskRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateStoreImageTaskResult" + }, + "traits": { + "smithy.api#documentation": "

Stores an AMI as a single object in an Amazon S3 bucket.

\n

To use this API, you must have the required permissions. For more information, see Permissions for storing and restoring AMIs using S3 in the\n Amazon EC2 User Guide.

\n

For more information, see Store and restore an AMI using\n S3 in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#CreateStoreImageTaskRequest": { "type": "structure", "members": { - "VerifiedAccessGroupId": { - "target": "com.amazonaws.ec2#VerifiedAccessGroupId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Verified Access group to associate the endpoint with.

", - "smithy.api#required": {} - } - }, - "EndpointType": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpointType", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of Verified Access endpoint to create.

", - "smithy.api#required": {} - } - }, - "AttachmentType": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpointAttachmentType", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of attachment.

", - "smithy.api#required": {} - } - }, - "DomainCertificateArn": { - "target": "com.amazonaws.ec2#CertificateArn", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ARN of the public TLS/SSL certificate in Amazon Web Services Certificate Manager to associate with the endpoint.\n The CN in the certificate must match the DNS name your end users will use to reach your\n application.

", - "smithy.api#required": {} - } - }, - "ApplicationDomain": { - "target": "com.amazonaws.ec2#String", + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The DNS name for users to reach your application.

", + "smithy.api#documentation": "

The ID of the AMI.

", "smithy.api#required": {} } }, - "EndpointDomainPrefix": { + "Bucket": { "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A custom identifier that is prepended to the DNS name that is generated for the\n endpoint.

", + "smithy.api#documentation": "

The name of the Amazon S3 bucket in which the AMI object will be stored. The bucket must be in\n the Region in which the request is being made. The AMI object appears in the bucket only after\n the upload task has completed.

", "smithy.api#required": {} } }, - "SecurityGroupIds": { - "target": "com.amazonaws.ec2#SecurityGroupIdList", - "traits": { - "smithy.api#documentation": "

The IDs of the security groups to associate with the Verified Access endpoint. Required if AttachmentType is set to vpc.

", - "smithy.api#xmlName": "SecurityGroupId" - } - }, - "LoadBalancerOptions": { - "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointLoadBalancerOptions", - "traits": { - "smithy.api#documentation": "

The load balancer details. This parameter is required if the endpoint type is\n load-balancer.

" - } - }, - "NetworkInterfaceOptions": { - "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointEniOptions", - "traits": { - "smithy.api#documentation": "

The network interface details. This parameter is required if the endpoint type is\n network-interface.

" - } - }, - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

A description for the Verified Access endpoint.

" - } - }, - "PolicyDocument": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The Verified Access policy document.

" - } - }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", - "traits": { - "smithy.api#documentation": "

The tags to assign to the Verified Access endpoint.

", - "smithy.api#xmlName": "TagSpecification" - } - }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "S3ObjectTags": { + "target": "com.amazonaws.ec2#S3ObjectTagList", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "smithy.api#documentation": "

The tags to apply to the AMI object that will be stored in the Amazon S3 bucket.

", + "smithy.api#xmlName": "S3ObjectTag" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "SseSpecification": { - "target": "com.amazonaws.ec2#VerifiedAccessSseSpecificationRequest", - "traits": { - "smithy.api#documentation": "

The options for server side encryption.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -20469,15 +21556,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateVerifiedAccessEndpointResult": { + "com.amazonaws.ec2#CreateStoreImageTaskResult": { "type": "structure", "members": { - "VerifiedAccessEndpoint": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpoint", + "ObjectKey": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessEndpoint", - "smithy.api#documentation": "

Details about the Verified Access endpoint.

", - "smithy.api#xmlName": "verifiedAccessEndpoint" + "aws.protocols#ec2QueryName": "ObjectKey", + "smithy.api#documentation": "

The name of the stored AMI object in the S3 bucket.

", + "smithy.api#xmlName": "objectKey" } } }, @@ -20485,62 +21572,81 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateVerifiedAccessEndpointSubnetIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#SubnetId", - "traits": { - "smithy.api#xmlName": "item" - } + "com.amazonaws.ec2#CreateSubnet": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateSubnetRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateSubnetResult" + }, + "traits": { + "smithy.api#documentation": "

Creates a subnet in the specified VPC. For an IPv4 only subnet, specify an IPv4 CIDR block.\n If the VPC has an IPv6 CIDR block, you can create an IPv6 only subnet or a dual stack subnet instead.\n For an IPv6 only subnet, specify an IPv6 CIDR block. For a dual stack subnet, specify both\n an IPv4 CIDR block and an IPv6 CIDR block.

\n

A subnet CIDR block must not overlap the CIDR block of an existing subnet in the VPC.\n After you create a subnet, you can't change its CIDR block.

\n

The allowed size for an IPv4 subnet is between a /28 netmask (16 IP addresses) and \n a /16 netmask (65,536 IP addresses). Amazon Web Services reserves both the first four and \n the last IPv4 address in each subnet's CIDR block. They're not available for your use.

\n

If you've associated an IPv6 CIDR block with your VPC, you can associate an IPv6 CIDR\n block with a subnet when you create it.

\n

If you add more than one subnet to a VPC, they're set up in a star topology with a\n logical router in the middle.

\n

When you stop an instance in a subnet, it retains its private IPv4 address. It's\n therefore possible to have a subnet with no running instances (they're all stopped), but\n no remaining IP addresses available.

\n

For more information, see Subnets in the Amazon VPC User Guide.

", + "smithy.api#examples": [ + { + "title": "To create a subnet", + "documentation": "This example creates a subnet in the specified VPC with the specified CIDR block. We recommend that you let us select an Availability Zone for you.", + "input": { + "VpcId": "vpc-a01106c2", + "CidrBlock": "10.0.1.0/24" + }, + "output": { + "Subnet": { + "VpcId": "vpc-a01106c2", + "CidrBlock": "10.0.1.0/24", + "State": "pending", + "AvailabilityZone": "us-west-2c", + "SubnetId": "subnet-9d4a7b6c", + "AvailableIpAddressCount": 251 + } + } + } + ] } }, - "com.amazonaws.ec2#CreateVerifiedAccessGroup": { + "com.amazonaws.ec2#CreateSubnetCidrReservation": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateVerifiedAccessGroupRequest" + "target": "com.amazonaws.ec2#CreateSubnetCidrReservationRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateVerifiedAccessGroupResult" + "target": "com.amazonaws.ec2#CreateSubnetCidrReservationResult" }, "traits": { - "smithy.api#documentation": "

An Amazon Web Services Verified Access group is a collection of Amazon Web Services Verified Access endpoints who's associated applications have\n similar security requirements. Each instance within a Verified Access group shares an Verified Access policy. For\n example, you can group all Verified Access instances associated with \"sales\" applications together and\n use one common Verified Access policy.

" + "smithy.api#documentation": "

Creates a subnet CIDR reservation. For more information, see Subnet CIDR reservations \n in the Amazon VPC User Guide and Manage prefixes \n for your network interfaces in the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#CreateVerifiedAccessGroupRequest": { + "com.amazonaws.ec2#CreateSubnetCidrReservationRequest": { "type": "structure", "members": { - "VerifiedAccessInstanceId": { - "target": "com.amazonaws.ec2#VerifiedAccessInstanceId", + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Verified Access instance.

", + "smithy.api#documentation": "

The ID of the subnet.

", "smithy.api#required": {} } }, - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

A description for the Verified Access group.

" - } - }, - "PolicyDocument": { + "Cidr": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The Verified Access policy document.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IPv4 or IPV6 CIDR range to reserve.

", + "smithy.api#required": {} } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "ReservationType": { + "target": "com.amazonaws.ec2#SubnetCidrReservationType", "traits": { - "smithy.api#documentation": "

The tags to assign to the Verified Access group.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The type of reservation. The reservation type determines how the reserved IP addresses are \n assigned to resources.

\n ", + "smithy.api#required": {} } }, - "ClientToken": { + "Description": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "smithy.api#documentation": "

The description to assign to the subnet CIDR reservation.

" } }, "DryRun": { @@ -20549,10 +21655,11 @@ "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "SseSpecification": { - "target": "com.amazonaws.ec2#VerifiedAccessSseSpecificationRequest", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The options for server side encryption.

" + "smithy.api#documentation": "

The tags to assign to the subnet CIDR reservation.

", + "smithy.api#xmlName": "TagSpecification" } } }, @@ -20560,15 +21667,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateVerifiedAccessGroupResult": { + "com.amazonaws.ec2#CreateSubnetCidrReservationResult": { "type": "structure", "members": { - "VerifiedAccessGroup": { - "target": "com.amazonaws.ec2#VerifiedAccessGroup", + "SubnetCidrReservation": { + "target": "com.amazonaws.ec2#SubnetCidrReservation", "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessGroup", - "smithy.api#documentation": "

Details about the Verified Access group.

", - "smithy.api#xmlName": "verifiedAccessGroup" + "aws.protocols#ec2QueryName": "SubnetCidrReservation", + "smithy.api#documentation": "

Information about the created subnet CIDR reservation.

", + "smithy.api#xmlName": "subnetCidrReservation" } } }, @@ -20576,229 +21683,90 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateVerifiedAccessInstance": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateVerifiedAccessInstanceRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateVerifiedAccessInstanceResult" - }, - "traits": { - "smithy.api#documentation": "

An Amazon Web Services Verified Access instance is a regional entity that evaluates application requests and grants\n access only when your security requirements are met.

" - } - }, - "com.amazonaws.ec2#CreateVerifiedAccessInstanceRequest": { + "com.amazonaws.ec2#CreateSubnetRequest": { "type": "structure", "members": { - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

A description for the Verified Access instance.

" - } - }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The tags to assign to the Verified Access instance.

", + "smithy.api#documentation": "

The tags to assign to the subnet.

", "smithy.api#xmlName": "TagSpecification" } }, - "ClientToken": { + "AvailabilityZone": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "smithy.api#documentation": "

The Availability Zone or Local Zone for the subnet.

\n

Default: Amazon Web Services selects one for you. If you create more than one subnet in your VPC, we \n do not necessarily select a different zone for each subnet.

\n

To create a subnet in a Local Zone, set this value to the Local Zone ID, for example\n us-west-2-lax-1a. For information about the Regions that support Local Zones, \n see Available Local Zones.

\n

To create a subnet in an Outpost, set this value to the Availability Zone for the\n Outpost and specify the Outpost ARN.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The AZ ID or the Local Zone ID of the subnet.

" } }, - "FIPSEnabled": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Enable or disable support for Federal Information Processing Standards (FIPS) on the instance.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#CreateVerifiedAccessInstanceResult": { - "type": "structure", - "members": { - "VerifiedAccessInstance": { - "target": "com.amazonaws.ec2#VerifiedAccessInstance", - "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessInstance", - "smithy.api#documentation": "

Details about the Verified Access instance.

", - "smithy.api#xmlName": "verifiedAccessInstance" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#CreateVerifiedAccessTrustProvider": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateVerifiedAccessTrustProviderRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateVerifiedAccessTrustProviderResult" - }, - "traits": { - "smithy.api#documentation": "

A trust provider is a third-party entity that creates, maintains, and manages identity\n information for users and devices. When an application request is made, the identity\n information sent by the trust provider is evaluated by Verified Access before allowing or\n denying the application request.

" - } - }, - "com.amazonaws.ec2#CreateVerifiedAccessTrustProviderDeviceOptions": { - "type": "structure", - "members": { - "TenantId": { + "CidrBlock": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The ID of the tenant application with the device-identity provider.

" + "smithy.api#documentation": "

The IPv4 network range for the subnet, in CIDR notation. For example, 10.0.0.0/24. \n We modify the specified CIDR block to its canonical form; for example, if you specify \n 100.68.0.18/18, we modify it to 100.68.0.0/18.

\n

This parameter is not supported for an IPv6 only subnet.

" } }, - "PublicSigningKeyUrl": { + "Ipv6CidrBlock": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

\n The URL Amazon Web Services Verified Access will use to verify the authenticity of the device tokens.\n

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the options when creating an Amazon Web Services Verified Access trust provider using the\n device type.

" - } - }, - "com.amazonaws.ec2#CreateVerifiedAccessTrustProviderOidcOptions": { - "type": "structure", - "members": { - "Issuer": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The OIDC issuer.

" - } - }, - "AuthorizationEndpoint": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The OIDC authorization endpoint.

" - } - }, - "TokenEndpoint": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The OIDC token endpoint.

" - } - }, - "UserInfoEndpoint": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The OIDC user info endpoint.

" + "smithy.api#documentation": "

The IPv6 network range for the subnet, in CIDR notation. This parameter is required\n for an IPv6 only subnet.

" } }, - "ClientId": { + "OutpostArn": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The client identifier.

" - } - }, - "ClientSecret": { - "target": "com.amazonaws.ec2#ClientSecretType", - "traits": { - "smithy.api#documentation": "

The client secret.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost. If you specify an Outpost ARN, you must also\n specify the Availability Zone of the Outpost subnet.

" } }, - "Scope": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

OpenID Connect (OIDC) scopes are used by an application during authentication to authorize access to a user's details. Each scope returns a specific set of user attributes.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the options when creating an Amazon Web Services Verified Access trust provider using the user\n type.

" - } - }, - "com.amazonaws.ec2#CreateVerifiedAccessTrustProviderRequest": { - "type": "structure", - "members": { - "TrustProviderType": { - "target": "com.amazonaws.ec2#TrustProviderType", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of trust provider.

", + "smithy.api#documentation": "

The ID of the VPC.

", "smithy.api#required": {} } }, - "UserTrustProviderType": { - "target": "com.amazonaws.ec2#UserTrustProviderType", - "traits": { - "smithy.api#documentation": "

The type of user-based trust provider. This parameter is required when the provider type\n is user.

" - } - }, - "DeviceTrustProviderType": { - "target": "com.amazonaws.ec2#DeviceTrustProviderType", - "traits": { - "smithy.api#documentation": "

The type of device-based trust provider. This parameter is required when the provider\n type is device.

" - } - }, - "OidcOptions": { - "target": "com.amazonaws.ec2#CreateVerifiedAccessTrustProviderOidcOptions", - "traits": { - "smithy.api#documentation": "

The options for a OpenID Connect-compatible user-identity trust provider. This parameter\n is required when the provider type is user.

" - } - }, - "DeviceOptions": { - "target": "com.amazonaws.ec2#CreateVerifiedAccessTrustProviderDeviceOptions", + "Ipv6Native": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The options for a device-based trust provider. This parameter is required when the\n provider type is device.

" + "smithy.api#documentation": "

Indicates whether to create an IPv6 only subnet.

" } }, - "PolicyReferenceName": { - "target": "com.amazonaws.ec2#String", + "Ipv4IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The identifier to be used when working with policy rules.

", - "smithy.api#required": {} + "smithy.api#documentation": "

An IPv4 IPAM pool ID for the subnet.

" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "Ipv4NetmaskLength": { + "target": "com.amazonaws.ec2#NetmaskLength", "traits": { - "smithy.api#documentation": "

A description for the Verified Access trust provider.

" + "smithy.api#documentation": "

An IPv4 netmask length for the subnet.

" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "Ipv6IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", "traits": { - "smithy.api#documentation": "

The tags to assign to the Verified Access trust provider.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

An IPv6 IPAM pool ID for the subnet.

" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "Ipv6NetmaskLength": { + "target": "com.amazonaws.ec2#NetmaskLength", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "smithy.api#documentation": "

An IPv6 netmask length for the subnet.

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "SseSpecification": { - "target": "com.amazonaws.ec2#VerifiedAccessSseSpecificationRequest", - "traits": { - "smithy.api#documentation": "

The options for server side encryption.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, @@ -20806,15 +21774,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateVerifiedAccessTrustProviderResult": { + "com.amazonaws.ec2#CreateSubnetResult": { "type": "structure", "members": { - "VerifiedAccessTrustProvider": { - "target": "com.amazonaws.ec2#VerifiedAccessTrustProvider", + "Subnet": { + "target": "com.amazonaws.ec2#Subnet", "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessTrustProvider", - "smithy.api#documentation": "

Details about the Verified Access trust provider.

", - "smithy.api#xmlName": "verifiedAccessTrustProvider" + "aws.protocols#ec2QueryName": "Subnet", + "smithy.api#documentation": "

Information about the subnet.

", + "smithy.api#xmlName": "subnet" } } }, @@ -20822,201 +21790,107 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateVolume": { + "com.amazonaws.ec2#CreateTags": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateVolumeRequest" + "target": "com.amazonaws.ec2#CreateTagsRequest" }, "output": { - "target": "com.amazonaws.ec2#Volume" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Creates an EBS volume that can be attached to an instance in the same Availability Zone.

\n

You can create a new empty volume or restore a volume from an EBS snapshot.\n Any Amazon Web Services Marketplace product codes from the snapshot are propagated to the volume.

\n

You can create encrypted volumes. Encrypted volumes must be attached to instances that \n support Amazon EBS encryption. Volumes that are created from encrypted snapshots are also automatically \n encrypted. For more information, see Amazon EBS encryption\n in the Amazon EBS User Guide.

\n

You can tag your volumes during creation. For more information, see Tag your Amazon EC2\n resources in the Amazon Elastic Compute Cloud User Guide.

\n

For more information, see Create an Amazon EBS volume in the\n Amazon EBS User Guide.

", + "smithy.api#documentation": "

Adds or overwrites only the specified tags for the specified Amazon EC2 resource or\n resources. When you specify an existing tag key, the value is overwritten with\n the new value. Each resource can have a maximum of 50 tags. Each tag consists of a key and\n optional value. Tag keys must be unique per resource.

\n

For more information about tags, see Tag your Amazon EC2 resources in the\n Amazon Elastic Compute Cloud User Guide. For more information about\n creating IAM policies that control users' access to resources based on tags, see Supported\n resource-level permissions for Amazon EC2 API actions in the Amazon\n Elastic Compute Cloud User Guide.

", "smithy.api#examples": [ { - "title": "To create a new volume", - "documentation": "This example creates an 80 GiB General Purpose (SSD) volume in the Availability Zone ``us-east-1a``.", - "input": { - "AvailabilityZone": "us-east-1a", - "Size": 80, - "VolumeType": "gp2" - }, - "output": { - "AvailabilityZone": "us-east-1a", - "Encrypted": false, - "VolumeType": "gp2", - "VolumeId": "vol-6b60b7c7", - "State": "creating", - "Iops": 240, - "SnapshotId": "", - "CreateTime": "2016-08-29T18:52:32.724Z", - "Size": 80 - } - }, - { - "title": "To create a new Provisioned IOPS (SSD) volume from a snapshot", - "documentation": "This example creates a new Provisioned IOPS (SSD) volume with 1000 provisioned IOPS from a snapshot in the Availability Zone ``us-east-1a``.", + "title": "To add a tag to a resource", + "documentation": "This example adds the tag Stack=production to the specified image, or overwrites an existing tag for the AMI where the tag key is Stack.", "input": { - "AvailabilityZone": "us-east-1a", - "Iops": 1000, - "VolumeType": "io1", - "SnapshotId": "snap-066877671789bd71b" - }, - "output": { - "AvailabilityZone": "us-east-1a", - "Attachments": [], - "Tags": [], - "VolumeType": "io1", - "VolumeId": "vol-1234567890abcdef0", - "State": "creating", - "Iops": 1000, - "SnapshotId": "snap-066877671789bd71b", - "CreateTime": "2016-08-29T18:52:32.724Z", - "Size": 500 + "Resources": [ + "ami-78a54011" + ], + "Tags": [ + { + "Key": "Stack", + "Value": "production" + } + ] } } ] } }, - "com.amazonaws.ec2#CreateVolumePermission": { + "com.amazonaws.ec2#CreateTagsRequest": { "type": "structure", "members": { - "Group": { - "target": "com.amazonaws.ec2#PermissionGroup", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Group", - "smithy.api#documentation": "

The group to be added or removed. The possible value is all.

", - "smithy.api#xmlName": "group" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "UserId": { - "target": "com.amazonaws.ec2#String", + "Resources": { + "target": "com.amazonaws.ec2#ResourceIdList", "traits": { - "aws.protocols#ec2QueryName": "UserId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account to be added or removed.

", - "smithy.api#xmlName": "userId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of the resources, separated by spaces.

\n

Constraints: Up to 1000 resource IDs. We recommend breaking up this request into smaller batches.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "ResourceId" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The tags. The value parameter is required, but if you don't want the tag to have a value,\n specify the parameter with no value, and we set the value to an empty string.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "Tag" } } }, "traits": { - "smithy.api#documentation": "

Describes the user or group to be added or removed from the list of create volume\n permissions for a volume.

" - } - }, - "com.amazonaws.ec2#CreateVolumePermissionList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#CreateVolumePermission", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateVolumePermissionModifications": { - "type": "structure", - "members": { - "Add": { - "target": "com.amazonaws.ec2#CreateVolumePermissionList", - "traits": { - "smithy.api#documentation": "

Adds the specified Amazon Web Services account ID or group to the list.

" - } - }, - "Remove": { - "target": "com.amazonaws.ec2#CreateVolumePermissionList", - "traits": { - "smithy.api#documentation": "

Removes the specified Amazon Web Services account ID or group from the list.

" - } - } + "com.amazonaws.ec2#CreateTrafficMirrorFilter": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateTrafficMirrorFilterRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateTrafficMirrorFilterResult" }, "traits": { - "smithy.api#documentation": "

Describes modifications to the list of create volume permissions for a volume.

" + "smithy.api#documentation": "

Creates a Traffic Mirror filter.

\n

A Traffic Mirror filter is a set of rules that defines the traffic to mirror.

\n

By default, no traffic is mirrored. To mirror traffic, use CreateTrafficMirrorFilterRule \n to add Traffic Mirror rules to the filter. The rules you add define what traffic gets mirrored. \n You can also use ModifyTrafficMirrorFilterNetworkServices to mirror supported network services.

" } }, - "com.amazonaws.ec2#CreateVolumeRequest": { + "com.amazonaws.ec2#CreateTrafficMirrorFilterRequest": { "type": "structure", "members": { - "AvailabilityZone": { - "target": "com.amazonaws.ec2#AvailabilityZoneName", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Availability Zone in which to create the volume. For example, us-east-1a.

", - "smithy.api#required": {} - } - }, - "Encrypted": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "Encrypted", - "smithy.api#documentation": "

Indicates whether the volume should be encrypted. \n The effect of setting the encryption state to true depends on \nthe volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. \n For more information, see Encryption by default\n in the Amazon EBS User Guide.

\n

Encrypted Amazon EBS volumes must be attached to instances that support Amazon EBS encryption. \n For more information, see Supported\n instance types.

", - "smithy.api#xmlName": "encrypted" - } - }, - "Iops": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents \n the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline \n performance of the volume and the rate at which the volume accumulates I/O credits for bursting.

\n

The following are the supported values for each volume type:

\n \n

For io2 volumes, you can achieve up to 256,000 IOPS on \ninstances \nbuilt on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS.

\n

This parameter is required for io1 and io2 volumes. The default for gp3 volumes is 3,000 IOPS.\n This parameter is not supported for gp2, st1, sc1, or standard volumes.

" - } - }, - "KmsKeyId": { - "target": "com.amazonaws.ec2#KmsKeyId", - "traits": { - "smithy.api#documentation": "

The identifier of the Key Management Service (KMS) KMS key to use for Amazon EBS encryption.\n If this parameter is not specified, your KMS key for Amazon EBS is used. If KmsKeyId is\n specified, the encrypted state must be true.

\n

You can specify the KMS key using any of the following:

\n \n

Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an ID, alias, or ARN that is not valid, \n the action can appear to complete, but eventually fails.

" - } - }, - "OutpostArn": { + "Description": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost.

" - } - }, - "Size": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size.\n If you specify a snapshot, the default is the snapshot size. You can specify a volume \n size that is equal to or larger than the snapshot size.

\n

The following are the supported volumes sizes for each volume type:

\n " - } - }, - "SnapshotId": { - "target": "com.amazonaws.ec2#SnapshotId", - "traits": { - "smithy.api#documentation": "

The snapshot from which to create the volume. You must specify either a snapshot ID or a volume size.

" - } - }, - "VolumeType": { - "target": "com.amazonaws.ec2#VolumeType", - "traits": { - "smithy.api#documentation": "

The volume type. This parameter can be one of the following values:

\n \n \n

Throughput Optimized HDD (st1) and Cold HDD (sc1) volumes can't be used as boot volumes.

\n
\n

For more information, see Amazon EBS volume types in the\n Amazon EBS User Guide.

\n

Default: gp2\n

" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The description of the Traffic Mirror filter.

" } }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The tags to apply to the volume during creation.

", + "smithy.api#documentation": "

The tags to assign to a Traffic Mirror filter.

", "smithy.api#xmlName": "TagSpecification" } }, - "MultiAttachEnabled": { + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Indicates whether to enable Amazon EBS Multi-Attach. If you enable Multi-Attach, you can attach the \n \tvolume to up to 16 Instances built on the Nitro System in the same Availability Zone. This parameter is \n \tsupported with io1 and io2 volumes only. For more information, \n \tsee \n \t\tAmazon EBS Multi-Attach in the Amazon EBS User Guide.

" - } - }, - "Throughput": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

The throughput to provision for a volume, with a maximum of 1,000 MiB/s.

\n

This parameter is valid only for gp3 volumes.

\n

Valid Range: Minimum value of 125. Maximum value of 1000.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency \n of the request. For more information, see Ensure \n Idempotency.

", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", "smithy.api#idempotencyToken": {} } } @@ -21025,101 +21899,135 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateVpc": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateVpcRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateVpcResult" - }, - "traits": { - "smithy.api#documentation": "

Creates a VPC with the specified CIDR blocks. For more information, see IP addressing for your VPCs and subnets in the \n Amazon VPC User Guide.

\n

You can optionally request an IPv6 CIDR block for the VPC. You can request an\n Amazon-provided IPv6 CIDR block from Amazon's pool of IPv6 addresses or an IPv6 CIDR\n block from an IPv6 address pool that you provisioned through bring your own IP addresses\n (BYOIP).

\n

By default, each instance that you launch in the VPC has the default DHCP options, which\n\t\t\tinclude only a default DNS server that we provide (AmazonProvidedDNS). For more\n\t\t\tinformation, see DHCP option sets in the Amazon VPC User Guide.

\n

You can specify the instance tenancy value for the VPC when you create it. You can't change\n this value for the VPC after you create it. For more information, see Dedicated Instances in the\n Amazon EC2 User Guide.

", - "smithy.api#examples": [ - { - "title": "To create a VPC", - "documentation": "This example creates a VPC with the specified CIDR block.", - "input": { - "CidrBlock": "10.0.0.0/16" - }, - "output": { - "Vpc": { - "InstanceTenancy": "default", - "State": "pending", - "VpcId": "vpc-a01106c2", - "CidrBlock": "10.0.0.0/16", - "DhcpOptionsId": "dopt-7a8b9c2d" - } - } + "com.amazonaws.ec2#CreateTrafficMirrorFilterResult": { + "type": "structure", + "members": { + "TrafficMirrorFilter": { + "target": "com.amazonaws.ec2#TrafficMirrorFilter", + "traits": { + "aws.protocols#ec2QueryName": "TrafficMirrorFilter", + "smithy.api#documentation": "

Information about the Traffic Mirror filter.

", + "smithy.api#xmlName": "trafficMirrorFilter" } - ] - } - }, - "com.amazonaws.ec2#CreateVpcEndpoint": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateVpcEndpointRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateVpcEndpointResult" + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", + "smithy.api#xmlName": "clientToken" + } + } }, "traits": { - "smithy.api#documentation": "

Creates a VPC endpoint. A VPC endpoint provides a private connection between the\n specified VPC and the specified endpoint service. You can use an endpoint service\n provided by Amazon Web Services, an Amazon Web Services Marketplace Partner, or another\n Amazon Web Services account. For more information, see the Amazon Web Services PrivateLink User Guide.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateVpcEndpointConnectionNotification": { + "com.amazonaws.ec2#CreateTrafficMirrorFilterRule": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateVpcEndpointConnectionNotificationRequest" + "target": "com.amazonaws.ec2#CreateTrafficMirrorFilterRuleRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateVpcEndpointConnectionNotificationResult" + "target": "com.amazonaws.ec2#CreateTrafficMirrorFilterRuleResult" }, "traits": { - "smithy.api#documentation": "

Creates a connection notification for a specified VPC endpoint or VPC endpoint\n service. A connection notification notifies you of specific endpoint events. You must\n create an SNS topic to receive notifications. For more information, see Create a Topic in\n the Amazon Simple Notification Service Developer Guide.

\n

You can create a connection notification for interface endpoints only.

" + "smithy.api#documentation": "

Creates a Traffic Mirror filter rule.

\n

A Traffic Mirror rule defines the Traffic Mirror source traffic to mirror.

\n

You need the Traffic Mirror filter ID when you create the rule.

" } }, - "com.amazonaws.ec2#CreateVpcEndpointConnectionNotificationRequest": { + "com.amazonaws.ec2#CreateTrafficMirrorFilterRuleRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "TrafficMirrorFilterId": { + "target": "com.amazonaws.ec2#TrafficMirrorFilterId", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the filter that this rule is associated with.

", + "smithy.api#required": {} } }, - "ServiceId": { - "target": "com.amazonaws.ec2#VpcEndpointServiceId", + "TrafficDirection": { + "target": "com.amazonaws.ec2#TrafficDirection", "traits": { - "smithy.api#documentation": "

The ID of the endpoint service.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The type of traffic.

", + "smithy.api#required": {} } }, - "VpcEndpointId": { - "target": "com.amazonaws.ec2#VpcEndpointId", + "RuleNumber": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The ID of the endpoint.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The number of the Traffic Mirror rule. This number must be unique for each Traffic Mirror rule in a given\n direction. The rules are processed in ascending order by rule number.

", + "smithy.api#required": {} } }, - "ConnectionNotificationArn": { + "RuleAction": { + "target": "com.amazonaws.ec2#TrafficMirrorRuleAction", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The action to take on the filtered traffic.

", + "smithy.api#required": {} + } + }, + "DestinationPortRange": { + "target": "com.amazonaws.ec2#TrafficMirrorPortRangeRequest", + "traits": { + "smithy.api#documentation": "

The destination port range.

" + } + }, + "SourcePortRange": { + "target": "com.amazonaws.ec2#TrafficMirrorPortRangeRequest", + "traits": { + "smithy.api#documentation": "

The source port range.

" + } + }, + "Protocol": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The protocol, for example UDP, to assign to the Traffic Mirror rule.

\n

For information about the protocol value, see Protocol Numbers on the Internet Assigned Numbers Authority (IANA) website.

" + } + }, + "DestinationCidrBlock": { "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ARN of the SNS topic for the notifications.

", + "smithy.api#documentation": "

The destination CIDR block to assign to the Traffic Mirror rule.

", "smithy.api#required": {} } }, - "ConnectionEvents": { - "target": "com.amazonaws.ec2#ValueStringList", + "SourceCidrBlock": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The endpoint events for which to receive notifications. Valid values are\n Accept, Connect, Delete, and\n Reject.

", + "smithy.api#documentation": "

The source CIDR block to assign to the Traffic Mirror rule.

", "smithy.api#required": {} } }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The description of the Traffic Mirror rule.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see How to ensure\n idempotency.

" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

Traffic Mirroring tags specifications.

", + "smithy.api#xmlName": "TagSpecification" } } }, @@ -21127,22 +22035,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateVpcEndpointConnectionNotificationResult": { + "com.amazonaws.ec2#CreateTrafficMirrorFilterRuleResult": { "type": "structure", "members": { - "ConnectionNotification": { - "target": "com.amazonaws.ec2#ConnectionNotification", + "TrafficMirrorFilterRule": { + "target": "com.amazonaws.ec2#TrafficMirrorFilterRule", "traits": { - "aws.protocols#ec2QueryName": "ConnectionNotification", - "smithy.api#documentation": "

Information about the notification.

", - "smithy.api#xmlName": "connectionNotification" + "aws.protocols#ec2QueryName": "TrafficMirrorFilterRule", + "smithy.api#documentation": "

The Traffic Mirror rule.

", + "smithy.api#xmlName": "trafficMirrorFilterRule" } }, "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request.

", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", "smithy.api#xmlName": "clientToken" } } @@ -21151,100 +22059,89 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateVpcEndpointRequest": { + "com.amazonaws.ec2#CreateTrafficMirrorSession": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateTrafficMirrorSessionRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateTrafficMirrorSessionResult" + }, + "traits": { + "smithy.api#documentation": "

Creates a Traffic Mirror session.

\n

A Traffic Mirror session actively copies packets from a Traffic Mirror source to a Traffic Mirror target. Create a filter, and then assign it\n to the session to define a subset of the traffic to mirror, for example all TCP\n traffic.

\n

The Traffic Mirror source and the Traffic Mirror target (monitoring appliances) can be in the same VPC, or in a different VPC connected via VPC peering or a transit gateway.

\n

By default, no traffic is mirrored. Use CreateTrafficMirrorFilter to\n create filter rules that specify the traffic to mirror.

" + } + }, + "com.amazonaws.ec2#CreateTrafficMirrorSessionRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "VpcEndpointType": { - "target": "com.amazonaws.ec2#VpcEndpointType", + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", "traits": { - "smithy.api#documentation": "

The type of endpoint.

\n

Default: Gateway

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the source network interface.

", + "smithy.api#required": {} } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "TrafficMirrorTargetId": { + "target": "com.amazonaws.ec2#TrafficMirrorTargetId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#documentation": "

The ID of the Traffic Mirror target.

", "smithy.api#required": {} } }, - "ServiceName": { - "target": "com.amazonaws.ec2#String", + "TrafficMirrorFilterId": { + "target": "com.amazonaws.ec2#TrafficMirrorFilterId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The name of the endpoint service.

", + "smithy.api#documentation": "

The ID of the Traffic Mirror filter.

", "smithy.api#required": {} } }, - "PolicyDocument": { - "target": "com.amazonaws.ec2#String", + "PacketLength": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

(Interface and gateway endpoints) A policy to attach to the endpoint that controls access to the\n service. The policy must be in valid JSON format. If this parameter is not specified, we\n attach a default policy that allows full access to the service.

" + "smithy.api#documentation": "

The number of bytes in each packet to mirror. These are bytes after the VXLAN header. Do\n not specify this parameter when you want to mirror the entire packet. To mirror a subset of\n the packet, set this to the length (in bytes) that you want to mirror. For example, if you\n set this value to 100, then the first 100 bytes that meet the filter criteria are copied to\n the target.

\n

If you do not want to mirror the entire packet, use the PacketLength parameter to specify the number of bytes in each packet to mirror.

\n

For sessions with Network Load Balancer (NLB) Traffic Mirror targets the default PacketLength will be set to 8500. Valid values are 1-8500. Setting a PacketLength greater than 8500 will result in an error response.

" } }, - "RouteTableIds": { - "target": "com.amazonaws.ec2#VpcEndpointRouteTableIdList", + "SessionNumber": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

(Gateway endpoint) The route table IDs.

", - "smithy.api#xmlName": "RouteTableId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The session number determines the order in which sessions are evaluated when an interface is used by multiple sessions. The first session with a matching filter is the one that mirrors the packets.

\n

Valid values are 1-32766.

", + "smithy.api#required": {} } }, - "SubnetIds": { - "target": "com.amazonaws.ec2#VpcEndpointSubnetIdList", + "VirtualNetworkId": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

(Interface and Gateway Load Balancer endpoints) The IDs of the subnets in which to create endpoint\n network interfaces. For a Gateway Load Balancer endpoint, you can specify only one subnet.

", - "smithy.api#xmlName": "SubnetId" + "smithy.api#documentation": "

The VXLAN ID for the Traffic Mirror session. For more information about the VXLAN\n protocol, see RFC 7348. If you do\n not specify a VirtualNetworkId, an account-wide unique ID is chosen at\n random.

" } }, - "SecurityGroupIds": { - "target": "com.amazonaws.ec2#VpcEndpointSecurityGroupIdList", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

(Interface endpoint) The IDs of the security groups to associate with the\n endpoint network interfaces. If this parameter is not specified, we use the default \n security group for the VPC.

", - "smithy.api#xmlName": "SecurityGroupId" + "smithy.api#documentation": "

The description of the Traffic Mirror session.

" } }, - "IpAddressType": { - "target": "com.amazonaws.ec2#IpAddressType", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The IP address type for the endpoint.

" + "smithy.api#documentation": "

The tags to assign to a Traffic Mirror session.

", + "smithy.api#xmlName": "TagSpecification" } }, - "DnsOptions": { - "target": "com.amazonaws.ec2#DnsOptionsSpecification", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The DNS options for the endpoint.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see How to ensure\n idempotency.

" - } - }, - "PrivateDnsEnabled": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

(Interface endpoint) Indicates whether to associate a private hosted zone with the\n specified VPC. The private hosted zone contains a record set for the default public DNS\n name for the service for the Region (for example,\n kinesis.us-east-1.amazonaws.com), which resolves to the private IP\n addresses of the endpoint network interfaces in the VPC. This enables you to make\n requests to the default public DNS name for the service instead of the public DNS names\n that are automatically generated by the VPC endpoint service.

\n

To use a private hosted zone, you must set the following VPC attributes to\n true: enableDnsHostnames and\n enableDnsSupport. Use ModifyVpcAttribute to set the VPC\n attributes.

\n

Default: true\n

" - } - }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", - "traits": { - "smithy.api#documentation": "

The tags to associate with the endpoint.

", - "smithy.api#xmlName": "TagSpecification" - } - }, - "SubnetConfigurations": { - "target": "com.amazonaws.ec2#SubnetConfigurationsList", - "traits": { - "smithy.api#documentation": "

The subnet configurations for the endpoint.

", - "smithy.api#xmlName": "SubnetConfiguration" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", + "smithy.api#idempotencyToken": {} } } }, @@ -21252,22 +22149,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateVpcEndpointResult": { + "com.amazonaws.ec2#CreateTrafficMirrorSessionResult": { "type": "structure", "members": { - "VpcEndpoint": { - "target": "com.amazonaws.ec2#VpcEndpoint", + "TrafficMirrorSession": { + "target": "com.amazonaws.ec2#TrafficMirrorSession", "traits": { - "aws.protocols#ec2QueryName": "VpcEndpoint", - "smithy.api#documentation": "

Information about the endpoint.

", - "smithy.api#xmlName": "vpcEndpoint" + "aws.protocols#ec2QueryName": "TrafficMirrorSession", + "smithy.api#documentation": "

Information about the Traffic Mirror session.

", + "smithy.api#xmlName": "trafficMirrorSession" } }, "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request.

", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", "smithy.api#xmlName": "clientToken" } } @@ -21276,71 +22173,63 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateVpcEndpointServiceConfiguration": { + "com.amazonaws.ec2#CreateTrafficMirrorTarget": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateVpcEndpointServiceConfigurationRequest" + "target": "com.amazonaws.ec2#CreateTrafficMirrorTargetRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateVpcEndpointServiceConfigurationResult" + "target": "com.amazonaws.ec2#CreateTrafficMirrorTargetResult" }, "traits": { - "smithy.api#documentation": "

Creates a VPC endpoint service to which service consumers (Amazon Web Services accounts,\n users, and IAM roles) can connect.

\n

Before you create an endpoint service, you must create one of the following for your service:

\n \n

If you set the private DNS name, you must prove that you own the private DNS domain\n name.

\n

For more information, see the Amazon Web Services PrivateLink \n\t Guide.

" + "smithy.api#documentation": "

Creates a target for your Traffic Mirror session.

\n

A Traffic Mirror target is the destination for mirrored traffic. The Traffic Mirror source and\n the Traffic Mirror target (monitoring appliances) can be in the same VPC, or in\n different VPCs connected via VPC peering or a transit gateway.

\n

A Traffic Mirror target can be a network interface, a Network Load Balancer, or a Gateway Load Balancer endpoint.

\n

To use the target in a Traffic Mirror session, use CreateTrafficMirrorSession.

" } }, - "com.amazonaws.ec2#CreateVpcEndpointServiceConfigurationRequest": { + "com.amazonaws.ec2#CreateTrafficMirrorTargetRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "AcceptanceRequired": { - "target": "com.amazonaws.ec2#Boolean", + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", "traits": { - "smithy.api#documentation": "

Indicates whether requests from service consumers to create an endpoint to your service must\n be accepted manually.

" + "smithy.api#documentation": "

The network interface ID that is associated with the target.

" } }, - "PrivateDnsName": { + "NetworkLoadBalancerArn": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

(Interface endpoint configuration) The private DNS name to assign to the VPC endpoint service.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Network Load Balancer that is associated with the target.

" } }, - "NetworkLoadBalancerArns": { - "target": "com.amazonaws.ec2#ValueStringList", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The Amazon Resource Names (ARNs) of the Network Load Balancers.

", - "smithy.api#xmlName": "NetworkLoadBalancerArn" + "smithy.api#documentation": "

The description of the Traffic Mirror target.

" } }, - "GatewayLoadBalancerArns": { - "target": "com.amazonaws.ec2#ValueStringList", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The Amazon Resource Names (ARNs) of the Gateway Load Balancers.

", - "smithy.api#xmlName": "GatewayLoadBalancerArn" + "smithy.api#documentation": "

The tags to assign to the Traffic Mirror target.

", + "smithy.api#xmlName": "TagSpecification" } }, - "SupportedIpAddressTypes": { - "target": "com.amazonaws.ec2#ValueStringList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The supported IP address types. The possible values are ipv4 and ipv6.

", - "smithy.api#xmlName": "SupportedIpAddressType" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.\n For more information, see How to ensure\n idempotency.

" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", + "smithy.api#idempotencyToken": {} } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "GatewayLoadBalancerEndpointId": { + "target": "com.amazonaws.ec2#VpcEndpointId", "traits": { - "smithy.api#documentation": "

The tags to associate with the service.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

The ID of the Gateway Load Balancer endpoint.

" } } }, @@ -21348,22 +22237,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateVpcEndpointServiceConfigurationResult": { + "com.amazonaws.ec2#CreateTrafficMirrorTargetResult": { "type": "structure", "members": { - "ServiceConfiguration": { - "target": "com.amazonaws.ec2#ServiceConfiguration", + "TrafficMirrorTarget": { + "target": "com.amazonaws.ec2#TrafficMirrorTarget", "traits": { - "aws.protocols#ec2QueryName": "ServiceConfiguration", - "smithy.api#documentation": "

Information about the service configuration.

", - "smithy.api#xmlName": "serviceConfiguration" + "aws.protocols#ec2QueryName": "TrafficMirrorTarget", + "smithy.api#documentation": "

Information about the Traffic Mirror target.

", + "smithy.api#xmlName": "trafficMirrorTarget" } }, "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request.

", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

", "smithy.api#xmlName": "clientToken" } } @@ -21372,82 +22261,108 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateVpcPeeringConnection": { + "com.amazonaws.ec2#CreateTransitGateway": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateVpcPeeringConnectionRequest" + "target": "com.amazonaws.ec2#CreateTransitGatewayRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateVpcPeeringConnectionResult" + "target": "com.amazonaws.ec2#CreateTransitGatewayResult" }, "traits": { - "smithy.api#documentation": "

Requests a VPC peering connection between two VPCs: a requester VPC that you own and\n\t\t an accepter VPC with which to create the connection. The accepter VPC can belong to\n\t\t another Amazon Web Services account and can be in a different Region to the requester VPC. \n The requester VPC and accepter VPC cannot have overlapping CIDR blocks.

\n \n

Limitations and rules apply to a VPC peering connection. For more information, see \n the limitations section in the VPC Peering Guide.

\n
\n

The owner of the accepter VPC must accept the peering request to activate the peering\n connection. The VPC peering connection request expires after 7 days, after which it\n cannot be accepted or rejected.

\n

If you create a VPC peering connection request between VPCs with overlapping CIDR\n blocks, the VPC peering connection has a status of failed.

" + "smithy.api#documentation": "

Creates a transit gateway.

\n

You can use a transit gateway to interconnect your virtual private clouds (VPC) and on-premises networks.\n After the transit gateway enters the available state, you can attach your VPCs and VPN\n connections to the transit gateway.

\n

To attach your VPCs, use CreateTransitGatewayVpcAttachment.

\n

To attach a VPN connection, use CreateCustomerGateway to create a customer \n gateway and specify the ID of the customer gateway and the ID of the transit gateway in a call to\n CreateVpnConnection.

\n

When you create a transit gateway, we create a default transit gateway route table and use it as the default association route table\n and the default propagation route table. You can use CreateTransitGatewayRouteTable to create\n additional transit gateway route tables. If you disable automatic route propagation, we do not create a default transit gateway route table. \n You can use EnableTransitGatewayRouteTablePropagation to propagate routes from a resource \n attachment to a transit gateway route table. If you disable automatic associations, you can use AssociateTransitGatewayRouteTable to associate a resource attachment with a transit gateway route table.

" } }, - "com.amazonaws.ec2#CreateVpcPeeringConnectionRequest": { + "com.amazonaws.ec2#CreateTransitGatewayConnect": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateTransitGatewayConnectRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateTransitGatewayConnectResult" + }, + "traits": { + "smithy.api#documentation": "

Creates a Connect attachment from a specified transit gateway attachment. A Connect attachment is a GRE-based tunnel attachment that you can use to establish a connection between a transit gateway and an appliance.

\n

A Connect attachment uses an existing VPC or Amazon Web Services Direct Connect attachment as the underlying transport mechanism.

" + } + }, + "com.amazonaws.ec2#CreateTransitGatewayConnectPeer": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateTransitGatewayConnectPeerRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateTransitGatewayConnectPeerResult" + }, + "traits": { + "smithy.api#documentation": "

Creates a Connect peer for a specified transit gateway Connect attachment between a\n transit gateway and an appliance.

\n

The peer address and transit gateway address must be the same IP address family (IPv4 or IPv6).

\n

For more information, see Connect peers\n in the Amazon Web Services Transit Gateways Guide.

" + } + }, + "com.amazonaws.ec2#CreateTransitGatewayConnectPeerRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Connect attachment.

", + "smithy.api#required": {} } }, - "PeerOwnerId": { + "TransitGatewayAddress": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PeerOwnerId", - "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the accepter VPC.

\n

Default: Your Amazon Web Services account ID

", - "smithy.api#xmlName": "peerOwnerId" + "smithy.api#documentation": "

The peer IP address (GRE outer IP address) on the transit gateway side of the Connect peer, which must be\n specified from a transit gateway CIDR block. If not specified, Amazon automatically assigns\n the first available IP address from the transit gateway CIDR block.

" } }, - "PeerVpcId": { + "PeerAddress": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PeerVpcId", - "smithy.api#documentation": "

The ID of the VPC with which you are creating the VPC peering connection. You must\n\t\t\tspecify this parameter in the request.

", - "smithy.api#xmlName": "peerVpcId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The peer IP address (GRE outer IP address) on the appliance side of the Connect peer.

", + "smithy.api#required": {} } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "BgpOptions": { + "target": "com.amazonaws.ec2#TransitGatewayConnectRequestBgpOptions", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the requester VPC. You must specify this parameter in the\n\t\t\trequest.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "vpcId" + "smithy.api#documentation": "

The BGP options for the Connect peer.

" } }, - "PeerRegion": { - "target": "com.amazonaws.ec2#String", + "InsideCidrBlocks": { + "target": "com.amazonaws.ec2#InsideCidrBlocksStringList", "traits": { - "smithy.api#documentation": "

The Region code for the accepter VPC, if the accepter VPC is located in a Region\n other than the Region in which you make the request.

\n

Default: The Region in which you make the request.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The range of inside IP addresses that are used for BGP peering. You must specify a\n size /29 IPv4 CIDR block from the 169.254.0.0/16 range. The first address\n from the range must be configured on the appliance as the BGP IP address. You can also\n optionally specify a size /125 IPv6 CIDR block from the fd00::/8\n range.

", + "smithy.api#required": {} } }, "TagSpecifications": { "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The tags to assign to the peering connection.

", + "smithy.api#documentation": "

The tags to apply to the Connect peer.

", "smithy.api#xmlName": "TagSpecification" } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateVpcPeeringConnectionResult": { + "com.amazonaws.ec2#CreateTransitGatewayConnectPeerResult": { "type": "structure", "members": { - "VpcPeeringConnection": { - "target": "com.amazonaws.ec2#VpcPeeringConnection", + "TransitGatewayConnectPeer": { + "target": "com.amazonaws.ec2#TransitGatewayConnectPeer", "traits": { - "aws.protocols#ec2QueryName": "VpcPeeringConnection", - "smithy.api#documentation": "

Information about the VPC peering connection.

", - "smithy.api#xmlName": "vpcPeeringConnection" + "aws.protocols#ec2QueryName": "TransitGatewayConnectPeer", + "smithy.api#documentation": "

Information about the Connect peer.

", + "smithy.api#xmlName": "transitGatewayConnectPeer" } } }, @@ -21455,102 +22370,68 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateVpcRequest": { + "com.amazonaws.ec2#CreateTransitGatewayConnectRequest": { "type": "structure", "members": { - "CidrBlock": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The IPv4 network range for the VPC, in CIDR notation. For example,\n\t\t 10.0.0.0/16. We modify the specified CIDR block to its canonical form; for example, if you specify 100.68.0.18/18, we modify it to 100.68.0.0/18.

" - } - }, - "AmazonProvidedIpv6CidrBlock": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "AmazonProvidedIpv6CidrBlock", - "smithy.api#documentation": "

Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC.\n You cannot specify the range of IP addresses, or the size of the CIDR block.

", - "smithy.api#xmlName": "amazonProvidedIpv6CidrBlock" - } - }, - "Ipv6Pool": { - "target": "com.amazonaws.ec2#Ipv6PoolEc2Id", - "traits": { - "smithy.api#documentation": "

The ID of an IPv6 address pool from which to allocate the IPv6 CIDR block.

" - } - }, - "Ipv6CidrBlock": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The IPv6 CIDR block from the IPv6 address pool. You must also specify Ipv6Pool in the request.

\n

To let Amazon choose the IPv6 CIDR block for you, omit this parameter.

" - } - }, - "Ipv4IpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", - "traits": { - "smithy.api#documentation": "

The ID of an IPv4 IPAM pool you want to use for allocating this VPC's CIDR. For more information, see What is IPAM? in the Amazon VPC IPAM User Guide.\n \n

" - } - }, - "Ipv4NetmaskLength": { - "target": "com.amazonaws.ec2#NetmaskLength", + "TransportTransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", "traits": { - "smithy.api#documentation": "

The netmask length of the IPv4 CIDR you want to allocate to this VPC from an Amazon VPC IP Address Manager (IPAM) pool. For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway attachment. You can specify a VPC attachment or Amazon Web Services Direct Connect attachment.

", + "smithy.api#required": {} } }, - "Ipv6IpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", + "Options": { + "target": "com.amazonaws.ec2#CreateTransitGatewayConnectRequestOptions", "traits": { - "smithy.api#documentation": "

The ID of an IPv6 IPAM pool which will be used to allocate this VPC an IPv6 CIDR. IPAM is a VPC feature that you can use to automate your IP address management workflows including assigning, tracking, troubleshooting, and auditing IP addresses across Amazon Web Services Regions and accounts throughout your Amazon Web Services Organization. For more information, see What is IPAM? in the Amazon VPC IPAM User Guide.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The Connect attachment options.

", + "smithy.api#required": {} } }, - "Ipv6NetmaskLength": { - "target": "com.amazonaws.ec2#NetmaskLength", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The netmask length of the IPv6 CIDR you want to allocate to this VPC from an Amazon VPC IP Address Manager (IPAM) pool. For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide.

" + "smithy.api#documentation": "

The tags to apply to the Connect attachment.

", + "smithy.api#xmlName": "TagSpecification" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" - } - }, - "InstanceTenancy": { - "target": "com.amazonaws.ec2#Tenancy", - "traits": { - "aws.protocols#ec2QueryName": "InstanceTenancy", - "smithy.api#documentation": "

The tenancy options for instances launched into the VPC. For default, instances\n are launched with shared tenancy by default. You can launch instances with any tenancy into a\n shared tenancy VPC. For dedicated, instances are launched as dedicated tenancy\n instances by default. You can only launch instances with a tenancy of dedicated\n or host into a dedicated tenancy VPC.

\n

\n Important: The host value cannot be used with this parameter. Use the default or dedicated values only.

\n

Default: default\n

", - "smithy.api#xmlName": "instanceTenancy" - } - }, - "Ipv6CidrBlockNetworkBorderGroup": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The name of the location from which we advertise the IPV6 CIDR block. Use this parameter to limit the address to this location.

\n

You must set AmazonProvidedIpv6CidrBlock to true to use this parameter.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#CreateTransitGatewayConnectRequestOptions": { + "type": "structure", + "members": { + "Protocol": { + "target": "com.amazonaws.ec2#ProtocolValue", "traits": { - "smithy.api#documentation": "

The tags to assign to the VPC.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The tunnel protocol.

", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

The options for a Connect attachment.

" } }, - "com.amazonaws.ec2#CreateVpcResult": { + "com.amazonaws.ec2#CreateTransitGatewayConnectResult": { "type": "structure", "members": { - "Vpc": { - "target": "com.amazonaws.ec2#Vpc", + "TransitGatewayConnect": { + "target": "com.amazonaws.ec2#TransitGatewayConnect", "traits": { - "aws.protocols#ec2QueryName": "Vpc", - "smithy.api#documentation": "

Information about the VPC.

", - "smithy.api#xmlName": "vpc" + "aws.protocols#ec2QueryName": "TransitGatewayConnect", + "smithy.api#documentation": "

Information about the Connect attachment.

", + "smithy.api#xmlName": "transitGatewayConnect" } } }, @@ -21558,680 +22439,665 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateVpnConnection": { + "com.amazonaws.ec2#CreateTransitGatewayMulticastDomain": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateVpnConnectionRequest" + "target": "com.amazonaws.ec2#CreateTransitGatewayMulticastDomainRequest" }, "output": { - "target": "com.amazonaws.ec2#CreateVpnConnectionResult" + "target": "com.amazonaws.ec2#CreateTransitGatewayMulticastDomainResult" }, "traits": { - "smithy.api#documentation": "

Creates a VPN connection between an existing virtual private gateway or transit\n gateway and a customer gateway. The supported connection type is\n ipsec.1.

\n

The response includes information that you need to give to your network administrator\n to configure your customer gateway.

\n \n

We strongly recommend that you use HTTPS when calling this operation because the\n response contains sensitive cryptographic information for configuring your customer\n gateway device.

\n
\n

If you decide to shut down your VPN connection for any reason and later create a new\n VPN connection, you must reconfigure your customer gateway with the new information\n returned from this call.

\n

This is an idempotent operation. If you perform the operation more than once, Amazon\n EC2 doesn't return an error.

\n

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN\n User Guide.

" + "smithy.api#documentation": "

Creates a multicast domain using the specified transit gateway.

\n

The transit gateway must be in the available state before you create a domain. Use DescribeTransitGateways to see the state of transit gateway.

" } }, - "com.amazonaws.ec2#CreateVpnConnectionRequest": { + "com.amazonaws.ec2#CreateTransitGatewayMulticastDomainRequest": { "type": "structure", "members": { - "CustomerGatewayId": { - "target": "com.amazonaws.ec2#CustomerGatewayId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the customer gateway.

", - "smithy.api#required": {} - } - }, - "Type": { - "target": "com.amazonaws.ec2#String", + "TransitGatewayId": { + "target": "com.amazonaws.ec2#TransitGatewayId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of VPN connection (ipsec.1).

", + "smithy.api#documentation": "

The ID of the transit gateway.

", "smithy.api#required": {} } }, - "VpnGatewayId": { - "target": "com.amazonaws.ec2#VpnGatewayId", + "Options": { + "target": "com.amazonaws.ec2#CreateTransitGatewayMulticastDomainRequestOptions", "traits": { - "smithy.api#documentation": "

The ID of the virtual private gateway. If you specify a virtual private gateway, you\n cannot specify a transit gateway.

" + "smithy.api#documentation": "

The options for the transit gateway multicast domain.

" } }, - "TransitGatewayId": { - "target": "com.amazonaws.ec2#TransitGatewayId", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The ID of the transit gateway. If you specify a transit gateway, you cannot specify a virtual private\n gateway.

" + "smithy.api#documentation": "

The tags for the transit gateway multicast domain.

", + "smithy.api#xmlName": "TagSpecification" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#CreateTransitGatewayMulticastDomainRequestOptions": { + "type": "structure", + "members": { + "Igmpv2Support": { + "target": "com.amazonaws.ec2#Igmpv2SupportValue", + "traits": { + "smithy.api#documentation": "

Specify whether to enable Internet Group Management Protocol (IGMP) version 2 for the transit gateway multicast domain.

" } }, - "Options": { - "target": "com.amazonaws.ec2#VpnConnectionOptionsSpecification", + "StaticSourcesSupport": { + "target": "com.amazonaws.ec2#StaticSourcesSupportValue", "traits": { - "aws.protocols#ec2QueryName": "Options", - "smithy.api#documentation": "

The options for the VPN connection.

", - "smithy.api#xmlName": "options" + "smithy.api#documentation": "

Specify whether to enable support for statically configuring multicast group sources for a domain.

" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "AutoAcceptSharedAssociations": { + "target": "com.amazonaws.ec2#AutoAcceptSharedAssociationsValue", "traits": { - "smithy.api#documentation": "

The tags to apply to the VPN connection.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

Indicates whether to automatically accept cross-account subnet associations that are associated with the transit gateway multicast domain.

" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for CreateVpnConnection.

", - "smithy.api#input": {} + "smithy.api#documentation": "

The options for the transit gateway multicast domain.

" } }, - "com.amazonaws.ec2#CreateVpnConnectionResult": { + "com.amazonaws.ec2#CreateTransitGatewayMulticastDomainResult": { "type": "structure", "members": { - "VpnConnection": { - "target": "com.amazonaws.ec2#VpnConnection", + "TransitGatewayMulticastDomain": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastDomain", "traits": { - "aws.protocols#ec2QueryName": "VpnConnection", - "smithy.api#documentation": "

Information about the VPN connection.

", - "smithy.api#xmlName": "vpnConnection" + "aws.protocols#ec2QueryName": "TransitGatewayMulticastDomain", + "smithy.api#documentation": "

Information about the transit gateway multicast domain.

", + "smithy.api#xmlName": "transitGatewayMulticastDomain" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of CreateVpnConnection.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreateVpnConnectionRoute": { + "com.amazonaws.ec2#CreateTransitGatewayPeeringAttachment": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#CreateVpnConnectionRouteRequest" + "target": "com.amazonaws.ec2#CreateTransitGatewayPeeringAttachmentRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.ec2#CreateTransitGatewayPeeringAttachmentResult" }, "traits": { - "smithy.api#documentation": "

Creates a static route associated with a VPN connection between an existing virtual\n private gateway and a VPN customer gateway. The static route allows traffic to be routed\n from the virtual private gateway to the VPN customer gateway.

\n

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN\n User Guide.

" + "smithy.api#documentation": "

Requests a transit gateway peering attachment between the specified transit gateway\n (requester) and a peer transit gateway (accepter). The peer transit gateway can be in \n your account or a different Amazon Web Services account.

\n

After you create the peering attachment, the owner of the accepter transit gateway \n must accept the attachment request.

" } }, - "com.amazonaws.ec2#CreateVpnConnectionRouteRequest": { + "com.amazonaws.ec2#CreateTransitGatewayPeeringAttachmentRequest": { "type": "structure", "members": { - "DestinationCidrBlock": { - "target": "com.amazonaws.ec2#String", + "TransitGatewayId": { + "target": "com.amazonaws.ec2#TransitGatewayId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The CIDR block associated with the local subnet of the customer network.

", + "smithy.api#documentation": "

The ID of the transit gateway.

", "smithy.api#required": {} } }, - "VpnConnectionId": { - "target": "com.amazonaws.ec2#VpnConnectionId", + "PeerTransitGatewayId": { + "target": "com.amazonaws.ec2#TransitAssociationGatewayId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPN connection.

", + "smithy.api#documentation": "

The ID of the peer transit gateway with which to create the peering attachment.

", "smithy.api#required": {} } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the parameters for CreateVpnConnectionRoute.

", - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#CreateVpnGateway": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#CreateVpnGatewayRequest" - }, - "output": { - "target": "com.amazonaws.ec2#CreateVpnGatewayResult" - }, - "traits": { - "smithy.api#documentation": "

Creates a virtual private gateway. A virtual private gateway is the endpoint on the\n VPC side of your VPN connection. You can create a virtual private gateway before\n creating the VPC itself.

\n

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN\n User Guide.

" - } - }, - "com.amazonaws.ec2#CreateVpnGatewayRequest": { - "type": "structure", - "members": { - "AvailabilityZone": { + }, + "PeerAccountId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The Availability Zone for the virtual private gateway.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the peer transit gateway.

", + "smithy.api#required": {} } }, - "Type": { - "target": "com.amazonaws.ec2#GatewayType", + "PeerRegion": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of VPN connection this virtual private gateway supports.

", + "smithy.api#documentation": "

The Region where the peer transit gateway is located.

", "smithy.api#required": {} } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "Options": { + "target": "com.amazonaws.ec2#CreateTransitGatewayPeeringAttachmentRequestOptions", "traits": { - "smithy.api#documentation": "

The tags to apply to the virtual private gateway.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

Requests a transit gateway peering attachment.

" } }, - "AmazonSideAsn": { - "target": "com.amazonaws.ec2#Long", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

A private Autonomous System Number (ASN) for the Amazon side of a BGP session. If\n you're using a 16-bit ASN, it must be in the 64512 to 65534 range. If you're using a\n 32-bit ASN, it must be in the 4200000000 to 4294967294 range.

\n

Default: 64512

" + "smithy.api#documentation": "

The tags to apply to the transit gateway peering attachment.

", + "smithy.api#xmlName": "TagSpecification" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for CreateVpnGateway.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#CreateVpnGatewayResult": { + "com.amazonaws.ec2#CreateTransitGatewayPeeringAttachmentRequestOptions": { "type": "structure", "members": { - "VpnGateway": { - "target": "com.amazonaws.ec2#VpnGateway", + "DynamicRouting": { + "target": "com.amazonaws.ec2#DynamicRoutingValue", "traits": { - "aws.protocols#ec2QueryName": "VpnGateway", - "smithy.api#documentation": "

Information about the virtual private gateway.

", - "smithy.api#xmlName": "vpnGateway" + "smithy.api#documentation": "

Indicates whether dynamic routing is enabled or disabled.

" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of CreateVpnGateway.

", - "smithy.api#output": {} + "smithy.api#documentation": "

Describes whether dynamic routing is enabled or disabled for the transit gateway peering request.

" } }, - "com.amazonaws.ec2#CreditSpecification": { + "com.amazonaws.ec2#CreateTransitGatewayPeeringAttachmentResult": { "type": "structure", "members": { - "CpuCredits": { - "target": "com.amazonaws.ec2#String", + "TransitGatewayPeeringAttachment": { + "target": "com.amazonaws.ec2#TransitGatewayPeeringAttachment", "traits": { - "aws.protocols#ec2QueryName": "CpuCredits", - "smithy.api#documentation": "

The credit option for CPU usage of a T instance.

\n

Valid values: standard | unlimited\n

", - "smithy.api#xmlName": "cpuCredits" + "aws.protocols#ec2QueryName": "TransitGatewayPeeringAttachment", + "smithy.api#documentation": "

The transit gateway peering attachment.

", + "smithy.api#xmlName": "transitGatewayPeeringAttachment" } } }, "traits": { - "smithy.api#documentation": "

Describes the credit option for CPU usage of a T instance.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#CreditSpecificationRequest": { + "com.amazonaws.ec2#CreateTransitGatewayPolicyTable": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateTransitGatewayPolicyTableRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateTransitGatewayPolicyTableResult" + }, + "traits": { + "smithy.api#documentation": "

Creates a transit gateway policy table.

" + } + }, + "com.amazonaws.ec2#CreateTransitGatewayPolicyTableRequest": { "type": "structure", "members": { - "CpuCredits": { - "target": "com.amazonaws.ec2#String", + "TransitGatewayId": { + "target": "com.amazonaws.ec2#TransitGatewayId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The credit option for CPU usage of a T instance.

\n

Valid values: standard | unlimited\n

", + "smithy.api#documentation": "

The ID of the transit gateway used for the policy table.

", "smithy.api#required": {} } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags specification for the transit gateway policy table created during the request.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } } }, "traits": { - "smithy.api#documentation": "

The credit option for CPU usage of a T instance.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#CurrencyCodeValues": { - "type": "enum", + "com.amazonaws.ec2#CreateTransitGatewayPolicyTableResult": { + "type": "structure", "members": { - "USD": { - "target": "smithy.api#Unit", + "TransitGatewayPolicyTable": { + "target": "com.amazonaws.ec2#TransitGatewayPolicyTable", "traits": { - "smithy.api#enumValue": "USD" + "aws.protocols#ec2QueryName": "TransitGatewayPolicyTable", + "smithy.api#documentation": "

Describes the created transit gateway policy table.

", + "smithy.api#xmlName": "transitGatewayPolicyTable" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#CurrentGenerationFlag": { - "type": "boolean" + "com.amazonaws.ec2#CreateTransitGatewayPrefixListReference": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateTransitGatewayPrefixListReferenceRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateTransitGatewayPrefixListReferenceResult" + }, + "traits": { + "smithy.api#documentation": "

Creates a reference (route) to a prefix list in a specified transit gateway route table.

" + } }, - "com.amazonaws.ec2#CustomerGateway": { + "com.amazonaws.ec2#CreateTransitGatewayPrefixListReferenceRequest": { "type": "structure", "members": { - "BgpAsn": { - "target": "com.amazonaws.ec2#String", + "TransitGatewayRouteTableId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", "traits": { - "aws.protocols#ec2QueryName": "BgpAsn", - "smithy.api#documentation": "

The customer gateway device's Border Gateway Protocol (BGP) Autonomous System Number\n (ASN).

\n

Valid values: 1 to 2,147,483,647\n

", - "smithy.api#xmlName": "bgpAsn" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway route table.

", + "smithy.api#required": {} } }, - "CustomerGatewayId": { - "target": "com.amazonaws.ec2#String", + "PrefixListId": { + "target": "com.amazonaws.ec2#PrefixListResourceId", "traits": { - "aws.protocols#ec2QueryName": "CustomerGatewayId", - "smithy.api#documentation": "

The ID of the customer gateway.

", - "smithy.api#xmlName": "customerGatewayId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the prefix list that is used for destination matches.

", + "smithy.api#required": {} } }, - "IpAddress": { - "target": "com.amazonaws.ec2#String", + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", "traits": { - "aws.protocols#ec2QueryName": "IpAddress", - "smithy.api#documentation": "

\n IPv4 address for the customer gateway device's outside interface. The address must be static. If OutsideIpAddressType in your VPN connection options is set to PrivateIpv4, you can use an RFC6598 or RFC1918 private IPv4 address. If OutsideIpAddressType is set to PublicIpv4, you can use a public IPv4 address.\n

", - "smithy.api#xmlName": "ipAddress" + "smithy.api#documentation": "

The ID of the attachment to which traffic is routed.

" } }, - "CertificateArn": { - "target": "com.amazonaws.ec2#String", + "Blackhole": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "CertificateArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the customer gateway certificate.

", - "smithy.api#xmlName": "certificateArn" + "smithy.api#documentation": "

Indicates whether to drop traffic that matches this route.

" } }, - "State": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The current state of the customer gateway (pending | available | deleting |\n deleted).

", - "smithy.api#xmlName": "state" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "Type": { + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#CreateTransitGatewayPrefixListReferenceResult": { + "type": "structure", + "members": { + "TransitGatewayPrefixListReference": { + "target": "com.amazonaws.ec2#TransitGatewayPrefixListReference", + "traits": { + "aws.protocols#ec2QueryName": "TransitGatewayPrefixListReference", + "smithy.api#documentation": "

Information about the prefix list reference.

", + "smithy.api#xmlName": "transitGatewayPrefixListReference" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#CreateTransitGatewayRequest": { + "type": "structure", + "members": { + "Description": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Type", - "smithy.api#documentation": "

The type of VPN connection the customer gateway supports\n (ipsec.1).

", - "smithy.api#xmlName": "type" + "smithy.api#documentation": "

A description of the transit gateway.

" } }, - "DeviceName": { - "target": "com.amazonaws.ec2#String", + "Options": { + "target": "com.amazonaws.ec2#TransitGatewayRequestOptions", "traits": { - "aws.protocols#ec2QueryName": "DeviceName", - "smithy.api#documentation": "

The name of customer gateway device.

", - "smithy.api#xmlName": "deviceName" + "smithy.api#documentation": "

The transit gateway options.

" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the customer gateway.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#documentation": "

The tags to apply to the transit gateway.

", + "smithy.api#xmlName": "TagSpecification" } }, - "BgpAsnExtended": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "BgpAsnExtended", - "smithy.api#documentation": "

The customer gateway device's Border Gateway Protocol (BGP) Autonomous System Number\n (ASN).

\n

Valid values: 2,147,483,648 to 4,294,967,295\n

", - "smithy.api#xmlName": "bgpAsnExtended" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Describes a customer gateway.

" - } - }, - "com.amazonaws.ec2#CustomerGatewayId": { - "type": "string" - }, - "com.amazonaws.ec2#CustomerGatewayIdStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#CustomerGatewayId", - "traits": { - "smithy.api#xmlName": "CustomerGatewayId" - } + "smithy.api#input": {} } }, - "com.amazonaws.ec2#CustomerGatewayList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#CustomerGateway", - "traits": { - "smithy.api#xmlName": "item" + "com.amazonaws.ec2#CreateTransitGatewayResult": { + "type": "structure", + "members": { + "TransitGateway": { + "target": "com.amazonaws.ec2#TransitGateway", + "traits": { + "aws.protocols#ec2QueryName": "TransitGateway", + "smithy.api#documentation": "

Information about the transit gateway.

", + "smithy.api#xmlName": "transitGateway" + } } - } - }, - "com.amazonaws.ec2#DITMaxResults": { - "type": "integer", + }, "traits": { - "smithy.api#range": { - "min": 5, - "max": 100 - } + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DITOMaxResults": { - "type": "integer", + "com.amazonaws.ec2#CreateTransitGatewayRoute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateTransitGatewayRouteRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateTransitGatewayRouteResult" + }, "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#DataQueries": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DataQuery" + "smithy.api#documentation": "

Creates a static route for the specified transit gateway route table.

" } }, - "com.amazonaws.ec2#DataQuery": { + "com.amazonaws.ec2#CreateTransitGatewayRouteRequest": { "type": "structure", "members": { - "Id": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

A user-defined ID associated with a data query that's returned in the dataResponse identifying the query. For example, if you set the Id to MyQuery01in the query, the dataResponse identifies the query as MyQuery01.

" - } - }, - "Source": { + "DestinationCidrBlock": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The Region or Availability Zone that's the source for the data query. For example, us-east-1.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The CIDR range used for destination matches. Routing decisions are based on the\n most specific match.

", + "smithy.api#required": {} } }, - "Destination": { - "target": "com.amazonaws.ec2#String", + "TransitGatewayRouteTableId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", "traits": { - "smithy.api#documentation": "

The Region or Availability Zone that's the target for the data query. For example, eu-north-1.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway route table.

", + "smithy.api#required": {} } }, - "Metric": { - "target": "com.amazonaws.ec2#MetricType", + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", "traits": { - "smithy.api#documentation": "

The metric, aggregation-latency, indicating that network latency is aggregated for the query. This is the only supported metric.

" + "smithy.api#documentation": "

The ID of the attachment.

" } }, - "Statistic": { - "target": "com.amazonaws.ec2#StatisticType", + "Blackhole": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The metric data aggregation period, p50, between the specified startDate and endDate. For example, a metric of five_minutes is the median of all the data points gathered within those five minutes. p50 is the only supported metric.

" + "smithy.api#documentation": "

Indicates whether to drop traffic that matches this route.

" } }, - "Period": { - "target": "com.amazonaws.ec2#PeriodType", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The aggregation period used for the data query.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

A query used for retrieving network health data.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DataResponse": { + "com.amazonaws.ec2#CreateTransitGatewayRouteResult": { "type": "structure", "members": { - "Id": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Id", - "smithy.api#documentation": "

The ID passed in the DataQuery.

", - "smithy.api#xmlName": "id" - } - }, - "Source": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Source", - "smithy.api#documentation": "

The Region or Availability Zone that's the source for the data query. For example, us-east-1.

", - "smithy.api#xmlName": "source" - } - }, - "Destination": { - "target": "com.amazonaws.ec2#String", + "Route": { + "target": "com.amazonaws.ec2#TransitGatewayRoute", "traits": { - "aws.protocols#ec2QueryName": "Destination", - "smithy.api#documentation": "

The Region or Availability Zone that's the destination for the data query. For example, eu-west-1.

", - "smithy.api#xmlName": "destination" + "aws.protocols#ec2QueryName": "Route", + "smithy.api#documentation": "

Information about the route.

", + "smithy.api#xmlName": "route" } - }, - "Metric": { - "target": "com.amazonaws.ec2#MetricType", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#CreateTransitGatewayRouteTable": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateTransitGatewayRouteTableRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateTransitGatewayRouteTableResult" + }, + "traits": { + "smithy.api#documentation": "

Creates a route table for the specified transit gateway.

" + } + }, + "com.amazonaws.ec2#CreateTransitGatewayRouteTableAnnouncement": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateTransitGatewayRouteTableAnnouncementRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateTransitGatewayRouteTableAnnouncementResult" + }, + "traits": { + "smithy.api#documentation": "

Advertises a new transit gateway route table.

" + } + }, + "com.amazonaws.ec2#CreateTransitGatewayRouteTableAnnouncementRequest": { + "type": "structure", + "members": { + "TransitGatewayRouteTableId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", "traits": { - "aws.protocols#ec2QueryName": "Metric", - "smithy.api#documentation": "

The metric used for the network performance request. Only aggregate-latency is supported, which shows network latency during a specified period.

", - "smithy.api#xmlName": "metric" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway route table.

", + "smithy.api#required": {} } }, - "Statistic": { - "target": "com.amazonaws.ec2#StatisticType", + "PeeringAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", "traits": { - "aws.protocols#ec2QueryName": "Statistic", - "smithy.api#documentation": "

The statistic used for the network performance request.

", - "smithy.api#xmlName": "statistic" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the peering attachment.

", + "smithy.api#required": {} } }, - "Period": { - "target": "com.amazonaws.ec2#PeriodType", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "aws.protocols#ec2QueryName": "Period", - "smithy.api#documentation": "

The period used for the network performance request.

", - "smithy.api#xmlName": "period" + "smithy.api#documentation": "

The tags specifications applied to the transit gateway route table announcement.

", + "smithy.api#xmlName": "TagSpecification" } }, - "MetricPoints": { - "target": "com.amazonaws.ec2#MetricPoints", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "MetricPointSet", - "smithy.api#documentation": "

A list of MetricPoint objects.

", - "smithy.api#xmlName": "metricPointSet" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

The response to a DataQuery.

" - } - }, - "com.amazonaws.ec2#DataResponses": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DataResponse", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DatafeedSubscriptionState": { - "type": "enum", + "com.amazonaws.ec2#CreateTransitGatewayRouteTableAnnouncementResult": { + "type": "structure", "members": { - "Active": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Active" - } - }, - "Inactive": { - "target": "smithy.api#Unit", + "TransitGatewayRouteTableAnnouncement": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableAnnouncement", "traits": { - "smithy.api#enumValue": "Inactive" + "aws.protocols#ec2QueryName": "TransitGatewayRouteTableAnnouncement", + "smithy.api#documentation": "

Provides details about the transit gateway route table announcement.

", + "smithy.api#xmlName": "transitGatewayRouteTableAnnouncement" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DateTime": { - "type": "timestamp" - }, - "com.amazonaws.ec2#DedicatedHostFlag": { - "type": "boolean" - }, - "com.amazonaws.ec2#DedicatedHostId": { - "type": "string" - }, - "com.amazonaws.ec2#DedicatedHostIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DedicatedHostId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#DefaultInstanceMetadataEndpointState": { - "type": "enum", + "com.amazonaws.ec2#CreateTransitGatewayRouteTableRequest": { + "type": "structure", "members": { - "disabled": { - "target": "smithy.api#Unit", + "TransitGatewayId": { + "target": "com.amazonaws.ec2#TransitGatewayId", "traits": { - "smithy.api#enumValue": "disabled" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway.

", + "smithy.api#required": {} } }, - "enabled": { - "target": "smithy.api#Unit", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#enumValue": "enabled" + "smithy.api#documentation": "

The tags to apply to the transit gateway route table.

" } }, - "no_preference": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "no-preference" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DefaultInstanceMetadataTagsState": { - "type": "enum", + "com.amazonaws.ec2#CreateTransitGatewayRouteTableResult": { + "type": "structure", "members": { - "disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "disabled" - } - }, - "enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "enabled" - } - }, - "no_preference": { - "target": "smithy.api#Unit", + "TransitGatewayRouteTable": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTable", "traits": { - "smithy.api#enumValue": "no-preference" + "aws.protocols#ec2QueryName": "TransitGatewayRouteTable", + "smithy.api#documentation": "

Information about the transit gateway route table.

", + "smithy.api#xmlName": "transitGatewayRouteTable" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DefaultNetworkCardIndex": { - "type": "integer" + "com.amazonaws.ec2#CreateTransitGatewayVpcAttachment": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateTransitGatewayVpcAttachmentRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateTransitGatewayVpcAttachmentResult" + }, + "traits": { + "smithy.api#documentation": "

Attaches the specified VPC to the specified transit gateway.

\n

If you attach a VPC with a CIDR range that overlaps the CIDR range of a VPC that is already attached,\n the new VPC CIDR range is not propagated to the default propagation route table.

\n

To send VPC traffic to an attached transit gateway, add a route to the VPC route table using CreateRoute.

" + } }, - "com.amazonaws.ec2#DefaultRouteTableAssociationValue": { - "type": "enum", + "com.amazonaws.ec2#CreateTransitGatewayVpcAttachmentRequest": { + "type": "structure", "members": { - "enable": { - "target": "smithy.api#Unit", + "TransitGatewayId": { + "target": "com.amazonaws.ec2#TransitGatewayId", "traits": { - "smithy.api#enumValue": "enable" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway.

", + "smithy.api#required": {} } }, - "disable": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "disable" - } - } - } - }, - "com.amazonaws.ec2#DefaultRouteTablePropagationValue": { - "type": "enum", - "members": { - "enable": { - "target": "smithy.api#Unit", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "smithy.api#enumValue": "enable" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#required": {} } }, - "disable": { - "target": "smithy.api#Unit", + "SubnetIds": { + "target": "com.amazonaws.ec2#TransitGatewaySubnetIdList", "traits": { - "smithy.api#enumValue": "disable" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of one or more subnets. You can specify only one subnet per Availability Zone. \n You must specify at least one subnet, but we recommend that you specify two subnets for better availability.\n The transit gateway uses one IP address from each specified subnet.

", + "smithy.api#required": {} } - } - } - }, - "com.amazonaws.ec2#DefaultTargetCapacityType": { - "type": "enum", - "members": { - "SPOT": { - "target": "smithy.api#Unit", + }, + "Options": { + "target": "com.amazonaws.ec2#CreateTransitGatewayVpcAttachmentRequestOptions", "traits": { - "smithy.api#enumValue": "spot" + "smithy.api#documentation": "

The VPC attachment options.

" } }, - "ON_DEMAND": { - "target": "smithy.api#Unit", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#enumValue": "on-demand" + "smithy.api#documentation": "

The tags to apply to the VPC attachment.

" } }, - "CAPACITY_BLOCK": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "capacity-block" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } - } - }, - "com.amazonaws.ec2#DefaultingDhcpOptionsId": { - "type": "string" - }, - "com.amazonaws.ec2#DeleteCarrierGateway": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteCarrierGatewayRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteCarrierGatewayResult" }, "traits": { - "smithy.api#documentation": "

Deletes a carrier gateway.

\n \n

If you do not delete the route that contains the carrier gateway as the\n Target, the route is a blackhole route. For information about how to delete a route, see \n DeleteRoute.

\n
" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteCarrierGatewayRequest": { + "com.amazonaws.ec2#CreateTransitGatewayVpcAttachmentRequestOptions": { "type": "structure", "members": { - "CarrierGatewayId": { - "target": "com.amazonaws.ec2#CarrierGatewayId", + "DnsSupport": { + "target": "com.amazonaws.ec2#DnsSupportValue", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the carrier gateway.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Enable or disable DNS support. The default is enable.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "SecurityGroupReferencingSupport": { + "target": "com.amazonaws.ec2#SecurityGroupReferencingSupportValue", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Enables you to reference a security group across VPCs attached to a transit gateway to simplify security group management.

\n

This option is set to enable by default. However, at the transit gateway level the default is set to disable.

\n

For more information about security group referencing, see Security group referencing in the Amazon Web Services Transit Gateways Guide.

" + } + }, + "Ipv6Support": { + "target": "com.amazonaws.ec2#Ipv6SupportValue", + "traits": { + "smithy.api#documentation": "

Enable or disable IPv6 support. The default is disable.

" + } + }, + "ApplianceModeSupport": { + "target": "com.amazonaws.ec2#ApplianceModeSupportValue", + "traits": { + "smithy.api#documentation": "

Enable or disable support for appliance mode. If enabled, a traffic flow between a source and destination uses the same Availability Zone for the VPC attachment for the lifetime of that flow. The default is disable.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes the options for a VPC attachment.

" } }, - "com.amazonaws.ec2#DeleteCarrierGatewayResult": { + "com.amazonaws.ec2#CreateTransitGatewayVpcAttachmentResult": { "type": "structure", "members": { - "CarrierGateway": { - "target": "com.amazonaws.ec2#CarrierGateway", + "TransitGatewayVpcAttachment": { + "target": "com.amazonaws.ec2#TransitGatewayVpcAttachment", "traits": { - "aws.protocols#ec2QueryName": "CarrierGateway", - "smithy.api#documentation": "

Information about the carrier gateway.

", - "smithy.api#xmlName": "carrierGateway" + "aws.protocols#ec2QueryName": "TransitGatewayVpcAttachment", + "smithy.api#documentation": "

Information about the VPC attachment.

", + "smithy.api#xmlName": "transitGatewayVpcAttachment" } } }, @@ -22239,171 +23105,333 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteClientVpnEndpoint": { + "com.amazonaws.ec2#CreateVerifiedAccessEndpoint": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteClientVpnEndpointRequest" + "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteClientVpnEndpointResult" + "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified Client VPN endpoint. You must disassociate all target networks before you \n\t\t\tcan delete a Client VPN endpoint.

" + "smithy.api#documentation": "

An Amazon Web Services Verified Access endpoint is where you define your application along with an optional endpoint-level access policy.

" } }, - "com.amazonaws.ec2#DeleteClientVpnEndpointRequest": { + "com.amazonaws.ec2#CreateVerifiedAccessEndpointCidrOptions": { "type": "structure", "members": { - "ClientVpnEndpointId": { - "target": "com.amazonaws.ec2#ClientVpnEndpointId", + "Protocol": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointProtocol", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Client VPN to be deleted.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The protocol.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "SubnetIds": { + "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointSubnetIdList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The IDs of the subnets.

", + "smithy.api#xmlName": "SubnetId" + } + }, + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The CIDR.

" + } + }, + "PortRanges": { + "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointPortRangeList", + "traits": { + "smithy.api#documentation": "

The port ranges.

", + "smithy.api#xmlName": "PortRange" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes the CIDR options for a Verified Access endpoint.

" } }, - "com.amazonaws.ec2#DeleteClientVpnEndpointResult": { + "com.amazonaws.ec2#CreateVerifiedAccessEndpointEniOptions": { "type": "structure", "members": { - "Status": { - "target": "com.amazonaws.ec2#ClientVpnEndpointStatus", + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The current state of the Client VPN endpoint.

", - "smithy.api#xmlName": "status" + "smithy.api#documentation": "

The ID of the network interface.

" + } + }, + "Protocol": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointProtocol", + "traits": { + "smithy.api#documentation": "

The IP protocol.

" + } + }, + "Port": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortNumber", + "traits": { + "smithy.api#documentation": "

The IP port number.

" + } + }, + "PortRanges": { + "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointPortRangeList", + "traits": { + "smithy.api#documentation": "

The port ranges.

", + "smithy.api#xmlName": "PortRange" } } }, "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DeleteClientVpnRoute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteClientVpnRouteRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteClientVpnRouteResult" - }, - "traits": { - "smithy.api#documentation": "

Deletes a route from a Client VPN endpoint. You can only delete routes that you manually added using \n\t\t\tthe CreateClientVpnRoute action. You cannot delete routes that were \n\t\t\tautomatically added when associating a subnet. To remove routes that have been automatically added, \n\t\t\tdisassociate the target subnet from the Client VPN endpoint.

" + "smithy.api#documentation": "

Describes the network interface options when creating an Amazon Web Services Verified Access endpoint using the\n network-interface type.

" } }, - "com.amazonaws.ec2#DeleteClientVpnRouteRequest": { + "com.amazonaws.ec2#CreateVerifiedAccessEndpointLoadBalancerOptions": { "type": "structure", "members": { - "ClientVpnEndpointId": { - "target": "com.amazonaws.ec2#ClientVpnEndpointId", + "Protocol": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointProtocol", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Client VPN endpoint from which the route is to be deleted.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The IP protocol.

" } }, - "TargetVpcSubnetId": { - "target": "com.amazonaws.ec2#SubnetId", + "Port": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortNumber", "traits": { - "smithy.api#documentation": "

The ID of the target subnet used by the route.

" + "smithy.api#documentation": "

The IP port number.

" } }, - "DestinationCidrBlock": { - "target": "com.amazonaws.ec2#String", + "LoadBalancerArn": { + "target": "com.amazonaws.ec2#LoadBalancerArn", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IPv4 address range, in CIDR notation, of the route to be deleted.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The ARN of the load balancer.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "SubnetIds": { + "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointSubnetIdList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The IDs of the subnets. You can specify only one subnet per Availability Zone.

", + "smithy.api#xmlName": "SubnetId" + } + }, + "PortRanges": { + "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointPortRangeList", + "traits": { + "smithy.api#documentation": "

The port ranges.

", + "smithy.api#xmlName": "PortRange" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes the load balancer options when creating an Amazon Web Services Verified Access endpoint using the\n load-balancer type.

" } }, - "com.amazonaws.ec2#DeleteClientVpnRouteResult": { + "com.amazonaws.ec2#CreateVerifiedAccessEndpointPortRange": { "type": "structure", "members": { - "Status": { - "target": "com.amazonaws.ec2#ClientVpnRouteStatus", + "FromPort": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortNumber", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The current state of the route.

", - "smithy.api#xmlName": "status" + "smithy.api#documentation": "

The start of the port range.

" + } + }, + "ToPort": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortNumber", + "traits": { + "smithy.api#documentation": "

The end of the port range.

" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes the port range for a Verified Access endpoint.

" } }, - "com.amazonaws.ec2#DeleteCoipCidr": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteCoipCidrRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteCoipCidrResult" + "com.amazonaws.ec2#CreateVerifiedAccessEndpointPortRangeList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointPortRange", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#CreateVerifiedAccessEndpointRdsOptions": { + "type": "structure", + "members": { + "Protocol": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointProtocol", + "traits": { + "smithy.api#documentation": "

The protocol.

" + } + }, + "Port": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortNumber", + "traits": { + "smithy.api#documentation": "

The port.

" + } + }, + "RdsDbInstanceArn": { + "target": "com.amazonaws.ec2#RdsDbInstanceArn", + "traits": { + "smithy.api#documentation": "

The ARN of the RDS instance.

" + } + }, + "RdsDbClusterArn": { + "target": "com.amazonaws.ec2#RdsDbClusterArn", + "traits": { + "smithy.api#documentation": "

The ARN of the DB cluster.

" + } + }, + "RdsDbProxyArn": { + "target": "com.amazonaws.ec2#RdsDbProxyArn", + "traits": { + "smithy.api#documentation": "

The ARN of the RDS proxy.

" + } + }, + "RdsEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The RDS endpoint.

" + } + }, + "SubnetIds": { + "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointSubnetIdList", + "traits": { + "smithy.api#documentation": "

The IDs of the subnets. You can specify only one subnet per Availability Zone.

", + "smithy.api#xmlName": "SubnetId" + } + } }, "traits": { - "smithy.api#documentation": "

\n Deletes a range of customer-owned IP addresses.\n

" + "smithy.api#documentation": "

Describes the RDS options for a Verified Access endpoint.

" } }, - "com.amazonaws.ec2#DeleteCoipCidrRequest": { + "com.amazonaws.ec2#CreateVerifiedAccessEndpointRequest": { "type": "structure", "members": { - "Cidr": { - "target": "com.amazonaws.ec2#String", + "VerifiedAccessGroupId": { + "target": "com.amazonaws.ec2#VerifiedAccessGroupId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A customer-owned IP address range that you want to delete.

", + "smithy.api#documentation": "

The ID of the Verified Access group to associate the endpoint with.

", "smithy.api#required": {} } }, - "CoipPoolId": { - "target": "com.amazonaws.ec2#Ipv4PoolCoipId", + "EndpointType": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointType", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

\n The ID of the customer-owned address pool. \n

", + "smithy.api#documentation": "

The type of Verified Access endpoint to create.

", + "smithy.api#required": {} + } + }, + "AttachmentType": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointAttachmentType", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The type of attachment.

", "smithy.api#required": {} } }, + "DomainCertificateArn": { + "target": "com.amazonaws.ec2#CertificateArn", + "traits": { + "smithy.api#documentation": "

The ARN of the public TLS/SSL certificate in Amazon Web Services Certificate Manager to associate with the endpoint.\n The CN in the certificate must match the DNS name your end users will use to reach your\n application.

" + } + }, + "ApplicationDomain": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The DNS name for users to reach your application.

" + } + }, + "EndpointDomainPrefix": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A custom identifier that is prepended to the DNS name that is generated for the\n endpoint.

" + } + }, + "SecurityGroupIds": { + "target": "com.amazonaws.ec2#SecurityGroupIdList", + "traits": { + "smithy.api#documentation": "

The IDs of the security groups to associate with the Verified Access endpoint. Required if AttachmentType is set to vpc.

", + "smithy.api#xmlName": "SecurityGroupId" + } + }, + "LoadBalancerOptions": { + "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointLoadBalancerOptions", + "traits": { + "smithy.api#documentation": "

The load balancer details. This parameter is required if the endpoint type is\n load-balancer.

" + } + }, + "NetworkInterfaceOptions": { + "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointEniOptions", + "traits": { + "smithy.api#documentation": "

The network interface details. This parameter is required if the endpoint type is\n network-interface.

" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A description for the Verified Access endpoint.

" + } + }, + "PolicyDocument": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The Verified Access policy document.

" + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags to assign to the Verified Access endpoint.

", + "smithy.api#xmlName": "TagSpecification" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } + }, + "SseSpecification": { + "target": "com.amazonaws.ec2#VerifiedAccessSseSpecificationRequest", + "traits": { + "smithy.api#documentation": "

The options for server side encryption.

" + } + }, + "RdsOptions": { + "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointRdsOptions", + "traits": { + "smithy.api#documentation": "

The RDS details. This parameter is required if the endpoint type is rds.

" + } + }, + "CidrOptions": { + "target": "com.amazonaws.ec2#CreateVerifiedAccessEndpointCidrOptions", + "traits": { + "smithy.api#documentation": "

The CIDR options. This parameter is required if the endpoint type is cidr.

" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteCoipCidrResult": { + "com.amazonaws.ec2#CreateVerifiedAccessEndpointResult": { "type": "structure", "members": { - "CoipCidr": { - "target": "com.amazonaws.ec2#CoipCidr", + "VerifiedAccessEndpoint": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpoint", "traits": { - "aws.protocols#ec2QueryName": "CoipCidr", - "smithy.api#documentation": "

\n Information about a range of customer-owned IP addresses.\n

", - "smithy.api#xmlName": "coipCidr" + "aws.protocols#ec2QueryName": "VerifiedAccessEndpoint", + "smithy.api#documentation": "

Details about the Verified Access endpoint.

", + "smithy.api#xmlName": "verifiedAccessEndpoint" } } }, @@ -22411,49 +23439,90 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteCoipPool": { + "com.amazonaws.ec2#CreateVerifiedAccessEndpointSubnetIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#SubnetId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#CreateVerifiedAccessGroup": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteCoipPoolRequest" + "target": "com.amazonaws.ec2#CreateVerifiedAccessGroupRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteCoipPoolResult" + "target": "com.amazonaws.ec2#CreateVerifiedAccessGroupResult" }, "traits": { - "smithy.api#documentation": "

Deletes a pool of customer-owned IP (CoIP) addresses.

" + "smithy.api#documentation": "

An Amazon Web Services Verified Access group is a collection of Amazon Web Services Verified Access endpoints who's associated applications have\n similar security requirements. Each instance within a Verified Access group shares an Verified Access policy. For\n example, you can group all Verified Access instances associated with \"sales\" applications together and\n use one common Verified Access policy.

" } }, - "com.amazonaws.ec2#DeleteCoipPoolRequest": { + "com.amazonaws.ec2#CreateVerifiedAccessGroupRequest": { "type": "structure", "members": { - "CoipPoolId": { - "target": "com.amazonaws.ec2#Ipv4PoolCoipId", + "VerifiedAccessInstanceId": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the CoIP pool that you want to delete.

", + "smithy.api#documentation": "

The ID of the Verified Access instance.

", "smithy.api#required": {} } }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A description for the Verified Access group.

" + } + }, + "PolicyDocument": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The Verified Access policy document.

" + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags to assign to the Verified Access group.

", + "smithy.api#xmlName": "TagSpecification" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } + }, + "SseSpecification": { + "target": "com.amazonaws.ec2#VerifiedAccessSseSpecificationRequest", + "traits": { + "smithy.api#documentation": "

The options for server side encryption.

" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteCoipPoolResult": { + "com.amazonaws.ec2#CreateVerifiedAccessGroupResult": { "type": "structure", "members": { - "CoipPool": { - "target": "com.amazonaws.ec2#CoipPool", + "VerifiedAccessGroup": { + "target": "com.amazonaws.ec2#VerifiedAccessGroup", "traits": { - "aws.protocols#ec2QueryName": "CoipPool", - "smithy.api#documentation": "

Information about the CoIP address pool.

", - "smithy.api#xmlName": "coipPool" + "aws.protocols#ec2QueryName": "VerifiedAccessGroup", + "smithy.api#documentation": "

Details about the Verified Access group.

", + "smithy.api#xmlName": "verifiedAccessGroup" } } }, @@ -22461,369 +23530,297 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteCustomerGateway": { + "com.amazonaws.ec2#CreateVerifiedAccessInstance": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteCustomerGatewayRequest" + "target": "com.amazonaws.ec2#CreateVerifiedAccessInstanceRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.ec2#CreateVerifiedAccessInstanceResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified customer gateway. You must delete the VPN connection before you\n can delete the customer gateway.

", - "smithy.api#examples": [ - { - "title": "To delete a customer gateway", - "documentation": "This example deletes the specified customer gateway.", - "input": { - "CustomerGatewayId": "cgw-0e11f167" - } - } - ] + "smithy.api#documentation": "

An Amazon Web Services Verified Access instance is a regional entity that evaluates application requests and grants\n access only when your security requirements are met.

" } }, - "com.amazonaws.ec2#DeleteCustomerGatewayRequest": { + "com.amazonaws.ec2#CreateVerifiedAccessInstanceRequest": { "type": "structure", "members": { - "CustomerGatewayId": { - "target": "com.amazonaws.ec2#CustomerGatewayId", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the customer gateway.

", - "smithy.api#required": {} + "smithy.api#documentation": "

A description for the Verified Access instance.

" + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags to assign to the Verified Access instance.

", + "smithy.api#xmlName": "TagSpecification" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "FIPSEnabled": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Enable or disable support for Federal Information Processing Standards (FIPS) on the instance.

" + } + }, + "CidrEndpointsCustomSubDomain": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The custom subdomain.

" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DeleteCustomerGateway.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteDhcpOptions": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteDhcpOptionsRequest" - }, - "output": { - "target": "smithy.api#Unit" + "com.amazonaws.ec2#CreateVerifiedAccessInstanceResult": { + "type": "structure", + "members": { + "VerifiedAccessInstance": { + "target": "com.amazonaws.ec2#VerifiedAccessInstance", + "traits": { + "aws.protocols#ec2QueryName": "VerifiedAccessInstance", + "smithy.api#documentation": "

Details about the Verified Access instance.

", + "smithy.api#xmlName": "verifiedAccessInstance" + } + } }, "traits": { - "smithy.api#documentation": "

Deletes the specified set of DHCP options. You must disassociate the set of DHCP options before you can delete it. You can disassociate the set of DHCP options by associating either a new set of options or the default set of options with the VPC.

", - "smithy.api#examples": [ - { - "title": "To delete a DHCP options set", - "documentation": "This example deletes the specified DHCP options set.", - "input": { - "DhcpOptionsId": "dopt-d9070ebb" - } - } - ] + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteDhcpOptionsRequest": { + "com.amazonaws.ec2#CreateVerifiedAccessNativeApplicationOidcOptions": { "type": "structure", "members": { - "DhcpOptionsId": { - "target": "com.amazonaws.ec2#DhcpOptionsId", + "PublicSigningKeyEndpoint": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the DHCP options set.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The public signing key endpoint.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Issuer": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The OIDC issuer identifier of the IdP.

" + } + }, + "AuthorizationEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The authorization endpoint of the IdP.

" + } + }, + "TokenEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token endpoint of the IdP.

" + } + }, + "UserInfoEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The user info endpoint of the IdP.

" + } + }, + "ClientId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The OAuth 2.0 client identifier.

" + } + }, + "ClientSecret": { + "target": "com.amazonaws.ec2#ClientSecretType", + "traits": { + "smithy.api#documentation": "

The OAuth 2.0 client secret.

" + } + }, + "Scope": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The set of user claims to be requested from the IdP.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes the OpenID Connect (OIDC) options.

" } }, - "com.amazonaws.ec2#DeleteEgressOnlyInternetGateway": { + "com.amazonaws.ec2#CreateVerifiedAccessTrustProvider": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteEgressOnlyInternetGatewayRequest" + "target": "com.amazonaws.ec2#CreateVerifiedAccessTrustProviderRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteEgressOnlyInternetGatewayResult" + "target": "com.amazonaws.ec2#CreateVerifiedAccessTrustProviderResult" }, "traits": { - "smithy.api#documentation": "

Deletes an egress-only internet gateway.

" + "smithy.api#documentation": "

A trust provider is a third-party entity that creates, maintains, and manages identity\n information for users and devices. When an application request is made, the identity\n information sent by the trust provider is evaluated by Verified Access before allowing or\n denying the application request.

" } }, - "com.amazonaws.ec2#DeleteEgressOnlyInternetGatewayRequest": { + "com.amazonaws.ec2#CreateVerifiedAccessTrustProviderDeviceOptions": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "TenantId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The ID of the tenant application with the device-identity provider.

" } }, - "EgressOnlyInternetGatewayId": { - "target": "com.amazonaws.ec2#EgressOnlyInternetGatewayId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the egress-only internet gateway.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DeleteEgressOnlyInternetGatewayResult": { - "type": "structure", - "members": { - "ReturnCode": { - "target": "com.amazonaws.ec2#Boolean", + "PublicSigningKeyUrl": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ReturnCode", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "returnCode" + "smithy.api#documentation": "

\n The URL Amazon Web Services Verified Access will use to verify the authenticity of the device tokens.\n

" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes the options when creating an Amazon Web Services Verified Access trust provider using the\n device type.

" } }, - "com.amazonaws.ec2#DeleteFleetError": { + "com.amazonaws.ec2#CreateVerifiedAccessTrustProviderOidcOptions": { "type": "structure", "members": { - "Code": { - "target": "com.amazonaws.ec2#DeleteFleetErrorCode", + "Issuer": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The error code.

", - "smithy.api#xmlName": "code" + "smithy.api#documentation": "

The OIDC issuer.

" } }, - "Message": { + "AuthorizationEndpoint": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Message", - "smithy.api#documentation": "

The description for the error code.

", - "smithy.api#xmlName": "message" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an EC2 Fleet error.

" - } - }, - "com.amazonaws.ec2#DeleteFleetErrorCode": { - "type": "enum", - "members": { - "FLEET_ID_DOES_NOT_EXIST": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "fleetIdDoesNotExist" + "smithy.api#documentation": "

The OIDC authorization endpoint.

" } }, - "FLEET_ID_MALFORMED": { - "target": "smithy.api#Unit", + "TokenEndpoint": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "fleetIdMalformed" + "smithy.api#documentation": "

The OIDC token endpoint.

" } }, - "FLEET_NOT_IN_DELETABLE_STATE": { - "target": "smithy.api#Unit", + "UserInfoEndpoint": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "fleetNotInDeletableState" + "smithy.api#documentation": "

The OIDC user info endpoint.

" } }, - "UNEXPECTED_ERROR": { - "target": "smithy.api#Unit", + "ClientId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "unexpectedError" + "smithy.api#documentation": "

The client identifier.

" } - } - } - }, - "com.amazonaws.ec2#DeleteFleetErrorItem": { - "type": "structure", - "members": { - "Error": { - "target": "com.amazonaws.ec2#DeleteFleetError", + }, + "ClientSecret": { + "target": "com.amazonaws.ec2#ClientSecretType", "traits": { - "aws.protocols#ec2QueryName": "Error", - "smithy.api#documentation": "

The error.

", - "smithy.api#xmlName": "error" + "smithy.api#documentation": "

The client secret.

" } }, - "FleetId": { - "target": "com.amazonaws.ec2#FleetId", + "Scope": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "FleetId", - "smithy.api#documentation": "

The ID of the EC2 Fleet.

", - "smithy.api#xmlName": "fleetId" + "smithy.api#documentation": "

OpenID Connect (OIDC) scopes are used by an application during authentication to authorize access to a user's details. Each scope returns a specific set of user attributes.

" } } }, "traits": { - "smithy.api#documentation": "

Describes an EC2 Fleet that was not successfully deleted.

" - } - }, - "com.amazonaws.ec2#DeleteFleetErrorSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DeleteFleetErrorItem", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

Describes the options when creating an Amazon Web Services Verified Access trust provider using the user\n type.

" } }, - "com.amazonaws.ec2#DeleteFleetSuccessItem": { + "com.amazonaws.ec2#CreateVerifiedAccessTrustProviderRequest": { "type": "structure", "members": { - "CurrentFleetState": { - "target": "com.amazonaws.ec2#FleetStateCode", + "TrustProviderType": { + "target": "com.amazonaws.ec2#TrustProviderType", "traits": { - "aws.protocols#ec2QueryName": "CurrentFleetState", - "smithy.api#documentation": "

The current state of the EC2 Fleet.

", - "smithy.api#xmlName": "currentFleetState" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The type of trust provider.

", + "smithy.api#required": {} } }, - "PreviousFleetState": { - "target": "com.amazonaws.ec2#FleetStateCode", + "UserTrustProviderType": { + "target": "com.amazonaws.ec2#UserTrustProviderType", "traits": { - "aws.protocols#ec2QueryName": "PreviousFleetState", - "smithy.api#documentation": "

The previous state of the EC2 Fleet.

", - "smithy.api#xmlName": "previousFleetState" + "smithy.api#documentation": "

The type of user-based trust provider. This parameter is required when the provider type\n is user.

" } }, - "FleetId": { - "target": "com.amazonaws.ec2#FleetId", + "DeviceTrustProviderType": { + "target": "com.amazonaws.ec2#DeviceTrustProviderType", "traits": { - "aws.protocols#ec2QueryName": "FleetId", - "smithy.api#documentation": "

The ID of the EC2 Fleet.

", - "smithy.api#xmlName": "fleetId" + "smithy.api#documentation": "

The type of device-based trust provider. This parameter is required when the provider\n type is device.

" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an EC2 Fleet that was successfully deleted.

" - } - }, - "com.amazonaws.ec2#DeleteFleetSuccessSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DeleteFleetSuccessItem", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#DeleteFleets": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteFleetsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteFleetsResult" - }, - "traits": { - "smithy.api#documentation": "

Deletes the specified EC2 Fleets.

\n

After you delete an EC2 Fleet, it launches no new instances.

\n

You must also specify whether a deleted EC2 Fleet should terminate its instances. If you\n choose to terminate the instances, the EC2 Fleet enters the deleted_terminating\n state. Otherwise, the EC2 Fleet enters the deleted_running state, and the instances\n continue to run until they are interrupted or you terminate them manually.

\n

For instant fleets, EC2 Fleet must terminate the instances when the fleet is\n deleted. Up to 1000 instances can be terminated in a single request to delete\n instant fleets. A deleted instant fleet with running instances\n is not supported.

\n

\n Restrictions\n

\n \n

For more information, see Delete an EC2\n Fleet in the Amazon EC2 User Guide.

" - } - }, - "com.amazonaws.ec2#DeleteFleetsRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "OidcOptions": { + "target": "com.amazonaws.ec2#CreateVerifiedAccessTrustProviderOidcOptions", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The options for a OpenID Connect-compatible user-identity trust provider. This parameter\n is required when the provider type is user.

" } }, - "FleetIds": { - "target": "com.amazonaws.ec2#FleetIdSet", + "DeviceOptions": { + "target": "com.amazonaws.ec2#CreateVerifiedAccessTrustProviderDeviceOptions", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the EC2 Fleets.

\n

Constraints: In a single request, you can specify up to 25 instant fleet\n IDs and up to 100 maintain or request fleet IDs.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "FleetId" + "smithy.api#documentation": "

The options for a device-based trust provider. This parameter is required when the\n provider type is device.

" } }, - "TerminateInstances": { - "target": "com.amazonaws.ec2#Boolean", + "PolicyReferenceName": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Indicates whether to terminate the associated instances when the EC2 Fleet is deleted. The default is to\n terminate the instances.

\n

To let the instances continue to run after the EC2 Fleet is deleted, specify\n no-terminate-instances. Supported only for fleets of type\n maintain and request.

\n

For instant fleets, you cannot specify NoTerminateInstances. A\n deleted instant fleet with running instances is not supported.

", + "smithy.api#documentation": "

The identifier to be used when working with policy rules.

", "smithy.api#required": {} } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DeleteFleetsResult": { - "type": "structure", - "members": { - "SuccessfulFleetDeletions": { - "target": "com.amazonaws.ec2#DeleteFleetSuccessSet", + }, + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SuccessfulFleetDeletionSet", - "smithy.api#documentation": "

Information about the EC2 Fleets that are successfully deleted.

", - "smithy.api#xmlName": "successfulFleetDeletionSet" + "smithy.api#documentation": "

A description for the Verified Access trust provider.

" } }, - "UnsuccessfulFleetDeletions": { - "target": "com.amazonaws.ec2#DeleteFleetErrorSet", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "aws.protocols#ec2QueryName": "UnsuccessfulFleetDeletionSet", - "smithy.api#documentation": "

Information about the EC2 Fleets that are not successfully deleted.

", - "smithy.api#xmlName": "unsuccessfulFleetDeletionSet" + "smithy.api#documentation": "

The tags to assign to the Verified Access trust provider.

", + "smithy.api#xmlName": "TagSpecification" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DeleteFlowLogs": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteFlowLogsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteFlowLogsResult" - }, - "traits": { - "smithy.api#documentation": "

Deletes one or more flow logs.

" - } - }, - "com.amazonaws.ec2#DeleteFlowLogsRequest": { - "type": "structure", - "members": { + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "FlowLogIds": { - "target": "com.amazonaws.ec2#FlowLogIdList", + "SseSpecification": { + "target": "com.amazonaws.ec2#VerifiedAccessSseSpecificationRequest", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

One or more flow log IDs.

\n

Constraint: Maximum of 1000 flow log IDs.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "FlowLogId" + "smithy.api#documentation": "

The options for server side encryption.

" + } + }, + "NativeApplicationOidcOptions": { + "target": "com.amazonaws.ec2#CreateVerifiedAccessNativeApplicationOidcOptions", + "traits": { + "smithy.api#documentation": "

The OpenID Connect (OIDC) options.

" } } }, @@ -22831,15 +23828,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteFlowLogsResult": { + "com.amazonaws.ec2#CreateVerifiedAccessTrustProviderResult": { "type": "structure", "members": { - "Unsuccessful": { - "target": "com.amazonaws.ec2#UnsuccessfulItemSet", + "VerifiedAccessTrustProvider": { + "target": "com.amazonaws.ec2#VerifiedAccessTrustProvider", "traits": { - "aws.protocols#ec2QueryName": "Unsuccessful", - "smithy.api#documentation": "

Information about the flow logs that could not be deleted successfully.

", - "smithy.api#xmlName": "unsuccessful" + "aws.protocols#ec2QueryName": "VerifiedAccessTrustProvider", + "smithy.api#documentation": "

Details about the Verified Access trust provider.

", + "smithy.api#xmlName": "verifiedAccessTrustProvider" } } }, @@ -22847,203 +23844,301 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteFpgaImage": { + "com.amazonaws.ec2#CreateVolume": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteFpgaImageRequest" + "target": "com.amazonaws.ec2#CreateVolumeRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteFpgaImageResult" + "target": "com.amazonaws.ec2#Volume" }, "traits": { - "smithy.api#documentation": "

Deletes the specified Amazon FPGA Image (AFI).

" + "smithy.api#documentation": "

Creates an EBS volume that can be attached to an instance in the same Availability Zone.

\n

You can create a new empty volume or restore a volume from an EBS snapshot.\n Any Amazon Web Services Marketplace product codes from the snapshot are propagated to the volume.

\n

You can create encrypted volumes. Encrypted volumes must be attached to instances that \n support Amazon EBS encryption. Volumes that are created from encrypted snapshots are also automatically \n encrypted. For more information, see Amazon EBS encryption\n in the Amazon EBS User Guide.

\n

You can tag your volumes during creation. For more information, see Tag your Amazon EC2\n resources in the Amazon EC2 User Guide.

\n

For more information, see Create an Amazon EBS volume in the\n Amazon EBS User Guide.

", + "smithy.api#examples": [ + { + "title": "To create a new Provisioned IOPS (SSD) volume from a snapshot", + "documentation": "This example creates a new Provisioned IOPS (SSD) volume with 1000 provisioned IOPS from a snapshot in the Availability Zone ``us-east-1a``.", + "input": { + "AvailabilityZone": "us-east-1a", + "Iops": 1000, + "VolumeType": "io1", + "SnapshotId": "snap-066877671789bd71b" + }, + "output": { + "AvailabilityZone": "us-east-1a", + "Attachments": [], + "Tags": [], + "VolumeType": "io1", + "VolumeId": "vol-1234567890abcdef0", + "State": "creating", + "Iops": 1000, + "SnapshotId": "snap-066877671789bd71b", + "CreateTime": "2016-08-29T18:52:32.724Z", + "Size": 500 + } + }, + { + "title": "To create a new volume", + "documentation": "This example creates an 80 GiB General Purpose (SSD) volume in the Availability Zone ``us-east-1a``.", + "input": { + "AvailabilityZone": "us-east-1a", + "Size": 80, + "VolumeType": "gp2" + }, + "output": { + "AvailabilityZone": "us-east-1a", + "Encrypted": false, + "VolumeType": "gp2", + "VolumeId": "vol-6b60b7c7", + "State": "creating", + "Iops": 240, + "SnapshotId": "", + "CreateTime": "2016-08-29T18:52:32.724Z", + "Size": 80 + } + } + ] } }, - "com.amazonaws.ec2#DeleteFpgaImageRequest": { + "com.amazonaws.ec2#CreateVolumePermission": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "UserId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "UserId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account to be added or removed.

", + "smithy.api#xmlName": "userId" } }, - "FpgaImageId": { - "target": "com.amazonaws.ec2#FpgaImageId", + "Group": { + "target": "com.amazonaws.ec2#PermissionGroup", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the AFI.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Group", + "smithy.api#documentation": "

The group to be added or removed. The possible value is all.

", + "smithy.api#xmlName": "group" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes the user or group to be added or removed from the list of create volume\n permissions for a volume.

" } }, - "com.amazonaws.ec2#DeleteFpgaImageResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Is true if the request succeeds, and an error otherwise.

", - "smithy.api#xmlName": "return" - } + "com.amazonaws.ec2#CreateVolumePermissionList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CreateVolumePermission", + "traits": { + "smithy.api#xmlName": "item" } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DeleteInstanceConnectEndpoint": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteInstanceConnectEndpointRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteInstanceConnectEndpointResult" - }, - "traits": { - "smithy.api#documentation": "

Deletes the specified EC2 Instance Connect Endpoint.

" } }, - "com.amazonaws.ec2#DeleteInstanceConnectEndpointRequest": { + "com.amazonaws.ec2#CreateVolumePermissionModifications": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Add": { + "target": "com.amazonaws.ec2#CreateVolumePermissionList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Adds the specified Amazon Web Services account ID or group to the list.

" } }, - "InstanceConnectEndpointId": { - "target": "com.amazonaws.ec2#InstanceConnectEndpointId", + "Remove": { + "target": "com.amazonaws.ec2#CreateVolumePermissionList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the EC2 Instance Connect Endpoint to delete.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Removes the specified Amazon Web Services account ID or group from the list.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes modifications to the list of create volume permissions for a volume.

" } }, - "com.amazonaws.ec2#DeleteInstanceConnectEndpointResult": { + "com.amazonaws.ec2#CreateVolumeRequest": { "type": "structure", "members": { - "InstanceConnectEndpoint": { - "target": "com.amazonaws.ec2#Ec2InstanceConnectEndpoint", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#AvailabilityZoneName", "traits": { - "aws.protocols#ec2QueryName": "InstanceConnectEndpoint", - "smithy.api#documentation": "

Information about the EC2 Instance Connect Endpoint.

", - "smithy.api#xmlName": "instanceConnectEndpoint" + "smithy.api#documentation": "

The ID of the Availability Zone in which to create the volume. For example, us-east-1a.

\n

Either AvailabilityZone or AvailabilityZoneId must be specified,\n but not both.

" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DeleteInstanceEventWindow": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteInstanceEventWindowRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteInstanceEventWindowResult" - }, - "traits": { - "smithy.api#documentation": "

Deletes the specified event window.

\n

For more information, see Define event windows for scheduled\n events in the Amazon EC2 User Guide.

" - } - }, - "com.amazonaws.ec2#DeleteInstanceEventWindowRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + }, + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#AvailabilityZoneId", + "traits": { + "smithy.api#documentation": "

The ID of the Availability Zone in which to create the volume. For example, use1-az1.

\n

Either AvailabilityZone or AvailabilityZoneId must be specified,\n but not both.

" } }, - "ForceDelete": { + "Encrypted": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Specify true to force delete the event window. Use the force delete parameter\n if the event window is currently associated with targets.

" + "aws.protocols#ec2QueryName": "Encrypted", + "smithy.api#documentation": "

Indicates whether the volume should be encrypted. \n The effect of setting the encryption state to true depends on \nthe volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. \n For more information, see Encryption by default\n in the Amazon EBS User Guide.

\n

Encrypted Amazon EBS volumes must be attached to instances that support Amazon EBS encryption. \n For more information, see Supported\n instance types.

", + "smithy.api#xmlName": "encrypted" } }, - "InstanceEventWindowId": { - "target": "com.amazonaws.ec2#InstanceEventWindowId", + "Iops": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the event window.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "InstanceEventWindowId" + "smithy.api#documentation": "

The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents \n the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline \n performance of the volume and the rate at which the volume accumulates I/O credits for bursting.

\n

The following are the supported values for each volume type:

\n \n

For io2 volumes, you can achieve up to 256,000 IOPS on \ninstances \nbuilt on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS.

\n

This parameter is required for io1 and io2 volumes. The default for gp3 volumes is 3,000 IOPS.\n This parameter is not supported for gp2, st1, sc1, or standard volumes.

" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DeleteInstanceEventWindowResult": { - "type": "structure", - "members": { - "InstanceEventWindowState": { - "target": "com.amazonaws.ec2#InstanceEventWindowStateChange", + }, + "KmsKeyId": { + "target": "com.amazonaws.ec2#KmsKeyId", "traits": { - "aws.protocols#ec2QueryName": "InstanceEventWindowState", - "smithy.api#documentation": "

The state of the event window.

", - "smithy.api#xmlName": "instanceEventWindowState" + "smithy.api#documentation": "

The identifier of the KMS key to use for Amazon EBS encryption.\n If this parameter is not specified, your KMS key for Amazon EBS is used. If KmsKeyId is\n specified, the encrypted state must be true.

\n

You can specify the KMS key using any of the following:

\n \n

Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an ID, alias, or ARN that is not valid, \n the action can appear to complete, but eventually fails.

" + } + }, + "OutpostArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost on which to create the volume.

\n

If you intend to use a volume with an instance running on an outpost, then you must \n create the volume on the same outpost as the instance. You can't use a volume created \n in an Amazon Web Services Region with an instance on an Amazon Web Services outpost, or the other way around.

" + } + }, + "Size": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size.\n If you specify a snapshot, the default is the snapshot size. You can specify a volume \n size that is equal to or larger than the snapshot size.

\n

The following are the supported volumes sizes for each volume type:

\n " + } + }, + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", + "traits": { + "smithy.api#documentation": "

The snapshot from which to create the volume. You must specify either a snapshot ID or a volume size.

" + } + }, + "VolumeType": { + "target": "com.amazonaws.ec2#VolumeType", + "traits": { + "smithy.api#documentation": "

The volume type. This parameter can be one of the following values:

\n \n \n

Throughput Optimized HDD (st1) and Cold HDD (sc1) volumes can't be used as boot volumes.

\n
\n

For more information, see Amazon EBS volume types in the\n Amazon EBS User Guide.

\n

Default: gp2\n

" + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags to apply to the volume during creation.

", + "smithy.api#xmlName": "TagSpecification" + } + }, + "MultiAttachEnabled": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether to enable Amazon EBS Multi-Attach. If you enable Multi-Attach, you can attach the \n volume to up to 16 Instances built on the Nitro System in the same Availability Zone. This parameter is \n \tsupported with io1 and io2 volumes only. For more information, \n \tsee \n \t\tAmazon EBS Multi-Attach in the Amazon EBS User Guide.

" + } + }, + "Throughput": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The throughput to provision for a volume, with a maximum of 2,000 MiB/s.

\n

This parameter is valid only for gp3 volumes.

\n

Valid Range: Minimum value of 125. Maximum value of 2,000.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency \n of the request. For more information, see Ensure \n Idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, + "VolumeInitializationRate": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), in MiB/s, at which to download \n the snapshot blocks from Amazon S3 to the volume. This is also known as volume \n initialization. Specifying a volume initialization rate ensures that the volume is \n initialized at a predictable and consistent rate after creation.

\n

This parameter is supported only for volumes created from snapshots. Omit this parameter \n if:

\n \n

For more information, see \n Initialize Amazon EBS volumes in the Amazon EC2 User Guide.

\n

Valid range: 100 - 300 MiB/s

" + } + }, + "Operator": { + "target": "com.amazonaws.ec2#OperatorRequest", + "traits": { + "smithy.api#documentation": "

Reserved for internal use.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteInternetGateway": { + "com.amazonaws.ec2#CreateVpc": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteInternetGatewayRequest" + "target": "com.amazonaws.ec2#CreateVpcRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.ec2#CreateVpcResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified internet gateway. You must detach the internet gateway from the\n\t\t\tVPC before you can delete it.

", + "smithy.api#documentation": "

Creates a VPC with the specified CIDR blocks. For more information, see IP addressing for your VPCs and subnets in the \n Amazon VPC User Guide.

\n

You can optionally request an IPv6 CIDR block for the VPC. You can request an\n Amazon-provided IPv6 CIDR block from Amazon's pool of IPv6 addresses or an IPv6 CIDR\n block from an IPv6 address pool that you provisioned through bring your own IP addresses\n (BYOIP).

\n

By default, each instance that you launch in the VPC has the default DHCP options, which\n\t\t\tinclude only a default DNS server that we provide (AmazonProvidedDNS). For more\n\t\t\tinformation, see DHCP option sets in the Amazon VPC User Guide.

\n

You can specify the instance tenancy value for the VPC when you create it. You can't change\n this value for the VPC after you create it. For more information, see Dedicated Instances in the\n Amazon EC2 User Guide.

", "smithy.api#examples": [ { - "title": "To delete an Internet gateway", - "documentation": "This example deletes the specified Internet gateway.", + "title": "To create a VPC", + "documentation": "This example creates a VPC with the specified CIDR block.", "input": { - "InternetGatewayId": "igw-c0a643a9" + "CidrBlock": "10.0.0.0/16" + }, + "output": { + "Vpc": { + "InstanceTenancy": "default", + "State": "pending", + "VpcId": "vpc-a01106c2", + "CidrBlock": "10.0.0.0/16", + "DhcpOptionsId": "dopt-7a8b9c2d" + } } } ] } }, - "com.amazonaws.ec2#DeleteInternetGatewayRequest": { + "com.amazonaws.ec2#CreateVpcBlockPublicAccessExclusion": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#CreateVpcBlockPublicAccessExclusionRequest" + }, + "output": { + "target": "com.amazonaws.ec2#CreateVpcBlockPublicAccessExclusionResult" + }, + "traits": { + "smithy.api#documentation": "

Create a VPC Block Public Access (BPA) exclusion. A VPC BPA exclusion is a mode that can be applied to a single VPC or subnet that exempts it from the account’s BPA mode and will allow bidirectional or egress-only access. You can create BPA exclusions for VPCs and subnets even when BPA is not enabled on the account to ensure that there is no traffic disruption to the exclusions when VPC BPA is turned on. To learn more about VPC BPA, see Block public access to VPCs and subnets in the Amazon VPC User Guide.

" + } + }, + "com.amazonaws.ec2#CreateVpcBlockPublicAccessExclusionRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "InternetGatewayId": { - "target": "com.amazonaws.ec2#InternetGatewayId", + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", + "traits": { + "smithy.api#documentation": "

A subnet ID.

" + } + }, + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", + "traits": { + "smithy.api#documentation": "

A VPC ID.

" + } + }, + "InternetGatewayExclusionMode": { + "target": "com.amazonaws.ec2#InternetGatewayExclusionMode", "traits": { - "aws.protocols#ec2QueryName": "InternetGatewayId", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the internet gateway.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "internetGatewayId" + "smithy.api#documentation": "

The exclusion mode for internet gateway traffic.

\n ", + "smithy.api#required": {} + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

\n tag - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

", + "smithy.api#xmlName": "TagSpecification" } } }, @@ -23051,51 +24146,87 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteIpam": { + "com.amazonaws.ec2#CreateVpcBlockPublicAccessExclusionResult": { + "type": "structure", + "members": { + "VpcBlockPublicAccessExclusion": { + "target": "com.amazonaws.ec2#VpcBlockPublicAccessExclusion", + "traits": { + "aws.protocols#ec2QueryName": "VpcBlockPublicAccessExclusion", + "smithy.api#documentation": "

Details about an exclusion.

", + "smithy.api#xmlName": "vpcBlockPublicAccessExclusion" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#CreateVpcEndpoint": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteIpamRequest" + "target": "com.amazonaws.ec2#CreateVpcEndpointRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteIpamResult" + "target": "com.amazonaws.ec2#CreateVpcEndpointResult" }, "traits": { - "smithy.api#documentation": "

Delete an IPAM. Deleting an IPAM removes all monitored data associated with the IPAM including the historical data for CIDRs.

\n

For more information, see Delete an IPAM in the Amazon VPC IPAM User Guide.\n

" + "smithy.api#documentation": "

Creates a VPC endpoint. A VPC endpoint provides a private connection between the\n specified VPC and the specified endpoint service. You can use an endpoint service\n provided by Amazon Web Services, an Amazon Web Services Marketplace Partner, or another\n Amazon Web Services account. For more information, see the Amazon Web Services PrivateLink User Guide.

" } }, - "com.amazonaws.ec2#DeleteIpamPool": { + "com.amazonaws.ec2#CreateVpcEndpointConnectionNotification": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteIpamPoolRequest" + "target": "com.amazonaws.ec2#CreateVpcEndpointConnectionNotificationRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteIpamPoolResult" + "target": "com.amazonaws.ec2#CreateVpcEndpointConnectionNotificationResult" }, "traits": { - "smithy.api#documentation": "

Delete an IPAM pool.

\n \n

You cannot delete an IPAM pool if there are allocations in it or CIDRs provisioned to it. To release \n allocations, see ReleaseIpamPoolAllocation. To deprovision pool \n CIDRs, see DeprovisionIpamPoolCidr.

\n
\n

For more information, see Delete a pool in the Amazon VPC IPAM User Guide.\n

" + "smithy.api#documentation": "

Creates a connection notification for a specified VPC endpoint or VPC endpoint\n service. A connection notification notifies you of specific endpoint events. You must\n create an SNS topic to receive notifications. For more information, see Creating an Amazon SNS topic in\n the Amazon SNS Developer Guide.

\n

You can create a connection notification for interface endpoints only.

" } }, - "com.amazonaws.ec2#DeleteIpamPoolRequest": { + "com.amazonaws.ec2#CreateVpcEndpointConnectionNotificationRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "IpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", + "ServiceId": { + "target": "com.amazonaws.ec2#VpcEndpointServiceId", + "traits": { + "smithy.api#documentation": "

The ID of the endpoint service.

" + } + }, + "VpcEndpointId": { + "target": "com.amazonaws.ec2#VpcEndpointId", + "traits": { + "smithy.api#documentation": "

The ID of the endpoint.

" + } + }, + "ConnectionNotificationArn": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the pool to delete.

", + "smithy.api#documentation": "

The ARN of the SNS topic for the notifications.

", "smithy.api#required": {} } }, - "Cascade": { - "target": "com.amazonaws.ec2#Boolean", + "ConnectionEvents": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

Enables you to quickly delete an IPAM pool and all resources within that pool, including\n provisioned CIDRs, allocations, and other pools.

\n \n

You can only use this option to delete pools in the private scope or pools in the public scope with a source resource. A source resource is a resource used to provision CIDRs to a resource planning pool.

\n
" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The endpoint events for which to receive notifications. Valid values are\n Accept, Connect, Delete, and\n Reject.

", + "smithy.api#required": {} + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see How to ensure\n idempotency.

" } } }, @@ -23103,15 +24234,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteIpamPoolResult": { + "com.amazonaws.ec2#CreateVpcEndpointConnectionNotificationResult": { "type": "structure", "members": { - "IpamPool": { - "target": "com.amazonaws.ec2#IpamPool", + "ConnectionNotification": { + "target": "com.amazonaws.ec2#ConnectionNotification", "traits": { - "aws.protocols#ec2QueryName": "IpamPool", - "smithy.api#documentation": "

Information about the results of the deletion.

", - "smithy.api#xmlName": "ipamPool" + "aws.protocols#ec2QueryName": "ConnectionNotification", + "smithy.api#documentation": "

Information about the notification.

", + "smithy.api#xmlName": "connectionNotification" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request.

", + "smithy.api#xmlName": "clientToken" } } }, @@ -23119,61 +24258,116 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteIpamRequest": { + "com.amazonaws.ec2#CreateVpcEndpointRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "IpamId": { - "target": "com.amazonaws.ec2#IpamId", + "VpcEndpointType": { + "target": "com.amazonaws.ec2#VpcEndpointType", + "traits": { + "smithy.api#documentation": "

The type of endpoint.

\n

Default: Gateway

" + } + }, + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the IPAM to delete.

", + "smithy.api#documentation": "

The ID of the VPC.

", "smithy.api#required": {} } }, - "Cascade": { - "target": "com.amazonaws.ec2#Boolean", + "ServiceName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Enables you to quickly delete an IPAM, private scopes, pools in private scopes, and\n any allocations in the pools in private scopes. You cannot delete the IPAM with this option if there is a pool in your public scope. If you use this option, IPAM does the following:

\n " + "smithy.api#documentation": "

The name of the endpoint service.

" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DeleteIpamResourceDiscovery": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteIpamResourceDiscoveryRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteIpamResourceDiscoveryResult" - }, - "traits": { - "smithy.api#documentation": "

Deletes an IPAM resource discovery. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

" - } - }, - "com.amazonaws.ec2#DeleteIpamResourceDiscoveryRequest": { - "type": "structure", - "members": { - "DryRun": { + }, + "PolicyDocument": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

(Interface and gateway endpoints) A policy to attach to the endpoint that controls access to the\n service. The policy must be in valid JSON format. If this parameter is not specified, we\n attach a default policy that allows full access to the service.

" + } + }, + "RouteTableIds": { + "target": "com.amazonaws.ec2#VpcEndpointRouteTableIdList", + "traits": { + "smithy.api#documentation": "

(Gateway endpoint) The route table IDs.

", + "smithy.api#xmlName": "RouteTableId" + } + }, + "SubnetIds": { + "target": "com.amazonaws.ec2#VpcEndpointSubnetIdList", + "traits": { + "smithy.api#documentation": "

(Interface and Gateway Load Balancer endpoints) The IDs of the subnets in which to create endpoint\n network interfaces. For a Gateway Load Balancer endpoint, you can specify only one subnet.

", + "smithy.api#xmlName": "SubnetId" + } + }, + "SecurityGroupIds": { + "target": "com.amazonaws.ec2#VpcEndpointSecurityGroupIdList", + "traits": { + "smithy.api#documentation": "

(Interface endpoint) The IDs of the security groups to associate with the\n endpoint network interfaces. If this parameter is not specified, we use the default \n security group for the VPC.

", + "smithy.api#xmlName": "SecurityGroupId" + } + }, + "IpAddressType": { + "target": "com.amazonaws.ec2#IpAddressType", + "traits": { + "smithy.api#documentation": "

The IP address type for the endpoint.

" + } + }, + "DnsOptions": { + "target": "com.amazonaws.ec2#DnsOptionsSpecification", + "traits": { + "smithy.api#documentation": "

The DNS options for the endpoint.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see How to ensure\n idempotency.

" + } + }, + "PrivateDnsEnabled": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

(Interface endpoint) Indicates whether to associate a private hosted zone with the\n specified VPC. The private hosted zone contains a record set for the default public DNS\n name for the service for the Region (for example,\n kinesis.us-east-1.amazonaws.com), which resolves to the private IP\n addresses of the endpoint network interfaces in the VPC. This enables you to make\n requests to the default public DNS name for the service instead of the public DNS names\n that are automatically generated by the VPC endpoint service.

\n

To use a private hosted zone, you must set the following VPC attributes to\n true: enableDnsHostnames and\n enableDnsSupport. Use ModifyVpcAttribute to set the VPC\n attributes.

" } }, - "IpamResourceDiscoveryId": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IPAM resource discovery ID.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The tags to associate with the endpoint.

", + "smithy.api#xmlName": "TagSpecification" + } + }, + "SubnetConfigurations": { + "target": "com.amazonaws.ec2#SubnetConfigurationsList", + "traits": { + "smithy.api#documentation": "

The subnet configurations for the endpoint.

", + "smithy.api#xmlName": "SubnetConfiguration" + } + }, + "ServiceNetworkArn": { + "target": "com.amazonaws.ec2#ServiceNetworkArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of a service network that will be associated with the VPC\n endpoint of type service-network.

" + } + }, + "ResourceConfigurationArn": { + "target": "com.amazonaws.ec2#ResourceConfigurationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of a resource configuration that will be associated with\n the VPC endpoint of type resource.

" + } + }, + "ServiceRegion": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The Region where the service is hosted. The default is the current Region.

" } } }, @@ -23181,31 +24375,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteIpamResourceDiscoveryResult": { + "com.amazonaws.ec2#CreateVpcEndpointResult": { "type": "structure", "members": { - "IpamResourceDiscovery": { - "target": "com.amazonaws.ec2#IpamResourceDiscovery", + "VpcEndpoint": { + "target": "com.amazonaws.ec2#VpcEndpoint", "traits": { - "aws.protocols#ec2QueryName": "IpamResourceDiscovery", - "smithy.api#documentation": "

The IPAM resource discovery.

", - "smithy.api#xmlName": "ipamResourceDiscovery" + "aws.protocols#ec2QueryName": "VpcEndpoint", + "smithy.api#documentation": "

Information about the endpoint.

", + "smithy.api#xmlName": "vpcEndpoint" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DeleteIpamResult": { - "type": "structure", - "members": { - "Ipam": { - "target": "com.amazonaws.ec2#Ipam", + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Ipam", - "smithy.api#documentation": "

Information about the results of the deletion.

", - "smithy.api#xmlName": "ipam" + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request.

", + "smithy.api#xmlName": "clientToken" } } }, @@ -23213,33 +24399,78 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteIpamScope": { + "com.amazonaws.ec2#CreateVpcEndpointServiceConfiguration": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteIpamScopeRequest" + "target": "com.amazonaws.ec2#CreateVpcEndpointServiceConfigurationRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteIpamScopeResult" + "target": "com.amazonaws.ec2#CreateVpcEndpointServiceConfigurationResult" }, "traits": { - "smithy.api#documentation": "

Delete the scope for an IPAM. You cannot delete the default scopes.

\n

For more information, see Delete a scope in the Amazon VPC IPAM User Guide.\n

" + "smithy.api#documentation": "

Creates a VPC endpoint service to which service consumers (Amazon Web Services accounts,\n users, and IAM roles) can connect.

\n

Before you create an endpoint service, you must create one of the following for your service:

\n \n

If you set the private DNS name, you must prove that you own the private DNS domain\n name.

\n

For more information, see the Amazon Web Services PrivateLink \n\t Guide.

" } }, - "com.amazonaws.ec2#DeleteIpamScopeRequest": { + "com.amazonaws.ec2#CreateVpcEndpointServiceConfigurationRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "IpamScopeId": { - "target": "com.amazonaws.ec2#IpamScopeId", + "AcceptanceRequired": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the scope to delete.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Indicates whether requests from service consumers to create an endpoint to your service must\n be accepted manually.

" + } + }, + "PrivateDnsName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

(Interface endpoint configuration) The private DNS name to assign to the VPC endpoint service.

" + } + }, + "NetworkLoadBalancerArns": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Names (ARNs) of the Network Load Balancers.

", + "smithy.api#xmlName": "NetworkLoadBalancerArn" + } + }, + "GatewayLoadBalancerArns": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Names (ARNs) of the Gateway Load Balancers.

", + "smithy.api#xmlName": "GatewayLoadBalancerArn" + } + }, + "SupportedIpAddressTypes": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The supported IP address types. The possible values are ipv4 and ipv6.

", + "smithy.api#xmlName": "SupportedIpAddressType" + } + }, + "SupportedRegions": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The Regions from which service consumers can access the service.

", + "smithy.api#xmlName": "SupportedRegion" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.\n For more information, see How to ensure\n idempotency.

" + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags to associate with the service.

", + "smithy.api#xmlName": "TagSpecification" } } }, @@ -23247,15 +24478,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteIpamScopeResult": { + "com.amazonaws.ec2#CreateVpcEndpointServiceConfigurationResult": { "type": "structure", "members": { - "IpamScope": { - "target": "com.amazonaws.ec2#IpamScope", + "ServiceConfiguration": { + "target": "com.amazonaws.ec2#ServiceConfiguration", "traits": { - "aws.protocols#ec2QueryName": "IpamScope", - "smithy.api#documentation": "

Information about the results of the deletion.

", - "smithy.api#xmlName": "ipamScope" + "aws.protocols#ec2QueryName": "ServiceConfiguration", + "smithy.api#documentation": "

Information about the service configuration.

", + "smithy.api#xmlName": "serviceConfiguration" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request.

", + "smithy.api#xmlName": "clientToken" } } }, @@ -23263,40 +24502,32 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteKeyPair": { + "com.amazonaws.ec2#CreateVpcPeeringConnection": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteKeyPairRequest" + "target": "com.amazonaws.ec2#CreateVpcPeeringConnectionRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteKeyPairResult" + "target": "com.amazonaws.ec2#CreateVpcPeeringConnectionResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified key pair, by removing the public key from Amazon EC2.

", - "smithy.api#examples": [ - { - "title": "To delete a key pair", - "documentation": "This example deletes the specified key pair.", - "input": { - "KeyName": "my-key-pair" - } - } - ] + "smithy.api#documentation": "

Requests a VPC peering connection between two VPCs: a requester VPC that you own and\n\t\t an accepter VPC with which to create the connection. The accepter VPC can belong to\n\t\t another Amazon Web Services account and can be in a different Region to the requester VPC. \n The requester VPC and accepter VPC cannot have overlapping CIDR blocks.

\n \n

Limitations and rules apply to a VPC peering connection. For more information, see \n the VPC peering limitations in the VPC Peering Guide.

\n
\n

The owner of the accepter VPC must accept the peering request to activate the peering\n connection. The VPC peering connection request expires after 7 days, after which it\n cannot be accepted or rejected.

\n

If you create a VPC peering connection request between VPCs with overlapping CIDR\n blocks, the VPC peering connection has a status of failed.

" } }, - "com.amazonaws.ec2#DeleteKeyPairRequest": { + "com.amazonaws.ec2#CreateVpcPeeringConnectionRequest": { "type": "structure", "members": { - "KeyName": { - "target": "com.amazonaws.ec2#KeyPairName", + "PeerRegion": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The name of the key pair.

" + "smithy.api#documentation": "

The Region code for the accepter VPC, if the accepter VPC is located in a Region\n other than the Region in which you make the request.

\n

Default: The Region in which you make the request.

" } }, - "KeyPairId": { - "target": "com.amazonaws.ec2#KeyPairId", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The ID of the key pair.

" + "smithy.api#documentation": "

The tags to assign to the peering connection.

", + "smithy.api#xmlName": "TagSpecification" } }, "DryRun": { @@ -23306,86 +24537,31 @@ "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DeleteKeyPairResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + }, + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Is true if the request succeeds, and an error otherwise.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the requester VPC. You must specify this parameter in the\n\t\t\trequest.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "vpcId" } }, - "KeyPairId": { + "PeerVpcId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "KeyPairId", - "smithy.api#documentation": "

The ID of the key pair.

", - "smithy.api#xmlName": "keyPairId" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DeleteLaunchTemplate": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteLaunchTemplateRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteLaunchTemplateResult" - }, - "traits": { - "smithy.api#documentation": "

Deletes a launch template. Deleting a launch template deletes all of its\n versions.

", - "smithy.api#examples": [ - { - "title": "To delete a launch template", - "documentation": "This example deletes the specified launch template.", - "input": { - "LaunchTemplateId": "lt-0abcd290751193123" - }, - "output": { - "LaunchTemplate": { - "LatestVersionNumber": 2, - "LaunchTemplateId": "lt-0abcd290751193123", - "LaunchTemplateName": "my-template", - "DefaultVersionNumber": 2, - "CreatedBy": "arn:aws:iam::123456789012:root", - "CreateTime": "2017-11-23T16:46:25.000Z" - } - } - } - ] - } - }, - "com.amazonaws.ec2#DeleteLaunchTemplateRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" - } - }, - "LaunchTemplateId": { - "target": "com.amazonaws.ec2#LaunchTemplateId", - "traits": { - "smithy.api#documentation": "

The ID of the launch template.

\n

You must specify either the launch template ID or the\n launch template name, but not both.

" + "aws.protocols#ec2QueryName": "PeerVpcId", + "smithy.api#documentation": "

The ID of the VPC with which you are creating the VPC peering connection. You must\n\t\t\tspecify this parameter in the request.

", + "smithy.api#xmlName": "peerVpcId" } }, - "LaunchTemplateName": { - "target": "com.amazonaws.ec2#LaunchTemplateName", + "PeerOwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The name of the launch template.

\n

You must specify either the launch template ID or the\n launch template name, but not both.

" + "aws.protocols#ec2QueryName": "PeerOwnerId", + "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the accepter VPC.

\n

Default: Your Amazon Web Services account ID

", + "smithy.api#xmlName": "peerOwnerId" } } }, @@ -23393,15 +24569,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteLaunchTemplateResult": { + "com.amazonaws.ec2#CreateVpcPeeringConnectionResult": { "type": "structure", "members": { - "LaunchTemplate": { - "target": "com.amazonaws.ec2#LaunchTemplate", + "VpcPeeringConnection": { + "target": "com.amazonaws.ec2#VpcPeeringConnection", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplate", - "smithy.api#documentation": "

Information about the launch template.

", - "smithy.api#xmlName": "launchTemplate" + "aws.protocols#ec2QueryName": "VpcPeeringConnection", + "smithy.api#documentation": "

Information about the VPC peering connection.

", + "smithy.api#xmlName": "vpcPeeringConnection" } } }, @@ -23409,182 +24585,102 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteLaunchTemplateVersions": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteLaunchTemplateVersionsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResult" - }, - "traits": { - "smithy.api#documentation": "

Deletes one or more versions of a launch template.

\n

You can't delete the default version of a launch template; you must first assign a\n different version as the default. If the default version is the only version for the\n launch template, you must delete the entire launch template using DeleteLaunchTemplate.

\n

You can delete up to 200 launch template versions in a single request. To delete more\n than 200 versions in a single request, use DeleteLaunchTemplate, which\n deletes the launch template and all of its versions.

\n

For more information, see Delete a launch template version in the EC2 User\n Guide.

", - "smithy.api#examples": [ - { - "title": "To delete a launch template version", - "documentation": "This example deletes the specified launch template version.", - "input": { - "LaunchTemplateId": "lt-0abcd290751193123", - "Versions": [ - "1" - ] - }, - "output": { - "SuccessfullyDeletedLaunchTemplateVersions": [ - { - "LaunchTemplateName": "my-template", - "VersionNumber": 1, - "LaunchTemplateId": "lt-0abcd290751193123" - } - ], - "UnsuccessfullyDeletedLaunchTemplateVersions": [] - } - } - ] - } - }, - "com.amazonaws.ec2#DeleteLaunchTemplateVersionsRequest": { + "com.amazonaws.ec2#CreateVpcRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "CidrBlock": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + "smithy.api#documentation": "

The IPv4 network range for the VPC, in CIDR notation. For example,\n\t\t 10.0.0.0/16. We modify the specified CIDR block to its canonical form; for example, if you specify 100.68.0.18/18, we modify it to 100.68.0.0/18.

" } }, - "LaunchTemplateId": { - "target": "com.amazonaws.ec2#LaunchTemplateId", + "Ipv6Pool": { + "target": "com.amazonaws.ec2#Ipv6PoolEc2Id", "traits": { - "smithy.api#documentation": "

The ID of the launch template.

\n

You must specify either the launch template ID or the\n launch template name, but not both.

" + "smithy.api#documentation": "

The ID of an IPv6 address pool from which to allocate the IPv6 CIDR block.

" } }, - "LaunchTemplateName": { - "target": "com.amazonaws.ec2#LaunchTemplateName", + "Ipv6CidrBlock": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The name of the launch template.

\n

You must specify either the launch template ID or the\n launch template name, but not both.

" + "smithy.api#documentation": "

The IPv6 CIDR block from the IPv6 address pool. You must also specify Ipv6Pool in the request.

\n

To let Amazon choose the IPv6 CIDR block for you, omit this parameter.

" } }, - "Versions": { - "target": "com.amazonaws.ec2#VersionStringList", + "Ipv4IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The version numbers of one or more launch template versions to delete. You can specify\n up to 200 launch template version numbers.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "LaunchTemplateVersion" + "smithy.api#documentation": "

The ID of an IPv4 IPAM pool you want to use for allocating this VPC's CIDR. For more information, see What is IPAM? in the Amazon VPC IPAM User Guide.\n \n

" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResponseErrorItem": { - "type": "structure", - "members": { - "LaunchTemplateId": { - "target": "com.amazonaws.ec2#String", + }, + "Ipv4NetmaskLength": { + "target": "com.amazonaws.ec2#NetmaskLength", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateId", - "smithy.api#documentation": "

The ID of the launch template.

", - "smithy.api#xmlName": "launchTemplateId" + "smithy.api#documentation": "

The netmask length of the IPv4 CIDR you want to allocate to this VPC from an Amazon VPC IP Address Manager (IPAM) pool. For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide.

" } }, - "LaunchTemplateName": { - "target": "com.amazonaws.ec2#String", + "Ipv6IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateName", - "smithy.api#documentation": "

The name of the launch template.

", - "smithy.api#xmlName": "launchTemplateName" + "smithy.api#documentation": "

The ID of an IPv6 IPAM pool which will be used to allocate this VPC an IPv6 CIDR. IPAM is a VPC feature that you can use to automate your IP address management workflows including assigning, tracking, troubleshooting, and auditing IP addresses across Amazon Web Services Regions and accounts throughout your Amazon Web Services Organization. For more information, see What is IPAM? in the Amazon VPC IPAM User Guide.

" } }, - "VersionNumber": { - "target": "com.amazonaws.ec2#Long", + "Ipv6NetmaskLength": { + "target": "com.amazonaws.ec2#NetmaskLength", "traits": { - "aws.protocols#ec2QueryName": "VersionNumber", - "smithy.api#documentation": "

The version number of the launch template.

", - "smithy.api#xmlName": "versionNumber" + "smithy.api#documentation": "

The netmask length of the IPv6 CIDR you want to allocate to this VPC from an Amazon VPC IP Address Manager (IPAM) pool. For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide.

" } }, - "ResponseError": { - "target": "com.amazonaws.ec2#ResponseError", + "Ipv6CidrBlockNetworkBorderGroup": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ResponseError", - "smithy.api#documentation": "

Information about the error.

", - "smithy.api#xmlName": "responseError" + "smithy.api#documentation": "

The name of the location from which we advertise the IPV6 CIDR block. Use this parameter to limit the address to this location.

\n

You must set AmazonProvidedIpv6CidrBlock to true to use this parameter.

" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a launch template version that could not be deleted.

" - } - }, - "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResponseErrorSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResponseErrorItem", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResponseSuccessItem": { - "type": "structure", - "members": { - "LaunchTemplateId": { - "target": "com.amazonaws.ec2#String", + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateId", - "smithy.api#documentation": "

The ID of the launch template.

", - "smithy.api#xmlName": "launchTemplateId" + "smithy.api#documentation": "

The tags to assign to the VPC.

", + "smithy.api#xmlName": "TagSpecification" } }, - "LaunchTemplateName": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateName", - "smithy.api#documentation": "

The name of the launch template.

", - "smithy.api#xmlName": "launchTemplateName" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "VersionNumber": { - "target": "com.amazonaws.ec2#Long", + "InstanceTenancy": { + "target": "com.amazonaws.ec2#Tenancy", "traits": { - "aws.protocols#ec2QueryName": "VersionNumber", - "smithy.api#documentation": "

The version number of the launch template.

", - "smithy.api#xmlName": "versionNumber" + "aws.protocols#ec2QueryName": "InstanceTenancy", + "smithy.api#documentation": "

The tenancy options for instances launched into the VPC. For default, instances\n are launched with shared tenancy by default. You can launch instances with any tenancy into a\n shared tenancy VPC. For dedicated, instances are launched as dedicated tenancy\n instances by default. You can only launch instances with a tenancy of dedicated\n or host into a dedicated tenancy VPC.

\n

\n Important: The host value cannot be used with this parameter. Use the default or dedicated values only.

\n

Default: default\n

", + "smithy.api#xmlName": "instanceTenancy" + } + }, + "AmazonProvidedIpv6CidrBlock": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "AmazonProvidedIpv6CidrBlock", + "smithy.api#documentation": "

Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC.\n You cannot specify the range of IP addresses, or the size of the CIDR block.

", + "smithy.api#xmlName": "amazonProvidedIpv6CidrBlock" } } }, "traits": { - "smithy.api#documentation": "

Describes a launch template version that was successfully deleted.

" - } - }, - "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResponseSuccessSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResponseSuccessItem", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResult": { + "com.amazonaws.ec2#CreateVpcResult": { "type": "structure", "members": { - "SuccessfullyDeletedLaunchTemplateVersions": { - "target": "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResponseSuccessSet", - "traits": { - "aws.protocols#ec2QueryName": "SuccessfullyDeletedLaunchTemplateVersionSet", - "smithy.api#documentation": "

Information about the launch template versions that were successfully deleted.

", - "smithy.api#xmlName": "successfullyDeletedLaunchTemplateVersionSet" - } - }, - "UnsuccessfullyDeletedLaunchTemplateVersions": { - "target": "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResponseErrorSet", + "Vpc": { + "target": "com.amazonaws.ec2#Vpc", "traits": { - "aws.protocols#ec2QueryName": "UnsuccessfullyDeletedLaunchTemplateVersionSet", - "smithy.api#documentation": "

Information about the launch template versions that could not be deleted.

", - "smithy.api#xmlName": "unsuccessfullyDeletedLaunchTemplateVersionSet" + "aws.protocols#ec2QueryName": "Vpc", + "smithy.api#documentation": "

Information about the VPC.

", + "smithy.api#xmlName": "vpc" } } }, @@ -23592,794 +24688,796 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteLocalGatewayRoute": { + "com.amazonaws.ec2#CreateVpnConnection": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteLocalGatewayRouteRequest" + "target": "com.amazonaws.ec2#CreateVpnConnectionRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteLocalGatewayRouteResult" + "target": "com.amazonaws.ec2#CreateVpnConnectionResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified route from the specified local gateway route table.

" + "smithy.api#documentation": "

Creates a VPN connection between an existing virtual private gateway or transit\n gateway and a customer gateway. The supported connection type is\n ipsec.1.

\n

The response includes information that you need to give to your network administrator\n to configure your customer gateway.

\n \n

We strongly recommend that you use HTTPS when calling this operation because the\n response contains sensitive cryptographic information for configuring your customer\n gateway device.

\n
\n

If you decide to shut down your VPN connection for any reason and later create a new\n VPN connection, you must reconfigure your customer gateway with the new information\n returned from this call.

\n

This is an idempotent operation. If you perform the operation more than once, Amazon\n EC2 doesn't return an error.

\n

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN\n User Guide.

" } }, - "com.amazonaws.ec2#DeleteLocalGatewayRouteRequest": { + "com.amazonaws.ec2#CreateVpnConnectionRequest": { "type": "structure", "members": { - "DestinationCidrBlock": { - "target": "com.amazonaws.ec2#String", + "CustomerGatewayId": { + "target": "com.amazonaws.ec2#CustomerGatewayId", "traits": { - "smithy.api#documentation": "

The CIDR range for the route. This must match the CIDR for the route exactly.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the customer gateway.

", + "smithy.api#required": {} } }, - "LocalGatewayRouteTableId": { - "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", + "Type": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the local gateway route table.

", + "smithy.api#documentation": "

The type of VPN connection (ipsec.1).

", "smithy.api#required": {} } }, + "VpnGatewayId": { + "target": "com.amazonaws.ec2#VpnGatewayId", + "traits": { + "smithy.api#documentation": "

The ID of the virtual private gateway. If you specify a virtual private gateway, you\n cannot specify a transit gateway.

" + } + }, + "TransitGatewayId": { + "target": "com.amazonaws.ec2#TransitGatewayId", + "traits": { + "smithy.api#documentation": "

The ID of the transit gateway. If you specify a transit gateway, you cannot specify a virtual private\n gateway.

" + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags to apply to the VPN connection.

", + "smithy.api#xmlName": "TagSpecification" + } + }, + "PreSharedKeyStorage": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Specifies the storage mode for the pre-shared key (PSK). Valid values are Standard\" (stored in the Site-to-Site VPN service) or SecretsManager (stored in Amazon Web Services Secrets Manager).

" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "DestinationPrefixListId": { - "target": "com.amazonaws.ec2#PrefixListResourceId", + "Options": { + "target": "com.amazonaws.ec2#VpnConnectionOptionsSpecification", "traits": { - "smithy.api#documentation": "

\n Use a prefix list in place of DestinationCidrBlock. You cannot use \n DestinationPrefixListId and DestinationCidrBlock in the same request.\n

" + "aws.protocols#ec2QueryName": "Options", + "smithy.api#documentation": "

The options for the VPN connection.

", + "smithy.api#xmlName": "options" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for CreateVpnConnection.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteLocalGatewayRouteResult": { + "com.amazonaws.ec2#CreateVpnConnectionResult": { "type": "structure", "members": { - "Route": { - "target": "com.amazonaws.ec2#LocalGatewayRoute", + "VpnConnection": { + "target": "com.amazonaws.ec2#VpnConnection", "traits": { - "aws.protocols#ec2QueryName": "Route", - "smithy.api#documentation": "

Information about the route.

", - "smithy.api#xmlName": "route" + "aws.protocols#ec2QueryName": "VpnConnection", + "smithy.api#documentation": "

Information about the VPN connection.

", + "smithy.api#xmlName": "vpnConnection" } } }, "traits": { + "smithy.api#documentation": "

Contains the output of CreateVpnConnection.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteLocalGatewayRouteTable": { + "com.amazonaws.ec2#CreateVpnConnectionRoute": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteLocalGatewayRouteTableRequest" + "target": "com.amazonaws.ec2#CreateVpnConnectionRouteRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteLocalGatewayRouteTableResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

\n Deletes a local gateway route table.\n

" + "smithy.api#documentation": "

Creates a static route associated with a VPN connection between an existing virtual\n private gateway and a VPN customer gateway. The static route allows traffic to be routed\n from the virtual private gateway to the VPN customer gateway.

\n

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN\n User Guide.

" } }, - "com.amazonaws.ec2#DeleteLocalGatewayRouteTableRequest": { + "com.amazonaws.ec2#CreateVpnConnectionRouteRequest": { "type": "structure", "members": { - "LocalGatewayRouteTableId": { - "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", + "DestinationCidrBlock": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

\n The ID of the local gateway route table.\n

", + "smithy.api#documentation": "

The CIDR block associated with the local subnet of the customer network.

", "smithy.api#required": {} } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "VpnConnectionId": { + "target": "com.amazonaws.ec2#VpnConnectionId", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPN connection.

", + "smithy.api#required": {} } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for CreateVpnConnectionRoute.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteLocalGatewayRouteTableResult": { - "type": "structure", - "members": { - "LocalGatewayRouteTable": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTable", - "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTable", - "smithy.api#documentation": "

Information about the local gateway route table.

", - "smithy.api#xmlName": "localGatewayRouteTable" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociation": { + "com.amazonaws.ec2#CreateVpnGateway": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequest" + "target": "com.amazonaws.ec2#CreateVpnGatewayRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationResult" + "target": "com.amazonaws.ec2#CreateVpnGatewayResult" }, "traits": { - "smithy.api#documentation": "

\n Deletes a local gateway route table virtual interface group association.\n

" + "smithy.api#documentation": "

Creates a virtual private gateway. A virtual private gateway is the endpoint on the\n VPC side of your VPN connection. You can create a virtual private gateway before\n creating the VPC itself.

\n

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN\n User Guide.

" } }, - "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequest": { + "com.amazonaws.ec2#CreateVpnGatewayRequest": { "type": "structure", "members": { - "LocalGatewayRouteTableVirtualInterfaceGroupAssociationId": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociationId", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The Availability Zone for the virtual private gateway.

" + } + }, + "Type": { + "target": "com.amazonaws.ec2#GatewayType", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

\n The ID of the local gateway route table virtual interface group association.\n

", + "smithy.api#documentation": "

The type of VPN connection this virtual private gateway supports.

", "smithy.api#required": {} } }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags to apply to the virtual private gateway.

", + "smithy.api#xmlName": "TagSpecification" + } + }, + "AmazonSideAsn": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "smithy.api#documentation": "

A private Autonomous System Number (ASN) for the Amazon side of a BGP session. If\n you're using a 16-bit ASN, it must be in the 64512 to 65534 range. If you're using a\n 32-bit ASN, it must be in the 4200000000 to 4294967294 range.

\n

Default: 64512

" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for CreateVpnGateway.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationResult": { + "com.amazonaws.ec2#CreateVpnGatewayResult": { "type": "structure", "members": { - "LocalGatewayRouteTableVirtualInterfaceGroupAssociation": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociation", + "VpnGateway": { + "target": "com.amazonaws.ec2#VpnGateway", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableVirtualInterfaceGroupAssociation", - "smithy.api#documentation": "

Information about the association.

", - "smithy.api#xmlName": "localGatewayRouteTableVirtualInterfaceGroupAssociation" + "aws.protocols#ec2QueryName": "VpnGateway", + "smithy.api#documentation": "

Information about the virtual private gateway.

", + "smithy.api#xmlName": "vpnGateway" } } }, "traits": { + "smithy.api#documentation": "

Contains the output of CreateVpnGateway.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVpcAssociation": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVpcAssociationRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVpcAssociationResult" - }, - "traits": { - "smithy.api#documentation": "

Deletes the specified association between a VPC and local gateway route table.

" - } - }, - "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVpcAssociationRequest": { + "com.amazonaws.ec2#CreationDateCondition": { "type": "structure", "members": { - "LocalGatewayRouteTableVpcAssociationId": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociationId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the association.

", - "smithy.api#required": {} - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "MaximumDaysSinceCreated": { + "target": "com.amazonaws.ec2#MaximumDaysSinceCreatedValue", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "MaximumDaysSinceCreated", + "smithy.api#documentation": "

The maximum number of days that have elapsed since the image was created. For example, a\n value of 300 allows images that were created within the last 300 days.

", + "smithy.api#xmlName": "maximumDaysSinceCreated" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

The maximum age for allowed images.

" } }, - "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVpcAssociationResult": { + "com.amazonaws.ec2#CreationDateConditionRequest": { "type": "structure", "members": { - "LocalGatewayRouteTableVpcAssociation": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociation", + "MaximumDaysSinceCreated": { + "target": "com.amazonaws.ec2#MaximumDaysSinceCreatedValue", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableVpcAssociation", - "smithy.api#documentation": "

Information about the association.

", - "smithy.api#xmlName": "localGatewayRouteTableVpcAssociation" + "smithy.api#documentation": "

The maximum number of days that have elapsed since the image was created. For example, a\n value of 300 allows images that were created within the last 300 days.

" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

The maximum age for allowed images.

" } }, - "com.amazonaws.ec2#DeleteManagedPrefixList": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteManagedPrefixListRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteManagedPrefixListResult" + "com.amazonaws.ec2#CreditSpecification": { + "type": "structure", + "members": { + "CpuCredits": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "CpuCredits", + "smithy.api#documentation": "

The credit option for CPU usage of a T instance.

\n

Valid values: standard | unlimited\n

", + "smithy.api#xmlName": "cpuCredits" + } + } }, "traits": { - "smithy.api#documentation": "

Deletes the specified managed prefix list. You must first remove all references to the prefix list in your resources.

" + "smithy.api#documentation": "

Describes the credit option for CPU usage of a T instance.

" } }, - "com.amazonaws.ec2#DeleteManagedPrefixListRequest": { + "com.amazonaws.ec2#CreditSpecificationRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "PrefixListId": { - "target": "com.amazonaws.ec2#PrefixListResourceId", + "CpuCredits": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the prefix list.

", + "smithy.api#documentation": "

The credit option for CPU usage of a T instance.

\n

Valid values: standard | unlimited\n

", "smithy.api#required": {} } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

The credit option for CPU usage of a T instance.

" } }, - "com.amazonaws.ec2#DeleteManagedPrefixListResult": { - "type": "structure", + "com.amazonaws.ec2#CurrencyCodeValues": { + "type": "enum", "members": { - "PrefixList": { - "target": "com.amazonaws.ec2#ManagedPrefixList", + "USD": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PrefixList", - "smithy.api#documentation": "

Information about the prefix list.

", - "smithy.api#xmlName": "prefixList" + "smithy.api#enumValue": "USD" } } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteNatGateway": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteNatGatewayRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteNatGatewayResult" - }, - "traits": { - "smithy.api#documentation": "

Deletes the specified NAT gateway. Deleting a public NAT gateway disassociates its Elastic IP address, \n but does not release the address from your account. Deleting a NAT gateway does not delete any NAT gateway \n routes in your route tables.

", - "smithy.api#examples": [ - { - "title": "To delete a NAT gateway", - "documentation": "This example deletes the specified NAT gateway.", - "input": { - "NatGatewayId": "nat-04ae55e711cec5680" - }, - "output": { - "NatGatewayId": "nat-04ae55e711cec5680" - } - } - ] - } + "com.amazonaws.ec2#CurrentGenerationFlag": { + "type": "boolean" }, - "com.amazonaws.ec2#DeleteNatGatewayRequest": { + "com.amazonaws.ec2#CustomerGateway": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "CertificateArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "CertificateArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the customer gateway certificate.

", + "smithy.api#xmlName": "certificateArn" } }, - "NatGatewayId": { - "target": "com.amazonaws.ec2#NatGatewayId", + "DeviceName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the NAT gateway.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "NatGatewayId" + "aws.protocols#ec2QueryName": "DeviceName", + "smithy.api#documentation": "

The name of customer gateway device.

", + "smithy.api#xmlName": "deviceName" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DeleteNatGatewayResult": { - "type": "structure", - "members": { - "NatGatewayId": { + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the customer gateway.

", + "smithy.api#xmlName": "tagSet" + } + }, + "BgpAsnExtended": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NatGatewayId", - "smithy.api#documentation": "

The ID of the NAT gateway.

", - "smithy.api#xmlName": "natGatewayId" + "aws.protocols#ec2QueryName": "BgpAsnExtended", + "smithy.api#documentation": "

The customer gateway device's Border Gateway Protocol (BGP) Autonomous System Number\n (ASN).

\n

Valid values: 2,147,483,648 to 4,294,967,295\n

", + "smithy.api#xmlName": "bgpAsnExtended" + } + }, + "CustomerGatewayId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "CustomerGatewayId", + "smithy.api#documentation": "

The ID of the customer gateway.

", + "smithy.api#xmlName": "customerGatewayId" + } + }, + "State": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the customer gateway (pending | available | deleting |\n deleted).

", + "smithy.api#xmlName": "state" + } + }, + "Type": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Type", + "smithy.api#documentation": "

The type of VPN connection the customer gateway supports\n (ipsec.1).

", + "smithy.api#xmlName": "type" + } + }, + "IpAddress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "IpAddress", + "smithy.api#documentation": "

\n The IP address for the customer gateway device's outside interface. The address must be static. If OutsideIpAddressType in your VPN connection options is set to PrivateIpv4, you can use an RFC6598 or RFC1918 private IPv4 address. If \n OutsideIpAddressType is set to PublicIpv4, you can use a public IPv4 address. If OutsideIpAddressType is set to Ipv6, you can use a public IPv6 address.\n

", + "smithy.api#xmlName": "ipAddress" + } + }, + "BgpAsn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "BgpAsn", + "smithy.api#documentation": "

The customer gateway device's Border Gateway Protocol (BGP) Autonomous System Number\n (ASN).

\n

Valid values: 1 to 2,147,483,647\n

", + "smithy.api#xmlName": "bgpAsn" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes a customer gateway.

" } }, - "com.amazonaws.ec2#DeleteNetworkAcl": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteNetworkAclRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, + "com.amazonaws.ec2#CustomerGatewayId": { + "type": "string" + }, + "com.amazonaws.ec2#CustomerGatewayIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CustomerGatewayId", + "traits": { + "smithy.api#xmlName": "CustomerGatewayId" + } + } + }, + "com.amazonaws.ec2#CustomerGatewayList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#CustomerGateway", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#DITMaxResults": { + "type": "integer", "traits": { - "smithy.api#documentation": "

Deletes the specified network ACL. You can't delete the ACL if it's associated with any subnets. You can't delete the default network ACL.

", - "smithy.api#examples": [ - { - "title": "To delete a network ACL", - "documentation": "This example deletes the specified network ACL.", - "input": { - "NetworkAclId": "acl-5fb85d36" - } - } - ] + "smithy.api#range": { + "min": 5, + "max": 100 + } } }, - "com.amazonaws.ec2#DeleteNetworkAclEntry": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteNetworkAclEntryRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, + "com.amazonaws.ec2#DITOMaxResults": { + "type": "integer", "traits": { - "smithy.api#documentation": "

Deletes the specified ingress or egress entry (rule) from the specified network ACL.

", - "smithy.api#examples": [ - { - "title": "To delete a network ACL entry", - "documentation": "This example deletes ingress rule number 100 from the specified network ACL.", - "input": { - "NetworkAclId": "acl-5fb85d36", - "RuleNumber": 100, - "Egress": true - } - } - ] + "smithy.api#range": { + "min": 5, + "max": 1000 + } } }, - "com.amazonaws.ec2#DeleteNetworkAclEntryRequest": { + "com.amazonaws.ec2#DataQueries": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DataQuery" + } + }, + "com.amazonaws.ec2#DataQuery": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Id": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

A user-defined ID associated with a data query that's returned in the dataResponse identifying the query. For example, if you set the Id to MyQuery01in the query, the dataResponse identifies the query as MyQuery01.

" } }, - "Egress": { - "target": "com.amazonaws.ec2#Boolean", + "Source": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Egress", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Indicates whether the rule is an egress rule.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "egress" + "smithy.api#documentation": "

The Region or Availability Zone that's the source for the data query. For example, us-east-1.

" } }, - "NetworkAclId": { - "target": "com.amazonaws.ec2#NetworkAclId", + "Destination": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NetworkAclId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the network ACL.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "networkAclId" + "smithy.api#documentation": "

The Region or Availability Zone that's the target for the data query. For example, eu-north-1.

" } }, - "RuleNumber": { - "target": "com.amazonaws.ec2#Integer", + "Metric": { + "target": "com.amazonaws.ec2#MetricType", "traits": { - "aws.protocols#ec2QueryName": "RuleNumber", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The rule number of the entry to delete.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "ruleNumber" + "smithy.api#documentation": "

The metric used for the network performance request.

" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DeleteNetworkAclRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "Statistic": { + "target": "com.amazonaws.ec2#StatisticType", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The metric data aggregation period, p50, between the specified startDate \n and endDate. For example, a metric of five_minutes is the median of all \n the data points gathered within those five minutes. p50 is the only supported metric.

" } }, - "NetworkAclId": { - "target": "com.amazonaws.ec2#NetworkAclId", + "Period": { + "target": "com.amazonaws.ec2#PeriodType", "traits": { - "aws.protocols#ec2QueryName": "NetworkAclId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the network ACL.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "networkAclId" + "smithy.api#documentation": "

The aggregation period used for the data query.

" } } }, "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DeleteNetworkInsightsAccessScope": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeResult" - }, - "traits": { - "smithy.api#documentation": "

Deletes the specified Network Access Scope.

" - } - }, - "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeAnalysis": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeAnalysisRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeAnalysisResult" - }, - "traits": { - "smithy.api#documentation": "

Deletes the specified Network Access Scope analysis.

" + "smithy.api#documentation": "

A query used for retrieving network health data.

" } }, - "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeAnalysisRequest": { + "com.amazonaws.ec2#DataResponse": { "type": "structure", "members": { - "NetworkInsightsAccessScopeAnalysisId": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisId", + "Id": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Network Access Scope analysis.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Id", + "smithy.api#documentation": "

The ID passed in the DataQuery.

", + "smithy.api#xmlName": "id" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Source": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "Source", + "smithy.api#documentation": "

The Region or Availability Zone that's the source for the data query. For example, us-east-1.

", + "smithy.api#xmlName": "source" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeAnalysisResult": { - "type": "structure", - "members": { - "NetworkInsightsAccessScopeAnalysisId": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisId", + }, + "Destination": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeAnalysisId", - "smithy.api#documentation": "

The ID of the Network Access Scope analysis.

", - "smithy.api#xmlName": "networkInsightsAccessScopeAnalysisId" + "aws.protocols#ec2QueryName": "Destination", + "smithy.api#documentation": "

The Region or Availability Zone that's the destination for the data query. For example, eu-west-1.

", + "smithy.api#xmlName": "destination" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "Metric": { + "target": "com.amazonaws.ec2#MetricType", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "Metric", + "smithy.api#documentation": "

The metric used for the network performance request.

", + "smithy.api#xmlName": "metric" } }, - "NetworkInsightsAccessScopeId": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeId", + "Statistic": { + "target": "com.amazonaws.ec2#StatisticType", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Network Access Scope.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Statistic", + "smithy.api#documentation": "

The statistic used for the network performance request.

", + "smithy.api#xmlName": "statistic" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeResult": { - "type": "structure", - "members": { - "NetworkInsightsAccessScopeId": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeId", + }, + "Period": { + "target": "com.amazonaws.ec2#PeriodType", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeId", - "smithy.api#documentation": "

The ID of the Network Access Scope.

", - "smithy.api#xmlName": "networkInsightsAccessScopeId" + "aws.protocols#ec2QueryName": "Period", + "smithy.api#documentation": "

The period used for the network performance request.

", + "smithy.api#xmlName": "period" + } + }, + "MetricPoints": { + "target": "com.amazonaws.ec2#MetricPoints", + "traits": { + "aws.protocols#ec2QueryName": "MetricPointSet", + "smithy.api#documentation": "

A list of MetricPoint objects.

", + "smithy.api#xmlName": "metricPointSet" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

The response to a DataQuery.

" } }, - "com.amazonaws.ec2#DeleteNetworkInsightsAnalysis": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteNetworkInsightsAnalysisRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteNetworkInsightsAnalysisResult" - }, - "traits": { - "smithy.api#documentation": "

Deletes the specified network insights analysis.

" + "com.amazonaws.ec2#DataResponses": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DataResponse", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#DeleteNetworkInsightsAnalysisRequest": { - "type": "structure", + "com.amazonaws.ec2#DatafeedSubscriptionState": { + "type": "enum", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Active": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "Active" } }, - "NetworkInsightsAnalysisId": { - "target": "com.amazonaws.ec2#NetworkInsightsAnalysisId", + "Inactive": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the network insights analysis.

", - "smithy.api#required": {} + "smithy.api#enumValue": "Inactive" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteNetworkInsightsAnalysisResult": { - "type": "structure", - "members": { - "NetworkInsightsAnalysisId": { - "target": "com.amazonaws.ec2#NetworkInsightsAnalysisId", - "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAnalysisId", - "smithy.api#documentation": "

The ID of the network insights analysis.

", - "smithy.api#xmlName": "networkInsightsAnalysisId" - } - } - }, - "traits": { - "smithy.api#output": {} - } + "com.amazonaws.ec2#DateTime": { + "type": "timestamp" }, - "com.amazonaws.ec2#DeleteNetworkInsightsPath": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteNetworkInsightsPathRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteNetworkInsightsPathResult" - }, + "com.amazonaws.ec2#DeclarativePoliciesMaxResults": { + "type": "integer", "traits": { - "smithy.api#documentation": "

Deletes the specified path.

" + "smithy.api#range": { + "min": 1, + "max": 1000 + } } }, - "com.amazonaws.ec2#DeleteNetworkInsightsPathRequest": { + "com.amazonaws.ec2#DeclarativePoliciesReport": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ReportId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "ReportId", + "smithy.api#documentation": "

The ID of the report.

", + "smithy.api#xmlName": "reportId" } }, - "NetworkInsightsPathId": { - "target": "com.amazonaws.ec2#NetworkInsightsPathId", + "S3Bucket": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the path.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "S3Bucket", + "smithy.api#documentation": "

The name of the Amazon S3 bucket where the report is located.

", + "smithy.api#xmlName": "s3Bucket" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DeleteNetworkInsightsPathResult": { - "type": "structure", - "members": { - "NetworkInsightsPathId": { - "target": "com.amazonaws.ec2#NetworkInsightsPathId", + }, + "S3Prefix": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsPathId", - "smithy.api#documentation": "

The ID of the path.

", - "smithy.api#xmlName": "networkInsightsPathId" + "aws.protocols#ec2QueryName": "S3Prefix", + "smithy.api#documentation": "

The prefix for your S3 object.

", + "smithy.api#xmlName": "s3Prefix" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DeleteNetworkInterface": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteNetworkInterfaceRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Deletes the specified network interface. You must detach the network interface before you can delete it.

", - "smithy.api#examples": [ - { - "title": "To delete a network interface", - "documentation": "This example deletes the specified network interface.", - "input": { - "NetworkInterfaceId": "eni-e5aa89a3" - } + }, + "TargetId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "TargetId", + "smithy.api#documentation": "

The root ID, organizational unit ID, or account ID.

\n

Format:

\n ", + "smithy.api#xmlName": "targetId" } - ] - } - }, - "com.amazonaws.ec2#DeleteNetworkInterfacePermission": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteNetworkInterfacePermissionRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteNetworkInterfacePermissionResult" + }, + "StartTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "StartTime", + "smithy.api#documentation": "

The time when the report generation started.

", + "smithy.api#xmlName": "startTime" + } + }, + "EndTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "EndTime", + "smithy.api#documentation": "

The time when the report generation ended.

", + "smithy.api#xmlName": "endTime" + } + }, + "Status": { + "target": "com.amazonaws.ec2#ReportState", + "traits": { + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The current status of the report.

", + "smithy.api#xmlName": "status" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the report.

", + "smithy.api#xmlName": "tagSet" + } + } }, "traits": { - "smithy.api#documentation": "

Deletes a permission for a network interface. By default, you cannot delete the\n\t\t\tpermission if the account for which you're removing the permission has attached the\n\t\t\tnetwork interface to an instance. However, you can force delete the permission,\n\t\t\tregardless of any attachment.

" + "smithy.api#documentation": "

Describes the metadata of the account status report.

" } }, - "com.amazonaws.ec2#DeleteNetworkInterfacePermissionRequest": { - "type": "structure", + "com.amazonaws.ec2#DeclarativePoliciesReportId": { + "type": "string" + }, + "com.amazonaws.ec2#DeclarativePoliciesReportList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DeclarativePoliciesReport", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#DedicatedHostFlag": { + "type": "boolean" + }, + "com.amazonaws.ec2#DedicatedHostId": { + "type": "string" + }, + "com.amazonaws.ec2#DedicatedHostIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DedicatedHostId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#DefaultEnaQueueCountPerInterface": { + "type": "integer" + }, + "com.amazonaws.ec2#DefaultInstanceMetadataEndpointState": { + "type": "enum", "members": { - "NetworkInterfacePermissionId": { - "target": "com.amazonaws.ec2#NetworkInterfacePermissionId", + "disabled": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the network interface permission.

", - "smithy.api#required": {} + "smithy.api#enumValue": "disabled" } }, - "Force": { - "target": "com.amazonaws.ec2#Boolean", + "enabled": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Specify true to remove the permission even if the network interface is\n\t\t\tattached to an instance.

" + "smithy.api#enumValue": "enabled" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "no_preference": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is DryRunOperation. \n\t\t\tOtherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "no-preference" } } - }, - "traits": { - "smithy.api#documentation": "

Contains the parameters for DeleteNetworkInterfacePermission.

", - "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteNetworkInterfacePermissionResult": { - "type": "structure", + "com.amazonaws.ec2#DefaultInstanceMetadataTagsState": { + "type": "enum", "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + "disabled": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds, otherwise returns an error.

", - "smithy.api#xmlName": "return" + "smithy.api#enumValue": "disabled" + } + }, + "enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enabled" + } + }, + "no_preference": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "no-preference" } } - }, - "traits": { - "smithy.api#documentation": "

Contains the output for DeleteNetworkInterfacePermission.

", - "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteNetworkInterfaceRequest": { - "type": "structure", + "com.amazonaws.ec2#DefaultNetworkCardIndex": { + "type": "integer" + }, + "com.amazonaws.ec2#DefaultRouteTableAssociationValue": { + "type": "enum", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "enable": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#enumValue": "enable" } }, - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#NetworkInterfaceId", + "disable": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the network interface.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "networkInterfaceId" + "smithy.api#enumValue": "disable" } } - }, - "traits": { - "smithy.api#documentation": "

Contains the parameters for DeleteNetworkInterface.

", - "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeletePlacementGroup": { + "com.amazonaws.ec2#DefaultRouteTablePropagationValue": { + "type": "enum", + "members": { + "enable": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enable" + } + }, + "disable": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disable" + } + } + } + }, + "com.amazonaws.ec2#DefaultTargetCapacityType": { + "type": "enum", + "members": { + "SPOT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "spot" + } + }, + "ON_DEMAND": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "on-demand" + } + }, + "CAPACITY_BLOCK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "capacity-block" + } + } + } + }, + "com.amazonaws.ec2#DefaultingDhcpOptionsId": { + "type": "string" + }, + "com.amazonaws.ec2#DeleteCarrierGateway": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeletePlacementGroupRequest" + "target": "com.amazonaws.ec2#DeleteCarrierGatewayRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.ec2#DeleteCarrierGatewayResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified placement group. You must terminate all instances in the\n placement group before you can delete the placement group. For more information, see\n Placement groups in the Amazon EC2 User Guide.

", - "smithy.api#examples": [ - { - "title": "To delete a placement group", - "documentation": "This example deletes the specified placement group.\n", - "input": { - "GroupName": "my-cluster" - }, - "output": {} - } - ] + "smithy.api#documentation": "

Deletes a carrier gateway.

\n \n

If you do not delete the route that contains the carrier gateway as the\n Target, the route is a blackhole route. For information about how to delete a route, see \n DeleteRoute.

\n
" } }, - "com.amazonaws.ec2#DeletePlacementGroupRequest": { + "com.amazonaws.ec2#DeleteCarrierGatewayRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "CarrierGatewayId": { + "target": "com.amazonaws.ec2#CarrierGatewayId", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the carrier gateway.

", + "smithy.api#required": {} } }, - "GroupName": { - "target": "com.amazonaws.ec2#PlacementGroupName", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "GroupName", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The name of the placement group.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "groupName" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -24387,33 +25485,49 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeletePublicIpv4Pool": { + "com.amazonaws.ec2#DeleteCarrierGatewayResult": { + "type": "structure", + "members": { + "CarrierGateway": { + "target": "com.amazonaws.ec2#CarrierGateway", + "traits": { + "aws.protocols#ec2QueryName": "CarrierGateway", + "smithy.api#documentation": "

Information about the carrier gateway.

", + "smithy.api#xmlName": "carrierGateway" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DeleteClientVpnEndpoint": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeletePublicIpv4PoolRequest" + "target": "com.amazonaws.ec2#DeleteClientVpnEndpointRequest" }, "output": { - "target": "com.amazonaws.ec2#DeletePublicIpv4PoolResult" + "target": "com.amazonaws.ec2#DeleteClientVpnEndpointResult" }, "traits": { - "smithy.api#documentation": "

Delete a public IPv4 pool. A public IPv4 pool is an EC2 IP address pool required for the public IPv4 CIDRs that you own and bring to Amazon Web Services to manage with IPAM. IPv6 addresses you bring to Amazon Web Services, however, use IPAM pools only.

" + "smithy.api#documentation": "

Deletes the specified Client VPN endpoint. You must disassociate all target networks before you \n\t\t\tcan delete a Client VPN endpoint.

" } }, - "com.amazonaws.ec2#DeletePublicIpv4PoolRequest": { + "com.amazonaws.ec2#DeleteClientVpnEndpointRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ClientVpnEndpointId": { + "target": "com.amazonaws.ec2#ClientVpnEndpointId", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Client VPN to be deleted.

", + "smithy.api#required": {} } }, - "PoolId": { - "target": "com.amazonaws.ec2#Ipv4PoolEc2Id", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the public IPv4 pool you want to delete.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -24421,15 +25535,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeletePublicIpv4PoolResult": { + "com.amazonaws.ec2#DeleteClientVpnEndpointResult": { "type": "structure", "members": { - "ReturnValue": { - "target": "com.amazonaws.ec2#Boolean", + "Status": { + "target": "com.amazonaws.ec2#ClientVpnEndpointStatus", "traits": { - "aws.protocols#ec2QueryName": "ReturnValue", - "smithy.api#documentation": "

Information about the result of deleting the public IPv4 pool.

", - "smithy.api#xmlName": "returnValue" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The current state of the Client VPN endpoint.

", + "smithy.api#xmlName": "status" } } }, @@ -24437,96 +25551,105 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteQueuedReservedInstances": { + "com.amazonaws.ec2#DeleteClientVpnRoute": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteQueuedReservedInstancesRequest" + "target": "com.amazonaws.ec2#DeleteClientVpnRouteRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteQueuedReservedInstancesResult" + "target": "com.amazonaws.ec2#DeleteClientVpnRouteResult" }, "traits": { - "smithy.api#documentation": "

Deletes the queued purchases for the specified Reserved Instances.

" + "smithy.api#documentation": "

Deletes a route from a Client VPN endpoint. You can only delete routes that you manually added using \n\t\t\tthe CreateClientVpnRoute action. You cannot delete routes that were \n\t\t\tautomatically added when associating a subnet. To remove routes that have been automatically added, \n\t\t\tdisassociate the target subnet from the Client VPN endpoint.

" } }, - "com.amazonaws.ec2#DeleteQueuedReservedInstancesError": { + "com.amazonaws.ec2#DeleteClientVpnRouteRequest": { "type": "structure", "members": { - "Code": { - "target": "com.amazonaws.ec2#DeleteQueuedReservedInstancesErrorCode", + "ClientVpnEndpointId": { + "target": "com.amazonaws.ec2#ClientVpnEndpointId", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The error code.

", - "smithy.api#xmlName": "code" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Client VPN endpoint from which the route is to be deleted.

", + "smithy.api#required": {} } }, - "Message": { + "TargetVpcSubnetId": { + "target": "com.amazonaws.ec2#SubnetId", + "traits": { + "smithy.api#documentation": "

The ID of the target subnet used by the route.

" + } + }, + "DestinationCidrBlock": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Message", - "smithy.api#documentation": "

The error message.

", - "smithy.api#xmlName": "message" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IPv4 address range, in CIDR notation, of the route to be deleted.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Describes the error for a Reserved Instance whose queued purchase could not be deleted.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteQueuedReservedInstancesErrorCode": { - "type": "enum", + "com.amazonaws.ec2#DeleteClientVpnRouteResult": { + "type": "structure", "members": { - "RESERVED_INSTANCES_ID_INVALID": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "reserved-instances-id-invalid" - } - }, - "RESERVED_INSTANCES_NOT_IN_QUEUED_STATE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "reserved-instances-not-in-queued-state" - } - }, - "UNEXPECTED_ERROR": { - "target": "smithy.api#Unit", + "Status": { + "target": "com.amazonaws.ec2#ClientVpnRouteStatus", "traits": { - "smithy.api#enumValue": "unexpected-error" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The current state of the route.

", + "smithy.api#xmlName": "status" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteQueuedReservedInstancesIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ReservationId", - "traits": { - "smithy.api#xmlName": "item" - } + "com.amazonaws.ec2#DeleteCoipCidr": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteCoipCidrRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeleteCoipCidrResult" }, "traits": { - "smithy.api#length": { - "min": 1, - "max": 100 - } + "smithy.api#documentation": "

\n Deletes a range of customer-owned IP addresses.\n

" } }, - "com.amazonaws.ec2#DeleteQueuedReservedInstancesRequest": { + "com.amazonaws.ec2#DeleteCoipCidrRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Cidr": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A customer-owned IP address range that you want to delete.

", + "smithy.api#required": {} } }, - "ReservedInstancesIds": { - "target": "com.amazonaws.ec2#DeleteQueuedReservedInstancesIdList", + "CoipPoolId": { + "target": "com.amazonaws.ec2#Ipv4PoolCoipId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the Reserved Instances.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "ReservedInstancesId" + "smithy.api#documentation": "

\n The ID of the customer-owned address pool. \n

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -24534,23 +25657,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteQueuedReservedInstancesResult": { + "com.amazonaws.ec2#DeleteCoipCidrResult": { "type": "structure", "members": { - "SuccessfulQueuedPurchaseDeletions": { - "target": "com.amazonaws.ec2#SuccessfulQueuedPurchaseDeletionSet", - "traits": { - "aws.protocols#ec2QueryName": "SuccessfulQueuedPurchaseDeletionSet", - "smithy.api#documentation": "

Information about the queued purchases that were successfully deleted.

", - "smithy.api#xmlName": "successfulQueuedPurchaseDeletionSet" - } - }, - "FailedQueuedPurchaseDeletions": { - "target": "com.amazonaws.ec2#FailedQueuedPurchaseDeletionSet", + "CoipCidr": { + "target": "com.amazonaws.ec2#CoipCidr", "traits": { - "aws.protocols#ec2QueryName": "FailedQueuedPurchaseDeletionSet", - "smithy.api#documentation": "

Information about the queued purchases that could not be deleted.

", - "smithy.api#xmlName": "failedQueuedPurchaseDeletionSet" + "aws.protocols#ec2QueryName": "CoipCidr", + "smithy.api#documentation": "

\n Information about a range of customer-owned IP addresses.\n

", + "smithy.api#xmlName": "coipCidr" } } }, @@ -24558,203 +25673,131 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteRoute": { + "com.amazonaws.ec2#DeleteCoipPool": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteRouteRequest" + "target": "com.amazonaws.ec2#DeleteCoipPoolRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.ec2#DeleteCoipPoolResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified route from the specified route table.

", - "smithy.api#examples": [ - { - "title": "To delete a route", - "documentation": "This example deletes the specified route from the specified route table.", - "input": { - "RouteTableId": "rtb-22574640", - "DestinationCidrBlock": "0.0.0.0/0" - } - } - ] + "smithy.api#documentation": "

Deletes a pool of customer-owned IP (CoIP) addresses.

" } }, - "com.amazonaws.ec2#DeleteRouteRequest": { + "com.amazonaws.ec2#DeleteCoipPoolRequest": { "type": "structure", "members": { - "DestinationCidrBlock": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "DestinationCidrBlock", - "smithy.api#documentation": "

The IPv4 CIDR range for the route. The value you specify must match the CIDR for the route exactly.

", - "smithy.api#xmlName": "destinationCidrBlock" - } - }, - "DestinationIpv6CidrBlock": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "DestinationIpv6CidrBlock", - "smithy.api#documentation": "

The IPv6 CIDR range for the route. The value you specify must match the CIDR for the route exactly.

", - "smithy.api#xmlName": "destinationIpv6CidrBlock" - } - }, - "DestinationPrefixListId": { - "target": "com.amazonaws.ec2#PrefixListResourceId", + "CoipPoolId": { + "target": "com.amazonaws.ec2#Ipv4PoolCoipId", "traits": { - "smithy.api#documentation": "

The ID of the prefix list for the route.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the CoIP pool that you want to delete.

", + "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "RouteTableId": { - "target": "com.amazonaws.ec2#RouteTableId", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DeleteCoipPoolResult": { + "type": "structure", + "members": { + "CoipPool": { + "target": "com.amazonaws.ec2#CoipPool", "traits": { - "aws.protocols#ec2QueryName": "RouteTableId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the route table.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "routeTableId" + "aws.protocols#ec2QueryName": "CoipPool", + "smithy.api#documentation": "

Information about the CoIP address pool.

", + "smithy.api#xmlName": "coipPool" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteRouteTable": { + "com.amazonaws.ec2#DeleteCustomerGateway": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteRouteTableRequest" + "target": "com.amazonaws.ec2#DeleteCustomerGatewayRequest" }, "output": { "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Deletes the specified route table. You must disassociate the route table from any subnets before you can delete it. You can't delete the main route table.

", + "smithy.api#documentation": "

Deletes the specified customer gateway. You must delete the VPN connection before you\n can delete the customer gateway.

", "smithy.api#examples": [ { - "title": "To delete a route table", - "documentation": "This example deletes the specified route table.", + "title": "To delete a customer gateway", + "documentation": "This example deletes the specified customer gateway.", "input": { - "RouteTableId": "rtb-22574640" + "CustomerGatewayId": "cgw-0e11f167" } } ] } }, - "com.amazonaws.ec2#DeleteRouteTableRequest": { + "com.amazonaws.ec2#DeleteCustomerGatewayRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" - } - }, - "RouteTableId": { - "target": "com.amazonaws.ec2#RouteTableId", + "CustomerGatewayId": { + "target": "com.amazonaws.ec2#CustomerGatewayId", "traits": { - "aws.protocols#ec2QueryName": "RouteTableId", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the route table.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "routeTableId" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DeleteSecurityGroup": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteSecurityGroupRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Deletes a security group.

\n

If you attempt to delete a security group that is associated with an instance or network interface or is\n\t\t\t referenced by another security group, the operation fails with\n\t\t\t\tDependencyViolation.

", - "smithy.api#examples": [ - { - "title": "To delete a security group", - "documentation": "This example deletes the specified security group.", - "input": { - "GroupId": "sg-903004f8" - }, - "output": {} - } - ] - } - }, - "com.amazonaws.ec2#DeleteSecurityGroupRequest": { - "type": "structure", - "members": { - "GroupId": { - "target": "com.amazonaws.ec2#SecurityGroupId", - "traits": { - "smithy.api#documentation": "

The ID of the security group.

" - } - }, - "GroupName": { - "target": "com.amazonaws.ec2#SecurityGroupName", - "traits": { - "smithy.api#documentation": "

[Default VPC] The name of the security group. You can specify either the\n security group name or the security group ID. For security groups in a nondefault VPC,\n you must specify the security group ID.

" + "smithy.api#documentation": "

The ID of the customer gateway.

", + "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DeleteCustomerGateway.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteSnapshot": { + "com.amazonaws.ec2#DeleteDhcpOptions": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteSnapshotRequest" + "target": "com.amazonaws.ec2#DeleteDhcpOptionsRequest" }, "output": { "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Deletes the specified snapshot.

\n

When you make periodic snapshots of a volume, the snapshots are incremental, and only the\n blocks on the device that have changed since your last snapshot are saved in the new snapshot.\n When you delete a snapshot, only the data not needed for any other snapshot is removed. So\n regardless of which prior snapshots have been deleted, all active snapshots will have access\n to all the information needed to restore the volume.

\n

You cannot delete a snapshot of the root device of an EBS volume used by a registered AMI.\n You must first de-register the AMI before you can delete the snapshot.

\n

For more information, see Delete an Amazon EBS snapshot in the\n Amazon EBS User Guide.

", + "smithy.api#documentation": "

Deletes the specified set of DHCP options. You must disassociate the set of DHCP options before you can delete it. You can disassociate the set of DHCP options by associating either a new set of options or the default set of options with the VPC.

", "smithy.api#examples": [ { - "title": "To delete a snapshot", - "documentation": "This example deletes a snapshot with the snapshot ID of ``snap-1234567890abcdef0``. If the command succeeds, no output is returned.", + "title": "To delete a DHCP options set", + "documentation": "This example deletes the specified DHCP options set.", "input": { - "SnapshotId": "snap-1234567890abcdef0" - }, - "output": {} + "DhcpOptionsId": "dopt-d9070ebb" + } } ] } }, - "com.amazonaws.ec2#DeleteSnapshotRequest": { + "com.amazonaws.ec2#DeleteDhcpOptionsRequest": { "type": "structure", "members": { - "SnapshotId": { - "target": "com.amazonaws.ec2#SnapshotId", + "DhcpOptionsId": { + "target": "com.amazonaws.ec2#DhcpOptionsId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the EBS snapshot.

", + "smithy.api#documentation": "

The ID of the DHCP options set.

", "smithy.api#required": {} } }, @@ -24771,226 +25814,219 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteSpotDatafeedSubscription": { + "com.amazonaws.ec2#DeleteEgressOnlyInternetGateway": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteSpotDatafeedSubscriptionRequest" + "target": "com.amazonaws.ec2#DeleteEgressOnlyInternetGatewayRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.ec2#DeleteEgressOnlyInternetGatewayResult" }, "traits": { - "smithy.api#documentation": "

Deletes the data feed for Spot Instances.

", - "smithy.api#examples": [ - { - "title": "To cancel a Spot Instance data feed subscription", - "documentation": "This example deletes a Spot data feed subscription for the account." - } - ] + "smithy.api#documentation": "

Deletes an egress-only internet gateway.

" } }, - "com.amazonaws.ec2#DeleteSpotDatafeedSubscriptionRequest": { + "com.amazonaws.ec2#DeleteEgressOnlyInternetGatewayRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "EgressOnlyInternetGatewayId": { + "target": "com.amazonaws.ec2#EgressOnlyInternetGatewayId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the egress-only internet gateway.

", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DeleteSpotDatafeedSubscription.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteSubnet": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteSubnetRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Deletes the specified subnet. You must terminate all running instances in the subnet before you can delete the subnet.

", - "smithy.api#examples": [ - { - "title": "To delete a subnet", - "documentation": "This example deletes the specified subnet.", - "input": { - "SubnetId": "subnet-9d4a7b6c" - } + "com.amazonaws.ec2#DeleteEgressOnlyInternetGatewayResult": { + "type": "structure", + "members": { + "ReturnCode": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "ReturnCode", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "returnCode" } - ] - } - }, - "com.amazonaws.ec2#DeleteSubnetCidrReservation": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteSubnetCidrReservationRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteSubnetCidrReservationResult" + } }, "traits": { - "smithy.api#documentation": "

Deletes a subnet CIDR reservation.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteSubnetCidrReservationRequest": { + "com.amazonaws.ec2#DeleteFleetError": { "type": "structure", "members": { - "SubnetCidrReservationId": { - "target": "com.amazonaws.ec2#SubnetCidrReservationId", + "Code": { + "target": "com.amazonaws.ec2#DeleteFleetErrorCode", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the subnet CIDR reservation.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The error code.

", + "smithy.api#xmlName": "code" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Message": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "Message", + "smithy.api#documentation": "

The description for the error code.

", + "smithy.api#xmlName": "message" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes an EC2 Fleet error.

" } }, - "com.amazonaws.ec2#DeleteSubnetCidrReservationResult": { - "type": "structure", + "com.amazonaws.ec2#DeleteFleetErrorCode": { + "type": "enum", "members": { - "DeletedSubnetCidrReservation": { - "target": "com.amazonaws.ec2#SubnetCidrReservation", + "FLEET_ID_DOES_NOT_EXIST": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DeletedSubnetCidrReservation", - "smithy.api#documentation": "

Information about the deleted subnet CIDR reservation.

", - "smithy.api#xmlName": "deletedSubnetCidrReservation" + "smithy.api#enumValue": "fleetIdDoesNotExist" + } + }, + "FLEET_ID_MALFORMED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "fleetIdMalformed" + } + }, + "FLEET_NOT_IN_DELETABLE_STATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "fleetNotInDeletableState" + } + }, + "UNEXPECTED_ERROR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "unexpectedError" } } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteSubnetRequest": { + "com.amazonaws.ec2#DeleteFleetErrorItem": { "type": "structure", "members": { - "SubnetId": { - "target": "com.amazonaws.ec2#SubnetId", + "Error": { + "target": "com.amazonaws.ec2#DeleteFleetError", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the subnet.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Error", + "smithy.api#documentation": "

The error.

", + "smithy.api#xmlName": "error" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "FleetId": { + "target": "com.amazonaws.ec2#FleetId", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "FleetId", + "smithy.api#documentation": "

The ID of the EC2 Fleet.

", + "smithy.api#xmlName": "fleetId" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes an EC2 Fleet that was not successfully deleted.

" } }, - "com.amazonaws.ec2#DeleteTags": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteTagsRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Deletes the specified set of tags from the specified set of resources.

\n

To list the current tags, use DescribeTags. For more information about\n tags, see Tag\n your Amazon EC2 resources in the Amazon Elastic Compute Cloud User\n Guide.

", - "smithy.api#examples": [ - { - "title": "To delete a tag from a resource", - "documentation": "This example deletes the tag Stack=test from the specified image.", - "input": { - "Resources": [ - "ami-78a54011" - ], - "Tags": [ - { - "Key": "Stack", - "Value": "test" - } - ] - } - } - ] + "com.amazonaws.ec2#DeleteFleetErrorSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DeleteFleetErrorItem", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#DeleteTagsRequest": { + "com.amazonaws.ec2#DeleteFleetSuccessItem": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "CurrentFleetState": { + "target": "com.amazonaws.ec2#FleetStateCode", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "CurrentFleetState", + "smithy.api#documentation": "

The current state of the EC2 Fleet.

", + "smithy.api#xmlName": "currentFleetState" } }, - "Resources": { - "target": "com.amazonaws.ec2#ResourceIdList", + "PreviousFleetState": { + "target": "com.amazonaws.ec2#FleetStateCode", "traits": { - "aws.protocols#ec2QueryName": "ResourceId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the resources, separated by spaces.

\n

Constraints: Up to 1000 resource IDs. We recommend breaking up this request into smaller batches.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "resourceId" + "aws.protocols#ec2QueryName": "PreviousFleetState", + "smithy.api#documentation": "

The previous state of the EC2 Fleet.

", + "smithy.api#xmlName": "previousFleetState" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "FleetId": { + "target": "com.amazonaws.ec2#FleetId", "traits": { - "aws.protocols#ec2QueryName": "Tag", - "smithy.api#documentation": "

The tags to delete. Specify a tag key and an optional tag value to delete\n specific tags. If you specify a tag key without a tag value, we delete any tag with this\n key regardless of its value. If you specify a tag key with an empty string as the tag\n value, we delete the tag only if its value is an empty string.

\n

If you omit this parameter, we delete all user-defined tags for the specified\n resources. We do not delete Amazon Web Services-generated tags (tags that have the aws:\n prefix).

\n

Constraints: Up to 1000 tags.

", - "smithy.api#xmlName": "tag" + "aws.protocols#ec2QueryName": "FleetId", + "smithy.api#documentation": "

The ID of the EC2 Fleet.

", + "smithy.api#xmlName": "fleetId" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes an EC2 Fleet that was successfully deleted.

" } }, - "com.amazonaws.ec2#DeleteTrafficMirrorFilter": { + "com.amazonaws.ec2#DeleteFleetSuccessSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DeleteFleetSuccessItem", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#DeleteFleets": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteTrafficMirrorFilterRequest" + "target": "com.amazonaws.ec2#DeleteFleetsRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteTrafficMirrorFilterResult" + "target": "com.amazonaws.ec2#DeleteFleetsResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified Traffic Mirror filter.

\n

You cannot delete a Traffic Mirror filter that is in use by a Traffic Mirror session.

" + "smithy.api#documentation": "

Deletes the specified EC2 Fleet request.

\n

After you delete an EC2 Fleet request, it launches no new instances.

\n

You must also specify whether a deleted EC2 Fleet request should terminate its instances. If\n you choose to terminate the instances, the EC2 Fleet request enters the\n deleted_terminating state. Otherwise, it enters the\n deleted_running state, and the instances continue to run until they are\n interrupted or you terminate them manually.

\n

A deleted instant fleet with running instances is not supported. When you\n delete an instant fleet, Amazon EC2 automatically terminates all its instances. For\n fleets with more than 1000 instances, the deletion request might fail. If your fleet has\n more than 1000 instances, first terminate most of the instances manually, leaving 1000 or\n fewer. Then delete the fleet, and the remaining instances will be terminated automatically.

\n

\n Restrictions\n

\n \n

For more information, see Delete an EC2 Fleet request and the instances\n in the fleet in the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#DeleteTrafficMirrorFilterRequest": { + "com.amazonaws.ec2#DeleteFleetsRequest": { "type": "structure", "members": { - "TrafficMirrorFilterId": { - "target": "com.amazonaws.ec2#TrafficMirrorFilterId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "FleetIds": { + "target": "com.amazonaws.ec2#FleetIdSet", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Traffic Mirror filter.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The IDs of the EC2 Fleets.

\n

Constraints: In a single request, you can specify up to 25 instant fleet\n IDs and up to 100 maintain or request fleet IDs.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "FleetId" } }, - "DryRun": { + "TerminateInstances": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Indicates whether to terminate the associated instances when the EC2 Fleet is deleted. The default is to\n terminate the instances.

\n

To let the instances continue to run after the EC2 Fleet is deleted, specify\n no-terminate-instances. Supported only for fleets of type\n maintain and request.

\n

For instant fleets, you cannot specify NoTerminateInstances. A\n deleted instant fleet with running instances is not supported.

", + "smithy.api#required": {} } } }, @@ -24998,15 +26034,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteTrafficMirrorFilterResult": { + "com.amazonaws.ec2#DeleteFleetsResult": { "type": "structure", "members": { - "TrafficMirrorFilterId": { - "target": "com.amazonaws.ec2#String", + "SuccessfulFleetDeletions": { + "target": "com.amazonaws.ec2#DeleteFleetSuccessSet", "traits": { - "aws.protocols#ec2QueryName": "TrafficMirrorFilterId", - "smithy.api#documentation": "

The ID of the Traffic Mirror filter.

", - "smithy.api#xmlName": "trafficMirrorFilterId" + "aws.protocols#ec2QueryName": "SuccessfulFleetDeletionSet", + "smithy.api#documentation": "

Information about the EC2 Fleets that are successfully deleted.

", + "smithy.api#xmlName": "successfulFleetDeletionSet" + } + }, + "UnsuccessfulFleetDeletions": { + "target": "com.amazonaws.ec2#DeleteFleetErrorSet", + "traits": { + "aws.protocols#ec2QueryName": "UnsuccessfulFleetDeletionSet", + "smithy.api#documentation": "

Information about the EC2 Fleets that are not successfully deleted.

", + "smithy.api#xmlName": "unsuccessfulFleetDeletionSet" } } }, @@ -25014,49 +26058,50 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteTrafficMirrorFilterRule": { + "com.amazonaws.ec2#DeleteFlowLogs": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteTrafficMirrorFilterRuleRequest" + "target": "com.amazonaws.ec2#DeleteFlowLogsRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteTrafficMirrorFilterRuleResult" + "target": "com.amazonaws.ec2#DeleteFlowLogsResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified Traffic Mirror rule.

" + "smithy.api#documentation": "

Deletes one or more flow logs.

" } }, - "com.amazonaws.ec2#DeleteTrafficMirrorFilterRuleRequest": { + "com.amazonaws.ec2#DeleteFlowLogsRequest": { "type": "structure", "members": { - "TrafficMirrorFilterRuleId": { - "target": "com.amazonaws.ec2#TrafficMirrorFilterRuleIdWithResolver", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Traffic Mirror rule.

", - "smithy.api#required": {} - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } + }, + "FlowLogIds": { + "target": "com.amazonaws.ec2#FlowLogIdList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

One or more flow log IDs.

\n

Constraint: Maximum of 1000 flow log IDs.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "FlowLogId" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteTrafficMirrorFilterRuleResult": { + "com.amazonaws.ec2#DeleteFlowLogsResult": { "type": "structure", "members": { - "TrafficMirrorFilterRuleId": { - "target": "com.amazonaws.ec2#String", + "Unsuccessful": { + "target": "com.amazonaws.ec2#UnsuccessfulItemSet", "traits": { - "aws.protocols#ec2QueryName": "TrafficMirrorFilterRuleId", - "smithy.api#documentation": "

The ID of the deleted Traffic Mirror rule.

", - "smithy.api#xmlName": "trafficMirrorFilterRuleId" + "aws.protocols#ec2QueryName": "Unsuccessful", + "smithy.api#documentation": "

Information about the flow logs that could not be deleted successfully.

", + "smithy.api#xmlName": "unsuccessful" } } }, @@ -25064,49 +26109,49 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteTrafficMirrorSession": { + "com.amazonaws.ec2#DeleteFpgaImage": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteTrafficMirrorSessionRequest" + "target": "com.amazonaws.ec2#DeleteFpgaImageRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteTrafficMirrorSessionResult" + "target": "com.amazonaws.ec2#DeleteFpgaImageResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified Traffic Mirror session.

" + "smithy.api#documentation": "

Deletes the specified Amazon FPGA Image (AFI).

" } }, - "com.amazonaws.ec2#DeleteTrafficMirrorSessionRequest": { + "com.amazonaws.ec2#DeleteFpgaImageRequest": { "type": "structure", "members": { - "TrafficMirrorSessionId": { - "target": "com.amazonaws.ec2#TrafficMirrorSessionId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Traffic Mirror session.

", - "smithy.api#required": {} - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } + }, + "FpgaImageId": { + "target": "com.amazonaws.ec2#FpgaImageId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the AFI.

", + "smithy.api#required": {} + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteTrafficMirrorSessionResult": { + "com.amazonaws.ec2#DeleteFpgaImageResult": { "type": "structure", "members": { - "TrafficMirrorSessionId": { - "target": "com.amazonaws.ec2#String", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "TrafficMirrorSessionId", - "smithy.api#documentation": "

The ID of the deleted Traffic Mirror session.

", - "smithy.api#xmlName": "trafficMirrorSessionId" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Is true if the request succeeds, and an error otherwise.

", + "smithy.api#xmlName": "return" } } }, @@ -25114,33 +26159,33 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteTrafficMirrorTarget": { + "com.amazonaws.ec2#DeleteImageUsageReport": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteTrafficMirrorTargetRequest" + "target": "com.amazonaws.ec2#DeleteImageUsageReportRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteTrafficMirrorTargetResult" + "target": "com.amazonaws.ec2#DeleteImageUsageReportResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified Traffic Mirror target.

\n

You cannot delete a Traffic Mirror target that is in use by a Traffic Mirror session.

" + "smithy.api#documentation": "

Deletes the specified image usage report.

\n

For more information, see View your AMI usage in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#DeleteTrafficMirrorTargetRequest": { + "com.amazonaws.ec2#DeleteImageUsageReportRequest": { "type": "structure", "members": { - "TrafficMirrorTargetId": { - "target": "com.amazonaws.ec2#TrafficMirrorTargetId", + "ReportId": { + "target": "com.amazonaws.ec2#ImageUsageReportId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Traffic Mirror target.

", + "smithy.api#documentation": "

The ID of the report to delete.

", "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -25148,15 +26193,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteTrafficMirrorTargetResult": { + "com.amazonaws.ec2#DeleteImageUsageReportResult": { "type": "structure", "members": { - "TrafficMirrorTargetId": { - "target": "com.amazonaws.ec2#String", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "TrafficMirrorTargetId", - "smithy.api#documentation": "

The ID of the deleted Traffic Mirror target.

", - "smithy.api#xmlName": "trafficMirrorTargetId" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } } }, @@ -25164,57 +26209,33 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteTransitGateway": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayResult" - }, - "traits": { - "smithy.api#documentation": "

Deletes the specified transit gateway.

" - } - }, - "com.amazonaws.ec2#DeleteTransitGatewayConnect": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayConnectRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayConnectResult" - }, - "traits": { - "smithy.api#documentation": "

Deletes the specified Connect attachment. You must first delete any Connect peers for\n the attachment.

" - } - }, - "com.amazonaws.ec2#DeleteTransitGatewayConnectPeer": { + "com.amazonaws.ec2#DeleteInstanceConnectEndpoint": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayConnectPeerRequest" + "target": "com.amazonaws.ec2#DeleteInstanceConnectEndpointRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayConnectPeerResult" + "target": "com.amazonaws.ec2#DeleteInstanceConnectEndpointResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified Connect peer.

" + "smithy.api#documentation": "

Deletes the specified EC2 Instance Connect Endpoint.

" } }, - "com.amazonaws.ec2#DeleteTransitGatewayConnectPeerRequest": { + "com.amazonaws.ec2#DeleteInstanceConnectEndpointRequest": { "type": "structure", "members": { - "TransitGatewayConnectPeerId": { - "target": "com.amazonaws.ec2#TransitGatewayConnectPeerId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Connect peer.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "InstanceConnectEndpointId": { + "target": "com.amazonaws.ec2#InstanceConnectEndpointId", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the EC2 Instance Connect Endpoint to delete.

", + "smithy.api#required": {} } } }, @@ -25222,53 +26243,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteTransitGatewayConnectPeerResult": { + "com.amazonaws.ec2#DeleteInstanceConnectEndpointResult": { "type": "structure", "members": { - "TransitGatewayConnectPeer": { - "target": "com.amazonaws.ec2#TransitGatewayConnectPeer", + "InstanceConnectEndpoint": { + "target": "com.amazonaws.ec2#Ec2InstanceConnectEndpoint", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayConnectPeer", - "smithy.api#documentation": "

Information about the deleted Connect peer.

", - "smithy.api#xmlName": "transitGatewayConnectPeer" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DeleteTransitGatewayConnectRequest": { - "type": "structure", - "members": { - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Connect attachment.

", - "smithy.api#required": {} - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DeleteTransitGatewayConnectResult": { - "type": "structure", - "members": { - "TransitGatewayConnect": { - "target": "com.amazonaws.ec2#TransitGatewayConnect", - "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayConnect", - "smithy.api#documentation": "

Information about the deleted Connect attachment.

", - "smithy.api#xmlName": "transitGatewayConnect" + "aws.protocols#ec2QueryName": "InstanceConnectEndpoint", + "smithy.api#documentation": "

Information about the EC2 Instance Connect Endpoint.

", + "smithy.api#xmlName": "instanceConnectEndpoint" } } }, @@ -25276,33 +26259,40 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteTransitGatewayMulticastDomain": { + "com.amazonaws.ec2#DeleteInstanceEventWindow": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayMulticastDomainRequest" + "target": "com.amazonaws.ec2#DeleteInstanceEventWindowRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayMulticastDomainResult" + "target": "com.amazonaws.ec2#DeleteInstanceEventWindowResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified transit gateway multicast domain.

" + "smithy.api#documentation": "

Deletes the specified event window.

\n

For more information, see Define event windows for scheduled\n events in the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#DeleteTransitGatewayMulticastDomainRequest": { + "com.amazonaws.ec2#DeleteInstanceEventWindowRequest": { "type": "structure", "members": { - "TransitGatewayMulticastDomainId": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "DryRun": { + "ForceDelete": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Specify true to force delete the event window. Use the force delete\n parameter if the event window is currently associated with targets.

" + } + }, + "InstanceEventWindowId": { + "target": "com.amazonaws.ec2#InstanceEventWindowId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the event window.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "InstanceEventWindowId" } } }, @@ -25310,15 +26300,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteTransitGatewayMulticastDomainResult": { + "com.amazonaws.ec2#DeleteInstanceEventWindowResult": { "type": "structure", "members": { - "TransitGatewayMulticastDomain": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastDomain", + "InstanceEventWindowState": { + "target": "com.amazonaws.ec2#InstanceEventWindowStateChange", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayMulticastDomain", - "smithy.api#documentation": "

Information about the deleted transit gateway multicast domain.

", - "smithy.api#xmlName": "transitGatewayMulticastDomain" + "aws.protocols#ec2QueryName": "InstanceEventWindowState", + "smithy.api#documentation": "

The state of the event window.

", + "smithy.api#xmlName": "instanceEventWindowState" } } }, @@ -25326,33 +26316,46 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteTransitGatewayPeeringAttachment": { + "com.amazonaws.ec2#DeleteInternetGateway": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayPeeringAttachmentRequest" + "target": "com.amazonaws.ec2#DeleteInternetGatewayRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayPeeringAttachmentResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Deletes a transit gateway peering attachment.

" + "smithy.api#documentation": "

Deletes the specified internet gateway. You must detach the internet gateway from the\n\t\t\tVPC before you can delete it.

", + "smithy.api#examples": [ + { + "title": "To delete an Internet gateway", + "documentation": "This example deletes the specified Internet gateway.", + "input": { + "InternetGatewayId": "igw-c0a643a9" + } + } + ] } }, - "com.amazonaws.ec2#DeleteTransitGatewayPeeringAttachmentRequest": { + "com.amazonaws.ec2#DeleteInternetGatewayRequest": { "type": "structure", "members": { - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway peering attachment.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "InternetGatewayId": { + "target": "com.amazonaws.ec2#InternetGatewayId", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "InternetGatewayId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the internet gateway.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "internetGatewayId" } } }, @@ -25360,49 +26363,45 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteTransitGatewayPeeringAttachmentResult": { - "type": "structure", - "members": { - "TransitGatewayPeeringAttachment": { - "target": "com.amazonaws.ec2#TransitGatewayPeeringAttachment", - "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayPeeringAttachment", - "smithy.api#documentation": "

The transit gateway peering attachment.

", - "smithy.api#xmlName": "transitGatewayPeeringAttachment" - } - } + "com.amazonaws.ec2#DeleteIpam": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteIpamRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeleteIpamResult" }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Delete an IPAM. Deleting an IPAM removes all monitored data associated with the IPAM including the historical data for CIDRs.

\n

For more information, see Delete an IPAM in the Amazon VPC IPAM User Guide.\n

" } }, - "com.amazonaws.ec2#DeleteTransitGatewayPolicyTable": { + "com.amazonaws.ec2#DeleteIpamExternalResourceVerificationToken": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayPolicyTableRequest" + "target": "com.amazonaws.ec2#DeleteIpamExternalResourceVerificationTokenRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayPolicyTableResult" + "target": "com.amazonaws.ec2#DeleteIpamExternalResourceVerificationTokenResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified transit gateway policy table.

" + "smithy.api#documentation": "

Delete a verification token. A verification token is an Amazon Web Services-generated random value that you can use to prove ownership of an external resource. For example, you can use a verification token to validate that you control a public IP address range when you bring an IP address range to Amazon Web Services (BYOIP).\n

" } }, - "com.amazonaws.ec2#DeleteTransitGatewayPolicyTableRequest": { + "com.amazonaws.ec2#DeleteIpamExternalResourceVerificationTokenRequest": { "type": "structure", "members": { - "TransitGatewayPolicyTableId": { - "target": "com.amazonaws.ec2#TransitGatewayPolicyTableId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The transit gateway policy table to delete.

", - "smithy.api#required": {} + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "IpamExternalResourceVerificationTokenId": { + "target": "com.amazonaws.ec2#IpamExternalResourceVerificationTokenId", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The token ID.

", + "smithy.api#required": {} } } }, @@ -25410,15 +26409,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteTransitGatewayPolicyTableResult": { + "com.amazonaws.ec2#DeleteIpamExternalResourceVerificationTokenResult": { "type": "structure", "members": { - "TransitGatewayPolicyTable": { - "target": "com.amazonaws.ec2#TransitGatewayPolicyTable", + "IpamExternalResourceVerificationToken": { + "target": "com.amazonaws.ec2#IpamExternalResourceVerificationToken", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayPolicyTable", - "smithy.api#documentation": "

Provides details about the deleted transit gateway policy table.

", - "smithy.api#xmlName": "transitGatewayPolicyTable" + "aws.protocols#ec2QueryName": "IpamExternalResourceVerificationToken", + "smithy.api#documentation": "

The verification token.

", + "smithy.api#xmlName": "ipamExternalResourceVerificationToken" } } }, @@ -25426,41 +26425,39 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteTransitGatewayPrefixListReference": { + "com.amazonaws.ec2#DeleteIpamPool": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayPrefixListReferenceRequest" + "target": "com.amazonaws.ec2#DeleteIpamPoolRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayPrefixListReferenceResult" + "target": "com.amazonaws.ec2#DeleteIpamPoolResult" }, "traits": { - "smithy.api#documentation": "

Deletes a reference (route) to a prefix list in a specified transit gateway route table.

" + "smithy.api#documentation": "

Delete an IPAM pool.

\n \n

You cannot delete an IPAM pool if there are allocations in it or CIDRs provisioned to it. To release \n allocations, see ReleaseIpamPoolAllocation. To deprovision pool \n CIDRs, see DeprovisionIpamPoolCidr.

\n
\n

For more information, see Delete a pool in the Amazon VPC IPAM User Guide.\n

" } }, - "com.amazonaws.ec2#DeleteTransitGatewayPrefixListReferenceRequest": { + "com.amazonaws.ec2#DeleteIpamPoolRequest": { "type": "structure", "members": { - "TransitGatewayRouteTableId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the route table.

", - "smithy.api#required": {} + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "PrefixListId": { - "target": "com.amazonaws.ec2#PrefixListResourceId", + "IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the prefix list.

", + "smithy.api#documentation": "

The ID of the pool to delete.

", "smithy.api#required": {} } }, - "DryRun": { + "Cascade": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Enables you to quickly delete an IPAM pool and all resources within that pool, including\n provisioned CIDRs, allocations, and other pools.

\n \n

You can only use this option to delete pools in the private scope or pools in the public scope with a source resource. A source resource is a resource used to provision CIDRs to a resource planning pool.

\n
" } } }, @@ -25468,15 +26465,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteTransitGatewayPrefixListReferenceResult": { + "com.amazonaws.ec2#DeleteIpamPoolResult": { "type": "structure", "members": { - "TransitGatewayPrefixListReference": { - "target": "com.amazonaws.ec2#TransitGatewayPrefixListReference", + "IpamPool": { + "target": "com.amazonaws.ec2#IpamPool", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayPrefixListReference", - "smithy.api#documentation": "

Information about the deleted prefix list reference.

", - "smithy.api#xmlName": "transitGatewayPrefixListReference" + "aws.protocols#ec2QueryName": "IpamPool", + "smithy.api#documentation": "

Information about the results of the deletion.

", + "smithy.api#xmlName": "ipamPool" } } }, @@ -25484,21 +26481,27 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteTransitGatewayRequest": { + "com.amazonaws.ec2#DeleteIpamRequest": { "type": "structure", "members": { - "TransitGatewayId": { - "target": "com.amazonaws.ec2#TransitGatewayId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamId": { + "target": "com.amazonaws.ec2#IpamId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway.

", + "smithy.api#documentation": "

The ID of the IPAM to delete.

", "smithy.api#required": {} } }, - "DryRun": { + "Cascade": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Enables you to quickly delete an IPAM, private scopes, pools in private scopes, and\n any allocations in the pools in private scopes. You cannot delete the IPAM with this option if there is a pool in your public scope. If you use this option, IPAM does the following:

\n " } } }, @@ -25506,73 +26509,49 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteTransitGatewayResult": { - "type": "structure", - "members": { - "TransitGateway": { - "target": "com.amazonaws.ec2#TransitGateway", - "traits": { - "aws.protocols#ec2QueryName": "TransitGateway", - "smithy.api#documentation": "

Information about the deleted transit gateway.

", - "smithy.api#xmlName": "transitGateway" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DeleteTransitGatewayRoute": { + "com.amazonaws.ec2#DeleteIpamResourceDiscovery": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayRouteRequest" + "target": "com.amazonaws.ec2#DeleteIpamResourceDiscoveryRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayRouteResult" + "target": "com.amazonaws.ec2#DeleteIpamResourceDiscoveryResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified route from the specified transit gateway route table.

" + "smithy.api#documentation": "

Deletes an IPAM resource discovery. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

" } }, - "com.amazonaws.ec2#DeleteTransitGatewayRouteRequest": { + "com.amazonaws.ec2#DeleteIpamResourceDiscoveryRequest": { "type": "structure", "members": { - "TransitGatewayRouteTableId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway route table.

", - "smithy.api#required": {} + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "DestinationCidrBlock": { - "target": "com.amazonaws.ec2#String", + "IpamResourceDiscoveryId": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The CIDR range for the route. This must match the CIDR for the route exactly.

", + "smithy.api#documentation": "

The IPAM resource discovery ID.

", "smithy.api#required": {} } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteTransitGatewayRouteResult": { + "com.amazonaws.ec2#DeleteIpamResourceDiscoveryResult": { "type": "structure", "members": { - "Route": { - "target": "com.amazonaws.ec2#TransitGatewayRoute", + "IpamResourceDiscovery": { + "target": "com.amazonaws.ec2#IpamResourceDiscovery", "traits": { - "aws.protocols#ec2QueryName": "Route", - "smithy.api#documentation": "

Information about the route.

", - "smithy.api#xmlName": "route" + "aws.protocols#ec2QueryName": "IpamResourceDiscovery", + "smithy.api#documentation": "

The IPAM resource discovery.

", + "smithy.api#xmlName": "ipamResourceDiscovery" } } }, @@ -25580,99 +26559,65 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteTransitGatewayRouteTable": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayRouteTableRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayRouteTableResult" + "com.amazonaws.ec2#DeleteIpamResult": { + "type": "structure", + "members": { + "Ipam": { + "target": "com.amazonaws.ec2#Ipam", + "traits": { + "aws.protocols#ec2QueryName": "Ipam", + "smithy.api#documentation": "

Information about the results of the deletion.

", + "smithy.api#xmlName": "ipam" + } + } }, "traits": { - "smithy.api#documentation": "

Deletes the specified transit gateway route table. If there are any route tables associated with\n the transit gateway route table, you must first run DisassociateRouteTable before you can delete the transit gateway route table. This removes any route tables associated with the transit gateway route table.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteTransitGatewayRouteTableAnnouncement": { + "com.amazonaws.ec2#DeleteIpamScope": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayRouteTableAnnouncementRequest" + "target": "com.amazonaws.ec2#DeleteIpamScopeRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayRouteTableAnnouncementResult" + "target": "com.amazonaws.ec2#DeleteIpamScopeResult" }, "traits": { - "smithy.api#documentation": "

Advertises to the transit gateway that a transit gateway route table is deleted.

" + "smithy.api#documentation": "

Delete the scope for an IPAM. You cannot delete the default scopes.

\n

For more information, see Delete a scope in the Amazon VPC IPAM User Guide.\n

" } }, - "com.amazonaws.ec2#DeleteTransitGatewayRouteTableAnnouncementRequest": { + "com.amazonaws.ec2#DeleteIpamScopeRequest": { "type": "structure", "members": { - "TransitGatewayRouteTableAnnouncementId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableAnnouncementId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The transit gateway route table ID that's being deleted.

", - "smithy.api#required": {} - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DeleteTransitGatewayRouteTableAnnouncementResult": { - "type": "structure", - "members": { - "TransitGatewayRouteTableAnnouncement": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableAnnouncement", - "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayRouteTableAnnouncement", - "smithy.api#documentation": "

Provides details about a deleted transit gateway route table.

", - "smithy.api#xmlName": "transitGatewayRouteTableAnnouncement" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DeleteTransitGatewayRouteTableRequest": { - "type": "structure", - "members": { - "TransitGatewayRouteTableId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + }, + "IpamScopeId": { + "target": "com.amazonaws.ec2#IpamScopeId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway route table.

", + "smithy.api#documentation": "

The ID of the scope to delete.

", "smithy.api#required": {} } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteTransitGatewayRouteTableResult": { + "com.amazonaws.ec2#DeleteIpamScopeResult": { "type": "structure", "members": { - "TransitGatewayRouteTable": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTable", + "IpamScope": { + "target": "com.amazonaws.ec2#IpamScope", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayRouteTable", - "smithy.api#documentation": "

Information about the deleted transit gateway route table.

", - "smithy.api#xmlName": "transitGatewayRouteTable" + "aws.protocols#ec2QueryName": "IpamScope", + "smithy.api#documentation": "

Information about the results of the deletion.

", + "smithy.api#xmlName": "ipamScope" } } }, @@ -25680,33 +26625,48 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteTransitGatewayVpcAttachment": { + "com.amazonaws.ec2#DeleteKeyPair": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayVpcAttachmentRequest" + "target": "com.amazonaws.ec2#DeleteKeyPairRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteTransitGatewayVpcAttachmentResult" + "target": "com.amazonaws.ec2#DeleteKeyPairResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified VPC attachment.

" + "smithy.api#documentation": "

Deletes the specified key pair, by removing the public key from Amazon EC2.

", + "smithy.api#examples": [ + { + "title": "To delete a key pair", + "documentation": "This example deletes the specified key pair.", + "input": { + "KeyName": "my-key-pair" + } + } + ] } }, - "com.amazonaws.ec2#DeleteTransitGatewayVpcAttachmentRequest": { + "com.amazonaws.ec2#DeleteKeyPairRequest": { "type": "structure", "members": { - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "KeyName": { + "target": "com.amazonaws.ec2#KeyPairNameWithResolver", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the attachment.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The name of the key pair.

" + } + }, + "KeyPairId": { + "target": "com.amazonaws.ec2#KeyPairId", + "traits": { + "smithy.api#documentation": "

The ID of the key pair.

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, @@ -25714,15 +26674,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteTransitGatewayVpcAttachmentResult": { + "com.amazonaws.ec2#DeleteKeyPairResult": { "type": "structure", "members": { - "TransitGatewayVpcAttachment": { - "target": "com.amazonaws.ec2#TransitGatewayVpcAttachment", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayVpcAttachment", - "smithy.api#documentation": "

Information about the deleted VPC attachment.

", - "smithy.api#xmlName": "transitGatewayVpcAttachment" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Is true if the request succeeds, and an error otherwise.

", + "smithy.api#xmlName": "return" + } + }, + "KeyPairId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "KeyPairId", + "smithy.api#documentation": "

The ID of the key pair.

", + "smithy.api#xmlName": "keyPairId" } } }, @@ -25730,40 +26698,56 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteVerifiedAccessEndpoint": { + "com.amazonaws.ec2#DeleteLaunchTemplate": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteVerifiedAccessEndpointRequest" + "target": "com.amazonaws.ec2#DeleteLaunchTemplateRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteVerifiedAccessEndpointResult" + "target": "com.amazonaws.ec2#DeleteLaunchTemplateResult" }, "traits": { - "smithy.api#documentation": "

Delete an Amazon Web Services Verified Access endpoint.

" + "smithy.api#documentation": "

Deletes a launch template. Deleting a launch template deletes all of its\n versions.

", + "smithy.api#examples": [ + { + "title": "To delete a launch template", + "documentation": "This example deletes the specified launch template.", + "input": { + "LaunchTemplateId": "lt-0abcd290751193123" + }, + "output": { + "LaunchTemplate": { + "LatestVersionNumber": 2, + "LaunchTemplateId": "lt-0abcd290751193123", + "LaunchTemplateName": "my-template", + "DefaultVersionNumber": 2, + "CreatedBy": "arn:aws:iam::123456789012:root", + "CreateTime": "2017-11-23T16:46:25.000Z" + } + } + } + ] } }, - "com.amazonaws.ec2#DeleteVerifiedAccessEndpointRequest": { + "com.amazonaws.ec2#DeleteLaunchTemplateRequest": { "type": "structure", "members": { - "VerifiedAccessEndpointId": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpointId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Verified Access endpoint.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "LaunchTemplateId": { + "target": "com.amazonaws.ec2#LaunchTemplateId", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "smithy.api#documentation": "

The ID of the launch template.

\n

You must specify either the launch template ID or the launch template name, but not\n both.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "LaunchTemplateName": { + "target": "com.amazonaws.ec2#LaunchTemplateName", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The name of the launch template.

\n

You must specify either the launch template ID or the launch template name, but not\n both.

" } } }, @@ -25771,15 +26755,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteVerifiedAccessEndpointResult": { + "com.amazonaws.ec2#DeleteLaunchTemplateResult": { "type": "structure", "members": { - "VerifiedAccessEndpoint": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpoint", + "LaunchTemplate": { + "target": "com.amazonaws.ec2#LaunchTemplate", "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessEndpoint", - "smithy.api#documentation": "

Details about the Verified Access endpoint.

", - "smithy.api#xmlName": "verifiedAccessEndpoint" + "aws.protocols#ec2QueryName": "LaunchTemplate", + "smithy.api#documentation": "

Information about the launch template.

", + "smithy.api#xmlName": "launchTemplate" } } }, @@ -25787,40 +26771,68 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteVerifiedAccessGroup": { + "com.amazonaws.ec2#DeleteLaunchTemplateVersions": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteVerifiedAccessGroupRequest" + "target": "com.amazonaws.ec2#DeleteLaunchTemplateVersionsRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteVerifiedAccessGroupResult" + "target": "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResult" }, "traits": { - "smithy.api#documentation": "

Delete an Amazon Web Services Verified Access group.

" - } - }, - "com.amazonaws.ec2#DeleteVerifiedAccessGroupRequest": { - "type": "structure", - "members": { - "VerifiedAccessGroupId": { - "target": "com.amazonaws.ec2#VerifiedAccessGroupId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Verified Access group.

", - "smithy.api#required": {} - } - }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "smithy.api#documentation": "

Deletes one or more versions of a launch template.

\n

You can't delete the default version of a launch template; you must first assign a\n different version as the default. If the default version is the only version for the\n launch template, you must delete the entire launch template using DeleteLaunchTemplate.

\n

You can delete up to 200 launch template versions in a single request. To delete more\n than 200 versions in a single request, use DeleteLaunchTemplate, which\n deletes the launch template and all of its versions.

\n

For more information, see Delete a launch template version in the\n Amazon EC2 User Guide.

", + "smithy.api#examples": [ + { + "title": "To delete a launch template version", + "documentation": "This example deletes the specified launch template version.", + "input": { + "LaunchTemplateId": "lt-0abcd290751193123", + "Versions": [ + "1" + ] + }, + "output": { + "SuccessfullyDeletedLaunchTemplateVersions": [ + { + "LaunchTemplateName": "my-template", + "VersionNumber": 1, + "LaunchTemplateId": "lt-0abcd290751193123" + } + ], + "UnsuccessfullyDeletedLaunchTemplateVersions": [] + } } - }, + ] + } + }, + "com.amazonaws.ec2#DeleteLaunchTemplateVersionsRequest": { + "type": "structure", + "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + } + }, + "LaunchTemplateId": { + "target": "com.amazonaws.ec2#LaunchTemplateId", + "traits": { + "smithy.api#documentation": "

The ID of the launch template.

\n

You must specify either the launch template ID or the launch template name, but not\n both.

" + } + }, + "LaunchTemplateName": { + "target": "com.amazonaws.ec2#LaunchTemplateName", + "traits": { + "smithy.api#documentation": "

The name of the launch template.

\n

You must specify either the launch template ID or the launch template name, but not\n both.

" + } + }, + "Versions": { + "target": "com.amazonaws.ec2#VersionStringList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The version numbers of one or more launch template versions to delete. You can specify\n up to 200 launch template version numbers.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "LaunchTemplateVersion" } } }, @@ -25828,72 +26840,113 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteVerifiedAccessGroupResult": { + "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResponseErrorItem": { "type": "structure", "members": { - "VerifiedAccessGroup": { - "target": "com.amazonaws.ec2#VerifiedAccessGroup", + "LaunchTemplateId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessGroup", - "smithy.api#documentation": "

Details about the Verified Access group.

", - "smithy.api#xmlName": "verifiedAccessGroup" + "aws.protocols#ec2QueryName": "LaunchTemplateId", + "smithy.api#documentation": "

The ID of the launch template.

", + "smithy.api#xmlName": "launchTemplateId" + } + }, + "LaunchTemplateName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "LaunchTemplateName", + "smithy.api#documentation": "

The name of the launch template.

", + "smithy.api#xmlName": "launchTemplateName" + } + }, + "VersionNumber": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "aws.protocols#ec2QueryName": "VersionNumber", + "smithy.api#documentation": "

The version number of the launch template.

", + "smithy.api#xmlName": "versionNumber" + } + }, + "ResponseError": { + "target": "com.amazonaws.ec2#ResponseError", + "traits": { + "aws.protocols#ec2QueryName": "ResponseError", + "smithy.api#documentation": "

Information about the error.

", + "smithy.api#xmlName": "responseError" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes a launch template version that could not be deleted.

" } }, - "com.amazonaws.ec2#DeleteVerifiedAccessInstance": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteVerifiedAccessInstanceRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeleteVerifiedAccessInstanceResult" - }, - "traits": { - "smithy.api#documentation": "

Delete an Amazon Web Services Verified Access instance.

" + "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResponseErrorSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResponseErrorItem", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#DeleteVerifiedAccessInstanceRequest": { + "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResponseSuccessItem": { "type": "structure", "members": { - "VerifiedAccessInstanceId": { - "target": "com.amazonaws.ec2#VerifiedAccessInstanceId", + "LaunchTemplateId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Verified Access instance.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "LaunchTemplateId", + "smithy.api#documentation": "

The ID of the launch template.

", + "smithy.api#xmlName": "launchTemplateId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "LaunchTemplateName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "LaunchTemplateName", + "smithy.api#documentation": "

The name of the launch template.

", + "smithy.api#xmlName": "launchTemplateName" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "VersionNumber": { + "target": "com.amazonaws.ec2#Long", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "aws.protocols#ec2QueryName": "VersionNumber", + "smithy.api#documentation": "

The version number of the launch template.

", + "smithy.api#xmlName": "versionNumber" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes a launch template version that was successfully deleted.

" } }, - "com.amazonaws.ec2#DeleteVerifiedAccessInstanceResult": { + "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResponseSuccessSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResponseSuccessItem", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResult": { "type": "structure", "members": { - "VerifiedAccessInstance": { - "target": "com.amazonaws.ec2#VerifiedAccessInstance", + "SuccessfullyDeletedLaunchTemplateVersions": { + "target": "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResponseSuccessSet", "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessInstance", - "smithy.api#documentation": "

Details about the Verified Access instance.

", - "smithy.api#xmlName": "verifiedAccessInstance" + "aws.protocols#ec2QueryName": "SuccessfullyDeletedLaunchTemplateVersionSet", + "smithy.api#documentation": "

Information about the launch template versions that were successfully deleted.

", + "smithy.api#xmlName": "successfullyDeletedLaunchTemplateVersionSet" + } + }, + "UnsuccessfullyDeletedLaunchTemplateVersions": { + "target": "com.amazonaws.ec2#DeleteLaunchTemplateVersionsResponseErrorSet", + "traits": { + "aws.protocols#ec2QueryName": "UnsuccessfullyDeletedLaunchTemplateVersionSet", + "smithy.api#documentation": "

Information about the launch template versions that could not be deleted.

", + "smithy.api#xmlName": "unsuccessfullyDeletedLaunchTemplateVersionSet" } } }, @@ -25901,26 +26954,32 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteVerifiedAccessTrustProvider": { + "com.amazonaws.ec2#DeleteLocalGatewayRoute": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteVerifiedAccessTrustProviderRequest" + "target": "com.amazonaws.ec2#DeleteLocalGatewayRouteRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteVerifiedAccessTrustProviderResult" + "target": "com.amazonaws.ec2#DeleteLocalGatewayRouteResult" }, "traits": { - "smithy.api#documentation": "

Delete an Amazon Web Services Verified Access trust provider.

" + "smithy.api#documentation": "

Deletes the specified route from the specified local gateway route table.

" } }, - "com.amazonaws.ec2#DeleteVerifiedAccessTrustProviderRequest": { + "com.amazonaws.ec2#DeleteLocalGatewayRouteRequest": { "type": "structure", "members": { - "VerifiedAccessTrustProviderId": { - "target": "com.amazonaws.ec2#VerifiedAccessTrustProviderId", + "DestinationCidrBlock": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The CIDR range for the route. This must match the CIDR for the route exactly.

" + } + }, + "LocalGatewayRouteTableId": { + "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Verified Access trust provider.

", + "smithy.api#documentation": "

The ID of the local gateway route table.

", "smithy.api#required": {} } }, @@ -25930,11 +26989,10 @@ "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "DestinationPrefixListId": { + "target": "com.amazonaws.ec2#PrefixListResourceId", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "smithy.api#documentation": "

\n Use a prefix list in place of DestinationCidrBlock. You cannot use \n DestinationPrefixListId and DestinationCidrBlock in the same request.\n

" } } }, @@ -25942,15 +27000,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteVerifiedAccessTrustProviderResult": { + "com.amazonaws.ec2#DeleteLocalGatewayRouteResult": { "type": "structure", "members": { - "VerifiedAccessTrustProvider": { - "target": "com.amazonaws.ec2#VerifiedAccessTrustProvider", + "Route": { + "target": "com.amazonaws.ec2#LocalGatewayRoute", "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessTrustProvider", - "smithy.api#documentation": "

Details about the Verified Access trust provider.

", - "smithy.api#xmlName": "verifiedAccessTrustProvider" + "aws.protocols#ec2QueryName": "Route", + "smithy.api#documentation": "

Information about the route.

", + "smithy.api#xmlName": "route" } } }, @@ -25958,45 +27016,33 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteVolume": { + "com.amazonaws.ec2#DeleteLocalGatewayRouteTable": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteVolumeRequest" + "target": "com.amazonaws.ec2#DeleteLocalGatewayRouteTableRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.ec2#DeleteLocalGatewayRouteTableResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified EBS volume. The volume must be in the available state\n (not attached to an instance).

\n

The volume can remain in the deleting state for several minutes.

\n

For more information, see Delete an Amazon EBS volume in the\n Amazon EBS User Guide.

", - "smithy.api#examples": [ - { - "title": "To delete a volume", - "documentation": "This example deletes an available volume with the volume ID of ``vol-049df61146c4d7901``. If the command succeeds, no output is returned.", - "input": { - "VolumeId": "vol-049df61146c4d7901" - }, - "output": {} - } - ] + "smithy.api#documentation": "

\n Deletes a local gateway route table.\n

" } }, - "com.amazonaws.ec2#DeleteVolumeRequest": { + "com.amazonaws.ec2#DeleteLocalGatewayRouteTableRequest": { "type": "structure", "members": { - "VolumeId": { - "target": "com.amazonaws.ec2#VolumeId", + "LocalGatewayRouteTableId": { + "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the volume.

", + "smithy.api#documentation": "

\n The ID of the local gateway route table.\n

", "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -26004,55 +27050,49 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteVpc": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteVpcRequest" - }, - "output": { - "target": "smithy.api#Unit" + "com.amazonaws.ec2#DeleteLocalGatewayRouteTableResult": { + "type": "structure", + "members": { + "LocalGatewayRouteTable": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTable", + "traits": { + "aws.protocols#ec2QueryName": "LocalGatewayRouteTable", + "smithy.api#documentation": "

Information about the local gateway route table.

", + "smithy.api#xmlName": "localGatewayRouteTable" + } + } }, "traits": { - "smithy.api#documentation": "

Deletes the specified VPC. You must detach or delete all gateways and resources that are associated with the VPC before you can delete it. For example, you must terminate all instances running in the VPC, delete all security groups associated with the VPC (except the default one), delete all route tables associated with the VPC (except the default one), and so on. When you delete the VPC, it deletes the VPC's default security group, network ACL, and route table.

", - "smithy.api#examples": [ - { - "title": "To delete a VPC", - "documentation": "This example deletes the specified VPC.", - "input": { - "VpcId": "vpc-a01106c2" - } - } - ] + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteVpcEndpointConnectionNotifications": { + "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociation": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteVpcEndpointConnectionNotificationsRequest" + "target": "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteVpcEndpointConnectionNotificationsResult" + "target": "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified VPC endpoint connection notifications.

" + "smithy.api#documentation": "

\n Deletes a local gateway route table virtual interface group association.\n

" } }, - "com.amazonaws.ec2#DeleteVpcEndpointConnectionNotificationsRequest": { + "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "LocalGatewayRouteTableVirtualInterfaceGroupAssociationId": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociationId", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

\n The ID of the local gateway route table virtual interface group association.\n

", + "smithy.api#required": {} } }, - "ConnectionNotificationIds": { - "target": "com.amazonaws.ec2#ConnectionNotificationIdsList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the notifications.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "ConnectionNotificationId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -26060,15 +27100,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteVpcEndpointConnectionNotificationsResult": { + "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationResult": { "type": "structure", "members": { - "Unsuccessful": { - "target": "com.amazonaws.ec2#UnsuccessfulItemSet", + "LocalGatewayRouteTableVirtualInterfaceGroupAssociation": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociation", "traits": { - "aws.protocols#ec2QueryName": "Unsuccessful", - "smithy.api#documentation": "

Information about the notifications that could not be deleted\n successfully.

", - "smithy.api#xmlName": "unsuccessful" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableVirtualInterfaceGroupAssociation", + "smithy.api#documentation": "

Information about the association.

", + "smithy.api#xmlName": "localGatewayRouteTableVirtualInterfaceGroupAssociation" } } }, @@ -26076,34 +27116,33 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteVpcEndpointServiceConfigurations": { + "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVpcAssociation": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteVpcEndpointServiceConfigurationsRequest" + "target": "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVpcAssociationRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteVpcEndpointServiceConfigurationsResult" + "target": "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVpcAssociationResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified VPC endpoint service configurations. Before you can delete\n an endpoint service configuration, you must reject any Available or\n PendingAcceptance interface endpoint connections that are attached to\n the service.

" + "smithy.api#documentation": "

Deletes the specified association between a VPC and local gateway route table.

" } }, - "com.amazonaws.ec2#DeleteVpcEndpointServiceConfigurationsRequest": { + "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVpcAssociationRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "LocalGatewayRouteTableVpcAssociationId": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociationId", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the association.

", + "smithy.api#required": {} } }, - "ServiceIds": { - "target": "com.amazonaws.ec2#VpcEndpointServiceIdList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the services.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "ServiceId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -26111,15 +27150,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteVpcEndpointServiceConfigurationsResult": { + "com.amazonaws.ec2#DeleteLocalGatewayRouteTableVpcAssociationResult": { "type": "structure", "members": { - "Unsuccessful": { - "target": "com.amazonaws.ec2#UnsuccessfulItemSet", + "LocalGatewayRouteTableVpcAssociation": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociation", "traits": { - "aws.protocols#ec2QueryName": "Unsuccessful", - "smithy.api#documentation": "

Information about the service configurations that were not deleted, if\n applicable.

", - "smithy.api#xmlName": "unsuccessful" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableVpcAssociation", + "smithy.api#documentation": "

Information about the association.

", + "smithy.api#xmlName": "localGatewayRouteTableVpcAssociation" } } }, @@ -26127,88 +27166,45 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteVpcEndpoints": { + "com.amazonaws.ec2#DeleteLocalGatewayVirtualInterface": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteVpcEndpointsRequest" + "target": "com.amazonaws.ec2#DeleteLocalGatewayVirtualInterfaceRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteVpcEndpointsResult" - }, - "traits": { - "smithy.api#documentation": "

Deletes the specified VPC endpoints.

\n

When you delete a gateway endpoint, we delete the endpoint routes in the route tables for the endpoint.

\n

When you delete a Gateway Load Balancer endpoint, we delete its endpoint network interfaces. \n You can only delete Gateway Load Balancer endpoints when the routes that are associated with the endpoint are deleted.

\n

When you delete an interface endpoint, we delete its endpoint network interfaces.

" - } - }, - "com.amazonaws.ec2#DeleteVpcEndpointsRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "VpcEndpointIds": { - "target": "com.amazonaws.ec2#VpcEndpointIdList", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the VPC endpoints.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "VpcEndpointId" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DeleteVpcEndpointsResult": { - "type": "structure", - "members": { - "Unsuccessful": { - "target": "com.amazonaws.ec2#UnsuccessfulItemSet", - "traits": { - "aws.protocols#ec2QueryName": "Unsuccessful", - "smithy.api#documentation": "

Information about the VPC endpoints that were not successfully deleted.

", - "smithy.api#xmlName": "unsuccessful" - } - } + "target": "com.amazonaws.ec2#DeleteLocalGatewayVirtualInterfaceResult" }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Deletes the specified local gateway virtual interface.

" } }, - "com.amazonaws.ec2#DeleteVpcPeeringConnection": { + "com.amazonaws.ec2#DeleteLocalGatewayVirtualInterfaceGroup": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteVpcPeeringConnectionRequest" + "target": "com.amazonaws.ec2#DeleteLocalGatewayVirtualInterfaceGroupRequest" }, "output": { - "target": "com.amazonaws.ec2#DeleteVpcPeeringConnectionResult" + "target": "com.amazonaws.ec2#DeleteLocalGatewayVirtualInterfaceGroupResult" }, "traits": { - "smithy.api#documentation": "

Deletes a VPC peering connection. Either the owner of the requester VPC or the owner\n of the accepter VPC can delete the VPC peering connection if it's in the\n active state. The owner of the requester VPC can delete a VPC peering\n connection in the pending-acceptance state. You cannot delete a VPC peering\n connection that's in the failed or rejected state.

" + "smithy.api#documentation": "

Delete the specified local gateway interface group.

" } }, - "com.amazonaws.ec2#DeleteVpcPeeringConnectionRequest": { + "com.amazonaws.ec2#DeleteLocalGatewayVirtualInterfaceGroupRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "LocalGatewayVirtualInterfaceGroupId": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the local gateway virtual interface group to delete.

", + "smithy.api#required": {} } }, - "VpcPeeringConnectionId": { - "target": "com.amazonaws.ec2#VpcPeeringConnectionId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "VpcPeeringConnectionId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC peering connection.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "vpcPeeringConnectionId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -26216,15 +27212,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteVpcPeeringConnectionResult": { + "com.amazonaws.ec2#DeleteLocalGatewayVirtualInterfaceGroupResult": { "type": "structure", "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + "LocalGatewayVirtualInterfaceGroup": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroup", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceGroup", + "smithy.api#documentation": "

Information about the deleted local gateway virtual interface group.

", + "smithy.api#xmlName": "localGatewayVirtualInterfaceGroup" } } }, @@ -26232,23 +27228,21 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteVpcRequest": { + "com.amazonaws.ec2#DeleteLocalGatewayVirtualInterfaceRequest": { "type": "structure", "members": { - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "LocalGatewayVirtualInterfaceId": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#documentation": "

The ID of the local virtual interface to delete.

", "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -26256,160 +27250,128 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteVpnConnection": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteVpnConnectionRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Deletes the specified VPN connection.

\n

If you're deleting the VPC and its associated components, we recommend that you detach\n the virtual private gateway from the VPC and delete the VPC before deleting the VPN\n connection. If you believe that the tunnel credentials for your VPN connection have been\n compromised, you can delete the VPN connection and create a new one that has new keys,\n without needing to delete the VPC or virtual private gateway. If you create a new VPN\n connection, you must reconfigure the customer gateway device using the new configuration\n information returned with the new VPN connection ID.

\n

For certificate-based authentication, delete all Certificate Manager (ACM) private\n certificates used for the Amazon Web Services-side tunnel endpoints for the VPN\n connection before deleting the VPN connection.

" - } - }, - "com.amazonaws.ec2#DeleteVpnConnectionRequest": { + "com.amazonaws.ec2#DeleteLocalGatewayVirtualInterfaceResult": { "type": "structure", "members": { - "VpnConnectionId": { - "target": "com.amazonaws.ec2#VpnConnectionId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPN connection.

", - "smithy.api#required": {} - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "LocalGatewayVirtualInterface": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterface", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterface", + "smithy.api#documentation": "

Information about the deleted local gateway virtual interface.

", + "smithy.api#xmlName": "localGatewayVirtualInterface" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DeleteVpnConnection.

", - "smithy.api#input": {} + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeleteVpnConnectionRoute": { + "com.amazonaws.ec2#DeleteManagedPrefixList": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeleteVpnConnectionRouteRequest" + "target": "com.amazonaws.ec2#DeleteManagedPrefixListRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.ec2#DeleteManagedPrefixListResult" }, "traits": { - "smithy.api#documentation": "

Deletes the specified static route associated with a VPN connection between an\n existing virtual private gateway and a VPN customer gateway. The static route allows\n traffic to be routed from the virtual private gateway to the VPN customer\n gateway.

" + "smithy.api#documentation": "

Deletes the specified managed prefix list. You must first remove all references to the prefix list in your resources.

" } }, - "com.amazonaws.ec2#DeleteVpnConnectionRouteRequest": { + "com.amazonaws.ec2#DeleteManagedPrefixListRequest": { "type": "structure", "members": { - "DestinationCidrBlock": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The CIDR block associated with the local subnet of the customer network.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "VpnConnectionId": { - "target": "com.amazonaws.ec2#VpnConnectionId", + "PrefixListId": { + "target": "com.amazonaws.ec2#PrefixListResourceId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPN connection.

", + "smithy.api#documentation": "

The ID of the prefix list.

", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DeleteVpnConnectionRoute.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeleteVpnGateway": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeleteVpnGatewayRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Deletes the specified virtual private gateway. You must first detach the virtual\n private gateway from the VPC. Note that you don't need to delete the virtual private\n gateway if you plan to delete and recreate the VPN connection between your VPC and your\n network.

" - } - }, - "com.amazonaws.ec2#DeleteVpnGatewayRequest": { + "com.amazonaws.ec2#DeleteManagedPrefixListResult": { "type": "structure", "members": { - "VpnGatewayId": { - "target": "com.amazonaws.ec2#VpnGatewayId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the virtual private gateway.

", - "smithy.api#required": {} - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "PrefixList": { + "target": "com.amazonaws.ec2#ManagedPrefixList", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "PrefixList", + "smithy.api#documentation": "

Information about the prefix list.

", + "smithy.api#xmlName": "prefixList" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DeleteVpnGateway.

", - "smithy.api#input": {} + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeprovisionByoipCidr": { + "com.amazonaws.ec2#DeleteNatGateway": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeprovisionByoipCidrRequest" + "target": "com.amazonaws.ec2#DeleteNatGatewayRequest" }, "output": { - "target": "com.amazonaws.ec2#DeprovisionByoipCidrResult" + "target": "com.amazonaws.ec2#DeleteNatGatewayResult" }, "traits": { - "smithy.api#documentation": "

Releases the specified address range that you provisioned for use with your Amazon Web Services resources\n through bring your own IP addresses (BYOIP) and deletes the corresponding address pool.

\n

Before you can release an address range, you must stop advertising it using WithdrawByoipCidr and you must not have any IP addresses allocated from its\n address range.

" + "smithy.api#documentation": "

Deletes the specified NAT gateway. Deleting a public NAT gateway disassociates its Elastic IP address, \n but does not release the address from your account. Deleting a NAT gateway does not delete any NAT gateway \n routes in your route tables.

", + "smithy.api#examples": [ + { + "title": "To delete a NAT gateway", + "documentation": "This example deletes the specified NAT gateway.", + "input": { + "NatGatewayId": "nat-04ae55e711cec5680" + }, + "output": { + "NatGatewayId": "nat-04ae55e711cec5680" + } + } + ] } }, - "com.amazonaws.ec2#DeprovisionByoipCidrRequest": { + "com.amazonaws.ec2#DeleteNatGatewayRequest": { "type": "structure", "members": { - "Cidr": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The address range, in CIDR notation. The prefix must be the same prefix \n that you specified when you provisioned the address range.

", - "smithy.api#required": {} - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } + }, + "NatGatewayId": { + "target": "com.amazonaws.ec2#NatGatewayId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the NAT gateway.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "NatGatewayId" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeprovisionByoipCidrResult": { + "com.amazonaws.ec2#DeleteNatGatewayResult": { "type": "structure", "members": { - "ByoipCidr": { - "target": "com.amazonaws.ec2#ByoipCidr", + "NatGatewayId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ByoipCidr", - "smithy.api#documentation": "

Information about the address range.

", - "smithy.api#xmlName": "byoipCidr" + "aws.protocols#ec2QueryName": "NatGatewayId", + "smithy.api#documentation": "

The ID of the NAT gateway.

", + "smithy.api#xmlName": "natGatewayId" } } }, @@ -26417,41 +27379,89 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeprovisionIpamByoasn": { + "com.amazonaws.ec2#DeleteNetworkAcl": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeprovisionIpamByoasnRequest" + "target": "com.amazonaws.ec2#DeleteNetworkAclRequest" }, "output": { - "target": "com.amazonaws.ec2#DeprovisionIpamByoasnResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Deprovisions your Autonomous System Number (ASN) from your Amazon Web Services account. This action can only be called after any BYOIP CIDR associations are removed from your Amazon Web Services account with DisassociateIpamByoasn.\n For more information, see Tutorial: Bring your ASN to IPAM in the Amazon VPC IPAM guide.

" + "smithy.api#documentation": "

Deletes the specified network ACL. You can't delete the ACL if it's associated with any subnets. You can't delete the default network ACL.

", + "smithy.api#examples": [ + { + "title": "To delete a network ACL", + "documentation": "This example deletes the specified network ACL.", + "input": { + "NetworkAclId": "acl-5fb85d36" + } + } + ] } }, - "com.amazonaws.ec2#DeprovisionIpamByoasnRequest": { + "com.amazonaws.ec2#DeleteNetworkAclEntry": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteNetworkAclEntryRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Deletes the specified ingress or egress entry (rule) from the specified network ACL.

", + "smithy.api#examples": [ + { + "title": "To delete a network ACL entry", + "documentation": "This example deletes ingress rule number 100 from the specified network ACL.", + "input": { + "NetworkAclId": "acl-5fb85d36", + "RuleNumber": 100, + "Egress": true + } + } + ] + } + }, + "com.amazonaws.ec2#DeleteNetworkAclEntryRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "IpamId": { - "target": "com.amazonaws.ec2#IpamId", + "NetworkAclId": { + "target": "com.amazonaws.ec2#NetworkAclId", "traits": { + "aws.protocols#ec2QueryName": "NetworkAclId", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IPAM ID.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The ID of the network ACL.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "networkAclId" } }, - "Asn": { - "target": "com.amazonaws.ec2#String", + "RuleNumber": { + "target": "com.amazonaws.ec2#Integer", "traits": { + "aws.protocols#ec2QueryName": "RuleNumber", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

An ASN.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The rule number of the entry to delete.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "ruleNumber" + } + }, + "Egress": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Egress", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Indicates whether the rule is an egress rule.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "egress" } } }, @@ -26459,55 +27469,71 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeprovisionIpamByoasnResult": { + "com.amazonaws.ec2#DeleteNetworkAclRequest": { "type": "structure", "members": { - "Byoasn": { - "target": "com.amazonaws.ec2#Byoasn", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Byoasn", - "smithy.api#documentation": "

An ASN and BYOIP CIDR association.

", - "smithy.api#xmlName": "byoasn" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "NetworkAclId": { + "target": "com.amazonaws.ec2#NetworkAclId", + "traits": { + "aws.protocols#ec2QueryName": "NetworkAclId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the network ACL.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "networkAclId" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeprovisionIpamPoolCidr": { + "com.amazonaws.ec2#DeleteNetworkInsightsAccessScope": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeprovisionIpamPoolCidrRequest" + "target": "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeRequest" }, "output": { - "target": "com.amazonaws.ec2#DeprovisionIpamPoolCidrResult" + "target": "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeResult" }, "traits": { - "smithy.api#documentation": "

Deprovision a CIDR provisioned from an IPAM pool. If you deprovision a CIDR from a pool that has a source pool, the CIDR is recycled back into the source pool. For more information, see Deprovision pool CIDRs in the Amazon VPC IPAM User Guide.

" + "smithy.api#documentation": "

Deletes the specified Network Access Scope.

" } }, - "com.amazonaws.ec2#DeprovisionIpamPoolCidrRequest": { + "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeAnalysis": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeAnalysisRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeAnalysisResult" + }, + "traits": { + "smithy.api#documentation": "

Deletes the specified Network Access Scope analysis.

" + } + }, + "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeAnalysisRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "IpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", + "NetworkInsightsAccessScopeAnalysisId": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the pool that has the CIDR you want to deprovision.

", + "smithy.api#documentation": "

The ID of the Network Access Scope analysis.

", "smithy.api#required": {} } }, - "Cidr": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The CIDR which you want to deprovision from the pool.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -26515,15 +27541,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeprovisionIpamPoolCidrResult": { + "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeAnalysisResult": { "type": "structure", "members": { - "IpamPoolCidr": { - "target": "com.amazonaws.ec2#IpamPoolCidr", + "NetworkInsightsAccessScopeAnalysisId": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisId", "traits": { - "aws.protocols#ec2QueryName": "IpamPoolCidr", - "smithy.api#documentation": "

The deprovisioned pool CIDR.

", - "smithy.api#xmlName": "ipamPoolCidr" + "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeAnalysisId", + "smithy.api#documentation": "

The ID of the Network Access Scope analysis.

", + "smithy.api#xmlName": "networkInsightsAccessScopeAnalysisId" } } }, @@ -26531,40 +27557,20 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeprovisionPublicIpv4PoolCidr": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DeprovisionPublicIpv4PoolCidrRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DeprovisionPublicIpv4PoolCidrResult" - }, - "traits": { - "smithy.api#documentation": "

Deprovision a CIDR from a public IPv4 pool.

" - } - }, - "com.amazonaws.ec2#DeprovisionPublicIpv4PoolCidrRequest": { + "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "PoolId": { - "target": "com.amazonaws.ec2#Ipv4PoolEc2Id", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the pool that you want to deprovision the CIDR from.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "Cidr": { - "target": "com.amazonaws.ec2#String", + "NetworkInsightsAccessScopeId": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The CIDR you want to deprovision from the pool. Enter the CIDR you want to deprovision with a netmask of /32. You must rerun this command for each IP address in the CIDR range. If your CIDR is a /24, you will have to run this command to deprovision each of the 256 IP addresses in the /24 CIDR.

", + "smithy.api#documentation": "

The ID of the Network Access Scope.

", "smithy.api#required": {} } } @@ -26573,23 +27579,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeprovisionPublicIpv4PoolCidrResult": { + "com.amazonaws.ec2#DeleteNetworkInsightsAccessScopeResult": { "type": "structure", "members": { - "PoolId": { - "target": "com.amazonaws.ec2#Ipv4PoolEc2Id", - "traits": { - "aws.protocols#ec2QueryName": "PoolId", - "smithy.api#documentation": "

The ID of the pool that you deprovisioned the CIDR from.

", - "smithy.api#xmlName": "poolId" - } - }, - "DeprovisionedAddresses": { - "target": "com.amazonaws.ec2#DeprovisionedAddressSet", + "NetworkInsightsAccessScopeId": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeId", "traits": { - "aws.protocols#ec2QueryName": "DeprovisionedAddressSet", - "smithy.api#documentation": "

The deprovisioned CIDRs.

", - "smithy.api#xmlName": "deprovisionedAddressSet" + "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeId", + "smithy.api#documentation": "

The ID of the Network Access Scope.

", + "smithy.api#xmlName": "networkInsightsAccessScopeId" } } }, @@ -26597,65 +27595,69 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeprovisionedAddressSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#DeregisterImage": { + "com.amazonaws.ec2#DeleteNetworkInsightsAnalysis": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeregisterImageRequest" + "target": "com.amazonaws.ec2#DeleteNetworkInsightsAnalysisRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.ec2#DeleteNetworkInsightsAnalysisResult" }, "traits": { - "smithy.api#documentation": "

Deregisters the specified AMI. After you deregister an AMI, it can't be used to \n launch new instances.

\n

If you deregister an AMI that matches a Recycle Bin retention rule, the AMI is retained\n in the Recycle Bin for the specified retention period. For more information, see Recycle Bin in\n the Amazon EC2 User Guide.

\n

When you deregister an AMI, it doesn't affect any instances that you've already \n launched from the AMI. You'll continue to incur usage costs for those instances until \n you terminate them.

\n

When you deregister an Amazon EBS-backed AMI, it doesn't affect the snapshot that was\n\t\t\tcreated for the root volume of the instance during the AMI creation process. When you\n\t\t\tderegister an instance store-backed AMI, it doesn't affect the files that you uploaded\n\t\t\tto Amazon S3 when you created the AMI.

" + "smithy.api#documentation": "

Deletes the specified network insights analysis.

" } }, - "com.amazonaws.ec2#DeregisterImageRequest": { + "com.amazonaws.ec2#DeleteNetworkInsightsAnalysisRequest": { "type": "structure", "members": { - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the AMI.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NetworkInsightsAnalysisId": { + "target": "com.amazonaws.ec2#NetworkInsightsAnalysisId", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the network insights analysis.

", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DeregisterImage.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeregisterInstanceEventNotificationAttributes": { + "com.amazonaws.ec2#DeleteNetworkInsightsAnalysisResult": { + "type": "structure", + "members": { + "NetworkInsightsAnalysisId": { + "target": "com.amazonaws.ec2#NetworkInsightsAnalysisId", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInsightsAnalysisId", + "smithy.api#documentation": "

The ID of the network insights analysis.

", + "smithy.api#xmlName": "networkInsightsAnalysisId" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DeleteNetworkInsightsPath": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeregisterInstanceEventNotificationAttributesRequest" + "target": "com.amazonaws.ec2#DeleteNetworkInsightsPathRequest" }, "output": { - "target": "com.amazonaws.ec2#DeregisterInstanceEventNotificationAttributesResult" + "target": "com.amazonaws.ec2#DeleteNetworkInsightsPathResult" }, "traits": { - "smithy.api#documentation": "

Deregisters tag keys to prevent tags that have the specified tag keys from being included\n\t\t\tin scheduled event notifications for resources in the Region.

" + "smithy.api#documentation": "

Deletes the specified path.

" } }, - "com.amazonaws.ec2#DeregisterInstanceEventNotificationAttributesRequest": { + "com.amazonaws.ec2#DeleteNetworkInsightsPathRequest": { "type": "structure", "members": { "DryRun": { @@ -26664,11 +27666,11 @@ "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "InstanceTagAttribute": { - "target": "com.amazonaws.ec2#DeregisterInstanceTagAttributeRequest", + "NetworkInsightsPathId": { + "target": "com.amazonaws.ec2#NetworkInsightsPathId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Information about the tag keys to deregister.

", + "smithy.api#documentation": "

The ID of the path.

", "smithy.api#required": {} } } @@ -26677,15 +27679,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeregisterInstanceEventNotificationAttributesResult": { + "com.amazonaws.ec2#DeleteNetworkInsightsPathResult": { "type": "structure", "members": { - "InstanceTagAttribute": { - "target": "com.amazonaws.ec2#InstanceTagNotificationAttribute", + "NetworkInsightsPathId": { + "target": "com.amazonaws.ec2#NetworkInsightsPathId", "traits": { - "aws.protocols#ec2QueryName": "InstanceTagAttribute", - "smithy.api#documentation": "

The resulting set of tag keys.

", - "smithy.api#xmlName": "instanceTagAttribute" + "aws.protocols#ec2QueryName": "NetworkInsightsPathId", + "smithy.api#documentation": "

The ID of the path.

", + "smithy.api#xmlName": "networkInsightsPathId" } } }, @@ -26693,124 +27695,193 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeregisterInstanceTagAttributeRequest": { - "type": "structure", - "members": { - "IncludeAllTagsOfInstance": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Indicates whether to deregister all tag keys in the current Region. Specify false \n \t\tto deregister all tag keys.

" - } - }, - "InstanceTagKeys": { - "target": "com.amazonaws.ec2#InstanceTagKeySet", - "traits": { - "smithy.api#documentation": "

Information about the tag keys to deregister.

", - "smithy.api#xmlName": "InstanceTagKey" - } - } + "com.amazonaws.ec2#DeleteNetworkInterface": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteNetworkInterfaceRequest" + }, + "output": { + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Information about the tag keys to deregister for the current Region. You can either specify \n \t\tindividual tag keys or deregister all tag keys in the current Region. You must specify either\n \t\tIncludeAllTagsOfInstance or InstanceTagKeys in the request

" + "smithy.api#documentation": "

Deletes the specified network interface. You must detach the network interface before\n you can delete it.

", + "smithy.api#examples": [ + { + "title": "To delete a network interface", + "documentation": "This example deletes the specified network interface.", + "input": { + "NetworkInterfaceId": "eni-e5aa89a3" + } + } + ] } }, - "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupMembers": { + "com.amazonaws.ec2#DeleteNetworkInterfacePermission": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupMembersRequest" + "target": "com.amazonaws.ec2#DeleteNetworkInterfacePermissionRequest" }, "output": { - "target": "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupMembersResult" + "target": "com.amazonaws.ec2#DeleteNetworkInterfacePermissionResult" }, "traits": { - "smithy.api#documentation": "

Deregisters the specified members (network interfaces) from the transit gateway multicast group.

" + "smithy.api#documentation": "

Deletes a permission for a network interface. By default, you cannot delete the\n permission if the account for which you're removing the permission has attached the\n network interface to an instance. However, you can force delete the permission,\n regardless of any attachment.

" } }, - "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupMembersRequest": { + "com.amazonaws.ec2#DeleteNetworkInterfacePermissionRequest": { "type": "structure", "members": { - "TransitGatewayMulticastDomainId": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainId", - "traits": { - "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

" - } - }, - "GroupIpAddress": { - "target": "com.amazonaws.ec2#String", + "NetworkInterfacePermissionId": { + "target": "com.amazonaws.ec2#NetworkInterfacePermissionId", "traits": { - "smithy.api#documentation": "

The IP address assigned to the transit gateway multicast group.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the network interface permission.

", + "smithy.api#required": {} } }, - "NetworkInterfaceIds": { - "target": "com.amazonaws.ec2#TransitGatewayNetworkInterfaceIdList", + "Force": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The IDs of the group members' network interfaces.

" + "smithy.api#documentation": "

Specify true to remove the permission even if the network interface is\n attached to an instance.

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DeleteNetworkInterfacePermission.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupMembersResult": { + "com.amazonaws.ec2#DeleteNetworkInterfacePermissionResult": { "type": "structure", "members": { - "DeregisteredMulticastGroupMembers": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastDeregisteredGroupMembers", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DeregisteredMulticastGroupMembers", - "smithy.api#documentation": "

Information about the deregistered members.

", - "smithy.api#xmlName": "deregisteredMulticastGroupMembers" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds, otherwise returns an error.

", + "smithy.api#xmlName": "return" } } }, "traits": { + "smithy.api#documentation": "

Contains the output for DeleteNetworkInterfacePermission.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupSources": { + "com.amazonaws.ec2#DeleteNetworkInterfaceRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInterfaceId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the network interface.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "networkInterfaceId" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the parameters for DeleteNetworkInterface.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DeletePlacementGroup": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupSourcesRequest" + "target": "com.amazonaws.ec2#DeletePlacementGroupRequest" }, "output": { - "target": "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupSourcesResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Deregisters the specified sources (network interfaces) from the transit gateway multicast group.

" + "smithy.api#documentation": "

Deletes the specified placement group. You must terminate all instances in the\n placement group before you can delete the placement group. For more information, see\n Placement groups in the Amazon EC2 User Guide.

", + "smithy.api#examples": [ + { + "title": "To delete a placement group", + "documentation": "This example deletes the specified placement group.\n", + "input": { + "GroupName": "my-cluster" + }, + "output": {} + } + ] } }, - "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupSourcesRequest": { + "com.amazonaws.ec2#DeletePlacementGroupRequest": { "type": "structure", "members": { - "TransitGatewayMulticastDomainId": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "GroupIpAddress": { - "target": "com.amazonaws.ec2#String", + "GroupName": { + "target": "com.amazonaws.ec2#PlacementGroupName", "traits": { - "smithy.api#documentation": "

The IP address assigned to the transit gateway multicast group.

" + "aws.protocols#ec2QueryName": "GroupName", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The name of the placement group.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "groupName" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DeletePublicIpv4Pool": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeletePublicIpv4PoolRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeletePublicIpv4PoolResult" + }, + "traits": { + "smithy.api#documentation": "

Delete a public IPv4 pool. A public IPv4 pool is an EC2 IP address pool required for the public IPv4 CIDRs that you own and bring to Amazon Web Services to manage with IPAM. IPv6 addresses you bring to Amazon Web Services, however, use IPAM pools only.

" + } + }, + "com.amazonaws.ec2#DeletePublicIpv4PoolRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "NetworkInterfaceIds": { - "target": "com.amazonaws.ec2#TransitGatewayNetworkInterfaceIdList", + "PoolId": { + "target": "com.amazonaws.ec2#Ipv4PoolEc2Id", "traits": { - "smithy.api#documentation": "

The IDs of the group sources' network interfaces.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the public IPv4 pool you want to delete.

", + "smithy.api#required": {} } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NetworkBorderGroup": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The Availability Zone (AZ) or Local Zone (LZ) network border group that the resource that the IP address is assigned to is in. Defaults to an AZ network border group. For more information on available Local Zones, see Local Zone availability in the Amazon EC2 User Guide.

" } } }, @@ -26818,15 +27889,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupSourcesResult": { + "com.amazonaws.ec2#DeletePublicIpv4PoolResult": { "type": "structure", "members": { - "DeregisteredMulticastGroupSources": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastDeregisteredGroupSources", + "ReturnValue": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DeregisteredMulticastGroupSources", - "smithy.api#documentation": "

Information about the deregistered group sources.

", - "smithy.api#xmlName": "deregisteredMulticastGroupSources" + "aws.protocols#ec2QueryName": "ReturnValue", + "smithy.api#documentation": "

Information about the result of deleting the public IPv4 pool.

", + "smithy.api#xmlName": "returnValue" } } }, @@ -26834,196 +27905,96 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeAccountAttributes": { + "com.amazonaws.ec2#DeleteQueuedReservedInstances": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeAccountAttributesRequest" + "target": "com.amazonaws.ec2#DeleteQueuedReservedInstancesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeAccountAttributesResult" + "target": "com.amazonaws.ec2#DeleteQueuedReservedInstancesResult" }, "traits": { - "smithy.api#documentation": "

Describes attributes of your Amazon Web Services account. The following are the supported account attributes:

\n \n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", - "smithy.api#examples": [ - { - "title": "To describe a single attribute for your AWS account", - "documentation": "This example describes the supported-platforms attribute for your AWS account.", - "input": { - "AttributeNames": [ - "supported-platforms" - ] - }, - "output": { - "AccountAttributes": [ - { - "AttributeName": "supported-platforms", - "AttributeValues": [ - { - "AttributeValue": "EC2" - }, - { - "AttributeValue": "VPC" - } - ] - } - ] - } - }, - { - "title": "To describe all attributes for your AWS account", - "documentation": "This example describes the attributes for your AWS account.", - "output": { - "AccountAttributes": [ - { - "AttributeName": "supported-platforms", - "AttributeValues": [ - { - "AttributeValue": "EC2" - }, - { - "AttributeValue": "VPC" - } - ] - }, - { - "AttributeName": "vpc-max-security-groups-per-interface", - "AttributeValues": [ - { - "AttributeValue": "5" - } - ] - }, - { - "AttributeName": "max-elastic-ips", - "AttributeValues": [ - { - "AttributeValue": "5" - } - ] - }, - { - "AttributeName": "max-instances", - "AttributeValues": [ - { - "AttributeValue": "20" - } - ] - }, - { - "AttributeName": "vpc-max-elastic-ips", - "AttributeValues": [ - { - "AttributeValue": "5" - } - ] - }, - { - "AttributeName": "default-vpc", - "AttributeValues": [ - { - "AttributeValue": "none" - } - ] - } - ] - } - } - ] + "smithy.api#documentation": "

Deletes the queued purchases for the specified Reserved Instances.

" } }, - "com.amazonaws.ec2#DescribeAccountAttributesRequest": { + "com.amazonaws.ec2#DeleteQueuedReservedInstancesError": { "type": "structure", "members": { - "AttributeNames": { - "target": "com.amazonaws.ec2#AccountAttributeNameStringList", + "Code": { + "target": "com.amazonaws.ec2#DeleteQueuedReservedInstancesErrorCode", "traits": { - "aws.protocols#ec2QueryName": "AttributeName", - "smithy.api#documentation": "

The account attribute names.

", - "smithy.api#xmlName": "attributeName" + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The error code.

", + "smithy.api#xmlName": "code" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Message": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "Message", + "smithy.api#documentation": "

The error message.

", + "smithy.api#xmlName": "message" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes the error for a Reserved Instance whose queued purchase could not be\n deleted.

" } }, - "com.amazonaws.ec2#DescribeAccountAttributesResult": { - "type": "structure", + "com.amazonaws.ec2#DeleteQueuedReservedInstancesErrorCode": { + "type": "enum", "members": { - "AccountAttributes": { - "target": "com.amazonaws.ec2#AccountAttributeList", + "RESERVED_INSTANCES_ID_INVALID": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AccountAttributeSet", - "smithy.api#documentation": "

Information about the account attributes.

", - "smithy.api#xmlName": "accountAttributeSet" + "smithy.api#enumValue": "reserved-instances-id-invalid" + } + }, + "RESERVED_INSTANCES_NOT_IN_QUEUED_STATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "reserved-instances-not-in-queued-state" + } + }, + "UNEXPECTED_ERROR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "unexpected-error" } } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeAddressTransfers": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DescribeAddressTransfersRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DescribeAddressTransfersResult" - }, - "traits": { - "smithy.api#documentation": "

Describes an Elastic IP address transfer. For more information, see Transfer Elastic IP addresses in the Amazon Virtual Private Cloud User Guide.

\n

When you transfer an Elastic IP address, there is a two-step handshake\n between the source and transfer Amazon Web Services accounts. When the source account starts the transfer,\n the transfer account has seven days to accept the Elastic IP address\n transfer. During those seven days, the source account can view the\n pending transfer by using this action. After seven days, the\n transfer expires and ownership of the Elastic IP\n address returns to the source\n account. Accepted transfers are visible to the source account for three days\n after the transfers have been accepted.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "AddressTransfers", - "pageSize": "MaxResults" + "com.amazonaws.ec2#DeleteQueuedReservedInstancesIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ReservationId", + "traits": { + "smithy.api#xmlName": "item" } - } - }, - "com.amazonaws.ec2#DescribeAddressTransfersMaxResults": { - "type": "integer", + }, "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 + "smithy.api#length": { + "min": 1, + "max": 100 } } }, - "com.amazonaws.ec2#DescribeAddressTransfersRequest": { + "com.amazonaws.ec2#DeleteQueuedReservedInstancesRequest": { "type": "structure", "members": { - "AllocationIds": { - "target": "com.amazonaws.ec2#AllocationIdList", - "traits": { - "smithy.api#documentation": "

The allocation IDs of Elastic IP addresses.

", - "smithy.api#xmlName": "AllocationId" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeAddressTransfersMaxResults", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The maximum number of address transfers to return in one page of results.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making\n the request, and provides an error response. If you have the required permissions, the error\n response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ReservedInstancesIds": { + "target": "com.amazonaws.ec2#DeleteQueuedReservedInstancesIdList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of the Reserved Instances.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "ReservedInstancesId" } } }, @@ -27031,23 +28002,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeAddressTransfersResult": { + "com.amazonaws.ec2#DeleteQueuedReservedInstancesResult": { "type": "structure", "members": { - "AddressTransfers": { - "target": "com.amazonaws.ec2#AddressTransferList", + "SuccessfulQueuedPurchaseDeletions": { + "target": "com.amazonaws.ec2#SuccessfulQueuedPurchaseDeletionSet", "traits": { - "aws.protocols#ec2QueryName": "AddressTransferSet", - "smithy.api#documentation": "

The Elastic IP address transfer.

", - "smithy.api#xmlName": "addressTransferSet" + "aws.protocols#ec2QueryName": "SuccessfulQueuedPurchaseDeletionSet", + "smithy.api#documentation": "

Information about the queued purchases that were successfully deleted.

", + "smithy.api#xmlName": "successfulQueuedPurchaseDeletionSet" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "FailedQueuedPurchaseDeletions": { + "target": "com.amazonaws.ec2#FailedQueuedPurchaseDeletionSet", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "FailedQueuedPurchaseDeletionSet", + "smithy.api#documentation": "

Information about the queued purchases that could not be deleted.

", + "smithy.api#xmlName": "failedQueuedPurchaseDeletionSet" } } }, @@ -27055,93 +28026,69 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeAddresses": { + "com.amazonaws.ec2#DeleteRoute": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeAddressesRequest" + "target": "com.amazonaws.ec2#DeleteRouteRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeAddressesResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Describes the specified Elastic IP addresses or all of your Elastic IP addresses.

", + "smithy.api#documentation": "

Deletes the specified route from the specified route table.

", "smithy.api#examples": [ { - "title": "To describe your Elastic IP addresses", - "documentation": "This example describes your Elastic IP addresses.", - "output": { - "Addresses": [ - { - "InstanceId": "i-1234567890abcdef0", - "PublicIp": "198.51.100.0", - "Domain": "standard" - }, - { - "Domain": "vpc", - "InstanceId": "i-1234567890abcdef0", - "NetworkInterfaceId": "eni-12345678", - "AssociationId": "eipassoc-12345678", - "NetworkInterfaceOwnerId": "123456789012", - "PublicIp": "203.0.113.0", - "AllocationId": "eipalloc-12345678", - "PrivateIpAddress": "10.0.1.241" - } - ] + "title": "To delete a route", + "documentation": "This example deletes the specified route from the specified route table.", + "input": { + "RouteTableId": "rtb-22574640", + "DestinationCidrBlock": "0.0.0.0/0" } } ] } }, - "com.amazonaws.ec2#DescribeAddressesAttribute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DescribeAddressesAttributeRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DescribeAddressesAttributeResult" - }, - "traits": { - "smithy.api#documentation": "

Describes the attributes of the specified Elastic IP addresses. For requirements, see Using reverse DNS for email applications.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "Addresses", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeAddressesAttributeRequest": { + "com.amazonaws.ec2#DeleteRouteRequest": { "type": "structure", "members": { - "AllocationIds": { - "target": "com.amazonaws.ec2#AllocationIds", + "DestinationPrefixListId": { + "target": "com.amazonaws.ec2#PrefixListResourceId", "traits": { - "smithy.api#documentation": "

[EC2-VPC] The allocation IDs.

", - "smithy.api#xmlName": "AllocationId" + "smithy.api#documentation": "

The ID of the prefix list for the route.

" } }, - "Attribute": { - "target": "com.amazonaws.ec2#AddressAttributeName", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The attribute of the IP address.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "RouteTableId": { + "target": "com.amazonaws.ec2#RouteTableId", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "aws.protocols#ec2QueryName": "RouteTableId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the route table.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "routeTableId" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#AddressMaxResults", + "DestinationCidrBlock": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

" + "aws.protocols#ec2QueryName": "DestinationCidrBlock", + "smithy.api#documentation": "

The IPv4 CIDR range for the route. The value you specify must match the CIDR for the route exactly.

", + "smithy.api#xmlName": "destinationCidrBlock" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "DestinationIpv6CidrBlock": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DestinationIpv6CidrBlock", + "smithy.api#documentation": "

The IPv6 CIDR range for the route. The value you specify must match the CIDR for the route exactly.

", + "smithy.api#xmlName": "destinationIpv6CidrBlock" } } }, @@ -27149,60 +28096,45 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeAddressesAttributeResult": { - "type": "structure", - "members": { - "Addresses": { - "target": "com.amazonaws.ec2#AddressSet", - "traits": { - "aws.protocols#ec2QueryName": "AddressSet", - "smithy.api#documentation": "

Information about the IP addresses.

", - "smithy.api#xmlName": "addressSet" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", - "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" - } - } + "com.amazonaws.ec2#DeleteRouteServer": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteRouteServerRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeleteRouteServerResult" }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Deletes the specified route server.

\n

Amazon VPC Route Server simplifies routing for traffic between workloads that are deployed within a VPC and its internet gateways. With this feature, \nVPC Route Server dynamically updates VPC and internet gateway route tables with your preferred IPv4 or IPv6 routes to achieve routing fault tolerance for those workloads. This enables you to automatically reroute traffic within a VPC, which increases the manageability of VPC routing and interoperability with third-party workloads.

\n

Route server supports the follow route table types:

\n \n

Route server does not support route tables associated with virtual private gateways. To propagate routes into a transit gateway route table, use Transit Gateway Connect.

\n

For more information see Dynamic routing in your VPC with VPC Route Server in the Amazon VPC User Guide.

" } }, - "com.amazonaws.ec2#DescribeAddressesRequest": { + "com.amazonaws.ec2#DeleteRouteServerEndpoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteRouteServerEndpointRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeleteRouteServerEndpointResult" + }, + "traits": { + "smithy.api#documentation": "

Deletes the specified route server endpoint.

\n

A route server endpoint is an Amazon Web Services-managed component inside a subnet that facilitates BGP (Border Gateway Protocol) connections between your route server and your BGP peers.

" + } + }, + "com.amazonaws.ec2#DeleteRouteServerEndpointRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

\n ", - "smithy.api#xmlName": "Filter" - } - }, - "PublicIps": { - "target": "com.amazonaws.ec2#PublicIpStringList", - "traits": { - "smithy.api#documentation": "

One or more Elastic IP addresses.

\n

Default: Describes all your Elastic IP addresses.

", - "smithy.api#xmlName": "PublicIp" - } - }, - "AllocationIds": { - "target": "com.amazonaws.ec2#AllocationIdList", + "RouteServerEndpointId": { + "target": "com.amazonaws.ec2#RouteServerEndpointId", "traits": { - "smithy.api#documentation": "

Information about the allocation IDs.

", - "smithy.api#xmlName": "AllocationId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the route server endpoint to delete.

", + "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -27210,15 +28142,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeAddressesResult": { + "com.amazonaws.ec2#DeleteRouteServerEndpointResult": { "type": "structure", "members": { - "Addresses": { - "target": "com.amazonaws.ec2#AddressList", + "RouteServerEndpoint": { + "target": "com.amazonaws.ec2#RouteServerEndpoint", "traits": { - "aws.protocols#ec2QueryName": "AddressesSet", - "smithy.api#documentation": "

Information about the Elastic IP addresses.

", - "smithy.api#xmlName": "addressesSet" + "aws.protocols#ec2QueryName": "RouteServerEndpoint", + "smithy.api#documentation": "

Information about the deleted route server endpoint.

", + "smithy.api#xmlName": "routeServerEndpoint" } } }, @@ -27226,25 +28158,33 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeAggregateIdFormat": { + "com.amazonaws.ec2#DeleteRouteServerPeer": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeAggregateIdFormatRequest" + "target": "com.amazonaws.ec2#DeleteRouteServerPeerRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeAggregateIdFormatResult" + "target": "com.amazonaws.ec2#DeleteRouteServerPeerResult" }, "traits": { - "smithy.api#documentation": "

Describes the longer ID format settings for all resource types in a specific\n Region. This request is useful for performing a quick audit to determine whether a\n specific Region is fully opted in for longer IDs (17-character IDs).

\n

This request only returns information about resource types that support longer IDs.

\n

The following resource types support longer IDs: bundle |\n conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | instance | internet-gateway |\n network-acl | network-acl-association |\n network-interface | network-interface-attachment |\n prefix-list | reservation | route-table |\n route-table-association | security-group |\n snapshot | subnet |\n subnet-cidr-block-association | volume | vpc |\n vpc-cidr-block-association | vpc-endpoint |\n vpc-peering-connection | vpn-connection | vpn-gateway.

" + "smithy.api#documentation": "

Deletes the specified BGP peer from a route server.

\n

A route server peer is a session between a route server endpoint and the device deployed in Amazon Web Services (such as a firewall appliance or other network security function running on an EC2 instance). The device must meet these requirements:

\n " } }, - "com.amazonaws.ec2#DescribeAggregateIdFormatRequest": { + "com.amazonaws.ec2#DeleteRouteServerPeerRequest": { "type": "structure", "members": { + "RouteServerPeerId": { + "target": "com.amazonaws.ec2#RouteServerPeerId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the route server peer to delete.

", + "smithy.api#required": {} + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -27252,23 +28192,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeAggregateIdFormatResult": { + "com.amazonaws.ec2#DeleteRouteServerPeerResult": { "type": "structure", "members": { - "UseLongIdsAggregated": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "UseLongIdsAggregated", - "smithy.api#documentation": "

Indicates whether all resource types in the Region are configured to use longer IDs.\n This value is only true if all users are configured to use longer IDs for\n all resources types in the Region.

", - "smithy.api#xmlName": "useLongIdsAggregated" - } - }, - "Statuses": { - "target": "com.amazonaws.ec2#IdFormatList", + "RouteServerPeer": { + "target": "com.amazonaws.ec2#RouteServerPeer", "traits": { - "aws.protocols#ec2QueryName": "StatusSet", - "smithy.api#documentation": "

Information about each resource's ID format.

", - "smithy.api#xmlName": "statusSet" + "aws.protocols#ec2QueryName": "RouteServerPeer", + "smithy.api#documentation": "

Information about the deleted route server peer.

", + "smithy.api#xmlName": "routeServerPeer" } } }, @@ -27276,88 +28208,21 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeAvailabilityZones": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DescribeAvailabilityZonesRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DescribeAvailabilityZonesResult" - }, - "traits": { - "smithy.api#documentation": "

Describes the Availability Zones, Local Zones, and Wavelength Zones that are available to\n you. If there is an event impacting a zone, you can use this request to view the state and any\n provided messages for that zone.

\n

For more information about Availability Zones, Local Zones, and Wavelength Zones, see\n Regions and zones \n in the Amazon Elastic Compute Cloud User Guide.

\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", - "smithy.api#examples": [ - { - "title": "To describe your Availability Zones", - "documentation": "This example describes the Availability Zones that are available to you. The response includes Availability Zones only for the current region.", - "output": { - "AvailabilityZones": [ - { - "State": "available", - "RegionName": "us-east-1", - "Messages": [], - "ZoneName": "us-east-1b" - }, - { - "State": "available", - "RegionName": "us-east-1", - "Messages": [], - "ZoneName": "us-east-1c" - }, - { - "State": "available", - "RegionName": "us-east-1", - "Messages": [], - "ZoneName": "us-east-1d" - }, - { - "State": "available", - "RegionName": "us-east-1", - "Messages": [], - "ZoneName": "us-east-1e" - } - ] - } - } - ] - } - }, - "com.amazonaws.ec2#DescribeAvailabilityZonesRequest": { + "com.amazonaws.ec2#DeleteRouteServerRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" - } - }, - "ZoneNames": { - "target": "com.amazonaws.ec2#ZoneNameStringList", - "traits": { - "smithy.api#documentation": "

The names of the Availability Zones, Local Zones, and Wavelength Zones.

", - "smithy.api#xmlName": "ZoneName" - } - }, - "ZoneIds": { - "target": "com.amazonaws.ec2#ZoneIdStringList", - "traits": { - "smithy.api#documentation": "

The IDs of the Availability Zones, Local Zones, and Wavelength Zones.

", - "smithy.api#xmlName": "ZoneId" - } - }, - "AllAvailabilityZones": { - "target": "com.amazonaws.ec2#Boolean", + "RouteServerId": { + "target": "com.amazonaws.ec2#RouteServerId", "traits": { - "smithy.api#documentation": "

Include all Availability Zones, Local Zones, and Wavelength Zones regardless of your\n opt-in status.

\n

If you do not use this parameter, the results include only the zones for the Regions where you have chosen the option to opt in.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the route server to delete.

", + "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -27365,15 +28230,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeAvailabilityZonesResult": { + "com.amazonaws.ec2#DeleteRouteServerResult": { "type": "structure", "members": { - "AvailabilityZones": { - "target": "com.amazonaws.ec2#AvailabilityZoneList", + "RouteServer": { + "target": "com.amazonaws.ec2#RouteServer", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZoneInfo", - "smithy.api#documentation": "

Information about the Availability Zones, Local Zones, and Wavelength Zones.

", - "smithy.api#xmlName": "availabilityZoneInfo" + "aws.protocols#ec2QueryName": "RouteServer", + "smithy.api#documentation": "

Information about the deleted route server.

", + "smithy.api#xmlName": "routeServer" } } }, @@ -27381,142 +28246,95 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeAwsNetworkPerformanceMetricSubscriptions": { + "com.amazonaws.ec2#DeleteRouteTable": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeAwsNetworkPerformanceMetricSubscriptionsRequest" + "target": "com.amazonaws.ec2#DeleteRouteTableRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeAwsNetworkPerformanceMetricSubscriptionsResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Describes the current Infrastructure Performance metric subscriptions.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "Subscriptions", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeAwsNetworkPerformanceMetricSubscriptionsRequest": { - "type": "structure", - "members": { - "MaxResults": { - "target": "com.amazonaws.ec2#MaxResultsParam", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n To retrieve the remaining results, make another call with the returned nextToken value.

" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

One or more filters.

", - "smithy.api#xmlName": "Filter" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Deletes the specified route table. You must disassociate the route table from any subnets before you can delete it. You can't delete the main route table.

", + "smithy.api#examples": [ + { + "title": "To delete a route table", + "documentation": "This example deletes the specified route table.", + "input": { + "RouteTableId": "rtb-22574640" + } } - } - }, - "traits": { - "smithy.api#input": {} + ] } }, - "com.amazonaws.ec2#DescribeAwsNetworkPerformanceMetricSubscriptionsResult": { + "com.amazonaws.ec2#DeleteRouteTableRequest": { "type": "structure", "members": { - "NextToken": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "Subscriptions": { - "target": "com.amazonaws.ec2#SubscriptionList", + "RouteTableId": { + "target": "com.amazonaws.ec2#RouteTableId", "traits": { - "aws.protocols#ec2QueryName": "SubscriptionSet", - "smithy.api#documentation": "

Describes the current Infrastructure Performance subscriptions.

", - "smithy.api#xmlName": "subscriptionSet" + "aws.protocols#ec2QueryName": "RouteTableId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the route table.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "routeTableId" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeBundleTasks": { + "com.amazonaws.ec2#DeleteSecurityGroup": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeBundleTasksRequest" + "target": "com.amazonaws.ec2#DeleteSecurityGroupRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeBundleTasksResult" + "target": "com.amazonaws.ec2#DeleteSecurityGroupResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified bundle tasks or all of your bundle tasks.

\n \n

Completed bundle tasks are listed for only a limited time. If your bundle task is no longer in the list, you can still register an AMI from it. Just use RegisterImage with the Amazon S3 bucket name and image manifest name you provided to the bundle task.

\n
\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", - "smithy.waiters#waitable": { - "BundleTaskComplete": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "BundleTasks[].State", - "expected": "complete", - "comparator": "allStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "BundleTasks[].State", - "expected": "failed", - "comparator": "anyStringEquals" - } - } - } - ], - "minDelay": 15 + "smithy.api#documentation": "

Deletes a security group.

\n

If you attempt to delete a security group that is associated with an instance or network interface, is\n\t\t\t referenced by another security group in the same VPC, or has a VPC association, the operation fails with\n\t\t\t\tDependencyViolation.

", + "smithy.api#examples": [ + { + "title": "To delete a security group", + "documentation": "This example deletes the specified security group.", + "input": { + "GroupId": "sg-903004f8" + }, + "output": {} } - } + ] } }, - "com.amazonaws.ec2#DescribeBundleTasksRequest": { + "com.amazonaws.ec2#DeleteSecurityGroupRequest": { "type": "structure", "members": { - "BundleIds": { - "target": "com.amazonaws.ec2#BundleIdStringList", + "GroupId": { + "target": "com.amazonaws.ec2#SecurityGroupId", "traits": { - "smithy.api#documentation": "

The bundle task IDs.

\n

Default: Describes all your bundle tasks.

", - "smithy.api#xmlName": "BundleId" + "smithy.api#documentation": "

The ID of the security group.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "GroupName": { + "target": "com.amazonaws.ec2#SecurityGroupName", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

[Default VPC] The name of the security group. You can specify either the\n security group name or the security group ID. For security groups in a nondefault VPC,\n you must specify the security group ID.

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } } @@ -27525,15 +28343,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeBundleTasksResult": { + "com.amazonaws.ec2#DeleteSecurityGroupResult": { "type": "structure", "members": { - "BundleTasks": { - "target": "com.amazonaws.ec2#BundleTaskList", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "BundleInstanceTasksSet", - "smithy.api#documentation": "

Information about the bundle tasks.

", - "smithy.api#xmlName": "bundleInstanceTasksSet" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, returns an error.

", + "smithy.api#xmlName": "return" + } + }, + "GroupId": { + "target": "com.amazonaws.ec2#SecurityGroupId", + "traits": { + "aws.protocols#ec2QueryName": "GroupId", + "smithy.api#documentation": "

The ID of the deleted security group.

", + "smithy.api#xmlName": "groupId" } } }, @@ -27541,54 +28367,45 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeByoipCidrs": { + "com.amazonaws.ec2#DeleteSnapshot": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeByoipCidrsRequest" + "target": "com.amazonaws.ec2#DeleteSnapshotRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeByoipCidrsResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Describes the IP address ranges that were specified in calls to ProvisionByoipCidr.

\n

To describe the address pools that were created when you provisioned the address\n ranges, use DescribePublicIpv4Pools or DescribeIpv6Pools.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "ByoipCidrs", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeByoipCidrsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 100 - } + "smithy.api#documentation": "

Deletes the specified snapshot.

\n

When you make periodic snapshots of a volume, the snapshots are incremental, and only the\n blocks on the device that have changed since your last snapshot are saved in the new snapshot.\n When you delete a snapshot, only the data not needed for any other snapshot is removed. So\n regardless of which prior snapshots have been deleted, all active snapshots will have access\n to all the information needed to restore the volume.

\n

You cannot delete a snapshot of the root device of an EBS volume used by a registered AMI.\n You must first deregister the AMI before you can delete the snapshot.

\n

For more information, see Delete an Amazon EBS snapshot in the\n Amazon EBS User Guide.

", + "smithy.api#examples": [ + { + "title": "To delete a snapshot", + "documentation": "This example deletes a snapshot with the snapshot ID of ``snap-1234567890abcdef0``. If the command succeeds, no output is returned.", + "input": { + "SnapshotId": "snap-1234567890abcdef0" + }, + "output": {} + } + ] } }, - "com.amazonaws.ec2#DescribeByoipCidrsRequest": { + "com.amazonaws.ec2#DeleteSnapshotRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeByoipCidrsMaxResults", + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

", + "smithy.api#documentation": "

The ID of the EBS snapshot.

", "smithy.api#required": {} } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, @@ -27596,203 +28413,259 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeByoipCidrsResult": { + "com.amazonaws.ec2#DeleteSnapshotResultSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DeleteSnapshotReturnCode", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#DeleteSnapshotReturnCode": { "type": "structure", "members": { - "ByoipCidrs": { - "target": "com.amazonaws.ec2#ByoipCidrSet", + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", "traits": { - "aws.protocols#ec2QueryName": "ByoipCidrSet", - "smithy.api#documentation": "

Information about your address ranges.

", - "smithy.api#xmlName": "byoipCidrSet" + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The ID of the snapshot.

", + "smithy.api#xmlName": "snapshotId" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "ReturnCode": { + "target": "com.amazonaws.ec2#SnapshotReturnCodes", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "ReturnCode", + "smithy.api#documentation": "

The result code from the snapshot deletion attempt. Possible values:

\n \n

For details about an error, check the DeleteSnapshot event in the CloudTrail\n event history. For more information, see View event history\n in the Amazon Web Services CloudTrail User Guide.

", + "smithy.api#xmlName": "returnCode" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

The snapshot ID and its deletion result code.

" } }, - "com.amazonaws.ec2#DescribeCapacityBlockOfferings": { + "com.amazonaws.ec2#DeleteSpotDatafeedSubscription": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeCapacityBlockOfferingsRequest" + "target": "com.amazonaws.ec2#DeleteSpotDatafeedSubscriptionRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeCapacityBlockOfferingsResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Describes Capacity Block offerings available for purchase in the Amazon Web Services Region that you're currently using. With Capacity Blocks, you purchase a specific instance type for a period of time.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "CapacityBlockOfferings", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeCapacityBlockOfferingsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 1000 - } + "smithy.api#documentation": "

Deletes the data feed for Spot Instances.

", + "smithy.api#examples": [ + { + "title": "To cancel a Spot Instance data feed subscription", + "documentation": "This example deletes a Spot data feed subscription for the account." + } + ] } }, - "com.amazonaws.ec2#DescribeCapacityBlockOfferingsRequest": { + "com.amazonaws.ec2#DeleteSpotDatafeedSubscriptionRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" - } - }, - "InstanceType": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of instance for which the Capacity Block offering reserves capacity.

", - "smithy.api#required": {} - } - }, - "InstanceCount": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The number of instances for which to reserve capacity.

", - "smithy.api#required": {} - } - }, - "StartDateRange": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "smithy.api#documentation": "

The earliest start date for the Capacity Block offering.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } - }, - "EndDateRange": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "smithy.api#documentation": "

The latest end date for the Capacity Block offering.

" + } + }, + "traits": { + "smithy.api#documentation": "

Contains the parameters for DeleteSpotDatafeedSubscription.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DeleteSubnet": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteSubnetRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Deletes the specified subnet. You must terminate all running instances in the subnet before you can delete the subnet.

", + "smithy.api#examples": [ + { + "title": "To delete a subnet", + "documentation": "This example deletes the specified subnet.", + "input": { + "SubnetId": "subnet-9d4a7b6c" + } } - }, - "CapacityDurationHours": { - "target": "com.amazonaws.ec2#Integer", + ] + } + }, + "com.amazonaws.ec2#DeleteSubnetCidrReservation": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteSubnetCidrReservationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeleteSubnetCidrReservationResult" + }, + "traits": { + "smithy.api#documentation": "

Deletes a subnet CIDR reservation.

" + } + }, + "com.amazonaws.ec2#DeleteSubnetCidrReservationRequest": { + "type": "structure", + "members": { + "SubnetCidrReservationId": { + "target": "com.amazonaws.ec2#SubnetCidrReservationId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The number of hours for which to reserve Capacity Block.

", + "smithy.api#documentation": "

The ID of the subnet CIDR reservation.

", "smithy.api#required": {} } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeCapacityBlockOfferingsMaxResults", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DeleteSubnetCidrReservationResult": { + "type": "structure", + "members": { + "DeletedSubnetCidrReservation": { + "target": "com.amazonaws.ec2#SubnetCidrReservation", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, \n see Pagination.

" + "aws.protocols#ec2QueryName": "DeletedSubnetCidrReservation", + "smithy.api#documentation": "

Information about the deleted subnet CIDR reservation.

", + "smithy.api#xmlName": "deletedSubnetCidrReservation" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeCapacityBlockOfferingsResult": { + "com.amazonaws.ec2#DeleteSubnetRequest": { "type": "structure", "members": { - "CapacityBlockOfferings": { - "target": "com.amazonaws.ec2#CapacityBlockOfferingSet", + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", "traits": { - "aws.protocols#ec2QueryName": "CapacityBlockOfferingSet", - "smithy.api#documentation": "

The recommended Capacity Block offering for the dates specified.

", - "smithy.api#xmlName": "capacityBlockOfferingSet" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the subnet.

", + "smithy.api#required": {} } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeCapacityReservationFleets": { + "com.amazonaws.ec2#DeleteTags": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeCapacityReservationFleetsRequest" + "target": "com.amazonaws.ec2#DeleteTagsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeCapacityReservationFleetsResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Describes one or more Capacity Reservation Fleets.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "CapacityReservationFleets", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeCapacityReservationFleetsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 100 - } + "smithy.api#documentation": "

Deletes the specified set of tags from the specified set of resources.

\n

To list the current tags, use DescribeTags. For more information about\n tags, see Tag\n your Amazon EC2 resources in the Amazon Elastic Compute Cloud User\n Guide.

", + "smithy.api#examples": [ + { + "title": "To delete a tag from a resource", + "documentation": "This example deletes the tag Stack=test from the specified image.", + "input": { + "Resources": [ + "ami-78a54011" + ], + "Tags": [ + { + "Key": "Stack", + "Value": "test" + } + ] + } + } + ] } }, - "com.amazonaws.ec2#DescribeCapacityReservationFleetsRequest": { + "com.amazonaws.ec2#DeleteTagsRequest": { "type": "structure", "members": { - "CapacityReservationFleetIds": { - "target": "com.amazonaws.ec2#CapacityReservationFleetIdSet", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The IDs of the Capacity Reservation Fleets to describe.

", - "smithy.api#xmlName": "CapacityReservationFleetId" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "Resources": { + "target": "com.amazonaws.ec2#ResourceIdList", "traits": { - "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" + "aws.protocols#ec2QueryName": "ResourceId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of the resources, separated by spaces.

\n

Constraints: Up to 1000 resource IDs. We recommend breaking up this request into smaller batches.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "resourceId" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeCapacityReservationFleetsMaxResults", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, \n see Pagination.

" + "aws.protocols#ec2QueryName": "Tag", + "smithy.api#documentation": "

The tags to delete. Specify a tag key and an optional tag value to delete\n specific tags. If you specify a tag key without a tag value, we delete any tag with this\n key regardless of its value. If you specify a tag key with an empty string as the tag\n value, we delete the tag only if its value is an empty string.

\n

If you omit this parameter, we delete all user-defined tags for the specified\n resources. We do not delete Amazon Web Services-generated tags (tags that have the aws:\n prefix).

\n

Constraints: Up to 1000 tags.

", + "smithy.api#xmlName": "tag" } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DeleteTrafficMirrorFilter": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteTrafficMirrorFilterRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeleteTrafficMirrorFilterResult" + }, + "traits": { + "smithy.api#documentation": "

Deletes the specified Traffic Mirror filter.

\n

You cannot delete a Traffic Mirror filter that is in use by a Traffic Mirror session.

" + } + }, + "com.amazonaws.ec2#DeleteTrafficMirrorFilterRequest": { + "type": "structure", + "members": { + "TrafficMirrorFilterId": { + "target": "com.amazonaws.ec2#TrafficMirrorFilterId", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Traffic Mirror filter.

", + "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -27800,23 +28673,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeCapacityReservationFleetsResult": { + "com.amazonaws.ec2#DeleteTrafficMirrorFilterResult": { "type": "structure", "members": { - "CapacityReservationFleets": { - "target": "com.amazonaws.ec2#CapacityReservationFleetSet", - "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationFleetSet", - "smithy.api#documentation": "

Information about the Capacity Reservation Fleets.

", - "smithy.api#xmlName": "capacityReservationFleetSet" - } - }, - "NextToken": { + "TrafficMirrorFilterId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "TrafficMirrorFilterId", + "smithy.api#documentation": "

The ID of the Traffic Mirror filter.

", + "smithy.api#xmlName": "trafficMirrorFilterId" } } }, @@ -27824,66 +28689,33 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeCapacityReservations": { + "com.amazonaws.ec2#DeleteTrafficMirrorFilterRule": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeCapacityReservationsRequest" + "target": "com.amazonaws.ec2#DeleteTrafficMirrorFilterRuleRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeCapacityReservationsResult" + "target": "com.amazonaws.ec2#DeleteTrafficMirrorFilterRuleResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your Capacity Reservations. The results describe only the Capacity Reservations in the \n\t\t \tAmazon Web Services Region that you're currently using.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "CapacityReservations", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Deletes the specified Traffic Mirror rule.

" } }, - "com.amazonaws.ec2#DescribeCapacityReservationsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#DescribeCapacityReservationsRequest": { + "com.amazonaws.ec2#DeleteTrafficMirrorFilterRuleRequest": { "type": "structure", "members": { - "CapacityReservationIds": { - "target": "com.amazonaws.ec2#CapacityReservationIdSet", - "traits": { - "smithy.api#documentation": "

The ID of the Capacity Reservation.

", - "smithy.api#xmlName": "CapacityReservationId" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeCapacityReservationsMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, \n see Pagination.

" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "TrafficMirrorFilterRuleId": { + "target": "com.amazonaws.ec2#TrafficMirrorFilterRuleIdWithResolver", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Traffic Mirror rule.

", + "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -27891,23 +28723,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeCapacityReservationsResult": { + "com.amazonaws.ec2#DeleteTrafficMirrorFilterRuleResult": { "type": "structure", "members": { - "NextToken": { + "TrafficMirrorFilterRuleId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" - } - }, - "CapacityReservations": { - "target": "com.amazonaws.ec2#CapacityReservationSet", - "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationSet", - "smithy.api#documentation": "

Information about the Capacity Reservations.

", - "smithy.api#xmlName": "capacityReservationSet" + "aws.protocols#ec2QueryName": "TrafficMirrorFilterRuleId", + "smithy.api#documentation": "

The ID of the deleted Traffic Mirror rule.

", + "smithy.api#xmlName": "trafficMirrorFilterRuleId" } } }, @@ -27915,51 +28739,27 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeCarrierGateways": { + "com.amazonaws.ec2#DeleteTrafficMirrorSession": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeCarrierGatewaysRequest" + "target": "com.amazonaws.ec2#DeleteTrafficMirrorSessionRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeCarrierGatewaysResult" + "target": "com.amazonaws.ec2#DeleteTrafficMirrorSessionResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your carrier gateways.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "CarrierGateways", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Deletes the specified Traffic Mirror session.

" } }, - "com.amazonaws.ec2#DescribeCarrierGatewaysRequest": { + "com.amazonaws.ec2#DeleteTrafficMirrorSessionRequest": { "type": "structure", "members": { - "CarrierGatewayIds": { - "target": "com.amazonaws.ec2#CarrierGatewayIdSet", - "traits": { - "smithy.api#documentation": "

One or more carrier gateway IDs.

", - "smithy.api#xmlName": "CarrierGatewayId" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#CarrierGatewayMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "TrafficMirrorSessionId": { + "target": "com.amazonaws.ec2#TrafficMirrorSessionId", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Traffic Mirror session.

", + "smithy.api#required": {} } }, "DryRun": { @@ -27973,23 +28773,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeCarrierGatewaysResult": { + "com.amazonaws.ec2#DeleteTrafficMirrorSessionResult": { "type": "structure", "members": { - "CarrierGateways": { - "target": "com.amazonaws.ec2#CarrierGatewaySet", - "traits": { - "aws.protocols#ec2QueryName": "CarrierGatewaySet", - "smithy.api#documentation": "

Information about the carrier gateway.

", - "smithy.api#xmlName": "carrierGatewaySet" - } - }, - "NextToken": { + "TrafficMirrorSessionId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "TrafficMirrorSessionId", + "smithy.api#documentation": "

The ID of the deleted Traffic Mirror session.

", + "smithy.api#xmlName": "trafficMirrorSessionId" } } }, @@ -27997,72 +28789,33 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeClassicLinkInstances": { + "com.amazonaws.ec2#DeleteTrafficMirrorTarget": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeClassicLinkInstancesRequest" + "target": "com.amazonaws.ec2#DeleteTrafficMirrorTargetRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeClassicLinkInstancesResult" + "target": "com.amazonaws.ec2#DeleteTrafficMirrorTargetResult" }, "traits": { - "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Describes one or more of your linked EC2-Classic instances. This request only returns\n\t\t\tinformation about EC2-Classic instances linked to a VPC through ClassicLink. You cannot\n\t\t\tuse this request to return information about other instances.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "Instances", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeClassicLinkInstancesMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } + "smithy.api#documentation": "

Deletes the specified Traffic Mirror target.

\n

You cannot delete a Traffic Mirror target that is in use by a Traffic Mirror session.

" } }, - "com.amazonaws.ec2#DescribeClassicLinkInstancesRequest": { + "com.amazonaws.ec2#DeleteTrafficMirrorTargetRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "TrafficMirrorTargetId": { + "target": "com.amazonaws.ec2#TrafficMirrorTargetId", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Traffic Mirror target.

", + "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" - } - }, - "InstanceIds": { - "target": "com.amazonaws.ec2#InstanceIdStringList", - "traits": { - "smithy.api#documentation": "

The instance IDs. Must be instances linked to a VPC through ClassicLink.

", - "smithy.api#xmlName": "InstanceId" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeClassicLinkInstancesMaxResults", - "traits": { - "aws.protocols#ec2QueryName": "MaxResults", - "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

\n

Constraint: If the value is greater than 1000, we return only 1000 items.

", - "smithy.api#xmlName": "maxResults" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -28070,23 +28823,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeClassicLinkInstancesResult": { + "com.amazonaws.ec2#DeleteTrafficMirrorTargetResult": { "type": "structure", "members": { - "Instances": { - "target": "com.amazonaws.ec2#ClassicLinkInstanceList", - "traits": { - "aws.protocols#ec2QueryName": "InstancesSet", - "smithy.api#documentation": "

Information about one or more linked EC2-Classic instances.

", - "smithy.api#xmlName": "instancesSet" - } - }, - "NextToken": { + "TrafficMirrorTargetId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "TrafficMirrorTargetId", + "smithy.api#documentation": "

The ID of the deleted Traffic Mirror target.

", + "smithy.api#xmlName": "trafficMirrorTargetId" } } }, @@ -28094,67 +28839,95 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeClientVpnAuthorizationRules": { + "com.amazonaws.ec2#DeleteTransitGateway": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeClientVpnAuthorizationRulesRequest" + "target": "com.amazonaws.ec2#DeleteTransitGatewayRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeClientVpnAuthorizationRulesResult" + "target": "com.amazonaws.ec2#DeleteTransitGatewayResult" }, "traits": { - "smithy.api#documentation": "

Describes the authorization rules for a specified Client VPN endpoint.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "AuthorizationRules", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Deletes the specified transit gateway.

" } }, - "com.amazonaws.ec2#DescribeClientVpnAuthorizationRulesMaxResults": { - "type": "integer", + "com.amazonaws.ec2#DeleteTransitGatewayConnect": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteTransitGatewayConnectRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeleteTransitGatewayConnectResult" + }, "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } + "smithy.api#documentation": "

Deletes the specified Connect attachment. You must first delete any Connect peers for\n the attachment.

" } }, - "com.amazonaws.ec2#DescribeClientVpnAuthorizationRulesRequest": { + "com.amazonaws.ec2#DeleteTransitGatewayConnectPeer": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteTransitGatewayConnectPeerRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeleteTransitGatewayConnectPeerResult" + }, + "traits": { + "smithy.api#documentation": "

Deletes the specified Connect peer.

" + } + }, + "com.amazonaws.ec2#DeleteTransitGatewayConnectPeerRequest": { "type": "structure", "members": { - "ClientVpnEndpointId": { - "target": "com.amazonaws.ec2#ClientVpnEndpointId", + "TransitGatewayConnectPeerId": { + "target": "com.amazonaws.ec2#TransitGatewayConnectPeerId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", + "smithy.api#documentation": "

The ID of the Connect peer.

", "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DeleteTransitGatewayConnectPeerResult": { + "type": "structure", + "members": { + "TransitGatewayConnectPeer": { + "target": "com.amazonaws.ec2#TransitGatewayConnectPeer", "traits": { - "smithy.api#documentation": "

The token to retrieve the next page of results.

" + "aws.protocols#ec2QueryName": "TransitGatewayConnectPeer", + "smithy.api#documentation": "

Information about the deleted Connect peer.

", + "smithy.api#xmlName": "transitGatewayConnectPeer" } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DeleteTransitGatewayConnectRequest": { + "type": "structure", + "members": { + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", "traits": { - "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Connect attachment.

", + "smithy.api#required": {} } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeClientVpnAuthorizationRulesMaxResults", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -28162,23 +28935,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeClientVpnAuthorizationRulesResult": { + "com.amazonaws.ec2#DeleteTransitGatewayConnectResult": { "type": "structure", "members": { - "AuthorizationRules": { - "target": "com.amazonaws.ec2#AuthorizationRuleSet", - "traits": { - "aws.protocols#ec2QueryName": "AuthorizationRule", - "smithy.api#documentation": "

Information about the authorization rules.

", - "smithy.api#xmlName": "authorizationRule" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "TransitGatewayConnect": { + "target": "com.amazonaws.ec2#TransitGatewayConnect", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "TransitGatewayConnect", + "smithy.api#documentation": "

Information about the deleted Connect attachment.

", + "smithy.api#xmlName": "transitGatewayConnect" } } }, @@ -28186,67 +28951,33 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeClientVpnConnections": { + "com.amazonaws.ec2#DeleteTransitGatewayMulticastDomain": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeClientVpnConnectionsRequest" + "target": "com.amazonaws.ec2#DeleteTransitGatewayMulticastDomainRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeClientVpnConnectionsResult" + "target": "com.amazonaws.ec2#DeleteTransitGatewayMulticastDomainResult" }, "traits": { - "smithy.api#documentation": "

Describes active client connections and connections that have been terminated within the last 60 \n\t\t\tminutes for the specified Client VPN endpoint.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "Connections", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeClientVpnConnectionsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } + "smithy.api#documentation": "

Deletes the specified transit gateway multicast domain.

" } }, - "com.amazonaws.ec2#DescribeClientVpnConnectionsRequest": { + "com.amazonaws.ec2#DeleteTransitGatewayMulticastDomainRequest": { "type": "structure", "members": { - "ClientVpnEndpointId": { - "target": "com.amazonaws.ec2#ClientVpnEndpointId", + "TransitGatewayMulticastDomainId": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", + "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

", "smithy.api#required": {} } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

\n ", - "smithy.api#xmlName": "Filter" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", - "traits": { - "smithy.api#documentation": "

The token to retrieve the next page of results.

" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeClientVpnConnectionsMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.

" - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -28254,23 +28985,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeClientVpnConnectionsResult": { + "com.amazonaws.ec2#DeleteTransitGatewayMulticastDomainResult": { "type": "structure", "members": { - "Connections": { - "target": "com.amazonaws.ec2#ClientVpnConnectionSet", - "traits": { - "aws.protocols#ec2QueryName": "Connections", - "smithy.api#documentation": "

Information about the active and terminated client connections.

", - "smithy.api#xmlName": "connections" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "TransitGatewayMulticastDomain": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastDomain", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "TransitGatewayMulticastDomain", + "smithy.api#documentation": "

Information about the deleted transit gateway multicast domain.

", + "smithy.api#xmlName": "transitGatewayMulticastDomain" } } }, @@ -28278,66 +29001,33 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeClientVpnEndpointMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#DescribeClientVpnEndpoints": { + "com.amazonaws.ec2#DeleteTransitGatewayPeeringAttachment": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeClientVpnEndpointsRequest" + "target": "com.amazonaws.ec2#DeleteTransitGatewayPeeringAttachmentRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeClientVpnEndpointsResult" + "target": "com.amazonaws.ec2#DeleteTransitGatewayPeeringAttachmentResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more Client VPN endpoints in the account.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "ClientVpnEndpoints", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Deletes a transit gateway peering attachment.

" } }, - "com.amazonaws.ec2#DescribeClientVpnEndpointsRequest": { + "com.amazonaws.ec2#DeleteTransitGatewayPeeringAttachmentRequest": { "type": "structure", "members": { - "ClientVpnEndpointIds": { - "target": "com.amazonaws.ec2#ClientVpnEndpointIdList", - "traits": { - "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", - "smithy.api#xmlName": "ClientVpnEndpointId" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeClientVpnEndpointMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.

" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", - "traits": { - "smithy.api#documentation": "

The token to retrieve the next page of results.

" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", "traits": { - "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway peering attachment.

", + "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -28345,23 +29035,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeClientVpnEndpointsResult": { + "com.amazonaws.ec2#DeleteTransitGatewayPeeringAttachmentResult": { "type": "structure", "members": { - "ClientVpnEndpoints": { - "target": "com.amazonaws.ec2#EndpointSet", - "traits": { - "aws.protocols#ec2QueryName": "ClientVpnEndpoint", - "smithy.api#documentation": "

Information about the Client VPN endpoints.

", - "smithy.api#xmlName": "clientVpnEndpoint" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "TransitGatewayPeeringAttachment": { + "target": "com.amazonaws.ec2#TransitGatewayPeeringAttachment", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "TransitGatewayPeeringAttachment", + "smithy.api#documentation": "

The transit gateway peering attachment.

", + "smithy.api#xmlName": "transitGatewayPeeringAttachment" } } }, @@ -28369,67 +29051,33 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeClientVpnRoutes": { + "com.amazonaws.ec2#DeleteTransitGatewayPolicyTable": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeClientVpnRoutesRequest" + "target": "com.amazonaws.ec2#DeleteTransitGatewayPolicyTableRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeClientVpnRoutesResult" + "target": "com.amazonaws.ec2#DeleteTransitGatewayPolicyTableResult" }, "traits": { - "smithy.api#documentation": "

Describes the routes for the specified Client VPN endpoint.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "Routes", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeClientVpnRoutesMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } + "smithy.api#documentation": "

Deletes the specified transit gateway policy table.

" } }, - "com.amazonaws.ec2#DescribeClientVpnRoutesRequest": { + "com.amazonaws.ec2#DeleteTransitGatewayPolicyTableRequest": { "type": "structure", "members": { - "ClientVpnEndpointId": { - "target": "com.amazonaws.ec2#ClientVpnEndpointId", + "TransitGatewayPolicyTableId": { + "target": "com.amazonaws.ec2#TransitGatewayPolicyTableId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", + "smithy.api#documentation": "

The transit gateway policy table to delete.

", "smithy.api#required": {} } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

\n ", - "smithy.api#xmlName": "Filter" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeClientVpnRoutesMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.

" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", - "traits": { - "smithy.api#documentation": "

The token to retrieve the next page of results.

" - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -28437,23 +29085,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeClientVpnRoutesResult": { + "com.amazonaws.ec2#DeleteTransitGatewayPolicyTableResult": { "type": "structure", "members": { - "Routes": { - "target": "com.amazonaws.ec2#ClientVpnRouteSet", - "traits": { - "aws.protocols#ec2QueryName": "Routes", - "smithy.api#documentation": "

Information about the Client VPN endpoint routes.

", - "smithy.api#xmlName": "routes" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "TransitGatewayPolicyTable": { + "target": "com.amazonaws.ec2#TransitGatewayPolicyTable", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "TransitGatewayPolicyTable", + "smithy.api#documentation": "

Provides details about the deleted transit gateway policy table.

", + "smithy.api#xmlName": "transitGatewayPolicyTable" } } }, @@ -28461,73 +29101,79 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeClientVpnTargetNetworks": { + "com.amazonaws.ec2#DeleteTransitGatewayPrefixListReference": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeClientVpnTargetNetworksRequest" + "target": "com.amazonaws.ec2#DeleteTransitGatewayPrefixListReferenceRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeClientVpnTargetNetworksResult" + "target": "com.amazonaws.ec2#DeleteTransitGatewayPrefixListReferenceResult" }, "traits": { - "smithy.api#documentation": "

Describes the target networks associated with the specified Client VPN endpoint.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "ClientVpnTargetNetworks", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeClientVpnTargetNetworksMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } + "smithy.api#documentation": "

Deletes a reference (route) to a prefix list in a specified transit gateway route table.

" } }, - "com.amazonaws.ec2#DescribeClientVpnTargetNetworksRequest": { + "com.amazonaws.ec2#DeleteTransitGatewayPrefixListReferenceRequest": { "type": "structure", "members": { - "ClientVpnEndpointId": { - "target": "com.amazonaws.ec2#ClientVpnEndpointId", + "TransitGatewayRouteTableId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", + "smithy.api#documentation": "

The ID of the route table.

", "smithy.api#required": {} } }, - "AssociationIds": { - "target": "com.amazonaws.ec2#ValueStringList", + "PrefixListId": { + "target": "com.amazonaws.ec2#PrefixListResourceId", "traits": { - "smithy.api#documentation": "

The IDs of the target network associations.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the prefix list.

", + "smithy.api#required": {} } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeClientVpnTargetNetworksMaxResults", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DeleteTransitGatewayPrefixListReferenceResult": { + "type": "structure", + "members": { + "TransitGatewayPrefixListReference": { + "target": "com.amazonaws.ec2#TransitGatewayPrefixListReference", "traits": { - "smithy.api#documentation": "

The token to retrieve the next page of results.

" + "aws.protocols#ec2QueryName": "TransitGatewayPrefixListReference", + "smithy.api#documentation": "

Information about the deleted prefix list reference.

", + "smithy.api#xmlName": "transitGatewayPrefixListReference" } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DeleteTransitGatewayRequest": { + "type": "structure", + "members": { + "TransitGatewayId": { + "target": "com.amazonaws.ec2#TransitGatewayId", "traits": { - "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway.

", + "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -28535,23 +29181,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeClientVpnTargetNetworksResult": { + "com.amazonaws.ec2#DeleteTransitGatewayResult": { "type": "structure", "members": { - "ClientVpnTargetNetworks": { - "target": "com.amazonaws.ec2#TargetNetworkSet", - "traits": { - "aws.protocols#ec2QueryName": "ClientVpnTargetNetworks", - "smithy.api#documentation": "

Information about the associated target networks.

", - "smithy.api#xmlName": "clientVpnTargetNetworks" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "TransitGateway": { + "target": "com.amazonaws.ec2#TransitGateway", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "TransitGateway", + "smithy.api#documentation": "

Information about the deleted transit gateway.

", + "smithy.api#xmlName": "transitGateway" } } }, @@ -28559,51 +29197,35 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeCoipPools": { + "com.amazonaws.ec2#DeleteTransitGatewayRoute": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeCoipPoolsRequest" + "target": "com.amazonaws.ec2#DeleteTransitGatewayRouteRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeCoipPoolsResult" + "target": "com.amazonaws.ec2#DeleteTransitGatewayRouteResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified customer-owned address pools or all of your customer-owned address pools.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "CoipPools", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Deletes the specified route from the specified transit gateway route table.

" } }, - "com.amazonaws.ec2#DescribeCoipPoolsRequest": { + "com.amazonaws.ec2#DeleteTransitGatewayRouteRequest": { "type": "structure", "members": { - "PoolIds": { - "target": "com.amazonaws.ec2#CoipPoolIdSet", - "traits": { - "smithy.api#documentation": "

The IDs of the address pools.

", - "smithy.api#xmlName": "PoolId" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#CoipPoolMaxResults", + "TransitGatewayRouteTableId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway route table.

", + "smithy.api#required": {} } }, - "NextToken": { + "DestinationCidrBlock": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The CIDR range for the route. This must match the CIDR for the route exactly.

", + "smithy.api#required": {} } }, "DryRun": { @@ -28617,23 +29239,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeCoipPoolsResult": { + "com.amazonaws.ec2#DeleteTransitGatewayRouteResult": { "type": "structure", "members": { - "CoipPools": { - "target": "com.amazonaws.ec2#CoipPoolSet", - "traits": { - "aws.protocols#ec2QueryName": "CoipPoolSet", - "smithy.api#documentation": "

Information about the address pools.

", - "smithy.api#xmlName": "coipPoolSet" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "Route": { + "target": "com.amazonaws.ec2#TransitGatewayRoute", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "Route", + "smithy.api#documentation": "

Information about the route.

", + "smithy.api#xmlName": "route" } } }, @@ -28641,111 +29255,83 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeConversionTaskList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ConversionTask", - "traits": { - "smithy.api#xmlName": "item" - } + "com.amazonaws.ec2#DeleteTransitGatewayRouteTable": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteTransitGatewayRouteTableRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeleteTransitGatewayRouteTableResult" + }, + "traits": { + "smithy.api#documentation": "

Deletes the specified transit gateway route table. If there are any route tables associated with\n the transit gateway route table, you must first run DisassociateRouteTable before you can delete the transit gateway route table. This removes any route tables associated with the transit gateway route table.

" } }, - "com.amazonaws.ec2#DescribeConversionTasks": { + "com.amazonaws.ec2#DeleteTransitGatewayRouteTableAnnouncement": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeConversionTasksRequest" + "target": "com.amazonaws.ec2#DeleteTransitGatewayRouteTableAnnouncementRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeConversionTasksResult" + "target": "com.amazonaws.ec2#DeleteTransitGatewayRouteTableAnnouncementResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified conversion tasks or all your conversion tasks. For more information, see the\n VM Import/Export User Guide.

\n

For information about the import manifest referenced by this API action, see VM Import Manifest.

", - "smithy.waiters#waitable": { - "ConversionTaskCancelled": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "ConversionTasks[].State", - "expected": "cancelled", - "comparator": "allStringEquals" - } - } - } - ], - "minDelay": 15 - }, - "ConversionTaskCompleted": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "ConversionTasks[].State", - "expected": "completed", - "comparator": "allStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "ConversionTasks[].State", - "expected": "cancelled", - "comparator": "anyStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "ConversionTasks[].State", - "expected": "cancelling", - "comparator": "anyStringEquals" - } - } - } - ], - "minDelay": 15 - }, - "ConversionTaskDeleted": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "ConversionTasks[].State", - "expected": "deleted", - "comparator": "allStringEquals" - } - } - } - ], - "minDelay": 15 + "smithy.api#documentation": "

Advertises to the transit gateway that a transit gateway route table is deleted.

" + } + }, + "com.amazonaws.ec2#DeleteTransitGatewayRouteTableAnnouncementRequest": { + "type": "structure", + "members": { + "TransitGatewayRouteTableAnnouncementId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableAnnouncementId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The transit gateway route table ID that's being deleted.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeConversionTasksRequest": { + "com.amazonaws.ec2#DeleteTransitGatewayRouteTableAnnouncementResult": { "type": "structure", "members": { - "ConversionTaskIds": { - "target": "com.amazonaws.ec2#ConversionIdStringList", + "TransitGatewayRouteTableAnnouncement": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableAnnouncement", "traits": { - "aws.protocols#ec2QueryName": "ConversionTaskId", - "smithy.api#documentation": "

The conversion task IDs.

", - "smithy.api#xmlName": "conversionTaskId" + "aws.protocols#ec2QueryName": "TransitGatewayRouteTableAnnouncement", + "smithy.api#documentation": "

Provides details about a deleted transit gateway route table.

", + "smithy.api#xmlName": "transitGatewayRouteTableAnnouncement" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DeleteTransitGatewayRouteTableRequest": { + "type": "structure", + "members": { + "TransitGatewayRouteTableId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway route table.

", + "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -28753,15 +29339,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeConversionTasksResult": { + "com.amazonaws.ec2#DeleteTransitGatewayRouteTableResult": { "type": "structure", "members": { - "ConversionTasks": { - "target": "com.amazonaws.ec2#DescribeConversionTaskList", + "TransitGatewayRouteTable": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTable", "traits": { - "aws.protocols#ec2QueryName": "ConversionTasks", - "smithy.api#documentation": "

Information about the conversion tasks.

", - "smithy.api#xmlName": "conversionTasks" + "aws.protocols#ec2QueryName": "TransitGatewayRouteTable", + "smithy.api#documentation": "

Information about the deleted transit gateway route table.

", + "smithy.api#xmlName": "transitGatewayRouteTable" } } }, @@ -28769,218 +29355,147 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeCustomerGateways": { + "com.amazonaws.ec2#DeleteTransitGatewayVpcAttachment": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeCustomerGatewaysRequest" + "target": "com.amazonaws.ec2#DeleteTransitGatewayVpcAttachmentRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeCustomerGatewaysResult" + "target": "com.amazonaws.ec2#DeleteTransitGatewayVpcAttachmentResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your VPN customer gateways.

\n

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN\n User Guide.

", - "smithy.api#examples": [ - { - "title": "To describe a customer gateway", - "documentation": "This example describes the specified customer gateway.", - "input": { - "CustomerGatewayIds": [ - "cgw-0e11f167" - ] - }, - "output": { - "CustomerGateways": [ - { - "CustomerGatewayId": "cgw-0e11f167", - "IpAddress": "12.1.2.3", - "State": "available", - "Type": "ipsec.1", - "BgpAsn": "65534" - } - ] - } - } - ], - "smithy.waiters#waitable": { - "CustomerGatewayAvailable": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "CustomerGateways[].State", - "expected": "available", - "comparator": "allStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "CustomerGateways[].State", - "expected": "deleted", - "comparator": "anyStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "CustomerGateways[].State", - "expected": "deleting", - "comparator": "anyStringEquals" - } - } - } - ], - "minDelay": 15 - } - } + "smithy.api#documentation": "

Deletes the specified VPC attachment.

" } }, - "com.amazonaws.ec2#DescribeCustomerGatewaysRequest": { + "com.amazonaws.ec2#DeleteTransitGatewayVpcAttachmentRequest": { "type": "structure", "members": { - "CustomerGatewayIds": { - "target": "com.amazonaws.ec2#CustomerGatewayIdStringList", - "traits": { - "smithy.api#documentation": "

One or more customer gateway IDs.

\n

Default: Describes all your customer gateways.

", - "smithy.api#xmlName": "CustomerGatewayId" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the attachment.

", + "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeCustomerGateways.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeCustomerGatewaysResult": { + "com.amazonaws.ec2#DeleteTransitGatewayVpcAttachmentResult": { "type": "structure", "members": { - "CustomerGateways": { - "target": "com.amazonaws.ec2#CustomerGatewayList", + "TransitGatewayVpcAttachment": { + "target": "com.amazonaws.ec2#TransitGatewayVpcAttachment", "traits": { - "aws.protocols#ec2QueryName": "CustomerGatewaySet", - "smithy.api#documentation": "

Information about one or more customer gateways.

", - "smithy.api#xmlName": "customerGatewaySet" + "aws.protocols#ec2QueryName": "TransitGatewayVpcAttachment", + "smithy.api#documentation": "

Information about the deleted VPC attachment.

", + "smithy.api#xmlName": "transitGatewayVpcAttachment" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of DescribeCustomerGateways.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeDhcpOptions": { + "com.amazonaws.ec2#DeleteVerifiedAccessEndpoint": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeDhcpOptionsRequest" + "target": "com.amazonaws.ec2#DeleteVerifiedAccessEndpointRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeDhcpOptionsResult" + "target": "com.amazonaws.ec2#DeleteVerifiedAccessEndpointResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your DHCP options sets.

\n

For more information, see DHCP options sets in the\n\t\t\t\tAmazon VPC User Guide.

", - "smithy.api#examples": [ - { - "title": "To describe a DHCP options set", - "documentation": "This example describes the specified DHCP options set.", - "input": { - "DhcpOptionsIds": [ - "dopt-d9070ebb" - ] - }, - "output": { - "DhcpOptions": [ - { - "DhcpConfigurations": [ - { - "Values": [ - { - "Value": "10.2.5.2" - }, - { - "Value": "10.2.5.1" - } - ], - "Key": "domain-name-servers" - } - ], - "DhcpOptionsId": "dopt-d9070ebb" - } - ] - } - } - ], - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "DhcpOptions", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeDhcpOptionsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } + "smithy.api#documentation": "

Delete an Amazon Web Services Verified Access endpoint.

" } }, - "com.amazonaws.ec2#DescribeDhcpOptionsRequest": { + "com.amazonaws.ec2#DeleteVerifiedAccessEndpointRequest": { "type": "structure", "members": { - "DhcpOptionsIds": { - "target": "com.amazonaws.ec2#DhcpOptionsIdStringList", + "VerifiedAccessEndpointId": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointId", "traits": { - "smithy.api#documentation": "

The IDs of one or more DHCP options sets.

\n

Default: Describes all your DHCP options sets.

", - "smithy.api#xmlName": "DhcpOptionsId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Verified Access endpoint.

", + "smithy.api#required": {} } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DeleteVerifiedAccessEndpointResult": { + "type": "structure", + "members": { + "VerifiedAccessEndpoint": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpoint", + "traits": { + "aws.protocols#ec2QueryName": "VerifiedAccessEndpoint", + "smithy.api#documentation": "

Details about the Verified Access endpoint.

", + "smithy.api#xmlName": "verifiedAccessEndpoint" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DeleteVerifiedAccessGroup": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteVerifiedAccessGroupRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeleteVerifiedAccessGroupResult" + }, + "traits": { + "smithy.api#documentation": "

Delete an Amazon Web Services Verified Access group.

" + } + }, + "com.amazonaws.ec2#DeleteVerifiedAccessGroupRequest": { + "type": "structure", + "members": { + "VerifiedAccessGroupId": { + "target": "com.amazonaws.ec2#VerifiedAccessGroupId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Verified Access group.

", + "smithy.api#required": {} } }, - "NextToken": { + "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeDhcpOptionsMaxResults", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -28988,23 +29503,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeDhcpOptionsResult": { + "com.amazonaws.ec2#DeleteVerifiedAccessGroupResult": { "type": "structure", "members": { - "DhcpOptions": { - "target": "com.amazonaws.ec2#DhcpOptionsList", - "traits": { - "aws.protocols#ec2QueryName": "DhcpOptionsSet", - "smithy.api#documentation": "

Information about one or more DHCP options sets.

", - "smithy.api#xmlName": "dhcpOptionsSet" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "VerifiedAccessGroup": { + "target": "com.amazonaws.ec2#VerifiedAccessGroup", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "VerifiedAccessGroup", + "smithy.api#documentation": "

Details about the Verified Access group.

", + "smithy.api#xmlName": "verifiedAccessGroup" } } }, @@ -29012,66 +29519,40 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeEgressOnlyInternetGateways": { + "com.amazonaws.ec2#DeleteVerifiedAccessInstance": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeEgressOnlyInternetGatewaysRequest" + "target": "com.amazonaws.ec2#DeleteVerifiedAccessInstanceRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeEgressOnlyInternetGatewaysResult" + "target": "com.amazonaws.ec2#DeleteVerifiedAccessInstanceResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your egress-only internet gateways.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "EgressOnlyInternetGateways", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeEgressOnlyInternetGatewaysMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 255 - } + "smithy.api#documentation": "

Delete an Amazon Web Services Verified Access instance.

" } }, - "com.amazonaws.ec2#DescribeEgressOnlyInternetGatewaysRequest": { + "com.amazonaws.ec2#DeleteVerifiedAccessInstanceRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "EgressOnlyInternetGatewayIds": { - "target": "com.amazonaws.ec2#EgressOnlyInternetGatewayIdList", + "VerifiedAccessInstanceId": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceId", "traits": { - "smithy.api#documentation": "

The IDs of the egress-only internet gateways.

", - "smithy.api#xmlName": "EgressOnlyInternetGatewayId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Verified Access instance.

", + "smithy.api#required": {} } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeEgressOnlyInternetGatewaysMaxResults", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "NextToken": { + "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} } } }, @@ -29079,23 +29560,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeEgressOnlyInternetGatewaysResult": { + "com.amazonaws.ec2#DeleteVerifiedAccessInstanceResult": { "type": "structure", "members": { - "EgressOnlyInternetGateways": { - "target": "com.amazonaws.ec2#EgressOnlyInternetGatewayList", - "traits": { - "aws.protocols#ec2QueryName": "EgressOnlyInternetGatewaySet", - "smithy.api#documentation": "

Information about the egress-only internet gateways.

", - "smithy.api#xmlName": "egressOnlyInternetGatewaySet" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "VerifiedAccessInstance": { + "target": "com.amazonaws.ec2#VerifiedAccessInstance", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "VerifiedAccessInstance", + "smithy.api#documentation": "

Details about the Verified Access instance.

", + "smithy.api#xmlName": "verifiedAccessInstance" } } }, @@ -29103,35 +29576,27 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeElasticGpus": { + "com.amazonaws.ec2#DeleteVerifiedAccessTrustProvider": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeElasticGpusRequest" + "target": "com.amazonaws.ec2#DeleteVerifiedAccessTrustProviderRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeElasticGpusResult" + "target": "com.amazonaws.ec2#DeleteVerifiedAccessTrustProviderResult" }, "traits": { - "smithy.api#documentation": "\n

Amazon Elastic Graphics reached end of life on January 8, 2024. For \n workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, \n G4dn, or G5 instances.

\n
\n

Describes the Elastic Graphics accelerator associated with your instances. For more information\n about Elastic Graphics, see Amazon Elastic Graphics.

" - } - }, - "com.amazonaws.ec2#DescribeElasticGpusMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 10, - "max": 1000 - } + "smithy.api#documentation": "

Delete an Amazon Web Services Verified Access trust provider.

" } }, - "com.amazonaws.ec2#DescribeElasticGpusRequest": { + "com.amazonaws.ec2#DeleteVerifiedAccessTrustProviderRequest": { "type": "structure", "members": { - "ElasticGpuIds": { - "target": "com.amazonaws.ec2#ElasticGpuIdSet", + "VerifiedAccessTrustProviderId": { + "target": "com.amazonaws.ec2#VerifiedAccessTrustProviderId", "traits": { - "smithy.api#documentation": "

The Elastic Graphics accelerator IDs.

", - "smithy.api#xmlName": "ElasticGpuId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Verified Access trust provider.

", + "smithy.api#required": {} } }, "DryRun": { @@ -29140,23 +29605,11 @@ "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeElasticGpusMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining\n results, make another call with the returned NextToken value. This value\n can be between 5 and 1000.

" - } - }, - "NextToken": { + "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token to request the next page of results.

" + "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} } } }, @@ -29164,66 +29617,102 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeElasticGpusResult": { + "com.amazonaws.ec2#DeleteVerifiedAccessTrustProviderResult": { "type": "structure", "members": { - "ElasticGpuSet": { - "target": "com.amazonaws.ec2#ElasticGpuSet", + "VerifiedAccessTrustProvider": { + "target": "com.amazonaws.ec2#VerifiedAccessTrustProvider", "traits": { - "aws.protocols#ec2QueryName": "ElasticGpuSet", - "smithy.api#documentation": "

Information about the Elastic Graphics accelerators.

", - "smithy.api#xmlName": "elasticGpuSet" + "aws.protocols#ec2QueryName": "VerifiedAccessTrustProvider", + "smithy.api#documentation": "

Details about the Verified Access trust provider.

", + "smithy.api#xmlName": "verifiedAccessTrustProvider" } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DeleteVolume": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteVolumeRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Deletes the specified EBS volume. The volume must be in the available state\n (not attached to an instance).

\n

The volume can remain in the deleting state for several minutes.

\n

For more information, see Delete an Amazon EBS volume in the\n Amazon EBS User Guide.

", + "smithy.api#examples": [ + { + "title": "To delete a volume", + "documentation": "This example deletes an available volume with the volume ID of ``vol-049df61146c4d7901``. If the command succeeds, no output is returned.", + "input": { + "VolumeId": "vol-049df61146c4d7901" + }, + "output": {} + } + ] + } + }, + "com.amazonaws.ec2#DeleteVolumeRequest": { + "type": "structure", + "members": { + "VolumeId": { + "target": "com.amazonaws.ec2#VolumeId", "traits": { - "aws.protocols#ec2QueryName": "MaxResults", - "smithy.api#documentation": "

The total number of items to return. If the total number of items available is more\n than the value specified in max-items then a Next-Token will be provided in the output\n that you can use to resume pagination.

", - "smithy.api#xmlName": "maxResults" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the volume.

", + "smithy.api#required": {} } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is\n null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeExportImageTasks": { + "com.amazonaws.ec2#DeleteVpc": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeExportImageTasksRequest" + "target": "com.amazonaws.ec2#DeleteVpcRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeExportImageTasksResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Describes the specified export image tasks or all of your export image tasks.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "ExportImageTasks", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Deletes the specified VPC. You must detach or delete all gateways and resources that are associated \n\t\t with the VPC before you can delete it. For example, you must terminate all instances running in the VPC, \n\t\t delete all security groups associated with the VPC (except the default one), delete all route tables \n\t\t associated with the VPC (except the default one), and so on. When you delete the VPC, it deletes the \n\t\t default security group, network ACL, and route table for the VPC.

\n

If you created a flow log for the VPC that you are deleting, note that flow logs for deleted \n VPCs are eventually automatically removed.

", + "smithy.api#examples": [ + { + "title": "To delete a VPC", + "documentation": "This example deletes the specified VPC.", + "input": { + "VpcId": "vpc-a01106c2" + } + } + ] } }, - "com.amazonaws.ec2#DescribeExportImageTasksMaxResults": { - "type": "integer", + "com.amazonaws.ec2#DeleteVpcBlockPublicAccessExclusion": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteVpcBlockPublicAccessExclusionRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeleteVpcBlockPublicAccessExclusionResult" + }, "traits": { - "smithy.api#range": { - "min": 1, - "max": 500 - } + "smithy.api#documentation": "

Delete a VPC Block Public Access (BPA) exclusion. A VPC BPA exclusion is a mode that can be applied to a single VPC or subnet that exempts it from the account’s BPA mode and will allow bidirectional or egress-only access. You can create BPA exclusions for VPCs and subnets even when BPA is not enabled on the account to ensure that there is no traffic disruption to the exclusions when VPC BPA is turned on. To learn more about VPC BPA, see Block public access to VPCs and subnets in the Amazon VPC User Guide.

" } }, - "com.amazonaws.ec2#DescribeExportImageTasksRequest": { + "com.amazonaws.ec2#DeleteVpcBlockPublicAccessExclusionRequest": { "type": "structure", "members": { "DryRun": { @@ -29232,30 +29721,12 @@ "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

Filter tasks using the task-state filter and one of the following values: active,\n completed, deleting, or deleted.

", - "smithy.api#xmlName": "Filter" - } - }, - "ExportImageTaskIds": { - "target": "com.amazonaws.ec2#ExportImageTaskIdList", - "traits": { - "smithy.api#documentation": "

The IDs of the export image tasks.

", - "smithy.api#xmlName": "ExportImageTaskId" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeExportImageTasksMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return in a single call.

" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "ExclusionId": { + "target": "com.amazonaws.ec2#VpcBlockPublicAccessExclusionId", "traits": { - "smithy.api#documentation": "

A token that indicates the next page of results.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the exclusion.

", + "smithy.api#required": {} } } }, @@ -29263,23 +29734,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeExportImageTasksResult": { + "com.amazonaws.ec2#DeleteVpcBlockPublicAccessExclusionResult": { "type": "structure", "members": { - "ExportImageTasks": { - "target": "com.amazonaws.ec2#ExportImageTaskList", - "traits": { - "aws.protocols#ec2QueryName": "ExportImageTaskSet", - "smithy.api#documentation": "

Information about the export image tasks.

", - "smithy.api#xmlName": "exportImageTaskSet" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "VpcBlockPublicAccessExclusion": { + "target": "com.amazonaws.ec2#VpcBlockPublicAccessExclusion", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to get the next page of results. This value is null when there are no more results\n to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "VpcBlockPublicAccessExclusion", + "smithy.api#documentation": "

Details about an exclusion.

", + "smithy.api#xmlName": "vpcBlockPublicAccessExclusion" } } }, @@ -29287,66 +29750,34 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeExportTasks": { + "com.amazonaws.ec2#DeleteVpcEndpointConnectionNotifications": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeExportTasksRequest" + "target": "com.amazonaws.ec2#DeleteVpcEndpointConnectionNotificationsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeExportTasksResult" + "target": "com.amazonaws.ec2#DeleteVpcEndpointConnectionNotificationsResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified export instance tasks or all of your export instance tasks.

", - "smithy.waiters#waitable": { - "ExportTaskCancelled": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "ExportTasks[].State", - "expected": "cancelled", - "comparator": "allStringEquals" - } - } - } - ], - "minDelay": 15 - }, - "ExportTaskCompleted": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "ExportTasks[].State", - "expected": "completed", - "comparator": "allStringEquals" - } - } - } - ], - "minDelay": 15 - } - } + "smithy.api#documentation": "

Deletes the specified VPC endpoint connection notifications.

" } }, - "com.amazonaws.ec2#DescribeExportTasksRequest": { + "com.amazonaws.ec2#DeleteVpcEndpointConnectionNotificationsRequest": { "type": "structure", "members": { - "ExportTaskIds": { - "target": "com.amazonaws.ec2#ExportTaskIdStringList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "ExportTaskId", - "smithy.api#documentation": "

The export task IDs.

", - "smithy.api#xmlName": "exportTaskId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "ConnectionNotificationIds": { + "target": "com.amazonaws.ec2#ConnectionNotificationIdsList", "traits": { - "smithy.api#documentation": "

the filters for the export tasks.

", - "smithy.api#xmlName": "Filter" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of the notifications.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "ConnectionNotificationId" } } }, @@ -29354,15 +29785,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeExportTasksResult": { + "com.amazonaws.ec2#DeleteVpcEndpointConnectionNotificationsResult": { "type": "structure", "members": { - "ExportTasks": { - "target": "com.amazonaws.ec2#ExportTaskList", + "Unsuccessful": { + "target": "com.amazonaws.ec2#UnsuccessfulItemSet", "traits": { - "aws.protocols#ec2QueryName": "ExportTaskSet", - "smithy.api#documentation": "

Information about the export tasks.

", - "smithy.api#xmlName": "exportTaskSet" + "aws.protocols#ec2QueryName": "Unsuccessful", + "smithy.api#documentation": "

Information about the notifications that could not be deleted\n successfully.

", + "smithy.api#xmlName": "unsuccessful" } } }, @@ -29370,428 +29801,390 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeFastLaunchImages": { + "com.amazonaws.ec2#DeleteVpcEndpointServiceConfigurations": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeFastLaunchImagesRequest" + "target": "com.amazonaws.ec2#DeleteVpcEndpointServiceConfigurationsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeFastLaunchImagesResult" + "target": "com.amazonaws.ec2#DeleteVpcEndpointServiceConfigurationsResult" }, "traits": { - "smithy.api#documentation": "

Describe details for Windows AMIs that are configured for Windows fast launch.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "FastLaunchImages", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Deletes the specified VPC endpoint service configurations. Before you can delete\n an endpoint service configuration, you must reject any Available or\n PendingAcceptance interface endpoint connections that are attached to\n the service.

" } }, - "com.amazonaws.ec2#DescribeFastLaunchImagesRequest": { + "com.amazonaws.ec2#DeleteVpcEndpointServiceConfigurationsRequest": { "type": "structure", "members": { - "ImageIds": { - "target": "com.amazonaws.ec2#FastLaunchImageIdList", - "traits": { - "smithy.api#documentation": "

Specify one or more Windows AMI image IDs for the request.

", - "smithy.api#xmlName": "ImageId" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

Use the following filters to streamline results.

\n ", - "smithy.api#xmlName": "Filter" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeFastLaunchImagesRequestMaxResults", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "ServiceIds": { + "target": "com.amazonaws.ec2#VpcEndpointServiceIdList", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of the services.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "ServiceId" } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DeleteVpcEndpointServiceConfigurationsResult": { + "type": "structure", + "members": { + "Unsuccessful": { + "target": "com.amazonaws.ec2#UnsuccessfulItemSet", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "Unsuccessful", + "smithy.api#documentation": "

Information about the service configurations that were not deleted, if\n applicable.

", + "smithy.api#xmlName": "unsuccessful" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeFastLaunchImagesRequestMaxResults": { - "type": "integer", + "com.amazonaws.ec2#DeleteVpcEndpoints": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteVpcEndpointsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeleteVpcEndpointsResult" + }, "traits": { - "smithy.api#range": { - "min": 0, - "max": 200 - } + "smithy.api#documentation": "

Deletes the specified VPC endpoints.

\n

When you delete a gateway endpoint, we delete the endpoint routes in the route tables for the endpoint.

\n

When you delete a Gateway Load Balancer endpoint, we delete its endpoint network interfaces. \n You can only delete Gateway Load Balancer endpoints when the routes that are associated with the endpoint are deleted.

\n

When you delete an interface endpoint, we delete its endpoint network interfaces.

" } }, - "com.amazonaws.ec2#DescribeFastLaunchImagesResult": { + "com.amazonaws.ec2#DeleteVpcEndpointsRequest": { "type": "structure", "members": { - "FastLaunchImages": { - "target": "com.amazonaws.ec2#DescribeFastLaunchImagesSuccessSet", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "FastLaunchImageSet", - "smithy.api#documentation": "

A collection of details about the fast-launch enabled Windows images that meet \n\t\t\tthe requested criteria.

", - "smithy.api#xmlName": "fastLaunchImageSet" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "VpcEndpointIds": { + "target": "com.amazonaws.ec2#VpcEndpointIdList", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of the VPC endpoints.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "VpcEndpointId" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeFastLaunchImagesSuccessItem": { + "com.amazonaws.ec2#DeleteVpcEndpointsResult": { "type": "structure", "members": { - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", + "Unsuccessful": { + "target": "com.amazonaws.ec2#UnsuccessfulItemSet", "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The image ID that identifies the Windows fast launch enabled image.

", - "smithy.api#xmlName": "imageId" - } - }, - "ResourceType": { - "target": "com.amazonaws.ec2#FastLaunchResourceType", - "traits": { - "aws.protocols#ec2QueryName": "ResourceType", - "smithy.api#documentation": "

The resource type that Amazon EC2 uses for pre-provisioning the Windows AMI. Supported values \n\t\t\tinclude: snapshot.

", - "smithy.api#xmlName": "resourceType" - } - }, - "SnapshotConfiguration": { - "target": "com.amazonaws.ec2#FastLaunchSnapshotConfigurationResponse", - "traits": { - "aws.protocols#ec2QueryName": "SnapshotConfiguration", - "smithy.api#documentation": "

A group of parameters that are used for pre-provisioning the associated \n\t\t\tWindows AMI using snapshots.

", - "smithy.api#xmlName": "snapshotConfiguration" - } - }, - "LaunchTemplate": { - "target": "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationResponse", - "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplate", - "smithy.api#documentation": "

The launch template that the Windows fast launch enabled AMI uses when it launches \n\t\t\tWindows instances from pre-provisioned snapshots.

", - "smithy.api#xmlName": "launchTemplate" + "aws.protocols#ec2QueryName": "Unsuccessful", + "smithy.api#documentation": "

Information about the VPC endpoints that were not successfully deleted.

", + "smithy.api#xmlName": "unsuccessful" } - }, - "MaxParallelLaunches": { - "target": "com.amazonaws.ec2#Integer", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DeleteVpcPeeringConnection": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteVpcPeeringConnectionRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeleteVpcPeeringConnectionResult" + }, + "traits": { + "smithy.api#documentation": "

Deletes a VPC peering connection. Either the owner of the requester VPC or the owner\n of the accepter VPC can delete the VPC peering connection if it's in the\n active state. The owner of the requester VPC can delete a VPC peering\n connection in the pending-acceptance state. You cannot delete a VPC peering\n connection that's in the failed or rejected state.

" + } + }, + "com.amazonaws.ec2#DeleteVpcPeeringConnectionRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "MaxParallelLaunches", - "smithy.api#documentation": "

The maximum number of instances that Amazon EC2 can launch at the same time to create \n\t\t\tpre-provisioned snapshots for Windows fast launch.

", - "smithy.api#xmlName": "maxParallelLaunches" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "VpcPeeringConnectionId": { + "target": "com.amazonaws.ec2#VpcPeeringConnectionId", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The owner ID for the Windows fast launch enabled AMI.

", - "smithy.api#xmlName": "ownerId" + "aws.protocols#ec2QueryName": "VpcPeeringConnectionId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC peering connection.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "vpcPeeringConnectionId" } - }, - "State": { - "target": "com.amazonaws.ec2#FastLaunchStateCode", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DeleteVpcPeeringConnectionResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The current state of Windows fast launch for the specified Windows AMI.

", - "smithy.api#xmlName": "state" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } - }, - "StateTransitionReason": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DeleteVpcRequest": { + "type": "structure", + "members": { + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "aws.protocols#ec2QueryName": "StateTransitionReason", - "smithy.api#documentation": "

The reason that Windows fast launch for the AMI changed to the current state.

", - "smithy.api#xmlName": "stateTransitionReason" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#required": {} } }, - "StateTransitionTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "StateTransitionTime", - "smithy.api#documentation": "

The time that Windows fast launch for the AMI changed to the current state.

", - "smithy.api#xmlName": "stateTransitionTime" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, "traits": { - "smithy.api#documentation": "

Describe details about a Windows image with Windows fast launch enabled that meets the requested \n\t\t\tcriteria. Criteria are defined by the DescribeFastLaunchImages action filters.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeFastLaunchImagesSuccessSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DescribeFastLaunchImagesSuccessItem", - "traits": { - "smithy.api#xmlName": "item" - } + "com.amazonaws.ec2#DeleteVpnConnection": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteVpnConnectionRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Deletes the specified VPN connection.

\n

If you're deleting the VPC and its associated components, we recommend that you detach\n the virtual private gateway from the VPC and delete the VPC before deleting the VPN\n connection. If you believe that the tunnel credentials for your VPN connection have been\n compromised, you can delete the VPN connection and create a new one that has new keys,\n without needing to delete the VPC or virtual private gateway. If you create a new VPN\n connection, you must reconfigure the customer gateway device using the new configuration\n information returned with the new VPN connection ID.

\n

For certificate-based authentication, delete all Certificate Manager (ACM) private\n certificates used for the Amazon Web Services-side tunnel endpoints for the VPN\n connection before deleting the VPN connection.

" } }, - "com.amazonaws.ec2#DescribeFastSnapshotRestoreSuccessItem": { + "com.amazonaws.ec2#DeleteVpnConnectionRequest": { "type": "structure", "members": { - "SnapshotId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "SnapshotId", - "smithy.api#documentation": "

The ID of the snapshot.

", - "smithy.api#xmlName": "snapshotId" - } - }, - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone.

", - "smithy.api#xmlName": "availabilityZone" - } - }, - "State": { - "target": "com.amazonaws.ec2#FastSnapshotRestoreStateCode", - "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of fast snapshot restores.

", - "smithy.api#xmlName": "state" - } - }, - "StateTransitionReason": { - "target": "com.amazonaws.ec2#String", + "VpnConnectionId": { + "target": "com.amazonaws.ec2#VpnConnectionId", "traits": { - "aws.protocols#ec2QueryName": "StateTransitionReason", - "smithy.api#documentation": "

The reason for the state transition. The possible values are as follows:

\n ", - "smithy.api#xmlName": "stateTransitionReason" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPN connection.

", + "smithy.api#required": {} } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that enabled fast snapshot restores on the snapshot.

", - "smithy.api#xmlName": "ownerId" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } - }, - "OwnerAlias": { + } + }, + "traits": { + "smithy.api#documentation": "

Contains the parameters for DeleteVpnConnection.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DeleteVpnConnectionRoute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeleteVpnConnectionRouteRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Deletes the specified static route associated with a VPN connection between an\n existing virtual private gateway and a VPN customer gateway. The static route allows\n traffic to be routed from the virtual private gateway to the VPN customer\n gateway.

" + } + }, + "com.amazonaws.ec2#DeleteVpnConnectionRouteRequest": { + "type": "structure", + "members": { + "DestinationCidrBlock": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "OwnerAlias", - "smithy.api#documentation": "

The Amazon Web Services owner alias that enabled fast snapshot restores on the snapshot. This is intended for future use.

", - "smithy.api#xmlName": "ownerAlias" - } - }, - "EnablingTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "aws.protocols#ec2QueryName": "EnablingTime", - "smithy.api#documentation": "

The time at which fast snapshot restores entered the enabling state.

", - "smithy.api#xmlName": "enablingTime" - } - }, - "OptimizingTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "aws.protocols#ec2QueryName": "OptimizingTime", - "smithy.api#documentation": "

The time at which fast snapshot restores entered the optimizing state.

", - "smithy.api#xmlName": "optimizingTime" - } - }, - "EnabledTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "aws.protocols#ec2QueryName": "EnabledTime", - "smithy.api#documentation": "

The time at which fast snapshot restores entered the enabled state.

", - "smithy.api#xmlName": "enabledTime" - } - }, - "DisablingTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "aws.protocols#ec2QueryName": "DisablingTime", - "smithy.api#documentation": "

The time at which fast snapshot restores entered the disabling state.

", - "smithy.api#xmlName": "disablingTime" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The CIDR block associated with the local subnet of the customer network.

", + "smithy.api#required": {} } }, - "DisabledTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "VpnConnectionId": { + "target": "com.amazonaws.ec2#VpnConnectionId", "traits": { - "aws.protocols#ec2QueryName": "DisabledTime", - "smithy.api#documentation": "

The time at which fast snapshot restores entered the disabled state.

", - "smithy.api#xmlName": "disabledTime" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPN connection.

", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Describes fast snapshot restores for a snapshot.

" - } - }, - "com.amazonaws.ec2#DescribeFastSnapshotRestoreSuccessSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DescribeFastSnapshotRestoreSuccessItem", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

Contains the parameters for DeleteVpnConnectionRoute.

", + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeFastSnapshotRestores": { + "com.amazonaws.ec2#DeleteVpnGateway": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeFastSnapshotRestoresRequest" + "target": "com.amazonaws.ec2#DeleteVpnGatewayRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeFastSnapshotRestoresResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Describes the state of fast snapshot restores for your snapshots.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "FastSnapshotRestores", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeFastSnapshotRestoresMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 0, - "max": 200 - } + "smithy.api#documentation": "

Deletes the specified virtual private gateway. You must first detach the virtual\n private gateway from the VPC. Note that you don't need to delete the virtual private\n gateway if you plan to delete and recreate the VPN connection between your VPC and your\n network.

" } }, - "com.amazonaws.ec2#DescribeFastSnapshotRestoresRequest": { + "com.amazonaws.ec2#DeleteVpnGatewayRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

The filters. The possible values are:

\n ", - "smithy.api#xmlName": "Filter" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeFastSnapshotRestoresMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output. \n\tFor more information, see Pagination.

" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "VpnGatewayId": { + "target": "com.amazonaws.ec2#VpnGatewayId", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the virtual private gateway.

", + "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DeleteVpnGateway.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeFastSnapshotRestoresResult": { + "com.amazonaws.ec2#DeprecationTimeCondition": { "type": "structure", "members": { - "FastSnapshotRestores": { - "target": "com.amazonaws.ec2#DescribeFastSnapshotRestoreSuccessSet", - "traits": { - "aws.protocols#ec2QueryName": "FastSnapshotRestoreSet", - "smithy.api#documentation": "

Information about the state of fast snapshot restores.

", - "smithy.api#xmlName": "fastSnapshotRestoreSet" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "MaximumDaysSinceDeprecated": { + "target": "com.amazonaws.ec2#MaximumDaysSinceDeprecatedValue", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "MaximumDaysSinceDeprecated", + "smithy.api#documentation": "

The maximum number of days that have elapsed since the image was deprecated. When set to\n 0, no deprecated images are allowed.

", + "smithy.api#xmlName": "maximumDaysSinceDeprecated" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

The maximum period since deprecation for allowed images.

" } }, - "com.amazonaws.ec2#DescribeFleetError": { + "com.amazonaws.ec2#DeprecationTimeConditionRequest": { "type": "structure", "members": { - "LaunchTemplateAndOverrides": { - "target": "com.amazonaws.ec2#LaunchTemplateAndOverridesResponse", + "MaximumDaysSinceDeprecated": { + "target": "com.amazonaws.ec2#MaximumDaysSinceDeprecatedValue", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateAndOverrides", - "smithy.api#documentation": "

The launch templates and overrides that were used for launching the instances. The\n values that you specify in the Overrides replace the values in the launch template.

", - "smithy.api#xmlName": "launchTemplateAndOverrides" + "smithy.api#documentation": "

The maximum number of days that have elapsed since the image was deprecated. Set to\n 0 to exclude all deprecated images.

" } - }, - "Lifecycle": { - "target": "com.amazonaws.ec2#InstanceLifecycle", + } + }, + "traits": { + "smithy.api#documentation": "

The maximum period since deprecation for allowed images.

" + } + }, + "com.amazonaws.ec2#DeprovisionByoipCidr": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DeprovisionByoipCidrRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DeprovisionByoipCidrResult" + }, + "traits": { + "smithy.api#documentation": "

Releases the specified address range that you provisioned for use with your Amazon Web Services resources\n through bring your own IP addresses (BYOIP) and deletes the corresponding address pool.

\n

Before you can release an address range, you must stop advertising it and you must not \n have any IP addresses allocated from its address range.

" + } + }, + "com.amazonaws.ec2#DeprovisionByoipCidrRequest": { + "type": "structure", + "members": { + "Cidr": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Lifecycle", - "smithy.api#documentation": "

Indicates if the instance that could not be launched was a Spot Instance or On-Demand Instance.

", - "smithy.api#xmlName": "lifecycle" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The address range, in CIDR notation. The prefix must be the same prefix \n that you specified when you provisioned the address range.

", + "smithy.api#required": {} } }, - "ErrorCode": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "ErrorCode", - "smithy.api#documentation": "

The error code that indicates why the instance could not be launched. For more\n information about error codes, see Error codes.

", - "smithy.api#xmlName": "errorCode" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "ErrorMessage": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DeprovisionByoipCidrResult": { + "type": "structure", + "members": { + "ByoipCidr": { + "target": "com.amazonaws.ec2#ByoipCidr", "traits": { - "aws.protocols#ec2QueryName": "ErrorMessage", - "smithy.api#documentation": "

The error message that describes why the instance could not be launched. For more\n information about error messages, see Error codes.

", - "smithy.api#xmlName": "errorMessage" + "aws.protocols#ec2QueryName": "ByoipCidr", + "smithy.api#documentation": "

Information about the address range.

", + "smithy.api#xmlName": "byoipCidr" } } }, "traits": { - "smithy.api#documentation": "

Describes the instances that could not be launched by the fleet.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeFleetHistory": { + "com.amazonaws.ec2#DeprovisionIpamByoasn": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeFleetHistoryRequest" + "target": "com.amazonaws.ec2#DeprovisionIpamByoasnRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeFleetHistoryResult" + "target": "com.amazonaws.ec2#DeprovisionIpamByoasnResult" }, "traits": { - "smithy.api#documentation": "

Describes the events for the specified EC2 Fleet during the specified time.

\n

EC2 Fleet events are delayed by up to 30 seconds before they can be described. This ensures\n that you can query by the last evaluated time and not miss a recorded event. EC2 Fleet events\n are available for 48 hours.

\n

For more information, see Monitor fleet events using Amazon EventBridge in the\n Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Deprovisions your Autonomous System Number (ASN) from your Amazon Web Services account. This action can only be called after any BYOIP CIDR associations are removed from your Amazon Web Services account with DisassociateIpamByoasn.\n For more information, see Tutorial: Bring your ASN to IPAM in the Amazon VPC IPAM guide.

" } }, - "com.amazonaws.ec2#DescribeFleetHistoryRequest": { + "com.amazonaws.ec2#DeprovisionIpamByoasnRequest": { "type": "structure", "members": { "DryRun": { @@ -29800,37 +30193,19 @@ "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "EventType": { - "target": "com.amazonaws.ec2#FleetEventType", - "traits": { - "smithy.api#documentation": "

The type of events to describe. By default, all events are described.

" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" - } - }, - "FleetId": { - "target": "com.amazonaws.ec2#FleetId", + "IpamId": { + "target": "com.amazonaws.ec2#IpamId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the EC2 Fleet.

", + "smithy.api#documentation": "

The IPAM ID.

", "smithy.api#required": {} } }, - "StartTime": { - "target": "com.amazonaws.ec2#DateTime", + "Asn": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The start date and time for the events, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).

", + "smithy.api#documentation": "

An ASN.

", "smithy.api#required": {} } } @@ -29839,47 +30214,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeFleetHistoryResult": { + "com.amazonaws.ec2#DeprovisionIpamByoasnResult": { "type": "structure", "members": { - "HistoryRecords": { - "target": "com.amazonaws.ec2#HistoryRecordSet", - "traits": { - "aws.protocols#ec2QueryName": "HistoryRecordSet", - "smithy.api#documentation": "

Information about the events in the history of the EC2 Fleet.

", - "smithy.api#xmlName": "historyRecordSet" - } - }, - "LastEvaluatedTime": { - "target": "com.amazonaws.ec2#DateTime", - "traits": { - "aws.protocols#ec2QueryName": "LastEvaluatedTime", - "smithy.api#documentation": "

The last date and time for the events, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).\n All records up to this time were retrieved.

\n

If nextToken indicates that there are more items, this value is not\n present.

", - "smithy.api#xmlName": "lastEvaluatedTime" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", - "smithy.api#xmlName": "nextToken" - } - }, - "FleetId": { - "target": "com.amazonaws.ec2#FleetId", - "traits": { - "aws.protocols#ec2QueryName": "FleetId", - "smithy.api#documentation": "

The ID of the EC Fleet.

", - "smithy.api#xmlName": "fleetId" - } - }, - "StartTime": { - "target": "com.amazonaws.ec2#DateTime", + "Byoasn": { + "target": "com.amazonaws.ec2#Byoasn", "traits": { - "aws.protocols#ec2QueryName": "StartTime", - "smithy.api#documentation": "

The start date and time for the events, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).

", - "smithy.api#xmlName": "startTime" + "aws.protocols#ec2QueryName": "Byoasn", + "smithy.api#documentation": "

An ASN and BYOIP CIDR association.

", + "smithy.api#xmlName": "byoasn" } } }, @@ -29887,52 +30230,39 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeFleetInstances": { + "com.amazonaws.ec2#DeprovisionIpamPoolCidr": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeFleetInstancesRequest" + "target": "com.amazonaws.ec2#DeprovisionIpamPoolCidrRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeFleetInstancesResult" + "target": "com.amazonaws.ec2#DeprovisionIpamPoolCidrResult" }, "traits": { - "smithy.api#documentation": "

Describes the running instances for the specified EC2 Fleet.

\n \n

Currently, DescribeFleetInstances does not support fleets of type\n instant. Instead, use DescribeFleets, specifying the\n instant fleet ID in the request.

\n
\n

For more information, see Describe your\n EC2 Fleet in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Deprovision a CIDR provisioned from an IPAM pool. If you deprovision a CIDR from a pool that has a source pool, the CIDR is recycled back into the source pool. For more information, see Deprovision pool CIDRs in the Amazon VPC IPAM User Guide.

" } }, - "com.amazonaws.ec2#DescribeFleetInstancesRequest": { + "com.amazonaws.ec2#DeprovisionIpamPoolCidrRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the pool that has the CIDR you want to deprovision.

", + "smithy.api#required": {} } }, - "NextToken": { + "Cidr": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" - } - }, - "FleetId": { - "target": "com.amazonaws.ec2#FleetId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the EC2 Fleet.

", - "smithy.api#required": {} - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The CIDR which you want to deprovision from the pool.

" } } }, @@ -29940,31 +30270,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeFleetInstancesResult": { + "com.amazonaws.ec2#DeprovisionIpamPoolCidrResult": { "type": "structure", "members": { - "ActiveInstances": { - "target": "com.amazonaws.ec2#ActiveInstanceSet", - "traits": { - "aws.protocols#ec2QueryName": "ActiveInstanceSet", - "smithy.api#documentation": "

The running instances. This list is refreshed periodically and might be out of\n date.

", - "smithy.api#xmlName": "activeInstanceSet" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", - "smithy.api#xmlName": "nextToken" - } - }, - "FleetId": { - "target": "com.amazonaws.ec2#FleetId", + "IpamPoolCidr": { + "target": "com.amazonaws.ec2#IpamPoolCidr", "traits": { - "aws.protocols#ec2QueryName": "FleetId", - "smithy.api#documentation": "

The ID of the EC2 Fleet.

", - "smithy.api#xmlName": "fleetId" + "aws.protocols#ec2QueryName": "IpamPoolCidr", + "smithy.api#documentation": "

The deprovisioned pool CIDR.

", + "smithy.api#xmlName": "ipamPoolCidr" } } }, @@ -29972,123 +30286,41 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeFleets": { + "com.amazonaws.ec2#DeprovisionPublicIpv4PoolCidr": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeFleetsRequest" + "target": "com.amazonaws.ec2#DeprovisionPublicIpv4PoolCidrRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeFleetsResult" - }, - "traits": { - "smithy.api#documentation": "

Describes the specified EC2 Fleet or all of your EC2 Fleets.

\n \n

If a fleet is of type instant, you must specify the fleet ID in the\n request, otherwise the fleet does not appear in the response.

\n
\n

For more information, see Describe your\n EC2 Fleet in the Amazon EC2 User Guide.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "Fleets", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeFleetsErrorSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DescribeFleetError", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#DescribeFleetsInstances": { - "type": "structure", - "members": { - "LaunchTemplateAndOverrides": { - "target": "com.amazonaws.ec2#LaunchTemplateAndOverridesResponse", - "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateAndOverrides", - "smithy.api#documentation": "

The launch templates and overrides that were used for launching the instances. The\n values that you specify in the Overrides replace the values in the launch template.

", - "smithy.api#xmlName": "launchTemplateAndOverrides" - } - }, - "Lifecycle": { - "target": "com.amazonaws.ec2#InstanceLifecycle", - "traits": { - "aws.protocols#ec2QueryName": "Lifecycle", - "smithy.api#documentation": "

Indicates if the instance that was launched is a Spot Instance or On-Demand Instance.

", - "smithy.api#xmlName": "lifecycle" - } - }, - "InstanceIds": { - "target": "com.amazonaws.ec2#InstanceIdsSet", - "traits": { - "aws.protocols#ec2QueryName": "InstanceIds", - "smithy.api#documentation": "

The IDs of the instances.

", - "smithy.api#xmlName": "instanceIds" - } - }, - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", - "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type.

", - "smithy.api#xmlName": "instanceType" - } - }, - "Platform": { - "target": "com.amazonaws.ec2#PlatformValues", - "traits": { - "aws.protocols#ec2QueryName": "Platform", - "smithy.api#documentation": "

The value is Windows for Windows instances. Otherwise, the value is\n blank.

", - "smithy.api#xmlName": "platform" - } - } + "target": "com.amazonaws.ec2#DeprovisionPublicIpv4PoolCidrResult" }, "traits": { - "smithy.api#documentation": "

Describes the instances that were launched by the fleet.

" - } - }, - "com.amazonaws.ec2#DescribeFleetsInstancesSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DescribeFleetsInstances", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

Deprovision a CIDR from a public IPv4 pool.

" } }, - "com.amazonaws.ec2#DescribeFleetsRequest": { + "com.amazonaws.ec2#DeprovisionPublicIpv4PoolCidrRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "PoolId": { + "target": "com.amazonaws.ec2#Ipv4PoolEc2Id", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the pool that you want to deprovision the CIDR from.

", + "smithy.api#required": {} } }, - "NextToken": { + "Cidr": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" - } - }, - "FleetIds": { - "target": "com.amazonaws.ec2#FleetIdSet", - "traits": { - "smithy.api#documentation": "

The IDs of the EC2 Fleets.

\n \n

If a fleet is of type instant, you must specify the fleet ID, otherwise\n it does not appear in the response.

\n
", - "smithy.api#xmlName": "FleetId" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The CIDR you want to deprovision from the pool.

", + "smithy.api#required": {} } } }, @@ -30096,23 +30328,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeFleetsResult": { + "com.amazonaws.ec2#DeprovisionPublicIpv4PoolCidrResult": { "type": "structure", "members": { - "NextToken": { - "target": "com.amazonaws.ec2#String", + "PoolId": { + "target": "com.amazonaws.ec2#Ipv4PoolEc2Id", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "PoolId", + "smithy.api#documentation": "

The ID of the pool that you deprovisioned the CIDR from.

", + "smithy.api#xmlName": "poolId" } }, - "Fleets": { - "target": "com.amazonaws.ec2#FleetSet", + "DeprovisionedAddresses": { + "target": "com.amazonaws.ec2#DeprovisionedAddressSet", "traits": { - "aws.protocols#ec2QueryName": "FleetSet", - "smithy.api#documentation": "

Information about the EC2 Fleets.

", - "smithy.api#xmlName": "fleetSet" + "aws.protocols#ec2QueryName": "DeprovisionedAddressSet", + "smithy.api#documentation": "

The deprovisioned CIDRs.

", + "smithy.api#xmlName": "deprovisionedAddressSet" } } }, @@ -30120,80 +30352,75 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeFlowLogs": { + "com.amazonaws.ec2#DeprovisionedAddressSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#DeregisterImage": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeFlowLogsRequest" + "target": "com.amazonaws.ec2#DeregisterImageRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeFlowLogsResult" + "target": "com.amazonaws.ec2#DeregisterImageResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more flow logs.

\n

To view the published flow log records, you must view the log destination. For example, \n the CloudWatch Logs log group, the Amazon S3 bucket, or the Kinesis Data Firehose delivery stream.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "FlowLogs", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Deregisters the specified AMI. A deregistered AMI can't be used to launch new\n instances.

\n

If a deregistered EBS-backed AMI matches a Recycle Bin retention rule, it moves to the\n Recycle Bin for the specified retention period. It can be restored before its retention period\n expires, after which it is permanently deleted. If the deregistered AMI doesn't match a\n retention rule, it is permanently deleted immediately. For more information, see Recover deleted Amazon EBS\n snapshots and EBS-backed AMIs with Recycle Bin in the Amazon EBS User\n Guide.

\n

When deregistering an EBS-backed AMI, you can optionally delete its associated snapshots\n at the same time. However, if a snapshot is associated with multiple AMIs, it won't be deleted\n even if specified for deletion, although the AMI will still be deregistered.

\n

Deregistering an AMI does not delete the following:

\n \n

For more information, see Deregister an Amazon EC2 AMI in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#DescribeFlowLogsRequest": { + "com.amazonaws.ec2#DeregisterImageRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "Filter": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

One or more filters.

\n " - } - }, - "FlowLogIds": { - "target": "com.amazonaws.ec2#FlowLogIdList", + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { - "smithy.api#documentation": "

One or more flow log IDs.

\n

Constraint: Maximum of 1000 flow log IDs.

", - "smithy.api#xmlName": "FlowLogId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the AMI.

", + "smithy.api#required": {} } }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "DeleteAssociatedSnapshots": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" + "smithy.api#documentation": "

Specifies whether to delete the snapshots associated with the AMI during\n deregistration.

\n \n

If a snapshot is associated with multiple AMIs, it is not deleted, regardless of this setting.

\n
\n

Default: The snapshots are not deleted.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The token to request the next page of items. Pagination continues from the end of the items returned by the previous request.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DeregisterImage.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeFlowLogsResult": { + "com.amazonaws.ec2#DeregisterImageResult": { "type": "structure", "members": { - "FlowLogs": { - "target": "com.amazonaws.ec2#FlowLogSet", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "FlowLogSet", - "smithy.api#documentation": "

Information about the flow logs.

", - "smithy.api#xmlName": "flowLogSet" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "DeleteSnapshotResults": { + "target": "com.amazonaws.ec2#DeleteSnapshotResultSet", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to request the next page of items. This value is null when there are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "DeleteSnapshotResultSet", + "smithy.api#documentation": "

The deletion result for each snapshot associated with the AMI, including the snapshot ID\n and its success or error code.

", + "smithy.api#xmlName": "deleteSnapshotResultSet" } } }, @@ -30201,19 +30428,19 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeFpgaImageAttribute": { + "com.amazonaws.ec2#DeregisterInstanceEventNotificationAttributes": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeFpgaImageAttributeRequest" + "target": "com.amazonaws.ec2#DeregisterInstanceEventNotificationAttributesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeFpgaImageAttributeResult" + "target": "com.amazonaws.ec2#DeregisterInstanceEventNotificationAttributesResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified attribute of the specified Amazon FPGA Image (AFI).

" + "smithy.api#documentation": "

Deregisters tag keys to prevent tags that have the specified tag keys from being\n included in scheduled event notifications for resources in the Region.

" } }, - "com.amazonaws.ec2#DescribeFpgaImageAttributeRequest": { + "com.amazonaws.ec2#DeregisterInstanceEventNotificationAttributesRequest": { "type": "structure", "members": { "DryRun": { @@ -30222,19 +30449,11 @@ "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "FpgaImageId": { - "target": "com.amazonaws.ec2#FpgaImageId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the AFI.

", - "smithy.api#required": {} - } - }, - "Attribute": { - "target": "com.amazonaws.ec2#FpgaImageAttributeName", + "InstanceTagAttribute": { + "target": "com.amazonaws.ec2#DeregisterInstanceTagAttributeRequest", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The AFI attribute.

", + "smithy.api#documentation": "

Information about the tag keys to deregister.

", "smithy.api#required": {} } } @@ -30243,15 +30462,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeFpgaImageAttributeResult": { + "com.amazonaws.ec2#DeregisterInstanceEventNotificationAttributesResult": { "type": "structure", "members": { - "FpgaImageAttribute": { - "target": "com.amazonaws.ec2#FpgaImageAttribute", + "InstanceTagAttribute": { + "target": "com.amazonaws.ec2#InstanceTagNotificationAttribute", "traits": { - "aws.protocols#ec2QueryName": "FpgaImageAttribute", - "smithy.api#documentation": "

Information about the attribute.

", - "smithy.api#xmlName": "fpgaImageAttribute" + "aws.protocols#ec2QueryName": "InstanceTagAttribute", + "smithy.api#documentation": "

The resulting set of tag keys.

", + "smithy.api#xmlName": "instanceTagAttribute" } } }, @@ -30259,159 +30478,64 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeFpgaImages": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DescribeFpgaImagesRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DescribeFpgaImagesResult" - }, - "traits": { - "smithy.api#documentation": "

Describes the Amazon FPGA Images (AFIs) available to you. These include public AFIs,\n\t\t\tprivate AFIs that you own, and AFIs owned by other Amazon Web Services accounts for which you have load\n\t\t\tpermissions.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "FpgaImages", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeFpgaImagesMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#DescribeFpgaImagesRequest": { + "com.amazonaws.ec2#DeregisterInstanceTagAttributeRequest": { "type": "structure", "members": { - "DryRun": { + "IncludeAllTagsOfInstance": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "FpgaImageIds": { - "target": "com.amazonaws.ec2#FpgaImageIdList", - "traits": { - "smithy.api#documentation": "

The AFI IDs.

", - "smithy.api#xmlName": "FpgaImageId" - } - }, - "Owners": { - "target": "com.amazonaws.ec2#OwnerStringList", - "traits": { - "smithy.api#documentation": "

Filters the AFI by owner. Specify an Amazon Web Services account ID, self \n\t\t\t(owner is the sender of the request), or an Amazon Web Services owner alias (valid values are \n\t\t\tamazon | aws-marketplace).

", - "smithy.api#xmlName": "Owner" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", - "traits": { - "smithy.api#documentation": "

The token to retrieve the next page of results.

" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeFpgaImagesMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return in a single call.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DescribeFpgaImagesResult": { - "type": "structure", - "members": { - "FpgaImages": { - "target": "com.amazonaws.ec2#FpgaImageList", - "traits": { - "aws.protocols#ec2QueryName": "FpgaImageSet", - "smithy.api#documentation": "

Information about the FPGA images.

", - "smithy.api#xmlName": "fpgaImageSet" + "smithy.api#documentation": "

Indicates whether to deregister all tag keys in the current Region. Specify\n false to deregister all tag keys.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "InstanceTagKeys": { + "target": "com.amazonaws.ec2#InstanceTagKeySet", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#documentation": "

Information about the tag keys to deregister.

", + "smithy.api#xmlName": "InstanceTagKey" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Information about the tag keys to deregister for the current Region. You can either\n specify individual tag keys or deregister all tag keys in the current Region. You must\n specify either IncludeAllTagsOfInstance or InstanceTagKeys in the\n request

" } }, - "com.amazonaws.ec2#DescribeHostReservationOfferings": { + "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupMembers": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeHostReservationOfferingsRequest" + "target": "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupMembersRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeHostReservationOfferingsResult" + "target": "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupMembersResult" }, "traits": { - "smithy.api#documentation": "

Describes the Dedicated Host reservations that are available to purchase.

\n

The results describe all of the Dedicated Host reservation offerings, including\n offerings that might not match the instance family and Region of your Dedicated Hosts.\n When purchasing an offering, ensure that the instance family and Region of the offering\n matches that of the Dedicated Hosts with which it is to be associated. For more\n information about supported instance types, see Dedicated Hosts\n in the Amazon EC2 User Guide.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "OfferingSet", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Deregisters the specified members (network interfaces) from the transit gateway multicast group.

" } }, - "com.amazonaws.ec2#DescribeHostReservationOfferingsRequest": { + "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupMembersRequest": { "type": "structure", "members": { - "Filter": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

The filters.

\n " - } - }, - "MaxDuration": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

This is the maximum duration of the reservation to purchase, specified in seconds.\n Reservations are available in one-year and three-year terms. The number of seconds\n specified must be the number of seconds in a year (365x24x60x60) times one of the\n supported durations (1 or 3). For example, specify 94608000 for three years.

" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeHostReservationsMaxResults", + "TransitGatewayMulticastDomainId": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainId", "traits": { - "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.

" + "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

" } }, - "MinDuration": { - "target": "com.amazonaws.ec2#Integer", + "GroupIpAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

This is the minimum duration of the reservation you'd like to purchase, specified in\n seconds. Reservations are available in one-year and three-year terms. The number of\n seconds specified must be the number of seconds in a year (365x24x60x60) times one of\n the supported durations (1 or 3). For example, specify 31536000 for one year.

" + "smithy.api#documentation": "

The IP address assigned to the transit gateway multicast group.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "NetworkInterfaceIds": { + "target": "com.amazonaws.ec2#TransitGatewayNetworkInterfaceIdList", "traits": { - "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" + "smithy.api#documentation": "

The IDs of the group members' network interfaces.

" } }, - "OfferingId": { - "target": "com.amazonaws.ec2#OfferingId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The ID of the reservation offering.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -30419,23 +30543,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeHostReservationOfferingsResult": { + "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupMembersResult": { "type": "structure", "members": { - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" - } - }, - "OfferingSet": { - "target": "com.amazonaws.ec2#HostOfferingSet", + "DeregisteredMulticastGroupMembers": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastDeregisteredGroupMembers", "traits": { - "aws.protocols#ec2QueryName": "OfferingSet", - "smithy.api#documentation": "

Information about the offerings.

", - "smithy.api#xmlName": "offeringSet" + "aws.protocols#ec2QueryName": "DeregisteredMulticastGroupMembers", + "smithy.api#documentation": "

Information about the deregistered members.

", + "smithy.api#xmlName": "deregisteredMulticastGroupMembers" } } }, @@ -30443,58 +30559,43 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeHostReservations": { + "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupSources": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeHostReservationsRequest" + "target": "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupSourcesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeHostReservationsResult" + "target": "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupSourcesResult" }, "traits": { - "smithy.api#documentation": "

Describes reservations that are associated with Dedicated Hosts in your\n account.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "HostReservationSet", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeHostReservationsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 500 - } + "smithy.api#documentation": "

Deregisters the specified sources (network interfaces) from the transit gateway multicast group.

" } }, - "com.amazonaws.ec2#DescribeHostReservationsRequest": { + "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupSourcesRequest": { "type": "structure", "members": { - "Filter": { - "target": "com.amazonaws.ec2#FilterList", + "TransitGatewayMulticastDomainId": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainId", "traits": { - "smithy.api#documentation": "

The filters.

\n " + "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

" } }, - "HostReservationIdSet": { - "target": "com.amazonaws.ec2#HostReservationIdSet", + "GroupIpAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The host reservation IDs.

" + "smithy.api#documentation": "

The IP address assigned to the transit gateway multicast group.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "NetworkInterfaceIds": { + "target": "com.amazonaws.ec2#TransitGatewayNetworkInterfaceIdList", "traits": { - "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.

" + "smithy.api#documentation": "

The IDs of the group sources' network interfaces.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -30502,23 +30603,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeHostReservationsResult": { + "com.amazonaws.ec2#DeregisterTransitGatewayMulticastGroupSourcesResult": { "type": "structure", "members": { - "HostReservationSet": { - "target": "com.amazonaws.ec2#HostReservationSet", - "traits": { - "aws.protocols#ec2QueryName": "HostReservationSet", - "smithy.api#documentation": "

Details about the reservation's configuration.

", - "smithy.api#xmlName": "hostReservationSet" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "DeregisteredMulticastGroupSources": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastDeregisteredGroupSources", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "DeregisteredMulticastGroupSources", + "smithy.api#documentation": "

Information about the deregistered group sources.

", + "smithy.api#xmlName": "deregisteredMulticastGroupSources" } } }, @@ -30526,57 +30619,196 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeHosts": { + "com.amazonaws.ec2#DescribeAccountAttributes": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeHostsRequest" + "target": "com.amazonaws.ec2#DescribeAccountAttributesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeHostsResult" + "target": "com.amazonaws.ec2#DescribeAccountAttributesResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified Dedicated Hosts or all your Dedicated Hosts.

\n

The results describe only the Dedicated Hosts in the Region you're currently using.\n All listed instances consume capacity on your Dedicated Host. Dedicated Hosts that have\n recently been released are listed with the state released.

", + "smithy.api#documentation": "

Describes attributes of your Amazon Web Services account. The following are the supported account attributes:

\n \n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", + "smithy.api#examples": [ + { + "title": "To describe a single attribute for your AWS account", + "documentation": "This example describes the supported-platforms attribute for your AWS account.", + "input": { + "AttributeNames": [ + "supported-platforms" + ] + }, + "output": { + "AccountAttributes": [ + { + "AttributeName": "supported-platforms", + "AttributeValues": [ + { + "AttributeValue": "EC2" + }, + { + "AttributeValue": "VPC" + } + ] + } + ] + } + }, + { + "title": "To describe all attributes for your AWS account", + "documentation": "This example describes the attributes for your AWS account.", + "output": { + "AccountAttributes": [ + { + "AttributeName": "supported-platforms", + "AttributeValues": [ + { + "AttributeValue": "EC2" + }, + { + "AttributeValue": "VPC" + } + ] + }, + { + "AttributeName": "vpc-max-security-groups-per-interface", + "AttributeValues": [ + { + "AttributeValue": "5" + } + ] + }, + { + "AttributeName": "max-elastic-ips", + "AttributeValues": [ + { + "AttributeValue": "5" + } + ] + }, + { + "AttributeName": "max-instances", + "AttributeValues": [ + { + "AttributeValue": "20" + } + ] + }, + { + "AttributeName": "vpc-max-elastic-ips", + "AttributeValues": [ + { + "AttributeValue": "5" + } + ] + }, + { + "AttributeName": "default-vpc", + "AttributeValues": [ + { + "AttributeValue": "none" + } + ] + } + ] + } + } + ] + } + }, + "com.amazonaws.ec2#DescribeAccountAttributesRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "AttributeNames": { + "target": "com.amazonaws.ec2#AccountAttributeNameStringList", + "traits": { + "aws.protocols#ec2QueryName": "AttributeName", + "smithy.api#documentation": "

The account attribute names.

", + "smithy.api#xmlName": "attributeName" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DescribeAccountAttributesResult": { + "type": "structure", + "members": { + "AccountAttributes": { + "target": "com.amazonaws.ec2#AccountAttributeList", + "traits": { + "aws.protocols#ec2QueryName": "AccountAttributeSet", + "smithy.api#documentation": "

Information about the account attributes.

", + "smithy.api#xmlName": "accountAttributeSet" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DescribeAddressTransfers": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeAddressTransfersRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeAddressTransfersResult" + }, + "traits": { + "smithy.api#documentation": "

Describes an Elastic IP address transfer. For more information, see Transfer Elastic IP addresses in the Amazon VPC User Guide.

\n

When you transfer an Elastic IP address, there is a two-step handshake\n between the source and transfer Amazon Web Services accounts. When the source account starts the transfer,\n the transfer account has seven days to accept the Elastic IP address\n transfer. During those seven days, the source account can view the\n pending transfer by using this action. After seven days, the\n transfer expires and ownership of the Elastic IP\n address returns to the source\n account. Accepted transfers are visible to the source account for 14 days\n after the transfers have been accepted.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "Hosts", + "items": "AddressTransfers", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeHostsRequest": { + "com.amazonaws.ec2#DescribeAddressTransfersMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeAddressTransfersRequest": { "type": "structure", "members": { - "Filter": { - "target": "com.amazonaws.ec2#FilterList", + "AllocationIds": { + "target": "com.amazonaws.ec2#AllocationIdList", "traits": { - "aws.protocols#ec2QueryName": "Filter", - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "filter" + "smithy.api#documentation": "

The allocation IDs of Elastic IP addresses.

", + "smithy.api#xmlName": "AllocationId" } }, - "HostIds": { - "target": "com.amazonaws.ec2#RequestHostIdList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "HostId", - "smithy.api#documentation": "

The IDs of the Dedicated Hosts. The IDs are used for targeted instance\n launches.

", - "smithy.api#xmlName": "hostId" + "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

" } }, "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "target": "com.amazonaws.ec2#DescribeAddressTransfersMaxResults", "traits": { - "aws.protocols#ec2QueryName": "MaxResults", - "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.

\n

You cannot specify this parameter and the host IDs parameter in the same\n request.

", - "smithy.api#xmlName": "maxResults" + "smithy.api#documentation": "

The maximum number of address transfers to return in one page of results.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -30584,22 +30816,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeHostsResult": { + "com.amazonaws.ec2#DescribeAddressTransfersResult": { "type": "structure", "members": { - "Hosts": { - "target": "com.amazonaws.ec2#HostList", + "AddressTransfers": { + "target": "com.amazonaws.ec2#AddressTransferList", "traits": { - "aws.protocols#ec2QueryName": "HostSet", - "smithy.api#documentation": "

Information about the Dedicated Hosts.

", - "smithy.api#xmlName": "hostSet" + "aws.protocols#ec2QueryName": "AddressTransferSet", + "smithy.api#documentation": "

The Elastic IP address transfer.

", + "smithy.api#xmlName": "addressTransferSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

", "smithy.api#xmlName": "nextToken" } } @@ -30608,84 +30840,93 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeIamInstanceProfileAssociations": { + "com.amazonaws.ec2#DescribeAddresses": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeIamInstanceProfileAssociationsRequest" + "target": "com.amazonaws.ec2#DescribeAddressesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeIamInstanceProfileAssociationsResult" + "target": "com.amazonaws.ec2#DescribeAddressesResult" }, "traits": { - "smithy.api#documentation": "

Describes your IAM instance profile associations.

", + "smithy.api#documentation": "

Describes the specified Elastic IP addresses or all of your Elastic IP addresses.

", "smithy.api#examples": [ { - "title": "To describe an IAM instance profile association", - "documentation": "This example describes the specified IAM instance profile association.", - "input": { - "AssociationIds": [ - "iip-assoc-0db249b1f25fa24b8" - ] - }, + "title": "To describe your Elastic IP addresses", + "documentation": "This example describes your Elastic IP addresses.", "output": { - "IamInstanceProfileAssociations": [ + "Addresses": [ { - "InstanceId": "i-09eb09efa73ec1dee", - "State": "associated", - "AssociationId": "iip-assoc-0db249b1f25fa24b8", - "IamInstanceProfile": { - "Id": "AIPAJVQN4F5WVLGCJDRGM", - "Arn": "arn:aws:iam::123456789012:instance-profile/admin-role" - } + "InstanceId": "i-1234567890abcdef0", + "PublicIp": "198.51.100.0", + "Domain": "standard" + }, + { + "Domain": "vpc", + "InstanceId": "i-1234567890abcdef0", + "NetworkInterfaceId": "eni-12345678", + "AssociationId": "eipassoc-12345678", + "NetworkInterfaceOwnerId": "123456789012", + "PublicIp": "203.0.113.0", + "AllocationId": "eipalloc-12345678", + "PrivateIpAddress": "10.0.1.241" } ] } } - ], + ] + } + }, + "com.amazonaws.ec2#DescribeAddressesAttribute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeAddressesAttributeRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeAddressesAttributeResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the attributes of the specified Elastic IP addresses. For requirements, see Using reverse DNS for email applications.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "IamInstanceProfileAssociations", + "items": "Addresses", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeIamInstanceProfileAssociationsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#DescribeIamInstanceProfileAssociationsRequest": { + "com.amazonaws.ec2#DescribeAddressesAttributeRequest": { "type": "structure", "members": { - "AssociationIds": { - "target": "com.amazonaws.ec2#AssociationIdList", + "AllocationIds": { + "target": "com.amazonaws.ec2#AllocationIds", "traits": { - "smithy.api#documentation": "

The IAM instance profile associations.

", - "smithy.api#xmlName": "AssociationId" + "smithy.api#documentation": "

[EC2-VPC] The allocation IDs.

", + "smithy.api#xmlName": "AllocationId" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "Attribute": { + "target": "com.amazonaws.ec2#AddressAttributeName", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The attribute of the IP address.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" } }, "MaxResults": { - "target": "com.amazonaws.ec2#DescribeIamInstanceProfileAssociationsMaxResults", + "target": "com.amazonaws.ec2#AddressMaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of\n items, make another request with the token returned in the output. For more information, \n see Pagination.

" + "smithy.api#documentation": "

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -30693,22 +30934,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeIamInstanceProfileAssociationsResult": { + "com.amazonaws.ec2#DescribeAddressesAttributeResult": { "type": "structure", "members": { - "IamInstanceProfileAssociations": { - "target": "com.amazonaws.ec2#IamInstanceProfileAssociationSet", + "Addresses": { + "target": "com.amazonaws.ec2#AddressSet", "traits": { - "aws.protocols#ec2QueryName": "IamInstanceProfileAssociationSet", - "smithy.api#documentation": "

Information about the IAM instance profile associations.

", - "smithy.api#xmlName": "iamInstanceProfileAssociationSet" + "aws.protocols#ec2QueryName": "AddressSet", + "smithy.api#documentation": "

Information about the IP addresses.

", + "smithy.api#xmlName": "addressSet" } }, "NextToken": { "target": "com.amazonaws.ec2#NextToken", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -30717,25 +30958,36 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeIdFormat": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DescribeIdFormatRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DescribeIdFormatResult" - }, - "traits": { - "smithy.api#documentation": "

Describes the ID format settings for your resources on a per-Region basis, for example, to view which resource types are enabled for longer IDs. This request only returns information about resource types whose ID formats can be modified; it does not return information about other resource types.

\n

The following resource types support longer IDs: bundle |\n conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | instance | internet-gateway |\n network-acl | network-acl-association |\n network-interface | network-interface-attachment |\n prefix-list | reservation | route-table |\n route-table-association | security-group |\n snapshot | subnet |\n subnet-cidr-block-association | volume | vpc\n | vpc-cidr-block-association | vpc-endpoint |\n vpc-peering-connection | vpn-connection | vpn-gateway.

\n

These settings apply to the IAM user who makes the request; they do not apply to the entire\n Amazon Web Services account. By default, an IAM user defaults to the same settings as the root user, unless\n they explicitly override the settings by running the ModifyIdFormat command. Resources\n created with longer IDs are visible to all IAM users, regardless of these settings and\n provided that they have permission to use the relevant Describe command for the\n resource type.

" - } - }, - "com.amazonaws.ec2#DescribeIdFormatRequest": { + "com.amazonaws.ec2#DescribeAddressesRequest": { "type": "structure", "members": { - "Resource": { - "target": "com.amazonaws.ec2#String", + "PublicIps": { + "target": "com.amazonaws.ec2#PublicIpStringList", "traits": { - "smithy.api#documentation": "

The type of resource: bundle |\n conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | instance | internet-gateway |\n network-acl | network-acl-association |\n network-interface | network-interface-attachment |\n prefix-list | reservation | route-table |\n route-table-association | security-group |\n snapshot | subnet |\n subnet-cidr-block-association | volume | vpc\n | vpc-cidr-block-association | vpc-endpoint |\n vpc-peering-connection | vpn-connection | vpn-gateway\n

" + "smithy.api#documentation": "

One or more Elastic IP addresses.

\n

Default: Describes all your Elastic IP addresses.

", + "smithy.api#xmlName": "PublicIp" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

\n ", + "smithy.api#xmlName": "Filter" + } + }, + "AllocationIds": { + "target": "com.amazonaws.ec2#AllocationIdList", + "traits": { + "smithy.api#documentation": "

Information about the allocation IDs.

", + "smithy.api#xmlName": "AllocationId" } } }, @@ -30743,15 +30995,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeIdFormatResult": { + "com.amazonaws.ec2#DescribeAddressesResult": { "type": "structure", "members": { - "Statuses": { - "target": "com.amazonaws.ec2#IdFormatList", + "Addresses": { + "target": "com.amazonaws.ec2#AddressList", "traits": { - "aws.protocols#ec2QueryName": "StatusSet", - "smithy.api#documentation": "

Information about the ID format for the resource.

", - "smithy.api#xmlName": "statusSet" + "aws.protocols#ec2QueryName": "AddressesSet", + "smithy.api#documentation": "

Information about the Elastic IP addresses.

", + "smithy.api#xmlName": "addressesSet" } } }, @@ -30759,37 +31011,25 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeIdentityIdFormat": { + "com.amazonaws.ec2#DescribeAggregateIdFormat": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeIdentityIdFormatRequest" + "target": "com.amazonaws.ec2#DescribeAggregateIdFormatRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeIdentityIdFormatResult" + "target": "com.amazonaws.ec2#DescribeAggregateIdFormatResult" }, "traits": { - "smithy.api#documentation": "

Describes the ID format settings for resources for the specified IAM user, IAM role, or root\n user. For example, you can view the resource types that are enabled for longer IDs. This request only\n returns information about resource types whose ID formats can be modified; it does not return\n information about other resource types. For more information, see Resource IDs in the Amazon Elastic Compute Cloud User Guide.

\n

The following resource types support longer IDs: bundle |\n conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | instance | internet-gateway |\n network-acl | network-acl-association |\n network-interface | network-interface-attachment |\n prefix-list | reservation | route-table |\n route-table-association | security-group |\n snapshot | subnet |\n subnet-cidr-block-association | volume | vpc\n | vpc-cidr-block-association | vpc-endpoint |\n vpc-peering-connection | vpn-connection | vpn-gateway.

\n

These settings apply to the principal specified in the request. They do not apply to the\n principal that makes the request.

" + "smithy.api#documentation": "

Describes the longer ID format settings for all resource types in a specific\n Region. This request is useful for performing a quick audit to determine whether a\n specific Region is fully opted in for longer IDs (17-character IDs).

\n

This request only returns information about resource types that support longer IDs.

\n

The following resource types support longer IDs: bundle |\n conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | instance | internet-gateway |\n network-acl | network-acl-association |\n network-interface | network-interface-attachment |\n prefix-list | reservation | route-table |\n route-table-association | security-group |\n snapshot | subnet |\n subnet-cidr-block-association | volume | vpc |\n vpc-cidr-block-association | vpc-endpoint |\n vpc-peering-connection | vpn-connection | vpn-gateway.

" } }, - "com.amazonaws.ec2#DescribeIdentityIdFormatRequest": { + "com.amazonaws.ec2#DescribeAggregateIdFormatRequest": { "type": "structure", "members": { - "PrincipalArn": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "PrincipalArn", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ARN of the principal, which can be an IAM role, IAM user, or the root user.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "principalArn" - } - }, - "Resource": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Resource", - "smithy.api#documentation": "

The type of resource: bundle |\n conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | instance | internet-gateway |\n network-acl | network-acl-association |\n network-interface | network-interface-attachment |\n prefix-list | reservation | route-table |\n route-table-association | security-group |\n snapshot | subnet |\n subnet-cidr-block-association | volume | vpc\n | vpc-cidr-block-association | vpc-endpoint |\n vpc-peering-connection | vpn-connection | vpn-gateway\n

", - "smithy.api#xmlName": "resource" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -30797,14 +31037,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeIdentityIdFormatResult": { + "com.amazonaws.ec2#DescribeAggregateIdFormatResult": { "type": "structure", "members": { + "UseLongIdsAggregated": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "UseLongIdsAggregated", + "smithy.api#documentation": "

Indicates whether all resource types in the Region are configured to use longer IDs.\n This value is only true if all users are configured to use longer IDs for\n all resources types in the Region.

", + "smithy.api#xmlName": "useLongIdsAggregated" + } + }, "Statuses": { "target": "com.amazonaws.ec2#IdFormatList", "traits": { "aws.protocols#ec2QueryName": "StatusSet", - "smithy.api#documentation": "

Information about the ID format for the resources.

", + "smithy.api#documentation": "

Information about each resource's ID format.

", "smithy.api#xmlName": "statusSet" } } @@ -30813,29 +31061,45 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeImageAttribute": { + "com.amazonaws.ec2#DescribeAvailabilityZones": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeImageAttributeRequest" + "target": "com.amazonaws.ec2#DescribeAvailabilityZonesRequest" }, "output": { - "target": "com.amazonaws.ec2#ImageAttribute" + "target": "com.amazonaws.ec2#DescribeAvailabilityZonesResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified attribute of the specified AMI. You can specify only one attribute at a time.

\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", + "smithy.api#documentation": "

Describes the Availability Zones, Local Zones, and Wavelength Zones that are available to\n you.

\n

For more information about Availability Zones, Local Zones, and Wavelength Zones, see\n Regions and zones \n in the Amazon EC2 User Guide.

\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", "smithy.api#examples": [ { - "title": "To describe the launch permissions for an AMI", - "documentation": "This example describes the launch permissions for the specified AMI.", - "input": { - "Attribute": "launchPermission", - "ImageId": "ami-5731123e" - }, + "title": "To describe your Availability Zones", + "documentation": "This example describes the Availability Zones that are available to you. The response includes Availability Zones only for the current region.", "output": { - "ImageId": "ami-5731123e", - "LaunchPermissions": [ + "AvailabilityZones": [ { - "UserId": "123456789012" + "State": "available", + "RegionName": "us-east-1", + "Messages": [], + "ZoneName": "us-east-1b" + }, + { + "State": "available", + "RegionName": "us-east-1", + "Messages": [], + "ZoneName": "us-east-1c" + }, + { + "State": "available", + "RegionName": "us-east-1", + "Messages": [], + "ZoneName": "us-east-1d" + }, + { + "State": "available", + "RegionName": "us-east-1", + "Messages": [], + "ZoneName": "us-east-1e" } ] } @@ -30843,109 +31107,159 @@ ] } }, - "com.amazonaws.ec2#DescribeImageAttributeRequest": { + "com.amazonaws.ec2#DescribeAvailabilityZonesRequest": { "type": "structure", "members": { - "Attribute": { - "target": "com.amazonaws.ec2#ImageAttributeName", + "ZoneNames": { + "target": "com.amazonaws.ec2#ZoneNameStringList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The AMI attribute.

\n

\n Note: The blockDeviceMapping attribute is deprecated. \n \t Using this attribute returns the Client.AuthFailure error. To get information about \n \t the block device mappings for an AMI, use the DescribeImages action.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The names of the Availability Zones, Local Zones, and Wavelength Zones.

", + "smithy.api#xmlName": "ZoneName" } }, - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", + "ZoneIds": { + "target": "com.amazonaws.ec2#ZoneIdStringList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the AMI.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The IDs of the Availability Zones, Local Zones, and Wavelength Zones.

", + "smithy.api#xmlName": "ZoneId" + } + }, + "AllAvailabilityZones": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Include all Availability Zones, Local Zones, and Wavelength Zones regardless of your\n opt-in status.

\n

If you do not use this parameter, the results include only the zones for the Regions where you have chosen the option to opt in.

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" + } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeImageAttribute.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeImages": { + "com.amazonaws.ec2#DescribeAvailabilityZonesResult": { + "type": "structure", + "members": { + "AvailabilityZones": { + "target": "com.amazonaws.ec2#AvailabilityZoneList", + "traits": { + "aws.protocols#ec2QueryName": "AvailabilityZoneInfo", + "smithy.api#documentation": "

Information about the Availability Zones, Local Zones, and Wavelength Zones.

", + "smithy.api#xmlName": "availabilityZoneInfo" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DescribeAwsNetworkPerformanceMetricSubscriptions": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeImagesRequest" + "target": "com.amazonaws.ec2#DescribeAwsNetworkPerformanceMetricSubscriptionsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeImagesResult" + "target": "com.amazonaws.ec2#DescribeAwsNetworkPerformanceMetricSubscriptionsResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified images (AMIs, AKIs, and ARIs) available to you or all of the images available to you.

\n

The images available to you include public images, private images that you own, and private images owned by other \n Amazon Web Services accounts for which you have explicit launch permissions.

\n

Recently deregistered images appear in the returned results for a short interval and then\n return empty results. After all instances that reference a deregistered AMI are terminated,\n specifying the ID of the image will eventually return an error indicating that the AMI ID\n cannot be found.

\n \n

We strongly recommend using only paginated requests. Unpaginated requests are\n susceptible to throttling and timeouts.

\n
\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", - "smithy.api#examples": [ - { - "title": "To describe an AMI", - "documentation": "This example describes the specified AMI.", - "input": { - "ImageIds": [ - "ami-5731123e" - ] - }, - "output": { - "Images": [ - { - "VirtualizationType": "paravirtual", - "Name": "My server", - "Hypervisor": "xen", - "ImageId": "ami-5731123e", - "RootDeviceType": "ebs", - "State": "available", - "BlockDeviceMappings": [ - { - "DeviceName": "/dev/sda1", - "Ebs": { - "DeleteOnTermination": true, - "SnapshotId": "snap-1234567890abcdef0", - "VolumeSize": 8, - "VolumeType": "standard" - } - } - ], - "Architecture": "x86_64", - "ImageLocation": "123456789012/My server", - "KernelId": "aki-88aa75e1", - "OwnerId": "123456789012", - "RootDeviceName": "/dev/sda1", - "Public": false, - "ImageType": "machine", - "Description": "An AMI for my server" - } - ] - } - } - ], + "smithy.api#documentation": "

Describes the current Infrastructure Performance metric subscriptions.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "Images", + "items": "Subscriptions", "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#DescribeAwsNetworkPerformanceMetricSubscriptionsRequest": { + "type": "structure", + "members": { + "MaxResults": { + "target": "com.amazonaws.ec2#MaxResultsParam", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n To retrieve the remaining results, make another call with the returned nextToken value.

" + } }, - "smithy.api#suppress": [ - "WaitableTraitInvalidErrorType" - ], + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters.

", + "smithy.api#xmlName": "Filter" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DescribeAwsNetworkPerformanceMetricSubscriptionsResult": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" + } + }, + "Subscriptions": { + "target": "com.amazonaws.ec2#SubscriptionList", + "traits": { + "aws.protocols#ec2QueryName": "SubscriptionSet", + "smithy.api#documentation": "

Describes the current Infrastructure Performance subscriptions.

", + "smithy.api#xmlName": "subscriptionSet" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DescribeBundleTasks": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeBundleTasksRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeBundleTasksResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the specified bundle tasks or all of your bundle tasks.

\n \n

Completed bundle tasks are listed for only a limited time. If your bundle task is no\n longer in the list, you can still register an AMI from it. Just use\n RegisterImage with the Amazon S3 bucket name and image manifest name you provided\n to the bundle task.

\n
\n \n

The order of the elements in the response, including those within nested structures,\n might vary. Applications should not assume the elements appear in a particular order.

\n
", "smithy.waiters#waitable": { - "ImageAvailable": { + "BundleTaskComplete": { "acceptors": [ { "state": "success", "matcher": { "output": { - "path": "Images[].State", - "expected": "available", + "path": "BundleTasks[].State", + "expected": "complete", "comparator": "allStringEquals" } } @@ -30954,7 +31268,7 @@ "state": "failure", "matcher": { "output": { - "path": "Images[].State", + "path": "BundleTasks[].State", "expected": "failed", "comparator": "anyStringEquals" } @@ -30962,72 +31276,18 @@ } ], "minDelay": 15 - }, - "ImageExists": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "length(Images[]) > `0`", - "expected": "true", - "comparator": "booleanEquals" - } - } - }, - { - "state": "retry", - "matcher": { - "errorType": "InvalidAMIID.NotFound" - } - } - ], - "minDelay": 15 } } } }, - "com.amazonaws.ec2#DescribeImagesRequest": { + "com.amazonaws.ec2#DescribeBundleTasksRequest": { "type": "structure", "members": { - "ExecutableUsers": { - "target": "com.amazonaws.ec2#ExecutableByStringList", - "traits": { - "smithy.api#documentation": "

Scopes the images by users with explicit launch permissions. \n Specify an Amazon Web Services account ID, self (the sender of the request),\n\t\t\t\tor all (public AMIs).

\n ", - "smithy.api#xmlName": "ExecutableBy" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" - } - }, - "ImageIds": { - "target": "com.amazonaws.ec2#ImageIdStringList", - "traits": { - "smithy.api#documentation": "

The image IDs.

\n

Default: Describes all images available to you.

", - "smithy.api#xmlName": "ImageId" - } - }, - "Owners": { - "target": "com.amazonaws.ec2#OwnerStringList", - "traits": { - "smithy.api#documentation": "

Scopes the results to images with the specified owners. You can specify a combination of \n Amazon Web Services account IDs, self, amazon, and aws-marketplace. \n If you omit this parameter, the results include all images for which you have launch permissions, \n regardless of ownership.

", - "smithy.api#xmlName": "Owner" - } - }, - "IncludeDeprecated": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Specifies whether to include deprecated AMIs.

\n

Default: No deprecated AMIs are included in the response.

\n \n

If you are the AMI owner, all deprecated AMIs appear in the response regardless of what\n you specify for this parameter.

\n
" - } - }, - "IncludeDisabled": { - "target": "com.amazonaws.ec2#Boolean", + "BundleIds": { + "target": "com.amazonaws.ec2#BundleIdStringList", "traits": { - "smithy.api#documentation": "

Specifies whether to include disabled AMIs.

\n

Default: No disabled AMIs are included in the response.

" + "smithy.api#documentation": "

The bundle task IDs.

\n

Default: Describes all your bundle tasks.

", + "smithy.api#xmlName": "BundleId" } }, "DryRun": { @@ -31038,16 +31298,11 @@ "smithy.api#xmlName": "dryRun" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, @@ -31055,23 +31310,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeImagesResult": { + "com.amazonaws.ec2#DescribeBundleTasksResult": { "type": "structure", "members": { - "Images": { - "target": "com.amazonaws.ec2#ImageList", - "traits": { - "aws.protocols#ec2QueryName": "ImagesSet", - "smithy.api#documentation": "

Information about the images.

", - "smithy.api#xmlName": "imagesSet" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "BundleTasks": { + "target": "com.amazonaws.ec2#BundleTaskList", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "BundleInstanceTasksSet", + "smithy.api#documentation": "

Information about the bundle tasks.

", + "smithy.api#xmlName": "bundleInstanceTasksSet" } } }, @@ -31079,25 +31326,34 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeImportImageTasks": { + "com.amazonaws.ec2#DescribeByoipCidrs": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeImportImageTasksRequest" + "target": "com.amazonaws.ec2#DescribeByoipCidrsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeImportImageTasksResult" + "target": "com.amazonaws.ec2#DescribeByoipCidrsResult" }, "traits": { - "smithy.api#documentation": "

Displays details about an import virtual machine or import snapshot tasks that are already created.

", + "smithy.api#documentation": "

Describes the IP address ranges that were provisioned for use with Amazon Web Services resources\n through through bring your own IP addresses (BYOIP).

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "ImportImageTasks", + "items": "ByoipCidrs", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeImportImageTasksRequest": { + "com.amazonaws.ec2#DescribeByoipCidrsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.ec2#DescribeByoipCidrsRequest": { "type": "structure", "members": { "DryRun": { @@ -31106,30 +31362,18 @@ "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

Filter tasks using the task-state filter and one of the following values: active,\n completed, deleting, or deleted.

", - "smithy.api#xmlName": "Filters" - } - }, - "ImportTaskIds": { - "target": "com.amazonaws.ec2#ImportTaskIdList", - "traits": { - "smithy.api#documentation": "

The IDs of the import image tasks.

", - "smithy.api#xmlName": "ImportTaskId" - } - }, "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "target": "com.amazonaws.ec2#DescribeByoipCidrsMaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of results to return in a single call.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

", + "smithy.api#required": {} } }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#documentation": "

A token that indicates the next page of results.

" + "smithy.api#documentation": "

The token for the next page of results.

" } } }, @@ -31137,22 +31381,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeImportImageTasksResult": { + "com.amazonaws.ec2#DescribeByoipCidrsResult": { "type": "structure", "members": { - "ImportImageTasks": { - "target": "com.amazonaws.ec2#ImportImageTaskList", + "ByoipCidrs": { + "target": "com.amazonaws.ec2#ByoipCidrSet", "traits": { - "aws.protocols#ec2QueryName": "ImportImageTaskSet", - "smithy.api#documentation": "

A list of zero or more import image tasks that are currently active or were completed or canceled in the\n previous 7 days.

", - "smithy.api#xmlName": "importImageTaskSet" + "aws.protocols#ec2QueryName": "ByoipCidrSet", + "smithy.api#documentation": "

Information about your address ranges.

", + "smithy.api#xmlName": "byoipCidrSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to get the next page of results. This value is null when there are no more results\n to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -31161,84 +31405,57 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeImportSnapshotTasks": { + "com.amazonaws.ec2#DescribeCapacityBlockExtensionHistory": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeImportSnapshotTasksRequest" + "target": "com.amazonaws.ec2#DescribeCapacityBlockExtensionHistoryRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeImportSnapshotTasksResult" + "target": "com.amazonaws.ec2#DescribeCapacityBlockExtensionHistoryResult" }, "traits": { - "smithy.api#documentation": "

Describes your import snapshot tasks.

", + "smithy.api#documentation": "

Describes the events for the specified Capacity Block extension during the specified\n\t\t\ttime.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "ImportSnapshotTasks", + "items": "CapacityBlockExtensions", "pageSize": "MaxResults" - }, - "smithy.waiters#waitable": { - "SnapshotImported": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "ImportSnapshotTasks[].SnapshotTaskDetail.Status", - "expected": "completed", - "comparator": "allStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "ImportSnapshotTasks[].SnapshotTaskDetail.Status", - "expected": "error", - "comparator": "anyStringEquals" - } - } - } - ], - "minDelay": 15 - } } } }, - "com.amazonaws.ec2#DescribeImportSnapshotTasksRequest": { + "com.amazonaws.ec2#DescribeCapacityBlockExtensionHistoryRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "CapacityReservationIds": { + "target": "com.amazonaws.ec2#CapacityReservationIdSet", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The IDs of Capacity Block reservations that you want to display the history\n\t\t\tfor.

", + "smithy.api#xmlName": "CapacityReservationId" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The filters.

", - "smithy.api#xmlName": "Filters" + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" } }, - "ImportTaskIds": { - "target": "com.amazonaws.ec2#ImportSnapshotTaskIdList", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeFutureCapacityMaxResults", "traits": { - "smithy.api#documentation": "

A list of import snapshot task IDs.

", - "smithy.api#xmlName": "ImportTaskId" + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, \n see Pagination.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining results, make another call\n with the returned NextToken value.

" + "smithy.api#documentation": "

One or more filters

\n ", + "smithy.api#xmlName": "Filter" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

A token that indicates the next page of results.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -31246,22 +31463,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeImportSnapshotTasksResult": { + "com.amazonaws.ec2#DescribeCapacityBlockExtensionHistoryResult": { "type": "structure", "members": { - "ImportSnapshotTasks": { - "target": "com.amazonaws.ec2#ImportSnapshotTaskList", + "CapacityBlockExtensions": { + "target": "com.amazonaws.ec2#CapacityBlockExtensionSet", "traits": { - "aws.protocols#ec2QueryName": "ImportSnapshotTaskSet", - "smithy.api#documentation": "

A list of zero or more import snapshot tasks that are currently active or were completed or canceled in the\n previous 7 days.

", - "smithy.api#xmlName": "importSnapshotTaskSet" + "aws.protocols#ec2QueryName": "CapacityBlockExtensionSet", + "smithy.api#documentation": "

Describes one or more of your Capacity Block extensions. The results describe only the\n\t\t\tCapacity Block extensions in the Amazon Web Services Region that you're currently using.

", + "smithy.api#xmlName": "capacityBlockExtensionSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to get the next page of results. This value is null when there are no more results\n to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -31270,152 +31487,68 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeInstanceAttribute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DescribeInstanceAttributeRequest" - }, - "output": { - "target": "com.amazonaws.ec2#InstanceAttribute" - }, - "traits": { - "smithy.api#documentation": "

Describes the specified attribute of the specified instance. You can specify only one\n attribute at a time. Valid attribute values are: instanceType |\n kernel | ramdisk | userData |\n disableApiTermination | instanceInitiatedShutdownBehavior\n | rootDeviceName | blockDeviceMapping |\n productCodes | sourceDestCheck | groupSet |\n ebsOptimized | sriovNetSupport\n

", - "smithy.api#examples": [ - { - "title": "To describe the instance type", - "documentation": "This example describes the instance type of the specified instance.\n", - "input": { - "InstanceId": "i-1234567890abcdef0", - "Attribute": "instanceType" - }, - "output": { - "InstanceId": "i-1234567890abcdef0", - "InstanceType": { - "Value": "t1.micro" - } - } - }, - { - "title": "To describe the block device mapping for an instance", - "documentation": "This example describes the ``blockDeviceMapping`` attribute of the specified instance.\n", - "input": { - "InstanceId": "i-1234567890abcdef0", - "Attribute": "blockDeviceMapping" - }, - "output": { - "InstanceId": "i-1234567890abcdef0", - "BlockDeviceMappings": [ - { - "DeviceName": "/dev/sda1", - "Ebs": { - "Status": "attached", - "DeleteOnTermination": true, - "VolumeId": "vol-049df61146c4d7901", - "AttachTime": "2013-05-17T22:42:34.000Z" - } - }, - { - "DeviceName": "/dev/sdf", - "Ebs": { - "Status": "attached", - "DeleteOnTermination": false, - "VolumeId": "vol-049df61146c4d7901", - "AttachTime": "2013-09-10T23:07:00.000Z" - } - } - ] - } - } - ] - } - }, - "com.amazonaws.ec2#DescribeInstanceAttributeRequest": { - "type": "structure", - "members": { - "Attribute": { - "target": "com.amazonaws.ec2#InstanceAttributeName", - "traits": { - "aws.protocols#ec2QueryName": "Attribute", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The instance attribute.

\n

Note: The enaSupport attribute is not supported at this time.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "attribute" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" - } - }, - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", - "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "instanceId" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DescribeInstanceConnectEndpoints": { + "com.amazonaws.ec2#DescribeCapacityBlockExtensionOfferings": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeInstanceConnectEndpointsRequest" + "target": "com.amazonaws.ec2#DescribeCapacityBlockExtensionOfferingsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeInstanceConnectEndpointsResult" + "target": "com.amazonaws.ec2#DescribeCapacityBlockExtensionOfferingsResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified EC2 Instance Connect Endpoints or all EC2 Instance Connect Endpoints.

", + "smithy.api#documentation": "

Describes Capacity Block extension offerings available for purchase in the Amazon Web Services\n\t\t\tRegion that you're currently using.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "InstanceConnectEndpoints", + "items": "CapacityBlockExtensionOfferings", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeInstanceConnectEndpointsRequest": { + "com.amazonaws.ec2#DescribeCapacityBlockExtensionOfferingsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeCapacityBlockExtensionOfferingsRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#InstanceConnectEndpointMaxResults", + "CapacityBlockExtensionDurationHours": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The duration of the Capacity Block extension offering in hours.

", + "smithy.api#required": {} } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "CapacityReservationId": { + "target": "com.amazonaws.ec2#CapacityReservationId", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Capacity reservation to be extended.

", + "smithy.api#required": {} } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" } }, - "InstanceConnectEndpointIds": { - "target": "com.amazonaws.ec2#ValueStringList", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeCapacityBlockExtensionOfferingsMaxResults", "traits": { - "smithy.api#documentation": "

One or more EC2 Instance Connect Endpoint IDs.

", - "smithy.api#xmlName": "InstanceConnectEndpointId" + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, \n see Pagination.

" } } }, @@ -31423,22 +31556,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeInstanceConnectEndpointsResult": { + "com.amazonaws.ec2#DescribeCapacityBlockExtensionOfferingsResult": { "type": "structure", "members": { - "InstanceConnectEndpoints": { - "target": "com.amazonaws.ec2#InstanceConnectEndpointSet", + "CapacityBlockExtensionOfferings": { + "target": "com.amazonaws.ec2#CapacityBlockExtensionOfferingSet", "traits": { - "aws.protocols#ec2QueryName": "InstanceConnectEndpointSet", - "smithy.api#documentation": "

Information about the EC2 Instance Connect Endpoints.

", - "smithy.api#xmlName": "instanceConnectEndpointSet" + "aws.protocols#ec2QueryName": "CapacityBlockExtensionOfferingSet", + "smithy.api#documentation": "

The recommended Capacity Block extension offerings for the dates specified.

", + "smithy.api#xmlName": "capacityBlockExtensionOfferingSet" } }, "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -31447,66 +31580,96 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeInstanceCreditSpecifications": { + "com.amazonaws.ec2#DescribeCapacityBlockOfferings": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeInstanceCreditSpecificationsRequest" + "target": "com.amazonaws.ec2#DescribeCapacityBlockOfferingsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeInstanceCreditSpecificationsResult" + "target": "com.amazonaws.ec2#DescribeCapacityBlockOfferingsResult" }, "traits": { - "smithy.api#documentation": "

Describes the credit option for CPU usage of the specified burstable performance\n instances. The credit options are standard and\n unlimited.

\n

If you do not specify an instance ID, Amazon EC2 returns burstable performance\n instances with the unlimited credit option, as well as instances that were\n previously configured as T2, T3, and T3a with the unlimited credit option.\n For example, if you resize a T2 instance, while it is configured as\n unlimited, to an M4 instance, Amazon EC2 returns the M4\n instance.

\n

If you specify one or more instance IDs, Amazon EC2 returns the credit option\n (standard or unlimited) of those instances. If you specify\n an instance ID that is not valid, such as an instance that is not a burstable\n performance instance, an error is returned.

\n

Recently terminated instances might appear in the returned results. This interval is\n usually less than one hour.

\n

If an Availability Zone is experiencing a service disruption and you specify instance\n IDs in the affected zone, or do not specify any instance IDs at all, the call fails. If\n you specify only instance IDs in an unaffected zone, the call works normally.

\n

For more information, see Burstable\n performance instances in the Amazon EC2 User Guide.

", + "smithy.api#documentation": "

Describes Capacity Block offerings available for purchase in the Amazon Web Services Region that you're currently using. With Capacity Blocks, you can \n\t\t\tpurchase a specific GPU instance type or EC2 UltraServer for a period of time.

\n

To search for an available Capacity Block offering, you specify a reservation duration\n\t\t\tand instance count.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "InstanceCreditSpecifications", + "items": "CapacityBlockOfferings", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeInstanceCreditSpecificationsMaxResults": { + "com.amazonaws.ec2#DescribeCapacityBlockOfferingsMaxResults": { "type": "integer", "traits": { "smithy.api#range": { - "min": 5, + "min": 1, "max": 1000 } } }, - "com.amazonaws.ec2#DescribeInstanceCreditSpecificationsRequest": { + "com.amazonaws.ec2#DescribeCapacityBlockOfferingsRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "InstanceType": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The type of instance for which the Capacity Block offering reserves capacity.

" } }, - "InstanceIds": { - "target": "com.amazonaws.ec2#InstanceIdStringList", + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The instance IDs.

\n

Default: Describes all your instances.

\n

Constraints: Maximum 1000 explicitly specified instance IDs.

", - "smithy.api#xmlName": "InstanceId" + "smithy.api#documentation": "

The number of instances for which to reserve capacity. Each Capacity Block can have up\n\t\t\tto 64 instances, and you can have up to 256 instances across Capacity Blocks.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeInstanceCreditSpecificationsMaxResults", + "StartDateRange": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

\n

You cannot specify this parameter and the instance IDs\n parameter in the same call.

" + "smithy.api#documentation": "

The earliest start date for the Capacity Block offering.

" + } + }, + "EndDateRange": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "smithy.api#documentation": "

The latest end date for the Capacity Block offering.

" + } + }, + "CapacityDurationHours": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The reservation duration for the Capacity Block, in hours. You must specify the\n\t\t\tduration in 1-day increments up 14 days, and in 7-day increments up to 182 days.

", + "smithy.api#required": {} } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeCapacityBlockOfferingsMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, \n see Pagination.

" + } + }, + "UltraserverType": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The EC2 UltraServer type of the Capacity Block offerings.

" + } + }, + "UltraserverCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The number of EC2 UltraServers in the offerings.

" } } }, @@ -31514,22 +31677,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeInstanceCreditSpecificationsResult": { + "com.amazonaws.ec2#DescribeCapacityBlockOfferingsResult": { "type": "structure", "members": { - "InstanceCreditSpecifications": { - "target": "com.amazonaws.ec2#InstanceCreditSpecificationList", + "CapacityBlockOfferings": { + "target": "com.amazonaws.ec2#CapacityBlockOfferingSet", "traits": { - "aws.protocols#ec2QueryName": "InstanceCreditSpecificationSet", - "smithy.api#documentation": "

Information about the credit option for CPU usage of an instance.

", - "smithy.api#xmlName": "instanceCreditSpecificationSet" + "aws.protocols#ec2QueryName": "CapacityBlockOfferingSet", + "smithy.api#documentation": "

The recommended Capacity Block offering for the dates specified.

", + "smithy.api#xmlName": "capacityBlockOfferingSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -31538,25 +31701,66 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeInstanceEventNotificationAttributes": { + "com.amazonaws.ec2#DescribeCapacityBlockStatus": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeInstanceEventNotificationAttributesRequest" + "target": "com.amazonaws.ec2#DescribeCapacityBlockStatusRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeInstanceEventNotificationAttributesResult" + "target": "com.amazonaws.ec2#DescribeCapacityBlockStatusResult" }, "traits": { - "smithy.api#documentation": "

Describes the tag keys that are registered to appear in scheduled event notifications for \n \tresources in the current Region.

" + "smithy.api#documentation": "

Describes the availability of capacity for the specified Capacity blocks, or all of your Capacity Blocks.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "CapacityBlockStatuses", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DescribeInstanceEventNotificationAttributesRequest": { + "com.amazonaws.ec2#DescribeCapacityBlockStatusMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeCapacityBlockStatusRequest": { "type": "structure", "members": { + "CapacityBlockIds": { + "target": "com.amazonaws.ec2#CapacityBlockIds", + "traits": { + "smithy.api#documentation": "

The ID of the Capacity Block.

", + "smithy.api#xmlName": "CapacityBlockId" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeCapacityBlockStatusMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, \n see Pagination.

" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -31564,15 +31768,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeInstanceEventNotificationAttributesResult": { + "com.amazonaws.ec2#DescribeCapacityBlockStatusResult": { "type": "structure", "members": { - "InstanceTagAttribute": { - "target": "com.amazonaws.ec2#InstanceTagNotificationAttribute", + "CapacityBlockStatuses": { + "target": "com.amazonaws.ec2#CapacityBlockStatusSet", "traits": { - "aws.protocols#ec2QueryName": "InstanceTagAttribute", - "smithy.api#documentation": "

Information about the registered tag keys.

", - "smithy.api#xmlName": "instanceTagAttribute" + "aws.protocols#ec2QueryName": "CapacityBlockStatusSet", + "smithy.api#documentation": "

The availability of capacity for a Capacity Block.

", + "smithy.api#xmlName": "capacityBlockStatusSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -31580,81 +31792,89 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeInstanceEventWindows": { + "com.amazonaws.ec2#DescribeCapacityBlocks": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeInstanceEventWindowsRequest" + "target": "com.amazonaws.ec2#DescribeCapacityBlocksRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeInstanceEventWindowsResult" + "target": "com.amazonaws.ec2#DescribeCapacityBlocksResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified event windows or all event windows.

\n

If you specify event window IDs, the output includes information for only the specified\n event windows. If you specify filters, the output includes information for only those event\n windows that meet the filter criteria. If you do not specify event windows IDs or filters,\n the output includes information for all event windows, which can affect performance. We\n recommend that you use pagination to ensure that the operation returns quickly and\n successfully.

\n

For more information, see Define event windows for scheduled\n events in the Amazon EC2 User Guide.

", + "smithy.api#documentation": "

Describes details about Capacity Blocks in the Amazon Web Services Region that you're currently using.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "InstanceEventWindows", + "items": "CapacityBlocks", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeInstanceEventWindowsRequest": { + "com.amazonaws.ec2#DescribeCapacityBlocksMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeCapacityBlocksRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "CapacityBlockIds": { + "target": "com.amazonaws.ec2#CapacityBlockIds", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The IDs of the Capacity Blocks.

", + "smithy.api#xmlName": "CapacityBlockId" } }, - "InstanceEventWindowIds": { - "target": "com.amazonaws.ec2#InstanceEventWindowIdSet", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IDs of the event windows.

", - "smithy.api#xmlName": "InstanceEventWindowId" + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeCapacityBlocksMaxResults", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, \n see Pagination.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#ResultRange", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining\n results, make another call with the returned NextToken value. This value can\n be between 20 and 500. You cannot specify this parameter and the event window IDs parameter\n in the same call.

" + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The token to request the next page of results.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "Describe instance event windows by InstanceEventWindow.", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeInstanceEventWindowsResult": { + "com.amazonaws.ec2#DescribeCapacityBlocksResult": { "type": "structure", "members": { - "InstanceEventWindows": { - "target": "com.amazonaws.ec2#InstanceEventWindowSet", + "CapacityBlocks": { + "target": "com.amazonaws.ec2#CapacityBlockSet", "traits": { - "aws.protocols#ec2QueryName": "InstanceEventWindowSet", - "smithy.api#documentation": "

Information about the event windows.

", - "smithy.api#xmlName": "instanceEventWindowSet" + "aws.protocols#ec2QueryName": "CapacityBlockSet", + "smithy.api#documentation": "

The Capacity Blocks.

", + "smithy.api#xmlName": "capacityBlockSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -31663,149 +31883,65 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeInstanceStatus": { + "com.amazonaws.ec2#DescribeCapacityReservationBillingRequests": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeInstanceStatusRequest" + "target": "com.amazonaws.ec2#DescribeCapacityReservationBillingRequestsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeInstanceStatusResult" + "target": "com.amazonaws.ec2#DescribeCapacityReservationBillingRequestsResult" }, "traits": { - "smithy.api#documentation": "

Describes the status of the specified instances or all of your instances. By default,\n only running instances are described, unless you specifically indicate to return the\n status of all instances.

\n

Instance status includes the following components:

\n \n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", - "smithy.api#examples": [ - { - "title": "To describe the status of an instance", - "documentation": "This example describes the current status of the specified instance.", - "input": { - "InstanceIds": [ - "i-1234567890abcdef0" - ] - }, - "output": { - "InstanceStatuses": [ - { - "InstanceId": "i-1234567890abcdef0", - "InstanceState": { - "Code": 16, - "Name": "running" - }, - "AvailabilityZone": "us-east-1d", - "SystemStatus": { - "Status": "ok", - "Details": [ - { - "Status": "passed", - "Name": "reachability" - } - ] - }, - "InstanceStatus": { - "Status": "ok", - "Details": [ - { - "Status": "passed", - "Name": "reachability" - } - ] - } - } - ] - } - } - ], + "smithy.api#documentation": "

Describes a request to assign the billing of the unused capacity of a Capacity\n\t\t\tReservation. For more information, see Billing assignment for shared\n\t\t\t\t\tAmazon EC2 Capacity Reservations.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "InstanceStatuses", + "items": "CapacityReservationBillingRequests", "pageSize": "MaxResults" - }, - "smithy.api#suppress": [ - "WaitableTraitInvalidErrorType" - ], - "smithy.waiters#waitable": { - "InstanceStatusOk": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "InstanceStatuses[].InstanceStatus.Status", - "expected": "ok", - "comparator": "allStringEquals" - } - } - }, - { - "state": "retry", - "matcher": { - "errorType": "InvalidInstanceID.NotFound" - } - } - ], - "minDelay": 15 - }, - "SystemStatusOk": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "InstanceStatuses[].SystemStatus.Status", - "expected": "ok", - "comparator": "allStringEquals" - } - } - } - ], - "minDelay": 15 - } } } }, - "com.amazonaws.ec2#DescribeInstanceStatusRequest": { + "com.amazonaws.ec2#DescribeCapacityReservationBillingRequestsRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "CapacityReservationIds": { + "target": "com.amazonaws.ec2#CapacityReservationIdSet", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The ID of the Capacity Reservation.

", + "smithy.api#xmlName": "CapacityReservationId" } }, - "InstanceIds": { - "target": "com.amazonaws.ec2#InstanceIdStringList", + "Role": { + "target": "com.amazonaws.ec2#CallerRole", "traits": { - "smithy.api#documentation": "

The instance IDs.

\n

Default: Describes all your instances.

\n

Constraints: Maximum 100 explicitly specified instance IDs.

", - "smithy.api#xmlName": "InstanceId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Specify one of the following:

\n ", + "smithy.api#required": {} } }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

\n

You cannot specify this parameter and the instance IDs parameter in the same request.

" + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeCapacityReservationBillingRequestsRequestMaxResults", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, \n see Pagination.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "IncludeAllInstances": { + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "IncludeAllInstances", - "smithy.api#documentation": "

When true, includes the health status for all instances. When\n false, includes the health status for running instances only.

\n

Default: false\n

", - "smithy.api#xmlName": "includeAllInstances" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -31813,61 +31949,58 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeInstanceStatusResult": { + "com.amazonaws.ec2#DescribeCapacityReservationBillingRequestsRequestMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeCapacityReservationBillingRequestsResult": { "type": "structure", "members": { - "InstanceStatuses": { - "target": "com.amazonaws.ec2#InstanceStatusList", - "traits": { - "aws.protocols#ec2QueryName": "InstanceStatusSet", - "smithy.api#documentation": "

Information about the status of the instances.

", - "smithy.api#xmlName": "instanceStatusSet" - } - }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } + }, + "CapacityReservationBillingRequests": { + "target": "com.amazonaws.ec2#CapacityReservationBillingRequestSet", + "traits": { + "aws.protocols#ec2QueryName": "CapacityReservationBillingRequestSet", + "smithy.api#documentation": "

Information about the request.

", + "smithy.api#xmlName": "capacityReservationBillingRequestSet" + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeInstanceTopology": { + "com.amazonaws.ec2#DescribeCapacityReservationFleets": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeInstanceTopologyRequest" + "target": "com.amazonaws.ec2#DescribeCapacityReservationFleetsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeInstanceTopologyResult" + "target": "com.amazonaws.ec2#DescribeCapacityReservationFleetsResult" }, "traits": { - "smithy.api#documentation": "

Describes a tree-based hierarchy that represents the physical host placement of your\n EC2 instances within an Availability Zone or Local Zone. You can use this information to\n determine the relative proximity of your EC2 instances within the Amazon Web Services network to\n support your tightly coupled workloads.

\n

\n Limitations\n

\n \n

For more information, see Amazon EC2 instance\n topology in the Amazon EC2 User Guide.

", + "smithy.api#documentation": "

Describes one or more Capacity Reservation Fleets.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "Instances", + "items": "CapacityReservationFleets", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeInstanceTopologyGroupNameSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#PlacementGroupName" - } - }, - "com.amazonaws.ec2#DescribeInstanceTopologyInstanceIdSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceId" - } - }, - "com.amazonaws.ec2#DescribeInstanceTopologyMaxResults": { + "com.amazonaws.ec2#DescribeCapacityReservationFleetsMaxResults": { "type": "integer", "traits": { "smithy.api#range": { @@ -31876,69 +32009,62 @@ } } }, - "com.amazonaws.ec2#DescribeInstanceTopologyRequest": { + "com.amazonaws.ec2#DescribeCapacityReservationFleetsRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "CapacityReservationFleetIds": { + "target": "com.amazonaws.ec2#CapacityReservationFleetIdSet", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The IDs of the Capacity Reservation Fleets to describe.

", + "smithy.api#xmlName": "CapacityReservationFleetId" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" } }, "MaxResults": { - "target": "com.amazonaws.ec2#DescribeInstanceTopologyMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

\n

You can't specify this parameter and the instance IDs parameter in the same request.

\n

Default: 20\n

" - } - }, - "InstanceIds": { - "target": "com.amazonaws.ec2#DescribeInstanceTopologyInstanceIdSet", - "traits": { - "smithy.api#documentation": "

The instance IDs.

\n

Default: Describes all your instances.

\n

Constraints: Maximum 100 explicitly specified instance IDs.

", - "smithy.api#xmlName": "InstanceId" - } - }, - "GroupNames": { - "target": "com.amazonaws.ec2#DescribeInstanceTopologyGroupNameSet", + "target": "com.amazonaws.ec2#DescribeCapacityReservationFleetsMaxResults", "traits": { - "smithy.api#documentation": "

The name of the placement group that each instance is in.

\n

Constraints: Maximum 100 explicitly specified placement group names.

", - "smithy.api#xmlName": "GroupName" + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, \n see Pagination.

" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#documentation": "

One or more filters.

\n ", "smithy.api#xmlName": "Filter" } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeInstanceTopologyResult": { + "com.amazonaws.ec2#DescribeCapacityReservationFleetsResult": { "type": "structure", "members": { - "Instances": { - "target": "com.amazonaws.ec2#InstanceSet", + "CapacityReservationFleets": { + "target": "com.amazonaws.ec2#CapacityReservationFleetSet", "traits": { - "aws.protocols#ec2QueryName": "InstanceSet", - "smithy.api#documentation": "

Information about the topology of each instance.

", - "smithy.api#xmlName": "instanceSet" + "aws.protocols#ec2QueryName": "CapacityReservationFleetSet", + "smithy.api#documentation": "

Information about the Capacity Reservation Fleets.

", + "smithy.api#xmlName": "capacityReservationFleetSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -31947,56 +32073,66 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeInstanceTypeOfferings": { + "com.amazonaws.ec2#DescribeCapacityReservations": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeInstanceTypeOfferingsRequest" + "target": "com.amazonaws.ec2#DescribeCapacityReservationsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeInstanceTypeOfferingsResult" + "target": "com.amazonaws.ec2#DescribeCapacityReservationsResult" }, "traits": { - "smithy.api#documentation": "

Lists the instance types that are offered for the specified location. If no location is specified, the default\n is to list the instance types that are offered in the current Region.

", + "smithy.api#documentation": "

Describes one or more of your Capacity Reservations. The results describe only the\n\t\t\tCapacity Reservations in the Amazon Web Services Region that you're currently\n\t\t\tusing.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "InstanceTypeOfferings", + "items": "CapacityReservations", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeInstanceTypeOfferingsRequest": { + "com.amazonaws.ec2#DescribeCapacityReservationsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeCapacityReservationsRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "CapacityReservationIds": { + "target": "com.amazonaws.ec2#CapacityReservationIdSet", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request,\n and provides an error response. If you have the required permissions, the error response is\n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The ID of the Capacity Reservation.

", + "smithy.api#xmlName": "CapacityReservationId" } }, - "LocationType": { - "target": "com.amazonaws.ec2#LocationType", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The location type.

\n " + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeCapacityReservationsMaxResults", "traits": { - "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, \n see Pagination.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DITOMaxResults", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -32004,81 +32140,81 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeInstanceTypeOfferingsResult": { + "com.amazonaws.ec2#DescribeCapacityReservationsResult": { "type": "structure", "members": { - "InstanceTypeOfferings": { - "target": "com.amazonaws.ec2#InstanceTypeOfferingsList", - "traits": { - "aws.protocols#ec2QueryName": "InstanceTypeOfferingSet", - "smithy.api#documentation": "

The instance types offered in the location.

", - "smithy.api#xmlName": "instanceTypeOfferingSet" - } - }, "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } + }, + "CapacityReservations": { + "target": "com.amazonaws.ec2#CapacityReservationSet", + "traits": { + "aws.protocols#ec2QueryName": "CapacityReservationSet", + "smithy.api#documentation": "

Information about the Capacity Reservations.

", + "smithy.api#xmlName": "capacityReservationSet" + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeInstanceTypes": { + "com.amazonaws.ec2#DescribeCarrierGateways": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeInstanceTypesRequest" + "target": "com.amazonaws.ec2#DescribeCarrierGatewaysRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeInstanceTypesResult" + "target": "com.amazonaws.ec2#DescribeCarrierGatewaysResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified instance types. By default, all instance types for the current Region are described.\n Alternatively, you can filter the results.

", + "smithy.api#documentation": "

Describes one or more of your carrier gateways.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "InstanceTypes", + "items": "CarrierGateways", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeInstanceTypesRequest": { + "com.amazonaws.ec2#DescribeCarrierGatewaysRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request,\n and provides an error response. If you have the required permissions, the error response is\n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" - } - }, - "InstanceTypes": { - "target": "com.amazonaws.ec2#RequestInstanceTypeList", + "CarrierGatewayIds": { + "target": "com.amazonaws.ec2#CarrierGatewayIdSet", "traits": { - "smithy.api#documentation": "

The instance types.

", - "smithy.api#xmlName": "InstanceType" + "smithy.api#documentation": "

One or more carrier gateway IDs.

", + "smithy.api#xmlName": "CarrierGatewayId" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

\n ", + "smithy.api#documentation": "

One or more filters.

\n ", "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#DITMaxResults", + "target": "com.amazonaws.ec2#CarrierGatewayMaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -32086,22 +32222,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeInstanceTypesResult": { + "com.amazonaws.ec2#DescribeCarrierGatewaysResult": { "type": "structure", "members": { - "InstanceTypes": { - "target": "com.amazonaws.ec2#InstanceTypeInfoList", + "CarrierGateways": { + "target": "com.amazonaws.ec2#CarrierGatewaySet", "traits": { - "aws.protocols#ec2QueryName": "InstanceTypeSet", - "smithy.api#documentation": "

The instance type.

", - "smithy.api#xmlName": "instanceTypeSet" + "aws.protocols#ec2QueryName": "CarrierGatewaySet", + "smithy.api#documentation": "

Information about the carrier gateway.

", + "smithy.api#xmlName": "carrierGatewaySet" } }, "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -32110,261 +32246,56 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeInstances": { + "com.amazonaws.ec2#DescribeClassicLinkInstances": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeInstancesRequest" + "target": "com.amazonaws.ec2#DescribeClassicLinkInstancesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeInstancesResult" + "target": "com.amazonaws.ec2#DescribeClassicLinkInstancesResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified instances or all instances.

\n

If you specify instance IDs, the output includes information for only the specified\n instances. If you specify filters, the output includes information for only those\n instances that meet the filter criteria. If you do not specify instance IDs or filters,\n the output includes information for all instances, which can affect performance. We\n recommend that you use pagination to ensure that the operation returns quickly and\n successfully.

\n

If you specify an instance ID that is not valid, an error is returned. If you specify\n an instance that you do not own, it is not included in the output.

\n

Recently terminated instances might appear in the returned results. This interval is\n usually less than one hour.

\n

If you describe instances in the rare case where an Availability Zone is experiencing\n a service disruption and you specify instance IDs that are in the affected zone, or do\n not specify any instance IDs at all, the call fails. If you describe instances and\n specify only instance IDs that are in an unaffected zone, the call works\n normally.

\n \n

We strongly recommend using only paginated requests. Unpaginated requests are\n susceptible to throttling and timeouts.

\n
\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", - "smithy.api#examples": [ - { - "title": "To describe an Amazon EC2 instance", - "documentation": "This example describes the specified instance.", - "input": { - "InstanceIds": [ - "i-1234567890abcdef0" - ] - }, - "output": {} - }, - { - "title": "To describe the instances with a specific instance type", - "documentation": "This example describes the instances with the t2.micro instance type.", - "input": { - "Filters": [ - { - "Name": "instance-type", - "Values": [ - "t2.micro" - ] - } - ] - }, - "output": {} - }, - { - "title": "To describe the instances with a specific tag", - "documentation": "This example describes the instances with the Purpose=test tag.", - "input": { - "Filters": [ - { - "Name": "tag:Purpose", - "Values": [ - "test" - ] - } - ] - }, - "output": {} - } - ], + "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Describes your linked EC2-Classic instances. This request only returns\n\t\t\tinformation about EC2-Classic instances linked to a VPC through ClassicLink. You cannot\n\t\t\tuse this request to return information about other instances.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "Reservations", + "items": "Instances", "pageSize": "MaxResults" - }, - "smithy.api#suppress": [ - "WaitableTraitInvalidErrorType" - ], - "smithy.test#smokeTests": [ - { - "id": "DescribeInstancesFailure", - "params": { - "InstanceIds": [ - "i-12345678" - ] - }, - "vendorParams": { - "region": "us-west-2" - }, - "vendorParamsShape": "aws.test#AwsVendorParams", - "expect": { - "failure": {} - } - } - ], - "smithy.waiters#waitable": { - "InstanceExists": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "length(Reservations[]) > `0`", - "expected": "true", - "comparator": "booleanEquals" - } - } - }, - { - "state": "retry", - "matcher": { - "errorType": "InvalidInstanceID.NotFound" - } - } - ], - "minDelay": 5 - }, - "InstanceRunning": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "Reservations[].Instances[].State.Name", - "expected": "running", - "comparator": "allStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "Reservations[].Instances[].State.Name", - "expected": "shutting-down", - "comparator": "anyStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "Reservations[].Instances[].State.Name", - "expected": "terminated", - "comparator": "anyStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "Reservations[].Instances[].State.Name", - "expected": "stopping", - "comparator": "anyStringEquals" - } - } - }, - { - "state": "retry", - "matcher": { - "errorType": "InvalidInstanceID.NotFound" - } - } - ], - "minDelay": 15 - }, - "InstanceStopped": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "Reservations[].Instances[].State.Name", - "expected": "stopped", - "comparator": "allStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "Reservations[].Instances[].State.Name", - "expected": "pending", - "comparator": "anyStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "Reservations[].Instances[].State.Name", - "expected": "terminated", - "comparator": "anyStringEquals" - } - } - } - ], - "minDelay": 15 - }, - "InstanceTerminated": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "Reservations[].Instances[].State.Name", - "expected": "terminated", - "comparator": "allStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "Reservations[].Instances[].State.Name", - "expected": "pending", - "comparator": "anyStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "Reservations[].Instances[].State.Name", - "expected": "stopping", - "comparator": "anyStringEquals" - } - } - } - ], - "minDelay": 15 - } } } }, - "com.amazonaws.ec2#DescribeInstancesRequest": { + "com.amazonaws.ec2#DescribeClassicLinkInstancesMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeClassicLinkInstancesRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, "InstanceIds": { "target": "com.amazonaws.ec2#InstanceIdStringList", "traits": { - "smithy.api#documentation": "

The instance IDs.

\n

Default: Describes all your instances.

", + "smithy.api#documentation": "

The instance IDs. Must be instances linked to a VPC through ClassicLink.

", "smithy.api#xmlName": "InstanceId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "MaxResults", - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

\n

You cannot specify this parameter and the instance IDs parameter in the same request.

", - "smithy.api#xmlName": "maxResults" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } }, "NextToken": { @@ -32374,28 +32305,36 @@ "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", "smithy.api#xmlName": "nextToken" } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeClassicLinkInstancesMaxResults", + "traits": { + "aws.protocols#ec2QueryName": "MaxResults", + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

\n

Constraint: If the value is greater than 1000, we return only 1000 items.

", + "smithy.api#xmlName": "maxResults" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeInstancesResult": { + "com.amazonaws.ec2#DescribeClassicLinkInstancesResult": { "type": "structure", "members": { - "Reservations": { - "target": "com.amazonaws.ec2#ReservationList", + "Instances": { + "target": "com.amazonaws.ec2#ClassicLinkInstanceList", "traits": { - "aws.protocols#ec2QueryName": "ReservationSet", - "smithy.api#documentation": "

Information about the reservations.

", - "smithy.api#xmlName": "reservationSet" + "aws.protocols#ec2QueryName": "InstancesSet", + "smithy.api#documentation": "

Information about one or more linked EC2-Classic instances.

", + "smithy.api#xmlName": "instancesSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", "smithy.api#xmlName": "nextToken" } } @@ -32404,81 +32343,25 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeInternetGateways": { + "com.amazonaws.ec2#DescribeClientVpnAuthorizationRules": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeInternetGatewaysRequest" + "target": "com.amazonaws.ec2#DescribeClientVpnAuthorizationRulesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeInternetGatewaysResult" + "target": "com.amazonaws.ec2#DescribeClientVpnAuthorizationRulesResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your internet gateways.

", - "smithy.api#examples": [ - { - "title": "To describe the Internet gateway for a VPC", - "documentation": "This example describes the Internet gateway for the specified VPC.", - "input": { - "Filters": [ - { - "Name": "attachment.vpc-id", - "Values": [ - "vpc-a01106c2" - ] - } - ] - }, - "output": { - "InternetGateways": [ - { - "Tags": [], - "InternetGatewayId": "igw-c0a643a9", - "Attachments": [ - { - "State": "attached", - "VpcId": "vpc-a01106c2" - } - ] - } - ] - } - } - ], + "smithy.api#documentation": "

Describes the authorization rules for a specified Client VPN endpoint.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "InternetGateways", + "items": "AuthorizationRules", "pageSize": "MaxResults" - }, - "smithy.api#suppress": [ - "WaitableTraitInvalidErrorType" - ], - "smithy.waiters#waitable": { - "InternetGatewayExists": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "length(InternetGateways[].InternetGatewayId) > `0`", - "expected": "true", - "comparator": "booleanEquals" - } - } - }, - { - "state": "retry", - "matcher": { - "errorType": "InvalidInternetGateway.NotFound" - } - } - ], - "minDelay": 5 - } } } }, - "com.amazonaws.ec2#DescribeInternetGatewaysMaxResults": { + "com.amazonaws.ec2#DescribeClientVpnAuthorizationRulesMaxResults": { "type": "integer", "traits": { "smithy.api#range": { @@ -32487,42 +32370,40 @@ } } }, - "com.amazonaws.ec2#DescribeInternetGatewaysRequest": { + "com.amazonaws.ec2#DescribeClientVpnAuthorizationRulesRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "ClientVpnEndpointId": { + "target": "com.amazonaws.ec2#ClientVpnEndpointId", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", + "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } }, - "InternetGatewayIds": { - "target": "com.amazonaws.ec2#InternetGatewayIdList", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "InternetGatewayId", - "smithy.api#documentation": "

The IDs of the internet gateways.

\n

Default: Describes all your internet gateways.

", - "smithy.api#xmlName": "internetGatewayId" + "smithy.api#documentation": "

The token to retrieve the next page of results.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

\n ", + "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#DescribeInternetGatewaysMaxResults", + "target": "com.amazonaws.ec2#DescribeClientVpnAuthorizationRulesMaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" + "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.

" } } }, @@ -32530,22 +32411,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeInternetGatewaysResult": { + "com.amazonaws.ec2#DescribeClientVpnAuthorizationRulesResult": { "type": "structure", "members": { - "InternetGateways": { - "target": "com.amazonaws.ec2#InternetGatewayList", + "AuthorizationRules": { + "target": "com.amazonaws.ec2#AuthorizationRuleSet", "traits": { - "aws.protocols#ec2QueryName": "InternetGatewaySet", - "smithy.api#documentation": "

Information about one or more internet gateways.

", - "smithy.api#xmlName": "internetGatewaySet" + "aws.protocols#ec2QueryName": "AuthorizationRule", + "smithy.api#documentation": "

Information about the authorization rules.

", + "smithy.api#xmlName": "authorizationRule" } }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -32554,46 +32435,67 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeIpamByoasn": { + "com.amazonaws.ec2#DescribeClientVpnConnections": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeIpamByoasnRequest" + "target": "com.amazonaws.ec2#DescribeClientVpnConnectionsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeIpamByoasnResult" + "target": "com.amazonaws.ec2#DescribeClientVpnConnectionsResult" }, "traits": { - "smithy.api#documentation": "

Describes your Autonomous System Numbers (ASNs), their provisioning statuses, and the BYOIP CIDRs with which they are associated. For more information, see Tutorial: Bring your ASN to IPAM in the Amazon VPC IPAM guide.

" + "smithy.api#documentation": "

Describes active client connections and connections that have been terminated within the last 60 \n\t\t\tminutes for the specified Client VPN endpoint.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "Connections", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DescribeIpamByoasnMaxResults": { + "com.amazonaws.ec2#DescribeClientVpnConnectionsMaxResults": { "type": "integer", "traits": { "smithy.api#range": { - "min": 1, - "max": 100 + "min": 5, + "max": 1000 } } }, - "com.amazonaws.ec2#DescribeIpamByoasnRequest": { + "com.amazonaws.ec2#DescribeClientVpnConnectionsRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ClientVpnEndpointId": { + "target": "com.amazonaws.ec2#ClientVpnEndpointId", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", + "smithy.api#required": {} } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeIpamByoasnMaxResults", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

\n ", + "smithy.api#xmlName": "Filter" } }, "NextToken": { "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The token to retrieve the next page of results.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeClientVpnConnectionsMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -32601,19 +32503,19 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeIpamByoasnResult": { + "com.amazonaws.ec2#DescribeClientVpnConnectionsResult": { "type": "structure", "members": { - "Byoasns": { - "target": "com.amazonaws.ec2#ByoasnSet", + "Connections": { + "target": "com.amazonaws.ec2#ClientVpnConnectionSet", "traits": { - "aws.protocols#ec2QueryName": "ByoasnSet", - "smithy.api#documentation": "

ASN and BYOIP CIDR associations.

", - "smithy.api#xmlName": "byoasnSet" + "aws.protocols#ec2QueryName": "Connections", + "smithy.api#documentation": "

Information about the active and terminated client connections.

", + "smithy.api#xmlName": "connections" } }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { "aws.protocols#ec2QueryName": "NextToken", "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", @@ -32625,57 +32527,66 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeIpamPools": { + "com.amazonaws.ec2#DescribeClientVpnEndpointMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeClientVpnEndpoints": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeIpamPoolsRequest" + "target": "com.amazonaws.ec2#DescribeClientVpnEndpointsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeIpamPoolsResult" + "target": "com.amazonaws.ec2#DescribeClientVpnEndpointsResult" }, "traits": { - "smithy.api#documentation": "

Get information about your IPAM pools.

", + "smithy.api#documentation": "

Describes one or more Client VPN endpoints in the account.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "IpamPools", + "items": "ClientVpnEndpoints", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeIpamPoolsRequest": { + "com.amazonaws.ec2#DescribeClientVpnEndpointsRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "ClientVpnEndpointIds": { + "target": "com.amazonaws.ec2#ClientVpnEndpointIdList", "traits": { - "smithy.api#documentation": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", + "smithy.api#xmlName": "ClientVpnEndpointId" } }, "MaxResults": { - "target": "com.amazonaws.ec2#IpamMaxResults", + "target": "com.amazonaws.ec2#DescribeClientVpnEndpointMaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of results to return in the request.

" + "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.

" } }, "NextToken": { "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The token to retrieve the next page of results.

" } }, - "IpamPoolIds": { - "target": "com.amazonaws.ec2#ValueStringList", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The IDs of the IPAM pools you would like information on.

", - "smithy.api#xmlName": "IpamPoolId" + "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

\n ", + "smithy.api#xmlName": "Filter" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -32683,9 +32594,17 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeIpamPoolsResult": { + "com.amazonaws.ec2#DescribeClientVpnEndpointsResult": { "type": "structure", "members": { + "ClientVpnEndpoints": { + "target": "com.amazonaws.ec2#EndpointSet", + "traits": { + "aws.protocols#ec2QueryName": "ClientVpnEndpoint", + "smithy.api#documentation": "

Information about the Client VPN endpoints.

", + "smithy.api#xmlName": "clientVpnEndpoint" + } + }, "NextToken": { "target": "com.amazonaws.ec2#NextToken", "traits": { @@ -32693,71 +32612,73 @@ "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } - }, - "IpamPools": { - "target": "com.amazonaws.ec2#IpamPoolSet", - "traits": { - "aws.protocols#ec2QueryName": "IpamPoolSet", - "smithy.api#documentation": "

Information about the IPAM pools.

", - "smithy.api#xmlName": "ipamPoolSet" - } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeIpamResourceDiscoveries": { + "com.amazonaws.ec2#DescribeClientVpnRoutes": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeIpamResourceDiscoveriesRequest" + "target": "com.amazonaws.ec2#DescribeClientVpnRoutesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeIpamResourceDiscoveriesResult" + "target": "com.amazonaws.ec2#DescribeClientVpnRoutesResult" }, "traits": { - "smithy.api#documentation": "

Describes IPAM resource discoveries. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

", + "smithy.api#documentation": "

Describes the routes for the specified Client VPN endpoint.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "IpamResourceDiscoveries", + "items": "Routes", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeIpamResourceDiscoveriesRequest": { + "com.amazonaws.ec2#DescribeClientVpnRoutesMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeClientVpnRoutesRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ClientVpnEndpointId": { + "target": "com.amazonaws.ec2#ClientVpnEndpointId", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", + "smithy.api#required": {} } }, - "IpamResourceDiscoveryIds": { - "target": "com.amazonaws.ec2#ValueStringList", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The IPAM resource discovery IDs.

", - "smithy.api#xmlName": "IpamResourceDiscoveryId" + "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

\n ", + "smithy.api#xmlName": "Filter" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeClientVpnRoutesMaxResults", "traits": { - "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

" + "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#IpamMaxResults", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#documentation": "

The maximum number of resource discoveries to return in one page of results.

" + "smithy.api#documentation": "

The token to retrieve the next page of results.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The resource discovery filters.

", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -32765,22 +32686,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeIpamResourceDiscoveriesResult": { + "com.amazonaws.ec2#DescribeClientVpnRoutesResult": { "type": "structure", "members": { - "IpamResourceDiscoveries": { - "target": "com.amazonaws.ec2#IpamResourceDiscoverySet", + "Routes": { + "target": "com.amazonaws.ec2#ClientVpnRouteSet", "traits": { - "aws.protocols#ec2QueryName": "IpamResourceDiscoverySet", - "smithy.api#documentation": "

The resource discoveries.

", - "smithy.api#xmlName": "ipamResourceDiscoverySet" + "aws.protocols#ec2QueryName": "Routes", + "smithy.api#documentation": "

Information about the Client VPN endpoint routes.

", + "smithy.api#xmlName": "routes" } }, "NextToken": { "target": "com.amazonaws.ec2#NextToken", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -32789,139 +32710,73 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeIpamResourceDiscoveryAssociations": { + "com.amazonaws.ec2#DescribeClientVpnTargetNetworks": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeIpamResourceDiscoveryAssociationsRequest" + "target": "com.amazonaws.ec2#DescribeClientVpnTargetNetworksRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeIpamResourceDiscoveryAssociationsResult" + "target": "com.amazonaws.ec2#DescribeClientVpnTargetNetworksResult" }, "traits": { - "smithy.api#documentation": "

Describes resource discovery association with an Amazon VPC IPAM. An associated resource discovery is a resource discovery that has been associated with an IPAM..

", + "smithy.api#documentation": "

Describes the target networks associated with the specified Client VPN endpoint.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "IpamResourceDiscoveryAssociations", + "items": "ClientVpnTargetNetworks", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeIpamResourceDiscoveryAssociationsRequest": { + "com.amazonaws.ec2#DescribeClientVpnTargetNetworksMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeClientVpnTargetNetworksRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ClientVpnEndpointId": { + "target": "com.amazonaws.ec2#ClientVpnEndpointId", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", + "smithy.api#required": {} } }, - "IpamResourceDiscoveryAssociationIds": { + "AssociationIds": { "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

The resource discovery association IDs.

", - "smithy.api#xmlName": "IpamResourceDiscoveryAssociationId" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", - "traits": { - "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

" + "smithy.api#documentation": "

The IDs of the target network associations.

" } }, "MaxResults": { - "target": "com.amazonaws.ec2#IpamMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of resource discovery associations to return in one page of results.

" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

The resource discovery association filters.

", - "smithy.api#xmlName": "Filter" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DescribeIpamResourceDiscoveryAssociationsResult": { - "type": "structure", - "members": { - "IpamResourceDiscoveryAssociations": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryAssociationSet", + "target": "com.amazonaws.ec2#DescribeClientVpnTargetNetworksMaxResults", "traits": { - "aws.protocols#ec2QueryName": "IpamResourceDiscoveryAssociationSet", - "smithy.api#documentation": "

The resource discovery associations.

", - "smithy.api#xmlName": "ipamResourceDiscoveryAssociationSet" + "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.

" } }, "NextToken": { "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

", - "smithy.api#xmlName": "nextToken" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DescribeIpamScopes": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DescribeIpamScopesRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DescribeIpamScopesResult" - }, - "traits": { - "smithy.api#documentation": "

Get information about your IPAM scopes.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "IpamScopes", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeIpamScopesRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The token to retrieve the next page of results.

" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

", + "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

\n ", "smithy.api#xmlName": "Filter" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#IpamMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return in the request.

" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", - "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" - } - }, - "IpamScopeIds": { - "target": "com.amazonaws.ec2#ValueStringList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The IDs of the scopes you want information on.

", - "smithy.api#xmlName": "IpamScopeId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -32929,9 +32784,17 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeIpamScopesResult": { + "com.amazonaws.ec2#DescribeClientVpnTargetNetworksResult": { "type": "structure", "members": { + "ClientVpnTargetNetworks": { + "target": "com.amazonaws.ec2#TargetNetworkSet", + "traits": { + "aws.protocols#ec2QueryName": "ClientVpnTargetNetworks", + "smithy.api#documentation": "

Information about the associated target networks.

", + "smithy.api#xmlName": "clientVpnTargetNetworks" + } + }, "NextToken": { "target": "com.amazonaws.ec2#NextToken", "traits": { @@ -32939,71 +32802,63 @@ "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } - }, - "IpamScopes": { - "target": "com.amazonaws.ec2#IpamScopeSet", - "traits": { - "aws.protocols#ec2QueryName": "IpamScopeSet", - "smithy.api#documentation": "

The scopes you want information on.

", - "smithy.api#xmlName": "ipamScopeSet" - } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeIpams": { + "com.amazonaws.ec2#DescribeCoipPools": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeIpamsRequest" + "target": "com.amazonaws.ec2#DescribeCoipPoolsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeIpamsResult" + "target": "com.amazonaws.ec2#DescribeCoipPoolsResult" }, "traits": { - "smithy.api#documentation": "

Get information about your IPAM pools.

\n

For more information, see What is IPAM? in the Amazon VPC IPAM User Guide.\n

", + "smithy.api#documentation": "

Describes the specified customer-owned address pools or all of your customer-owned address pools.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "Ipams", + "items": "CoipPools", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeIpamsRequest": { + "com.amazonaws.ec2#DescribeCoipPoolsRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "PoolIds": { + "target": "com.amazonaws.ec2#CoipPoolIdSet", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The IDs of the address pools.

", + "smithy.api#xmlName": "PoolId" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

", + "smithy.api#documentation": "

One or more filters.

\n ", "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#IpamMaxResults", + "target": "com.amazonaws.ec2#CoipPoolMaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of results to return in the request.

" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#documentation": "

The token for the next page of results.

" } }, - "IpamIds": { - "target": "com.amazonaws.ec2#ValueStringList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The IDs of the IPAMs you want information on.

", - "smithy.api#xmlName": "IpamId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -33011,81 +32866,135 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeIpamsResult": { + "com.amazonaws.ec2#DescribeCoipPoolsResult": { "type": "structure", "members": { + "CoipPools": { + "target": "com.amazonaws.ec2#CoipPoolSet", + "traits": { + "aws.protocols#ec2QueryName": "CoipPoolSet", + "smithy.api#documentation": "

Information about the address pools.

", + "smithy.api#xmlName": "coipPoolSet" + } + }, "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } - }, - "Ipams": { - "target": "com.amazonaws.ec2#IpamSet", - "traits": { - "aws.protocols#ec2QueryName": "IpamSet", - "smithy.api#documentation": "

Information about the IPAMs.

", - "smithy.api#xmlName": "ipamSet" - } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeIpv6Pools": { + "com.amazonaws.ec2#DescribeConversionTaskList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ConversionTask", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#DescribeConversionTasks": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeIpv6PoolsRequest" + "target": "com.amazonaws.ec2#DescribeConversionTasksRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeIpv6PoolsResult" + "target": "com.amazonaws.ec2#DescribeConversionTasksResult" }, "traits": { - "smithy.api#documentation": "

Describes your IPv6 address pools.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "Ipv6Pools", - "pageSize": "MaxResults" + "smithy.api#documentation": "

Describes the specified conversion tasks or all your conversion tasks. For more information, see the\n VM Import/Export User Guide.

\n

For information about the import manifest referenced by this API action, see VM Import Manifest.

", + "smithy.waiters#waitable": { + "ConversionTaskCancelled": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "ConversionTasks[].State", + "expected": "cancelled", + "comparator": "allStringEquals" + } + } + } + ], + "minDelay": 15 + }, + "ConversionTaskCompleted": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "ConversionTasks[].State", + "expected": "completed", + "comparator": "allStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "ConversionTasks[].State", + "expected": "cancelled", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "ConversionTasks[].State", + "expected": "cancelling", + "comparator": "anyStringEquals" + } + } + } + ], + "minDelay": 15 + }, + "ConversionTaskDeleted": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "ConversionTasks[].State", + "expected": "deleted", + "comparator": "allStringEquals" + } + } + } + ], + "minDelay": 15 + } } } }, - "com.amazonaws.ec2#DescribeIpv6PoolsRequest": { + "com.amazonaws.ec2#DescribeConversionTasksRequest": { "type": "structure", "members": { - "PoolIds": { - "target": "com.amazonaws.ec2#Ipv6PoolIdList", - "traits": { - "smithy.api#documentation": "

The IDs of the IPv6 address pools.

", - "smithy.api#xmlName": "PoolId" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", - "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#Ipv6PoolMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "ConversionTaskIds": { + "target": "com.amazonaws.ec2#ConversionIdStringList", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" + "aws.protocols#ec2QueryName": "ConversionTaskId", + "smithy.api#documentation": "

The conversion task IDs.

", + "smithy.api#xmlName": "conversionTaskId" } } }, @@ -33093,23 +33002,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeIpv6PoolsResult": { + "com.amazonaws.ec2#DescribeConversionTasksResult": { "type": "structure", "members": { - "Ipv6Pools": { - "target": "com.amazonaws.ec2#Ipv6PoolSet", - "traits": { - "aws.protocols#ec2QueryName": "Ipv6PoolSet", - "smithy.api#documentation": "

Information about the IPv6 address pools.

", - "smithy.api#xmlName": "ipv6PoolSet" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "ConversionTasks": { + "target": "com.amazonaws.ec2#DescribeConversionTaskList", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "ConversionTasks", + "smithy.api#documentation": "

Information about the conversion tasks.

", + "smithy.api#xmlName": "conversionTasks" } } }, @@ -33117,263 +33018,163 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeKeyPairs": { + "com.amazonaws.ec2#DescribeCustomerGateways": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeKeyPairsRequest" + "target": "com.amazonaws.ec2#DescribeCustomerGatewaysRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeKeyPairsResult" + "target": "com.amazonaws.ec2#DescribeCustomerGatewaysResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified key pairs or all of your key pairs.

\n

For more information about key pairs, see Amazon EC2 key pairs \n\t\t\t\tin the Amazon Elastic Compute Cloud User Guide.

", + "smithy.api#documentation": "

Describes one or more of your VPN customer gateways.

\n

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN\n User Guide.

", "smithy.api#examples": [ { - "title": "To display a key pair", - "documentation": "This example displays the fingerprint for the specified key.", + "title": "To describe a customer gateway", + "documentation": "This example describes the specified customer gateway.", "input": { - "KeyNames": [ - "my-key-pair" + "CustomerGatewayIds": [ + "cgw-0e11f167" ] }, "output": { - "KeyPairs": [ + "CustomerGateways": [ { - "KeyName": "my-key-pair", - "KeyFingerprint": "1f:51:ae:28:bf:89:e9:d8:1f:25:5d:37:2d:7d:b8:ca:9f:f5:f1:6f" + "CustomerGatewayId": "cgw-0e11f167", + "IpAddress": "12.1.2.3", + "State": "available", + "Type": "ipsec.1", + "BgpAsn": "65534" } ] } } ], - "smithy.api#suppress": [ - "WaitableTraitInvalidErrorType" - ], "smithy.waiters#waitable": { - "KeyPairExists": { + "CustomerGatewayAvailable": { "acceptors": [ { "state": "success", "matcher": { "output": { - "path": "length(KeyPairs[].KeyName) > `0`", - "expected": "true", - "comparator": "booleanEquals" + "path": "CustomerGateways[].State", + "expected": "available", + "comparator": "allStringEquals" } } }, { - "state": "retry", + "state": "failure", "matcher": { - "errorType": "InvalidKeyPair.NotFound" + "output": { + "path": "CustomerGateways[].State", + "expected": "deleted", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "CustomerGateways[].State", + "expected": "deleting", + "comparator": "anyStringEquals" + } } } ], - "minDelay": 5 + "minDelay": 15 } } } }, - "com.amazonaws.ec2#DescribeKeyPairsRequest": { + "com.amazonaws.ec2#DescribeCustomerGatewaysRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" - } - }, - "KeyNames": { - "target": "com.amazonaws.ec2#KeyNameStringList", + "CustomerGatewayIds": { + "target": "com.amazonaws.ec2#CustomerGatewayIdStringList", "traits": { - "smithy.api#documentation": "

The key pair names.

\n

Default: Describes all of your key pairs.

", - "smithy.api#xmlName": "KeyName" + "smithy.api#documentation": "

One or more customer gateway IDs.

\n

Default: Describes all your customer gateways.

", + "smithy.api#xmlName": "CustomerGatewayId" } }, - "KeyPairIds": { - "target": "com.amazonaws.ec2#KeyPairIdStringList", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The IDs of the key pairs.

", - "smithy.api#xmlName": "KeyPairId" + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } - }, - "IncludePublicKey": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

If true, the public key material is included in the response.

\n

Default: false\n

" - } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DescribeCustomerGateways.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeKeyPairsResult": { + "com.amazonaws.ec2#DescribeCustomerGatewaysResult": { "type": "structure", "members": { - "KeyPairs": { - "target": "com.amazonaws.ec2#KeyPairList", + "CustomerGateways": { + "target": "com.amazonaws.ec2#CustomerGatewayList", "traits": { - "aws.protocols#ec2QueryName": "KeySet", - "smithy.api#documentation": "

Information about the key pairs.

", - "smithy.api#xmlName": "keySet" + "aws.protocols#ec2QueryName": "CustomerGatewaySet", + "smithy.api#documentation": "

Information about one or more customer gateways.

", + "smithy.api#xmlName": "customerGatewaySet" } } }, "traits": { + "smithy.api#documentation": "

Contains the output of DescribeCustomerGateways.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeLaunchTemplateVersions": { + "com.amazonaws.ec2#DescribeDeclarativePoliciesReports": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeLaunchTemplateVersionsRequest" + "target": "com.amazonaws.ec2#DescribeDeclarativePoliciesReportsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeLaunchTemplateVersionsResult" + "target": "com.amazonaws.ec2#DescribeDeclarativePoliciesReportsResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more versions of a specified launch template. You can describe all\n versions, individual versions, or a range of versions. You can also describe all the\n latest versions or all the default versions of all the launch templates in your\n account.

", - "smithy.api#examples": [ - { - "title": "To describe the versions for a launch template", - "documentation": "This example describes the versions for the specified launch template.", - "input": { - "LaunchTemplateId": "068f72b72934aff71" - }, - "output": { - "LaunchTemplateVersions": [ - { - "LaunchTemplateId": "lt-068f72b72934aff71", - "LaunchTemplateName": "Webservers", - "VersionNumber": 2, - "CreatedBy": "arn:aws:iam::123456789102:root", - "LaunchTemplateData": { - "KeyName": "kp-us-east", - "ImageId": "ami-6057e21a", - "InstanceType": "t2.medium", - "NetworkInterfaces": [ - { - "SubnetId": "subnet-1a2b3c4d", - "DeviceIndex": 0, - "Groups": [ - "sg-7c227019" - ] - } - ] - }, - "DefaultVersion": false, - "CreateTime": "2017-11-20T13:12:32.000Z" - }, - { - "LaunchTemplateId": "lt-068f72b72934aff71", - "LaunchTemplateName": "Webservers", - "VersionNumber": 1, - "CreatedBy": "arn:aws:iam::123456789102:root", - "LaunchTemplateData": { - "UserData": "", - "KeyName": "kp-us-east", - "ImageId": "ami-aabbcc11", - "InstanceType": "t2.medium", - "NetworkInterfaces": [ - { - "SubnetId": "subnet-7b16de0c", - "DeviceIndex": 0, - "DeleteOnTermination": false, - "Groups": [ - "sg-7c227019" - ], - "AssociatePublicIpAddress": true - } - ] - }, - "DefaultVersion": true, - "CreateTime": "2017-11-20T12:52:33.000Z" - } - ] - } - } - ], - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "LaunchTemplateVersions", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Describes the metadata of an account status report, including the status of the\n report.

\n

To view the full report, download it from the Amazon S3 bucket where it was saved.\n Reports are accessible only when they have the complete status. Reports\n with other statuses (running, cancelled, or\n error) are not available in the S3 bucket. For more information about\n downloading objects from an S3 bucket, see Downloading objects in\n the Amazon Simple Storage Service User Guide.

\n

For more information, see Generating the account status report for declarative policies in the\n Amazon Web Services Organizations User Guide.

" } }, - "com.amazonaws.ec2#DescribeLaunchTemplateVersionsRequest": { + "com.amazonaws.ec2#DescribeDeclarativePoliciesReportsRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" - } - }, - "LaunchTemplateId": { - "target": "com.amazonaws.ec2#LaunchTemplateId", - "traits": { - "smithy.api#documentation": "

The ID of the launch template.

\n

To describe one or more versions of a specified launch template, you must specify\n either the launch template ID or the launch template name, but not both.

\n

To describe all the latest or default launch template versions in your account, you\n must omit this parameter.

" - } - }, - "LaunchTemplateName": { - "target": "com.amazonaws.ec2#LaunchTemplateName", - "traits": { - "smithy.api#documentation": "

The name of the launch template.

\n

To describe one or more versions of a specified launch template, you must specify\n either the launch template name or the launch template ID, but not both.

\n

To describe all the latest or default launch template versions in your account, you\n must omit this parameter.

" - } - }, - "Versions": { - "target": "com.amazonaws.ec2#VersionStringList", - "traits": { - "smithy.api#documentation": "

One or more versions of the launch template. Valid values depend on whether you are\n describing a specified launch template (by ID or name) or all launch templates in your\n account.

\n

To describe one or more versions of a specified launch template, valid values are\n $Latest, $Default, and numbers.

\n

To describe all launch templates in your account that are defined as the latest\n version, the valid value is $Latest. To describe all launch templates in\n your account that are defined as the default version, the valid value is\n $Default. You can specify $Latest and\n $Default in the same request. You cannot specify numbers.

", - "smithy.api#xmlName": "LaunchTemplateVersion" - } - }, - "MinVersion": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The version number after which to describe launch template versions.

" - } - }, - "MaxVersion": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The version number up to which to describe launch template versions.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token to request the next page of results.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, "MaxResults": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining\n results, make another call with the returned NextToken value. This value\n can be between 1 and 200.

" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "target": "com.amazonaws.ec2#DeclarativePoliciesMaxResults", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" } }, - "ResolveAlias": { - "target": "com.amazonaws.ec2#Boolean", + "ReportIds": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

If true, and if a Systems Manager parameter is specified for ImageId,\n the AMI ID is displayed in the response for imageId.

\n

If false, and if a Systems Manager parameter is specified for ImageId,\n the parameter is displayed in the response for imageId.

\n

For more information, see Use a Systems \n Manager parameter instead of an AMI ID in the Amazon Elastic Compute Cloud User Guide.

\n

Default: false\n

" + "smithy.api#documentation": "

One or more report IDs.

", + "smithy.api#xmlName": "ReportId" } } }, @@ -33381,58 +33182,66 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeLaunchTemplateVersionsResult": { + "com.amazonaws.ec2#DescribeDeclarativePoliciesReportsResult": { "type": "structure", "members": { - "LaunchTemplateVersions": { - "target": "com.amazonaws.ec2#LaunchTemplateVersionSet", - "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateVersionSet", - "smithy.api#documentation": "

Information about the launch template versions.

", - "smithy.api#xmlName": "launchTemplateVersionSet" - } - }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null\n when there are no more results to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", "smithy.api#xmlName": "nextToken" } + }, + "Reports": { + "target": "com.amazonaws.ec2#DeclarativePoliciesReportList", + "traits": { + "aws.protocols#ec2QueryName": "ReportSet", + "smithy.api#documentation": "

The report metadata.

", + "smithy.api#xmlName": "reportSet" + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeLaunchTemplates": { + "com.amazonaws.ec2#DescribeDhcpOptions": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeLaunchTemplatesRequest" + "target": "com.amazonaws.ec2#DescribeDhcpOptionsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeLaunchTemplatesResult" + "target": "com.amazonaws.ec2#DescribeDhcpOptionsResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more launch templates.

", + "smithy.api#documentation": "

Describes your DHCP option sets. The default is to describe all your DHCP option sets. \n\t\t Alternatively, you can specify specific DHCP option set IDs or filter the results to\n\t\t include only the DHCP option sets that match specific criteria.

\n

For more information, see DHCP option sets in the\n\t\t\t\tAmazon VPC User Guide.

", "smithy.api#examples": [ { - "title": "To describe a launch template", - "documentation": "This example describes the specified launch template.", + "title": "To describe a DHCP options set", + "documentation": "This example describes the specified DHCP options set.", "input": { - "LaunchTemplateIds": [ - "lt-01238c059e3466abc" + "DhcpOptionsIds": [ + "dopt-d9070ebb" ] }, "output": { - "LaunchTemplates": [ + "DhcpOptions": [ { - "LatestVersionNumber": 1, - "LaunchTemplateName": "my-template", - "LaunchTemplateId": "lt-01238c059e3466abc", - "CreatedBy": "arn:aws:iam::123456789012:root", - "CreateTime": "2018-01-16T04:32:57.000Z", - "DefaultVersionNumber": 1 + "DhcpConfigurations": [ + { + "Values": [ + { + "Value": "10.2.5.2" + }, + { + "Value": "10.2.5.1" + } + ], + "Key": "domain-name-servers" + } + ], + "DhcpOptionsId": "dopt-d9070ebb" } ] } @@ -33441,60 +33250,55 @@ "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "LaunchTemplates", + "items": "DhcpOptions", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeLaunchTemplatesMaxResults": { + "com.amazonaws.ec2#DescribeDhcpOptionsMaxResults": { "type": "integer", "traits": { "smithy.api#range": { - "min": 1, - "max": 200 + "min": 5, + "max": 1000 } } }, - "com.amazonaws.ec2#DescribeLaunchTemplatesRequest": { + "com.amazonaws.ec2#DescribeDhcpOptionsRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" - } - }, - "LaunchTemplateIds": { - "target": "com.amazonaws.ec2#LaunchTemplateIdStringList", + "DhcpOptionsIds": { + "target": "com.amazonaws.ec2#DhcpOptionsIdStringList", "traits": { - "smithy.api#documentation": "

One or more launch template IDs.

", - "smithy.api#xmlName": "LaunchTemplateId" + "smithy.api#documentation": "

The IDs of DHCP option sets.

", + "smithy.api#xmlName": "DhcpOptionsId" } }, - "LaunchTemplateNames": { - "target": "com.amazonaws.ec2#LaunchTemplateNameStringList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

One or more launch template names.

", - "smithy.api#xmlName": "LaunchTemplateName" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeDhcpOptionsMaxResults", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The token to request the next page of results.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeLaunchTemplatesMaxResults", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining\n results, make another call with the returned NextToken value. This value\n can be between 1 and 200.

" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, @@ -33502,81 +33306,90 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeLaunchTemplatesResult": { + "com.amazonaws.ec2#DescribeDhcpOptionsResult": { "type": "structure", "members": { - "LaunchTemplates": { - "target": "com.amazonaws.ec2#LaunchTemplateSet", - "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplates", - "smithy.api#documentation": "

Information about the launch templates.

", - "smithy.api#xmlName": "launchTemplates" - } - }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null\n when there are no more results to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", "smithy.api#xmlName": "nextToken" } + }, + "DhcpOptions": { + "target": "com.amazonaws.ec2#DhcpOptionsList", + "traits": { + "aws.protocols#ec2QueryName": "DhcpOptionsSet", + "smithy.api#documentation": "

Information about the DHCP options sets.

", + "smithy.api#xmlName": "dhcpOptionsSet" + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociations": { + "com.amazonaws.ec2#DescribeEgressOnlyInternetGateways": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequest" + "target": "com.amazonaws.ec2#DescribeEgressOnlyInternetGatewaysRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResult" + "target": "com.amazonaws.ec2#DescribeEgressOnlyInternetGatewaysResult" }, "traits": { - "smithy.api#documentation": "

Describes the associations between virtual interface groups and local gateway route tables.

", + "smithy.api#documentation": "

Describes your egress-only internet gateways. The default is to describe all your egress-only internet gateways. \n Alternatively, you can specify specific egress-only internet gateway IDs or filter the results to\n include only the egress-only internet gateways that match specific criteria.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "LocalGatewayRouteTableVirtualInterfaceGroupAssociations", + "items": "EgressOnlyInternetGateways", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequest": { + "com.amazonaws.ec2#DescribeEgressOnlyInternetGatewaysMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 255 + } + } + }, + "com.amazonaws.ec2#DescribeEgressOnlyInternetGatewaysRequest": { "type": "structure", "members": { - "LocalGatewayRouteTableVirtualInterfaceGroupAssociationIds": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociationIdSet", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The IDs of the associations.

", - "smithy.api#xmlName": "LocalGatewayRouteTableVirtualInterfaceGroupAssociationId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "EgressOnlyInternetGatewayIds": { + "target": "com.amazonaws.ec2#EgressOnlyInternetGatewayIdList", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The IDs of the egress-only internet gateways.

", + "smithy.api#xmlName": "EgressOnlyInternetGatewayId" } }, "MaxResults": { - "target": "com.amazonaws.ec2#LocalGatewayMaxResults", + "target": "com.amazonaws.ec2#DescribeEgressOnlyInternetGatewaysMaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, @@ -33584,22 +33397,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResult": { + "com.amazonaws.ec2#DescribeEgressOnlyInternetGatewaysResult": { "type": "structure", "members": { - "LocalGatewayRouteTableVirtualInterfaceGroupAssociations": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociationSet", + "EgressOnlyInternetGateways": { + "target": "com.amazonaws.ec2#EgressOnlyInternetGatewayList", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableVirtualInterfaceGroupAssociationSet", - "smithy.api#documentation": "

Information about the associations.

", - "smithy.api#xmlName": "localGatewayRouteTableVirtualInterfaceGroupAssociationSet" + "aws.protocols#ec2QueryName": "EgressOnlyInternetGatewaySet", + "smithy.api#documentation": "

Information about the egress-only internet gateways.

", + "smithy.api#xmlName": "egressOnlyInternetGatewaySet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", "smithy.api#xmlName": "nextToken" } } @@ -33608,57 +33421,60 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVpcAssociations": { + "com.amazonaws.ec2#DescribeElasticGpus": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVpcAssociationsRequest" + "target": "com.amazonaws.ec2#DescribeElasticGpusRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVpcAssociationsResult" + "target": "com.amazonaws.ec2#DescribeElasticGpusResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified associations between VPCs and local gateway route tables.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "LocalGatewayRouteTableVpcAssociations", - "pageSize": "MaxResults" + "smithy.api#documentation": "\n

Amazon Elastic Graphics reached end of life on January 8, 2024.

\n
\n

Describes the Elastic Graphics accelerator associated with your instances.

" + } + }, + "com.amazonaws.ec2#DescribeElasticGpusMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 10, + "max": 1000 } } }, - "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVpcAssociationsRequest": { + "com.amazonaws.ec2#DescribeElasticGpusRequest": { "type": "structure", "members": { - "LocalGatewayRouteTableVpcAssociationIds": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociationIdSet", + "ElasticGpuIds": { + "target": "com.amazonaws.ec2#ElasticGpuIdSet", "traits": { - "smithy.api#documentation": "

The IDs of the associations.

", - "smithy.api#xmlName": "LocalGatewayRouteTableVpcAssociationId" + "smithy.api#documentation": "

The Elastic Graphics accelerator IDs.

", + "smithy.api#xmlName": "ElasticGpuId" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#documentation": "

The filters.

\n ", "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#LocalGatewayMaxResults", + "target": "com.amazonaws.ec2#DescribeElasticGpusMaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining\n results, make another call with the returned NextToken value. This value\n can be between 5 and 1000.

" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The token to request the next page of results.

" } } }, @@ -33666,22 +33482,30 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVpcAssociationsResult": { + "com.amazonaws.ec2#DescribeElasticGpusResult": { "type": "structure", "members": { - "LocalGatewayRouteTableVpcAssociations": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociationSet", + "ElasticGpuSet": { + "target": "com.amazonaws.ec2#ElasticGpuSet", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableVpcAssociationSet", - "smithy.api#documentation": "

Information about the associations.

", - "smithy.api#xmlName": "localGatewayRouteTableVpcAssociationSet" + "aws.protocols#ec2QueryName": "ElasticGpuSet", + "smithy.api#documentation": "

Information about the Elastic Graphics accelerators.

", + "smithy.api#xmlName": "elasticGpuSet" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "MaxResults", + "smithy.api#documentation": "

The total number of items to return. If the total number of items available is more\n than the value specified in max-items then a Next-Token will be provided in the output\n that you can use to resume pagination.

", + "smithy.api#xmlName": "maxResults" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is\n null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -33690,57 +33514,66 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeLocalGatewayRouteTables": { + "com.amazonaws.ec2#DescribeExportImageTasks": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeLocalGatewayRouteTablesRequest" + "target": "com.amazonaws.ec2#DescribeExportImageTasksRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeLocalGatewayRouteTablesResult" + "target": "com.amazonaws.ec2#DescribeExportImageTasksResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more local gateway route tables. By default, all local gateway route tables are described.\n Alternatively, you can filter the results.

", + "smithy.api#documentation": "

Describes the specified export image tasks or all of your export image tasks.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "LocalGatewayRouteTables", + "items": "ExportImageTasks", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeLocalGatewayRouteTablesRequest": { + "com.amazonaws.ec2#DescribeExportImageTasksMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 500 + } + } + }, + "com.amazonaws.ec2#DescribeExportImageTasksRequest": { "type": "structure", "members": { - "LocalGatewayRouteTableIds": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableIdSet", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The IDs of the local gateway route tables.

", - "smithy.api#xmlName": "LocalGatewayRouteTableId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#documentation": "

Filter tasks using the task-state filter and one of the following values: active,\n completed, deleting, or deleted.

", "smithy.api#xmlName": "Filter" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#LocalGatewayMaxResults", + "ExportImageTaskIds": { + "target": "com.amazonaws.ec2#ExportImageTaskIdList", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The IDs of the export image tasks.

", + "smithy.api#xmlName": "ExportImageTaskId" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeExportImageTasksMaxResults", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The maximum number of results to return in a single call.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

A token that indicates the next page of results.

" } } }, @@ -33748,22 +33581,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeLocalGatewayRouteTablesResult": { + "com.amazonaws.ec2#DescribeExportImageTasksResult": { "type": "structure", "members": { - "LocalGatewayRouteTables": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableSet", + "ExportImageTasks": { + "target": "com.amazonaws.ec2#ExportImageTaskList", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableSet", - "smithy.api#documentation": "

Information about the local gateway route tables.

", - "smithy.api#xmlName": "localGatewayRouteTableSet" + "aws.protocols#ec2QueryName": "ExportImageTaskSet", + "smithy.api#documentation": "

Information about the export image tasks.

", + "smithy.api#xmlName": "exportImageTaskSet" } }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to use to get the next page of results. This value is null when there are no more results\n to return.

", "smithy.api#xmlName": "nextToken" } } @@ -33772,57 +33605,66 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfaceGroups": { + "com.amazonaws.ec2#DescribeExportTasks": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfaceGroupsRequest" + "target": "com.amazonaws.ec2#DescribeExportTasksRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfaceGroupsResult" + "target": "com.amazonaws.ec2#DescribeExportTasksResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified local gateway virtual interface groups.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "LocalGatewayVirtualInterfaceGroups", - "pageSize": "MaxResults" + "smithy.api#documentation": "

Describes the specified export instance tasks or all of your export instance tasks.

", + "smithy.waiters#waitable": { + "ExportTaskCancelled": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "ExportTasks[].State", + "expected": "cancelled", + "comparator": "allStringEquals" + } + } + } + ], + "minDelay": 15 + }, + "ExportTaskCompleted": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "ExportTasks[].State", + "expected": "completed", + "comparator": "allStringEquals" + } + } + } + ], + "minDelay": 15 + } } } }, - "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfaceGroupsRequest": { + "com.amazonaws.ec2#DescribeExportTasksRequest": { "type": "structure", "members": { - "LocalGatewayVirtualInterfaceGroupIds": { - "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupIdSet", - "traits": { - "smithy.api#documentation": "

The IDs of the virtual interface groups.

", - "smithy.api#xmlName": "LocalGatewayVirtualInterfaceGroupId" - } - }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#documentation": "

the filters for the export tasks.

", "smithy.api#xmlName": "Filter" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#LocalGatewayMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ExportTaskIds": { + "target": "com.amazonaws.ec2#ExportTaskIdStringList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "ExportTaskId", + "smithy.api#documentation": "

The export task IDs.

", + "smithy.api#xmlName": "exportTaskId" } } }, @@ -33830,23 +33672,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfaceGroupsResult": { + "com.amazonaws.ec2#DescribeExportTasksResult": { "type": "structure", "members": { - "LocalGatewayVirtualInterfaceGroups": { - "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupSet", - "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceGroupSet", - "smithy.api#documentation": "

The virtual interface groups.

", - "smithy.api#xmlName": "localGatewayVirtualInterfaceGroupSet" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "ExportTasks": { + "target": "com.amazonaws.ec2#ExportTaskList", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "ExportTaskSet", + "smithy.api#documentation": "

Information about the export tasks.

", + "smithy.api#xmlName": "exportTaskSet" } } }, @@ -33854,57 +33688,57 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfaces": { + "com.amazonaws.ec2#DescribeFastLaunchImages": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfacesRequest" + "target": "com.amazonaws.ec2#DescribeFastLaunchImagesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfacesResult" + "target": "com.amazonaws.ec2#DescribeFastLaunchImagesResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified local gateway virtual interfaces.

", + "smithy.api#documentation": "

Describe details for Windows AMIs that are configured for Windows fast launch.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "LocalGatewayVirtualInterfaces", + "items": "FastLaunchImages", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfacesRequest": { + "com.amazonaws.ec2#DescribeFastLaunchImagesRequest": { "type": "structure", "members": { - "LocalGatewayVirtualInterfaceIds": { - "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceIdSet", + "ImageIds": { + "target": "com.amazonaws.ec2#FastLaunchImageIdList", "traits": { - "smithy.api#documentation": "

The IDs of the virtual interfaces.

", - "smithy.api#xmlName": "LocalGatewayVirtualInterfaceId" + "smithy.api#documentation": "

Specify one or more Windows AMI image IDs for the request.

", + "smithy.api#xmlName": "ImageId" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#documentation": "

Use the following filters to streamline results.

\n ", "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#LocalGatewayMaxResults", + "target": "com.amazonaws.ec2#DescribeFastLaunchImagesRequestMaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" } }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -33912,22 +33746,31 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfacesResult": { + "com.amazonaws.ec2#DescribeFastLaunchImagesRequestMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 200 + } + } + }, + "com.amazonaws.ec2#DescribeFastLaunchImagesResult": { "type": "structure", "members": { - "LocalGatewayVirtualInterfaces": { - "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceSet", + "FastLaunchImages": { + "target": "com.amazonaws.ec2#DescribeFastLaunchImagesSuccessSet", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceSet", - "smithy.api#documentation": "

Information about the virtual interfaces.

", - "smithy.api#xmlName": "localGatewayVirtualInterfaceSet" + "aws.protocols#ec2QueryName": "FastLaunchImageSet", + "smithy.api#documentation": "

A collection of details about the fast-launch enabled Windows images that meet the\n requested criteria.

", + "smithy.api#xmlName": "fastLaunchImageSet" } }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", "smithy.api#xmlName": "nextToken" } } @@ -33936,138 +33779,249 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeLocalGateways": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DescribeLocalGatewaysRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DescribeLocalGatewaysResult" - }, - "traits": { - "smithy.api#documentation": "

Describes one or more local gateways. By default, all local gateways are described. \n Alternatively, you can filter the results.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "LocalGateways", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeLocalGatewaysRequest": { + "com.amazonaws.ec2#DescribeFastLaunchImagesSuccessItem": { "type": "structure", "members": { - "LocalGatewayIds": { - "target": "com.amazonaws.ec2#LocalGatewayIdSet", + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { - "smithy.api#documentation": "

The IDs of the local gateways.

", - "smithy.api#xmlName": "LocalGatewayId" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The image ID that identifies the Windows fast launch enabled image.

", + "smithy.api#xmlName": "imageId" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "ResourceType": { + "target": "com.amazonaws.ec2#FastLaunchResourceType", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" + "aws.protocols#ec2QueryName": "ResourceType", + "smithy.api#documentation": "

The resource type that Amazon EC2 uses for pre-provisioning the Windows AMI. Supported values\n include: snapshot.

", + "smithy.api#xmlName": "resourceType" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#LocalGatewayMaxResults", + "SnapshotConfiguration": { + "target": "com.amazonaws.ec2#FastLaunchSnapshotConfigurationResponse", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "aws.protocols#ec2QueryName": "SnapshotConfiguration", + "smithy.api#documentation": "

A group of parameters that are used for pre-provisioning the associated Windows AMI using\n snapshots.

", + "smithy.api#xmlName": "snapshotConfiguration" } }, - "NextToken": { + "LaunchTemplate": { + "target": "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationResponse", + "traits": { + "aws.protocols#ec2QueryName": "LaunchTemplate", + "smithy.api#documentation": "

The launch template that the Windows fast launch enabled AMI uses when it launches Windows\n instances from pre-provisioned snapshots.

", + "smithy.api#xmlName": "launchTemplate" + } + }, + "MaxParallelLaunches": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "MaxParallelLaunches", + "smithy.api#documentation": "

The maximum number of instances that Amazon EC2 can launch at the same time to create\n pre-provisioned snapshots for Windows fast launch.

", + "smithy.api#xmlName": "maxParallelLaunches" + } + }, + "OwnerId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The owner ID for the Windows fast launch enabled AMI.

", + "smithy.api#xmlName": "ownerId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "State": { + "target": "com.amazonaws.ec2#FastLaunchStateCode", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of Windows fast launch for the specified Windows AMI.

", + "smithy.api#xmlName": "state" + } + }, + "StateTransitionReason": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "StateTransitionReason", + "smithy.api#documentation": "

The reason that Windows fast launch for the AMI changed to the current state.

", + "smithy.api#xmlName": "stateTransitionReason" + } + }, + "StateTransitionTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "StateTransitionTime", + "smithy.api#documentation": "

The time that Windows fast launch for the AMI changed to the current state.

", + "smithy.api#xmlName": "stateTransitionTime" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describe details about a Windows image with Windows fast launch enabled that meets the\n requested criteria. Criteria are defined by the DescribeFastLaunchImages action\n filters.

" } }, - "com.amazonaws.ec2#DescribeLocalGatewaysResult": { + "com.amazonaws.ec2#DescribeFastLaunchImagesSuccessSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DescribeFastLaunchImagesSuccessItem", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#DescribeFastSnapshotRestoreSuccessItem": { "type": "structure", "members": { - "LocalGateways": { - "target": "com.amazonaws.ec2#LocalGatewaySet", + "SnapshotId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewaySet", - "smithy.api#documentation": "

Information about the local gateways.

", - "smithy.api#xmlName": "localGatewaySet" + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The ID of the snapshot.

", + "smithy.api#xmlName": "snapshotId" } }, - "NextToken": { + "AvailabilityZone": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone.

", + "smithy.api#xmlName": "availabilityZone" + } + }, + "State": { + "target": "com.amazonaws.ec2#FastSnapshotRestoreStateCode", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of fast snapshot restores.

", + "smithy.api#xmlName": "state" + } + }, + "StateTransitionReason": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "StateTransitionReason", + "smithy.api#documentation": "

The reason for the state transition. The possible values are as follows:

\n ", + "smithy.api#xmlName": "stateTransitionReason" + } + }, + "OwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that enabled fast snapshot restores on the snapshot.

", + "smithy.api#xmlName": "ownerId" + } + }, + "OwnerAlias": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OwnerAlias", + "smithy.api#documentation": "

The Amazon Web Services owner alias that enabled fast snapshot restores on the snapshot. This is intended for future use.

", + "smithy.api#xmlName": "ownerAlias" + } + }, + "EnablingTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "EnablingTime", + "smithy.api#documentation": "

The time at which fast snapshot restores entered the enabling state.

", + "smithy.api#xmlName": "enablingTime" + } + }, + "OptimizingTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "OptimizingTime", + "smithy.api#documentation": "

The time at which fast snapshot restores entered the optimizing state.

", + "smithy.api#xmlName": "optimizingTime" + } + }, + "EnabledTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "EnabledTime", + "smithy.api#documentation": "

The time at which fast snapshot restores entered the enabled state.

", + "smithy.api#xmlName": "enabledTime" + } + }, + "DisablingTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "DisablingTime", + "smithy.api#documentation": "

The time at which fast snapshot restores entered the disabling state.

", + "smithy.api#xmlName": "disablingTime" + } + }, + "DisabledTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "DisabledTime", + "smithy.api#documentation": "

The time at which fast snapshot restores entered the disabled state.

", + "smithy.api#xmlName": "disabledTime" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes fast snapshot restores for a snapshot.

" } }, - "com.amazonaws.ec2#DescribeLockedSnapshots": { + "com.amazonaws.ec2#DescribeFastSnapshotRestoreSuccessSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DescribeFastSnapshotRestoreSuccessItem", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#DescribeFastSnapshotRestores": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeLockedSnapshotsRequest" + "target": "com.amazonaws.ec2#DescribeFastSnapshotRestoresRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeLockedSnapshotsResult" + "target": "com.amazonaws.ec2#DescribeFastSnapshotRestoresResult" }, "traits": { - "smithy.api#documentation": "

Describes the lock status for a snapshot.

" + "smithy.api#documentation": "

Describes the state of fast snapshot restores for your snapshots.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "FastSnapshotRestores", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DescribeLockedSnapshotsMaxResults": { + "com.amazonaws.ec2#DescribeFastSnapshotRestoresMaxResults": { "type": "integer", "traits": { "smithy.api#range": { - "min": 5, - "max": 1000 + "min": 0, + "max": 200 } } }, - "com.amazonaws.ec2#DescribeLockedSnapshotsRequest": { + "com.amazonaws.ec2#DescribeFastSnapshotRestoresRequest": { "type": "structure", "members": { "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#documentation": "

The filters. The possible values are:

\n ", "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#DescribeLockedSnapshotsMaxResults", + "target": "com.amazonaws.ec2#DescribeFastSnapshotRestoresMaxResults", "traits": { "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output. \n\tFor more information, see Pagination.

" } }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" } }, - "SnapshotIds": { - "target": "com.amazonaws.ec2#SnapshotIdStringList", - "traits": { - "smithy.api#documentation": "

The IDs of the snapshots for which to view the lock status.

", - "smithy.api#xmlName": "SnapshotId" - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { @@ -34079,19 +34033,19 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeLockedSnapshotsResult": { + "com.amazonaws.ec2#DescribeFastSnapshotRestoresResult": { "type": "structure", "members": { - "Snapshots": { - "target": "com.amazonaws.ec2#LockedSnapshotsInfoList", + "FastSnapshotRestores": { + "target": "com.amazonaws.ec2#DescribeFastSnapshotRestoreSuccessSet", "traits": { - "aws.protocols#ec2QueryName": "SnapshotSet", - "smithy.api#documentation": "

Information about the snapshots.

", - "smithy.api#xmlName": "snapshotSet" + "aws.protocols#ec2QueryName": "FastSnapshotRestoreSet", + "smithy.api#documentation": "

Information about the state of fast snapshot restores.

", + "smithy.api#xmlName": "fastSnapshotRestoreSet" } }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { "aws.protocols#ec2QueryName": "NextToken", "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", @@ -34103,51 +34057,99 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeMacHosts": { + "com.amazonaws.ec2#DescribeFleetError": { + "type": "structure", + "members": { + "LaunchTemplateAndOverrides": { + "target": "com.amazonaws.ec2#LaunchTemplateAndOverridesResponse", + "traits": { + "aws.protocols#ec2QueryName": "LaunchTemplateAndOverrides", + "smithy.api#documentation": "

The launch templates and overrides that were used for launching the instances. The\n values that you specify in the Overrides replace the values in the launch template.

", + "smithy.api#xmlName": "launchTemplateAndOverrides" + } + }, + "Lifecycle": { + "target": "com.amazonaws.ec2#InstanceLifecycle", + "traits": { + "aws.protocols#ec2QueryName": "Lifecycle", + "smithy.api#documentation": "

Indicates if the instance that could not be launched was a Spot Instance or On-Demand Instance.

", + "smithy.api#xmlName": "lifecycle" + } + }, + "ErrorCode": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ErrorCode", + "smithy.api#documentation": "

The error code that indicates why the instance could not be launched. For more\n information about error codes, see Error codes.

", + "smithy.api#xmlName": "errorCode" + } + }, + "ErrorMessage": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ErrorMessage", + "smithy.api#documentation": "

The error message that describes why the instance could not be launched. For more\n information about error messages, see Error codes.

", + "smithy.api#xmlName": "errorMessage" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the instances that could not be launched by the fleet.

" + } + }, + "com.amazonaws.ec2#DescribeFleetHistory": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeMacHostsRequest" + "target": "com.amazonaws.ec2#DescribeFleetHistoryRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeMacHostsResult" + "target": "com.amazonaws.ec2#DescribeFleetHistoryResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified EC2 Mac Dedicated Host or all of your EC2 Mac Dedicated Hosts.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "MacHosts", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Describes the events for the specified EC2 Fleet during the specified time.

\n

EC2 Fleet events are delayed by up to 30 seconds before they can be described. This ensures\n that you can query by the last evaluated time and not miss a recorded event. EC2 Fleet events\n are available for 48 hours.

\n

For more information, see Monitor fleet events using Amazon EventBridge in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#DescribeMacHostsRequest": { + "com.amazonaws.ec2#DescribeFleetHistoryRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "HostIds": { - "target": "com.amazonaws.ec2#RequestHostIdList", + "EventType": { + "target": "com.amazonaws.ec2#FleetEventType", "traits": { - "smithy.api#documentation": "

\n The IDs of the EC2 Mac Dedicated Hosts.\n

", - "smithy.api#xmlName": "HostId" + "smithy.api#documentation": "

The type of events to describe. By default, all events are described.

" } }, "MaxResults": { - "target": "com.amazonaws.ec2#DescribeMacHostsRequestMaxResults", + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.

" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + } + }, + "FleetId": { + "target": "com.amazonaws.ec2#FleetId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the EC2 Fleet.

", + "smithy.api#required": {} + } + }, + "StartTime": { + "target": "com.amazonaws.ec2#DateTime", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The start date and time for the events, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).

", + "smithy.api#required": {} } } }, @@ -34155,58 +34157,67 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeMacHostsRequestMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 500 - } - } - }, - "com.amazonaws.ec2#DescribeMacHostsResult": { + "com.amazonaws.ec2#DescribeFleetHistoryResult": { "type": "structure", "members": { - "MacHosts": { - "target": "com.amazonaws.ec2#MacHostList", + "HistoryRecords": { + "target": "com.amazonaws.ec2#HistoryRecordSet", "traits": { - "aws.protocols#ec2QueryName": "MacHostSet", - "smithy.api#documentation": "

\n Information about the EC2 Mac Dedicated Hosts.\n

", - "smithy.api#xmlName": "macHostSet" + "aws.protocols#ec2QueryName": "HistoryRecordSet", + "smithy.api#documentation": "

Information about the events in the history of the EC2 Fleet.

", + "smithy.api#xmlName": "historyRecordSet" + } + }, + "LastEvaluatedTime": { + "target": "com.amazonaws.ec2#DateTime", + "traits": { + "aws.protocols#ec2QueryName": "LastEvaluatedTime", + "smithy.api#documentation": "

The last date and time for the events, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).\n All records up to this time were retrieved.

\n

If nextToken indicates that there are more items, this value is not\n present.

", + "smithy.api#xmlName": "lastEvaluatedTime" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", "smithy.api#xmlName": "nextToken" } + }, + "FleetId": { + "target": "com.amazonaws.ec2#FleetId", + "traits": { + "aws.protocols#ec2QueryName": "FleetId", + "smithy.api#documentation": "

The ID of the EC Fleet.

", + "smithy.api#xmlName": "fleetId" + } + }, + "StartTime": { + "target": "com.amazonaws.ec2#DateTime", + "traits": { + "aws.protocols#ec2QueryName": "StartTime", + "smithy.api#documentation": "

The start date and time for the events, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).

", + "smithy.api#xmlName": "startTime" + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeManagedPrefixLists": { + "com.amazonaws.ec2#DescribeFleetInstances": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeManagedPrefixListsRequest" + "target": "com.amazonaws.ec2#DescribeFleetInstancesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeManagedPrefixListsResult" + "target": "com.amazonaws.ec2#DescribeFleetInstancesResult" }, "traits": { - "smithy.api#documentation": "

Describes your managed prefix lists and any Amazon Web Services-managed prefix lists.

\n

To view the entries for your prefix list, use GetManagedPrefixListEntries.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "PrefixLists", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Describes the running instances for the specified EC2 Fleet.

\n \n

Currently, DescribeFleetInstances does not support fleets of type\n instant. Instead, use DescribeFleets, specifying the\n instant fleet ID in the request.

\n
\n

For more information, see Describe your\n EC2 Fleet in the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#DescribeManagedPrefixListsRequest": { + "com.amazonaws.ec2#DescribeFleetInstancesRequest": { "type": "structure", "members": { "DryRun": { @@ -34215,30 +34226,31 @@ "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#PrefixListMaxResults", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "FleetId": { + "target": "com.amazonaws.ec2#FleetId", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the EC2 Fleet.

", + "smithy.api#required": {} } }, - "PrefixListIds": { - "target": "com.amazonaws.ec2#ValueStringList", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more prefix list IDs.

", - "smithy.api#xmlName": "PrefixListId" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, @@ -34246,23 +34258,31 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeManagedPrefixListsResult": { + "com.amazonaws.ec2#DescribeFleetInstancesResult": { "type": "structure", "members": { - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "ActiveInstances": { + "target": "com.amazonaws.ec2#ActiveInstanceSet", + "traits": { + "aws.protocols#ec2QueryName": "ActiveInstanceSet", + "smithy.api#documentation": "

The running instances. This list is refreshed periodically and might be out of\n date.

", + "smithy.api#xmlName": "activeInstanceSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", "smithy.api#xmlName": "nextToken" } }, - "PrefixLists": { - "target": "com.amazonaws.ec2#ManagedPrefixListSet", + "FleetId": { + "target": "com.amazonaws.ec2#FleetId", "traits": { - "aws.protocols#ec2QueryName": "PrefixListSet", - "smithy.api#documentation": "

Information about the prefix lists.

", - "smithy.api#xmlName": "prefixListSet" + "aws.protocols#ec2QueryName": "FleetId", + "smithy.api#documentation": "

The ID of the EC2 Fleet.

", + "smithy.api#xmlName": "fleetId" } } }, @@ -34270,88 +34290,123 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeMovingAddresses": { + "com.amazonaws.ec2#DescribeFleets": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeMovingAddressesRequest" + "target": "com.amazonaws.ec2#DescribeFleetsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeMovingAddressesResult" + "target": "com.amazonaws.ec2#DescribeFleetsResult" }, "traits": { - "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Describes your Elastic IP addresses that are being moved from or being restored to the EC2-Classic platform. \n This request does not return information about any other Elastic IP addresses in your account.

", - "smithy.api#examples": [ - { - "title": "To describe your moving addresses", - "documentation": "This example describes all of your moving Elastic IP addresses.", - "output": { - "MovingAddressStatuses": [ - { - "PublicIp": "198.51.100.0", - "MoveStatus": "movingToVpc" - } - ] - } - } - ], + "smithy.api#documentation": "

Describes the specified EC2 Fleet or all of your EC2 Fleets.

\n \n

If a fleet is of type instant, you must specify the fleet ID in the\n request, otherwise the fleet does not appear in the response.

\n
\n

For more information, see Describe your\n EC2 Fleet in the Amazon EC2 User Guide.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "MovingAddressStatuses", + "items": "Fleets", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeMovingAddressesMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 + "com.amazonaws.ec2#DescribeFleetsErrorSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DescribeFleetError", + "traits": { + "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#DescribeMovingAddressesRequest": { + "com.amazonaws.ec2#DescribeFleetsInstances": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "LaunchTemplateAndOverrides": { + "target": "com.amazonaws.ec2#LaunchTemplateAndOverridesResponse", "traits": { - "aws.protocols#ec2QueryName": "Filter", - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "filter" + "aws.protocols#ec2QueryName": "LaunchTemplateAndOverrides", + "smithy.api#documentation": "

The launch templates and overrides that were used for launching the instances. The\n values that you specify in the Overrides replace the values in the launch template.

", + "smithy.api#xmlName": "launchTemplateAndOverrides" + } + }, + "Lifecycle": { + "target": "com.amazonaws.ec2#InstanceLifecycle", + "traits": { + "aws.protocols#ec2QueryName": "Lifecycle", + "smithy.api#documentation": "

Indicates if the instance that was launched is a Spot Instance or On-Demand Instance.

", + "smithy.api#xmlName": "lifecycle" + } + }, + "InstanceIds": { + "target": "com.amazonaws.ec2#InstanceIdsSet", + "traits": { + "aws.protocols#ec2QueryName": "InstanceIds", + "smithy.api#documentation": "

The IDs of the instances.

", + "smithy.api#xmlName": "instanceIds" + } + }, + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", + "traits": { + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type.

", + "smithy.api#xmlName": "instanceType" } }, + "Platform": { + "target": "com.amazonaws.ec2#PlatformValues", + "traits": { + "aws.protocols#ec2QueryName": "Platform", + "smithy.api#documentation": "

The value is windows for Windows instances in an EC2 Fleet. Otherwise, the value is\n blank.

", + "smithy.api#xmlName": "platform" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the instances that were launched by the fleet.

" + } + }, + "com.amazonaws.ec2#DescribeFleetsInstancesSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DescribeFleetsInstances", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#DescribeFleetsRequest": { + "type": "structure", + "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, "MaxResults": { - "target": "com.amazonaws.ec2#DescribeMovingAddressesMaxResults", + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "MaxResults", - "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining\n results of the initial request can be seen by sending another request with the returned\n NextToken value. This value can be between 5 and 1000; if\n MaxResults is given a value outside of this range, an error is returned.

\n

Default: If no value is provided, the default is 1000.

", - "smithy.api#xmlName": "maxResults" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token for the next page of results.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, - "PublicIps": { - "target": "com.amazonaws.ec2#ValueStringList", + "FleetIds": { + "target": "com.amazonaws.ec2#FleetIdSet", "traits": { - "aws.protocols#ec2QueryName": "PublicIp", - "smithy.api#documentation": "

One or more Elastic IP addresses.

", - "smithy.api#xmlName": "publicIp" + "smithy.api#documentation": "

The IDs of the EC2 Fleets.

\n \n

If a fleet is of type instant, you must specify the fleet ID, otherwise\n it does not appear in the response.

\n
", + "smithy.api#xmlName": "FleetId" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, @@ -34359,170 +34414,49 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeMovingAddressesResult": { + "com.amazonaws.ec2#DescribeFleetsResult": { "type": "structure", "members": { - "MovingAddressStatuses": { - "target": "com.amazonaws.ec2#MovingAddressStatusSet", - "traits": { - "aws.protocols#ec2QueryName": "MovingAddressStatusSet", - "smithy.api#documentation": "

The status for each Elastic IP address.

", - "smithy.api#xmlName": "movingAddressStatusSet" - } - }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", "smithy.api#xmlName": "nextToken" } + }, + "Fleets": { + "target": "com.amazonaws.ec2#FleetSet", + "traits": { + "aws.protocols#ec2QueryName": "FleetSet", + "smithy.api#documentation": "

Information about the EC2 Fleets.

", + "smithy.api#xmlName": "fleetSet" + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeNatGateways": { + "com.amazonaws.ec2#DescribeFlowLogs": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeNatGatewaysRequest" + "target": "com.amazonaws.ec2#DescribeFlowLogsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeNatGatewaysResult" + "target": "com.amazonaws.ec2#DescribeFlowLogsResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your NAT gateways.

", - "smithy.api#examples": [ - { - "title": "To describe a NAT gateway", - "documentation": "This example describes the NAT gateway for the specified VPC.", - "input": { - "Filter": [ - { - "Name": "vpc-id", - "Values": [ - "vpc-1a2b3c4d" - ] - } - ] - }, - "output": { - "NatGateways": [ - { - "NatGatewayAddresses": [ - { - "PublicIp": "198.11.222.333", - "NetworkInterfaceId": "eni-9dec76cd", - "AllocationId": "eipalloc-89c620ec", - "PrivateIp": "10.0.0.149" - } - ], - "VpcId": "vpc-1a2b3c4d", - "State": "available", - "NatGatewayId": "nat-05dba92075d71c408", - "SubnetId": "subnet-847e4dc2", - "CreateTime": "2015-12-01T12:26:55.983Z" - } - ] - } - } - ], + "smithy.api#documentation": "

Describes one or more flow logs.

\n

To view the published flow log records, you must view the log destination. For example, \n the CloudWatch Logs log group, the Amazon S3 bucket, or the Kinesis Data Firehose delivery stream.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "NatGateways", + "items": "FlowLogs", "pageSize": "MaxResults" - }, - "smithy.api#suppress": [ - "WaitableTraitInvalidErrorType" - ], - "smithy.waiters#waitable": { - "NatGatewayAvailable": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "NatGateways[].State", - "expected": "available", - "comparator": "allStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "NatGateways[].State", - "expected": "failed", - "comparator": "anyStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "NatGateways[].State", - "expected": "deleting", - "comparator": "anyStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "NatGateways[].State", - "expected": "deleted", - "comparator": "anyStringEquals" - } - } - }, - { - "state": "retry", - "matcher": { - "errorType": "NatGatewayNotFound" - } - } - ], - "minDelay": 15 - }, - "NatGatewayDeleted": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "NatGateways[].State", - "expected": "deleted", - "comparator": "allStringEquals" - } - } - }, - { - "state": "success", - "matcher": { - "errorType": "NatGatewayNotFound" - } - } - ], - "minDelay": 15 - } - } - } - }, - "com.amazonaws.ec2#DescribeNatGatewaysMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 } } }, - "com.amazonaws.ec2#DescribeNatGatewaysRequest": { + "com.amazonaws.ec2#DescribeFlowLogsRequest": { "type": "structure", "members": { "DryRun": { @@ -34534,26 +34468,26 @@ "Filter": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters.

\n " + "smithy.api#documentation": "

One or more filters.

\n " } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeNatGatewaysMaxResults", + "FlowLogIds": { + "target": "com.amazonaws.ec2#FlowLogIdList", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" + "smithy.api#documentation": "

One or more flow log IDs.

\n

Constraint: Maximum of 1000 flow log IDs.

", + "smithy.api#xmlName": "FlowLogId" } }, - "NatGatewayIds": { - "target": "com.amazonaws.ec2#NatGatewayIdStringList", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The IDs of the NAT gateways.

", - "smithy.api#xmlName": "NatGatewayId" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

The token to request the next page of items. Pagination continues from the end of the items returned by the previous request.

" } } }, @@ -34561,22 +34495,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeNatGatewaysResult": { + "com.amazonaws.ec2#DescribeFlowLogsResult": { "type": "structure", "members": { - "NatGateways": { - "target": "com.amazonaws.ec2#NatGatewayList", + "FlowLogs": { + "target": "com.amazonaws.ec2#FlowLogSet", "traits": { - "aws.protocols#ec2QueryName": "NatGatewaySet", - "smithy.api#documentation": "

Information about the NAT gateways.

", - "smithy.api#xmlName": "natGatewaySet" + "aws.protocols#ec2QueryName": "FlowLogSet", + "smithy.api#documentation": "

Information about the flow logs.

", + "smithy.api#xmlName": "flowLogSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "smithy.api#documentation": "

The token to request the next page of items. This value is null when there are no more items to return.

", "smithy.api#xmlName": "nextToken" } } @@ -34585,112 +34519,41 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeNetworkAcls": { + "com.amazonaws.ec2#DescribeFpgaImageAttribute": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeNetworkAclsRequest" + "target": "com.amazonaws.ec2#DescribeFpgaImageAttributeRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeNetworkAclsResult" + "target": "com.amazonaws.ec2#DescribeFpgaImageAttributeResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your network ACLs.

\n

For more information, see Network ACLs in the\n\t\t\t\tAmazon VPC User Guide.

", - "smithy.api#examples": [ - { - "title": "To describe a network ACL", - "documentation": "This example describes the specified network ACL.", - "input": { - "NetworkAclIds": [ - "acl-5fb85d36" - ] - }, - "output": { - "NetworkAcls": [ - { - "Associations": [ - { - "SubnetId": "subnet-65ea5f08", - "NetworkAclId": "acl-9aeb5ef7", - "NetworkAclAssociationId": "aclassoc-66ea5f0b" - } - ], - "NetworkAclId": "acl-5fb85d36", - "VpcId": "vpc-a01106c2", - "Tags": [], - "Entries": [ - { - "CidrBlock": "0.0.0.0/0", - "RuleNumber": 32767, - "Protocol": "-1", - "Egress": true, - "RuleAction": "deny" - }, - { - "CidrBlock": "0.0.0.0/0", - "RuleNumber": 32767, - "Protocol": "-1", - "Egress": false, - "RuleAction": "deny" - } - ], - "IsDefault": false - } - ] - } - } - ], - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "NetworkAcls", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeNetworkAclsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } + "smithy.api#documentation": "

Describes the specified attribute of the specified Amazon FPGA Image (AFI).

" } }, - "com.amazonaws.ec2#DescribeNetworkAclsRequest": { + "com.amazonaws.ec2#DescribeFpgaImageAttributeRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" - } - }, - "NetworkAclIds": { - "target": "com.amazonaws.ec2#NetworkAclIdStringList", - "traits": { - "smithy.api#documentation": "

The IDs of the network ACLs.

\n

Default: Describes all your network ACLs.

", - "smithy.api#xmlName": "NetworkAclId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "FpgaImageId": { + "target": "com.amazonaws.ec2#FpgaImageId", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the AFI.

", + "smithy.api#required": {} } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeNetworkAclsMaxResults", + "Attribute": { + "target": "com.amazonaws.ec2#FpgaImageAttributeName", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The AFI attribute.

", + "smithy.api#required": {} } } }, @@ -34698,23 +34561,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeNetworkAclsResult": { + "com.amazonaws.ec2#DescribeFpgaImageAttributeResult": { "type": "structure", "members": { - "NetworkAcls": { - "target": "com.amazonaws.ec2#NetworkAclList", - "traits": { - "aws.protocols#ec2QueryName": "NetworkAclSet", - "smithy.api#documentation": "

Information about one or more network ACLs.

", - "smithy.api#xmlName": "networkAclSet" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "FpgaImageAttribute": { + "target": "com.amazonaws.ec2#FpgaImageAttribute", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "FpgaImageAttribute", + "smithy.api#documentation": "

Information about the attribute.

", + "smithy.api#xmlName": "fpgaImageAttribute" } } }, @@ -34722,75 +34577,73 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopeAnalyses": { + "com.amazonaws.ec2#DescribeFpgaImages": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopeAnalysesRequest" + "target": "com.amazonaws.ec2#DescribeFpgaImagesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopeAnalysesResult" + "target": "com.amazonaws.ec2#DescribeFpgaImagesResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified Network Access Scope analyses.

", + "smithy.api#documentation": "

Describes the Amazon FPGA Images (AFIs) available to you. These include public AFIs,\n\t\t\tprivate AFIs that you own, and AFIs owned by other Amazon Web Services accounts for which you have load\n\t\t\tpermissions.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "NetworkInsightsAccessScopeAnalyses", + "items": "FpgaImages", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopeAnalysesRequest": { + "com.amazonaws.ec2#DescribeFpgaImagesMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeFpgaImagesRequest": { "type": "structure", "members": { - "NetworkInsightsAccessScopeAnalysisIds": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisIdList", - "traits": { - "smithy.api#documentation": "

The IDs of the Network Access Scope analyses.

", - "smithy.api#xmlName": "NetworkInsightsAccessScopeAnalysisId" - } - }, - "NetworkInsightsAccessScopeId": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The ID of the Network Access Scope.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "AnalysisStartTimeBegin": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "FpgaImageIds": { + "target": "com.amazonaws.ec2#FpgaImageIdList", "traits": { - "smithy.api#documentation": "

Filters the results based on the start time. The analysis must have started on or after this time.

" + "smithy.api#documentation": "

The AFI IDs.

", + "smithy.api#xmlName": "FpgaImageId" } }, - "AnalysisStartTimeEnd": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "Owners": { + "target": "com.amazonaws.ec2#OwnerStringList", "traits": { - "smithy.api#documentation": "

Filters the results based on the start time. The analysis must have started on or before this time.

" + "smithy.api#documentation": "

Filters the AFI by owner. Specify an Amazon Web Services account ID, self \n\t\t\t(owner is the sender of the request), or an Amazon Web Services owner alias (valid values are \n\t\t\tamazon | aws-marketplace).

", + "smithy.api#xmlName": "Owner" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

There are no supported filters.

", + "smithy.api#documentation": "

The filters.

\n ", "smithy.api#xmlName": "Filter" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#NetworkInsightsMaxResults", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n To retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The token to retrieve the next page of results.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeFpgaImagesMaxResults", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", - "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The maximum number of results to return in a single call.

" } } }, @@ -34798,19 +34651,19 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopeAnalysesResult": { + "com.amazonaws.ec2#DescribeFpgaImagesResult": { "type": "structure", "members": { - "NetworkInsightsAccessScopeAnalyses": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisList", + "FpgaImages": { + "target": "com.amazonaws.ec2#FpgaImageList", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeAnalysisSet", - "smithy.api#documentation": "

The Network Access Scope analyses.

", - "smithy.api#xmlName": "networkInsightsAccessScopeAnalysisSet" + "aws.protocols#ec2QueryName": "FpgaImageSet", + "smithy.api#documentation": "

Information about the FPGA images.

", + "smithy.api#xmlName": "fpgaImageSet" } }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { "aws.protocols#ec2QueryName": "NextToken", "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", @@ -34822,57 +34675,70 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopes": { + "com.amazonaws.ec2#DescribeFutureCapacityMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeHostReservationOfferings": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopesRequest" + "target": "com.amazonaws.ec2#DescribeHostReservationOfferingsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopesResult" + "target": "com.amazonaws.ec2#DescribeHostReservationOfferingsResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified Network Access Scopes.

", + "smithy.api#documentation": "

Describes the Dedicated Host reservations that are available to purchase.

\n

The results describe all of the Dedicated Host reservation offerings, including\n offerings that might not match the instance family and Region of your Dedicated Hosts.\n When purchasing an offering, ensure that the instance family and Region of the offering\n matches that of the Dedicated Hosts with which it is to be associated. For more\n information about supported instance types, see Dedicated Hosts\n in the Amazon EC2 User Guide.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "NetworkInsightsAccessScopes", + "items": "OfferingSet", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopesRequest": { + "com.amazonaws.ec2#DescribeHostReservationOfferingsRequest": { "type": "structure", "members": { - "NetworkInsightsAccessScopeIds": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeIdList", + "Filter": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The IDs of the Network Access Scopes.

", - "smithy.api#xmlName": "NetworkInsightsAccessScopeId" + "smithy.api#documentation": "

The filters.

\n " } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "MaxDuration": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

There are no supported filters.

", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

This is the maximum duration of the reservation to purchase, specified in seconds.\n Reservations are available in one-year and three-year terms. The number of seconds\n specified must be the number of seconds in a year (365x24x60x60) times one of the\n supported durations (1 or 3). For example, specify 94608000 for three years.

" } }, "MaxResults": { - "target": "com.amazonaws.ec2#NetworkInsightsMaxResults", + "target": "com.amazonaws.ec2#DescribeHostReservationsMaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n To retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "MinDuration": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

This is the minimum duration of the reservation you'd like to purchase, specified in\n seconds. Reservations are available in one-year and three-year terms. The number of\n seconds specified must be the number of seconds in a year (365x24x60x60) times one of\n the supported durations (1 or 3). For example, specify 31536000 for one year.

" } }, "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" + } + }, + "OfferingId": { + "target": "com.amazonaws.ec2#OfferingId", + "traits": { + "smithy.api#documentation": "

The ID of the reservation offering.

" } } }, @@ -34880,17 +34746,9 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopesResult": { + "com.amazonaws.ec2#DescribeHostReservationOfferingsResult": { "type": "structure", "members": { - "NetworkInsightsAccessScopes": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeList", - "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeSet", - "smithy.api#documentation": "

The Network Access Scopes.

", - "smithy.api#xmlName": "networkInsightsAccessScopeSet" - } - }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { @@ -34898,81 +34756,72 @@ "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } + }, + "OfferingSet": { + "target": "com.amazonaws.ec2#HostOfferingSet", + "traits": { + "aws.protocols#ec2QueryName": "OfferingSet", + "smithy.api#documentation": "

Information about the offerings.

", + "smithy.api#xmlName": "offeringSet" + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeNetworkInsightsAnalyses": { + "com.amazonaws.ec2#DescribeHostReservations": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeNetworkInsightsAnalysesRequest" + "target": "com.amazonaws.ec2#DescribeHostReservationsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeNetworkInsightsAnalysesResult" + "target": "com.amazonaws.ec2#DescribeHostReservationsResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your network insights analyses.

", + "smithy.api#documentation": "

Describes reservations that are associated with Dedicated Hosts in your\n account.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "NetworkInsightsAnalyses", + "items": "HostReservationSet", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeNetworkInsightsAnalysesRequest": { + "com.amazonaws.ec2#DescribeHostReservationsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 500 + } + } + }, + "com.amazonaws.ec2#DescribeHostReservationsRequest": { "type": "structure", "members": { - "NetworkInsightsAnalysisIds": { - "target": "com.amazonaws.ec2#NetworkInsightsAnalysisIdList", - "traits": { - "smithy.api#documentation": "

The ID of the network insights analyses. You must specify either analysis IDs or a path ID.

", - "smithy.api#xmlName": "NetworkInsightsAnalysisId" - } - }, - "NetworkInsightsPathId": { - "target": "com.amazonaws.ec2#NetworkInsightsPathId", - "traits": { - "smithy.api#documentation": "

The ID of the path. You must specify either a path ID or analysis IDs.

" - } - }, - "AnalysisStartTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "smithy.api#documentation": "

The time when the network insights analyses started.

" - } - }, - "AnalysisEndTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "smithy.api#documentation": "

The time when the network insights analyses ended.

" - } - }, - "Filters": { + "Filter": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters. The following are the possible values:

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The filters.

\n " } }, - "MaxResults": { - "target": "com.amazonaws.ec2#NetworkInsightsMaxResults", + "HostReservationIdSet": { + "target": "com.amazonaws.ec2#HostReservationIdSet", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n To retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The host reservation IDs.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.

" } }, "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" } } }, @@ -34980,15 +34829,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeNetworkInsightsAnalysesResult": { + "com.amazonaws.ec2#DescribeHostReservationsResult": { "type": "structure", "members": { - "NetworkInsightsAnalyses": { - "target": "com.amazonaws.ec2#NetworkInsightsAnalysisList", + "HostReservationSet": { + "target": "com.amazonaws.ec2#HostReservationSet", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAnalysisSet", - "smithy.api#documentation": "

Information about the network insights analyses.

", - "smithy.api#xmlName": "networkInsightsAnalysisSet" + "aws.protocols#ec2QueryName": "HostReservationSet", + "smithy.api#documentation": "

Details about the reservation's configuration.

", + "smithy.api#xmlName": "hostReservationSet" } }, "NextToken": { @@ -35004,57 +34853,57 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeNetworkInsightsPaths": { + "com.amazonaws.ec2#DescribeHosts": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeNetworkInsightsPathsRequest" + "target": "com.amazonaws.ec2#DescribeHostsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeNetworkInsightsPathsResult" + "target": "com.amazonaws.ec2#DescribeHostsResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your paths.

", + "smithy.api#documentation": "

Describes the specified Dedicated Hosts or all your Dedicated Hosts.

\n

The results describe only the Dedicated Hosts in the Region you're currently using.\n All listed instances consume capacity on your Dedicated Host. Dedicated Hosts that have\n recently been released are listed with the state released.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "NetworkInsightsPaths", + "items": "Hosts", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeNetworkInsightsPathsRequest": { + "com.amazonaws.ec2#DescribeHostsRequest": { "type": "structure", "members": { - "NetworkInsightsPathIds": { - "target": "com.amazonaws.ec2#NetworkInsightsPathIdList", + "HostIds": { + "target": "com.amazonaws.ec2#RequestHostIdList", "traits": { - "smithy.api#documentation": "

The IDs of the paths.

", - "smithy.api#xmlName": "NetworkInsightsPathId" + "aws.protocols#ec2QueryName": "HostId", + "smithy.api#documentation": "

The IDs of the Dedicated Hosts. The IDs are used for targeted instance\n launches.

", + "smithy.api#xmlName": "hostId" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The filters. The following are the possible values:

\n ", - "smithy.api#xmlName": "Filter" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

", + "smithy.api#xmlName": "nextToken" } }, "MaxResults": { - "target": "com.amazonaws.ec2#NetworkInsightsMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n To retrieve the remaining results, make another call with the returned nextToken value.

" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "MaxResults", + "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.

\n

You cannot specify this parameter and the host IDs parameter in the same\n request.

", + "smithy.api#xmlName": "maxResults" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "Filter": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "aws.protocols#ec2QueryName": "Filter", + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "filter" } } }, @@ -35062,15 +34911,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeNetworkInsightsPathsResult": { + "com.amazonaws.ec2#DescribeHostsResult": { "type": "structure", "members": { - "NetworkInsightsPaths": { - "target": "com.amazonaws.ec2#NetworkInsightsPathList", + "Hosts": { + "target": "com.amazonaws.ec2#HostList", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsPathSet", - "smithy.api#documentation": "

Information about the paths.

", - "smithy.api#xmlName": "networkInsightsPathSet" + "aws.protocols#ec2QueryName": "HostSet", + "smithy.api#documentation": "

Information about the Dedicated Hosts.

", + "smithy.api#xmlName": "hostSet" } }, "NextToken": { @@ -35086,442 +34935,204 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeNetworkInterfaceAttribute": { + "com.amazonaws.ec2#DescribeIamInstanceProfileAssociations": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeNetworkInterfaceAttributeRequest" + "target": "com.amazonaws.ec2#DescribeIamInstanceProfileAssociationsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeNetworkInterfaceAttributeResult" + "target": "com.amazonaws.ec2#DescribeIamInstanceProfileAssociationsResult" }, "traits": { - "smithy.api#documentation": "

Describes a network interface attribute. You can specify only one attribute at a time.

", + "smithy.api#documentation": "

Describes your IAM instance profile associations.

", "smithy.api#examples": [ { - "title": "To describe the attachment attribute of a network interface", - "documentation": "This example describes the attachment attribute of the specified network interface.", - "input": { - "NetworkInterfaceId": "eni-686ea200", - "Attribute": "attachment" - }, - "output": { - "NetworkInterfaceId": "eni-686ea200", - "Attachment": { - "Status": "attached", - "DeviceIndex": 0, - "AttachTime": "2015-05-21T20:02:20.000Z", - "InstanceId": "i-1234567890abcdef0", - "DeleteOnTermination": true, - "AttachmentId": "eni-attach-43348162", - "InstanceOwnerId": "123456789012" - } - } - }, - { - "title": "To describe the description attribute of a network interface", - "documentation": "This example describes the description attribute of the specified network interface.", - "input": { - "NetworkInterfaceId": "eni-686ea200", - "Attribute": "description" - }, - "output": { - "NetworkInterfaceId": "eni-686ea200", - "Description": { - "Value": "My description" - } - } - }, - { - "title": "To describe the groupSet attribute of a network interface", - "documentation": "This example describes the groupSet attribute of the specified network interface.", + "title": "To describe an IAM instance profile association", + "documentation": "This example describes the specified IAM instance profile association.", "input": { - "NetworkInterfaceId": "eni-686ea200", - "Attribute": "groupSet" + "AssociationIds": [ + "iip-assoc-0db249b1f25fa24b8" + ] }, "output": { - "NetworkInterfaceId": "eni-686ea200", - "Groups": [ + "IamInstanceProfileAssociations": [ { - "GroupName": "my-security-group", - "GroupId": "sg-903004f8" + "InstanceId": "i-09eb09efa73ec1dee", + "State": "associated", + "AssociationId": "iip-assoc-0db249b1f25fa24b8", + "IamInstanceProfile": { + "Id": "AIPAJVQN4F5WVLGCJDRGM", + "Arn": "arn:aws:iam::123456789012:instance-profile/admin-role" + } } ] } - }, - { - "title": "To describe the sourceDestCheck attribute of a network interface", - "documentation": "This example describes the sourceDestCheck attribute of the specified network interface.", - "input": { - "NetworkInterfaceId": "eni-686ea200", - "Attribute": "sourceDestCheck" - }, - "output": { - "NetworkInterfaceId": "eni-686ea200", - "SourceDestCheck": { - "Value": true - } - } } - ] + ], + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "IamInstanceProfileAssociations", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DescribeNetworkInterfaceAttributeRequest": { + "com.amazonaws.ec2#DescribeIamInstanceProfileAssociationsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeIamInstanceProfileAssociationsRequest": { "type": "structure", "members": { - "Attribute": { - "target": "com.amazonaws.ec2#NetworkInterfaceAttribute", + "AssociationIds": { + "target": "com.amazonaws.ec2#AssociationIdList", "traits": { - "aws.protocols#ec2QueryName": "Attribute", - "smithy.api#documentation": "

The attribute of the network interface. This parameter is required.

", - "smithy.api#xmlName": "attribute" + "smithy.api#documentation": "

The IAM instance profile associations.

", + "smithy.api#xmlName": "AssociationId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#NetworkInterfaceId", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeIamInstanceProfileAssociationsMaxResults", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the network interface.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "networkInterfaceId" + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of\n items, make another request with the token returned in the output. For more information, \n see Pagination.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeNetworkInterfaceAttribute.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeNetworkInterfaceAttributeResult": { + "com.amazonaws.ec2#DescribeIamInstanceProfileAssociationsResult": { "type": "structure", "members": { - "Attachment": { - "target": "com.amazonaws.ec2#NetworkInterfaceAttachment", - "traits": { - "aws.protocols#ec2QueryName": "Attachment", - "smithy.api#documentation": "

The attachment (if any) of the network interface.

", - "smithy.api#xmlName": "attachment" - } - }, - "Description": { - "target": "com.amazonaws.ec2#AttributeValue", - "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

The description of the network interface.

", - "smithy.api#xmlName": "description" - } - }, - "Groups": { - "target": "com.amazonaws.ec2#GroupIdentifierList", - "traits": { - "aws.protocols#ec2QueryName": "GroupSet", - "smithy.api#documentation": "

The security groups associated with the network interface.

", - "smithy.api#xmlName": "groupSet" - } - }, - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceId", - "smithy.api#documentation": "

The ID of the network interface.

", - "smithy.api#xmlName": "networkInterfaceId" - } - }, - "SourceDestCheck": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "IamInstanceProfileAssociations": { + "target": "com.amazonaws.ec2#IamInstanceProfileAssociationSet", "traits": { - "aws.protocols#ec2QueryName": "SourceDestCheck", - "smithy.api#documentation": "

Indicates whether source/destination checking is enabled.

", - "smithy.api#xmlName": "sourceDestCheck" + "aws.protocols#ec2QueryName": "IamInstanceProfileAssociationSet", + "smithy.api#documentation": "

Information about the IAM instance profile associations.

", + "smithy.api#xmlName": "iamInstanceProfileAssociationSet" } }, - "AssociatePublicIpAddress": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "AssociatePublicIpAddress", - "smithy.api#documentation": "

Indicates whether to assign a public IPv4 address to a network interface. \n This option can be enabled for any network interface but will only apply to the primary network interface (eth0).

", - "smithy.api#xmlName": "associatePublicIpAddress" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of DescribeNetworkInterfaceAttribute.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeNetworkInterfacePermissions": { + "com.amazonaws.ec2#DescribeIdFormat": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeNetworkInterfacePermissionsRequest" + "target": "com.amazonaws.ec2#DescribeIdFormatRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeNetworkInterfacePermissionsResult" + "target": "com.amazonaws.ec2#DescribeIdFormatResult" }, "traits": { - "smithy.api#documentation": "

Describes the permissions for your network interfaces.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "NetworkInterfacePermissions", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeNetworkInterfacePermissionsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 255 - } + "smithy.api#documentation": "

Describes the ID format settings for your resources on a per-Region basis, for example, to view which resource types are enabled for longer IDs. This request only returns information about resource types whose ID formats can be modified; it does not return information about other resource types.

\n

The following resource types support longer IDs: bundle |\n conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | instance | internet-gateway |\n network-acl | network-acl-association |\n network-interface | network-interface-attachment |\n prefix-list | reservation | route-table |\n route-table-association | security-group |\n snapshot | subnet |\n subnet-cidr-block-association | volume | vpc\n | vpc-cidr-block-association | vpc-endpoint |\n vpc-peering-connection | vpn-connection | vpn-gateway.

\n

These settings apply to the IAM user who makes the request; they do not apply to the entire\n Amazon Web Services account. By default, an IAM user defaults to the same settings as the root user, unless\n they explicitly override the settings by running the ModifyIdFormat command. Resources\n created with longer IDs are visible to all IAM users, regardless of these settings and\n provided that they have permission to use the relevant Describe command for the\n resource type.

" } }, - "com.amazonaws.ec2#DescribeNetworkInterfacePermissionsRequest": { + "com.amazonaws.ec2#DescribeIdFormatRequest": { "type": "structure", "members": { - "NetworkInterfacePermissionIds": { - "target": "com.amazonaws.ec2#NetworkInterfacePermissionIdList", - "traits": { - "smithy.api#documentation": "

The network interface permission IDs.

", - "smithy.api#xmlName": "NetworkInterfacePermissionId" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" - } - }, - "NextToken": { + "Resource": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request.\n\t\t Pagination continues from the end of the items returned by the previous request.

" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeNetworkInterfacePermissionsMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items,\n\t\t\tmake another request with the token returned in the output. If this parameter is not specified, \n\t\t\tup to 50 results are returned by default. For more information, see\n\t\t\tPagination.

" + "smithy.api#documentation": "

The type of resource: bundle |\n conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | instance | internet-gateway |\n network-acl | network-acl-association |\n network-interface | network-interface-attachment |\n prefix-list | reservation | route-table |\n route-table-association | security-group |\n snapshot | subnet |\n subnet-cidr-block-association | volume | vpc\n | vpc-cidr-block-association | vpc-endpoint |\n vpc-peering-connection | vpn-connection | vpn-gateway\n

" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeNetworkInterfacePermissions.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeNetworkInterfacePermissionsResult": { + "com.amazonaws.ec2#DescribeIdFormatResult": { "type": "structure", "members": { - "NetworkInterfacePermissions": { - "target": "com.amazonaws.ec2#NetworkInterfacePermissionList", - "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfacePermissions", - "smithy.api#documentation": "

The network interface permissions.

", - "smithy.api#xmlName": "networkInterfacePermissions" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "Statuses": { + "target": "com.amazonaws.ec2#IdFormatList", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items.\n\t\t This value is null when there are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "StatusSet", + "smithy.api#documentation": "

Information about the ID format for the resource.

", + "smithy.api#xmlName": "statusSet" } } }, "traits": { - "smithy.api#documentation": "

Contains the output for DescribeNetworkInterfacePermissions.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeNetworkInterfaces": { + "com.amazonaws.ec2#DescribeIdentityIdFormat": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeNetworkInterfacesRequest" + "target": "com.amazonaws.ec2#DescribeIdentityIdFormatRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeNetworkInterfacesResult" + "target": "com.amazonaws.ec2#DescribeIdentityIdFormatResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your network interfaces.

\n

If you have a large number of network interfaces, the operation fails unless \n you use pagination or one of the following filters: group-id, \n mac-address, private-dns-name, private-ip-address, \n private-dns-name, subnet-id, or vpc-id.

\n \n

We strongly recommend using only paginated requests. Unpaginated requests are\n susceptible to throttling and timeouts.

\n
", - "smithy.api#examples": [ - { - "title": "To describe a network interface", - "documentation": "", - "input": { - "NetworkInterfaceIds": [ - "eni-e5aa89a3" - ] - }, - "output": { - "NetworkInterfaces": [ - { - "Status": "in-use", - "MacAddress": "02:2f:8f:b0:cf:75", - "SourceDestCheck": true, - "VpcId": "vpc-a01106c2", - "Description": "my network interface", - "Association": { - "PublicIp": "203.0.113.12", - "AssociationId": "eipassoc-0fbb766a", - "PublicDnsName": "ec2-203-0-113-12.compute-1.amazonaws.com", - "IpOwnerId": "123456789012" - }, - "NetworkInterfaceId": "eni-e5aa89a3", - "PrivateIpAddresses": [ - { - "PrivateDnsName": "ip-10-0-1-17.ec2.internal", - "Association": { - "PublicIp": "203.0.113.12", - "AssociationId": "eipassoc-0fbb766a", - "PublicDnsName": "ec2-203-0-113-12.compute-1.amazonaws.com", - "IpOwnerId": "123456789012" - }, - "Primary": true, - "PrivateIpAddress": "10.0.1.17" - } - ], - "RequesterManaged": false, - "PrivateDnsName": "ip-10-0-1-17.ec2.internal", - "AvailabilityZone": "us-east-1d", - "Attachment": { - "Status": "attached", - "DeviceIndex": 1, - "AttachTime": "2013-11-30T23:36:42.000Z", - "InstanceId": "i-1234567890abcdef0", - "DeleteOnTermination": false, - "AttachmentId": "eni-attach-66c4350a", - "InstanceOwnerId": "123456789012" - }, - "Groups": [ - { - "GroupName": "default", - "GroupId": "sg-8637d3e3" - } - ], - "SubnetId": "subnet-b61f49f0", - "OwnerId": "123456789012", - "TagSet": [], - "PrivateIpAddress": "10.0.1.17" - } - ] - } - } - ], - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "NetworkInterfaces", - "pageSize": "MaxResults" - }, - "smithy.api#suppress": [ - "WaitableTraitInvalidErrorType" - ], - "smithy.waiters#waitable": { - "NetworkInterfaceAvailable": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "NetworkInterfaces[].Status", - "expected": "available", - "comparator": "allStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "errorType": "InvalidNetworkInterfaceID.NotFound" - } - } - ], - "minDelay": 20 - } - } - } - }, - "com.amazonaws.ec2#DescribeNetworkInterfacesMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } + "smithy.api#documentation": "

Describes the ID format settings for resources for the specified IAM user, IAM role, or root\n user. For example, you can view the resource types that are enabled for longer IDs. This request only\n returns information about resource types whose ID formats can be modified; it does not return\n information about other resource types. For more information, see Resource IDs in the Amazon Elastic Compute Cloud User Guide.

\n

The following resource types support longer IDs: bundle |\n conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | instance | internet-gateway |\n network-acl | network-acl-association |\n network-interface | network-interface-attachment |\n prefix-list | reservation | route-table |\n route-table-association | security-group |\n snapshot | subnet |\n subnet-cidr-block-association | volume | vpc\n | vpc-cidr-block-association | vpc-endpoint |\n vpc-peering-connection | vpn-connection | vpn-gateway.

\n

These settings apply to the principal specified in the request. They do not apply to the\n principal that makes the request.

" } }, - "com.amazonaws.ec2#DescribeNetworkInterfacesRequest": { + "com.amazonaws.ec2#DescribeIdentityIdFormatRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "aws.protocols#ec2QueryName": "Filter", - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "filter" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" - } - }, - "NetworkInterfaceIds": { - "target": "com.amazonaws.ec2#NetworkInterfaceIdList", - "traits": { - "smithy.api#documentation": "

The network interface IDs.

\n

Default: Describes all your network interfaces.

", - "smithy.api#xmlName": "NetworkInterfaceId" - } - }, - "NextToken": { + "Resource": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request.\n\t\t Pagination continues from the end of the items returned by the previous request.

" + "aws.protocols#ec2QueryName": "Resource", + "smithy.api#documentation": "

The type of resource: bundle |\n conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | instance | internet-gateway |\n network-acl | network-acl-association |\n network-interface | network-interface-attachment |\n prefix-list | reservation | route-table |\n route-table-association | security-group |\n snapshot | subnet |\n subnet-cidr-block-association | volume | vpc\n | vpc-cidr-block-association | vpc-endpoint |\n vpc-peering-connection | vpn-connection | vpn-gateway\n

", + "smithy.api#xmlName": "resource" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeNetworkInterfacesMaxResults", + "PrincipalArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items,\n\t\t make another request with the token returned in the output. You cannot specify this\n\t\t parameter and the network interface IDs parameter in the same request. For more information, \n\t\t see Pagination.

" + "aws.protocols#ec2QueryName": "PrincipalArn", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ARN of the principal, which can be an IAM role, IAM user, or the root user.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "principalArn" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeNetworkInterfaces.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeNetworkInterfacesResult": { + "com.amazonaws.ec2#DescribeIdentityIdFormatResult": { "type": "structure", "members": { - "NetworkInterfaces": { - "target": "com.amazonaws.ec2#NetworkInterfaceList", - "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceSet", - "smithy.api#documentation": "

Information about the network interfaces.

", - "smithy.api#xmlName": "networkInterfaceSet" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "Statuses": { + "target": "com.amazonaws.ec2#IdFormatList", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n\t\t This value is null when there are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "StatusSet", + "smithy.api#documentation": "

Information about the ID format for the resources.

", + "smithy.api#xmlName": "statusSet" } } }, @@ -35529,123 +35140,148 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribePlacementGroups": { + "com.amazonaws.ec2#DescribeImageAttribute": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribePlacementGroupsRequest" + "target": "com.amazonaws.ec2#DescribeImageAttributeRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribePlacementGroupsResult" + "target": "com.amazonaws.ec2#ImageAttribute" }, "traits": { - "smithy.api#documentation": "

Describes the specified placement groups or all of your placement groups. For more\n information, see Placement groups in the\n Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Describes the specified attribute of the specified AMI. You can specify only one attribute\n at a time.

\n \n

The order of the elements in the response, including those within nested structures,\n might vary. Applications should not assume the elements appear in a particular order.

\n
", + "smithy.api#examples": [ + { + "title": "To describe the launch permissions for an AMI", + "documentation": "This example describes the launch permissions for the specified AMI.", + "input": { + "Attribute": "launchPermission", + "ImageId": "ami-5731123e" + }, + "output": { + "ImageId": "ami-5731123e", + "LaunchPermissions": [ + { + "UserId": "123456789012" + } + ] + } + } + ] } }, - "com.amazonaws.ec2#DescribePlacementGroupsRequest": { + "com.amazonaws.ec2#DescribeImageAttributeRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "Attribute": { + "target": "com.amazonaws.ec2#ImageAttributeName", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The AMI attribute.

\n

\n Note: The blockDeviceMapping attribute is\n deprecated. Using this attribute returns the Client.AuthFailure error. To get\n information about the block device mappings for an AMI, describe the image instead.

", + "smithy.api#required": {} + } + }, + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the AMI.

", + "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } - }, - "GroupNames": { - "target": "com.amazonaws.ec2#PlacementGroupStringList", - "traits": { - "aws.protocols#ec2QueryName": "GroupName", - "smithy.api#documentation": "

The names of the placement groups.

\n

Default: Describes all your placement groups, or only those otherwise\n specified.

", - "smithy.api#xmlName": "groupName" - } - }, - "GroupIds": { - "target": "com.amazonaws.ec2#PlacementGroupIdStringList", - "traits": { - "smithy.api#documentation": "

The IDs of the placement groups.

", - "smithy.api#xmlName": "GroupId" - } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DescribeImageAttribute.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribePlacementGroupsResult": { - "type": "structure", - "members": { - "PlacementGroups": { - "target": "com.amazonaws.ec2#PlacementGroupList", - "traits": { - "aws.protocols#ec2QueryName": "PlacementGroupSet", - "smithy.api#documentation": "

Information about the placement groups.

", - "smithy.api#xmlName": "placementGroupSet" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DescribePrefixLists": { + "com.amazonaws.ec2#DescribeImageReferences": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribePrefixListsRequest" + "target": "com.amazonaws.ec2#DescribeImageReferencesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribePrefixListsResult" + "target": "com.amazonaws.ec2#DescribeImageReferencesResult" }, "traits": { - "smithy.api#documentation": "

Describes available Amazon Web Services services in a prefix list format, which includes the prefix list\n name and prefix list ID of the service and the IP address range for the service.

\n

We recommend that you use DescribeManagedPrefixLists instead.

", + "smithy.api#documentation": "

Describes your Amazon Web Services resources that are referencing the specified images.

\n

For more information, see Identify your resources referencing\n specified AMIs in the Amazon EC2 User Guide.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "PrefixLists", + "items": "ImageReferences", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribePrefixListsRequest": { + "com.amazonaws.ec2#DescribeImageReferencesImageIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageId" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, + "com.amazonaws.ec2#DescribeImageReferencesMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5 + } + } + }, + "com.amazonaws.ec2#DescribeImageReferencesRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ImageIds": { + "target": "com.amazonaws.ec2#DescribeImageReferencesImageIdStringList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of the images to check for resource references.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "ImageId" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "IncludeAllResourceTypes": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

Specifies whether to check all supported Amazon Web Services resource types for image references. When\n specified, default values are applied for ResourceTypeOptions. For the default\n values, see How AMI\n reference checks work in the Amazon EC2 User Guide. If you also\n specify ResourceTypes with ResourceTypeOptions, your specified\n values override the default values.

\n

Supported resource types: ec2:Instance | ec2:LaunchTemplate |\n ssm:Parameter | imagebuilder:ImageRecipe |\n imagebuilder:ContainerRecipe\n

\n

Either IncludeAllResourceTypes or ResourceTypes must be\n specified.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "ResourceTypes": { + "target": "com.amazonaws.ec2#ResourceTypeRequestList", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The Amazon Web Services resource types to check for image references.

\n

Either IncludeAllResourceTypes or ResourceTypes must be\n specified.

", + "smithy.api#xmlName": "ResourceType" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, - "PrefixListIds": { - "target": "com.amazonaws.ec2#PrefixListResourceIdStringList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

One or more prefix list IDs.

", - "smithy.api#xmlName": "PrefixListId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeImageReferencesMaxResults", + "traits": { + "smithy.api#documentation": "

\n The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.\n

" } } }, @@ -35653,23 +35289,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribePrefixListsResult": { + "com.amazonaws.ec2#DescribeImageReferencesResult": { "type": "structure", "members": { "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", "smithy.api#xmlName": "nextToken" } }, - "PrefixLists": { - "target": "com.amazonaws.ec2#PrefixListSet", + "ImageReferences": { + "target": "com.amazonaws.ec2#ImageReferenceList", "traits": { - "aws.protocols#ec2QueryName": "PrefixListSet", - "smithy.api#documentation": "

All available prefix lists.

", - "smithy.api#xmlName": "prefixListSet" + "aws.protocols#ec2QueryName": "ImageReferenceSet", + "smithy.api#documentation": "

The resources that are referencing the specified images.

", + "smithy.api#xmlName": "imageReferenceSet" } } }, @@ -35677,59 +35313,72 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribePrincipalIdFormat": { + "com.amazonaws.ec2#DescribeImageUsageReportEntries": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribePrincipalIdFormatRequest" + "target": "com.amazonaws.ec2#DescribeImageUsageReportEntriesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribePrincipalIdFormatResult" + "target": "com.amazonaws.ec2#DescribeImageUsageReportEntriesResult" }, "traits": { - "smithy.api#documentation": "

Describes the ID format settings for the root user and all IAM roles and IAM users\n that have explicitly specified a longer ID (17-character ID) preference.

\n

By default, all IAM roles and IAM users default to the same ID settings as the root user, unless they\n explicitly override the settings. This request is useful for identifying those IAM users and IAM roles\n that have overridden the default ID settings.

\n

The following resource types support longer IDs: bundle |\n conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | instance | internet-gateway |\n network-acl | network-acl-association |\n network-interface | network-interface-attachment |\n prefix-list | reservation | route-table |\n route-table-association | security-group |\n snapshot | subnet |\n subnet-cidr-block-association | volume | vpc\n | vpc-cidr-block-association | vpc-endpoint |\n vpc-peering-connection | vpn-connection | vpn-gateway.

", + "smithy.api#documentation": "

Describes the entries in image usage reports, showing how your images are used across\n other Amazon Web Services accounts.

\n

For more information, see View your AMI usage in the\n Amazon EC2 User Guide.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "Principals", + "items": "ImageUsageReportEntries", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribePrincipalIdFormatMaxResults": { + "com.amazonaws.ec2#DescribeImageUsageReportEntriesMaxResults": { "type": "integer", "traits": { "smithy.api#range": { - "min": 1, - "max": 1000 + "min": 1 } } }, - "com.amazonaws.ec2#DescribePrincipalIdFormatRequest": { + "com.amazonaws.ec2#DescribeImageUsageReportEntriesRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ImageIds": { + "target": "com.amazonaws.ec2#DescribeImageUsageReportsImageIdStringList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The IDs of the images for filtering the report entries. If specified, only report entries\n containing these images are returned.

", + "smithy.api#xmlName": "ImageId" } }, - "Resources": { - "target": "com.amazonaws.ec2#ResourceList", + "ReportIds": { + "target": "com.amazonaws.ec2#ImageUsageReportIdStringList", "traits": { - "smithy.api#documentation": "

The type of resource: bundle |\n conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | instance | internet-gateway |\n network-acl | network-acl-association |\n network-interface | network-interface-attachment |\n prefix-list | reservation | route-table |\n route-table-association | security-group |\n snapshot | subnet |\n subnet-cidr-block-association | volume | vpc\n | vpc-cidr-block-association | vpc-endpoint |\n vpc-peering-connection | vpn-connection | vpn-gateway\n

", - "smithy.api#xmlName": "Resource" + "smithy.api#documentation": "

The IDs of the usage reports.

", + "smithy.api#xmlName": "ReportId" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribePrincipalIdFormatMaxResults", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining\n results, make another call with the returned NextToken value.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The token to request the next page of results.

" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeImageUsageReportEntriesMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" } } }, @@ -35737,214 +35386,338 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribePrincipalIdFormatResult": { + "com.amazonaws.ec2#DescribeImageUsageReportEntriesResult": { "type": "structure", "members": { - "Principals": { - "target": "com.amazonaws.ec2#PrincipalIdFormatList", - "traits": { - "aws.protocols#ec2QueryName": "PrincipalSet", - "smithy.api#documentation": "

Information about the ID format settings for the ARN.

", - "smithy.api#xmlName": "principalSet" - } - }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", "smithy.api#xmlName": "nextToken" } + }, + "ImageUsageReportEntries": { + "target": "com.amazonaws.ec2#ImageUsageReportEntryList", + "traits": { + "aws.protocols#ec2QueryName": "ImageUsageReportEntrySet", + "smithy.api#documentation": "

The content of the usage reports.

", + "smithy.api#xmlName": "imageUsageReportEntrySet" + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribePublicIpv4Pools": { + "com.amazonaws.ec2#DescribeImageUsageReports": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribePublicIpv4PoolsRequest" + "target": "com.amazonaws.ec2#DescribeImageUsageReportsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribePublicIpv4PoolsResult" + "target": "com.amazonaws.ec2#DescribeImageUsageReportsResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified IPv4 address pools.

", + "smithy.api#documentation": "

Describes the configuration and status of image usage reports, filtered by report IDs or\n image IDs.

\n

For more information, see View your AMI usage in the\n Amazon EC2 User Guide.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "PublicIpv4Pools", + "items": "ImageUsageReports", "pageSize": "MaxResults" + }, + "smithy.waiters#waitable": { + "ImageUsageReportAvailable": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "ImageUsageReports[].State", + "expected": "available", + "comparator": "allStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "ImageUsageReports[].State", + "expected": "failed", + "comparator": "anyStringEquals" + } + } + } + ], + "minDelay": 15 + } } } }, - "com.amazonaws.ec2#DescribePublicIpv4PoolsRequest": { + "com.amazonaws.ec2#DescribeImageUsageReportsImageIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageId" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 200 + } + } + }, + "com.amazonaws.ec2#DescribeImageUsageReportsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1 + } + } + }, + "com.amazonaws.ec2#DescribeImageUsageReportsRequest": { "type": "structure", "members": { - "PoolIds": { - "target": "com.amazonaws.ec2#PublicIpv4PoolIdStringList", + "ImageIds": { + "target": "com.amazonaws.ec2#DescribeImageUsageReportsImageIdStringList", "traits": { - "smithy.api#documentation": "

The IDs of the address pools.

", - "smithy.api#xmlName": "PoolId" + "smithy.api#documentation": "

The IDs of the images for filtering the reports. If specified, only reports containing\n these images are returned.

", + "smithy.api#xmlName": "ImageId" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "ReportIds": { + "target": "com.amazonaws.ec2#ImageUsageReportIdStringList", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The IDs of the image usage reports.

", + "smithy.api#xmlName": "ReportId" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#PoolMaxResults", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#documentation": "

The filters.

\n ", "smithy.api#xmlName": "Filter" } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeImageUsageReportsMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribePublicIpv4PoolsResult": { + "com.amazonaws.ec2#DescribeImageUsageReportsResult": { "type": "structure", "members": { - "PublicIpv4Pools": { - "target": "com.amazonaws.ec2#PublicIpv4PoolSet", - "traits": { - "aws.protocols#ec2QueryName": "PublicIpv4PoolSet", - "smithy.api#documentation": "

Information about the address pools.

", - "smithy.api#xmlName": "publicIpv4PoolSet" - } - }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", "smithy.api#xmlName": "nextToken" } + }, + "ImageUsageReports": { + "target": "com.amazonaws.ec2#ImageUsageReportList", + "traits": { + "aws.protocols#ec2QueryName": "ImageUsageReportSet", + "smithy.api#documentation": "

The image usage reports.

", + "smithy.api#xmlName": "imageUsageReportSet" + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeRegions": { + "com.amazonaws.ec2#DescribeImages": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeRegionsRequest" + "target": "com.amazonaws.ec2#DescribeImagesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeRegionsResult" + "target": "com.amazonaws.ec2#DescribeImagesResult" }, "traits": { - "smithy.api#documentation": "

Describes the Regions that are enabled for your account, or all Regions.

\n

For a list of the Regions supported by Amazon EC2, see \n Amazon Elastic Compute Cloud endpoints and quotas.

\n

For information about enabling and disabling Regions for your account, see Managing Amazon Web Services Regions in the Amazon Web Services General Reference.

\n \n

The order of the elements in the response, including those within nested structures,\n might vary. Applications should not assume the elements appear in a particular order.

\n
", + "smithy.api#documentation": "

Describes the specified images (AMIs, AKIs, and ARIs) available to you or all of the\n images available to you.

\n

The images available to you include public images, private images that you own, and\n private images owned by other Amazon Web Services accounts for which you have explicit launch\n permissions.

\n

Recently deregistered images appear in the returned results for a short interval and then\n return empty results. After all instances that reference a deregistered AMI are terminated,\n specifying the ID of the image will eventually return an error indicating that the AMI ID\n cannot be found.

\n

When Allowed AMIs is set to enabled, only allowed images are returned in the\n results, with the imageAllowed field set to true for each image. In\n audit-mode, the imageAllowed field is set to true for\n images that meet the account's Allowed AMIs criteria, and false for images that\n don't meet the criteria. For more information, see Allowed AMIs.

\n

The Amazon EC2 API follows an eventual consistency model. This means that the result of an API\n command you run that creates or modifies resources might not be immediately available to all\n subsequent commands you run. For guidance on how to manage eventual consistency, see Eventual\n consistency in the Amazon EC2 API in the Amazon EC2 Developer\n Guide.

\n \n

We strongly recommend using only paginated requests. Unpaginated requests are\n susceptible to throttling and timeouts.

\n
\n \n

The order of the elements in the response, including those within nested structures,\n might vary. Applications should not assume the elements appear in a particular order.

\n
", "smithy.api#examples": [ { - "title": "To describe your regions", - "documentation": "This example describes all the regions that are available to you.", + "title": "To describe an AMI", + "documentation": "This example describes the specified AMI.", + "input": { + "ImageIds": [ + "ami-5731123e" + ] + }, "output": { - "Regions": [ - { - "Endpoint": "ec2.ap-south-1.amazonaws.com", - "RegionName": "ap-south-1" - }, - { - "Endpoint": "ec2.eu-west-1.amazonaws.com", - "RegionName": "eu-west-1" - }, - { - "Endpoint": "ec2.ap-southeast-1.amazonaws.com", - "RegionName": "ap-southeast-1" - }, - { - "Endpoint": "ec2.ap-southeast-2.amazonaws.com", - "RegionName": "ap-southeast-2" - }, - { - "Endpoint": "ec2.eu-central-1.amazonaws.com", - "RegionName": "eu-central-1" - }, - { - "Endpoint": "ec2.ap-northeast-2.amazonaws.com", - "RegionName": "ap-northeast-2" - }, - { - "Endpoint": "ec2.ap-northeast-1.amazonaws.com", - "RegionName": "ap-northeast-1" - }, - { - "Endpoint": "ec2.us-east-1.amazonaws.com", - "RegionName": "us-east-1" - }, - { - "Endpoint": "ec2.sa-east-1.amazonaws.com", - "RegionName": "sa-east-1" - }, - { - "Endpoint": "ec2.us-west-1.amazonaws.com", - "RegionName": "us-west-1" - }, + "Images": [ { - "Endpoint": "ec2.us-west-2.amazonaws.com", - "RegionName": "us-west-2" + "VirtualizationType": "paravirtual", + "Name": "My server", + "Hypervisor": "xen", + "ImageId": "ami-5731123e", + "RootDeviceType": "ebs", + "State": "available", + "BlockDeviceMappings": [ + { + "DeviceName": "/dev/sda1", + "Ebs": { + "DeleteOnTermination": true, + "SnapshotId": "snap-1234567890abcdef0", + "VolumeSize": 8, + "VolumeType": "standard" + } + } + ], + "Architecture": "x86_64", + "ImageLocation": "123456789012/My server", + "KernelId": "aki-88aa75e1", + "OwnerId": "123456789012", + "RootDeviceName": "/dev/sda1", + "Public": false, + "ImageType": "machine", + "Description": "An AMI for my server" } ] } } ], - "smithy.test#smokeTests": [ - { - "id": "DescribeRegionsSuccess", - "params": {}, - "vendorParams": { - "region": "us-west-2" - }, - "vendorParamsShape": "aws.test#AwsVendorParams", - "expect": { - "success": {} - } + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "Images", + "pageSize": "MaxResults" + }, + "smithy.api#suppress": [ + "WaitableTraitInvalidErrorType" + ], + "smithy.waiters#waitable": { + "ImageAvailable": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "Images[].State", + "expected": "available", + "comparator": "allStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "Images[].State", + "expected": "failed", + "comparator": "anyStringEquals" + } + } + } + ], + "minDelay": 15 + }, + "ImageExists": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "length(Images[]) > `0`", + "expected": "true", + "comparator": "booleanEquals" + } + } + }, + { + "state": "retry", + "matcher": { + "errorType": "InvalidAMIID.NotFound" + } + } + ], + "minDelay": 15 } - ] + } } }, - "com.amazonaws.ec2#DescribeRegionsRequest": { + "com.amazonaws.ec2#DescribeImagesRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "ExecutableUsers": { + "target": "com.amazonaws.ec2#ExecutableByStringList", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

Scopes the images by users with explicit launch permissions. Specify an Amazon Web Services account ID, self (the sender of the request), or all\n (public AMIs).

\n ", + "smithy.api#xmlName": "ExecutableBy" } }, - "RegionNames": { - "target": "com.amazonaws.ec2#RegionNameStringList", + "ImageIds": { + "target": "com.amazonaws.ec2#ImageIdStringList", "traits": { - "smithy.api#documentation": "

The names of the Regions. You can specify any Regions, whether they are enabled and disabled for your account.

", - "smithy.api#xmlName": "RegionName" + "smithy.api#documentation": "

The image IDs.

\n

Default: Describes all images available to you.

", + "smithy.api#xmlName": "ImageId" + } + }, + "Owners": { + "target": "com.amazonaws.ec2#OwnerStringList", + "traits": { + "smithy.api#documentation": "

Scopes the results to images with the specified owners. You can specify a combination of\n Amazon Web Services account IDs, self, amazon,\n aws-backup-vault, and aws-marketplace. If you omit this parameter,\n the results include all images for which you have launch permissions, regardless of\n ownership.

", + "smithy.api#xmlName": "Owner" + } + }, + "IncludeDeprecated": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Specifies whether to include deprecated AMIs.

\n

Default: No deprecated AMIs are included in the response.

\n \n

If you are the AMI owner, all deprecated AMIs appear in the response regardless of what\n you specify for this parameter.

\n
" + } + }, + "IncludeDisabled": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Specifies whether to include disabled AMIs.

\n

Default: No disabled AMIs are included in the response.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } }, - "AllRegions": { - "target": "com.amazonaws.ec2#Boolean", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

Indicates whether to display all Regions, including Regions that are disabled for your account.

" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, @@ -35952,15 +35725,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeRegionsResult": { + "com.amazonaws.ec2#DescribeImagesResult": { "type": "structure", "members": { - "Regions": { - "target": "com.amazonaws.ec2#RegionList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "RegionInfo", - "smithy.api#documentation": "

Information about the Regions.

", - "smithy.api#xmlName": "regionInfo" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#xmlName": "nextToken" + } + }, + "Images": { + "target": "com.amazonaws.ec2#ImageList", + "traits": { + "aws.protocols#ec2QueryName": "ImagesSet", + "smithy.api#documentation": "

Information about the images.

", + "smithy.api#xmlName": "imagesSet" } } }, @@ -35968,66 +35749,57 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeReplaceRootVolumeTasks": { + "com.amazonaws.ec2#DescribeImportImageTasks": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksRequest" + "target": "com.amazonaws.ec2#DescribeImportImageTasksRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksResult" + "target": "com.amazonaws.ec2#DescribeImportImageTasksResult" }, "traits": { - "smithy.api#documentation": "

Describes a root volume replacement task. For more information, see \n Replace a root volume in the Amazon Elastic Compute Cloud User Guide.

", + "smithy.api#documentation": "

Displays details about an import virtual machine or import snapshot tasks that are already created.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "ReplaceRootVolumeTasks", + "items": "ImportImageTasks", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 50 - } - } - }, - "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksRequest": { + "com.amazonaws.ec2#DescribeImportImageTasksRequest": { "type": "structure", "members": { - "ReplaceRootVolumeTaskIds": { - "target": "com.amazonaws.ec2#ReplaceRootVolumeTaskIds", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The ID of the root volume replacement task to view.

", - "smithy.api#xmlName": "ReplaceRootVolumeTaskId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

Filter to use:

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

Filter tasks using the task-state filter and one of the following values: active,\n completed, deleting, or deleted.

", + "smithy.api#xmlName": "Filters" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksMaxResults", + "ImportTaskIds": { + "target": "com.amazonaws.ec2#ImportTaskIdList", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output. \n\tFor more information, see Pagination.

" + "smithy.api#documentation": "

The IDs of the import image tasks.

", + "smithy.api#xmlName": "ImportTaskId" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

The maximum number of results to return in a single call.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

A token that indicates the next page of results.

" } } }, @@ -36035,22 +35807,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksResult": { + "com.amazonaws.ec2#DescribeImportImageTasksResult": { "type": "structure", "members": { - "ReplaceRootVolumeTasks": { - "target": "com.amazonaws.ec2#ReplaceRootVolumeTasks", + "ImportImageTasks": { + "target": "com.amazonaws.ec2#ImportImageTaskList", "traits": { - "aws.protocols#ec2QueryName": "ReplaceRootVolumeTaskSet", - "smithy.api#documentation": "

Information about the root volume replacement task.

", - "smithy.api#xmlName": "replaceRootVolumeTaskSet" + "aws.protocols#ec2QueryName": "ImportImageTaskSet", + "smithy.api#documentation": "

A list of zero or more import image tasks that are currently active or were completed or canceled in the\n previous 7 days.

", + "smithy.api#xmlName": "importImageTaskSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#documentation": "

The token to use to get the next page of results. This value is null when there are no more results\n to return.

", "smithy.api#xmlName": "nextToken" } } @@ -36059,408 +35831,645 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeReservedInstances": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DescribeReservedInstancesRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DescribeReservedInstancesResult" - }, - "traits": { - "smithy.api#documentation": "

Describes one or more of the Reserved Instances that you purchased.

\n

For more information about Reserved Instances, see Reserved\n\t\t\t\tInstances in the Amazon EC2 User Guide.

\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
" - } - }, - "com.amazonaws.ec2#DescribeReservedInstancesListings": { + "com.amazonaws.ec2#DescribeImportSnapshotTasks": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeReservedInstancesListingsRequest" + "target": "com.amazonaws.ec2#DescribeImportSnapshotTasksRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeReservedInstancesListingsResult" + "target": "com.amazonaws.ec2#DescribeImportSnapshotTasksResult" }, "traits": { - "smithy.api#documentation": "

Describes your account's Reserved Instance listings in the Reserved Instance Marketplace.

\n

The Reserved Instance Marketplace matches sellers who want to resell Reserved Instance capacity that they no longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold through the Reserved Instance Marketplace work like any other Reserved Instances.

\n

As a seller, you choose to list some or all of your Reserved Instances, and you specify the upfront price to receive for them. Your Reserved Instances are then listed in the Reserved Instance Marketplace and are available for purchase.

\n

As a buyer, you specify the configuration of the Reserved Instance to purchase, and the Marketplace matches what you're searching for with what's available. The Marketplace first sells the lowest priced Reserved Instances to you, and continues to sell available Reserved Instance listings to you until your demand is met. You are charged based on the total price of all of the listings that you purchase.

\n

For more information, see Reserved Instance Marketplace \n in the Amazon EC2 User Guide.

\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
" + "smithy.api#documentation": "

Describes your import snapshot tasks.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "ImportSnapshotTasks", + "pageSize": "MaxResults" + }, + "smithy.waiters#waitable": { + "SnapshotImported": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "ImportSnapshotTasks[].SnapshotTaskDetail.Status", + "expected": "completed", + "comparator": "allStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "ImportSnapshotTasks[].SnapshotTaskDetail.Status", + "expected": "error", + "comparator": "anyStringEquals" + } + } + } + ], + "minDelay": 15 + } + } } }, - "com.amazonaws.ec2#DescribeReservedInstancesListingsRequest": { + "com.amazonaws.ec2#DescribeImportSnapshotTasksRequest": { "type": "structure", "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The filters.

", + "smithy.api#xmlName": "Filters" } }, - "ReservedInstancesId": { - "target": "com.amazonaws.ec2#ReservationId", + "ImportTaskIds": { + "target": "com.amazonaws.ec2#ImportSnapshotTaskIdList", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesId", - "smithy.api#documentation": "

One or more Reserved Instance IDs.

", - "smithy.api#xmlName": "reservedInstancesId" + "smithy.api#documentation": "

A list of import snapshot task IDs.

", + "smithy.api#xmlName": "ImportTaskId" } }, - "ReservedInstancesListingId": { - "target": "com.amazonaws.ec2#ReservedInstancesListingId", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesListingId", - "smithy.api#documentation": "

One or more Reserved Instance listing IDs.

", - "smithy.api#xmlName": "reservedInstancesListingId" + "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining results, make another call\n with the returned NextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A token that indicates the next page of results.

" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeReservedInstancesListings.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeReservedInstancesListingsResult": { + "com.amazonaws.ec2#DescribeImportSnapshotTasksResult": { "type": "structure", "members": { - "ReservedInstancesListings": { - "target": "com.amazonaws.ec2#ReservedInstancesListingList", + "ImportSnapshotTasks": { + "target": "com.amazonaws.ec2#ImportSnapshotTaskList", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesListingsSet", - "smithy.api#documentation": "

Information about the Reserved Instance listing.

", - "smithy.api#xmlName": "reservedInstancesListingsSet" + "aws.protocols#ec2QueryName": "ImportSnapshotTaskSet", + "smithy.api#documentation": "

A list of zero or more import snapshot tasks that are currently active or were completed or canceled in the\n previous 7 days.

", + "smithy.api#xmlName": "importSnapshotTaskSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to get the next page of results. This value is null when there are no more results\n to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of DescribeReservedInstancesListings.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeReservedInstancesModifications": { + "com.amazonaws.ec2#DescribeInstanceAttribute": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeReservedInstancesModificationsRequest" + "target": "com.amazonaws.ec2#DescribeInstanceAttributeRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeReservedInstancesModificationsResult" + "target": "com.amazonaws.ec2#InstanceAttribute" + }, + "traits": { + "smithy.api#documentation": "

Describes the specified attribute of the specified instance. You can specify only one\n attribute at a time.\n

", + "smithy.api#examples": [ + { + "title": "To describe the block device mapping for an instance", + "documentation": "This example describes the ``blockDeviceMapping`` attribute of the specified instance.\n", + "input": { + "InstanceId": "i-1234567890abcdef0", + "Attribute": "blockDeviceMapping" + }, + "output": { + "InstanceId": "i-1234567890abcdef0", + "BlockDeviceMappings": [ + { + "DeviceName": "/dev/sda1", + "Ebs": { + "Status": "attached", + "DeleteOnTermination": true, + "VolumeId": "vol-049df61146c4d7901", + "AttachTime": "2013-05-17T22:42:34.000Z" + } + }, + { + "DeviceName": "/dev/sdf", + "Ebs": { + "Status": "attached", + "DeleteOnTermination": false, + "VolumeId": "vol-049df61146c4d7901", + "AttachTime": "2013-09-10T23:07:00.000Z" + } + } + ] + } + }, + { + "title": "To describe the instance type", + "documentation": "This example describes the instance type of the specified instance.\n", + "input": { + "InstanceId": "i-1234567890abcdef0", + "Attribute": "instanceType" + }, + "output": { + "InstanceId": "i-1234567890abcdef0", + "InstanceType": { + "Value": "t1.micro" + } + } + } + ] + } + }, + "com.amazonaws.ec2#DescribeInstanceAttributeRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", + "traits": { + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "instanceId" + } + }, + "Attribute": { + "target": "com.amazonaws.ec2#InstanceAttributeName", + "traits": { + "aws.protocols#ec2QueryName": "Attribute", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The instance attribute.

\n

Note that the enaSupport attribute is not supported.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "attribute" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DescribeInstanceConnectEndpoints": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeInstanceConnectEndpointsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeInstanceConnectEndpointsResult" }, "traits": { - "smithy.api#documentation": "

Describes the modifications made to your Reserved Instances. If no parameter is specified, information about all your Reserved Instances modification requests is returned. If a modification ID is specified, only information about the specific modification is returned.

\n

For more information, see Modifying Reserved Instances in the Amazon EC2 User Guide.

\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", + "smithy.api#documentation": "

Describes the specified EC2 Instance Connect Endpoints or all EC2 Instance Connect Endpoints.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "ReservedInstancesModifications" + "items": "InstanceConnectEndpoints", + "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeReservedInstancesModificationsRequest": { + "com.amazonaws.ec2#DescribeInstanceConnectEndpointsRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "ReservedInstancesModificationIds": { - "target": "com.amazonaws.ec2#ReservedInstancesModificationIdStringList", + "MaxResults": { + "target": "com.amazonaws.ec2#InstanceConnectEndpointMaxResults", "traits": { - "smithy.api#documentation": "

IDs for the submitted modification request.

", - "smithy.api#xmlName": "ReservedInstancesModificationId" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" } }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to retrieve the next page of results.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" + } + }, + "InstanceConnectEndpointIds": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

One or more EC2 Instance Connect Endpoint IDs.

", + "smithy.api#xmlName": "InstanceConnectEndpointId" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeReservedInstancesModifications.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeReservedInstancesModificationsResult": { + "com.amazonaws.ec2#DescribeInstanceConnectEndpointsResult": { "type": "structure", "members": { - "NextToken": { - "target": "com.amazonaws.ec2#String", + "InstanceConnectEndpoints": { + "target": "com.amazonaws.ec2#InstanceConnectEndpointSet", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when\n\t\t\tthere are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "InstanceConnectEndpointSet", + "smithy.api#documentation": "

Information about the EC2 Instance Connect Endpoints.

", + "smithy.api#xmlName": "instanceConnectEndpointSet" } }, - "ReservedInstancesModifications": { - "target": "com.amazonaws.ec2#ReservedInstancesModificationList", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesModificationsSet", - "smithy.api#documentation": "

The Reserved Instance modification information.

", - "smithy.api#xmlName": "reservedInstancesModificationsSet" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of DescribeReservedInstancesModifications.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeReservedInstancesOfferings": { + "com.amazonaws.ec2#DescribeInstanceCreditSpecifications": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeReservedInstancesOfferingsRequest" + "target": "com.amazonaws.ec2#DescribeInstanceCreditSpecificationsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeReservedInstancesOfferingsResult" + "target": "com.amazonaws.ec2#DescribeInstanceCreditSpecificationsResult" }, "traits": { - "smithy.api#documentation": "

Describes Reserved Instance offerings that are available for purchase. With Reserved Instances, you purchase the right to launch instances for a period of time. During that time period, you do not receive insufficient capacity errors, and you pay a lower usage rate than the rate charged for On-Demand instances for the actual time used.

\n

If you have listed your own Reserved Instances for sale in the Reserved Instance Marketplace, they will be excluded from these results. This is to ensure that you do not purchase your own Reserved Instances.

\n

For more information, see Reserved Instance Marketplace\n\t\t\t\tin the Amazon EC2 User Guide.

\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", + "smithy.api#documentation": "

Describes the credit option for CPU usage of the specified burstable performance\n instances. The credit options are standard and\n unlimited.

\n

If you do not specify an instance ID, Amazon EC2 returns burstable performance\n instances with the unlimited credit option, as well as instances that were\n previously configured as T2, T3, and T3a with the unlimited credit option.\n For example, if you resize a T2 instance, while it is configured as\n unlimited, to an M4 instance, Amazon EC2 returns the M4\n instance.

\n

If you specify one or more instance IDs, Amazon EC2 returns the credit option\n (standard or unlimited) of those instances. If you specify\n an instance ID that is not valid, such as an instance that is not a burstable\n performance instance, an error is returned.

\n

Recently terminated instances might appear in the returned results. This interval is\n usually less than one hour.

\n

If an Availability Zone is experiencing a service disruption and you specify instance\n IDs in the affected zone, or do not specify any instance IDs at all, the call fails. If\n you specify only instance IDs in an unaffected zone, the call works normally.

\n

For more information, see Burstable\n performance instances in the Amazon EC2 User Guide.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "ReservedInstancesOfferings", + "items": "InstanceCreditSpecifications", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeReservedInstancesOfferingsRequest": { + "com.amazonaws.ec2#DescribeInstanceCreditSpecificationsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeInstanceCreditSpecificationsRequest": { "type": "structure", "members": { - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The Availability Zone in which the Reserved Instance can be used.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#documentation": "

The filters.

\n ", "smithy.api#xmlName": "Filter" } }, - "IncludeMarketplace": { - "target": "com.amazonaws.ec2#Boolean", + "InstanceIds": { + "target": "com.amazonaws.ec2#InstanceIdStringList", "traits": { - "smithy.api#documentation": "

Include Reserved Instance Marketplace offerings in the response.

" + "smithy.api#documentation": "

The instance IDs.

\n

Default: Describes all your instances.

\n

Constraints: Maximum 1000 explicitly specified instance IDs.

", + "smithy.api#xmlName": "InstanceId" } }, - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeInstanceCreditSpecificationsMaxResults", "traits": { - "smithy.api#documentation": "

The instance type that the reservation will cover (for example, m1.small). For more information, see \n Instance types in the\n Amazon EC2 User Guide.

" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

\n

You cannot specify this parameter and the instance IDs\n parameter in the same call.

" } }, - "MaxDuration": { - "target": "com.amazonaws.ec2#Long", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The maximum duration (in seconds) to filter when searching for offerings.

\n

Default: 94608000 (3 years)

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } - }, - "MaxInstanceCount": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

The maximum number of instances to filter when searching for offerings.

\n

Default: 20

" - } - }, - "MinDuration": { - "target": "com.amazonaws.ec2#Long", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DescribeInstanceCreditSpecificationsResult": { + "type": "structure", + "members": { + "InstanceCreditSpecifications": { + "target": "com.amazonaws.ec2#InstanceCreditSpecificationList", "traits": { - "smithy.api#documentation": "

The minimum duration (in seconds) to filter when searching for offerings.

\n

Default: 2592000 (1 month)

" + "aws.protocols#ec2QueryName": "InstanceCreditSpecificationSet", + "smithy.api#documentation": "

Information about the credit option for CPU usage of an instance.

", + "smithy.api#xmlName": "instanceCreditSpecificationSet" } }, - "OfferingClass": { - "target": "com.amazonaws.ec2#OfferingClassType", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The offering class of the Reserved Instance. Can be standard or convertible.

" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#xmlName": "nextToken" } - }, - "ProductDescription": { - "target": "com.amazonaws.ec2#RIProductDescription", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DescribeInstanceEventNotificationAttributes": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeInstanceEventNotificationAttributesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeInstanceEventNotificationAttributesResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the tag keys that are registered to appear in scheduled event notifications\n for resources in the current Region.

" + } + }, + "com.amazonaws.ec2#DescribeInstanceEventNotificationAttributesRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The Reserved Instance product platform description. Instances that include (Amazon\n VPC) in the description are for use with Amazon VPC.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "ReservedInstancesOfferingIds": { - "target": "com.amazonaws.ec2#ReservedInstancesOfferingIdStringList", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DescribeInstanceEventNotificationAttributesResult": { + "type": "structure", + "members": { + "InstanceTagAttribute": { + "target": "com.amazonaws.ec2#InstanceTagNotificationAttribute", "traits": { - "smithy.api#documentation": "

One or more Reserved Instances offering IDs.

", - "smithy.api#xmlName": "ReservedInstancesOfferingId" + "aws.protocols#ec2QueryName": "InstanceTagAttribute", + "smithy.api#documentation": "

Information about the registered tag keys.

", + "smithy.api#xmlName": "instanceTagAttribute" } - }, + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DescribeInstanceEventWindows": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeInstanceEventWindowsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeInstanceEventWindowsResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the specified event windows or all event windows.

\n

If you specify event window IDs, the output includes information for only the specified\n event windows. If you specify filters, the output includes information for only those event\n windows that meet the filter criteria. If you do not specify event windows IDs or filters,\n the output includes information for all event windows, which can affect performance. We\n recommend that you use pagination to ensure that the operation returns quickly and\n successfully.

\n

For more information, see Define event windows for scheduled\n events in the Amazon EC2 User Guide.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "InstanceEventWindows", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#DescribeInstanceEventWindowsRequest": { + "type": "structure", + "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "InstanceTenancy": { - "target": "com.amazonaws.ec2#Tenancy", + "InstanceEventWindowIds": { + "target": "com.amazonaws.ec2#InstanceEventWindowIdSet", "traits": { - "aws.protocols#ec2QueryName": "InstanceTenancy", - "smithy.api#documentation": "

The tenancy of the instances covered by the reservation. A Reserved Instance with a tenancy\n of dedicated is applied to instances that run in a VPC on single-tenant hardware\n (i.e., Dedicated Instances).

\n

\n Important: The host value cannot be used with this parameter. Use the default or dedicated values only.

\n

Default: default\n

", - "smithy.api#xmlName": "instanceTenancy" + "smithy.api#documentation": "

The IDs of the event windows.

", + "smithy.api#xmlName": "InstanceEventWindowId" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "MaxResults", - "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining\n\t\t\tresults of the initial request can be seen by sending another request with the returned\n\t\t\t\tNextToken value. The maximum is 100.

\n

Default: 100

", - "smithy.api#xmlName": "maxResults" + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "MaxResults": { + "target": "com.amazonaws.ec2#ResultRange", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to retrieve the next page of results.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining\n results, make another call with the returned NextToken value. This value can\n be between 20 and 500. You cannot specify this parameter and the event window IDs parameter\n in the same call.

" } }, - "OfferingType": { - "target": "com.amazonaws.ec2#OfferingTypeValues", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "OfferingType", - "smithy.api#documentation": "

The Reserved Instance offering type. If you are using tools that predate the 2011-11-01 API\n\t\t\tversion, you only have access to the Medium Utilization Reserved Instance\n\t\t\toffering type.

", - "smithy.api#xmlName": "offeringType" + "smithy.api#documentation": "

The token to request the next page of results.

" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeReservedInstancesOfferings.

", + "smithy.api#documentation": "

Describe instance event windows by InstanceEventWindow.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeReservedInstancesOfferingsResult": { + "com.amazonaws.ec2#DescribeInstanceEventWindowsResult": { "type": "structure", "members": { - "ReservedInstancesOfferings": { - "target": "com.amazonaws.ec2#ReservedInstancesOfferingList", + "InstanceEventWindows": { + "target": "com.amazonaws.ec2#InstanceEventWindowSet", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesOfferingsSet", - "smithy.api#documentation": "

A list of Reserved Instances offerings.

", - "smithy.api#xmlName": "reservedInstancesOfferingsSet" + "aws.protocols#ec2QueryName": "InstanceEventWindowSet", + "smithy.api#documentation": "

Information about the event windows.

", + "smithy.api#xmlName": "instanceEventWindowSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when\n\t\t\tthere are no more results to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null\n when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of DescribeReservedInstancesOfferings.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeReservedInstancesRequest": { + "com.amazonaws.ec2#DescribeInstanceImageMetadata": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeInstanceImageMetadataRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeInstanceImageMetadataResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the AMI that was used to launch an instance, even if the AMI is deprecated,\n deregistered, made private (no longer public or shared with your account), or not\n allowed.

\n

If you specify instance IDs, the output includes information for only the specified\n instances. If you specify filters, the output includes information for only those instances\n that meet the filter criteria. If you do not specify instance IDs or filters, the output\n includes information for all instances, which can affect performance.

\n

If you specify an instance ID that is not valid, an instance that doesn't exist, or an\n instance that you do not own, an error (InvalidInstanceID.NotFound) is\n returned.

\n

Recently terminated instances might appear in the returned results. This interval is\n usually less than one hour.

\n

In the rare case where an Availability Zone is experiencing a service disruption and you\n specify instance IDs that are in the affected Availability Zone, or do not specify any\n instance IDs at all, the call fails. If you specify only instance IDs that are in an\n unaffected Availability Zone, the call works normally.

\n \n

The order of the elements in the response, including those within nested structures,\n might vary. Applications should not assume the elements appear in a particular order.

\n
", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "InstanceImageMetadata", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#DescribeInstanceImageMetadataMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeInstanceImageMetadataRequest": { "type": "structure", "members": { "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#documentation": "

The filters.

\n ", "smithy.api#xmlName": "Filter" } }, - "OfferingClass": { - "target": "com.amazonaws.ec2#OfferingClassType", + "InstanceIds": { + "target": "com.amazonaws.ec2#InstanceIdStringList", "traits": { - "smithy.api#documentation": "

Describes whether the Reserved Instance is Standard or Convertible.

" + "smithy.api#documentation": "

The instance IDs.

\n

If you don't specify an instance ID or filters, the output includes information for all\n instances.

", + "smithy.api#xmlName": "InstanceId" } }, - "ReservedInstancesIds": { - "target": "com.amazonaws.ec2#ReservedInstancesIdStringList", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeInstanceImageMetadataMaxResults", "traits": { - "smithy.api#documentation": "

One or more Reserved Instance IDs.

\n

Default: Describes all your Reserved Instances, or only those otherwise specified.

", - "smithy.api#xmlName": "ReservedInstancesId" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

\n

Default: 1000

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, - "OfferingType": { - "target": "com.amazonaws.ec2#OfferingTypeValues", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "OfferingType", - "smithy.api#documentation": "

The Reserved Instance offering type. If you are using tools that predate the 2011-11-01 API\n\t\t\tversion, you only have access to the Medium Utilization Reserved Instance\n\t\t\toffering type.

", - "smithy.api#xmlName": "offeringType" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeReservedInstances.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeReservedInstancesResult": { + "com.amazonaws.ec2#DescribeInstanceImageMetadataResult": { "type": "structure", "members": { - "ReservedInstances": { - "target": "com.amazonaws.ec2#ReservedInstancesList", + "InstanceImageMetadata": { + "target": "com.amazonaws.ec2#InstanceImageMetadataList", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesSet", - "smithy.api#documentation": "

A list of Reserved Instances.

", - "smithy.api#xmlName": "reservedInstancesSet" + "aws.protocols#ec2QueryName": "InstanceImageMetadataSet", + "smithy.api#documentation": "

Information about the instance and the AMI used to launch the instance.

", + "smithy.api#xmlName": "instanceImageMetadataSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Contains the output for DescribeReservedInstances.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeRouteTables": { + "com.amazonaws.ec2#DescribeInstanceStatus": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeRouteTablesRequest" + "target": "com.amazonaws.ec2#DescribeInstanceStatusRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeRouteTablesResult" + "target": "com.amazonaws.ec2#DescribeInstanceStatusResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your route tables.

\n

Each subnet in your VPC must be associated with a route table. If a subnet is not explicitly associated with any route table, it is implicitly associated with the main route table. This command does not return the subnet ID for implicit associations.

\n

For more information, see Route tables in the\n\t\t\t\tAmazon VPC User Guide.

", + "smithy.api#documentation": "

Describes the status of the specified instances or all of your instances. By default,\n only running instances are described, unless you specifically indicate to return the\n status of all instances.

\n

Instance status includes the following components:

\n \n

The Amazon EC2 API follows an eventual consistency model. This means that the result of an\n API command you run that creates or modifies resources might not be immediately\n available to all subsequent commands you run. For guidance on how to manage eventual\n consistency, see Eventual consistency in the\n Amazon EC2 API in the Amazon EC2 Developer\n Guide.

\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", "smithy.api#examples": [ { - "title": "To describe a route table", - "documentation": "This example describes the specified route table.", + "title": "To describe the status of an instance", + "documentation": "This example describes the current status of the specified instance.", "input": { - "RouteTableIds": [ - "rtb-1f382e7d" + "InstanceIds": [ + "i-1234567890abcdef0" ] }, "output": { - "RouteTables": [ + "InstanceStatuses": [ { - "Associations": [ - { - "RouteTableAssociationId": "rtbassoc-d8ccddba", - "Main": true, - "RouteTableId": "rtb-1f382e7d" - } - ], - "RouteTableId": "rtb-1f382e7d", - "VpcId": "vpc-a01106c2", - "PropagatingVgws": [], - "Tags": [], - "Routes": [ - { - "GatewayId": "local", - "DestinationCidrBlock": "10.0.0.0/16", - "State": "active" - } - ] + "InstanceId": "i-1234567890abcdef0", + "InstanceState": { + "Code": 16, + "Name": "running" + }, + "AvailabilityZone": "us-east-1d", + "SystemStatus": { + "Status": "ok", + "Details": [ + { + "Status": "passed", + "Name": "reachability" + } + ] + }, + "InstanceStatus": { + "Status": "ok", + "Details": [ + { + "Status": "passed", + "Name": "reachability" + } + ] + } } ] } @@ -36469,55 +36478,95 @@ "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "RouteTables", + "items": "InstanceStatuses", "pageSize": "MaxResults" + }, + "smithy.api#suppress": [ + "WaitableTraitInvalidErrorType" + ], + "smithy.waiters#waitable": { + "InstanceStatusOk": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "InstanceStatuses[].InstanceStatus.Status", + "expected": "ok", + "comparator": "allStringEquals" + } + } + }, + { + "state": "retry", + "matcher": { + "errorType": "InvalidInstanceID.NotFound" + } + } + ], + "minDelay": 15 + }, + "SystemStatusOk": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "InstanceStatuses[].SystemStatus.Status", + "expected": "ok", + "comparator": "allStringEquals" + } + } + } + ], + "minDelay": 15 + } } } }, - "com.amazonaws.ec2#DescribeRouteTablesMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 100 - } - } - }, - "com.amazonaws.ec2#DescribeRouteTablesRequest": { + "com.amazonaws.ec2#DescribeInstanceStatusRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "InstanceIds": { + "target": "com.amazonaws.ec2#InstanceIdStringList", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The instance IDs.

\n

Default: Describes all your instances.

\n

Constraints: Maximum 100 explicitly specified instance IDs.

", + "smithy.api#xmlName": "InstanceId" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

\n

You cannot specify this parameter and the instance IDs parameter in the same request.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } }, - "RouteTableIds": { - "target": "com.amazonaws.ec2#RouteTableIdStringList", - "traits": { - "smithy.api#documentation": "

The IDs of the route tables.

\n

Default: Describes all your route tables.

", - "smithy.api#xmlName": "RouteTableId" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeRouteTablesMaxResults", + "IncludeAllInstances": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" + "aws.protocols#ec2QueryName": "IncludeAllInstances", + "smithy.api#documentation": "

When true, includes the health status for all instances. When\n false, includes the health status for running instances only.

\n

Default: false\n

", + "smithy.api#xmlName": "includeAllInstances" } } }, @@ -36525,282 +36574,272 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeRouteTablesResult": { + "com.amazonaws.ec2#DescribeInstanceStatusResult": { "type": "structure", "members": { - "RouteTables": { - "target": "com.amazonaws.ec2#RouteTableList", + "InstanceStatuses": { + "target": "com.amazonaws.ec2#InstanceStatusList", "traits": { - "aws.protocols#ec2QueryName": "RouteTableSet", - "smithy.api#documentation": "

Information about one or more route tables.

", - "smithy.api#xmlName": "routeTableSet" + "aws.protocols#ec2QueryName": "InstanceStatusSet", + "smithy.api#documentation": "

Information about the status of the instances.

", + "smithy.api#xmlName": "instanceStatusSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of DescribeRouteTables.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeScheduledInstanceAvailability": { + "com.amazonaws.ec2#DescribeInstanceTopology": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeScheduledInstanceAvailabilityRequest" + "target": "com.amazonaws.ec2#DescribeInstanceTopologyRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeScheduledInstanceAvailabilityResult" + "target": "com.amazonaws.ec2#DescribeInstanceTopologyResult" }, "traits": { - "smithy.api#documentation": "

Finds available schedules that meet the specified criteria.

\n

You can search for an available schedule no more than 3 months in advance. You must meet the minimum required duration of 1,200 hours per year. For example, the minimum daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the minimum monthly schedule is 100 hours.

\n

After you find a schedule that meets your needs, call PurchaseScheduledInstances\n to purchase Scheduled Instances with that schedule.

", + "smithy.api#documentation": "

Describes a tree-based hierarchy that represents the physical host placement of your\n EC2 instances within an Availability Zone or Local Zone. You can use this information to\n determine the relative proximity of your EC2 instances within the Amazon Web Services network to\n support your tightly coupled workloads.

\n

Instance topology is supported for specific instance types only. For more information, \n see \n Prerequisites for Amazon EC2 instance topology in the Amazon EC2 User Guide.

\n \n

The Amazon EC2 API follows an eventual consistency model due to the\n distributed nature of the system supporting it. As a result, when you call the\n DescribeInstanceTopology API command immediately after launching instances, the\n response might return a null value for capacityBlockId\n because the data might not have fully propagated across all subsystems. For more\n information, see Eventual consistency in the\n Amazon EC2 API in the Amazon EC2 Developer\n Guide.

\n
\n

For more information, see Amazon EC2 instance\n topology in the Amazon EC2 User Guide.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "ScheduledInstanceAvailabilitySet", + "items": "Instances", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeScheduledInstanceAvailabilityMaxResults": { + "com.amazonaws.ec2#DescribeInstanceTopologyGroupNameSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PlacementGroupName" + } + }, + "com.amazonaws.ec2#DescribeInstanceTopologyInstanceIdSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceId" + } + }, + "com.amazonaws.ec2#DescribeInstanceTopologyMaxResults": { "type": "integer", "traits": { "smithy.api#range": { - "min": 5, - "max": 300 + "min": 1, + "max": 100 } } }, - "com.amazonaws.ec2#DescribeScheduledInstanceAvailabilityRequest": { + "com.amazonaws.ec2#DescribeInstanceTopologyRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } }, - "FirstSlotStartTimeRange": { - "target": "com.amazonaws.ec2#SlotDateTimeRangeRequest", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The time period for the first schedule to start.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, "MaxResults": { - "target": "com.amazonaws.ec2#DescribeScheduledInstanceAvailabilityMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return in a single call. \n This value can be between 5 and 300. The default value is 300.\n To retrieve the remaining results, make another call with the returned\n NextToken value.

" - } - }, - "MaxSlotDurationInHours": { - "target": "com.amazonaws.ec2#Integer", + "target": "com.amazonaws.ec2#DescribeInstanceTopologyMaxResults", "traits": { - "smithy.api#documentation": "

The maximum available duration, in hours. This value must be greater than MinSlotDurationInHours\n and less than 1,720.

" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

\n

You can't specify this parameter and the instance IDs parameter in the same request.

\n

Default: 20\n

" } }, - "MinSlotDurationInHours": { - "target": "com.amazonaws.ec2#Integer", + "InstanceIds": { + "target": "com.amazonaws.ec2#DescribeInstanceTopologyInstanceIdSet", "traits": { - "smithy.api#documentation": "

The minimum available duration, in hours. The minimum required duration is 1,200 hours per year. For example, the minimum daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the minimum monthly schedule is 100 hours.

" + "smithy.api#documentation": "

The instance IDs.

\n

Default: Describes all your instances.

\n

Constraints: Maximum 100 explicitly specified instance IDs.

", + "smithy.api#xmlName": "InstanceId" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "GroupNames": { + "target": "com.amazonaws.ec2#DescribeInstanceTopologyGroupNameSet", "traits": { - "smithy.api#documentation": "

The token for the next set of results.

" + "smithy.api#documentation": "

The name of the placement group that each instance is in.

\n

Constraints: Maximum 100 explicitly specified placement group names.

", + "smithy.api#xmlName": "GroupName" } }, - "Recurrence": { - "target": "com.amazonaws.ec2#ScheduledInstanceRecurrenceRequest", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The schedule recurrence.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeScheduledInstanceAvailability.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeScheduledInstanceAvailabilityResult": { + "com.amazonaws.ec2#DescribeInstanceTopologyResult": { "type": "structure", "members": { + "Instances": { + "target": "com.amazonaws.ec2#InstanceSet", + "traits": { + "aws.protocols#ec2QueryName": "InstanceSet", + "smithy.api#documentation": "

Information about the topology of each instance.

", + "smithy.api#xmlName": "instanceSet" + } + }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token required to retrieve the next set of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", "smithy.api#xmlName": "nextToken" } - }, - "ScheduledInstanceAvailabilitySet": { - "target": "com.amazonaws.ec2#ScheduledInstanceAvailabilitySet", - "traits": { - "aws.protocols#ec2QueryName": "ScheduledInstanceAvailabilitySet", - "smithy.api#documentation": "

Information about the available Scheduled Instances.

", - "smithy.api#xmlName": "scheduledInstanceAvailabilitySet" - } } }, "traits": { - "smithy.api#documentation": "

Contains the output of DescribeScheduledInstanceAvailability.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeScheduledInstances": { + "com.amazonaws.ec2#DescribeInstanceTypeOfferings": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeScheduledInstancesRequest" + "target": "com.amazonaws.ec2#DescribeInstanceTypeOfferingsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeScheduledInstancesResult" + "target": "com.amazonaws.ec2#DescribeInstanceTypeOfferingsResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified Scheduled Instances or all your Scheduled Instances.

", + "smithy.api#documentation": "

Lists the instance types that are offered for the specified location. If no location is\n specified, the default is to list the instance types that are offered in the current\n Region.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "ScheduledInstanceSet", + "items": "InstanceTypeOfferings", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeScheduledInstancesRequest": { + "com.amazonaws.ec2#DescribeInstanceTypeOfferingsRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request,\n and provides an error response. If you have the required permissions, the error response is\n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "LocationType": { + "target": "com.amazonaws.ec2#LocationType", + "traits": { + "smithy.api#documentation": "

The location type.

\n " } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

\n ", "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "target": "com.amazonaws.ec2#DITOMaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of results to return in a single call. \n This value can be between 5 and 300. The default value is 100.\n To retrieve the remaining results, make another call with the returned\n NextToken value.

" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" } }, "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The token for the next set of results.

" - } - }, - "ScheduledInstanceIds": { - "target": "com.amazonaws.ec2#ScheduledInstanceIdRequestSet", + "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#documentation": "

The Scheduled Instance IDs.

", - "smithy.api#xmlName": "ScheduledInstanceId" - } - }, - "SlotStartTimeRange": { - "target": "com.amazonaws.ec2#SlotStartTimeRangeRequest", - "traits": { - "smithy.api#documentation": "

The time period for the first schedule to start.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeScheduledInstances.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeScheduledInstancesResult": { + "com.amazonaws.ec2#DescribeInstanceTypeOfferingsResult": { "type": "structure", "members": { - "NextToken": { - "target": "com.amazonaws.ec2#String", + "InstanceTypeOfferings": { + "target": "com.amazonaws.ec2#InstanceTypeOfferingsList", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token required to retrieve the next set of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "InstanceTypeOfferingSet", + "smithy.api#documentation": "

The instance types offered in the location.

", + "smithy.api#xmlName": "instanceTypeOfferingSet" } }, - "ScheduledInstanceSet": { - "target": "com.amazonaws.ec2#ScheduledInstanceSet", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "ScheduledInstanceSet", - "smithy.api#documentation": "

Information about the Scheduled Instances.

", - "smithy.api#xmlName": "scheduledInstanceSet" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of DescribeScheduledInstances.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeSecurityGroupReferences": { + "com.amazonaws.ec2#DescribeInstanceTypes": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeSecurityGroupReferencesRequest" + "target": "com.amazonaws.ec2#DescribeInstanceTypesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeSecurityGroupReferencesResult" + "target": "com.amazonaws.ec2#DescribeInstanceTypesResult" }, "traits": { - "smithy.api#documentation": "

Describes the VPCs on the other side of a VPC peering connection that are referencing the security groups you've specified in this request.

", - "smithy.api#examples": [ - { - "title": "To describe security group references", - "documentation": "This example describes the security group references for the specified security group.", - "input": { - "GroupId": [ - "sg-903004f8" - ] - }, - "output": { - "SecurityGroupReferenceSet": [ - { - "ReferencingVpcId": "vpc-1a2b3c4d", - "GroupId": "sg-903004f8", - "VpcPeeringConnectionId": "pcx-b04deed9" - } - ] - } - } - ] + "smithy.api#documentation": "

Describes the specified instance types. By default, all instance types for the current\n Region are described. Alternatively, you can filter the results.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "InstanceTypes", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DescribeSecurityGroupReferencesRequest": { + "com.amazonaws.ec2#DescribeInstanceTypesRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request,\n and provides an error response. If you have the required permissions, the error response is\n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } }, - "GroupId": { - "target": "com.amazonaws.ec2#GroupIds", + "InstanceTypes": { + "target": "com.amazonaws.ec2#RequestInstanceTypeList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the security groups in your account.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The instance types.

", + "smithy.api#xmlName": "InstanceType" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

\n ", + "smithy.api#xmlName": "Filter" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DITMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } } }, @@ -36808,15 +36847,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeSecurityGroupReferencesResult": { + "com.amazonaws.ec2#DescribeInstanceTypesResult": { "type": "structure", "members": { - "SecurityGroupReferenceSet": { - "target": "com.amazonaws.ec2#SecurityGroupReferences", + "InstanceTypes": { + "target": "com.amazonaws.ec2#InstanceTypeInfoList", "traits": { - "aws.protocols#ec2QueryName": "SecurityGroupReferenceSet", - "smithy.api#documentation": "

Information about the VPCs with the referencing security groups.

", - "smithy.api#xmlName": "securityGroupReferenceSet" + "aws.protocols#ec2QueryName": "InstanceTypeSet", + "smithy.api#documentation": "

The instance type.

", + "smithy.api#xmlName": "instanceTypeSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -36824,66 +36871,269 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeSecurityGroupRules": { + "com.amazonaws.ec2#DescribeInstances": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeSecurityGroupRulesRequest" + "target": "com.amazonaws.ec2#DescribeInstancesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeSecurityGroupRulesResult" + "target": "com.amazonaws.ec2#DescribeInstancesResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your security group rules.

", + "smithy.api#documentation": "

Describes the specified instances or all instances.

\n

If you specify instance IDs, the output includes information for only the specified\n instances. If you specify filters, the output includes information for only those\n instances that meet the filter criteria. If you do not specify instance IDs or filters,\n the output includes information for all instances, which can affect performance. We\n recommend that you use pagination to ensure that the operation returns quickly and\n successfully.

\n

If you specify an instance ID that is not valid, an error is returned. If you specify\n an instance that you do not own, it is not included in the output.

\n

Recently terminated instances might appear in the returned results. This interval is\n usually less than one hour.

\n

If you describe instances in the rare case where an Availability Zone is experiencing\n a service disruption and you specify instance IDs that are in the affected zone, or do\n not specify any instance IDs at all, the call fails. If you describe instances and\n specify only instance IDs that are in an unaffected zone, the call works\n normally.

\n

The Amazon EC2 API follows an eventual consistency model. This means that the result of an\n API command you run that creates or modifies resources might not be immediately\n available to all subsequent commands you run. For guidance on how to manage eventual\n consistency, see Eventual consistency in the\n Amazon EC2 API in the Amazon EC2 Developer\n Guide.

\n \n

We strongly recommend using only paginated requests. Unpaginated requests are\n susceptible to throttling and timeouts.

\n
\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", + "smithy.api#examples": [ + { + "title": "To describe an Amazon EC2 instance", + "documentation": "This example describes the specified instance.", + "input": { + "InstanceIds": [ + "i-1234567890abcdef0" + ] + }, + "output": {} + }, + { + "title": "To describe the instances with a specific tag", + "documentation": "This example describes the instances with the Purpose=test tag.", + "input": { + "Filters": [ + { + "Name": "tag:Purpose", + "Values": [ + "test" + ] + } + ] + }, + "output": {} + }, + { + "title": "To describe the instances with a specific instance type", + "documentation": "This example describes the instances with the t2.micro instance type.", + "input": { + "Filters": [ + { + "Name": "instance-type", + "Values": [ + "t2.micro" + ] + } + ] + }, + "output": {} + } + ], "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "SecurityGroupRules", + "items": "Reservations", "pageSize": "MaxResults" + }, + "smithy.api#suppress": [ + "WaitableTraitInvalidErrorType" + ], + "smithy.test#smokeTests": [ + { + "id": "DescribeInstancesFailure", + "params": { + "InstanceIds": [ + "i-12345678" + ] + }, + "vendorParams": { + "region": "us-west-2" + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "expect": { + "failure": {} + } + } + ], + "smithy.waiters#waitable": { + "InstanceExists": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "length(Reservations[]) > `0`", + "expected": "true", + "comparator": "booleanEquals" + } + } + }, + { + "state": "retry", + "matcher": { + "errorType": "InvalidInstanceID.NotFound" + } + } + ], + "minDelay": 5 + }, + "InstanceRunning": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "Reservations[].Instances[].State.Name", + "expected": "running", + "comparator": "allStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "Reservations[].Instances[].State.Name", + "expected": "shutting-down", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "Reservations[].Instances[].State.Name", + "expected": "terminated", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "Reservations[].Instances[].State.Name", + "expected": "stopping", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "retry", + "matcher": { + "errorType": "InvalidInstanceID.NotFound" + } + } + ], + "minDelay": 15 + }, + "InstanceStopped": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "Reservations[].Instances[].State.Name", + "expected": "stopped", + "comparator": "allStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "Reservations[].Instances[].State.Name", + "expected": "pending", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "Reservations[].Instances[].State.Name", + "expected": "terminated", + "comparator": "anyStringEquals" + } + } + } + ], + "minDelay": 15 + }, + "InstanceTerminated": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "Reservations[].Instances[].State.Name", + "expected": "terminated", + "comparator": "allStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "Reservations[].Instances[].State.Name", + "expected": "pending", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "Reservations[].Instances[].State.Name", + "expected": "stopping", + "comparator": "anyStringEquals" + } + } + } + ], + "minDelay": 15 + } } } }, - "com.amazonaws.ec2#DescribeSecurityGroupRulesMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#DescribeSecurityGroupRulesRequest": { + "com.amazonaws.ec2#DescribeInstancesRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "InstanceIds": { + "target": "com.amazonaws.ec2#InstanceIdStringList", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The instance IDs.

\n

Default: Describes all your instances.

", + "smithy.api#xmlName": "InstanceId" } }, - "SecurityGroupRuleIds": { - "target": "com.amazonaws.ec2#SecurityGroupRuleIdList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The IDs of the security group rules.

", - "smithy.api#xmlName": "SecurityGroupRuleId" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", + "smithy.api#xmlName": "nextToken" } }, "MaxResults": { - "target": "com.amazonaws.ec2#DescribeSecurityGroupRulesMaxResults", + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of \n items, make another request with the token returned in the output. This value\n can be between 5 and 1000. If this parameter is not specified, then all items are\n returned. For more information, see Pagination.

" + "aws.protocols#ec2QueryName": "MaxResults", + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

\n

You cannot specify this parameter and the instance IDs parameter in the same request.

", + "smithy.api#xmlName": "maxResults" } } }, @@ -36891,84 +37141,87 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeSecurityGroupRulesResult": { + "com.amazonaws.ec2#DescribeInstancesResult": { "type": "structure", "members": { - "SecurityGroupRules": { - "target": "com.amazonaws.ec2#SecurityGroupRuleList", - "traits": { - "aws.protocols#ec2QueryName": "SecurityGroupRuleSet", - "smithy.api#documentation": "

Information about security group rules.

", - "smithy.api#xmlName": "securityGroupRuleSet" - } - }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", "smithy.api#xmlName": "nextToken" } + }, + "Reservations": { + "target": "com.amazonaws.ec2#ReservationList", + "traits": { + "aws.protocols#ec2QueryName": "ReservationSet", + "smithy.api#documentation": "

Information about the reservations.

", + "smithy.api#xmlName": "reservationSet" + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeSecurityGroups": { + "com.amazonaws.ec2#DescribeInternetGateways": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeSecurityGroupsRequest" + "target": "com.amazonaws.ec2#DescribeInternetGatewaysRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeSecurityGroupsResult" + "target": "com.amazonaws.ec2#DescribeInternetGatewaysResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified security groups or all of your security groups.

", + "smithy.api#documentation": "

Describes your internet gateways. The default is to describe all your internet gateways. \n Alternatively, you can specify specific internet gateway IDs or filter the results to\n include only the internet gateways that match specific criteria.

", "smithy.api#examples": [ { - "title": "To describe a security group", - "documentation": "This example describes the specified security group.", - "input": { - "GroupIds": [ - "sg-903004f8" - ] - }, - "output": {} - }, - { - "title": "To describe a tagged security group", - "documentation": "This example describes the security groups that include the specified tag (Purpose=test).", + "title": "To describe the Internet gateway for a VPC", + "documentation": "This example describes the Internet gateway for the specified VPC.", "input": { "Filters": [ { - "Name": "tag:Purpose", + "Name": "attachment.vpc-id", "Values": [ - "test" + "vpc-a01106c2" ] } ] }, - "output": {} + "output": { + "InternetGateways": [ + { + "Tags": [], + "InternetGatewayId": "igw-c0a643a9", + "Attachments": [ + { + "State": "attached", + "VpcId": "vpc-a01106c2" + } + ] + } + ] + } } ], "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "SecurityGroups", + "items": "InternetGateways", "pageSize": "MaxResults" }, "smithy.api#suppress": [ "WaitableTraitInvalidErrorType" ], "smithy.waiters#waitable": { - "SecurityGroupExists": { + "InternetGatewayExists": { "acceptors": [ { "state": "success", "matcher": { "output": { - "path": "length(SecurityGroups[].GroupId) > `0`", + "path": "length(InternetGateways[].InternetGatewayId) > `0`", "expected": "true", "comparator": "booleanEquals" } @@ -36977,7 +37230,7 @@ { "state": "retry", "matcher": { - "errorType": "InvalidGroup.NotFound" + "errorType": "InvalidInternetGateway.NotFound" } } ], @@ -36986,7 +37239,7 @@ } } }, - "com.amazonaws.ec2#DescribeSecurityGroupsMaxResults": { + "com.amazonaws.ec2#DescribeInternetGatewaysMaxResults": { "type": "integer", "traits": { "smithy.api#range": { @@ -36995,28 +37248,19 @@ } } }, - "com.amazonaws.ec2#DescribeSecurityGroupsRequest": { + "com.amazonaws.ec2#DescribeInternetGatewaysRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

The filters. If using multiple filters for rules, the results include security groups for which any combination of rules - not necessarily a single rule - match all filters.

\n ", - "smithy.api#xmlName": "Filter" - } - }, - "GroupIds": { - "target": "com.amazonaws.ec2#GroupIdStringList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IDs of the security groups. Required for security groups in a nondefault VPC.

\n

Default: Describes all of your security groups.

", - "smithy.api#xmlName": "GroupId" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, - "GroupNames": { - "target": "com.amazonaws.ec2#GroupNameStringList", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeInternetGatewaysMaxResults", "traits": { - "smithy.api#documentation": "

[Default VPC] The names of the security groups. You can specify either\n\t\t\tthe security group name or the security group ID.

\n

Default: Describes all of your security groups.

", - "smithy.api#xmlName": "GroupName" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" } }, "DryRun": { @@ -37027,16 +37271,19 @@ "smithy.api#xmlName": "dryRun" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "InternetGatewayIds": { + "target": "com.amazonaws.ec2#InternetGatewayIdList", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" + "aws.protocols#ec2QueryName": "InternetGatewayId", + "smithy.api#documentation": "

The IDs of the internet gateways.

\n

Default: Describes all your internet gateways.

", + "smithy.api#xmlName": "internetGatewayId" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeSecurityGroupsMaxResults", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items,\n make another request with the token returned in the output. This value can be between 5 and 1000. \n If this parameter is not specified, then all items are returned. For more information, see \n Pagination.

" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, @@ -37044,22 +37291,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeSecurityGroupsResult": { + "com.amazonaws.ec2#DescribeInternetGatewaysResult": { "type": "structure", "members": { - "SecurityGroups": { - "target": "com.amazonaws.ec2#SecurityGroupList", + "InternetGateways": { + "target": "com.amazonaws.ec2#InternetGatewayList", "traits": { - "aws.protocols#ec2QueryName": "SecurityGroupInfo", - "smithy.api#documentation": "

Information about the security groups.

", - "smithy.api#xmlName": "securityGroupInfo" + "aws.protocols#ec2QueryName": "InternetGatewaySet", + "smithy.api#documentation": "

Information about the internet gateways.

", + "smithy.api#xmlName": "internetGatewaySet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", "smithy.api#xmlName": "nextToken" } } @@ -37068,57 +37315,46 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeSnapshotAttribute": { + "com.amazonaws.ec2#DescribeIpamByoasn": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeSnapshotAttributeRequest" + "target": "com.amazonaws.ec2#DescribeIpamByoasnRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeSnapshotAttributeResult" + "target": "com.amazonaws.ec2#DescribeIpamByoasnResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified attribute of the specified snapshot. You can specify only one\n attribute at a time.

\n

For more information about EBS snapshots, see Amazon EBS snapshots in the Amazon EBS User Guide.

", - "smithy.api#examples": [ - { - "title": "To describe snapshot attributes", - "documentation": "This example describes the ``createVolumePermission`` attribute on a snapshot with the snapshot ID of ``snap-066877671789bd71b``.", - "input": { - "SnapshotId": "snap-066877671789bd71b", - "Attribute": "createVolumePermission" - }, - "output": { - "SnapshotId": "snap-066877671789bd71b", - "CreateVolumePermissions": [] - } - } - ] + "smithy.api#documentation": "

Describes your Autonomous System Numbers (ASNs), their provisioning statuses, and the BYOIP CIDRs with which they are associated. For more information, see Tutorial: Bring your ASN to IPAM in the Amazon VPC IPAM guide.

" } }, - "com.amazonaws.ec2#DescribeSnapshotAttributeRequest": { + "com.amazonaws.ec2#DescribeIpamByoasnMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.ec2#DescribeIpamByoasnRequest": { "type": "structure", "members": { - "Attribute": { - "target": "com.amazonaws.ec2#SnapshotAttributeName", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The snapshot attribute you would like to view.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "SnapshotId": { - "target": "com.amazonaws.ec2#SnapshotId", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeIpamByoasnMaxResults", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the EBS snapshot.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The token for the next page of results.

" } } }, @@ -37126,31 +37362,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeSnapshotAttributeResult": { + "com.amazonaws.ec2#DescribeIpamByoasnResult": { "type": "structure", "members": { - "CreateVolumePermissions": { - "target": "com.amazonaws.ec2#CreateVolumePermissionList", - "traits": { - "aws.protocols#ec2QueryName": "CreateVolumePermission", - "smithy.api#documentation": "

The users and groups that have the permissions for creating volumes from the\n snapshot.

", - "smithy.api#xmlName": "createVolumePermission" - } - }, - "ProductCodes": { - "target": "com.amazonaws.ec2#ProductCodeList", + "Byoasns": { + "target": "com.amazonaws.ec2#ByoasnSet", "traits": { - "aws.protocols#ec2QueryName": "ProductCodes", - "smithy.api#documentation": "

The product codes.

", - "smithy.api#xmlName": "productCodes" + "aws.protocols#ec2QueryName": "ByoasnSet", + "smithy.api#documentation": "

ASN and BYOIP CIDR associations.

", + "smithy.api#xmlName": "byoasnSet" } }, - "SnapshotId": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SnapshotId", - "smithy.api#documentation": "

The ID of the EBS snapshot.

", - "smithy.api#xmlName": "snapshotId" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -37158,53 +37386,51 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeSnapshotTierStatus": { + "com.amazonaws.ec2#DescribeIpamExternalResourceVerificationTokens": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeSnapshotTierStatusRequest" + "target": "com.amazonaws.ec2#DescribeIpamExternalResourceVerificationTokensRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeSnapshotTierStatusResult" + "target": "com.amazonaws.ec2#DescribeIpamExternalResourceVerificationTokensResult" }, "traits": { - "smithy.api#documentation": "

Describes the storage tier status of one or more Amazon EBS snapshots.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "SnapshotTierStatuses", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Describe verification tokens. A verification token is an Amazon Web Services-generated random value that you can use to prove ownership of an external resource. For example, you can use a verification token to validate that you control a public IP address range when you bring an IP address range to Amazon Web Services (BYOIP).\n

" } }, - "com.amazonaws.ec2#DescribeSnapshotTierStatusMaxResults": { - "type": "integer" - }, - "com.amazonaws.ec2#DescribeSnapshotTierStatusRequest": { + "com.amazonaws.ec2#DescribeIpamExternalResourceVerificationTokensRequest": { "type": "structure", "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#documentation": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

\n

Available filters:

\n ", "smithy.api#xmlName": "Filter" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "MaxResults": { + "target": "com.amazonaws.ec2#IpamMaxResults", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

The maximum number of tokens to return in one page of results.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeSnapshotTierStatusMaxResults", + "IpamExternalResourceVerificationTokenIds": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output. \n\tFor more information, see Pagination.

" + "smithy.api#documentation": "

Verification token IDs.

", + "smithy.api#xmlName": "IpamExternalResourceVerificationTokenId" } } }, @@ -37212,182 +37438,81 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeSnapshotTierStatusResult": { + "com.amazonaws.ec2#DescribeIpamExternalResourceVerificationTokensResult": { "type": "structure", "members": { - "SnapshotTierStatuses": { - "target": "com.amazonaws.ec2#snapshotTierStatusSet", - "traits": { - "aws.protocols#ec2QueryName": "SnapshotTierStatusSet", - "smithy.api#documentation": "

Information about the snapshot's storage tier.

", - "smithy.api#xmlName": "snapshotTierStatusSet" - } - }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } + }, + "IpamExternalResourceVerificationTokens": { + "target": "com.amazonaws.ec2#IpamExternalResourceVerificationTokenSet", + "traits": { + "aws.protocols#ec2QueryName": "IpamExternalResourceVerificationTokenSet", + "smithy.api#documentation": "

Verification tokens.

", + "smithy.api#xmlName": "ipamExternalResourceVerificationTokenSet" + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeSnapshots": { + "com.amazonaws.ec2#DescribeIpamPools": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeSnapshotsRequest" + "target": "com.amazonaws.ec2#DescribeIpamPoolsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeSnapshotsResult" + "target": "com.amazonaws.ec2#DescribeIpamPoolsResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified EBS snapshots available to you or all of the EBS snapshots\n available to you.

\n

The snapshots available to you include public snapshots, private snapshots that you own,\n and private snapshots owned by other Amazon Web Services accounts for which you have explicit create volume\n permissions.

\n

The create volume permissions fall into the following categories:

\n \n

The list of snapshots returned can be filtered by specifying snapshot IDs, snapshot\n owners, or Amazon Web Services accounts with create volume permissions. If no options are specified, \n Amazon EC2 returns all snapshots for which you have create volume permissions.

\n

If you specify one or more snapshot IDs, only snapshots that have the specified IDs are\n returned. If you specify an invalid snapshot ID, an error is returned. If you specify a\n snapshot ID for which you do not have access, it is not included in the returned\n results.

\n

If you specify one or more snapshot owners using the OwnerIds option, only\n snapshots from the specified owners and for which you have access are returned. The results\n can include the Amazon Web Services account IDs of the specified owners, amazon for snapshots\n owned by Amazon, or self for snapshots that you own.

\n

If you specify a list of restorable users, only snapshots with create snapshot permissions\n for those users are returned. You can specify Amazon Web Services account IDs (if you own the snapshots),\n self for snapshots for which you own or have explicit permissions, or\n all for public snapshots.

\n

If you are describing a long list of snapshots, we recommend that you paginate the output to make the\n list more manageable. For more information, see Pagination.

\n

To get the state of fast snapshot restores for a snapshot, use DescribeFastSnapshotRestores.

\n

For more information about EBS snapshots, see Amazon EBS snapshots in the Amazon EBS User Guide.

\n \n

We strongly recommend using only paginated requests. Unpaginated requests are\n susceptible to throttling and timeouts.

\n
", - "smithy.api#examples": [ - { - "title": "To describe a snapshot", - "documentation": "This example describes a snapshot with the snapshot ID of ``snap-1234567890abcdef0``.", - "input": { - "SnapshotIds": [ - "snap-1234567890abcdef0" - ] - }, - "output": { - "Snapshots": [ - { - "Description": "This is my snapshot.", - "VolumeId": "vol-049df61146c4d7901", - "State": "completed", - "VolumeSize": 8, - "Progress": "100%", - "StartTime": "2014-02-28T21:28:32.000Z", - "SnapshotId": "snap-1234567890abcdef0", - "OwnerId": "012345678910" - } - ], - "NextToken": "" - } - }, - { - "title": "To describe snapshots using filters", - "documentation": "This example describes all snapshots owned by the ID 012345678910 that are in the ``pending`` status.", - "input": { - "OwnerIds": [ - "012345678910" - ], - "Filters": [ - { - "Values": [ - "pending" - ], - "Name": "status" - } - ] - }, - "output": { - "Snapshots": [ - { - "Description": "This is my copied snapshot.", - "VolumeId": "vol-1234567890abcdef0", - "State": "pending", - "VolumeSize": 8, - "Progress": "87%", - "StartTime": "2014-02-28T21:37:27.000Z", - "SnapshotId": "snap-066877671789bd71b", - "OwnerId": "012345678910" - } - ], - "NextToken": "" - } - } - ], + "smithy.api#documentation": "

Get information about your IPAM pools.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "Snapshots", + "items": "IpamPools", "pageSize": "MaxResults" - }, - "smithy.waiters#waitable": { - "SnapshotCompleted": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "Snapshots[].State", - "expected": "completed", - "comparator": "allStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "Snapshots[].State", - "expected": "error", - "comparator": "anyStringEquals" - } - } - } - ], - "minDelay": 15 - } } } }, - "com.amazonaws.ec2#DescribeSnapshotsRequest": { + "com.amazonaws.ec2#DescribeIpamPoolsRequest": { "type": "structure", "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#documentation": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

", "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "target": "com.amazonaws.ec2#IpamMaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of snapshots to return for this request.\n This value can be between 5 and 1,000; if this value is larger than 1,000, only 1,000 results are returned. \n If this parameter is not used, then the request returns all snapshots. \n You cannot specify this parameter and the snapshot IDs parameter in the same request. For more information, \n see Pagination.

" + "smithy.api#documentation": "

The maximum number of results to return in the request.

" } }, "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" - } - }, - "OwnerIds": { - "target": "com.amazonaws.ec2#OwnerStringList", - "traits": { - "smithy.api#documentation": "

Scopes the results to snapshots with the specified owners. You can specify a combination of\n Amazon Web Services account IDs, self, and amazon.

", - "smithy.api#xmlName": "Owner" - } - }, - "RestorableByUserIds": { - "target": "com.amazonaws.ec2#RestorableByStringList", - "traits": { - "smithy.api#documentation": "

The IDs of the Amazon Web Services accounts that can create volumes from the snapshot.

", - "smithy.api#xmlName": "RestorableBy" - } - }, - "SnapshotIds": { - "target": "com.amazonaws.ec2#SnapshotIdStringList", + "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#documentation": "

The snapshot IDs.

\n

Default: Describes the snapshots for which you have create volume permissions.

", - "smithy.api#xmlName": "SnapshotId" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "IpamPoolIds": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The IDs of the IPAM pools you would like information on.

", + "smithy.api#xmlName": "IpamPoolId" } } }, @@ -37395,1073 +37520,697 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeSnapshotsResult": { + "com.amazonaws.ec2#DescribeIpamPoolsResult": { "type": "structure", "members": { - "Snapshots": { - "target": "com.amazonaws.ec2#SnapshotList", - "traits": { - "aws.protocols#ec2QueryName": "SnapshotSet", - "smithy.api#documentation": "

Information about the snapshots.

", - "smithy.api#xmlName": "snapshotSet" - } - }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to return the next page of snapshots. \n This value is null when there are no more snapshots to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } + }, + "IpamPools": { + "target": "com.amazonaws.ec2#IpamPoolSet", + "traits": { + "aws.protocols#ec2QueryName": "IpamPoolSet", + "smithy.api#documentation": "

Information about the IPAM pools.

", + "smithy.api#xmlName": "ipamPoolSet" + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeSpotDatafeedSubscription": { + "com.amazonaws.ec2#DescribeIpamResourceDiscoveries": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeSpotDatafeedSubscriptionRequest" + "target": "com.amazonaws.ec2#DescribeIpamResourceDiscoveriesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeSpotDatafeedSubscriptionResult" + "target": "com.amazonaws.ec2#DescribeIpamResourceDiscoveriesResult" }, "traits": { - "smithy.api#documentation": "

Describes the data feed for Spot Instances. For more information, see Spot\n Instance data feed in the Amazon EC2 User Guide for Linux Instances.

", - "smithy.api#examples": [ - { - "title": "To describe the datafeed for your AWS account", - "documentation": "This example describes the Spot Instance datafeed subscription for your AWS account.", - "output": { - "SpotDatafeedSubscription": { - "OwnerId": "123456789012", - "Prefix": "spotdata", - "Bucket": "my-s3-bucket", - "State": "Active" - } - } - } - ] + "smithy.api#documentation": "

Describes IPAM resource discoveries. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "IpamResourceDiscoveries", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DescribeSpotDatafeedSubscriptionRequest": { + "com.amazonaws.ec2#DescribeIpamResourceDiscoveriesRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamResourceDiscoveryIds": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The IPAM resource discovery IDs.

", + "smithy.api#xmlName": "IpamResourceDiscoveryId" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#IpamMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of resource discoveries to return in one page of results.

" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

The resource discovery filters.

", + "smithy.api#xmlName": "Filter" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeSpotDatafeedSubscription.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeSpotDatafeedSubscriptionResult": { + "com.amazonaws.ec2#DescribeIpamResourceDiscoveriesResult": { "type": "structure", "members": { - "SpotDatafeedSubscription": { - "target": "com.amazonaws.ec2#SpotDatafeedSubscription", + "IpamResourceDiscoveries": { + "target": "com.amazonaws.ec2#IpamResourceDiscoverySet", "traits": { - "aws.protocols#ec2QueryName": "SpotDatafeedSubscription", - "smithy.api#documentation": "

The Spot Instance data feed subscription.

", - "smithy.api#xmlName": "spotDatafeedSubscription" + "aws.protocols#ec2QueryName": "IpamResourceDiscoverySet", + "smithy.api#documentation": "

The resource discoveries.

", + "smithy.api#xmlName": "ipamResourceDiscoverySet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of DescribeSpotDatafeedSubscription.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeSpotFleetInstances": { + "com.amazonaws.ec2#DescribeIpamResourceDiscoveryAssociations": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeSpotFleetInstancesRequest" + "target": "com.amazonaws.ec2#DescribeIpamResourceDiscoveryAssociationsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeSpotFleetInstancesResponse" + "target": "com.amazonaws.ec2#DescribeIpamResourceDiscoveryAssociationsResult" }, "traits": { - "smithy.api#documentation": "

Describes the running instances for the specified Spot Fleet.

", - "smithy.api#examples": [ - { - "title": "To describe the Spot Instances associated with a Spot fleet", - "documentation": "This example lists the Spot Instances associated with the specified Spot fleet.", - "input": { - "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" - }, - "output": { - "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", - "ActiveInstances": [ - { - "InstanceId": "i-1234567890abcdef0", - "InstanceType": "m3.medium", - "SpotInstanceRequestId": "sir-08b93456" - } - ] - } - } - ] - } - }, - "com.amazonaws.ec2#DescribeSpotFleetInstancesMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 1000 + "smithy.api#documentation": "

Describes resource discovery association with an Amazon VPC IPAM. An associated resource discovery is a resource discovery that has been associated with an IPAM..

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "IpamResourceDiscoveryAssociations", + "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeSpotFleetInstancesRequest": { + "com.amazonaws.ec2#DescribeIpamResourceDiscoveryAssociationsRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeSpotFleetInstancesMaxResults", + "IpamResourceDiscoveryAssociationIds": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "aws.protocols#ec2QueryName": "MaxResults", - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

", - "smithy.api#xmlName": "maxResults" + "smithy.api#documentation": "

The resource discovery association IDs.

", + "smithy.api#xmlName": "IpamResourceDiscoveryAssociationId" } }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

" } }, - "SpotFleetRequestId": { - "target": "com.amazonaws.ec2#SpotFleetRequestId", + "MaxResults": { + "target": "com.amazonaws.ec2#IpamMaxResults", "traits": { - "aws.protocols#ec2QueryName": "SpotFleetRequestId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Spot Fleet request.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "spotFleetRequestId" + "smithy.api#documentation": "

The maximum number of resource discovery associations to return in one page of results.

" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

The resource discovery association filters.

", + "smithy.api#xmlName": "Filter" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeSpotFleetInstances.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeSpotFleetInstancesResponse": { + "com.amazonaws.ec2#DescribeIpamResourceDiscoveryAssociationsResult": { "type": "structure", "members": { - "ActiveInstances": { - "target": "com.amazonaws.ec2#ActiveInstanceSet", + "IpamResourceDiscoveryAssociations": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryAssociationSet", "traits": { - "aws.protocols#ec2QueryName": "ActiveInstanceSet", - "smithy.api#documentation": "

The running instances. This list is refreshed periodically and might be out of\n date.

", - "smithy.api#xmlName": "activeInstanceSet" + "aws.protocols#ec2QueryName": "IpamResourceDiscoveryAssociationSet", + "smithy.api#documentation": "

The resource discovery associations.

", + "smithy.api#xmlName": "ipamResourceDiscoveryAssociationSet" } }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

", "smithy.api#xmlName": "nextToken" } - }, - "SpotFleetRequestId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "SpotFleetRequestId", - "smithy.api#documentation": "

The ID of the Spot Fleet request.

", - "smithy.api#xmlName": "spotFleetRequestId" - } } }, "traits": { - "smithy.api#documentation": "

Contains the output of DescribeSpotFleetInstances.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeSpotFleetRequestHistory": { + "com.amazonaws.ec2#DescribeIpamScopes": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeSpotFleetRequestHistoryRequest" + "target": "com.amazonaws.ec2#DescribeIpamScopesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeSpotFleetRequestHistoryResponse" + "target": "com.amazonaws.ec2#DescribeIpamScopesResult" }, "traits": { - "smithy.api#documentation": "

Describes the events for the specified Spot Fleet request during the specified\n time.

\n

Spot Fleet events are delayed by up to 30 seconds before they can be described. This\n ensures that you can query by the last evaluated time and not miss a recorded event.\n Spot Fleet events are available for 48 hours.

\n

For more information, see Monitor fleet events using Amazon\n EventBridge in the Amazon EC2 User Guide.

", - "smithy.api#examples": [ - { - "title": "To describe Spot fleet history", - "documentation": "This example returns the history for the specified Spot fleet starting at the specified time.", - "input": { - "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", - "StartTime": "2015-05-26T00:00:00Z" - }, - "output": { - "HistoryRecords": [ - { - "Timestamp": "2015-05-26T23:17:20.697Z", - "EventInformation": { - "EventSubType": "submitted" - }, - "EventType": "fleetRequestChange" - }, - { - "Timestamp": "2015-05-26T23:17:20.873Z", - "EventInformation": { - "EventSubType": "active" - }, - "EventType": "fleetRequestChange" - }, - { - "Timestamp": "2015-05-26T23:21:21.712Z", - "EventInformation": { - "InstanceId": "i-1234567890abcdef0", - "EventSubType": "launched" - }, - "EventType": "instanceChange" - }, - { - "Timestamp": "2015-05-26T23:21:21.816Z", - "EventInformation": { - "InstanceId": "i-1234567890abcdef1", - "EventSubType": "launched" - }, - "EventType": "instanceChange" - } - ], - "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", - "StartTime": "2015-05-26T00:00:00Z", - "NextToken": "CpHNsscimcV5oH7bSbub03CI2Qms5+ypNpNm+53MNlR0YcXAkp0xFlfKf91yVxSExmbtma3awYxMFzNA663ZskT0AHtJ6TCb2Z8bQC2EnZgyELbymtWPfpZ1ZbauVg+P+TfGlWxWWB/Vr5dk5d4LfdgA/DRAHUrYgxzrEXAMPLE=" - } - } - ] - } - }, - "com.amazonaws.ec2#DescribeSpotFleetRequestHistoryMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 1000 + "smithy.api#documentation": "

Get information about your IPAM scopes.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "IpamScopes", + "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeSpotFleetRequestHistoryRequest": { + "com.amazonaws.ec2#DescribeIpamScopesRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "EventType": { - "target": "com.amazonaws.ec2#EventType", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "EventType", - "smithy.api#documentation": "

The type of events to describe. By default, all events are described.

", - "smithy.api#xmlName": "eventType" + "smithy.api#documentation": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

", + "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#DescribeSpotFleetRequestHistoryMaxResults", + "target": "com.amazonaws.ec2#IpamMaxResults", "traits": { - "aws.protocols#ec2QueryName": "MaxResults", - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

", - "smithy.api#xmlName": "maxResults" + "smithy.api#documentation": "

The maximum number of results to return in the request.

" } }, "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", - "smithy.api#xmlName": "nextToken" - } - }, - "SpotFleetRequestId": { - "target": "com.amazonaws.ec2#SpotFleetRequestId", + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "SpotFleetRequestId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Spot Fleet request.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "spotFleetRequestId" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "StartTime": { - "target": "com.amazonaws.ec2#DateTime", + "IpamScopeIds": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "aws.protocols#ec2QueryName": "StartTime", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The starting date and time for the events, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).

", - "smithy.api#required": {}, - "smithy.api#xmlName": "startTime" + "smithy.api#documentation": "

The IDs of the scopes you want information on.

", + "smithy.api#xmlName": "IpamScopeId" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeSpotFleetRequestHistory.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeSpotFleetRequestHistoryResponse": { + "com.amazonaws.ec2#DescribeIpamScopesResult": { "type": "structure", "members": { - "HistoryRecords": { - "target": "com.amazonaws.ec2#HistoryRecords", - "traits": { - "aws.protocols#ec2QueryName": "HistoryRecordSet", - "smithy.api#documentation": "

Information about the events in the history of the Spot Fleet request.

", - "smithy.api#xmlName": "historyRecordSet" - } - }, - "LastEvaluatedTime": { - "target": "com.amazonaws.ec2#DateTime", - "traits": { - "aws.protocols#ec2QueryName": "LastEvaluatedTime", - "smithy.api#documentation": "

The last date and time for the events, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).\n All records up to this time were retrieved.

\n

If nextToken indicates that there are more items, this value is not\n present.

", - "smithy.api#xmlName": "lastEvaluatedTime" - } - }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } }, - "SpotFleetRequestId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "SpotFleetRequestId", - "smithy.api#documentation": "

The ID of the Spot Fleet request.

", - "smithy.api#xmlName": "spotFleetRequestId" - } - }, - "StartTime": { - "target": "com.amazonaws.ec2#DateTime", + "IpamScopes": { + "target": "com.amazonaws.ec2#IpamScopeSet", "traits": { - "aws.protocols#ec2QueryName": "StartTime", - "smithy.api#documentation": "

The starting date and time for the events, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).

", - "smithy.api#xmlName": "startTime" + "aws.protocols#ec2QueryName": "IpamScopeSet", + "smithy.api#documentation": "

The scopes you want information on.

", + "smithy.api#xmlName": "ipamScopeSet" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of DescribeSpotFleetRequestHistory.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeSpotFleetRequests": { + "com.amazonaws.ec2#DescribeIpams": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeSpotFleetRequestsRequest" + "target": "com.amazonaws.ec2#DescribeIpamsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeSpotFleetRequestsResponse" + "target": "com.amazonaws.ec2#DescribeIpamsResult" }, "traits": { - "smithy.api#documentation": "

Describes your Spot Fleet requests.

\n

Spot Fleet requests are deleted 48 hours after they are canceled and their instances\n are terminated.

", - "smithy.api#examples": [ - { - "title": "To describe a Spot fleet request", - "documentation": "This example describes the specified Spot fleet request.", - "input": { - "SpotFleetRequestIds": [ - "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" - ] - }, - "output": { - "SpotFleetRequestConfigs": [ - { - "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", - "SpotFleetRequestConfig": { - "TargetCapacity": 20, - "LaunchSpecifications": [ - { - "EbsOptimized": false, - "NetworkInterfaces": [ - { - "SubnetId": "subnet-a61dafcf", - "DeviceIndex": 0, - "DeleteOnTermination": false, - "AssociatePublicIpAddress": true, - "SecondaryPrivateIpAddressCount": 0 - } - ], - "InstanceType": "cc2.8xlarge", - "ImageId": "ami-1a2b3c4d" - }, - { - "EbsOptimized": false, - "NetworkInterfaces": [ - { - "SubnetId": "subnet-a61dafcf", - "DeviceIndex": 0, - "DeleteOnTermination": false, - "AssociatePublicIpAddress": true, - "SecondaryPrivateIpAddressCount": 0 - } - ], - "InstanceType": "r3.8xlarge", - "ImageId": "ami-1a2b3c4d" - } - ], - "SpotPrice": "0.05", - "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role" - }, - "SpotFleetRequestState": "active" - } - ] - } - } - ], + "smithy.api#documentation": "

Get information about your IPAM pools.

\n

For more information, see What is IPAM? in the Amazon VPC IPAM User Guide.\n

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "SpotFleetRequestConfigs", + "items": "Ipams", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeSpotFleetRequestsRequest": { + "com.amazonaws.ec2#DescribeIpamsRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

", + "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "target": "com.amazonaws.ec2#IpamMaxResults", "traits": { - "aws.protocols#ec2QueryName": "MaxResults", - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

", - "smithy.api#xmlName": "maxResults" + "smithy.api#documentation": "

The maximum number of results to return in the request.

" } }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "SpotFleetRequestIds": { - "target": "com.amazonaws.ec2#SpotFleetRequestIdList", + "IpamIds": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "aws.protocols#ec2QueryName": "SpotFleetRequestId", - "smithy.api#documentation": "

The IDs of the Spot Fleet requests.

", - "smithy.api#xmlName": "spotFleetRequestId" + "smithy.api#documentation": "

The IDs of the IPAMs you want information on.

", + "smithy.api#xmlName": "IpamId" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeSpotFleetRequests.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeSpotFleetRequestsResponse": { + "com.amazonaws.ec2#DescribeIpamsResult": { "type": "structure", "members": { "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } }, - "SpotFleetRequestConfigs": { - "target": "com.amazonaws.ec2#SpotFleetRequestConfigSet", + "Ipams": { + "target": "com.amazonaws.ec2#IpamSet", "traits": { - "aws.protocols#ec2QueryName": "SpotFleetRequestConfigSet", - "smithy.api#documentation": "

Information about the configuration of your Spot Fleet.

", - "smithy.api#xmlName": "spotFleetRequestConfigSet" + "aws.protocols#ec2QueryName": "IpamSet", + "smithy.api#documentation": "

Information about the IPAMs.

", + "smithy.api#xmlName": "ipamSet" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of DescribeSpotFleetRequests.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeSpotInstanceRequests": { + "com.amazonaws.ec2#DescribeIpv6Pools": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeSpotInstanceRequestsRequest" + "target": "com.amazonaws.ec2#DescribeIpv6PoolsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeSpotInstanceRequestsResult" + "target": "com.amazonaws.ec2#DescribeIpv6PoolsResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified Spot Instance requests.

\n

You can use DescribeSpotInstanceRequests to find a running Spot Instance by\n examining the response. If the status of the Spot Instance is fulfilled, the\n instance ID appears in the response and contains the identifier of the instance.\n Alternatively, you can use DescribeInstances\n with a filter to look for instances where the instance lifecycle is\n spot.

\n

We recommend that you set MaxResults to a value between 5 and 1000 to\n limit the number of items returned. This paginates the output, which makes the list\n more manageable and returns the items faster. If the list of items exceeds your\n MaxResults value, then that number of items is returned along with a\n NextToken value that can be passed to a subsequent\n DescribeSpotInstanceRequests request to retrieve the remaining\n items.

\n

Spot Instance requests are deleted four hours after they are canceled and their instances are\n terminated.

", - "smithy.api#examples": [ - { - "title": "To describe a Spot Instance request", - "documentation": "This example describes the specified Spot Instance request.", - "input": { - "SpotInstanceRequestIds": [ - "sir-08b93456" - ] - }, - "output": { - "SpotInstanceRequests": [ - { - "Status": { - "UpdateTime": "2014-04-30T18:16:21.000Z", - "Code": "fulfilled", - "Message": "Your Spot request is fulfilled." - }, - "ProductDescription": "Linux/UNIX", - "InstanceId": "i-1234567890abcdef0", - "SpotInstanceRequestId": "sir-08b93456", - "State": "active", - "LaunchedAvailabilityZone": "us-west-1b", - "LaunchSpecification": { - "ImageId": "ami-7aba833f", - "KeyName": "my-key-pair", - "BlockDeviceMappings": [ - { - "DeviceName": "/dev/sda1", - "Ebs": { - "DeleteOnTermination": true, - "VolumeType": "standard", - "VolumeSize": 8 - } - } - ], - "EbsOptimized": false, - "SecurityGroups": [ - { - "GroupName": "my-security-group", - "GroupId": "sg-e38f24a7" - } - ], - "InstanceType": "m1.small" - }, - "Type": "one-time", - "CreateTime": "2014-04-30T18:14:55.000Z", - "SpotPrice": "0.010000" - } - ] - } - } - ], + "smithy.api#documentation": "

Describes your IPv6 address pools.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "SpotInstanceRequests", + "items": "Ipv6Pools", "pageSize": "MaxResults" - }, - "smithy.api#suppress": [ - "WaitableTraitInvalidErrorType" - ], - "smithy.waiters#waitable": { - "SpotInstanceRequestFulfilled": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "SpotInstanceRequests[].Status.Code", - "expected": "fulfilled", - "comparator": "allStringEquals" - } - } - }, - { - "state": "success", - "matcher": { - "output": { - "path": "SpotInstanceRequests[].Status.Code", - "expected": "request-canceled-and-instance-running", - "comparator": "allStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "SpotInstanceRequests[].Status.Code", - "expected": "schedule-expired", - "comparator": "anyStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "SpotInstanceRequests[].Status.Code", - "expected": "canceled-before-fulfillment", - "comparator": "anyStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "SpotInstanceRequests[].Status.Code", - "expected": "bad-parameters", - "comparator": "anyStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "SpotInstanceRequests[].Status.Code", - "expected": "system-error", - "comparator": "anyStringEquals" - } - } - }, - { - "state": "retry", - "matcher": { - "errorType": "InvalidSpotInstanceRequestID.NotFound" - } - } - ], - "minDelay": 15 - } } } }, - "com.amazonaws.ec2#DescribeSpotInstanceRequestsRequest": { + "com.amazonaws.ec2#DescribeIpv6PoolsRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "PoolIds": { + "target": "com.amazonaws.ec2#Ipv6PoolIdList", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The IDs of the IPv6 address pools.

", + "smithy.api#xmlName": "PoolId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "SpotInstanceRequestIds": { - "target": "com.amazonaws.ec2#SpotInstanceRequestIdList", + "MaxResults": { + "target": "com.amazonaws.ec2#Ipv6PoolMaxResults", "traits": { - "smithy.api#documentation": "

The IDs of the Spot Instance requests.

", - "smithy.api#xmlName": "SpotInstanceRequestId" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeSpotInstanceRequests.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeSpotInstanceRequestsResult": { + "com.amazonaws.ec2#DescribeIpv6PoolsResult": { "type": "structure", "members": { - "SpotInstanceRequests": { - "target": "com.amazonaws.ec2#SpotInstanceRequestList", + "Ipv6Pools": { + "target": "com.amazonaws.ec2#Ipv6PoolSet", "traits": { - "aws.protocols#ec2QueryName": "SpotInstanceRequestSet", - "smithy.api#documentation": "

The Spot Instance requests.

", - "smithy.api#xmlName": "spotInstanceRequestSet" + "aws.protocols#ec2QueryName": "Ipv6PoolSet", + "smithy.api#documentation": "

Information about the IPv6 address pools.

", + "smithy.api#xmlName": "ipv6PoolSet" } }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of DescribeSpotInstanceRequests.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeSpotPriceHistory": { + "com.amazonaws.ec2#DescribeKeyPairs": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeSpotPriceHistoryRequest" + "target": "com.amazonaws.ec2#DescribeKeyPairsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeSpotPriceHistoryResult" + "target": "com.amazonaws.ec2#DescribeKeyPairsResult" }, "traits": { - "smithy.api#documentation": "

Describes the Spot price history. For more information, see Spot Instance pricing history in the\n Amazon EC2 User Guide for Linux Instances.

\n

When you specify a start and end time, the operation returns the prices of the\n instance types within that time range. It also returns the last price change before the\n start time, which is the effective price as of the start time.

", + "smithy.api#documentation": "

Describes the specified key pairs or all of your key pairs.

\n

For more information about key pairs, see Amazon EC2 key pairs \n\t\t\t\tin the Amazon EC2 User Guide.

", "smithy.api#examples": [ { - "title": "To describe Spot price history for Linux/UNIX (Amazon VPC)", - "documentation": "This example returns the Spot Price history for m1.xlarge, Linux/UNIX (Amazon VPC) instances for a particular day in January.", + "title": "To display a key pair", + "documentation": "This example displays the fingerprint for the specified key.", "input": { - "StartTime": "2014-01-06T07:08:09.05Z", - "EndTime": "2014-01-06T08:09:10.05Z", - "InstanceTypes": [ - "m1.xlarge" - ], - "ProductDescriptions": [ - "Linux/UNIX (Amazon VPC)" + "KeyNames": [ + "my-key-pair" ] }, "output": { - "SpotPriceHistory": [ - { - "Timestamp": "2014-01-06T04:32:53.000Z", - "ProductDescription": "Linux/UNIX (Amazon VPC)", - "InstanceType": "m1.xlarge", - "SpotPrice": "0.080000", - "AvailabilityZone": "us-west-1a" - }, + "KeyPairs": [ { - "Timestamp": "2014-01-05T11:28:26.000Z", - "ProductDescription": "Linux/UNIX (Amazon VPC)", - "InstanceType": "m1.xlarge", - "SpotPrice": "0.080000", - "AvailabilityZone": "us-west-1c" + "KeyName": "my-key-pair", + "KeyFingerprint": "1f:51:ae:28:bf:89:e9:d8:1f:25:5d:37:2d:7d:b8:ca:9f:f5:f1:6f" } ] } } ], - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "SpotPriceHistory", - "pageSize": "MaxResults" + "smithy.api#suppress": [ + "WaitableTraitInvalidErrorType" + ], + "smithy.waiters#waitable": { + "KeyPairExists": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "length(KeyPairs[].KeyName) > `0`", + "expected": "true", + "comparator": "booleanEquals" + } + } + }, + { + "state": "retry", + "matcher": { + "errorType": "InvalidKeyPair.NotFound" + } + } + ], + "minDelay": 5 + } } } }, - "com.amazonaws.ec2#DescribeSpotPriceHistoryRequest": { + "com.amazonaws.ec2#DescribeKeyPairsRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "KeyNames": { + "target": "com.amazonaws.ec2#KeyNameStringList", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The key pair names.

\n

Default: Describes all of your key pairs.

", + "smithy.api#xmlName": "KeyName" } }, - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + "KeyPairIds": { + "target": "com.amazonaws.ec2#KeyPairIdStringList", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

Filters the results by the specified Availability Zone.

", - "smithy.api#xmlName": "availabilityZone" + "smithy.api#documentation": "

The IDs of the key pairs.

", + "smithy.api#xmlName": "KeyPairId" + } + }, + "IncludePublicKey": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

If true, the public key material is included in the response.

\n

Default: false\n

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } }, - "EndTime": { - "target": "com.amazonaws.ec2#DateTime", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "EndTime", - "smithy.api#documentation": "

The date and time, up to the current date, from which to stop retrieving the price\n history data, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).

", - "smithy.api#xmlName": "endTime" - } - }, - "InstanceTypes": { - "target": "com.amazonaws.ec2#InstanceTypeList", - "traits": { - "smithy.api#documentation": "

Filters the results by the specified instance types.

", - "smithy.api#xmlName": "InstanceType" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "MaxResults", - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

", - "smithy.api#xmlName": "maxResults" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", - "smithy.api#xmlName": "nextToken" - } - }, - "ProductDescriptions": { - "target": "com.amazonaws.ec2#ProductDescriptionList", - "traits": { - "smithy.api#documentation": "

Filters the results by the specified basic product descriptions.

", - "smithy.api#xmlName": "ProductDescription" - } - }, - "StartTime": { - "target": "com.amazonaws.ec2#DateTime", - "traits": { - "aws.protocols#ec2QueryName": "StartTime", - "smithy.api#documentation": "

The date and time, up to the past 90 days, from which to start retrieving the price\n history data, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).

", - "smithy.api#xmlName": "startTime" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeSpotPriceHistory.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeSpotPriceHistoryResult": { + "com.amazonaws.ec2#DescribeKeyPairsResult": { "type": "structure", "members": { - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is\n an empty string (\"\") or null when there are no more items to return.

", - "smithy.api#xmlName": "nextToken" - } - }, - "SpotPriceHistory": { - "target": "com.amazonaws.ec2#SpotPriceHistoryList", + "KeyPairs": { + "target": "com.amazonaws.ec2#KeyPairList", "traits": { - "aws.protocols#ec2QueryName": "SpotPriceHistorySet", - "smithy.api#documentation": "

The historical Spot prices.

", - "smithy.api#xmlName": "spotPriceHistorySet" + "aws.protocols#ec2QueryName": "KeySet", + "smithy.api#documentation": "

Information about the key pairs.

", + "smithy.api#xmlName": "keySet" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of DescribeSpotPriceHistory.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeStaleSecurityGroups": { + "com.amazonaws.ec2#DescribeLaunchTemplateVersions": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeStaleSecurityGroupsRequest" + "target": "com.amazonaws.ec2#DescribeLaunchTemplateVersionsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeStaleSecurityGroupsResult" + "target": "com.amazonaws.ec2#DescribeLaunchTemplateVersionsResult" }, "traits": { - "smithy.api#documentation": "

Describes the stale security group rules for security groups in a specified VPC. \n Rules are stale when they reference a deleted security group in the same VPC or peered VPC. Rules can also be stale if they reference a security group in a peer VPC for which the VPC peering connection has \n been deleted.

", + "smithy.api#documentation": "

Describes one or more versions of a specified launch template. You can describe all\n versions, individual versions, or a range of versions. You can also describe all the\n latest versions or all the default versions of all the launch templates in your\n account.

", + "smithy.api#examples": [ + { + "title": "To describe the versions for a launch template", + "documentation": "This example describes the versions for the specified launch template.", + "input": { + "LaunchTemplateId": "068f72b72934aff71" + }, + "output": { + "LaunchTemplateVersions": [ + { + "LaunchTemplateId": "lt-068f72b72934aff71", + "LaunchTemplateName": "Webservers", + "VersionNumber": 2, + "CreatedBy": "arn:aws:iam::123456789102:root", + "LaunchTemplateData": { + "KeyName": "kp-us-east", + "ImageId": "ami-6057e21a", + "InstanceType": "t2.medium", + "NetworkInterfaces": [ + { + "SubnetId": "subnet-1a2b3c4d", + "DeviceIndex": 0, + "Groups": [ + "sg-7c227019" + ] + } + ] + }, + "DefaultVersion": false, + "CreateTime": "2017-11-20T13:12:32.000Z" + }, + { + "LaunchTemplateId": "lt-068f72b72934aff71", + "LaunchTemplateName": "Webservers", + "VersionNumber": 1, + "CreatedBy": "arn:aws:iam::123456789102:root", + "LaunchTemplateData": { + "UserData": "", + "KeyName": "kp-us-east", + "ImageId": "ami-aabbcc11", + "InstanceType": "t2.medium", + "NetworkInterfaces": [ + { + "SubnetId": "subnet-7b16de0c", + "DeviceIndex": 0, + "DeleteOnTermination": false, + "Groups": [ + "sg-7c227019" + ], + "AssociatePublicIpAddress": true + } + ] + }, + "DefaultVersion": true, + "CreateTime": "2017-11-20T12:52:33.000Z" + } + ] + } + } + ], "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "StaleSecurityGroupSet", + "items": "LaunchTemplateVersions", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeStaleSecurityGroupsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 255 - } - } - }, - "com.amazonaws.ec2#DescribeStaleSecurityGroupsNextToken": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1024 - } - } - }, - "com.amazonaws.ec2#DescribeStaleSecurityGroupsRequest": { + "com.amazonaws.ec2#DescribeLaunchTemplateVersionsRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeStaleSecurityGroupsMaxResults", + "LaunchTemplateId": { + "target": "com.amazonaws.ec2#LaunchTemplateId", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items,\n make another request with the token returned in the output. For more information, \n see Pagination.

" + "smithy.api#documentation": "

The ID of the launch template.

\n

To describe one or more versions of a specified launch template, you must specify\n either the launch template ID or the launch template name, but not both.

\n

To describe all the latest or default launch template versions in your account, you\n must omit this parameter.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#DescribeStaleSecurityGroupsNextToken", + "LaunchTemplateName": { + "target": "com.amazonaws.ec2#LaunchTemplateName", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

The name of the launch template.

\n

To describe one or more versions of a specified launch template, you must specify\n either the launch template name or the launch template ID, but not both.

\n

To describe all the latest or default launch template versions in your account, you\n must omit this parameter.

" } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "Versions": { + "target": "com.amazonaws.ec2#VersionStringList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#required": {} + "smithy.api#documentation": "

One or more versions of the launch template. Valid values depend on whether you are\n describing a specified launch template (by ID or name) or all launch templates in your\n account.

\n

To describe one or more versions of a specified launch template, valid values are\n $Latest, $Default, and numbers.

\n

To describe all launch templates in your account that are defined as the latest\n version, the valid value is $Latest. To describe all launch templates in\n your account that are defined as the default version, the valid value is\n $Default. You can specify $Latest and\n $Default in the same request. You cannot specify numbers.

", + "smithy.api#xmlName": "LaunchTemplateVersion" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DescribeStaleSecurityGroupsResult": { - "type": "structure", - "members": { - "NextToken": { + }, + "MinVersion": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n If there are no additional items to return, the string is empty.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#documentation": "

The version number after which to describe launch template versions.

" } }, - "StaleSecurityGroupSet": { - "target": "com.amazonaws.ec2#StaleSecurityGroupSet", + "MaxVersion": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "StaleSecurityGroupSet", - "smithy.api#documentation": "

Information about the stale security groups.

", - "smithy.api#xmlName": "staleSecurityGroupSet" + "smithy.api#documentation": "

The version number up to which to describe launch template versions.

" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DescribeStoreImageTasks": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DescribeStoreImageTasksRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DescribeStoreImageTasksResult" - }, - "traits": { - "smithy.api#documentation": "

Describes the progress of the AMI store tasks. You can describe the store tasks for\n specified AMIs. If you don't specify the AMIs, you get a paginated list of store tasks from\n the last 31 days.

\n

For each AMI task, the response indicates if the task is InProgress,\n Completed, or Failed. For tasks InProgress, the\n response shows the estimated progress as a percentage.

\n

Tasks are listed in reverse chronological order. Currently, only tasks from the past 31\n days can be viewed.

\n

To use this API, you must have the required permissions. For more information, see Permissions for storing and restoring AMIs using Amazon S3 in the\n Amazon EC2 User Guide.

\n

For more information, see Store and restore an AMI using\n \tAmazon S3 in the Amazon EC2 User Guide.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "StoreImageTaskResults", - "pageSize": "MaxResults" }, - "smithy.waiters#waitable": { - "StoreImageTaskComplete": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "StoreImageTaskResults[].StoreTaskState", - "expected": "Completed", - "comparator": "allStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "StoreImageTaskResults[].StoreTaskState", - "expected": "Failed", - "comparator": "anyStringEquals" - } - } - }, - { - "state": "retry", - "matcher": { - "output": { - "path": "StoreImageTaskResults[].StoreTaskState", - "expected": "InProgress", - "comparator": "anyStringEquals" - } - } - } - ], - "minDelay": 5 - } - } - } - }, - "com.amazonaws.ec2#DescribeStoreImageTasksRequest": { - "type": "structure", - "members": { - "ImageIds": { - "target": "com.amazonaws.ec2#ImageIdList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The AMI IDs for which to show progress. Up to 20 AMI IDs can be included in a request.

", - "smithy.api#xmlName": "ImageId" + "smithy.api#documentation": "

The token to request the next page of results.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining\n results, make another call with the returned NextToken value. This value\n can be between 1 and 200.

" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters.

\n \n \n

When you specify the ImageIds parameter, any filters that you specify are\n ignored. To use the filters, you must remove the ImageIds parameter.

\n
", + "smithy.api#documentation": "

One or more filters.

\n ", "smithy.api#xmlName": "Filter" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeStoreImageTasksRequestMaxResults", + "ResolveAlias": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

\n

You cannot specify this parameter and the ImageIds parameter in the same\n call.

" + "smithy.api#documentation": "

If true, and if a Systems Manager parameter is specified for\n ImageId, the AMI ID is displayed in the response for\n imageId.

\n

If false, and if a Systems Manager parameter is specified for\n ImageId, the parameter is displayed in the response for\n imageId.

\n

For more information, see Use a Systems Manager parameter instead of an AMI ID in the\n Amazon EC2 User Guide.

\n

Default: false\n

" } } }, @@ -38469,31 +38218,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeStoreImageTasksRequestMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 200 - } - } - }, - "com.amazonaws.ec2#DescribeStoreImageTasksResult": { + "com.amazonaws.ec2#DescribeLaunchTemplateVersionsResult": { "type": "structure", "members": { - "StoreImageTaskResults": { - "target": "com.amazonaws.ec2#StoreImageTaskResultSet", + "LaunchTemplateVersions": { + "target": "com.amazonaws.ec2#LaunchTemplateVersionSet", "traits": { - "aws.protocols#ec2QueryName": "StoreImageTaskResultSet", - "smithy.api#documentation": "

The information about the AMI store tasks.

", - "smithy.api#xmlName": "storeImageTaskResultSet" + "aws.protocols#ec2QueryName": "LaunchTemplateVersionSet", + "smithy.api#documentation": "

Information about the launch template versions.

", + "smithy.api#xmlName": "launchTemplateVersionSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null\n when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -38502,41 +38242,34 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeSubnets": { + "com.amazonaws.ec2#DescribeLaunchTemplates": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeSubnetsRequest" + "target": "com.amazonaws.ec2#DescribeLaunchTemplatesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeSubnetsResult" + "target": "com.amazonaws.ec2#DescribeLaunchTemplatesResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your subnets.

\n

For more information, see Subnets in the\n\t\t\t\tAmazon VPC User Guide.

", + "smithy.api#documentation": "

Describes one or more launch templates.

", "smithy.api#examples": [ { - "title": "To describe the subnets for a VPC", - "documentation": "This example describes the subnets for the specified VPC.", + "title": "To describe a launch template", + "documentation": "This example describes the specified launch template.", "input": { - "Filters": [ - { - "Name": "vpc-id", - "Values": [ - "vpc-a01106c2" - ] - } + "LaunchTemplateIds": [ + "lt-01238c059e3466abc" ] }, "output": { - "Subnets": [ + "LaunchTemplates": [ { - "VpcId": "vpc-a01106c2", - "CidrBlock": "10.0.1.0/24", - "MapPublicIpOnLaunch": false, - "DefaultForAz": false, - "State": "available", - "AvailabilityZone": "us-east-1c", - "SubnetId": "subnet-9d4a7b6c", - "AvailableIpAddressCount": 251 + "LatestVersionNumber": 1, + "LaunchTemplateName": "my-template", + "LaunchTemplateId": "lt-01238c059e3466abc", + "CreatedBy": "arn:aws:iam::123456789012:root", + "CreateTime": "2018-01-16T04:32:57.000Z", + "DefaultVersionNumber": 1 } ] } @@ -38545,72 +38278,60 @@ "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "Subnets", + "items": "LaunchTemplates", "pageSize": "MaxResults" - }, - "smithy.waiters#waitable": { - "SubnetAvailable": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "Subnets[].State", - "expected": "available", - "comparator": "allStringEquals" - } - } - } - ], - "minDelay": 15 - } } } }, - "com.amazonaws.ec2#DescribeSubnetsMaxResults": { + "com.amazonaws.ec2#DescribeLaunchTemplatesMaxResults": { "type": "integer", "traits": { "smithy.api#range": { - "min": 5, - "max": 1000 + "min": 1, + "max": 200 } } }, - "com.amazonaws.ec2#DescribeSubnetsRequest": { + "com.amazonaws.ec2#DescribeLaunchTemplatesRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" } }, - "SubnetIds": { - "target": "com.amazonaws.ec2#SubnetIdStringList", + "LaunchTemplateIds": { + "target": "com.amazonaws.ec2#LaunchTemplateIdStringList", "traits": { - "smithy.api#documentation": "

The IDs of the subnets.

\n

Default: Describes all your subnets.

", - "smithy.api#xmlName": "SubnetId" + "smithy.api#documentation": "

One or more launch template IDs.

", + "smithy.api#xmlName": "LaunchTemplateId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "LaunchTemplateNames": { + "target": "com.amazonaws.ec2#LaunchTemplateNameStringList", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

One or more launch template names.

", + "smithy.api#xmlName": "LaunchTemplateName" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

The token to request the next page of results.

" } }, "MaxResults": { - "target": "com.amazonaws.ec2#DescribeSubnetsMaxResults", + "target": "com.amazonaws.ec2#DescribeLaunchTemplatesMaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" + "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining\n results, make another call with the returned NextToken value. This value\n can be between 1 and 200.

" } } }, @@ -38618,22 +38339,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeSubnetsResult": { + "com.amazonaws.ec2#DescribeLaunchTemplatesResult": { "type": "structure", "members": { - "Subnets": { - "target": "com.amazonaws.ec2#SubnetList", + "LaunchTemplates": { + "target": "com.amazonaws.ec2#LaunchTemplateSet", "traits": { - "aws.protocols#ec2QueryName": "SubnetSet", - "smithy.api#documentation": "

Information about one or more subnets.

", - "smithy.api#xmlName": "subnetSet" + "aws.protocols#ec2QueryName": "LaunchTemplates", + "smithy.api#documentation": "

Information about the launch templates.

", + "smithy.api#xmlName": "launchTemplates" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null\n when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -38642,88 +38363,57 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeTags": { + "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociations": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeTagsRequest" + "target": "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeTagsResult" + "target": "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified tags for your EC2 resources.

\n

For more information about tags, see Tag your Amazon EC2 resources in the\n Amazon Elastic Compute Cloud User Guide.

\n \n

We strongly recommend using only paginated requests. Unpaginated requests are\n susceptible to throttling and timeouts.

\n
\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", - "smithy.api#examples": [ - { - "title": "To describe the tags for a single resource", - "documentation": "This example describes the tags for the specified instance.", - "input": { - "Filters": [ - { - "Name": "resource-id", - "Values": [ - "i-1234567890abcdef8" - ] - } - ] - }, - "output": { - "Tags": [ - { - "ResourceType": "instance", - "ResourceId": "i-1234567890abcdef8", - "Value": "test", - "Key": "Stack" - }, - { - "ResourceType": "instance", - "ResourceId": "i-1234567890abcdef8", - "Value": "Beta Server", - "Key": "Name" - } - ] - } - } - ], + "smithy.api#documentation": "

Describes the associations between virtual interface groups and local gateway route tables.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "Tags", + "items": "LocalGatewayRouteTableVirtualInterfaceGroupAssociations", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeTagsRequest": { + "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "LocalGatewayRouteTableVirtualInterfaceGroupAssociationIds": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociationIdSet", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The IDs of the associations.

", + "smithy.api#xmlName": "LocalGatewayRouteTableVirtualInterfaceGroupAssociationId" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#documentation": "

One or more filters.

\n ", "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "target": "com.amazonaws.ec2#LocalGatewayMaxResults", "traits": { - "aws.protocols#ec2QueryName": "MaxResults", - "smithy.api#documentation": "

The maximum number of items to return for this request. This value can be between 5 and 1000. \n To get the next page of items, make another request with the token returned in the output.\n For more information, see Pagination.

", - "smithy.api#xmlName": "maxResults" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -38731,104 +38421,104 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeTagsResult": { + "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResult": { "type": "structure", "members": { + "LocalGatewayRouteTableVirtualInterfaceGroupAssociations": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociationSet", + "traits": { + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableVirtualInterfaceGroupAssociationSet", + "smithy.api#documentation": "

Information about the associations.

", + "smithy.api#xmlName": "localGatewayRouteTableVirtualInterfaceGroupAssociationSet" + } + }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } - }, - "Tags": { - "target": "com.amazonaws.ec2#TagDescriptionList", - "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags.

", - "smithy.api#xmlName": "tagSet" - } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeTrafficMirrorFilters": { + "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVpcAssociations": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeTrafficMirrorFiltersRequest" + "target": "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVpcAssociationsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeTrafficMirrorFiltersResult" + "target": "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVpcAssociationsResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more Traffic Mirror filters.

", + "smithy.api#documentation": "

Describes the specified associations between VPCs and local gateway route tables.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "TrafficMirrorFilters", + "items": "LocalGatewayRouteTableVpcAssociations", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeTrafficMirrorFiltersRequest": { + "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVpcAssociationsRequest": { "type": "structure", "members": { - "TrafficMirrorFilterIds": { - "target": "com.amazonaws.ec2#TrafficMirrorFilterIdList", - "traits": { - "smithy.api#documentation": "

The ID of the Traffic Mirror filter.

", - "smithy.api#xmlName": "TrafficMirrorFilterId" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "LocalGatewayRouteTableVpcAssociationIds": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociationIdSet", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The IDs of the associations.

", + "smithy.api#xmlName": "LocalGatewayRouteTableVpcAssociationId" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#documentation": "

One or more filters.

\n ", "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#TrafficMirroringMaxResults", + "target": "com.amazonaws.ec2#LocalGatewayMaxResults", "traits": { "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#documentation": "

The token for the next page of results.

" } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeTrafficMirrorFiltersResult": { + "com.amazonaws.ec2#DescribeLocalGatewayRouteTableVpcAssociationsResult": { "type": "structure", "members": { - "TrafficMirrorFilters": { - "target": "com.amazonaws.ec2#TrafficMirrorFilterSet", + "LocalGatewayRouteTableVpcAssociations": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociationSet", "traits": { - "aws.protocols#ec2QueryName": "TrafficMirrorFilterSet", - "smithy.api#documentation": "

Information about one or more Traffic Mirror filters.

", - "smithy.api#xmlName": "trafficMirrorFilterSet" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableVpcAssociationSet", + "smithy.api#documentation": "

Information about the associations.

", + "smithy.api#xmlName": "localGatewayRouteTableVpcAssociationSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. The value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -38837,80 +38527,80 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeTrafficMirrorSessions": { + "com.amazonaws.ec2#DescribeLocalGatewayRouteTables": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeTrafficMirrorSessionsRequest" + "target": "com.amazonaws.ec2#DescribeLocalGatewayRouteTablesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeTrafficMirrorSessionsResult" + "target": "com.amazonaws.ec2#DescribeLocalGatewayRouteTablesResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more Traffic Mirror sessions. By default, all Traffic Mirror sessions are described. Alternatively, you can filter the results.

", + "smithy.api#documentation": "

Describes one or more local gateway route tables. By default, all local gateway route tables are described.\n Alternatively, you can filter the results.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "TrafficMirrorSessions", + "items": "LocalGatewayRouteTables", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeTrafficMirrorSessionsRequest": { + "com.amazonaws.ec2#DescribeLocalGatewayRouteTablesRequest": { "type": "structure", "members": { - "TrafficMirrorSessionIds": { - "target": "com.amazonaws.ec2#TrafficMirrorSessionIdList", - "traits": { - "smithy.api#documentation": "

The ID of the Traffic Mirror session.

", - "smithy.api#xmlName": "TrafficMirrorSessionId" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "LocalGatewayRouteTableIds": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTableIdSet", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The IDs of the local gateway route tables.

", + "smithy.api#xmlName": "LocalGatewayRouteTableId" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#documentation": "

One or more filters.

\n ", "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#TrafficMirroringMaxResults", + "target": "com.amazonaws.ec2#LocalGatewayMaxResults", "traits": { "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#documentation": "

The token for the next page of results.

" } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeTrafficMirrorSessionsResult": { + "com.amazonaws.ec2#DescribeLocalGatewayRouteTablesResult": { "type": "structure", "members": { - "TrafficMirrorSessions": { - "target": "com.amazonaws.ec2#TrafficMirrorSessionSet", + "LocalGatewayRouteTables": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTableSet", "traits": { - "aws.protocols#ec2QueryName": "TrafficMirrorSessionSet", - "smithy.api#documentation": "

Describes one or more Traffic Mirror sessions. By default, all Traffic Mirror sessions are described. Alternatively, you can filter the results.

", - "smithy.api#xmlName": "trafficMirrorSessionSet" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableSet", + "smithy.api#documentation": "

Information about the local gateway route tables.

", + "smithy.api#xmlName": "localGatewayRouteTableSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. The value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -38919,80 +38609,80 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeTrafficMirrorTargets": { + "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfaceGroups": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeTrafficMirrorTargetsRequest" + "target": "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfaceGroupsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeTrafficMirrorTargetsResult" + "target": "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfaceGroupsResult" }, "traits": { - "smithy.api#documentation": "

Information about one or more Traffic Mirror targets.

", + "smithy.api#documentation": "

Describes the specified local gateway virtual interface groups.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "TrafficMirrorTargets", + "items": "LocalGatewayVirtualInterfaceGroups", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeTrafficMirrorTargetsRequest": { + "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfaceGroupsRequest": { "type": "structure", "members": { - "TrafficMirrorTargetIds": { - "target": "com.amazonaws.ec2#TrafficMirrorTargetIdList", - "traits": { - "smithy.api#documentation": "

The ID of the Traffic Mirror targets.

", - "smithy.api#xmlName": "TrafficMirrorTargetId" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "LocalGatewayVirtualInterfaceGroupIds": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupIdSet", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The IDs of the virtual interface groups.

", + "smithy.api#xmlName": "LocalGatewayVirtualInterfaceGroupId" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#documentation": "

One or more filters.

\n ", "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#TrafficMirroringMaxResults", + "target": "com.amazonaws.ec2#LocalGatewayMaxResults", "traits": { "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#documentation": "

The token for the next page of results.

" } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeTrafficMirrorTargetsResult": { + "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfaceGroupsResult": { "type": "structure", "members": { - "TrafficMirrorTargets": { - "target": "com.amazonaws.ec2#TrafficMirrorTargetSet", + "LocalGatewayVirtualInterfaceGroups": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupSet", "traits": { - "aws.protocols#ec2QueryName": "TrafficMirrorTargetSet", - "smithy.api#documentation": "

Information about one or more Traffic Mirror targets.

", - "smithy.api#xmlName": "trafficMirrorTargetSet" + "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceGroupSet", + "smithy.api#documentation": "

The virtual interface groups.

", + "smithy.api#xmlName": "localGatewayVirtualInterfaceGroupSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. The value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -39001,42 +38691,43 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayAttachments": { + "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfaces": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayAttachmentsRequest" + "target": "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfacesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayAttachmentsResult" + "target": "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfacesResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more attachments between resources and transit gateways. By default, all attachments are described.\n Alternatively, you can filter the results by attachment ID, attachment state, resource ID, or resource owner.

", + "smithy.api#documentation": "

Describes the specified local gateway virtual interfaces.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "TransitGatewayAttachments", + "items": "LocalGatewayVirtualInterfaces", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeTransitGatewayAttachmentsRequest": { + "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfacesRequest": { "type": "structure", "members": { - "TransitGatewayAttachmentIds": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentIdStringList", + "LocalGatewayVirtualInterfaceIds": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceIdSet", "traits": { - "smithy.api#documentation": "

The IDs of the attachments.

" + "smithy.api#documentation": "

The IDs of the virtual interfaces.

", + "smithy.api#xmlName": "LocalGatewayVirtualInterfaceId" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#documentation": "

One or more filters.

\n ", "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "target": "com.amazonaws.ec2#LocalGatewayMaxResults", "traits": { "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } @@ -39058,15 +38749,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayAttachmentsResult": { + "com.amazonaws.ec2#DescribeLocalGatewayVirtualInterfacesResult": { "type": "structure", "members": { - "TransitGatewayAttachments": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentList", + "LocalGatewayVirtualInterfaces": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceSet", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayAttachments", - "smithy.api#documentation": "

Information about the attachments.

", - "smithy.api#xmlName": "transitGatewayAttachments" + "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceSet", + "smithy.api#documentation": "

Information about the virtual interfaces.

", + "smithy.api#xmlName": "localGatewayVirtualInterfaceSet" } }, "NextToken": { @@ -39082,42 +38773,43 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayConnectPeers": { + "com.amazonaws.ec2#DescribeLocalGateways": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayConnectPeersRequest" + "target": "com.amazonaws.ec2#DescribeLocalGatewaysRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayConnectPeersResult" + "target": "com.amazonaws.ec2#DescribeLocalGatewaysResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more Connect peers.

", + "smithy.api#documentation": "

Describes one or more local gateways. By default, all local gateways are described. \n Alternatively, you can filter the results.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "TransitGatewayConnectPeers", + "items": "LocalGateways", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeTransitGatewayConnectPeersRequest": { + "com.amazonaws.ec2#DescribeLocalGatewaysRequest": { "type": "structure", "members": { - "TransitGatewayConnectPeerIds": { - "target": "com.amazonaws.ec2#TransitGatewayConnectPeerIdStringList", + "LocalGatewayIds": { + "target": "com.amazonaws.ec2#LocalGatewayIdSet", "traits": { - "smithy.api#documentation": "

The IDs of the Connect peers.

" + "smithy.api#documentation": "

The IDs of the local gateways.

", + "smithy.api#xmlName": "LocalGatewayId" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#documentation": "

One or more filters.

\n ", "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "target": "com.amazonaws.ec2#LocalGatewayMaxResults", "traits": { "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } @@ -39139,15 +38831,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayConnectPeersResult": { + "com.amazonaws.ec2#DescribeLocalGatewaysResult": { "type": "structure", "members": { - "TransitGatewayConnectPeers": { - "target": "com.amazonaws.ec2#TransitGatewayConnectPeerList", + "LocalGateways": { + "target": "com.amazonaws.ec2#LocalGatewaySet", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayConnectPeerSet", - "smithy.api#documentation": "

Information about the Connect peers.

", - "smithy.api#xmlName": "transitGatewayConnectPeerSet" + "aws.protocols#ec2QueryName": "LocalGatewaySet", + "smithy.api#documentation": "

Information about the local gateways.

", + "smithy.api#xmlName": "localGatewaySet" } }, "NextToken": { @@ -39163,50 +38855,54 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayConnects": { + "com.amazonaws.ec2#DescribeLockedSnapshots": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayConnectsRequest" + "target": "com.amazonaws.ec2#DescribeLockedSnapshotsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayConnectsResult" + "target": "com.amazonaws.ec2#DescribeLockedSnapshotsResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more Connect attachments.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "TransitGatewayConnects", - "pageSize": "MaxResults" + "smithy.api#documentation": "

Describes the lock status for a snapshot.

" + } + }, + "com.amazonaws.ec2#DescribeLockedSnapshotsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 } } }, - "com.amazonaws.ec2#DescribeTransitGatewayConnectsRequest": { + "com.amazonaws.ec2#DescribeLockedSnapshotsRequest": { "type": "structure", "members": { - "TransitGatewayAttachmentIds": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentIdStringList", - "traits": { - "smithy.api#documentation": "

The IDs of the attachments.

" - } - }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#documentation": "

The filters.

\n ", "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "target": "com.amazonaws.ec2#DescribeLockedSnapshotsMaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output. \n\tFor more information, see Pagination.

" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" + } + }, + "SnapshotIds": { + "target": "com.amazonaws.ec2#SnapshotIdStringList", + "traits": { + "smithy.api#documentation": "

The IDs of the snapshots for which to view the lock status.

", + "smithy.api#xmlName": "SnapshotId" } }, "DryRun": { @@ -39220,22 +38916,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayConnectsResult": { + "com.amazonaws.ec2#DescribeLockedSnapshotsResult": { "type": "structure", "members": { - "TransitGatewayConnects": { - "target": "com.amazonaws.ec2#TransitGatewayConnectList", + "Snapshots": { + "target": "com.amazonaws.ec2#LockedSnapshotsInfoList", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayConnectSet", - "smithy.api#documentation": "

Information about the Connect attachments.

", - "smithy.api#xmlName": "transitGatewayConnectSet" + "aws.protocols#ec2QueryName": "SnapshotSet", + "smithy.api#documentation": "

Information about the snapshots.

", + "smithy.api#xmlName": "snapshotSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", "smithy.api#xmlName": "nextToken" } } @@ -39244,56 +38940,51 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayMulticastDomains": { + "com.amazonaws.ec2#DescribeMacHosts": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayMulticastDomainsRequest" + "target": "com.amazonaws.ec2#DescribeMacHostsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayMulticastDomainsResult" + "target": "com.amazonaws.ec2#DescribeMacHostsResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more transit gateway multicast domains.

", + "smithy.api#documentation": "

Describes the specified EC2 Mac Dedicated Host or all of your EC2 Mac Dedicated Hosts.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "TransitGatewayMulticastDomains", + "items": "MacHosts", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeTransitGatewayMulticastDomainsRequest": { + "com.amazonaws.ec2#DescribeMacHostsRequest": { "type": "structure", "members": { - "TransitGatewayMulticastDomainIds": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainIdStringList", - "traits": { - "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

" - } - }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#documentation": "

The filters.

\n ", "smithy.api#xmlName": "Filter" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "HostIds": { + "target": "com.amazonaws.ec2#RequestHostIdList", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

\n The IDs of the EC2 Mac Dedicated Hosts.\n

", + "smithy.api#xmlName": "HostId" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeMacHostsRequestMaxResults", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" } } }, @@ -39301,22 +38992,31 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayMulticastDomainsResult": { + "com.amazonaws.ec2#DescribeMacHostsRequestMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 500 + } + } + }, + "com.amazonaws.ec2#DescribeMacHostsResult": { "type": "structure", "members": { - "TransitGatewayMulticastDomains": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainList", + "MacHosts": { + "target": "com.amazonaws.ec2#MacHostList", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayMulticastDomains", - "smithy.api#documentation": "

Information about the transit gateway multicast domains.

", - "smithy.api#xmlName": "transitGatewayMulticastDomains" + "aws.protocols#ec2QueryName": "MacHostSet", + "smithy.api#documentation": "

\n Information about the EC2 Mac Dedicated Hosts.\n

", + "smithy.api#xmlName": "macHostSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

", "smithy.api#xmlName": "nextToken" } } @@ -39325,56 +39025,66 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayPeeringAttachments": { + "com.amazonaws.ec2#DescribeMacModificationTasks": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayPeeringAttachmentsRequest" + "target": "com.amazonaws.ec2#DescribeMacModificationTasksRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayPeeringAttachmentsResult" + "target": "com.amazonaws.ec2#DescribeMacModificationTasksResult" }, "traits": { - "smithy.api#documentation": "

Describes your transit gateway peering attachments.

", + "smithy.api#documentation": "

Describes a System Integrity Protection (SIP) modification task or volume ownership delegation \n task for an Amazon EC2 Mac instance. For more information, see Configure \n SIP for Amazon EC2 instances in the Amazon EC2 User Guide.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "TransitGatewayPeeringAttachments", + "items": "MacModificationTasks", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeTransitGatewayPeeringAttachmentsRequest": { + "com.amazonaws.ec2#DescribeMacModificationTasksMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 500 + } + } + }, + "com.amazonaws.ec2#DescribeMacModificationTasksRequest": { "type": "structure", "members": { - "TransitGatewayAttachmentIds": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentIdStringList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

One or more IDs of the transit gateway peering attachments.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#documentation": "

Specifies one or more filters for the request:

\n ", "smithy.api#xmlName": "Filter" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "MacModificationTaskIds": { + "target": "com.amazonaws.ec2#MacModificationTaskIdList", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The ID of task.

", + "smithy.api#xmlName": "MacModificationTaskId" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeMacModificationTasksMaxResults", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" } } }, @@ -39382,15 +39092,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayPeeringAttachmentsResult": { + "com.amazonaws.ec2#DescribeMacModificationTasksResult": { "type": "structure", "members": { - "TransitGatewayPeeringAttachments": { - "target": "com.amazonaws.ec2#TransitGatewayPeeringAttachmentList", + "MacModificationTasks": { + "target": "com.amazonaws.ec2#MacModificationTaskList", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayPeeringAttachments", - "smithy.api#documentation": "

The transit gateway peering attachments.

", - "smithy.api#xmlName": "transitGatewayPeeringAttachments" + "aws.protocols#ec2QueryName": "MacModificationTaskSet", + "smithy.api#documentation": "

Information about the tasks.

", + "smithy.api#xmlName": "macModificationTaskSet" } }, "NextToken": { @@ -39406,56 +39116,57 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayPolicyTables": { + "com.amazonaws.ec2#DescribeManagedPrefixLists": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayPolicyTablesRequest" + "target": "com.amazonaws.ec2#DescribeManagedPrefixListsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayPolicyTablesResult" + "target": "com.amazonaws.ec2#DescribeManagedPrefixListsResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more transit gateway route policy tables.

", + "smithy.api#documentation": "

Describes your managed prefix lists and any Amazon Web Services-managed prefix lists.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "TransitGatewayPolicyTables", + "items": "PrefixLists", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeTransitGatewayPolicyTablesRequest": { + "com.amazonaws.ec2#DescribeManagedPrefixListsRequest": { "type": "structure", "members": { - "TransitGatewayPolicyTableIds": { - "target": "com.amazonaws.ec2#TransitGatewayPolicyTableIdStringList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The IDs of the transit gateway policy tables.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters associated with the transit gateway policy table.

", + "smithy.api#documentation": "

One or more filters.

\n ", "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "target": "com.amazonaws.ec2#PrefixListMaxResults", "traits": { "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { "smithy.api#documentation": "

The token for the next page of results.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "PrefixListIds": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

One or more prefix list IDs.

", + "smithy.api#xmlName": "PrefixListId" } } }, @@ -39463,80 +39174,112 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayPolicyTablesResult": { + "com.amazonaws.ec2#DescribeManagedPrefixListsResult": { "type": "structure", "members": { - "TransitGatewayPolicyTables": { - "target": "com.amazonaws.ec2#TransitGatewayPolicyTableList", - "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayPolicyTables", - "smithy.api#documentation": "

Describes the transit gateway policy tables.

", - "smithy.api#xmlName": "transitGatewayPolicyTables" - } - }, "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NextToken", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token for the next page of results.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } + }, + "PrefixLists": { + "target": "com.amazonaws.ec2#ManagedPrefixListSet", + "traits": { + "aws.protocols#ec2QueryName": "PrefixListSet", + "smithy.api#documentation": "

Information about the prefix lists.

", + "smithy.api#xmlName": "prefixListSet" + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayRouteTableAnnouncements": { + "com.amazonaws.ec2#DescribeMovingAddresses": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayRouteTableAnnouncementsRequest" + "target": "com.amazonaws.ec2#DescribeMovingAddressesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayRouteTableAnnouncementsResult" + "target": "com.amazonaws.ec2#DescribeMovingAddressesResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more transit gateway route table advertisements.

", + "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Describes your Elastic IP addresses that are being moved from or being restored to the EC2-Classic platform. \n This request does not return information about any other Elastic IP addresses in your account.

", + "smithy.api#examples": [ + { + "title": "To describe your moving addresses", + "documentation": "This example describes all of your moving Elastic IP addresses.", + "output": { + "MovingAddressStatuses": [ + { + "PublicIp": "198.51.100.0", + "MoveStatus": "movingToVpc" + } + ] + } + } + ], "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "TransitGatewayRouteTableAnnouncements", + "items": "MovingAddressStatuses", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeTransitGatewayRouteTableAnnouncementsRequest": { + "com.amazonaws.ec2#DescribeMovingAddressesMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeMovingAddressesRequest": { "type": "structure", "members": { - "TransitGatewayRouteTableAnnouncementIds": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableAnnouncementIdStringList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The IDs of the transit gateway route tables that are being advertised.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "PublicIps": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

The filters associated with the transit gateway policy table.

", - "smithy.api#xmlName": "Filter" + "aws.protocols#ec2QueryName": "PublicIp", + "smithy.api#documentation": "

One or more Elastic IP addresses.

", + "smithy.api#xmlName": "publicIp" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token for the next page of results.

", + "smithy.api#xmlName": "nextToken" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "aws.protocols#ec2QueryName": "Filter", + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "filter" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeMovingAddressesMaxResults", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "MaxResults", + "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining\n results of the initial request can be seen by sending another request with the returned\n NextToken value. This value can be between 5 and 1000; if\n MaxResults is given a value outside of this range, an error is returned.

\n

Default: If no value is provided, the default is 1000.

", + "smithy.api#xmlName": "maxResults" } } }, @@ -39544,22 +39287,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayRouteTableAnnouncementsResult": { + "com.amazonaws.ec2#DescribeMovingAddressesResult": { "type": "structure", "members": { - "TransitGatewayRouteTableAnnouncements": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableAnnouncementList", + "MovingAddressStatuses": { + "target": "com.amazonaws.ec2#MovingAddressStatusSet", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayRouteTableAnnouncements", - "smithy.api#documentation": "

Describes the transit gateway route table announcement.

", - "smithy.api#xmlName": "transitGatewayRouteTableAnnouncements" + "aws.protocols#ec2QueryName": "MovingAddressStatusSet", + "smithy.api#documentation": "

The status for each Elastic IP address.

", + "smithy.api#xmlName": "movingAddressStatusSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token for the next page of results.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -39568,56 +39311,177 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayRouteTables": { + "com.amazonaws.ec2#DescribeNatGateways": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayRouteTablesRequest" + "target": "com.amazonaws.ec2#DescribeNatGatewaysRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayRouteTablesResult" + "target": "com.amazonaws.ec2#DescribeNatGatewaysResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more transit gateway route tables. By default, all transit gateway route tables are described.\n Alternatively, you can filter the results.

", + "smithy.api#documentation": "

Describes your NAT gateways. The default is to describe all your NAT gateways. \n Alternatively, you can specify specific NAT gateway IDs or filter the results to\n include only the NAT gateways that match specific criteria.

", + "smithy.api#examples": [ + { + "title": "To describe a NAT gateway", + "documentation": "This example describes the NAT gateway for the specified VPC.", + "input": { + "Filter": [ + { + "Name": "vpc-id", + "Values": [ + "vpc-1a2b3c4d" + ] + } + ] + }, + "output": { + "NatGateways": [ + { + "NatGatewayAddresses": [ + { + "PublicIp": "198.11.222.333", + "NetworkInterfaceId": "eni-9dec76cd", + "AllocationId": "eipalloc-89c620ec", + "PrivateIp": "10.0.0.149" + } + ], + "VpcId": "vpc-1a2b3c4d", + "State": "available", + "NatGatewayId": "nat-05dba92075d71c408", + "SubnetId": "subnet-847e4dc2", + "CreateTime": "2015-12-01T12:26:55.983Z" + } + ] + } + } + ], "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "TransitGatewayRouteTables", + "items": "NatGateways", "pageSize": "MaxResults" + }, + "smithy.api#suppress": [ + "WaitableTraitInvalidErrorType" + ], + "smithy.waiters#waitable": { + "NatGatewayAvailable": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "NatGateways[].State", + "expected": "available", + "comparator": "allStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "NatGateways[].State", + "expected": "failed", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "NatGateways[].State", + "expected": "deleting", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "NatGateways[].State", + "expected": "deleted", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "retry", + "matcher": { + "errorType": "NatGatewayNotFound" + } + } + ], + "minDelay": 15 + }, + "NatGatewayDeleted": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "NatGateways[].State", + "expected": "deleted", + "comparator": "allStringEquals" + } + } + }, + { + "state": "success", + "matcher": { + "errorType": "NatGatewayNotFound" + } + } + ], + "minDelay": 15 + } } } }, - "com.amazonaws.ec2#DescribeTransitGatewayRouteTablesRequest": { + "com.amazonaws.ec2#DescribeNatGatewaysMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeNatGatewaysRequest": { "type": "structure", "members": { - "TransitGatewayRouteTableIds": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableIdStringList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The IDs of the transit gateway route tables.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "Filters": { + "Filter": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The filters.

\n " } }, "MaxResults": { - "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "target": "com.amazonaws.ec2#DescribeNatGatewaysMaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "NatGatewayIds": { + "target": "com.amazonaws.ec2#NatGatewayIdStringList", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The IDs of the NAT gateways.

", + "smithy.api#xmlName": "NatGatewayId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } } }, @@ -39625,22 +39489,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayRouteTablesResult": { + "com.amazonaws.ec2#DescribeNatGatewaysResult": { "type": "structure", "members": { - "TransitGatewayRouteTables": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableList", + "NatGateways": { + "target": "com.amazonaws.ec2#NatGatewayList", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayRouteTables", - "smithy.api#documentation": "

Information about the transit gateway route tables.

", - "smithy.api#xmlName": "transitGatewayRouteTables" + "aws.protocols#ec2QueryName": "NatGatewaySet", + "smithy.api#documentation": "

Information about the NAT gateways.

", + "smithy.api#xmlName": "natGatewaySet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", "smithy.api#xmlName": "nextToken" } } @@ -39649,56 +39513,112 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayVpcAttachments": { + "com.amazonaws.ec2#DescribeNetworkAcls": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayVpcAttachmentsRequest" + "target": "com.amazonaws.ec2#DescribeNetworkAclsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeTransitGatewayVpcAttachmentsResult" + "target": "com.amazonaws.ec2#DescribeNetworkAclsResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more VPC attachments. By default, all VPC attachments are described.\n Alternatively, you can filter the results.

", + "smithy.api#documentation": "

Describes your network ACLs. The default is to describe all your network ACLs. \n Alternatively, you can specify specific network ACL IDs or filter the results to\n include only the network ACLs that match specific criteria.

\n

For more information, see Network ACLs in the\n\t\t\t\tAmazon VPC User Guide.

", + "smithy.api#examples": [ + { + "title": "To describe a network ACL", + "documentation": "This example describes the specified network ACL.", + "input": { + "NetworkAclIds": [ + "acl-5fb85d36" + ] + }, + "output": { + "NetworkAcls": [ + { + "Associations": [ + { + "SubnetId": "subnet-65ea5f08", + "NetworkAclId": "acl-9aeb5ef7", + "NetworkAclAssociationId": "aclassoc-66ea5f0b" + } + ], + "NetworkAclId": "acl-5fb85d36", + "VpcId": "vpc-a01106c2", + "Tags": [], + "Entries": [ + { + "CidrBlock": "0.0.0.0/0", + "RuleNumber": 32767, + "Protocol": "-1", + "Egress": true, + "RuleAction": "deny" + }, + { + "CidrBlock": "0.0.0.0/0", + "RuleNumber": 32767, + "Protocol": "-1", + "Egress": false, + "RuleAction": "deny" + } + ], + "IsDefault": false + } + ] + } + } + ], "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "TransitGatewayVpcAttachments", + "items": "NetworkAcls", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeTransitGatewayVpcAttachmentsRequest": { + "com.amazonaws.ec2#DescribeNetworkAclsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeNetworkAclsRequest": { "type": "structure", "members": { - "TransitGatewayAttachmentIds": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentIdStringList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IDs of the attachments.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeNetworkAclsMaxResults", "traits": { - "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "NetworkAclIds": { + "target": "com.amazonaws.ec2#NetworkAclIdStringList", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The IDs of the network ACLs.

", + "smithy.api#xmlName": "NetworkAclId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, @@ -39706,22 +39626,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewayVpcAttachmentsResult": { + "com.amazonaws.ec2#DescribeNetworkAclsResult": { "type": "structure", "members": { - "TransitGatewayVpcAttachments": { - "target": "com.amazonaws.ec2#TransitGatewayVpcAttachmentList", + "NetworkAcls": { + "target": "com.amazonaws.ec2#NetworkAclList", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayVpcAttachments", - "smithy.api#documentation": "

Information about the VPC attachments.

", - "smithy.api#xmlName": "transitGatewayVpcAttachments" + "aws.protocols#ec2QueryName": "NetworkAclSet", + "smithy.api#documentation": "

Information about the network ACLs.

", + "smithy.api#xmlName": "networkAclSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", "smithy.api#xmlName": "nextToken" } } @@ -39730,50 +39650,63 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeTransitGateways": { + "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopeAnalyses": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeTransitGatewaysRequest" + "target": "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopeAnalysesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeTransitGatewaysResult" + "target": "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopeAnalysesResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more transit gateways. By default, all transit gateways are described. Alternatively, you can\n filter the results.

", + "smithy.api#documentation": "

Describes the specified Network Access Scope analyses.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "TransitGateways", + "items": "NetworkInsightsAccessScopeAnalyses", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeTransitGatewaysRequest": { + "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopeAnalysesRequest": { "type": "structure", "members": { - "TransitGatewayIds": { - "target": "com.amazonaws.ec2#TransitGatewayIdStringList", + "NetworkInsightsAccessScopeAnalysisIds": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisIdList", "traits": { - "smithy.api#documentation": "

The IDs of the transit gateways.

" + "smithy.api#documentation": "

The IDs of the Network Access Scope analyses.

", + "smithy.api#xmlName": "NetworkInsightsAccessScopeAnalysisId" + } + }, + "NetworkInsightsAccessScopeId": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeId", + "traits": { + "smithy.api#documentation": "

The ID of the Network Access Scope.

" + } + }, + "AnalysisStartTimeBegin": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "smithy.api#documentation": "

Filters the results based on the start time. The analysis must have started on or after this time.

" + } + }, + "AnalysisStartTimeEnd": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "smithy.api#documentation": "

Filters the results based on the start time. The analysis must have started on or before this time.

" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#documentation": "

There are no supported filters.

", "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#TransitGatewayMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#NetworkInsightsMaxResults", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n To retrieve the remaining results, make another call with the returned nextToken value.

" } }, "DryRun": { @@ -39781,21 +39714,27 @@ "traits": { "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeTransitGatewaysResult": { + "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopeAnalysesResult": { "type": "structure", "members": { - "TransitGateways": { - "target": "com.amazonaws.ec2#TransitGatewayList", + "NetworkInsightsAccessScopeAnalyses": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisList", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewaySet", - "smithy.api#documentation": "

Information about the transit gateways.

", - "smithy.api#xmlName": "transitGatewaySet" + "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeAnalysisSet", + "smithy.api#documentation": "

The Network Access Scope analyses.

", + "smithy.api#xmlName": "networkInsightsAccessScopeAnalysisSet" } }, "NextToken": { @@ -39811,66 +39750,57 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeTrunkInterfaceAssociations": { + "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopes": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeTrunkInterfaceAssociationsRequest" + "target": "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeTrunkInterfaceAssociationsResult" + "target": "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopesResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more network interface trunk associations.

", + "smithy.api#documentation": "

Describes the specified Network Access Scopes.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "InterfaceAssociations", + "items": "NetworkInsightsAccessScopes", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeTrunkInterfaceAssociationsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 255 - } - } - }, - "com.amazonaws.ec2#DescribeTrunkInterfaceAssociationsRequest": { + "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopesRequest": { "type": "structure", "members": { - "AssociationIds": { - "target": "com.amazonaws.ec2#TrunkInterfaceAssociationIdList", - "traits": { - "smithy.api#documentation": "

The IDs of the associations.

", - "smithy.api#xmlName": "AssociationId" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NetworkInsightsAccessScopeIds": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeIdList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The IDs of the Network Access Scopes.

", + "smithy.api#xmlName": "NetworkInsightsAccessScopeId" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#documentation": "

There are no supported filters.

", "smithy.api#xmlName": "Filter" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "MaxResults": { + "target": "com.amazonaws.ec2#NetworkInsightsMaxResults", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n To retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeTrunkInterfaceAssociationsMaxResults", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n To retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" } } }, @@ -39878,15 +39808,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeTrunkInterfaceAssociationsResult": { + "com.amazonaws.ec2#DescribeNetworkInsightsAccessScopesResult": { "type": "structure", "members": { - "InterfaceAssociations": { - "target": "com.amazonaws.ec2#TrunkInterfaceAssociationList", + "NetworkInsightsAccessScopes": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeList", "traits": { - "aws.protocols#ec2QueryName": "InterfaceAssociationSet", - "smithy.api#documentation": "

Information about the trunk associations.

", - "smithy.api#xmlName": "interfaceAssociationSet" + "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeSet", + "smithy.api#documentation": "

The Network Access Scopes.

", + "smithy.api#xmlName": "networkInsightsAccessScopeSet" } }, "NextToken": { @@ -39902,98 +39832,95 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVerifiedAccessEndpoints": { + "com.amazonaws.ec2#DescribeNetworkInsightsAnalyses": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVerifiedAccessEndpointsRequest" + "target": "com.amazonaws.ec2#DescribeNetworkInsightsAnalysesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVerifiedAccessEndpointsResult" + "target": "com.amazonaws.ec2#DescribeNetworkInsightsAnalysesResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified Amazon Web Services Verified Access endpoints.

", + "smithy.api#documentation": "

Describes one or more of your network insights analyses.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "VerifiedAccessEndpoints", + "items": "NetworkInsightsAnalyses", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeVerifiedAccessEndpointsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#DescribeVerifiedAccessEndpointsRequest": { + "com.amazonaws.ec2#DescribeNetworkInsightsAnalysesRequest": { "type": "structure", "members": { - "VerifiedAccessEndpointIds": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpointIdList", - "traits": { - "smithy.api#documentation": "

The ID of the Verified Access endpoint.

", - "smithy.api#xmlName": "VerifiedAccessEndpointId" - } - }, - "VerifiedAccessInstanceId": { - "target": "com.amazonaws.ec2#VerifiedAccessInstanceId", + "NetworkInsightsAnalysisIds": { + "target": "com.amazonaws.ec2#NetworkInsightsAnalysisIdList", "traits": { - "smithy.api#documentation": "

The ID of the Verified Access instance.

" + "smithy.api#documentation": "

The ID of the network insights analyses. You must specify either analysis IDs or a path ID.

", + "smithy.api#xmlName": "NetworkInsightsAnalysisId" } }, - "VerifiedAccessGroupId": { - "target": "com.amazonaws.ec2#VerifiedAccessGroupId", + "NetworkInsightsPathId": { + "target": "com.amazonaws.ec2#NetworkInsightsPathId", "traits": { - "smithy.api#documentation": "

The ID of the Verified Access group.

" + "smithy.api#documentation": "

The ID of the path. You must specify either a path ID or analysis IDs.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeVerifiedAccessEndpointsMaxResults", + "AnalysisStartTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The time when the network insights analyses started.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "AnalysisEndTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The time when the network insights analyses ended.

" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

", + "smithy.api#documentation": "

The filters. The following are the possible values:

\n ", "smithy.api#xmlName": "Filter" } }, + "MaxResults": { + "target": "com.amazonaws.ec2#NetworkInsightsMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n To retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVerifiedAccessEndpointsResult": { + "com.amazonaws.ec2#DescribeNetworkInsightsAnalysesResult": { "type": "structure", "members": { - "VerifiedAccessEndpoints": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpointList", + "NetworkInsightsAnalyses": { + "target": "com.amazonaws.ec2#NetworkInsightsAnalysisList", "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessEndpointSet", - "smithy.api#documentation": "

Details about the Verified Access endpoints.

", - "smithy.api#xmlName": "verifiedAccessEndpointSet" + "aws.protocols#ec2QueryName": "NetworkInsightsAnalysisSet", + "smithy.api#documentation": "

Information about the network insights analyses.

", + "smithy.api#xmlName": "networkInsightsAnalysisSet" } }, "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", @@ -40005,53 +39932,51 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVerifiedAccessGroupMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#DescribeVerifiedAccessGroups": { + "com.amazonaws.ec2#DescribeNetworkInsightsPaths": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVerifiedAccessGroupsRequest" + "target": "com.amazonaws.ec2#DescribeNetworkInsightsPathsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVerifiedAccessGroupsResult" + "target": "com.amazonaws.ec2#DescribeNetworkInsightsPathsResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified Verified Access groups.

", + "smithy.api#documentation": "

Describes one or more of your paths.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "VerifiedAccessGroups", + "items": "NetworkInsightsPaths", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeVerifiedAccessGroupsRequest": { + "com.amazonaws.ec2#DescribeNetworkInsightsPathsRequest": { "type": "structure", "members": { - "VerifiedAccessGroupIds": { - "target": "com.amazonaws.ec2#VerifiedAccessGroupIdList", + "NetworkInsightsPathIds": { + "target": "com.amazonaws.ec2#NetworkInsightsPathIdList", "traits": { - "smithy.api#documentation": "

The ID of the Verified Access groups.

", - "smithy.api#xmlName": "VerifiedAccessGroupId" + "smithy.api#documentation": "

The IDs of the paths.

", + "smithy.api#xmlName": "NetworkInsightsPathId" } }, - "VerifiedAccessInstanceId": { - "target": "com.amazonaws.ec2#VerifiedAccessInstanceId", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The ID of the Verified Access instance.

" + "smithy.api#documentation": "

The filters. The following are the possible values:

\n ", + "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#DescribeVerifiedAccessGroupMaxResults", + "target": "com.amazonaws.ec2#NetworkInsightsMaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n To retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, "NextToken": { @@ -40059,223 +39984,471 @@ "traits": { "smithy.api#documentation": "

The token for the next page of results.

" } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DescribeNetworkInsightsPathsResult": { + "type": "structure", + "members": { + "NetworkInsightsPaths": { + "target": "com.amazonaws.ec2#NetworkInsightsPathList", "traits": { - "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

", - "smithy.api#xmlName": "Filter" + "aws.protocols#ec2QueryName": "NetworkInsightsPathSet", + "smithy.api#documentation": "

Information about the paths.

", + "smithy.api#xmlName": "networkInsightsPathSet" } }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DescribeNetworkInterfaceAttribute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeNetworkInterfaceAttributeRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeNetworkInterfaceAttributeResult" + }, + "traits": { + "smithy.api#documentation": "

Describes a network interface attribute. You can specify only one attribute at a\n time.

", + "smithy.api#examples": [ + { + "title": "To describe the attachment attribute of a network interface", + "documentation": "This example describes the attachment attribute of the specified network interface.", + "input": { + "NetworkInterfaceId": "eni-686ea200", + "Attribute": "attachment" + }, + "output": { + "NetworkInterfaceId": "eni-686ea200", + "Attachment": { + "Status": "attached", + "DeviceIndex": 0, + "AttachTime": "2015-05-21T20:02:20.000Z", + "InstanceId": "i-1234567890abcdef0", + "DeleteOnTermination": true, + "AttachmentId": "eni-attach-43348162", + "InstanceOwnerId": "123456789012" + } + } + }, + { + "title": "To describe the description attribute of a network interface", + "documentation": "This example describes the description attribute of the specified network interface.", + "input": { + "NetworkInterfaceId": "eni-686ea200", + "Attribute": "description" + }, + "output": { + "NetworkInterfaceId": "eni-686ea200", + "Description": { + "Value": "My description" + } + } + }, + { + "title": "To describe the groupSet attribute of a network interface", + "documentation": "This example describes the groupSet attribute of the specified network interface.", + "input": { + "NetworkInterfaceId": "eni-686ea200", + "Attribute": "groupSet" + }, + "output": { + "NetworkInterfaceId": "eni-686ea200", + "Groups": [ + { + "GroupName": "my-security-group", + "GroupId": "sg-903004f8" + } + ] + } + }, + { + "title": "To describe the sourceDestCheck attribute of a network interface", + "documentation": "This example describes the sourceDestCheck attribute of the specified network interface.", + "input": { + "NetworkInterfaceId": "eni-686ea200", + "Attribute": "sourceDestCheck" + }, + "output": { + "NetworkInterfaceId": "eni-686ea200", + "SourceDestCheck": { + "Value": true + } + } + } + ] + } + }, + "com.amazonaws.ec2#DescribeNetworkInterfaceAttributeRequest": { + "type": "structure", + "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInterfaceId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the network interface.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "networkInterfaceId" + } + }, + "Attribute": { + "target": "com.amazonaws.ec2#NetworkInterfaceAttribute", + "traits": { + "aws.protocols#ec2QueryName": "Attribute", + "smithy.api#documentation": "

The attribute of the network interface. This parameter is required.

", + "smithy.api#xmlName": "attribute" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DescribeNetworkInterfaceAttribute.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVerifiedAccessGroupsResult": { + "com.amazonaws.ec2#DescribeNetworkInterfaceAttributeResult": { "type": "structure", "members": { - "VerifiedAccessGroups": { - "target": "com.amazonaws.ec2#VerifiedAccessGroupList", + "Attachment": { + "target": "com.amazonaws.ec2#NetworkInterfaceAttachment", "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessGroupSet", - "smithy.api#documentation": "

Details about the Verified Access groups.

", - "smithy.api#xmlName": "verifiedAccessGroupSet" + "aws.protocols#ec2QueryName": "Attachment", + "smithy.api#documentation": "

The attachment (if any) of the network interface.

", + "smithy.api#xmlName": "attachment" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "Description": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The description of the network interface.

", + "smithy.api#xmlName": "description" + } + }, + "Groups": { + "target": "com.amazonaws.ec2#GroupIdentifierList", + "traits": { + "aws.protocols#ec2QueryName": "GroupSet", + "smithy.api#documentation": "

The security groups associated with the network interface.

", + "smithy.api#xmlName": "groupSet" + } + }, + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInterfaceId", + "smithy.api#documentation": "

The ID of the network interface.

", + "smithy.api#xmlName": "networkInterfaceId" + } + }, + "SourceDestCheck": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "aws.protocols#ec2QueryName": "SourceDestCheck", + "smithy.api#documentation": "

Indicates whether source/destination checking is enabled.

", + "smithy.api#xmlName": "sourceDestCheck" + } + }, + "AssociatePublicIpAddress": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "AssociatePublicIpAddress", + "smithy.api#documentation": "

Indicates whether to assign a public IPv4 address to a network interface. This option\n can be enabled for any network interface but will only apply to the primary network\n interface (eth0).

", + "smithy.api#xmlName": "associatePublicIpAddress" } } }, "traits": { + "smithy.api#documentation": "

Contains the output of DescribeNetworkInterfaceAttribute.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVerifiedAccessInstanceLoggingConfigurations": { + "com.amazonaws.ec2#DescribeNetworkInterfacePermissions": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVerifiedAccessInstanceLoggingConfigurationsRequest" + "target": "com.amazonaws.ec2#DescribeNetworkInterfacePermissionsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVerifiedAccessInstanceLoggingConfigurationsResult" + "target": "com.amazonaws.ec2#DescribeNetworkInterfacePermissionsResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified Amazon Web Services Verified Access instances.

", + "smithy.api#documentation": "

Describes the permissions for your network interfaces.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "LoggingConfigurations", + "items": "NetworkInterfacePermissions", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeVerifiedAccessInstanceLoggingConfigurationsMaxResults": { + "com.amazonaws.ec2#DescribeNetworkInterfacePermissionsMaxResults": { "type": "integer", "traits": { "smithy.api#range": { - "min": 1, - "max": 10 + "min": 5, + "max": 255 } } }, - "com.amazonaws.ec2#DescribeVerifiedAccessInstanceLoggingConfigurationsRequest": { + "com.amazonaws.ec2#DescribeNetworkInterfacePermissionsRequest": { "type": "structure", "members": { - "VerifiedAccessInstanceIds": { - "target": "com.amazonaws.ec2#VerifiedAccessInstanceIdList", + "NetworkInterfacePermissionIds": { + "target": "com.amazonaws.ec2#NetworkInterfacePermissionIdList", "traits": { - "smithy.api#documentation": "

The IDs of the Verified Access instances.

", - "smithy.api#xmlName": "VerifiedAccessInstanceId" + "smithy.api#documentation": "

The network interface permission IDs.

", + "smithy.api#xmlName": "NetworkInterfacePermissionId" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeVerifiedAccessInstanceLoggingConfigurationsMaxResults", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" } }, "NextToken": { - "target": "com.amazonaws.ec2#NextToken", - "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the\n end of the items returned by the previous request.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeNetworkInterfacePermissionsMaxResults", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items,\n make another request with the token returned in the output. If this parameter is not\n specified, up to 50 results are returned by default. For more information, see Pagination.

" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DescribeNetworkInterfacePermissions.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVerifiedAccessInstanceLoggingConfigurationsResult": { + "com.amazonaws.ec2#DescribeNetworkInterfacePermissionsResult": { "type": "structure", "members": { - "LoggingConfigurations": { - "target": "com.amazonaws.ec2#VerifiedAccessInstanceLoggingConfigurationList", + "NetworkInterfacePermissions": { + "target": "com.amazonaws.ec2#NetworkInterfacePermissionList", "traits": { - "aws.protocols#ec2QueryName": "LoggingConfigurationSet", - "smithy.api#documentation": "

The logging configuration for the Verified Access instances.

", - "smithy.api#xmlName": "loggingConfigurationSet" + "aws.protocols#ec2QueryName": "NetworkInterfacePermissions", + "smithy.api#documentation": "

The network interface permissions.

", + "smithy.api#xmlName": "networkInterfacePermissions" } }, "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is\n null when there are no more items to return.

", "smithy.api#xmlName": "nextToken" } } }, "traits": { + "smithy.api#documentation": "

Contains the output for DescribeNetworkInterfacePermissions.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVerifiedAccessInstances": { + "com.amazonaws.ec2#DescribeNetworkInterfaces": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVerifiedAccessInstancesRequest" + "target": "com.amazonaws.ec2#DescribeNetworkInterfacesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVerifiedAccessInstancesResult" + "target": "com.amazonaws.ec2#DescribeNetworkInterfacesResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified Amazon Web Services Verified Access instances.

", + "smithy.api#documentation": "

Describes the specified network interfaces or all your network interfaces.

\n

If you have a large number of network interfaces, the operation fails unless you use\n pagination or one of the following filters: group-id,\n mac-address, private-dns-name,\n private-ip-address, subnet-id, or\n vpc-id.

\n \n

We strongly recommend using only paginated requests. Unpaginated requests are\n susceptible to throttling and timeouts.

\n
", + "smithy.api#examples": [ + { + "title": "To describe a network interface", + "documentation": "", + "input": { + "NetworkInterfaceIds": [ + "eni-e5aa89a3" + ] + }, + "output": { + "NetworkInterfaces": [ + { + "Status": "in-use", + "MacAddress": "02:2f:8f:b0:cf:75", + "SourceDestCheck": true, + "VpcId": "vpc-a01106c2", + "Description": "my network interface", + "Association": { + "PublicIp": "203.0.113.12", + "AssociationId": "eipassoc-0fbb766a", + "PublicDnsName": "ec2-203-0-113-12.compute-1.amazonaws.com", + "IpOwnerId": "123456789012" + }, + "NetworkInterfaceId": "eni-e5aa89a3", + "PrivateIpAddresses": [ + { + "PrivateDnsName": "ip-10-0-1-17.ec2.internal", + "Association": { + "PublicIp": "203.0.113.12", + "AssociationId": "eipassoc-0fbb766a", + "PublicDnsName": "ec2-203-0-113-12.compute-1.amazonaws.com", + "IpOwnerId": "123456789012" + }, + "Primary": true, + "PrivateIpAddress": "10.0.1.17" + } + ], + "RequesterManaged": false, + "PrivateDnsName": "ip-10-0-1-17.ec2.internal", + "AvailabilityZone": "us-east-1d", + "Attachment": { + "Status": "attached", + "DeviceIndex": 1, + "AttachTime": "2013-11-30T23:36:42.000Z", + "InstanceId": "i-1234567890abcdef0", + "DeleteOnTermination": false, + "AttachmentId": "eni-attach-66c4350a", + "InstanceOwnerId": "123456789012" + }, + "Groups": [ + { + "GroupName": "default", + "GroupId": "sg-8637d3e3" + } + ], + "SubnetId": "subnet-b61f49f0", + "OwnerId": "123456789012", + "TagSet": [], + "PrivateIpAddress": "10.0.1.17" + } + ] + } + } + ], "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "VerifiedAccessInstances", + "items": "NetworkInterfaces", "pageSize": "MaxResults" + }, + "smithy.api#suppress": [ + "WaitableTraitInvalidErrorType" + ], + "smithy.waiters#waitable": { + "NetworkInterfaceAvailable": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "NetworkInterfaces[].Status", + "expected": "available", + "comparator": "allStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "errorType": "InvalidNetworkInterfaceID.NotFound" + } + } + ], + "minDelay": 20 + } } } }, - "com.amazonaws.ec2#DescribeVerifiedAccessInstancesMaxResults": { + "com.amazonaws.ec2#DescribeNetworkInterfacesMaxResults": { "type": "integer", "traits": { "smithy.api#range": { "min": 5, - "max": 200 + "max": 1000 } } }, - "com.amazonaws.ec2#DescribeVerifiedAccessInstancesRequest": { + "com.amazonaws.ec2#DescribeNetworkInterfacesRequest": { "type": "structure", "members": { - "VerifiedAccessInstanceIds": { - "target": "com.amazonaws.ec2#VerifiedAccessInstanceIdList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IDs of the Verified Access instances.

", - "smithy.api#xmlName": "VerifiedAccessInstanceId" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the\n end of the items returned by the previous request.

" } }, "MaxResults": { - "target": "com.amazonaws.ec2#DescribeVerifiedAccessInstancesMaxResults", + "target": "com.amazonaws.ec2#DescribeNetworkInterfacesMaxResults", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items,\n make another request with the token returned in the output. You cannot specify this\n parameter and the network interface IDs parameter in the same request. For more\n information, see Pagination.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "NetworkInterfaceIds": { + "target": "com.amazonaws.ec2#NetworkInterfaceIdList", "traits": { - "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The network interface IDs.

\n

Default: Describes all your network interfaces.

", + "smithy.api#xmlName": "NetworkInterfaceId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "Filter", + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "filter" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DescribeNetworkInterfaces.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVerifiedAccessInstancesResult": { + "com.amazonaws.ec2#DescribeNetworkInterfacesResult": { "type": "structure", "members": { - "VerifiedAccessInstances": { - "target": "com.amazonaws.ec2#VerifiedAccessInstanceList", + "NetworkInterfaces": { + "target": "com.amazonaws.ec2#NetworkInterfaceList", "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessInstanceSet", - "smithy.api#documentation": "

Details about the Verified Access instances.

", - "smithy.api#xmlName": "verifiedAccessInstanceSet" + "aws.protocols#ec2QueryName": "NetworkInterfaceSet", + "smithy.api#documentation": "

Information about the network interfaces.

", + "smithy.api#xmlName": "networkInterfaceSet" } }, "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is\n null when there are no more items to return.

", "smithy.api#xmlName": "nextToken" } } @@ -40284,62 +40457,47 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVerifiedAccessTrustProviders": { + "com.amazonaws.ec2#DescribeOutpostLags": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVerifiedAccessTrustProvidersRequest" + "target": "com.amazonaws.ec2#DescribeOutpostLagsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVerifiedAccessTrustProvidersResult" + "target": "com.amazonaws.ec2#DescribeOutpostLagsResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified Amazon Web Services Verified Access trust providers.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "VerifiedAccessTrustProviders", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeVerifiedAccessTrustProvidersMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 200 - } + "smithy.api#documentation": "

Describes the Outposts link aggregation groups (LAGs).

\n \n

LAGs are only available for second-generation Outposts racks at this time.

\n
" } }, - "com.amazonaws.ec2#DescribeVerifiedAccessTrustProvidersRequest": { + "com.amazonaws.ec2#DescribeOutpostLagsRequest": { "type": "structure", "members": { - "VerifiedAccessTrustProviderIds": { - "target": "com.amazonaws.ec2#VerifiedAccessTrustProviderIdList", + "OutpostLagIds": { + "target": "com.amazonaws.ec2#OutpostLagIdSet", "traits": { - "smithy.api#documentation": "

The IDs of the Verified Access trust providers.

", - "smithy.api#xmlName": "VerifiedAccessTrustProviderId" + "smithy.api#documentation": "

The IDs of the Outpost LAGs.

", + "smithy.api#xmlName": "OutpostLagId" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

The filters to use for narrowing down the request. The following filters are\n supported:

\n ", + "smithy.api#xmlName": "Filter" } }, "MaxResults": { - "target": "com.amazonaws.ec2#DescribeVerifiedAccessTrustProvidersMaxResults", + "target": "com.amazonaws.ec2#OutpostLagMaxResults", "traits": { "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#documentation": "

The token for the next page of results.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

", - "smithy.api#xmlName": "Filter" - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { @@ -40351,19 +40509,19 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVerifiedAccessTrustProvidersResult": { + "com.amazonaws.ec2#DescribeOutpostLagsResult": { "type": "structure", "members": { - "VerifiedAccessTrustProviders": { - "target": "com.amazonaws.ec2#VerifiedAccessTrustProviderList", + "OutpostLags": { + "target": "com.amazonaws.ec2#OutpostLagSet", "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessTrustProviderSet", - "smithy.api#documentation": "

Details about the Verified Access trust providers.

", - "smithy.api#xmlName": "verifiedAccessTrustProviderSet" + "aws.protocols#ec2QueryName": "OutpostLagSet", + "smithy.api#documentation": "

The Outpost LAGs.

", + "smithy.api#xmlName": "outpostLagSet" } }, "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", @@ -40375,91 +40533,65 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVolumeAttribute": { + "com.amazonaws.ec2#DescribePlacementGroups": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVolumeAttributeRequest" + "target": "com.amazonaws.ec2#DescribePlacementGroupsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVolumeAttributeResult" + "target": "com.amazonaws.ec2#DescribePlacementGroupsResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified attribute of the specified volume. You can specify only one\n attribute at a time.

\n

For more information about EBS volumes, see Amazon EBS volumes in the Amazon EBS User Guide.

", - "smithy.api#examples": [ - { - "title": "To describe a volume attribute", - "documentation": "This example describes the ``autoEnableIo`` attribute of the volume with the ID ``vol-049df61146c4d7901``.", - "input": { - "VolumeId": "vol-049df61146c4d7901", - "Attribute": "autoEnableIO" - }, - "output": { - "AutoEnableIO": { - "Value": false - }, - "VolumeId": "vol-049df61146c4d7901" - } - } - ] + "smithy.api#documentation": "

Describes the specified placement groups or all of your placement groups.

\n \n

To describe a specific placement group that is shared with\n your account, you must specify the ID of the placement group using the\n GroupId parameter. Specifying the name of a\n shared placement group using the GroupNames\n parameter will result in an error.

\n
\n

For more information, see Placement groups in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#DescribeVolumeAttributeRequest": { + "com.amazonaws.ec2#DescribePlacementGroupsRequest": { "type": "structure", "members": { - "Attribute": { - "target": "com.amazonaws.ec2#VolumeAttributeName", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The attribute of the volume. This parameter is required.

", - "smithy.api#required": {} - } - }, - "VolumeId": { - "target": "com.amazonaws.ec2#VolumeId", + "GroupIds": { + "target": "com.amazonaws.ec2#PlacementGroupIdStringList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the volume.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The IDs of the placement groups.

", + "smithy.api#xmlName": "GroupId" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } + }, + "GroupNames": { + "target": "com.amazonaws.ec2#PlacementGroupStringList", + "traits": { + "aws.protocols#ec2QueryName": "GroupName", + "smithy.api#documentation": "

The names of the placement groups.

\n

Constraints:

\n ", + "smithy.api#xmlName": "groupName" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVolumeAttributeResult": { + "com.amazonaws.ec2#DescribePlacementGroupsResult": { "type": "structure", "members": { - "AutoEnableIO": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", - "traits": { - "aws.protocols#ec2QueryName": "AutoEnableIO", - "smithy.api#documentation": "

The state of autoEnableIO attribute.

", - "smithy.api#xmlName": "autoEnableIO" - } - }, - "ProductCodes": { - "target": "com.amazonaws.ec2#ProductCodeList", - "traits": { - "aws.protocols#ec2QueryName": "ProductCodes", - "smithy.api#documentation": "

A list of product codes.

", - "smithy.api#xmlName": "productCodes" - } - }, - "VolumeId": { - "target": "com.amazonaws.ec2#String", + "PlacementGroups": { + "target": "com.amazonaws.ec2#PlacementGroupList", "traits": { - "aws.protocols#ec2QueryName": "VolumeId", - "smithy.api#documentation": "

The ID of the volume.

", - "smithy.api#xmlName": "volumeId" + "aws.protocols#ec2QueryName": "PlacementGroupSet", + "smithy.api#documentation": "

Information about the placement groups.

", + "smithy.api#xmlName": "placementGroupSet" } } }, @@ -40467,110 +40599,57 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVolumeStatus": { + "com.amazonaws.ec2#DescribePrefixLists": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVolumeStatusRequest" + "target": "com.amazonaws.ec2#DescribePrefixListsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVolumeStatusResult" + "target": "com.amazonaws.ec2#DescribePrefixListsResult" }, "traits": { - "smithy.api#documentation": "

Describes the status of the specified volumes. Volume status provides the result of the\n checks performed on your volumes to determine events that can impair the performance of your\n volumes. The performance of a volume can be affected if an issue occurs on the volume's\n underlying host. If the volume's underlying host experiences a power outage or system issue,\n after the system is restored, there could be data inconsistencies on the volume. Volume events\n notify you if this occurs. Volume actions notify you if any action needs to be taken in\n response to the event.

\n

The DescribeVolumeStatus operation provides the following information about\n the specified volumes:

\n

\n Status: Reflects the current status of the volume. The possible\n values are ok, impaired , warning, or\n insufficient-data. If all checks pass, the overall status of the volume is\n ok. If the check fails, the overall status is impaired. If the\n status is insufficient-data, then the checks might still be taking place on your\n volume at the time. We recommend that you retry the request. For more information about volume\n status, see Monitor the status of your volumes in the Amazon EBS User Guide.

\n

\n Events: Reflect the cause of a volume status and might require you to\n take action. For example, if your volume returns an impaired status, then the\n volume event might be potential-data-inconsistency. This means that your volume\n has been affected by an issue with the underlying host, has all I/O operations disabled, and\n might have inconsistent data.

\n

\n Actions: Reflect the actions you might have to take in response to an\n event. For example, if the status of the volume is impaired and the volume event\n shows potential-data-inconsistency, then the action shows\n enable-volume-io. This means that you may want to enable the I/O operations for\n the volume by calling the EnableVolumeIO action and then check the volume\n for data consistency.

\n

Volume status is based on the volume status checks, and does not reflect the volume state.\n Therefore, volume status does not indicate volumes in the error state (for\n example, when a volume is incapable of accepting I/O.)

\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", - "smithy.api#examples": [ - { - "title": "To describe the status of a single volume", - "documentation": "This example describes the status for the volume ``vol-1234567890abcdef0``.", - "input": { - "VolumeIds": [ - "vol-1234567890abcdef0" - ] - }, - "output": { - "VolumeStatuses": [ - { - "VolumeStatus": { - "Status": "ok", - "Details": [ - { - "Status": "passed", - "Name": "io-enabled" - }, - { - "Status": "not-applicable", - "Name": "io-performance" - } - ] - }, - "AvailabilityZone": "us-east-1a", - "VolumeId": "vol-1234567890abcdef0", - "Actions": [], - "Events": [] - } - ] - } - }, - { - "title": "To describe the status of impaired volumes", - "documentation": "This example describes the status for all volumes that are impaired. In this example output, there are no impaired volumes.", - "input": { - "Filters": [ - { - "Values": [ - "impaired" - ], - "Name": "volume-status.status" - } - ] - }, - "output": { - "VolumeStatuses": [] - } - } - ], + "smithy.api#documentation": "

Describes available Amazon Web Services services in a prefix list format, which includes the prefix list\n name and prefix list ID of the service and the IP address range for the service.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "VolumeStatuses", + "items": "PrefixLists", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeVolumeStatusRequest": { + "com.amazonaws.ec2#DescribePrefixListsRequest": { "type": "structure", "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#documentation": "

One or more filters.

\n ", "smithy.api#xmlName": "Filter" } }, "MaxResults": { "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items,\n make another request with the token returned in the output. This value can be between 5 and 1,000;\n if the value is larger than 1,000, only 1,000 results are returned. If this parameter is not used, \n then all items are returned. You cannot specify this parameter and the volume IDs parameter in the \n same request. For more information, see Pagination.

" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" - } - }, - "VolumeIds": { - "target": "com.amazonaws.ec2#VolumeIdStringList", - "traits": { - "smithy.api#documentation": "

The IDs of the volumes.

\n

Default: Describes all your volumes.

", - "smithy.api#xmlName": "VolumeId" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "PrefixListIds": { + "target": "com.amazonaws.ec2#PrefixListResourceIdStringList", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

One or more prefix list IDs.

", + "smithy.api#xmlName": "PrefixListId" } } }, @@ -40578,23 +40657,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVolumeStatusResult": { + "com.amazonaws.ec2#DescribePrefixListsResult": { "type": "structure", "members": { "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } }, - "VolumeStatuses": { - "target": "com.amazonaws.ec2#VolumeStatusList", + "PrefixLists": { + "target": "com.amazonaws.ec2#PrefixListSet", "traits": { - "aws.protocols#ec2QueryName": "VolumeStatusSet", - "smithy.api#documentation": "

Information about the status of the volumes.

", - "smithy.api#xmlName": "volumeStatusSet" + "aws.protocols#ec2QueryName": "PrefixListSet", + "smithy.api#documentation": "

All available prefix lists.

", + "smithy.api#xmlName": "prefixListSet" } } }, @@ -40602,192 +40681,34 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVolumes": { + "com.amazonaws.ec2#DescribePrincipalIdFormat": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVolumesRequest" + "target": "com.amazonaws.ec2#DescribePrincipalIdFormatRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVolumesResult" + "target": "com.amazonaws.ec2#DescribePrincipalIdFormatResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified EBS volumes or all of your EBS volumes.

\n

If you are describing a long list of volumes, we recommend that you paginate the output to make the list\n more manageable. For more information, see Pagination.

\n

For more information about EBS volumes, see Amazon EBS volumes in the Amazon EBS User Guide.

\n \n

We strongly recommend using only paginated requests. Unpaginated requests are\n susceptible to throttling and timeouts.

\n
\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", - "smithy.api#examples": [ - { - "title": "To describe all volumes", - "documentation": "This example describes all of your volumes in the default region.", - "output": { - "Volumes": [ - { - "AvailabilityZone": "us-east-1a", - "Attachments": [ - { - "AttachTime": "2013-12-18T22:35:00.000Z", - "InstanceId": "i-1234567890abcdef0", - "VolumeId": "vol-049df61146c4d7901", - "State": "attached", - "DeleteOnTermination": true, - "Device": "/dev/sda1" - } - ], - "VolumeType": "standard", - "VolumeId": "vol-049df61146c4d7901", - "State": "in-use", - "SnapshotId": "snap-1234567890abcdef0", - "CreateTime": "2013-12-18T22:35:00.084Z", - "Size": 8 - } - ], - "NextToken": "" - } - }, - { - "title": "To describe volumes that are attached to a specific instance", - "documentation": "This example describes all volumes that are both attached to the instance with the ID i-1234567890abcdef0 and set to delete when the instance terminates.", - "input": { - "Filters": [ - { - "Values": [ - "i-1234567890abcdef0" - ], - "Name": "attachment.instance-id" - }, - { - "Values": [ - "true" - ], - "Name": "attachment.delete-on-termination" - } - ] - }, - "output": { - "Volumes": [ - { - "AvailabilityZone": "us-east-1a", - "Attachments": [ - { - "AttachTime": "2013-12-18T22:35:00.000Z", - "InstanceId": "i-1234567890abcdef0", - "VolumeId": "vol-049df61146c4d7901", - "State": "attached", - "DeleteOnTermination": true, - "Device": "/dev/sda1" - } - ], - "VolumeType": "standard", - "VolumeId": "vol-049df61146c4d7901", - "State": "in-use", - "SnapshotId": "snap-1234567890abcdef0", - "CreateTime": "2013-12-18T22:35:00.084Z", - "Size": 8 - } - ] - } - } - ], + "smithy.api#documentation": "

Describes the ID format settings for the root user and all IAM roles and IAM users\n that have explicitly specified a longer ID (17-character ID) preference.

\n

By default, all IAM roles and IAM users default to the same ID settings as the root user, unless they\n explicitly override the settings. This request is useful for identifying those IAM users and IAM roles\n that have overridden the default ID settings.

\n

The following resource types support longer IDs: bundle |\n conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | instance | internet-gateway |\n network-acl | network-acl-association |\n network-interface | network-interface-attachment |\n prefix-list | reservation | route-table |\n route-table-association | security-group |\n snapshot | subnet |\n subnet-cidr-block-association | volume | vpc\n | vpc-cidr-block-association | vpc-endpoint |\n vpc-peering-connection | vpn-connection | vpn-gateway.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "Volumes", + "items": "Principals", "pageSize": "MaxResults" - }, - "smithy.api#suppress": [ - "WaitableTraitInvalidErrorType" - ], - "smithy.waiters#waitable": { - "VolumeAvailable": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "Volumes[].State", - "expected": "available", - "comparator": "allStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "Volumes[].State", - "expected": "deleted", - "comparator": "anyStringEquals" - } - } - } - ], - "minDelay": 15 - }, - "VolumeDeleted": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "Volumes[].State", - "expected": "deleted", - "comparator": "allStringEquals" - } - } - }, - { - "state": "success", - "matcher": { - "errorType": "InvalidVolume.NotFound" - } - } - ], - "minDelay": 15 - }, - "VolumeInUse": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "Volumes[].State", - "expected": "in-use", - "comparator": "allStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "Volumes[].State", - "expected": "deleted", - "comparator": "anyStringEquals" - } - } - } - ], - "minDelay": 15 - } } } }, - "com.amazonaws.ec2#DescribeVolumesModifications": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DescribeVolumesModificationsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DescribeVolumesModificationsResult" - }, + "com.amazonaws.ec2#DescribePrincipalIdFormatMaxResults": { + "type": "integer", "traits": { - "smithy.api#documentation": "

Describes the most recent volume modification request for the specified EBS volumes.

\n

If a volume has never been modified, some information in the output will be null.\n If a volume has been modified more than once, the output includes only the most \n recent modification request.

\n

You can also use CloudWatch Events to check the status of a modification to an EBS\n volume. For information about CloudWatch Events, see the Amazon CloudWatch Events User Guide. For more information, see\n Monitor the progress of volume modifications in the Amazon EBS User Guide.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "VolumesModifications", - "pageSize": "MaxResults" + "smithy.api#range": { + "min": 1, + "max": 1000 } } }, - "com.amazonaws.ec2#DescribeVolumesModificationsRequest": { + "com.amazonaws.ec2#DescribePrincipalIdFormatRequest": { "type": "structure", "members": { "DryRun": { @@ -40796,30 +40717,23 @@ "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "VolumeIds": { - "target": "com.amazonaws.ec2#VolumeIdStringList", + "Resources": { + "target": "com.amazonaws.ec2#ResourceList", "traits": { - "smithy.api#documentation": "

The IDs of the volumes.

", - "smithy.api#xmlName": "VolumeId" + "smithy.api#documentation": "

The type of resource: bundle |\n conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | instance | internet-gateway |\n network-acl | network-acl-association |\n network-interface | network-interface-attachment |\n prefix-list | reservation | route-table |\n route-table-association | security-group |\n snapshot | subnet |\n subnet-cidr-block-association | volume | vpc\n | vpc-cidr-block-association | vpc-endpoint |\n vpc-peering-connection | vpn-connection | vpn-gateway\n

", + "smithy.api#xmlName": "Resource" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribePrincipalIdFormatMaxResults", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining\n results, make another call with the returned NextToken value.

" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token returned by a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

The maximum number of results (up to a limit of 500) to be returned in a paginated\n request. For more information, see Pagination.

" + "smithy.api#documentation": "

The token to request the next page of results.

" } } }, @@ -40827,22 +40741,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVolumesModificationsResult": { + "com.amazonaws.ec2#DescribePrincipalIdFormatResult": { "type": "structure", "members": { - "VolumesModifications": { - "target": "com.amazonaws.ec2#VolumeModificationList", + "Principals": { + "target": "com.amazonaws.ec2#PrincipalIdFormatList", "traits": { - "aws.protocols#ec2QueryName": "VolumeModificationSet", - "smithy.api#documentation": "

Information about the volume modifications.

", - "smithy.api#xmlName": "volumeModificationSet" + "aws.protocols#ec2QueryName": "PrincipalSet", + "smithy.api#documentation": "

Information about the ID format settings for the ARN.

", + "smithy.api#xmlName": "principalSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null if there are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -40851,45 +40765,51 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVolumesRequest": { + "com.amazonaws.ec2#DescribePublicIpv4Pools": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribePublicIpv4PoolsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribePublicIpv4PoolsResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the specified IPv4 address pools.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "PublicIpv4Pools", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#DescribePublicIpv4PoolsRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" - } - }, - "VolumeIds": { - "target": "com.amazonaws.ec2#VolumeIdStringList", + "PoolIds": { + "target": "com.amazonaws.ec2#PublicIpv4PoolIdStringList", "traits": { - "smithy.api#documentation": "

The volume IDs.

", - "smithy.api#xmlName": "VolumeId" + "smithy.api#documentation": "

The IDs of the address pools.

", + "smithy.api#xmlName": "PoolId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The token for the next page of results.

" } }, "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "target": "com.amazonaws.ec2#PoolMaxResults", "traits": { - "aws.protocols#ec2QueryName": "MaxResults", - "smithy.api#documentation": "

The maximum number of volumes to return for this request. \n This value can be between 5 and 500; if you specify a value larger than 500, only 500 items are returned. \n If this parameter is not used, then all items are returned. You cannot specify this parameter and the\n volume IDs parameter in the same request. For more information, see Pagination.

", - "smithy.api#xmlName": "maxResults" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token returned from a previous paginated request. \n Pagination continues from the end of the items returned from the previous request.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, @@ -40897,22 +40817,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVolumesResult": { + "com.amazonaws.ec2#DescribePublicIpv4PoolsResult": { "type": "structure", "members": { - "Volumes": { - "target": "com.amazonaws.ec2#VolumeList", + "PublicIpv4Pools": { + "target": "com.amazonaws.ec2#PublicIpv4PoolSet", "traits": { - "aws.protocols#ec2QueryName": "VolumeSet", - "smithy.api#documentation": "

Information about the volumes.

", - "smithy.api#xmlName": "volumeSet" + "aws.protocols#ec2QueryName": "PublicIpv4PoolSet", + "smithy.api#documentation": "

Information about the address pools.

", + "smithy.api#xmlName": "publicIpv4PoolSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -40921,192 +40841,197 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVpcAttribute": { + "com.amazonaws.ec2#DescribeRegions": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVpcAttributeRequest" + "target": "com.amazonaws.ec2#DescribeRegionsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVpcAttributeResult" + "target": "com.amazonaws.ec2#DescribeRegionsResult" }, "traits": { - "smithy.api#documentation": "

Describes the specified attribute of the specified VPC. You can specify only one attribute at a time.

", + "smithy.api#documentation": "

Describes the Regions that are enabled for your account, or all Regions.

\n

For a list of the Regions supported by Amazon EC2, see Amazon EC2 service endpoints.

\n

For information about enabling and disabling Regions for your account, see Specify which Amazon Web Services Regions \n your account can use in the Amazon Web Services Account Management Reference Guide.

\n \n

The order of the elements in the response, including those within nested structures,\n might vary. Applications should not assume the elements appear in a particular order.

\n
", "smithy.api#examples": [ { - "title": "To describe the enableDnsSupport attribute", - "documentation": "This example describes the enableDnsSupport attribute. This attribute indicates whether DNS resolution is enabled for the VPC. If this attribute is true, the Amazon DNS server resolves DNS hostnames for your instances to their corresponding IP addresses; otherwise, it does not.", - "input": { - "VpcId": "vpc-a01106c2", - "Attribute": "enableDnsSupport" - }, - "output": { - "VpcId": "vpc-a01106c2", - "EnableDnsSupport": { - "Value": true - } - } - }, - { - "title": "To describe the enableDnsHostnames attribute", - "documentation": "This example describes the enableDnsHostnames attribute. This attribute indicates whether the instances launched in the VPC get DNS hostnames. If this attribute is true, instances in the VPC get DNS hostnames; otherwise, they do not.", - "input": { - "VpcId": "vpc-a01106c2", - "Attribute": "enableDnsHostnames" - }, + "title": "To describe your regions", + "documentation": "This example describes all the regions that are available to you.", "output": { - "VpcId": "vpc-a01106c2", - "EnableDnsHostnames": { - "Value": true - } - } - } - ] - } - }, - "com.amazonaws.ec2#DescribeVpcAttributeRequest": { - "type": "structure", - "members": { - "Attribute": { - "target": "com.amazonaws.ec2#VpcAttributeName", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The VPC attribute.

", - "smithy.api#required": {} - } - }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#required": {} - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "Regions": [ + { + "Endpoint": "ec2.ap-south-1.amazonaws.com", + "RegionName": "ap-south-1" + }, + { + "Endpoint": "ec2.eu-west-1.amazonaws.com", + "RegionName": "eu-west-1" + }, + { + "Endpoint": "ec2.ap-southeast-1.amazonaws.com", + "RegionName": "ap-southeast-1" + }, + { + "Endpoint": "ec2.ap-southeast-2.amazonaws.com", + "RegionName": "ap-southeast-2" + }, + { + "Endpoint": "ec2.eu-central-1.amazonaws.com", + "RegionName": "eu-central-1" + }, + { + "Endpoint": "ec2.ap-northeast-2.amazonaws.com", + "RegionName": "ap-northeast-2" + }, + { + "Endpoint": "ec2.ap-northeast-1.amazonaws.com", + "RegionName": "ap-northeast-1" + }, + { + "Endpoint": "ec2.us-east-1.amazonaws.com", + "RegionName": "us-east-1" + }, + { + "Endpoint": "ec2.sa-east-1.amazonaws.com", + "RegionName": "sa-east-1" + }, + { + "Endpoint": "ec2.us-west-1.amazonaws.com", + "RegionName": "us-west-1" + }, + { + "Endpoint": "ec2.us-west-2.amazonaws.com", + "RegionName": "us-west-2" + } + ] + } } - } - }, - "traits": { - "smithy.api#input": {} + ], + "smithy.test#smokeTests": [ + { + "id": "DescribeRegionsSuccess", + "params": {}, + "vendorParams": { + "region": "us-west-2" + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "expect": { + "success": {} + } + } + ] } }, - "com.amazonaws.ec2#DescribeVpcAttributeResult": { + "com.amazonaws.ec2#DescribeRegionsRequest": { "type": "structure", "members": { - "VpcId": { - "target": "com.amazonaws.ec2#String", + "RegionNames": { + "target": "com.amazonaws.ec2#RegionNameStringList", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#xmlName": "vpcId" + "smithy.api#documentation": "

The names of the Regions. You can specify any Regions, whether they are enabled and disabled for your account.

", + "smithy.api#xmlName": "RegionName" } }, - "EnableDnsHostnames": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "AllRegions": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "EnableDnsHostnames", - "smithy.api#documentation": "

Indicates whether the instances launched in the VPC get DNS hostnames.\n\t\t\t\tIf this attribute is true, instances in the VPC get DNS hostnames;\n\t\t\t\totherwise, they do not.

", - "smithy.api#xmlName": "enableDnsHostnames" + "smithy.api#documentation": "

Indicates whether to display all Regions, including Regions that are disabled for your account.

" } }, - "EnableDnsSupport": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "EnableDnsSupport", - "smithy.api#documentation": "

Indicates whether DNS resolution is enabled for\n\t\t\t\tthe VPC. If this attribute is true, the Amazon DNS server\n\t\t\t\tresolves DNS hostnames for your instances to their corresponding\n\t\t\t\tIP addresses; otherwise, it does not.

", - "smithy.api#xmlName": "enableDnsSupport" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "EnableNetworkAddressUsageMetrics": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "EnableNetworkAddressUsageMetrics", - "smithy.api#documentation": "

Indicates whether Network Address Usage metrics are enabled for your VPC.

", - "smithy.api#xmlName": "enableNetworkAddressUsageMetrics" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVpcClassicLink": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DescribeVpcClassicLinkRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DescribeVpcClassicLinkResult" + "com.amazonaws.ec2#DescribeRegionsResult": { + "type": "structure", + "members": { + "Regions": { + "target": "com.amazonaws.ec2#RegionList", + "traits": { + "aws.protocols#ec2QueryName": "RegionInfo", + "smithy.api#documentation": "

Information about the Regions.

", + "smithy.api#xmlName": "regionInfo" + } + } }, "traits": { - "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Describes the ClassicLink status of the specified VPCs.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupport": { + "com.amazonaws.ec2#DescribeReplaceRootVolumeTasks": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportRequest" + "target": "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportResult" + "target": "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksResult" }, "traits": { - "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Describes the ClassicLink DNS support status of one or more VPCs. If enabled, the DNS\n hostname of a linked EC2-Classic instance resolves to its private IP address when\n addressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname\n of an instance in a VPC resolves to its private IP address when addressed from a linked\n EC2-Classic instance.

", + "smithy.api#documentation": "

Describes a root volume replacement task. For more information, see \n Replace a root volume in the Amazon EC2 User Guide.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "Vpcs", + "items": "ReplaceRootVolumeTasks", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportMaxResults": { + "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksMaxResults": { "type": "integer", "traits": { "smithy.api#range": { - "min": 5, - "max": 255 - } - } - }, - "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportNextToken": { - "type": "string", - "traits": { - "smithy.api#length": { "min": 1, - "max": 1024 + "max": 50 } } }, - "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportRequest": { + "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksRequest": { "type": "structure", "members": { + "ReplaceRootVolumeTaskIds": { + "target": "com.amazonaws.ec2#ReplaceRootVolumeTaskIds", + "traits": { + "smithy.api#documentation": "

The ID of the root volume replacement task to view.

", + "smithy.api#xmlName": "ReplaceRootVolumeTaskId" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

Filter to use:

\n ", + "smithy.api#xmlName": "Filter" + } + }, "MaxResults": { - "target": "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportMaxResults", + "target": "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksMaxResults", "traits": { - "aws.protocols#ec2QueryName": "MaxResults", - "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

", - "smithy.api#xmlName": "maxResults" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output. \n\tFor more information, see Pagination.

" } }, "NextToken": { - "target": "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportNextToken", + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" } }, - "VpcIds": { - "target": "com.amazonaws.ec2#VpcClassicLinkIdList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The IDs of the VPCs.

", - "smithy.api#xmlName": "VpcIds" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -41114,23 +41039,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportResult": { + "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksResult": { "type": "structure", "members": { - "NextToken": { - "target": "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportNextToken", + "ReplaceRootVolumeTasks": { + "target": "com.amazonaws.ec2#ReplaceRootVolumeTasks", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "ReplaceRootVolumeTaskSet", + "smithy.api#documentation": "

Information about the root volume replacement task.

", + "smithy.api#xmlName": "replaceRootVolumeTaskSet" } }, - "Vpcs": { - "target": "com.amazonaws.ec2#ClassicLinkDnsSupportList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Vpcs", - "smithy.api#documentation": "

Information about the ClassicLink DNS support status of the VPCs.

", - "smithy.api#xmlName": "vpcs" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -41138,342 +41063,425 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVpcClassicLinkRequest": { + "com.amazonaws.ec2#DescribeReservedInstances": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeReservedInstancesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeReservedInstancesResult" + }, + "traits": { + "smithy.api#documentation": "

Describes one or more of the Reserved Instances that you purchased.

\n

For more information about Reserved Instances, see Reserved\n Instances in the Amazon EC2 User Guide.

\n \n

The order of the elements in the response, including those within nested structures,\n might vary. Applications should not assume the elements appear in a particular order.

\n
" + } + }, + "com.amazonaws.ec2#DescribeReservedInstancesListings": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeReservedInstancesListingsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeReservedInstancesListingsResult" + }, + "traits": { + "smithy.api#documentation": "

Describes your account's Reserved Instance listings in the Reserved Instance\n Marketplace.

\n

The Reserved Instance Marketplace matches sellers who want to resell Reserved Instance\n capacity that they no longer need with buyers who want to purchase additional capacity.\n Reserved Instances bought and sold through the Reserved Instance Marketplace work like any\n other Reserved Instances.

\n

As a seller, you choose to list some or all of your Reserved Instances, and you specify\n the upfront price to receive for them. Your Reserved Instances are then listed in the Reserved\n Instance Marketplace and are available for purchase.

\n

As a buyer, you specify the configuration of the Reserved Instance to purchase, and the\n Marketplace matches what you're searching for with what's available. The Marketplace first\n sells the lowest priced Reserved Instances to you, and continues to sell available Reserved\n Instance listings to you until your demand is met. You are charged based on the total price of\n all of the listings that you purchase.

\n

For more information, see Sell in the Reserved Instance\n Marketplace in the Amazon EC2 User Guide.

\n \n

The order of the elements in the response, including those within nested structures,\n might vary. Applications should not assume the elements appear in a particular order.

\n
" + } + }, + "com.amazonaws.ec2#DescribeReservedInstancesListingsRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "ReservedInstancesId": { + "target": "com.amazonaws.ec2#ReservationId", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "aws.protocols#ec2QueryName": "ReservedInstancesId", + "smithy.api#documentation": "

One or more Reserved Instance IDs.

", + "smithy.api#xmlName": "reservedInstancesId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ReservedInstancesListingId": { + "target": "com.amazonaws.ec2#ReservedInstancesListingId", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "ReservedInstancesListingId", + "smithy.api#documentation": "

One or more Reserved Instance listing IDs.

", + "smithy.api#xmlName": "reservedInstancesListingId" } }, - "VpcIds": { - "target": "com.amazonaws.ec2#VpcClassicLinkIdList", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The VPCs for which you want to describe the ClassicLink status.

", - "smithy.api#xmlName": "VpcId" + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DescribeReservedInstancesListings.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVpcClassicLinkResult": { + "com.amazonaws.ec2#DescribeReservedInstancesListingsResult": { "type": "structure", "members": { - "Vpcs": { - "target": "com.amazonaws.ec2#VpcClassicLinkList", + "ReservedInstancesListings": { + "target": "com.amazonaws.ec2#ReservedInstancesListingList", "traits": { - "aws.protocols#ec2QueryName": "VpcSet", - "smithy.api#documentation": "

The ClassicLink status of the VPCs.

", - "smithy.api#xmlName": "vpcSet" + "aws.protocols#ec2QueryName": "ReservedInstancesListingsSet", + "smithy.api#documentation": "

Information about the Reserved Instance listing.

", + "smithy.api#xmlName": "reservedInstancesListingsSet" } } }, "traits": { + "smithy.api#documentation": "

Contains the output of DescribeReservedInstancesListings.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVpcEndpointConnectionNotifications": { + "com.amazonaws.ec2#DescribeReservedInstancesModifications": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVpcEndpointConnectionNotificationsRequest" + "target": "com.amazonaws.ec2#DescribeReservedInstancesModificationsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVpcEndpointConnectionNotificationsResult" + "target": "com.amazonaws.ec2#DescribeReservedInstancesModificationsResult" }, "traits": { - "smithy.api#documentation": "

Describes the connection notifications for VPC endpoints and VPC endpoint\n services.

", + "smithy.api#documentation": "

Describes the modifications made to your Reserved Instances. If no parameter is specified,\n information about all your Reserved Instances modification requests is returned. If a\n modification ID is specified, only information about the specific modification is\n returned.

\n

For more information, see Modify Reserved Instances in the\n Amazon EC2 User Guide.

\n \n

The order of the elements in the response, including those within nested structures,\n might vary. Applications should not assume the elements appear in a particular order.

\n
", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "ConnectionNotificationSet", - "pageSize": "MaxResults" + "items": "ReservedInstancesModifications" } } }, - "com.amazonaws.ec2#DescribeVpcEndpointConnectionNotificationsRequest": { + "com.amazonaws.ec2#DescribeReservedInstancesModificationsRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ReservedInstancesModificationIds": { + "target": "com.amazonaws.ec2#ReservedInstancesModificationIdStringList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

IDs for the submitted modification request.

", + "smithy.api#xmlName": "ReservedInstancesModificationId" } }, - "ConnectionNotificationId": { - "target": "com.amazonaws.ec2#ConnectionNotificationId", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The ID of the notification.

" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to retrieve the next page of results.

", + "smithy.api#xmlName": "nextToken" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#documentation": "

One or more filters.

\n ", "smithy.api#xmlName": "Filter" } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining\n results, make another request with the returned NextToken value.

" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The token to request the next page of results.

" - } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DescribeReservedInstancesModifications.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVpcEndpointConnectionNotificationsResult": { + "com.amazonaws.ec2#DescribeReservedInstancesModificationsResult": { "type": "structure", "members": { - "ConnectionNotificationSet": { - "target": "com.amazonaws.ec2#ConnectionNotificationSet", - "traits": { - "aws.protocols#ec2QueryName": "ConnectionNotificationSet", - "smithy.api#documentation": "

The notifications.

", - "smithy.api#xmlName": "connectionNotificationSet" - } - }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is\n null when there are no more results to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null\n when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } + }, + "ReservedInstancesModifications": { + "target": "com.amazonaws.ec2#ReservedInstancesModificationList", + "traits": { + "aws.protocols#ec2QueryName": "ReservedInstancesModificationsSet", + "smithy.api#documentation": "

The Reserved Instance modification information.

", + "smithy.api#xmlName": "reservedInstancesModificationsSet" + } } }, "traits": { + "smithy.api#documentation": "

Contains the output of DescribeReservedInstancesModifications.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVpcEndpointConnections": { + "com.amazonaws.ec2#DescribeReservedInstancesOfferings": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVpcEndpointConnectionsRequest" + "target": "com.amazonaws.ec2#DescribeReservedInstancesOfferingsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVpcEndpointConnectionsResult" + "target": "com.amazonaws.ec2#DescribeReservedInstancesOfferingsResult" }, "traits": { - "smithy.api#documentation": "

Describes the VPC endpoint connections to your VPC endpoint services, including any\n endpoints that are pending your acceptance.

", + "smithy.api#documentation": "

Describes Reserved Instance offerings that are available for purchase. With Reserved\n Instances, you purchase the right to launch instances for a period of time. During that time\n period, you do not receive insufficient capacity errors, and you pay a lower usage rate than\n the rate charged for On-Demand instances for the actual time used.

\n

If you have listed your own Reserved Instances for sale in the Reserved Instance\n Marketplace, they will be excluded from these results. This is to ensure that you do not\n purchase your own Reserved Instances.

\n

For more information, see Sell in the Reserved Instance\n Marketplace in the Amazon EC2 User Guide.

\n \n

The order of the elements in the response, including those within nested structures,\n might vary. Applications should not assume the elements appear in a particular order.

\n
", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "VpcEndpointConnections", + "items": "ReservedInstancesOfferings", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeVpcEndpointConnectionsRequest": { + "com.amazonaws.ec2#DescribeReservedInstancesOfferingsRequest": { "type": "structure", "members": { + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The Availability Zone in which the Reserved Instance can be used.

\n

Either AvailabilityZone or AvailabilityZoneId can be specified,\n but not both.

" + } + }, + "IncludeMarketplace": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Include Reserved Instance Marketplace offerings in the response.

" + } + }, + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", + "traits": { + "smithy.api#documentation": "

The instance type that the reservation will cover (for example, m1.small).\n For more information, see Amazon EC2 instance types in the\n Amazon EC2 User Guide.

" + } + }, + "MaxDuration": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "smithy.api#documentation": "

The maximum duration (in seconds) to filter when searching for offerings.

\n

Default: 94608000 (3 years)

" + } + }, + "MaxInstanceCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The maximum number of instances to filter when searching for offerings.

\n

Default: 20

" + } + }, + "MinDuration": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "smithy.api#documentation": "

The minimum duration (in seconds) to filter when searching for offerings.

\n

Default: 2592000 (1 month)

" + } + }, + "OfferingClass": { + "target": "com.amazonaws.ec2#OfferingClassType", + "traits": { + "smithy.api#documentation": "

The offering class of the Reserved Instance. Can be standard or\n convertible.

" + } + }, + "ProductDescription": { + "target": "com.amazonaws.ec2#RIProductDescription", + "traits": { + "smithy.api#documentation": "

The Reserved Instance product platform description. Instances that include (Amazon\n VPC) in the description are for use with Amazon VPC.

" + } + }, + "ReservedInstancesOfferingIds": { + "target": "com.amazonaws.ec2#ReservedInstancesOfferingIdStringList", + "traits": { + "smithy.api#documentation": "

One or more Reserved Instances offering IDs.

", + "smithy.api#xmlName": "ReservedInstancesOfferingId" + } + }, + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#AvailabilityZoneId", + "traits": { + "smithy.api#documentation": "

The ID of the Availability Zone.

\n

Either AvailabilityZone or AvailabilityZoneId can be specified,\n but not both.

" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making\n the request, and provides an error response. If you have the required permissions, the error\n response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#documentation": "

One or more filters.

\n ", "smithy.api#xmlName": "Filter" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "InstanceTenancy": { + "target": "com.amazonaws.ec2#Tenancy", "traits": { - "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining\n results of the initial request can be seen by sending another request with the returned\n NextToken value. This value can be between 5 and 1,000; if\n MaxResults is given a value larger than 1,000, only 1,000 results are\n returned.

" + "aws.protocols#ec2QueryName": "InstanceTenancy", + "smithy.api#documentation": "

The tenancy of the instances covered by the reservation. A Reserved Instance with a\n tenancy of dedicated is applied to instances that run in a VPC on single-tenant\n hardware (i.e., Dedicated Instances).

\n

\n Important: The host value cannot be used with\n this parameter. Use the default or dedicated values only.

\n

Default: default\n

", + "smithy.api#xmlName": "instanceTenancy" + } + }, + "OfferingType": { + "target": "com.amazonaws.ec2#OfferingTypeValues", + "traits": { + "aws.protocols#ec2QueryName": "OfferingType", + "smithy.api#documentation": "

The Reserved Instance offering type. If you are using tools that predate the 2011-11-01\n API version, you only have access to the Medium Utilization Reserved Instance\n offering type.

", + "smithy.api#xmlName": "offeringType" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token to retrieve the next page of results.

" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to retrieve the next page of results.

", + "smithy.api#xmlName": "nextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "MaxResults", + "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining\n results of the initial request can be seen by sending another request with the returned\n NextToken value. The maximum is 100.

\n

Default: 100

", + "smithy.api#xmlName": "maxResults" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DescribeReservedInstancesOfferings.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVpcEndpointConnectionsResult": { + "com.amazonaws.ec2#DescribeReservedInstancesOfferingsResult": { "type": "structure", "members": { - "VpcEndpointConnections": { - "target": "com.amazonaws.ec2#VpcEndpointConnectionSet", - "traits": { - "aws.protocols#ec2QueryName": "VpcEndpointConnectionSet", - "smithy.api#documentation": "

Information about the VPC endpoint connections.

", - "smithy.api#xmlName": "vpcEndpointConnectionSet" - } - }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null\n when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } + }, + "ReservedInstancesOfferings": { + "target": "com.amazonaws.ec2#ReservedInstancesOfferingList", + "traits": { + "aws.protocols#ec2QueryName": "ReservedInstancesOfferingsSet", + "smithy.api#documentation": "

A list of Reserved Instances offerings.

", + "smithy.api#xmlName": "reservedInstancesOfferingsSet" + } } }, "traits": { + "smithy.api#documentation": "

Contains the output of DescribeReservedInstancesOfferings.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVpcEndpointServiceConfigurations": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DescribeVpcEndpointServiceConfigurationsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DescribeVpcEndpointServiceConfigurationsResult" - }, - "traits": { - "smithy.api#documentation": "

Describes the VPC endpoint service configurations in your account (your services).

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "ServiceConfigurations", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#DescribeVpcEndpointServiceConfigurationsRequest": { + "com.amazonaws.ec2#DescribeReservedInstancesRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "OfferingClass": { + "target": "com.amazonaws.ec2#OfferingClassType", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Describes whether the Reserved Instance is Standard or Convertible.

" } }, - "ServiceIds": { - "target": "com.amazonaws.ec2#VpcEndpointServiceIdList", + "ReservedInstancesIds": { + "target": "com.amazonaws.ec2#ReservedInstancesIdStringList", "traits": { - "smithy.api#documentation": "

The IDs of the endpoint services.

", - "smithy.api#xmlName": "ServiceId" + "smithy.api#documentation": "

One or more Reserved Instance IDs.

\n

Default: Describes all your Reserved Instances, or only those otherwise specified.

", + "smithy.api#xmlName": "ReservedInstancesId" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making\n the request, and provides an error response. If you have the required permissions, the error\n response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining\n results of the initial request can be seen by sending another request with the returned\n NextToken value. This value can be between 5 and 1,000; if\n MaxResults is given a value larger than 1,000, only 1,000 results are\n returned.

" + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "OfferingType": { + "target": "com.amazonaws.ec2#OfferingTypeValues", "traits": { - "smithy.api#documentation": "

The token to retrieve the next page of results.

" + "aws.protocols#ec2QueryName": "OfferingType", + "smithy.api#documentation": "

The Reserved Instance offering type. If you are using tools that predate the 2011-11-01\n API version, you only have access to the Medium Utilization Reserved Instance\n offering type.

", + "smithy.api#xmlName": "offeringType" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DescribeReservedInstances.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVpcEndpointServiceConfigurationsResult": { + "com.amazonaws.ec2#DescribeReservedInstancesResult": { "type": "structure", "members": { - "ServiceConfigurations": { - "target": "com.amazonaws.ec2#ServiceConfigurationSet", + "ReservedInstances": { + "target": "com.amazonaws.ec2#ReservedInstancesList", "traits": { - "aws.protocols#ec2QueryName": "ServiceConfigurationSet", - "smithy.api#documentation": "

Information about the services.

", - "smithy.api#xmlName": "serviceConfigurationSet" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "ReservedInstancesSet", + "smithy.api#documentation": "

A list of Reserved Instances.

", + "smithy.api#xmlName": "reservedInstancesSet" } } }, "traits": { + "smithy.api#documentation": "

Contains the output for DescribeReservedInstances.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVpcEndpointServicePermissions": { + "com.amazonaws.ec2#DescribeRouteServerEndpoints": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVpcEndpointServicePermissionsRequest" + "target": "com.amazonaws.ec2#DescribeRouteServerEndpointsRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVpcEndpointServicePermissionsResult" + "target": "com.amazonaws.ec2#DescribeRouteServerEndpointsResult" }, "traits": { - "smithy.api#documentation": "

Describes the principals (service consumers) that are permitted to discover your VPC\n endpoint service.

", + "smithy.api#documentation": "

Describes one or more route server endpoints.

\n

A route server endpoint is an Amazon Web Services-managed component inside a subnet that facilitates BGP (Border Gateway Protocol) connections between your route server and your BGP peers.

\n

For more information see Dynamic routing in your VPC with VPC Route Server in the Amazon VPC User Guide.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "AllowedPrincipals", + "items": "RouteServerEndpoints", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeVpcEndpointServicePermissionsRequest": { + "com.amazonaws.ec2#DescribeRouteServerEndpointsRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "RouteServerEndpointIds": { + "target": "com.amazonaws.ec2#RouteServerEndpointIdsList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The IDs of the route server endpoints to describe.

", + "smithy.api#xmlName": "RouteServerEndpointId" } }, - "ServiceId": { - "target": "com.amazonaws.ec2#VpcEndpointServiceId", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the service.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "MaxResults": { + "target": "com.amazonaws.ec2#RouteServerMaxResults", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The maximum number of results to return with a single call.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining\n results of the initial request can be seen by sending another request with the returned\n NextToken value. This value can be between 5 and 1,000; if\n MaxResults is given a value larger than 1,000, only 1,000 results are\n returned.

" + "smithy.api#documentation": "

One or more filters to apply to the describe request.

", + "smithy.api#xmlName": "Filter" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The token to retrieve the next page of results.

" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -41481,15 +41489,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVpcEndpointServicePermissionsResult": { + "com.amazonaws.ec2#DescribeRouteServerEndpointsResult": { "type": "structure", "members": { - "AllowedPrincipals": { - "target": "com.amazonaws.ec2#AllowedPrincipalSet", + "RouteServerEndpoints": { + "target": "com.amazonaws.ec2#RouteServerEndpointsList", "traits": { - "aws.protocols#ec2QueryName": "AllowedPrincipals", - "smithy.api#documentation": "

Information about the allowed principals.

", - "smithy.api#xmlName": "allowedPrincipals" + "aws.protocols#ec2QueryName": "RouteServerEndpointSet", + "smithy.api#documentation": "

Information about the described route server endpoints.

", + "smithy.api#xmlName": "routeServerEndpointSet" } }, "NextToken": { @@ -41505,51 +41513,57 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVpcEndpointServices": { + "com.amazonaws.ec2#DescribeRouteServerPeers": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVpcEndpointServicesRequest" + "target": "com.amazonaws.ec2#DescribeRouteServerPeersRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVpcEndpointServicesResult" + "target": "com.amazonaws.ec2#DescribeRouteServerPeersResult" }, "traits": { - "smithy.api#documentation": "

Describes available services to which you can create a VPC endpoint.

\n

When the service provider and the consumer have different accounts in multiple\n Availability Zones, and the consumer views the VPC endpoint service information, the\n response only includes the common Availability Zones. For example, when the service\n provider account uses us-east-1a and us-east-1c and the\n consumer uses us-east-1a and us-east-1b, the response includes\n the VPC endpoint services in the common Availability Zone,\n us-east-1a.

" + "smithy.api#documentation": "

Describes one or more route server peers.

\n

A route server peer is a session between a route server endpoint and the device deployed in Amazon Web Services (such as a firewall appliance or other network security function running on an EC2 instance). The device must meet these requirements:

\n \n

For more information see Dynamic routing in your VPC with VPC Route Server in the Amazon VPC User Guide.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "RouteServerPeers", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DescribeVpcEndpointServicesRequest": { + "com.amazonaws.ec2#DescribeRouteServerPeersRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "RouteServerPeerIds": { + "target": "com.amazonaws.ec2#RouteServerPeerIdsList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The IDs of the route server peers to describe.

", + "smithy.api#xmlName": "RouteServerPeerId" } }, - "ServiceNames": { - "target": "com.amazonaws.ec2#ValueStringList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The service names.

", - "smithy.api#xmlName": "ServiceName" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "MaxResults": { + "target": "com.amazonaws.ec2#RouteServerMaxResults", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The maximum number of results to return with a single call.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

\n

Constraint: If the value is greater than 1,000, we return only 1,000 items.

" + "smithy.api#documentation": "

One or more filters to apply to the describe request.

", + "smithy.api#xmlName": "Filter" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a prior call.)

" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -41557,30 +41571,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVpcEndpointServicesResult": { + "com.amazonaws.ec2#DescribeRouteServerPeersResult": { "type": "structure", "members": { - "ServiceNames": { - "target": "com.amazonaws.ec2#ValueStringList", - "traits": { - "aws.protocols#ec2QueryName": "ServiceNameSet", - "smithy.api#documentation": "

The supported services.

", - "smithy.api#xmlName": "serviceNameSet" - } - }, - "ServiceDetails": { - "target": "com.amazonaws.ec2#ServiceDetailSet", + "RouteServerPeers": { + "target": "com.amazonaws.ec2#RouteServerPeersList", "traits": { - "aws.protocols#ec2QueryName": "ServiceDetailSet", - "smithy.api#documentation": "

Information about the service.

", - "smithy.api#xmlName": "serviceDetailSet" + "aws.protocols#ec2QueryName": "RouteServerPeerSet", + "smithy.api#documentation": "

Information about the described route server peers.

", + "smithy.api#xmlName": "routeServerPeerSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -41589,57 +41595,57 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVpcEndpoints": { + "com.amazonaws.ec2#DescribeRouteServers": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVpcEndpointsRequest" + "target": "com.amazonaws.ec2#DescribeRouteServersRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVpcEndpointsResult" + "target": "com.amazonaws.ec2#DescribeRouteServersResult" }, "traits": { - "smithy.api#documentation": "

Describes your VPC endpoints.

", + "smithy.api#documentation": "

Describes one or more route servers.

\n

Amazon VPC Route Server simplifies routing for traffic between workloads that are deployed within a VPC and its internet gateways. With this feature, \nVPC Route Server dynamically updates VPC and internet gateway route tables with your preferred IPv4 or IPv6 routes to achieve routing fault tolerance for those workloads. This enables you to automatically reroute traffic within a VPC, which increases the manageability of VPC routing and interoperability with third-party workloads.

\n

Route server supports the follow route table types:

\n \n

Route server does not support route tables associated with virtual private gateways. To propagate routes into a transit gateway route table, use Transit Gateway Connect.

\n

For more information see Dynamic routing in your VPC with VPC Route Server in the Amazon VPC User Guide.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "VpcEndpoints", + "items": "RouteServers", "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeVpcEndpointsRequest": { + "com.amazonaws.ec2#DescribeRouteServersRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "RouteServerIds": { + "target": "com.amazonaws.ec2#RouteServerIdsList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The IDs of the route servers to describe.

", + "smithy.api#xmlName": "RouteServerId" } }, - "VpcEndpointIds": { - "target": "com.amazonaws.ec2#VpcEndpointIdList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IDs of the VPC endpoints.

", - "smithy.api#xmlName": "VpcEndpointId" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "MaxResults": { + "target": "com.amazonaws.ec2#RouteServerMaxResults", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The maximum number of results to return with a single call.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

\n

Constraint: If the value is greater than 1,000, we return only 1,000 items.

" + "smithy.api#documentation": "

One or more filters to apply to the describe request.

", + "smithy.api#xmlName": "Filter" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a prior call.)

" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -41647,22 +41653,22 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVpcEndpointsResult": { + "com.amazonaws.ec2#DescribeRouteServersResult": { "type": "structure", "members": { - "VpcEndpoints": { - "target": "com.amazonaws.ec2#VpcEndpointSet", + "RouteServers": { + "target": "com.amazonaws.ec2#RouteServersList", "traits": { - "aws.protocols#ec2QueryName": "VpcEndpointSet", - "smithy.api#documentation": "

Information about the endpoints.

", - "smithy.api#xmlName": "vpcEndpointSet" + "aws.protocols#ec2QueryName": "RouteServerSet", + "smithy.api#documentation": "

Information about the described route servers.

", + "smithy.api#xmlName": "routeServerSet" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } } @@ -41671,84 +41677,81 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVpcPeeringConnections": { + "com.amazonaws.ec2#DescribeRouteTables": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVpcPeeringConnectionsRequest" + "target": "com.amazonaws.ec2#DescribeRouteTablesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVpcPeeringConnectionsResult" + "target": "com.amazonaws.ec2#DescribeRouteTablesResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your VPC peering connections.

", + "smithy.api#documentation": "

Describes your route tables. The default is to describe all your route tables. \n Alternatively, you can specify specific route table IDs or filter the results to\n include only the route tables that match specific criteria.

\n

Each subnet in your VPC must be associated with a route table. If a subnet is not explicitly associated with any route table, it is implicitly associated with the main route table. This command does not return the subnet ID for implicit associations.

\n

For more information, see Route tables in the\n\t\t\t\tAmazon VPC User Guide.

", + "smithy.api#examples": [ + { + "title": "To describe a route table", + "documentation": "This example describes the specified route table.", + "input": { + "RouteTableIds": [ + "rtb-1f382e7d" + ] + }, + "output": { + "RouteTables": [ + { + "Associations": [ + { + "RouteTableAssociationId": "rtbassoc-d8ccddba", + "Main": true, + "RouteTableId": "rtb-1f382e7d" + } + ], + "RouteTableId": "rtb-1f382e7d", + "VpcId": "vpc-a01106c2", + "PropagatingVgws": [], + "Tags": [], + "Routes": [ + { + "GatewayId": "local", + "DestinationCidrBlock": "10.0.0.0/16", + "State": "active" + } + ] + } + ] + } + } + ], "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "VpcPeeringConnections", + "items": "RouteTables", "pageSize": "MaxResults" - }, - "smithy.api#suppress": [ - "WaitableTraitInvalidErrorType" - ], - "smithy.waiters#waitable": { - "VpcPeeringConnectionDeleted": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "VpcPeeringConnections[].Status.Code", - "expected": "deleted", - "comparator": "allStringEquals" - } - } - }, - { - "state": "success", - "matcher": { - "errorType": "InvalidVpcPeeringConnectionID.NotFound" - } - } - ], - "minDelay": 15 - }, - "VpcPeeringConnectionExists": { - "acceptors": [ - { - "state": "success", - "matcher": { - "success": true - } - }, - { - "state": "retry", - "matcher": { - "errorType": "InvalidVpcPeeringConnectionID.NotFound" - } - } - ], - "minDelay": 15 - } } } }, - "com.amazonaws.ec2#DescribeVpcPeeringConnectionsMaxResults": { + "com.amazonaws.ec2#DescribeRouteTablesMaxResults": { "type": "integer", "traits": { "smithy.api#range": { "min": 5, - "max": 1000 + "max": 100 } } }, - "com.amazonaws.ec2#DescribeVpcPeeringConnectionsRequest": { + "com.amazonaws.ec2#DescribeRouteTablesRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeRouteTablesMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" } }, "DryRun": { @@ -41759,23 +41762,18 @@ "smithy.api#xmlName": "dryRun" } }, - "VpcPeeringConnectionIds": { - "target": "com.amazonaws.ec2#VpcPeeringConnectionIdList", - "traits": { - "smithy.api#documentation": "

The IDs of the VPC peering connections.

\n

Default: Describes all your VPC peering connections.

", - "smithy.api#xmlName": "VpcPeeringConnectionId" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "RouteTableIds": { + "target": "com.amazonaws.ec2#RouteTableIdStringList", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

The IDs of the route tables.

", + "smithy.api#xmlName": "RouteTableId" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeVpcPeeringConnectionsMaxResults", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, @@ -41783,15 +41781,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVpcPeeringConnectionsResult": { + "com.amazonaws.ec2#DescribeRouteTablesResult": { "type": "structure", "members": { - "VpcPeeringConnections": { - "target": "com.amazonaws.ec2#VpcPeeringConnectionList", + "RouteTables": { + "target": "com.amazonaws.ec2#RouteTableList", "traits": { - "aws.protocols#ec2QueryName": "VpcPeeringConnectionSet", - "smithy.api#documentation": "

Information about the VPC peering connections.

", - "smithy.api#xmlName": "vpcPeeringConnectionSet" + "aws.protocols#ec2QueryName": "RouteTableSet", + "smithy.api#documentation": "

Information about the route tables.

", + "smithy.api#xmlName": "routeTableSet" } }, "NextToken": { @@ -41804,466 +41802,510 @@ } }, "traits": { + "smithy.api#documentation": "

Contains the output of DescribeRouteTables.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVpcs": { + "com.amazonaws.ec2#DescribeScheduledInstanceAvailability": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVpcsRequest" + "target": "com.amazonaws.ec2#DescribeScheduledInstanceAvailabilityRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVpcsResult" + "target": "com.amazonaws.ec2#DescribeScheduledInstanceAvailabilityResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your VPCs.

", - "smithy.api#examples": [ - { - "title": "To describe a VPC", - "documentation": "This example describes the specified VPC.", - "input": { - "VpcIds": [ - "vpc-a01106c2" - ] - }, - "output": { - "Vpcs": [ - { - "VpcId": "vpc-a01106c2", - "InstanceTenancy": "default", - "Tags": [ - { - "Value": "MyVPC", - "Key": "Name" - } - ], - "State": "available", - "DhcpOptionsId": "dopt-7a8b9c2d", - "CidrBlock": "10.0.0.0/16", - "IsDefault": false - } - ] - } - } - ], + "smithy.api#documentation": "

Finds available schedules that meet the specified criteria.

\n

You can search for an available schedule no more than 3 months in advance. You must meet the minimum required duration of 1,200 hours per year. For example, the minimum daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the minimum monthly schedule is 100 hours.

\n

After you find a schedule that meets your needs, call PurchaseScheduledInstances\n to purchase Scheduled Instances with that schedule.

", "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "Vpcs", + "items": "ScheduledInstanceAvailabilitySet", "pageSize": "MaxResults" - }, - "smithy.api#suppress": [ - "WaitableTraitInvalidErrorType" - ], - "smithy.waiters#waitable": { - "VpcAvailable": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "Vpcs[].State", - "expected": "available", - "comparator": "allStringEquals" - } - } - } - ], - "minDelay": 15 - }, - "VpcExists": { - "acceptors": [ - { - "state": "success", - "matcher": { - "success": true - } - }, - { - "state": "retry", - "matcher": { - "errorType": "InvalidVpcID.NotFound" - } - } - ], - "minDelay": 1 - } } } }, - "com.amazonaws.ec2#DescribeVpcsMaxResults": { + "com.amazonaws.ec2#DescribeScheduledInstanceAvailabilityMaxResults": { "type": "integer", "traits": { "smithy.api#range": { "min": 5, - "max": 1000 + "max": 300 } } }, - "com.amazonaws.ec2#DescribeVpcsRequest": { + "com.amazonaws.ec2#DescribeScheduledInstanceAvailabilityRequest": { "type": "structure", "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#documentation": "

The filters.

\n ", "smithy.api#xmlName": "Filter" } }, - "VpcIds": { - "target": "com.amazonaws.ec2#VpcIdStringList", + "FirstSlotStartTimeRange": { + "target": "com.amazonaws.ec2#SlotDateTimeRangeRequest", "traits": { - "smithy.api#documentation": "

The IDs of the VPCs.

\n

Default: Describes all your VPCs.

", - "smithy.api#xmlName": "VpcId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The time period for the first schedule to start.

", + "smithy.api#required": {} } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeScheduledInstanceAvailabilityMaxResults", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The maximum number of results to return in a single call. \n This value can be between 5 and 300. The default value is 300.\n To retrieve the remaining results, make another call with the returned\n NextToken value.

" + } + }, + "MaxSlotDurationInHours": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The maximum available duration, in hours. This value must be greater than MinSlotDurationInHours\n and less than 1,720.

" + } + }, + "MinSlotDurationInHours": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The minimum available duration, in hours. The minimum required duration is 1,200 hours per year. For example, the minimum daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the minimum monthly schedule is 100 hours.

" } }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

The token for the next set of results.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#DescribeVpcsMaxResults", + "Recurrence": { + "target": "com.amazonaws.ec2#ScheduledInstanceRecurrenceRequest", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The schedule recurrence.

", + "smithy.api#required": {} } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DescribeScheduledInstanceAvailability.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVpcsResult": { + "com.amazonaws.ec2#DescribeScheduledInstanceAvailabilityResult": { "type": "structure", "members": { - "Vpcs": { - "target": "com.amazonaws.ec2#VpcList", - "traits": { - "aws.protocols#ec2QueryName": "VpcSet", - "smithy.api#documentation": "

Information about one or more VPCs.

", - "smithy.api#xmlName": "vpcSet" - } - }, "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "smithy.api#documentation": "

The token required to retrieve the next set of results. This value is null when there are no more results to return.

", "smithy.api#xmlName": "nextToken" } + }, + "ScheduledInstanceAvailabilitySet": { + "target": "com.amazonaws.ec2#ScheduledInstanceAvailabilitySet", + "traits": { + "aws.protocols#ec2QueryName": "ScheduledInstanceAvailabilitySet", + "smithy.api#documentation": "

Information about the available Scheduled Instances.

", + "smithy.api#xmlName": "scheduledInstanceAvailabilitySet" + } } }, "traits": { + "smithy.api#documentation": "

Contains the output of DescribeScheduledInstanceAvailability.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVpnConnections": { + "com.amazonaws.ec2#DescribeScheduledInstances": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVpnConnectionsRequest" + "target": "com.amazonaws.ec2#DescribeScheduledInstancesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVpnConnectionsResult" + "target": "com.amazonaws.ec2#DescribeScheduledInstancesResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your VPN connections.

\n

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN\n User Guide.

", - "smithy.waiters#waitable": { - "VpnConnectionAvailable": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "VpnConnections[].State", - "expected": "available", - "comparator": "allStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "VpnConnections[].State", - "expected": "deleting", - "comparator": "anyStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "VpnConnections[].State", - "expected": "deleted", - "comparator": "anyStringEquals" - } - } - } - ], - "minDelay": 15 - }, - "VpnConnectionDeleted": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "VpnConnections[].State", - "expected": "deleted", - "comparator": "allStringEquals" - } - } - }, - { - "state": "failure", - "matcher": { - "output": { - "path": "VpnConnections[].State", - "expected": "pending", - "comparator": "anyStringEquals" - } - } - } - ], - "minDelay": 15 - } + "smithy.api#documentation": "

Describes the specified Scheduled Instances or all your Scheduled Instances.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "ScheduledInstanceSet", + "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DescribeVpnConnectionsRequest": { + "com.amazonaws.ec2#DescribeScheduledInstancesRequest": { "type": "structure", "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#documentation": "

The filters.

\n ", "smithy.api#xmlName": "Filter" } }, - "VpnConnectionIds": { - "target": "com.amazonaws.ec2#VpnConnectionIdStringList", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

One or more VPN connection IDs.

\n

Default: Describes your VPN connections.

", - "smithy.api#xmlName": "VpnConnectionId" + "smithy.api#documentation": "

The maximum number of results to return in a single call. \n This value can be between 5 and 300. The default value is 100.\n To retrieve the remaining results, make another call with the returned\n NextToken value.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The token for the next set of results.

" + } + }, + "ScheduledInstanceIds": { + "target": "com.amazonaws.ec2#ScheduledInstanceIdRequestSet", + "traits": { + "smithy.api#documentation": "

The Scheduled Instance IDs.

", + "smithy.api#xmlName": "ScheduledInstanceId" + } + }, + "SlotStartTimeRange": { + "target": "com.amazonaws.ec2#SlotStartTimeRangeRequest", + "traits": { + "smithy.api#documentation": "

The time period for the first schedule to start.

" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeVpnConnections.

", + "smithy.api#documentation": "

Contains the parameters for DescribeScheduledInstances.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVpnConnectionsResult": { + "com.amazonaws.ec2#DescribeScheduledInstancesResult": { "type": "structure", "members": { - "VpnConnections": { - "target": "com.amazonaws.ec2#VpnConnectionList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "VpnConnectionSet", - "smithy.api#documentation": "

Information about one or more VPN connections.

", - "smithy.api#xmlName": "vpnConnectionSet" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token required to retrieve the next set of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" + } + }, + "ScheduledInstanceSet": { + "target": "com.amazonaws.ec2#ScheduledInstanceSet", + "traits": { + "aws.protocols#ec2QueryName": "ScheduledInstanceSet", + "smithy.api#documentation": "

Information about the Scheduled Instances.

", + "smithy.api#xmlName": "scheduledInstanceSet" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of DescribeVpnConnections.

", + "smithy.api#documentation": "

Contains the output of DescribeScheduledInstances.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DescribeVpnGateways": { + "com.amazonaws.ec2#DescribeSecurityGroupReferences": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DescribeVpnGatewaysRequest" + "target": "com.amazonaws.ec2#DescribeSecurityGroupReferencesRequest" }, "output": { - "target": "com.amazonaws.ec2#DescribeVpnGatewaysResult" + "target": "com.amazonaws.ec2#DescribeSecurityGroupReferencesResult" }, "traits": { - "smithy.api#documentation": "

Describes one or more of your virtual private gateways.

\n

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN\n User Guide.

" + "smithy.api#documentation": "

Describes the VPCs on the other side of a VPC peering or Transit Gateway connection that are referencing the security groups you've specified in this request.

", + "smithy.api#examples": [ + { + "title": "To describe security group references", + "documentation": "This example describes the security group references for the specified security group.", + "input": { + "GroupId": [ + "sg-903004f8" + ] + }, + "output": { + "SecurityGroupReferenceSet": [ + { + "ReferencingVpcId": "vpc-1a2b3c4d", + "GroupId": "sg-903004f8", + "VpcPeeringConnectionId": "pcx-b04deed9" + } + ] + } + } + ] } }, - "com.amazonaws.ec2#DescribeVpnGatewaysRequest": { + "com.amazonaws.ec2#DescribeSecurityGroupReferencesRequest": { "type": "structure", "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" - } - }, - "VpnGatewayIds": { - "target": "com.amazonaws.ec2#VpnGatewayIdStringList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

One or more virtual private gateway IDs.

\n

Default: Describes all your virtual private gateways.

", - "smithy.api#xmlName": "VpnGatewayId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "GroupId": { + "target": "com.amazonaws.ec2#GroupIds", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of the security groups in your account.

", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DescribeVpnGateways.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DescribeVpnGatewaysResult": { + "com.amazonaws.ec2#DescribeSecurityGroupReferencesResult": { "type": "structure", "members": { - "VpnGateways": { - "target": "com.amazonaws.ec2#VpnGatewayList", + "SecurityGroupReferenceSet": { + "target": "com.amazonaws.ec2#SecurityGroupReferences", "traits": { - "aws.protocols#ec2QueryName": "VpnGatewaySet", - "smithy.api#documentation": "

Information about one or more virtual private gateways.

", - "smithy.api#xmlName": "vpnGatewaySet" + "aws.protocols#ec2QueryName": "SecurityGroupReferenceSet", + "smithy.api#documentation": "

Information about the VPCs with the referencing security groups.

", + "smithy.api#xmlName": "securityGroupReferenceSet" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of DescribeVpnGateways.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DestinationFileFormat": { - "type": "enum", - "members": { - "plain_text": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "plain-text" - } - }, - "parquet": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "parquet" - } + "com.amazonaws.ec2#DescribeSecurityGroupRules": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeSecurityGroupRulesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeSecurityGroupRulesResult" + }, + "traits": { + "smithy.api#documentation": "

Describes one or more of your security group rules.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "SecurityGroupRules", + "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DestinationOptionsRequest": { + "com.amazonaws.ec2#DescribeSecurityGroupRulesMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeSecurityGroupRulesRequest": { "type": "structure", "members": { - "FileFormat": { - "target": "com.amazonaws.ec2#DestinationFileFormat", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The format for the flow log. The default is plain-text.

" + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "HiveCompatiblePartitions": { - "target": "com.amazonaws.ec2#Boolean", + "SecurityGroupRuleIds": { + "target": "com.amazonaws.ec2#SecurityGroupRuleIdList", "traits": { - "smithy.api#documentation": "

Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3.\n The default is false.

" + "smithy.api#documentation": "

The IDs of the security group rules.

", + "smithy.api#xmlName": "SecurityGroupRuleId" } }, - "PerHourPartition": { + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Indicates whether to partition the flow log per hour. This reduces the cost and response \n time for queries. The default is false.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeSecurityGroupRulesMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of \n items, make another request with the token returned in the output. This value\n can be between 5 and 1000. If this parameter is not specified, then all items are\n returned. For more information, see Pagination.

" } } }, "traits": { - "smithy.api#documentation": "

Describes the destination options for a flow log.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DestinationOptionsResponse": { + "com.amazonaws.ec2#DescribeSecurityGroupRulesResult": { "type": "structure", "members": { - "FileFormat": { - "target": "com.amazonaws.ec2#DestinationFileFormat", - "traits": { - "aws.protocols#ec2QueryName": "FileFormat", - "smithy.api#documentation": "

The format for the flow log.

", - "smithy.api#xmlName": "fileFormat" - } - }, - "HiveCompatiblePartitions": { - "target": "com.amazonaws.ec2#Boolean", + "SecurityGroupRules": { + "target": "com.amazonaws.ec2#SecurityGroupRuleList", "traits": { - "aws.protocols#ec2QueryName": "HiveCompatiblePartitions", - "smithy.api#documentation": "

Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3.

", - "smithy.api#xmlName": "hiveCompatiblePartitions" + "aws.protocols#ec2QueryName": "SecurityGroupRuleSet", + "smithy.api#documentation": "

Information about security group rules.

", + "smithy.api#xmlName": "securityGroupRuleSet" } }, - "PerHourPartition": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PerHourPartition", - "smithy.api#documentation": "

Indicates whether to partition the flow log per hour.

", - "smithy.api#xmlName": "perHourPartition" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Describes the destination options for a flow log.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DetachClassicLinkVpc": { + "com.amazonaws.ec2#DescribeSecurityGroupVpcAssociations": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DetachClassicLinkVpcRequest" + "target": "com.amazonaws.ec2#DescribeSecurityGroupVpcAssociationsRequest" }, "output": { - "target": "com.amazonaws.ec2#DetachClassicLinkVpcResult" + "target": "com.amazonaws.ec2#DescribeSecurityGroupVpcAssociationsResult" }, "traits": { - "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Unlinks (detaches) a linked EC2-Classic instance from a VPC. After the instance has been unlinked, \n\t\t the VPC security groups are no longer associated with it. An instance is automatically unlinked from \n\t\t a VPC when it's stopped.

" + "smithy.api#documentation": "

Describes security group VPC associations made with AssociateSecurityGroupVpc.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "SecurityGroupVpcAssociations", + "pageSize": "MaxResults" + }, + "smithy.waiters#waitable": { + "SecurityGroupVpcAssociationAssociated": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "SecurityGroupVpcAssociations[].State", + "expected": "associated", + "comparator": "allStringEquals" + } + } + }, + { + "state": "retry", + "matcher": { + "output": { + "path": "SecurityGroupVpcAssociations[].State", + "expected": "associating", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "SecurityGroupVpcAssociations[].State", + "expected": "association-failed", + "comparator": "anyStringEquals" + } + } + } + ], + "minDelay": 10 + }, + "SecurityGroupVpcAssociationDisassociated": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "SecurityGroupVpcAssociations[].State", + "expected": "disassociated", + "comparator": "allStringEquals" + } + } + }, + { + "state": "retry", + "matcher": { + "output": { + "path": "SecurityGroupVpcAssociations[].State", + "expected": "disassociating", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "SecurityGroupVpcAssociations[].State", + "expected": "disassociation-failed", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "success", + "matcher": { + "output": { + "path": "length(SecurityGroupVpcAssociations[]) == `0`", + "expected": "true", + "comparator": "booleanEquals" + } + } + } + ], + "minDelay": 10 + } + } } }, - "com.amazonaws.ec2#DetachClassicLinkVpcRequest": { + "com.amazonaws.ec2#DescribeSecurityGroupVpcAssociationsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeSecurityGroupVpcAssociationsRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Security group VPC association filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance to unlink from the VPC.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "instanceId" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeSecurityGroupVpcAssociationsMaxResults", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC to which the instance is linked.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "vpcId" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -42271,15 +42313,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DetachClassicLinkVpcResult": { + "com.amazonaws.ec2#DescribeSecurityGroupVpcAssociationsResult": { "type": "structure", "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + "SecurityGroupVpcAssociations": { + "target": "com.amazonaws.ec2#SecurityGroupVpcAssociationList", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "SecurityGroupVpcAssociationSet", + "smithy.api#documentation": "

The security group VPC associations.

", + "smithy.api#xmlName": "securityGroupVpcAssociationSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -42287,31 +42337,115 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DetachInternetGateway": { + "com.amazonaws.ec2#DescribeSecurityGroups": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DetachInternetGatewayRequest" + "target": "com.amazonaws.ec2#DescribeSecurityGroupsRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.ec2#DescribeSecurityGroupsResult" }, "traits": { - "smithy.api#documentation": "

Detaches an internet gateway from a VPC, disabling connectivity between the internet\n\t\t\tand the VPC. The VPC must not contain any running instances with Elastic IP addresses or\n\t\t\tpublic IPv4 addresses.

", + "smithy.api#documentation": "

Describes the specified security groups or all of your security groups.

", "smithy.api#examples": [ { - "title": "To detach an Internet gateway from a VPC", - "documentation": "This example detaches the specified Internet gateway from the specified VPC.", + "title": "To describe a security group", + "documentation": "This example describes the specified security group.", "input": { - "InternetGatewayId": "igw-c0a643a9", - "VpcId": "vpc-a01106c2" - } + "GroupIds": [ + "sg-903004f8" + ] + }, + "output": {} + }, + { + "title": "To describe a tagged security group", + "documentation": "This example describes the security groups that include the specified tag (Purpose=test).", + "input": { + "Filters": [ + { + "Name": "tag:Purpose", + "Values": [ + "test" + ] + } + ] + }, + "output": {} } - ] + ], + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "SecurityGroups", + "pageSize": "MaxResults" + }, + "smithy.api#suppress": [ + "WaitableTraitInvalidErrorType" + ], + "smithy.waiters#waitable": { + "SecurityGroupExists": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "length(SecurityGroups[].GroupId) > `0`", + "expected": "true", + "comparator": "booleanEquals" + } + } + }, + { + "state": "retry", + "matcher": { + "errorType": "InvalidGroup.NotFound" + } + } + ], + "minDelay": 5 + } + } } }, - "com.amazonaws.ec2#DetachInternetGatewayRequest": { + "com.amazonaws.ec2#DescribeSecurityGroupsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeSecurityGroupsRequest": { "type": "structure", "members": { + "GroupIds": { + "target": "com.amazonaws.ec2#GroupIdStringList", + "traits": { + "smithy.api#documentation": "

The IDs of the security groups. Required for security groups in a nondefault VPC.

\n

Default: Describes all of your security groups.

", + "smithy.api#xmlName": "GroupId" + } + }, + "GroupNames": { + "target": "com.amazonaws.ec2#GroupNameStringList", + "traits": { + "smithy.api#documentation": "

[Default VPC] The names of the security groups. You can specify either\n\t\t\tthe security group name or the security group ID.

\n

Default: Describes all of your security groups.

", + "smithy.api#xmlName": "GroupName" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeSecurityGroupsMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items,\n make another request with the token returned in the output. This value can be between 5 and 1000. \n If this parameter is not specified, then all items are returned. For more information, see \n Pagination.

" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { @@ -42320,123 +42454,81 @@ "smithy.api#xmlName": "dryRun" } }, - "InternetGatewayId": { - "target": "com.amazonaws.ec2#InternetGatewayId", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "InternetGatewayId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the internet gateway.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "internetGatewayId" + "smithy.api#documentation": "

The filters. If using multiple filters for rules, the results include security groups for which any combination of rules - not necessarily a single rule - match all filters.

\n ", + "smithy.api#xmlName": "Filter" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DescribeSecurityGroupsResult": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "SecurityGroups": { + "target": "com.amazonaws.ec2#SecurityGroupList", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "vpcId" + "aws.protocols#ec2QueryName": "SecurityGroupInfo", + "smithy.api#documentation": "

Information about the security groups.

", + "smithy.api#xmlName": "securityGroupInfo" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DetachNetworkInterface": { + "com.amazonaws.ec2#DescribeServiceLinkVirtualInterfaces": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DetachNetworkInterfaceRequest" + "target": "com.amazonaws.ec2#DescribeServiceLinkVirtualInterfacesRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.ec2#DescribeServiceLinkVirtualInterfacesResult" }, "traits": { - "smithy.api#documentation": "

Detaches a network interface from an instance.

", - "smithy.api#examples": [ - { - "title": "To detach a network interface from an instance", - "documentation": "This example detaches the specified network interface from its attached instance.", - "input": { - "AttachmentId": "eni-attach-66c4350a" - } - } - ] + "smithy.api#documentation": "

Describes the Outpost service link virtual interfaces.

" } }, - "com.amazonaws.ec2#DetachNetworkInterfaceRequest": { + "com.amazonaws.ec2#DescribeServiceLinkVirtualInterfacesRequest": { "type": "structure", "members": { - "AttachmentId": { - "target": "com.amazonaws.ec2#NetworkInterfaceAttachmentId", - "traits": { - "aws.protocols#ec2QueryName": "AttachmentId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the attachment.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "attachmentId" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ServiceLinkVirtualInterfaceIds": { + "target": "com.amazonaws.ec2#ServiceLinkVirtualInterfaceIdSet", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The IDs of the service link virtual interfaces.

", + "smithy.api#xmlName": "ServiceLinkVirtualInterfaceId" } }, - "Force": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "Force", - "smithy.api#documentation": "

Specifies whether to force a detachment.

\n \n \n ", - "smithy.api#xmlName": "force" - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the parameters for DetachNetworkInterface.

", - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DetachVerifiedAccessTrustProvider": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DetachVerifiedAccessTrustProviderRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DetachVerifiedAccessTrustProviderResult" - }, - "traits": { - "smithy.api#documentation": "

Detaches the specified Amazon Web Services Verified Access trust provider from the specified Amazon Web Services Verified Access instance.

" - } - }, - "com.amazonaws.ec2#DetachVerifiedAccessTrustProviderRequest": { - "type": "structure", - "members": { - "VerifiedAccessInstanceId": { - "target": "com.amazonaws.ec2#VerifiedAccessInstanceId", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Verified Access instance.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The filters to use for narrowing down the request. The following filters are\n supported:

\n ", + "smithy.api#xmlName": "Filter" } }, - "VerifiedAccessTrustProviderId": { - "target": "com.amazonaws.ec2#VerifiedAccessTrustProviderId", + "MaxResults": { + "target": "com.amazonaws.ec2#ServiceLinkMaxResults", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Verified Access trust provider.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "ClientToken": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "smithy.api#documentation": "

The token for the next page of results.

" } }, "DryRun": { @@ -42450,23 +42542,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DetachVerifiedAccessTrustProviderResult": { + "com.amazonaws.ec2#DescribeServiceLinkVirtualInterfacesResult": { "type": "structure", "members": { - "VerifiedAccessTrustProvider": { - "target": "com.amazonaws.ec2#VerifiedAccessTrustProvider", + "ServiceLinkVirtualInterfaces": { + "target": "com.amazonaws.ec2#ServiceLinkVirtualInterfaceSet", "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessTrustProvider", - "smithy.api#documentation": "

Details about the Verified Access trust provider.

", - "smithy.api#xmlName": "verifiedAccessTrustProvider" + "aws.protocols#ec2QueryName": "ServiceLinkVirtualInterfaceSet", + "smithy.api#documentation": "

Describes the service link virtual interfaces.

", + "smithy.api#xmlName": "serviceLinkVirtualInterfaceSet" } }, - "VerifiedAccessInstance": { - "target": "com.amazonaws.ec2#VerifiedAccessInstance", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessInstance", - "smithy.api#documentation": "

Details about the Verified Access instance.

", - "smithy.api#xmlName": "verifiedAccessInstance" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -42474,60 +42566,48 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DetachVolume": { + "com.amazonaws.ec2#DescribeSnapshotAttribute": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DetachVolumeRequest" + "target": "com.amazonaws.ec2#DescribeSnapshotAttributeRequest" }, "output": { - "target": "com.amazonaws.ec2#VolumeAttachment" + "target": "com.amazonaws.ec2#DescribeSnapshotAttributeResult" }, "traits": { - "smithy.api#documentation": "

Detaches an EBS volume from an instance. Make sure to unmount any file systems on the\n device within your operating system before detaching the volume. Failure to do so can result\n in the volume becoming stuck in the busy state while detaching. If this happens,\n detachment can be delayed indefinitely until you unmount the volume, force detachment, reboot\n the instance, or all three. If an EBS volume is the root device of an instance, it can't be\n detached while the instance is running. To detach the root volume, stop the instance\n first.

\n

When a volume with an Amazon Web Services Marketplace product code is detached from an instance, the\n product code is no longer associated with the instance.

\n

You can't detach or force detach volumes that are attached to Amazon ECS or \n Fargate tasks. Attempting to do this results in the UnsupportedOperationException \n exception with the Unable to detach volume attached to ECS tasks error message.

\n

For more information, see Detach an Amazon EBS volume in the\n Amazon EBS User Guide.

", + "smithy.api#documentation": "

Describes the specified attribute of the specified snapshot. You can specify only one\n attribute at a time.

\n

For more information about EBS snapshots, see Amazon EBS snapshots in the Amazon EBS User Guide.

", "smithy.api#examples": [ { - "title": "To detach a volume from an instance", - "documentation": "This example detaches the volume (``vol-049df61146c4d7901``) from the instance it is attached to.", + "title": "To describe snapshot attributes", + "documentation": "This example describes the ``createVolumePermission`` attribute on a snapshot with the snapshot ID of ``snap-066877671789bd71b``.", "input": { - "VolumeId": "vol-1234567890abcdef0" + "SnapshotId": "snap-066877671789bd71b", + "Attribute": "createVolumePermission" }, "output": { - "AttachTime": "2014-02-27T19:23:06.000Z", - "InstanceId": "i-1234567890abcdef0", - "VolumeId": "vol-049df61146c4d7901", - "State": "detaching", - "Device": "/dev/sdb" + "SnapshotId": "snap-066877671789bd71b", + "CreateVolumePermissions": [] } } ] } }, - "com.amazonaws.ec2#DetachVolumeRequest": { + "com.amazonaws.ec2#DescribeSnapshotAttributeRequest": { "type": "structure", "members": { - "Device": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The device name.

" - } - }, - "Force": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Forces detachment if the previous detachment attempt did not occur cleanly (for example,\n logging into an instance, unmounting the volume, and detaching normally). This option can lead\n to data loss or a corrupted file system. Use this option only as a last resort to detach a\n volume from a failed instance. The instance won't have an opportunity to flush file system\n caches or file system metadata. If you use this option, you must perform file system check and\n repair procedures.

" - } - }, - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceIdForResolver", + "Attribute": { + "target": "com.amazonaws.ec2#SnapshotAttributeName", "traits": { - "smithy.api#documentation": "

The ID of the instance. If you are detaching a Multi-Attach enabled volume, you must specify an instance ID.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The snapshot attribute you would like to view.

", + "smithy.api#required": {} } }, - "VolumeId": { - "target": "com.amazonaws.ec2#VolumeIdWithResolver", + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the volume.

", + "smithy.api#documentation": "

The ID of the EBS snapshot.

", "smithy.api#required": {} } }, @@ -42544,758 +42624,1229 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DetachVpnGateway": { + "com.amazonaws.ec2#DescribeSnapshotAttributeResult": { + "type": "structure", + "members": { + "ProductCodes": { + "target": "com.amazonaws.ec2#ProductCodeList", + "traits": { + "aws.protocols#ec2QueryName": "ProductCodes", + "smithy.api#documentation": "

The product codes.

", + "smithy.api#xmlName": "productCodes" + } + }, + "SnapshotId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The ID of the EBS snapshot.

", + "smithy.api#xmlName": "snapshotId" + } + }, + "CreateVolumePermissions": { + "target": "com.amazonaws.ec2#CreateVolumePermissionList", + "traits": { + "aws.protocols#ec2QueryName": "CreateVolumePermission", + "smithy.api#documentation": "

The users and groups that have the permissions for creating volumes from the\n snapshot.

", + "smithy.api#xmlName": "createVolumePermission" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DescribeSnapshotTierStatus": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DetachVpnGatewayRequest" + "target": "com.amazonaws.ec2#DescribeSnapshotTierStatusRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.ec2#DescribeSnapshotTierStatusResult" }, "traits": { - "smithy.api#documentation": "

Detaches a virtual private gateway from a VPC. You do this if you're planning to turn\n off the VPC and not use it anymore. You can confirm a virtual private gateway has been\n completely detached from a VPC by describing the virtual private gateway (any\n attachments to the virtual private gateway are also described).

\n

You must wait for the attachment's state to switch to detached before you\n can delete the VPC or attach a different VPC to the virtual private gateway.

" + "smithy.api#documentation": "

Describes the storage tier status of one or more Amazon EBS snapshots.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "SnapshotTierStatuses", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DetachVpnGatewayRequest": { + "com.amazonaws.ec2#DescribeSnapshotTierStatusMaxResults": { + "type": "integer" + }, + "com.amazonaws.ec2#DescribeSnapshotTierStatusRequest": { "type": "structure", "members": { - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "VpnGatewayId": { - "target": "com.amazonaws.ec2#VpnGatewayId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the virtual private gateway.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeSnapshotTierStatusMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output. \n\tFor more information, see Pagination.

" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DetachVpnGateway.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DeviceOptions": { + "com.amazonaws.ec2#DescribeSnapshotTierStatusResult": { "type": "structure", "members": { - "TenantId": { - "target": "com.amazonaws.ec2#String", + "SnapshotTierStatuses": { + "target": "com.amazonaws.ec2#snapshotTierStatusSet", "traits": { - "aws.protocols#ec2QueryName": "TenantId", - "smithy.api#documentation": "

The ID of the tenant application with the device-identity provider.

", - "smithy.api#xmlName": "tenantId" + "aws.protocols#ec2QueryName": "SnapshotTierStatusSet", + "smithy.api#documentation": "

Information about the snapshot's storage tier.

", + "smithy.api#xmlName": "snapshotTierStatusSet" } }, - "PublicSigningKeyUrl": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PublicSigningKeyUrl", - "smithy.api#documentation": "

\n The URL Amazon Web Services Verified Access will use to verify the authenticity of the device tokens.\n

", - "smithy.api#xmlName": "publicSigningKeyUrl" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Describes the options for an Amazon Web Services Verified Access device-identity based trust provider.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DeviceTrustProviderType": { - "type": "enum", - "members": { - "jamf": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "jamf" - } - }, - "crowdstrike": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "crowdstrike" + "com.amazonaws.ec2#DescribeSnapshots": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeSnapshotsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeSnapshotsResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the specified EBS snapshots available to you or all of the EBS snapshots\n available to you.

\n

The snapshots available to you include public snapshots, private snapshots that you own,\n and private snapshots owned by other Amazon Web Services accounts for which you have explicit create volume\n permissions.

\n

The create volume permissions fall into the following categories:

\n \n

The list of snapshots returned can be filtered by specifying snapshot IDs, snapshot\n owners, or Amazon Web Services accounts with create volume permissions. If no options are specified, \n Amazon EC2 returns all snapshots for which you have create volume permissions.

\n

If you specify one or more snapshot IDs, only snapshots that have the specified IDs are\n returned. If you specify an invalid snapshot ID, an error is returned. If you specify a\n snapshot ID for which you do not have access, it is not included in the returned\n results.

\n

If you specify one or more snapshot owners using the OwnerIds option, only\n snapshots from the specified owners and for which you have access are returned. The results\n can include the Amazon Web Services account IDs of the specified owners, amazon for snapshots\n owned by Amazon, or self for snapshots that you own.

\n

If you specify a list of restorable users, only snapshots with create snapshot permissions\n for those users are returned. You can specify Amazon Web Services account IDs (if you own the snapshots),\n self for snapshots for which you own or have explicit permissions, or\n all for public snapshots.

\n

If you are describing a long list of snapshots, we recommend that you paginate the output to make the\n list more manageable. For more information, see Pagination.

\n

For more information about EBS snapshots, see Amazon EBS snapshots in the Amazon EBS User Guide.

\n \n

We strongly recommend using only paginated requests. Unpaginated requests are\n susceptible to throttling and timeouts.

\n
", + "smithy.api#examples": [ + { + "title": "To describe a snapshot", + "documentation": "This example describes a snapshot with the snapshot ID of ``snap-1234567890abcdef0``.", + "input": { + "SnapshotIds": [ + "snap-1234567890abcdef0" + ] + }, + "output": { + "Snapshots": [ + { + "Description": "This is my snapshot.", + "VolumeId": "vol-049df61146c4d7901", + "State": "completed", + "VolumeSize": 8, + "Progress": "100%", + "StartTime": "2014-02-28T21:28:32.000Z", + "SnapshotId": "snap-1234567890abcdef0", + "OwnerId": "012345678910" + } + ], + "NextToken": "" + } + }, + { + "title": "To describe snapshots using filters", + "documentation": "This example describes all snapshots owned by the ID 012345678910 that are in the ``pending`` status.", + "input": { + "OwnerIds": [ + "012345678910" + ], + "Filters": [ + { + "Values": [ + "pending" + ], + "Name": "status" + } + ] + }, + "output": { + "Snapshots": [ + { + "Description": "This is my copied snapshot.", + "VolumeId": "vol-1234567890abcdef0", + "State": "pending", + "VolumeSize": 8, + "Progress": "87%", + "StartTime": "2014-02-28T21:37:27.000Z", + "SnapshotId": "snap-066877671789bd71b", + "OwnerId": "012345678910" + } + ], + "NextToken": "" + } } + ], + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "Snapshots", + "pageSize": "MaxResults" }, - "jumpcloud": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "jumpcloud" + "smithy.waiters#waitable": { + "SnapshotCompleted": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "Snapshots[].State", + "expected": "completed", + "comparator": "allStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "Snapshots[].State", + "expected": "error", + "comparator": "anyStringEquals" + } + } + } + ], + "minDelay": 15 } } } }, - "com.amazonaws.ec2#DeviceType": { - "type": "enum", + "com.amazonaws.ec2#DescribeSnapshotsRequest": { + "type": "structure", "members": { - "ebs": { - "target": "smithy.api#Unit", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "ebs" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output. \n\tFor more information, see Pagination.

" } }, - "instance_store": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "instance-store" - } - } - } - }, - "com.amazonaws.ec2#DhcpConfiguration": { - "type": "structure", - "members": { - "Key": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Key", - "smithy.api#documentation": "

The name of a DHCP option.

", - "smithy.api#xmlName": "key" + "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" } }, - "Values": { - "target": "com.amazonaws.ec2#DhcpConfigurationValueList", + "OwnerIds": { + "target": "com.amazonaws.ec2#OwnerStringList", "traits": { - "aws.protocols#ec2QueryName": "ValueSet", - "smithy.api#documentation": "

The values for the DHCP option.

", - "smithy.api#xmlName": "valueSet" + "smithy.api#documentation": "

Scopes the results to snapshots with the specified owners. You can specify a combination of\n Amazon Web Services account IDs, self, and amazon.

", + "smithy.api#xmlName": "Owner" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a DHCP configuration option.

" - } - }, - "com.amazonaws.ec2#DhcpConfigurationList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DhcpConfiguration", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#DhcpConfigurationValueList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#AttributeValue", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#DhcpOptions": { - "type": "structure", - "members": { - "DhcpConfigurations": { - "target": "com.amazonaws.ec2#DhcpConfigurationList", + }, + "RestorableByUserIds": { + "target": "com.amazonaws.ec2#RestorableByStringList", "traits": { - "aws.protocols#ec2QueryName": "DhcpConfigurationSet", - "smithy.api#documentation": "

The DHCP options in the set.

", - "smithy.api#xmlName": "dhcpConfigurationSet" + "smithy.api#documentation": "

The IDs of the Amazon Web Services accounts that can create volumes from the snapshot.

", + "smithy.api#xmlName": "RestorableBy" } }, - "DhcpOptionsId": { - "target": "com.amazonaws.ec2#String", + "SnapshotIds": { + "target": "com.amazonaws.ec2#SnapshotIdStringList", "traits": { - "aws.protocols#ec2QueryName": "DhcpOptionsId", - "smithy.api#documentation": "

The ID of the set of DHCP options.

", - "smithy.api#xmlName": "dhcpOptionsId" + "smithy.api#documentation": "

The snapshot IDs.

\n

Default: Describes the snapshots for which you have create volume permissions.

", + "smithy.api#xmlName": "SnapshotId" } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the DHCP options set.

", - "smithy.api#xmlName": "ownerId" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the DHCP options set.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, "traits": { - "smithy.api#documentation": "

The set of DHCP options.

" - } - }, - "com.amazonaws.ec2#DhcpOptionsId": { - "type": "string" - }, - "com.amazonaws.ec2#DhcpOptionsIdStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DhcpOptionsId", - "traits": { - "smithy.api#xmlName": "DhcpOptionsId" - } - } - }, - "com.amazonaws.ec2#DhcpOptionsList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DhcpOptions", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DirectoryServiceAuthentication": { + "com.amazonaws.ec2#DescribeSnapshotsResult": { "type": "structure", "members": { - "DirectoryId": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DirectoryId", - "smithy.api#documentation": "

The ID of the Active Directory used for authentication.

", - "smithy.api#xmlName": "directoryId" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an Active Directory.

" - } - }, - "com.amazonaws.ec2#DirectoryServiceAuthenticationRequest": { - "type": "structure", - "members": { - "DirectoryId": { - "target": "com.amazonaws.ec2#String", + }, + "Snapshots": { + "target": "com.amazonaws.ec2#SnapshotList", "traits": { - "smithy.api#documentation": "

The ID of the Active Directory to be used for authentication.

" + "aws.protocols#ec2QueryName": "SnapshotSet", + "smithy.api#documentation": "

Information about the snapshots.

", + "smithy.api#xmlName": "snapshotSet" } } }, "traits": { - "smithy.api#documentation": "

Describes the Active Directory to be used for client authentication.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisableAddressTransfer": { + "com.amazonaws.ec2#DescribeSpotDatafeedSubscription": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisableAddressTransferRequest" + "target": "com.amazonaws.ec2#DescribeSpotDatafeedSubscriptionRequest" }, "output": { - "target": "com.amazonaws.ec2#DisableAddressTransferResult" + "target": "com.amazonaws.ec2#DescribeSpotDatafeedSubscriptionResult" }, "traits": { - "smithy.api#documentation": "

Disables Elastic IP address transfer. For more information, see Transfer Elastic IP addresses in the Amazon Virtual Private Cloud User Guide.

" - } - }, - "com.amazonaws.ec2#DisableAddressTransferRequest": { - "type": "structure", - "members": { - "AllocationId": { - "target": "com.amazonaws.ec2#AllocationId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The allocation ID of an Elastic IP address.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Describes the data feed for Spot Instances. For more information, see Spot\n Instance data feed in the Amazon EC2 User Guide.

", + "smithy.api#examples": [ + { + "title": "To describe the datafeed for your AWS account", + "documentation": "This example describes the Spot Instance datafeed subscription for your AWS account.", + "output": { + "SpotDatafeedSubscription": { + "OwnerId": "123456789012", + "Prefix": "spotdata", + "Bucket": "my-s3-bucket", + "State": "Active" + } + } } - }, + ] + } + }, + "com.amazonaws.ec2#DescribeSpotDatafeedSubscriptionRequest": { + "type": "structure", + "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DescribeSpotDatafeedSubscription.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisableAddressTransferResult": { + "com.amazonaws.ec2#DescribeSpotDatafeedSubscriptionResult": { "type": "structure", "members": { - "AddressTransfer": { - "target": "com.amazonaws.ec2#AddressTransfer", + "SpotDatafeedSubscription": { + "target": "com.amazonaws.ec2#SpotDatafeedSubscription", "traits": { - "aws.protocols#ec2QueryName": "AddressTransfer", - "smithy.api#documentation": "

An Elastic IP address transfer.

", - "smithy.api#xmlName": "addressTransfer" + "aws.protocols#ec2QueryName": "SpotDatafeedSubscription", + "smithy.api#documentation": "

The Spot Instance data feed subscription.

", + "smithy.api#xmlName": "spotDatafeedSubscription" } } }, "traits": { + "smithy.api#documentation": "

Contains the output of DescribeSpotDatafeedSubscription.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisableAwsNetworkPerformanceMetricSubscription": { + "com.amazonaws.ec2#DescribeSpotFleetInstances": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisableAwsNetworkPerformanceMetricSubscriptionRequest" + "target": "com.amazonaws.ec2#DescribeSpotFleetInstancesRequest" }, "output": { - "target": "com.amazonaws.ec2#DisableAwsNetworkPerformanceMetricSubscriptionResult" + "target": "com.amazonaws.ec2#DescribeSpotFleetInstancesResponse" }, "traits": { - "smithy.api#documentation": "

Disables Infrastructure Performance metric subscriptions.

" + "smithy.api#documentation": "

Describes the running instances for the specified Spot Fleet.

", + "smithy.api#examples": [ + { + "title": "To describe the Spot Instances associated with a Spot fleet", + "documentation": "This example lists the Spot Instances associated with the specified Spot fleet.", + "input": { + "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" + }, + "output": { + "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", + "ActiveInstances": [ + { + "InstanceId": "i-1234567890abcdef0", + "InstanceType": "m3.medium", + "SpotInstanceRequestId": "sir-08b93456" + } + ] + } + } + ] } }, - "com.amazonaws.ec2#DisableAwsNetworkPerformanceMetricSubscriptionRequest": { + "com.amazonaws.ec2#DescribeSpotFleetInstancesMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeSpotFleetInstancesRequest": { "type": "structure", "members": { - "Source": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The source Region or Availability Zone that the metric subscription is disabled for. For example, us-east-1.

" - } - }, - "Destination": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The target Region or Availability Zone that the metric subscription is disabled for. For example, eu-north-1.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "Metric": { - "target": "com.amazonaws.ec2#MetricType", + "SpotFleetRequestId": { + "target": "com.amazonaws.ec2#SpotFleetRequestId", "traits": { - "smithy.api#documentation": "

The metric used for the disabled subscription.

" + "aws.protocols#ec2QueryName": "SpotFleetRequestId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Spot Fleet request.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "spotFleetRequestId" } }, - "Statistic": { - "target": "com.amazonaws.ec2#StatisticType", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The statistic used for the disabled subscription.

" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#xmlName": "nextToken" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeSpotFleetInstancesMaxResults", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "MaxResults", + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

", + "smithy.api#xmlName": "maxResults" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DescribeSpotFleetInstances.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisableAwsNetworkPerformanceMetricSubscriptionResult": { + "com.amazonaws.ec2#DescribeSpotFleetInstancesResponse": { "type": "structure", "members": { - "Output": { - "target": "com.amazonaws.ec2#Boolean", + "ActiveInstances": { + "target": "com.amazonaws.ec2#ActiveInstanceSet", "traits": { - "aws.protocols#ec2QueryName": "Output", - "smithy.api#documentation": "

Indicates whether the unsubscribe action was successful.

", - "smithy.api#xmlName": "output" + "aws.protocols#ec2QueryName": "ActiveInstanceSet", + "smithy.api#documentation": "

The running instances. This list is refreshed periodically and might be out of\n date.

", + "smithy.api#xmlName": "activeInstanceSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#xmlName": "nextToken" + } + }, + "SpotFleetRequestId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "SpotFleetRequestId", + "smithy.api#documentation": "

The ID of the Spot Fleet request.

", + "smithy.api#xmlName": "spotFleetRequestId" } } }, "traits": { + "smithy.api#documentation": "

Contains the output of DescribeSpotFleetInstances.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisableEbsEncryptionByDefault": { + "com.amazonaws.ec2#DescribeSpotFleetRequestHistory": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisableEbsEncryptionByDefaultRequest" + "target": "com.amazonaws.ec2#DescribeSpotFleetRequestHistoryRequest" }, "output": { - "target": "com.amazonaws.ec2#DisableEbsEncryptionByDefaultResult" + "target": "com.amazonaws.ec2#DescribeSpotFleetRequestHistoryResponse" }, "traits": { - "smithy.api#documentation": "

Disables EBS encryption by default for your account in the current Region.

\n

After you disable encryption by default, you can still create encrypted volumes by \n enabling encryption when you create each volume.

\n

Disabling encryption by default does not change the encryption status of your\n existing volumes.

\n

For more information, see Amazon EBS encryption in the\n Amazon EBS User Guide.

" + "smithy.api#documentation": "

Describes the events for the specified Spot Fleet request during the specified\n time.

\n

Spot Fleet events are delayed by up to 30 seconds before they can be described. This\n ensures that you can query by the last evaluated time and not miss a recorded event.\n Spot Fleet events are available for 48 hours.

\n

For more information, see Monitor fleet events using Amazon\n EventBridge in the Amazon EC2 User Guide.

", + "smithy.api#examples": [ + { + "title": "To describe Spot fleet history", + "documentation": "This example returns the history for the specified Spot fleet starting at the specified time.", + "input": { + "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", + "StartTime": "2015-05-26T00:00:00Z" + }, + "output": { + "HistoryRecords": [ + { + "Timestamp": "2015-05-26T23:17:20.697Z", + "EventInformation": { + "EventSubType": "submitted" + }, + "EventType": "fleetRequestChange" + }, + { + "Timestamp": "2015-05-26T23:17:20.873Z", + "EventInformation": { + "EventSubType": "active" + }, + "EventType": "fleetRequestChange" + }, + { + "Timestamp": "2015-05-26T23:21:21.712Z", + "EventInformation": { + "InstanceId": "i-1234567890abcdef0", + "EventSubType": "launched" + }, + "EventType": "instanceChange" + }, + { + "Timestamp": "2015-05-26T23:21:21.816Z", + "EventInformation": { + "InstanceId": "i-1234567890abcdef1", + "EventSubType": "launched" + }, + "EventType": "instanceChange" + } + ], + "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", + "StartTime": "2015-05-26T00:00:00Z", + "NextToken": "CpHNsscimcV5oH7bSbub03CI2Qms5+ypNpNm+53MNlR0YcXAkp0xFlfKf91yVxSExmbtma3awYxMFzNA663ZskT0AHtJ6TCb2Z8bQC2EnZgyELbymtWPfpZ1ZbauVg+P+TfGlWxWWB/Vr5dk5d4LfdgA/DRAHUrYgxzrEXAMPLE=" + } + } + ] } }, - "com.amazonaws.ec2#DisableEbsEncryptionByDefaultRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - } - }, + "com.amazonaws.ec2#DescribeSpotFleetRequestHistoryMaxResults": { + "type": "integer", "traits": { - "smithy.api#input": {} + "smithy.api#range": { + "min": 1, + "max": 1000 + } } }, - "com.amazonaws.ec2#DisableEbsEncryptionByDefaultResult": { + "com.amazonaws.ec2#DescribeSpotFleetRequestHistoryRequest": { "type": "structure", "members": { - "EbsEncryptionByDefault": { + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "EbsEncryptionByDefault", - "smithy.api#documentation": "

The updated status of encryption by default.

", - "smithy.api#xmlName": "ebsEncryptionByDefault" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DisableFastLaunch": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DisableFastLaunchRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DisableFastLaunchResult" - }, - "traits": { - "smithy.api#documentation": "

Discontinue Windows fast launch for a Windows AMI, and clean up existing pre-provisioned snapshots. \n\t\t\tAfter you disable Windows fast launch, the AMI uses the standard launch process for each \n\t\t\tnew instance. Amazon EC2 must remove all pre-provisioned snapshots before you can enable Windows fast launch again.

\n \n

You can only change these settings for Windows AMIs that you own or that have been shared with you.

\n
" - } - }, - "com.amazonaws.ec2#DisableFastLaunchRequest": { - "type": "structure", - "members": { - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", + }, + "SpotFleetRequestId": { + "target": "com.amazonaws.ec2#SpotFleetRequestId", "traits": { + "aws.protocols#ec2QueryName": "SpotFleetRequestId", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Specify the ID of the image for which to disable Windows fast launch.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The ID of the Spot Fleet request.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "spotFleetRequestId" } }, - "Force": { - "target": "com.amazonaws.ec2#Boolean", + "EventType": { + "target": "com.amazonaws.ec2#EventType", "traits": { - "smithy.api#documentation": "

Forces the image settings to turn off Windows fast launch for your Windows AMI. This parameter overrides \n\t\t\tany errors that are encountered while cleaning up resources in your account.

" + "aws.protocols#ec2QueryName": "EventType", + "smithy.api#documentation": "

The type of events to describe. By default, all events are described.

", + "smithy.api#xmlName": "eventType" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "StartTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "StartTime", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The starting date and time for the events, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).

", + "smithy.api#required": {}, + "smithy.api#xmlName": "startTime" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#xmlName": "nextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeSpotFleetRequestHistoryMaxResults", + "traits": { + "aws.protocols#ec2QueryName": "MaxResults", + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

", + "smithy.api#xmlName": "maxResults" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DescribeSpotFleetRequestHistory.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisableFastLaunchResult": { + "com.amazonaws.ec2#DescribeSpotFleetRequestHistoryResponse": { "type": "structure", "members": { - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", - "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The ID of the image for which Windows fast launch was disabled.

", - "smithy.api#xmlName": "imageId" - } - }, - "ResourceType": { - "target": "com.amazonaws.ec2#FastLaunchResourceType", - "traits": { - "aws.protocols#ec2QueryName": "ResourceType", - "smithy.api#documentation": "

The pre-provisioning resource type that must be cleaned after turning off Windows fast launch \n\t\t\tfor the Windows AMI. Supported values include: snapshot.

", - "smithy.api#xmlName": "resourceType" - } - }, - "SnapshotConfiguration": { - "target": "com.amazonaws.ec2#FastLaunchSnapshotConfigurationResponse", - "traits": { - "aws.protocols#ec2QueryName": "SnapshotConfiguration", - "smithy.api#documentation": "

Parameters that were used for Windows fast launch for the Windows AMI before \n\t\t\tWindows fast launch was disabled. This informs the clean-up process.

", - "smithy.api#xmlName": "snapshotConfiguration" - } - }, - "LaunchTemplate": { - "target": "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationResponse", + "HistoryRecords": { + "target": "com.amazonaws.ec2#HistoryRecords", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplate", - "smithy.api#documentation": "

The launch template that was used to launch Windows instances from pre-provisioned snapshots.

", - "smithy.api#xmlName": "launchTemplate" + "aws.protocols#ec2QueryName": "HistoryRecordSet", + "smithy.api#documentation": "

Information about the events in the history of the Spot Fleet request.

", + "smithy.api#xmlName": "historyRecordSet" } }, - "MaxParallelLaunches": { - "target": "com.amazonaws.ec2#Integer", + "LastEvaluatedTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "MaxParallelLaunches", - "smithy.api#documentation": "

The maximum number of instances that Amazon EC2 can launch at the same time to \n\t\t\tcreate pre-provisioned snapshots for Windows fast launch.

", - "smithy.api#xmlName": "maxParallelLaunches" + "aws.protocols#ec2QueryName": "LastEvaluatedTime", + "smithy.api#documentation": "

The last date and time for the events, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).\n All records up to this time were retrieved.

\n

If nextToken indicates that there are more items, this value is not\n present.

", + "smithy.api#xmlName": "lastEvaluatedTime" } }, - "OwnerId": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The owner of the Windows AMI for which Windows fast launch was disabled.

", - "smithy.api#xmlName": "ownerId" - } - }, - "State": { - "target": "com.amazonaws.ec2#FastLaunchStateCode", - "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The current state of Windows fast launch for the specified Windows AMI.

", - "smithy.api#xmlName": "state" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#xmlName": "nextToken" } }, - "StateTransitionReason": { + "SpotFleetRequestId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "StateTransitionReason", - "smithy.api#documentation": "

The reason that the state changed for Windows fast launch for the Windows AMI.

", - "smithy.api#xmlName": "stateTransitionReason" + "aws.protocols#ec2QueryName": "SpotFleetRequestId", + "smithy.api#documentation": "

The ID of the Spot Fleet request.

", + "smithy.api#xmlName": "spotFleetRequestId" } }, - "StateTransitionTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "StartTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "StateTransitionTime", - "smithy.api#documentation": "

The time that the state changed for Windows fast launch for the Windows AMI.

", - "smithy.api#xmlName": "stateTransitionTime" + "aws.protocols#ec2QueryName": "StartTime", + "smithy.api#documentation": "

The starting date and time for the events, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).

", + "smithy.api#xmlName": "startTime" } } }, "traits": { + "smithy.api#documentation": "

Contains the output of DescribeSpotFleetRequestHistory.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisableFastSnapshotRestoreErrorItem": { + "com.amazonaws.ec2#DescribeSpotFleetRequests": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeSpotFleetRequestsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeSpotFleetRequestsResponse" + }, + "traits": { + "smithy.api#documentation": "

Describes your Spot Fleet requests.

\n

Spot Fleet requests are deleted 48 hours after they are canceled and their instances\n are terminated.

", + "smithy.api#examples": [ + { + "title": "To describe a Spot fleet request", + "documentation": "This example describes the specified Spot fleet request.", + "input": { + "SpotFleetRequestIds": [ + "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" + ] + }, + "output": { + "SpotFleetRequestConfigs": [ + { + "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", + "SpotFleetRequestConfig": { + "TargetCapacity": 20, + "LaunchSpecifications": [ + { + "EbsOptimized": false, + "NetworkInterfaces": [ + { + "SubnetId": "subnet-a61dafcf", + "DeviceIndex": 0, + "DeleteOnTermination": false, + "AssociatePublicIpAddress": true, + "SecondaryPrivateIpAddressCount": 0 + } + ], + "InstanceType": "cc2.8xlarge", + "ImageId": "ami-1a2b3c4d" + }, + { + "EbsOptimized": false, + "NetworkInterfaces": [ + { + "SubnetId": "subnet-a61dafcf", + "DeviceIndex": 0, + "DeleteOnTermination": false, + "AssociatePublicIpAddress": true, + "SecondaryPrivateIpAddressCount": 0 + } + ], + "InstanceType": "r3.8xlarge", + "ImageId": "ami-1a2b3c4d" + } + ], + "SpotPrice": "0.05", + "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role" + }, + "SpotFleetRequestState": "active" + } + ] + } + } + ], + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "SpotFleetRequestConfigs", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#DescribeSpotFleetRequestsRequest": { "type": "structure", "members": { - "SnapshotId": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "SpotFleetRequestIds": { + "target": "com.amazonaws.ec2#SpotFleetRequestIdList", + "traits": { + "aws.protocols#ec2QueryName": "SpotFleetRequestId", + "smithy.api#documentation": "

The IDs of the Spot Fleet requests.

", + "smithy.api#xmlName": "spotFleetRequestId" + } + }, + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SnapshotId", - "smithy.api#documentation": "

The ID of the snapshot.

", - "smithy.api#xmlName": "snapshotId" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#xmlName": "nextToken" } }, - "FastSnapshotRestoreStateErrors": { - "target": "com.amazonaws.ec2#DisableFastSnapshotRestoreStateErrorSet", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "FastSnapshotRestoreStateErrorSet", - "smithy.api#documentation": "

The errors.

", - "smithy.api#xmlName": "fastSnapshotRestoreStateErrorSet" + "aws.protocols#ec2QueryName": "MaxResults", + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

", + "smithy.api#xmlName": "maxResults" } } }, "traits": { - "smithy.api#documentation": "

Contains information about the errors that occurred when disabling fast snapshot restores.

" - } - }, - "com.amazonaws.ec2#DisableFastSnapshotRestoreErrorSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DisableFastSnapshotRestoreErrorItem", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

Contains the parameters for DescribeSpotFleetRequests.

", + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisableFastSnapshotRestoreStateError": { + "com.amazonaws.ec2#DescribeSpotFleetRequestsResponse": { "type": "structure", "members": { - "Code": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The error code.

", - "smithy.api#xmlName": "code" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#xmlName": "nextToken" } }, - "Message": { - "target": "com.amazonaws.ec2#String", + "SpotFleetRequestConfigs": { + "target": "com.amazonaws.ec2#SpotFleetRequestConfigSet", "traits": { - "aws.protocols#ec2QueryName": "Message", - "smithy.api#documentation": "

The error message.

", - "smithy.api#xmlName": "message" + "aws.protocols#ec2QueryName": "SpotFleetRequestConfigSet", + "smithy.api#documentation": "

Information about the configuration of your Spot Fleet.

", + "smithy.api#xmlName": "spotFleetRequestConfigSet" } } }, "traits": { - "smithy.api#documentation": "

Describes an error that occurred when disabling fast snapshot restores.

" + "smithy.api#documentation": "

Contains the output of DescribeSpotFleetRequests.

", + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisableFastSnapshotRestoreStateErrorItem": { + "com.amazonaws.ec2#DescribeSpotInstanceRequests": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeSpotInstanceRequestsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeSpotInstanceRequestsResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the specified Spot Instance requests.

\n

You can use DescribeSpotInstanceRequests to find a running Spot Instance by\n examining the response. If the status of the Spot Instance is fulfilled, the\n instance ID appears in the response and contains the identifier of the instance.\n Alternatively, you can use DescribeInstances\n with a filter to look for instances where the instance lifecycle is\n spot.

\n

We recommend that you set MaxResults to a value between 5 and 1000 to\n limit the number of items returned. This paginates the output, which makes the list\n more manageable and returns the items faster. If the list of items exceeds your\n MaxResults value, then that number of items is returned along with a\n NextToken value that can be passed to a subsequent\n DescribeSpotInstanceRequests request to retrieve the remaining\n items.

\n

Spot Instance requests are deleted four hours after they are canceled and their instances are\n terminated.

", + "smithy.api#examples": [ + { + "title": "To describe a Spot Instance request", + "documentation": "This example describes the specified Spot Instance request.", + "input": { + "SpotInstanceRequestIds": [ + "sir-08b93456" + ] + }, + "output": { + "SpotInstanceRequests": [ + { + "Status": { + "UpdateTime": "2014-04-30T18:16:21.000Z", + "Code": "fulfilled", + "Message": "Your Spot request is fulfilled." + }, + "ProductDescription": "Linux/UNIX", + "InstanceId": "i-1234567890abcdef0", + "SpotInstanceRequestId": "sir-08b93456", + "State": "active", + "LaunchedAvailabilityZone": "us-west-1b", + "LaunchSpecification": { + "ImageId": "ami-7aba833f", + "KeyName": "my-key-pair", + "BlockDeviceMappings": [ + { + "DeviceName": "/dev/sda1", + "Ebs": { + "DeleteOnTermination": true, + "VolumeType": "standard", + "VolumeSize": 8 + } + } + ], + "EbsOptimized": false, + "SecurityGroups": [ + { + "GroupName": "my-security-group", + "GroupId": "sg-e38f24a7" + } + ], + "InstanceType": "m1.small" + }, + "Type": "one-time", + "CreateTime": "2014-04-30T18:14:55.000Z", + "SpotPrice": "0.010000" + } + ] + } + } + ], + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "SpotInstanceRequests", + "pageSize": "MaxResults" + }, + "smithy.api#suppress": [ + "WaitableTraitInvalidErrorType" + ], + "smithy.waiters#waitable": { + "SpotInstanceRequestFulfilled": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "SpotInstanceRequests[].Status.Code", + "expected": "fulfilled", + "comparator": "allStringEquals" + } + } + }, + { + "state": "success", + "matcher": { + "output": { + "path": "SpotInstanceRequests[].Status.Code", + "expected": "request-canceled-and-instance-running", + "comparator": "allStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "SpotInstanceRequests[].Status.Code", + "expected": "schedule-expired", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "SpotInstanceRequests[].Status.Code", + "expected": "canceled-before-fulfillment", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "SpotInstanceRequests[].Status.Code", + "expected": "bad-parameters", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "SpotInstanceRequests[].Status.Code", + "expected": "system-error", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "retry", + "matcher": { + "errorType": "InvalidSpotInstanceRequestID.NotFound" + } + } + ], + "minDelay": 15 + } + } + } + }, + "com.amazonaws.ec2#DescribeSpotInstanceRequestsRequest": { "type": "structure", "members": { - "AvailabilityZone": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone.

", - "smithy.api#xmlName": "availabilityZone" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, - "Error": { - "target": "com.amazonaws.ec2#DisableFastSnapshotRestoreStateError", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "Error", - "smithy.api#documentation": "

The error.

", - "smithy.api#xmlName": "error" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "SpotInstanceRequestIds": { + "target": "com.amazonaws.ec2#SpotInstanceRequestIdList", + "traits": { + "smithy.api#documentation": "

The IDs of the Spot Instance requests.

", + "smithy.api#xmlName": "SpotInstanceRequestId" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, "traits": { - "smithy.api#documentation": "

Contains information about an error that occurred when disabling fast snapshot restores.

" - } - }, - "com.amazonaws.ec2#DisableFastSnapshotRestoreStateErrorSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DisableFastSnapshotRestoreStateErrorItem", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

Contains the parameters for DescribeSpotInstanceRequests.

", + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisableFastSnapshotRestoreSuccessItem": { + "com.amazonaws.ec2#DescribeSpotInstanceRequestsResult": { "type": "structure", "members": { - "SnapshotId": { - "target": "com.amazonaws.ec2#String", + "SpotInstanceRequests": { + "target": "com.amazonaws.ec2#SpotInstanceRequestList", "traits": { - "aws.protocols#ec2QueryName": "SnapshotId", - "smithy.api#documentation": "

The ID of the snapshot.

", - "smithy.api#xmlName": "snapshotId" + "aws.protocols#ec2QueryName": "SpotInstanceRequestSet", + "smithy.api#documentation": "

The Spot Instance requests.

", + "smithy.api#xmlName": "spotInstanceRequestSet" } }, - "AvailabilityZone": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone.

", - "smithy.api#xmlName": "availabilityZone" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#xmlName": "nextToken" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the output of DescribeSpotInstanceRequests.

", + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DescribeSpotPriceHistory": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeSpotPriceHistoryRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeSpotPriceHistoryResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the Spot price history. For more information, see Spot Instance pricing history in the\n Amazon EC2 User Guide.

\n

When you specify a start and end time, the operation returns the prices of the\n instance types within that time range. It also returns the last price change before the\n start time, which is the effective price as of the start time.

", + "smithy.api#examples": [ + { + "title": "To describe Spot price history for Linux/UNIX (Amazon VPC)", + "documentation": "This example returns the Spot Price history for m1.xlarge, Linux/UNIX (Amazon VPC) instances for a particular day in January.", + "input": { + "StartTime": "2014-01-06T07:08:09.05Z", + "EndTime": "2014-01-06T08:09:10.05Z", + "InstanceTypes": [ + "m1.xlarge" + ], + "ProductDescriptions": [ + "Linux/UNIX (Amazon VPC)" + ] + }, + "output": { + "SpotPriceHistory": [ + { + "Timestamp": "2014-01-06T04:32:53.000Z", + "ProductDescription": "Linux/UNIX (Amazon VPC)", + "InstanceType": "m1.xlarge", + "SpotPrice": "0.080000", + "AvailabilityZone": "us-west-1a" + }, + { + "Timestamp": "2014-01-05T11:28:26.000Z", + "ProductDescription": "Linux/UNIX (Amazon VPC)", + "InstanceType": "m1.xlarge", + "SpotPrice": "0.080000", + "AvailabilityZone": "us-west-1c" + } + ] + } + } + ], + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "SpotPriceHistory", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#DescribeSpotPriceHistoryRequest": { + "type": "structure", + "members": { + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#AvailabilityZoneId", + "traits": { + "smithy.api#documentation": "

Filters the results by the specified ID of the Availability Zone.

\n

Either AvailabilityZone or AvailabilityZoneId can be specified, but not both

" } }, - "State": { - "target": "com.amazonaws.ec2#FastSnapshotRestoreStateCode", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of fast snapshot restores for the snapshot.

", - "smithy.api#xmlName": "state" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "StateTransitionReason": { - "target": "com.amazonaws.ec2#String", + "StartTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "StateTransitionReason", - "smithy.api#documentation": "

The reason for the state transition. The possible values are as follows:

\n ", - "smithy.api#xmlName": "stateTransitionReason" + "aws.protocols#ec2QueryName": "StartTime", + "smithy.api#documentation": "

The date and time, up to the past 90 days, from which to start retrieving the price\n history data, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).

", + "smithy.api#xmlName": "startTime" } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "EndTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that enabled fast snapshot restores on the snapshot.

", - "smithy.api#xmlName": "ownerId" + "aws.protocols#ec2QueryName": "EndTime", + "smithy.api#documentation": "

The date and time, up to the current date, from which to stop retrieving the price\n history data, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).

", + "smithy.api#xmlName": "endTime" } }, - "OwnerAlias": { - "target": "com.amazonaws.ec2#String", + "InstanceTypes": { + "target": "com.amazonaws.ec2#InstanceTypeList", "traits": { - "aws.protocols#ec2QueryName": "OwnerAlias", - "smithy.api#documentation": "

The Amazon Web Services owner alias that enabled fast snapshot restores on the snapshot. This is intended for future use.

", - "smithy.api#xmlName": "ownerAlias" + "smithy.api#documentation": "

Filters the results by the specified instance types.

", + "smithy.api#xmlName": "InstanceType" } }, - "EnablingTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "ProductDescriptions": { + "target": "com.amazonaws.ec2#ProductDescriptionList", "traits": { - "aws.protocols#ec2QueryName": "EnablingTime", - "smithy.api#documentation": "

The time at which fast snapshot restores entered the enabling state.

", - "smithy.api#xmlName": "enablingTime" + "smithy.api#documentation": "

Filters the results by the specified basic product descriptions.

", + "smithy.api#xmlName": "ProductDescription" } }, - "OptimizingTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "OptimizingTime", - "smithy.api#documentation": "

The time at which fast snapshot restores entered the optimizing state.

", - "smithy.api#xmlName": "optimizingTime" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "EnabledTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "EnabledTime", - "smithy.api#documentation": "

The time at which fast snapshot restores entered the enabled state.

", - "smithy.api#xmlName": "enabledTime" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

Filters the results by the specified Availability Zone.

\n

Either AvailabilityZone or AvailabilityZoneId can be specified, but not both

", + "smithy.api#xmlName": "availabilityZone" } }, - "DisablingTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "DisablingTime", - "smithy.api#documentation": "

The time at which fast snapshot restores entered the disabling state.

", - "smithy.api#xmlName": "disablingTime" + "aws.protocols#ec2QueryName": "MaxResults", + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

", + "smithy.api#xmlName": "maxResults" } }, - "DisabledTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DisabledTime", - "smithy.api#documentation": "

The time at which fast snapshot restores entered the disabled state.

", - "smithy.api#xmlName": "disabledTime" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Describes fast snapshot restores that were successfully disabled.

" + "smithy.api#documentation": "

Contains the parameters for DescribeSpotPriceHistory.

", + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisableFastSnapshotRestoreSuccessSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DisableFastSnapshotRestoreSuccessItem", - "traits": { - "smithy.api#xmlName": "item" + "com.amazonaws.ec2#DescribeSpotPriceHistoryResult": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is\n an empty string (\"\") or null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" + } + }, + "SpotPriceHistory": { + "target": "com.amazonaws.ec2#SpotPriceHistoryList", + "traits": { + "aws.protocols#ec2QueryName": "SpotPriceHistorySet", + "smithy.api#documentation": "

The historical Spot prices.

", + "smithy.api#xmlName": "spotPriceHistorySet" + } } + }, + "traits": { + "smithy.api#documentation": "

Contains the output of DescribeSpotPriceHistory.

", + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisableFastSnapshotRestores": { + "com.amazonaws.ec2#DescribeStaleSecurityGroups": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisableFastSnapshotRestoresRequest" + "target": "com.amazonaws.ec2#DescribeStaleSecurityGroupsRequest" }, "output": { - "target": "com.amazonaws.ec2#DisableFastSnapshotRestoresResult" + "target": "com.amazonaws.ec2#DescribeStaleSecurityGroupsResult" }, "traits": { - "smithy.api#documentation": "

Disables fast snapshot restores for the specified snapshots in the specified Availability Zones.

" + "smithy.api#documentation": "

Describes the stale security group rules for security groups referenced across a VPC\n peering connection, transit gateway connection, or with a security group VPC\n association. Rules are stale when they reference a deleted security group. Rules can\n also be stale if they reference a security group in a peer VPC for which the VPC peering\n connection has been deleted, across a transit gateway where the transit gateway has been\n deleted (or the transit\n gateway security group referencing feature has been disabled), or if a\n security group VPC association has been disassociated.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "StaleSecurityGroupSet", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisableFastSnapshotRestoresRequest": { + "com.amazonaws.ec2#DescribeStaleSecurityGroupsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 255 + } + } + }, + "com.amazonaws.ec2#DescribeStaleSecurityGroupsNextToken": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + } + } + }, + "com.amazonaws.ec2#DescribeStaleSecurityGroupsRequest": { "type": "structure", "members": { - "AvailabilityZones": { - "target": "com.amazonaws.ec2#AvailabilityZoneStringList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

One or more Availability Zones. For example, us-east-2a.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "AvailabilityZone" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "SourceSnapshotIds": { - "target": "com.amazonaws.ec2#SnapshotIdStringList", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeStaleSecurityGroupsMaxResults", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of one or more snapshots. For example, snap-1234567890abcdef0.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "SourceSnapshotId" + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items,\n make another request with the token returned in the output. For more information, \n see Pagination.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#DescribeStaleSecurityGroupsNextToken", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + } + }, + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#required": {} } } }, @@ -43303,23 +43854,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisableFastSnapshotRestoresResult": { + "com.amazonaws.ec2#DescribeStaleSecurityGroupsResult": { "type": "structure", "members": { - "Successful": { - "target": "com.amazonaws.ec2#DisableFastSnapshotRestoreSuccessSet", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Successful", - "smithy.api#documentation": "

Information about the snapshots for which fast snapshot restores were successfully disabled.

", - "smithy.api#xmlName": "successful" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" } }, - "Unsuccessful": { - "target": "com.amazonaws.ec2#DisableFastSnapshotRestoreErrorSet", + "StaleSecurityGroupSet": { + "target": "com.amazonaws.ec2#StaleSecurityGroupSet", "traits": { - "aws.protocols#ec2QueryName": "Unsuccessful", - "smithy.api#documentation": "

Information about the snapshots for which fast snapshot restores could not be disabled.

", - "smithy.api#xmlName": "unsuccessful" + "aws.protocols#ec2QueryName": "StaleSecurityGroupSet", + "smithy.api#documentation": "

Information about the stale security groups.

", + "smithy.api#xmlName": "staleSecurityGroupSet" } } }, @@ -43327,81 +43878,69 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisableImage": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DisableImageRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DisableImageResult" - }, - "traits": { - "smithy.api#documentation": "

Sets the AMI state to disabled and removes all launch permissions from the\n AMI. A disabled AMI can't be used for instance launches.

\n

A disabled AMI can't be shared. If an AMI was public or previously shared, it is made\n private. If an AMI was shared with an Amazon Web Services account, organization, or Organizational Unit,\n they lose access to the disabled AMI.

\n

A disabled AMI does not appear in DescribeImages API calls by\n default.

\n

Only the AMI owner can disable an AMI.

\n

You can re-enable a disabled AMI using EnableImage.

\n

For more information, see Disable an AMI in the\n Amazon EC2 User Guide.

" - } - }, - "com.amazonaws.ec2#DisableImageBlockPublicAccess": { + "com.amazonaws.ec2#DescribeStoreImageTasks": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisableImageBlockPublicAccessRequest" + "target": "com.amazonaws.ec2#DescribeStoreImageTasksRequest" }, "output": { - "target": "com.amazonaws.ec2#DisableImageBlockPublicAccessResult" + "target": "com.amazonaws.ec2#DescribeStoreImageTasksResult" }, "traits": { - "smithy.api#documentation": "

Disables block public access for AMIs at the account level in the\n specified Amazon Web Services Region. This removes the block public access restriction\n from your account. With the restriction removed, you can publicly share your AMIs in the\n specified Amazon Web Services Region.

\n

The API can take up to 10 minutes to configure this setting. During this time, if you run\n GetImageBlockPublicAccessState, the response will be\n block-new-sharing. When the API has completed the configuration, the response\n will be unblocked.

\n

For more information, see Block public access to your AMIs in\n the Amazon EC2 User Guide.

" - } - }, - "com.amazonaws.ec2#DisableImageBlockPublicAccessRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DisableImageBlockPublicAccessResult": { - "type": "structure", - "members": { - "ImageBlockPublicAccessState": { - "target": "com.amazonaws.ec2#ImageBlockPublicAccessDisabledState", - "traits": { - "aws.protocols#ec2QueryName": "ImageBlockPublicAccessState", - "smithy.api#documentation": "

Returns unblocked if the request succeeds; otherwise, it returns an\n error.

", - "smithy.api#xmlName": "imageBlockPublicAccessState" + "smithy.api#documentation": "

Describes the progress of the AMI store tasks. You can describe the store tasks for\n specified AMIs. If you don't specify the AMIs, you get a paginated list of store tasks from\n the last 31 days.

\n

For each AMI task, the response indicates if the task is InProgress,\n Completed, or Failed. For tasks InProgress, the\n response shows the estimated progress as a percentage.

\n

Tasks are listed in reverse chronological order. Currently, only tasks from the past 31\n days can be viewed.

\n

To use this API, you must have the required permissions. For more information, see Permissions for storing and restoring AMIs using S3 in the\n Amazon EC2 User Guide.

\n

For more information, see Store and restore an AMI using\n S3 in the Amazon EC2 User Guide.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "StoreImageTaskResults", + "pageSize": "MaxResults" + }, + "smithy.waiters#waitable": { + "StoreImageTaskComplete": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "StoreImageTaskResults[].StoreTaskState", + "expected": "Completed", + "comparator": "allStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "StoreImageTaskResults[].StoreTaskState", + "expected": "Failed", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "retry", + "matcher": { + "output": { + "path": "StoreImageTaskResults[].StoreTaskState", + "expected": "InProgress", + "comparator": "anyStringEquals" + } + } + } + ], + "minDelay": 5 } } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DisableImageDeprecation": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DisableImageDeprecationRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DisableImageDeprecationResult" - }, - "traits": { - "smithy.api#documentation": "

Cancels the deprecation of the specified AMI.

\n

For more information, see Deprecate an AMI in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#DisableImageDeprecationRequest": { + "com.amazonaws.ec2#DescribeStoreImageTasksRequest": { "type": "structure", "members": { - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", + "ImageIds": { + "target": "com.amazonaws.ec2#ImageIdList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the AMI.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The AMI IDs for which to show progress. Up to 20 AMI IDs can be included in a\n request.

", + "smithy.api#xmlName": "ImageId" } }, "DryRun": { @@ -43409,21 +43948,57 @@ "traits": { "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

The filters.

\n \n \n

When you specify the ImageIds parameter, any filters that you specify are\n ignored. To use the filters, you must remove the ImageIds parameter.

\n
", + "smithy.api#xmlName": "Filter" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeStoreImageTasksRequestMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

\n

You cannot specify this parameter and the ImageIds parameter in the same\n call.

" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisableImageDeprecationResult": { + "com.amazonaws.ec2#DescribeStoreImageTasksRequestMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 200 + } + } + }, + "com.amazonaws.ec2#DescribeStoreImageTasksResult": { "type": "structure", "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + "StoreImageTaskResults": { + "target": "com.amazonaws.ec2#StoreImageTaskResultSet", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "StoreImageTaskResultSet", + "smithy.api#documentation": "

The information about the AMI store tasks.

", + "smithy.api#xmlName": "storeImageTaskResultSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -43431,71 +44006,115 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisableImageDeregistrationProtection": { + "com.amazonaws.ec2#DescribeSubnets": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisableImageDeregistrationProtectionRequest" + "target": "com.amazonaws.ec2#DescribeSubnetsRequest" }, "output": { - "target": "com.amazonaws.ec2#DisableImageDeregistrationProtectionResult" + "target": "com.amazonaws.ec2#DescribeSubnetsResult" }, "traits": { - "smithy.api#documentation": "

Disables deregistration protection for an AMI. When deregistration protection is disabled,\n the AMI can be deregistered.

\n

If you chose to include a 24-hour cooldown period when you enabled deregistration\n protection for the AMI, then, when you disable deregistration protection, you won’t\n immediately be able to deregister the AMI.

\n

For more information, see Protect an\n AMI from deregistration in the Amazon EC2 User Guide.

" - } - }, - "com.amazonaws.ec2#DisableImageDeregistrationProtectionRequest": { - "type": "structure", - "members": { - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the AMI.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Describes your subnets. The default is to describe all your subnets. \n Alternatively, you can specify specific subnet IDs or filter the results to\n include only the subnets that match specific criteria.

\n

For more information, see Subnets in the\n\t\t\t\tAmazon VPC User Guide.

", + "smithy.api#examples": [ + { + "title": "To describe the subnets for a VPC", + "documentation": "This example describes the subnets for the specified VPC.", + "input": { + "Filters": [ + { + "Name": "vpc-id", + "Values": [ + "vpc-a01106c2" + ] + } + ] + }, + "output": { + "Subnets": [ + { + "VpcId": "vpc-a01106c2", + "CidrBlock": "10.0.1.0/24", + "MapPublicIpOnLaunch": false, + "DefaultForAz": false, + "State": "available", + "AvailabilityZone": "us-east-1c", + "SubnetId": "subnet-9d4a7b6c", + "AvailableIpAddressCount": 251 + } + ] + } } + ], + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "Subnets", + "pageSize": "MaxResults" }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.waiters#waitable": { + "SubnetAvailable": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "Subnets[].State", + "expected": "available", + "comparator": "allStringEquals" + } + } + } + ], + "minDelay": 15 } } - }, + } + }, + "com.amazonaws.ec2#DescribeSubnetsMaxResults": { + "type": "integer", "traits": { - "smithy.api#input": {} + "smithy.api#range": { + "min": 5, + "max": 1000 + } } }, - "com.amazonaws.ec2#DisableImageDeregistrationProtectionResult": { + "com.amazonaws.ec2#DescribeSubnetsRequest": { "type": "structure", "members": { - "Return": { + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" + } + }, + "SubnetIds": { + "target": "com.amazonaws.ec2#SubnetIdStringList", + "traits": { + "smithy.api#documentation": "

The IDs of the subnets.

\n

Default: Describes all your subnets.

", + "smithy.api#xmlName": "SubnetId" + } + }, + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DisableImageRequest": { - "type": "structure", - "members": { - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeSubnetsMaxResults", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the AMI.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, @@ -43503,15 +44122,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisableImageResult": { + "com.amazonaws.ec2#DescribeSubnetsResult": { "type": "structure", "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" + } + }, + "Subnets": { + "target": "com.amazonaws.ec2#SubnetList", + "traits": { + "aws.protocols#ec2QueryName": "SubnetSet", + "smithy.api#documentation": "

Information about the subnets.

", + "smithy.api#xmlName": "subnetSet" } } }, @@ -43519,33 +44146,88 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisableIpamOrganizationAdminAccount": { + "com.amazonaws.ec2#DescribeTags": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisableIpamOrganizationAdminAccountRequest" + "target": "com.amazonaws.ec2#DescribeTagsRequest" }, "output": { - "target": "com.amazonaws.ec2#DisableIpamOrganizationAdminAccountResult" + "target": "com.amazonaws.ec2#DescribeTagsResult" }, "traits": { - "smithy.api#documentation": "

Disable the IPAM account. For more information, see Enable integration with Organizations in the Amazon VPC IPAM User Guide.\n

" + "smithy.api#documentation": "

Describes the specified tags for your EC2 resources.

\n

For more information about tags, see Tag your Amazon EC2 resources in the\n Amazon Elastic Compute Cloud User Guide.

\n \n

We strongly recommend using only paginated requests. Unpaginated requests are\n susceptible to throttling and timeouts.

\n
\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", + "smithy.api#examples": [ + { + "title": "To describe the tags for a single resource", + "documentation": "This example describes the tags for the specified instance.", + "input": { + "Filters": [ + { + "Name": "resource-id", + "Values": [ + "i-1234567890abcdef8" + ] + } + ] + }, + "output": { + "Tags": [ + { + "ResourceType": "instance", + "ResourceId": "i-1234567890abcdef8", + "Value": "test", + "Key": "Stack" + }, + { + "ResourceType": "instance", + "ResourceId": "i-1234567890abcdef8", + "Value": "Beta Server", + "Key": "Name" + } + ] + } + } + ], + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "Tags", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisableIpamOrganizationAdminAccountRequest": { + "com.amazonaws.ec2#DescribeTagsRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "DelegatedAdminAccountId": { + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "MaxResults", + "smithy.api#documentation": "

The maximum number of items to return for this request. This value can be between 5 and 1000. \n To get the next page of items, make another request with the token returned in the output.\n For more information, see Pagination.

", + "smithy.api#xmlName": "maxResults" + } + }, + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Organizations member account ID that you want to disable as IPAM account.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -43553,15 +44235,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisableIpamOrganizationAdminAccountResult": { + "com.amazonaws.ec2#DescribeTagsResult": { "type": "structure", "members": { - "Success": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Success", - "smithy.api#documentation": "

The result of disabling the IPAM account.

", - "smithy.api#xmlName": "success" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagDescriptionList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags.

", + "smithy.api#xmlName": "tagSet" } } }, @@ -43569,25 +44259,57 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisableSerialConsoleAccess": { + "com.amazonaws.ec2#DescribeTrafficMirrorFilterRules": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisableSerialConsoleAccessRequest" + "target": "com.amazonaws.ec2#DescribeTrafficMirrorFilterRulesRequest" }, "output": { - "target": "com.amazonaws.ec2#DisableSerialConsoleAccessResult" + "target": "com.amazonaws.ec2#DescribeTrafficMirrorFilterRulesResult" }, "traits": { - "smithy.api#documentation": "

Disables access to the EC2 serial console of all instances for your account. By default,\n\t\t\taccess to the EC2 serial console is disabled for your account. For more information, see\n\t\t\t\tManage account access to the EC2 serial console in the Amazon EC2\n\t\t\t\tUser Guide.

" + "smithy.api#documentation": "

Describe traffic mirror filters that determine the traffic that is mirrored.

" } }, - "com.amazonaws.ec2#DisableSerialConsoleAccessRequest": { + "com.amazonaws.ec2#DescribeTrafficMirrorFilterRulesRequest": { "type": "structure", "members": { + "TrafficMirrorFilterRuleIds": { + "target": "com.amazonaws.ec2#TrafficMirrorFilterRuleIdList", + "traits": { + "smithy.api#documentation": "

Traffic filter rule IDs.

", + "smithy.api#xmlName": "TrafficMirrorFilterRuleId" + } + }, + "TrafficMirrorFilterId": { + "target": "com.amazonaws.ec2#TrafficMirrorFilterId", + "traits": { + "smithy.api#documentation": "

Traffic filter ID.

" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

Traffic mirror filters.

\n ", + "smithy.api#xmlName": "Filter" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#TrafficMirroringMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" } } }, @@ -43595,15 +44317,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisableSerialConsoleAccessResult": { + "com.amazonaws.ec2#DescribeTrafficMirrorFilterRulesResult": { "type": "structure", "members": { - "SerialConsoleAccessEnabled": { - "target": "com.amazonaws.ec2#Boolean", + "TrafficMirrorFilterRules": { + "target": "com.amazonaws.ec2#TrafficMirrorFilterRuleSet", "traits": { - "aws.protocols#ec2QueryName": "SerialConsoleAccessEnabled", - "smithy.api#documentation": "

If true, access to the EC2 serial console of all instances is enabled for\n\t\t\tyour account. If false, access to the EC2 serial console of all instances\n\t\t\tis disabled for your account.

", - "smithy.api#xmlName": "serialConsoleAccessEnabled" + "aws.protocols#ec2QueryName": "TrafficMirrorFilterRuleSet", + "smithy.api#documentation": "

Traffic mirror rules.

", + "smithy.api#xmlName": "trafficMirrorFilterRuleSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. The value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -43611,41 +44341,81 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisableSnapshotBlockPublicAccess": { + "com.amazonaws.ec2#DescribeTrafficMirrorFilters": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisableSnapshotBlockPublicAccessRequest" + "target": "com.amazonaws.ec2#DescribeTrafficMirrorFiltersRequest" }, "output": { - "target": "com.amazonaws.ec2#DisableSnapshotBlockPublicAccessResult" + "target": "com.amazonaws.ec2#DescribeTrafficMirrorFiltersResult" }, "traits": { - "smithy.api#documentation": "

Disables the block public access for snapshots setting at \n the account level for the specified Amazon Web Services Region. After you disable block public \n access for snapshots in a Region, users can publicly share snapshots in that Region.

\n

If block public access is enabled in block-all-sharing mode, and \n you disable block public access, all snapshots that were previously publicly shared \n are no longer treated as private and they become publicly accessible again.

\n

For more information, see \n Block public access for snapshots in the Amazon EBS User Guide .

\n

" + "smithy.api#documentation": "

Describes one or more Traffic Mirror filters.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "TrafficMirrorFilters", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisableSnapshotBlockPublicAccessRequest": { + "com.amazonaws.ec2#DescribeTrafficMirrorFiltersRequest": { "type": "structure", "members": { + "TrafficMirrorFilterIds": { + "target": "com.amazonaws.ec2#TrafficMirrorFilterIdList", + "traits": { + "smithy.api#documentation": "

The ID of the Traffic Mirror filter.

", + "smithy.api#xmlName": "TrafficMirrorFilterId" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#xmlName": "Filter" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#TrafficMirroringMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisableSnapshotBlockPublicAccessResult": { + "com.amazonaws.ec2#DescribeTrafficMirrorFiltersResult": { "type": "structure", "members": { - "State": { - "target": "com.amazonaws.ec2#SnapshotBlockPublicAccessState", + "TrafficMirrorFilters": { + "target": "com.amazonaws.ec2#TrafficMirrorFilterSet", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

Returns unblocked if the request succeeds.

", - "smithy.api#xmlName": "state" + "aws.protocols#ec2QueryName": "TrafficMirrorFilterSet", + "smithy.api#documentation": "

Information about one or more Traffic Mirror filters.

", + "smithy.api#xmlName": "trafficMirrorFilterSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. The value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -43653,33 +44423,32 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisableTransitGatewayRouteTablePropagation": { + "com.amazonaws.ec2#DescribeTrafficMirrorSessions": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisableTransitGatewayRouteTablePropagationRequest" + "target": "com.amazonaws.ec2#DescribeTrafficMirrorSessionsRequest" }, "output": { - "target": "com.amazonaws.ec2#DisableTransitGatewayRouteTablePropagationResult" + "target": "com.amazonaws.ec2#DescribeTrafficMirrorSessionsResult" }, "traits": { - "smithy.api#documentation": "

Disables the specified resource attachment from propagating routes to the specified\n propagation route table.

" + "smithy.api#documentation": "

Describes one or more Traffic Mirror sessions. By default, all Traffic Mirror sessions are described. Alternatively, you can filter the results.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "TrafficMirrorSessions", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisableTransitGatewayRouteTablePropagationRequest": { + "com.amazonaws.ec2#DescribeTrafficMirrorSessionsRequest": { "type": "structure", "members": { - "TransitGatewayRouteTableId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the propagation route table.

", - "smithy.api#required": {} - } - }, - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "TrafficMirrorSessionIds": { + "target": "com.amazonaws.ec2#TrafficMirrorSessionIdList", "traits": { - "smithy.api#documentation": "

The ID of the attachment.

" + "smithy.api#documentation": "

The ID of the Traffic Mirror session.

", + "smithy.api#xmlName": "TrafficMirrorSessionId" } }, "DryRun": { @@ -43688,26 +44457,47 @@ "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "TransitGatewayRouteTableAnnouncementId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableAnnouncementId", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The ID of the route table announcement.

" + "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#xmlName": "Filter" } - } - }, + }, + "MaxResults": { + "target": "com.amazonaws.ec2#TrafficMirroringMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + } + }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisableTransitGatewayRouteTablePropagationResult": { + "com.amazonaws.ec2#DescribeTrafficMirrorSessionsResult": { "type": "structure", "members": { - "Propagation": { - "target": "com.amazonaws.ec2#TransitGatewayPropagation", + "TrafficMirrorSessions": { + "target": "com.amazonaws.ec2#TrafficMirrorSessionSet", "traits": { - "aws.protocols#ec2QueryName": "Propagation", - "smithy.api#documentation": "

Information about route propagation.

", - "smithy.api#xmlName": "propagation" + "aws.protocols#ec2QueryName": "TrafficMirrorSessionSet", + "smithy.api#documentation": "

Describes one or more Traffic Mirror sessions. By default, all Traffic Mirror sessions are described. Alternatively, you can filter the results.

", + "smithy.api#xmlName": "trafficMirrorSessionSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. The value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -43715,133 +44505,138 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisableVgwRoutePropagation": { + "com.amazonaws.ec2#DescribeTrafficMirrorTargets": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisableVgwRoutePropagationRequest" + "target": "com.amazonaws.ec2#DescribeTrafficMirrorTargetsRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.ec2#DescribeTrafficMirrorTargetsResult" }, "traits": { - "smithy.api#documentation": "

Disables a virtual private gateway (VGW) from propagating routes to a specified route\n table of a VPC.

", - "smithy.api#examples": [ - { - "title": "To disable route propagation", - "documentation": "This example disables the specified virtual private gateway from propagating static routes to the specified route table.", - "input": { - "RouteTableId": "rtb-22574640", - "GatewayId": "vgw-9a4cacf3" - } - } - ] + "smithy.api#documentation": "

Information about one or more Traffic Mirror targets.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "TrafficMirrorTargets", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisableVgwRoutePropagationRequest": { + "com.amazonaws.ec2#DescribeTrafficMirrorTargetsRequest": { "type": "structure", "members": { - "GatewayId": { - "target": "com.amazonaws.ec2#VpnGatewayId", + "TrafficMirrorTargetIds": { + "target": "com.amazonaws.ec2#TrafficMirrorTargetIdList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the virtual private gateway.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The ID of the Traffic Mirror targets.

", + "smithy.api#xmlName": "TrafficMirrorTargetId" } }, - "RouteTableId": { - "target": "com.amazonaws.ec2#RouteTableId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the route table.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#xmlName": "Filter" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#TrafficMirroringMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for DisableVgwRoutePropagation.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisableVpcClassicLink": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DisableVpcClassicLinkRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DisableVpcClassicLinkResult" + "com.amazonaws.ec2#DescribeTrafficMirrorTargetsResult": { + "type": "structure", + "members": { + "TrafficMirrorTargets": { + "target": "com.amazonaws.ec2#TrafficMirrorTargetSet", + "traits": { + "aws.protocols#ec2QueryName": "TrafficMirrorTargetSet", + "smithy.api#documentation": "

Information about one or more Traffic Mirror targets.

", + "smithy.api#xmlName": "trafficMirrorTargetSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. The value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" + } + } }, "traits": { - "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC that has EC2-Classic instances\n linked to it.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisableVpcClassicLinkDnsSupport": { + "com.amazonaws.ec2#DescribeTransitGatewayAttachments": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisableVpcClassicLinkDnsSupportRequest" + "target": "com.amazonaws.ec2#DescribeTransitGatewayAttachmentsRequest" }, "output": { - "target": "com.amazonaws.ec2#DisableVpcClassicLinkDnsSupportResult" + "target": "com.amazonaws.ec2#DescribeTransitGatewayAttachmentsResult" }, "traits": { - "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Disables ClassicLink DNS support for a VPC. If disabled, DNS hostnames resolve to\n\t\t\tpublic IP addresses when addressed between a linked EC2-Classic instance and instances\n\t\t\tin the VPC to which it's linked.

\n

You must specify a VPC ID in the request.

" + "smithy.api#documentation": "

Describes one or more attachments between resources and transit gateways. By default, all attachments are described.\n Alternatively, you can filter the results by attachment ID, attachment state, resource ID, or resource owner.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "TransitGatewayAttachments", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisableVpcClassicLinkDnsSupportRequest": { + "com.amazonaws.ec2#DescribeTransitGatewayAttachmentsRequest": { "type": "structure", "members": { - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "TransitGatewayAttachmentIds": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentIdStringList", "traits": { - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#xmlName": "VpcId" + "smithy.api#documentation": "

The IDs of the attachments.

" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DisableVpcClassicLinkDnsSupportResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#xmlName": "Filter" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#DisableVpcClassicLinkRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "MaxResults": { + "target": "com.amazonaws.ec2#TransitGatewayMaxResults", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "vpcId" + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -43849,15 +44644,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisableVpcClassicLinkResult": { + "com.amazonaws.ec2#DescribeTransitGatewayAttachmentsResult": { "type": "structure", "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + "TransitGatewayAttachments": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentList", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "TransitGatewayAttachments", + "smithy.api#documentation": "

Information about the attachments.

", + "smithy.api#xmlName": "transitGatewayAttachments" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -43865,90 +44668,56 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisassociateAddress": { + "com.amazonaws.ec2#DescribeTransitGatewayConnectPeers": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisassociateAddressRequest" + "target": "com.amazonaws.ec2#DescribeTransitGatewayConnectPeersRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.ec2#DescribeTransitGatewayConnectPeersResult" }, "traits": { - "smithy.api#documentation": "

Disassociates an Elastic IP address from the instance or network interface it's associated with.

\n

This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error.

", - "smithy.api#examples": [ - { - "title": "To disassociate an Elastic IP address", - "documentation": "This example disassociates an Elastic IP address from an instance.", - "input": { - "AssociationId": "eipassoc-2bebb745" - } - } - ] + "smithy.api#documentation": "

Describes one or more Connect peers.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "TransitGatewayConnectPeers", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisassociateAddressRequest": { + "com.amazonaws.ec2#DescribeTransitGatewayConnectPeersRequest": { "type": "structure", "members": { - "AssociationId": { - "target": "com.amazonaws.ec2#ElasticIpAssociationId", + "TransitGatewayConnectPeerIds": { + "target": "com.amazonaws.ec2#TransitGatewayConnectPeerIdStringList", "traits": { - "smithy.api#documentation": "

The association ID. This parameter is required.

" + "smithy.api#documentation": "

The IDs of the Connect peers.

" } }, - "PublicIp": { - "target": "com.amazonaws.ec2#EipAllocationPublicIp", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

Deprecated.

" + "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#xmlName": "Filter" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DisassociateClientVpnTargetNetwork": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DisassociateClientVpnTargetNetworkRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DisassociateClientVpnTargetNetworkResult" - }, - "traits": { - "smithy.api#documentation": "

Disassociates a target network from the specified Client VPN endpoint. When you disassociate the \n\t\t\tlast target network from a Client VPN, the following happens:

\n " - } - }, - "com.amazonaws.ec2#DisassociateClientVpnTargetNetworkRequest": { - "type": "structure", - "members": { - "ClientVpnEndpointId": { - "target": "com.amazonaws.ec2#ClientVpnEndpointId", + "MaxResults": { + "target": "com.amazonaws.ec2#TransitGatewayMaxResults", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Client VPN endpoint from which to disassociate the target network.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "AssociationId": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the target network association.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The token for the next page of results.

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -43956,23 +44725,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisassociateClientVpnTargetNetworkResult": { + "com.amazonaws.ec2#DescribeTransitGatewayConnectPeersResult": { "type": "structure", "members": { - "AssociationId": { - "target": "com.amazonaws.ec2#String", + "TransitGatewayConnectPeers": { + "target": "com.amazonaws.ec2#TransitGatewayConnectPeerList", "traits": { - "aws.protocols#ec2QueryName": "AssociationId", - "smithy.api#documentation": "

The ID of the target network association.

", - "smithy.api#xmlName": "associationId" + "aws.protocols#ec2QueryName": "TransitGatewayConnectPeerSet", + "smithy.api#documentation": "

Information about the Connect peers.

", + "smithy.api#xmlName": "transitGatewayConnectPeerSet" } }, - "Status": { - "target": "com.amazonaws.ec2#AssociationStatus", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The current state of the target network association.

", - "smithy.api#xmlName": "status" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -43980,41 +44749,56 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisassociateEnclaveCertificateIamRole": { + "com.amazonaws.ec2#DescribeTransitGatewayConnects": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisassociateEnclaveCertificateIamRoleRequest" + "target": "com.amazonaws.ec2#DescribeTransitGatewayConnectsRequest" }, "output": { - "target": "com.amazonaws.ec2#DisassociateEnclaveCertificateIamRoleResult" + "target": "com.amazonaws.ec2#DescribeTransitGatewayConnectsResult" }, "traits": { - "smithy.api#documentation": "

Disassociates an IAM role from an Certificate Manager (ACM) certificate. Disassociating an IAM role \n\t\t\tfrom an ACM certificate removes the Amazon S3 object that contains the certificate, certificate chain, and \n\t\t\tencrypted private key from the Amazon S3 bucket. It also revokes the IAM role's permission to use the\n\t\t\tKMS key used to encrypt the private key. This effectively revokes the role's permission \n\t\t\tto use the certificate.

" + "smithy.api#documentation": "

Describes one or more Connect attachments.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "TransitGatewayConnects", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisassociateEnclaveCertificateIamRoleRequest": { + "com.amazonaws.ec2#DescribeTransitGatewayConnectsRequest": { "type": "structure", "members": { - "CertificateArn": { - "target": "com.amazonaws.ec2#CertificateId", + "TransitGatewayAttachmentIds": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentIdStringList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ARN of the ACM certificate from which to disassociate the IAM role.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The IDs of the attachments.

" } }, - "RoleArn": { - "target": "com.amazonaws.ec2#RoleId", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ARN of the IAM role to disassociate.

", - "smithy.api#required": {} + "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#xmlName": "Filter" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -44022,15 +44806,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisassociateEnclaveCertificateIamRoleResult": { + "com.amazonaws.ec2#DescribeTransitGatewayConnectsResult": { "type": "structure", "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + "TransitGatewayConnects": { + "target": "com.amazonaws.ec2#TransitGatewayConnectList", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "TransitGatewayConnectSet", + "smithy.api#documentation": "

Information about the Connect attachments.

", + "smithy.api#xmlName": "transitGatewayConnectSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -44038,47 +44830,56 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisassociateIamInstanceProfile": { + "com.amazonaws.ec2#DescribeTransitGatewayMulticastDomains": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisassociateIamInstanceProfileRequest" + "target": "com.amazonaws.ec2#DescribeTransitGatewayMulticastDomainsRequest" }, "output": { - "target": "com.amazonaws.ec2#DisassociateIamInstanceProfileResult" + "target": "com.amazonaws.ec2#DescribeTransitGatewayMulticastDomainsResult" }, "traits": { - "smithy.api#documentation": "

Disassociates an IAM instance profile from a running or stopped instance.

\n

Use DescribeIamInstanceProfileAssociations to get the association\n ID.

", - "smithy.api#examples": [ - { - "title": "To disassociate an IAM instance profile", - "documentation": "This example disassociates the specified IAM instance profile from an instance.", - "input": { - "AssociationId": "iip-assoc-05020b59952902f5f" - }, - "output": { - "IamInstanceProfileAssociation": { - "InstanceId": "i-123456789abcde123", - "State": "disassociating", - "AssociationId": "iip-assoc-05020b59952902f5f", - "IamInstanceProfile": { - "Id": "AIPAI5IVIHMFFYY2DKV5Y", - "Arn": "arn:aws:iam::123456789012:instance-profile/admin-role" - } - } - } - } - ] + "smithy.api#documentation": "

Describes one or more transit gateway multicast domains.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "TransitGatewayMulticastDomains", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisassociateIamInstanceProfileRequest": { + "com.amazonaws.ec2#DescribeTransitGatewayMulticastDomainsRequest": { "type": "structure", "members": { - "AssociationId": { - "target": "com.amazonaws.ec2#IamInstanceProfileAssociationId", + "TransitGatewayMulticastDomainIds": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainIdStringList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the IAM instance profile association.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#xmlName": "Filter" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -44086,15 +44887,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisassociateIamInstanceProfileResult": { + "com.amazonaws.ec2#DescribeTransitGatewayMulticastDomainsResult": { "type": "structure", "members": { - "IamInstanceProfileAssociation": { - "target": "com.amazonaws.ec2#IamInstanceProfileAssociation", + "TransitGatewayMulticastDomains": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainList", "traits": { - "aws.protocols#ec2QueryName": "IamInstanceProfileAssociation", - "smithy.api#documentation": "

Information about the IAM instance profile association.

", - "smithy.api#xmlName": "iamInstanceProfileAssociation" + "aws.protocols#ec2QueryName": "TransitGatewayMulticastDomains", + "smithy.api#documentation": "

Information about the transit gateway multicast domains.

", + "smithy.api#xmlName": "transitGatewayMulticastDomains" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -44102,41 +44911,56 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisassociateInstanceEventWindow": { + "com.amazonaws.ec2#DescribeTransitGatewayPeeringAttachments": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisassociateInstanceEventWindowRequest" + "target": "com.amazonaws.ec2#DescribeTransitGatewayPeeringAttachmentsRequest" }, "output": { - "target": "com.amazonaws.ec2#DisassociateInstanceEventWindowResult" + "target": "com.amazonaws.ec2#DescribeTransitGatewayPeeringAttachmentsResult" }, "traits": { - "smithy.api#documentation": "

Disassociates one or more targets from an event window.

\n

For more information, see Define event windows for scheduled\n events in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Describes your transit gateway peering attachments.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "TransitGatewayPeeringAttachments", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisassociateInstanceEventWindowRequest": { + "com.amazonaws.ec2#DescribeTransitGatewayPeeringAttachmentsRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "TransitGatewayAttachmentIds": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentIdStringList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

One or more IDs of the transit gateway peering attachments.

" } }, - "InstanceEventWindowId": { - "target": "com.amazonaws.ec2#InstanceEventWindowId", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the event window.

", - "smithy.api#required": {} + "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#xmlName": "Filter" } }, - "AssociationTarget": { - "target": "com.amazonaws.ec2#InstanceEventWindowDisassociationRequest", + "MaxResults": { + "target": "com.amazonaws.ec2#TransitGatewayMaxResults", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

One or more targets to disassociate from the specified event window.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -44144,15 +44968,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisassociateInstanceEventWindowResult": { + "com.amazonaws.ec2#DescribeTransitGatewayPeeringAttachmentsResult": { "type": "structure", "members": { - "InstanceEventWindow": { - "target": "com.amazonaws.ec2#InstanceEventWindow", + "TransitGatewayPeeringAttachments": { + "target": "com.amazonaws.ec2#TransitGatewayPeeringAttachmentList", "traits": { - "aws.protocols#ec2QueryName": "InstanceEventWindow", - "smithy.api#documentation": "

Information about the event window.

", - "smithy.api#xmlName": "instanceEventWindow" + "aws.protocols#ec2QueryName": "TransitGatewayPeeringAttachments", + "smithy.api#documentation": "

The transit gateway peering attachments.

", + "smithy.api#xmlName": "transitGatewayPeeringAttachments" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -44160,41 +44992,56 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisassociateIpamByoasn": { + "com.amazonaws.ec2#DescribeTransitGatewayPolicyTables": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisassociateIpamByoasnRequest" + "target": "com.amazonaws.ec2#DescribeTransitGatewayPolicyTablesRequest" }, "output": { - "target": "com.amazonaws.ec2#DisassociateIpamByoasnResult" + "target": "com.amazonaws.ec2#DescribeTransitGatewayPolicyTablesResult" }, "traits": { - "smithy.api#documentation": "

Remove the association between your Autonomous System Number (ASN) and your BYOIP CIDR. You may want to use this action to disassociate an ASN from a CIDR or if you want to swap ASNs. \n For more information, see Tutorial: Bring your ASN to IPAM in the Amazon VPC IPAM guide.

" + "smithy.api#documentation": "

Describes one or more transit gateway route policy tables.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "TransitGatewayPolicyTables", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisassociateIpamByoasnRequest": { + "com.amazonaws.ec2#DescribeTransitGatewayPolicyTablesRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "TransitGatewayPolicyTableIds": { + "target": "com.amazonaws.ec2#TransitGatewayPolicyTableIdStringList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The IDs of the transit gateway policy tables.

" } }, - "Asn": { - "target": "com.amazonaws.ec2#String", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A public 2-byte or 4-byte ASN.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The filters associated with the transit gateway policy table.

", + "smithy.api#xmlName": "Filter" } }, - "Cidr": { + "MaxResults": { + "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A BYOIP CIDR.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -44202,15 +45049,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisassociateIpamByoasnResult": { + "com.amazonaws.ec2#DescribeTransitGatewayPolicyTablesResult": { "type": "structure", "members": { - "AsnAssociation": { - "target": "com.amazonaws.ec2#AsnAssociation", + "TransitGatewayPolicyTables": { + "target": "com.amazonaws.ec2#TransitGatewayPolicyTableList", "traits": { - "aws.protocols#ec2QueryName": "AsnAssociation", - "smithy.api#documentation": "

An ASN and BYOIP CIDR association.

", - "smithy.api#xmlName": "asnAssociation" + "aws.protocols#ec2QueryName": "TransitGatewayPolicyTables", + "smithy.api#documentation": "

Describes the transit gateway policy tables.

", + "smithy.api#xmlName": "transitGatewayPolicyTables" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token for the next page of results.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -44218,33 +45073,56 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisassociateIpamResourceDiscovery": { + "com.amazonaws.ec2#DescribeTransitGatewayRouteTableAnnouncements": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisassociateIpamResourceDiscoveryRequest" + "target": "com.amazonaws.ec2#DescribeTransitGatewayRouteTableAnnouncementsRequest" }, "output": { - "target": "com.amazonaws.ec2#DisassociateIpamResourceDiscoveryResult" + "target": "com.amazonaws.ec2#DescribeTransitGatewayRouteTableAnnouncementsResult" }, "traits": { - "smithy.api#documentation": "

Disassociates a resource discovery from an Amazon VPC IPAM. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

" + "smithy.api#documentation": "

Describes one or more transit gateway route table advertisements.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "TransitGatewayRouteTableAnnouncements", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisassociateIpamResourceDiscoveryRequest": { + "com.amazonaws.ec2#DescribeTransitGatewayRouteTableAnnouncementsRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "TransitGatewayRouteTableAnnouncementIds": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableAnnouncementIdStringList", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The IDs of the transit gateway route tables that are being advertised.

" } }, - "IpamResourceDiscoveryAssociationId": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryAssociationId", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A resource discovery association ID.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The filters associated with the transit gateway policy table.

", + "smithy.api#xmlName": "Filter" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -44252,15 +45130,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisassociateIpamResourceDiscoveryResult": { + "com.amazonaws.ec2#DescribeTransitGatewayRouteTableAnnouncementsResult": { "type": "structure", "members": { - "IpamResourceDiscoveryAssociation": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryAssociation", + "TransitGatewayRouteTableAnnouncements": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableAnnouncementList", "traits": { - "aws.protocols#ec2QueryName": "IpamResourceDiscoveryAssociation", - "smithy.api#documentation": "

A resource discovery association.

", - "smithy.api#xmlName": "ipamResourceDiscoveryAssociation" + "aws.protocols#ec2QueryName": "TransitGatewayRouteTableAnnouncements", + "smithy.api#documentation": "

Describes the transit gateway route table announcement.

", + "smithy.api#xmlName": "transitGatewayRouteTableAnnouncements" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token for the next page of results.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -44268,42 +45154,50 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisassociateNatGatewayAddress": { + "com.amazonaws.ec2#DescribeTransitGatewayRouteTables": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisassociateNatGatewayAddressRequest" + "target": "com.amazonaws.ec2#DescribeTransitGatewayRouteTablesRequest" }, "output": { - "target": "com.amazonaws.ec2#DisassociateNatGatewayAddressResult" + "target": "com.amazonaws.ec2#DescribeTransitGatewayRouteTablesResult" }, "traits": { - "smithy.api#documentation": "

Disassociates secondary Elastic IP addresses (EIPs) from a public NAT gateway. \n You cannot disassociate your primary EIP. For more information, see Edit secondary IP address associations in the Amazon VPC User Guide.

\n

While disassociating is in progress, you cannot associate/disassociate additional EIPs while the connections are being drained. You are, however, allowed to delete the NAT gateway.

\n

An EIP is released only at the end of MaxDrainDurationSeconds. It stays\n associated and supports the existing connections but does not support any new connections\n (new connections are distributed across the remaining associated EIPs). As the existing\n connections drain out, the EIPs (and the corresponding private IP addresses mapped to them) \n are released.

" + "smithy.api#documentation": "

Describes one or more transit gateway route tables. By default, all transit gateway route tables are described.\n Alternatively, you can filter the results.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "TransitGatewayRouteTables", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisassociateNatGatewayAddressRequest": { + "com.amazonaws.ec2#DescribeTransitGatewayRouteTablesRequest": { "type": "structure", "members": { - "NatGatewayId": { - "target": "com.amazonaws.ec2#NatGatewayId", + "TransitGatewayRouteTableIds": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableIdStringList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the NAT gateway.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The IDs of the transit gateway route tables.

" } }, - "AssociationIds": { - "target": "com.amazonaws.ec2#EipAssociationIdList", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The association IDs of EIPs that have been associated with the NAT gateway.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "AssociationId" + "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#xmlName": "Filter" } }, - "MaxDrainDurationSeconds": { - "target": "com.amazonaws.ec2#DrainSeconds", + "MaxResults": { + "target": "com.amazonaws.ec2#TransitGatewayMaxResults", "traits": { - "smithy.api#documentation": "

The maximum amount of time to wait (in seconds) before forcibly releasing the IP addresses if connections are still in progress. Default value is 350 seconds.

" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" } }, "DryRun": { @@ -44317,23 +45211,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisassociateNatGatewayAddressResult": { + "com.amazonaws.ec2#DescribeTransitGatewayRouteTablesResult": { "type": "structure", "members": { - "NatGatewayId": { - "target": "com.amazonaws.ec2#NatGatewayId", + "TransitGatewayRouteTables": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableList", "traits": { - "aws.protocols#ec2QueryName": "NatGatewayId", - "smithy.api#documentation": "

The ID of the NAT gateway.

", - "smithy.api#xmlName": "natGatewayId" + "aws.protocols#ec2QueryName": "TransitGatewayRouteTables", + "smithy.api#documentation": "

Information about the transit gateway route tables.

", + "smithy.api#xmlName": "transitGatewayRouteTables" } }, - "NatGatewayAddresses": { - "target": "com.amazonaws.ec2#NatGatewayAddressList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NatGatewayAddressSet", - "smithy.api#documentation": "

Information about the NAT gateway IP addresses.

", - "smithy.api#xmlName": "natGatewayAddressSet" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -44341,76 +45235,56 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisassociateRouteTable": { + "com.amazonaws.ec2#DescribeTransitGatewayVpcAttachments": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisassociateRouteTableRequest" + "target": "com.amazonaws.ec2#DescribeTransitGatewayVpcAttachmentsRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.ec2#DescribeTransitGatewayVpcAttachmentsResult" }, "traits": { - "smithy.api#documentation": "

Disassociates a subnet or gateway from a route table.

\n

After you perform this action, the subnet no longer uses the routes in the route table.\n\t\t\t\tInstead, it uses the routes in the VPC's main route table. For more information\n\t\t\t\tabout route tables, see Route\n\t\t\t\ttables in the Amazon VPC User Guide.

", - "smithy.api#examples": [ - { - "title": "To disassociate a route table", - "documentation": "This example disassociates the specified route table from its associated subnet.", - "input": { - "AssociationId": "rtbassoc-781d0d1a" - } - } - ] + "smithy.api#documentation": "

Describes one or more VPC attachments. By default, all VPC attachments are described.\n Alternatively, you can filter the results.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "TransitGatewayVpcAttachments", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisassociateRouteTableRequest": { + "com.amazonaws.ec2#DescribeTransitGatewayVpcAttachmentsRequest": { "type": "structure", "members": { - "AssociationId": { - "target": "com.amazonaws.ec2#RouteTableAssociationId", + "TransitGatewayAttachmentIds": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentIdStringList", "traits": { - "aws.protocols#ec2QueryName": "AssociationId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The association ID representing the current association between the route table and subnet or gateway.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "associationId" + "smithy.api#documentation": "

The IDs of the attachments.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#xmlName": "Filter" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#DisassociateSubnetCidrBlock": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#DisassociateSubnetCidrBlockRequest" - }, - "output": { - "target": "com.amazonaws.ec2#DisassociateSubnetCidrBlockResult" - }, - "traits": { - "smithy.api#documentation": "

Disassociates a CIDR block from a subnet. Currently, you can disassociate an IPv6 CIDR block only. You must detach or delete all gateways and resources that are associated with the CIDR block before you can disassociate it.

" - } - }, - "com.amazonaws.ec2#DisassociateSubnetCidrBlockRequest": { - "type": "structure", - "members": { - "AssociationId": { - "target": "com.amazonaws.ec2#SubnetCidrAssociationId", + }, + "MaxResults": { + "target": "com.amazonaws.ec2#TransitGatewayMaxResults", "traits": { - "aws.protocols#ec2QueryName": "AssociationId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The association ID for the CIDR block.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "associationId" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -44418,23 +45292,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisassociateSubnetCidrBlockResult": { + "com.amazonaws.ec2#DescribeTransitGatewayVpcAttachmentsResult": { "type": "structure", "members": { - "Ipv6CidrBlockAssociation": { - "target": "com.amazonaws.ec2#SubnetIpv6CidrBlockAssociation", + "TransitGatewayVpcAttachments": { + "target": "com.amazonaws.ec2#TransitGatewayVpcAttachmentList", "traits": { - "aws.protocols#ec2QueryName": "Ipv6CidrBlockAssociation", - "smithy.api#documentation": "

Information about the IPv6 CIDR block association.

", - "smithy.api#xmlName": "ipv6CidrBlockAssociation" + "aws.protocols#ec2QueryName": "TransitGatewayVpcAttachments", + "smithy.api#documentation": "

Information about the VPC attachments.

", + "smithy.api#xmlName": "transitGatewayVpcAttachments" } }, - "SubnetId": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#documentation": "

The ID of the subnet.

", - "smithy.api#xmlName": "subnetId" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -44442,43 +45316,50 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisassociateTransitGatewayMulticastDomain": { + "com.amazonaws.ec2#DescribeTransitGateways": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisassociateTransitGatewayMulticastDomainRequest" + "target": "com.amazonaws.ec2#DescribeTransitGatewaysRequest" }, "output": { - "target": "com.amazonaws.ec2#DisassociateTransitGatewayMulticastDomainResult" + "target": "com.amazonaws.ec2#DescribeTransitGatewaysResult" }, "traits": { - "smithy.api#documentation": "

Disassociates the specified subnets from the transit gateway multicast domain.

" + "smithy.api#documentation": "

Describes one or more transit gateways. By default, all transit gateways are described. Alternatively, you can\n filter the results.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "TransitGateways", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisassociateTransitGatewayMulticastDomainRequest": { + "com.amazonaws.ec2#DescribeTransitGatewaysRequest": { "type": "structure", "members": { - "TransitGatewayMulticastDomainId": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainId", + "TransitGatewayIds": { + "target": "com.amazonaws.ec2#TransitGatewayIdStringList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The IDs of the transit gateways.

" } }, - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the attachment.

", - "smithy.api#required": {} + "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#xmlName": "Filter" } }, - "SubnetIds": { - "target": "com.amazonaws.ec2#TransitGatewaySubnetIdList", + "MaxResults": { + "target": "com.amazonaws.ec2#TransitGatewayMaxResults", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the subnets;

", - "smithy.api#required": {} + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" } }, "DryRun": { @@ -44492,15 +45373,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisassociateTransitGatewayMulticastDomainResult": { + "com.amazonaws.ec2#DescribeTransitGatewaysResult": { "type": "structure", "members": { - "Associations": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainAssociations", + "TransitGateways": { + "target": "com.amazonaws.ec2#TransitGatewayList", "traits": { - "aws.protocols#ec2QueryName": "Associations", - "smithy.api#documentation": "

Information about the association.

", - "smithy.api#xmlName": "associations" + "aws.protocols#ec2QueryName": "TransitGatewaySet", + "smithy.api#documentation": "

Information about the transit gateways.

", + "smithy.api#xmlName": "transitGatewaySet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -44508,35 +45397,41 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisassociateTransitGatewayPolicyTable": { + "com.amazonaws.ec2#DescribeTrunkInterfaceAssociations": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisassociateTransitGatewayPolicyTableRequest" + "target": "com.amazonaws.ec2#DescribeTrunkInterfaceAssociationsRequest" }, "output": { - "target": "com.amazonaws.ec2#DisassociateTransitGatewayPolicyTableResult" + "target": "com.amazonaws.ec2#DescribeTrunkInterfaceAssociationsResult" }, "traits": { - "smithy.api#documentation": "

Removes the association between an an attachment and a policy table.

" + "smithy.api#documentation": "

Describes one or more network interface trunk associations.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "InterfaceAssociations", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisassociateTransitGatewayPolicyTableRequest": { + "com.amazonaws.ec2#DescribeTrunkInterfaceAssociationsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 255 + } + } + }, + "com.amazonaws.ec2#DescribeTrunkInterfaceAssociationsRequest": { "type": "structure", "members": { - "TransitGatewayPolicyTableId": { - "target": "com.amazonaws.ec2#TransitGatewayPolicyTableId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the disassociated policy table.

", - "smithy.api#required": {} - } - }, - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "AssociationIds": { + "target": "com.amazonaws.ec2#TrunkInterfaceAssociationIdList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway attachment to disassociate from the policy table.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The IDs of the associations.

", + "smithy.api#xmlName": "AssociationId" } }, "DryRun": { @@ -44544,21 +45439,48 @@ "traits": { "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeTrunkInterfaceAssociationsMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n To retrieve the remaining results, make another call with the returned nextToken value.

" + } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisassociateTransitGatewayPolicyTableResult": { + "com.amazonaws.ec2#DescribeTrunkInterfaceAssociationsResult": { "type": "structure", "members": { - "Association": { - "target": "com.amazonaws.ec2#TransitGatewayPolicyTableAssociation", + "InterfaceAssociations": { + "target": "com.amazonaws.ec2#TrunkInterfaceAssociationList", "traits": { - "aws.protocols#ec2QueryName": "Association", - "smithy.api#documentation": "

Returns details about the transit gateway policy table disassociation.

", - "smithy.api#xmlName": "association" + "aws.protocols#ec2QueryName": "InterfaceAssociationSet", + "smithy.api#documentation": "

Information about the trunk associations.

", + "smithy.api#xmlName": "interfaceAssociationSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -44566,35 +45488,72 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisassociateTransitGatewayRouteTable": { + "com.amazonaws.ec2#DescribeVerifiedAccessEndpoints": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisassociateTransitGatewayRouteTableRequest" + "target": "com.amazonaws.ec2#DescribeVerifiedAccessEndpointsRequest" }, "output": { - "target": "com.amazonaws.ec2#DisassociateTransitGatewayRouteTableResult" + "target": "com.amazonaws.ec2#DescribeVerifiedAccessEndpointsResult" }, "traits": { - "smithy.api#documentation": "

Disassociates a resource attachment from a transit gateway route table.

" - } - }, - "com.amazonaws.ec2#DisassociateTransitGatewayRouteTableRequest": { - "type": "structure", - "members": { - "TransitGatewayRouteTableId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "smithy.api#documentation": "

Describes the specified Amazon Web Services Verified Access endpoints.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "VerifiedAccessEndpoints", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#DescribeVerifiedAccessEndpointsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeVerifiedAccessEndpointsRequest": { + "type": "structure", + "members": { + "VerifiedAccessEndpointIds": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointIdList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway route table.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The ID of the Verified Access endpoint.

", + "smithy.api#xmlName": "VerifiedAccessEndpointId" } }, - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "VerifiedAccessInstanceId": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceId", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the attachment.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The ID of the Verified Access instance.

" + } + }, + "VerifiedAccessGroupId": { + "target": "com.amazonaws.ec2#VerifiedAccessGroupId", + "traits": { + "smithy.api#documentation": "

The ID of the Verified Access group.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeVerifiedAccessEndpointsMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

", + "smithy.api#xmlName": "Filter" } }, "DryRun": { @@ -44608,15 +45567,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisassociateTransitGatewayRouteTableResult": { + "com.amazonaws.ec2#DescribeVerifiedAccessEndpointsResult": { "type": "structure", "members": { - "Association": { - "target": "com.amazonaws.ec2#TransitGatewayAssociation", + "VerifiedAccessEndpoints": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointList", "traits": { - "aws.protocols#ec2QueryName": "Association", - "smithy.api#documentation": "

Information about the association.

", - "smithy.api#xmlName": "association" + "aws.protocols#ec2QueryName": "VerifiedAccessEndpointSet", + "smithy.api#documentation": "

Details about the Verified Access endpoints.

", + "smithy.api#xmlName": "verifiedAccessEndpointSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -44624,34 +45591,66 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisassociateTrunkInterface": { + "com.amazonaws.ec2#DescribeVerifiedAccessGroupMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeVerifiedAccessGroups": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisassociateTrunkInterfaceRequest" + "target": "com.amazonaws.ec2#DescribeVerifiedAccessGroupsRequest" }, "output": { - "target": "com.amazonaws.ec2#DisassociateTrunkInterfaceResult" + "target": "com.amazonaws.ec2#DescribeVerifiedAccessGroupsResult" }, "traits": { - "smithy.api#documentation": "

Removes an association between a branch network interface with a trunk network interface.

" + "smithy.api#documentation": "

Describes the specified Verified Access groups.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "VerifiedAccessGroups", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisassociateTrunkInterfaceRequest": { + "com.amazonaws.ec2#DescribeVerifiedAccessGroupsRequest": { "type": "structure", "members": { - "AssociationId": { - "target": "com.amazonaws.ec2#TrunkInterfaceAssociationId", + "VerifiedAccessGroupIds": { + "target": "com.amazonaws.ec2#VerifiedAccessGroupIdList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the association

", - "smithy.api#required": {} + "smithy.api#documentation": "

The ID of the Verified Access groups.

", + "smithy.api#xmlName": "VerifiedAccessGroupId" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "VerifiedAccessInstanceId": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceId", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see How to Ensure\n Idempotency.

", - "smithy.api#idempotencyToken": {} + "smithy.api#documentation": "

The ID of the Verified Access instance.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeVerifiedAccessGroupMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

", + "smithy.api#xmlName": "Filter" } }, "DryRun": { @@ -44665,23 +45664,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#DisassociateTrunkInterfaceResult": { + "com.amazonaws.ec2#DescribeVerifiedAccessGroupsResult": { "type": "structure", "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + "VerifiedAccessGroups": { + "target": "com.amazonaws.ec2#VerifiedAccessGroupList", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "VerifiedAccessGroupSet", + "smithy.api#documentation": "

Details about the Verified Access groups.

", + "smithy.api#xmlName": "verifiedAccessGroupSet" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see How to Ensure\n Idempotency.

", - "smithy.api#xmlName": "clientToken" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, @@ -44689,1579 +45688,2049 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#DisassociateVpcCidrBlock": { + "com.amazonaws.ec2#DescribeVerifiedAccessInstanceLoggingConfigurations": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#DisassociateVpcCidrBlockRequest" + "target": "com.amazonaws.ec2#DescribeVerifiedAccessInstanceLoggingConfigurationsRequest" }, "output": { - "target": "com.amazonaws.ec2#DisassociateVpcCidrBlockResult" + "target": "com.amazonaws.ec2#DescribeVerifiedAccessInstanceLoggingConfigurationsResult" }, "traits": { - "smithy.api#documentation": "

Disassociates a CIDR block from a VPC. To disassociate the CIDR block, you must\n specify its association ID. You can get the association ID by using\n DescribeVpcs. You must detach or delete all gateways and resources that\n are associated with the CIDR block before you can disassociate it.

\n

You cannot disassociate the CIDR block with which you originally created the VPC (the\n\t\t\tprimary CIDR block).

" + "smithy.api#documentation": "

Describes the specified Amazon Web Services Verified Access instances.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "LoggingConfigurations", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#DisassociateVpcCidrBlockRequest": { - "type": "structure", - "members": { - "AssociationId": { - "target": "com.amazonaws.ec2#VpcCidrAssociationId", - "traits": { - "aws.protocols#ec2QueryName": "AssociationId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The association ID for the CIDR block.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "associationId" - } - } - }, + "com.amazonaws.ec2#DescribeVerifiedAccessInstanceLoggingConfigurationsMaxResults": { + "type": "integer", "traits": { - "smithy.api#input": {} + "smithy.api#range": { + "min": 1, + "max": 10 + } } }, - "com.amazonaws.ec2#DisassociateVpcCidrBlockResult": { + "com.amazonaws.ec2#DescribeVerifiedAccessInstanceLoggingConfigurationsRequest": { "type": "structure", "members": { - "Ipv6CidrBlockAssociation": { - "target": "com.amazonaws.ec2#VpcIpv6CidrBlockAssociation", + "VerifiedAccessInstanceIds": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceIdList", "traits": { - "aws.protocols#ec2QueryName": "Ipv6CidrBlockAssociation", - "smithy.api#documentation": "

Information about the IPv6 CIDR block association.

", - "smithy.api#xmlName": "ipv6CidrBlockAssociation" + "smithy.api#documentation": "

The IDs of the Verified Access instances.

", + "smithy.api#xmlName": "VerifiedAccessInstanceId" } }, - "CidrBlockAssociation": { - "target": "com.amazonaws.ec2#VpcCidrBlockAssociation", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeVerifiedAccessInstanceLoggingConfigurationsMaxResults", "traits": { - "aws.protocols#ec2QueryName": "CidrBlockAssociation", - "smithy.api#documentation": "

Information about the IPv4 CIDR block association.

", - "smithy.api#xmlName": "cidrBlockAssociation" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "VpcId": { - "target": "com.amazonaws.ec2#String", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#xmlName": "vpcId" + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

", + "smithy.api#xmlName": "Filter" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DiskCount": { - "type": "integer" - }, - "com.amazonaws.ec2#DiskImage": { + "com.amazonaws.ec2#DescribeVerifiedAccessInstanceLoggingConfigurationsResult": { "type": "structure", "members": { - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

A description of the disk image.

" - } - }, - "Image": { - "target": "com.amazonaws.ec2#DiskImageDetail", + "LoggingConfigurations": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceLoggingConfigurationList", "traits": { - "smithy.api#documentation": "

Information about the disk image.

" + "aws.protocols#ec2QueryName": "LoggingConfigurationSet", + "smithy.api#documentation": "

The logging configuration for the Verified Access instances.

", + "smithy.api#xmlName": "loggingConfigurationSet" } }, - "Volume": { - "target": "com.amazonaws.ec2#VolumeDetail", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#documentation": "

Information about the volume.

" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Describes a disk image.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DiskImageDescription": { + "com.amazonaws.ec2#DescribeVerifiedAccessInstances": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVerifiedAccessInstancesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVerifiedAccessInstancesResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the specified Amazon Web Services Verified Access instances.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "VerifiedAccessInstances", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#DescribeVerifiedAccessInstancesMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 200 + } + } + }, + "com.amazonaws.ec2#DescribeVerifiedAccessInstancesRequest": { "type": "structure", "members": { - "Checksum": { - "target": "com.amazonaws.ec2#String", + "VerifiedAccessInstanceIds": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceIdList", "traits": { - "aws.protocols#ec2QueryName": "Checksum", - "smithy.api#documentation": "

The checksum computed for the disk image.

", - "smithy.api#xmlName": "checksum" + "smithy.api#documentation": "

The IDs of the Verified Access instances.

", + "smithy.api#xmlName": "VerifiedAccessInstanceId" } }, - "Format": { - "target": "com.amazonaws.ec2#DiskImageFormat", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeVerifiedAccessInstancesMaxResults", "traits": { - "aws.protocols#ec2QueryName": "Format", - "smithy.api#documentation": "

The disk image format.

", - "smithy.api#xmlName": "format" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "ImportManifestUrl": { - "target": "com.amazonaws.ec2#ImportManifestUrl", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "ImportManifestUrl", - "smithy.api#documentation": "

A presigned URL for the import manifest stored in Amazon S3. For information about creating a presigned URL for\n an Amazon S3 object, read the \"Query String Request Authentication Alternative\" section of the Authenticating REST Requests topic in\n the Amazon Simple Storage Service Developer Guide.

\n

For information about the import manifest referenced by this API action, see VM Import Manifest.

", - "smithy.api#xmlName": "importManifestUrl" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "Size": { - "target": "com.amazonaws.ec2#Long", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "Size", - "smithy.api#documentation": "

The size of the disk image, in GiB.

", - "smithy.api#xmlName": "size" + "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

", + "smithy.api#xmlName": "Filter" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Describes a disk image.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DiskImageDetail": { + "com.amazonaws.ec2#DescribeVerifiedAccessInstancesResult": { "type": "structure", "members": { - "Bytes": { - "target": "com.amazonaws.ec2#Long", - "traits": { - "aws.protocols#ec2QueryName": "Bytes", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The size of the disk image, in GiB.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "bytes" - } - }, - "Format": { - "target": "com.amazonaws.ec2#DiskImageFormat", + "VerifiedAccessInstances": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceList", "traits": { - "aws.protocols#ec2QueryName": "Format", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The disk image format.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "format" + "aws.protocols#ec2QueryName": "VerifiedAccessInstanceSet", + "smithy.api#documentation": "

Details about the Verified Access instances.

", + "smithy.api#xmlName": "verifiedAccessInstanceSet" } }, - "ImportManifestUrl": { - "target": "com.amazonaws.ec2#ImportManifestUrl", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "ImportManifestUrl", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A presigned URL for the import manifest stored in Amazon S3 and presented here as an Amazon S3 presigned URL.\n For information about creating a presigned URL for an Amazon S3 object, read the \"Query String Request Authentication\n Alternative\" section of the Authenticating REST Requests topic in the Amazon Simple Storage Service Developer\n Guide.

\n

For information about the import manifest referenced by this API action, see VM Import Manifest.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "importManifestUrl" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Describes a disk image.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DiskImageFormat": { - "type": "enum", - "members": { - "VMDK": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "VMDK" - } - }, - "RAW": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "RAW" - } - }, - "VHD": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "VHD" - } + "com.amazonaws.ec2#DescribeVerifiedAccessTrustProviders": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVerifiedAccessTrustProvidersRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVerifiedAccessTrustProvidersResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the specified Amazon Web Services Verified Access trust providers.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "VerifiedAccessTrustProviders", + "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#DiskImageList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DiskImage" + "com.amazonaws.ec2#DescribeVerifiedAccessTrustProvidersMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 200 + } } }, - "com.amazonaws.ec2#DiskImageVolumeDescription": { + "com.amazonaws.ec2#DescribeVerifiedAccessTrustProvidersRequest": { "type": "structure", "members": { - "Id": { - "target": "com.amazonaws.ec2#String", + "VerifiedAccessTrustProviderIds": { + "target": "com.amazonaws.ec2#VerifiedAccessTrustProviderIdList", "traits": { - "aws.protocols#ec2QueryName": "Id", - "smithy.api#documentation": "

The volume identifier.

", - "smithy.api#xmlName": "id" + "smithy.api#documentation": "

The IDs of the Verified Access trust providers.

", + "smithy.api#xmlName": "VerifiedAccessTrustProviderId" } }, - "Size": { - "target": "com.amazonaws.ec2#Long", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeVerifiedAccessTrustProvidersMaxResults", "traits": { - "aws.protocols#ec2QueryName": "Size", - "smithy.api#documentation": "

The size of the volume, in GiB.

", - "smithy.api#xmlName": "size" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a disk image volume.

" - } - }, - "com.amazonaws.ec2#DiskInfo": { - "type": "structure", - "members": { - "SizeInGB": { - "target": "com.amazonaws.ec2#DiskSize", + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "SizeInGB", - "smithy.api#documentation": "

The size of the disk in GB.

", - "smithy.api#xmlName": "sizeInGB" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "Count": { - "target": "com.amazonaws.ec2#DiskCount", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "Count", - "smithy.api#documentation": "

The number of disks with this configuration.

", - "smithy.api#xmlName": "count" + "smithy.api#documentation": "

One or more filters. Filter names and values are case-sensitive.

", + "smithy.api#xmlName": "Filter" } }, - "Type": { - "target": "com.amazonaws.ec2#DiskType", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Type", - "smithy.api#documentation": "

The type of disk.

", - "smithy.api#xmlName": "type" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Describes a disk.

" - } - }, - "com.amazonaws.ec2#DiskInfoList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DiskInfo", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DiskSize": { - "type": "long" - }, - "com.amazonaws.ec2#DiskType": { - "type": "enum", + "com.amazonaws.ec2#DescribeVerifiedAccessTrustProvidersResult": { + "type": "structure", "members": { - "hdd": { - "target": "smithy.api#Unit", + "VerifiedAccessTrustProviders": { + "target": "com.amazonaws.ec2#VerifiedAccessTrustProviderList", "traits": { - "smithy.api#enumValue": "hdd" + "aws.protocols#ec2QueryName": "VerifiedAccessTrustProviderSet", + "smithy.api#documentation": "

Details about the Verified Access trust providers.

", + "smithy.api#xmlName": "verifiedAccessTrustProviderSet" } }, - "ssd": { - "target": "smithy.api#Unit", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#enumValue": "ssd" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DnsEntry": { + "com.amazonaws.ec2#DescribeVolumeAttribute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVolumeAttributeRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVolumeAttributeResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the specified attribute of the specified volume. You can specify only one\n attribute at a time.

\n

For more information about EBS volumes, see Amazon EBS volumes in the Amazon EBS User Guide.

", + "smithy.api#examples": [ + { + "title": "To describe a volume attribute", + "documentation": "This example describes the ``autoEnableIo`` attribute of the volume with the ID ``vol-049df61146c4d7901``.", + "input": { + "VolumeId": "vol-049df61146c4d7901", + "Attribute": "autoEnableIO" + }, + "output": { + "AutoEnableIO": { + "Value": false + }, + "VolumeId": "vol-049df61146c4d7901" + } + } + ] + } + }, + "com.amazonaws.ec2#DescribeVolumeAttributeRequest": { "type": "structure", "members": { - "DnsName": { - "target": "com.amazonaws.ec2#String", + "Attribute": { + "target": "com.amazonaws.ec2#VolumeAttributeName", "traits": { - "aws.protocols#ec2QueryName": "DnsName", - "smithy.api#documentation": "

The DNS name.

", - "smithy.api#xmlName": "dnsName" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The attribute of the volume. This parameter is required.

", + "smithy.api#required": {} } }, - "HostedZoneId": { - "target": "com.amazonaws.ec2#String", + "VolumeId": { + "target": "com.amazonaws.ec2#VolumeId", "traits": { - "aws.protocols#ec2QueryName": "HostedZoneId", - "smithy.api#documentation": "

The ID of the private hosted zone.

", - "smithy.api#xmlName": "hostedZoneId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the volume.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, "traits": { - "smithy.api#documentation": "

Describes a DNS entry.

" - } - }, - "com.amazonaws.ec2#DnsEntrySet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DnsEntry", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DnsNameState": { - "type": "enum", + "com.amazonaws.ec2#DescribeVolumeAttributeResult": { + "type": "structure", "members": { - "PendingVerification": { - "target": "smithy.api#Unit", + "AutoEnableIO": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", "traits": { - "smithy.api#enumValue": "pendingVerification" + "aws.protocols#ec2QueryName": "AutoEnableIO", + "smithy.api#documentation": "

The state of autoEnableIO attribute.

", + "smithy.api#xmlName": "autoEnableIO" } }, - "Verified": { - "target": "smithy.api#Unit", + "ProductCodes": { + "target": "com.amazonaws.ec2#ProductCodeList", "traits": { - "smithy.api#enumValue": "verified" + "aws.protocols#ec2QueryName": "ProductCodes", + "smithy.api#documentation": "

A list of product codes.

", + "smithy.api#xmlName": "productCodes" } }, - "Failed": { - "target": "smithy.api#Unit", + "VolumeId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "failed" + "aws.protocols#ec2QueryName": "VolumeId", + "smithy.api#documentation": "

The ID of the volume.

", + "smithy.api#xmlName": "volumeId" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DnsOptions": { + "com.amazonaws.ec2#DescribeVolumeStatus": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVolumeStatusRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVolumeStatusResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the status of the specified volumes. Volume status provides the result of the\n checks performed on your volumes to determine events that can impair the performance of your\n volumes. The performance of a volume can be affected if an issue occurs on the volume's\n underlying host. If the volume's underlying host experiences a power outage or system issue,\n after the system is restored, there could be data inconsistencies on the volume. Volume events\n notify you if this occurs. Volume actions notify you if any action needs to be taken in\n response to the event.

\n

The DescribeVolumeStatus operation provides the following information about\n the specified volumes:

\n

\n Status: Reflects the current status of the volume. The possible\n values are ok, impaired , warning, or\n insufficient-data. If all checks pass, the overall status of the volume is\n ok. If the check fails, the overall status is impaired. If the\n status is insufficient-data, then the checks might still be taking place on your\n volume at the time. We recommend that you retry the request. For more information about volume\n status, see Monitor the status of your volumes in the Amazon EBS User Guide.

\n

\n Events: Reflect the cause of a volume status and might require you to\n take action. For example, if your volume returns an impaired status, then the\n volume event might be potential-data-inconsistency. This means that your volume\n has been affected by an issue with the underlying host, has all I/O operations disabled, and\n might have inconsistent data.

\n

\n Actions: Reflect the actions you might have to take in response to an\n event. For example, if the status of the volume is impaired and the volume event\n shows potential-data-inconsistency, then the action shows\n enable-volume-io. This means that you may want to enable the I/O operations for\n the volume and then check the volume for data consistency. For more information, see \n Work with an \n impaired EBS volume.

\n

Volume status is based on the volume status checks, and does not reflect the volume state.\n Therefore, volume status does not indicate volumes in the error state (for\n example, when a volume is incapable of accepting I/O.)

\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", + "smithy.api#examples": [ + { + "title": "To describe the status of a single volume", + "documentation": "This example describes the status for the volume ``vol-1234567890abcdef0``.", + "input": { + "VolumeIds": [ + "vol-1234567890abcdef0" + ] + }, + "output": { + "VolumeStatuses": [ + { + "VolumeStatus": { + "Status": "ok", + "Details": [ + { + "Status": "passed", + "Name": "io-enabled" + }, + { + "Status": "not-applicable", + "Name": "io-performance" + } + ] + }, + "AvailabilityZone": "us-east-1a", + "VolumeId": "vol-1234567890abcdef0", + "Actions": [], + "Events": [] + } + ] + } + }, + { + "title": "To describe the status of impaired volumes", + "documentation": "This example describes the status for all volumes that are impaired. In this example output, there are no impaired volumes.", + "input": { + "Filters": [ + { + "Values": [ + "impaired" + ], + "Name": "volume-status.status" + } + ] + }, + "output": { + "VolumeStatuses": [] + } + } + ], + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "VolumeStatuses", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#DescribeVolumeStatusRequest": { "type": "structure", "members": { - "DnsRecordIpType": { - "target": "com.amazonaws.ec2#DnsRecordIpType", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "DnsRecordIpType", - "smithy.api#documentation": "

The DNS records created for the endpoint.

", - "smithy.api#xmlName": "dnsRecordIpType" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output. \n\tFor more information, see Pagination.

" } }, - "PrivateDnsOnlyForInboundResolverEndpoint": { + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" + } + }, + "VolumeIds": { + "target": "com.amazonaws.ec2#VolumeIdStringList", + "traits": { + "smithy.api#documentation": "

The IDs of the volumes.

\n

Default: Describes all your volumes.

", + "smithy.api#xmlName": "VolumeId" + } + }, + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "PrivateDnsOnlyForInboundResolverEndpoint", - "smithy.api#documentation": "

Indicates whether to enable private DNS only for inbound endpoints.

", - "smithy.api#xmlName": "privateDnsOnlyForInboundResolverEndpoint" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, "traits": { - "smithy.api#documentation": "

Describes the DNS options for an endpoint.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DnsOptionsSpecification": { + "com.amazonaws.ec2#DescribeVolumeStatusResult": { "type": "structure", "members": { - "DnsRecordIpType": { - "target": "com.amazonaws.ec2#DnsRecordIpType", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The DNS records created for the endpoint.

" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" } }, - "PrivateDnsOnlyForInboundResolverEndpoint": { - "target": "com.amazonaws.ec2#Boolean", + "VolumeStatuses": { + "target": "com.amazonaws.ec2#VolumeStatusList", "traits": { - "smithy.api#documentation": "

Indicates whether to enable private DNS only for inbound endpoints. This option is\n available only for services that support both gateway and interface endpoints. It routes\n traffic that originates from the VPC to the gateway endpoint and traffic that originates\n from on-premises to the interface endpoint.

" + "aws.protocols#ec2QueryName": "VolumeStatusSet", + "smithy.api#documentation": "

Information about the status of the volumes.

", + "smithy.api#xmlName": "volumeStatusSet" } } }, "traits": { - "smithy.api#documentation": "

Describes the DNS options for an endpoint.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DnsRecordIpType": { - "type": "enum", + "com.amazonaws.ec2#DescribeVolumes": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVolumesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVolumesResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the specified EBS volumes or all of your EBS volumes.

\n

If you are describing a long list of volumes, we recommend that you paginate the output to make the list\n more manageable. For more information, see Pagination.

\n

For more information about EBS volumes, see Amazon EBS volumes in the Amazon EBS User Guide.

\n \n

We strongly recommend using only paginated requests. Unpaginated requests are\n susceptible to throttling and timeouts.

\n
\n \n

The order of the elements in the response, including those within nested\n structures, might vary. Applications should not assume the elements appear in a\n particular order.

\n
", + "smithy.api#examples": [ + { + "title": "To describe all volumes", + "documentation": "This example describes all of your volumes in the default region.", + "output": { + "Volumes": [ + { + "AvailabilityZone": "us-east-1a", + "Attachments": [ + { + "AttachTime": "2013-12-18T22:35:00.000Z", + "InstanceId": "i-1234567890abcdef0", + "VolumeId": "vol-049df61146c4d7901", + "State": "attached", + "DeleteOnTermination": true, + "Device": "/dev/sda1" + } + ], + "VolumeType": "standard", + "VolumeId": "vol-049df61146c4d7901", + "State": "in-use", + "SnapshotId": "snap-1234567890abcdef0", + "CreateTime": "2013-12-18T22:35:00.084Z", + "Size": 8 + } + ], + "NextToken": "" + } + }, + { + "title": "To describe volumes that are attached to a specific instance", + "documentation": "This example describes all volumes that are both attached to the instance with the ID i-1234567890abcdef0 and set to delete when the instance terminates.", + "input": { + "Filters": [ + { + "Values": [ + "i-1234567890abcdef0" + ], + "Name": "attachment.instance-id" + }, + { + "Values": [ + "true" + ], + "Name": "attachment.delete-on-termination" + } + ] + }, + "output": { + "Volumes": [ + { + "AvailabilityZone": "us-east-1a", + "Attachments": [ + { + "AttachTime": "2013-12-18T22:35:00.000Z", + "InstanceId": "i-1234567890abcdef0", + "VolumeId": "vol-049df61146c4d7901", + "State": "attached", + "DeleteOnTermination": true, + "Device": "/dev/sda1" + } + ], + "VolumeType": "standard", + "VolumeId": "vol-049df61146c4d7901", + "State": "in-use", + "SnapshotId": "snap-1234567890abcdef0", + "CreateTime": "2013-12-18T22:35:00.084Z", + "Size": 8 + } + ] + } + } + ], + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "Volumes", + "pageSize": "MaxResults" + }, + "smithy.api#suppress": [ + "WaitableTraitInvalidErrorType" + ], + "smithy.waiters#waitable": { + "VolumeAvailable": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "Volumes[].State", + "expected": "available", + "comparator": "allStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "Volumes[].State", + "expected": "deleted", + "comparator": "anyStringEquals" + } + } + } + ], + "minDelay": 15 + }, + "VolumeDeleted": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "Volumes[].State", + "expected": "deleted", + "comparator": "allStringEquals" + } + } + }, + { + "state": "success", + "matcher": { + "errorType": "InvalidVolume.NotFound" + } + } + ], + "minDelay": 15 + }, + "VolumeInUse": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "Volumes[].State", + "expected": "in-use", + "comparator": "allStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "Volumes[].State", + "expected": "deleted", + "comparator": "anyStringEquals" + } + } + } + ], + "minDelay": 15 + } + } + } + }, + "com.amazonaws.ec2#DescribeVolumesModifications": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVolumesModificationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVolumesModificationsResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the most recent volume modification request for the specified EBS volumes.

\n

For more information, see \n Monitor the progress of volume modifications in the Amazon EBS User Guide.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "VolumesModifications", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#DescribeVolumesModificationsRequest": { + "type": "structure", "members": { - "ipv4": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "ipv4" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "dualstack": { - "target": "smithy.api#Unit", + "VolumeIds": { + "target": "com.amazonaws.ec2#VolumeIdStringList", "traits": { - "smithy.api#enumValue": "dualstack" + "smithy.api#documentation": "

The IDs of the volumes.

", + "smithy.api#xmlName": "VolumeId" } }, - "ipv6": { - "target": "smithy.api#Unit", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#enumValue": "ipv6" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "service_defined": { - "target": "smithy.api#Unit", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "service-defined" + "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The maximum number of results (up to a limit of 500) to be returned in a paginated\n request. For more information, see Pagination.

" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#DnsServersOptionsModifyStructure": { + "com.amazonaws.ec2#DescribeVolumesModificationsResult": { "type": "structure", "members": { - "CustomDnsServers": { - "target": "com.amazonaws.ec2#ValueStringList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IPv4 address range, in CIDR notation, of the DNS servers to be used. You can specify up to \n\t\t\ttwo DNS servers. Ensure that the DNS servers can be reached by the clients. The specified values \n\t\t\toverwrite the existing values.

" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" } }, - "Enabled": { - "target": "com.amazonaws.ec2#Boolean", + "VolumesModifications": { + "target": "com.amazonaws.ec2#VolumeModificationList", "traits": { - "smithy.api#documentation": "

Indicates whether DNS servers should be used. Specify False to delete the existing DNS \n\t\t\tservers.

" + "aws.protocols#ec2QueryName": "VolumeModificationSet", + "smithy.api#documentation": "

Information about the volume modifications.

", + "smithy.api#xmlName": "volumeModificationSet" } } }, "traits": { - "smithy.api#documentation": "

Information about the DNS server to be used.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DnsSupportValue": { - "type": "enum", + "com.amazonaws.ec2#DescribeVolumesRequest": { + "type": "structure", "members": { - "enable": { - "target": "smithy.api#Unit", + "VolumeIds": { + "target": "com.amazonaws.ec2#VolumeIdStringList", "traits": { - "smithy.api#enumValue": "enable" + "smithy.api#documentation": "

The volume IDs. If not specified, then all volumes are included in the response.

", + "smithy.api#xmlName": "VolumeId" } }, - "disable": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "disable" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } - } - } - }, - "com.amazonaws.ec2#DomainType": { - "type": "enum", - "members": { - "vpc": { - "target": "smithy.api#Unit", + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#enumValue": "vpc" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "standard": { - "target": "smithy.api#Unit", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "standard" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

", + "smithy.api#xmlName": "nextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "MaxResults", + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output. \n\tFor more information, see Pagination.

", + "smithy.api#xmlName": "maxResults" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#Double": { - "type": "double" - }, - "com.amazonaws.ec2#DoubleWithConstraints": { - "type": "double", - "traits": { - "smithy.api#range": { - "min": 0.001, - "max": 99.999 + "com.amazonaws.ec2#DescribeVolumesResult": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" + } + }, + "Volumes": { + "target": "com.amazonaws.ec2#VolumeList", + "traits": { + "aws.protocols#ec2QueryName": "VolumeSet", + "smithy.api#documentation": "

Information about the volumes.

", + "smithy.api#xmlName": "volumeSet" + } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#DrainSeconds": { - "type": "integer", + "com.amazonaws.ec2#DescribeVpcAttribute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVpcAttributeRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVpcAttributeResult" + }, "traits": { - "smithy.api#range": { - "min": 1, - "max": 4000 - } + "smithy.api#documentation": "

Describes the specified attribute of the specified VPC. You can specify only one attribute at a time.

", + "smithy.api#examples": [ + { + "title": "To describe the enableDnsSupport attribute", + "documentation": "This example describes the enableDnsSupport attribute. This attribute indicates whether DNS resolution is enabled for the VPC. If this attribute is true, the Amazon DNS server resolves DNS hostnames for your instances to their corresponding IP addresses; otherwise, it does not.", + "input": { + "VpcId": "vpc-a01106c2", + "Attribute": "enableDnsSupport" + }, + "output": { + "VpcId": "vpc-a01106c2", + "EnableDnsSupport": { + "Value": true + } + } + }, + { + "title": "To describe the enableDnsHostnames attribute", + "documentation": "This example describes the enableDnsHostnames attribute. This attribute indicates whether the instances launched in the VPC get DNS hostnames. If this attribute is true, instances in the VPC get DNS hostnames; otherwise, they do not.", + "input": { + "VpcId": "vpc-a01106c2", + "Attribute": "enableDnsHostnames" + }, + "output": { + "VpcId": "vpc-a01106c2", + "EnableDnsHostnames": { + "Value": true + } + } + } + ] } }, - "com.amazonaws.ec2#DynamicRoutingValue": { - "type": "enum", + "com.amazonaws.ec2#DescribeVpcAttributeRequest": { + "type": "structure", "members": { - "enable": { - "target": "smithy.api#Unit", + "Attribute": { + "target": "com.amazonaws.ec2#VpcAttributeName", "traits": { - "smithy.api#enumValue": "enable" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The VPC attribute.

", + "smithy.api#required": {} } }, - "disable": { - "target": "smithy.api#Unit", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "smithy.api#enumValue": "disable" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#EbsBlockDevice": { + "com.amazonaws.ec2#DescribeVpcAttributeResult": { "type": "structure", "members": { - "DeleteOnTermination": { - "target": "com.amazonaws.ec2#Boolean", + "EnableDnsHostnames": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", "traits": { - "aws.protocols#ec2QueryName": "DeleteOnTermination", - "smithy.api#documentation": "

Indicates whether the EBS volume is deleted on instance termination. For more\n information, see Preserving Amazon EBS volumes on instance termination in the\n Amazon EC2 User Guide.

", - "smithy.api#xmlName": "deleteOnTermination" + "aws.protocols#ec2QueryName": "EnableDnsHostnames", + "smithy.api#documentation": "

Indicates whether the instances launched in the VPC get DNS hostnames.\n\t\t\t\tIf this attribute is true, instances in the VPC get DNS hostnames;\n\t\t\t\totherwise, they do not.

", + "smithy.api#xmlName": "enableDnsHostnames" } }, - "Iops": { - "target": "com.amazonaws.ec2#Integer", + "EnableDnsSupport": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", "traits": { - "aws.protocols#ec2QueryName": "Iops", - "smithy.api#documentation": "

The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes,\n this represents the number of IOPS that are provisioned for the volume. For gp2\n volumes, this represents the baseline performance of the volume and the rate at which\n the volume accumulates I/O credits for bursting.

\n

The following are the supported values for each volume type:

\n \n

For io2 volumes, you can achieve up to 256,000 IOPS on \ninstances \nbuilt on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS.

\n

This parameter is required for io1 and io2 volumes. The default for gp3 volumes\n is 3,000 IOPS.

", - "smithy.api#xmlName": "iops" + "aws.protocols#ec2QueryName": "EnableDnsSupport", + "smithy.api#documentation": "

Indicates whether DNS resolution is enabled for\n\t\t\t\tthe VPC. If this attribute is true, the Amazon DNS server\n\t\t\t\tresolves DNS hostnames for your instances to their corresponding\n\t\t\t\tIP addresses; otherwise, it does not.

", + "smithy.api#xmlName": "enableDnsSupport" } }, - "SnapshotId": { - "target": "com.amazonaws.ec2#SnapshotId", + "EnableNetworkAddressUsageMetrics": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", "traits": { - "aws.protocols#ec2QueryName": "SnapshotId", - "smithy.api#documentation": "

The ID of the snapshot.

", - "smithy.api#xmlName": "snapshotId" + "aws.protocols#ec2QueryName": "EnableNetworkAddressUsageMetrics", + "smithy.api#documentation": "

Indicates whether Network Address Usage metrics are enabled for your VPC.

", + "smithy.api#xmlName": "enableNetworkAddressUsageMetrics" } }, - "VolumeSize": { - "target": "com.amazonaws.ec2#Integer", + "VpcId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "VolumeSize", - "smithy.api#documentation": "

The size of the volume, in GiBs. You must specify either a snapshot ID or a volume\n size. If you specify a snapshot, the default is the snapshot size. You can specify a\n volume size that is equal to or larger than the snapshot size.

\n

The following are the supported sizes for each volume type:

\n ", - "smithy.api#xmlName": "volumeSize" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#xmlName": "vpcId" } - }, - "VolumeType": { - "target": "com.amazonaws.ec2#VolumeType", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DescribeVpcBlockPublicAccessExclusions": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVpcBlockPublicAccessExclusionsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVpcBlockPublicAccessExclusionsResult" + }, + "traits": { + "smithy.api#documentation": "

Describe VPC Block Public Access (BPA) exclusions. A VPC BPA exclusion is a mode that can be applied to a single VPC or subnet that exempts it from the account’s BPA mode and will allow bidirectional or egress-only access. You can create BPA exclusions for VPCs and subnets even when BPA is not enabled on the account to ensure that there is no traffic disruption to the exclusions when VPC BPA is turned on. To learn more about VPC BPA, see Block public access to VPCs and subnets in the Amazon VPC User Guide.

" + } + }, + "com.amazonaws.ec2#DescribeVpcBlockPublicAccessExclusionsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#DescribeVpcBlockPublicAccessExclusionsRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "VolumeType", - "smithy.api#documentation": "

The volume type. For more information, see Amazon EBS volume types in the\n Amazon EBS User Guide.

", - "smithy.api#xmlName": "volumeType" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "KmsKeyId": { - "target": "com.amazonaws.ec2#String", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "KmsKeyId", - "smithy.api#documentation": "

Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under\n which the EBS volume is encrypted.

\n

This parameter is only supported on BlockDeviceMapping objects called by\n RunInstances, RequestSpotFleet,\n and RequestSpotInstances.

", - "smithy.api#xmlName": "kmsKeyId" + "smithy.api#documentation": "

Filters for the request:

\n ", + "smithy.api#xmlName": "Filter" } }, - "Throughput": { - "target": "com.amazonaws.ec2#Integer", + "ExclusionIds": { + "target": "com.amazonaws.ec2#VpcBlockPublicAccessExclusionIdList", "traits": { - "aws.protocols#ec2QueryName": "Throughput", - "smithy.api#documentation": "

The throughput that the volume supports, in MiB/s.

\n

This parameter is valid only for gp3 volumes.

\n

Valid Range: Minimum value of 125. Maximum value of 1000.

", - "smithy.api#xmlName": "throughput" + "smithy.api#documentation": "

IDs of exclusions.

", + "smithy.api#xmlName": "ExclusionId" } }, - "OutpostArn": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "OutpostArn", - "smithy.api#documentation": "

The ARN of the Outpost on which the snapshot is stored.

\n

This parameter is not supported when using CreateImage.

", - "smithy.api#xmlName": "outpostArn" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, - "Encrypted": { - "target": "com.amazonaws.ec2#Boolean", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeVpcBlockPublicAccessExclusionsMaxResults", "traits": { - "aws.protocols#ec2QueryName": "Encrypted", - "smithy.api#documentation": "

Indicates whether the encryption state of an EBS volume is changed while being\n restored from a backing snapshot. The effect of setting the encryption state to true depends on \nthe volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Amazon EBS encryption in the Amazon EBS User Guide.

\n

In no case can you remove encryption from an encrypted volume.

\n

Encrypted volumes can only be attached to instances that support Amazon EBS encryption. For\n more information, see Supported instance types.

\n

This parameter is not returned by DescribeImageAttribute.

\n

For CreateImage and RegisterImage, whether you can \n include this parameter, and the allowed values differ depending on the type of block \n device mapping you are creating.

\n ", - "smithy.api#xmlName": "encrypted" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" } } }, "traits": { - "smithy.api#documentation": "

Describes a block device for an EBS volume.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#EbsEncryptionSupport": { - "type": "enum", + "com.amazonaws.ec2#DescribeVpcBlockPublicAccessExclusionsResult": { + "type": "structure", "members": { - "unsupported": { - "target": "smithy.api#Unit", + "VpcBlockPublicAccessExclusions": { + "target": "com.amazonaws.ec2#VpcBlockPublicAccessExclusionList", "traits": { - "smithy.api#enumValue": "unsupported" + "aws.protocols#ec2QueryName": "VpcBlockPublicAccessExclusionSet", + "smithy.api#documentation": "

Details related to the exclusions.

", + "smithy.api#xmlName": "vpcBlockPublicAccessExclusionSet" } }, - "supported": { - "target": "smithy.api#Unit", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "supported" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#EbsInfo": { + "com.amazonaws.ec2#DescribeVpcBlockPublicAccessOptions": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVpcBlockPublicAccessOptionsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVpcBlockPublicAccessOptionsResult" + }, + "traits": { + "smithy.api#documentation": "

Describe VPC Block Public Access (BPA) options. VPC Block Public Access (BPA) enables you to block resources in VPCs and subnets that you own in a Region from reaching or being reached from the internet through internet gateways and egress-only internet gateways. To learn more about VPC BPA, see Block public access to VPCs and subnets in the Amazon VPC User Guide.

" + } + }, + "com.amazonaws.ec2#DescribeVpcBlockPublicAccessOptionsRequest": { "type": "structure", "members": { - "EbsOptimizedSupport": { - "target": "com.amazonaws.ec2#EbsOptimizedSupport", - "traits": { - "aws.protocols#ec2QueryName": "EbsOptimizedSupport", - "smithy.api#documentation": "

Indicates whether the instance type is Amazon EBS-optimized. For more information, see Amazon EBS-optimized\n instances in Amazon EC2 User Guide.

", - "smithy.api#xmlName": "ebsOptimizedSupport" - } - }, - "EncryptionSupport": { - "target": "com.amazonaws.ec2#EbsEncryptionSupport", - "traits": { - "aws.protocols#ec2QueryName": "EncryptionSupport", - "smithy.api#documentation": "

Indicates whether Amazon EBS encryption is supported.

", - "smithy.api#xmlName": "encryptionSupport" - } - }, - "EbsOptimizedInfo": { - "target": "com.amazonaws.ec2#EbsOptimizedInfo", - "traits": { - "aws.protocols#ec2QueryName": "EbsOptimizedInfo", - "smithy.api#documentation": "

Describes the optimized EBS performance for the instance type.

", - "smithy.api#xmlName": "ebsOptimizedInfo" - } - }, - "NvmeSupport": { - "target": "com.amazonaws.ec2#EbsNvmeSupport", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "NvmeSupport", - "smithy.api#documentation": "

Indicates whether non-volatile memory express (NVMe) is supported.

", - "smithy.api#xmlName": "nvmeSupport" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Describes the Amazon EBS features supported by the instance type.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#EbsInstanceBlockDevice": { + "com.amazonaws.ec2#DescribeVpcBlockPublicAccessOptionsResult": { "type": "structure", "members": { - "AttachTime": { - "target": "com.amazonaws.ec2#DateTime", - "traits": { - "aws.protocols#ec2QueryName": "AttachTime", - "smithy.api#documentation": "

The time stamp when the attachment initiated.

", - "smithy.api#xmlName": "attachTime" - } - }, - "DeleteOnTermination": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DeleteOnTermination", - "smithy.api#documentation": "

Indicates whether the volume is deleted on instance termination.

", - "smithy.api#xmlName": "deleteOnTermination" - } - }, - "Status": { - "target": "com.amazonaws.ec2#AttachmentStatus", + "VpcBlockPublicAccessOptions": { + "target": "com.amazonaws.ec2#VpcBlockPublicAccessOptions", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The attachment state.

", - "smithy.api#xmlName": "status" + "aws.protocols#ec2QueryName": "VpcBlockPublicAccessOptions", + "smithy.api#documentation": "

Details related to the options.

", + "smithy.api#xmlName": "vpcBlockPublicAccessOptions" } - }, - "VolumeId": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DescribeVpcClassicLink": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVpcClassicLinkRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVpcClassicLinkResult" + }, + "traits": { + "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Describes the ClassicLink status of the specified VPCs.

" + } + }, + "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupport": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportResult" + }, + "traits": { + "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Describes the ClassicLink DNS support status of one or more VPCs. If enabled, the DNS\n hostname of a linked EC2-Classic instance resolves to its private IP address when\n addressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname\n of an instance in a VPC resolves to its private IP address when addressed from a linked\n EC2-Classic instance.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "Vpcs", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 255 + } + } + }, + "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportNextToken": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + } + } + }, + "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportRequest": { + "type": "structure", + "members": { + "VpcIds": { + "target": "com.amazonaws.ec2#VpcClassicLinkIdList", "traits": { - "aws.protocols#ec2QueryName": "VolumeId", - "smithy.api#documentation": "

The ID of the EBS volume.

", - "smithy.api#xmlName": "volumeId" + "smithy.api#documentation": "

The IDs of the VPCs.

", + "smithy.api#xmlName": "VpcIds" } }, - "AssociatedResource": { - "target": "com.amazonaws.ec2#String", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportMaxResults", "traits": { - "aws.protocols#ec2QueryName": "AssociatedResource", - "smithy.api#documentation": "

The ARN of the Amazon ECS or Fargate task \n to which the volume is attached.

", - "smithy.api#xmlName": "associatedResource" + "aws.protocols#ec2QueryName": "MaxResults", + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

", + "smithy.api#xmlName": "maxResults" } }, - "VolumeOwnerId": { - "target": "com.amazonaws.ec2#String", + "NextToken": { + "target": "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportNextToken", "traits": { - "aws.protocols#ec2QueryName": "VolumeOwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the volume.

\n

This parameter is returned only for volumes that are attached to \n Fargate tasks.

", - "smithy.api#xmlName": "volumeOwnerId" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Describes a parameter used to set up an EBS volume in a block device mapping.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#EbsInstanceBlockDeviceSpecification": { + "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportResult": { "type": "structure", "members": { - "DeleteOnTermination": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#DescribeVpcClassicLinkDnsSupportNextToken", "traits": { - "aws.protocols#ec2QueryName": "DeleteOnTermination", - "smithy.api#documentation": "

Indicates whether the volume is deleted on instance termination.

", - "smithy.api#xmlName": "deleteOnTermination" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" } }, - "VolumeId": { - "target": "com.amazonaws.ec2#VolumeId", + "Vpcs": { + "target": "com.amazonaws.ec2#ClassicLinkDnsSupportList", "traits": { - "aws.protocols#ec2QueryName": "VolumeId", - "smithy.api#documentation": "

The ID of the EBS volume.

", - "smithy.api#xmlName": "volumeId" + "aws.protocols#ec2QueryName": "Vpcs", + "smithy.api#documentation": "

Information about the ClassicLink DNS support status of the VPCs.

", + "smithy.api#xmlName": "vpcs" } } }, "traits": { - "smithy.api#documentation": "

Describes information used to set up an EBS volume specified in a block device\n mapping.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#EbsNvmeSupport": { - "type": "enum", + "com.amazonaws.ec2#DescribeVpcClassicLinkRequest": { + "type": "structure", "members": { - "UNSUPPORTED": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "unsupported" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "SUPPORTED": { - "target": "smithy.api#Unit", + "VpcIds": { + "target": "com.amazonaws.ec2#VpcClassicLinkIdList", "traits": { - "smithy.api#enumValue": "supported" + "smithy.api#documentation": "

The VPCs for which you want to describe the ClassicLink status.

", + "smithy.api#xmlName": "VpcId" } }, - "REQUIRED": { - "target": "smithy.api#Unit", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#enumValue": "required" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#EbsOptimizedInfo": { + "com.amazonaws.ec2#DescribeVpcClassicLinkResult": { "type": "structure", "members": { - "BaselineBandwidthInMbps": { - "target": "com.amazonaws.ec2#BaselineBandwidthInMbps", + "Vpcs": { + "target": "com.amazonaws.ec2#VpcClassicLinkList", "traits": { - "aws.protocols#ec2QueryName": "BaselineBandwidthInMbps", - "smithy.api#documentation": "

The baseline bandwidth performance for an EBS-optimized instance type, in Mbps.

", - "smithy.api#xmlName": "baselineBandwidthInMbps" + "aws.protocols#ec2QueryName": "VpcSet", + "smithy.api#documentation": "

The ClassicLink status of the VPCs.

", + "smithy.api#xmlName": "vpcSet" } - }, - "BaselineThroughputInMBps": { - "target": "com.amazonaws.ec2#BaselineThroughputInMBps", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DescribeVpcEndpointAssociations": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVpcEndpointAssociationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVpcEndpointAssociationsResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the VPC resources, VPC endpoint services, Amazon Lattice services, or service networks\n associated with the VPC endpoint.

" + } + }, + "com.amazonaws.ec2#DescribeVpcEndpointAssociationsRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "BaselineThroughputInMBps", - "smithy.api#documentation": "

The baseline throughput performance for an EBS-optimized instance type, in MB/s.

", - "smithy.api#xmlName": "baselineThroughputInMBps" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "BaselineIops": { - "target": "com.amazonaws.ec2#BaselineIops", + "VpcEndpointIds": { + "target": "com.amazonaws.ec2#VpcEndpointIdList", "traits": { - "aws.protocols#ec2QueryName": "BaselineIops", - "smithy.api#documentation": "

The baseline input/output storage operations per seconds for an EBS-optimized instance type.

", - "smithy.api#xmlName": "baselineIops" + "smithy.api#documentation": "

The IDs of the VPC endpoints.

", + "smithy.api#xmlName": "VpcEndpointId" } }, - "MaximumBandwidthInMbps": { - "target": "com.amazonaws.ec2#MaximumBandwidthInMbps", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "MaximumBandwidthInMbps", - "smithy.api#documentation": "

The maximum bandwidth performance for an EBS-optimized instance type, in Mbps.

", - "smithy.api#xmlName": "maximumBandwidthInMbps" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "MaximumThroughputInMBps": { - "target": "com.amazonaws.ec2#MaximumThroughputInMBps", + "MaxResults": { + "target": "com.amazonaws.ec2#MaxResults2", "traits": { - "aws.protocols#ec2QueryName": "MaximumThroughputInMBps", - "smithy.api#documentation": "

The maximum throughput performance for an EBS-optimized instance type, in MB/s.

", - "smithy.api#xmlName": "maximumThroughputInMBps" + "smithy.api#documentation": "

The maximum page size.

" } }, - "MaximumIops": { - "target": "com.amazonaws.ec2#MaximumIops", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "MaximumIops", - "smithy.api#documentation": "

The maximum input/output storage operations per second for an EBS-optimized instance type.

", - "smithy.api#xmlName": "maximumIops" + "smithy.api#documentation": "

The pagination token.

" } } }, "traits": { - "smithy.api#documentation": "

Describes the optimized EBS performance for supported instance types.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#EbsOptimizedSupport": { - "type": "enum", + "com.amazonaws.ec2#DescribeVpcEndpointAssociationsResult": { + "type": "structure", "members": { - "unsupported": { - "target": "smithy.api#Unit", + "VpcEndpointAssociations": { + "target": "com.amazonaws.ec2#VpcEndpointAssociationSet", "traits": { - "smithy.api#enumValue": "unsupported" + "aws.protocols#ec2QueryName": "VpcEndpointAssociationSet", + "smithy.api#documentation": "

Details of the endpoint associations.

", + "smithy.api#xmlName": "vpcEndpointAssociationSet" } }, - "supported": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "supported" - } - }, - "default": { - "target": "smithy.api#Unit", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "default" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The pagination token.

", + "smithy.api#xmlName": "nextToken" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#Ec2InstanceConnectEndpoint": { + "com.amazonaws.ec2#DescribeVpcEndpointConnectionNotifications": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVpcEndpointConnectionNotificationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVpcEndpointConnectionNotificationsResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the connection notifications for VPC endpoints and VPC endpoint\n services.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "ConnectionNotificationSet", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#DescribeVpcEndpointConnectionNotificationsRequest": { "type": "structure", "members": { - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that created the EC2 Instance Connect Endpoint.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "InstanceConnectEndpointId": { - "target": "com.amazonaws.ec2#InstanceConnectEndpointId", + "ConnectionNotificationId": { + "target": "com.amazonaws.ec2#ConnectionNotificationId", "traits": { - "aws.protocols#ec2QueryName": "InstanceConnectEndpointId", - "smithy.api#documentation": "

The ID of the EC2 Instance Connect Endpoint.

", - "smithy.api#xmlName": "instanceConnectEndpointId" + "smithy.api#documentation": "

The ID of the notification.

" } }, - "InstanceConnectEndpointArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "InstanceConnectEndpointArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the EC2 Instance Connect Endpoint.

", - "smithy.api#xmlName": "instanceConnectEndpointArn" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "State": { - "target": "com.amazonaws.ec2#Ec2InstanceConnectEndpointState", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The current state of the EC2 Instance Connect Endpoint.

", - "smithy.api#xmlName": "state" + "smithy.api#documentation": "

The maximum number of results to return in a single call. To retrieve the remaining\n results, make another request with the returned NextToken value.

" } }, - "StateMessage": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "StateMessage", - "smithy.api#documentation": "

The message for the current state of the EC2 Instance Connect Endpoint. \n Can include a failure message.

", - "smithy.api#xmlName": "stateMessage" + "smithy.api#documentation": "

The token to request the next page of results.

" } - }, - "DnsName": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DescribeVpcEndpointConnectionNotificationsResult": { + "type": "structure", + "members": { + "ConnectionNotificationSet": { + "target": "com.amazonaws.ec2#ConnectionNotificationSet", "traits": { - "aws.protocols#ec2QueryName": "DnsName", - "smithy.api#documentation": "

The DNS name of the EC2 Instance Connect Endpoint.

", - "smithy.api#xmlName": "dnsName" + "aws.protocols#ec2QueryName": "ConnectionNotificationSet", + "smithy.api#documentation": "

The notifications.

", + "smithy.api#xmlName": "connectionNotificationSet" } }, - "FipsDnsName": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "FipsDnsName", - "smithy.api#documentation": "

", - "smithy.api#xmlName": "fipsDnsName" - } - }, - "NetworkInterfaceIds": { - "target": "com.amazonaws.ec2#NetworkInterfaceIdSet", - "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceIdSet", - "smithy.api#documentation": "

The ID of the elastic network interface that Amazon EC2 automatically created when creating the EC2\n Instance Connect Endpoint.

", - "smithy.api#xmlName": "networkInterfaceIdSet" - } - }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", - "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC in which the EC2 Instance Connect Endpoint was created.

", - "smithy.api#xmlName": "vpcId" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is\n null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } - }, - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DescribeVpcEndpointConnections": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVpcEndpointConnectionsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVpcEndpointConnectionsResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the VPC endpoint connections to your VPC endpoint services, including any\n endpoints that are pending your acceptance.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "VpcEndpointConnections", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#DescribeVpcEndpointConnectionsRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone of the EC2 Instance Connect Endpoint.

", - "smithy.api#xmlName": "availabilityZone" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "CreatedAt": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "CreatedAt", - "smithy.api#documentation": "

The date and time that the EC2 Instance Connect Endpoint was created.

", - "smithy.api#xmlName": "createdAt" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "SubnetId": { - "target": "com.amazonaws.ec2#SubnetId", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#documentation": "

The ID of the subnet in which the EC2 Instance Connect Endpoint was created.

", - "smithy.api#xmlName": "subnetId" + "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining\n results of the initial request can be seen by sending another request with the returned\n NextToken value. This value can be between 5 and 1,000; if\n MaxResults is given a value larger than 1,000, only 1,000 results are\n returned.

" } }, - "PreserveClientIp": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PreserveClientIp", - "smithy.api#documentation": "

Indicates whether your client's IP address is preserved as the source. The value is true or false.

\n \n

Default: true\n

", - "smithy.api#xmlName": "preserveClientIp" + "smithy.api#documentation": "

The token to retrieve the next page of results.

" } - }, - "SecurityGroupIds": { - "target": "com.amazonaws.ec2#SecurityGroupIdSet", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DescribeVpcEndpointConnectionsResult": { + "type": "structure", + "members": { + "VpcEndpointConnections": { + "target": "com.amazonaws.ec2#VpcEndpointConnectionSet", "traits": { - "aws.protocols#ec2QueryName": "SecurityGroupIdSet", - "smithy.api#documentation": "

The security groups associated with the endpoint. If you didn't specify a security group, \n the default security group for your VPC is associated with the endpoint.

", - "smithy.api#xmlName": "securityGroupIdSet" + "aws.protocols#ec2QueryName": "VpcEndpointConnectionSet", + "smithy.api#documentation": "

Information about the VPC endpoint connections.

", + "smithy.api#xmlName": "vpcEndpointConnectionSet" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags assigned to the EC2 Instance Connect Endpoint.

", - "smithy.api#xmlName": "tagSet" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

The EC2 Instance Connect Endpoint.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#Ec2InstanceConnectEndpointState": { - "type": "enum", + "com.amazonaws.ec2#DescribeVpcEndpointServiceConfigurations": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVpcEndpointServiceConfigurationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVpcEndpointServiceConfigurationsResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the VPC endpoint service configurations in your account (your services).

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "ServiceConfigurations", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#DescribeVpcEndpointServiceConfigurationsRequest": { + "type": "structure", "members": { - "create_in_progress": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "create-in-progress" - } - }, - "create_complete": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "create-complete" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "create_failed": { - "target": "smithy.api#Unit", + "ServiceIds": { + "target": "com.amazonaws.ec2#VpcEndpointServiceIdList", "traits": { - "smithy.api#enumValue": "create-failed" + "smithy.api#documentation": "

The IDs of the endpoint services.

", + "smithy.api#xmlName": "ServiceId" } }, - "delete_in_progress": { - "target": "smithy.api#Unit", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#enumValue": "delete-in-progress" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "delete_complete": { - "target": "smithy.api#Unit", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "delete-complete" + "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining\n results of the initial request can be seen by sending another request with the returned\n NextToken value. This value can be between 5 and 1,000; if\n MaxResults is given a value larger than 1,000, only 1,000 results are\n returned.

" } }, - "delete_failed": { - "target": "smithy.api#Unit", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "delete-failed" + "smithy.api#documentation": "

The token to retrieve the next page of results.

" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#EfaInfo": { + "com.amazonaws.ec2#DescribeVpcEndpointServiceConfigurationsResult": { "type": "structure", "members": { - "MaximumEfaInterfaces": { - "target": "com.amazonaws.ec2#MaximumEfaInterfaces", + "ServiceConfigurations": { + "target": "com.amazonaws.ec2#ServiceConfigurationSet", "traits": { - "aws.protocols#ec2QueryName": "MaximumEfaInterfaces", - "smithy.api#documentation": "

The maximum number of Elastic Fabric Adapters for the instance type.

", - "smithy.api#xmlName": "maximumEfaInterfaces" + "aws.protocols#ec2QueryName": "ServiceConfigurationSet", + "smithy.api#documentation": "

Information about the services.

", + "smithy.api#xmlName": "serviceConfigurationSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Describes the Elastic Fabric Adapters for the instance type.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#EfaSupportedFlag": { - "type": "boolean" + "com.amazonaws.ec2#DescribeVpcEndpointServicePermissions": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVpcEndpointServicePermissionsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVpcEndpointServicePermissionsResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the principals (service consumers) that are permitted to discover your VPC\n endpoint service. Principal ARNs with path components aren't supported.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "AllowedPrincipals", + "pageSize": "MaxResults" + } + } }, - "com.amazonaws.ec2#EgressOnlyInternetGateway": { + "com.amazonaws.ec2#DescribeVpcEndpointServicePermissionsRequest": { "type": "structure", "members": { - "Attachments": { - "target": "com.amazonaws.ec2#InternetGatewayAttachmentList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "AttachmentSet", - "smithy.api#documentation": "

Information about the attachment of the egress-only internet gateway.

", - "smithy.api#xmlName": "attachmentSet" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "EgressOnlyInternetGatewayId": { - "target": "com.amazonaws.ec2#EgressOnlyInternetGatewayId", + "ServiceId": { + "target": "com.amazonaws.ec2#VpcEndpointServiceId", "traits": { - "aws.protocols#ec2QueryName": "EgressOnlyInternetGatewayId", - "smithy.api#documentation": "

The ID of the egress-only internet gateway.

", - "smithy.api#xmlName": "egressOnlyInternetGatewayId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the service.

", + "smithy.api#required": {} } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags assigned to the egress-only internet gateway.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an egress-only internet gateway.

" - } - }, - "com.amazonaws.ec2#EgressOnlyInternetGatewayId": { - "type": "string" - }, - "com.amazonaws.ec2#EgressOnlyInternetGatewayIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#EgressOnlyInternetGatewayId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#EgressOnlyInternetGatewayList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#EgressOnlyInternetGateway", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#EipAllocationPublicIp": { - "type": "string" - }, - "com.amazonaws.ec2#EipAssociationIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ElasticIpAssociationId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#EkPubKeyFormat": { - "type": "enum", - "members": { - "der": { - "target": "smithy.api#Unit", + }, + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "der" + "smithy.api#documentation": "

The maximum number of results to return for the request in a single page. The remaining\n results of the initial request can be seen by sending another request with the returned\n NextToken value. This value can be between 5 and 1,000; if\n MaxResults is given a value larger than 1,000, only 1,000 results are\n returned.

" } }, - "tpmt": { - "target": "smithy.api#Unit", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "tpmt" + "smithy.api#documentation": "

The token to retrieve the next page of results.

" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#EkPubKeyType": { - "type": "enum", + "com.amazonaws.ec2#DescribeVpcEndpointServicePermissionsResult": { + "type": "structure", "members": { - "RSA_2048": { - "target": "smithy.api#Unit", + "AllowedPrincipals": { + "target": "com.amazonaws.ec2#AllowedPrincipalSet", "traits": { - "smithy.api#enumValue": "rsa-2048" + "aws.protocols#ec2QueryName": "AllowedPrincipals", + "smithy.api#documentation": "

Information about the allowed principals.

", + "smithy.api#xmlName": "allowedPrincipals" } }, - "ECC_SEC_P384": { - "target": "smithy.api#Unit", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "ecc-sec-p384" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#EkPubKeyValue": { - "type": "string", + "com.amazonaws.ec2#DescribeVpcEndpointServices": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVpcEndpointServicesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVpcEndpointServicesResult" + }, "traits": { - "smithy.api#sensitive": {} + "smithy.api#documentation": "

Describes available services to which you can create a VPC endpoint.

\n

When the service provider and the consumer have different accounts in multiple\n Availability Zones, and the consumer views the VPC endpoint service information, the\n response only includes the common Availability Zones. For example, when the service\n provider account uses us-east-1a and us-east-1c and the\n consumer uses us-east-1a and us-east-1b, the response includes\n the VPC endpoint services in the common Availability Zone,\n us-east-1a.

" } }, - "com.amazonaws.ec2#ElasticGpuAssociation": { + "com.amazonaws.ec2#DescribeVpcEndpointServicesRequest": { "type": "structure", "members": { - "ElasticGpuId": { - "target": "com.amazonaws.ec2#ElasticGpuId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "ElasticGpuId", - "smithy.api#documentation": "

The ID of the Elastic Graphics accelerator.

", - "smithy.api#xmlName": "elasticGpuId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "ElasticGpuAssociationId": { - "target": "com.amazonaws.ec2#String", + "ServiceNames": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "aws.protocols#ec2QueryName": "ElasticGpuAssociationId", - "smithy.api#documentation": "

The ID of the association.

", - "smithy.api#xmlName": "elasticGpuAssociationId" + "smithy.api#documentation": "

The service names.

", + "smithy.api#xmlName": "ServiceName" } }, - "ElasticGpuAssociationState": { - "target": "com.amazonaws.ec2#String", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "ElasticGpuAssociationState", - "smithy.api#documentation": "

The state of the association between the instance and the\n Elastic Graphics accelerator.

", - "smithy.api#xmlName": "elasticGpuAssociationState" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "ElasticGpuAssociationTime": { + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

\n

Constraint: If the value is greater than 1,000, we return only 1,000 items.

" + } + }, + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ElasticGpuAssociationTime", - "smithy.api#documentation": "

The time the Elastic Graphics accelerator was associated with the instance.

", - "smithy.api#xmlName": "elasticGpuAssociationTime" + "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a prior call.)

" + } + }, + "ServiceRegions": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The service Regions.

", + "smithy.api#xmlName": "ServiceRegion" } } }, "traits": { - "smithy.api#documentation": "\n

Amazon Elastic Graphics reached end of life on January 8, 2024. For \n workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, \n G4dn, or G5 instances.

\n
\n

Describes the association between an instance and an Elastic Graphics accelerator.

" - } - }, - "com.amazonaws.ec2#ElasticGpuAssociationList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ElasticGpuAssociation", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#input": {} } }, - "com.amazonaws.ec2#ElasticGpuHealth": { + "com.amazonaws.ec2#DescribeVpcEndpointServicesResult": { "type": "structure", "members": { - "Status": { - "target": "com.amazonaws.ec2#ElasticGpuStatus", + "ServiceNames": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The health status.

", - "smithy.api#xmlName": "status" + "aws.protocols#ec2QueryName": "ServiceNameSet", + "smithy.api#documentation": "

The supported services.

", + "smithy.api#xmlName": "serviceNameSet" } - } - }, - "traits": { - "smithy.api#documentation": "\n

Amazon Elastic Graphics reached end of life on January 8, 2024. For \n workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, \n G4dn, or G5 instances.

\n
\n

Describes the status of an Elastic Graphics accelerator.

" - } - }, - "com.amazonaws.ec2#ElasticGpuId": { - "type": "string" - }, - "com.amazonaws.ec2#ElasticGpuIdSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ElasticGpuId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ElasticGpuSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ElasticGpus", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ElasticGpuSpecification": { - "type": "structure", - "members": { - "Type": { - "target": "com.amazonaws.ec2#String", + }, + "ServiceDetails": { + "target": "com.amazonaws.ec2#ServiceDetailSet", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of Elastic Graphics accelerator. For more information about the values to specify for\n Type, see Elastic Graphics Basics, specifically the Elastic Graphics accelerator column, in the \n Amazon Elastic Compute Cloud User Guide for Windows Instances.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "ServiceDetailSet", + "smithy.api#documentation": "

Information about the service.

", + "smithy.api#xmlName": "serviceDetailSet" } - } - }, - "traits": { - "smithy.api#documentation": "\n

Amazon Elastic Graphics reached end of life on January 8, 2024. For \n workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, \n G4dn, or G5 instances.

\n
\n

A specification for an Elastic Graphics accelerator.

" - } - }, - "com.amazonaws.ec2#ElasticGpuSpecificationList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ElasticGpuSpecification", - "traits": { - "smithy.api#xmlName": "ElasticGpuSpecification" - } - } - }, - "com.amazonaws.ec2#ElasticGpuSpecificationResponse": { - "type": "structure", - "members": { - "Type": { + }, + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Type", - "smithy.api#documentation": "

Deprecated.

\n \n

Amazon Elastic Graphics reached end of life on January 8, 2024. For \n workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, \n G4dn, or G5 instances.

\n
", - "smithy.api#xmlName": "type" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Deprecated.

\n \n

Amazon Elastic Graphics reached end of life on January 8, 2024. For \n workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, \n G4dn, or G5 instances.

\n
" - } - }, - "com.amazonaws.ec2#ElasticGpuSpecificationResponseList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ElasticGpuSpecificationResponse", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ElasticGpuSpecifications": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ElasticGpuSpecification", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ElasticGpuState": { - "type": "enum", - "members": { - "Attached": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ATTACHED" - } - } + "smithy.api#output": {} } }, - "com.amazonaws.ec2#ElasticGpuStatus": { - "type": "enum", - "members": { - "Ok": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "OK" - } - }, - "Impaired": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "IMPAIRED" - } + "com.amazonaws.ec2#DescribeVpcEndpoints": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVpcEndpointsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVpcEndpointsResult" + }, + "traits": { + "smithy.api#documentation": "

Describes your VPC endpoints. The default is to describe all your VPC endpoints. \n Alternatively, you can specify specific VPC endpoint IDs or filter the results to\n include only the VPC endpoints that match specific criteria.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "VpcEndpoints", + "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#ElasticGpus": { + "com.amazonaws.ec2#DescribeVpcEndpointsRequest": { "type": "structure", "members": { - "ElasticGpuId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "ElasticGpuId", - "smithy.api#documentation": "

The ID of the Elastic Graphics accelerator.

", - "smithy.api#xmlName": "elasticGpuId" - } - }, - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone in the which the Elastic Graphics accelerator resides.

", - "smithy.api#xmlName": "availabilityZone" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "ElasticGpuType": { - "target": "com.amazonaws.ec2#String", + "VpcEndpointIds": { + "target": "com.amazonaws.ec2#VpcEndpointIdList", "traits": { - "aws.protocols#ec2QueryName": "ElasticGpuType", - "smithy.api#documentation": "

The type of Elastic Graphics accelerator.

", - "smithy.api#xmlName": "elasticGpuType" + "smithy.api#documentation": "

The IDs of the VPC endpoints.

", + "smithy.api#xmlName": "VpcEndpointId" } }, - "ElasticGpuHealth": { - "target": "com.amazonaws.ec2#ElasticGpuHealth", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "ElasticGpuHealth", - "smithy.api#documentation": "

The status of the Elastic Graphics accelerator.

", - "smithy.api#xmlName": "elasticGpuHealth" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "ElasticGpuState": { - "target": "com.amazonaws.ec2#ElasticGpuState", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "ElasticGpuState", - "smithy.api#documentation": "

The state of the Elastic Graphics accelerator.

", - "smithy.api#xmlName": "elasticGpuState" + "smithy.api#documentation": "

The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

\n

Constraint: If the value is greater than 1,000, we return only 1,000 items.

" } }, - "InstanceId": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance to which the Elastic Graphics accelerator is attached.

", - "smithy.api#xmlName": "instanceId" - } - }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", - "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags assigned to the Elastic Graphics accelerator.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#documentation": "

The token for the next set of items to return. (You received this token from a prior call.)

" } } }, "traits": { - "smithy.api#documentation": "\n

Amazon Elastic Graphics reached end of life on January 8, 2024. For \n workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, \n G4dn, or G5 instances.

\n
\n

Describes an Elastic Graphics accelerator.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#ElasticInferenceAccelerator": { + "com.amazonaws.ec2#DescribeVpcEndpointsResult": { "type": "structure", "members": { - "Type": { - "target": "com.amazonaws.ec2#String", + "VpcEndpoints": { + "target": "com.amazonaws.ec2#VpcEndpointSet", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

\n \tThe type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, eia1.xlarge, eia2.medium, eia2.large, and eia2.xlarge.\n

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "VpcEndpointSet", + "smithy.api#documentation": "

Information about the VPC endpoints.

", + "smithy.api#xmlName": "vpcEndpointSet" } }, - "Count": { - "target": "com.amazonaws.ec2#ElasticInferenceAcceleratorCount", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

\n The number of elastic inference accelerators to attach to the instance. \n

\n

Default: 1

" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

\n Describes an elastic inference accelerator. \n

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#ElasticInferenceAcceleratorAssociation": { - "type": "structure", - "members": { - "ElasticInferenceAcceleratorArn": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "ElasticInferenceAcceleratorArn", - "smithy.api#documentation": "

\n The Amazon Resource Name (ARN) of the elastic inference accelerator. \n

", - "smithy.api#xmlName": "elasticInferenceAcceleratorArn" - } - }, - "ElasticInferenceAcceleratorAssociationId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "ElasticInferenceAcceleratorAssociationId", - "smithy.api#documentation": "

\n The ID of the association. \n

", - "smithy.api#xmlName": "elasticInferenceAcceleratorAssociationId" - } - }, - "ElasticInferenceAcceleratorAssociationState": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "ElasticInferenceAcceleratorAssociationState", - "smithy.api#documentation": "

\n The state of the elastic inference accelerator.\n

", - "smithy.api#xmlName": "elasticInferenceAcceleratorAssociationState" - } - }, - "ElasticInferenceAcceleratorAssociationTime": { - "target": "com.amazonaws.ec2#DateTime", - "traits": { - "aws.protocols#ec2QueryName": "ElasticInferenceAcceleratorAssociationTime", - "smithy.api#documentation": "

\n The time at which the elastic inference accelerator is associated with an instance.\n

", - "smithy.api#xmlName": "elasticInferenceAcceleratorAssociationTime" - } - } + "com.amazonaws.ec2#DescribeVpcPeeringConnections": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DescribeVpcPeeringConnectionsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DescribeVpcPeeringConnectionsResult" }, "traits": { - "smithy.api#documentation": "

\n Describes the association between an instance and an elastic inference accelerator. \n

" - } - }, - "com.amazonaws.ec2#ElasticInferenceAcceleratorAssociationList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ElasticInferenceAcceleratorAssociation", - "traits": { - "smithy.api#xmlName": "item" + "smithy.api#documentation": "

Describes your VPC peering connections. The default is to describe all your VPC peering connections. \n Alternatively, you can specify specific VPC peering connection IDs or filter the results to\n include only the VPC peering connections that match specific criteria.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "VpcPeeringConnections", + "pageSize": "MaxResults" + }, + "smithy.api#suppress": [ + "WaitableTraitInvalidErrorType" + ], + "smithy.waiters#waitable": { + "VpcPeeringConnectionDeleted": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "VpcPeeringConnections[].Status.Code", + "expected": "deleted", + "comparator": "allStringEquals" + } + } + }, + { + "state": "success", + "matcher": { + "errorType": "InvalidVpcPeeringConnectionID.NotFound" + } + } + ], + "minDelay": 15 + }, + "VpcPeeringConnectionExists": { + "acceptors": [ + { + "state": "success", + "matcher": { + "success": true + } + }, + { + "state": "retry", + "matcher": { + "errorType": "InvalidVpcPeeringConnectionID.NotFound" + } + } + ], + "minDelay": 15 + } } } }, - "com.amazonaws.ec2#ElasticInferenceAcceleratorCount": { + "com.amazonaws.ec2#DescribeVpcPeeringConnectionsMaxResults": { "type": "integer", "traits": { "smithy.api#range": { - "min": 1 - } - } - }, - "com.amazonaws.ec2#ElasticInferenceAccelerators": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ElasticInferenceAccelerator", - "traits": { - "smithy.api#xmlName": "item" + "min": 5, + "max": 1000 } } }, - "com.amazonaws.ec2#ElasticIpAssociationId": { - "type": "string" - }, - "com.amazonaws.ec2#EnaSrdSpecification": { + "com.amazonaws.ec2#DescribeVpcPeeringConnectionsRequest": { "type": "structure", "members": { - "EnaSrdEnabled": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Indicates whether ENA Express is enabled for the network interface.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, - "EnaSrdUdpSpecification": { - "target": "com.amazonaws.ec2#EnaSrdUdpSpecification", + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeVpcPeeringConnectionsMaxResults", "traits": { - "smithy.api#documentation": "

Configures ENA Express for UDP network traffic.

" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" } - } - }, - "traits": { - "smithy.api#documentation": "

ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology to increase the \n\t\t\tmaximum bandwidth used per stream and minimize tail latency of network traffic between EC2 instances. \n\t\t\tWith ENA Express, you can communicate between two EC2 instances in the same subnet within the same \n\t\t\taccount, or in different accounts. Both sending and receiving instances must have ENA Express enabled.

\n

To improve the reliability of network packet delivery, ENA Express reorders network packets on the \n\t\t\treceiving end by default. However, some UDP-based applications are designed to handle network packets \n\t\t\tthat are out of order to reduce the overhead for packet delivery at the network layer. When ENA Express \n\t\t\tis enabled, you can specify whether UDP network traffic uses it.

" - } - }, - "com.amazonaws.ec2#EnaSrdSpecificationRequest": { - "type": "structure", - "members": { - "EnaSrdEnabled": { + }, + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Specifies whether ENA Express is enabled for the network interface when you \n\t\t\tlaunch an instance from your launch template.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "EnaSrdUdpSpecification": { - "target": "com.amazonaws.ec2#EnaSrdUdpSpecificationRequest", + "VpcPeeringConnectionIds": { + "target": "com.amazonaws.ec2#VpcPeeringConnectionIdList", "traits": { - "smithy.api#documentation": "

Contains ENA Express settings for UDP network traffic in your launch template.

" + "smithy.api#documentation": "

The IDs of the VPC peering connections.

\n

Default: Describes all your VPC peering connections.

", + "smithy.api#xmlName": "VpcPeeringConnectionId" } - } - }, - "traits": { - "smithy.api#documentation": "

Launch instances with ENA Express settings configured \n\t\t\tfrom your launch template.

" - } - }, - "com.amazonaws.ec2#EnaSrdSupported": { - "type": "boolean" - }, - "com.amazonaws.ec2#EnaSrdUdpSpecification": { - "type": "structure", - "members": { - "EnaSrdUdpEnabled": { - "target": "com.amazonaws.ec2#Boolean", + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, \n\t\t\tyou must first enable ENA Express.

" + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } } }, "traits": { - "smithy.api#documentation": "

ENA Express is compatible with both TCP and UDP transport protocols. When it's enabled, TCP traffic \n\t\t\tautomatically uses it. However, some UDP-based applications are designed to handle network packets that are \n\t\t\tout of order, without a need for retransmission, such as live video broadcasting or other near-real-time \n\t\t\tapplications. For UDP traffic, you can specify whether to use ENA Express, based on your application \n\t\t\tenvironment needs.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#EnaSrdUdpSpecificationRequest": { + "com.amazonaws.ec2#DescribeVpcPeeringConnectionsResult": { "type": "structure", "members": { - "EnaSrdUdpEnabled": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Indicates whether UDP traffic uses ENA Express for your instance. To ensure that \n\t\t\tUDP traffic can use ENA Express when you launch an instance, you must also set \n\t\t\tEnaSrdEnabled in the EnaSrdSpecificationRequest to true in your \n\t\t\tlaunch template.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Configures ENA Express for UDP network traffic from your launch template.

" - } - }, - "com.amazonaws.ec2#EnaSupport": { - "type": "enum", - "members": { - "unsupported": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "unsupported" - } - }, - "supported": { - "target": "smithy.api#Unit", + "VpcPeeringConnections": { + "target": "com.amazonaws.ec2#VpcPeeringConnectionList", "traits": { - "smithy.api#enumValue": "supported" + "aws.protocols#ec2QueryName": "VpcPeeringConnectionSet", + "smithy.api#documentation": "

Information about the VPC peering connections.

", + "smithy.api#xmlName": "vpcPeeringConnectionSet" } }, - "required": { - "target": "smithy.api#Unit", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "required" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#EnableAddressTransfer": { + "com.amazonaws.ec2#DescribeVpcs": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#EnableAddressTransferRequest" + "target": "com.amazonaws.ec2#DescribeVpcsRequest" }, "output": { - "target": "com.amazonaws.ec2#EnableAddressTransferResult" + "target": "com.amazonaws.ec2#DescribeVpcsResult" }, "traits": { - "smithy.api#documentation": "

Enables Elastic IP address transfer. For more information, see Transfer Elastic IP addresses in the Amazon Virtual Private Cloud User Guide.

" + "smithy.api#documentation": "

Describes your VPCs. The default is to describe all your VPCs. \n Alternatively, you can specify specific VPC IDs or filter the results to\n include only the VPCs that match specific criteria.

", + "smithy.api#examples": [ + { + "title": "To describe a VPC", + "documentation": "This example describes the specified VPC.", + "input": { + "VpcIds": [ + "vpc-a01106c2" + ] + }, + "output": { + "Vpcs": [ + { + "VpcId": "vpc-a01106c2", + "InstanceTenancy": "default", + "Tags": [ + { + "Value": "MyVPC", + "Key": "Name" + } + ], + "State": "available", + "DhcpOptionsId": "dopt-7a8b9c2d", + "CidrBlock": "10.0.0.0/16", + "IsDefault": false + } + ] + } + } + ], + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "Vpcs", + "pageSize": "MaxResults" + }, + "smithy.api#suppress": [ + "WaitableTraitInvalidErrorType" + ], + "smithy.waiters#waitable": { + "VpcAvailable": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "Vpcs[].State", + "expected": "available", + "comparator": "allStringEquals" + } + } + } + ], + "minDelay": 15 + }, + "VpcExists": { + "acceptors": [ + { + "state": "success", + "matcher": { + "success": true + } + }, + { + "state": "retry", + "matcher": { + "errorType": "InvalidVpcID.NotFound" + } + } + ], + "minDelay": 1 + } + } + } + }, + "com.amazonaws.ec2#DescribeVpcsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } } }, - "com.amazonaws.ec2#EnableAddressTransferRequest": { + "com.amazonaws.ec2#DescribeVpcsRequest": { "type": "structure", "members": { - "AllocationId": { - "target": "com.amazonaws.ec2#AllocationId", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The allocation ID of an Elastic IP address.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "TransferAccountId": { + "VpcIds": { + "target": "com.amazonaws.ec2#VpcIdStringList", + "traits": { + "smithy.api#documentation": "

The IDs of the VPCs.

", + "smithy.api#xmlName": "VpcId" + } + }, + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the account that you want to transfer the Elastic IP address to.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#DescribeVpcsMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, @@ -46269,15 +47738,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#EnableAddressTransferResult": { + "com.amazonaws.ec2#DescribeVpcsResult": { "type": "structure", "members": { - "AddressTransfer": { - "target": "com.amazonaws.ec2#AddressTransfer", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AddressTransfer", - "smithy.api#documentation": "

An Elastic IP address transfer.

", - "smithy.api#xmlName": "addressTransfer" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" + } + }, + "Vpcs": { + "target": "com.amazonaws.ec2#VpcList", + "traits": { + "aws.protocols#ec2QueryName": "VpcSet", + "smithy.api#documentation": "

Information about the VPCs.

", + "smithy.api#xmlName": "vpcSet" } } }, @@ -46285,756 +47762,862 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#EnableAwsNetworkPerformanceMetricSubscription": { + "com.amazonaws.ec2#DescribeVpnConnections": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#EnableAwsNetworkPerformanceMetricSubscriptionRequest" + "target": "com.amazonaws.ec2#DescribeVpnConnectionsRequest" }, "output": { - "target": "com.amazonaws.ec2#EnableAwsNetworkPerformanceMetricSubscriptionResult" + "target": "com.amazonaws.ec2#DescribeVpnConnectionsResult" }, "traits": { - "smithy.api#documentation": "

Enables Infrastructure Performance subscriptions.

" + "smithy.api#documentation": "

Describes one or more of your VPN connections.

\n

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN\n User Guide.

", + "smithy.waiters#waitable": { + "VpnConnectionAvailable": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "VpnConnections[].State", + "expected": "available", + "comparator": "allStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "VpnConnections[].State", + "expected": "deleting", + "comparator": "anyStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "VpnConnections[].State", + "expected": "deleted", + "comparator": "anyStringEquals" + } + } + } + ], + "minDelay": 15 + }, + "VpnConnectionDeleted": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "VpnConnections[].State", + "expected": "deleted", + "comparator": "allStringEquals" + } + } + }, + { + "state": "failure", + "matcher": { + "output": { + "path": "VpnConnections[].State", + "expected": "pending", + "comparator": "anyStringEquals" + } + } + } + ], + "minDelay": 15 + } + } } }, - "com.amazonaws.ec2#EnableAwsNetworkPerformanceMetricSubscriptionRequest": { + "com.amazonaws.ec2#DescribeVpnConnectionsRequest": { "type": "structure", "members": { - "Source": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The source Region (like us-east-1) or Availability Zone ID (like use1-az1) that the metric subscription is enabled for. If you use Availability Zone IDs, the Source and Destination Availability Zones must be in the same Region.

" - } - }, - "Destination": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The target Region (like us-east-2) or Availability Zone ID (like use2-az2) that the metric subscription is enabled for. If you use Availability Zone IDs, the Source and Destination Availability Zones must be in the same Region.

" - } - }, - "Metric": { - "target": "com.amazonaws.ec2#MetricType", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The metric used for the enabled subscription.

" + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "Statistic": { - "target": "com.amazonaws.ec2#StatisticType", + "VpnConnectionIds": { + "target": "com.amazonaws.ec2#VpnConnectionIdStringList", "traits": { - "smithy.api#documentation": "

The statistic used for the enabled subscription.

" + "smithy.api#documentation": "

One or more VPN connection IDs.

\n

Default: Describes your VPN connections.

", + "smithy.api#xmlName": "VpnConnectionId" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DescribeVpnConnections.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#EnableAwsNetworkPerformanceMetricSubscriptionResult": { + "com.amazonaws.ec2#DescribeVpnConnectionsResult": { "type": "structure", "members": { - "Output": { - "target": "com.amazonaws.ec2#Boolean", + "VpnConnections": { + "target": "com.amazonaws.ec2#VpnConnectionList", "traits": { - "aws.protocols#ec2QueryName": "Output", - "smithy.api#documentation": "

Indicates whether the subscribe action was successful.

", - "smithy.api#xmlName": "output" + "aws.protocols#ec2QueryName": "VpnConnectionSet", + "smithy.api#documentation": "

Information about one or more VPN connections.

", + "smithy.api#xmlName": "vpnConnectionSet" } } }, "traits": { + "smithy.api#documentation": "

Contains the output of DescribeVpnConnections.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#EnableEbsEncryptionByDefault": { + "com.amazonaws.ec2#DescribeVpnGateways": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#EnableEbsEncryptionByDefaultRequest" + "target": "com.amazonaws.ec2#DescribeVpnGatewaysRequest" }, "output": { - "target": "com.amazonaws.ec2#EnableEbsEncryptionByDefaultResult" + "target": "com.amazonaws.ec2#DescribeVpnGatewaysResult" }, "traits": { - "smithy.api#documentation": "

Enables EBS encryption by default for your account in the current Region.

\n

After you enable encryption by default, the EBS volumes that you create are\n \talways encrypted, either using the default KMS key or the KMS key that you specified\n when you created each volume. For more information, see Amazon EBS encryption in the\n Amazon EBS User Guide.

\n

You can specify the default KMS key for encryption by default using ModifyEbsDefaultKmsKeyId\n or ResetEbsDefaultKmsKeyId.

\n

Enabling encryption by default has no effect on the encryption status of your \n existing volumes.

\n

After you enable encryption by default, you can no longer launch instances\n using instance types that do not support encryption. For more information, see Supported\n instance types.

" + "smithy.api#documentation": "

Describes one or more of your virtual private gateways.

\n

For more information, see Amazon Web Services Site-to-Site VPN in the Amazon Web Services Site-to-Site VPN\n User Guide.

" } }, - "com.amazonaws.ec2#EnableEbsEncryptionByDefaultRequest": { + "com.amazonaws.ec2#DescribeVpnGatewaysRequest": { "type": "structure", "members": { + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" + } + }, + "VpnGatewayIds": { + "target": "com.amazonaws.ec2#VpnGatewayIdStringList", + "traits": { + "smithy.api#documentation": "

One or more virtual private gateway IDs.

\n

Default: Describes all your virtual private gateways.

", + "smithy.api#xmlName": "VpnGatewayId" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DescribeVpnGateways.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#EnableEbsEncryptionByDefaultResult": { + "com.amazonaws.ec2#DescribeVpnGatewaysResult": { "type": "structure", "members": { - "EbsEncryptionByDefault": { - "target": "com.amazonaws.ec2#Boolean", + "VpnGateways": { + "target": "com.amazonaws.ec2#VpnGatewayList", "traits": { - "aws.protocols#ec2QueryName": "EbsEncryptionByDefault", - "smithy.api#documentation": "

The updated status of encryption by default.

", - "smithy.api#xmlName": "ebsEncryptionByDefault" + "aws.protocols#ec2QueryName": "VpnGatewaySet", + "smithy.api#documentation": "

Information about one or more virtual private gateways.

", + "smithy.api#xmlName": "vpnGatewaySet" } } }, "traits": { + "smithy.api#documentation": "

Contains the output of DescribeVpnGateways.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#EnableFastLaunch": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#EnableFastLaunchRequest" - }, - "output": { - "target": "com.amazonaws.ec2#EnableFastLaunchResult" - }, - "traits": { - "smithy.api#documentation": "

When you enable Windows fast launch for a Windows AMI, images are pre-provisioned, \n\t\t\tusing snapshots to launch instances up to 65% faster. To create the optimized Windows \n\t\t\timage, Amazon EC2 launches an instance and runs through Sysprep steps, rebooting as required. \n\t\t\tThen it creates a set of reserved snapshots that are used for subsequent launches. The \n\t\t\treserved snapshots are automatically replenished as they are used, depending on your \n\t\t\tsettings for launch frequency.

\n \n

You can only change these settings for Windows AMIs that you own or that have been shared with you.

\n
" - } - }, - "com.amazonaws.ec2#EnableFastLaunchRequest": { - "type": "structure", + "com.amazonaws.ec2#DestinationFileFormat": { + "type": "enum", "members": { - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Specify the ID of the image for which to enable Windows fast launch.

", - "smithy.api#required": {} - } - }, - "ResourceType": { - "target": "com.amazonaws.ec2#String", + "plain_text": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The type of resource to use for pre-provisioning the AMI for Windows fast launch. \n\t\t\tSupported values include: snapshot, which is the default value.

" + "smithy.api#enumValue": "plain-text" } }, - "SnapshotConfiguration": { - "target": "com.amazonaws.ec2#FastLaunchSnapshotConfigurationRequest", + "parquet": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Configuration settings for creating and managing the snapshots that are used for \n\t\t\tpre-provisioning the AMI for Windows fast launch. The associated ResourceType \n\t\t\tmust be snapshot.

" + "smithy.api#enumValue": "parquet" } - }, - "LaunchTemplate": { - "target": "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationRequest", + } + } + }, + "com.amazonaws.ec2#DestinationOptionsRequest": { + "type": "structure", + "members": { + "FileFormat": { + "target": "com.amazonaws.ec2#DestinationFileFormat", "traits": { - "smithy.api#documentation": "

The launch template to use when launching Windows instances from pre-provisioned \n\t\t\tsnapshots. Launch template parameters can include either the name or ID of the launch \n\t\t\ttemplate, but not both.

" + "smithy.api#documentation": "

The format for the flow log. The default is plain-text.

" } }, - "MaxParallelLaunches": { - "target": "com.amazonaws.ec2#Integer", + "HiveCompatiblePartitions": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The maximum number of instances that Amazon EC2 can launch at the same time to create \n\t\t\tpre-provisioned snapshots for Windows fast launch. Value must be \n\t\t\t6 or greater.

" + "smithy.api#documentation": "

Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3.\n The default is false.

" } }, - "DryRun": { + "PerHourPartition": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Indicates whether to partition the flow log per hour. This reduces the cost and response \n time for queries. The default is false.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes the destination options for a flow log.

" } }, - "com.amazonaws.ec2#EnableFastLaunchResult": { + "com.amazonaws.ec2#DestinationOptionsResponse": { "type": "structure", "members": { - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", - "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The image ID that identifies the AMI for which Windows fast launch was enabled.

", - "smithy.api#xmlName": "imageId" - } - }, - "ResourceType": { - "target": "com.amazonaws.ec2#FastLaunchResourceType", - "traits": { - "aws.protocols#ec2QueryName": "ResourceType", - "smithy.api#documentation": "

The type of resource that was defined for pre-provisioning the AMI for Windows fast launch.

", - "smithy.api#xmlName": "resourceType" - } - }, - "SnapshotConfiguration": { - "target": "com.amazonaws.ec2#FastLaunchSnapshotConfigurationResponse", - "traits": { - "aws.protocols#ec2QueryName": "SnapshotConfiguration", - "smithy.api#documentation": "

Settings to create and manage the pre-provisioned snapshots that Amazon EC2 uses for faster \n\t\t\tlaunches from the Windows AMI. This property is returned when the associated \n\t\t\tresourceType is snapshot.

", - "smithy.api#xmlName": "snapshotConfiguration" - } - }, - "LaunchTemplate": { - "target": "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationResponse", + "FileFormat": { + "target": "com.amazonaws.ec2#DestinationFileFormat", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplate", - "smithy.api#documentation": "

The launch template that is used when launching Windows instances from pre-provisioned snapshots.

", - "smithy.api#xmlName": "launchTemplate" + "aws.protocols#ec2QueryName": "FileFormat", + "smithy.api#documentation": "

The format for the flow log.

", + "smithy.api#xmlName": "fileFormat" } }, - "MaxParallelLaunches": { - "target": "com.amazonaws.ec2#Integer", + "HiveCompatiblePartitions": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "MaxParallelLaunches", - "smithy.api#documentation": "

The maximum number of instances that Amazon EC2 can launch at the same time to \n\t\t\tcreate pre-provisioned snapshots for Windows fast launch.

", - "smithy.api#xmlName": "maxParallelLaunches" + "aws.protocols#ec2QueryName": "HiveCompatiblePartitions", + "smithy.api#documentation": "

Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3.

", + "smithy.api#xmlName": "hiveCompatiblePartitions" } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "PerHourPartition": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The owner ID for the AMI for which Windows fast launch was enabled.

", - "smithy.api#xmlName": "ownerId" + "aws.protocols#ec2QueryName": "PerHourPartition", + "smithy.api#documentation": "

Indicates whether to partition the flow log per hour.

", + "smithy.api#xmlName": "perHourPartition" } - }, - "State": { - "target": "com.amazonaws.ec2#FastLaunchStateCode", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the destination options for a flow log.

" + } + }, + "com.amazonaws.ec2#DetachClassicLinkVpc": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DetachClassicLinkVpcRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DetachClassicLinkVpcResult" + }, + "traits": { + "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Unlinks (detaches) a linked EC2-Classic instance from a VPC. After the instance has been unlinked, \n\t\t the VPC security groups are no longer associated with it. An instance is automatically unlinked from \n\t\t a VPC when it's stopped.

" + } + }, + "com.amazonaws.ec2#DetachClassicLinkVpcRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The current state of Windows fast launch for the specified AMI.

", - "smithy.api#xmlName": "state" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "StateTransitionReason": { - "target": "com.amazonaws.ec2#String", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "aws.protocols#ec2QueryName": "StateTransitionReason", - "smithy.api#documentation": "

The reason that the state changed for Windows fast launch for the AMI.

", - "smithy.api#xmlName": "stateTransitionReason" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance to unlink from the VPC.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "instanceId" } }, - "StateTransitionTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "aws.protocols#ec2QueryName": "StateTransitionTime", - "smithy.api#documentation": "

The time that the state changed for Windows fast launch for the AMI.

", - "smithy.api#xmlName": "stateTransitionTime" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC to which the instance is linked.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "vpcId" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.ec2#EnableFastSnapshotRestoreErrorItem": { + "com.amazonaws.ec2#DetachClassicLinkVpcResult": { "type": "structure", "members": { - "SnapshotId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "SnapshotId", - "smithy.api#documentation": "

The ID of the snapshot.

", - "smithy.api#xmlName": "snapshotId" - } - }, - "FastSnapshotRestoreStateErrors": { - "target": "com.amazonaws.ec2#EnableFastSnapshotRestoreStateErrorSet", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "FastSnapshotRestoreStateErrorSet", - "smithy.api#documentation": "

The errors.

", - "smithy.api#xmlName": "fastSnapshotRestoreStateErrorSet" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } } }, "traits": { - "smithy.api#documentation": "

Contains information about the errors that occurred when enabling fast snapshot restores.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#EnableFastSnapshotRestoreErrorSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#EnableFastSnapshotRestoreErrorItem", - "traits": { - "smithy.api#xmlName": "item" - } + "com.amazonaws.ec2#DetachInternetGateway": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DetachInternetGatewayRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Detaches an internet gateway from a VPC, disabling connectivity between the internet\n\t\t\tand the VPC. The VPC must not contain any running instances with Elastic IP addresses or\n\t\t\tpublic IPv4 addresses.

", + "smithy.api#examples": [ + { + "title": "To detach an Internet gateway from a VPC", + "documentation": "This example detaches the specified Internet gateway from the specified VPC.", + "input": { + "InternetGatewayId": "igw-c0a643a9", + "VpcId": "vpc-a01106c2" + } + } + ] } }, - "com.amazonaws.ec2#EnableFastSnapshotRestoreStateError": { + "com.amazonaws.ec2#DetachInternetGatewayRequest": { "type": "structure", "members": { - "Code": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The error code.

", - "smithy.api#xmlName": "code" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "Message": { - "target": "com.amazonaws.ec2#String", + "InternetGatewayId": { + "target": "com.amazonaws.ec2#InternetGatewayId", "traits": { - "aws.protocols#ec2QueryName": "Message", - "smithy.api#documentation": "

The error message.

", - "smithy.api#xmlName": "message" + "aws.protocols#ec2QueryName": "InternetGatewayId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the internet gateway.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "internetGatewayId" + } + }, + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", + "traits": { + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "vpcId" } } }, "traits": { - "smithy.api#documentation": "

Describes an error that occurred when enabling fast snapshot restores.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#EnableFastSnapshotRestoreStateErrorItem": { + "com.amazonaws.ec2#DetachNetworkInterface": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DetachNetworkInterfaceRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Detaches a network interface from an instance.

", + "smithy.api#examples": [ + { + "title": "To detach a network interface from an instance", + "documentation": "This example detaches the specified network interface from its attached instance.", + "input": { + "AttachmentId": "eni-attach-66c4350a" + } + } + ] + } + }, + "com.amazonaws.ec2#DetachNetworkInterfaceRequest": { "type": "structure", "members": { - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone.

", - "smithy.api#xmlName": "availabilityZone" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "Error": { - "target": "com.amazonaws.ec2#EnableFastSnapshotRestoreStateError", + "AttachmentId": { + "target": "com.amazonaws.ec2#NetworkInterfaceAttachmentId", "traits": { - "aws.protocols#ec2QueryName": "Error", - "smithy.api#documentation": "

The error.

", - "smithy.api#xmlName": "error" + "aws.protocols#ec2QueryName": "AttachmentId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the attachment.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "attachmentId" + } + }, + "Force": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Force", + "smithy.api#documentation": "

Specifies whether to force a detachment.

\n \n \n ", + "smithy.api#xmlName": "force" } } }, "traits": { - "smithy.api#documentation": "

Contains information about an error that occurred when enabling fast snapshot restores.

" + "smithy.api#documentation": "

Contains the parameters for DetachNetworkInterface.

", + "smithy.api#input": {} } }, - "com.amazonaws.ec2#EnableFastSnapshotRestoreStateErrorSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#EnableFastSnapshotRestoreStateErrorItem", - "traits": { - "smithy.api#xmlName": "item" - } + "com.amazonaws.ec2#DetachVerifiedAccessTrustProvider": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DetachVerifiedAccessTrustProviderRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DetachVerifiedAccessTrustProviderResult" + }, + "traits": { + "smithy.api#documentation": "

Detaches the specified Amazon Web Services Verified Access trust provider from the specified Amazon Web Services Verified Access instance.

" } }, - "com.amazonaws.ec2#EnableFastSnapshotRestoreSuccessItem": { + "com.amazonaws.ec2#DetachVerifiedAccessTrustProviderRequest": { "type": "structure", "members": { - "SnapshotId": { - "target": "com.amazonaws.ec2#String", + "VerifiedAccessInstanceId": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceId", "traits": { - "aws.protocols#ec2QueryName": "SnapshotId", - "smithy.api#documentation": "

The ID of the snapshot.

", - "smithy.api#xmlName": "snapshotId" - } - }, - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone.

", - "smithy.api#xmlName": "availabilityZone" - } - }, - "State": { - "target": "com.amazonaws.ec2#FastSnapshotRestoreStateCode", - "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of fast snapshot restores.

", - "smithy.api#xmlName": "state" - } - }, - "StateTransitionReason": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "StateTransitionReason", - "smithy.api#documentation": "

The reason for the state transition. The possible values are as follows:

\n ", - "smithy.api#xmlName": "stateTransitionReason" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Verified Access instance.

", + "smithy.api#required": {} } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "VerifiedAccessTrustProviderId": { + "target": "com.amazonaws.ec2#VerifiedAccessTrustProviderId", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that enabled fast snapshot restores on the snapshot.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Verified Access trust provider.

", + "smithy.api#required": {} } }, - "OwnerAlias": { + "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "OwnerAlias", - "smithy.api#documentation": "

The Amazon Web Services owner alias that enabled fast snapshot restores on the snapshot. This is intended for future use.

", - "smithy.api#xmlName": "ownerAlias" - } - }, - "EnablingTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "aws.protocols#ec2QueryName": "EnablingTime", - "smithy.api#documentation": "

The time at which fast snapshot restores entered the enabling state.

", - "smithy.api#xmlName": "enablingTime" - } - }, - "OptimizingTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "aws.protocols#ec2QueryName": "OptimizingTime", - "smithy.api#documentation": "

The time at which fast snapshot restores entered the optimizing state.

", - "smithy.api#xmlName": "optimizingTime" + "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} } }, - "EnabledTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "EnabledTime", - "smithy.api#documentation": "

The time at which fast snapshot restores entered the enabled state.

", - "smithy.api#xmlName": "enabledTime" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "DisablingTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DetachVerifiedAccessTrustProviderResult": { + "type": "structure", + "members": { + "VerifiedAccessTrustProvider": { + "target": "com.amazonaws.ec2#VerifiedAccessTrustProvider", "traits": { - "aws.protocols#ec2QueryName": "DisablingTime", - "smithy.api#documentation": "

The time at which fast snapshot restores entered the disabling state.

", - "smithy.api#xmlName": "disablingTime" + "aws.protocols#ec2QueryName": "VerifiedAccessTrustProvider", + "smithy.api#documentation": "

Details about the Verified Access trust provider.

", + "smithy.api#xmlName": "verifiedAccessTrustProvider" } }, - "DisabledTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "VerifiedAccessInstance": { + "target": "com.amazonaws.ec2#VerifiedAccessInstance", "traits": { - "aws.protocols#ec2QueryName": "DisabledTime", - "smithy.api#documentation": "

The time at which fast snapshot restores entered the disabled state.

", - "smithy.api#xmlName": "disabledTime" + "aws.protocols#ec2QueryName": "VerifiedAccessInstance", + "smithy.api#documentation": "

Details about the Verified Access instance.

", + "smithy.api#xmlName": "verifiedAccessInstance" } } }, "traits": { - "smithy.api#documentation": "

Describes fast snapshot restores that were successfully enabled.

" - } - }, - "com.amazonaws.ec2#EnableFastSnapshotRestoreSuccessSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#EnableFastSnapshotRestoreSuccessItem", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#output": {} } }, - "com.amazonaws.ec2#EnableFastSnapshotRestores": { + "com.amazonaws.ec2#DetachVolume": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#EnableFastSnapshotRestoresRequest" + "target": "com.amazonaws.ec2#DetachVolumeRequest" }, "output": { - "target": "com.amazonaws.ec2#EnableFastSnapshotRestoresResult" + "target": "com.amazonaws.ec2#VolumeAttachment" }, "traits": { - "smithy.api#documentation": "

Enables fast snapshot restores for the specified snapshots in the specified Availability Zones.

\n

You get the full benefit of fast snapshot restores after they enter the enabled state.\n To get the current state of fast snapshot restores, use DescribeFastSnapshotRestores.\n To disable fast snapshot restores, use DisableFastSnapshotRestores.

\n

For more information, see Amazon EBS fast snapshot\n restore in the Amazon EBS User Guide.

" + "smithy.api#documentation": "

Detaches an EBS volume from an instance. Make sure to unmount any file systems on the\n device within your operating system before detaching the volume. Failure to do so can result\n in the volume becoming stuck in the busy state while detaching. If this happens,\n detachment can be delayed indefinitely until you unmount the volume, force detachment, reboot\n the instance, or all three. If an EBS volume is the root device of an instance, it can't be\n detached while the instance is running. To detach the root volume, stop the instance\n first.

\n

When a volume with an Amazon Web Services Marketplace product code is detached from an instance, the\n product code is no longer associated with the instance.

\n

You can't detach or force detach volumes that are attached to Amazon Web Services-managed resources. \n Attempting to do this results in the UnsupportedOperationException \n exception.

\n

For more information, see Detach an Amazon EBS volume in the\n Amazon EBS User Guide.

", + "smithy.api#examples": [ + { + "title": "To detach a volume from an instance", + "documentation": "This example detaches the volume (``vol-049df61146c4d7901``) from the instance it is attached to.", + "input": { + "VolumeId": "vol-1234567890abcdef0" + }, + "output": { + "AttachTime": "2014-02-27T19:23:06.000Z", + "InstanceId": "i-1234567890abcdef0", + "VolumeId": "vol-049df61146c4d7901", + "State": "detaching", + "Device": "/dev/sdb" + } + } + ] } }, - "com.amazonaws.ec2#EnableFastSnapshotRestoresRequest": { + "com.amazonaws.ec2#DetachVolumeRequest": { "type": "structure", "members": { - "AvailabilityZones": { - "target": "com.amazonaws.ec2#AvailabilityZoneStringList", + "Device": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

One or more Availability Zones. For example, us-east-2a.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "AvailabilityZone" + "smithy.api#documentation": "

The device name.

" } }, - "SourceSnapshotIds": { - "target": "com.amazonaws.ec2#SnapshotIdStringList", + "Force": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of one or more snapshots. For example, snap-1234567890abcdef0. You can specify\n a snapshot that was shared with you from another Amazon Web Services account.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "SourceSnapshotId" + "smithy.api#documentation": "

Forces detachment if the previous detachment attempt did not occur cleanly (for example,\n logging into an instance, unmounting the volume, and detaching normally). This option can lead\n to data loss or a corrupted file system. Use this option only as a last resort to detach a\n volume from a failed instance. The instance won't have an opportunity to flush file system\n caches or file system metadata. If you use this option, you must perform file system check and\n repair procedures.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceIdForResolver", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The ID of the instance. If you are detaching a Multi-Attach enabled volume, you must specify an instance ID.

" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#EnableFastSnapshotRestoresResult": { - "type": "structure", - "members": { - "Successful": { - "target": "com.amazonaws.ec2#EnableFastSnapshotRestoreSuccessSet", + }, + "VolumeId": { + "target": "com.amazonaws.ec2#VolumeIdWithResolver", "traits": { - "aws.protocols#ec2QueryName": "Successful", - "smithy.api#documentation": "

Information about the snapshots for which fast snapshot restores were successfully enabled.

", - "smithy.api#xmlName": "successful" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the volume.

", + "smithy.api#required": {} } }, - "Unsuccessful": { - "target": "com.amazonaws.ec2#EnableFastSnapshotRestoreErrorSet", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Unsuccessful", - "smithy.api#documentation": "

Information about the snapshots for which fast snapshot restores could not be enabled.

", - "smithy.api#xmlName": "unsuccessful" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#EnableImage": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#EnableImageRequest" - }, - "output": { - "target": "com.amazonaws.ec2#EnableImageResult" - }, - "traits": { - "smithy.api#documentation": "

Re-enables a disabled AMI. The re-enabled AMI is marked as available and can\n be used for instance launches, appears in describe operations, and can be shared. Amazon Web Services\n accounts, organizations, and Organizational Units that lost access to the AMI when it was\n disabled do not regain access automatically. Once the AMI is available, it can be shared with\n them again.

\n

Only the AMI owner can re-enable a disabled AMI.

\n

For more information, see Disable an AMI in the\n Amazon EC2 User Guide.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#EnableImageBlockPublicAccess": { + "com.amazonaws.ec2#DetachVpnGateway": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#EnableImageBlockPublicAccessRequest" + "target": "com.amazonaws.ec2#DetachVpnGatewayRequest" }, "output": { - "target": "com.amazonaws.ec2#EnableImageBlockPublicAccessResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Enables block public access for AMIs at the account level in the\n specified Amazon Web Services Region. This prevents the public sharing of your AMIs. However, if you already\n have public AMIs, they will remain publicly available.

\n

The API can take up to 10 minutes to configure this setting. During this time, if you run\n GetImageBlockPublicAccessState, the response will be unblocked. When\n the API has completed the configuration, the response will be\n block-new-sharing.

\n

For more information, see Block\n public access to your AMIs in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Detaches a virtual private gateway from a VPC. You do this if you're planning to turn\n off the VPC and not use it anymore. You can confirm a virtual private gateway has been\n completely detached from a VPC by describing the virtual private gateway (any\n attachments to the virtual private gateway are also described).

\n

You must wait for the attachment's state to switch to detached before you\n can delete the VPC or attach a different VPC to the virtual private gateway.

" } }, - "com.amazonaws.ec2#EnableImageBlockPublicAccessRequest": { + "com.amazonaws.ec2#DetachVpnGatewayRequest": { "type": "structure", "members": { - "ImageBlockPublicAccessState": { - "target": "com.amazonaws.ec2#ImageBlockPublicAccessEnabledState", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Specify block-new-sharing to enable block public access for AMIs at the\n account level in the specified Region. This will block any attempt to publicly share your AMIs\n in the specified Region.

", + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#required": {} + } + }, + "VpnGatewayId": { + "target": "com.amazonaws.ec2#VpnGatewayId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the virtual private gateway.

", "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DetachVpnGateway.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#EnableImageBlockPublicAccessResult": { + "com.amazonaws.ec2#DeviceOptions": { "type": "structure", "members": { - "ImageBlockPublicAccessState": { - "target": "com.amazonaws.ec2#ImageBlockPublicAccessEnabledState", + "TenantId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ImageBlockPublicAccessState", - "smithy.api#documentation": "

Returns block-new-sharing if the request succeeds; otherwise, it returns an\n error.

", - "smithy.api#xmlName": "imageBlockPublicAccessState" + "aws.protocols#ec2QueryName": "TenantId", + "smithy.api#documentation": "

The ID of the tenant application with the device-identity provider.

", + "smithy.api#xmlName": "tenantId" + } + }, + "PublicSigningKeyUrl": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PublicSigningKeyUrl", + "smithy.api#documentation": "

\n The URL Amazon Web Services Verified Access will use to verify the authenticity of the device tokens.\n

", + "smithy.api#xmlName": "publicSigningKeyUrl" } } }, "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#EnableImageDeprecation": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#EnableImageDeprecationRequest" - }, - "output": { - "target": "com.amazonaws.ec2#EnableImageDeprecationResult" - }, - "traits": { - "smithy.api#documentation": "

Enables deprecation of the specified AMI at the specified date and time.

\n

For more information, see Deprecate an AMI in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Describes the options for an Amazon Web Services Verified Access device-identity based trust provider.

" } }, - "com.amazonaws.ec2#EnableImageDeprecationRequest": { - "type": "structure", + "com.amazonaws.ec2#DeviceTrustProviderType": { + "type": "enum", "members": { - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", + "jamf": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the AMI.

", - "smithy.api#required": {} + "smithy.api#enumValue": "jamf" } }, - "DeprecateAt": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "crowdstrike": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The date and time to deprecate the AMI, in UTC, in the following format:\n YYYY-MM-DDTHH:MM:SSZ.\n If you specify a value for seconds, Amazon EC2 rounds the seconds to the\n nearest minute.

\n

You can’t specify a date in the past. The upper limit for DeprecateAt is 10\n years from now, except for public AMIs, where the upper limit is 2 years from the creation date.

", - "smithy.api#required": {} + "smithy.api#enumValue": "crowdstrike" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "jumpcloud": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "jumpcloud" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#EnableImageDeprecationResult": { + "com.amazonaws.ec2#DeviceTrustProviderTypeList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DeviceTrustProviderType", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#DeviceType": { + "type": "enum", + "members": { + "ebs": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ebs" + } + }, + "instance_store": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "instance-store" + } + } + } + }, + "com.amazonaws.ec2#DhcpConfiguration": { "type": "structure", "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + "Key": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "Key", + "smithy.api#documentation": "

The name of a DHCP option.

", + "smithy.api#xmlName": "key" + } + }, + "Values": { + "target": "com.amazonaws.ec2#DhcpConfigurationValueList", + "traits": { + "aws.protocols#ec2QueryName": "ValueSet", + "smithy.api#documentation": "

The values for the DHCP option.

", + "smithy.api#xmlName": "valueSet" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes a DHCP configuration option.

" } }, - "com.amazonaws.ec2#EnableImageDeregistrationProtection": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#EnableImageDeregistrationProtectionRequest" - }, - "output": { - "target": "com.amazonaws.ec2#EnableImageDeregistrationProtectionResult" - }, - "traits": { - "smithy.api#documentation": "

Enables deregistration protection for an AMI. When deregistration protection is enabled,\n the AMI can't be deregistered.

\n

To allow the AMI to be deregistered, you must first disable deregistration protection\n using DisableImageDeregistrationProtection.

\n

For more information, see Protect an\n AMI from deregistration in the Amazon EC2 User Guide.

" + "com.amazonaws.ec2#DhcpConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DhcpConfiguration", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#EnableImageDeregistrationProtectionRequest": { + "com.amazonaws.ec2#DhcpConfigurationValueList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#AttributeValue", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#DhcpOptions": { "type": "structure", "members": { - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", + "OwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the AMI.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the DHCP options set.

", + "smithy.api#xmlName": "ownerId" } }, - "WithCooldown": { - "target": "com.amazonaws.ec2#Boolean", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#documentation": "

If true, enforces deregistration protection for 24 hours after deregistration\n protection is disabled.

" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the DHCP options set.

", + "smithy.api#xmlName": "tagSet" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "DhcpOptionsId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DhcpOptionsId", + "smithy.api#documentation": "

The ID of the set of DHCP options.

", + "smithy.api#xmlName": "dhcpOptionsId" + } + }, + "DhcpConfigurations": { + "target": "com.amazonaws.ec2#DhcpConfigurationList", + "traits": { + "aws.protocols#ec2QueryName": "DhcpConfigurationSet", + "smithy.api#documentation": "

The DHCP options in the set.

", + "smithy.api#xmlName": "dhcpConfigurationSet" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

The set of DHCP options.

" } }, - "com.amazonaws.ec2#EnableImageDeregistrationProtectionResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" - } + "com.amazonaws.ec2#DhcpOptionsId": { + "type": "string" + }, + "com.amazonaws.ec2#DhcpOptionsIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DhcpOptionsId", + "traits": { + "smithy.api#xmlName": "DhcpOptionsId" } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#EnableImageRequest": { + "com.amazonaws.ec2#DhcpOptionsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DhcpOptions", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#DirectoryServiceAuthentication": { "type": "structure", "members": { - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the AMI.

", - "smithy.api#required": {} - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "DirectoryId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DirectoryId", + "smithy.api#documentation": "

The ID of the Active Directory used for authentication.

", + "smithy.api#xmlName": "directoryId" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes an Active Directory.

" } }, - "com.amazonaws.ec2#EnableImageResult": { + "com.amazonaws.ec2#DirectoryServiceAuthenticationRequest": { "type": "structure", "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + "DirectoryId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "smithy.api#documentation": "

The ID of the Active Directory to be used for authentication.

" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes the Active Directory to be used for client authentication.

" } }, - "com.amazonaws.ec2#EnableIpamOrganizationAdminAccount": { + "com.amazonaws.ec2#DisableAddressTransfer": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#EnableIpamOrganizationAdminAccountRequest" + "target": "com.amazonaws.ec2#DisableAddressTransferRequest" }, "output": { - "target": "com.amazonaws.ec2#EnableIpamOrganizationAdminAccountResult" + "target": "com.amazonaws.ec2#DisableAddressTransferResult" }, "traits": { - "smithy.api#documentation": "

Enable an Organizations member account as the IPAM admin account. You cannot select the Organizations management account as the IPAM admin account. For more information, see Enable integration with Organizations in the Amazon VPC IPAM User Guide.\n

" + "smithy.api#documentation": "

Disables Elastic IP address transfer. For more information, see Transfer Elastic IP addresses in the Amazon VPC User Guide.

" } }, - "com.amazonaws.ec2#EnableIpamOrganizationAdminAccountRequest": { + "com.amazonaws.ec2#DisableAddressTransferRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "AllocationId": { + "target": "com.amazonaws.ec2#AllocationId", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The allocation ID of an Elastic IP address.

", + "smithy.api#required": {} } }, - "DelegatedAdminAccountId": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Organizations member account ID that you want to enable as the IPAM account.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -47042,15 +48625,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#EnableIpamOrganizationAdminAccountResult": { + "com.amazonaws.ec2#DisableAddressTransferResult": { "type": "structure", "members": { - "Success": { - "target": "com.amazonaws.ec2#Boolean", + "AddressTransfer": { + "target": "com.amazonaws.ec2#AddressTransfer", "traits": { - "aws.protocols#ec2QueryName": "Success", - "smithy.api#documentation": "

The result of enabling the IPAM account.

", - "smithy.api#xmlName": "success" + "aws.protocols#ec2QueryName": "AddressTransfer", + "smithy.api#documentation": "

An Elastic IP address transfer.

", + "smithy.api#xmlName": "addressTransfer" } } }, @@ -47058,25 +48641,25 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#EnableReachabilityAnalyzerOrganizationSharing": { + "com.amazonaws.ec2#DisableAllowedImagesSettings": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#EnableReachabilityAnalyzerOrganizationSharingRequest" + "target": "com.amazonaws.ec2#DisableAllowedImagesSettingsRequest" }, "output": { - "target": "com.amazonaws.ec2#EnableReachabilityAnalyzerOrganizationSharingResult" + "target": "com.amazonaws.ec2#DisableAllowedImagesSettingsResult" }, "traits": { - "smithy.api#documentation": "

Establishes a trust relationship between Reachability Analyzer and Organizations.\n This operation must be performed by the management account for the organization.

\n

After you establish a trust relationship, a user in the management account or \n a delegated administrator account can run a cross-account analysis using resources \n from the member accounts.

" + "smithy.api#documentation": "

Disables Allowed AMIs for your account in the specified Amazon Web Services Region. When set to\n disabled, the image criteria in your Allowed AMIs settings do not apply, and no\n restrictions are placed on AMI discoverability or usage. Users in your account can launch\n instances using any public AMI or AMI shared with your account.

\n \n

The Allowed AMIs feature does not restrict the AMIs owned by your account. Regardless of\n the criteria you set, the AMIs created by your account will always be discoverable and\n usable by users in your account.

\n
\n

For more information, see Control the discovery and use of AMIs in\n Amazon EC2 with Allowed AMIs in\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#EnableReachabilityAnalyzerOrganizationSharingRequest": { + "com.amazonaws.ec2#DisableAllowedImagesSettingsRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -47084,15 +48667,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#EnableReachabilityAnalyzerOrganizationSharingResult": { + "com.amazonaws.ec2#DisableAllowedImagesSettingsResult": { "type": "structure", "members": { - "ReturnValue": { - "target": "com.amazonaws.ec2#Boolean", + "AllowedImagesSettingsState": { + "target": "com.amazonaws.ec2#AllowedImagesSettingsDisabledState", "traits": { - "aws.protocols#ec2QueryName": "ReturnValue", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, returns an error.

", - "smithy.api#xmlName": "returnValue" + "aws.protocols#ec2QueryName": "AllowedImagesSettingsState", + "smithy.api#documentation": "

Returns disabled if the request succeeds; otherwise, it returns an\n error.

", + "smithy.api#xmlName": "allowedImagesSettingsState" } } }, @@ -47100,25 +48683,49 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#EnableSerialConsoleAccess": { + "com.amazonaws.ec2#DisableAwsNetworkPerformanceMetricSubscription": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#EnableSerialConsoleAccessRequest" + "target": "com.amazonaws.ec2#DisableAwsNetworkPerformanceMetricSubscriptionRequest" }, "output": { - "target": "com.amazonaws.ec2#EnableSerialConsoleAccessResult" + "target": "com.amazonaws.ec2#DisableAwsNetworkPerformanceMetricSubscriptionResult" }, "traits": { - "smithy.api#documentation": "

Enables access to the EC2 serial console of all instances for your account. By default,\n\t\t\taccess to the EC2 serial console is disabled for your account. For more information, see Manage account access to the EC2 serial console\n\t\t\tin the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Disables Infrastructure Performance metric subscriptions.

" } }, - "com.amazonaws.ec2#EnableSerialConsoleAccessRequest": { + "com.amazonaws.ec2#DisableAwsNetworkPerformanceMetricSubscriptionRequest": { "type": "structure", "members": { + "Source": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The source Region or Availability Zone that the metric subscription is disabled for. For example, us-east-1.

" + } + }, + "Destination": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The target Region or Availability Zone that the metric subscription is disabled for. For example, eu-north-1.

" + } + }, + "Metric": { + "target": "com.amazonaws.ec2#MetricType", + "traits": { + "smithy.api#documentation": "

The metric used for the disabled subscription.

" + } + }, + "Statistic": { + "target": "com.amazonaws.ec2#StatisticType", + "traits": { + "smithy.api#documentation": "

The statistic used for the disabled subscription.

" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -47126,15 +48733,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#EnableSerialConsoleAccessResult": { + "com.amazonaws.ec2#DisableAwsNetworkPerformanceMetricSubscriptionResult": { "type": "structure", "members": { - "SerialConsoleAccessEnabled": { + "Output": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "SerialConsoleAccessEnabled", - "smithy.api#documentation": "

If true, access to the EC2 serial console of all instances is enabled for\n\t\t\tyour account. If false, access to the EC2 serial console of all instances\n\t\t\tis disabled for your account.

", - "smithy.api#xmlName": "serialConsoleAccessEnabled" + "aws.protocols#ec2QueryName": "Output", + "smithy.api#documentation": "

Indicates whether the unsubscribe action was successful.

", + "smithy.api#xmlName": "output" } } }, @@ -47142,29 +48749,21 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#EnableSnapshotBlockPublicAccess": { + "com.amazonaws.ec2#DisableEbsEncryptionByDefault": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#EnableSnapshotBlockPublicAccessRequest" + "target": "com.amazonaws.ec2#DisableEbsEncryptionByDefaultRequest" }, "output": { - "target": "com.amazonaws.ec2#EnableSnapshotBlockPublicAccessResult" + "target": "com.amazonaws.ec2#DisableEbsEncryptionByDefaultResult" }, "traits": { - "smithy.api#documentation": "

Enables or modifies the block public access for snapshots \n setting at the account level for the specified Amazon Web Services Region. After you enable block \n public access for snapshots in a Region, users can no longer request public sharing \n for snapshots in that Region. Snapshots that are already publicly shared are either \n treated as private or they remain publicly shared, depending on the \n State that you specify.

\n

If block public access is enabled in block-all-sharing mode, and \n you change the mode to block-new-sharing, all snapshots that were \n previously publicly shared are no longer treated as private and they become publicly \n accessible again.

\n

For more information, see \n Block public access for snapshots in the Amazon EBS User Guide.

" + "smithy.api#documentation": "

Disables EBS encryption by default for your account in the current Region.

\n

After you disable encryption by default, you can still create encrypted volumes by \n enabling encryption when you create each volume.

\n

Disabling encryption by default does not change the encryption status of your\n existing volumes.

\n

For more information, see Amazon EBS encryption in the\n Amazon EBS User Guide.

" } }, - "com.amazonaws.ec2#EnableSnapshotBlockPublicAccessRequest": { + "com.amazonaws.ec2#DisableEbsEncryptionByDefaultRequest": { "type": "structure", "members": { - "State": { - "target": "com.amazonaws.ec2#SnapshotBlockPublicAccessState", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The mode in which to enable block public access for snapshots for the Region. \n Specify one of the following values:

\n \n

\n unblocked is not a valid value for EnableSnapshotBlockPublicAccess.

", - "smithy.api#required": {} - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { @@ -47176,15 +48775,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#EnableSnapshotBlockPublicAccessResult": { + "com.amazonaws.ec2#DisableEbsEncryptionByDefaultResult": { "type": "structure", "members": { - "State": { - "target": "com.amazonaws.ec2#SnapshotBlockPublicAccessState", + "EbsEncryptionByDefault": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of block public access for snapshots for the account and Region. Returns \n either block-all-sharing or block-new-sharing if the request \n succeeds.

", - "smithy.api#xmlName": "state" + "aws.protocols#ec2QueryName": "EbsEncryptionByDefault", + "smithy.api#documentation": "

The updated status of encryption by default.

", + "smithy.api#xmlName": "ebsEncryptionByDefault" } } }, @@ -47192,45 +48791,39 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#EnableTransitGatewayRouteTablePropagation": { + "com.amazonaws.ec2#DisableFastLaunch": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#EnableTransitGatewayRouteTablePropagationRequest" + "target": "com.amazonaws.ec2#DisableFastLaunchRequest" }, "output": { - "target": "com.amazonaws.ec2#EnableTransitGatewayRouteTablePropagationResult" + "target": "com.amazonaws.ec2#DisableFastLaunchResult" }, "traits": { - "smithy.api#documentation": "

Enables the specified attachment to propagate routes to the specified\n propagation route table.

" + "smithy.api#documentation": "

Discontinue Windows fast launch for a Windows AMI, and clean up existing pre-provisioned\n snapshots. After you disable Windows fast launch, the AMI uses the standard launch process for\n each new instance. Amazon EC2 must remove all pre-provisioned snapshots before you can enable\n Windows fast launch again.

\n \n

You can only change these settings for Windows AMIs that you own or that have been\n shared with you.

\n
" } }, - "com.amazonaws.ec2#EnableTransitGatewayRouteTablePropagationRequest": { + "com.amazonaws.ec2#DisableFastLaunchRequest": { "type": "structure", "members": { - "TransitGatewayRouteTableId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the propagation route table.

", + "smithy.api#documentation": "

Specify the ID of the image for which to disable Windows fast launch.

", "smithy.api#required": {} } }, - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "Force": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The ID of the attachment.

" + "smithy.api#documentation": "

Forces the image settings to turn off Windows fast launch for your Windows AMI. This\n parameter overrides any errors that are encountered while cleaning up resources in your\n account.

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "TransitGatewayRouteTableAnnouncementId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableAnnouncementId", - "traits": { - "smithy.api#documentation": "

The ID of the transit gateway route table announcement.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -47238,170 +48831,79 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#EnableTransitGatewayRouteTablePropagationResult": { + "com.amazonaws.ec2#DisableFastLaunchResult": { "type": "structure", "members": { - "Propagation": { - "target": "com.amazonaws.ec2#TransitGatewayPropagation", + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { - "aws.protocols#ec2QueryName": "Propagation", - "smithy.api#documentation": "

Information about route propagation.

", - "smithy.api#xmlName": "propagation" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#EnableVgwRoutePropagation": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#EnableVgwRoutePropagationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Enables a virtual private gateway (VGW) to propagate routes to the specified route\n table of a VPC.

", - "smithy.api#examples": [ - { - "title": "To enable route propagation", - "documentation": "This example enables the specified virtual private gateway to propagate static routes to the specified route table.", - "input": { - "RouteTableId": "rtb-22574640", - "GatewayId": "vgw-9a4cacf3" - } + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the image for which Windows fast launch was disabled.

", + "smithy.api#xmlName": "imageId" } - ] - } - }, - "com.amazonaws.ec2#EnableVgwRoutePropagationRequest": { - "type": "structure", - "members": { - "GatewayId": { - "target": "com.amazonaws.ec2#VpnGatewayId", + }, + "ResourceType": { + "target": "com.amazonaws.ec2#FastLaunchResourceType", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the virtual private gateway that is attached to a VPC. The virtual private\n gateway must be attached to the same VPC that the routing tables are associated with.\n

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "ResourceType", + "smithy.api#documentation": "

The pre-provisioning resource type that must be cleaned after turning off Windows fast\n launch for the Windows AMI. Supported values include: snapshot.

", + "smithy.api#xmlName": "resourceType" } }, - "RouteTableId": { - "target": "com.amazonaws.ec2#RouteTableId", + "SnapshotConfiguration": { + "target": "com.amazonaws.ec2#FastLaunchSnapshotConfigurationResponse", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the route table. The routing table must be associated with the same VPC that\n the virtual private gateway is attached to.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "SnapshotConfiguration", + "smithy.api#documentation": "

Parameters that were used for Windows fast launch for the Windows AMI before Windows fast\n launch was disabled. This informs the clean-up process.

", + "smithy.api#xmlName": "snapshotConfiguration" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "LaunchTemplate": { + "target": "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationResponse", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "LaunchTemplate", + "smithy.api#documentation": "

The launch template that was used to launch Windows instances from pre-provisioned\n snapshots.

", + "smithy.api#xmlName": "launchTemplate" } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the parameters for EnableVgwRoutePropagation.

", - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#EnableVolumeIO": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#EnableVolumeIORequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Enables I/O operations for a volume that had I/O operations disabled because the data on\n the volume was potentially inconsistent.

", - "smithy.api#examples": [ - { - "title": "To enable I/O for a volume", - "documentation": "This example enables I/O on volume ``vol-1234567890abcdef0``.", - "input": { - "VolumeId": "vol-1234567890abcdef0" - } + }, + "MaxParallelLaunches": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "MaxParallelLaunches", + "smithy.api#documentation": "

The maximum number of instances that Amazon EC2 can launch at the same time to create\n pre-provisioned snapshots for Windows fast launch.

", + "smithy.api#xmlName": "maxParallelLaunches" } - ] - } - }, - "com.amazonaws.ec2#EnableVolumeIORequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "OwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The owner of the Windows AMI for which Windows fast launch was disabled.

", + "smithy.api#xmlName": "ownerId" } }, - "VolumeId": { - "target": "com.amazonaws.ec2#VolumeId", + "State": { + "target": "com.amazonaws.ec2#FastLaunchStateCode", "traits": { - "aws.protocols#ec2QueryName": "VolumeId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the volume.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "volumeId" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of Windows fast launch for the specified Windows AMI.

", + "smithy.api#xmlName": "state" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#EnableVpcClassicLink": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#EnableVpcClassicLinkRequest" - }, - "output": { - "target": "com.amazonaws.ec2#EnableVpcClassicLinkResult" - }, - "traits": { - "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Enables a VPC for ClassicLink. You can then link EC2-Classic instances to your\n\t\t\tClassicLink-enabled VPC to allow communication over private IP addresses. You cannot\n\t\t\tenable your VPC for ClassicLink if any of your VPC route tables have existing routes for\n\t\t\taddress ranges within the 10.0.0.0/8 IP address range, excluding local\n\t\t\troutes for VPCs in the 10.0.0.0/16 and 10.1.0.0/16 IP address\n\t\t\tranges.

" - } - }, - "com.amazonaws.ec2#EnableVpcClassicLinkDnsSupport": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#EnableVpcClassicLinkDnsSupportRequest" - }, - "output": { - "target": "com.amazonaws.ec2#EnableVpcClassicLinkDnsSupportResult" - }, - "traits": { - "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Enables a VPC to support DNS hostname resolution for ClassicLink. If enabled, the DNS\n\t\t\thostname of a linked EC2-Classic instance resolves to its private IP address when\n\t\t\taddressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname\n\t\t\tof an instance in a VPC resolves to its private IP address when addressed from a linked\n\t\t\tEC2-Classic instance.

\n

You must specify a VPC ID in the request.

" - } - }, - "com.amazonaws.ec2#EnableVpcClassicLinkDnsSupportRequest": { - "type": "structure", - "members": { - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + }, + "StateTransitionReason": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#xmlName": "VpcId" + "aws.protocols#ec2QueryName": "StateTransitionReason", + "smithy.api#documentation": "

The reason that the state changed for Windows fast launch for the Windows AMI.

", + "smithy.api#xmlName": "stateTransitionReason" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#EnableVpcClassicLinkDnsSupportResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + }, + "StateTransitionTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "StateTransitionTime", + "smithy.api#documentation": "

The time that the state changed for Windows fast launch for the Windows AMI.

", + "smithy.api#xmlName": "stateTransitionTime" } } }, @@ -47409,812 +48911,800 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#EnableVpcClassicLinkRequest": { + "com.amazonaws.ec2#DisableFastSnapshotRestoreErrorItem": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "SnapshotId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The ID of the snapshot.

", + "smithy.api#xmlName": "snapshotId" } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "FastSnapshotRestoreStateErrors": { + "target": "com.amazonaws.ec2#DisableFastSnapshotRestoreStateErrorSet", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "vpcId" + "aws.protocols#ec2QueryName": "FastSnapshotRestoreStateErrorSet", + "smithy.api#documentation": "

The errors.

", + "smithy.api#xmlName": "fastSnapshotRestoreStateErrorSet" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Contains information about the errors that occurred when disabling fast snapshot restores.

" } }, - "com.amazonaws.ec2#EnableVpcClassicLinkResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" - } + "com.amazonaws.ec2#DisableFastSnapshotRestoreErrorSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DisableFastSnapshotRestoreErrorItem", + "traits": { + "smithy.api#xmlName": "item" } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#EnclaveOptions": { + "com.amazonaws.ec2#DisableFastSnapshotRestoreStateError": { "type": "structure", "members": { - "Enabled": { - "target": "com.amazonaws.ec2#Boolean", + "Code": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Enabled", - "smithy.api#documentation": "

If this parameter is set to true, the instance is enabled for Amazon Web Services Nitro Enclaves; otherwise, it is not enabled for Amazon Web Services Nitro\n Enclaves.

", - "smithy.api#xmlName": "enabled" + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The error code.

", + "smithy.api#xmlName": "code" } - } - }, - "traits": { - "smithy.api#documentation": "

Indicates whether the instance is enabled for Amazon Web Services Nitro\n Enclaves.

" - } - }, - "com.amazonaws.ec2#EnclaveOptionsRequest": { - "type": "structure", - "members": { - "Enabled": { - "target": "com.amazonaws.ec2#Boolean", + }, + "Message": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

To enable the instance for Amazon Web Services Nitro Enclaves, set this parameter to\n true.

" + "aws.protocols#ec2QueryName": "Message", + "smithy.api#documentation": "

The error message.

", + "smithy.api#xmlName": "message" } } }, "traits": { - "smithy.api#documentation": "

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For\n more information, see What is Amazon Web Services Nitro\n Enclaves? in the Amazon Web Services Nitro Enclaves User\n Guide.

" + "smithy.api#documentation": "

Describes an error that occurred when disabling fast snapshot restores.

" } }, - "com.amazonaws.ec2#EncryptionInTransitSupported": { - "type": "boolean" - }, - "com.amazonaws.ec2#EndDateType": { - "type": "enum", + "com.amazonaws.ec2#DisableFastSnapshotRestoreStateErrorItem": { + "type": "structure", "members": { - "unlimited": { - "target": "smithy.api#Unit", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "unlimited" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone.

", + "smithy.api#xmlName": "availabilityZone" } }, - "limited": { - "target": "smithy.api#Unit", + "Error": { + "target": "com.amazonaws.ec2#DisableFastSnapshotRestoreStateError", "traits": { - "smithy.api#enumValue": "limited" + "aws.protocols#ec2QueryName": "Error", + "smithy.api#documentation": "

The error.

", + "smithy.api#xmlName": "error" } } + }, + "traits": { + "smithy.api#documentation": "

Contains information about an error that occurred when disabling fast snapshot restores.

" } }, - "com.amazonaws.ec2#EndpointSet": { + "com.amazonaws.ec2#DisableFastSnapshotRestoreStateErrorSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#ClientVpnEndpoint", + "target": "com.amazonaws.ec2#DisableFastSnapshotRestoreStateErrorItem", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#EphemeralNvmeSupport": { - "type": "enum", + "com.amazonaws.ec2#DisableFastSnapshotRestoreSuccessItem": { + "type": "structure", "members": { - "UNSUPPORTED": { - "target": "smithy.api#Unit", + "SnapshotId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "unsupported" + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The ID of the snapshot.

", + "smithy.api#xmlName": "snapshotId" } }, - "SUPPORTED": { - "target": "smithy.api#Unit", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "supported" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone.

", + "smithy.api#xmlName": "availabilityZone" } }, - "REQUIRED": { - "target": "smithy.api#Unit", + "State": { + "target": "com.amazonaws.ec2#FastSnapshotRestoreStateCode", "traits": { - "smithy.api#enumValue": "required" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of fast snapshot restores for the snapshot.

", + "smithy.api#xmlName": "state" } - } - } - }, - "com.amazonaws.ec2#ErrorSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ValidationError", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#EventCode": { - "type": "enum", - "members": { - "instance_reboot": { - "target": "smithy.api#Unit", + }, + "StateTransitionReason": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "instance-reboot" + "aws.protocols#ec2QueryName": "StateTransitionReason", + "smithy.api#documentation": "

The reason for the state transition. The possible values are as follows:

\n ", + "smithy.api#xmlName": "stateTransitionReason" } }, - "system_reboot": { - "target": "smithy.api#Unit", + "OwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "system-reboot" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that enabled fast snapshot restores on the snapshot.

", + "smithy.api#xmlName": "ownerId" } }, - "system_maintenance": { - "target": "smithy.api#Unit", + "OwnerAlias": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "system-maintenance" + "aws.protocols#ec2QueryName": "OwnerAlias", + "smithy.api#documentation": "

The Amazon Web Services owner alias that enabled fast snapshot restores on the snapshot. This is intended for future use.

", + "smithy.api#xmlName": "ownerAlias" } }, - "instance_retirement": { - "target": "smithy.api#Unit", + "EnablingTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#enumValue": "instance-retirement" + "aws.protocols#ec2QueryName": "EnablingTime", + "smithy.api#documentation": "

The time at which fast snapshot restores entered the enabling state.

", + "smithy.api#xmlName": "enablingTime" } }, - "instance_stop": { - "target": "smithy.api#Unit", + "OptimizingTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#enumValue": "instance-stop" + "aws.protocols#ec2QueryName": "OptimizingTime", + "smithy.api#documentation": "

The time at which fast snapshot restores entered the optimizing state.

", + "smithy.api#xmlName": "optimizingTime" } - } - } - }, - "com.amazonaws.ec2#EventInformation": { - "type": "structure", - "members": { - "EventDescription": { - "target": "com.amazonaws.ec2#String", + }, + "EnabledTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "EventDescription", - "smithy.api#documentation": "

The description of the event.

", - "smithy.api#xmlName": "eventDescription" + "aws.protocols#ec2QueryName": "EnabledTime", + "smithy.api#documentation": "

The time at which fast snapshot restores entered the enabled state.

", + "smithy.api#xmlName": "enabledTime" } }, - "EventSubType": { - "target": "com.amazonaws.ec2#String", + "DisablingTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "EventSubType", - "smithy.api#documentation": "

The event.

\n

\n error events:

\n \n

\n fleetRequestChange events:

\n \n

\n instanceChange events:

\n \n

\n Information events:

\n ", - "smithy.api#xmlName": "eventSubType" + "aws.protocols#ec2QueryName": "DisablingTime", + "smithy.api#documentation": "

The time at which fast snapshot restores entered the disabling state.

", + "smithy.api#xmlName": "disablingTime" } }, - "InstanceId": { - "target": "com.amazonaws.ec2#String", + "DisabledTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance. This information is available only for\n instanceChange events.

", - "smithy.api#xmlName": "instanceId" + "aws.protocols#ec2QueryName": "DisabledTime", + "smithy.api#documentation": "

The time at which fast snapshot restores entered the disabled state.

", + "smithy.api#xmlName": "disabledTime" } } }, "traits": { - "smithy.api#documentation": "

Describes an EC2 Fleet or Spot Fleet event.

" + "smithy.api#documentation": "

Describes fast snapshot restores that were successfully disabled.

" } }, - "com.amazonaws.ec2#EventType": { - "type": "enum", + "com.amazonaws.ec2#DisableFastSnapshotRestoreSuccessSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DisableFastSnapshotRestoreSuccessItem", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#DisableFastSnapshotRestores": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisableFastSnapshotRestoresRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisableFastSnapshotRestoresResult" + }, + "traits": { + "smithy.api#documentation": "

Disables fast snapshot restores for the specified snapshots in the specified Availability Zones.

" + } + }, + "com.amazonaws.ec2#DisableFastSnapshotRestoresRequest": { + "type": "structure", "members": { - "INSTANCE_CHANGE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "instanceChange" - } - }, - "BATCH_CHANGE": { - "target": "smithy.api#Unit", + "AvailabilityZones": { + "target": "com.amazonaws.ec2#AvailabilityZoneStringList", "traits": { - "smithy.api#enumValue": "fleetRequestChange" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

One or more Availability Zones. For example, us-east-2a.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "AvailabilityZone" } }, - "ERROR": { - "target": "smithy.api#Unit", + "SourceSnapshotIds": { + "target": "com.amazonaws.ec2#SnapshotIdStringList", "traits": { - "smithy.api#enumValue": "error" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of one or more snapshots. For example, snap-1234567890abcdef0.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "SourceSnapshotId" } }, - "INFORMATION": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "information" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#ExcessCapacityTerminationPolicy": { - "type": "enum", + "com.amazonaws.ec2#DisableFastSnapshotRestoresResult": { + "type": "structure", "members": { - "NO_TERMINATION": { - "target": "smithy.api#Unit", + "Successful": { + "target": "com.amazonaws.ec2#DisableFastSnapshotRestoreSuccessSet", "traits": { - "smithy.api#enumValue": "noTermination" + "aws.protocols#ec2QueryName": "Successful", + "smithy.api#documentation": "

Information about the snapshots for which fast snapshot restores were successfully disabled.

", + "smithy.api#xmlName": "successful" } }, - "DEFAULT": { - "target": "smithy.api#Unit", + "Unsuccessful": { + "target": "com.amazonaws.ec2#DisableFastSnapshotRestoreErrorSet", "traits": { - "smithy.api#enumValue": "default" + "aws.protocols#ec2QueryName": "Unsuccessful", + "smithy.api#documentation": "

Information about the snapshots for which fast snapshot restores could not be disabled.

", + "smithy.api#xmlName": "unsuccessful" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#ExcludedInstanceType": { - "type": "string", + "com.amazonaws.ec2#DisableImage": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisableImageRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisableImageResult" + }, "traits": { - "smithy.api#length": { - "min": 1, - "max": 30 - }, - "smithy.api#pattern": "^[a-zA-Z0-9\\.\\*\\-]+$" + "smithy.api#documentation": "

Sets the AMI state to disabled and removes all launch permissions from the\n AMI. A disabled AMI can't be used for instance launches.

\n

A disabled AMI can't be shared. If an AMI was public or previously shared, it is made\n private. If an AMI was shared with an Amazon Web Services account, organization, or Organizational Unit,\n they lose access to the disabled AMI.

\n

A disabled AMI does not appear in DescribeImages API calls by\n default.

\n

Only the AMI owner can disable an AMI.

\n

You can re-enable a disabled AMI using EnableImage.

\n

For more information, see Disable an AMI in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#ExcludedInstanceTypeSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ExcludedInstanceType", - "traits": { - "smithy.api#xmlName": "item" - } + "com.amazonaws.ec2#DisableImageBlockPublicAccess": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisableImageBlockPublicAccessRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisableImageBlockPublicAccessResult" }, "traits": { - "smithy.api#length": { - "min": 0, - "max": 400 - } + "smithy.api#documentation": "

Disables block public access for AMIs at the account level in the\n specified Amazon Web Services Region. This removes the block public access restriction\n from your account. With the restriction removed, you can publicly share your AMIs in the\n specified Amazon Web Services Region.

\n

For more information, see Block\n public access to your AMIs in the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#ExecutableByStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#xmlName": "ExecutableBy" + "com.amazonaws.ec2#DisableImageBlockPublicAccessRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#Explanation": { + "com.amazonaws.ec2#DisableImageBlockPublicAccessResult": { "type": "structure", "members": { - "Acl": { - "target": "com.amazonaws.ec2#AnalysisComponent", + "ImageBlockPublicAccessState": { + "target": "com.amazonaws.ec2#ImageBlockPublicAccessDisabledState", "traits": { - "aws.protocols#ec2QueryName": "Acl", - "smithy.api#documentation": "

The network ACL.

", - "smithy.api#xmlName": "acl" + "aws.protocols#ec2QueryName": "ImageBlockPublicAccessState", + "smithy.api#documentation": "

Returns unblocked if the request succeeds; otherwise, it returns an\n error.

", + "smithy.api#xmlName": "imageBlockPublicAccessState" } - }, - "AclRule": { - "target": "com.amazonaws.ec2#AnalysisAclRule", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DisableImageDeprecation": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisableImageDeprecationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisableImageDeprecationResult" + }, + "traits": { + "smithy.api#documentation": "

Cancels the deprecation of the specified AMI.

\n

For more information, see Deprecate an Amazon EC2 AMI in the\n Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#DisableImageDeprecationRequest": { + "type": "structure", + "members": { + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { - "aws.protocols#ec2QueryName": "AclRule", - "smithy.api#documentation": "

The network ACL rule.

", - "smithy.api#xmlName": "aclRule" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the AMI.

", + "smithy.api#required": {} } }, - "Address": { - "target": "com.amazonaws.ec2#IpAddress", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Address", - "smithy.api#documentation": "

The IPv4 address, in CIDR notation.

", - "smithy.api#xmlName": "address" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } - }, - "Addresses": { - "target": "com.amazonaws.ec2#IpAddressList", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DisableImageDeprecationResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "AddressSet", - "smithy.api#documentation": "

The IPv4 addresses, in CIDR notation.

", - "smithy.api#xmlName": "addressSet" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } - }, - "AttachedTo": { - "target": "com.amazonaws.ec2#AnalysisComponent", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DisableImageDeregistrationProtection": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisableImageDeregistrationProtectionRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisableImageDeregistrationProtectionResult" + }, + "traits": { + "smithy.api#documentation": "

Disables deregistration protection for an AMI. When deregistration protection is disabled,\n the AMI can be deregistered.

\n

If you chose to include a 24-hour cooldown period when you enabled deregistration\n protection for the AMI, then, when you disable deregistration protection, you won’t\n immediately be able to deregister the AMI.

\n

For more information, see Protect an Amazon EC2 AMI from\n deregistration in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#DisableImageDeregistrationProtectionRequest": { + "type": "structure", + "members": { + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { - "aws.protocols#ec2QueryName": "AttachedTo", - "smithy.api#documentation": "

The resource to which the component is attached.

", - "smithy.api#xmlName": "attachedTo" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the AMI.

", + "smithy.api#required": {} } }, - "AvailabilityZones": { - "target": "com.amazonaws.ec2#ValueStringList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZoneSet", - "smithy.api#documentation": "

The Availability Zones.

", - "smithy.api#xmlName": "availabilityZoneSet" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } - }, - "Cidrs": { - "target": "com.amazonaws.ec2#ValueStringList", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DisableImageDeregistrationProtectionResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "CidrSet", - "smithy.api#documentation": "

The CIDR ranges.

", - "smithy.api#xmlName": "cidrSet" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } - }, - "Component": { - "target": "com.amazonaws.ec2#AnalysisComponent", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DisableImageRequest": { + "type": "structure", + "members": { + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { - "aws.protocols#ec2QueryName": "Component", - "smithy.api#documentation": "

The component.

", - "smithy.api#xmlName": "component" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the AMI.

", + "smithy.api#required": {} } }, - "CustomerGateway": { - "target": "com.amazonaws.ec2#AnalysisComponent", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "CustomerGateway", - "smithy.api#documentation": "

The customer gateway.

", - "smithy.api#xmlName": "customerGateway" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } - }, - "Destination": { - "target": "com.amazonaws.ec2#AnalysisComponent", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DisableImageResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Destination", - "smithy.api#documentation": "

The destination.

", - "smithy.api#xmlName": "destination" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } - }, - "DestinationVpc": { - "target": "com.amazonaws.ec2#AnalysisComponent", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DisableIpamOrganizationAdminAccount": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisableIpamOrganizationAdminAccountRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisableIpamOrganizationAdminAccountResult" + }, + "traits": { + "smithy.api#documentation": "

Disable the IPAM account. For more information, see Enable integration with Organizations in the Amazon VPC IPAM User Guide.\n

" + } + }, + "com.amazonaws.ec2#DisableIpamOrganizationAdminAccountRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DestinationVpc", - "smithy.api#documentation": "

The destination VPC.

", - "smithy.api#xmlName": "destinationVpc" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "Direction": { + "DelegatedAdminAccountId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Direction", - "smithy.api#documentation": "

The direction. The following are the possible values:

\n ", - "smithy.api#xmlName": "direction" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The Organizations member account ID that you want to disable as IPAM account.

", + "smithy.api#required": {} } - }, - "ExplanationCode": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DisableIpamOrganizationAdminAccountResult": { + "type": "structure", + "members": { + "Success": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "ExplanationCode", - "smithy.api#documentation": "

The explanation code.

", - "smithy.api#xmlName": "explanationCode" + "aws.protocols#ec2QueryName": "Success", + "smithy.api#documentation": "

The result of disabling the IPAM account.

", + "smithy.api#xmlName": "success" } - }, - "IngressRouteTable": { - "target": "com.amazonaws.ec2#AnalysisComponent", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DisableRouteServerPropagation": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisableRouteServerPropagationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisableRouteServerPropagationResult" + }, + "traits": { + "smithy.api#documentation": "

Disables route propagation from a route server to a specified route table.

\n

When enabled, route server propagation installs the routes in the FIB on the route table you've specified. Route server supports IPv4 and IPv6 route propagation.

\n

Amazon VPC Route Server simplifies routing for traffic between workloads that are deployed within a VPC and its internet gateways. With this feature, \nVPC Route Server dynamically updates VPC and internet gateway route tables with your preferred IPv4 or IPv6 routes to achieve routing fault tolerance for those workloads. This enables you to automatically reroute traffic within a VPC, which increases the manageability of VPC routing and interoperability with third-party workloads.

\n

Route server supports the follow route table types:

\n \n

Route server does not support route tables associated with virtual private gateways. To propagate routes into a transit gateway route table, use Transit Gateway Connect.

\n

For more information see Dynamic routing in your VPC with VPC Route Server in the Amazon VPC User Guide.

" + } + }, + "com.amazonaws.ec2#DisableRouteServerPropagationRequest": { + "type": "structure", + "members": { + "RouteServerId": { + "target": "com.amazonaws.ec2#RouteServerId", "traits": { - "aws.protocols#ec2QueryName": "IngressRouteTable", - "smithy.api#documentation": "

The route table.

", - "smithy.api#xmlName": "ingressRouteTable" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the route server for which to disable propagation.

", + "smithy.api#required": {} } }, - "InternetGateway": { - "target": "com.amazonaws.ec2#AnalysisComponent", + "RouteTableId": { + "target": "com.amazonaws.ec2#RouteTableId", "traits": { - "aws.protocols#ec2QueryName": "InternetGateway", - "smithy.api#documentation": "

The internet gateway.

", - "smithy.api#xmlName": "internetGateway" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the route table for which to disable route server propagation.

", + "smithy.api#required": {} } }, - "LoadBalancerArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "LoadBalancerArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the load balancer.

", - "smithy.api#xmlName": "loadBalancerArn" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "ClassicLoadBalancerListener": { - "target": "com.amazonaws.ec2#AnalysisLoadBalancerListener", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DisableRouteServerPropagationResult": { + "type": "structure", + "members": { + "RouteServerPropagation": { + "target": "com.amazonaws.ec2#RouteServerPropagation", "traits": { - "aws.protocols#ec2QueryName": "ClassicLoadBalancerListener", - "smithy.api#documentation": "

The listener for a Classic Load Balancer.

", - "smithy.api#xmlName": "classicLoadBalancerListener" + "aws.protocols#ec2QueryName": "RouteServerPropagation", + "smithy.api#documentation": "

Information about the disabled route server propagation.

", + "smithy.api#xmlName": "routeServerPropagation" } - }, - "LoadBalancerListenerPort": { - "target": "com.amazonaws.ec2#Port", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DisableSerialConsoleAccess": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisableSerialConsoleAccessRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisableSerialConsoleAccessResult" + }, + "traits": { + "smithy.api#documentation": "

Disables access to the EC2 serial console of all instances for your account. By default,\n\t\t\taccess to the EC2 serial console is disabled for your account. For more information, see\n\t\t\t\tManage account access to the EC2 serial console in the Amazon EC2\n\t\t\t\tUser Guide.

" + } + }, + "com.amazonaws.ec2#DisableSerialConsoleAccessRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "LoadBalancerListenerPort", - "smithy.api#documentation": "

The listener port of the load balancer.

", - "smithy.api#xmlName": "loadBalancerListenerPort" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } - }, - "LoadBalancerTarget": { - "target": "com.amazonaws.ec2#AnalysisLoadBalancerTarget", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DisableSerialConsoleAccessResult": { + "type": "structure", + "members": { + "SerialConsoleAccessEnabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "LoadBalancerTarget", - "smithy.api#documentation": "

The target.

", - "smithy.api#xmlName": "loadBalancerTarget" + "aws.protocols#ec2QueryName": "SerialConsoleAccessEnabled", + "smithy.api#documentation": "

If true, access to the EC2 serial console of all instances is enabled for\n\t\t\tyour account. If false, access to the EC2 serial console of all instances\n\t\t\tis disabled for your account.

", + "smithy.api#xmlName": "serialConsoleAccessEnabled" } - }, - "LoadBalancerTargetGroup": { - "target": "com.amazonaws.ec2#AnalysisComponent", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DisableSnapshotBlockPublicAccess": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisableSnapshotBlockPublicAccessRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisableSnapshotBlockPublicAccessResult" + }, + "traits": { + "smithy.api#documentation": "

Disables the block public access for snapshots setting at \n the account level for the specified Amazon Web Services Region. After you disable block public \n access for snapshots in a Region, users can publicly share snapshots in that Region.

\n \n

Enabling block public access for snapshots in block-all-sharing \n mode does not change the permissions for snapshots that are already publicly shared. \n Instead, it prevents these snapshots from be publicly visible and publicly accessible. \n Therefore, the attributes for these snapshots still indicate that they are publicly \n shared, even though they are not publicly available.

\n

If you disable block public access , these snapshots will become publicly available \n again.

\n
\n

For more information, see \n Block public access for snapshots in the Amazon EBS User Guide .

\n

" + } + }, + "com.amazonaws.ec2#DisableSnapshotBlockPublicAccessRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "LoadBalancerTargetGroup", - "smithy.api#documentation": "

The target group.

", - "smithy.api#xmlName": "loadBalancerTargetGroup" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "LoadBalancerTargetGroups": { - "target": "com.amazonaws.ec2#AnalysisComponentList", - "traits": { - "aws.protocols#ec2QueryName": "LoadBalancerTargetGroupSet", - "smithy.api#documentation": "

The target groups.

", - "smithy.api#xmlName": "loadBalancerTargetGroupSet" - } - }, - "LoadBalancerTargetPort": { - "target": "com.amazonaws.ec2#Port", - "traits": { - "aws.protocols#ec2QueryName": "LoadBalancerTargetPort", - "smithy.api#documentation": "

The target port.

", - "smithy.api#xmlName": "loadBalancerTargetPort" - } - }, - "ElasticLoadBalancerListener": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "ElasticLoadBalancerListener", - "smithy.api#documentation": "

The load balancer listener.

", - "smithy.api#xmlName": "elasticLoadBalancerListener" - } - }, - "MissingComponent": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "MissingComponent", - "smithy.api#documentation": "

The missing component.

", - "smithy.api#xmlName": "missingComponent" - } - }, - "NatGateway": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "NatGateway", - "smithy.api#documentation": "

The NAT gateway.

", - "smithy.api#xmlName": "natGateway" - } - }, - "NetworkInterface": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "NetworkInterface", - "smithy.api#documentation": "

The network interface.

", - "smithy.api#xmlName": "networkInterface" - } - }, - "PacketField": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "PacketField", - "smithy.api#documentation": "

The packet field.

", - "smithy.api#xmlName": "packetField" - } - }, - "VpcPeeringConnection": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "VpcPeeringConnection", - "smithy.api#documentation": "

The VPC peering connection.

", - "smithy.api#xmlName": "vpcPeeringConnection" - } - }, - "Port": { - "target": "com.amazonaws.ec2#Port", - "traits": { - "aws.protocols#ec2QueryName": "Port", - "smithy.api#documentation": "

The port.

", - "smithy.api#xmlName": "port" - } - }, - "PortRanges": { - "target": "com.amazonaws.ec2#PortRangeList", - "traits": { - "aws.protocols#ec2QueryName": "PortRangeSet", - "smithy.api#documentation": "

The port ranges.

", - "smithy.api#xmlName": "portRangeSet" - } - }, - "PrefixList": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "PrefixList", - "smithy.api#documentation": "

The prefix list.

", - "smithy.api#xmlName": "prefixList" - } - }, - "Protocols": { - "target": "com.amazonaws.ec2#StringList", - "traits": { - "aws.protocols#ec2QueryName": "ProtocolSet", - "smithy.api#documentation": "

The protocols.

", - "smithy.api#xmlName": "protocolSet" - } - }, - "RouteTableRoute": { - "target": "com.amazonaws.ec2#AnalysisRouteTableRoute", - "traits": { - "aws.protocols#ec2QueryName": "RouteTableRoute", - "smithy.api#documentation": "

The route table route.

", - "smithy.api#xmlName": "routeTableRoute" - } - }, - "RouteTable": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "RouteTable", - "smithy.api#documentation": "

The route table.

", - "smithy.api#xmlName": "routeTable" - } - }, - "SecurityGroup": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "SecurityGroup", - "smithy.api#documentation": "

The security group.

", - "smithy.api#xmlName": "securityGroup" - } - }, - "SecurityGroupRule": { - "target": "com.amazonaws.ec2#AnalysisSecurityGroupRule", - "traits": { - "aws.protocols#ec2QueryName": "SecurityGroupRule", - "smithy.api#documentation": "

The security group rule.

", - "smithy.api#xmlName": "securityGroupRule" - } - }, - "SecurityGroups": { - "target": "com.amazonaws.ec2#AnalysisComponentList", - "traits": { - "aws.protocols#ec2QueryName": "SecurityGroupSet", - "smithy.api#documentation": "

The security groups.

", - "smithy.api#xmlName": "securityGroupSet" - } - }, - "SourceVpc": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "SourceVpc", - "smithy.api#documentation": "

The source VPC.

", - "smithy.api#xmlName": "sourceVpc" - } - }, + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DisableSnapshotBlockPublicAccessResult": { + "type": "structure", + "members": { "State": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#SnapshotBlockPublicAccessState", "traits": { "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state.

", + "smithy.api#documentation": "

Returns unblocked if the request succeeds.

", "smithy.api#xmlName": "state" } - }, - "Subnet": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "Subnet", - "smithy.api#documentation": "

The subnet.

", - "smithy.api#xmlName": "subnet" - } - }, - "SubnetRouteTable": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "SubnetRouteTable", - "smithy.api#documentation": "

The route table for the subnet.

", - "smithy.api#xmlName": "subnetRouteTable" - } - }, - "Vpc": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "Vpc", - "smithy.api#documentation": "

The component VPC.

", - "smithy.api#xmlName": "vpc" - } - }, - "VpcEndpoint": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "VpcEndpoint", - "smithy.api#documentation": "

The VPC endpoint.

", - "smithy.api#xmlName": "vpcEndpoint" - } - }, - "VpnConnection": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "VpnConnection", - "smithy.api#documentation": "

The VPN connection.

", - "smithy.api#xmlName": "vpnConnection" - } - }, - "VpnGateway": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "VpnGateway", - "smithy.api#documentation": "

The VPN gateway.

", - "smithy.api#xmlName": "vpnGateway" - } - }, - "TransitGateway": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "TransitGateway", - "smithy.api#documentation": "

The transit gateway.

", - "smithy.api#xmlName": "transitGateway" - } - }, - "TransitGatewayRouteTable": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayRouteTable", - "smithy.api#documentation": "

The transit gateway route table.

", - "smithy.api#xmlName": "transitGatewayRouteTable" - } - }, - "TransitGatewayRouteTableRoute": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableRoute", - "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayRouteTableRoute", - "smithy.api#documentation": "

The transit gateway route table route.

", - "smithy.api#xmlName": "transitGatewayRouteTableRoute" - } - }, - "TransitGatewayAttachment": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayAttachment", - "smithy.api#documentation": "

The transit gateway attachment.

", - "smithy.api#xmlName": "transitGatewayAttachment" - } - }, - "ComponentAccount": { - "target": "com.amazonaws.ec2#ComponentAccount", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DisableTransitGatewayRouteTablePropagation": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisableTransitGatewayRouteTablePropagationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisableTransitGatewayRouteTablePropagationResult" + }, + "traits": { + "smithy.api#documentation": "

Disables the specified resource attachment from propagating routes to the specified\n propagation route table.

" + } + }, + "com.amazonaws.ec2#DisableTransitGatewayRouteTablePropagationRequest": { + "type": "structure", + "members": { + "TransitGatewayRouteTableId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", "traits": { - "aws.protocols#ec2QueryName": "ComponentAccount", - "smithy.api#documentation": "

The Amazon Web Services account for the component.

", - "smithy.api#xmlName": "componentAccount" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the propagation route table.

", + "smithy.api#required": {} } }, - "ComponentRegion": { - "target": "com.amazonaws.ec2#ComponentRegion", + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", "traits": { - "aws.protocols#ec2QueryName": "ComponentRegion", - "smithy.api#documentation": "

The Region for the component.

", - "smithy.api#xmlName": "componentRegion" + "smithy.api#documentation": "

The ID of the attachment.

" } }, - "FirewallStatelessRule": { - "target": "com.amazonaws.ec2#FirewallStatelessRule", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "FirewallStatelessRule", - "smithy.api#documentation": "

The Network Firewall stateless rule.

", - "smithy.api#xmlName": "firewallStatelessRule" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "FirewallStatefulRule": { - "target": "com.amazonaws.ec2#FirewallStatefulRule", + "TransitGatewayRouteTableAnnouncementId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableAnnouncementId", "traits": { - "aws.protocols#ec2QueryName": "FirewallStatefulRule", - "smithy.api#documentation": "

The Network Firewall stateful rule.

", - "smithy.api#xmlName": "firewallStatefulRule" + "smithy.api#documentation": "

The ID of the route table announcement.

" } } }, "traits": { - "smithy.api#documentation": "

Describes an explanation code for an unreachable path. For more information, see Reachability Analyzer explanation codes.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#ExplanationList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Explanation", - "traits": { - "smithy.api#xmlName": "item" + "com.amazonaws.ec2#DisableTransitGatewayRouteTablePropagationResult": { + "type": "structure", + "members": { + "Propagation": { + "target": "com.amazonaws.ec2#TransitGatewayPropagation", + "traits": { + "aws.protocols#ec2QueryName": "Propagation", + "smithy.api#documentation": "

Information about route propagation.

", + "smithy.api#xmlName": "propagation" + } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#ExportClientVpnClientCertificateRevocationList": { + "com.amazonaws.ec2#DisableVgwRoutePropagation": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#ExportClientVpnClientCertificateRevocationListRequest" + "target": "com.amazonaws.ec2#DisableVgwRoutePropagationRequest" }, "output": { - "target": "com.amazonaws.ec2#ExportClientVpnClientCertificateRevocationListResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Downloads the client certificate revocation list for the specified Client VPN endpoint.

" + "smithy.api#documentation": "

Disables a virtual private gateway (VGW) from propagating routes to a specified route\n table of a VPC.

", + "smithy.api#examples": [ + { + "title": "To disable route propagation", + "documentation": "This example disables the specified virtual private gateway from propagating static routes to the specified route table.", + "input": { + "RouteTableId": "rtb-22574640", + "GatewayId": "vgw-9a4cacf3" + } + } + ] } }, - "com.amazonaws.ec2#ExportClientVpnClientCertificateRevocationListRequest": { + "com.amazonaws.ec2#DisableVgwRoutePropagationRequest": { "type": "structure", "members": { - "ClientVpnEndpointId": { - "target": "com.amazonaws.ec2#ClientVpnEndpointId", + "GatewayId": { + "target": "com.amazonaws.ec2#VpnGatewayId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", + "smithy.api#documentation": "

The ID of the virtual private gateway.

", + "smithy.api#required": {} + } + }, + "RouteTableId": { + "target": "com.amazonaws.ec2#RouteTableId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the route table.

", "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for DisableVgwRoutePropagation.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#ExportClientVpnClientCertificateRevocationListResult": { - "type": "structure", - "members": { - "CertificateRevocationList": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "CertificateRevocationList", - "smithy.api#documentation": "

Information about the client certificate revocation list.

", - "smithy.api#xmlName": "certificateRevocationList" - } - }, - "Status": { - "target": "com.amazonaws.ec2#ClientCertificateRevocationListStatus", - "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The current state of the client certificate revocation list.

", - "smithy.api#xmlName": "status" - } - } + "com.amazonaws.ec2#DisableVpcClassicLink": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisableVpcClassicLinkRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisableVpcClassicLinkResult" }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC that has EC2-Classic instances\n linked to it.

" } }, - "com.amazonaws.ec2#ExportClientVpnClientConfiguration": { + "com.amazonaws.ec2#DisableVpcClassicLinkDnsSupport": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#ExportClientVpnClientConfigurationRequest" + "target": "com.amazonaws.ec2#DisableVpcClassicLinkDnsSupportRequest" }, "output": { - "target": "com.amazonaws.ec2#ExportClientVpnClientConfigurationResult" + "target": "com.amazonaws.ec2#DisableVpcClassicLinkDnsSupportResult" }, "traits": { - "smithy.api#documentation": "

Downloads the contents of the Client VPN endpoint configuration file for the specified Client VPN endpoint. The Client VPN endpoint configuration \n\t\t\tfile includes the Client VPN endpoint and certificate information clients need to establish a connection \n\t\t\twith the Client VPN endpoint.

" + "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Disables ClassicLink DNS support for a VPC. If disabled, DNS hostnames resolve to\n\t\t\tpublic IP addresses when addressed between a linked EC2-Classic instance and instances\n\t\t\tin the VPC to which it's linked.

\n

You must specify a VPC ID in the request.

" } }, - "com.amazonaws.ec2#ExportClientVpnClientConfigurationRequest": { + "com.amazonaws.ec2#DisableVpcClassicLinkDnsSupportRequest": { "type": "structure", "members": { - "ClientVpnEndpointId": { - "target": "com.amazonaws.ec2#ClientVpnEndpointId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", - "smithy.api#required": {} - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#xmlName": "VpcId" } } }, @@ -48222,15 +49712,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#ExportClientVpnClientConfigurationResult": { + "com.amazonaws.ec2#DisableVpcClassicLinkDnsSupportResult": { "type": "structure", "members": { - "ClientConfiguration": { - "target": "com.amazonaws.ec2#String", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "ClientConfiguration", - "smithy.api#documentation": "

The contents of the Client VPN endpoint configuration file.

", - "smithy.api#xmlName": "clientConfiguration" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } } }, @@ -48238,98 +49728,90 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#ExportEnvironment": { - "type": "enum", + "com.amazonaws.ec2#DisableVpcClassicLinkRequest": { + "type": "structure", "members": { - "citrix": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "citrix" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "vmware": { - "target": "smithy.api#Unit", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "smithy.api#enumValue": "vmware" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "vpcId" } - }, - "microsoft": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DisableVpcClassicLinkResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "microsoft" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#ExportImage": { + "com.amazonaws.ec2#DisassociateAddress": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#ExportImageRequest" + "target": "com.amazonaws.ec2#DisassociateAddressRequest" }, "output": { - "target": "com.amazonaws.ec2#ExportImageResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Exports an Amazon Machine Image (AMI) to a VM file. For more information, see Exporting a VM\n directly from an Amazon Machine Image (AMI) in the\n VM Import/Export User Guide.

" + "smithy.api#documentation": "

Disassociates an Elastic IP address from the instance or network interface it's associated with.

\n

This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error.

\n

An address cannot be disassociated if the all of the following conditions are met:

\n ", + "smithy.api#examples": [ + { + "title": "To disassociate an Elastic IP address", + "documentation": "This example disassociates an Elastic IP address from an instance.", + "input": { + "AssociationId": "eipassoc-2bebb745" + } + } + ] } }, - "com.amazonaws.ec2#ExportImageRequest": { + "com.amazonaws.ec2#DisassociateAddressRequest": { "type": "structure", "members": { - "ClientToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

Token to enable idempotency for export image requests.

", - "smithy.api#idempotencyToken": {} - } - }, - "Description": { - "target": "com.amazonaws.ec2#String", + "AssociationId": { + "target": "com.amazonaws.ec2#ElasticIpAssociationId", "traits": { - "smithy.api#documentation": "

A description of the image being exported. The maximum length is 255 characters.

" + "smithy.api#documentation": "

The association ID. This parameter is required.

" } }, - "DiskImageFormat": { - "target": "com.amazonaws.ec2#DiskImageFormat", + "PublicIp": { + "target": "com.amazonaws.ec2#EipAllocationPublicIp", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The disk image format.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Deprecated.

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the image.

", - "smithy.api#required": {} - } - }, - "S3ExportLocation": { - "target": "com.amazonaws.ec2#ExportTaskS3LocationRequest", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Amazon S3 bucket for the destination image. The destination bucket must exist.

", - "smithy.api#required": {} - } - }, - "RoleName": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The name of the role that grants VM Import/Export permission to export images to your Amazon\n S3 bucket. If this parameter is not specified, the default role is named 'vmimport'.

" - } - }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", - "traits": { - "smithy.api#documentation": "

The tags to apply to the export image task during creation.

", - "smithy.api#xmlName": "TagSpecification" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, @@ -48337,87 +49819,57 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#ExportImageResult": { + "com.amazonaws.ec2#DisassociateCapacityReservationBillingOwner": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisassociateCapacityReservationBillingOwnerRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisassociateCapacityReservationBillingOwnerResult" + }, + "traits": { + "smithy.api#documentation": "

Cancels a pending request to assign billing of the unused capacity of a Capacity\n\t\t\tReservation to a consumer account, or revokes a request that has already been accepted.\n\t\t\tFor more information, see Billing assignment for shared\n\t\t\t\t\tAmazon EC2 Capacity Reservations.

" + } + }, + "com.amazonaws.ec2#DisassociateCapacityReservationBillingOwnerRequest": { "type": "structure", "members": { - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description of the image being exported.

", - "smithy.api#xmlName": "description" - } - }, - "DiskImageFormat": { - "target": "com.amazonaws.ec2#DiskImageFormat", - "traits": { - "aws.protocols#ec2QueryName": "DiskImageFormat", - "smithy.api#documentation": "

The disk image format for the exported image.

", - "smithy.api#xmlName": "diskImageFormat" - } - }, - "ExportImageTaskId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "ExportImageTaskId", - "smithy.api#documentation": "

The ID of the export image task.

", - "smithy.api#xmlName": "exportImageTaskId" - } - }, - "ImageId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The ID of the image.

", - "smithy.api#xmlName": "imageId" - } - }, - "RoleName": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "RoleName", - "smithy.api#documentation": "

The name of the role that grants VM Import/Export permission to export images to your Amazon\n S3 bucket.

", - "smithy.api#xmlName": "roleName" - } - }, - "Progress": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Progress", - "smithy.api#documentation": "

The percent complete of the export image task.

", - "smithy.api#xmlName": "progress" - } - }, - "S3ExportLocation": { - "target": "com.amazonaws.ec2#ExportTaskS3Location", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "S3ExportLocation", - "smithy.api#documentation": "

Information about the destination Amazon S3 bucket.

", - "smithy.api#xmlName": "s3ExportLocation" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } }, - "Status": { - "target": "com.amazonaws.ec2#String", + "CapacityReservationId": { + "target": "com.amazonaws.ec2#CapacityReservationId", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The status of the export image task. The possible values are active, completed,\n deleting, and deleted.

", - "smithy.api#xmlName": "status" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Capacity Reservation.

", + "smithy.api#required": {} } }, - "StatusMessage": { - "target": "com.amazonaws.ec2#String", + "UnusedReservationBillingOwnerId": { + "target": "com.amazonaws.ec2#AccountID", "traits": { - "aws.protocols#ec2QueryName": "StatusMessage", - "smithy.api#documentation": "

The status message for the export image task.

", - "smithy.api#xmlName": "statusMessage" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the consumer account to which the request was sent.

", + "smithy.api#required": {} } - }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DisassociateCapacityReservationBillingOwnerResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the export image task.

", - "smithy.api#xmlName": "tagSet" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } } }, @@ -48425,375 +49877,396 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#ExportImageTask": { + "com.amazonaws.ec2#DisassociateClientVpnTargetNetwork": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisassociateClientVpnTargetNetworkRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisassociateClientVpnTargetNetworkResult" + }, + "traits": { + "smithy.api#documentation": "

Disassociates a target network from the specified Client VPN endpoint. When you disassociate the \n\t\t\tlast target network from a Client VPN, the following happens:

\n " + } + }, + "com.amazonaws.ec2#DisassociateClientVpnTargetNetworkRequest": { "type": "structure", "members": { - "Description": { - "target": "com.amazonaws.ec2#String", + "ClientVpnEndpointId": { + "target": "com.amazonaws.ec2#ClientVpnEndpointId", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description of the image being exported.

", - "smithy.api#xmlName": "description" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Client VPN endpoint from which to disassociate the target network.

", + "smithy.api#required": {} } }, - "ExportImageTaskId": { + "AssociationId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ExportImageTaskId", - "smithy.api#documentation": "

The ID of the export image task.

", - "smithy.api#xmlName": "exportImageTaskId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the target network association.

", + "smithy.api#required": {} } }, - "ImageId": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The ID of the image.

", - "smithy.api#xmlName": "imageId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } - }, - "Progress": { + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DisassociateClientVpnTargetNetworkResult": { + "type": "structure", + "members": { + "AssociationId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Progress", - "smithy.api#documentation": "

The percent complete of the export image task.

", - "smithy.api#xmlName": "progress" - } - }, - "S3ExportLocation": { - "target": "com.amazonaws.ec2#ExportTaskS3Location", - "traits": { - "aws.protocols#ec2QueryName": "S3ExportLocation", - "smithy.api#documentation": "

Information about the destination Amazon S3 bucket.

", - "smithy.api#xmlName": "s3ExportLocation" + "aws.protocols#ec2QueryName": "AssociationId", + "smithy.api#documentation": "

The ID of the target network association.

", + "smithy.api#xmlName": "associationId" } }, "Status": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#AssociationStatus", "traits": { "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The status of the export image task. The possible values are active, completed,\n deleting, and deleted.

", + "smithy.api#documentation": "

The current state of the target network association.

", "smithy.api#xmlName": "status" } - }, - "StatusMessage": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "StatusMessage", - "smithy.api#documentation": "

The status message for the export image task.

", - "smithy.api#xmlName": "statusMessage" - } - }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", - "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the export image task.

", - "smithy.api#xmlName": "tagSet" - } } }, "traits": { - "smithy.api#documentation": "

Describes an export image task.

" - } - }, - "com.amazonaws.ec2#ExportImageTaskId": { - "type": "string" - }, - "com.amazonaws.ec2#ExportImageTaskIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ExportImageTaskId", - "traits": { - "smithy.api#xmlName": "ExportImageTaskId" - } + "smithy.api#output": {} } }, - "com.amazonaws.ec2#ExportImageTaskList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ExportImageTask", - "traits": { - "smithy.api#xmlName": "item" - } + "com.amazonaws.ec2#DisassociateEnclaveCertificateIamRole": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisassociateEnclaveCertificateIamRoleRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisassociateEnclaveCertificateIamRoleResult" + }, + "traits": { + "smithy.api#documentation": "

Disassociates an IAM role from an Certificate Manager (ACM) certificate. Disassociating an IAM role \n\t\t\tfrom an ACM certificate removes the Amazon S3 object that contains the certificate, certificate chain, and \n\t\t\tencrypted private key from the Amazon S3 bucket. It also revokes the IAM role's permission to use the\n\t\t\tKMS key used to encrypt the private key. This effectively revokes the role's permission \n\t\t\tto use the certificate.

" } }, - "com.amazonaws.ec2#ExportTask": { + "com.amazonaws.ec2#DisassociateEnclaveCertificateIamRoleRequest": { "type": "structure", "members": { - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description of the resource being exported.

", - "smithy.api#xmlName": "description" - } - }, - "ExportTaskId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "ExportTaskId", - "smithy.api#documentation": "

The ID of the export task.

", - "smithy.api#xmlName": "exportTaskId" - } - }, - "ExportToS3Task": { - "target": "com.amazonaws.ec2#ExportToS3Task", - "traits": { - "aws.protocols#ec2QueryName": "ExportToS3", - "smithy.api#documentation": "

Information about the export task.

", - "smithy.api#xmlName": "exportToS3" - } - }, - "InstanceExportDetails": { - "target": "com.amazonaws.ec2#InstanceExportDetails", - "traits": { - "aws.protocols#ec2QueryName": "InstanceExport", - "smithy.api#documentation": "

Information about the instance to export.

", - "smithy.api#xmlName": "instanceExport" - } - }, - "State": { - "target": "com.amazonaws.ec2#ExportTaskState", + "CertificateArn": { + "target": "com.amazonaws.ec2#CertificateId", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the export task.

", - "smithy.api#xmlName": "state" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ARN of the ACM certificate from which to disassociate the IAM role.

", + "smithy.api#required": {} } }, - "StatusMessage": { - "target": "com.amazonaws.ec2#String", + "RoleArn": { + "target": "com.amazonaws.ec2#RoleId", "traits": { - "aws.protocols#ec2QueryName": "StatusMessage", - "smithy.api#documentation": "

The status message related to the export task.

", - "smithy.api#xmlName": "statusMessage" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ARN of the IAM role to disassociate.

", + "smithy.api#required": {} } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags for the export task.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Describes an export instance task.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#ExportTaskId": { - "type": "string" - }, - "com.amazonaws.ec2#ExportTaskIdStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ExportTaskId", - "traits": { - "smithy.api#xmlName": "ExportTaskId" + "com.amazonaws.ec2#DisassociateEnclaveCertificateIamRoleResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" + } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#ExportTaskList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ExportTask", - "traits": { - "smithy.api#xmlName": "item" - } + "com.amazonaws.ec2#DisassociateIamInstanceProfile": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisassociateIamInstanceProfileRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisassociateIamInstanceProfileResult" + }, + "traits": { + "smithy.api#documentation": "

Disassociates an IAM instance profile from a running or stopped instance.

\n

Use DescribeIamInstanceProfileAssociations to get the association\n ID.

", + "smithy.api#examples": [ + { + "title": "To disassociate an IAM instance profile", + "documentation": "This example disassociates the specified IAM instance profile from an instance.", + "input": { + "AssociationId": "iip-assoc-05020b59952902f5f" + }, + "output": { + "IamInstanceProfileAssociation": { + "InstanceId": "i-123456789abcde123", + "State": "disassociating", + "AssociationId": "iip-assoc-05020b59952902f5f", + "IamInstanceProfile": { + "Id": "AIPAI5IVIHMFFYY2DKV5Y", + "Arn": "arn:aws:iam::123456789012:instance-profile/admin-role" + } + } + } + } + ] } }, - "com.amazonaws.ec2#ExportTaskS3Location": { + "com.amazonaws.ec2#DisassociateIamInstanceProfileRequest": { "type": "structure", "members": { - "S3Bucket": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "S3Bucket", - "smithy.api#documentation": "

The destination Amazon S3 bucket.

", - "smithy.api#xmlName": "s3Bucket" - } - }, - "S3Prefix": { - "target": "com.amazonaws.ec2#String", + "AssociationId": { + "target": "com.amazonaws.ec2#IamInstanceProfileAssociationId", "traits": { - "aws.protocols#ec2QueryName": "S3Prefix", - "smithy.api#documentation": "

The prefix (logical hierarchy) in the bucket.

", - "smithy.api#xmlName": "s3Prefix" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IAM instance profile association.

", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Describes the destination for an export image task.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#ExportTaskS3LocationRequest": { + "com.amazonaws.ec2#DisassociateIamInstanceProfileResult": { "type": "structure", "members": { - "S3Bucket": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The destination Amazon S3 bucket.

", - "smithy.api#required": {} - } - }, - "S3Prefix": { - "target": "com.amazonaws.ec2#String", + "IamInstanceProfileAssociation": { + "target": "com.amazonaws.ec2#IamInstanceProfileAssociation", "traits": { - "smithy.api#documentation": "

The prefix (logical hierarchy) in the bucket.

" + "aws.protocols#ec2QueryName": "IamInstanceProfileAssociation", + "smithy.api#documentation": "

Information about the IAM instance profile association.

", + "smithy.api#xmlName": "iamInstanceProfileAssociation" } } }, "traits": { - "smithy.api#documentation": "

Describes the destination for an export image task.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#ExportTaskState": { - "type": "enum", + "com.amazonaws.ec2#DisassociateInstanceEventWindow": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisassociateInstanceEventWindowRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisassociateInstanceEventWindowResult" + }, + "traits": { + "smithy.api#documentation": "

Disassociates one or more targets from an event window.

\n

For more information, see Define event windows for scheduled\n events in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#DisassociateInstanceEventWindowRequest": { + "type": "structure", "members": { - "active": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "active" - } - }, - "cancelling": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "cancelling" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "cancelled": { - "target": "smithy.api#Unit", + "InstanceEventWindowId": { + "target": "com.amazonaws.ec2#InstanceEventWindowId", "traits": { - "smithy.api#enumValue": "cancelled" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the event window.

", + "smithy.api#required": {} } }, - "completed": { - "target": "smithy.api#Unit", + "AssociationTarget": { + "target": "com.amazonaws.ec2#InstanceEventWindowDisassociationRequest", "traits": { - "smithy.api#enumValue": "completed" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

One or more targets to disassociate from the specified event window.

", + "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#ExportToS3Task": { + "com.amazonaws.ec2#DisassociateInstanceEventWindowResult": { "type": "structure", "members": { - "ContainerFormat": { - "target": "com.amazonaws.ec2#ContainerFormat", + "InstanceEventWindow": { + "target": "com.amazonaws.ec2#InstanceEventWindow", "traits": { - "aws.protocols#ec2QueryName": "ContainerFormat", - "smithy.api#documentation": "

The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is\n exported.

", - "smithy.api#xmlName": "containerFormat" + "aws.protocols#ec2QueryName": "InstanceEventWindow", + "smithy.api#documentation": "

Information about the event window.

", + "smithy.api#xmlName": "instanceEventWindow" } - }, - "DiskImageFormat": { - "target": "com.amazonaws.ec2#DiskImageFormat", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DisassociateIpamByoasn": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisassociateIpamByoasnRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisassociateIpamByoasnResult" + }, + "traits": { + "smithy.api#documentation": "

Remove the association between your Autonomous System Number (ASN) and your BYOIP CIDR. You may want to use this action to disassociate an ASN from a CIDR or if you want to swap ASNs. \n For more information, see Tutorial: Bring your ASN to IPAM in the Amazon VPC IPAM guide.

" + } + }, + "com.amazonaws.ec2#DisassociateIpamByoasnRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DiskImageFormat", - "smithy.api#documentation": "

The format for the exported image.

", - "smithy.api#xmlName": "diskImageFormat" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "S3Bucket": { + "Asn": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "S3Bucket", - "smithy.api#documentation": "

The Amazon S3 bucket for the destination image. The destination bucket must exist and have\n an access control list (ACL) attached that specifies the Region-specific canonical account ID for\n the Grantee. For more information about the ACL to your S3 bucket, see Prerequisites in the VM Import/Export User Guide.

", - "smithy.api#xmlName": "s3Bucket" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A public 2-byte or 4-byte ASN.

", + "smithy.api#required": {} } }, - "S3Key": { + "Cidr": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "S3Key", - "smithy.api#documentation": "

The encryption key for your S3 bucket.

", - "smithy.api#xmlName": "s3Key" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A BYOIP CIDR.

", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Describes the format and location for the export task.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#ExportToS3TaskSpecification": { + "com.amazonaws.ec2#DisassociateIpamByoasnResult": { "type": "structure", "members": { - "ContainerFormat": { - "target": "com.amazonaws.ec2#ContainerFormat", + "AsnAssociation": { + "target": "com.amazonaws.ec2#AsnAssociation", "traits": { - "aws.protocols#ec2QueryName": "ContainerFormat", - "smithy.api#documentation": "

The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is\n exported.

", - "smithy.api#xmlName": "containerFormat" + "aws.protocols#ec2QueryName": "AsnAssociation", + "smithy.api#documentation": "

An ASN and BYOIP CIDR association.

", + "smithy.api#xmlName": "asnAssociation" } - }, - "DiskImageFormat": { - "target": "com.amazonaws.ec2#DiskImageFormat", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DisassociateIpamResourceDiscovery": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisassociateIpamResourceDiscoveryRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisassociateIpamResourceDiscoveryResult" + }, + "traits": { + "smithy.api#documentation": "

Disassociates a resource discovery from an Amazon VPC IPAM. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

" + } + }, + "com.amazonaws.ec2#DisassociateIpamResourceDiscoveryRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DiskImageFormat", - "smithy.api#documentation": "

The format for the exported image.

", - "smithy.api#xmlName": "diskImageFormat" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "S3Bucket": { - "target": "com.amazonaws.ec2#String", + "IpamResourceDiscoveryAssociationId": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryAssociationId", "traits": { - "aws.protocols#ec2QueryName": "S3Bucket", - "smithy.api#documentation": "

The Amazon S3 bucket for the destination image. The destination bucket must exist and have\n an access control list (ACL) attached that specifies the Region-specific canonical account ID for\n the Grantee. For more information about the ACL to your S3 bucket, see Prerequisites in the VM Import/Export User Guide.

", - "smithy.api#xmlName": "s3Bucket" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A resource discovery association ID.

", + "smithy.api#required": {} } - }, - "S3Prefix": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DisassociateIpamResourceDiscoveryResult": { + "type": "structure", + "members": { + "IpamResourceDiscoveryAssociation": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryAssociation", "traits": { - "aws.protocols#ec2QueryName": "S3Prefix", - "smithy.api#documentation": "

The image is written to a single object in the Amazon S3 bucket at the S3 key s3prefix +\n exportTaskId + '.' + diskImageFormat.

", - "smithy.api#xmlName": "s3Prefix" + "aws.protocols#ec2QueryName": "IpamResourceDiscoveryAssociation", + "smithy.api#documentation": "

A resource discovery association.

", + "smithy.api#xmlName": "ipamResourceDiscoveryAssociation" } } }, "traits": { - "smithy.api#documentation": "

Describes an export instance task.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#ExportTransitGatewayRoutes": { + "com.amazonaws.ec2#DisassociateNatGatewayAddress": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#ExportTransitGatewayRoutesRequest" + "target": "com.amazonaws.ec2#DisassociateNatGatewayAddressRequest" }, "output": { - "target": "com.amazonaws.ec2#ExportTransitGatewayRoutesResult" + "target": "com.amazonaws.ec2#DisassociateNatGatewayAddressResult" }, "traits": { - "smithy.api#documentation": "

Exports routes from the specified transit gateway route table to the specified S3 bucket.\n By default, all routes are exported. Alternatively, you can filter by CIDR range.

\n

The routes are saved to the specified bucket in a JSON file. For more information, see\n Export Route Tables\n to Amazon S3 in Transit Gateways.

" + "smithy.api#documentation": "

Disassociates secondary Elastic IP addresses (EIPs) from a public NAT gateway. \n You cannot disassociate your primary EIP. For more information, see Edit secondary IP address associations in the Amazon VPC User Guide.

\n

While disassociating is in progress, you cannot associate/disassociate additional EIPs while the connections are being drained. You are, however, allowed to delete the NAT gateway.

\n

An EIP is released only at the end of MaxDrainDurationSeconds. It stays\n associated and supports the existing connections but does not support any new connections\n (new connections are distributed across the remaining associated EIPs). As the existing\n connections drain out, the EIPs (and the corresponding private IP addresses mapped to them) \n are released.

" } }, - "com.amazonaws.ec2#ExportTransitGatewayRoutesRequest": { + "com.amazonaws.ec2#DisassociateNatGatewayAddressRequest": { "type": "structure", "members": { - "TransitGatewayRouteTableId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "NatGatewayId": { + "target": "com.amazonaws.ec2#NatGatewayId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the route table.

", + "smithy.api#documentation": "

The ID of the NAT gateway.

", "smithy.api#required": {} } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "AssociationIds": { + "target": "com.amazonaws.ec2#EipAssociationIdList", "traits": { - "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The association IDs of EIPs that have been associated with the NAT gateway.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "AssociationId" } }, - "S3Bucket": { - "target": "com.amazonaws.ec2#String", + "MaxDrainDurationSeconds": { + "target": "com.amazonaws.ec2#DrainSeconds", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The name of the S3 bucket.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The maximum amount of time to wait (in seconds) before forcibly releasing the IP addresses if connections are still in progress. Default value is 350 seconds.

" } }, "DryRun": { @@ -48807,15 +50280,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#ExportTransitGatewayRoutesResult": { + "com.amazonaws.ec2#DisassociateNatGatewayAddressResult": { "type": "structure", "members": { - "S3Location": { - "target": "com.amazonaws.ec2#String", + "NatGatewayId": { + "target": "com.amazonaws.ec2#NatGatewayId", "traits": { - "aws.protocols#ec2QueryName": "S3Location", - "smithy.api#documentation": "

The URL of the exported file in Amazon S3. For example, \n s3://bucket_name/VPCTransitGateway/TransitGatewayRouteTables/file_name.

", - "smithy.api#xmlName": "s3Location" + "aws.protocols#ec2QueryName": "NatGatewayId", + "smithy.api#documentation": "

The ID of the NAT gateway.

", + "smithy.api#xmlName": "natGatewayId" + } + }, + "NatGatewayAddresses": { + "target": "com.amazonaws.ec2#NatGatewayAddressList", + "traits": { + "aws.protocols#ec2QueryName": "NatGatewayAddressSet", + "smithy.api#documentation": "

Information about the NAT gateway IP addresses.

", + "smithy.api#xmlName": "natGatewayAddressSet" } } }, @@ -48823,2211 +50304,2255 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#ExportVmTaskId": { - "type": "string" + "com.amazonaws.ec2#DisassociateRouteServer": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisassociateRouteServerRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisassociateRouteServerResult" + }, + "traits": { + "smithy.api#documentation": "

Disassociates a route server from a VPC.

\n

A route server association is the connection established between a route server and a VPC.

\n

For more information see Dynamic routing in your VPC with VPC Route Server in the Amazon VPC User Guide.

" + } }, - "com.amazonaws.ec2#FailedCapacityReservationFleetCancellationResult": { + "com.amazonaws.ec2#DisassociateRouteServerRequest": { "type": "structure", "members": { - "CapacityReservationFleetId": { - "target": "com.amazonaws.ec2#CapacityReservationFleetId", + "RouteServerId": { + "target": "com.amazonaws.ec2#RouteServerId", "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationFleetId", - "smithy.api#documentation": "

The ID of the Capacity Reservation Fleet that could not be cancelled.

", - "smithy.api#xmlName": "capacityReservationFleetId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the route server to disassociate.

", + "smithy.api#required": {} } }, - "CancelCapacityReservationFleetError": { - "target": "com.amazonaws.ec2#CancelCapacityReservationFleetError", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "aws.protocols#ec2QueryName": "CancelCapacityReservationFleetError", - "smithy.api#documentation": "

Information about the Capacity Reservation Fleet cancellation error.

", - "smithy.api#xmlName": "cancelCapacityReservationFleetError" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC to disassociate from the route server.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Describes a Capacity Reservation Fleet that could not be cancelled.

" - } - }, - "com.amazonaws.ec2#FailedCapacityReservationFleetCancellationResultSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#FailedCapacityReservationFleetCancellationResult", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#input": {} } }, - "com.amazonaws.ec2#FailedQueuedPurchaseDeletion": { + "com.amazonaws.ec2#DisassociateRouteServerResult": { "type": "structure", "members": { - "Error": { - "target": "com.amazonaws.ec2#DeleteQueuedReservedInstancesError", - "traits": { - "aws.protocols#ec2QueryName": "Error", - "smithy.api#documentation": "

The error.

", - "smithy.api#xmlName": "error" - } - }, - "ReservedInstancesId": { - "target": "com.amazonaws.ec2#String", + "RouteServerAssociation": { + "target": "com.amazonaws.ec2#RouteServerAssociation", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesId", - "smithy.api#documentation": "

The ID of the Reserved Instance.

", - "smithy.api#xmlName": "reservedInstancesId" + "aws.protocols#ec2QueryName": "RouteServerAssociation", + "smithy.api#documentation": "

Information about the disassociated route server.

", + "smithy.api#xmlName": "routeServerAssociation" } } }, "traits": { - "smithy.api#documentation": "

Describes a Reserved Instance whose queued purchase was not deleted.

" - } - }, - "com.amazonaws.ec2#FailedQueuedPurchaseDeletionSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#FailedQueuedPurchaseDeletion", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#output": {} } }, - "com.amazonaws.ec2#FastLaunchImageIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ImageId", - "traits": { - "smithy.api#xmlName": "ImageId" - } + "com.amazonaws.ec2#DisassociateRouteTable": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisassociateRouteTableRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Disassociates a subnet or gateway from a route table.

\n

After you perform this action, the subnet no longer uses the routes in the route table.\n\t\t\t\tInstead, it uses the routes in the VPC's main route table. For more information\n\t\t\t\tabout route tables, see Route\n\t\t\t\ttables in the Amazon VPC User Guide.

", + "smithy.api#examples": [ + { + "title": "To disassociate a route table", + "documentation": "This example disassociates the specified route table from its associated subnet.", + "input": { + "AssociationId": "rtbassoc-781d0d1a" + } + } + ] } }, - "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationRequest": { + "com.amazonaws.ec2#DisassociateRouteTableRequest": { "type": "structure", "members": { - "LaunchTemplateId": { - "target": "com.amazonaws.ec2#LaunchTemplateId", - "traits": { - "smithy.api#documentation": "

Specify the ID of the launch template that the AMI should use for Windows fast launch.

" - } - }, - "LaunchTemplateName": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Specify the name of the launch template that the AMI should use for Windows fast launch.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "Version": { - "target": "com.amazonaws.ec2#String", + "AssociationId": { + "target": "com.amazonaws.ec2#RouteTableAssociationId", "traits": { + "aws.protocols#ec2QueryName": "AssociationId", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Specify the version of the launch template that the AMI should use for Windows fast launch.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The association ID representing the current association between the route table and subnet or gateway.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "associationId" } } }, "traits": { - "smithy.api#documentation": "

Request to create a launch template for a Windows fast launch enabled AMI.

\n \n

Note - You can specify either the LaunchTemplateName or the \n\t\t\t\tLaunchTemplateId, but not both.

\n
" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationResponse": { + "com.amazonaws.ec2#DisassociateSecurityGroupVpc": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisassociateSecurityGroupVpcRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisassociateSecurityGroupVpcResult" + }, + "traits": { + "smithy.api#documentation": "

Disassociates a security group from a VPC. You cannot disassociate the security group if any Elastic network interfaces in the associated VPC are still associated with the security group.\n \n Note that the disassociation is asynchronous and you can check the status of the request with DescribeSecurityGroupVpcAssociations.

" + } + }, + "com.amazonaws.ec2#DisassociateSecurityGroupVpcRequest": { "type": "structure", "members": { - "LaunchTemplateId": { - "target": "com.amazonaws.ec2#LaunchTemplateId", + "GroupId": { + "target": "com.amazonaws.ec2#DisassociateSecurityGroupVpcSecurityGroupId", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateId", - "smithy.api#documentation": "

The ID of the launch template that the AMI uses for Windows fast launch.

", - "smithy.api#xmlName": "launchTemplateId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A security group ID.

", + "smithy.api#required": {} } }, - "LaunchTemplateName": { + "VpcId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateName", - "smithy.api#documentation": "

The name of the launch template that the AMI uses for Windows fast launch.

", - "smithy.api#xmlName": "launchTemplateName" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A VPC ID.

", + "smithy.api#required": {} } }, - "Version": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Version", - "smithy.api#documentation": "

The version of the launch template that the AMI uses for Windows fast launch.

", - "smithy.api#xmlName": "version" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Identifies the launch template that the AMI uses for Windows fast launch.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#FastLaunchResourceType": { - "type": "enum", + "com.amazonaws.ec2#DisassociateSecurityGroupVpcResult": { + "type": "structure", "members": { - "SNAPSHOT": { - "target": "smithy.api#Unit", + "State": { + "target": "com.amazonaws.ec2#SecurityGroupVpcAssociationState", "traits": { - "smithy.api#enumValue": "snapshot" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the disassociation.

", + "smithy.api#xmlName": "state" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#FastLaunchSnapshotConfigurationRequest": { - "type": "structure", - "members": { - "TargetResourceCount": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

The number of pre-provisioned snapshots to keep on hand for a Windows fast launch \n\t\t\tenabled AMI.

" - } - } + "com.amazonaws.ec2#DisassociateSecurityGroupVpcSecurityGroupId": { + "type": "string" + }, + "com.amazonaws.ec2#DisassociateSubnetCidrBlock": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisassociateSubnetCidrBlockRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisassociateSubnetCidrBlockResult" }, "traits": { - "smithy.api#documentation": "

Configuration settings for creating and managing pre-provisioned snapshots for a Windows fast launch \n\t\t\tenabled AMI.

" + "smithy.api#documentation": "

Disassociates a CIDR block from a subnet. Currently, you can disassociate an IPv6 CIDR block only. You must detach or delete all gateways and resources that are associated with the CIDR block before you can disassociate it.

" } }, - "com.amazonaws.ec2#FastLaunchSnapshotConfigurationResponse": { + "com.amazonaws.ec2#DisassociateSubnetCidrBlockRequest": { "type": "structure", "members": { - "TargetResourceCount": { - "target": "com.amazonaws.ec2#Integer", + "AssociationId": { + "target": "com.amazonaws.ec2#SubnetCidrAssociationId", "traits": { - "aws.protocols#ec2QueryName": "TargetResourceCount", - "smithy.api#documentation": "

The number of pre-provisioned snapshots requested to keep on hand for a Windows fast launch \n\t\t\tenabled AMI.

", - "smithy.api#xmlName": "targetResourceCount" + "aws.protocols#ec2QueryName": "AssociationId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The association ID for the CIDR block.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "associationId" } } }, "traits": { - "smithy.api#documentation": "

Configuration settings for creating and managing pre-provisioned snapshots for a Windows fast launch \n\t\t\tenabled Windows AMI.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#FastLaunchStateCode": { - "type": "enum", + "com.amazonaws.ec2#DisassociateSubnetCidrBlockResult": { + "type": "structure", "members": { - "enabling": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "enabling" - } - }, - "enabling_failed": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "enabling-failed" - } - }, - "enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "enabled" - } - }, - "enabled_failed": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "enabled-failed" - } - }, - "disabling": { - "target": "smithy.api#Unit", + "Ipv6CidrBlockAssociation": { + "target": "com.amazonaws.ec2#SubnetIpv6CidrBlockAssociation", "traits": { - "smithy.api#enumValue": "disabling" + "aws.protocols#ec2QueryName": "Ipv6CidrBlockAssociation", + "smithy.api#documentation": "

Information about the IPv6 CIDR block association.

", + "smithy.api#xmlName": "ipv6CidrBlockAssociation" } }, - "disabling_failed": { - "target": "smithy.api#Unit", + "SubnetId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "disabling-failed" + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet.

", + "smithy.api#xmlName": "subnetId" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#FastSnapshotRestoreStateCode": { - "type": "enum", + "com.amazonaws.ec2#DisassociateTransitGatewayMulticastDomain": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisassociateTransitGatewayMulticastDomainRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisassociateTransitGatewayMulticastDomainResult" + }, + "traits": { + "smithy.api#documentation": "

Disassociates the specified subnets from the transit gateway multicast domain.

" + } + }, + "com.amazonaws.ec2#DisassociateTransitGatewayMulticastDomainRequest": { + "type": "structure", "members": { - "enabling": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "enabling" - } - }, - "optimizing": { - "target": "smithy.api#Unit", + "TransitGatewayMulticastDomainId": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainId", "traits": { - "smithy.api#enumValue": "optimizing" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

", + "smithy.api#required": {} } }, - "enabled": { - "target": "smithy.api#Unit", + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", "traits": { - "smithy.api#enumValue": "enabled" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the attachment.

", + "smithy.api#required": {} } }, - "disabling": { - "target": "smithy.api#Unit", + "SubnetIds": { + "target": "com.amazonaws.ec2#TransitGatewaySubnetIdList", "traits": { - "smithy.api#enumValue": "disabling" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of the subnets;

", + "smithy.api#required": {} } }, - "disabled": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "disabled" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#FederatedAuthentication": { + "com.amazonaws.ec2#DisassociateTransitGatewayMulticastDomainResult": { "type": "structure", "members": { - "SamlProviderArn": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "SamlProviderArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM SAML identity provider.

", - "smithy.api#xmlName": "samlProviderArn" - } - }, - "SelfServiceSamlProviderArn": { - "target": "com.amazonaws.ec2#String", + "Associations": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainAssociations", "traits": { - "aws.protocols#ec2QueryName": "SelfServiceSamlProviderArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM SAML identity provider for the self-service portal.

", - "smithy.api#xmlName": "selfServiceSamlProviderArn" + "aws.protocols#ec2QueryName": "Associations", + "smithy.api#documentation": "

Information about the association.

", + "smithy.api#xmlName": "associations" } } }, "traits": { - "smithy.api#documentation": "

Describes the IAM SAML identity providers used for federated authentication.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#FederatedAuthenticationRequest": { + "com.amazonaws.ec2#DisassociateTransitGatewayPolicyTable": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisassociateTransitGatewayPolicyTableRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisassociateTransitGatewayPolicyTableResult" + }, + "traits": { + "smithy.api#documentation": "

Removes the association between an an attachment and a policy table.

" + } + }, + "com.amazonaws.ec2#DisassociateTransitGatewayPolicyTableRequest": { "type": "structure", "members": { - "SAMLProviderArn": { - "target": "com.amazonaws.ec2#String", + "TransitGatewayPolicyTableId": { + "target": "com.amazonaws.ec2#TransitGatewayPolicyTableId", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM SAML identity provider.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the disassociated policy table.

", + "smithy.api#required": {} } }, - "SelfServiceSAMLProviderArn": { - "target": "com.amazonaws.ec2#String", + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM SAML identity provider for the self-service portal.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway attachment to disassociate from the policy table.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

The IAM SAML identity provider used for federated authentication.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#Filter": { + "com.amazonaws.ec2#DisassociateTransitGatewayPolicyTableResult": { "type": "structure", "members": { - "Name": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The name of the filter. Filter names are case-sensitive.

" - } - }, - "Values": { - "target": "com.amazonaws.ec2#ValueStringList", + "Association": { + "target": "com.amazonaws.ec2#TransitGatewayPolicyTableAssociation", "traits": { - "smithy.api#documentation": "

The filter values. Filter values are case-sensitive. If you specify multiple values for a \n filter, the values are joined with an OR, and the request returns all results \n that match any of the specified values.

", - "smithy.api#xmlName": "Value" + "aws.protocols#ec2QueryName": "Association", + "smithy.api#documentation": "

Returns details about the transit gateway policy table disassociation.

", + "smithy.api#xmlName": "association" } } }, "traits": { - "smithy.api#documentation": "

A filter name and value pair that is used to return a more specific list of results from a describe operation. \n Filters can be used to match a set of resources by specific criteria, such as tags, attributes, or IDs.

\n

If you specify multiple filters, the filters are joined with an AND, and the request returns only \n results that match all of the specified filters.

" - } - }, - "com.amazonaws.ec2#FilterList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Filter", - "traits": { - "smithy.api#xmlName": "Filter" - } + "smithy.api#output": {} } }, - "com.amazonaws.ec2#FilterPortRange": { - "type": "structure", - "members": { - "FromPort": { - "target": "com.amazonaws.ec2#Port", - "traits": { - "aws.protocols#ec2QueryName": "FromPort", - "smithy.api#documentation": "

The first port in the range.

", - "smithy.api#xmlName": "fromPort" - } - }, - "ToPort": { - "target": "com.amazonaws.ec2#Port", - "traits": { - "aws.protocols#ec2QueryName": "ToPort", - "smithy.api#documentation": "

The last port in the range.

", - "smithy.api#xmlName": "toPort" - } - } + "com.amazonaws.ec2#DisassociateTransitGatewayRouteTable": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisassociateTransitGatewayRouteTableRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisassociateTransitGatewayRouteTableResult" }, "traits": { - "smithy.api#documentation": "

Describes a port range.

" + "smithy.api#documentation": "

Disassociates a resource attachment from a transit gateway route table.

" } }, - "com.amazonaws.ec2#FindingsFound": { - "type": "enum", + "com.amazonaws.ec2#DisassociateTransitGatewayRouteTableRequest": { + "type": "structure", "members": { - "true": { - "target": "smithy.api#Unit", + "TransitGatewayRouteTableId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", "traits": { - "smithy.api#enumValue": "true" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway route table.

", + "smithy.api#required": {} } }, - "false": { - "target": "smithy.api#Unit", + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", "traits": { - "smithy.api#enumValue": "false" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the attachment.

", + "smithy.api#required": {} } }, - "unknown": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "unknown" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#FirewallStatefulRule": { + "com.amazonaws.ec2#DisassociateTransitGatewayRouteTableResult": { "type": "structure", "members": { - "RuleGroupArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "Association": { + "target": "com.amazonaws.ec2#TransitGatewayAssociation", "traits": { - "aws.protocols#ec2QueryName": "RuleGroupArn", - "smithy.api#documentation": "

The ARN of the stateful rule group.

", - "smithy.api#xmlName": "ruleGroupArn" + "aws.protocols#ec2QueryName": "Association", + "smithy.api#documentation": "

Information about the association.

", + "smithy.api#xmlName": "association" } - }, - "Sources": { - "target": "com.amazonaws.ec2#ValueStringList", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DisassociateTrunkInterface": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisassociateTrunkInterfaceRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisassociateTrunkInterfaceResult" + }, + "traits": { + "smithy.api#documentation": "

Removes an association between a branch network interface with a trunk network interface.

" + } + }, + "com.amazonaws.ec2#DisassociateTrunkInterfaceRequest": { + "type": "structure", + "members": { + "AssociationId": { + "target": "com.amazonaws.ec2#TrunkInterfaceAssociationId", "traits": { - "aws.protocols#ec2QueryName": "SourceSet", - "smithy.api#documentation": "

The source IP addresses, in CIDR notation.

", - "smithy.api#xmlName": "sourceSet" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the association

", + "smithy.api#required": {} } }, - "Destinations": { - "target": "com.amazonaws.ec2#ValueStringList", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DestinationSet", - "smithy.api#documentation": "

The destination IP addresses, in CIDR notation.

", - "smithy.api#xmlName": "destinationSet" + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see Ensuring\n idempotency.

", + "smithy.api#idempotencyToken": {} } }, - "SourcePorts": { - "target": "com.amazonaws.ec2#PortRangeList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "SourcePortSet", - "smithy.api#documentation": "

The source ports.

", - "smithy.api#xmlName": "sourcePortSet" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "DestinationPorts": { - "target": "com.amazonaws.ec2#PortRangeList", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DisassociateTrunkInterfaceResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DestinationPortSet", - "smithy.api#documentation": "

The destination ports.

", - "smithy.api#xmlName": "destinationPortSet" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } }, - "Protocol": { + "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Protocol", - "smithy.api#documentation": "

The protocol.

", - "smithy.api#xmlName": "protocol" + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see Ensuring\n idempotency.

", + "smithy.api#xmlName": "clientToken" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#DisassociateVpcCidrBlock": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#DisassociateVpcCidrBlockRequest" + }, + "output": { + "target": "com.amazonaws.ec2#DisassociateVpcCidrBlockResult" + }, + "traits": { + "smithy.api#documentation": "

Disassociates a CIDR block from a VPC. To disassociate the CIDR block, you must\n specify its association ID. You can get the association ID by using\n DescribeVpcs. You must detach or delete all gateways and resources that\n are associated with the CIDR block before you can disassociate it.

\n

You cannot disassociate the CIDR block with which you originally created the VPC (the\n\t\t\tprimary CIDR block).

" + } + }, + "com.amazonaws.ec2#DisassociateVpcCidrBlockRequest": { + "type": "structure", + "members": { + "AssociationId": { + "target": "com.amazonaws.ec2#VpcCidrAssociationId", + "traits": { + "aws.protocols#ec2QueryName": "AssociationId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The association ID for the CIDR block.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "associationId" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#DisassociateVpcCidrBlockResult": { + "type": "structure", + "members": { + "Ipv6CidrBlockAssociation": { + "target": "com.amazonaws.ec2#VpcIpv6CidrBlockAssociation", + "traits": { + "aws.protocols#ec2QueryName": "Ipv6CidrBlockAssociation", + "smithy.api#documentation": "

Information about the IPv6 CIDR block association.

", + "smithy.api#xmlName": "ipv6CidrBlockAssociation" } }, - "RuleAction": { - "target": "com.amazonaws.ec2#String", + "CidrBlockAssociation": { + "target": "com.amazonaws.ec2#VpcCidrBlockAssociation", "traits": { - "aws.protocols#ec2QueryName": "RuleAction", - "smithy.api#documentation": "

The rule action. The possible values are pass, drop, and \n alert.

", - "smithy.api#xmlName": "ruleAction" + "aws.protocols#ec2QueryName": "CidrBlockAssociation", + "smithy.api#documentation": "

Information about the IPv4 CIDR block association.

", + "smithy.api#xmlName": "cidrBlockAssociation" } }, - "Direction": { + "VpcId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Direction", - "smithy.api#documentation": "

The direction. The possible values are FORWARD and ANY.

", - "smithy.api#xmlName": "direction" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#xmlName": "vpcId" } } }, "traits": { - "smithy.api#documentation": "

Describes a stateful rule.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#FirewallStatelessRule": { + "com.amazonaws.ec2#DiskCount": { + "type": "integer" + }, + "com.amazonaws.ec2#DiskImage": { "type": "structure", "members": { - "RuleGroupArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "RuleGroupArn", - "smithy.api#documentation": "

The ARN of the stateless rule group.

", - "smithy.api#xmlName": "ruleGroupArn" + "smithy.api#documentation": "

A description of the disk image.

" } }, - "Sources": { - "target": "com.amazonaws.ec2#ValueStringList", + "Image": { + "target": "com.amazonaws.ec2#DiskImageDetail", "traits": { - "aws.protocols#ec2QueryName": "SourceSet", - "smithy.api#documentation": "

The source IP addresses, in CIDR notation.

", - "smithy.api#xmlName": "sourceSet" + "smithy.api#documentation": "

Information about the disk image.

" } }, - "Destinations": { - "target": "com.amazonaws.ec2#ValueStringList", + "Volume": { + "target": "com.amazonaws.ec2#VolumeDetail", "traits": { - "aws.protocols#ec2QueryName": "DestinationSet", - "smithy.api#documentation": "

The destination IP addresses, in CIDR notation.

", - "smithy.api#xmlName": "destinationSet" + "smithy.api#documentation": "

Information about the volume.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a disk image.

" + } + }, + "com.amazonaws.ec2#DiskImageDescription": { + "type": "structure", + "members": { + "Checksum": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Checksum", + "smithy.api#documentation": "

The checksum computed for the disk image.

", + "smithy.api#xmlName": "checksum" } }, - "SourcePorts": { - "target": "com.amazonaws.ec2#PortRangeList", + "Format": { + "target": "com.amazonaws.ec2#DiskImageFormat", "traits": { - "aws.protocols#ec2QueryName": "SourcePortSet", - "smithy.api#documentation": "

The source ports.

", - "smithy.api#xmlName": "sourcePortSet" + "aws.protocols#ec2QueryName": "Format", + "smithy.api#documentation": "

The disk image format.

", + "smithy.api#xmlName": "format" } }, - "DestinationPorts": { - "target": "com.amazonaws.ec2#PortRangeList", + "ImportManifestUrl": { + "target": "com.amazonaws.ec2#ImportManifestUrl", "traits": { - "aws.protocols#ec2QueryName": "DestinationPortSet", - "smithy.api#documentation": "

The destination ports.

", - "smithy.api#xmlName": "destinationPortSet" + "aws.protocols#ec2QueryName": "ImportManifestUrl", + "smithy.api#documentation": "

A presigned URL for the import manifest stored in Amazon S3. For information about creating a presigned URL for\n an Amazon S3 object, read the \"Query String Request Authentication Alternative\" section of the Authenticating REST Requests topic in\n the Amazon Simple Storage Service Developer Guide.

\n

For information about the import manifest referenced by this API action, see VM Import Manifest.

", + "smithy.api#xmlName": "importManifestUrl" } }, - "Protocols": { - "target": "com.amazonaws.ec2#ProtocolIntList", + "Size": { + "target": "com.amazonaws.ec2#Long", "traits": { - "aws.protocols#ec2QueryName": "ProtocolSet", - "smithy.api#documentation": "

The protocols.

", - "smithy.api#xmlName": "protocolSet" + "aws.protocols#ec2QueryName": "Size", + "smithy.api#documentation": "

The size of the disk image, in GiB.

", + "smithy.api#xmlName": "size" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a disk image.

" + } + }, + "com.amazonaws.ec2#DiskImageDetail": { + "type": "structure", + "members": { + "Format": { + "target": "com.amazonaws.ec2#DiskImageFormat", + "traits": { + "aws.protocols#ec2QueryName": "Format", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The disk image format.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "format" } }, - "RuleAction": { - "target": "com.amazonaws.ec2#String", + "Bytes": { + "target": "com.amazonaws.ec2#Long", "traits": { - "aws.protocols#ec2QueryName": "RuleAction", - "smithy.api#documentation": "

The rule action. The possible values are pass, drop, and \n forward_to_site.

", - "smithy.api#xmlName": "ruleAction" + "aws.protocols#ec2QueryName": "Bytes", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The size of the disk image, in GiB.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "bytes" } }, - "Priority": { - "target": "com.amazonaws.ec2#Priority", + "ImportManifestUrl": { + "target": "com.amazonaws.ec2#ImportManifestUrl", "traits": { - "aws.protocols#ec2QueryName": "Priority", - "smithy.api#documentation": "

The rule priority.

", - "smithy.api#xmlName": "priority" + "aws.protocols#ec2QueryName": "ImportManifestUrl", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A presigned URL for the import manifest stored in Amazon S3 and presented here as an Amazon S3 presigned URL.\n For information about creating a presigned URL for an Amazon S3 object, read the \"Query String Request Authentication\n Alternative\" section of the Authenticating REST Requests topic in the Amazon Simple Storage Service Developer\n Guide.

\n

For information about the import manifest referenced by this API action, see VM Import Manifest.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "importManifestUrl" } } }, "traits": { - "smithy.api#documentation": "

Describes a stateless rule.

" + "smithy.api#documentation": "

Describes a disk image.

" } }, - "com.amazonaws.ec2#FleetActivityStatus": { + "com.amazonaws.ec2#DiskImageFormat": { "type": "enum", "members": { - "ERROR": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "error" - } - }, - "PENDING_FULFILLMENT": { + "VMDK": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "pending_fulfillment" + "smithy.api#enumValue": "VMDK" } }, - "PENDING_TERMINATION": { + "RAW": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "pending_termination" + "smithy.api#enumValue": "RAW" } }, - "FULFILLED": { + "VHD": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "fulfilled" + "smithy.api#enumValue": "VHD" } } } }, - "com.amazonaws.ec2#FleetCapacityReservation": { + "com.amazonaws.ec2#DiskImageList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DiskImage" + } + }, + "com.amazonaws.ec2#DiskImageVolumeDescription": { "type": "structure", "members": { - "CapacityReservationId": { - "target": "com.amazonaws.ec2#CapacityReservationId", - "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationId", - "smithy.api#documentation": "

The ID of the Capacity Reservation.

", - "smithy.api#xmlName": "capacityReservationId" - } - }, - "AvailabilityZoneId": { + "Id": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZoneId", - "smithy.api#documentation": "

The ID of the Availability Zone in which the Capacity Reservation reserves capacity.

", - "smithy.api#xmlName": "availabilityZoneId" - } - }, - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", - "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type for which the Capacity Reservation reserves capacity.

", - "smithy.api#xmlName": "instanceType" + "aws.protocols#ec2QueryName": "Id", + "smithy.api#documentation": "

The volume identifier.

", + "smithy.api#xmlName": "id" } }, - "InstancePlatform": { - "target": "com.amazonaws.ec2#CapacityReservationInstancePlatform", + "Size": { + "target": "com.amazonaws.ec2#Long", "traits": { - "aws.protocols#ec2QueryName": "InstancePlatform", - "smithy.api#documentation": "

The type of operating system for which the Capacity Reservation reserves capacity.

", - "smithy.api#xmlName": "instancePlatform" + "aws.protocols#ec2QueryName": "Size", + "smithy.api#documentation": "

The size of the volume, in GiB.

", + "smithy.api#xmlName": "size" } - }, - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#documentation": "

Describes a disk image volume.

" + } + }, + "com.amazonaws.ec2#DiskInfo": { + "type": "structure", + "members": { + "SizeInGB": { + "target": "com.amazonaws.ec2#DiskSize", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone in which the Capacity Reservation reserves capacity.

", - "smithy.api#xmlName": "availabilityZone" + "aws.protocols#ec2QueryName": "SizeInGB", + "smithy.api#documentation": "

The size of the disk in GB.

", + "smithy.api#xmlName": "sizeInGB" } }, - "TotalInstanceCount": { - "target": "com.amazonaws.ec2#Integer", + "Count": { + "target": "com.amazonaws.ec2#DiskCount", "traits": { - "aws.protocols#ec2QueryName": "TotalInstanceCount", - "smithy.api#documentation": "

The total number of instances for which the Capacity Reservation reserves capacity.

", - "smithy.api#xmlName": "totalInstanceCount" + "aws.protocols#ec2QueryName": "Count", + "smithy.api#documentation": "

The number of disks with this configuration.

", + "smithy.api#xmlName": "count" } }, - "FulfilledCapacity": { - "target": "com.amazonaws.ec2#Double", + "Type": { + "target": "com.amazonaws.ec2#DiskType", "traits": { - "aws.protocols#ec2QueryName": "FulfilledCapacity", - "smithy.api#documentation": "

The number of capacity units fulfilled by the Capacity Reservation. For more information, see \n\t\t\t\n\t\t\t\tTotal target capacity in the Amazon EC2 User Guide.

", - "smithy.api#xmlName": "fulfilledCapacity" + "aws.protocols#ec2QueryName": "Type", + "smithy.api#documentation": "

The type of disk.

", + "smithy.api#xmlName": "type" } - }, - "EbsOptimized": { - "target": "com.amazonaws.ec2#Boolean", + } + }, + "traits": { + "smithy.api#documentation": "

Describes a disk.

" + } + }, + "com.amazonaws.ec2#DiskInfoList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DiskInfo", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#DiskSize": { + "type": "long" + }, + "com.amazonaws.ec2#DiskType": { + "type": "enum", + "members": { + "hdd": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EbsOptimized", - "smithy.api#documentation": "

Indicates whether the Capacity Reservation reserves capacity for EBS-optimized instance types.

", - "smithy.api#xmlName": "ebsOptimized" + "smithy.api#enumValue": "hdd" } }, - "CreateDate": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "ssd": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CreateDate", - "smithy.api#documentation": "

The date and time at which the Capacity Reservation was created.

", - "smithy.api#xmlName": "createDate" + "smithy.api#enumValue": "ssd" } - }, - "Weight": { - "target": "com.amazonaws.ec2#DoubleWithConstraints", + } + } + }, + "com.amazonaws.ec2#DnsEntry": { + "type": "structure", + "members": { + "DnsName": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Weight", - "smithy.api#documentation": "

The weight of the instance type in the Capacity Reservation Fleet. For more information, \n\t\t\tsee \n\t\t\t\tInstance type weight in the Amazon EC2 User Guide.

", - "smithy.api#xmlName": "weight" + "aws.protocols#ec2QueryName": "DnsName", + "smithy.api#documentation": "

The DNS name.

", + "smithy.api#xmlName": "dnsName" } }, - "Priority": { - "target": "com.amazonaws.ec2#IntegerWithConstraints", + "HostedZoneId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Priority", - "smithy.api#documentation": "

The priority of the instance type in the Capacity Reservation Fleet. For more information, \n\t\t\tsee \n\t\t\t\tInstance type priority in the Amazon EC2 User Guide.

", - "smithy.api#xmlName": "priority" + "aws.protocols#ec2QueryName": "HostedZoneId", + "smithy.api#documentation": "

The ID of the private hosted zone.

", + "smithy.api#xmlName": "hostedZoneId" } } }, "traits": { - "smithy.api#documentation": "

Information about a Capacity Reservation in a Capacity Reservation Fleet.

" + "smithy.api#documentation": "

Describes a DNS entry.

" } }, - "com.amazonaws.ec2#FleetCapacityReservationSet": { + "com.amazonaws.ec2#DnsEntrySet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#FleetCapacityReservation", + "target": "com.amazonaws.ec2#DnsEntry", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#FleetCapacityReservationTenancy": { + "com.amazonaws.ec2#DnsNameState": { "type": "enum", "members": { - "default": { + "PendingVerification": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "default" + "smithy.api#enumValue": "pendingVerification" } - } - } - }, - "com.amazonaws.ec2#FleetCapacityReservationUsageStrategy": { - "type": "enum", - "members": { - "USE_CAPACITY_RESERVATIONS_FIRST": { + }, + "Verified": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "use-capacity-reservations-first" + "smithy.api#enumValue": "verified" + } + }, + "Failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "failed" } } } }, - "com.amazonaws.ec2#FleetData": { + "com.amazonaws.ec2#DnsOptions": { "type": "structure", "members": { - "ActivityStatus": { - "target": "com.amazonaws.ec2#FleetActivityStatus", - "traits": { - "aws.protocols#ec2QueryName": "ActivityStatus", - "smithy.api#documentation": "

The progress of the EC2 Fleet. If there is an error, the status is error. After\n all requests are placed, the status is pending_fulfillment. If the size of the\n EC2 Fleet is equal to or greater than its target capacity, the status is fulfilled.\n If the size of the EC2 Fleet is decreased, the status is pending_termination while\n instances are terminating.

", - "smithy.api#xmlName": "activityStatus" - } - }, - "CreateTime": { - "target": "com.amazonaws.ec2#DateTime", - "traits": { - "aws.protocols#ec2QueryName": "CreateTime", - "smithy.api#documentation": "

The creation date and time of the EC2 Fleet.

", - "smithy.api#xmlName": "createTime" - } - }, - "FleetId": { - "target": "com.amazonaws.ec2#FleetId", - "traits": { - "aws.protocols#ec2QueryName": "FleetId", - "smithy.api#documentation": "

The ID of the EC2 Fleet.

", - "smithy.api#xmlName": "fleetId" - } - }, - "FleetState": { - "target": "com.amazonaws.ec2#FleetStateCode", - "traits": { - "aws.protocols#ec2QueryName": "FleetState", - "smithy.api#documentation": "

The state of the EC2 Fleet.

", - "smithy.api#xmlName": "fleetState" - } - }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see Ensuring\n idempotency.

\n

Constraints: Maximum 64 ASCII characters

", - "smithy.api#xmlName": "clientToken" - } - }, - "ExcessCapacityTerminationPolicy": { - "target": "com.amazonaws.ec2#FleetExcessCapacityTerminationPolicy", - "traits": { - "aws.protocols#ec2QueryName": "ExcessCapacityTerminationPolicy", - "smithy.api#documentation": "

Indicates whether running instances should be terminated if the target capacity of the\n EC2 Fleet is decreased below the current size of the EC2 Fleet.

\n

Supported only for fleets of type maintain.

", - "smithy.api#xmlName": "excessCapacityTerminationPolicy" - } - }, - "FulfilledCapacity": { - "target": "com.amazonaws.ec2#Double", - "traits": { - "aws.protocols#ec2QueryName": "FulfilledCapacity", - "smithy.api#documentation": "

The number of units fulfilled by this request compared to the set target\n capacity.

", - "smithy.api#xmlName": "fulfilledCapacity" - } - }, - "FulfilledOnDemandCapacity": { - "target": "com.amazonaws.ec2#Double", - "traits": { - "aws.protocols#ec2QueryName": "FulfilledOnDemandCapacity", - "smithy.api#documentation": "

The number of units fulfilled by this request compared to the set target On-Demand\n capacity.

", - "smithy.api#xmlName": "fulfilledOnDemandCapacity" - } - }, - "LaunchTemplateConfigs": { - "target": "com.amazonaws.ec2#FleetLaunchTemplateConfigList", - "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateConfigs", - "smithy.api#documentation": "

The launch template and overrides.

", - "smithy.api#xmlName": "launchTemplateConfigs" - } - }, - "TargetCapacitySpecification": { - "target": "com.amazonaws.ec2#TargetCapacitySpecification", + "DnsRecordIpType": { + "target": "com.amazonaws.ec2#DnsRecordIpType", "traits": { - "aws.protocols#ec2QueryName": "TargetCapacitySpecification", - "smithy.api#documentation": "

The number of units to request. You can choose to set the target capacity in terms of\n instances or a performance characteristic that is important to your application workload,\n such as vCPUs, memory, or I/O. If the request type is maintain, you can\n specify a target capacity of 0 and add capacity later.

", - "smithy.api#xmlName": "targetCapacitySpecification" + "aws.protocols#ec2QueryName": "DnsRecordIpType", + "smithy.api#documentation": "

The DNS records created for the endpoint.

", + "smithy.api#xmlName": "dnsRecordIpType" } }, - "TerminateInstancesWithExpiration": { + "PrivateDnsOnlyForInboundResolverEndpoint": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "TerminateInstancesWithExpiration", - "smithy.api#documentation": "

Indicates whether running instances should be terminated when the EC2 Fleet expires.

", - "smithy.api#xmlName": "terminateInstancesWithExpiration" - } - }, - "Type": { - "target": "com.amazonaws.ec2#FleetType", - "traits": { - "aws.protocols#ec2QueryName": "Type", - "smithy.api#documentation": "

The type of request. Indicates whether the EC2 Fleet only requests the target\n capacity, or also attempts to maintain it. If you request a certain target\n capacity, EC2 Fleet only places the required requests; it does not attempt to replenish\n instances if capacity is diminished, and it does not submit requests in alternative\n capacity pools if capacity is unavailable. To maintain a certain target capacity, EC2 Fleet\n places the required requests to meet this target capacity. It also automatically\n replenishes any interrupted Spot Instances. Default: maintain.

", - "smithy.api#xmlName": "type" - } - }, - "ValidFrom": { - "target": "com.amazonaws.ec2#DateTime", - "traits": { - "aws.protocols#ec2QueryName": "ValidFrom", - "smithy.api#documentation": "

The start date and time of the request, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).\n The default is to start fulfilling the request immediately.

", - "smithy.api#xmlName": "validFrom" + "aws.protocols#ec2QueryName": "PrivateDnsOnlyForInboundResolverEndpoint", + "smithy.api#documentation": "

Indicates whether to enable private DNS only for inbound endpoints.

", + "smithy.api#xmlName": "privateDnsOnlyForInboundResolverEndpoint" } - }, - "ValidUntil": { - "target": "com.amazonaws.ec2#DateTime", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the DNS options for an endpoint.

" + } + }, + "com.amazonaws.ec2#DnsOptionsSpecification": { + "type": "structure", + "members": { + "DnsRecordIpType": { + "target": "com.amazonaws.ec2#DnsRecordIpType", "traits": { - "aws.protocols#ec2QueryName": "ValidUntil", - "smithy.api#documentation": "

The end date and time of the request, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).\n At this point, no new instance requests are placed or able to fulfill the request. The\n default end date is 7 days from the current date.

", - "smithy.api#xmlName": "validUntil" + "smithy.api#documentation": "

The DNS records created for the endpoint.

" } }, - "ReplaceUnhealthyInstances": { + "PrivateDnsOnlyForInboundResolverEndpoint": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "ReplaceUnhealthyInstances", - "smithy.api#documentation": "

Indicates whether EC2 Fleet should replace unhealthy Spot Instances. Supported only for\n fleets of type maintain. For more information, see EC2 Fleet\n health checks in the Amazon EC2 User Guide.

", - "smithy.api#xmlName": "replaceUnhealthyInstances" + "smithy.api#documentation": "

Indicates whether to enable private DNS only for inbound endpoints. This option is\n available only for services that support both gateway and interface endpoints. It routes\n traffic that originates from the VPC to the gateway endpoint and traffic that originates\n from on-premises to the interface endpoint.

" } - }, - "SpotOptions": { - "target": "com.amazonaws.ec2#SpotOptions", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the DNS options for an endpoint.

" + } + }, + "com.amazonaws.ec2#DnsRecordIpType": { + "type": "enum", + "members": { + "ipv4": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SpotOptions", - "smithy.api#documentation": "

The configuration of Spot Instances in an EC2 Fleet.

", - "smithy.api#xmlName": "spotOptions" + "smithy.api#enumValue": "ipv4" } }, - "OnDemandOptions": { - "target": "com.amazonaws.ec2#OnDemandOptions", + "dualstack": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OnDemandOptions", - "smithy.api#documentation": "

The allocation strategy of On-Demand Instances in an EC2 Fleet.

", - "smithy.api#xmlName": "onDemandOptions" + "smithy.api#enumValue": "dualstack" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "ipv6": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags for an EC2 Fleet resource.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "ipv6" } }, - "Errors": { - "target": "com.amazonaws.ec2#DescribeFleetsErrorSet", + "service_defined": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ErrorSet", - "smithy.api#documentation": "

Information about the instances that could not be launched by the fleet. Valid only when\n Type is set to instant.

", - "smithy.api#xmlName": "errorSet" + "smithy.api#enumValue": "service-defined" } - }, - "Instances": { - "target": "com.amazonaws.ec2#DescribeFleetsInstancesSet", + } + } + }, + "com.amazonaws.ec2#DnsServersOptionsModifyStructure": { + "type": "structure", + "members": { + "CustomDnsServers": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "aws.protocols#ec2QueryName": "FleetInstanceSet", - "smithy.api#documentation": "

Information about the instances that were launched by the fleet. Valid only when\n Type is set to instant.

", - "smithy.api#xmlName": "fleetInstanceSet" + "smithy.api#documentation": "

The IPv4 address range, in CIDR notation, of the DNS servers to be used. You can specify up to \n\t\t\ttwo DNS servers. Ensure that the DNS servers can be reached by the clients. The specified values \n\t\t\toverwrite the existing values.

" } }, - "Context": { - "target": "com.amazonaws.ec2#String", + "Enabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Context", - "smithy.api#documentation": "

Reserved.

", - "smithy.api#xmlName": "context" + "smithy.api#documentation": "

Indicates whether DNS servers should be used. Specify False to delete the existing DNS \n\t\t\tservers.

" } } }, "traits": { - "smithy.api#documentation": "

Describes an EC2 Fleet.

" + "smithy.api#documentation": "

Information about the DNS server to be used.

" } }, - "com.amazonaws.ec2#FleetEventType": { + "com.amazonaws.ec2#DnsSupportValue": { "type": "enum", "members": { - "INSTANCE_CHANGE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "instance-change" - } - }, - "FLEET_CHANGE": { + "enable": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "fleet-change" + "smithy.api#enumValue": "enable" } }, - "SERVICE_ERROR": { + "disable": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "service-error" + "smithy.api#enumValue": "disable" } } } }, - "com.amazonaws.ec2#FleetExcessCapacityTerminationPolicy": { + "com.amazonaws.ec2#DomainType": { "type": "enum", "members": { - "NO_TERMINATION": { + "vpc": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "no-termination" + "smithy.api#enumValue": "vpc" } }, - "TERMINATION": { + "standard": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "termination" + "smithy.api#enumValue": "standard" } } } }, - "com.amazonaws.ec2#FleetId": { - "type": "string" + "com.amazonaws.ec2#Double": { + "type": "double" }, - "com.amazonaws.ec2#FleetIdSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#FleetId" + "com.amazonaws.ec2#DoubleWithConstraints": { + "type": "double", + "traits": { + "smithy.api#range": { + "min": 0.001, + "max": 99.999 + } } }, - "com.amazonaws.ec2#FleetInstanceMatchCriteria": { - "type": "enum", - "members": { - "open": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "open" - } + "com.amazonaws.ec2#DrainSeconds": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 4000 } } }, - "com.amazonaws.ec2#FleetLaunchTemplateConfig": { - "type": "structure", + "com.amazonaws.ec2#DynamicRoutingValue": { + "type": "enum", "members": { - "LaunchTemplateSpecification": { - "target": "com.amazonaws.ec2#FleetLaunchTemplateSpecification", + "enable": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateSpecification", - "smithy.api#documentation": "

The launch template.

", - "smithy.api#xmlName": "launchTemplateSpecification" + "smithy.api#enumValue": "enable" } }, - "Overrides": { - "target": "com.amazonaws.ec2#FleetLaunchTemplateOverridesList", + "disable": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Overrides", - "smithy.api#documentation": "

Any parameters that you specify override the same parameters in the launch\n template.

", - "smithy.api#xmlName": "overrides" + "smithy.api#enumValue": "disable" } } - }, - "traits": { - "smithy.api#documentation": "

Describes a launch template and overrides.

" - } - }, - "com.amazonaws.ec2#FleetLaunchTemplateConfigList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#FleetLaunchTemplateConfig", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#FleetLaunchTemplateConfigListRequest": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#FleetLaunchTemplateConfigRequest", - "traits": { - "smithy.api#xmlName": "item" - } - }, - "traits": { - "smithy.api#length": { - "min": 0, - "max": 50 - } } }, - "com.amazonaws.ec2#FleetLaunchTemplateConfigRequest": { + "com.amazonaws.ec2#EbsBlockDevice": { "type": "structure", "members": { - "LaunchTemplateSpecification": { - "target": "com.amazonaws.ec2#FleetLaunchTemplateSpecificationRequest", + "DeleteOnTermination": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The launch template to use. You must specify either the launch template ID or launch\n template name in the request.

" + "aws.protocols#ec2QueryName": "DeleteOnTermination", + "smithy.api#documentation": "

Indicates whether the EBS volume is deleted on instance termination. For more\n information, see Preserving Amazon EBS volumes on instance termination in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "deleteOnTermination" } }, - "Overrides": { - "target": "com.amazonaws.ec2#FleetLaunchTemplateOverridesListRequest", + "Iops": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

Any parameters that you specify override the same parameters in the launch\n template.

\n

For fleets of type request and maintain, a maximum of 300\n items is allowed across all launch templates.

" + "aws.protocols#ec2QueryName": "Iops", + "smithy.api#documentation": "

The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes,\n this represents the number of IOPS that are provisioned for the volume. For gp2\n volumes, this represents the baseline performance of the volume and the rate at which\n the volume accumulates I/O credits for bursting.

\n

The following are the supported values for each volume type:

\n \n

For io2 volumes, you can achieve up to 256,000 IOPS on \ninstances \nbuilt on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS.

\n

This parameter is required for io1 and io2 volumes. The default for gp3 volumes\n is 3,000 IOPS.

", + "smithy.api#xmlName": "iops" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a launch template and overrides.

" - } - }, - "com.amazonaws.ec2#FleetLaunchTemplateOverrides": { - "type": "structure", - "members": { - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", + }, + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type.

\n

\n mac1.metal is not supported as a launch template override.

\n \n

If you specify InstanceType, you can't specify\n InstanceRequirements.

\n
", - "smithy.api#xmlName": "instanceType" + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The ID of the snapshot.

", + "smithy.api#xmlName": "snapshotId" } }, - "MaxPrice": { - "target": "com.amazonaws.ec2#String", + "VolumeSize": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "MaxPrice", - "smithy.api#documentation": "

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.\n

\n \n

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

\n
", - "smithy.api#xmlName": "maxPrice" + "aws.protocols#ec2QueryName": "VolumeSize", + "smithy.api#documentation": "

The size of the volume, in GiBs. You must specify either a snapshot ID or a volume\n size. If you specify a snapshot, the default is the snapshot size. You can specify a\n volume size that is equal to or larger than the snapshot size.

\n

The following are the supported sizes for each volume type:

\n ", + "smithy.api#xmlName": "volumeSize" } }, - "SubnetId": { - "target": "com.amazonaws.ec2#String", + "VolumeType": { + "target": "com.amazonaws.ec2#VolumeType", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#documentation": "

The ID of the subnet in which to launch the instances.

", - "smithy.api#xmlName": "subnetId" + "aws.protocols#ec2QueryName": "VolumeType", + "smithy.api#documentation": "

The volume type. For more information, see Amazon EBS volume types in the\n Amazon EBS User Guide.

", + "smithy.api#xmlName": "volumeType" } }, - "AvailabilityZone": { + "KmsKeyId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone in which to launch the instances.

", - "smithy.api#xmlName": "availabilityZone" + "aws.protocols#ec2QueryName": "KmsKeyId", + "smithy.api#documentation": "

Identifier (key ID, key alias, key ARN, or alias ARN) of the customer managed KMS key \n to use for EBS encryption.

\n

This parameter is only supported on BlockDeviceMapping objects called by\n RunInstances, RequestSpotFleet,\n and RequestSpotInstances.

", + "smithy.api#xmlName": "kmsKeyId" } }, - "WeightedCapacity": { - "target": "com.amazonaws.ec2#Double", + "Throughput": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "WeightedCapacity", - "smithy.api#documentation": "

The number of units provided by the specified instance type.

\n \n

When specifying weights, the price used in the lowest-price and\n price-capacity-optimized allocation strategies is per\n unit hour (where the instance price is divided by the specified\n weight). However, if all the specified weights are above the requested\n TargetCapacity, resulting in only 1 instance being launched, the price\n used is per instance hour.

\n
", - "smithy.api#xmlName": "weightedCapacity" + "aws.protocols#ec2QueryName": "Throughput", + "smithy.api#documentation": "

The throughput that the volume supports, in MiB/s.

\n

This parameter is valid only for gp3 volumes.

\n

Valid Range: Minimum value of 125. Maximum value of 2,000.

", + "smithy.api#xmlName": "throughput" } }, - "Priority": { - "target": "com.amazonaws.ec2#Double", + "OutpostArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Priority", - "smithy.api#documentation": "

The priority for the launch template override. The highest priority is launched\n first.

\n

If the On-Demand AllocationStrategy is set to prioritized,\n EC2 Fleet uses priority to determine which launch template override to use first in fulfilling\n On-Demand capacity.

\n

If the Spot AllocationStrategy is set to\n capacity-optimized-prioritized, EC2 Fleet uses priority on a best-effort basis\n to determine which launch template override to use in fulfilling Spot capacity, but\n optimizes for capacity first.

\n

Valid values are whole numbers starting at 0. The lower the number, the\n higher the priority. If no number is set, the override has the lowest priority. You can set\n the same priority for different launch template overrides.

", - "smithy.api#xmlName": "priority" + "aws.protocols#ec2QueryName": "OutpostArn", + "smithy.api#documentation": "

The ARN of the Outpost on which the snapshot is stored.

\n

This parameter is not supported when using CreateImage.

", + "smithy.api#xmlName": "outpostArn" } }, - "Placement": { - "target": "com.amazonaws.ec2#PlacementResponse", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Placement", - "smithy.api#documentation": "

The location where the instance launched, if applicable.

", - "smithy.api#xmlName": "placement" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone where the EBS volume will be created (for example,\n us-east-1a).

\n

Either AvailabilityZone or AvailabilityZoneId can be specified,\n but not both. If neither is specified, Amazon EC2 automatically selects an Availability Zone within\n the Region.

\n

This parameter is not supported when using \n CreateFleet, \n CreateImage, \n DescribeImages, \n RequestSpotFleet, \n RequestSpotInstances, and \n RunInstances.

", + "smithy.api#xmlName": "availabilityZone" } }, - "InstanceRequirements": { - "target": "com.amazonaws.ec2#InstanceRequirements", + "Encrypted": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "InstanceRequirements", - "smithy.api#documentation": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will\n identify instance types with those attributes.

\n \n

If you specify InstanceRequirements, you can't specify\n InstanceType.

\n
", - "smithy.api#xmlName": "instanceRequirements" + "aws.protocols#ec2QueryName": "Encrypted", + "smithy.api#documentation": "

Indicates whether the encryption state of an EBS volume is changed while being\n restored from a backing snapshot. The effect of setting the encryption state to true depends on \nthe volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Amazon EBS encryption in the Amazon EBS User Guide.

\n

In no case can you remove encryption from an encrypted volume.

\n

Encrypted volumes can only be attached to instances that support Amazon EBS encryption. For\n more information, see Supported instance types.

\n

This parameter is not returned by DescribeImageAttribute.

\n

For CreateImage and RegisterImage, whether you can \n include this parameter, and the allowed values differ depending on the type of block \n device mapping you are creating.

\n ", + "smithy.api#xmlName": "encrypted" } }, - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", + "VolumeInitializationRate": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The ID of the AMI. An AMI is required to launch an instance. This parameter is only\n available for fleets of type instant. For fleets of type maintain\n and request, you must specify the AMI ID in the launch template.

", - "smithy.api#xmlName": "imageId" + "smithy.api#documentation": "

Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), in MiB/s, at which to download \n the snapshot blocks from Amazon S3 to the volume. This is also known as \n volume initialization. Specifying a volume initialization rate ensures that \n the volume is initialized at a predictable and consistent rate after creation.

\n

This parameter is supported only for volumes created from snapshots. Omit this parameter \n if:

\n \n

For more information, see \n Initialize Amazon EBS volumes in the Amazon EC2 User Guide.

\n

This parameter is not supported when using CreateImage.

\n

Valid range: 100 - 300 MiB/s

" + } + }, + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The ID of the Availability Zone where the EBS volume will be created (for example,\n use1-az1).

\n

Either AvailabilityZone or AvailabilityZoneId can be specified,\n but not both. If neither is specified, Amazon EC2 automatically selects an Availability Zone within\n the Region.

\n

This parameter is not supported when using \n CreateFleet, \n CreateImage, \n DescribeImages, \n RequestSpotFleet, \n RequestSpotInstances, and \n RunInstances.

" } } }, "traits": { - "smithy.api#documentation": "

Describes overrides for a launch template.

" - } - }, - "com.amazonaws.ec2#FleetLaunchTemplateOverridesList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#FleetLaunchTemplateOverrides", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#FleetLaunchTemplateOverridesListRequest": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#FleetLaunchTemplateOverridesRequest", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

Describes a block device for an EBS volume.

" } }, - "com.amazonaws.ec2#FleetLaunchTemplateOverridesRequest": { + "com.amazonaws.ec2#EbsBlockDeviceResponse": { "type": "structure", "members": { - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", - "traits": { - "smithy.api#documentation": "

The instance type.

\n

\n mac1.metal is not supported as a launch template override.

\n \n

If you specify InstanceType, you can't specify\n InstanceRequirements.

\n
" - } - }, - "MaxPrice": { - "target": "com.amazonaws.ec2#String", + "Encrypted": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.\n

\n \n

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

\n
" + "aws.protocols#ec2QueryName": "Encrypted", + "smithy.api#documentation": "

Indicates whether the volume is encrypted.

", + "smithy.api#xmlName": "encrypted" } }, - "SubnetId": { - "target": "com.amazonaws.ec2#SubnetId", + "DeleteOnTermination": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The IDs of the subnets in which to launch the instances. Separate multiple subnet IDs using commas (for example, subnet-1234abcdeexample1, subnet-0987cdef6example2). A request of type instant can have only one subnet ID.

" + "aws.protocols#ec2QueryName": "DeleteOnTermination", + "smithy.api#documentation": "

Indicates whether the volume is deleted on instance termination.

", + "smithy.api#xmlName": "deleteOnTermination" } }, - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + "Iops": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The Availability Zone in which to launch the instances.

" + "aws.protocols#ec2QueryName": "Iops", + "smithy.api#documentation": "

The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes,\n this represents the number of IOPS that are provisioned for the volume. For gp2\n volumes, this represents the baseline performance of the volume and the rate at which\n the volume accumulates I/O credits for bursting.

", + "smithy.api#xmlName": "iops" } }, - "WeightedCapacity": { - "target": "com.amazonaws.ec2#Double", + "Throughput": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The number of units provided by the specified instance type.

\n \n

When specifying weights, the price used in the lowest-price and\n price-capacity-optimized allocation strategies is per\n unit hour (where the instance price is divided by the specified\n weight). However, if all the specified weights are above the requested\n TargetCapacity, resulting in only 1 instance being launched, the price\n used is per instance hour.

\n
" + "aws.protocols#ec2QueryName": "Throughput", + "smithy.api#documentation": "

The throughput that the volume supports, in MiB/s.

", + "smithy.api#xmlName": "throughput" } }, - "Priority": { - "target": "com.amazonaws.ec2#Double", + "KmsKeyId": { + "target": "com.amazonaws.ec2#KmsKeyId", "traits": { - "smithy.api#documentation": "

The priority for the launch template override. The highest priority is launched\n first.

\n

If the On-Demand AllocationStrategy is set to prioritized,\n EC2 Fleet uses priority to determine which launch template override to use first in fulfilling\n On-Demand capacity.

\n

If the Spot AllocationStrategy is set to\n capacity-optimized-prioritized, EC2 Fleet uses priority on a best-effort basis\n to determine which launch template override to use in fulfilling Spot capacity, but\n optimizes for capacity first.

\n

Valid values are whole numbers starting at 0. The lower the number, the\n higher the priority. If no number is set, the launch template override has the lowest\n priority. You can set the same priority for different launch template overrides.

" + "aws.protocols#ec2QueryName": "KmsKeyId", + "smithy.api#documentation": "

Identifier (key ID, key alias, key ARN, or alias ARN) of the customer managed KMS key \n to use for EBS encryption.

", + "smithy.api#xmlName": "kmsKeyId" } }, - "Placement": { - "target": "com.amazonaws.ec2#Placement", + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", "traits": { - "smithy.api#documentation": "

The location where the instance launched, if applicable.

" + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The ID of the snapshot.

", + "smithy.api#xmlName": "snapshotId" } }, - "InstanceRequirements": { - "target": "com.amazonaws.ec2#InstanceRequirementsRequest", + "VolumeSize": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will\n identify instance types with those attributes.

\n \n

If you specify InstanceRequirements, you can't specify\n InstanceType.

\n
" + "aws.protocols#ec2QueryName": "VolumeSize", + "smithy.api#documentation": "

The size of the volume, in GiBs.

", + "smithy.api#xmlName": "volumeSize" } }, - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", + "VolumeType": { + "target": "com.amazonaws.ec2#VolumeType", "traits": { - "smithy.api#documentation": "

The ID of the AMI. An AMI is required to launch an instance. This parameter is only\n available for fleets of type instant. For fleets of type maintain\n and request, you must specify the AMI ID in the launch template.

" + "aws.protocols#ec2QueryName": "VolumeType", + "smithy.api#documentation": "

The volume type. For more information, see Amazon EBS volume types in the\n Amazon EBS User Guide.

", + "smithy.api#xmlName": "volumeType" } } }, "traits": { - "smithy.api#documentation": "

Describes overrides for a launch template.

" + "smithy.api#documentation": "

Describes a block device for an EBS volume.

" } }, - "com.amazonaws.ec2#FleetLaunchTemplateSpecification": { - "type": "structure", + "com.amazonaws.ec2#EbsEncryptionSupport": { + "type": "enum", "members": { - "LaunchTemplateId": { - "target": "com.amazonaws.ec2#String", + "unsupported": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateId", - "smithy.api#documentation": "

The ID of the launch template.

\n

You must specify the LaunchTemplateId or the LaunchTemplateName, but not both.

", - "smithy.api#xmlName": "launchTemplateId" + "smithy.api#enumValue": "unsupported" } }, - "LaunchTemplateName": { - "target": "com.amazonaws.ec2#LaunchTemplateName", + "supported": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateName", - "smithy.api#documentation": "

The name of the launch template.

\n

You must specify the LaunchTemplateName or the LaunchTemplateId, but not both.

", - "smithy.api#xmlName": "launchTemplateName" - } - }, - "Version": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Version", - "smithy.api#documentation": "

The launch template version number, $Latest, or $Default.\n You must specify a value, otherwise the request fails.

\n

If the value is $Latest, Amazon EC2 uses the latest version of the launch\n template.

\n

If the value is $Default, Amazon EC2 uses the default version of the launch\n template.

", - "smithy.api#xmlName": "version" + "smithy.api#enumValue": "supported" } } - }, - "traits": { - "smithy.api#documentation": "

The Amazon EC2 launch template that can be used by\n a Spot Fleet to configure Amazon EC2 instances. You must specify either the ID or name of the launch template in the request, but not both.

\n

For information about launch templates,\n see Launch an instance from a launch template in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#FleetLaunchTemplateSpecificationRequest": { + "com.amazonaws.ec2#EbsInfo": { "type": "structure", "members": { - "LaunchTemplateId": { - "target": "com.amazonaws.ec2#LaunchTemplateId", + "EbsOptimizedSupport": { + "target": "com.amazonaws.ec2#EbsOptimizedSupport", "traits": { - "smithy.api#documentation": "

The ID of the launch template.

\n

You must specify the LaunchTemplateId or the LaunchTemplateName, but not both.

" + "aws.protocols#ec2QueryName": "EbsOptimizedSupport", + "smithy.api#documentation": "

Indicates whether the instance type is Amazon EBS-optimized. For more information, see Amazon EBS-optimized\n instances in Amazon EC2 User Guide.

", + "smithy.api#xmlName": "ebsOptimizedSupport" } }, - "LaunchTemplateName": { - "target": "com.amazonaws.ec2#LaunchTemplateName", + "EncryptionSupport": { + "target": "com.amazonaws.ec2#EbsEncryptionSupport", "traits": { - "smithy.api#documentation": "

The name of the launch template.

\n

You must specify the LaunchTemplateName or the LaunchTemplateId, but not both.

" + "aws.protocols#ec2QueryName": "EncryptionSupport", + "smithy.api#documentation": "

Indicates whether Amazon EBS encryption is supported.

", + "smithy.api#xmlName": "encryptionSupport" } }, - "Version": { - "target": "com.amazonaws.ec2#String", + "EbsOptimizedInfo": { + "target": "com.amazonaws.ec2#EbsOptimizedInfo", "traits": { - "smithy.api#documentation": "

The launch template version number, $Latest, or $Default. You must specify a value, otherwise the request fails.

\n

If the value is $Latest, Amazon EC2 uses the latest version of the launch template.

\n

If the value is $Default, Amazon EC2 uses the default version of the launch template.

" + "aws.protocols#ec2QueryName": "EbsOptimizedInfo", + "smithy.api#documentation": "

Describes the optimized EBS performance for the instance type.

", + "smithy.api#xmlName": "ebsOptimizedInfo" + } + }, + "NvmeSupport": { + "target": "com.amazonaws.ec2#EbsNvmeSupport", + "traits": { + "aws.protocols#ec2QueryName": "NvmeSupport", + "smithy.api#documentation": "

Indicates whether non-volatile memory express (NVMe) is supported.

", + "smithy.api#xmlName": "nvmeSupport" + } + }, + "MaximumEbsAttachments": { + "target": "com.amazonaws.ec2#MaximumEbsAttachments", + "traits": { + "aws.protocols#ec2QueryName": "MaximumEbsAttachments", + "smithy.api#documentation": "

Indicates the maximum number of Amazon EBS volumes that can be attached to \n the instance type. For more information, see Amazon EBS volume limits for \n Amazon EC2 instances in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "maximumEbsAttachments" + } + }, + "AttachmentLimitType": { + "target": "com.amazonaws.ec2#AttachmentLimitType", + "traits": { + "aws.protocols#ec2QueryName": "AttachmentLimitType", + "smithy.api#documentation": "

Indicates whether the instance type features a shared or dedicated Amazon EBS \n volume attachment limit. For more information, see Amazon EBS volume limits for \n Amazon EC2 instances in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "attachmentLimitType" } } }, "traits": { - "smithy.api#documentation": "

The Amazon EC2 launch template that can be used by\n an EC2 Fleet to configure Amazon EC2 instances. You must specify either the ID or name of the launch template in the request, but not both.

\n

For information about launch templates, see Launch\n an instance from a launch template in the\n Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Describes the Amazon EBS features supported by the instance type.

" } }, - "com.amazonaws.ec2#FleetOnDemandAllocationStrategy": { - "type": "enum", + "com.amazonaws.ec2#EbsInstanceBlockDevice": { + "type": "structure", "members": { - "LOWEST_PRICE": { - "target": "smithy.api#Unit", + "AttachTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#enumValue": "lowest-price" + "aws.protocols#ec2QueryName": "AttachTime", + "smithy.api#documentation": "

The time stamp when the attachment initiated.

", + "smithy.api#xmlName": "attachTime" } }, - "PRIORITIZED": { - "target": "smithy.api#Unit", + "DeleteOnTermination": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "prioritized" + "aws.protocols#ec2QueryName": "DeleteOnTermination", + "smithy.api#documentation": "

Indicates whether the volume is deleted on instance termination.

", + "smithy.api#xmlName": "deleteOnTermination" } - } - } - }, - "com.amazonaws.ec2#FleetReplacementStrategy": { - "type": "enum", - "members": { - "LAUNCH": { - "target": "smithy.api#Unit", + }, + "Status": { + "target": "com.amazonaws.ec2#AttachmentStatus", "traits": { - "smithy.api#enumValue": "launch" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The attachment state.

", + "smithy.api#xmlName": "status" } }, - "LAUNCH_BEFORE_TERMINATE": { - "target": "smithy.api#Unit", + "VolumeId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "launch-before-terminate" + "aws.protocols#ec2QueryName": "VolumeId", + "smithy.api#documentation": "

The ID of the EBS volume.

", + "smithy.api#xmlName": "volumeId" } - } - } - }, - "com.amazonaws.ec2#FleetSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#FleetData", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#FleetSpotCapacityRebalance": { - "type": "structure", - "members": { - "ReplacementStrategy": { - "target": "com.amazonaws.ec2#FleetReplacementStrategy", + }, + "AssociatedResource": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ReplacementStrategy", - "smithy.api#documentation": "

The replacement strategy to use. Only available for fleets of type\n maintain.

\n

\n launch - EC2 Fleet launches a new replacement Spot Instance when a\n rebalance notification is emitted for an existing Spot Instance in the fleet. EC2 Fleet\n does not terminate the instances that receive a rebalance notification. You can terminate\n the old instances, or you can leave them running. You are charged for all instances while\n they are running.

\n

\n launch-before-terminate - EC2 Fleet launches a new replacement Spot\n Instance when a rebalance notification is emitted for an existing Spot Instance in the\n fleet, and then, after a delay that you specify (in TerminationDelay),\n terminates the instances that received a rebalance notification.

", - "smithy.api#xmlName": "replacementStrategy" + "aws.protocols#ec2QueryName": "AssociatedResource", + "smithy.api#documentation": "

The ARN of the Amazon Web Services-managed resource \n to which the volume is attached.

", + "smithy.api#xmlName": "associatedResource" } }, - "TerminationDelay": { - "target": "com.amazonaws.ec2#Integer", + "VolumeOwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TerminationDelay", - "smithy.api#documentation": "

The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot\n Instance after launching a new replacement Spot Instance.

\n

Required when ReplacementStrategy is set to launch-before-terminate.

\n

Not valid when ReplacementStrategy is set to launch.

\n

Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

", - "smithy.api#xmlName": "terminationDelay" + "aws.protocols#ec2QueryName": "VolumeOwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the volume.

\n

This parameter is returned only for volumes that are attached to \n Amazon Web Services-managed resources.

", + "smithy.api#xmlName": "volumeOwnerId" + } + }, + "Operator": { + "target": "com.amazonaws.ec2#OperatorResponse", + "traits": { + "aws.protocols#ec2QueryName": "Operator", + "smithy.api#documentation": "

The service provider that manages the EBS volume.

", + "smithy.api#xmlName": "operator" } } }, "traits": { - "smithy.api#documentation": "

The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an\n elevated risk of being interrupted.

" + "smithy.api#documentation": "

Describes a parameter used to set up an EBS volume in a block device mapping.

" } }, - "com.amazonaws.ec2#FleetSpotCapacityRebalanceRequest": { + "com.amazonaws.ec2#EbsInstanceBlockDeviceSpecification": { "type": "structure", "members": { - "ReplacementStrategy": { - "target": "com.amazonaws.ec2#FleetReplacementStrategy", + "VolumeId": { + "target": "com.amazonaws.ec2#VolumeId", "traits": { - "smithy.api#documentation": "

The replacement strategy to use. Only available for fleets of type\n maintain.

\n

\n launch - EC2 Fleet launches a replacement Spot Instance when a rebalance\n notification is emitted for an existing Spot Instance in the fleet. EC2 Fleet does not\n terminate the instances that receive a rebalance notification. You can terminate the old\n instances, or you can leave them running. You are charged for all instances while they are\n running.

\n

\n launch-before-terminate - EC2 Fleet launches a replacement Spot Instance\n when a rebalance notification is emitted for an existing Spot Instance in the fleet, and\n then, after a delay that you specify (in TerminationDelay), terminates the\n instances that received a rebalance notification.

" + "aws.protocols#ec2QueryName": "VolumeId", + "smithy.api#documentation": "

The ID of the EBS volume.

", + "smithy.api#xmlName": "volumeId" } }, - "TerminationDelay": { - "target": "com.amazonaws.ec2#Integer", + "DeleteOnTermination": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot\n Instance after launching a new replacement Spot Instance.

\n

Required when ReplacementStrategy is set to launch-before-terminate.

\n

Not valid when ReplacementStrategy is set to launch.

\n

Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

" + "aws.protocols#ec2QueryName": "DeleteOnTermination", + "smithy.api#documentation": "

Indicates whether the volume is deleted on instance termination.

", + "smithy.api#xmlName": "deleteOnTermination" } } }, "traits": { - "smithy.api#documentation": "

The Spot Instance replacement strategy to use when Amazon EC2 emits a rebalance\n notification signal that your Spot Instance is at an elevated risk of being interrupted.\n For more information, see Capacity rebalancing in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Describes information used to set up an EBS volume specified in a block device\n mapping.

" } }, - "com.amazonaws.ec2#FleetSpotMaintenanceStrategies": { - "type": "structure", + "com.amazonaws.ec2#EbsNvmeSupport": { + "type": "enum", "members": { - "CapacityRebalance": { - "target": "com.amazonaws.ec2#FleetSpotCapacityRebalance", + "UNSUPPORTED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CapacityRebalance", - "smithy.api#documentation": "

The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an\n elevated risk of being interrupted.

", - "smithy.api#xmlName": "capacityRebalance" + "smithy.api#enumValue": "unsupported" + } + }, + "SUPPORTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "supported" + } + }, + "REQUIRED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "required" } } - }, - "traits": { - "smithy.api#documentation": "

The strategies for managing your Spot Instances that are at an elevated risk of being\n interrupted.

" } }, - "com.amazonaws.ec2#FleetSpotMaintenanceStrategiesRequest": { + "com.amazonaws.ec2#EbsOptimizedInfo": { "type": "structure", "members": { - "CapacityRebalance": { - "target": "com.amazonaws.ec2#FleetSpotCapacityRebalanceRequest", + "BaselineBandwidthInMbps": { + "target": "com.amazonaws.ec2#BaselineBandwidthInMbps", "traits": { - "smithy.api#documentation": "

The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an\n elevated risk of being interrupted.

" + "aws.protocols#ec2QueryName": "BaselineBandwidthInMbps", + "smithy.api#documentation": "

The baseline bandwidth performance for an EBS-optimized instance type, in Mbps.

", + "smithy.api#xmlName": "baselineBandwidthInMbps" } - } - }, - "traits": { - "smithy.api#documentation": "

The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.

" - } - }, - "com.amazonaws.ec2#FleetStateCode": { - "type": "enum", - "members": { - "SUBMITTED": { - "target": "smithy.api#Unit", + }, + "BaselineThroughputInMBps": { + "target": "com.amazonaws.ec2#BaselineThroughputInMBps", "traits": { - "smithy.api#enumValue": "submitted" + "aws.protocols#ec2QueryName": "BaselineThroughputInMBps", + "smithy.api#documentation": "

The baseline throughput performance for an EBS-optimized instance type, in MB/s.

", + "smithy.api#xmlName": "baselineThroughputInMBps" } }, - "ACTIVE": { - "target": "smithy.api#Unit", + "BaselineIops": { + "target": "com.amazonaws.ec2#BaselineIops", "traits": { - "smithy.api#enumValue": "active" + "aws.protocols#ec2QueryName": "BaselineIops", + "smithy.api#documentation": "

The baseline input/output storage operations per seconds for an EBS-optimized instance\n type.

", + "smithy.api#xmlName": "baselineIops" } }, - "DELETED": { - "target": "smithy.api#Unit", + "MaximumBandwidthInMbps": { + "target": "com.amazonaws.ec2#MaximumBandwidthInMbps", "traits": { - "smithy.api#enumValue": "deleted" + "aws.protocols#ec2QueryName": "MaximumBandwidthInMbps", + "smithy.api#documentation": "

The maximum bandwidth performance for an EBS-optimized instance type, in Mbps.

", + "smithy.api#xmlName": "maximumBandwidthInMbps" } }, - "FAILED": { - "target": "smithy.api#Unit", + "MaximumThroughputInMBps": { + "target": "com.amazonaws.ec2#MaximumThroughputInMBps", "traits": { - "smithy.api#enumValue": "failed" + "aws.protocols#ec2QueryName": "MaximumThroughputInMBps", + "smithy.api#documentation": "

The maximum throughput performance for an EBS-optimized instance type, in MB/s.

", + "smithy.api#xmlName": "maximumThroughputInMBps" } }, - "DELETED_RUNNING": { + "MaximumIops": { + "target": "com.amazonaws.ec2#MaximumIops", + "traits": { + "aws.protocols#ec2QueryName": "MaximumIops", + "smithy.api#documentation": "

The maximum input/output storage operations per second for an EBS-optimized instance\n type.

", + "smithy.api#xmlName": "maximumIops" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the optimized EBS performance for supported instance types.

" + } + }, + "com.amazonaws.ec2#EbsOptimizedSupport": { + "type": "enum", + "members": { + "unsupported": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "deleted_running" + "smithy.api#enumValue": "unsupported" } }, - "DELETED_TERMINATING_INSTANCES": { + "supported": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "deleted_terminating" + "smithy.api#enumValue": "supported" } }, - "MODIFYING": { + "default": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "modifying" + "smithy.api#enumValue": "default" } } } }, - "com.amazonaws.ec2#FleetType": { - "type": "enum", + "com.amazonaws.ec2#EbsStatusDetails": { + "type": "structure", "members": { - "REQUEST": { - "target": "smithy.api#Unit", + "ImpairedSince": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#enumValue": "request" + "aws.protocols#ec2QueryName": "ImpairedSince", + "smithy.api#documentation": "

The date and time when the attached EBS status check failed.

", + "smithy.api#xmlName": "impairedSince" } }, - "MAINTAIN": { - "target": "smithy.api#Unit", + "Name": { + "target": "com.amazonaws.ec2#StatusName", "traits": { - "smithy.api#enumValue": "maintain" + "aws.protocols#ec2QueryName": "Name", + "smithy.api#documentation": "

The name of the attached EBS status check.

", + "smithy.api#xmlName": "name" } }, - "INSTANT": { - "target": "smithy.api#Unit", + "Status": { + "target": "com.amazonaws.ec2#StatusType", "traits": { - "smithy.api#enumValue": "instant" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The result of the attached EBS status check.

", + "smithy.api#xmlName": "status" } } + }, + "traits": { + "smithy.api#documentation": "

Describes the attached EBS status check for an instance.

" } }, - "com.amazonaws.ec2#Float": { - "type": "float" + "com.amazonaws.ec2#EbsStatusDetailsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#EbsStatusDetails", + "traits": { + "smithy.api#xmlName": "item" + } + } }, - "com.amazonaws.ec2#FlowLog": { + "com.amazonaws.ec2#EbsStatusSummary": { "type": "structure", "members": { - "CreationTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "Details": { + "target": "com.amazonaws.ec2#EbsStatusDetailsList", "traits": { - "aws.protocols#ec2QueryName": "CreationTime", - "smithy.api#documentation": "

The date and time the flow log was created.

", - "smithy.api#xmlName": "creationTime" + "aws.protocols#ec2QueryName": "Details", + "smithy.api#documentation": "

Details about the attached EBS status check for an instance.

", + "smithy.api#xmlName": "details" } }, - "DeliverLogsErrorMessage": { + "Status": { + "target": "com.amazonaws.ec2#SummaryStatus", + "traits": { + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The current status.

", + "smithy.api#xmlName": "status" + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides a summary of the attached EBS volume status for an instance.

" + } + }, + "com.amazonaws.ec2#Ec2InstanceConnectEndpoint": { + "type": "structure", + "members": { + "OwnerId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DeliverLogsErrorMessage", - "smithy.api#documentation": "

Information about the error that occurred. Rate limited indicates that\n CloudWatch Logs throttling has been applied for one or more network interfaces, or that you've\n reached the limit on the number of log groups that you can create. Access\n error indicates that the IAM role associated with the flow log does not have\n sufficient permissions to publish to CloudWatch Logs. Unknown error indicates an\n internal error.

", - "smithy.api#xmlName": "deliverLogsErrorMessage" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that created the EC2 Instance Connect Endpoint.

", + "smithy.api#xmlName": "ownerId" } }, - "DeliverLogsPermissionArn": { - "target": "com.amazonaws.ec2#String", + "InstanceConnectEndpointId": { + "target": "com.amazonaws.ec2#InstanceConnectEndpointId", "traits": { - "aws.protocols#ec2QueryName": "DeliverLogsPermissionArn", - "smithy.api#documentation": "

The ARN of the IAM role allows the service to publish logs to CloudWatch Logs.

", - "smithy.api#xmlName": "deliverLogsPermissionArn" + "aws.protocols#ec2QueryName": "InstanceConnectEndpointId", + "smithy.api#documentation": "

The ID of the EC2 Instance Connect Endpoint.

", + "smithy.api#xmlName": "instanceConnectEndpointId" } }, - "DeliverCrossAccountRole": { - "target": "com.amazonaws.ec2#String", + "InstanceConnectEndpointArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "aws.protocols#ec2QueryName": "DeliverCrossAccountRole", - "smithy.api#documentation": "

The ARN of the IAM role that allows the service to publish flow logs across accounts.

", - "smithy.api#xmlName": "deliverCrossAccountRole" + "aws.protocols#ec2QueryName": "InstanceConnectEndpointArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the EC2 Instance Connect Endpoint.

", + "smithy.api#xmlName": "instanceConnectEndpointArn" } }, - "DeliverLogsStatus": { - "target": "com.amazonaws.ec2#String", + "State": { + "target": "com.amazonaws.ec2#Ec2InstanceConnectEndpointState", "traits": { - "aws.protocols#ec2QueryName": "DeliverLogsStatus", - "smithy.api#documentation": "

The status of the logs delivery (SUCCESS | FAILED).

", - "smithy.api#xmlName": "deliverLogsStatus" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the EC2 Instance Connect Endpoint.

", + "smithy.api#xmlName": "state" } }, - "FlowLogId": { + "StateMessage": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "FlowLogId", - "smithy.api#documentation": "

The ID of the flow log.

", - "smithy.api#xmlName": "flowLogId" + "aws.protocols#ec2QueryName": "StateMessage", + "smithy.api#documentation": "

The message for the current state of the EC2 Instance Connect Endpoint. \n Can include a failure message.

", + "smithy.api#xmlName": "stateMessage" } }, - "FlowLogStatus": { + "DnsName": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "FlowLogStatus", - "smithy.api#documentation": "

The status of the flow log (ACTIVE).

", - "smithy.api#xmlName": "flowLogStatus" + "aws.protocols#ec2QueryName": "DnsName", + "smithy.api#documentation": "

The DNS name of the EC2 Instance Connect Endpoint.

", + "smithy.api#xmlName": "dnsName" } }, - "LogGroupName": { + "FipsDnsName": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "LogGroupName", - "smithy.api#documentation": "

The name of the flow log group.

", - "smithy.api#xmlName": "logGroupName" + "aws.protocols#ec2QueryName": "FipsDnsName", + "smithy.api#documentation": "

The Federal Information Processing Standards (FIPS) compliant DNS name of the EC2\n Instance Connect Endpoint.

", + "smithy.api#xmlName": "fipsDnsName" } }, - "ResourceId": { + "NetworkInterfaceIds": { + "target": "com.amazonaws.ec2#NetworkInterfaceIdSet", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInterfaceIdSet", + "smithy.api#documentation": "

The ID of the elastic network interface that Amazon EC2 automatically created when creating the EC2\n Instance Connect Endpoint.

", + "smithy.api#xmlName": "networkInterfaceIdSet" + } + }, + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", + "traits": { + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC in which the EC2 Instance Connect Endpoint was created.

", + "smithy.api#xmlName": "vpcId" + } + }, + "AvailabilityZone": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ResourceId", - "smithy.api#documentation": "

The ID of the resource being monitored.

", - "smithy.api#xmlName": "resourceId" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone of the EC2 Instance Connect Endpoint.

", + "smithy.api#xmlName": "availabilityZone" } }, - "TrafficType": { - "target": "com.amazonaws.ec2#TrafficType", + "CreatedAt": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "TrafficType", - "smithy.api#documentation": "

The type of traffic captured for the flow log.

", - "smithy.api#xmlName": "trafficType" + "aws.protocols#ec2QueryName": "CreatedAt", + "smithy.api#documentation": "

The date and time that the EC2 Instance Connect Endpoint was created.

", + "smithy.api#xmlName": "createdAt" } }, - "LogDestinationType": { - "target": "com.amazonaws.ec2#LogDestinationType", + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", "traits": { - "aws.protocols#ec2QueryName": "LogDestinationType", - "smithy.api#documentation": "

The type of destination for the flow log data.

", - "smithy.api#xmlName": "logDestinationType" + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet in which the EC2 Instance Connect Endpoint was created.

", + "smithy.api#xmlName": "subnetId" } }, - "LogDestination": { - "target": "com.amazonaws.ec2#String", + "PreserveClientIp": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "LogDestination", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the destination for the flow log data.

", - "smithy.api#xmlName": "logDestination" + "aws.protocols#ec2QueryName": "PreserveClientIp", + "smithy.api#documentation": "

Indicates whether your client's IP address is preserved as the source. The value is true or false.

\n \n

Default: true\n

", + "smithy.api#xmlName": "preserveClientIp" } }, - "LogFormat": { - "target": "com.amazonaws.ec2#String", + "SecurityGroupIds": { + "target": "com.amazonaws.ec2#SecurityGroupIdSet", "traits": { - "aws.protocols#ec2QueryName": "LogFormat", - "smithy.api#documentation": "

The format of the flow log record.

", - "smithy.api#xmlName": "logFormat" + "aws.protocols#ec2QueryName": "SecurityGroupIdSet", + "smithy.api#documentation": "

The security groups associated with the endpoint. If you didn't specify a security group, \n the default security group for your VPC is associated with the endpoint.

", + "smithy.api#xmlName": "securityGroupIdSet" } }, "Tags": { "target": "com.amazonaws.ec2#TagList", "traits": { "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags for the flow log.

", + "smithy.api#documentation": "

The tags assigned to the EC2 Instance Connect Endpoint.

", "smithy.api#xmlName": "tagSet" } }, - "MaxAggregationInterval": { - "target": "com.amazonaws.ec2#Integer", + "IpAddressType": { + "target": "com.amazonaws.ec2#IpAddressType", "traits": { - "aws.protocols#ec2QueryName": "MaxAggregationInterval", - "smithy.api#documentation": "

The maximum interval of time, in seconds, during which a flow of packets is captured and aggregated into a flow log record.

\n

When a network interface is attached to a Nitro-based\n instance, the aggregation interval is always 60 seconds (1 minute) or less,\n regardless of the specified value.

\n

Valid Values: 60 | 600\n

", - "smithy.api#xmlName": "maxAggregationInterval" + "aws.protocols#ec2QueryName": "IpAddressType", + "smithy.api#documentation": "

The IP address type of the endpoint.

", + "smithy.api#xmlName": "ipAddressType" } }, - "DestinationOptions": { - "target": "com.amazonaws.ec2#DestinationOptionsResponse", + "PublicDnsNames": { + "target": "com.amazonaws.ec2#InstanceConnectEndpointPublicDnsNames", "traits": { - "aws.protocols#ec2QueryName": "DestinationOptions", - "smithy.api#documentation": "

The destination options.

", - "smithy.api#xmlName": "destinationOptions" + "aws.protocols#ec2QueryName": "PublicDnsNames", + "smithy.api#documentation": "

The public DNS names of the endpoint.

", + "smithy.api#xmlName": "publicDnsNames" } } }, "traits": { - "smithy.api#documentation": "

Describes a flow log.

" - } - }, - "com.amazonaws.ec2#FlowLogIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#VpcFlowLogId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#FlowLogResourceId": { - "type": "string" - }, - "com.amazonaws.ec2#FlowLogResourceIds": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#FlowLogResourceId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#FlowLogSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#FlowLog", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

The EC2 Instance Connect Endpoint.

" } }, - "com.amazonaws.ec2#FlowLogsResourceType": { + "com.amazonaws.ec2#Ec2InstanceConnectEndpointState": { "type": "enum", "members": { - "VPC": { + "create_in_progress": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "VPC" + "smithy.api#enumValue": "create-in-progress" } }, - "Subnet": { + "create_complete": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "Subnet" + "smithy.api#enumValue": "create-complete" } }, - "NetworkInterface": { + "create_failed": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "NetworkInterface" + "smithy.api#enumValue": "create-failed" } }, - "TransitGateway": { + "delete_in_progress": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "TransitGateway" + "smithy.api#enumValue": "delete-in-progress" } }, - "TransitGatewayAttachment": { + "delete_complete": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "TransitGatewayAttachment" + "smithy.api#enumValue": "delete-complete" } - } - } - }, - "com.amazonaws.ec2#FpgaDeviceCount": { - "type": "integer" - }, - "com.amazonaws.ec2#FpgaDeviceInfo": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.ec2#FpgaDeviceName", + }, + "delete_failed": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Name", - "smithy.api#documentation": "

The name of the FPGA accelerator.

", - "smithy.api#xmlName": "name" + "smithy.api#enumValue": "delete-failed" } }, - "Manufacturer": { - "target": "com.amazonaws.ec2#FpgaDeviceManufacturerName", + "update_in_progress": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Manufacturer", - "smithy.api#documentation": "

The manufacturer of the FPGA accelerator.

", - "smithy.api#xmlName": "manufacturer" + "smithy.api#enumValue": "update-in-progress" } }, - "Count": { - "target": "com.amazonaws.ec2#FpgaDeviceCount", + "update_complete": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Count", - "smithy.api#documentation": "

The count of FPGA accelerators for the instance type.

", - "smithy.api#xmlName": "count" + "smithy.api#enumValue": "update-complete" } }, - "MemoryInfo": { - "target": "com.amazonaws.ec2#FpgaDeviceMemoryInfo", + "update_failed": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "MemoryInfo", - "smithy.api#documentation": "

Describes the memory for the FPGA accelerator for the instance type.

", - "smithy.api#xmlName": "memoryInfo" + "smithy.api#enumValue": "update-failed" } } - }, - "traits": { - "smithy.api#documentation": "

Describes the FPGA accelerator for the instance type.

" - } - }, - "com.amazonaws.ec2#FpgaDeviceInfoList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#FpgaDeviceInfo", - "traits": { - "smithy.api#xmlName": "item" - } } }, - "com.amazonaws.ec2#FpgaDeviceManufacturerName": { - "type": "string" - }, - "com.amazonaws.ec2#FpgaDeviceMemoryInfo": { + "com.amazonaws.ec2#EfaInfo": { "type": "structure", "members": { - "SizeInMiB": { - "target": "com.amazonaws.ec2#FpgaDeviceMemorySize", + "MaximumEfaInterfaces": { + "target": "com.amazonaws.ec2#MaximumEfaInterfaces", "traits": { - "aws.protocols#ec2QueryName": "SizeInMiB", - "smithy.api#documentation": "

The size of the memory available to the FPGA accelerator, in MiB.

", - "smithy.api#xmlName": "sizeInMiB" + "aws.protocols#ec2QueryName": "MaximumEfaInterfaces", + "smithy.api#documentation": "

The maximum number of Elastic Fabric Adapters for the instance type.

", + "smithy.api#xmlName": "maximumEfaInterfaces" } } }, "traits": { - "smithy.api#documentation": "

Describes the memory for the FPGA accelerator for the instance type.

" + "smithy.api#documentation": "

Describes the Elastic Fabric Adapters for the instance type.

" } }, - "com.amazonaws.ec2#FpgaDeviceMemorySize": { - "type": "integer" - }, - "com.amazonaws.ec2#FpgaDeviceName": { - "type": "string" + "com.amazonaws.ec2#EfaSupportedFlag": { + "type": "boolean" }, - "com.amazonaws.ec2#FpgaImage": { + "com.amazonaws.ec2#EgressOnlyInternetGateway": { "type": "structure", "members": { - "FpgaImageId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "FpgaImageId", - "smithy.api#documentation": "

The FPGA image identifier (AFI ID).

", - "smithy.api#xmlName": "fpgaImageId" - } - }, - "FpgaImageGlobalId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "FpgaImageGlobalId", - "smithy.api#documentation": "

The global FPGA image identifier (AGFI ID).

", - "smithy.api#xmlName": "fpgaImageGlobalId" - } - }, - "Name": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Name", - "smithy.api#documentation": "

The name of the AFI.

", - "smithy.api#xmlName": "name" - } - }, - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

The description of the AFI.

", - "smithy.api#xmlName": "description" - } - }, - "ShellVersion": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "ShellVersion", - "smithy.api#documentation": "

The version of the Amazon Web Services Shell that was used to create the bitstream.

", - "smithy.api#xmlName": "shellVersion" - } - }, - "PciId": { - "target": "com.amazonaws.ec2#PciId", - "traits": { - "aws.protocols#ec2QueryName": "PciId", - "smithy.api#documentation": "

Information about the PCI bus.

", - "smithy.api#xmlName": "pciId" - } - }, - "State": { - "target": "com.amazonaws.ec2#FpgaImageState", - "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

Information about the state of the AFI.

", - "smithy.api#xmlName": "state" - } - }, - "CreateTime": { - "target": "com.amazonaws.ec2#DateTime", - "traits": { - "aws.protocols#ec2QueryName": "CreateTime", - "smithy.api#documentation": "

The date and time the AFI was created.

", - "smithy.api#xmlName": "createTime" - } - }, - "UpdateTime": { - "target": "com.amazonaws.ec2#DateTime", - "traits": { - "aws.protocols#ec2QueryName": "UpdateTime", - "smithy.api#documentation": "

The time of the most recent update to the AFI.

", - "smithy.api#xmlName": "updateTime" - } - }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the AFI.

", - "smithy.api#xmlName": "ownerId" - } - }, - "OwnerAlias": { - "target": "com.amazonaws.ec2#String", + "Attachments": { + "target": "com.amazonaws.ec2#InternetGatewayAttachmentList", "traits": { - "aws.protocols#ec2QueryName": "OwnerAlias", - "smithy.api#documentation": "

The alias of the AFI owner. Possible values include self, amazon, and aws-marketplace.

", - "smithy.api#xmlName": "ownerAlias" + "aws.protocols#ec2QueryName": "AttachmentSet", + "smithy.api#documentation": "

Information about the attachment of the egress-only internet gateway.

", + "smithy.api#xmlName": "attachmentSet" } }, - "ProductCodes": { - "target": "com.amazonaws.ec2#ProductCodeList", + "EgressOnlyInternetGatewayId": { + "target": "com.amazonaws.ec2#EgressOnlyInternetGatewayId", "traits": { - "aws.protocols#ec2QueryName": "ProductCodes", - "smithy.api#documentation": "

The product codes for the AFI.

", - "smithy.api#xmlName": "productCodes" + "aws.protocols#ec2QueryName": "EgressOnlyInternetGatewayId", + "smithy.api#documentation": "

The ID of the egress-only internet gateway.

", + "smithy.api#xmlName": "egressOnlyInternetGatewayId" } }, "Tags": { "target": "com.amazonaws.ec2#TagList", "traits": { - "aws.protocols#ec2QueryName": "Tags", - "smithy.api#documentation": "

Any tags assigned to the AFI.

", - "smithy.api#xmlName": "tags" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags assigned to the egress-only internet gateway.

", + "smithy.api#xmlName": "tagSet" } - }, - "Public": { - "target": "com.amazonaws.ec2#Boolean", + } + }, + "traits": { + "smithy.api#documentation": "

Describes an egress-only internet gateway.

" + } + }, + "com.amazonaws.ec2#EgressOnlyInternetGatewayId": { + "type": "string" + }, + "com.amazonaws.ec2#EgressOnlyInternetGatewayIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#EgressOnlyInternetGatewayId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#EgressOnlyInternetGatewayList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#EgressOnlyInternetGateway", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#EipAllocationPublicIp": { + "type": "string" + }, + "com.amazonaws.ec2#EipAssociationIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ElasticIpAssociationId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#EkPubKeyFormat": { + "type": "enum", + "members": { + "der": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Public", - "smithy.api#documentation": "

Indicates whether the AFI is public.

", - "smithy.api#xmlName": "public" + "smithy.api#enumValue": "der" } }, - "DataRetentionSupport": { - "target": "com.amazonaws.ec2#Boolean", + "tpmt": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DataRetentionSupport", - "smithy.api#documentation": "

Indicates whether data retention support is enabled for the AFI.

", - "smithy.api#xmlName": "dataRetentionSupport" + "smithy.api#enumValue": "tpmt" + } + } + } + }, + "com.amazonaws.ec2#EkPubKeyType": { + "type": "enum", + "members": { + "RSA_2048": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "rsa-2048" } }, - "InstanceTypes": { - "target": "com.amazonaws.ec2#InstanceTypesList", + "ECC_SEC_P384": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceTypes", - "smithy.api#documentation": "

The instance types supported by the AFI.

", - "smithy.api#xmlName": "instanceTypes" + "smithy.api#enumValue": "ecc-sec-p384" } } - }, + } + }, + "com.amazonaws.ec2#EkPubKeyValue": { + "type": "string", "traits": { - "smithy.api#documentation": "

Describes an Amazon FPGA image (AFI).

" + "smithy.api#sensitive": {} } }, - "com.amazonaws.ec2#FpgaImageAttribute": { + "com.amazonaws.ec2#ElasticGpuAssociation": { "type": "structure", "members": { - "FpgaImageId": { - "target": "com.amazonaws.ec2#String", + "ElasticGpuId": { + "target": "com.amazonaws.ec2#ElasticGpuId", "traits": { - "aws.protocols#ec2QueryName": "FpgaImageId", - "smithy.api#documentation": "

The ID of the AFI.

", - "smithy.api#xmlName": "fpgaImageId" + "aws.protocols#ec2QueryName": "ElasticGpuId", + "smithy.api#documentation": "

The ID of the Elastic Graphics accelerator.

", + "smithy.api#xmlName": "elasticGpuId" } }, - "Name": { + "ElasticGpuAssociationId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Name", - "smithy.api#documentation": "

The name of the AFI.

", - "smithy.api#xmlName": "name" + "aws.protocols#ec2QueryName": "ElasticGpuAssociationId", + "smithy.api#documentation": "

The ID of the association.

", + "smithy.api#xmlName": "elasticGpuAssociationId" } }, - "Description": { + "ElasticGpuAssociationState": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

The description of the AFI.

", - "smithy.api#xmlName": "description" - } - }, - "LoadPermissions": { - "target": "com.amazonaws.ec2#LoadPermissionList", - "traits": { - "aws.protocols#ec2QueryName": "LoadPermissions", - "smithy.api#documentation": "

The load permissions.

", - "smithy.api#xmlName": "loadPermissions" + "aws.protocols#ec2QueryName": "ElasticGpuAssociationState", + "smithy.api#documentation": "

The state of the association between the instance and the\n Elastic Graphics accelerator.

", + "smithy.api#xmlName": "elasticGpuAssociationState" } }, - "ProductCodes": { - "target": "com.amazonaws.ec2#ProductCodeList", + "ElasticGpuAssociationTime": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ProductCodes", - "smithy.api#documentation": "

The product codes.

", - "smithy.api#xmlName": "productCodes" + "aws.protocols#ec2QueryName": "ElasticGpuAssociationTime", + "smithy.api#documentation": "

The time the Elastic Graphics accelerator was associated with the instance.

", + "smithy.api#xmlName": "elasticGpuAssociationTime" } } }, "traits": { - "smithy.api#documentation": "

Describes an Amazon FPGA image (AFI) attribute.

" + "smithy.api#documentation": "\n

Amazon Elastic Graphics reached end of life on January 8, 2024.

\n
\n

Describes the association between an instance and an Elastic Graphics accelerator.

" } }, - "com.amazonaws.ec2#FpgaImageAttributeName": { - "type": "enum", + "com.amazonaws.ec2#ElasticGpuAssociationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ElasticGpuAssociation", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ElasticGpuHealth": { + "type": "structure", "members": { - "description": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "description" - } - }, - "name": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "name" - } - }, - "loadPermission": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "loadPermission" - } - }, - "productCodes": { - "target": "smithy.api#Unit", + "Status": { + "target": "com.amazonaws.ec2#ElasticGpuStatus", "traits": { - "smithy.api#enumValue": "productCodes" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The health status.

", + "smithy.api#xmlName": "status" } } + }, + "traits": { + "smithy.api#documentation": "\n

Amazon Elastic Graphics reached end of life on January 8, 2024.

\n
\n

Describes the status of an Elastic Graphics accelerator.

" } }, - "com.amazonaws.ec2#FpgaImageId": { + "com.amazonaws.ec2#ElasticGpuId": { "type": "string" }, - "com.amazonaws.ec2#FpgaImageIdList": { + "com.amazonaws.ec2#ElasticGpuIdSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#FpgaImageId", + "target": "com.amazonaws.ec2#ElasticGpuId", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#FpgaImageList": { + "com.amazonaws.ec2#ElasticGpuSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#FpgaImage", + "target": "com.amazonaws.ec2#ElasticGpus", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#FpgaImageState": { + "com.amazonaws.ec2#ElasticGpuSpecification": { "type": "structure", "members": { - "Code": { - "target": "com.amazonaws.ec2#FpgaImageStateCode", - "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The state. The following are the possible values:

\n ", - "smithy.api#xmlName": "code" - } - }, - "Message": { + "Type": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Message", - "smithy.api#documentation": "

If the state is failed, this is the error message.

", - "smithy.api#xmlName": "message" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The type of Elastic Graphics accelerator.

", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Describes the state of the bitstream generation process for an Amazon FPGA image (AFI).

" + "smithy.api#documentation": "\n

Amazon Elastic Graphics reached end of life on January 8, 2024.

\n
\n

A specification for an Elastic Graphics accelerator.

" } }, - "com.amazonaws.ec2#FpgaImageStateCode": { - "type": "enum", - "members": { - "pending": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "pending" - } - }, - "failed": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "failed" - } - }, - "available": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "available" - } - }, - "unavailable": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "unavailable" - } + "com.amazonaws.ec2#ElasticGpuSpecificationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ElasticGpuSpecification", + "traits": { + "smithy.api#xmlName": "ElasticGpuSpecification" } } }, - "com.amazonaws.ec2#FpgaInfo": { + "com.amazonaws.ec2#ElasticGpuSpecificationResponse": { "type": "structure", "members": { - "Fpgas": { - "target": "com.amazonaws.ec2#FpgaDeviceInfoList", - "traits": { - "aws.protocols#ec2QueryName": "Fpgas", - "smithy.api#documentation": "

Describes the FPGAs for the instance type.

", - "smithy.api#xmlName": "fpgas" - } - }, - "TotalFpgaMemoryInMiB": { - "target": "com.amazonaws.ec2#totalFpgaMemory", + "Type": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TotalFpgaMemoryInMiB", - "smithy.api#documentation": "

The total memory of all FPGA accelerators for the instance type.

", - "smithy.api#xmlName": "totalFpgaMemoryInMiB" + "aws.protocols#ec2QueryName": "Type", + "smithy.api#documentation": "

Deprecated.

\n \n

Amazon Elastic Graphics reached end of life on January 8, 2024.

\n
", + "smithy.api#xmlName": "type" } } }, "traits": { - "smithy.api#documentation": "

Describes the FPGAs for the instance type.

" + "smithy.api#documentation": "

Deprecated.

\n \n

Amazon Elastic Graphics reached end of life on January 8, 2024.

\n
" } }, - "com.amazonaws.ec2#FreeTierEligibleFlag": { - "type": "boolean" + "com.amazonaws.ec2#ElasticGpuSpecificationResponseList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ElasticGpuSpecificationResponse", + "traits": { + "smithy.api#xmlName": "item" + } + } }, - "com.amazonaws.ec2#GVCDMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 200, - "max": 1000 + "com.amazonaws.ec2#ElasticGpuSpecifications": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ElasticGpuSpecification", + "traits": { + "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#GatewayAssociationState": { + "com.amazonaws.ec2#ElasticGpuState": { "type": "enum", "members": { - "associated": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "associated" - } - }, - "not_associated": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "not-associated" - } - }, - "associating": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "associating" - } - }, - "disassociating": { + "Attached": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "disassociating" + "smithy.api#enumValue": "ATTACHED" } } } }, - "com.amazonaws.ec2#GatewayType": { + "com.amazonaws.ec2#ElasticGpuStatus": { "type": "enum", "members": { - "ipsec_1": { + "Ok": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ipsec.1" + "smithy.api#enumValue": "OK" + } + }, + "Impaired": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IMPAIRED" } } } }, - "com.amazonaws.ec2#GetAssociatedEnclaveCertificateIamRoles": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetAssociatedEnclaveCertificateIamRolesRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetAssociatedEnclaveCertificateIamRolesResult" - }, - "traits": { - "smithy.api#documentation": "

Returns the IAM roles that are associated with the specified ACM (ACM) certificate. \n\t\t\tIt also returns the name of the Amazon S3 bucket and the Amazon S3 object key where the certificate, \n\t\t\tcertificate chain, and encrypted private key bundle are stored, and the ARN of the KMS key \n\t\t\tthat's used to encrypt the private key.

" - } - }, - "com.amazonaws.ec2#GetAssociatedEnclaveCertificateIamRolesRequest": { + "com.amazonaws.ec2#ElasticGpus": { "type": "structure", "members": { - "CertificateArn": { - "target": "com.amazonaws.ec2#CertificateId", + "ElasticGpuId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ARN of the ACM certificate for which to view the associated IAM roles, encryption keys, and Amazon \n\t\t\tS3 object information.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "ElasticGpuId", + "smithy.api#documentation": "

The ID of the Elastic Graphics accelerator.

", + "smithy.api#xmlName": "elasticGpuId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone in the which the Elastic Graphics accelerator resides.

", + "smithy.api#xmlName": "availabilityZone" + } + }, + "ElasticGpuType": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ElasticGpuType", + "smithy.api#documentation": "

The type of Elastic Graphics accelerator.

", + "smithy.api#xmlName": "elasticGpuType" + } + }, + "ElasticGpuHealth": { + "target": "com.amazonaws.ec2#ElasticGpuHealth", + "traits": { + "aws.protocols#ec2QueryName": "ElasticGpuHealth", + "smithy.api#documentation": "

The status of the Elastic Graphics accelerator.

", + "smithy.api#xmlName": "elasticGpuHealth" + } + }, + "ElasticGpuState": { + "target": "com.amazonaws.ec2#ElasticGpuState", + "traits": { + "aws.protocols#ec2QueryName": "ElasticGpuState", + "smithy.api#documentation": "

The state of the Elastic Graphics accelerator.

", + "smithy.api#xmlName": "elasticGpuState" + } + }, + "InstanceId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance to which the Elastic Graphics accelerator is attached.

", + "smithy.api#xmlName": "instanceId" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags assigned to the Elastic Graphics accelerator.

", + "smithy.api#xmlName": "tagSet" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "\n

Amazon Elastic Graphics reached end of life on January 8, 2024.

\n
\n

Describes an Elastic Graphics accelerator.

" } }, - "com.amazonaws.ec2#GetAssociatedEnclaveCertificateIamRolesResult": { + "com.amazonaws.ec2#ElasticInferenceAccelerator": { "type": "structure", "members": { - "AssociatedRoles": { - "target": "com.amazonaws.ec2#AssociatedRolesList", + "Type": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AssociatedRoleSet", - "smithy.api#documentation": "

Information about the associated IAM roles.

", - "smithy.api#xmlName": "associatedRoleSet" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

\n \tThe type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, eia1.xlarge, eia2.medium, eia2.large, and eia2.xlarge.\n

", + "smithy.api#required": {} + } + }, + "Count": { + "target": "com.amazonaws.ec2#ElasticInferenceAcceleratorCount", + "traits": { + "smithy.api#documentation": "

\n The number of elastic inference accelerators to attach to the instance. \n

\n

Default: 1

" } } }, "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#GetAssociatedIpv6PoolCidrs": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetAssociatedIpv6PoolCidrsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetAssociatedIpv6PoolCidrsResult" - }, - "traits": { - "smithy.api#documentation": "

Gets information about the IPv6 CIDR block associations for a specified IPv6 address pool.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "Ipv6CidrAssociations", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "\n

Amazon Elastic Inference is no longer available.

\n
\n

\n Describes an elastic inference accelerator. \n

" } }, - "com.amazonaws.ec2#GetAssociatedIpv6PoolCidrsRequest": { + "com.amazonaws.ec2#ElasticInferenceAcceleratorAssociation": { "type": "structure", "members": { - "PoolId": { - "target": "com.amazonaws.ec2#Ipv6PoolEc2Id", + "ElasticInferenceAcceleratorArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the IPv6 address pool.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "ElasticInferenceAcceleratorArn", + "smithy.api#documentation": "

\n The Amazon Resource Name (ARN) of the elastic inference accelerator. \n

", + "smithy.api#xmlName": "elasticInferenceAcceleratorArn" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "ElasticInferenceAcceleratorAssociationId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "aws.protocols#ec2QueryName": "ElasticInferenceAcceleratorAssociationId", + "smithy.api#documentation": "

\n The ID of the association. \n

", + "smithy.api#xmlName": "elasticInferenceAcceleratorAssociationId" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#Ipv6PoolMaxResults", + "ElasticInferenceAcceleratorAssociationState": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "aws.protocols#ec2QueryName": "ElasticInferenceAcceleratorAssociationState", + "smithy.api#documentation": "

\n The state of the elastic inference accelerator.\n

", + "smithy.api#xmlName": "elasticInferenceAcceleratorAssociationState" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ElasticInferenceAcceleratorAssociationTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "ElasticInferenceAcceleratorAssociationTime", + "smithy.api#documentation": "

\n The time at which the elastic inference accelerator is associated with an instance.\n

", + "smithy.api#xmlName": "elasticInferenceAcceleratorAssociationTime" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "\n

Amazon Elastic Inference is no longer available.

\n
\n

\n Describes the association between an instance and an elastic inference accelerator. \n

" } }, - "com.amazonaws.ec2#GetAssociatedIpv6PoolCidrsResult": { + "com.amazonaws.ec2#ElasticInferenceAcceleratorAssociationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ElasticInferenceAcceleratorAssociation", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ElasticInferenceAcceleratorCount": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1 + } + } + }, + "com.amazonaws.ec2#ElasticInferenceAccelerators": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ElasticInferenceAccelerator", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ElasticIpAssociationId": { + "type": "string" + }, + "com.amazonaws.ec2#EnaSrdSpecification": { "type": "structure", "members": { - "Ipv6CidrAssociations": { - "target": "com.amazonaws.ec2#Ipv6CidrAssociationSet", + "EnaSrdEnabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Ipv6CidrAssociationSet", - "smithy.api#documentation": "

Information about the IPv6 CIDR block associations.

", - "smithy.api#xmlName": "ipv6CidrAssociationSet" + "smithy.api#documentation": "

Indicates whether ENA Express is enabled for the network interface.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "EnaSrdUdpSpecification": { + "target": "com.amazonaws.ec2#EnaSrdUdpSpecification", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#documentation": "

Configures ENA Express for UDP network traffic.

" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology to increase the \n\t\t\tmaximum bandwidth used per stream and minimize tail latency of network traffic between EC2 instances. \n\t\t\tWith ENA Express, you can communicate between two EC2 instances in the same subnet within the same \n\t\t\taccount, or in different accounts. Both sending and receiving instances must have ENA Express enabled.

\n

To improve the reliability of network packet delivery, ENA Express reorders network packets on the \n\t\t\treceiving end by default. However, some UDP-based applications are designed to handle network packets \n\t\t\tthat are out of order to reduce the overhead for packet delivery at the network layer. When ENA Express \n\t\t\tis enabled, you can specify whether UDP network traffic uses it.

" } }, - "com.amazonaws.ec2#GetAwsNetworkPerformanceData": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetAwsNetworkPerformanceDataRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetAwsNetworkPerformanceDataResult" + "com.amazonaws.ec2#EnaSrdSpecificationRequest": { + "type": "structure", + "members": { + "EnaSrdEnabled": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Specifies whether ENA Express is enabled for the network interface when you launch an\n instance.

" + } + }, + "EnaSrdUdpSpecification": { + "target": "com.amazonaws.ec2#EnaSrdUdpSpecificationRequest", + "traits": { + "smithy.api#documentation": "

Contains ENA Express settings for UDP network traffic for the network interface\n attached to the instance.

" + } + } }, "traits": { - "smithy.api#documentation": "

Gets network performance data.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "DataResponses", - "pageSize": "MaxResults" + "smithy.api#documentation": "

Launch instances with ENA Express settings configured from your launch\n template.

" + } + }, + "com.amazonaws.ec2#EnaSrdSupported": { + "type": "boolean" + }, + "com.amazonaws.ec2#EnaSrdUdpSpecification": { + "type": "structure", + "members": { + "EnaSrdUdpEnabled": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, \n\t\t\tyou must first enable ENA Express.

" + } } + }, + "traits": { + "smithy.api#documentation": "

ENA Express is compatible with both TCP and UDP transport protocols. When it's enabled, TCP traffic \n\t\t\tautomatically uses it. However, some UDP-based applications are designed to handle network packets that are \n\t\t\tout of order, without a need for retransmission, such as live video broadcasting or other near-real-time \n\t\t\tapplications. For UDP traffic, you can specify whether to use ENA Express, based on your application \n\t\t\tenvironment needs.

" } }, - "com.amazonaws.ec2#GetAwsNetworkPerformanceDataRequest": { + "com.amazonaws.ec2#EnaSrdUdpSpecificationRequest": { "type": "structure", "members": { - "DataQueries": { - "target": "com.amazonaws.ec2#DataQueries", + "EnaSrdUdpEnabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

A list of network performance data queries.

", - "smithy.api#xmlName": "DataQuery" + "smithy.api#documentation": "

Indicates whether UDP traffic uses ENA Express for your instance. To ensure that UDP\n traffic can use ENA Express when you launch an instance, you must also set EnaSrdEnabled in the EnaSrdSpecificationRequest to true.

" } - }, - "StartTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + } + }, + "traits": { + "smithy.api#documentation": "

Configures ENA Express for UDP network traffic from your launch template.

" + } + }, + "com.amazonaws.ec2#EnaSupport": { + "type": "enum", + "members": { + "unsupported": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The starting time for the performance data request. The starting time must be formatted\n as yyyy-mm-ddThh:mm:ss. For example, 2022-06-10T12:00:00.000Z.

" + "smithy.api#enumValue": "unsupported" } }, - "EndTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "supported": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ending time for the performance data request. The end time must be formatted as yyyy-mm-ddThh:mm:ss. For example, 2022-06-12T12:00:00.000Z.

" + "smithy.api#enumValue": "supported" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", + "required": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n To retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#enumValue": "required" + } + } + } + }, + "com.amazonaws.ec2#EnableAddressTransfer": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#EnableAddressTransferRequest" + }, + "output": { + "target": "com.amazonaws.ec2#EnableAddressTransferResult" + }, + "traits": { + "smithy.api#documentation": "

Enables Elastic IP address transfer. For more information, see Transfer Elastic IP addresses in the Amazon VPC User Guide.

" + } + }, + "com.amazonaws.ec2#EnableAddressTransferRequest": { + "type": "structure", + "members": { + "AllocationId": { + "target": "com.amazonaws.ec2#AllocationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The allocation ID of an Elastic IP address.

", + "smithy.api#required": {} } }, - "NextToken": { + "TransferAccountId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the account that you want to transfer the Elastic IP address to.

", + "smithy.api#required": {} } }, "DryRun": { @@ -51041,23 +52566,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetAwsNetworkPerformanceDataResult": { + "com.amazonaws.ec2#EnableAddressTransferResult": { "type": "structure", "members": { - "DataResponses": { - "target": "com.amazonaws.ec2#DataResponses", - "traits": { - "aws.protocols#ec2QueryName": "DataResponseSet", - "smithy.api#documentation": "

The list of data responses.

", - "smithy.api#xmlName": "dataResponseSet" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "AddressTransfer": { + "target": "com.amazonaws.ec2#AddressTransfer", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "AddressTransfer", + "smithy.api#documentation": "

An Elastic IP address transfer.

", + "smithy.api#xmlName": "addressTransfer" } } }, @@ -51065,45 +52582,33 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetCapacityReservationUsage": { + "com.amazonaws.ec2#EnableAllowedImagesSettings": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetCapacityReservationUsageRequest" + "target": "com.amazonaws.ec2#EnableAllowedImagesSettingsRequest" }, "output": { - "target": "com.amazonaws.ec2#GetCapacityReservationUsageResult" + "target": "com.amazonaws.ec2#EnableAllowedImagesSettingsResult" }, "traits": { - "smithy.api#documentation": "

Gets usage information about a Capacity Reservation. If the Capacity Reservation is shared, it shows usage information for the Capacity Reservation owner \n\t\t\tand each Amazon Web Services account that is currently using the shared capacity. If the Capacity Reservation is not shared, it shows only \n\t\t\tthe Capacity Reservation owner's usage.

" + "smithy.api#documentation": "

Enables Allowed AMIs for your account in the specified Amazon Web Services Region. Two values are\n accepted:

\n \n \n

The Allowed AMIs feature does not restrict the AMIs owned by your account. Regardless of\n the criteria you set, the AMIs created by your account will always be discoverable and\n usable by users in your account.

\n
\n

For more information, see Control the discovery and use of AMIs in\n Amazon EC2 with Allowed AMIs in\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#GetCapacityReservationUsageRequest": { + "com.amazonaws.ec2#EnableAllowedImagesSettingsRequest": { "type": "structure", "members": { - "CapacityReservationId": { - "target": "com.amazonaws.ec2#CapacityReservationId", + "AllowedImagesSettingsState": { + "target": "com.amazonaws.ec2#AllowedImagesSettingsEnabledState", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Capacity Reservation.

", + "smithy.api#documentation": "

Specify enabled to apply the image criteria specified by the Allowed AMIs\n settings. Specify audit-mode so that you can check which AMIs will be allowed or\n not allowed by the image criteria.

", "smithy.api#required": {} } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#GetCapacityReservationUsageRequestMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, \n see Pagination.

" - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -51111,72 +52616,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetCapacityReservationUsageRequestMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#GetCapacityReservationUsageResult": { + "com.amazonaws.ec2#EnableAllowedImagesSettingsResult": { "type": "structure", "members": { - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" - } - }, - "CapacityReservationId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationId", - "smithy.api#documentation": "

The ID of the Capacity Reservation.

", - "smithy.api#xmlName": "capacityReservationId" - } - }, - "InstanceType": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The type of instance for which the Capacity Reservation reserves capacity.

", - "smithy.api#xmlName": "instanceType" - } - }, - "TotalInstanceCount": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "TotalInstanceCount", - "smithy.api#documentation": "

The number of instances for which the Capacity Reservation reserves capacity.

", - "smithy.api#xmlName": "totalInstanceCount" - } - }, - "AvailableInstanceCount": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "AvailableInstanceCount", - "smithy.api#documentation": "

The remaining capacity. Indicates the number of instances that can be launched in the Capacity Reservation.

", - "smithy.api#xmlName": "availableInstanceCount" - } - }, - "State": { - "target": "com.amazonaws.ec2#CapacityReservationState", - "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The current state of the Capacity Reservation. A Capacity Reservation can be in one of the following states:

\n ", - "smithy.api#xmlName": "state" - } - }, - "InstanceUsages": { - "target": "com.amazonaws.ec2#InstanceUsageSet", + "AllowedImagesSettingsState": { + "target": "com.amazonaws.ec2#AllowedImagesSettingsEnabledState", "traits": { - "aws.protocols#ec2QueryName": "InstanceUsageSet", - "smithy.api#documentation": "

Information about the Capacity Reservation usage.

", - "smithy.api#xmlName": "instanceUsageSet" + "aws.protocols#ec2QueryName": "AllowedImagesSettingsState", + "smithy.api#documentation": "

Returns enabled or audit-mode if the request succeeds;\n otherwise, it returns an error.

", + "smithy.api#xmlName": "allowedImagesSettingsState" } } }, @@ -51184,46 +52632,43 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetCoipPoolUsage": { + "com.amazonaws.ec2#EnableAwsNetworkPerformanceMetricSubscription": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetCoipPoolUsageRequest" + "target": "com.amazonaws.ec2#EnableAwsNetworkPerformanceMetricSubscriptionRequest" }, "output": { - "target": "com.amazonaws.ec2#GetCoipPoolUsageResult" + "target": "com.amazonaws.ec2#EnableAwsNetworkPerformanceMetricSubscriptionResult" }, "traits": { - "smithy.api#documentation": "

Describes the allocations from the specified customer-owned address pool.

" + "smithy.api#documentation": "

Enables Infrastructure Performance subscriptions.

" } }, - "com.amazonaws.ec2#GetCoipPoolUsageRequest": { + "com.amazonaws.ec2#EnableAwsNetworkPerformanceMetricSubscriptionRequest": { "type": "structure", "members": { - "PoolId": { - "target": "com.amazonaws.ec2#Ipv4PoolCoipId", + "Source": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the address pool.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The source Region (like us-east-1) or Availability Zone ID (like use1-az1) that the metric subscription is enabled for. If you use Availability Zone IDs, the Source and Destination Availability Zones must be in the same Region.

" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "Destination": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

The target Region (like us-east-2) or Availability Zone ID (like use2-az2) that the metric subscription is enabled for. If you use Availability Zone IDs, the Source and Destination Availability Zones must be in the same Region.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#CoipPoolMaxResults", + "Metric": { + "target": "com.amazonaws.ec2#MetricType", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

The metric used for the enabled subscription.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "Statistic": { + "target": "com.amazonaws.ec2#StatisticType", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The statistic used for the enabled subscription.

" } }, "DryRun": { @@ -51237,39 +52682,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetCoipPoolUsageResult": { + "com.amazonaws.ec2#EnableAwsNetworkPerformanceMetricSubscriptionResult": { "type": "structure", "members": { - "CoipPoolId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "CoipPoolId", - "smithy.api#documentation": "

The ID of the customer-owned address pool.

", - "smithy.api#xmlName": "coipPoolId" - } - }, - "CoipAddressUsages": { - "target": "com.amazonaws.ec2#CoipAddressUsageSet", - "traits": { - "aws.protocols#ec2QueryName": "CoipAddressUsageSet", - "smithy.api#documentation": "

Information about the address usage.

", - "smithy.api#xmlName": "coipAddressUsageSet" - } - }, - "LocalGatewayRouteTableId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableId", - "smithy.api#documentation": "

The ID of the local gateway route table.

", - "smithy.api#xmlName": "localGatewayRouteTableId" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "Output": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "Output", + "smithy.api#documentation": "

Indicates whether the subscribe action was successful.

", + "smithy.api#xmlName": "output" } } }, @@ -51277,55 +52698,25 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetConsoleOutput": { + "com.amazonaws.ec2#EnableEbsEncryptionByDefault": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetConsoleOutputRequest" + "target": "com.amazonaws.ec2#EnableEbsEncryptionByDefaultRequest" }, "output": { - "target": "com.amazonaws.ec2#GetConsoleOutputResult" + "target": "com.amazonaws.ec2#EnableEbsEncryptionByDefaultResult" }, "traits": { - "smithy.api#documentation": "

Gets the console output for the specified instance. For Linux instances, the instance\n console output displays the exact console output that would normally be displayed on a\n physical monitor attached to a computer. For Windows instances, the instance console\n output includes the last three system event log errors.

\n

By default, the console output returns buffered information that was posted shortly\n after an instance transition state (start, stop, reboot, or terminate). This information\n is available for at least one hour after the most recent post. Only the most recent 64\n KB of console output is available.

\n

You can optionally retrieve the latest serial console output at any time during the\n instance lifecycle. This option is supported on instance types that use the Nitro\n hypervisor.

\n

For more information, see Instance\n console output in the Amazon EC2 User Guide.

", - "smithy.api#examples": [ - { - "title": "To get the console output", - "documentation": "This example gets the console output for the specified instance.", - "input": { - "InstanceId": "i-1234567890abcdef0" - }, - "output": { - "InstanceId": "i-1234567890abcdef0", - "Output": "...", - "Timestamp": "2018-05-25T21:23:53.000Z" - } - } - ] + "smithy.api#documentation": "

Enables EBS encryption by default for your account in the current Region.

\n

After you enable encryption by default, the EBS volumes that you create are\n \talways encrypted, either using the default KMS key or the KMS key that you specified\n when you created each volume. For more information, see Amazon EBS encryption in the\n Amazon EBS User Guide.

\n

Enabling encryption by default has no effect on the encryption status of your \n existing volumes.

\n

After you enable encryption by default, you can no longer launch instances\n using instance types that do not support encryption. For more information, see Supported\n instance types.

" } }, - "com.amazonaws.ec2#GetConsoleOutputRequest": { + "com.amazonaws.ec2#EnableEbsEncryptionByDefaultRequest": { "type": "structure", "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#required": {} - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" - } - }, - "Latest": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

When enabled, retrieves the latest console output for the instance.

\n

Default: disabled (false)

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -51333,31 +52724,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetConsoleOutputResult": { + "com.amazonaws.ec2#EnableEbsEncryptionByDefaultResult": { "type": "structure", "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#String", + "EbsEncryptionByDefault": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#xmlName": "instanceId" - } - }, - "Output": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Output", - "smithy.api#documentation": "

The console output, base64-encoded. If you are using a command line tool, the tool\n decodes the output for you.

", - "smithy.api#xmlName": "output" - } - }, - "Timestamp": { - "target": "com.amazonaws.ec2#DateTime", - "traits": { - "aws.protocols#ec2QueryName": "Timestamp", - "smithy.api#documentation": "

The time at which the output was last updated.

", - "smithy.api#xmlName": "timestamp" + "aws.protocols#ec2QueryName": "EbsEncryptionByDefault", + "smithy.api#documentation": "

The updated status of encryption by default.

", + "smithy.api#xmlName": "ebsEncryptionByDefault" } } }, @@ -51365,39 +52740,57 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetConsoleScreenshot": { + "com.amazonaws.ec2#EnableFastLaunch": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetConsoleScreenshotRequest" + "target": "com.amazonaws.ec2#EnableFastLaunchRequest" }, "output": { - "target": "com.amazonaws.ec2#GetConsoleScreenshotResult" + "target": "com.amazonaws.ec2#EnableFastLaunchResult" }, "traits": { - "smithy.api#documentation": "

Retrieve a JPG-format screenshot of a running instance to help with\n troubleshooting.

\n

The returned content is Base64-encoded.

\n

For more information, see Instance console output in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

When you enable Windows fast launch for a Windows AMI, images are pre-provisioned, using\n snapshots to launch instances up to 65% faster. To create the optimized Windows image, Amazon EC2\n launches an instance and runs through Sysprep steps, rebooting as required. Then it creates a\n set of reserved snapshots that are used for subsequent launches. The reserved snapshots are\n automatically replenished as they are used, depending on your settings for launch\n frequency.

\n \n

You can only change these settings for Windows AMIs that you own or that have been\n shared with you.

\n
" } }, - "com.amazonaws.ec2#GetConsoleScreenshotRequest": { + "com.amazonaws.ec2#EnableFastLaunchRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Specify the ID of the image for which to enable Windows fast launch.

", + "smithy.api#required": {} } }, - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", + "ResourceType": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The type of resource to use for pre-provisioning the AMI for Windows fast launch.\n Supported values include: snapshot, which is the default value.

" } }, - "WakeUp": { + "SnapshotConfiguration": { + "target": "com.amazonaws.ec2#FastLaunchSnapshotConfigurationRequest", + "traits": { + "smithy.api#documentation": "

Configuration settings for creating and managing the snapshots that are used for\n pre-provisioning the AMI for Windows fast launch. The associated ResourceType\n must be snapshot.

" + } + }, + "LaunchTemplate": { + "target": "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationRequest", + "traits": { + "smithy.api#documentation": "

The launch template to use when launching Windows instances from pre-provisioned\n snapshots. Launch template parameters can include either the name or ID of the launch\n template, but not both.

" + } + }, + "MaxParallelLaunches": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The maximum number of instances that Amazon EC2 can launch at the same time to create\n pre-provisioned snapshots for Windows fast launch. Value must be 6 or\n greater.

" + } + }, + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

When set to true, acts as keystroke input and wakes up an instance that's\n in standby or \"sleep\" mode.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -51405,23 +52798,79 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetConsoleScreenshotResult": { + "com.amazonaws.ec2#EnableFastLaunchResult": { "type": "structure", "members": { - "ImageData": { + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", + "traits": { + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The image ID that identifies the AMI for which Windows fast launch was enabled.

", + "smithy.api#xmlName": "imageId" + } + }, + "ResourceType": { + "target": "com.amazonaws.ec2#FastLaunchResourceType", + "traits": { + "aws.protocols#ec2QueryName": "ResourceType", + "smithy.api#documentation": "

The type of resource that was defined for pre-provisioning the AMI for Windows fast\n launch.

", + "smithy.api#xmlName": "resourceType" + } + }, + "SnapshotConfiguration": { + "target": "com.amazonaws.ec2#FastLaunchSnapshotConfigurationResponse", + "traits": { + "aws.protocols#ec2QueryName": "SnapshotConfiguration", + "smithy.api#documentation": "

Settings to create and manage the pre-provisioned snapshots that Amazon EC2 uses for faster\n launches from the Windows AMI. This property is returned when the associated\n resourceType is snapshot.

", + "smithy.api#xmlName": "snapshotConfiguration" + } + }, + "LaunchTemplate": { + "target": "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationResponse", + "traits": { + "aws.protocols#ec2QueryName": "LaunchTemplate", + "smithy.api#documentation": "

The launch template that is used when launching Windows instances from pre-provisioned\n snapshots.

", + "smithy.api#xmlName": "launchTemplate" + } + }, + "MaxParallelLaunches": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "MaxParallelLaunches", + "smithy.api#documentation": "

The maximum number of instances that Amazon EC2 can launch at the same time to create\n pre-provisioned snapshots for Windows fast launch.

", + "smithy.api#xmlName": "maxParallelLaunches" + } + }, + "OwnerId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ImageData", - "smithy.api#documentation": "

The data that comprises the image.

", - "smithy.api#xmlName": "imageData" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The owner ID for the AMI for which Windows fast launch was enabled.

", + "smithy.api#xmlName": "ownerId" } }, - "InstanceId": { + "State": { + "target": "com.amazonaws.ec2#FastLaunchStateCode", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of Windows fast launch for the specified AMI.

", + "smithy.api#xmlName": "state" + } + }, + "StateTransitionReason": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#xmlName": "instanceId" + "aws.protocols#ec2QueryName": "StateTransitionReason", + "smithy.api#documentation": "

The reason that the state changed for Windows fast launch for the AMI.

", + "smithy.api#xmlName": "stateTransitionReason" + } + }, + "StateTransitionTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "StateTransitionTime", + "smithy.api#documentation": "

The time that the state changed for Windows fast launch for the AMI.

", + "smithy.api#xmlName": "stateTransitionTime" } } }, @@ -51429,71 +52878,234 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetDefaultCreditSpecification": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetDefaultCreditSpecificationRequest" + "com.amazonaws.ec2#EnableFastSnapshotRestoreErrorItem": { + "type": "structure", + "members": { + "SnapshotId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The ID of the snapshot.

", + "smithy.api#xmlName": "snapshotId" + } + }, + "FastSnapshotRestoreStateErrors": { + "target": "com.amazonaws.ec2#EnableFastSnapshotRestoreStateErrorSet", + "traits": { + "aws.protocols#ec2QueryName": "FastSnapshotRestoreStateErrorSet", + "smithy.api#documentation": "

The errors.

", + "smithy.api#xmlName": "fastSnapshotRestoreStateErrorSet" + } + } }, - "output": { - "target": "com.amazonaws.ec2#GetDefaultCreditSpecificationResult" + "traits": { + "smithy.api#documentation": "

Contains information about the errors that occurred when enabling fast snapshot restores.

" + } + }, + "com.amazonaws.ec2#EnableFastSnapshotRestoreErrorSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#EnableFastSnapshotRestoreErrorItem", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#EnableFastSnapshotRestoreStateError": { + "type": "structure", + "members": { + "Code": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The error code.

", + "smithy.api#xmlName": "code" + } + }, + "Message": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Message", + "smithy.api#documentation": "

The error message.

", + "smithy.api#xmlName": "message" + } + } }, "traits": { - "smithy.api#documentation": "

Describes the default credit option for CPU usage of a burstable performance instance\n family.

\n

For more information, see Burstable\n performance instances in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Describes an error that occurred when enabling fast snapshot restores.

" } }, - "com.amazonaws.ec2#GetDefaultCreditSpecificationRequest": { + "com.amazonaws.ec2#EnableFastSnapshotRestoreStateErrorItem": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone.

", + "smithy.api#xmlName": "availabilityZone" } }, - "InstanceFamily": { - "target": "com.amazonaws.ec2#UnlimitedSupportedInstanceFamily", + "Error": { + "target": "com.amazonaws.ec2#EnableFastSnapshotRestoreStateError", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The instance family.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Error", + "smithy.api#documentation": "

The error.

", + "smithy.api#xmlName": "error" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Contains information about an error that occurred when enabling fast snapshot restores.

" } }, - "com.amazonaws.ec2#GetDefaultCreditSpecificationResult": { + "com.amazonaws.ec2#EnableFastSnapshotRestoreStateErrorSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#EnableFastSnapshotRestoreStateErrorItem", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#EnableFastSnapshotRestoreSuccessItem": { "type": "structure", "members": { - "InstanceFamilyCreditSpecification": { - "target": "com.amazonaws.ec2#InstanceFamilyCreditSpecification", + "SnapshotId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "InstanceFamilyCreditSpecification", - "smithy.api#documentation": "

The default credit option for CPU usage of the instance family.

", - "smithy.api#xmlName": "instanceFamilyCreditSpecification" + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The ID of the snapshot.

", + "smithy.api#xmlName": "snapshotId" + } + }, + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone.

", + "smithy.api#xmlName": "availabilityZone" + } + }, + "State": { + "target": "com.amazonaws.ec2#FastSnapshotRestoreStateCode", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of fast snapshot restores.

", + "smithy.api#xmlName": "state" + } + }, + "StateTransitionReason": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "StateTransitionReason", + "smithy.api#documentation": "

The reason for the state transition. The possible values are as follows:

\n ", + "smithy.api#xmlName": "stateTransitionReason" + } + }, + "OwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that enabled fast snapshot restores on the snapshot.

", + "smithy.api#xmlName": "ownerId" + } + }, + "OwnerAlias": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OwnerAlias", + "smithy.api#documentation": "

The Amazon Web Services owner alias that enabled fast snapshot restores on the snapshot. This is intended for future use.

", + "smithy.api#xmlName": "ownerAlias" + } + }, + "EnablingTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "EnablingTime", + "smithy.api#documentation": "

The time at which fast snapshot restores entered the enabling state.

", + "smithy.api#xmlName": "enablingTime" + } + }, + "OptimizingTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "OptimizingTime", + "smithy.api#documentation": "

The time at which fast snapshot restores entered the optimizing state.

", + "smithy.api#xmlName": "optimizingTime" + } + }, + "EnabledTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "EnabledTime", + "smithy.api#documentation": "

The time at which fast snapshot restores entered the enabled state.

", + "smithy.api#xmlName": "enabledTime" + } + }, + "DisablingTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "DisablingTime", + "smithy.api#documentation": "

The time at which fast snapshot restores entered the disabling state.

", + "smithy.api#xmlName": "disablingTime" + } + }, + "DisabledTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "DisabledTime", + "smithy.api#documentation": "

The time at which fast snapshot restores entered the disabled state.

", + "smithy.api#xmlName": "disabledTime" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes fast snapshot restores that were successfully enabled.

" } }, - "com.amazonaws.ec2#GetEbsDefaultKmsKeyId": { + "com.amazonaws.ec2#EnableFastSnapshotRestoreSuccessSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#EnableFastSnapshotRestoreSuccessItem", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#EnableFastSnapshotRestores": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetEbsDefaultKmsKeyIdRequest" + "target": "com.amazonaws.ec2#EnableFastSnapshotRestoresRequest" }, "output": { - "target": "com.amazonaws.ec2#GetEbsDefaultKmsKeyIdResult" + "target": "com.amazonaws.ec2#EnableFastSnapshotRestoresResult" }, "traits": { - "smithy.api#documentation": "

Describes the default KMS key for EBS encryption by default for your account in this Region. \n \t\tYou can change the default KMS key for encryption by default using ModifyEbsDefaultKmsKeyId or\n ResetEbsDefaultKmsKeyId.

\n

For more information, see Amazon EBS encryption\n in the Amazon EBS User Guide.

" + "smithy.api#documentation": "

Enables fast snapshot restores for the specified snapshots in the specified Availability Zones.

\n

You get the full benefit of fast snapshot restores after they enter the enabled state.

\n

For more information, see Amazon EBS fast snapshot\n restore in the Amazon EBS User Guide.

" } }, - "com.amazonaws.ec2#GetEbsDefaultKmsKeyIdRequest": { + "com.amazonaws.ec2#EnableFastSnapshotRestoresRequest": { "type": "structure", "members": { + "AvailabilityZones": { + "target": "com.amazonaws.ec2#AvailabilityZoneStringList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

One or more Availability Zones. For example, us-east-2a.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "AvailabilityZone" + } + }, + "SourceSnapshotIds": { + "target": "com.amazonaws.ec2#SnapshotIdStringList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of one or more snapshots. For example, snap-1234567890abcdef0. You can specify\n a snapshot that was shared with you from another Amazon Web Services account.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "SourceSnapshotId" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { @@ -51505,15 +53117,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetEbsDefaultKmsKeyIdResult": { + "com.amazonaws.ec2#EnableFastSnapshotRestoresResult": { "type": "structure", "members": { - "KmsKeyId": { - "target": "com.amazonaws.ec2#String", + "Successful": { + "target": "com.amazonaws.ec2#EnableFastSnapshotRestoreSuccessSet", "traits": { - "aws.protocols#ec2QueryName": "KmsKeyId", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the default KMS key for encryption by default.

", - "smithy.api#xmlName": "kmsKeyId" + "aws.protocols#ec2QueryName": "Successful", + "smithy.api#documentation": "

Information about the snapshots for which fast snapshot restores were successfully enabled.

", + "smithy.api#xmlName": "successful" + } + }, + "Unsuccessful": { + "target": "com.amazonaws.ec2#EnableFastSnapshotRestoreErrorSet", + "traits": { + "aws.protocols#ec2QueryName": "Unsuccessful", + "smithy.api#documentation": "

Information about the snapshots for which fast snapshot restores could not be enabled.

", + "smithy.api#xmlName": "unsuccessful" } } }, @@ -51521,25 +53141,45 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetEbsEncryptionByDefault": { + "com.amazonaws.ec2#EnableImage": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetEbsEncryptionByDefaultRequest" + "target": "com.amazonaws.ec2#EnableImageRequest" }, "output": { - "target": "com.amazonaws.ec2#GetEbsEncryptionByDefaultResult" + "target": "com.amazonaws.ec2#EnableImageResult" }, "traits": { - "smithy.api#documentation": "

Describes whether EBS encryption by default is enabled for your account in the current\n Region.

\n

For more information, see Amazon EBS encryption\n in the Amazon EBS User Guide.

" + "smithy.api#documentation": "

Re-enables a disabled AMI. The re-enabled AMI is marked as available and can\n be used for instance launches, appears in describe operations, and can be shared. Amazon Web Services\n accounts, organizations, and Organizational Units that lost access to the AMI when it was\n disabled do not regain access automatically. Once the AMI is available, it can be shared with\n them again.

\n

Only the AMI owner can re-enable a disabled AMI.

\n

For more information, see Disable an Amazon EC2 AMI\n in the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#GetEbsEncryptionByDefaultRequest": { + "com.amazonaws.ec2#EnableImageBlockPublicAccess": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#EnableImageBlockPublicAccessRequest" + }, + "output": { + "target": "com.amazonaws.ec2#EnableImageBlockPublicAccessResult" + }, + "traits": { + "smithy.api#documentation": "

Enables block public access for AMIs at the account level in the\n specified Amazon Web Services Region. This prevents the public sharing of your AMIs. However, if you already\n have public AMIs, they will remain publicly available.

\n

The API can take up to 10 minutes to configure this setting. During this time, if you run\n GetImageBlockPublicAccessState, the response will be unblocked. When\n the API has completed the configuration, the response will be\n block-new-sharing.

\n

For more information, see Block\n public access to your AMIs in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#EnableImageBlockPublicAccessRequest": { "type": "structure", "members": { + "ImageBlockPublicAccessState": { + "target": "com.amazonaws.ec2#ImageBlockPublicAccessEnabledState", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Specify block-new-sharing to enable block public access for AMIs at the\n account level in the specified Region. This will block any attempt to publicly share your AMIs\n in the specified Region.

", + "smithy.api#required": {} + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -51547,23 +53187,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetEbsEncryptionByDefaultResult": { + "com.amazonaws.ec2#EnableImageBlockPublicAccessResult": { "type": "structure", "members": { - "EbsEncryptionByDefault": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "EbsEncryptionByDefault", - "smithy.api#documentation": "

Indicates whether encryption by default is enabled.

", - "smithy.api#xmlName": "ebsEncryptionByDefault" - } - }, - "SseType": { - "target": "com.amazonaws.ec2#SSEType", + "ImageBlockPublicAccessState": { + "target": "com.amazonaws.ec2#ImageBlockPublicAccessEnabledState", "traits": { - "aws.protocols#ec2QueryName": "SseType", - "smithy.api#documentation": "

Reserved for future use.

", - "smithy.api#xmlName": "sseType" + "aws.protocols#ec2QueryName": "ImageBlockPublicAccessState", + "smithy.api#documentation": "

Returns block-new-sharing if the request succeeds; otherwise, it returns an\n error.

", + "smithy.api#xmlName": "imageBlockPublicAccessState" } } }, @@ -51571,50 +53203,41 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetFlowLogsIntegrationTemplate": { + "com.amazonaws.ec2#EnableImageDeprecation": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetFlowLogsIntegrationTemplateRequest" + "target": "com.amazonaws.ec2#EnableImageDeprecationRequest" }, "output": { - "target": "com.amazonaws.ec2#GetFlowLogsIntegrationTemplateResult" + "target": "com.amazonaws.ec2#EnableImageDeprecationResult" }, "traits": { - "smithy.api#documentation": "

Generates a CloudFormation template that streamlines and automates the integration of VPC flow logs \n with Amazon Athena. This make it easier for you to query and gain insights from VPC flow logs data. \n Based on the information that you provide, we configure resources in the template to do the following:

\n \n \n

\n GetFlowLogsIntegrationTemplate does not support integration between\n Amazon Web Services Transit Gateway Flow Logs and Amazon Athena.

\n
" + "smithy.api#documentation": "

Enables deprecation of the specified AMI at the specified date and time.

\n

For more information, see Deprecate an AMI in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#GetFlowLogsIntegrationTemplateRequest": { + "com.amazonaws.ec2#EnableImageDeprecationRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "FlowLogId": { - "target": "com.amazonaws.ec2#VpcFlowLogId", + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the flow log.

", + "smithy.api#documentation": "

The ID of the AMI.

", "smithy.api#required": {} } }, - "ConfigDeliveryS3DestinationArn": { - "target": "com.amazonaws.ec2#String", + "DeprecateAt": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

To store the CloudFormation template in Amazon S3, specify the location in Amazon S3.

", + "smithy.api#documentation": "

The date and time to deprecate the AMI, in UTC, in the following format:\n YYYY-MM-DDTHH:MM:SSZ.\n If you specify a value for seconds, Amazon EC2 rounds the seconds to the nearest minute.

\n

You can’t specify a date in the past. The upper limit for DeprecateAt is 10\n years from now, except for public AMIs, where the upper limit is 2 years from the creation\n date.

", "smithy.api#required": {} } }, - "IntegrateServices": { - "target": "com.amazonaws.ec2#IntegrateServices", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Information about the service integration.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "IntegrateService" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -51622,15 +53245,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetFlowLogsIntegrationTemplateResult": { + "com.amazonaws.ec2#EnableImageDeprecationResult": { "type": "structure", "members": { - "Result": { - "target": "com.amazonaws.ec2#String", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Result", - "smithy.api#documentation": "

The generated CloudFormation template.

", - "smithy.api#xmlName": "result" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } } }, @@ -51638,51 +53261,39 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetGroupsForCapacityReservation": { + "com.amazonaws.ec2#EnableImageDeregistrationProtection": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetGroupsForCapacityReservationRequest" + "target": "com.amazonaws.ec2#EnableImageDeregistrationProtectionRequest" }, "output": { - "target": "com.amazonaws.ec2#GetGroupsForCapacityReservationResult" + "target": "com.amazonaws.ec2#EnableImageDeregistrationProtectionResult" }, "traits": { - "smithy.api#documentation": "

Lists the resource groups to which a Capacity Reservation has been added.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "CapacityReservationGroups", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Enables deregistration protection for an AMI. When deregistration protection is enabled,\n the AMI can't be deregistered.

\n

To allow the AMI to be deregistered, you must first disable deregistration protection.

\n

For more information, see Protect an\n Amazon EC2 AMI from deregistration in the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#GetGroupsForCapacityReservationRequest": { + "com.amazonaws.ec2#EnableImageDeregistrationProtectionRequest": { "type": "structure", "members": { - "CapacityReservationId": { - "target": "com.amazonaws.ec2#CapacityReservationId", + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Capacity Reservation. If you specify a Capacity Reservation that is shared \n\t\t\twith you, the operation returns only Capacity Reservation groups that you own.

", + "smithy.api#documentation": "

The ID of the AMI.

", "smithy.api#required": {} } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#GetGroupsForCapacityReservationRequestMaxResults", + "WithCooldown": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, \n see Pagination.

" + "smithy.api#documentation": "

If true, enforces deregistration protection for 24 hours after deregistration\n protection is disabled.

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -51690,32 +53301,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetGroupsForCapacityReservationRequestMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#GetGroupsForCapacityReservationResult": { + "com.amazonaws.ec2#EnableImageDeregistrationProtectionResult": { "type": "structure", "members": { - "NextToken": { + "Return": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" - } - }, - "CapacityReservationGroups": { - "target": "com.amazonaws.ec2#CapacityReservationGroupSet", - "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationGroupSet", - "smithy.api#documentation": "

Information about the resource groups to which the Capacity Reservation has been added.

", - "smithy.api#xmlName": "capacityReservationGroupSet" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } } }, @@ -51723,35 +53317,21 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetHostReservationPurchasePreview": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetHostReservationPurchasePreviewRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetHostReservationPurchasePreviewResult" - }, - "traits": { - "smithy.api#documentation": "

Preview a reservation purchase with configurations that match those of your Dedicated\n Host. You must have active Dedicated Hosts in your account before you purchase a\n reservation.

\n

This is a preview of the PurchaseHostReservation action and does not\n result in the offering being purchased.

" - } - }, - "com.amazonaws.ec2#GetHostReservationPurchasePreviewRequest": { + "com.amazonaws.ec2#EnableImageRequest": { "type": "structure", "members": { - "HostIdSet": { - "target": "com.amazonaws.ec2#RequestHostIdSet", + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the Dedicated Hosts with which the reservation is associated.

", + "smithy.api#documentation": "

The ID of the AMI.

", "smithy.api#required": {} } }, - "OfferingId": { - "target": "com.amazonaws.ec2#OfferingId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The offering ID of the reservation.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -51759,39 +53339,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetHostReservationPurchasePreviewResult": { + "com.amazonaws.ec2#EnableImageResult": { "type": "structure", "members": { - "CurrencyCode": { - "target": "com.amazonaws.ec2#CurrencyCodeValues", - "traits": { - "aws.protocols#ec2QueryName": "CurrencyCode", - "smithy.api#documentation": "

The currency in which the totalUpfrontPrice and\n totalHourlyPrice amounts are specified. At this time, the only\n supported currency is USD.

", - "smithy.api#xmlName": "currencyCode" - } - }, - "Purchase": { - "target": "com.amazonaws.ec2#PurchaseSet", - "traits": { - "aws.protocols#ec2QueryName": "Purchase", - "smithy.api#documentation": "

The purchase information of the Dedicated Host reservation and the Dedicated Hosts\n associated with it.

", - "smithy.api#xmlName": "purchase" - } - }, - "TotalHourlyPrice": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "TotalHourlyPrice", - "smithy.api#documentation": "

The potential total hourly price of the reservation per hour.

", - "smithy.api#xmlName": "totalHourlyPrice" - } - }, - "TotalUpfrontPrice": { - "target": "com.amazonaws.ec2#String", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "TotalUpfrontPrice", - "smithy.api#documentation": "

The potential total upfront price. This is billed immediately.

", - "smithy.api#xmlName": "totalUpfrontPrice" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } } }, @@ -51799,25 +53355,33 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetImageBlockPublicAccessState": { + "com.amazonaws.ec2#EnableIpamOrganizationAdminAccount": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetImageBlockPublicAccessStateRequest" + "target": "com.amazonaws.ec2#EnableIpamOrganizationAdminAccountRequest" }, "output": { - "target": "com.amazonaws.ec2#GetImageBlockPublicAccessStateResult" + "target": "com.amazonaws.ec2#EnableIpamOrganizationAdminAccountResult" }, "traits": { - "smithy.api#documentation": "

Gets the current state of block public access for AMIs at the account\n level in the specified Amazon Web Services Region.

\n

For more information, see Block\n public access to your AMIs in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Enable an Organizations member account as the IPAM admin account. You cannot select the Organizations management account as the IPAM admin account. For more information, see Enable integration with Organizations in the Amazon VPC IPAM User Guide.\n

" } }, - "com.amazonaws.ec2#GetImageBlockPublicAccessStateRequest": { + "com.amazonaws.ec2#EnableIpamOrganizationAdminAccountRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "DelegatedAdminAccountId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The Organizations member account ID that you want to enable as the IPAM account.

", + "smithy.api#required": {} } } }, @@ -51825,15 +53389,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetImageBlockPublicAccessStateResult": { + "com.amazonaws.ec2#EnableIpamOrganizationAdminAccountResult": { "type": "structure", "members": { - "ImageBlockPublicAccessState": { - "target": "com.amazonaws.ec2#String", + "Success": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "ImageBlockPublicAccessState", - "smithy.api#documentation": "

The current state of block public access for AMIs at the account level in the specified\n Amazon Web Services Region.

\n

Possible values:

\n ", - "smithy.api#xmlName": "imageBlockPublicAccessState" + "aws.protocols#ec2QueryName": "Success", + "smithy.api#documentation": "

The result of enabling the IPAM account.

", + "smithy.api#xmlName": "success" } } }, @@ -51841,19 +53405,19 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetInstanceMetadataDefaults": { + "com.amazonaws.ec2#EnableReachabilityAnalyzerOrganizationSharing": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetInstanceMetadataDefaultsRequest" + "target": "com.amazonaws.ec2#EnableReachabilityAnalyzerOrganizationSharingRequest" }, "output": { - "target": "com.amazonaws.ec2#GetInstanceMetadataDefaultsResult" + "target": "com.amazonaws.ec2#EnableReachabilityAnalyzerOrganizationSharingResult" }, "traits": { - "smithy.api#documentation": "

Gets the default instance metadata service (IMDS) settings that are set at the account\n level in the specified Amazon Web Services\u2028 Region.

\n

For more information, see Order of precedence for instance metadata options in the\n Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Establishes a trust relationship between Reachability Analyzer and Organizations.\n This operation must be performed by the management account for the organization.

\n

After you establish a trust relationship, a user in the management account or \n a delegated administrator account can run a cross-account analysis using resources \n from the member accounts.

" } }, - "com.amazonaws.ec2#GetInstanceMetadataDefaultsRequest": { + "com.amazonaws.ec2#EnableReachabilityAnalyzerOrganizationSharingRequest": { "type": "structure", "members": { "DryRun": { @@ -51867,15 +53431,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetInstanceMetadataDefaultsResult": { + "com.amazonaws.ec2#EnableReachabilityAnalyzerOrganizationSharingResult": { "type": "structure", "members": { - "AccountLevel": { - "target": "com.amazonaws.ec2#InstanceMetadataDefaultsResponse", + "ReturnValue": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "AccountLevel", - "smithy.api#documentation": "

The account-level default IMDS settings.

", - "smithy.api#xmlName": "accountLevel" + "aws.protocols#ec2QueryName": "ReturnValue", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, returns an error.

", + "smithy.api#xmlName": "returnValue" } } }, @@ -51883,50 +53447,41 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetInstanceTpmEkPub": { + "com.amazonaws.ec2#EnableRouteServerPropagation": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetInstanceTpmEkPubRequest" + "target": "com.amazonaws.ec2#EnableRouteServerPropagationRequest" }, "output": { - "target": "com.amazonaws.ec2#GetInstanceTpmEkPubResult" + "target": "com.amazonaws.ec2#EnableRouteServerPropagationResult" }, "traits": { - "smithy.api#documentation": "

Gets the public endorsement key associated with the Nitro Trusted \n Platform Module (NitroTPM) for the specified instance.

" + "smithy.api#documentation": "

Defines which route tables the route server can update with routes.

\n

When enabled, route server propagation installs the routes in the FIB on the route table you've specified. Route server supports IPv4 and IPv6 route propagation.

\n

For more information see Dynamic routing in your VPC with VPC Route Server in the Amazon VPC User Guide.

" } }, - "com.amazonaws.ec2#GetInstanceTpmEkPubRequest": { + "com.amazonaws.ec2#EnableRouteServerPropagationRequest": { "type": "structure", "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance for which to get the public endorsement key.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "InstanceId" - } - }, - "KeyType": { - "target": "com.amazonaws.ec2#EkPubKeyType", + "RouteServerId": { + "target": "com.amazonaws.ec2#RouteServerId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The required public endorsement key type.

", + "smithy.api#documentation": "

The ID of the route server for which to enable propagation.

", "smithy.api#required": {} } }, - "KeyFormat": { - "target": "com.amazonaws.ec2#EkPubKeyFormat", + "RouteTableId": { + "target": "com.amazonaws.ec2#RouteTableId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The required public endorsement key format. Specify der for a DER-encoded public \n key that is compatible with OpenSSL. Specify tpmt for a TPM 2.0 format that is \n compatible with tpm2-tools. The returned key is base64 encoded.

", + "smithy.api#documentation": "

The ID of the route table to which route server will propagate routes.

", "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Specify this parameter to verify whether the request will succeed, without actually making the \n request. If the request will succeed, the response is DryRunOperation. Otherwise, \n the response is UnauthorizedOperation.

" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -51934,39 +53489,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetInstanceTpmEkPubResult": { + "com.amazonaws.ec2#EnableRouteServerPropagationResult": { "type": "structure", "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", - "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#xmlName": "instanceId" - } - }, - "KeyType": { - "target": "com.amazonaws.ec2#EkPubKeyType", - "traits": { - "aws.protocols#ec2QueryName": "KeyType", - "smithy.api#documentation": "

The public endorsement key type.

", - "smithy.api#xmlName": "keyType" - } - }, - "KeyFormat": { - "target": "com.amazonaws.ec2#EkPubKeyFormat", - "traits": { - "aws.protocols#ec2QueryName": "KeyFormat", - "smithy.api#documentation": "

The public endorsement key format.

", - "smithy.api#xmlName": "keyFormat" - } - }, - "KeyValue": { - "target": "com.amazonaws.ec2#EkPubKeyValue", + "RouteServerPropagation": { + "target": "com.amazonaws.ec2#RouteServerPropagation", "traits": { - "aws.protocols#ec2QueryName": "KeyValue", - "smithy.api#documentation": "

The public endorsement key material.

", - "smithy.api#xmlName": "keyValue" + "aws.protocols#ec2QueryName": "RouteServerPropagation", + "smithy.api#documentation": "

Information about the enabled route server propagation.

", + "smithy.api#xmlName": "routeServerPropagation" } } }, @@ -51974,69 +53505,25 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetInstanceTypesFromInstanceRequirements": { + "com.amazonaws.ec2#EnableSerialConsoleAccess": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetInstanceTypesFromInstanceRequirementsRequest" + "target": "com.amazonaws.ec2#EnableSerialConsoleAccessRequest" }, "output": { - "target": "com.amazonaws.ec2#GetInstanceTypesFromInstanceRequirementsResult" + "target": "com.amazonaws.ec2#EnableSerialConsoleAccessResult" }, "traits": { - "smithy.api#documentation": "

Returns a list of instance types with the specified instance attributes. You can\n use the response to preview the instance types without launching instances. Note\n that the response does not consider capacity.

\n

When you specify multiple parameters, you get instance types that satisfy all of the\n specified parameters. If you specify multiple values for a parameter, you get instance\n types that satisfy any of the specified values.

\n

For more information, see Preview instance types with specified attributes, Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot\n placement score in the Amazon EC2 User Guide, and Creating an\n Auto Scaling group using attribute-based instance type selection in the\n Amazon EC2 Auto Scaling User Guide.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "InstanceTypes", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Enables access to the EC2 serial console of all instances for your account. By default,\n\t\t\taccess to the EC2 serial console is disabled for your account. For more information, see Manage account access to the EC2 serial console\n\t\t\tin the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#GetInstanceTypesFromInstanceRequirementsRequest": { + "com.amazonaws.ec2#EnableSerialConsoleAccessRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "ArchitectureTypes": { - "target": "com.amazonaws.ec2#ArchitectureTypeSet", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The processor architecture type.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "ArchitectureType" - } - }, - "VirtualizationTypes": { - "target": "com.amazonaws.ec2#VirtualizationTypeSet", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The virtualization type.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "VirtualizationType" - } - }, - "InstanceRequirements": { - "target": "com.amazonaws.ec2#InstanceRequirementsRequest", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The attributes required for the instance types.

", - "smithy.api#required": {} - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -52044,23 +53531,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetInstanceTypesFromInstanceRequirementsResult": { + "com.amazonaws.ec2#EnableSerialConsoleAccessResult": { "type": "structure", "members": { - "InstanceTypes": { - "target": "com.amazonaws.ec2#InstanceTypeInfoFromInstanceRequirementsSet", - "traits": { - "aws.protocols#ec2QueryName": "InstanceTypeSet", - "smithy.api#documentation": "

The instance types with the specified instance attributes.

", - "smithy.api#xmlName": "instanceTypeSet" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "SerialConsoleAccessEnabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "SerialConsoleAccessEnabled", + "smithy.api#documentation": "

If true, access to the EC2 serial console of all instances is enabled for\n\t\t\tyour account. If false, access to the EC2 serial console of all instances\n\t\t\tis disabled for your account.

", + "smithy.api#xmlName": "serialConsoleAccessEnabled" } } }, @@ -52068,28 +53547,27 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetInstanceUefiData": { + "com.amazonaws.ec2#EnableSnapshotBlockPublicAccess": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetInstanceUefiDataRequest" + "target": "com.amazonaws.ec2#EnableSnapshotBlockPublicAccessRequest" }, "output": { - "target": "com.amazonaws.ec2#GetInstanceUefiDataResult" + "target": "com.amazonaws.ec2#EnableSnapshotBlockPublicAccessResult" }, "traits": { - "smithy.api#documentation": "

A binary representation of the UEFI variable store. Only non-volatile variables are\n stored. This is a base64 encoded and zlib compressed binary value that must be properly\n encoded.

\n

When you use register-image to create\n an AMI, you can create an exact copy of your variable store by passing the UEFI data in\n the UefiData parameter. You can modify the UEFI data by using the python-uefivars tool on\n GitHub. You can use the tool to convert the UEFI data into a human-readable format\n (JSON), which you can inspect and modify, and then convert back into the binary format\n to use with register-image.

\n

For more information, see UEFI Secure Boot in the\n Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Enables or modifies the block public access for snapshots \n setting at the account level for the specified Amazon Web Services Region. After you enable block \n public access for snapshots in a Region, users can no longer request public sharing \n for snapshots in that Region. Snapshots that are already publicly shared are either \n treated as private or they remain publicly shared, depending on the \n State that you specify.

\n \n

Enabling block public access for snapshots in block all sharing \n mode does not change the permissions for snapshots that are already publicly shared. \n Instead, it prevents these snapshots from be publicly visible and publicly accessible. \n Therefore, the attributes for these snapshots still indicate that they are publicly \n shared, even though they are not publicly available.

\n

If you later disable block public access or change the mode to block new \n sharing, these snapshots will become publicly available again.

\n
\n

For more information, see \n Block public access for snapshots in the Amazon EBS User Guide.

" } }, - "com.amazonaws.ec2#GetInstanceUefiDataRequest": { + "com.amazonaws.ec2#EnableSnapshotBlockPublicAccessRequest": { "type": "structure", "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", + "State": { + "target": "com.amazonaws.ec2#SnapshotBlockPublicAccessState", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance from which to retrieve the UEFI data.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "InstanceId" + "smithy.api#documentation": "

The mode in which to enable block public access for snapshots for the Region. \n Specify one of the following values:

\n \n

\n unblocked is not a valid value for EnableSnapshotBlockPublicAccess.

", + "smithy.api#required": {} } }, "DryRun": { @@ -52103,23 +53581,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetInstanceUefiDataResult": { + "com.amazonaws.ec2#EnableSnapshotBlockPublicAccessResult": { "type": "structure", "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", - "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance from which to retrieve the UEFI data.

", - "smithy.api#xmlName": "instanceId" - } - }, - "UefiData": { - "target": "com.amazonaws.ec2#String", + "State": { + "target": "com.amazonaws.ec2#SnapshotBlockPublicAccessState", "traits": { - "aws.protocols#ec2QueryName": "UefiData", - "smithy.api#documentation": "

Base64 representation of the non-volatile UEFI variable store.

", - "smithy.api#xmlName": "uefiData" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of block public access for snapshots for the account and Region. Returns \n either block-all-sharing or block-new-sharing if the request \n succeeds.

", + "smithy.api#xmlName": "state" } } }, @@ -52127,77 +53597,45 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetIpamAddressHistory": { + "com.amazonaws.ec2#EnableTransitGatewayRouteTablePropagation": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetIpamAddressHistoryRequest" + "target": "com.amazonaws.ec2#EnableTransitGatewayRouteTablePropagationRequest" }, "output": { - "target": "com.amazonaws.ec2#GetIpamAddressHistoryResult" + "target": "com.amazonaws.ec2#EnableTransitGatewayRouteTablePropagationResult" }, "traits": { - "smithy.api#documentation": "

Retrieve historical information about a CIDR within an IPAM scope. For more information, see View the history of IP addresses in the Amazon VPC IPAM User Guide.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "HistoryRecords", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Enables the specified attachment to propagate routes to the specified\n propagation route table.

" } }, - "com.amazonaws.ec2#GetIpamAddressHistoryRequest": { + "com.amazonaws.ec2#EnableTransitGatewayRouteTablePropagationRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "Cidr": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The CIDR you want the history of. The CIDR can be an IPv4 or IPv6 IP address range. \n If you enter a /16 IPv4 CIDR, you will get records that match it exactly. You will not get records for any subnets within the /16 CIDR.

", - "smithy.api#required": {} - } - }, - "IpamScopeId": { - "target": "com.amazonaws.ec2#IpamScopeId", + "TransitGatewayRouteTableId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the IPAM scope that the CIDR is in.

", + "smithy.api#documentation": "

The ID of the propagation route table.

", "smithy.api#required": {} } }, - "VpcId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The ID of the VPC you want your history records filtered by.

" - } - }, - "StartTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "smithy.api#documentation": "

The start of the time period for which you are looking for history. If you omit this option, it will default to the value of EndTime.

" - } - }, - "EndTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", "traits": { - "smithy.api#documentation": "

The end of the time period for which you are looking for history. If you omit this option, it will default to the current time.

" + "smithy.api#documentation": "

The ID of the attachment.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#IpamAddressHistoryMaxResults", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The maximum number of historical results you would like returned per page. Defaults to 100.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "TransitGatewayRouteTableAnnouncementId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableAnnouncementId", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

The ID of the transit gateway route table announcement.

" } } }, @@ -52205,23 +53643,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetIpamAddressHistoryResult": { + "com.amazonaws.ec2#EnableTransitGatewayRouteTablePropagationResult": { "type": "structure", "members": { - "HistoryRecords": { - "target": "com.amazonaws.ec2#IpamAddressHistoryRecordSet", - "traits": { - "aws.protocols#ec2QueryName": "HistoryRecordSet", - "smithy.api#documentation": "

A historical record for a CIDR within an IPAM scope. If the CIDR is associated with an EC2 instance, you will see an object in the response for the instance and one for the network interface.

", - "smithy.api#xmlName": "historyRecordSet" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "Propagation": { + "target": "com.amazonaws.ec2#TransitGatewayPropagation", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "Propagation", + "smithy.api#documentation": "

Information about route propagation.

", + "smithy.api#xmlName": "propagation" } } }, @@ -52229,151 +53659,180 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetIpamDiscoveredAccounts": { + "com.amazonaws.ec2#EnableVgwRoutePropagation": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetIpamDiscoveredAccountsRequest" + "target": "com.amazonaws.ec2#EnableVgwRoutePropagationRequest" }, "output": { - "target": "com.amazonaws.ec2#GetIpamDiscoveredAccountsResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Gets IPAM discovered accounts. A discovered account is an Amazon Web Services account that is monitored under a resource discovery. If you have integrated IPAM with Amazon Web Services Organizations, all accounts in the organization are discovered accounts. Only the IPAM account can get all discovered accounts in the organization.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "IpamDiscoveredAccounts", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Enables a virtual private gateway (VGW) to propagate routes to the specified route\n table of a VPC.

", + "smithy.api#examples": [ + { + "title": "To enable route propagation", + "documentation": "This example enables the specified virtual private gateway to propagate static routes to the specified route table.", + "input": { + "RouteTableId": "rtb-22574640", + "GatewayId": "vgw-9a4cacf3" + } + } + ] } }, - "com.amazonaws.ec2#GetIpamDiscoveredAccountsRequest": { + "com.amazonaws.ec2#EnableVgwRoutePropagationRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "IpamResourceDiscoveryId": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", + "GatewayId": { + "target": "com.amazonaws.ec2#VpnGatewayId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A resource discovery ID.

", + "smithy.api#documentation": "

The ID of the virtual private gateway that is attached to a VPC. The virtual private\n gateway must be attached to the same VPC that the routing tables are associated with.\n

", "smithy.api#required": {} } }, - "DiscoveryRegion": { - "target": "com.amazonaws.ec2#String", + "RouteTableId": { + "target": "com.amazonaws.ec2#RouteTableId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Amazon Web Services Region that the account information is returned from.

", + "smithy.api#documentation": "

The ID of the route table. The routing table must be associated with the same VPC that\n the virtual private gateway is attached to.

", "smithy.api#required": {} } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

Discovered account filters.

", - "smithy.api#xmlName": "Filter" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", - "traits": { - "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#IpamMaxResults", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The maximum number of discovered accounts to return in one page of results.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for EnableVgwRoutePropagation.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetIpamDiscoveredAccountsResult": { + "com.amazonaws.ec2#EnableVolumeIO": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#EnableVolumeIORequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Enables I/O operations for a volume that had I/O operations disabled because the data on\n the volume was potentially inconsistent.

", + "smithy.api#examples": [ + { + "title": "To enable I/O for a volume", + "documentation": "This example enables I/O on volume ``vol-1234567890abcdef0``.", + "input": { + "VolumeId": "vol-1234567890abcdef0" + } + } + ] + } + }, + "com.amazonaws.ec2#EnableVolumeIORequest": { "type": "structure", "members": { - "IpamDiscoveredAccounts": { - "target": "com.amazonaws.ec2#IpamDiscoveredAccountSet", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "IpamDiscoveredAccountSet", - "smithy.api#documentation": "

Discovered accounts.

", - "smithy.api#xmlName": "ipamDiscoveredAccountSet" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "VolumeId": { + "target": "com.amazonaws.ec2#VolumeId", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "VolumeId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the volume.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "volumeId" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetIpamDiscoveredPublicAddresses": { + "com.amazonaws.ec2#EnableVpcClassicLink": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetIpamDiscoveredPublicAddressesRequest" + "target": "com.amazonaws.ec2#EnableVpcClassicLinkRequest" }, "output": { - "target": "com.amazonaws.ec2#GetIpamDiscoveredPublicAddressesResult" + "target": "com.amazonaws.ec2#EnableVpcClassicLinkResult" }, "traits": { - "smithy.api#documentation": "

Gets the public IP addresses that have been discovered by IPAM.

" + "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Enables a VPC for ClassicLink. You can then link EC2-Classic instances to your\n\t\t\tClassicLink-enabled VPC to allow communication over private IP addresses. You cannot\n\t\t\tenable your VPC for ClassicLink if any of your VPC route tables have existing routes for\n\t\t\taddress ranges within the 10.0.0.0/8 IP address range, excluding local\n\t\t\troutes for VPCs in the 10.0.0.0/16 and 10.1.0.0/16 IP address\n\t\t\tranges.

" } }, - "com.amazonaws.ec2#GetIpamDiscoveredPublicAddressesRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "IpamResourceDiscoveryId": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

An IPAM resource discovery ID.

", - "smithy.api#required": {} - } - }, - "AddressRegion": { - "target": "com.amazonaws.ec2#String", + "com.amazonaws.ec2#EnableVpcClassicLinkDnsSupport": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#EnableVpcClassicLinkDnsSupportRequest" + }, + "output": { + "target": "com.amazonaws.ec2#EnableVpcClassicLinkDnsSupportResult" + }, + "traits": { + "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Enables a VPC to support DNS hostname resolution for ClassicLink. If enabled, the DNS\n\t\t\thostname of a linked EC2-Classic instance resolves to its private IP address when\n\t\t\taddressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname\n\t\t\tof an instance in a VPC resolves to its private IP address when addressed from a linked\n\t\t\tEC2-Classic instance.

\n

You must specify a VPC ID in the request.

" + } + }, + "com.amazonaws.ec2#EnableVpcClassicLinkDnsSupportRequest": { + "type": "structure", + "members": { + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Amazon Web Services Region for the IP address.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#xmlName": "VpcId" } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#EnableVpcClassicLinkDnsSupportResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Filters.

", - "smithy.api#xmlName": "Filter" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#EnableVpcClassicLinkRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#IpamMaxResults", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "smithy.api#documentation": "

The maximum number of IPAM discovered public addresses to return in one page of results.

" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "vpcId" } } }, @@ -52381,31 +53840,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetIpamDiscoveredPublicAddressesResult": { + "com.amazonaws.ec2#EnableVpcClassicLinkResult": { "type": "structure", "members": { - "IpamDiscoveredPublicAddresses": { - "target": "com.amazonaws.ec2#IpamDiscoveredPublicAddressSet", - "traits": { - "aws.protocols#ec2QueryName": "IpamDiscoveredPublicAddressSet", - "smithy.api#documentation": "

IPAM discovered public addresses.

", - "smithy.api#xmlName": "ipamDiscoveredPublicAddressSet" - } - }, - "OldestSampleTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "aws.protocols#ec2QueryName": "OldestSampleTime", - "smithy.api#documentation": "

The oldest successful resource discovery time.

", - "smithy.api#xmlName": "oldestSampleTime" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } } }, @@ -52413,1079 +53856,743 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetIpamDiscoveredResourceCidrs": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetIpamDiscoveredResourceCidrsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetIpamDiscoveredResourceCidrsResult" + "com.amazonaws.ec2#EnclaveOptions": { + "type": "structure", + "members": { + "Enabled": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Enabled", + "smithy.api#documentation": "

If this parameter is set to true, the instance is enabled for Amazon Web Services Nitro Enclaves; otherwise, it is not enabled for Amazon Web Services Nitro\n Enclaves.

", + "smithy.api#xmlName": "enabled" + } + } }, "traits": { - "smithy.api#documentation": "

Returns the resource CIDRs that are monitored as part of a resource discovery. A discovered resource is a resource CIDR monitored under a resource discovery. The following resources can be discovered: VPCs, Public IPv4 pools, VPC subnets, and Elastic IP addresses.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "IpamDiscoveredResourceCidrs", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Indicates whether the instance is enabled for Amazon Web Services Nitro\n Enclaves.

" } }, - "com.amazonaws.ec2#GetIpamDiscoveredResourceCidrsRequest": { + "com.amazonaws.ec2#EnclaveOptionsRequest": { "type": "structure", "members": { - "DryRun": { + "Enabled": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

To enable the instance for Amazon Web Services Nitro Enclaves, set this parameter to\n true.

" } - }, - "IpamResourceDiscoveryId": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", + } + }, + "traits": { + "smithy.api#documentation": "

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For\n more information, see What is Amazon Web Services Nitro\n Enclaves? in the Amazon Web Services Nitro Enclaves User\n Guide.

" + } + }, + "com.amazonaws.ec2#EncryptionInTransitSupported": { + "type": "boolean" + }, + "com.amazonaws.ec2#EndDateType": { + "type": "enum", + "members": { + "unlimited": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A resource discovery ID.

", - "smithy.api#required": {} + "smithy.api#enumValue": "unlimited" } }, - "ResourceRegion": { - "target": "com.amazonaws.ec2#String", + "limited": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A resource Region.

", - "smithy.api#required": {} + "smithy.api#enumValue": "limited" } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + } + } + }, + "com.amazonaws.ec2#EndpointIpAddressType": { + "type": "enum", + "members": { + "ipv4": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Filters.

", - "smithy.api#xmlName": "Filter" + "smithy.api#enumValue": "ipv4" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "ipv6": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

" + "smithy.api#enumValue": "ipv6" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#IpamMaxResults", + "dual_stack": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum number of discovered resource CIDRs to return in one page of results.

" + "smithy.api#enumValue": "dual-stack" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetIpamDiscoveredResourceCidrsResult": { - "type": "structure", + "com.amazonaws.ec2#EndpointSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ClientVpnEndpoint", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#EphemeralNvmeSupport": { + "type": "enum", "members": { - "IpamDiscoveredResourceCidrs": { - "target": "com.amazonaws.ec2#IpamDiscoveredResourceCidrSet", + "UNSUPPORTED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamDiscoveredResourceCidrSet", - "smithy.api#documentation": "

Discovered resource CIDRs.

", - "smithy.api#xmlName": "ipamDiscoveredResourceCidrSet" + "smithy.api#enumValue": "unsupported" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "SUPPORTED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#enumValue": "supported" + } + }, + "REQUIRED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "required" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#GetIpamPoolAllocations": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetIpamPoolAllocationsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetIpamPoolAllocationsResult" - }, - "traits": { - "smithy.api#documentation": "

Get a list of all the CIDR allocations in an IPAM pool. The Region you use should be the IPAM pool locale. The locale is the Amazon Web Services Region where this IPAM pool is available for allocations.

\n \n

If you use this action after AllocateIpamPoolCidr or ReleaseIpamPoolAllocation, note that all EC2 API actions follow an eventual consistency model.

\n
", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "IpamPoolAllocations", - "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#GetIpamPoolAllocationsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1000, - "max": 100000 + "com.amazonaws.ec2#ErrorSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ValidationError", + "traits": { + "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#GetIpamPoolAllocationsRequest": { - "type": "structure", + "com.amazonaws.ec2#EventCode": { + "type": "enum", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "IpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", + "instance_reboot": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the IPAM pool you want to see the allocations for.

", - "smithy.api#required": {} + "smithy.api#enumValue": "instance-reboot" } }, - "IpamPoolAllocationId": { - "target": "com.amazonaws.ec2#IpamPoolAllocationId", + "system_reboot": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ID of the allocation.

" + "smithy.api#enumValue": "system-reboot" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "system_maintenance": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

", - "smithy.api#xmlName": "Filter" + "smithy.api#enumValue": "system-maintenance" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#GetIpamPoolAllocationsMaxResults", + "instance_retirement": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum number of results you would like returned per page.

" + "smithy.api#enumValue": "instance-retirement" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "instance_stop": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#enumValue": "instance-stop" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetIpamPoolAllocationsResult": { + "com.amazonaws.ec2#EventInformation": { "type": "structure", "members": { - "IpamPoolAllocations": { - "target": "com.amazonaws.ec2#IpamPoolAllocationSet", + "EventDescription": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "IpamPoolAllocationSet", - "smithy.api#documentation": "

The IPAM pool allocations you want information on.

", - "smithy.api#xmlName": "ipamPoolAllocationSet" + "aws.protocols#ec2QueryName": "EventDescription", + "smithy.api#documentation": "

The description of the event.

", + "smithy.api#xmlName": "eventDescription" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "EventSubType": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "EventSubType", + "smithy.api#documentation": "

The event.

\n

\n error events:

\n \n

\n fleetRequestChange events:

\n \n

\n instanceChange events:

\n \n

\n Information events:

\n ", + "smithy.api#xmlName": "eventSubType" + } + }, + "InstanceId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance. This information is available only for\n instanceChange events.

", + "smithy.api#xmlName": "instanceId" } } }, "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#GetIpamPoolCidrs": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetIpamPoolCidrsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetIpamPoolCidrsResult" - }, - "traits": { - "smithy.api#documentation": "

Get the CIDRs provisioned to an IPAM pool.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "IpamPoolCidrs", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Describes an EC2 Fleet or Spot Fleet event.

" } }, - "com.amazonaws.ec2#GetIpamPoolCidrsRequest": { - "type": "structure", + "com.amazonaws.ec2#EventType": { + "type": "enum", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "IpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", + "INSTANCE_CHANGE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the IPAM pool you want the CIDR for.

", - "smithy.api#required": {} + "smithy.api#enumValue": "instanceChange" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "BATCH_CHANGE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

", - "smithy.api#xmlName": "Filter" + "smithy.api#enumValue": "fleetRequestChange" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#IpamMaxResults", + "ERROR": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum number of results to return in the request.

" + "smithy.api#enumValue": "error" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "INFORMATION": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#enumValue": "information" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetIpamPoolCidrsResult": { - "type": "structure", + "com.amazonaws.ec2#ExcessCapacityTerminationPolicy": { + "type": "enum", "members": { - "IpamPoolCidrs": { - "target": "com.amazonaws.ec2#IpamPoolCidrSet", + "NO_TERMINATION": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamPoolCidrSet", - "smithy.api#documentation": "

Information about the CIDRs provisioned to an IPAM pool.

", - "smithy.api#xmlName": "ipamPoolCidrSet" + "smithy.api#enumValue": "noTermination" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "DEFAULT": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#enumValue": "default" } } - }, + } + }, + "com.amazonaws.ec2#ExcludedInstanceType": { + "type": "string", "traits": { - "smithy.api#output": {} + "smithy.api#length": { + "min": 1, + "max": 30 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\.\\*\\-]+$" } }, - "com.amazonaws.ec2#GetIpamResourceCidrs": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetIpamResourceCidrsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetIpamResourceCidrsResult" + "com.amazonaws.ec2#ExcludedInstanceTypeSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ExcludedInstanceType", + "traits": { + "smithy.api#xmlName": "item" + } }, "traits": { - "smithy.api#documentation": "

Returns resource CIDRs managed by IPAM in a given scope. If an IPAM is associated with more than one resource discovery, the resource CIDRs across all of the resource discoveries is returned. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "IpamResourceCidrs", - "pageSize": "MaxResults" + "smithy.api#length": { + "min": 0, + "max": 400 } } }, - "com.amazonaws.ec2#GetIpamResourceCidrsRequest": { + "com.amazonaws.ec2#ExecutableByStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "ExecutableBy" + } + } + }, + "com.amazonaws.ec2#Explanation": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Acl": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "Acl", + "smithy.api#documentation": "

The network ACL.

", + "smithy.api#xmlName": "acl" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "AclRule": { + "target": "com.amazonaws.ec2#AnalysisAclRule", "traits": { - "smithy.api#documentation": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

", - "smithy.api#xmlName": "Filter" + "aws.protocols#ec2QueryName": "AclRule", + "smithy.api#documentation": "

The network ACL rule.

", + "smithy.api#xmlName": "aclRule" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#IpamMaxResults", + "Address": { + "target": "com.amazonaws.ec2#IpAddress", "traits": { - "smithy.api#documentation": "

The maximum number of results to return in the request.

" + "aws.protocols#ec2QueryName": "Address", + "smithy.api#documentation": "

The IPv4 address, in CIDR notation.

", + "smithy.api#xmlName": "address" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "Addresses": { + "target": "com.amazonaws.ec2#IpAddressList", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "aws.protocols#ec2QueryName": "AddressSet", + "smithy.api#documentation": "

The IPv4 addresses, in CIDR notation.

", + "smithy.api#xmlName": "addressSet" } }, - "IpamScopeId": { - "target": "com.amazonaws.ec2#IpamScopeId", + "AttachedTo": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the scope that the resource is in.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "AttachedTo", + "smithy.api#documentation": "

The resource to which the component is attached.

", + "smithy.api#xmlName": "attachedTo" } }, - "IpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", + "AvailabilityZones": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

The ID of the IPAM pool that the resource is in.

" + "aws.protocols#ec2QueryName": "AvailabilityZoneSet", + "smithy.api#documentation": "

The Availability Zones.

", + "smithy.api#xmlName": "availabilityZoneSet" } }, - "ResourceId": { - "target": "com.amazonaws.ec2#String", + "AvailabilityZoneIds": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

The ID of the resource.

" + "aws.protocols#ec2QueryName": "AvailabilityZoneIdSet", + "smithy.api#documentation": "

The IDs of the Availability Zones.

", + "smithy.api#xmlName": "availabilityZoneIdSet" } }, - "ResourceType": { - "target": "com.amazonaws.ec2#IpamResourceType", + "Cidrs": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

The resource type.

" + "aws.protocols#ec2QueryName": "CidrSet", + "smithy.api#documentation": "

The CIDR ranges.

", + "smithy.api#xmlName": "cidrSet" } }, - "ResourceTag": { - "target": "com.amazonaws.ec2#RequestIpamResourceTag", + "Component": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "smithy.api#documentation": "

The resource tag.

" + "aws.protocols#ec2QueryName": "Component", + "smithy.api#documentation": "

The component.

", + "smithy.api#xmlName": "component" } }, - "ResourceOwner": { - "target": "com.amazonaws.ec2#String", + "CustomerGateway": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the resource.

" + "aws.protocols#ec2QueryName": "CustomerGateway", + "smithy.api#documentation": "

The customer gateway.

", + "smithy.api#xmlName": "customerGateway" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#GetIpamResourceCidrsResult": { - "type": "structure", - "members": { - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + }, + "Destination": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "Destination", + "smithy.api#documentation": "

The destination.

", + "smithy.api#xmlName": "destination" } }, - "IpamResourceCidrs": { - "target": "com.amazonaws.ec2#IpamResourceCidrSet", + "DestinationVpc": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "aws.protocols#ec2QueryName": "IpamResourceCidrSet", - "smithy.api#documentation": "

The resource CIDRs.

", - "smithy.api#xmlName": "ipamResourceCidrSet" + "aws.protocols#ec2QueryName": "DestinationVpc", + "smithy.api#documentation": "

The destination VPC.

", + "smithy.api#xmlName": "destinationVpc" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#GetLaunchTemplateData": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetLaunchTemplateDataRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetLaunchTemplateDataResult" - }, - "traits": { - "smithy.api#documentation": "

Retrieves the configuration data of the specified instance. You can use this data to\n create a launch template.

\n

This action calls on other describe actions to get instance information. Depending on\n your instance configuration, you may need to allow the following actions in your IAM\n policy: DescribeSpotInstanceRequests, DescribeInstanceCreditSpecifications, \n DescribeVolumes, and DescribeInstanceAttribute. Or,\n you can allow describe* depending on your instance requirements.

", - "smithy.api#examples": [ - { - "title": "To get the launch template data for an instance ", - "documentation": "This example gets the launch template data for the specified instance.", - "input": { - "InstanceId": "0123d646e8048babc" - }, - "output": { - "LaunchTemplateData": { - "NetworkInterfaces": [ - { - "DeviceIndex": 0, - "Groups": [ - "sg-d14e1bb4" - ], - "Ipv6Addresses": [], - "AssociatePublicIpAddress": false, - "NetworkInterfaceId": "eni-4338b5a9", - "DeleteOnTermination": true, - "Description": "", - "PrivateIpAddress": "10.0.3.233", - "SubnetId": "subnet-5264e837", - "PrivateIpAddresses": [ - { - "PrivateIpAddress": "10.0.3.233", - "Primary": true - } - ] - } - ], - "Placement": { - "GroupName": "", - "Tenancy": "default", - "AvailabilityZone": "us-east-2b" - }, - "InstanceType": "t2.medium", - "EbsOptimized": false, - "BlockDeviceMappings": [ - { - "Ebs": { - "VolumeType": "gp2", - "Encrypted": false, - "Iops": 100, - "VolumeSize": 8, - "SnapshotId": "snap-02594938353ef77d3", - "DeleteOnTermination": true - }, - "DeviceName": "/dev/xvda" - } - ], - "KeyName": "my-key-pair", - "ImageId": "ami-32cf7b4a", - "Monitoring": { - "Enabled": false - } - } - } + }, + "Direction": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Direction", + "smithy.api#documentation": "

The direction. The following are the possible values:

\n ", + "smithy.api#xmlName": "direction" } - ] - } - }, - "com.amazonaws.ec2#GetLaunchTemplateDataRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "ExplanationCode": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "ExplanationCode", + "smithy.api#documentation": "

The explanation code.

", + "smithy.api#xmlName": "explanationCode" } }, - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", + "IngressRouteTable": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "IngressRouteTable", + "smithy.api#documentation": "

The route table.

", + "smithy.api#xmlName": "ingressRouteTable" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#GetLaunchTemplateDataResult": { - "type": "structure", - "members": { - "LaunchTemplateData": { - "target": "com.amazonaws.ec2#ResponseLaunchTemplateData", + }, + "InternetGateway": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateData", - "smithy.api#documentation": "

The instance data.

", - "smithy.api#xmlName": "launchTemplateData" + "aws.protocols#ec2QueryName": "InternetGateway", + "smithy.api#documentation": "

The internet gateway.

", + "smithy.api#xmlName": "internetGateway" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#GetManagedPrefixListAssociations": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetManagedPrefixListAssociationsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetManagedPrefixListAssociationsResult" - }, - "traits": { - "smithy.api#documentation": "

Gets information about the resources that are associated with the specified managed prefix list.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "PrefixListAssociations", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#GetManagedPrefixListAssociationsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 255 - } - } - }, - "com.amazonaws.ec2#GetManagedPrefixListAssociationsRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "LoadBalancerArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "LoadBalancerArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the load balancer.

", + "smithy.api#xmlName": "loadBalancerArn" } }, - "PrefixListId": { - "target": "com.amazonaws.ec2#PrefixListResourceId", + "ClassicLoadBalancerListener": { + "target": "com.amazonaws.ec2#AnalysisLoadBalancerListener", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the prefix list.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "ClassicLoadBalancerListener", + "smithy.api#documentation": "

The listener for a Classic Load Balancer.

", + "smithy.api#xmlName": "classicLoadBalancerListener" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#GetManagedPrefixListAssociationsMaxResults", + "LoadBalancerListenerPort": { + "target": "com.amazonaws.ec2#Port", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "aws.protocols#ec2QueryName": "LoadBalancerListenerPort", + "smithy.api#documentation": "

The listener port of the load balancer.

", + "smithy.api#xmlName": "loadBalancerListenerPort" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "LoadBalancerTarget": { + "target": "com.amazonaws.ec2#AnalysisLoadBalancerTarget", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "aws.protocols#ec2QueryName": "LoadBalancerTarget", + "smithy.api#documentation": "

The target.

", + "smithy.api#xmlName": "loadBalancerTarget" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#GetManagedPrefixListAssociationsResult": { - "type": "structure", - "members": { - "PrefixListAssociations": { - "target": "com.amazonaws.ec2#PrefixListAssociationSet", + }, + "LoadBalancerTargetGroup": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "aws.protocols#ec2QueryName": "PrefixListAssociationSet", - "smithy.api#documentation": "

Information about the associations.

", - "smithy.api#xmlName": "prefixListAssociationSet" + "aws.protocols#ec2QueryName": "LoadBalancerTargetGroup", + "smithy.api#documentation": "

The target group.

", + "smithy.api#xmlName": "loadBalancerTargetGroup" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "LoadBalancerTargetGroups": { + "target": "com.amazonaws.ec2#AnalysisComponentList", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "LoadBalancerTargetGroupSet", + "smithy.api#documentation": "

The target groups.

", + "smithy.api#xmlName": "loadBalancerTargetGroupSet" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#GetManagedPrefixListEntries": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetManagedPrefixListEntriesRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetManagedPrefixListEntriesResult" - }, - "traits": { - "smithy.api#documentation": "

Gets information about the entries for a specified managed prefix list.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "Entries", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#GetManagedPrefixListEntriesRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "LoadBalancerTargetPort": { + "target": "com.amazonaws.ec2#Port", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "LoadBalancerTargetPort", + "smithy.api#documentation": "

The target port.

", + "smithy.api#xmlName": "loadBalancerTargetPort" } }, - "PrefixListId": { - "target": "com.amazonaws.ec2#PrefixListResourceId", + "ElasticLoadBalancerListener": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the prefix list.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "ElasticLoadBalancerListener", + "smithy.api#documentation": "

The load balancer listener.

", + "smithy.api#xmlName": "elasticLoadBalancerListener" } }, - "TargetVersion": { - "target": "com.amazonaws.ec2#Long", + "MissingComponent": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The version of the prefix list for which to return the entries. The default is the current version.

" + "aws.protocols#ec2QueryName": "MissingComponent", + "smithy.api#documentation": "

The missing component.

", + "smithy.api#xmlName": "missingComponent" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#PrefixListMaxResults", + "NatGateway": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "aws.protocols#ec2QueryName": "NatGateway", + "smithy.api#documentation": "

The NAT gateway.

", + "smithy.api#xmlName": "natGateway" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "NetworkInterface": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "aws.protocols#ec2QueryName": "NetworkInterface", + "smithy.api#documentation": "

The network interface.

", + "smithy.api#xmlName": "networkInterface" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#GetManagedPrefixListEntriesResult": { - "type": "structure", - "members": { - "Entries": { - "target": "com.amazonaws.ec2#PrefixListEntrySet", + }, + "PacketField": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "EntrySet", - "smithy.api#documentation": "

Information about the prefix list entries.

", - "smithy.api#xmlName": "entrySet" + "aws.protocols#ec2QueryName": "PacketField", + "smithy.api#documentation": "

The packet field.

", + "smithy.api#xmlName": "packetField" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "VpcPeeringConnection": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "VpcPeeringConnection", + "smithy.api#documentation": "

The VPC peering connection.

", + "smithy.api#xmlName": "vpcPeeringConnection" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#GetNetworkInsightsAccessScopeAnalysisFindings": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetNetworkInsightsAccessScopeAnalysisFindingsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetNetworkInsightsAccessScopeAnalysisFindingsResult" - }, - "traits": { - "smithy.api#documentation": "

Gets the findings for the specified Network Access Scope analysis.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "AnalysisFindings", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#GetNetworkInsightsAccessScopeAnalysisFindingsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#GetNetworkInsightsAccessScopeAnalysisFindingsRequest": { - "type": "structure", - "members": { - "NetworkInsightsAccessScopeAnalysisId": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisId", + }, + "Port": { + "target": "com.amazonaws.ec2#Port", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Network Access Scope analysis.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Port", + "smithy.api#documentation": "

The port.

", + "smithy.api#xmlName": "port" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#GetNetworkInsightsAccessScopeAnalysisFindingsMaxResults", + "PortRanges": { + "target": "com.amazonaws.ec2#PortRangeList", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n To retrieve the remaining results, make another call with the returned nextToken value.

" + "aws.protocols#ec2QueryName": "PortRangeSet", + "smithy.api#documentation": "

The port ranges.

", + "smithy.api#xmlName": "portRangeSet" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "PrefixList": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "aws.protocols#ec2QueryName": "PrefixList", + "smithy.api#documentation": "

The prefix list.

", + "smithy.api#xmlName": "prefixList" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Protocols": { + "target": "com.amazonaws.ec2#StringList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "ProtocolSet", + "smithy.api#documentation": "

The protocols.

", + "smithy.api#xmlName": "protocolSet" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#GetNetworkInsightsAccessScopeAnalysisFindingsResult": { - "type": "structure", - "members": { - "NetworkInsightsAccessScopeAnalysisId": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisId", + }, + "RouteTableRoute": { + "target": "com.amazonaws.ec2#AnalysisRouteTableRoute", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeAnalysisId", - "smithy.api#documentation": "

The ID of the Network Access Scope analysis.

", - "smithy.api#xmlName": "networkInsightsAccessScopeAnalysisId" + "aws.protocols#ec2QueryName": "RouteTableRoute", + "smithy.api#documentation": "

The route table route.

", + "smithy.api#xmlName": "routeTableRoute" } }, - "AnalysisStatus": { - "target": "com.amazonaws.ec2#AnalysisStatus", + "RouteTable": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "aws.protocols#ec2QueryName": "AnalysisStatus", - "smithy.api#documentation": "

The status of Network Access Scope Analysis.

", - "smithy.api#xmlName": "analysisStatus" + "aws.protocols#ec2QueryName": "RouteTable", + "smithy.api#documentation": "

The route table.

", + "smithy.api#xmlName": "routeTable" } }, - "AnalysisFindings": { - "target": "com.amazonaws.ec2#AccessScopeAnalysisFindingList", + "SecurityGroup": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "aws.protocols#ec2QueryName": "AnalysisFindingSet", - "smithy.api#documentation": "

The findings associated with Network Access Scope Analysis.

", - "smithy.api#xmlName": "analysisFindingSet" + "aws.protocols#ec2QueryName": "SecurityGroup", + "smithy.api#documentation": "

The security group.

", + "smithy.api#xmlName": "securityGroup" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "SecurityGroupRule": { + "target": "com.amazonaws.ec2#AnalysisSecurityGroupRule", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#GetNetworkInsightsAccessScopeContent": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetNetworkInsightsAccessScopeContentRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetNetworkInsightsAccessScopeContentResult" - }, - "traits": { - "smithy.api#documentation": "

Gets the content for the specified Network Access Scope.

" - } - }, - "com.amazonaws.ec2#GetNetworkInsightsAccessScopeContentRequest": { - "type": "structure", - "members": { - "NetworkInsightsAccessScopeId": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Network Access Scope.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "SecurityGroupRule", + "smithy.api#documentation": "

The security group rule.

", + "smithy.api#xmlName": "securityGroupRule" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#GetNetworkInsightsAccessScopeContentResult": { - "type": "structure", - "members": { - "NetworkInsightsAccessScopeContent": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeContent", - "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeContent", - "smithy.api#documentation": "

The Network Access Scope content.

", - "smithy.api#xmlName": "networkInsightsAccessScopeContent" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#GetPasswordData": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetPasswordDataRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetPasswordDataResult" - }, - "traits": { - "smithy.api#documentation": "

Retrieves the encrypted administrator password for a running Windows instance.

\n

The Windows password is generated at boot by the EC2Config service or\n EC2Launch scripts (Windows Server 2016 and later). This usually only\n happens the first time an instance is launched. For more information, see EC2Config and EC2Launch in the\n Amazon EC2 User Guide.

\n

For the EC2Config service, the password is not generated for rebundled\n AMIs unless Ec2SetPassword is enabled before bundling.

\n

The password is encrypted using the key pair that you specified when you launched the\n instance. You must provide the corresponding key pair file.

\n

When you launch an instance, password generation and encryption may take a few\n minutes. If you try to retrieve the password before it's available, the output returns\n an empty string. We recommend that you wait up to 15 minutes after launching an instance\n before trying to retrieve the generated password.

", - "smithy.waiters#waitable": { - "PasswordDataAvailable": { - "acceptors": [ - { - "state": "success", - "matcher": { - "output": { - "path": "length(PasswordData) > `0`", - "expected": "true", - "comparator": "booleanEquals" - } - } - } - ], - "minDelay": 15 - } - } - } - }, - "com.amazonaws.ec2#GetPasswordDataRequest": { - "type": "structure", - "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", + "SecurityGroups": { + "target": "com.amazonaws.ec2#AnalysisComponentList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Windows instance.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "SecurityGroupSet", + "smithy.api#documentation": "

The security groups.

", + "smithy.api#xmlName": "securityGroupSet" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "SourceVpc": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "SourceVpc", + "smithy.api#documentation": "

The source VPC.

", + "smithy.api#xmlName": "sourceVpc" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#GetPasswordDataResult": { - "type": "structure", - "members": { - "InstanceId": { + }, + "State": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the Windows instance.

", - "smithy.api#xmlName": "instanceId" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state.

", + "smithy.api#xmlName": "state" } }, - "PasswordData": { - "target": "com.amazonaws.ec2#PasswordData", + "Subnet": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "aws.protocols#ec2QueryName": "PasswordData", - "smithy.api#documentation": "

The password of the instance. Returns an empty string if the password is not\n available.

", - "smithy.api#xmlName": "passwordData" + "aws.protocols#ec2QueryName": "Subnet", + "smithy.api#documentation": "

The subnet.

", + "smithy.api#xmlName": "subnet" } }, - "Timestamp": { - "target": "com.amazonaws.ec2#DateTime", + "SubnetRouteTable": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "aws.protocols#ec2QueryName": "Timestamp", - "smithy.api#documentation": "

The time the data was last updated.

", - "smithy.api#xmlName": "timestamp" + "aws.protocols#ec2QueryName": "SubnetRouteTable", + "smithy.api#documentation": "

The route table for the subnet.

", + "smithy.api#xmlName": "subnetRouteTable" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#GetReservedInstancesExchangeQuote": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetReservedInstancesExchangeQuoteRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetReservedInstancesExchangeQuoteResult" - }, - "traits": { - "smithy.api#documentation": "

Returns a quote and exchange information for exchanging one or more specified\n Convertible Reserved Instances for a new Convertible Reserved Instance. If the exchange\n cannot be performed, the reason is returned in the response. Use AcceptReservedInstancesExchangeQuote to perform the exchange.

" - } - }, - "com.amazonaws.ec2#GetReservedInstancesExchangeQuoteRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "Vpc": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "Vpc", + "smithy.api#documentation": "

The component VPC.

", + "smithy.api#xmlName": "vpc" } }, - "ReservedInstanceIds": { - "target": "com.amazonaws.ec2#ReservedInstanceIdSet", + "VpcEndpoint": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the Convertible Reserved Instances to exchange.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "ReservedInstanceId" + "aws.protocols#ec2QueryName": "VpcEndpoint", + "smithy.api#documentation": "

The VPC endpoint.

", + "smithy.api#xmlName": "vpcEndpoint" } }, - "TargetConfigurations": { - "target": "com.amazonaws.ec2#TargetConfigurationRequestSet", + "VpnConnection": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "smithy.api#documentation": "

The configuration of the target Convertible Reserved Instance to exchange for your\n current Convertible Reserved Instances.

", - "smithy.api#xmlName": "TargetConfiguration" + "aws.protocols#ec2QueryName": "VpnConnection", + "smithy.api#documentation": "

The VPN connection.

", + "smithy.api#xmlName": "vpnConnection" } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the parameters for GetReservedInstanceExchangeQuote.

", - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#GetReservedInstancesExchangeQuoteResult": { - "type": "structure", - "members": { - "CurrencyCode": { - "target": "com.amazonaws.ec2#String", + }, + "VpnGateway": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "aws.protocols#ec2QueryName": "CurrencyCode", - "smithy.api#documentation": "

The currency of the transaction.

", - "smithy.api#xmlName": "currencyCode" + "aws.protocols#ec2QueryName": "VpnGateway", + "smithy.api#documentation": "

The VPN gateway.

", + "smithy.api#xmlName": "vpnGateway" } }, - "IsValidExchange": { - "target": "com.amazonaws.ec2#Boolean", + "TransitGateway": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "aws.protocols#ec2QueryName": "IsValidExchange", - "smithy.api#documentation": "

If true, the exchange is valid. If false, the exchange cannot be completed.

", - "smithy.api#xmlName": "isValidExchange" + "aws.protocols#ec2QueryName": "TransitGateway", + "smithy.api#documentation": "

The transit gateway.

", + "smithy.api#xmlName": "transitGateway" } }, - "OutputReservedInstancesWillExpireAt": { - "target": "com.amazonaws.ec2#DateTime", + "TransitGatewayRouteTable": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "aws.protocols#ec2QueryName": "OutputReservedInstancesWillExpireAt", - "smithy.api#documentation": "

The new end date of the reservation term.

", - "smithy.api#xmlName": "outputReservedInstancesWillExpireAt" + "aws.protocols#ec2QueryName": "TransitGatewayRouteTable", + "smithy.api#documentation": "

The transit gateway route table.

", + "smithy.api#xmlName": "transitGatewayRouteTable" } }, - "PaymentDue": { - "target": "com.amazonaws.ec2#String", + "TransitGatewayRouteTableRoute": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableRoute", "traits": { - "aws.protocols#ec2QueryName": "PaymentDue", - "smithy.api#documentation": "

The total true upfront charge for the exchange.

", - "smithy.api#xmlName": "paymentDue" + "aws.protocols#ec2QueryName": "TransitGatewayRouteTableRoute", + "smithy.api#documentation": "

The transit gateway route table route.

", + "smithy.api#xmlName": "transitGatewayRouteTableRoute" } }, - "ReservedInstanceValueRollup": { - "target": "com.amazonaws.ec2#ReservationValue", + "TransitGatewayAttachment": { + "target": "com.amazonaws.ec2#AnalysisComponent", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstanceValueRollup", - "smithy.api#documentation": "

The cost associated with the Reserved Instance.

", - "smithy.api#xmlName": "reservedInstanceValueRollup" + "aws.protocols#ec2QueryName": "TransitGatewayAttachment", + "smithy.api#documentation": "

The transit gateway attachment.

", + "smithy.api#xmlName": "transitGatewayAttachment" } }, - "ReservedInstanceValueSet": { - "target": "com.amazonaws.ec2#ReservedInstanceReservationValueSet", + "ComponentAccount": { + "target": "com.amazonaws.ec2#ComponentAccount", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstanceValueSet", - "smithy.api#documentation": "

The configuration of your Convertible Reserved Instances.

", - "smithy.api#xmlName": "reservedInstanceValueSet" + "aws.protocols#ec2QueryName": "ComponentAccount", + "smithy.api#documentation": "

The Amazon Web Services account for the component.

", + "smithy.api#xmlName": "componentAccount" } }, - "TargetConfigurationValueRollup": { - "target": "com.amazonaws.ec2#ReservationValue", + "ComponentRegion": { + "target": "com.amazonaws.ec2#ComponentRegion", "traits": { - "aws.protocols#ec2QueryName": "TargetConfigurationValueRollup", - "smithy.api#documentation": "

The cost associated with the Reserved Instance.

", - "smithy.api#xmlName": "targetConfigurationValueRollup" + "aws.protocols#ec2QueryName": "ComponentRegion", + "smithy.api#documentation": "

The Region for the component.

", + "smithy.api#xmlName": "componentRegion" } }, - "TargetConfigurationValueSet": { - "target": "com.amazonaws.ec2#TargetReservationValueSet", + "FirewallStatelessRule": { + "target": "com.amazonaws.ec2#FirewallStatelessRule", "traits": { - "aws.protocols#ec2QueryName": "TargetConfigurationValueSet", - "smithy.api#documentation": "

The values of the target Convertible Reserved Instances.

", - "smithy.api#xmlName": "targetConfigurationValueSet" + "aws.protocols#ec2QueryName": "FirewallStatelessRule", + "smithy.api#documentation": "

The Network Firewall stateless rule.

", + "smithy.api#xmlName": "firewallStatelessRule" } }, - "ValidationFailureReason": { - "target": "com.amazonaws.ec2#String", + "FirewallStatefulRule": { + "target": "com.amazonaws.ec2#FirewallStatefulRule", "traits": { - "aws.protocols#ec2QueryName": "ValidationFailureReason", - "smithy.api#documentation": "

Describes the reason why the exchange cannot be completed.

", - "smithy.api#xmlName": "validationFailureReason" + "aws.protocols#ec2QueryName": "FirewallStatefulRule", + "smithy.api#documentation": "

The Network Firewall stateful rule.

", + "smithy.api#xmlName": "firewallStatefulRule" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of GetReservedInstancesExchangeQuote.

", - "smithy.api#output": {} + "smithy.api#documentation": "

Describes an explanation code for an unreachable path. For more information, see Reachability Analyzer explanation codes.

" } }, - "com.amazonaws.ec2#GetSecurityGroupsForVpc": { + "com.amazonaws.ec2#ExplanationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Explanation", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ExportClientVpnClientCertificateRevocationList": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetSecurityGroupsForVpcRequest" + "target": "com.amazonaws.ec2#ExportClientVpnClientCertificateRevocationListRequest" }, "output": { - "target": "com.amazonaws.ec2#GetSecurityGroupsForVpcResult" + "target": "com.amazonaws.ec2#ExportClientVpnClientCertificateRevocationListResult" }, "traits": { - "smithy.api#documentation": "

Gets security groups that can be associated by the Amazon Web Services account making the request with network interfaces in the specified VPC.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "SecurityGroupForVpcs", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Downloads the client certificate revocation list for the specified Client VPN endpoint.

" } }, - "com.amazonaws.ec2#GetSecurityGroupsForVpcRequest": { + "com.amazonaws.ec2#ExportClientVpnClientCertificateRevocationListRequest": { "type": "structure", "members": { - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "ClientVpnEndpointId": { + "target": "com.amazonaws.ec2#ClientVpnEndpointId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The VPC ID where the security group can be used.

", + "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", "smithy.api#required": {} } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" - } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#GetSecurityGroupsForVpcRequestMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" - } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", - "traits": { - "smithy.api#documentation": "

The filters. If using multiple filters, the results include security groups which match all filters.

\n ", - "smithy.api#xmlName": "Filter" - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -53493,32 +54600,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetSecurityGroupsForVpcRequestMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#GetSecurityGroupsForVpcResult": { + "com.amazonaws.ec2#ExportClientVpnClientCertificateRevocationListResult": { "type": "structure", "members": { - "NextToken": { + "CertificateRevocationList": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "CertificateRevocationList", + "smithy.api#documentation": "

Information about the client certificate revocation list.

", + "smithy.api#xmlName": "certificateRevocationList" } }, - "SecurityGroupForVpcs": { - "target": "com.amazonaws.ec2#SecurityGroupForVpcList", + "Status": { + "target": "com.amazonaws.ec2#ClientCertificateRevocationListStatus", "traits": { - "aws.protocols#ec2QueryName": "SecurityGroupForVpcSet", - "smithy.api#documentation": "

The security group that can be used by interfaces in the VPC.

", - "smithy.api#xmlName": "securityGroupForVpcSet" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The current state of the client certificate revocation list.

", + "smithy.api#xmlName": "status" } } }, @@ -53526,21 +54624,29 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetSerialConsoleAccessStatus": { + "com.amazonaws.ec2#ExportClientVpnClientConfiguration": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetSerialConsoleAccessStatusRequest" + "target": "com.amazonaws.ec2#ExportClientVpnClientConfigurationRequest" }, "output": { - "target": "com.amazonaws.ec2#GetSerialConsoleAccessStatusResult" + "target": "com.amazonaws.ec2#ExportClientVpnClientConfigurationResult" }, "traits": { - "smithy.api#documentation": "

Retrieves the access status of your account to the EC2 serial console of all instances. By\n\t\t\tdefault, access to the EC2 serial console is disabled for your account. For more\n\t\t\tinformation, see Manage account access to the EC2 serial console in the Amazon EC2\n\t\t\t\tUser Guide.

" + "smithy.api#documentation": "

Downloads the contents of the Client VPN endpoint configuration file for the specified Client VPN endpoint. The Client VPN endpoint configuration \n\t\t\tfile includes the Client VPN endpoint and certificate information clients need to establish a connection \n\t\t\twith the Client VPN endpoint.

" } }, - "com.amazonaws.ec2#GetSerialConsoleAccessStatusRequest": { + "com.amazonaws.ec2#ExportClientVpnClientConfigurationRequest": { "type": "structure", "members": { + "ClientVpnEndpointId": { + "target": "com.amazonaws.ec2#ClientVpnEndpointId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Client VPN endpoint.

", + "smithy.api#required": {} + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { @@ -53552,15 +54658,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetSerialConsoleAccessStatusResult": { + "com.amazonaws.ec2#ExportClientVpnClientConfigurationResult": { "type": "structure", "members": { - "SerialConsoleAccessEnabled": { - "target": "com.amazonaws.ec2#Boolean", + "ClientConfiguration": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SerialConsoleAccessEnabled", - "smithy.api#documentation": "

If true, access to the EC2 serial console of all instances is enabled for\n\t\t\tyour account. If false, access to the EC2 serial console of all instances\n\t\t\tis disabled for your account.

", - "smithy.api#xmlName": "serialConsoleAccessEnabled" + "aws.protocols#ec2QueryName": "ClientConfiguration", + "smithy.api#documentation": "

The contents of the Client VPN endpoint configuration file.

", + "smithy.api#xmlName": "clientConfiguration" } } }, @@ -53568,125 +54674,98 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetSnapshotBlockPublicAccessState": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetSnapshotBlockPublicAccessStateRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetSnapshotBlockPublicAccessStateResult" - }, - "traits": { - "smithy.api#documentation": "

Gets the current state of block public access for snapshots setting \n for the account and Region.

\n

For more information, see \n Block public access for snapshots in the Amazon EBS User Guide.

" - } - }, - "com.amazonaws.ec2#GetSnapshotBlockPublicAccessStateRequest": { - "type": "structure", + "com.amazonaws.ec2#ExportEnvironment": { + "type": "enum", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "citrix": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "citrix" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#GetSnapshotBlockPublicAccessStateResult": { - "type": "structure", - "members": { - "State": { - "target": "com.amazonaws.ec2#SnapshotBlockPublicAccessState", + }, + "vmware": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The current state of block public access for snapshots. Possible values include:

\n ", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "vmware" + } + }, + "microsoft": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "microsoft" } } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetSpotPlacementScores": { + "com.amazonaws.ec2#ExportImage": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetSpotPlacementScoresRequest" + "target": "com.amazonaws.ec2#ExportImageRequest" }, "output": { - "target": "com.amazonaws.ec2#GetSpotPlacementScoresResult" + "target": "com.amazonaws.ec2#ExportImageResult" }, "traits": { - "smithy.api#documentation": "

Calculates the Spot placement score for a Region or Availability Zone based on the\n specified target capacity and compute requirements.

\n

You can specify your compute requirements either by using\n InstanceRequirementsWithMetadata and letting Amazon EC2 choose the optimal\n instance types to fulfill your Spot request, or you can specify the instance types by using\n InstanceTypes.

\n

For more information, see Spot placement score in\n the Amazon EC2 User Guide.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "SpotPlacementScores", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Exports an Amazon Machine Image (AMI) to a VM file. For more information, see Exporting a VM\n directly from an Amazon Machine Image (AMI) in the\n VM Import/Export User Guide.

" } }, - "com.amazonaws.ec2#GetSpotPlacementScoresRequest": { + "com.amazonaws.ec2#ExportImageRequest": { "type": "structure", "members": { - "InstanceTypes": { - "target": "com.amazonaws.ec2#InstanceTypes", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The instance types. We recommend that you specify at least three instance types. If you\n specify one or two instance types, or specify variations of a single instance type (for\n example, an m3.xlarge with and without instance storage), the returned\n placement score will always be low.

\n

If you specify InstanceTypes, you can't specify\n InstanceRequirementsWithMetadata.

", - "smithy.api#xmlName": "InstanceType" + "smithy.api#documentation": "

Token to enable idempotency for export image requests.

", + "smithy.api#idempotencyToken": {} } }, - "TargetCapacity": { - "target": "com.amazonaws.ec2#SpotPlacementScoresTargetCapacity", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The target capacity.

", - "smithy.api#required": {} + "smithy.api#documentation": "

A description of the image being exported. The maximum length is 255 characters.

" } }, - "TargetCapacityUnitType": { - "target": "com.amazonaws.ec2#TargetCapacityUnitType", + "DiskImageFormat": { + "target": "com.amazonaws.ec2#DiskImageFormat", "traits": { - "smithy.api#documentation": "

The unit for the target capacity.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The disk image format.

", + "smithy.api#required": {} } }, - "SingleAvailabilityZone": { + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Specify true so that the response returns a list of scored Availability Zones.\n Otherwise, the response returns a list of scored Regions.

\n

A list of scored Availability Zones is useful if you want to launch all of your Spot\n capacity into a single Availability Zone.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "RegionNames": { - "target": "com.amazonaws.ec2#RegionNames", + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { - "smithy.api#documentation": "

The Regions used to narrow down the list of Regions to be scored. Enter the Region code,\n for example, us-east-1.

", - "smithy.api#xmlName": "RegionName" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the image.

", + "smithy.api#required": {} } }, - "InstanceRequirementsWithMetadata": { - "target": "com.amazonaws.ec2#InstanceRequirementsWithMetadataRequest", + "S3ExportLocation": { + "target": "com.amazonaws.ec2#ExportTaskS3LocationRequest", "traits": { - "smithy.api#documentation": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will\n identify instance types with those attributes.

\n

If you specify InstanceRequirementsWithMetadata, you can't specify\n InstanceTypes.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The Amazon S3 bucket for the destination image. The destination bucket must exist.

", + "smithy.api#required": {} } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "RoleName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The name of the role that grants VM Import/Export permission to export images to your Amazon\n S3 bucket. If this parameter is not specified, the default role is named 'vmimport'.

" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#SpotPlacementScoresMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" - } - }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#documentation": "

The tags to apply to the export image task during creation.

", + "smithy.api#xmlName": "TagSpecification" } } }, @@ -53694,336 +54773,463 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetSpotPlacementScoresResult": { + "com.amazonaws.ec2#ExportImageResult": { "type": "structure", "members": { - "SpotPlacementScores": { - "target": "com.amazonaws.ec2#SpotPlacementScores", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SpotPlacementScoreSet", - "smithy.api#documentation": "

The Spot placement score for the top 10 Regions or Availability Zones, scored on a scale\n from 1 to 10. Each score\u2028 reflects how likely it is that each Region or Availability Zone\n will succeed at fulfilling the specified target capacity\u2028 at the time of the Spot\n placement score request. A score of 10 means that your Spot\n capacity request is highly likely to succeed in that Region or Availability Zone.

\n

If you request a Spot placement score for Regions, a high score assumes that your fleet\n request will be configured to use all Availability Zones and the\n capacity-optimized allocation strategy. If you request a Spot placement\n score for Availability Zones, a high score assumes that your fleet request will be\n configured to use a single Availability Zone and the capacity-optimized\n allocation strategy.

\n

Different\u2028 Regions or Availability Zones might return the same score.

\n \n

The Spot placement score serves as a recommendation only. No score guarantees that your\n Spot request will be fully or partially fulfilled.

\n
", - "smithy.api#xmlName": "spotPlacementScoreSet" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description of the image being exported.

", + "smithy.api#xmlName": "description" } }, - "NextToken": { + "DiskImageFormat": { + "target": "com.amazonaws.ec2#DiskImageFormat", + "traits": { + "aws.protocols#ec2QueryName": "DiskImageFormat", + "smithy.api#documentation": "

The disk image format for the exported image.

", + "smithy.api#xmlName": "diskImageFormat" + } + }, + "ExportImageTaskId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "ExportImageTaskId", + "smithy.api#documentation": "

The ID of the export image task.

", + "smithy.api#xmlName": "exportImageTaskId" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#GetSubnetCidrReservations": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetSubnetCidrReservationsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetSubnetCidrReservationsResult" - }, - "traits": { - "smithy.api#documentation": "

Gets information about the subnet CIDR reservations.

" - } - }, - "com.amazonaws.ec2#GetSubnetCidrReservationsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#GetSubnetCidrReservationsRequest": { - "type": "structure", - "members": { - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + }, + "ImageId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

One or more filters.

\n ", - "smithy.api#xmlName": "Filter" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the image.

", + "smithy.api#xmlName": "imageId" } }, - "SubnetId": { - "target": "com.amazonaws.ec2#SubnetId", + "RoleName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the subnet.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "RoleName", + "smithy.api#documentation": "

The name of the role that grants VM Import/Export permission to export images to your Amazon\n S3 bucket.

", + "smithy.api#xmlName": "roleName" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Progress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "Progress", + "smithy.api#documentation": "

The percent complete of the export image task.

", + "smithy.api#xmlName": "progress" } }, - "NextToken": { + "S3ExportLocation": { + "target": "com.amazonaws.ec2#ExportTaskS3Location", + "traits": { + "aws.protocols#ec2QueryName": "S3ExportLocation", + "smithy.api#documentation": "

Information about the destination Amazon S3 bucket.

", + "smithy.api#xmlName": "s3ExportLocation" + } + }, + "Status": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The status of the export image task. The possible values are active, completed,\n deleting, and deleted.

", + "smithy.api#xmlName": "status" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#GetSubnetCidrReservationsMaxResults", + "StatusMessage": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "aws.protocols#ec2QueryName": "StatusMessage", + "smithy.api#documentation": "

The status message for the export image task.

", + "smithy.api#xmlName": "statusMessage" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the export image task.

", + "smithy.api#xmlName": "tagSet" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetSubnetCidrReservationsResult": { + "com.amazonaws.ec2#ExportImageTask": { "type": "structure", "members": { - "SubnetIpv4CidrReservations": { - "target": "com.amazonaws.ec2#SubnetCidrReservationList", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SubnetIpv4CidrReservationSet", - "smithy.api#documentation": "

Information about the IPv4 subnet CIDR reservations.

", - "smithy.api#xmlName": "subnetIpv4CidrReservationSet" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description of the image being exported.

", + "smithy.api#xmlName": "description" } }, - "SubnetIpv6CidrReservations": { - "target": "com.amazonaws.ec2#SubnetCidrReservationList", + "ExportImageTaskId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SubnetIpv6CidrReservationSet", - "smithy.api#documentation": "

Information about the IPv6 subnet CIDR reservations.

", - "smithy.api#xmlName": "subnetIpv6CidrReservationSet" + "aws.protocols#ec2QueryName": "ExportImageTaskId", + "smithy.api#documentation": "

The ID of the export image task.

", + "smithy.api#xmlName": "exportImageTaskId" } }, - "NextToken": { + "ImageId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the image.

", + "smithy.api#xmlName": "imageId" + } + }, + "Progress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Progress", + "smithy.api#documentation": "

The percent complete of the export image task.

", + "smithy.api#xmlName": "progress" + } + }, + "S3ExportLocation": { + "target": "com.amazonaws.ec2#ExportTaskS3Location", + "traits": { + "aws.protocols#ec2QueryName": "S3ExportLocation", + "smithy.api#documentation": "

Information about the destination Amazon S3 bucket.

", + "smithy.api#xmlName": "s3ExportLocation" + } + }, + "Status": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The status of the export image task. The possible values are active, completed,\n deleting, and deleted.

", + "smithy.api#xmlName": "status" + } + }, + "StatusMessage": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "StatusMessage", + "smithy.api#documentation": "

The status message for the export image task.

", + "smithy.api#xmlName": "statusMessage" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the export image task.

", + "smithy.api#xmlName": "tagSet" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes an export image task.

" } }, - "com.amazonaws.ec2#GetTransitGatewayAttachmentPropagations": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetTransitGatewayAttachmentPropagationsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetTransitGatewayAttachmentPropagationsResult" - }, - "traits": { - "smithy.api#documentation": "

Lists the route tables to which the specified resource attachment propagates routes.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "TransitGatewayAttachmentPropagations", - "pageSize": "MaxResults" + "com.amazonaws.ec2#ExportImageTaskId": { + "type": "string" + }, + "com.amazonaws.ec2#ExportImageTaskIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ExportImageTaskId", + "traits": { + "smithy.api#xmlName": "ExportImageTaskId" } } }, - "com.amazonaws.ec2#GetTransitGatewayAttachmentPropagationsRequest": { + "com.amazonaws.ec2#ExportImageTaskList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ExportImageTask", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ExportTask": { "type": "structure", "members": { - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the attachment.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description of the resource being exported.

", + "smithy.api#xmlName": "description" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "ExportTaskId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", - "smithy.api#xmlName": "Filter" + "aws.protocols#ec2QueryName": "ExportTaskId", + "smithy.api#documentation": "

The ID of the export task.

", + "smithy.api#xmlName": "exportTaskId" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "ExportToS3Task": { + "target": "com.amazonaws.ec2#ExportToS3Task", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "aws.protocols#ec2QueryName": "ExportToS3", + "smithy.api#documentation": "

Information about the export task.

", + "smithy.api#xmlName": "exportToS3" } }, - "NextToken": { + "InstanceExportDetails": { + "target": "com.amazonaws.ec2#InstanceExportDetails", + "traits": { + "aws.protocols#ec2QueryName": "InstanceExport", + "smithy.api#documentation": "

Information about the instance to export.

", + "smithy.api#xmlName": "instanceExport" + } + }, + "State": { + "target": "com.amazonaws.ec2#ExportTaskState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the export task.

", + "smithy.api#xmlName": "state" + } + }, + "StatusMessage": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "aws.protocols#ec2QueryName": "StatusMessage", + "smithy.api#documentation": "

The status message related to the export task.

", + "smithy.api#xmlName": "statusMessage" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags for the export task.

", + "smithy.api#xmlName": "tagSet" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes an export instance task.

" } }, - "com.amazonaws.ec2#GetTransitGatewayAttachmentPropagationsResult": { + "com.amazonaws.ec2#ExportTaskId": { + "type": "string" + }, + "com.amazonaws.ec2#ExportTaskIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ExportTaskId", + "traits": { + "smithy.api#xmlName": "ExportTaskId" + } + } + }, + "com.amazonaws.ec2#ExportTaskList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ExportTask", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ExportTaskS3Location": { "type": "structure", "members": { - "TransitGatewayAttachmentPropagations": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentPropagationList", + "S3Bucket": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayAttachmentPropagations", - "smithy.api#documentation": "

Information about the propagation route tables.

", - "smithy.api#xmlName": "transitGatewayAttachmentPropagations" + "aws.protocols#ec2QueryName": "S3Bucket", + "smithy.api#documentation": "

The destination Amazon S3 bucket.

", + "smithy.api#xmlName": "s3Bucket" } }, - "NextToken": { + "S3Prefix": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "S3Prefix", + "smithy.api#documentation": "

The prefix (logical hierarchy) in the bucket.

", + "smithy.api#xmlName": "s3Prefix" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes the destination for an export image task.

" } }, - "com.amazonaws.ec2#GetTransitGatewayMulticastDomainAssociations": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetTransitGatewayMulticastDomainAssociationsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetTransitGatewayMulticastDomainAssociationsResult" + "com.amazonaws.ec2#ExportTaskS3LocationRequest": { + "type": "structure", + "members": { + "S3Bucket": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The destination Amazon S3 bucket.

", + "smithy.api#required": {} + } + }, + "S3Prefix": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The prefix (logical hierarchy) in the bucket.

" + } + } }, "traits": { - "smithy.api#documentation": "

Gets information about the associations for the transit gateway multicast domain.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "MulticastDomainAssociations", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Describes the destination for an export image task.

" } }, - "com.amazonaws.ec2#GetTransitGatewayMulticastDomainAssociationsRequest": { - "type": "structure", + "com.amazonaws.ec2#ExportTaskState": { + "type": "enum", "members": { - "TransitGatewayMulticastDomainId": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainId", + "active": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

", - "smithy.api#required": {} + "smithy.api#enumValue": "active" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "cancelling": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#enumValue": "cancelling" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "cancelled": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#enumValue": "cancelled" } }, - "NextToken": { + "completed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "completed" + } + } + } + }, + "com.amazonaws.ec2#ExportToS3Task": { + "type": "structure", + "members": { + "ContainerFormat": { + "target": "com.amazonaws.ec2#ContainerFormat", + "traits": { + "aws.protocols#ec2QueryName": "ContainerFormat", + "smithy.api#documentation": "

The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is\n exported.

", + "smithy.api#xmlName": "containerFormat" + } + }, + "DiskImageFormat": { + "target": "com.amazonaws.ec2#DiskImageFormat", + "traits": { + "aws.protocols#ec2QueryName": "DiskImageFormat", + "smithy.api#documentation": "

The format for the exported image.

", + "smithy.api#xmlName": "diskImageFormat" + } + }, + "S3Bucket": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "aws.protocols#ec2QueryName": "S3Bucket", + "smithy.api#documentation": "

The Amazon S3 bucket for the destination image. The destination bucket must exist and have\n an access control list (ACL) attached that specifies the Region-specific canonical account ID for\n the Grantee. For more information about the ACL to your S3 bucket, see Prerequisites in the VM Import/Export User Guide.

", + "smithy.api#xmlName": "s3Bucket" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "S3Key": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "S3Key", + "smithy.api#documentation": "

The encryption key for your S3 bucket.

", + "smithy.api#xmlName": "s3Key" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes the format and location for the export task.

" } }, - "com.amazonaws.ec2#GetTransitGatewayMulticastDomainAssociationsResult": { + "com.amazonaws.ec2#ExportToS3TaskSpecification": { "type": "structure", "members": { - "MulticastDomainAssociations": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainAssociationList", + "DiskImageFormat": { + "target": "com.amazonaws.ec2#DiskImageFormat", "traits": { - "aws.protocols#ec2QueryName": "MulticastDomainAssociations", - "smithy.api#documentation": "

Information about the multicast domain associations.

", - "smithy.api#xmlName": "multicastDomainAssociations" + "aws.protocols#ec2QueryName": "DiskImageFormat", + "smithy.api#documentation": "

The format for the exported image.

", + "smithy.api#xmlName": "diskImageFormat" } }, - "NextToken": { + "ContainerFormat": { + "target": "com.amazonaws.ec2#ContainerFormat", + "traits": { + "aws.protocols#ec2QueryName": "ContainerFormat", + "smithy.api#documentation": "

The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is\n exported.

", + "smithy.api#xmlName": "containerFormat" + } + }, + "S3Bucket": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "S3Bucket", + "smithy.api#documentation": "

The Amazon S3 bucket for the destination image. The destination bucket must exist and have\n an access control list (ACL) attached that specifies the Region-specific canonical account ID for\n the Grantee. For more information about the ACL to your S3 bucket, see Prerequisites in the VM Import/Export User Guide.

", + "smithy.api#xmlName": "s3Bucket" + } + }, + "S3Prefix": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "S3Prefix", + "smithy.api#documentation": "

The image is written to a single object in the Amazon S3 bucket at the S3 key s3prefix +\n exportTaskId + '.' + diskImageFormat.

", + "smithy.api#xmlName": "s3Prefix" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes an export instance task.

" } }, - "com.amazonaws.ec2#GetTransitGatewayPolicyTableAssociations": { + "com.amazonaws.ec2#ExportTransitGatewayRoutes": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetTransitGatewayPolicyTableAssociationsRequest" + "target": "com.amazonaws.ec2#ExportTransitGatewayRoutesRequest" }, "output": { - "target": "com.amazonaws.ec2#GetTransitGatewayPolicyTableAssociationsResult" + "target": "com.amazonaws.ec2#ExportTransitGatewayRoutesResult" }, "traits": { - "smithy.api#documentation": "

Gets a list of the transit gateway policy table associations.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "Associations", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Exports routes from the specified transit gateway route table to the specified S3 bucket.\n By default, all routes are exported. Alternatively, you can filter by CIDR range.

\n

The routes are saved to the specified bucket in a JSON file. For more information, see\n Export route tables\n to Amazon S3 in the Amazon Web Services Transit Gateways Guide.

" } }, - "com.amazonaws.ec2#GetTransitGatewayPolicyTableAssociationsRequest": { + "com.amazonaws.ec2#ExportTransitGatewayRoutesRequest": { "type": "structure", "members": { - "TransitGatewayPolicyTableId": { - "target": "com.amazonaws.ec2#TransitGatewayPolicyTableId", + "TransitGatewayRouteTableId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway policy table.

", + "smithy.api#documentation": "

The ID of the route table.

", "smithy.api#required": {} } }, "Filters": { "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

The filters associated with the transit gateway policy table.

", + "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", "smithy.api#xmlName": "Filter" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#TransitGatewayMaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" - } - }, - "NextToken": { + "S3Bucket": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The name of the S3 bucket.

", + "smithy.api#required": {} } }, "DryRun": { @@ -54037,23 +55243,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetTransitGatewayPolicyTableAssociationsResult": { + "com.amazonaws.ec2#ExportTransitGatewayRoutesResult": { "type": "structure", "members": { - "Associations": { - "target": "com.amazonaws.ec2#TransitGatewayPolicyTableAssociationList", - "traits": { - "aws.protocols#ec2QueryName": "Associations", - "smithy.api#documentation": "

Returns details about the transit gateway policy table association.

", - "smithy.api#xmlName": "associations" - } - }, - "NextToken": { + "S3Location": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token for the next page of results.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "S3Location", + "smithy.api#documentation": "

The URL of the exported file in Amazon S3. For example, \n s3://bucket_name/VPCTransitGateway/TransitGatewayRouteTables/file_name.

", + "smithy.api#xmlName": "s3Location" } } }, @@ -54061,2110 +55259,2060 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetTransitGatewayPolicyTableEntries": { + "com.amazonaws.ec2#ExportVerifiedAccessInstanceClientConfiguration": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#GetTransitGatewayPolicyTableEntriesRequest" + "target": "com.amazonaws.ec2#ExportVerifiedAccessInstanceClientConfigurationRequest" }, "output": { - "target": "com.amazonaws.ec2#GetTransitGatewayPolicyTableEntriesResult" + "target": "com.amazonaws.ec2#ExportVerifiedAccessInstanceClientConfigurationResult" }, "traits": { - "smithy.api#documentation": "

Returns a list of transit gateway policy table entries.

" + "smithy.api#documentation": "

Exports the client configuration for a Verified Access instance.

" } }, - "com.amazonaws.ec2#GetTransitGatewayPolicyTableEntriesRequest": { + "com.amazonaws.ec2#ExportVerifiedAccessInstanceClientConfigurationRequest": { "type": "structure", "members": { - "TransitGatewayPolicyTableId": { - "target": "com.amazonaws.ec2#TransitGatewayPolicyTableId", + "VerifiedAccessInstanceId": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway policy table.

", + "smithy.api#documentation": "

The ID of the Verified Access instance.

", "smithy.api#required": {} } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The filters associated with the transit gateway policy table.

", - "smithy.api#xmlName": "Filter" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ExportVerifiedAccessInstanceClientConfigurationResult": { + "type": "structure", + "members": { + "Version": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Version", + "smithy.api#documentation": "

The version.

", + "smithy.api#xmlName": "version" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "VerifiedAccessInstanceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "aws.protocols#ec2QueryName": "VerifiedAccessInstanceId", + "smithy.api#documentation": "

The ID of the Verified Access instance.

", + "smithy.api#xmlName": "verifiedAccessInstanceId" } }, - "NextToken": { + "Region": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "aws.protocols#ec2QueryName": "Region", + "smithy.api#documentation": "

The Region.

", + "smithy.api#xmlName": "region" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "DeviceTrustProviders": { + "target": "com.amazonaws.ec2#DeviceTrustProviderTypeList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "DeviceTrustProviderSet", + "smithy.api#documentation": "

The device trust providers.

", + "smithy.api#xmlName": "deviceTrustProviderSet" + } + }, + "UserTrustProvider": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceUserTrustProviderClientConfiguration", + "traits": { + "aws.protocols#ec2QueryName": "UserTrustProvider", + "smithy.api#documentation": "

The user identity trust provider.

", + "smithy.api#xmlName": "userTrustProvider" + } + }, + "OpenVpnConfigurations": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceOpenVpnClientConfigurationList", + "traits": { + "aws.protocols#ec2QueryName": "OpenVpnConfigurationSet", + "smithy.api#documentation": "

The Open VPN configuration.

", + "smithy.api#xmlName": "openVpnConfigurationSet" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#output": {} } }, - "com.amazonaws.ec2#GetTransitGatewayPolicyTableEntriesResult": { + "com.amazonaws.ec2#ExportVmTaskId": { + "type": "string" + }, + "com.amazonaws.ec2#FailedCapacityReservationFleetCancellationResult": { "type": "structure", "members": { - "TransitGatewayPolicyTableEntries": { - "target": "com.amazonaws.ec2#TransitGatewayPolicyTableEntryList", + "CapacityReservationFleetId": { + "target": "com.amazonaws.ec2#CapacityReservationFleetId", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayPolicyTableEntries", - "smithy.api#documentation": "

The entries for the transit gateway policy table.

", - "smithy.api#xmlName": "transitGatewayPolicyTableEntries" + "aws.protocols#ec2QueryName": "CapacityReservationFleetId", + "smithy.api#documentation": "

The ID of the Capacity Reservation Fleet that could not be cancelled.

", + "smithy.api#xmlName": "capacityReservationFleetId" + } + }, + "CancelCapacityReservationFleetError": { + "target": "com.amazonaws.ec2#CancelCapacityReservationFleetError", + "traits": { + "aws.protocols#ec2QueryName": "CancelCapacityReservationFleetError", + "smithy.api#documentation": "

Information about the Capacity Reservation Fleet cancellation error.

", + "smithy.api#xmlName": "cancelCapacityReservationFleetError" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes a Capacity Reservation Fleet that could not be cancelled.

" } }, - "com.amazonaws.ec2#GetTransitGatewayPrefixListReferences": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetTransitGatewayPrefixListReferencesRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetTransitGatewayPrefixListReferencesResult" - }, - "traits": { - "smithy.api#documentation": "

Gets information about the prefix list references in a specified transit gateway route table.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "TransitGatewayPrefixListReferences", - "pageSize": "MaxResults" + "com.amazonaws.ec2#FailedCapacityReservationFleetCancellationResultSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#FailedCapacityReservationFleetCancellationResult", + "traits": { + "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#GetTransitGatewayPrefixListReferencesRequest": { + "com.amazonaws.ec2#FailedQueuedPurchaseDeletion": { "type": "structure", "members": { - "TransitGatewayRouteTableId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "Error": { + "target": "com.amazonaws.ec2#DeleteQueuedReservedInstancesError", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway route table.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Error", + "smithy.api#documentation": "

The error.

", + "smithy.api#xmlName": "error" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "ReservedInstancesId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", - "smithy.api#xmlName": "Filter" + "aws.protocols#ec2QueryName": "ReservedInstancesId", + "smithy.api#documentation": "

The ID of the Reserved Instance.

", + "smithy.api#xmlName": "reservedInstancesId" } - }, - "MaxResults": { - "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + } + }, + "traits": { + "smithy.api#documentation": "

Describes a Reserved Instance whose queued purchase was not deleted.

" + } + }, + "com.amazonaws.ec2#FailedQueuedPurchaseDeletionSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#FailedQueuedPurchaseDeletion", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#FastLaunchImageIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageId", + "traits": { + "smithy.api#xmlName": "ImageId" + } + } + }, + "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationRequest": { + "type": "structure", + "members": { + "LaunchTemplateId": { + "target": "com.amazonaws.ec2#LaunchTemplateId", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#documentation": "

Specify the ID of the launch template that the AMI should use for Windows fast\n launch.

" } }, - "NextToken": { + "LaunchTemplateName": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#documentation": "

Specify the name of the launch template that the AMI should use for Windows fast\n launch.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Version": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Specify the version of the launch template that the AMI should use for Windows fast\n launch.

", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Request to create a launch template for a Windows fast launch enabled AMI.

\n \n

Note - You can specify either the LaunchTemplateName or the\n LaunchTemplateId, but not both.

\n
" } }, - "com.amazonaws.ec2#GetTransitGatewayPrefixListReferencesResult": { + "com.amazonaws.ec2#FastLaunchLaunchTemplateSpecificationResponse": { "type": "structure", "members": { - "TransitGatewayPrefixListReferences": { - "target": "com.amazonaws.ec2#TransitGatewayPrefixListReferenceSet", + "LaunchTemplateId": { + "target": "com.amazonaws.ec2#LaunchTemplateId", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayPrefixListReferenceSet", - "smithy.api#documentation": "

Information about the prefix list references.

", - "smithy.api#xmlName": "transitGatewayPrefixListReferenceSet" + "aws.protocols#ec2QueryName": "LaunchTemplateId", + "smithy.api#documentation": "

The ID of the launch template that the AMI uses for Windows fast launch.

", + "smithy.api#xmlName": "launchTemplateId" } }, - "NextToken": { + "LaunchTemplateName": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "LaunchTemplateName", + "smithy.api#documentation": "

The name of the launch template that the AMI uses for Windows fast launch.

", + "smithy.api#xmlName": "launchTemplateName" + } + }, + "Version": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Version", + "smithy.api#documentation": "

The version of the launch template that the AMI uses for Windows fast launch.

", + "smithy.api#xmlName": "version" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Identifies the launch template that the AMI uses for Windows fast launch.

" } }, - "com.amazonaws.ec2#GetTransitGatewayRouteTableAssociations": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetTransitGatewayRouteTableAssociationsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetTransitGatewayRouteTableAssociationsResult" + "com.amazonaws.ec2#FastLaunchResourceType": { + "type": "enum", + "members": { + "SNAPSHOT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "snapshot" + } + } + } + }, + "com.amazonaws.ec2#FastLaunchSnapshotConfigurationRequest": { + "type": "structure", + "members": { + "TargetResourceCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The number of pre-provisioned snapshots to keep on hand for a Windows fast launch enabled\n AMI.

" + } + } }, "traits": { - "smithy.api#documentation": "

Gets information about the associations for the specified transit gateway route table.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "Associations", - "pageSize": "MaxResults" - } + "smithy.api#documentation": "

Configuration settings for creating and managing pre-provisioned snapshots for a Windows\n fast launch enabled AMI.

" } }, - "com.amazonaws.ec2#GetTransitGatewayRouteTableAssociationsRequest": { + "com.amazonaws.ec2#FastLaunchSnapshotConfigurationResponse": { "type": "structure", "members": { - "TransitGatewayRouteTableId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "TargetResourceCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway route table.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "TargetResourceCount", + "smithy.api#documentation": "

The number of pre-provisioned snapshots requested to keep on hand for a Windows fast\n launch enabled AMI.

", + "smithy.api#xmlName": "targetResourceCount" } - }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + } + }, + "traits": { + "smithy.api#documentation": "

Configuration settings for creating and managing pre-provisioned snapshots for a Windows\n fast launch enabled Windows AMI.

" + } + }, + "com.amazonaws.ec2#FastLaunchStateCode": { + "type": "enum", + "members": { + "enabling": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#enumValue": "enabling" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "enabling_failed": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#enumValue": "enabling-failed" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "enabled": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#enumValue": "enabled" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "enabled_failed": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "enabled-failed" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#GetTransitGatewayRouteTableAssociationsResult": { - "type": "structure", - "members": { - "Associations": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableAssociationList", + }, + "disabling": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Associations", - "smithy.api#documentation": "

Information about the associations.

", - "smithy.api#xmlName": "associations" + "smithy.api#enumValue": "disabling" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "disabling_failed": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#enumValue": "disabling-failed" } } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#GetTransitGatewayRouteTablePropagations": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetTransitGatewayRouteTablePropagationsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetTransitGatewayRouteTablePropagationsResult" - }, - "traits": { - "smithy.api#documentation": "

Gets information about the route table propagations for the specified transit gateway route table.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "TransitGatewayRouteTablePropagations", - "pageSize": "MaxResults" - } } }, - "com.amazonaws.ec2#GetTransitGatewayRouteTablePropagationsRequest": { - "type": "structure", + "com.amazonaws.ec2#FastSnapshotRestoreStateCode": { + "type": "enum", "members": { - "TransitGatewayRouteTableId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "enabling": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway route table.

", - "smithy.api#required": {} + "smithy.api#enumValue": "enabling" } }, - "Filters": { - "target": "com.amazonaws.ec2#FilterList", + "optimizing": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", - "smithy.api#xmlName": "Filter" + "smithy.api#enumValue": "optimizing" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#TransitGatewayMaxResults", + "enabled": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + "smithy.api#enumValue": "enabled" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "disabling": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The token for the next page of results.

" + "smithy.api#enumValue": "disabling" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "disabled": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "disabled" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#GetTransitGatewayRouteTablePropagationsResult": { + "com.amazonaws.ec2#FederatedAuthentication": { "type": "structure", "members": { - "TransitGatewayRouteTablePropagations": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTablePropagationList", + "SamlProviderArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayRouteTablePropagations", - "smithy.api#documentation": "

Information about the route table propagations.

", - "smithy.api#xmlName": "transitGatewayRouteTablePropagations" + "aws.protocols#ec2QueryName": "SamlProviderArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM SAML identity provider.

", + "smithy.api#xmlName": "samlProviderArn" } }, - "NextToken": { + "SelfServiceSamlProviderArn": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "SelfServiceSamlProviderArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM SAML identity provider for the self-service portal.

", + "smithy.api#xmlName": "selfServiceSamlProviderArn" } } }, "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#GetVerifiedAccessEndpointPolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetVerifiedAccessEndpointPolicyRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetVerifiedAccessEndpointPolicyResult" - }, - "traits": { - "smithy.api#documentation": "

Get the Verified Access policy associated with the endpoint.

" + "smithy.api#documentation": "

Describes the IAM SAML identity providers used for federated authentication.

" } }, - "com.amazonaws.ec2#GetVerifiedAccessEndpointPolicyRequest": { + "com.amazonaws.ec2#FederatedAuthenticationRequest": { "type": "structure", "members": { - "VerifiedAccessEndpointId": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpointId", + "SAMLProviderArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Verified Access endpoint.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM SAML identity provider.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "SelfServiceSAMLProviderArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM SAML identity provider for the self-service portal.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

The IAM SAML identity provider used for federated authentication.

" } }, - "com.amazonaws.ec2#GetVerifiedAccessEndpointPolicyResult": { + "com.amazonaws.ec2#Filter": { "type": "structure", "members": { - "PolicyEnabled": { - "target": "com.amazonaws.ec2#Boolean", + "Name": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PolicyEnabled", - "smithy.api#documentation": "

The status of the Verified Access policy.

", - "smithy.api#xmlName": "policyEnabled" + "smithy.api#documentation": "

The name of the filter. Filter names are case-sensitive.

" } }, - "PolicyDocument": { - "target": "com.amazonaws.ec2#String", + "Values": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "aws.protocols#ec2QueryName": "PolicyDocument", - "smithy.api#documentation": "

The Verified Access policy document.

", - "smithy.api#xmlName": "policyDocument" + "smithy.api#documentation": "

The filter values. Filter values are case-sensitive. If you specify multiple values for a \n filter, the values are joined with an OR, and the request returns all results \n that match any of the specified values.

", + "smithy.api#xmlName": "Value" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

A filter name and value pair that is used to return a more specific list of results from a describe operation. \n Filters can be used to match a set of resources by specific criteria, such as tags, attributes, or IDs.

\n

If you specify multiple filters, the filters are joined with an AND, and the request returns only \n results that match all of the specified filters.

\n

For more information, see List and filter using the CLI and API in the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#GetVerifiedAccessGroupPolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetVerifiedAccessGroupPolicyRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetVerifiedAccessGroupPolicyResult" - }, - "traits": { - "smithy.api#documentation": "

Shows the contents of the Verified Access policy associated with the group.

" + "com.amazonaws.ec2#FilterList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Filter", + "traits": { + "smithy.api#xmlName": "Filter" + } } }, - "com.amazonaws.ec2#GetVerifiedAccessGroupPolicyRequest": { + "com.amazonaws.ec2#FilterPortRange": { "type": "structure", "members": { - "VerifiedAccessGroupId": { - "target": "com.amazonaws.ec2#VerifiedAccessGroupId", + "FromPort": { + "target": "com.amazonaws.ec2#Port", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Verified Access group.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "FromPort", + "smithy.api#documentation": "

The first port in the range.

", + "smithy.api#xmlName": "fromPort" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ToPort": { + "target": "com.amazonaws.ec2#Port", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "ToPort", + "smithy.api#documentation": "

The last port in the range.

", + "smithy.api#xmlName": "toPort" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes a port range.

" } }, - "com.amazonaws.ec2#GetVerifiedAccessGroupPolicyResult": { - "type": "structure", + "com.amazonaws.ec2#FindingsFound": { + "type": "enum", "members": { - "PolicyEnabled": { - "target": "com.amazonaws.ec2#Boolean", + "true": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PolicyEnabled", - "smithy.api#documentation": "

The status of the Verified Access policy.

", - "smithy.api#xmlName": "policyEnabled" + "smithy.api#enumValue": "true" } }, - "PolicyDocument": { - "target": "com.amazonaws.ec2#String", + "false": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PolicyDocument", - "smithy.api#documentation": "

The Verified Access policy document.

", - "smithy.api#xmlName": "policyDocument" + "smithy.api#enumValue": "false" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#GetVpnConnectionDeviceSampleConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetVpnConnectionDeviceSampleConfigurationRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetVpnConnectionDeviceSampleConfigurationResult" - }, - "traits": { - "smithy.api#documentation": "

Download an Amazon Web Services-provided sample configuration file to be used with the customer\n gateway device specified for your Site-to-Site VPN connection.

" + }, + "unknown": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "unknown" + } + } } }, - "com.amazonaws.ec2#GetVpnConnectionDeviceSampleConfigurationRequest": { + "com.amazonaws.ec2#FirewallStatefulRule": { "type": "structure", "members": { - "VpnConnectionId": { - "target": "com.amazonaws.ec2#VpnConnectionId", + "RuleGroupArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The VpnConnectionId specifies the Site-to-Site VPN connection used for the sample\n configuration.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "RuleGroupArn", + "smithy.api#documentation": "

The ARN of the stateful rule group.

", + "smithy.api#xmlName": "ruleGroupArn" } }, - "VpnConnectionDeviceTypeId": { - "target": "com.amazonaws.ec2#VpnConnectionDeviceTypeId", + "Sources": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Device identifier provided by the GetVpnConnectionDeviceTypes API.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "SourceSet", + "smithy.api#documentation": "

The source IP addresses, in CIDR notation.

", + "smithy.api#xmlName": "sourceSet" } }, - "InternetKeyExchangeVersion": { - "target": "com.amazonaws.ec2#String", + "Destinations": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

The IKE version to be used in the sample configuration file for your customer gateway\n device. You can specify one of the following versions: ikev1 or\n ikev2.

" + "aws.protocols#ec2QueryName": "DestinationSet", + "smithy.api#documentation": "

The destination IP addresses, in CIDR notation.

", + "smithy.api#xmlName": "destinationSet" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#GetVpnConnectionDeviceSampleConfigurationResult": { - "type": "structure", - "members": { - "VpnConnectionDeviceSampleConfiguration": { - "target": "com.amazonaws.ec2#VpnConnectionDeviceSampleConfiguration", - "traits": { - "aws.protocols#ec2QueryName": "VpnConnectionDeviceSampleConfiguration", - "smithy.api#documentation": "

Sample configuration file for the specified customer gateway device.

", - "smithy.api#xmlName": "vpnConnectionDeviceSampleConfiguration" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#GetVpnConnectionDeviceTypes": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetVpnConnectionDeviceTypesRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetVpnConnectionDeviceTypesResult" - }, - "traits": { - "smithy.api#documentation": "

Obtain a list of customer gateway devices for which sample configuration\n files can be provided. The request has no additional parameters. You can also see the\n list of device types with sample configuration files available under Your customer gateway\n device in the Amazon Web Services Site-to-Site VPN User Guide.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "VpnConnectionDeviceTypes", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#GetVpnConnectionDeviceTypesRequest": { - "type": "structure", - "members": { - "MaxResults": { - "target": "com.amazonaws.ec2#GVCDMaxResults", + "SourcePorts": { + "target": "com.amazonaws.ec2#PortRangeList", "traits": { - "smithy.api#documentation": "

The maximum number of results returned by GetVpnConnectionDeviceTypes in\n paginated output. When this parameter is used, GetVpnConnectionDeviceTypes\n only returns MaxResults results in a single page along with a\n NextToken response element. The remaining results of the initial\n request can be seen by sending another GetVpnConnectionDeviceTypes request\n with the returned NextToken value. This value can be between 200 and 1000.\n If this parameter is not used, then GetVpnConnectionDeviceTypes returns all\n results.

" + "aws.protocols#ec2QueryName": "SourcePortSet", + "smithy.api#documentation": "

The source ports.

", + "smithy.api#xmlName": "sourcePortSet" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "DestinationPorts": { + "target": "com.amazonaws.ec2#PortRangeList", "traits": { - "smithy.api#documentation": "

The NextToken value returned from a previous paginated\n GetVpnConnectionDeviceTypes request where MaxResults was\n used and the results exceeded the value of that parameter. Pagination continues from the\n end of the previous results that returned the NextToken value. This value\n is null when there are no more results to return.

" + "aws.protocols#ec2QueryName": "DestinationPortSet", + "smithy.api#documentation": "

The destination ports.

", + "smithy.api#xmlName": "destinationPortSet" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Protocol": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "Protocol", + "smithy.api#documentation": "

The protocol.

", + "smithy.api#xmlName": "protocol" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#GetVpnConnectionDeviceTypesResult": { - "type": "structure", - "members": { - "VpnConnectionDeviceTypes": { - "target": "com.amazonaws.ec2#VpnConnectionDeviceTypeList", + }, + "RuleAction": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "VpnConnectionDeviceTypeSet", - "smithy.api#documentation": "

List of customer gateway devices that have a sample configuration file available for\n use.

", - "smithy.api#xmlName": "vpnConnectionDeviceTypeSet" + "aws.protocols#ec2QueryName": "RuleAction", + "smithy.api#documentation": "

The rule action. The possible values are pass, drop, and \n alert.

", + "smithy.api#xmlName": "ruleAction" } }, - "NextToken": { - "target": "com.amazonaws.ec2#NextToken", + "Direction": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The NextToken value to include in a future\n GetVpnConnectionDeviceTypes request. When the results of a\n GetVpnConnectionDeviceTypes request exceed MaxResults,\n this value can be used to retrieve the next page of results. This value is null when\n there are no more results to return.

", - "smithy.api#xmlName": "nextToken" + "aws.protocols#ec2QueryName": "Direction", + "smithy.api#documentation": "

The direction. The possible values are FORWARD and ANY.

", + "smithy.api#xmlName": "direction" } } }, "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#GetVpnTunnelReplacementStatus": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#GetVpnTunnelReplacementStatusRequest" - }, - "output": { - "target": "com.amazonaws.ec2#GetVpnTunnelReplacementStatusResult" - }, - "traits": { - "smithy.api#documentation": "

Get details of available tunnel endpoint maintenance.

" + "smithy.api#documentation": "

Describes a stateful rule.

" } }, - "com.amazonaws.ec2#GetVpnTunnelReplacementStatusRequest": { + "com.amazonaws.ec2#FirewallStatelessRule": { "type": "structure", "members": { - "VpnConnectionId": { - "target": "com.amazonaws.ec2#VpnConnectionId", + "RuleGroupArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Site-to-Site VPN connection.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "RuleGroupArn", + "smithy.api#documentation": "

The ARN of the stateless rule group.

", + "smithy.api#xmlName": "ruleGroupArn" } }, - "VpnTunnelOutsideIpAddress": { - "target": "com.amazonaws.ec2#String", + "Sources": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The external IP address of the VPN tunnel.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "SourceSet", + "smithy.api#documentation": "

The source IP addresses, in CIDR notation.

", + "smithy.api#xmlName": "sourceSet" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#GetVpnTunnelReplacementStatusResult": { - "type": "structure", - "members": { - "VpnConnectionId": { - "target": "com.amazonaws.ec2#VpnConnectionId", + "Destinations": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "aws.protocols#ec2QueryName": "VpnConnectionId", - "smithy.api#documentation": "

The ID of the Site-to-Site VPN connection.

", - "smithy.api#xmlName": "vpnConnectionId" + "aws.protocols#ec2QueryName": "DestinationSet", + "smithy.api#documentation": "

The destination IP addresses, in CIDR notation.

", + "smithy.api#xmlName": "destinationSet" } }, - "TransitGatewayId": { - "target": "com.amazonaws.ec2#TransitGatewayId", + "SourcePorts": { + "target": "com.amazonaws.ec2#PortRangeList", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayId", - "smithy.api#documentation": "

The ID of the transit gateway associated with the VPN connection.

", - "smithy.api#xmlName": "transitGatewayId" + "aws.protocols#ec2QueryName": "SourcePortSet", + "smithy.api#documentation": "

The source ports.

", + "smithy.api#xmlName": "sourcePortSet" } }, - "CustomerGatewayId": { - "target": "com.amazonaws.ec2#CustomerGatewayId", + "DestinationPorts": { + "target": "com.amazonaws.ec2#PortRangeList", "traits": { - "aws.protocols#ec2QueryName": "CustomerGatewayId", - "smithy.api#documentation": "

The ID of the customer gateway.

", - "smithy.api#xmlName": "customerGatewayId" + "aws.protocols#ec2QueryName": "DestinationPortSet", + "smithy.api#documentation": "

The destination ports.

", + "smithy.api#xmlName": "destinationPortSet" } }, - "VpnGatewayId": { - "target": "com.amazonaws.ec2#VpnGatewayId", + "Protocols": { + "target": "com.amazonaws.ec2#ProtocolIntList", "traits": { - "aws.protocols#ec2QueryName": "VpnGatewayId", - "smithy.api#documentation": "

The ID of the virtual private gateway.

", - "smithy.api#xmlName": "vpnGatewayId" + "aws.protocols#ec2QueryName": "ProtocolSet", + "smithy.api#documentation": "

The protocols.

", + "smithy.api#xmlName": "protocolSet" } }, - "VpnTunnelOutsideIpAddress": { + "RuleAction": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "VpnTunnelOutsideIpAddress", - "smithy.api#documentation": "

The external IP address of the VPN tunnel.

", - "smithy.api#xmlName": "vpnTunnelOutsideIpAddress" + "aws.protocols#ec2QueryName": "RuleAction", + "smithy.api#documentation": "

The rule action. The possible values are pass, drop, and \n forward_to_site.

", + "smithy.api#xmlName": "ruleAction" } }, - "MaintenanceDetails": { - "target": "com.amazonaws.ec2#MaintenanceDetails", + "Priority": { + "target": "com.amazonaws.ec2#Priority", "traits": { - "aws.protocols#ec2QueryName": "MaintenanceDetails", - "smithy.api#documentation": "

Get details of pending tunnel endpoint maintenance.

", - "smithy.api#xmlName": "maintenanceDetails" + "aws.protocols#ec2QueryName": "Priority", + "smithy.api#documentation": "

The rule priority.

", + "smithy.api#xmlName": "priority" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes a stateless rule.

" } }, - "com.amazonaws.ec2#GpuDeviceCount": { - "type": "integer" - }, - "com.amazonaws.ec2#GpuDeviceInfo": { - "type": "structure", + "com.amazonaws.ec2#FleetActivityStatus": { + "type": "enum", "members": { - "Name": { - "target": "com.amazonaws.ec2#GpuDeviceName", + "ERROR": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Name", - "smithy.api#documentation": "

The name of the GPU accelerator.

", - "smithy.api#xmlName": "name" + "smithy.api#enumValue": "error" } }, - "Manufacturer": { - "target": "com.amazonaws.ec2#GpuDeviceManufacturerName", + "PENDING_FULFILLMENT": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Manufacturer", - "smithy.api#documentation": "

The manufacturer of the GPU accelerator.

", - "smithy.api#xmlName": "manufacturer" + "smithy.api#enumValue": "pending_fulfillment" } }, - "Count": { - "target": "com.amazonaws.ec2#GpuDeviceCount", + "PENDING_TERMINATION": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Count", - "smithy.api#documentation": "

The number of GPUs for the instance type.

", - "smithy.api#xmlName": "count" + "smithy.api#enumValue": "pending_termination" } }, - "MemoryInfo": { - "target": "com.amazonaws.ec2#GpuDeviceMemoryInfo", + "FULFILLED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "MemoryInfo", - "smithy.api#documentation": "

Describes the memory available to the GPU accelerator.

", - "smithy.api#xmlName": "memoryInfo" + "smithy.api#enumValue": "fulfilled" } } - }, - "traits": { - "smithy.api#documentation": "

Describes the GPU accelerators for the instance type.

" - } - }, - "com.amazonaws.ec2#GpuDeviceInfoList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#GpuDeviceInfo", - "traits": { - "smithy.api#xmlName": "item" - } } }, - "com.amazonaws.ec2#GpuDeviceManufacturerName": { - "type": "string" - }, - "com.amazonaws.ec2#GpuDeviceMemoryInfo": { + "com.amazonaws.ec2#FleetBlockDeviceMappingRequest": { "type": "structure", "members": { - "SizeInMiB": { - "target": "com.amazonaws.ec2#GpuDeviceMemorySize", + "DeviceName": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SizeInMiB", - "smithy.api#documentation": "

The size of the memory available to the GPU accelerator, in MiB.

", - "smithy.api#xmlName": "sizeInMiB" + "smithy.api#documentation": "

The device name (for example, /dev/sdh or xvdh).

" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the memory available to the GPU accelerator.

" - } - }, - "com.amazonaws.ec2#GpuDeviceMemorySize": { - "type": "integer" - }, - "com.amazonaws.ec2#GpuDeviceName": { - "type": "string" - }, - "com.amazonaws.ec2#GpuInfo": { - "type": "structure", - "members": { - "Gpus": { - "target": "com.amazonaws.ec2#GpuDeviceInfoList", + }, + "VirtualName": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Gpus", - "smithy.api#documentation": "

Describes the GPU accelerators for the instance type.

", - "smithy.api#xmlName": "gpus" + "smithy.api#documentation": "

The virtual device name (ephemeralN). Instance store volumes are numbered\n starting from 0. An instance type with 2 available instance store volumes can specify\n mappings for ephemeral0 and ephemeral1. The number of available\n instance store volumes depends on the instance type. After you connect to the instance, you\n must mount the volume.

\n

NVMe instance store volumes are automatically enumerated and assigned a device name.\n Including them in your block device mapping has no effect.

\n

Constraints: For M3 instances, you must specify instance store volumes in the block\n device mapping for the instance. When you launch an M3 instance, we ignore any instance\n store volumes specified in the block device mapping for the AMI.

" } }, - "TotalGpuMemoryInMiB": { - "target": "com.amazonaws.ec2#totalGpuMemory", + "Ebs": { + "target": "com.amazonaws.ec2#FleetEbsBlockDeviceRequest", "traits": { - "aws.protocols#ec2QueryName": "TotalGpuMemoryInMiB", - "smithy.api#documentation": "

The total size of the memory for the GPU accelerators for the instance type, in MiB.

", - "smithy.api#xmlName": "totalGpuMemoryInMiB" + "smithy.api#documentation": "

Parameters used to automatically set up EBS volumes when the instance is\n launched.

" + } + }, + "NoDevice": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

To omit the device from the block device mapping, specify an empty string. When this\n property is specified, the device is removed from the block device mapping regardless of\n the assigned value.

" } } }, "traits": { - "smithy.api#documentation": "

Describes the GPU accelerators for the instance type.

" + "smithy.api#documentation": "

Describes a block device mapping, which defines the EBS volumes and instance store\n volumes to attach to an instance at launch.

\n

To override a block device mapping specified in the launch template:

\n \n

To add a new block device mapping:

\n " } }, - "com.amazonaws.ec2#GroupIdStringList": { + "com.amazonaws.ec2#FleetBlockDeviceMappingRequestList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#SecurityGroupId", + "target": "com.amazonaws.ec2#FleetBlockDeviceMappingRequest", "traits": { - "smithy.api#xmlName": "groupId" + "smithy.api#xmlName": "BlockDeviceMapping" } } }, - "com.amazonaws.ec2#GroupIdentifier": { + "com.amazonaws.ec2#FleetCapacityReservation": { "type": "structure", "members": { - "GroupName": { + "CapacityReservationId": { + "target": "com.amazonaws.ec2#CapacityReservationId", + "traits": { + "aws.protocols#ec2QueryName": "CapacityReservationId", + "smithy.api#documentation": "

The ID of the Capacity Reservation.

", + "smithy.api#xmlName": "capacityReservationId" + } + }, + "AvailabilityZoneId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "GroupName", - "smithy.api#documentation": "

The name of the security group.

", - "smithy.api#xmlName": "groupName" + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone in which the Capacity Reservation reserves\n\t\t\tcapacity.

", + "smithy.api#xmlName": "availabilityZoneId" } }, - "GroupId": { + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", + "traits": { + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type for which the Capacity Reservation reserves capacity.

", + "smithy.api#xmlName": "instanceType" + } + }, + "InstancePlatform": { + "target": "com.amazonaws.ec2#CapacityReservationInstancePlatform", + "traits": { + "aws.protocols#ec2QueryName": "InstancePlatform", + "smithy.api#documentation": "

The type of operating system for which the Capacity Reservation reserves\n\t\t\tcapacity.

", + "smithy.api#xmlName": "instancePlatform" + } + }, + "AvailabilityZone": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "GroupId", - "smithy.api#documentation": "

The ID of the security group.

", - "smithy.api#xmlName": "groupId" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone in which the Capacity Reservation reserves capacity.

", + "smithy.api#xmlName": "availabilityZone" + } + }, + "TotalInstanceCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "TotalInstanceCount", + "smithy.api#documentation": "

The total number of instances for which the Capacity Reservation reserves\n\t\t\tcapacity.

", + "smithy.api#xmlName": "totalInstanceCount" + } + }, + "FulfilledCapacity": { + "target": "com.amazonaws.ec2#Double", + "traits": { + "aws.protocols#ec2QueryName": "FulfilledCapacity", + "smithy.api#documentation": "

The number of capacity units fulfilled by the Capacity Reservation. For more\n\t\t\tinformation, see Total target\n\t\t\t\tcapacity in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "fulfilledCapacity" + } + }, + "EbsOptimized": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "EbsOptimized", + "smithy.api#documentation": "

Indicates whether the Capacity Reservation reserves capacity for EBS-optimized\n\t\t\tinstance types.

", + "smithy.api#xmlName": "ebsOptimized" + } + }, + "CreateDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "CreateDate", + "smithy.api#documentation": "

The date and time at which the Capacity Reservation was created.

", + "smithy.api#xmlName": "createDate" + } + }, + "Weight": { + "target": "com.amazonaws.ec2#DoubleWithConstraints", + "traits": { + "aws.protocols#ec2QueryName": "Weight", + "smithy.api#documentation": "

The weight of the instance type in the Capacity Reservation Fleet. For more\n\t\t\tinformation, see Instance type\n\t\t\t\tweight in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "weight" + } + }, + "Priority": { + "target": "com.amazonaws.ec2#IntegerWithConstraints", + "traits": { + "aws.protocols#ec2QueryName": "Priority", + "smithy.api#documentation": "

The priority of the instance type in the Capacity Reservation Fleet. For more\n\t\t\tinformation, see Instance type\n\t\t\t\tpriority in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "priority" } } }, "traits": { - "smithy.api#documentation": "

Describes a security group.

" - } - }, - "com.amazonaws.ec2#GroupIdentifierList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#GroupIdentifier", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#GroupIdentifierSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#SecurityGroupIdentifier", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

Information about a Capacity Reservation in a Capacity Reservation Fleet.

" } }, - "com.amazonaws.ec2#GroupIds": { + "com.amazonaws.ec2#FleetCapacityReservationSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#SecurityGroupId", + "target": "com.amazonaws.ec2#FleetCapacityReservation", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#GroupNameStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#SecurityGroupName", - "traits": { - "smithy.api#xmlName": "GroupName" - } - } - }, - "com.amazonaws.ec2#HibernationFlag": { - "type": "boolean" - }, - "com.amazonaws.ec2#HibernationOptions": { - "type": "structure", + "com.amazonaws.ec2#FleetCapacityReservationTenancy": { + "type": "enum", "members": { - "Configured": { - "target": "com.amazonaws.ec2#Boolean", + "default": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Configured", - "smithy.api#documentation": "

If true, your instance is enabled for hibernation; otherwise, it is not\n enabled for hibernation.

", - "smithy.api#xmlName": "configured" + "smithy.api#enumValue": "default" } } - }, - "traits": { - "smithy.api#documentation": "

Indicates whether your instance is configured for hibernation. This parameter is valid\n only if the instance meets the hibernation\n prerequisites. For more information, see Hibernate your instance in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#HibernationOptionsRequest": { - "type": "structure", + "com.amazonaws.ec2#FleetCapacityReservationUsageStrategy": { + "type": "enum", "members": { - "Configured": { - "target": "com.amazonaws.ec2#Boolean", + "USE_CAPACITY_RESERVATIONS_FIRST": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Set to true to enable your instance for hibernation.

\n

For Spot Instances, if you set Configured to true, either\n omit the InstanceInterruptionBehavior parameter (for \n SpotMarketOptions\n ), or set it to\n hibernate. When Configured is true:

\n \n

Default: false\n

" + "smithy.api#enumValue": "use-capacity-reservations-first" } } - }, - "traits": { - "smithy.api#documentation": "

Indicates whether your instance is configured for hibernation. This parameter is valid\n only if the instance meets the hibernation\n prerequisites. For more information, see Hibernate your instance in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#HistoryRecord": { + "com.amazonaws.ec2#FleetData": { "type": "structure", "members": { - "EventInformation": { - "target": "com.amazonaws.ec2#EventInformation", + "ActivityStatus": { + "target": "com.amazonaws.ec2#FleetActivityStatus", "traits": { - "aws.protocols#ec2QueryName": "EventInformation", - "smithy.api#documentation": "

Information about the event.

", - "smithy.api#xmlName": "eventInformation" + "aws.protocols#ec2QueryName": "ActivityStatus", + "smithy.api#documentation": "

The progress of the EC2 Fleet.

\n

For fleets of type instant, the status is fulfilled after all\n requests are placed, regardless of whether target capacity is met (this is the only\n possible status for instant fleets).

\n

For fleets of type request or maintain, the status is\n pending_fulfillment after all requests are placed, fulfilled\n when the fleet size meets or exceeds target capacity, pending_termination\n while instances are terminating when fleet size is decreased, and error if\n there's an error.

", + "smithy.api#xmlName": "activityStatus" } }, - "EventType": { - "target": "com.amazonaws.ec2#EventType", + "CreateTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "EventType", - "smithy.api#documentation": "

The event type.

\n ", - "smithy.api#xmlName": "eventType" + "aws.protocols#ec2QueryName": "CreateTime", + "smithy.api#documentation": "

The creation date and time of the EC2 Fleet.

", + "smithy.api#xmlName": "createTime" } }, - "Timestamp": { - "target": "com.amazonaws.ec2#DateTime", + "FleetId": { + "target": "com.amazonaws.ec2#FleetId", "traits": { - "aws.protocols#ec2QueryName": "Timestamp", - "smithy.api#documentation": "

The date and time of the event, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).

", - "smithy.api#xmlName": "timestamp" + "aws.protocols#ec2QueryName": "FleetId", + "smithy.api#documentation": "

The ID of the EC2 Fleet.

", + "smithy.api#xmlName": "fleetId" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an event in the history of the Spot Fleet request.

" - } - }, - "com.amazonaws.ec2#HistoryRecordEntry": { - "type": "structure", - "members": { - "EventInformation": { - "target": "com.amazonaws.ec2#EventInformation", + }, + "FleetState": { + "target": "com.amazonaws.ec2#FleetStateCode", "traits": { - "aws.protocols#ec2QueryName": "EventInformation", - "smithy.api#documentation": "

Information about the event.

", - "smithy.api#xmlName": "eventInformation" + "aws.protocols#ec2QueryName": "FleetState", + "smithy.api#documentation": "

The state of the EC2 Fleet.

", + "smithy.api#xmlName": "fleetState" } }, - "EventType": { - "target": "com.amazonaws.ec2#FleetEventType", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "EventType", - "smithy.api#documentation": "

The event type.

", - "smithy.api#xmlName": "eventType" + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see Ensuring\n idempotency.

\n

Constraints: Maximum 64 ASCII characters

", + "smithy.api#xmlName": "clientToken" } }, - "Timestamp": { - "target": "com.amazonaws.ec2#DateTime", + "ExcessCapacityTerminationPolicy": { + "target": "com.amazonaws.ec2#FleetExcessCapacityTerminationPolicy", "traits": { - "aws.protocols#ec2QueryName": "Timestamp", - "smithy.api#documentation": "

The date and time of the event, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).

", - "smithy.api#xmlName": "timestamp" + "aws.protocols#ec2QueryName": "ExcessCapacityTerminationPolicy", + "smithy.api#documentation": "

Indicates whether running instances should be terminated if the target capacity of the\n EC2 Fleet is decreased below the current size of the EC2 Fleet.

\n

Supported only for fleets of type maintain.

", + "smithy.api#xmlName": "excessCapacityTerminationPolicy" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an event in the history of an EC2 Fleet.

" - } - }, - "com.amazonaws.ec2#HistoryRecordSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#HistoryRecordEntry", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#HistoryRecords": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#HistoryRecord", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Host": { - "type": "structure", - "members": { - "AutoPlacement": { - "target": "com.amazonaws.ec2#AutoPlacement", + }, + "FulfilledCapacity": { + "target": "com.amazonaws.ec2#Double", "traits": { - "aws.protocols#ec2QueryName": "AutoPlacement", - "smithy.api#documentation": "

Whether auto-placement is on or off.

", - "smithy.api#xmlName": "autoPlacement" + "aws.protocols#ec2QueryName": "FulfilledCapacity", + "smithy.api#documentation": "

The number of units fulfilled by this request compared to the set target\n capacity.

", + "smithy.api#xmlName": "fulfilledCapacity" } }, - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + "FulfilledOnDemandCapacity": { + "target": "com.amazonaws.ec2#Double", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone of the Dedicated Host.

", - "smithy.api#xmlName": "availabilityZone" + "aws.protocols#ec2QueryName": "FulfilledOnDemandCapacity", + "smithy.api#documentation": "

The number of units fulfilled by this request compared to the set target On-Demand\n capacity.

", + "smithy.api#xmlName": "fulfilledOnDemandCapacity" } }, - "AvailableCapacity": { - "target": "com.amazonaws.ec2#AvailableCapacity", + "LaunchTemplateConfigs": { + "target": "com.amazonaws.ec2#FleetLaunchTemplateConfigList", "traits": { - "aws.protocols#ec2QueryName": "AvailableCapacity", - "smithy.api#documentation": "

Information about the instances running on the Dedicated Host.

", - "smithy.api#xmlName": "availableCapacity" + "aws.protocols#ec2QueryName": "LaunchTemplateConfigs", + "smithy.api#documentation": "

The launch template and overrides.

", + "smithy.api#xmlName": "launchTemplateConfigs" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "TargetCapacitySpecification": { + "target": "com.amazonaws.ec2#TargetCapacitySpecification", "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

", - "smithy.api#xmlName": "clientToken" + "aws.protocols#ec2QueryName": "TargetCapacitySpecification", + "smithy.api#documentation": "

The number of units to request. You can choose to set the target capacity in terms of\n instances or a performance characteristic that is important to your application workload,\n such as vCPUs, memory, or I/O. If the request type is maintain, you can\n specify a target capacity of 0 and add capacity later.

", + "smithy.api#xmlName": "targetCapacitySpecification" } }, - "HostId": { - "target": "com.amazonaws.ec2#String", + "TerminateInstancesWithExpiration": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "HostId", - "smithy.api#documentation": "

The ID of the Dedicated Host.

", - "smithy.api#xmlName": "hostId" + "aws.protocols#ec2QueryName": "TerminateInstancesWithExpiration", + "smithy.api#documentation": "

Indicates whether running instances should be terminated when the EC2 Fleet expires.

", + "smithy.api#xmlName": "terminateInstancesWithExpiration" } }, - "HostProperties": { - "target": "com.amazonaws.ec2#HostProperties", + "Type": { + "target": "com.amazonaws.ec2#FleetType", "traits": { - "aws.protocols#ec2QueryName": "HostProperties", - "smithy.api#documentation": "

The hardware specifications of the Dedicated Host.

", - "smithy.api#xmlName": "hostProperties" + "aws.protocols#ec2QueryName": "Type", + "smithy.api#documentation": "

The type of request. Indicates whether the EC2 Fleet only requests the target\n capacity, or also attempts to maintain it. If you request a certain target\n capacity, EC2 Fleet only places the required requests; it does not attempt to replenish\n instances if capacity is diminished, and it does not submit requests in alternative\n capacity pools if capacity is unavailable. To maintain a certain target capacity, EC2 Fleet\n places the required requests to meet this target capacity. It also automatically\n replenishes any interrupted Spot Instances. Default: maintain.

", + "smithy.api#xmlName": "type" } }, - "HostReservationId": { - "target": "com.amazonaws.ec2#String", + "ValidFrom": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "HostReservationId", - "smithy.api#documentation": "

The reservation ID of the Dedicated Host. This returns a null response if\n the Dedicated Host doesn't have an associated reservation.

", - "smithy.api#xmlName": "hostReservationId" + "aws.protocols#ec2QueryName": "ValidFrom", + "smithy.api#documentation": "

The start date and time of the request, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).\n The default is to start fulfilling the request immediately.

", + "smithy.api#xmlName": "validFrom" } }, - "Instances": { - "target": "com.amazonaws.ec2#HostInstanceList", + "ValidUntil": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "Instances", - "smithy.api#documentation": "

The IDs and instance type that are currently running on the Dedicated Host.

", - "smithy.api#xmlName": "instances" + "aws.protocols#ec2QueryName": "ValidUntil", + "smithy.api#documentation": "

The end date and time of the request, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).\n At this point, no new instance requests are placed or able to fulfill the request. The\n default end date is 7 days from the current date.

", + "smithy.api#xmlName": "validUntil" } }, - "State": { - "target": "com.amazonaws.ec2#AllocationState", + "ReplaceUnhealthyInstances": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The Dedicated Host's state.

", - "smithy.api#xmlName": "state" + "aws.protocols#ec2QueryName": "ReplaceUnhealthyInstances", + "smithy.api#documentation": "

Indicates whether EC2 Fleet should replace unhealthy Spot Instances. Supported only for\n fleets of type maintain. For more information, see EC2 Fleet\n health checks in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "replaceUnhealthyInstances" } }, - "AllocationTime": { - "target": "com.amazonaws.ec2#DateTime", + "SpotOptions": { + "target": "com.amazonaws.ec2#SpotOptions", "traits": { - "aws.protocols#ec2QueryName": "AllocationTime", - "smithy.api#documentation": "

The time that the Dedicated Host was allocated.

", - "smithy.api#xmlName": "allocationTime" + "aws.protocols#ec2QueryName": "SpotOptions", + "smithy.api#documentation": "

The configuration of Spot Instances in an EC2 Fleet.

", + "smithy.api#xmlName": "spotOptions" } }, - "ReleaseTime": { - "target": "com.amazonaws.ec2#DateTime", + "OnDemandOptions": { + "target": "com.amazonaws.ec2#OnDemandOptions", "traits": { - "aws.protocols#ec2QueryName": "ReleaseTime", - "smithy.api#documentation": "

The time that the Dedicated Host was released.

", - "smithy.api#xmlName": "releaseTime" + "aws.protocols#ec2QueryName": "OnDemandOptions", + "smithy.api#documentation": "

The allocation strategy of On-Demand Instances in an EC2 Fleet.

", + "smithy.api#xmlName": "onDemandOptions" } }, "Tags": { "target": "com.amazonaws.ec2#TagList", "traits": { "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the Dedicated Host.

", + "smithy.api#documentation": "

The tags for an EC2 Fleet resource.

", "smithy.api#xmlName": "tagSet" } }, - "HostRecovery": { - "target": "com.amazonaws.ec2#HostRecovery", + "Errors": { + "target": "com.amazonaws.ec2#DescribeFleetsErrorSet", "traits": { - "aws.protocols#ec2QueryName": "HostRecovery", - "smithy.api#documentation": "

Indicates whether host recovery is enabled or disabled for the Dedicated Host.

", - "smithy.api#xmlName": "hostRecovery" + "aws.protocols#ec2QueryName": "ErrorSet", + "smithy.api#documentation": "

Information about the instances that could not be launched by the fleet. Valid only when\n Type is set to instant.

", + "smithy.api#xmlName": "errorSet" } }, - "AllowsMultipleInstanceTypes": { - "target": "com.amazonaws.ec2#AllowsMultipleInstanceTypes", + "Instances": { + "target": "com.amazonaws.ec2#DescribeFleetsInstancesSet", "traits": { - "aws.protocols#ec2QueryName": "AllowsMultipleInstanceTypes", - "smithy.api#documentation": "

Indicates whether the Dedicated Host supports multiple instance types of the same\n instance family. If the value is on, the Dedicated Host supports multiple\n instance types in the instance family. If the value is off, the Dedicated\n Host supports a single instance type only.

", - "smithy.api#xmlName": "allowsMultipleInstanceTypes" + "aws.protocols#ec2QueryName": "FleetInstanceSet", + "smithy.api#documentation": "

Information about the instances that were launched by the fleet. Valid only when\n Type is set to instant.

", + "smithy.api#xmlName": "fleetInstanceSet" } }, - "OwnerId": { + "Context": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the Dedicated Host.

", - "smithy.api#xmlName": "ownerId" + "aws.protocols#ec2QueryName": "Context", + "smithy.api#documentation": "

Reserved.

", + "smithy.api#xmlName": "context" } - }, - "AvailabilityZoneId": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#documentation": "

Describes an EC2 Fleet.

" + } + }, + "com.amazonaws.ec2#FleetEbsBlockDeviceRequest": { + "type": "structure", + "members": { + "Encrypted": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZoneId", - "smithy.api#documentation": "

The ID of the Availability Zone in which the Dedicated Host is allocated.

", - "smithy.api#xmlName": "availabilityZoneId" + "smithy.api#documentation": "

Indicates whether the encryption state of an EBS volume is changed while being restored\n from a backing snapshot. The effect of setting the encryption state to true\n depends on the volume origin (new or from a snapshot), starting encryption state,\n ownership, and whether encryption by default is enabled. For more information, see Amazon EBS\n encryption in the Amazon EBS User Guide.

\n

In no case can you remove encryption from an encrypted volume.

\n

Encrypted volumes can only be attached to instances that support Amazon EBS encryption. For\n more information, see Supported instance types.

\n

This parameter is not returned by DescribeImageAttribute.

\n

For CreateImage and RegisterImage, whether you\n can include this parameter, and the allowed values differ depending on the type of block\n device mapping you are creating.

\n " } }, - "MemberOfServiceLinkedResourceGroup": { + "DeleteOnTermination": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "MemberOfServiceLinkedResourceGroup", - "smithy.api#documentation": "

Indicates whether the Dedicated Host is in a host resource group. If memberOfServiceLinkedResourceGroup is true, the\n host is in a host resource group; otherwise, it is not.

", - "smithy.api#xmlName": "memberOfServiceLinkedResourceGroup" + "smithy.api#documentation": "

Indicates whether the EBS volume is deleted on instance termination. For more\n information, see Preserve data when\n an instance is terminated in the Amazon EC2 User Guide.

" } }, - "OutpostArn": { - "target": "com.amazonaws.ec2#String", + "Iops": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "OutpostArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services Outpost on which the\n Dedicated Host is allocated.

", - "smithy.api#xmlName": "outpostArn" + "smithy.api#documentation": "

The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes,\n this represents the number of IOPS that are provisioned for the volume. For gp2\n volumes, this represents the baseline performance of the volume and the rate at which\n the volume accumulates I/O credits for bursting.

\n

The following are the supported values for each volume type:

\n \n

For io2 volumes, you can achieve up to 256,000 IOPS on \ninstances \nbuilt on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS.

\n

This parameter is required for io1 and io2 volumes. The default for gp3 volumes\n is 3,000 IOPS.

" } }, - "HostMaintenance": { - "target": "com.amazonaws.ec2#HostMaintenance", + "Throughput": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "HostMaintenance", - "smithy.api#documentation": "

Indicates whether host maintenance is enabled or disabled for the Dedicated\n Host.

", - "smithy.api#xmlName": "hostMaintenance" + "smithy.api#documentation": "

The throughput that the volume supports, in MiB/s.

\n

This parameter is valid only for gp3 volumes.

\n

Valid Range: Minimum value of 125. Maximum value of 2,000.

" } }, - "AssetId": { - "target": "com.amazonaws.ec2#AssetId", + "KmsKeyId": { + "target": "com.amazonaws.ec2#KmsKeyId", "traits": { - "aws.protocols#ec2QueryName": "AssetId", - "smithy.api#documentation": "

The ID of the Outpost hardware asset on which the Dedicated Host is allocated.

", - "smithy.api#xmlName": "assetId" + "smithy.api#documentation": "

Identifier (key ID, key alias, key ARN, or alias ARN) of the customer managed KMS key \n to use for EBS encryption.

\n

This parameter is only supported on BlockDeviceMapping objects called by\n CreateFleet, RequestSpotInstances, and RunInstances.

" + } + }, + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", + "traits": { + "smithy.api#documentation": "

The ID of the snapshot.

" + } + }, + "VolumeSize": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The size of the volume, in GiBs. You must specify either a snapshot ID or a volume\n size. If you specify a snapshot, the default is the snapshot size. You can specify a\n volume size that is equal to or larger than the snapshot size.

\n

The following are the supported sizes for each volume type:

\n " + } + }, + "VolumeType": { + "target": "com.amazonaws.ec2#VolumeType", + "traits": { + "smithy.api#documentation": "

The volume type. For more information, see Amazon EBS volume types in the\n Amazon EBS User Guide.

" } } }, "traits": { - "smithy.api#documentation": "

Describes the properties of the Dedicated Host.

" + "smithy.api#documentation": "

Describes a block device for an EBS volume.

" } }, - "com.amazonaws.ec2#HostInstance": { - "type": "structure", + "com.amazonaws.ec2#FleetEventType": { + "type": "enum", "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#String", + "INSTANCE_CHANGE": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of instance that is running on the Dedicated Host.

", - "smithy.api#xmlName": "instanceId" + "smithy.api#enumValue": "instance-change" } }, - "InstanceType": { - "target": "com.amazonaws.ec2#String", + "FLEET_CHANGE": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type (for example, m3.medium) of the running\n instance.

", - "smithy.api#xmlName": "instanceType" + "smithy.api#enumValue": "fleet-change" } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "SERVICE_ERROR": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the instance.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "service-error" + } + } + } + }, + "com.amazonaws.ec2#FleetExcessCapacityTerminationPolicy": { + "type": "enum", + "members": { + "NO_TERMINATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "no-termination" + } + }, + "TERMINATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "termination" + } + } + } + }, + "com.amazonaws.ec2#FleetId": { + "type": "string" + }, + "com.amazonaws.ec2#FleetIdSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#FleetId" + } + }, + "com.amazonaws.ec2#FleetInstanceMatchCriteria": { + "type": "enum", + "members": { + "open": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "open" + } + } + } + }, + "com.amazonaws.ec2#FleetLaunchTemplateConfig": { + "type": "structure", + "members": { + "LaunchTemplateSpecification": { + "target": "com.amazonaws.ec2#FleetLaunchTemplateSpecification", + "traits": { + "aws.protocols#ec2QueryName": "LaunchTemplateSpecification", + "smithy.api#documentation": "

The launch template.

", + "smithy.api#xmlName": "launchTemplateSpecification" + } + }, + "Overrides": { + "target": "com.amazonaws.ec2#FleetLaunchTemplateOverridesList", + "traits": { + "aws.protocols#ec2QueryName": "Overrides", + "smithy.api#documentation": "

Any parameters that you specify override the same parameters in the launch\n template.

", + "smithy.api#xmlName": "overrides" } } }, "traits": { - "smithy.api#documentation": "

Describes an instance running on a Dedicated Host.

" + "smithy.api#documentation": "

Describes a launch template and overrides.

" } }, - "com.amazonaws.ec2#HostInstanceList": { + "com.amazonaws.ec2#FleetLaunchTemplateConfigList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#HostInstance", + "target": "com.amazonaws.ec2#FleetLaunchTemplateConfig", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#HostList": { + "com.amazonaws.ec2#FleetLaunchTemplateConfigListRequest": { "type": "list", "member": { - "target": "com.amazonaws.ec2#Host", + "target": "com.amazonaws.ec2#FleetLaunchTemplateConfigRequest", "traits": { "smithy.api#xmlName": "item" } + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 50 + } } }, - "com.amazonaws.ec2#HostMaintenance": { - "type": "enum", + "com.amazonaws.ec2#FleetLaunchTemplateConfigRequest": { + "type": "structure", "members": { - "on": { - "target": "smithy.api#Unit", + "LaunchTemplateSpecification": { + "target": "com.amazonaws.ec2#FleetLaunchTemplateSpecificationRequest", "traits": { - "smithy.api#enumValue": "on" + "smithy.api#documentation": "

The launch template to use. You must specify either the launch template ID or launch\n template name in the request.

" } }, - "off": { - "target": "smithy.api#Unit", + "Overrides": { + "target": "com.amazonaws.ec2#FleetLaunchTemplateOverridesListRequest", "traits": { - "smithy.api#enumValue": "off" + "smithy.api#documentation": "

Any parameters that you specify override the same parameters in the launch\n template.

\n

For fleets of type request and maintain, a maximum of 300\n items is allowed across all launch templates.

" } } + }, + "traits": { + "smithy.api#documentation": "

Describes a launch template and overrides.

" } }, - "com.amazonaws.ec2#HostOffering": { + "com.amazonaws.ec2#FleetLaunchTemplateOverrides": { "type": "structure", "members": { - "CurrencyCode": { - "target": "com.amazonaws.ec2#CurrencyCodeValues", + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", "traits": { - "aws.protocols#ec2QueryName": "CurrencyCode", - "smithy.api#documentation": "

The currency of the offering.

", - "smithy.api#xmlName": "currencyCode" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type.

\n

\n mac1.metal is not supported as a launch template override.

\n \n

If you specify InstanceType, you can't specify\n InstanceRequirements.

\n
", + "smithy.api#xmlName": "instanceType" } }, - "Duration": { - "target": "com.amazonaws.ec2#Integer", + "MaxPrice": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Duration", - "smithy.api#documentation": "

The duration of the offering (in seconds).

", - "smithy.api#xmlName": "duration" + "aws.protocols#ec2QueryName": "MaxPrice", + "smithy.api#documentation": "

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not \n recommend using this parameter because it can lead to increased interruptions. If you \n do not specify this parameter, you will pay the current Spot price.\n

\n \n

If you specify a maximum price, your instances will be interrupted more frequently \n than if you do not specify this parameter.

\n

If you specify a maximum price, it must be more than USD $0.001. Specifying a value\n below USD $0.001 will result in an InvalidParameterValue error\n message.

\n
", + "smithy.api#xmlName": "maxPrice" } }, - "HourlyPrice": { + "SubnetId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "HourlyPrice", - "smithy.api#documentation": "

The hourly price of the offering.

", - "smithy.api#xmlName": "hourlyPrice" + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet in which to launch the instances.

", + "smithy.api#xmlName": "subnetId" } }, - "InstanceFamily": { - "target": "com.amazonaws.ec2#String", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#AvailabilityZoneName", "traits": { - "aws.protocols#ec2QueryName": "InstanceFamily", - "smithy.api#documentation": "

The instance family of the offering.

", - "smithy.api#xmlName": "instanceFamily" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone in which to launch the instances.

", + "smithy.api#xmlName": "availabilityZone" } }, - "OfferingId": { - "target": "com.amazonaws.ec2#OfferingId", + "WeightedCapacity": { + "target": "com.amazonaws.ec2#Double", "traits": { - "aws.protocols#ec2QueryName": "OfferingId", - "smithy.api#documentation": "

The ID of the offering.

", - "smithy.api#xmlName": "offeringId" + "aws.protocols#ec2QueryName": "WeightedCapacity", + "smithy.api#documentation": "

The number of units provided by the specified instance type. These are the same units\n that you chose to set the target capacity in terms of instances, or a performance\n characteristic such as vCPUs, memory, or I/O.

\n

If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the\n number of instances to the next whole number. If this value is not specified, the default\n is 1.

\n \n

When specifying weights, the price used in the lowest-price and\n price-capacity-optimized allocation strategies is per\n unit hour (where the instance price is divided by the specified\n weight). However, if all the specified weights are above the requested\n TargetCapacity, resulting in only 1 instance being launched, the price\n used is per instance hour.

\n
", + "smithy.api#xmlName": "weightedCapacity" } }, - "PaymentOption": { - "target": "com.amazonaws.ec2#PaymentOption", + "Priority": { + "target": "com.amazonaws.ec2#Double", "traits": { - "aws.protocols#ec2QueryName": "PaymentOption", - "smithy.api#documentation": "

The available payment option.

", - "smithy.api#xmlName": "paymentOption" + "aws.protocols#ec2QueryName": "Priority", + "smithy.api#documentation": "

The priority for the launch template override. The highest priority is launched\n first.

\n

If the On-Demand AllocationStrategy is set to prioritized,\n EC2 Fleet uses priority to determine which launch template override to use first in fulfilling\n On-Demand capacity.

\n

If the Spot AllocationStrategy is set to\n capacity-optimized-prioritized, EC2 Fleet uses priority on a best-effort basis\n to determine which launch template override to use in fulfilling Spot capacity, but\n optimizes for capacity first.

\n

Valid values are whole numbers starting at 0. The lower the number, the\n higher the priority. If no number is set, the override has the lowest priority. You can set\n the same priority for different launch template overrides.

", + "smithy.api#xmlName": "priority" } }, - "UpfrontPrice": { - "target": "com.amazonaws.ec2#String", + "Placement": { + "target": "com.amazonaws.ec2#PlacementResponse", "traits": { - "aws.protocols#ec2QueryName": "UpfrontPrice", - "smithy.api#documentation": "

The upfront price of the offering. Does not apply to No Upfront offerings.

", - "smithy.api#xmlName": "upfrontPrice" + "aws.protocols#ec2QueryName": "Placement", + "smithy.api#documentation": "

The location where the instance launched, if applicable.

", + "smithy.api#xmlName": "placement" + } + }, + "InstanceRequirements": { + "target": "com.amazonaws.ec2#InstanceRequirements", + "traits": { + "aws.protocols#ec2QueryName": "InstanceRequirements", + "smithy.api#documentation": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will\n identify instance types with those attributes.

\n \n

If you specify InstanceRequirements, you can't specify\n InstanceType.

\n
", + "smithy.api#xmlName": "instanceRequirements" + } + }, + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", + "traits": { + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the AMI in the format ami-17characters00000.

\n

Alternatively, you can specify a Systems Manager parameter, using one of the following\n formats. The Systems Manager parameter will resolve to an AMI ID on launch.

\n

To reference a public parameter:

\n \n

To reference a parameter stored in the same account:

\n \n

To reference a parameter shared from another Amazon Web Services account:

\n \n

For more information, see Use a Systems Manager parameter instead of an AMI ID in the\n Amazon EC2 User Guide.

\n \n

This parameter is only available for fleets of type instant. For fleets\n of type maintain and request, you must specify the AMI ID in\n the launch template.

\n
", + "smithy.api#xmlName": "imageId" + } + }, + "BlockDeviceMappings": { + "target": "com.amazonaws.ec2#BlockDeviceMappingResponseList", + "traits": { + "aws.protocols#ec2QueryName": "BlockDeviceMappingSet", + "smithy.api#documentation": "

The block device mappings, which define the EBS volumes and instance store volumes to\n attach to the instance at launch.

\n

Supported only for fleets of type instant.

\n

For more information, see Block device mappings\n for volumes on Amazon EC2 instances in the Amazon EC2 User\n Guide.

", + "smithy.api#xmlName": "blockDeviceMappingSet" } } }, "traits": { - "smithy.api#documentation": "

Details about the Dedicated Host Reservation offering.

" + "smithy.api#documentation": "

Describes overrides for a launch template.

" } }, - "com.amazonaws.ec2#HostOfferingSet": { + "com.amazonaws.ec2#FleetLaunchTemplateOverridesList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#HostOffering", + "target": "com.amazonaws.ec2#FleetLaunchTemplateOverrides", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#HostProperties": { + "com.amazonaws.ec2#FleetLaunchTemplateOverridesListRequest": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#FleetLaunchTemplateOverridesRequest", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#FleetLaunchTemplateOverridesRequest": { "type": "structure", "members": { - "Cores": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "Cores", - "smithy.api#documentation": "

The number of cores on the Dedicated Host.

", - "smithy.api#xmlName": "cores" - } - }, "InstanceType": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#InstanceType", "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type supported by the Dedicated Host. For example, m5.large.\n If the host supports multiple instance types, no instanceType is returned.

", - "smithy.api#xmlName": "instanceType" + "smithy.api#documentation": "

The instance type.

\n

\n mac1.metal is not supported as a launch template override.

\n \n

If you specify InstanceType, you can't specify\n InstanceRequirements.

\n
" } }, - "InstanceFamily": { + "MaxPrice": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "InstanceFamily", - "smithy.api#documentation": "

The instance family supported by the Dedicated Host. For example,\n m5.

", - "smithy.api#xmlName": "instanceFamily" - } - }, - "Sockets": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "Sockets", - "smithy.api#documentation": "

The number of sockets on the Dedicated Host.

", - "smithy.api#xmlName": "sockets" + "smithy.api#documentation": "

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not \n recommend using this parameter because it can lead to increased interruptions. If you \n do not specify this parameter, you will pay the current Spot price.\n

\n \n

If you specify a maximum price, your instances will be interrupted more \n frequently than if you do not specify this parameter.

\n

If you specify a maximum price, it must be more than USD $0.001. Specifying a value\n below USD $0.001 will result in an InvalidParameterValue error\n message.

\n
" } }, - "TotalVCpus": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "TotalVCpus", - "smithy.api#documentation": "

The total number of vCPUs on the Dedicated Host.

", - "smithy.api#xmlName": "totalVCpus" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the properties of a Dedicated Host.

" - } - }, - "com.amazonaws.ec2#HostRecovery": { - "type": "enum", - "members": { - "on": { - "target": "smithy.api#Unit", + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", "traits": { - "smithy.api#enumValue": "on" + "smithy.api#documentation": "

The IDs of the subnets in which to launch the instances. Separate multiple subnet IDs using commas (for example, subnet-1234abcdeexample1, subnet-0987cdef6example2). A request of type instant can have only one subnet ID.

" } }, - "off": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "off" - } - } - } - }, - "com.amazonaws.ec2#HostReservation": { - "type": "structure", - "members": { - "Count": { - "target": "com.amazonaws.ec2#Integer", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#AvailabilityZoneName", "traits": { - "aws.protocols#ec2QueryName": "Count", - "smithy.api#documentation": "

The number of Dedicated Hosts the reservation is associated with.

", - "smithy.api#xmlName": "count" + "smithy.api#documentation": "

The Availability Zone in which to launch the instances.

" } }, - "CurrencyCode": { - "target": "com.amazonaws.ec2#CurrencyCodeValues", + "WeightedCapacity": { + "target": "com.amazonaws.ec2#Double", "traits": { - "aws.protocols#ec2QueryName": "CurrencyCode", - "smithy.api#documentation": "

The currency in which the upfrontPrice and hourlyPrice\n amounts are specified. At this time, the only supported currency is\n USD.

", - "smithy.api#xmlName": "currencyCode" + "smithy.api#documentation": "

The number of units provided by the specified instance type. These are the same units\n that you chose to set the target capacity in terms of instances, or a performance\n characteristic such as vCPUs, memory, or I/O.

\n

If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the\n number of instances to the next whole number. If this value is not specified, the default\n is 1.

\n \n

When specifying weights, the price used in the lowest-price and\n price-capacity-optimized allocation strategies is per\n unit hour (where the instance price is divided by the specified\n weight). However, if all the specified weights are above the requested\n TargetCapacity, resulting in only 1 instance being launched, the price\n used is per instance hour.

\n
" } }, - "Duration": { - "target": "com.amazonaws.ec2#Integer", + "Priority": { + "target": "com.amazonaws.ec2#Double", "traits": { - "aws.protocols#ec2QueryName": "Duration", - "smithy.api#documentation": "

The length of the reservation's term, specified in seconds. Can be 31536000 (1\n year) | 94608000 (3 years).

", - "smithy.api#xmlName": "duration" + "smithy.api#documentation": "

The priority for the launch template override. The highest priority is launched\n first.

\n

If the On-Demand AllocationStrategy is set to prioritized,\n EC2 Fleet uses priority to determine which launch template override to use first in fulfilling\n On-Demand capacity.

\n

If the Spot AllocationStrategy is set to\n capacity-optimized-prioritized, EC2 Fleet uses priority on a best-effort basis\n to determine which launch template override to use in fulfilling Spot capacity, but\n optimizes for capacity first.

\n

Valid values are whole numbers starting at 0. The lower the number, the\n higher the priority. If no number is set, the launch template override has the lowest\n priority. You can set the same priority for different launch template overrides.

" } }, - "End": { - "target": "com.amazonaws.ec2#DateTime", + "Placement": { + "target": "com.amazonaws.ec2#Placement", "traits": { - "aws.protocols#ec2QueryName": "End", - "smithy.api#documentation": "

The date and time that the reservation ends.

", - "smithy.api#xmlName": "end" + "smithy.api#documentation": "

The location where the instance launched, if applicable.

" } }, - "HostIdSet": { - "target": "com.amazonaws.ec2#ResponseHostIdSet", + "BlockDeviceMappings": { + "target": "com.amazonaws.ec2#FleetBlockDeviceMappingRequestList", "traits": { - "aws.protocols#ec2QueryName": "HostIdSet", - "smithy.api#documentation": "

The IDs of the Dedicated Hosts associated with the reservation.

", - "smithy.api#xmlName": "hostIdSet" + "smithy.api#documentation": "

The block device mappings, which define the EBS volumes and instance store volumes to\n attach to the instance at launch.

\n

Supported only for fleets of type instant.

\n

For more information, see Block device mappings\n for volumes on Amazon EC2 instances in the Amazon EC2 User\n Guide.

", + "smithy.api#xmlName": "BlockDeviceMapping" } }, - "HostReservationId": { - "target": "com.amazonaws.ec2#HostReservationId", + "InstanceRequirements": { + "target": "com.amazonaws.ec2#InstanceRequirementsRequest", "traits": { - "aws.protocols#ec2QueryName": "HostReservationId", - "smithy.api#documentation": "

The ID of the reservation that specifies the associated Dedicated Hosts.

", - "smithy.api#xmlName": "hostReservationId" + "smithy.api#documentation": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will\n identify instance types with those attributes.

\n \n

If you specify InstanceRequirements, you can't specify\n InstanceType.

\n
" } }, - "HourlyPrice": { + "ImageId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "HourlyPrice", - "smithy.api#documentation": "

The hourly price of the reservation.

", - "smithy.api#xmlName": "hourlyPrice" + "smithy.api#documentation": "

The ID of the AMI in the format ami-17characters00000.

\n

Alternatively, you can specify a Systems Manager parameter, using one of the following\n formats. The Systems Manager parameter will resolve to an AMI ID on launch.

\n

To reference a public parameter:

\n \n

To reference a parameter stored in the same account:

\n \n

To reference a parameter shared from another Amazon Web Services account:

\n \n

For more information, see Use a Systems Manager parameter instead of an AMI ID in the\n Amazon EC2 User Guide.

\n \n

This parameter is only available for fleets of type instant. For fleets\n of type maintain and request, you must specify the AMI ID in\n the launch template.

\n
" } - }, - "InstanceFamily": { + } + }, + "traits": { + "smithy.api#documentation": "

Describes overrides for a launch template.

" + } + }, + "com.amazonaws.ec2#FleetLaunchTemplateSpecification": { + "type": "structure", + "members": { + "LaunchTemplateId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "InstanceFamily", - "smithy.api#documentation": "

The instance family of the Dedicated Host Reservation. The instance family on the\n Dedicated Host must be the same in order for it to benefit from the reservation.

", - "smithy.api#xmlName": "instanceFamily" + "aws.protocols#ec2QueryName": "LaunchTemplateId", + "smithy.api#documentation": "

The ID of the launch template.

\n

You must specify the LaunchTemplateId or the LaunchTemplateName, but not both.

", + "smithy.api#xmlName": "launchTemplateId" } }, - "OfferingId": { - "target": "com.amazonaws.ec2#OfferingId", + "LaunchTemplateName": { + "target": "com.amazonaws.ec2#LaunchTemplateName", "traits": { - "aws.protocols#ec2QueryName": "OfferingId", - "smithy.api#documentation": "

The ID of the reservation. This remains the same regardless of which Dedicated Hosts\n are associated with it.

", - "smithy.api#xmlName": "offeringId" + "aws.protocols#ec2QueryName": "LaunchTemplateName", + "smithy.api#documentation": "

The name of the launch template.

\n

You must specify the LaunchTemplateName or the LaunchTemplateId, but not both.

", + "smithy.api#xmlName": "launchTemplateName" } }, - "PaymentOption": { - "target": "com.amazonaws.ec2#PaymentOption", + "Version": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PaymentOption", - "smithy.api#documentation": "

The payment option selected for this reservation.

", - "smithy.api#xmlName": "paymentOption" + "aws.protocols#ec2QueryName": "Version", + "smithy.api#documentation": "

The launch template version number, $Latest, or $Default.\n You must specify a value, otherwise the request fails.

\n

If the value is $Latest, Amazon EC2 uses the latest version of the launch\n template.

\n

If the value is $Default, Amazon EC2 uses the default version of the launch\n template.

", + "smithy.api#xmlName": "version" } - }, - "Start": { - "target": "com.amazonaws.ec2#DateTime", + } + }, + "traits": { + "smithy.api#documentation": "

The Amazon EC2 launch template that can be used by\n a Spot Fleet to configure Amazon EC2 instances. You must specify either the ID or name of the launch template in the request, but not both.

\n

For information about launch templates,\n see Launch an instance from a launch template in the\n Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#FleetLaunchTemplateSpecificationRequest": { + "type": "structure", + "members": { + "LaunchTemplateId": { + "target": "com.amazonaws.ec2#LaunchTemplateId", "traits": { - "aws.protocols#ec2QueryName": "Start", - "smithy.api#documentation": "

The date and time that the reservation started.

", - "smithy.api#xmlName": "start" + "smithy.api#documentation": "

The ID of the launch template.

\n

You must specify the LaunchTemplateId or the LaunchTemplateName, but not both.

" } }, - "State": { - "target": "com.amazonaws.ec2#ReservationState", + "LaunchTemplateName": { + "target": "com.amazonaws.ec2#LaunchTemplateName", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the reservation.

", - "smithy.api#xmlName": "state" + "smithy.api#documentation": "

The name of the launch template.

\n

You must specify the LaunchTemplateName or the LaunchTemplateId, but not both.

" } }, - "UpfrontPrice": { + "Version": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "UpfrontPrice", - "smithy.api#documentation": "

The upfront price of the reservation.

", - "smithy.api#xmlName": "upfrontPrice" - } - }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", - "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the Dedicated Host Reservation.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#documentation": "

The launch template version number, $Latest, or $Default. You must specify a value, otherwise the request fails.

\n

If the value is $Latest, Amazon EC2 uses the latest version of the launch template.

\n

If the value is $Default, Amazon EC2 uses the default version of the launch template.

" } } }, "traits": { - "smithy.api#documentation": "

Details about the Dedicated Host Reservation and associated Dedicated Hosts.

" - } - }, - "com.amazonaws.ec2#HostReservationId": { - "type": "string" - }, - "com.amazonaws.ec2#HostReservationIdSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#HostReservationId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#HostReservationSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#HostReservation", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

The Amazon EC2 launch template that can be used by\n an EC2 Fleet to configure Amazon EC2 instances. You must specify either the ID or name of the launch template in the request, but not both.

\n

For information about launch templates, see Launch\n an instance from a launch template in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#HostTenancy": { + "com.amazonaws.ec2#FleetOnDemandAllocationStrategy": { "type": "enum", "members": { - "dedicated": { + "LOWEST_PRICE": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "dedicated" + "smithy.api#enumValue": "lowest-price" } }, - "host": { + "PRIORITIZED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "host" + "smithy.api#enumValue": "prioritized" } } } }, - "com.amazonaws.ec2#HostnameType": { + "com.amazonaws.ec2#FleetReplacementStrategy": { "type": "enum", "members": { - "ip_name": { + "LAUNCH": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ip-name" + "smithy.api#enumValue": "launch" } }, - "resource_name": { + "LAUNCH_BEFORE_TERMINATE": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "resource-name" + "smithy.api#enumValue": "launch-before-terminate" } } } }, - "com.amazonaws.ec2#Hour": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 0, - "max": 23 + "com.amazonaws.ec2#FleetSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#FleetData", + "traits": { + "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#HttpTokensState": { - "type": "enum", + "com.amazonaws.ec2#FleetSpotCapacityRebalance": { + "type": "structure", "members": { - "optional": { - "target": "smithy.api#Unit", + "ReplacementStrategy": { + "target": "com.amazonaws.ec2#FleetReplacementStrategy", "traits": { - "smithy.api#enumValue": "optional" + "aws.protocols#ec2QueryName": "ReplacementStrategy", + "smithy.api#documentation": "

The replacement strategy to use. Only available for fleets of type\n maintain.

\n

\n launch - EC2 Fleet launches a new replacement Spot Instance when a\n rebalance notification is emitted for an existing Spot Instance in the fleet. EC2 Fleet\n does not terminate the instances that receive a rebalance notification. You can terminate\n the old instances, or you can leave them running. You are charged for all instances while\n they are running.

\n

\n launch-before-terminate - EC2 Fleet launches a new replacement Spot\n Instance when a rebalance notification is emitted for an existing Spot Instance in the\n fleet, and then, after a delay that you specify (in TerminationDelay),\n terminates the instances that received a rebalance notification.

", + "smithy.api#xmlName": "replacementStrategy" } }, - "required": { - "target": "smithy.api#Unit", + "TerminationDelay": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "required" + "aws.protocols#ec2QueryName": "TerminationDelay", + "smithy.api#documentation": "

The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot\n Instance after launching a new replacement Spot Instance.

\n

Required when ReplacementStrategy is set to launch-before-terminate.

\n

Not valid when ReplacementStrategy is set to launch.

\n

Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

", + "smithy.api#xmlName": "terminationDelay" } } + }, + "traits": { + "smithy.api#documentation": "

The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an\n elevated risk of being interrupted.

" } }, - "com.amazonaws.ec2#HypervisorType": { - "type": "enum", + "com.amazonaws.ec2#FleetSpotCapacityRebalanceRequest": { + "type": "structure", "members": { - "ovm": { - "target": "smithy.api#Unit", + "ReplacementStrategy": { + "target": "com.amazonaws.ec2#FleetReplacementStrategy", "traits": { - "smithy.api#enumValue": "ovm" + "smithy.api#documentation": "

The replacement strategy to use. Only available for fleets of type\n maintain.

\n

\n launch - EC2 Fleet launches a replacement Spot Instance when a rebalance\n notification is emitted for an existing Spot Instance in the fleet. EC2 Fleet does not\n terminate the instances that receive a rebalance notification. You can terminate the old\n instances, or you can leave them running. You are charged for all instances while they are\n running.

\n

\n launch-before-terminate - EC2 Fleet launches a replacement Spot Instance\n when a rebalance notification is emitted for an existing Spot Instance in the fleet, and\n then, after a delay that you specify (in TerminationDelay), terminates the\n instances that received a rebalance notification.

" } }, - "xen": { - "target": "smithy.api#Unit", + "TerminationDelay": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "xen" + "smithy.api#documentation": "

The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot\n Instance after launching a new replacement Spot Instance.

\n

Required when ReplacementStrategy is set to launch-before-terminate.

\n

Not valid when ReplacementStrategy is set to launch.

\n

Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

" } } + }, + "traits": { + "smithy.api#documentation": "

The Spot Instance replacement strategy to use when Amazon EC2 emits a rebalance\n notification signal that your Spot Instance is at an elevated risk of being interrupted.\n For more information, see Capacity rebalancing in the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#IKEVersionsList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IKEVersionsListValue", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IKEVersionsListValue": { + "com.amazonaws.ec2#FleetSpotMaintenanceStrategies": { "type": "structure", "members": { - "Value": { - "target": "com.amazonaws.ec2#String", + "CapacityRebalance": { + "target": "com.amazonaws.ec2#FleetSpotCapacityRebalance", "traits": { - "aws.protocols#ec2QueryName": "Value", - "smithy.api#documentation": "

The IKE version.

", - "smithy.api#xmlName": "value" + "aws.protocols#ec2QueryName": "CapacityRebalance", + "smithy.api#documentation": "

The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an\n elevated risk of being interrupted.

", + "smithy.api#xmlName": "capacityRebalance" } } }, "traits": { - "smithy.api#documentation": "

The internet key exchange (IKE) version permitted for the VPN tunnel.

" - } - }, - "com.amazonaws.ec2#IKEVersionsRequestList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IKEVersionsRequestListValue", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

The strategies for managing your Spot Instances that are at an elevated risk of being\n interrupted.

" } }, - "com.amazonaws.ec2#IKEVersionsRequestListValue": { + "com.amazonaws.ec2#FleetSpotMaintenanceStrategiesRequest": { "type": "structure", "members": { - "Value": { - "target": "com.amazonaws.ec2#String", + "CapacityRebalance": { + "target": "com.amazonaws.ec2#FleetSpotCapacityRebalanceRequest", "traits": { - "smithy.api#documentation": "

The IKE version.

" + "smithy.api#documentation": "

The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an\n elevated risk of being interrupted.

" } } }, "traits": { - "smithy.api#documentation": "

The IKE version that is permitted for the VPN tunnel.

" + "smithy.api#documentation": "

The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.

" } }, - "com.amazonaws.ec2#IamInstanceProfile": { - "type": "structure", + "com.amazonaws.ec2#FleetStateCode": { + "type": "enum", "members": { - "Arn": { - "target": "com.amazonaws.ec2#String", + "SUBMITTED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Arn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the instance profile.

", - "smithy.api#xmlName": "arn" + "smithy.api#enumValue": "submitted" } }, - "Id": { - "target": "com.amazonaws.ec2#String", + "ACTIVE": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Id", - "smithy.api#documentation": "

The ID of the instance profile.

", - "smithy.api#xmlName": "id" + "smithy.api#enumValue": "active" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an IAM instance profile.

" - } - }, - "com.amazonaws.ec2#IamInstanceProfileAssociation": { - "type": "structure", - "members": { - "AssociationId": { - "target": "com.amazonaws.ec2#String", + }, + "DELETED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AssociationId", - "smithy.api#documentation": "

The ID of the association.

", - "smithy.api#xmlName": "associationId" + "smithy.api#enumValue": "deleted" } }, - "InstanceId": { - "target": "com.amazonaws.ec2#String", + "FAILED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#xmlName": "instanceId" + "smithy.api#enumValue": "failed" } }, - "IamInstanceProfile": { - "target": "com.amazonaws.ec2#IamInstanceProfile", + "DELETED_RUNNING": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IamInstanceProfile", - "smithy.api#documentation": "

The IAM instance profile.

", - "smithy.api#xmlName": "iamInstanceProfile" + "smithy.api#enumValue": "deleted_running" } }, - "State": { - "target": "com.amazonaws.ec2#IamInstanceProfileAssociationState", + "DELETED_TERMINATING_INSTANCES": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the association.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "deleted_terminating" } }, - "Timestamp": { - "target": "com.amazonaws.ec2#DateTime", + "MODIFYING": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Timestamp", - "smithy.api#documentation": "

The time the IAM instance profile was associated with the instance.

", - "smithy.api#xmlName": "timestamp" + "smithy.api#enumValue": "modifying" } } - }, - "traits": { - "smithy.api#documentation": "

Describes an association between an IAM instance profile and an instance.

" - } - }, - "com.amazonaws.ec2#IamInstanceProfileAssociationId": { - "type": "string" - }, - "com.amazonaws.ec2#IamInstanceProfileAssociationSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IamInstanceProfileAssociation", - "traits": { - "smithy.api#xmlName": "item" - } } }, - "com.amazonaws.ec2#IamInstanceProfileAssociationState": { + "com.amazonaws.ec2#FleetType": { "type": "enum", "members": { - "ASSOCIATING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "associating" - } - }, - "ASSOCIATED": { + "REQUEST": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "associated" + "smithy.api#enumValue": "request" } }, - "DISASSOCIATING": { + "MAINTAIN": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "disassociating" + "smithy.api#enumValue": "maintain" } }, - "DISASSOCIATED": { + "INSTANT": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "disassociated" + "smithy.api#enumValue": "instant" } } } }, - "com.amazonaws.ec2#IamInstanceProfileSpecification": { - "type": "structure", + "com.amazonaws.ec2#FlexibleEnaQueuesSupport": { + "type": "enum", "members": { - "Arn": { - "target": "com.amazonaws.ec2#String", + "UNSUPPORTED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Arn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the instance profile.

", - "smithy.api#xmlName": "arn" + "smithy.api#enumValue": "unsupported" } }, - "Name": { - "target": "com.amazonaws.ec2#String", + "SUPPORTED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Name", - "smithy.api#documentation": "

The name of the instance profile.

", - "smithy.api#xmlName": "name" + "smithy.api#enumValue": "supported" } } - }, - "traits": { - "smithy.api#documentation": "

Describes an IAM instance profile.

" } }, - "com.amazonaws.ec2#IcmpTypeCode": { + "com.amazonaws.ec2#Float": { + "type": "float" + }, + "com.amazonaws.ec2#FlowLog": { "type": "structure", "members": { - "Code": { - "target": "com.amazonaws.ec2#Integer", + "CreationTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The ICMP code. A value of -1 means all codes for the specified ICMP type.

", - "smithy.api#xmlName": "code" + "aws.protocols#ec2QueryName": "CreationTime", + "smithy.api#documentation": "

The date and time the flow log was created.

", + "smithy.api#xmlName": "creationTime" } }, - "Type": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "Type", - "smithy.api#documentation": "

The ICMP type. A value of -1 means all types.

", - "smithy.api#xmlName": "type" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the ICMP type and code.

" - } - }, - "com.amazonaws.ec2#IdFormat": { - "type": "structure", - "members": { - "Deadline": { - "target": "com.amazonaws.ec2#DateTime", + "DeliverLogsErrorMessage": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Deadline", - "smithy.api#documentation": "

The date in UTC at which you are permanently switched over to using longer IDs. If a deadline is not yet available for this resource type, this field is not returned.

", - "smithy.api#xmlName": "deadline" + "aws.protocols#ec2QueryName": "DeliverLogsErrorMessage", + "smithy.api#documentation": "

Information about the error that occurred. Rate limited indicates that\n CloudWatch Logs throttling has been applied for one or more network interfaces, or that you've\n reached the limit on the number of log groups that you can create. Access\n error indicates that the IAM role associated with the flow log does not have\n sufficient permissions to publish to CloudWatch Logs. Unknown error indicates an\n internal error.

", + "smithy.api#xmlName": "deliverLogsErrorMessage" } }, - "Resource": { + "DeliverLogsPermissionArn": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Resource", - "smithy.api#documentation": "

The type of resource.

", - "smithy.api#xmlName": "resource" + "aws.protocols#ec2QueryName": "DeliverLogsPermissionArn", + "smithy.api#documentation": "

The ARN of the IAM role allows the service to publish logs to CloudWatch Logs.

", + "smithy.api#xmlName": "deliverLogsPermissionArn" } }, - "UseLongIds": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "UseLongIds", - "smithy.api#documentation": "

Indicates whether longer IDs (17-character IDs) are enabled for the resource.

", - "smithy.api#xmlName": "useLongIds" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the ID format for a resource.

" - } - }, - "com.amazonaws.ec2#IdFormatList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IdFormat", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Igmpv2SupportValue": { - "type": "enum", - "members": { - "enable": { - "target": "smithy.api#Unit", + "DeliverCrossAccountRole": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "enable" + "aws.protocols#ec2QueryName": "DeliverCrossAccountRole", + "smithy.api#documentation": "

The ARN of the IAM role that allows the service to publish flow logs across accounts.

", + "smithy.api#xmlName": "deliverCrossAccountRole" } }, - "disable": { - "target": "smithy.api#Unit", + "DeliverLogsStatus": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "disable" + "aws.protocols#ec2QueryName": "DeliverLogsStatus", + "smithy.api#documentation": "

The status of the logs delivery (SUCCESS | FAILED).

", + "smithy.api#xmlName": "deliverLogsStatus" } - } - } - }, - "com.amazonaws.ec2#Image": { - "type": "structure", - "members": { - "Architecture": { - "target": "com.amazonaws.ec2#ArchitectureValues", + }, + "FlowLogId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Architecture", - "smithy.api#documentation": "

The architecture of the image.

", - "smithy.api#xmlName": "architecture" + "aws.protocols#ec2QueryName": "FlowLogId", + "smithy.api#documentation": "

The ID of the flow log.

", + "smithy.api#xmlName": "flowLogId" } }, - "CreationDate": { + "FlowLogStatus": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "CreationDate", - "smithy.api#documentation": "

The date and time the image was created.

", - "smithy.api#xmlName": "creationDate" + "aws.protocols#ec2QueryName": "FlowLogStatus", + "smithy.api#documentation": "

The status of the flow log (ACTIVE).

", + "smithy.api#xmlName": "flowLogStatus" } }, - "ImageId": { + "LogGroupName": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The ID of the AMI.

", - "smithy.api#xmlName": "imageId" + "aws.protocols#ec2QueryName": "LogGroupName", + "smithy.api#documentation": "

The name of the flow log group.

", + "smithy.api#xmlName": "logGroupName" } }, - "ImageLocation": { + "ResourceId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ImageLocation", - "smithy.api#documentation": "

The location of the AMI.

", - "smithy.api#xmlName": "imageLocation" + "aws.protocols#ec2QueryName": "ResourceId", + "smithy.api#documentation": "

The ID of the resource being monitored.

", + "smithy.api#xmlName": "resourceId" } }, - "ImageType": { - "target": "com.amazonaws.ec2#ImageTypeValues", + "TrafficType": { + "target": "com.amazonaws.ec2#TrafficType", "traits": { - "aws.protocols#ec2QueryName": "ImageType", - "smithy.api#documentation": "

The type of image.

", - "smithy.api#xmlName": "imageType" + "aws.protocols#ec2QueryName": "TrafficType", + "smithy.api#documentation": "

The type of traffic captured for the flow log.

", + "smithy.api#xmlName": "trafficType" } }, - "Public": { - "target": "com.amazonaws.ec2#Boolean", + "LogDestinationType": { + "target": "com.amazonaws.ec2#LogDestinationType", "traits": { - "aws.protocols#ec2QueryName": "IsPublic", - "smithy.api#documentation": "

Indicates whether the image has public launch permissions. The value is true if\n\t\t\t\tthis image has public launch permissions or false\n\t\t\t\tif it has only implicit and explicit launch permissions.

", - "smithy.api#xmlName": "isPublic" + "aws.protocols#ec2QueryName": "LogDestinationType", + "smithy.api#documentation": "

The type of destination for the flow log data.

", + "smithy.api#xmlName": "logDestinationType" } }, - "KernelId": { + "LogDestination": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "KernelId", - "smithy.api#documentation": "

The kernel associated with the image, if any. Only applicable for machine images.

", - "smithy.api#xmlName": "kernelId" + "aws.protocols#ec2QueryName": "LogDestination", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the destination for the flow log data.

", + "smithy.api#xmlName": "logDestination" } }, - "OwnerId": { + "LogFormat": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ImageOwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the image.

", - "smithy.api#xmlName": "imageOwnerId" + "aws.protocols#ec2QueryName": "LogFormat", + "smithy.api#documentation": "

The format of the flow log record.

", + "smithy.api#xmlName": "logFormat" } }, - "Platform": { - "target": "com.amazonaws.ec2#PlatformValues", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "aws.protocols#ec2QueryName": "Platform", - "smithy.api#documentation": "

This value is set to windows for Windows AMIs; otherwise, it is blank.

", - "smithy.api#xmlName": "platform" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags for the flow log.

", + "smithy.api#xmlName": "tagSet" } }, - "PlatformDetails": { - "target": "com.amazonaws.ec2#String", + "MaxAggregationInterval": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "PlatformDetails", - "smithy.api#documentation": "

The platform details associated with the billing code of the AMI. For more information,\n see Understand\n AMI billing information in the Amazon EC2 User Guide.

", - "smithy.api#xmlName": "platformDetails" + "aws.protocols#ec2QueryName": "MaxAggregationInterval", + "smithy.api#documentation": "

The maximum interval of time, in seconds, during which a flow of packets is captured and aggregated into a flow log record.

\n

When a network interface is attached to a Nitro-based\n instance, the aggregation interval is always 60 seconds (1 minute) or less,\n regardless of the specified value.

\n

Valid Values: 60 | 600\n

", + "smithy.api#xmlName": "maxAggregationInterval" } }, - "UsageOperation": { - "target": "com.amazonaws.ec2#String", + "DestinationOptions": { + "target": "com.amazonaws.ec2#DestinationOptionsResponse", "traits": { - "aws.protocols#ec2QueryName": "UsageOperation", - "smithy.api#documentation": "

The operation of the Amazon EC2 instance and the billing code that is associated with the AMI.\n usageOperation corresponds to the lineitem/Operation column on your Amazon Web Services Cost and Usage Report and in the Amazon Web Services Price\n \tList API. You can view these fields on the Instances or \n \tAMIs pages in the Amazon EC2 console, or in the responses that are \n \treturned by the DescribeImages \n \tcommand in the Amazon EC2 API, or the describe-images \n \tcommand in the CLI.

", - "smithy.api#xmlName": "usageOperation" + "aws.protocols#ec2QueryName": "DestinationOptions", + "smithy.api#documentation": "

The destination options.

", + "smithy.api#xmlName": "destinationOptions" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a flow log.

" + } + }, + "com.amazonaws.ec2#FlowLogIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#VpcFlowLogId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#FlowLogResourceId": { + "type": "string" + }, + "com.amazonaws.ec2#FlowLogResourceIds": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#FlowLogResourceId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#FlowLogSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#FlowLog", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#FlowLogsResourceType": { + "type": "enum", + "members": { + "VPC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VPC" } }, - "ProductCodes": { - "target": "com.amazonaws.ec2#ProductCodeList", + "Subnet": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ProductCodes", - "smithy.api#documentation": "

Any product codes associated with the AMI.

", - "smithy.api#xmlName": "productCodes" + "smithy.api#enumValue": "Subnet" } }, - "RamdiskId": { - "target": "com.amazonaws.ec2#String", + "NetworkInterface": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "RamdiskId", - "smithy.api#documentation": "

The RAM disk associated with the image, if any. Only applicable for machine images.

", - "smithy.api#xmlName": "ramdiskId" + "smithy.api#enumValue": "NetworkInterface" } }, - "State": { - "target": "com.amazonaws.ec2#ImageState", + "TransitGateway": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ImageState", - "smithy.api#documentation": "

The current state of the AMI. If the state is available, the image is successfully registered and can be used to launch an instance.

", - "smithy.api#xmlName": "imageState" + "smithy.api#enumValue": "TransitGateway" } }, - "BlockDeviceMappings": { - "target": "com.amazonaws.ec2#BlockDeviceMappingList", + "TransitGatewayAttachment": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "BlockDeviceMapping", - "smithy.api#documentation": "

Any block device mapping entries.

", - "smithy.api#xmlName": "blockDeviceMapping" + "smithy.api#enumValue": "TransitGatewayAttachment" + } + } + } + }, + "com.amazonaws.ec2#FpgaDeviceCount": { + "type": "integer" + }, + "com.amazonaws.ec2#FpgaDeviceInfo": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.ec2#FpgaDeviceName", + "traits": { + "aws.protocols#ec2QueryName": "Name", + "smithy.api#documentation": "

The name of the FPGA accelerator.

", + "smithy.api#xmlName": "name" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "Manufacturer": { + "target": "com.amazonaws.ec2#FpgaDeviceManufacturerName", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

The description of the AMI that was provided during image creation.

", - "smithy.api#xmlName": "description" + "aws.protocols#ec2QueryName": "Manufacturer", + "smithy.api#documentation": "

The manufacturer of the FPGA accelerator.

", + "smithy.api#xmlName": "manufacturer" } }, - "EnaSupport": { - "target": "com.amazonaws.ec2#Boolean", + "Count": { + "target": "com.amazonaws.ec2#FpgaDeviceCount", "traits": { - "aws.protocols#ec2QueryName": "EnaSupport", - "smithy.api#documentation": "

Specifies whether enhanced networking with ENA is enabled.

", - "smithy.api#xmlName": "enaSupport" + "aws.protocols#ec2QueryName": "Count", + "smithy.api#documentation": "

The count of FPGA accelerators for the instance type.

", + "smithy.api#xmlName": "count" } }, - "Hypervisor": { - "target": "com.amazonaws.ec2#HypervisorType", + "MemoryInfo": { + "target": "com.amazonaws.ec2#FpgaDeviceMemoryInfo", "traits": { - "aws.protocols#ec2QueryName": "Hypervisor", - "smithy.api#documentation": "

The hypervisor type of the image. Only xen is supported. ovm is\n not supported.

", - "smithy.api#xmlName": "hypervisor" + "aws.protocols#ec2QueryName": "MemoryInfo", + "smithy.api#documentation": "

Describes the memory for the FPGA accelerator for the instance type.

", + "smithy.api#xmlName": "memoryInfo" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the FPGA accelerator for the instance type.

" + } + }, + "com.amazonaws.ec2#FpgaDeviceInfoList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#FpgaDeviceInfo", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#FpgaDeviceManufacturerName": { + "type": "string" + }, + "com.amazonaws.ec2#FpgaDeviceMemoryInfo": { + "type": "structure", + "members": { + "SizeInMiB": { + "target": "com.amazonaws.ec2#FpgaDeviceMemorySize", + "traits": { + "aws.protocols#ec2QueryName": "SizeInMiB", + "smithy.api#documentation": "

The size of the memory available to the FPGA accelerator, in MiB.

", + "smithy.api#xmlName": "sizeInMiB" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the memory for the FPGA accelerator for the instance type.

" + } + }, + "com.amazonaws.ec2#FpgaDeviceMemorySize": { + "type": "integer" + }, + "com.amazonaws.ec2#FpgaDeviceName": { + "type": "string" + }, + "com.amazonaws.ec2#FpgaImage": { + "type": "structure", + "members": { + "FpgaImageId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "FpgaImageId", + "smithy.api#documentation": "

The FPGA image identifier (AFI ID).

", + "smithy.api#xmlName": "fpgaImageId" } }, - "ImageOwnerAlias": { + "FpgaImageGlobalId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ImageOwnerAlias", - "smithy.api#documentation": "

The owner alias (amazon | aws-marketplace).

", - "smithy.api#xmlName": "imageOwnerAlias" + "aws.protocols#ec2QueryName": "FpgaImageGlobalId", + "smithy.api#documentation": "

The global FPGA image identifier (AGFI ID).

", + "smithy.api#xmlName": "fpgaImageGlobalId" } }, "Name": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "Name", - "smithy.api#documentation": "

The name of the AMI that was provided during image creation.

", + "smithy.api#documentation": "

The name of the AFI.

", "smithy.api#xmlName": "name" } }, - "RootDeviceName": { + "Description": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "RootDeviceName", - "smithy.api#documentation": "

The device name of the root device volume (for example, /dev/sda1).

", - "smithy.api#xmlName": "rootDeviceName" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The description of the AFI.

", + "smithy.api#xmlName": "description" } }, - "RootDeviceType": { - "target": "com.amazonaws.ec2#DeviceType", + "ShellVersion": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "RootDeviceType", - "smithy.api#documentation": "

The type of root device used by the AMI. The AMI can use an Amazon EBS volume or an instance store volume.

", - "smithy.api#xmlName": "rootDeviceType" + "aws.protocols#ec2QueryName": "ShellVersion", + "smithy.api#documentation": "

The version of the Amazon Web Services Shell that was used to create the bitstream.

", + "smithy.api#xmlName": "shellVersion" } }, - "SriovNetSupport": { - "target": "com.amazonaws.ec2#String", + "PciId": { + "target": "com.amazonaws.ec2#PciId", "traits": { - "aws.protocols#ec2QueryName": "SriovNetSupport", - "smithy.api#documentation": "

Specifies whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.

", - "smithy.api#xmlName": "sriovNetSupport" + "aws.protocols#ec2QueryName": "PciId", + "smithy.api#documentation": "

Information about the PCI bus.

", + "smithy.api#xmlName": "pciId" } }, - "StateReason": { - "target": "com.amazonaws.ec2#StateReason", + "State": { + "target": "com.amazonaws.ec2#FpgaImageState", "traits": { - "aws.protocols#ec2QueryName": "StateReason", - "smithy.api#documentation": "

The reason for the state change.

", - "smithy.api#xmlName": "stateReason" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

Information about the state of the AFI.

", + "smithy.api#xmlName": "state" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "CreateTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the image.

", - "smithy.api#xmlName": "tagSet" + "aws.protocols#ec2QueryName": "CreateTime", + "smithy.api#documentation": "

The date and time the AFI was created.

", + "smithy.api#xmlName": "createTime" } }, - "VirtualizationType": { - "target": "com.amazonaws.ec2#VirtualizationType", + "UpdateTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "VirtualizationType", - "smithy.api#documentation": "

The type of virtualization of the AMI.

", - "smithy.api#xmlName": "virtualizationType" + "aws.protocols#ec2QueryName": "UpdateTime", + "smithy.api#documentation": "

The time of the most recent update to the AFI.

", + "smithy.api#xmlName": "updateTime" } }, - "BootMode": { - "target": "com.amazonaws.ec2#BootModeValues", + "OwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "BootMode", - "smithy.api#documentation": "

The boot mode of the image. For more information, see Boot modes in the\n Amazon EC2 User Guide.

", - "smithy.api#xmlName": "bootMode" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the AFI.

", + "smithy.api#xmlName": "ownerId" } }, - "TpmSupport": { - "target": "com.amazonaws.ec2#TpmSupportValues", + "OwnerAlias": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TpmSupport", - "smithy.api#documentation": "

If the image is configured for NitroTPM support, the value is v2.0. \n For more information, see NitroTPM in the\n Amazon EC2 User Guide.

", - "smithy.api#xmlName": "tpmSupport" + "aws.protocols#ec2QueryName": "OwnerAlias", + "smithy.api#documentation": "

The alias of the AFI owner. Possible values include self, amazon, and aws-marketplace.

", + "smithy.api#xmlName": "ownerAlias" } }, - "DeprecationTime": { - "target": "com.amazonaws.ec2#String", + "ProductCodes": { + "target": "com.amazonaws.ec2#ProductCodeList", "traits": { - "aws.protocols#ec2QueryName": "DeprecationTime", - "smithy.api#documentation": "

The date and time to deprecate the AMI, in UTC, in the following format: \n YYYY-MM-DDTHH:MM:SSZ.\n If you specified a value for seconds, Amazon EC2 rounds the seconds to the\n nearest minute.

", - "smithy.api#xmlName": "deprecationTime" + "aws.protocols#ec2QueryName": "ProductCodes", + "smithy.api#documentation": "

The product codes for the AFI.

", + "smithy.api#xmlName": "productCodes" } }, - "ImdsSupport": { - "target": "com.amazonaws.ec2#ImdsSupportValues", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "aws.protocols#ec2QueryName": "ImdsSupport", - "smithy.api#documentation": "

If v2.0, it indicates that IMDSv2 is specified in the AMI. Instances launched\n from this AMI will have HttpTokens automatically set to required so\n that, by default, the instance requires that IMDSv2 is used when requesting instance metadata.\n In addition, HttpPutResponseHopLimit is set to 2. For more\n information, see Configure\n the AMI in the Amazon EC2 User Guide.

", - "smithy.api#xmlName": "imdsSupport" + "aws.protocols#ec2QueryName": "Tags", + "smithy.api#documentation": "

Any tags assigned to the AFI.

", + "smithy.api#xmlName": "tags" } }, - "SourceInstanceId": { - "target": "com.amazonaws.ec2#String", + "Public": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "SourceInstanceId", - "smithy.api#documentation": "

The ID of the instance that the AMI was created from if the AMI was created using CreateImage. This field only appears if the AMI was created using\n CreateImage.

", - "smithy.api#xmlName": "sourceInstanceId" + "aws.protocols#ec2QueryName": "Public", + "smithy.api#documentation": "

Indicates whether the AFI is public.

", + "smithy.api#xmlName": "public" } }, - "DeregistrationProtection": { - "target": "com.amazonaws.ec2#String", + "DataRetentionSupport": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DeregistrationProtection", - "smithy.api#documentation": "

Indicates whether deregistration protection is enabled for the AMI.

", - "smithy.api#xmlName": "deregistrationProtection" + "aws.protocols#ec2QueryName": "DataRetentionSupport", + "smithy.api#documentation": "

Indicates whether data retention support is enabled for the AFI.

", + "smithy.api#xmlName": "dataRetentionSupport" } }, - "LastLaunchedTime": { - "target": "com.amazonaws.ec2#String", + "InstanceTypes": { + "target": "com.amazonaws.ec2#InstanceTypesList", "traits": { - "aws.protocols#ec2QueryName": "LastLaunchedTime", - "smithy.api#documentation": "

The date and time, in ISO 8601 date-time\n format, when the AMI was last used to launch an EC2 instance. When the AMI is used\n to launch an instance, there is a 24-hour delay before that usage is reported.

\n \n

\n lastLaunchedTime data is available starting April 2017.

\n
", - "smithy.api#xmlName": "lastLaunchedTime" + "aws.protocols#ec2QueryName": "InstanceTypes", + "smithy.api#documentation": "

The instance types supported by the AFI.

", + "smithy.api#xmlName": "instanceTypes" } } }, "traits": { - "smithy.api#documentation": "

Describes an image.

" + "smithy.api#documentation": "

Describes an Amazon FPGA image (AFI).

" } }, - "com.amazonaws.ec2#ImageAttribute": { + "com.amazonaws.ec2#FpgaImageAttribute": { "type": "structure", "members": { - "BlockDeviceMappings": { - "target": "com.amazonaws.ec2#BlockDeviceMappingList", + "FpgaImageId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "BlockDeviceMapping", - "smithy.api#documentation": "

The block device mapping entries.

", - "smithy.api#xmlName": "blockDeviceMapping" + "aws.protocols#ec2QueryName": "FpgaImageId", + "smithy.api#documentation": "

The ID of the AFI.

", + "smithy.api#xmlName": "fpgaImageId" } }, - "ImageId": { + "Name": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The ID of the AMI.

", - "smithy.api#xmlName": "imageId" + "aws.protocols#ec2QueryName": "Name", + "smithy.api#documentation": "

The name of the AFI.

", + "smithy.api#xmlName": "name" } }, - "LaunchPermissions": { - "target": "com.amazonaws.ec2#LaunchPermissionList", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "LaunchPermission", - "smithy.api#documentation": "

The launch permissions.

", - "smithy.api#xmlName": "launchPermission" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The description of the AFI.

", + "smithy.api#xmlName": "description" + } + }, + "LoadPermissions": { + "target": "com.amazonaws.ec2#LoadPermissionList", + "traits": { + "aws.protocols#ec2QueryName": "LoadPermissions", + "smithy.api#documentation": "

The load permissions.

", + "smithy.api#xmlName": "loadPermissions" } }, "ProductCodes": { @@ -56174,117 +57322,31 @@ "smithy.api#documentation": "

The product codes.

", "smithy.api#xmlName": "productCodes" } - }, - "Description": { - "target": "com.amazonaws.ec2#AttributeValue", + } + }, + "traits": { + "smithy.api#documentation": "

Describes an Amazon FPGA image (AFI) attribute.

" + } + }, + "com.amazonaws.ec2#FpgaImageAttributeName": { + "type": "enum", + "members": { + "description": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description for the AMI.

", - "smithy.api#xmlName": "description" + "smithy.api#enumValue": "description" } }, - "KernelId": { - "target": "com.amazonaws.ec2#AttributeValue", - "traits": { - "aws.protocols#ec2QueryName": "Kernel", - "smithy.api#documentation": "

The kernel ID.

", - "smithy.api#xmlName": "kernel" - } - }, - "RamdiskId": { - "target": "com.amazonaws.ec2#AttributeValue", - "traits": { - "aws.protocols#ec2QueryName": "Ramdisk", - "smithy.api#documentation": "

The RAM disk ID.

", - "smithy.api#xmlName": "ramdisk" - } - }, - "SriovNetSupport": { - "target": "com.amazonaws.ec2#AttributeValue", - "traits": { - "aws.protocols#ec2QueryName": "SriovNetSupport", - "smithy.api#documentation": "

Indicates whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.

", - "smithy.api#xmlName": "sriovNetSupport" - } - }, - "BootMode": { - "target": "com.amazonaws.ec2#AttributeValue", - "traits": { - "aws.protocols#ec2QueryName": "BootMode", - "smithy.api#documentation": "

The boot mode.

", - "smithy.api#xmlName": "bootMode" - } - }, - "TpmSupport": { - "target": "com.amazonaws.ec2#AttributeValue", - "traits": { - "aws.protocols#ec2QueryName": "TpmSupport", - "smithy.api#documentation": "

If the image is configured for NitroTPM support, the value is v2.0.

", - "smithy.api#xmlName": "tpmSupport" - } - }, - "UefiData": { - "target": "com.amazonaws.ec2#AttributeValue", - "traits": { - "aws.protocols#ec2QueryName": "UefiData", - "smithy.api#documentation": "

Base64 representation of the non-volatile UEFI variable store. To retrieve the UEFI data,\n use the GetInstanceUefiData command. You can inspect and modify the UEFI data by using the\n python-uefivars tool on\n GitHub. For more information, see UEFI Secure Boot in the\n Amazon EC2 User Guide.

", - "smithy.api#xmlName": "uefiData" - } - }, - "LastLaunchedTime": { - "target": "com.amazonaws.ec2#AttributeValue", - "traits": { - "aws.protocols#ec2QueryName": "LastLaunchedTime", - "smithy.api#documentation": "

The date and time, in ISO 8601 date-time\n format, when the AMI was last used to launch an EC2 instance. When the AMI is used\n to launch an instance, there is a 24-hour delay before that usage is reported.

\n \n

\n lastLaunchedTime data is available starting April 2017.

\n
", - "smithy.api#xmlName": "lastLaunchedTime" - } - }, - "ImdsSupport": { - "target": "com.amazonaws.ec2#AttributeValue", - "traits": { - "aws.protocols#ec2QueryName": "ImdsSupport", - "smithy.api#documentation": "

If v2.0, it indicates that IMDSv2 is specified in the AMI. Instances launched\n from this AMI will have HttpTokens automatically set to required so\n that, by default, the instance requires that IMDSv2 is used when requesting instance metadata.\n In addition, HttpPutResponseHopLimit is set to 2. For more\n information, see Configure\n the AMI in the Amazon EC2 User Guide.

", - "smithy.api#xmlName": "imdsSupport" - } - }, - "DeregistrationProtection": { - "target": "com.amazonaws.ec2#AttributeValue", - "traits": { - "aws.protocols#ec2QueryName": "DeregistrationProtection", - "smithy.api#documentation": "

Indicates whether deregistration protection is enabled for the AMI.

", - "smithy.api#xmlName": "deregistrationProtection" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an image attribute.

" - } - }, - "com.amazonaws.ec2#ImageAttributeName": { - "type": "enum", - "members": { - "description": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "description" - } - }, - "kernel": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "kernel" - } - }, - "ramdisk": { + "name": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ramdisk" + "smithy.api#enumValue": "name" } }, - "launchPermission": { + "loadPermission": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "launchPermission" + "smithy.api#enumValue": "loadPermission" } }, "productCodes": { @@ -56292,220 +57354,55 @@ "traits": { "smithy.api#enumValue": "productCodes" } - }, - "blockDeviceMapping": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "blockDeviceMapping" - } - }, - "sriovNetSupport": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "sriovNetSupport" - } - }, - "bootMode": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "bootMode" - } - }, - "tpmSupport": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "tpmSupport" - } - }, - "uefiData": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "uefiData" - } - }, - "lastLaunchedTime": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "lastLaunchedTime" - } - }, - "imdsSupport": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "imdsSupport" - } - }, - "deregistrationProtection": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "deregistrationProtection" - } - } - } - }, - "com.amazonaws.ec2#ImageBlockPublicAccessDisabledState": { - "type": "enum", - "members": { - "unblocked": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "unblocked" - } - } - } - }, - "com.amazonaws.ec2#ImageBlockPublicAccessEnabledState": { - "type": "enum", - "members": { - "block_new_sharing": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "block-new-sharing" - } - } - } - }, - "com.amazonaws.ec2#ImageDiskContainer": { - "type": "structure", - "members": { - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The description of the disk image.

" - } - }, - "DeviceName": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The block device mapping for the disk.

" - } - }, - "Format": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The format of the disk image being imported.

\n

Valid values: OVA | VHD | VHDX | VMDK | RAW\n

" - } - }, - "SnapshotId": { - "target": "com.amazonaws.ec2#SnapshotId", - "traits": { - "smithy.api#documentation": "

The ID of the EBS snapshot to be used for importing the snapshot.

" - } - }, - "Url": { - "target": "com.amazonaws.ec2#SensitiveUrl", - "traits": { - "smithy.api#documentation": "

The URL to the Amazon S3-based disk image being imported. The URL can either be a https URL (https://..) or an\n Amazon S3 URL (s3://..)

" - } - }, - "UserBucket": { - "target": "com.amazonaws.ec2#UserBucket", - "traits": { - "smithy.api#documentation": "

The S3 bucket for the disk image.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the disk container object for an import image task.

" - } - }, - "com.amazonaws.ec2#ImageDiskContainerList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ImageDiskContainer", - "traits": { - "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#ImageId": { + "com.amazonaws.ec2#FpgaImageId": { "type": "string" }, - "com.amazonaws.ec2#ImageIdList": { + "com.amazonaws.ec2#FpgaImageIdList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#ImageId", + "target": "com.amazonaws.ec2#FpgaImageId", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#ImageIdStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ImageId", - "traits": { - "smithy.api#xmlName": "ImageId" - } - } - }, - "com.amazonaws.ec2#ImageList": { + "com.amazonaws.ec2#FpgaImageList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#Image", + "target": "com.amazonaws.ec2#FpgaImage", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#ImageRecycleBinInfo": { + "com.amazonaws.ec2#FpgaImageState": { "type": "structure", "members": { - "ImageId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The ID of the AMI.

", - "smithy.api#xmlName": "imageId" - } - }, - "Name": { - "target": "com.amazonaws.ec2#String", + "Code": { + "target": "com.amazonaws.ec2#FpgaImageStateCode", "traits": { - "aws.protocols#ec2QueryName": "Name", - "smithy.api#documentation": "

The name of the AMI.

", - "smithy.api#xmlName": "name" + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The state. The following are the possible values:

\n ", + "smithy.api#xmlName": "code" } }, - "Description": { + "Message": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

The description of the AMI.

", - "smithy.api#xmlName": "description" - } - }, - "RecycleBinEnterTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "aws.protocols#ec2QueryName": "RecycleBinEnterTime", - "smithy.api#documentation": "

The date and time when the AMI entered the Recycle Bin.

", - "smithy.api#xmlName": "recycleBinEnterTime" - } - }, - "RecycleBinExitTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "aws.protocols#ec2QueryName": "RecycleBinExitTime", - "smithy.api#documentation": "

The date and time when the AMI is to be permanently deleted from the Recycle Bin.

", - "smithy.api#xmlName": "recycleBinExitTime" + "aws.protocols#ec2QueryName": "Message", + "smithy.api#documentation": "

If the state is failed, this is the error message.

", + "smithy.api#xmlName": "message" } } }, "traits": { - "smithy.api#documentation": "

Information about an AMI that is currently in the Recycle Bin.

" - } - }, - "com.amazonaws.ec2#ImageRecycleBinInfoList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ImageRecycleBinInfo", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

Describes the state of the bitstream generation process for an Amazon FPGA image (AFI).

" } }, - "com.amazonaws.ec2#ImageState": { + "com.amazonaws.ec2#FpgaImageStateCode": { "type": "enum", "members": { "pending": { @@ -56514,119 +57411,137 @@ "smithy.api#enumValue": "pending" } }, - "available": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "available" - } - }, - "invalid": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "invalid" - } - }, - "deregistered": { + "failed": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "deregistered" + "smithy.api#enumValue": "failed" } }, - "transient": { + "available": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "transient" + "smithy.api#enumValue": "available" } }, - "failed": { + "unavailable": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "failed" + "smithy.api#enumValue": "unavailable" } - }, - "error": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#FpgaInfo": { + "type": "structure", + "members": { + "Fpgas": { + "target": "com.amazonaws.ec2#FpgaDeviceInfoList", "traits": { - "smithy.api#enumValue": "error" + "aws.protocols#ec2QueryName": "Fpgas", + "smithy.api#documentation": "

Describes the FPGAs for the instance type.

", + "smithy.api#xmlName": "fpgas" } }, - "disabled": { - "target": "smithy.api#Unit", + "TotalFpgaMemoryInMiB": { + "target": "com.amazonaws.ec2#totalFpgaMemory", "traits": { - "smithy.api#enumValue": "disabled" + "aws.protocols#ec2QueryName": "TotalFpgaMemoryInMiB", + "smithy.api#documentation": "

The total memory of all FPGA accelerators for the instance type.

", + "smithy.api#xmlName": "totalFpgaMemoryInMiB" } } + }, + "traits": { + "smithy.api#documentation": "

Describes the FPGAs for the instance type.

" } }, - "com.amazonaws.ec2#ImageTypeValues": { + "com.amazonaws.ec2#FreeTierEligibleFlag": { + "type": "boolean" + }, + "com.amazonaws.ec2#GVCDMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 200, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#GatewayAssociationState": { "type": "enum", "members": { - "machine": { + "associated": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "machine" + "smithy.api#enumValue": "associated" } }, - "kernel": { + "not_associated": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "kernel" + "smithy.api#enumValue": "not-associated" } }, - "ramdisk": { + "associating": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ramdisk" + "smithy.api#enumValue": "associating" + } + }, + "disassociating": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disassociating" } } } }, - "com.amazonaws.ec2#ImdsSupportValues": { + "com.amazonaws.ec2#GatewayType": { "type": "enum", "members": { - "v2_0": { + "ipsec_1": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "v2.0" + "smithy.api#enumValue": "ipsec.1" } } } }, - "com.amazonaws.ec2#ImportClientVpnClientCertificateRevocationList": { + "com.amazonaws.ec2#GetActiveVpnTunnelStatus": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#ImportClientVpnClientCertificateRevocationListRequest" + "target": "com.amazonaws.ec2#GetActiveVpnTunnelStatusRequest" }, "output": { - "target": "com.amazonaws.ec2#ImportClientVpnClientCertificateRevocationListResult" + "target": "com.amazonaws.ec2#GetActiveVpnTunnelStatusResult" }, "traits": { - "smithy.api#documentation": "

Uploads a client certificate revocation list to the specified Client VPN endpoint. Uploading a client certificate revocation list overwrites the existing client certificate revocation list.

\n

Uploading a client certificate revocation list resets existing client connections.

" + "smithy.api#documentation": "

Returns the currently negotiated security parameters for an active VPN tunnel, including IKE version, DH groups, encryption algorithms, and integrity algorithms.

" } }, - "com.amazonaws.ec2#ImportClientVpnClientCertificateRevocationListRequest": { + "com.amazonaws.ec2#GetActiveVpnTunnelStatusRequest": { "type": "structure", "members": { - "ClientVpnEndpointId": { - "target": "com.amazonaws.ec2#ClientVpnEndpointId", + "VpnConnectionId": { + "target": "com.amazonaws.ec2#VpnConnectionId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Client VPN endpoint to which the client certificate revocation list applies.

", + "smithy.api#documentation": "

The ID of the VPN connection for which to retrieve the active tunnel status.

", "smithy.api#required": {} } }, - "CertificateRevocationList": { + "VpnTunnelOutsideIpAddress": { "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The client certificate revocation list file. For more information, see Generate a Client Certificate Revocation List in the\n\t\t\t\tClient VPN Administrator Guide.

", + "smithy.api#documentation": "

The external IP address of the VPN tunnel for which to retrieve the active status.

", "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request.

" } } }, @@ -56634,15 +57549,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#ImportClientVpnClientCertificateRevocationListResult": { + "com.amazonaws.ec2#GetActiveVpnTunnelStatusResult": { "type": "structure", "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + "ActiveVpnTunnelStatus": { + "target": "com.amazonaws.ec2#ActiveVpnTunnelStatus", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "ActiveVpnTunnelStatus", + "smithy.api#documentation": "

Information about the current security configuration of the VPN tunnel.

", + "smithy.api#xmlName": "activeVpnTunnelStatus" } } }, @@ -56650,165 +57565,159 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#ImportImage": { + "com.amazonaws.ec2#GetAllowedImagesSettings": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#ImportImageRequest" + "target": "com.amazonaws.ec2#GetAllowedImagesSettingsRequest" }, "output": { - "target": "com.amazonaws.ec2#ImportImageResult" + "target": "com.amazonaws.ec2#GetAllowedImagesSettingsResult" }, "traits": { - "smithy.api#documentation": "\n

To import your virtual machines (VMs) with a console-based experience, you can use the\n Import virtual machine images to Amazon Web Services template in the Migration Hub Orchestrator console. For more\n information, see the \n Migration Hub Orchestrator User Guide\n .

\n
\n

Import single or multi-volume disk images or EBS snapshots into an Amazon Machine Image (AMI).

\n \n

Amazon Web Services VM Import/Export strongly recommends specifying a value for either the\n --license-type or --usage-operation parameter when you create a new\n VM Import task. This ensures your operating system is licensed appropriately and your billing is\n optimized.

\n
\n

For more information, see Importing a \n VM as an image using VM Import/Export in the VM Import/Export User Guide.

" + "smithy.api#documentation": "

Gets the current state of the Allowed AMIs setting and the list of Allowed AMIs criteria\n at the account level in the specified Region.

\n \n

The Allowed AMIs feature does not restrict the AMIs owned by your account. Regardless of\n the criteria you set, the AMIs created by your account will always be discoverable and\n usable by users in your account.

\n
\n

For more information, see Control the discovery and use of AMIs in\n Amazon EC2 with Allowed AMIs in\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#ImportImageLicenseConfigurationRequest": { + "com.amazonaws.ec2#GetAllowedImagesSettingsRequest": { "type": "structure", "members": { - "LicenseConfigurationArn": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The ARN of a license configuration.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

The request information of license configurations.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#ImportImageLicenseConfigurationResponse": { + "com.amazonaws.ec2#GetAllowedImagesSettingsResult": { "type": "structure", "members": { - "LicenseConfigurationArn": { + "State": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "LicenseConfigurationArn", - "smithy.api#documentation": "

The ARN of a license configuration.

", - "smithy.api#xmlName": "licenseConfigurationArn" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the Allowed AMIs setting at the account level in the specified Amazon Web Services\n Region.

\n

Possible values:

\n ", + "smithy.api#xmlName": "state" + } + }, + "ImageCriteria": { + "target": "com.amazonaws.ec2#ImageCriterionList", + "traits": { + "aws.protocols#ec2QueryName": "ImageCriterionSet", + "smithy.api#documentation": "

The list of criteria for images that are discoverable and usable in the account in the\n specified Amazon Web Services Region.

", + "smithy.api#xmlName": "imageCriterionSet" + } + }, + "ManagedBy": { + "target": "com.amazonaws.ec2#ManagedBy", + "traits": { + "aws.protocols#ec2QueryName": "ManagedBy", + "smithy.api#documentation": "

The entity that manages the Allowed AMIs settings. Possible values include:

\n ", + "smithy.api#xmlName": "managedBy" } } }, "traits": { - "smithy.api#documentation": "

The response information for license configurations.

" - } - }, - "com.amazonaws.ec2#ImportImageLicenseSpecificationListRequest": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ImportImageLicenseConfigurationRequest", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#output": {} } }, - "com.amazonaws.ec2#ImportImageLicenseSpecificationListResponse": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ImportImageLicenseConfigurationResponse", - "traits": { - "smithy.api#xmlName": "item" - } + "com.amazonaws.ec2#GetAssociatedEnclaveCertificateIamRoles": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetAssociatedEnclaveCertificateIamRolesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetAssociatedEnclaveCertificateIamRolesResult" + }, + "traits": { + "smithy.api#documentation": "

Returns the IAM roles that are associated with the specified ACM (ACM) certificate. \n\t\t\tIt also returns the name of the Amazon S3 bucket and the Amazon S3 object key where the certificate, \n\t\t\tcertificate chain, and encrypted private key bundle are stored, and the ARN of the KMS key \n\t\t\tthat's used to encrypt the private key.

" } }, - "com.amazonaws.ec2#ImportImageRequest": { + "com.amazonaws.ec2#GetAssociatedEnclaveCertificateIamRolesRequest": { "type": "structure", "members": { - "Architecture": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The architecture of the virtual machine.

\n

Valid values: i386 | x86_64\n

" - } - }, - "ClientData": { - "target": "com.amazonaws.ec2#ClientData", - "traits": { - "smithy.api#documentation": "

The client-specific data.

" - } - }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The token to enable idempotency for VM import requests.

" - } - }, - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

A description string for the import image task.

" - } - }, - "DiskContainers": { - "target": "com.amazonaws.ec2#ImageDiskContainerList", + "CertificateArn": { + "target": "com.amazonaws.ec2#CertificateId", "traits": { - "smithy.api#documentation": "

Information about the disk containers.

", - "smithy.api#xmlName": "DiskContainer" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ARN of the ACM certificate for which to view the associated IAM roles, encryption keys, and Amazon \n\t\t\tS3 object information.

", + "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } - }, - "Encrypted": { - "target": "com.amazonaws.ec2#Boolean", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetAssociatedEnclaveCertificateIamRolesResult": { + "type": "structure", + "members": { + "AssociatedRoles": { + "target": "com.amazonaws.ec2#AssociatedRolesList", "traits": { - "smithy.api#documentation": "

Specifies whether the destination AMI of the imported image should be encrypted. The default KMS key for EBS is used\n unless you specify a non-default KMS key using KmsKeyId. For more information, see Amazon EBS Encryption in the\n Amazon Elastic Compute Cloud User Guide.

" + "aws.protocols#ec2QueryName": "AssociatedRoleSet", + "smithy.api#documentation": "

Information about the associated IAM roles.

", + "smithy.api#xmlName": "associatedRoleSet" } - }, - "Hypervisor": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The target hypervisor platform.

\n

Valid values: xen\n

" - } - }, - "KmsKeyId": { - "target": "com.amazonaws.ec2#KmsKeyId", - "traits": { - "smithy.api#documentation": "

An identifier for the symmetric KMS key to use when creating the\n encrypted AMI. This parameter is only required if you want to use a non-default KMS key; if this\n parameter is not specified, the default KMS key for EBS is used. If a KmsKeyId is\n specified, the Encrypted flag must also be set.

\n

The KMS key identifier may be provided in any of the following formats:

\n \n

Amazon Web Services parses KmsKeyId asynchronously, meaning that the action you call may appear to complete even\n though you provided an invalid identifier. This action will eventually report failure.

\n

The specified KMS key must exist in the Region that the AMI is being copied to.

\n

Amazon EBS does not support asymmetric KMS keys.

" - } - }, - "LicenseType": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The license type to be used for the Amazon Machine Image (AMI) after importing.

\n

Specify AWS to replace the source-system license with an Amazon Web Services\n license or BYOL to retain the source-system license. Leaving this parameter\n undefined is the same as choosing AWS when importing a Windows Server operating\n system, and the same as choosing BYOL when importing a Windows client operating\n system (such as Windows 10) or a Linux operating system.

\n

To use BYOL, you must have existing licenses with rights to use these licenses in a third party\n cloud, such as Amazon Web Services. For more information, see Prerequisites in the\n VM Import/Export User Guide.

" - } - }, - "Platform": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The operating system of the virtual machine. If you import a VM that is compatible with\n Unified Extensible Firmware Interface (UEFI) using an EBS snapshot, you must specify a value for\n the platform.

\n

Valid values: Windows | Linux\n

" - } - }, - "RoleName": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The name of the role to use when not using the default role, 'vmimport'.

" - } - }, - "LicenseSpecifications": { - "target": "com.amazonaws.ec2#ImportImageLicenseSpecificationListRequest", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetAssociatedIpv6PoolCidrs": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetAssociatedIpv6PoolCidrsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetAssociatedIpv6PoolCidrsResult" + }, + "traits": { + "smithy.api#documentation": "

Gets information about the IPv6 CIDR block associations for a specified IPv6 address pool.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "Ipv6CidrAssociations", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#GetAssociatedIpv6PoolCidrsRequest": { + "type": "structure", + "members": { + "PoolId": { + "target": "com.amazonaws.ec2#Ipv6PoolEc2Id", "traits": { - "smithy.api#documentation": "

The ARNs of the license configurations.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPv6 address pool.

", + "smithy.api#required": {} } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#documentation": "

The tags to apply to the import image task during creation.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "UsageOperation": { - "target": "com.amazonaws.ec2#String", + "MaxResults": { + "target": "com.amazonaws.ec2#Ipv6PoolMaxResults", "traits": { - "smithy.api#documentation": "

The usage operation value. For more information, see Licensing options in the VM Import/Export User Guide.

" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "BootMode": { - "target": "com.amazonaws.ec2#BootModeValues", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The boot mode of the virtual machine.

\n \n

The uefi-preferred boot mode isn't supported for importing images. For more\n information, see Boot modes in\n the VM Import/Export User Guide.

\n
" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -56816,447 +57725,450 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#ImportImageResult": { + "com.amazonaws.ec2#GetAssociatedIpv6PoolCidrsResult": { "type": "structure", "members": { - "Architecture": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Architecture", - "smithy.api#documentation": "

The architecture of the virtual machine.

", - "smithy.api#xmlName": "architecture" - } - }, - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description of the import task.

", - "smithy.api#xmlName": "description" - } - }, - "Encrypted": { - "target": "com.amazonaws.ec2#Boolean", + "Ipv6CidrAssociations": { + "target": "com.amazonaws.ec2#Ipv6CidrAssociationSet", "traits": { - "aws.protocols#ec2QueryName": "Encrypted", - "smithy.api#documentation": "

Indicates whether the AMI is encrypted.

", - "smithy.api#xmlName": "encrypted" + "aws.protocols#ec2QueryName": "Ipv6CidrAssociationSet", + "smithy.api#documentation": "

Information about the IPv6 CIDR block associations.

", + "smithy.api#xmlName": "ipv6CidrAssociationSet" } }, - "Hypervisor": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Hypervisor", - "smithy.api#documentation": "

The target hypervisor of the import task.

", - "smithy.api#xmlName": "hypervisor" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } - }, - "ImageId": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetAwsNetworkPerformanceData": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetAwsNetworkPerformanceDataRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetAwsNetworkPerformanceDataResult" + }, + "traits": { + "smithy.api#documentation": "

Gets network performance data.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "DataResponses", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#GetAwsNetworkPerformanceDataRequest": { + "type": "structure", + "members": { + "DataQueries": { + "target": "com.amazonaws.ec2#DataQueries", "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The ID of the Amazon Machine Image (AMI) created by the import task.

", - "smithy.api#xmlName": "imageId" + "smithy.api#documentation": "

A list of network performance data queries.

", + "smithy.api#xmlName": "DataQuery" } }, - "ImportTaskId": { - "target": "com.amazonaws.ec2#ImportImageTaskId", + "StartTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "ImportTaskId", - "smithy.api#documentation": "

The task ID of the import image task.

", - "smithy.api#xmlName": "importTaskId" + "smithy.api#documentation": "

The starting time for the performance data request. The starting time must be formatted\n as yyyy-mm-ddThh:mm:ss. For example, 2022-06-10T12:00:00.000Z.

" } }, - "KmsKeyId": { - "target": "com.amazonaws.ec2#KmsKeyId", + "EndTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "KmsKeyId", - "smithy.api#documentation": "

The identifier for the symmetric KMS key that was used to create the encrypted AMI.

", - "smithy.api#xmlName": "kmsKeyId" + "smithy.api#documentation": "

The ending time for the performance data request. The end time must be formatted as yyyy-mm-ddThh:mm:ss. For example, 2022-06-12T12:00:00.000Z.

" } }, - "LicenseType": { - "target": "com.amazonaws.ec2#String", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "LicenseType", - "smithy.api#documentation": "

The license type of the virtual machine.

", - "smithy.api#xmlName": "licenseType" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n To retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "Platform": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Platform", - "smithy.api#documentation": "

The operating system of the virtual machine.

", - "smithy.api#xmlName": "platform" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "Progress": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Progress", - "smithy.api#documentation": "

The progress of the task.

", - "smithy.api#xmlName": "progress" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "SnapshotDetails": { - "target": "com.amazonaws.ec2#SnapshotDetailList", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetAwsNetworkPerformanceDataResult": { + "type": "structure", + "members": { + "DataResponses": { + "target": "com.amazonaws.ec2#DataResponses", "traits": { - "aws.protocols#ec2QueryName": "SnapshotDetailSet", - "smithy.api#documentation": "

Information about the snapshots.

", - "smithy.api#xmlName": "snapshotDetailSet" + "aws.protocols#ec2QueryName": "DataResponseSet", + "smithy.api#documentation": "

The list of data responses.

", + "smithy.api#xmlName": "dataResponseSet" } }, - "Status": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

A brief status of the task.

", - "smithy.api#xmlName": "status" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } - }, - "StatusMessage": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetCapacityReservationUsage": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetCapacityReservationUsageRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetCapacityReservationUsageResult" + }, + "traits": { + "smithy.api#documentation": "

Gets usage information about a Capacity Reservation. If the Capacity Reservation is\n\t\t\tshared, it shows usage information for the Capacity Reservation owner and each Amazon Web Services account that is currently using the shared capacity. If the Capacity\n\t\t\tReservation is not shared, it shows only the Capacity Reservation owner's usage.

" + } + }, + "com.amazonaws.ec2#GetCapacityReservationUsageRequest": { + "type": "structure", + "members": { + "CapacityReservationId": { + "target": "com.amazonaws.ec2#CapacityReservationId", "traits": { - "aws.protocols#ec2QueryName": "StatusMessage", - "smithy.api#documentation": "

A detailed status message of the import task.

", - "smithy.api#xmlName": "statusMessage" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Capacity Reservation.

", + "smithy.api#required": {} } }, - "LicenseSpecifications": { - "target": "com.amazonaws.ec2#ImportImageLicenseSpecificationListResponse", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "LicenseSpecifications", - "smithy.api#documentation": "

The ARNs of the license configurations.

", - "smithy.api#xmlName": "licenseSpecifications" + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "MaxResults": { + "target": "com.amazonaws.ec2#GetCapacityReservationUsageRequestMaxResults", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the import image task.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, \n see Pagination.

" } }, - "UsageOperation": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "UsageOperation", - "smithy.api#documentation": "

The usage operation value.

", - "smithy.api#xmlName": "usageOperation" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.ec2#ImportImageTask": { + "com.amazonaws.ec2#GetCapacityReservationUsageRequestMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#GetCapacityReservationUsageResult": { "type": "structure", "members": { - "Architecture": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Architecture", - "smithy.api#documentation": "

The architecture of the virtual machine.

\n

Valid values: i386 | x86_64 | arm64\n

", - "smithy.api#xmlName": "architecture" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } }, - "Description": { + "CapacityReservationId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description of the import task.

", - "smithy.api#xmlName": "description" - } - }, - "Encrypted": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "Encrypted", - "smithy.api#documentation": "

Indicates whether the image is encrypted.

", - "smithy.api#xmlName": "encrypted" + "aws.protocols#ec2QueryName": "CapacityReservationId", + "smithy.api#documentation": "

The ID of the Capacity Reservation.

", + "smithy.api#xmlName": "capacityReservationId" } }, - "Hypervisor": { + "InstanceType": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Hypervisor", - "smithy.api#documentation": "

The target hypervisor for the import task.

\n

Valid values: xen\n

", - "smithy.api#xmlName": "hypervisor" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The type of instance for which the Capacity Reservation reserves capacity.

", + "smithy.api#xmlName": "instanceType" } }, - "ImageId": { - "target": "com.amazonaws.ec2#String", + "TotalInstanceCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The ID of the Amazon Machine Image (AMI) of the imported virtual machine.

", - "smithy.api#xmlName": "imageId" + "aws.protocols#ec2QueryName": "TotalInstanceCount", + "smithy.api#documentation": "

The number of instances for which the Capacity Reservation reserves capacity.

", + "smithy.api#xmlName": "totalInstanceCount" } }, - "ImportTaskId": { - "target": "com.amazonaws.ec2#String", + "AvailableInstanceCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "ImportTaskId", - "smithy.api#documentation": "

The ID of the import image task.

", - "smithy.api#xmlName": "importTaskId" + "aws.protocols#ec2QueryName": "AvailableInstanceCount", + "smithy.api#documentation": "

The remaining capacity. Indicates the number of instances that can be launched in the\n\t\t\tCapacity Reservation.

", + "smithy.api#xmlName": "availableInstanceCount" } }, - "KmsKeyId": { - "target": "com.amazonaws.ec2#String", + "State": { + "target": "com.amazonaws.ec2#CapacityReservationState", "traits": { - "aws.protocols#ec2QueryName": "KmsKeyId", - "smithy.api#documentation": "

The identifier for the KMS key that was used to create the encrypted image.

", - "smithy.api#xmlName": "kmsKeyId" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the Capacity Reservation. A Capacity Reservation can be in one of\n\t\t\tthe following states:

\n ", + "smithy.api#xmlName": "state" } }, - "LicenseType": { - "target": "com.amazonaws.ec2#String", + "InstanceUsages": { + "target": "com.amazonaws.ec2#InstanceUsageSet", "traits": { - "aws.protocols#ec2QueryName": "LicenseType", - "smithy.api#documentation": "

The license type of the virtual machine.

", - "smithy.api#xmlName": "licenseType" + "aws.protocols#ec2QueryName": "InstanceUsageSet", + "smithy.api#documentation": "

Information about the Capacity Reservation usage.

", + "smithy.api#xmlName": "instanceUsageSet" } - }, - "Platform": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetCoipPoolUsage": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetCoipPoolUsageRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetCoipPoolUsageResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the allocations from the specified customer-owned address pool.

" + } + }, + "com.amazonaws.ec2#GetCoipPoolUsageRequest": { + "type": "structure", + "members": { + "PoolId": { + "target": "com.amazonaws.ec2#Ipv4PoolCoipId", "traits": { - "aws.protocols#ec2QueryName": "Platform", - "smithy.api#documentation": "

The description string for the import image task.

", - "smithy.api#xmlName": "platform" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the address pool.

", + "smithy.api#required": {} } }, - "Progress": { - "target": "com.amazonaws.ec2#String", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "Progress", - "smithy.api#documentation": "

The percentage of progress of the import image task.

", - "smithy.api#xmlName": "progress" + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "SnapshotDetails": { - "target": "com.amazonaws.ec2#SnapshotDetailList", + "MaxResults": { + "target": "com.amazonaws.ec2#CoipPoolMaxResults", "traits": { - "aws.protocols#ec2QueryName": "SnapshotDetailSet", - "smithy.api#documentation": "

Information about the snapshots.

", - "smithy.api#xmlName": "snapshotDetailSet" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "Status": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

A brief status for the import image task.

", - "smithy.api#xmlName": "status" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "StatusMessage": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "StatusMessage", - "smithy.api#documentation": "

A descriptive status message for the import image task.

", - "smithy.api#xmlName": "statusMessage" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetCoipPoolUsageResult": { + "type": "structure", + "members": { + "CoipPoolId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags for the import image task.

", - "smithy.api#xmlName": "tagSet" + "aws.protocols#ec2QueryName": "CoipPoolId", + "smithy.api#documentation": "

The ID of the customer-owned address pool.

", + "smithy.api#xmlName": "coipPoolId" } }, - "LicenseSpecifications": { - "target": "com.amazonaws.ec2#ImportImageLicenseSpecificationListResponse", + "CoipAddressUsages": { + "target": "com.amazonaws.ec2#CoipAddressUsageSet", "traits": { - "aws.protocols#ec2QueryName": "LicenseSpecifications", - "smithy.api#documentation": "

The ARNs of the license configurations that are associated with the import image task.

", - "smithy.api#xmlName": "licenseSpecifications" + "aws.protocols#ec2QueryName": "CoipAddressUsageSet", + "smithy.api#documentation": "

Information about the address usage.

", + "smithy.api#xmlName": "coipAddressUsageSet" } }, - "UsageOperation": { + "LocalGatewayRouteTableId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "UsageOperation", - "smithy.api#documentation": "

The usage operation value.

", - "smithy.api#xmlName": "usageOperation" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableId", + "smithy.api#documentation": "

The ID of the local gateway route table.

", + "smithy.api#xmlName": "localGatewayRouteTableId" } }, - "BootMode": { - "target": "com.amazonaws.ec2#BootModeValues", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "BootMode", - "smithy.api#documentation": "

The boot mode of the virtual machine.

", - "smithy.api#xmlName": "bootMode" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Describes an import image task.

" - } - }, - "com.amazonaws.ec2#ImportImageTaskId": { - "type": "string" - }, - "com.amazonaws.ec2#ImportImageTaskList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ImportImageTask", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#output": {} } }, - "com.amazonaws.ec2#ImportInstance": { + "com.amazonaws.ec2#GetConsoleOutput": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#ImportInstanceRequest" + "target": "com.amazonaws.ec2#GetConsoleOutputRequest" }, "output": { - "target": "com.amazonaws.ec2#ImportInstanceResult" + "target": "com.amazonaws.ec2#GetConsoleOutputResult" }, "traits": { - "smithy.api#documentation": "\n

We recommend that you use the \n ImportImage\n \n API. For more information, see Importing a VM as an image using VM\n Import/Export in the VM Import/Export User Guide.

\n
\n

Creates an import instance task using metadata from the specified disk image.

\n

This API action is not supported by the Command Line Interface (CLI). For\n information about using the Amazon EC2 CLI, which is deprecated, see Importing\n a VM to Amazon EC2 in the Amazon EC2 CLI Reference PDF file.

\n

This API action supports only single-volume VMs. To import multi-volume VMs, use ImportImage\n instead.

\n

For information about the import manifest referenced by this API action, see VM Import Manifest.

" + "smithy.api#documentation": "

Gets the console output for the specified instance. For Linux instances, the instance\n console output displays the exact console output that would normally be displayed on a\n physical monitor attached to a computer. For Windows instances, the instance console\n output includes the last three system event log errors.

\n

For more information, see Instance\n console output in the Amazon EC2 User Guide.

", + "smithy.api#examples": [ + { + "title": "To get the console output", + "documentation": "This example gets the console output for the specified instance.", + "input": { + "InstanceId": "i-1234567890abcdef0" + }, + "output": { + "InstanceId": "i-1234567890abcdef0", + "Output": "...", + "Timestamp": "2018-05-25T21:23:53.000Z" + } + } + ] } }, - "com.amazonaws.ec2#ImportInstanceLaunchSpecification": { + "com.amazonaws.ec2#GetConsoleOutputRequest": { "type": "structure", "members": { - "AdditionalInfo": { - "target": "com.amazonaws.ec2#String", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "aws.protocols#ec2QueryName": "AdditionalInfo", - "smithy.api#documentation": "

Reserved.

", - "smithy.api#xmlName": "additionalInfo" - } - }, - "Architecture": { - "target": "com.amazonaws.ec2#ArchitectureValues", - "traits": { - "aws.protocols#ec2QueryName": "Architecture", - "smithy.api#documentation": "

The architecture of the instance.

", - "smithy.api#xmlName": "architecture" - } - }, - "GroupIds": { - "target": "com.amazonaws.ec2#SecurityGroupIdStringList", - "traits": { - "smithy.api#documentation": "

The security group IDs.

", - "smithy.api#xmlName": "GroupId" - } - }, - "GroupNames": { - "target": "com.amazonaws.ec2#SecurityGroupStringList", - "traits": { - "smithy.api#documentation": "

The security group names.

", - "smithy.api#xmlName": "GroupName" - } - }, - "InstanceInitiatedShutdownBehavior": { - "target": "com.amazonaws.ec2#ShutdownBehavior", - "traits": { - "aws.protocols#ec2QueryName": "InstanceInitiatedShutdownBehavior", - "smithy.api#documentation": "

Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the\n operating system command for system shutdown).

", - "smithy.api#xmlName": "instanceInitiatedShutdownBehavior" - } - }, - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", - "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type. For more information about the instance types that you can import, see Instance Types in the\n VM Import/Export User Guide.

", - "smithy.api#xmlName": "instanceType" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#required": {} } }, - "Monitoring": { + "Latest": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Monitoring", - "smithy.api#documentation": "

Indicates whether monitoring is enabled.

", - "smithy.api#xmlName": "monitoring" + "smithy.api#documentation": "

When enabled, retrieves the latest console output for the instance.

\n

Default: disabled (false)

" } }, - "Placement": { - "target": "com.amazonaws.ec2#Placement", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Placement", - "smithy.api#documentation": "

The placement information for the instance.

", - "smithy.api#xmlName": "placement" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } - }, - "PrivateIpAddress": { + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetConsoleOutputResult": { + "type": "structure", + "members": { + "InstanceId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PrivateIpAddress", - "smithy.api#documentation": "

[EC2-VPC] An available IP address from the IP address range of the subnet.

", - "smithy.api#xmlName": "privateIpAddress" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#xmlName": "instanceId" } }, - "SubnetId": { - "target": "com.amazonaws.ec2#SubnetId", + "Timestamp": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#documentation": "

[EC2-VPC] The ID of the subnet in which to launch the instance.

", - "smithy.api#xmlName": "subnetId" + "aws.protocols#ec2QueryName": "Timestamp", + "smithy.api#documentation": "

The time at which the output was last updated.

", + "smithy.api#xmlName": "timestamp" } }, - "UserData": { - "target": "com.amazonaws.ec2#UserData", + "Output": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "UserData", - "smithy.api#documentation": "

The Base64-encoded user data to make available to the instance.

", - "smithy.api#xmlName": "userData" + "aws.protocols#ec2QueryName": "Output", + "smithy.api#documentation": "

The console output, base64-encoded. If you are using a command line tool, the tool\n decodes the output for you.

", + "smithy.api#xmlName": "output" } } }, "traits": { - "smithy.api#documentation": "

Describes the launch specification for VM import.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#ImportInstanceRequest": { + "com.amazonaws.ec2#GetConsoleScreenshot": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetConsoleScreenshotRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetConsoleScreenshotResult" + }, + "traits": { + "smithy.api#documentation": "

Retrieve a JPG-format screenshot of a running instance to help with\n troubleshooting.

\n

The returned content is Base64-encoded.

\n

For more information, see Instance console output in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#GetConsoleScreenshotRequest": { "type": "structure", "members": { - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description for the instance being imported.

", - "smithy.api#xmlName": "description" - } - }, - "DiskImages": { - "target": "com.amazonaws.ec2#DiskImageList", - "traits": { - "aws.protocols#ec2QueryName": "DiskImage", - "smithy.api#documentation": "

The disk image.

", - "smithy.api#xmlName": "diskImage" - } - }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } }, - "LaunchSpecification": { - "target": "com.amazonaws.ec2#ImportInstanceLaunchSpecification", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "aws.protocols#ec2QueryName": "LaunchSpecification", - "smithy.api#documentation": "

The launch specification.

", - "smithy.api#xmlName": "launchSpecification" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#required": {} } }, - "Platform": { - "target": "com.amazonaws.ec2#PlatformValues", + "WakeUp": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Platform", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The instance operating system.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "platform" + "smithy.api#documentation": "

When set to true, acts as keystroke input and wakes up an instance that's\n in standby or \"sleep\" mode.

" } } }, @@ -57264,31 +58176,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#ImportInstanceResult": { - "type": "structure", - "members": { - "ConversionTask": { - "target": "com.amazonaws.ec2#ConversionTask", - "traits": { - "aws.protocols#ec2QueryName": "ConversionTask", - "smithy.api#documentation": "

Information about the conversion task.

", - "smithy.api#xmlName": "conversionTask" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ImportInstanceTaskDetails": { + "com.amazonaws.ec2#GetConsoleScreenshotResult": { "type": "structure", "members": { - "Description": { + "ImageData": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description of the task.

", - "smithy.api#xmlName": "description" + "aws.protocols#ec2QueryName": "ImageData", + "smithy.api#documentation": "

The data that comprises the image.

", + "smithy.api#xmlName": "imageData" } }, "InstanceId": { @@ -57298,149 +58194,153 @@ "smithy.api#documentation": "

The ID of the instance.

", "smithy.api#xmlName": "instanceId" } - }, - "Platform": { - "target": "com.amazonaws.ec2#PlatformValues", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetDeclarativePoliciesReportSummary": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetDeclarativePoliciesReportSummaryRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetDeclarativePoliciesReportSummaryResult" + }, + "traits": { + "smithy.api#documentation": "

Retrieves a summary of the account status report.

\n

To view the full report, download it from the Amazon S3 bucket where it was saved.\n Reports are accessible only when they have the complete status. Reports\n with other statuses (running, cancelled, or\n error) are not available in the S3 bucket. For more information about\n downloading objects from an S3 bucket, see Downloading objects in\n the Amazon Simple Storage Service User Guide.

\n

For more information, see Generating the account status report for declarative policies in the\n Amazon Web Services Organizations User Guide.

" + } + }, + "com.amazonaws.ec2#GetDeclarativePoliciesReportSummaryRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Platform", - "smithy.api#documentation": "

The instance operating system.

", - "smithy.api#xmlName": "platform" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "Volumes": { - "target": "com.amazonaws.ec2#ImportInstanceVolumeDetailSet", + "ReportId": { + "target": "com.amazonaws.ec2#DeclarativePoliciesReportId", "traits": { - "aws.protocols#ec2QueryName": "Volumes", - "smithy.api#documentation": "

The volumes.

", - "smithy.api#xmlName": "volumes" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the report.

", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Describes an import instance task.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#ImportInstanceVolumeDetailItem": { + "com.amazonaws.ec2#GetDeclarativePoliciesReportSummaryResult": { "type": "structure", "members": { - "AvailabilityZone": { + "ReportId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone where the resulting instance will reside.

", - "smithy.api#xmlName": "availabilityZone" + "aws.protocols#ec2QueryName": "ReportId", + "smithy.api#documentation": "

The ID of the report.

", + "smithy.api#xmlName": "reportId" } }, - "BytesConverted": { - "target": "com.amazonaws.ec2#Long", + "S3Bucket": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "BytesConverted", - "smithy.api#documentation": "

The number of bytes converted so far.

", - "smithy.api#xmlName": "bytesConverted" + "aws.protocols#ec2QueryName": "S3Bucket", + "smithy.api#documentation": "

The name of the Amazon S3 bucket where the report is located.

", + "smithy.api#xmlName": "s3Bucket" } }, - "Description": { + "S3Prefix": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description of the task.

", - "smithy.api#xmlName": "description" + "aws.protocols#ec2QueryName": "S3Prefix", + "smithy.api#documentation": "

The prefix for your S3 object.

", + "smithy.api#xmlName": "s3Prefix" } }, - "Image": { - "target": "com.amazonaws.ec2#DiskImageDescription", + "TargetId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Image", - "smithy.api#documentation": "

The image.

", - "smithy.api#xmlName": "image" + "aws.protocols#ec2QueryName": "TargetId", + "smithy.api#documentation": "

The root ID, organizational unit ID, or account ID.

\n

Format:

\n ", + "smithy.api#xmlName": "targetId" } }, - "Status": { - "target": "com.amazonaws.ec2#String", + "StartTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The status of the import of this particular disk image.

", - "smithy.api#xmlName": "status" + "aws.protocols#ec2QueryName": "StartTime", + "smithy.api#documentation": "

The time when the report generation started.

", + "smithy.api#xmlName": "startTime" } }, - "StatusMessage": { - "target": "com.amazonaws.ec2#String", + "EndTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "StatusMessage", - "smithy.api#documentation": "

The status information or errors related to the disk image.

", - "smithy.api#xmlName": "statusMessage" + "aws.protocols#ec2QueryName": "EndTime", + "smithy.api#documentation": "

The time when the report generation ended.

", + "smithy.api#xmlName": "endTime" } }, - "Volume": { - "target": "com.amazonaws.ec2#DiskImageVolumeDescription", + "NumberOfAccounts": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "Volume", - "smithy.api#documentation": "

The volume.

", - "smithy.api#xmlName": "volume" + "aws.protocols#ec2QueryName": "NumberOfAccounts", + "smithy.api#documentation": "

The total number of accounts associated with the specified\n targetId.

", + "smithy.api#xmlName": "numberOfAccounts" + } + }, + "NumberOfFailedAccounts": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "NumberOfFailedAccounts", + "smithy.api#documentation": "

The number of accounts where attributes could not be retrieved in any Region.

", + "smithy.api#xmlName": "numberOfFailedAccounts" + } + }, + "AttributeSummaries": { + "target": "com.amazonaws.ec2#AttributeSummaryList", + "traits": { + "aws.protocols#ec2QueryName": "AttributeSummarySet", + "smithy.api#documentation": "

The attributes described in the report.

", + "smithy.api#xmlName": "attributeSummarySet" } } }, "traits": { - "smithy.api#documentation": "

Describes an import volume task.

" - } - }, - "com.amazonaws.ec2#ImportInstanceVolumeDetailSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ImportInstanceVolumeDetailItem", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#output": {} } }, - "com.amazonaws.ec2#ImportKeyPair": { + "com.amazonaws.ec2#GetDefaultCreditSpecification": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#ImportKeyPairRequest" + "target": "com.amazonaws.ec2#GetDefaultCreditSpecificationRequest" }, "output": { - "target": "com.amazonaws.ec2#ImportKeyPairResult" + "target": "com.amazonaws.ec2#GetDefaultCreditSpecificationResult" }, "traits": { - "smithy.api#documentation": "

Imports the public key from an RSA or ED25519 key pair that you created with a third-party tool. \n Compare this with CreateKeyPair, in which Amazon Web Services creates the key pair and gives the keys to you \n (Amazon Web Services keeps a copy of the public key). With ImportKeyPair, you create the key pair and give Amazon Web Services just the public key. \n The private key is never transferred between you and Amazon Web Services.

\n

For more information about key pairs, see Amazon EC2 key pairs \n\t\t\t\tin the Amazon Elastic Compute Cloud User Guide.

" + "smithy.api#documentation": "

Describes the default credit option for CPU usage of a burstable performance instance\n family.

\n

For more information, see Burstable\n performance instances in the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#ImportKeyPairRequest": { + "com.amazonaws.ec2#GetDefaultCreditSpecificationRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" - } - }, - "KeyName": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "KeyName", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A unique name for the key pair.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "keyName" + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } }, - "PublicKeyMaterial": { - "target": "com.amazonaws.ec2#Blob", + "InstanceFamily": { + "target": "com.amazonaws.ec2#UnlimitedSupportedInstanceFamily", "traits": { - "aws.protocols#ec2QueryName": "PublicKeyMaterial", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The public key. For API calls, the text must be base64-encoded. For command line tools, base64 encoding is performed for you.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "publicKeyMaterial" - } - }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", - "traits": { - "smithy.api#documentation": "

The tags to apply to the imported key pair.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

The instance family.

", + "smithy.api#required": {} } } }, @@ -57448,39 +58348,57 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#ImportKeyPairResult": { + "com.amazonaws.ec2#GetDefaultCreditSpecificationResult": { "type": "structure", "members": { - "KeyFingerprint": { - "target": "com.amazonaws.ec2#String", + "InstanceFamilyCreditSpecification": { + "target": "com.amazonaws.ec2#InstanceFamilyCreditSpecification", "traits": { - "aws.protocols#ec2QueryName": "KeyFingerprint", - "smithy.api#documentation": "", - "smithy.api#xmlName": "keyFingerprint" + "aws.protocols#ec2QueryName": "InstanceFamilyCreditSpecification", + "smithy.api#documentation": "

The default credit option for CPU usage of the instance family.

", + "smithy.api#xmlName": "instanceFamilyCreditSpecification" } - }, - "KeyName": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetEbsDefaultKmsKeyId": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetEbsDefaultKmsKeyIdRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetEbsDefaultKmsKeyIdResult" + }, + "traits": { + "smithy.api#documentation": "

Describes the default KMS key for EBS encryption by default for your account in this Region.

\n

For more information, see Amazon EBS encryption\n in the Amazon EBS User Guide.

" + } + }, + "com.amazonaws.ec2#GetEbsDefaultKmsKeyIdRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "KeyName", - "smithy.api#documentation": "

The key pair name that you provided.

", - "smithy.api#xmlName": "keyName" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "KeyPairId": { + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetEbsDefaultKmsKeyIdResult": { + "type": "structure", + "members": { + "KmsKeyId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "KeyPairId", - "smithy.api#documentation": "

The ID of the resulting key pair.

", - "smithy.api#xmlName": "keyPairId" - } - }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", - "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags applied to the imported key pair.

", - "smithy.api#xmlName": "tagSet" + "aws.protocols#ec2QueryName": "KmsKeyId", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the default KMS key for encryption by default.

", + "smithy.api#xmlName": "kmsKeyId" } } }, @@ -57488,80 +58406,100 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#ImportManifestUrl": { - "type": "string", - "traits": { - "smithy.api#sensitive": {} - } - }, - "com.amazonaws.ec2#ImportSnapshot": { + "com.amazonaws.ec2#GetEbsEncryptionByDefault": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#ImportSnapshotRequest" + "target": "com.amazonaws.ec2#GetEbsEncryptionByDefaultRequest" }, "output": { - "target": "com.amazonaws.ec2#ImportSnapshotResult" + "target": "com.amazonaws.ec2#GetEbsEncryptionByDefaultResult" }, "traits": { - "smithy.api#documentation": "

Imports a disk into an EBS snapshot.

\n

For more information, see Importing a disk as a snapshot using VM Import/Export in the \n VM Import/Export User Guide.

" + "smithy.api#documentation": "

Describes whether EBS encryption by default is enabled for your account in the current\n Region.

\n

For more information, see Amazon EBS encryption\n in the Amazon EBS User Guide.

" } }, - "com.amazonaws.ec2#ImportSnapshotRequest": { + "com.amazonaws.ec2#GetEbsEncryptionByDefaultRequest": { "type": "structure", "members": { - "ClientData": { - "target": "com.amazonaws.ec2#ClientData", - "traits": { - "smithy.api#documentation": "

The client-specific data.

" - } - }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Token to enable idempotency for VM import requests.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "Description": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetEbsEncryptionByDefaultResult": { + "type": "structure", + "members": { + "EbsEncryptionByDefault": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The description string for the import snapshot task.

" + "aws.protocols#ec2QueryName": "EbsEncryptionByDefault", + "smithy.api#documentation": "

Indicates whether encryption by default is enabled.

", + "smithy.api#xmlName": "ebsEncryptionByDefault" } }, - "DiskContainer": { - "target": "com.amazonaws.ec2#SnapshotDiskContainer", + "SseType": { + "target": "com.amazonaws.ec2#SSEType", "traits": { - "smithy.api#documentation": "

Information about the disk container.

" + "aws.protocols#ec2QueryName": "SseType", + "smithy.api#documentation": "

Reserved for future use.

", + "smithy.api#xmlName": "sseType" } - }, + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetFlowLogsIntegrationTemplate": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetFlowLogsIntegrationTemplateRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetFlowLogsIntegrationTemplateResult" + }, + "traits": { + "smithy.api#documentation": "

Generates a CloudFormation template that streamlines and automates the integration of VPC flow logs \n with Amazon Athena. This make it easier for you to query and gain insights from VPC flow logs data. \n Based on the information that you provide, we configure resources in the template to do the following:

\n \n \n

\n GetFlowLogsIntegrationTemplate does not support integration between\n Amazon Web Services Transit Gateway Flow Logs and Amazon Athena.

\n
" + } + }, + "com.amazonaws.ec2#GetFlowLogsIntegrationTemplateRequest": { + "type": "structure", + "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "Encrypted": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Specifies whether the destination snapshot of the imported image should be encrypted. The default KMS key for EBS is\n used unless you specify a non-default KMS key using KmsKeyId. For more information, see Amazon EBS Encryption in the\n Amazon Elastic Compute Cloud User Guide.

" - } - }, - "KmsKeyId": { - "target": "com.amazonaws.ec2#KmsKeyId", + "FlowLogId": { + "target": "com.amazonaws.ec2#VpcFlowLogId", "traits": { - "smithy.api#documentation": "

An identifier for the symmetric KMS key to use when creating the\n encrypted snapshot. This parameter is only required if you want to use a non-default KMS key; if this\n parameter is not specified, the default KMS key for EBS is used. If a KmsKeyId is\n specified, the Encrypted flag must also be set.

\n

The KMS key identifier may be provided in any of the following formats:

\n \n

Amazon Web Services parses KmsKeyId asynchronously, meaning that the action you call may appear to complete even\n though you provided an invalid identifier. This action will eventually report failure.

\n

The specified KMS key must exist in the Region that the snapshot is being copied to.

\n

Amazon EBS does not support asymmetric KMS keys.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the flow log.

", + "smithy.api#required": {} } }, - "RoleName": { + "ConfigDeliveryS3DestinationArn": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The name of the role to use when not using the default role, 'vmimport'.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

To store the CloudFormation template in Amazon S3, specify the location in Amazon S3.

", + "smithy.api#required": {} } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "IntegrateServices": { + "target": "com.amazonaws.ec2#IntegrateServices", "traits": { - "smithy.api#documentation": "

The tags to apply to the import snapshot task during creation.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Information about the service integration.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "IntegrateService" } } }, @@ -57569,39 +58507,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#ImportSnapshotResult": { + "com.amazonaws.ec2#GetFlowLogsIntegrationTemplateResult": { "type": "structure", "members": { - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description of the import snapshot task.

", - "smithy.api#xmlName": "description" - } - }, - "ImportTaskId": { + "Result": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ImportTaskId", - "smithy.api#documentation": "

The ID of the import snapshot task.

", - "smithy.api#xmlName": "importTaskId" - } - }, - "SnapshotTaskDetail": { - "target": "com.amazonaws.ec2#SnapshotTaskDetail", - "traits": { - "aws.protocols#ec2QueryName": "SnapshotTaskDetail", - "smithy.api#documentation": "

Information about the import snapshot task.

", - "smithy.api#xmlName": "snapshotTaskDetail" - } - }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", - "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the import snapshot task.

", - "smithy.api#xmlName": "tagSet" + "aws.protocols#ec2QueryName": "Result", + "smithy.api#documentation": "

The generated CloudFormation template.

", + "smithy.api#xmlName": "result" } } }, @@ -57609,27812 +58523,26218 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#ImportSnapshotTask": { + "com.amazonaws.ec2#GetGroupsForCapacityReservation": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetGroupsForCapacityReservationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetGroupsForCapacityReservationResult" + }, + "traits": { + "smithy.api#documentation": "

Lists the resource groups to which a Capacity Reservation has been added.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "CapacityReservationGroups", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#GetGroupsForCapacityReservationRequest": { "type": "structure", "members": { - "Description": { - "target": "com.amazonaws.ec2#String", + "CapacityReservationId": { + "target": "com.amazonaws.ec2#CapacityReservationId", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description of the import snapshot task.

", - "smithy.api#xmlName": "description" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Capacity Reservation. If you specify a Capacity Reservation that is\n\t\t\tshared with you, the operation returns only Capacity Reservation groups that you\n\t\t\town.

", + "smithy.api#required": {} } }, - "ImportTaskId": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ImportTaskId", - "smithy.api#documentation": "

The ID of the import snapshot task.

", - "smithy.api#xmlName": "importTaskId" + "smithy.api#documentation": "

The token to use to retrieve the next page of results.

" } }, - "SnapshotTaskDetail": { - "target": "com.amazonaws.ec2#SnapshotTaskDetail", + "MaxResults": { + "target": "com.amazonaws.ec2#GetGroupsForCapacityReservationRequestMaxResults", "traits": { - "aws.protocols#ec2QueryName": "SnapshotTaskDetail", - "smithy.api#documentation": "

Describes an import snapshot task.

", - "smithy.api#xmlName": "snapshotTaskDetail" + "smithy.api#documentation": "

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, \n see Pagination.

" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags for the import snapshot task.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Describes an import snapshot task.

" - } - }, - "com.amazonaws.ec2#ImportSnapshotTaskId": { - "type": "string" - }, - "com.amazonaws.ec2#ImportSnapshotTaskIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ImportSnapshotTaskId", - "traits": { - "smithy.api#xmlName": "ImportTaskId" - } + "smithy.api#input": {} } }, - "com.amazonaws.ec2#ImportSnapshotTaskList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ImportSnapshotTask", - "traits": { - "smithy.api#xmlName": "item" + "com.amazonaws.ec2#GetGroupsForCapacityReservationRequestMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1000 } } }, - "com.amazonaws.ec2#ImportTaskId": { - "type": "string" - }, - "com.amazonaws.ec2#ImportTaskIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ImportImageTaskId", - "traits": { - "smithy.api#xmlName": "ImportTaskId" + "com.amazonaws.ec2#GetGroupsForCapacityReservationResult": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" + } + }, + "CapacityReservationGroups": { + "target": "com.amazonaws.ec2#CapacityReservationGroupSet", + "traits": { + "aws.protocols#ec2QueryName": "CapacityReservationGroupSet", + "smithy.api#documentation": "

Information about the resource groups to which the Capacity Reservation has been\n\t\t\tadded.

", + "smithy.api#xmlName": "capacityReservationGroupSet" + } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#ImportVolume": { + "com.amazonaws.ec2#GetHostReservationPurchasePreview": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#ImportVolumeRequest" + "target": "com.amazonaws.ec2#GetHostReservationPurchasePreviewRequest" }, "output": { - "target": "com.amazonaws.ec2#ImportVolumeResult" + "target": "com.amazonaws.ec2#GetHostReservationPurchasePreviewResult" }, "traits": { - "smithy.api#documentation": "

Creates an import volume task using metadata from the specified disk image.

\n

This API action supports only single-volume VMs. To import multi-volume VMs, use \n ImportImage instead. To import a disk to a snapshot, use\n ImportSnapshot instead.

\n

This API action is not supported by the Command Line Interface (CLI). For \n information about using the Amazon EC2 CLI, which is deprecated, see Importing Disks to Amazon EBS in the Amazon EC2 CLI Reference PDF file.

\n

For information about the import manifest referenced by this API action, see VM Import Manifest.

" + "smithy.api#documentation": "

Preview a reservation purchase with configurations that match those of your Dedicated\n Host. You must have active Dedicated Hosts in your account before you purchase a\n reservation.

\n

This is a preview of the PurchaseHostReservation action and does not\n result in the offering being purchased.

" } }, - "com.amazonaws.ec2#ImportVolumeRequest": { + "com.amazonaws.ec2#GetHostReservationPurchasePreviewRequest": { "type": "structure", "members": { - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + "HostIdSet": { + "target": "com.amazonaws.ec2#RequestHostIdSet", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Availability Zone for the resulting EBS volume.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "availabilityZone" + "smithy.api#documentation": "

The IDs of the Dedicated Hosts with which the reservation is associated.

", + "smithy.api#required": {} } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "OfferingId": { + "target": "com.amazonaws.ec2#OfferingId", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description of the volume.

", - "smithy.api#xmlName": "description" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The offering ID of the reservation.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetHostReservationPurchasePreviewResult": { + "type": "structure", + "members": { + "CurrencyCode": { + "target": "com.amazonaws.ec2#CurrencyCodeValues", + "traits": { + "aws.protocols#ec2QueryName": "CurrencyCode", + "smithy.api#documentation": "

The currency in which the totalUpfrontPrice and\n totalHourlyPrice amounts are specified. At this time, the only\n supported currency is USD.

", + "smithy.api#xmlName": "currencyCode" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Purchase": { + "target": "com.amazonaws.ec2#PurchaseSet", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "Purchase", + "smithy.api#documentation": "

The purchase information of the Dedicated Host reservation and the Dedicated Hosts\n associated with it.

", + "smithy.api#xmlName": "purchase" } }, - "Image": { - "target": "com.amazonaws.ec2#DiskImageDetail", + "TotalHourlyPrice": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Image", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The disk image.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "image" + "aws.protocols#ec2QueryName": "TotalHourlyPrice", + "smithy.api#documentation": "

The potential total hourly price of the reservation per hour.

", + "smithy.api#xmlName": "totalHourlyPrice" } }, - "Volume": { - "target": "com.amazonaws.ec2#VolumeDetail", + "TotalUpfrontPrice": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Volume", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The volume size.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "volume" + "aws.protocols#ec2QueryName": "TotalUpfrontPrice", + "smithy.api#documentation": "

The potential total upfront price. This is billed immediately.

", + "smithy.api#xmlName": "totalUpfrontPrice" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#output": {} } }, - "com.amazonaws.ec2#ImportVolumeResult": { + "com.amazonaws.ec2#GetImageBlockPublicAccessState": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetImageBlockPublicAccessStateRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetImageBlockPublicAccessStateResult" + }, + "traits": { + "smithy.api#documentation": "

Gets the current state of block public access for AMIs at the account\n level in the specified Amazon Web Services Region.

\n

For more information, see Block\n public access to your AMIs in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#GetImageBlockPublicAccessStateRequest": { "type": "structure", "members": { - "ConversionTask": { - "target": "com.amazonaws.ec2#ConversionTask", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "ConversionTask", - "smithy.api#documentation": "

Information about the conversion task.

", - "smithy.api#xmlName": "conversionTask" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.ec2#ImportVolumeTaskDetails": { + "com.amazonaws.ec2#GetImageBlockPublicAccessStateResult": { "type": "structure", "members": { - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone where the resulting volume will reside.

", - "smithy.api#xmlName": "availabilityZone" - } - }, - "BytesConverted": { - "target": "com.amazonaws.ec2#Long", - "traits": { - "aws.protocols#ec2QueryName": "BytesConverted", - "smithy.api#documentation": "

The number of bytes converted so far.

", - "smithy.api#xmlName": "bytesConverted" - } - }, - "Description": { + "ImageBlockPublicAccessState": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

The description you provided when starting the import volume task.

", - "smithy.api#xmlName": "description" - } - }, - "Image": { - "target": "com.amazonaws.ec2#DiskImageDescription", - "traits": { - "aws.protocols#ec2QueryName": "Image", - "smithy.api#documentation": "

The image.

", - "smithy.api#xmlName": "image" + "aws.protocols#ec2QueryName": "ImageBlockPublicAccessState", + "smithy.api#documentation": "

The current state of block public access for AMIs at the account level in the specified\n Amazon Web Services Region.

\n

Possible values:

\n ", + "smithy.api#xmlName": "imageBlockPublicAccessState" } }, - "Volume": { - "target": "com.amazonaws.ec2#DiskImageVolumeDescription", + "ManagedBy": { + "target": "com.amazonaws.ec2#ManagedBy", "traits": { - "aws.protocols#ec2QueryName": "Volume", - "smithy.api#documentation": "

The volume.

", - "smithy.api#xmlName": "volume" + "aws.protocols#ec2QueryName": "ManagedBy", + "smithy.api#documentation": "

The entity that manages the state for block public access for AMIs. Possible values\n include:

\n ", + "smithy.api#xmlName": "managedBy" } } }, "traits": { - "smithy.api#documentation": "

Describes an import volume task.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InferenceAcceleratorInfo": { + "com.amazonaws.ec2#GetInstanceMetadataDefaults": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetInstanceMetadataDefaultsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetInstanceMetadataDefaultsResult" + }, + "traits": { + "smithy.api#documentation": "

Gets the default instance metadata service (IMDS) settings that are set at the account\n level in the specified Amazon Web Services\u2028 Region.

\n

For more information, see Order of precedence for instance metadata options in the\n Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#GetInstanceMetadataDefaultsRequest": { "type": "structure", "members": { - "Accelerators": { - "target": "com.amazonaws.ec2#InferenceDeviceInfoList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Accelerators", - "smithy.api#documentation": "

Describes the Inference accelerators for the instance type.

", - "smithy.api#xmlName": "accelerators" + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } - }, - "TotalInferenceMemoryInMiB": { - "target": "com.amazonaws.ec2#totalInferenceMemory", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetInstanceMetadataDefaultsResult": { + "type": "structure", + "members": { + "AccountLevel": { + "target": "com.amazonaws.ec2#InstanceMetadataDefaultsResponse", "traits": { - "aws.protocols#ec2QueryName": "TotalInferenceMemoryInMiB", - "smithy.api#documentation": "

The total size of the memory for the inference accelerators for the instance type, in MiB.

", - "smithy.api#xmlName": "totalInferenceMemoryInMiB" + "aws.protocols#ec2QueryName": "AccountLevel", + "smithy.api#documentation": "

The account-level default IMDS settings.

", + "smithy.api#xmlName": "accountLevel" } } }, "traits": { - "smithy.api#documentation": "

Describes the Inference accelerators for the instance type.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InferenceDeviceCount": { - "type": "integer" + "com.amazonaws.ec2#GetInstanceTpmEkPub": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetInstanceTpmEkPubRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetInstanceTpmEkPubResult" + }, + "traits": { + "smithy.api#documentation": "

Gets the public endorsement key associated with the Nitro Trusted \n Platform Module (NitroTPM) for the specified instance.

" + } }, - "com.amazonaws.ec2#InferenceDeviceInfo": { + "com.amazonaws.ec2#GetInstanceTpmEkPubRequest": { "type": "structure", "members": { - "Count": { - "target": "com.amazonaws.ec2#InferenceDeviceCount", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "aws.protocols#ec2QueryName": "Count", - "smithy.api#documentation": "

The number of Inference accelerators for the instance type.

", - "smithy.api#xmlName": "count" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance for which to get the public endorsement key.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "InstanceId" } }, - "Name": { - "target": "com.amazonaws.ec2#InferenceDeviceName", + "KeyType": { + "target": "com.amazonaws.ec2#EkPubKeyType", "traits": { - "aws.protocols#ec2QueryName": "Name", - "smithy.api#documentation": "

The name of the Inference accelerator.

", - "smithy.api#xmlName": "name" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The required public endorsement key type.

", + "smithy.api#required": {} } }, - "Manufacturer": { - "target": "com.amazonaws.ec2#InferenceDeviceManufacturerName", + "KeyFormat": { + "target": "com.amazonaws.ec2#EkPubKeyFormat", "traits": { - "aws.protocols#ec2QueryName": "Manufacturer", - "smithy.api#documentation": "

The manufacturer of the Inference accelerator.

", - "smithy.api#xmlName": "manufacturer" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The required public endorsement key format. Specify der for a DER-encoded public \n key that is compatible with OpenSSL. Specify tpmt for a TPM 2.0 format that is \n compatible with tpm2-tools. The returned key is base64 encoded.

", + "smithy.api#required": {} } }, - "MemoryInfo": { - "target": "com.amazonaws.ec2#InferenceDeviceMemoryInfo", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "MemoryInfo", - "smithy.api#documentation": "

Describes the memory available to the inference accelerator.

", - "smithy.api#xmlName": "memoryInfo" + "smithy.api#documentation": "

Specify this parameter to verify whether the request will succeed, without actually making the \n request. If the request will succeed, the response is DryRunOperation. Otherwise, \n the response is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Describes the Inference accelerators for the instance type.

" - } - }, - "com.amazonaws.ec2#InferenceDeviceInfoList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InferenceDeviceInfo" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InferenceDeviceManufacturerName": { - "type": "string" - }, - "com.amazonaws.ec2#InferenceDeviceMemoryInfo": { + "com.amazonaws.ec2#GetInstanceTpmEkPubResult": { "type": "structure", "members": { - "SizeInMiB": { - "target": "com.amazonaws.ec2#InferenceDeviceMemorySize", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "aws.protocols#ec2QueryName": "SizeInMiB", - "smithy.api#documentation": "

The size of the memory available to the inference accelerator, in MiB.

", - "smithy.api#xmlName": "sizeInMiB" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#xmlName": "instanceId" + } + }, + "KeyType": { + "target": "com.amazonaws.ec2#EkPubKeyType", + "traits": { + "aws.protocols#ec2QueryName": "KeyType", + "smithy.api#documentation": "

The public endorsement key type.

", + "smithy.api#xmlName": "keyType" + } + }, + "KeyFormat": { + "target": "com.amazonaws.ec2#EkPubKeyFormat", + "traits": { + "aws.protocols#ec2QueryName": "KeyFormat", + "smithy.api#documentation": "

The public endorsement key format.

", + "smithy.api#xmlName": "keyFormat" + } + }, + "KeyValue": { + "target": "com.amazonaws.ec2#EkPubKeyValue", + "traits": { + "aws.protocols#ec2QueryName": "KeyValue", + "smithy.api#documentation": "

The public endorsement key material.

", + "smithy.api#xmlName": "keyValue" } } }, "traits": { - "smithy.api#documentation": "

Describes the memory available to the inference accelerator.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InferenceDeviceMemorySize": { - "type": "integer" - }, - "com.amazonaws.ec2#InferenceDeviceName": { - "type": "string" - }, - "com.amazonaws.ec2#InsideCidrBlocksStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#xmlName": "item" + "com.amazonaws.ec2#GetInstanceTypesFromInstanceRequirements": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetInstanceTypesFromInstanceRequirementsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetInstanceTypesFromInstanceRequirementsResult" + }, + "traits": { + "smithy.api#documentation": "

Returns a list of instance types with the specified instance attributes. You can\n use the response to preview the instance types without launching instances. Note\n that the response does not consider capacity.

\n

When you specify multiple parameters, you get instance types that satisfy all of the\n specified parameters. If you specify multiple values for a parameter, you get instance\n types that satisfy any of the specified values.

\n

For more information, see Preview instance types with specified attributes, Specify attributes for instance type selection for EC2 Fleet or Spot Fleet, and Spot\n placement score in the Amazon EC2 User Guide, and Creating\n mixed instance groups using attribute-based instance type selection in the\n Amazon EC2 Auto Scaling User Guide.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "InstanceTypes", + "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#Instance": { + "com.amazonaws.ec2#GetInstanceTypesFromInstanceRequirementsRequest": { "type": "structure", "members": { - "AmiLaunchIndex": { - "target": "com.amazonaws.ec2#Integer", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "AmiLaunchIndex", - "smithy.api#documentation": "

The AMI launch index, which can be used to find this instance in the launch\n group.

", - "smithy.api#xmlName": "amiLaunchIndex" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "ImageId": { - "target": "com.amazonaws.ec2#String", + "ArchitectureTypes": { + "target": "com.amazonaws.ec2#ArchitectureTypeSet", "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The ID of the AMI used to launch the instance.

", - "smithy.api#xmlName": "imageId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The processor architecture type.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "ArchitectureType" } }, - "InstanceId": { - "target": "com.amazonaws.ec2#String", + "VirtualizationTypes": { + "target": "com.amazonaws.ec2#VirtualizationTypeSet", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#xmlName": "instanceId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The virtualization type.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "VirtualizationType" } }, - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", + "InstanceRequirements": { + "target": "com.amazonaws.ec2#InstanceRequirementsRequest", "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type.

", - "smithy.api#xmlName": "instanceType" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The attributes required for the instance types.

", + "smithy.api#required": {} } }, - "KernelId": { - "target": "com.amazonaws.ec2#String", + "MaxResults": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "KernelId", - "smithy.api#documentation": "

The kernel associated with this instance, if applicable.

", - "smithy.api#xmlName": "kernelId" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" } }, - "KeyName": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "KeyName", - "smithy.api#documentation": "

The name of the key pair, if this instance was launched with an associated key\n pair.

", - "smithy.api#xmlName": "keyName" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, - "LaunchTime": { - "target": "com.amazonaws.ec2#DateTime", + "Context": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "LaunchTime", - "smithy.api#documentation": "

The time the instance was launched.

", - "smithy.api#xmlName": "launchTime" + "smithy.api#documentation": "

Reserved.

" } - }, - "Monitoring": { - "target": "com.amazonaws.ec2#Monitoring", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetInstanceTypesFromInstanceRequirementsResult": { + "type": "structure", + "members": { + "InstanceTypes": { + "target": "com.amazonaws.ec2#InstanceTypeInfoFromInstanceRequirementsSet", "traits": { - "aws.protocols#ec2QueryName": "Monitoring", - "smithy.api#documentation": "

The monitoring for the instance.

", - "smithy.api#xmlName": "monitoring" - } - }, - "Placement": { - "target": "com.amazonaws.ec2#Placement", - "traits": { - "aws.protocols#ec2QueryName": "Placement", - "smithy.api#documentation": "

The location where the instance launched, if applicable.

", - "smithy.api#xmlName": "placement" + "aws.protocols#ec2QueryName": "InstanceTypeSet", + "smithy.api#documentation": "

The instance types with the specified instance attributes.

", + "smithy.api#xmlName": "instanceTypeSet" } }, - "Platform": { - "target": "com.amazonaws.ec2#PlatformValues", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Platform", - "smithy.api#documentation": "

The platform. This value is windows for Windows instances; otherwise, it is empty.

", - "smithy.api#xmlName": "platform" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#xmlName": "nextToken" } - }, - "PrivateDnsName": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetInstanceUefiData": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetInstanceUefiDataRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetInstanceUefiDataResult" + }, + "traits": { + "smithy.api#documentation": "

A binary representation of the UEFI variable store. Only non-volatile variables are\n stored. This is a base64 encoded and zlib compressed binary value that must be properly\n encoded.

\n

When you use register-image to create\n an AMI, you can create an exact copy of your variable store by passing the UEFI data in\n the UefiData parameter. You can modify the UEFI data by using the python-uefivars tool on\n GitHub. You can use the tool to convert the UEFI data into a human-readable format\n (JSON), which you can inspect and modify, and then convert back into the binary format\n to use with register-image.

\n

For more information, see UEFI Secure Boot in the\n Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#GetInstanceUefiDataRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "aws.protocols#ec2QueryName": "PrivateDnsName", - "smithy.api#documentation": "

[IPv4 only] The private DNS hostname name assigned to the instance. This DNS hostname\n can only be used inside the Amazon EC2 network. This name is not available until the\n instance enters the running state.

\n

The Amazon-provided DNS server resolves Amazon-provided private DNS\n hostnames if you've enabled DNS resolution and DNS hostnames in your VPC. If you are not\n using the Amazon-provided DNS server in your VPC, your custom domain name servers must\n resolve the hostname as appropriate.

", - "smithy.api#xmlName": "privateDnsName" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance from which to retrieve the UEFI data.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "InstanceId" } }, - "PrivateIpAddress": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "PrivateIpAddress", - "smithy.api#documentation": "

The private IPv4 address assigned to the instance.

", - "smithy.api#xmlName": "privateIpAddress" + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } - }, - "ProductCodes": { - "target": "com.amazonaws.ec2#ProductCodeList", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetInstanceUefiDataResult": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "aws.protocols#ec2QueryName": "ProductCodes", - "smithy.api#documentation": "

The product codes attached to this instance, if applicable.

", - "smithy.api#xmlName": "productCodes" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance from which to retrieve the UEFI data.

", + "smithy.api#xmlName": "instanceId" } }, - "PublicDnsName": { + "UefiData": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DnsName", - "smithy.api#documentation": "

[IPv4 only] The public DNS name assigned to the instance. This name is not available\n until the instance enters the running state. This name is only\n available if you've enabled DNS hostnames for your VPC.

", - "smithy.api#xmlName": "dnsName" + "aws.protocols#ec2QueryName": "UefiData", + "smithy.api#documentation": "

Base64 representation of the non-volatile UEFI variable store.

", + "smithy.api#xmlName": "uefiData" } - }, - "PublicIpAddress": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetIpamAddressHistory": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetIpamAddressHistoryRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetIpamAddressHistoryResult" + }, + "traits": { + "smithy.api#documentation": "

Retrieve historical information about a CIDR within an IPAM scope. For more information, see View the history of IP addresses in the Amazon VPC IPAM User Guide.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "HistoryRecords", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#GetIpamAddressHistoryRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "IpAddress", - "smithy.api#documentation": "

The public IPv4 address, or the Carrier IP address assigned to the instance, if\n applicable.

\n

A Carrier IP address only applies to an instance launched in a subnet associated with\n a Wavelength Zone.

", - "smithy.api#xmlName": "ipAddress" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "RamdiskId": { + "Cidr": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "RamdiskId", - "smithy.api#documentation": "

The RAM disk associated with this instance, if applicable.

", - "smithy.api#xmlName": "ramdiskId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The CIDR you want the history of. The CIDR can be an IPv4 or IPv6 IP address range. \n If you enter a /16 IPv4 CIDR, you will get records that match it exactly. You will not get records for any subnets within the /16 CIDR.

", + "smithy.api#required": {} } }, - "State": { - "target": "com.amazonaws.ec2#InstanceState", + "IpamScopeId": { + "target": "com.amazonaws.ec2#IpamScopeId", "traits": { - "aws.protocols#ec2QueryName": "InstanceState", - "smithy.api#documentation": "

The current state of the instance.

", - "smithy.api#xmlName": "instanceState" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM scope that the CIDR is in.

", + "smithy.api#required": {} } }, - "StateTransitionReason": { + "VpcId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Reason", - "smithy.api#documentation": "

The reason for the most recent state transition. This might be an empty string.

", - "smithy.api#xmlName": "reason" + "smithy.api#documentation": "

The ID of the VPC you want your history records filtered by.

" } }, - "SubnetId": { - "target": "com.amazonaws.ec2#String", + "StartTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#documentation": "

The ID of the subnet in which the instance is running.

", - "smithy.api#xmlName": "subnetId" + "smithy.api#documentation": "

The start of the time period for which you are looking for history. If you omit this option, it will default to the value of EndTime.

" } }, - "VpcId": { - "target": "com.amazonaws.ec2#String", + "EndTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC in which the instance is running.

", - "smithy.api#xmlName": "vpcId" + "smithy.api#documentation": "

The end of the time period for which you are looking for history. If you omit this option, it will default to the current time.

" } }, - "Architecture": { - "target": "com.amazonaws.ec2#ArchitectureValues", + "MaxResults": { + "target": "com.amazonaws.ec2#IpamAddressHistoryMaxResults", "traits": { - "aws.protocols#ec2QueryName": "Architecture", - "smithy.api#documentation": "

The architecture of the image.

", - "smithy.api#xmlName": "architecture" + "smithy.api#documentation": "

The maximum number of historical results you would like returned per page. Defaults to 100.

" } }, - "BlockDeviceMappings": { - "target": "com.amazonaws.ec2#InstanceBlockDeviceMappingList", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "BlockDeviceMapping", - "smithy.api#documentation": "

Any block device mapping entries for the instance.

", - "smithy.api#xmlName": "blockDeviceMapping" + "smithy.api#documentation": "

The token for the next page of results.

" } - }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetIpamAddressHistoryResult": { + "type": "structure", + "members": { + "HistoryRecords": { + "target": "com.amazonaws.ec2#IpamAddressHistoryRecordSet", "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

The idempotency token you provided when you launched the instance, if\n applicable.

", - "smithy.api#xmlName": "clientToken" + "aws.protocols#ec2QueryName": "HistoryRecordSet", + "smithy.api#documentation": "

A historical record for a CIDR within an IPAM scope. If the CIDR is associated with an EC2 instance, you will see an object in the response for the instance and one for the network interface.

", + "smithy.api#xmlName": "historyRecordSet" } }, - "EbsOptimized": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "EbsOptimized", - "smithy.api#documentation": "

Indicates whether the instance is optimized for Amazon EBS I/O. This optimization\n provides dedicated throughput to Amazon EBS and an optimized configuration stack to\n provide optimal I/O performance. This optimization isn't available with all instance\n types. Additional usage charges apply when using an EBS Optimized instance.

", - "smithy.api#xmlName": "ebsOptimized" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } - }, - "EnaSupport": { + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetIpamDiscoveredAccounts": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetIpamDiscoveredAccountsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetIpamDiscoveredAccountsResult" + }, + "traits": { + "smithy.api#documentation": "

Gets IPAM discovered accounts. A discovered account is an Amazon Web Services account that is monitored under a resource discovery. If you have integrated IPAM with Amazon Web Services Organizations, all accounts in the organization are discovered accounts. Only the IPAM account can get all discovered accounts in the organization.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "IpamDiscoveredAccounts", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#GetIpamDiscoveredAccountsRequest": { + "type": "structure", + "members": { + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "EnaSupport", - "smithy.api#documentation": "

Specifies whether enhanced networking with ENA is enabled.

", - "smithy.api#xmlName": "enaSupport" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "Hypervisor": { - "target": "com.amazonaws.ec2#HypervisorType", + "IpamResourceDiscoveryId": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", "traits": { - "aws.protocols#ec2QueryName": "Hypervisor", - "smithy.api#documentation": "

The hypervisor type of the instance. The value xen is used for both Xen\n and Nitro hypervisors.

", - "smithy.api#xmlName": "hypervisor" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A resource discovery ID.

", + "smithy.api#required": {} } }, - "IamInstanceProfile": { - "target": "com.amazonaws.ec2#IamInstanceProfile", + "DiscoveryRegion": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "IamInstanceProfile", - "smithy.api#documentation": "

The IAM instance profile associated with the instance, if\n applicable.

", - "smithy.api#xmlName": "iamInstanceProfile" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The Amazon Web Services Region that the account information is returned from.

", + "smithy.api#required": {} } }, - "InstanceLifecycle": { - "target": "com.amazonaws.ec2#InstanceLifecycleType", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "InstanceLifecycle", - "smithy.api#documentation": "

Indicates whether this is a Spot Instance or a Scheduled Instance.

", - "smithy.api#xmlName": "instanceLifecycle" + "smithy.api#documentation": "

Discovered account filters.

", + "smithy.api#xmlName": "Filter" } }, - "ElasticGpuAssociations": { - "target": "com.amazonaws.ec2#ElasticGpuAssociationList", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "ElasticGpuAssociationSet", - "smithy.api#documentation": "

Deprecated.

\n \n

Amazon Elastic Graphics reached end of life on January 8, 2024. For \n workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, \n G4dn, or G5 instances.

\n
", - "smithy.api#xmlName": "elasticGpuAssociationSet" + "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

" } }, - "ElasticInferenceAcceleratorAssociations": { - "target": "com.amazonaws.ec2#ElasticInferenceAcceleratorAssociationList", + "MaxResults": { + "target": "com.amazonaws.ec2#IpamMaxResults", "traits": { - "aws.protocols#ec2QueryName": "ElasticInferenceAcceleratorAssociationSet", - "smithy.api#documentation": "

The elastic inference accelerator associated with the instance.

", - "smithy.api#xmlName": "elasticInferenceAcceleratorAssociationSet" + "smithy.api#documentation": "

The maximum number of discovered accounts to return in one page of results.

" } - }, - "NetworkInterfaces": { - "target": "com.amazonaws.ec2#InstanceNetworkInterfaceList", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetIpamDiscoveredAccountsResult": { + "type": "structure", + "members": { + "IpamDiscoveredAccounts": { + "target": "com.amazonaws.ec2#IpamDiscoveredAccountSet", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceSet", - "smithy.api#documentation": "

The network interfaces for the instance.

", - "smithy.api#xmlName": "networkInterfaceSet" + "aws.protocols#ec2QueryName": "IpamDiscoveredAccountSet", + "smithy.api#documentation": "

Discovered accounts.

", + "smithy.api#xmlName": "ipamDiscoveredAccountSet" } }, - "OutpostArn": { - "target": "com.amazonaws.ec2#String", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "OutpostArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost.

", - "smithy.api#xmlName": "outpostArn" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

", + "smithy.api#xmlName": "nextToken" } - }, - "RootDeviceName": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetIpamDiscoveredPublicAddresses": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetIpamDiscoveredPublicAddressesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetIpamDiscoveredPublicAddressesResult" + }, + "traits": { + "smithy.api#documentation": "

Gets the public IP addresses that have been discovered by IPAM.

" + } + }, + "com.amazonaws.ec2#GetIpamDiscoveredPublicAddressesRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "RootDeviceName", - "smithy.api#documentation": "

The device name of the root device volume (for example,\n /dev/sda1).

", - "smithy.api#xmlName": "rootDeviceName" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "RootDeviceType": { - "target": "com.amazonaws.ec2#DeviceType", + "IpamResourceDiscoveryId": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", "traits": { - "aws.protocols#ec2QueryName": "RootDeviceType", - "smithy.api#documentation": "

The root device type used by the AMI. The AMI can use an EBS volume or an instance\n store volume.

", - "smithy.api#xmlName": "rootDeviceType" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

An IPAM resource discovery ID.

", + "smithy.api#required": {} } }, - "SecurityGroups": { - "target": "com.amazonaws.ec2#GroupIdentifierList", + "AddressRegion": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "GroupSet", - "smithy.api#documentation": "

The security groups for the instance.

", - "smithy.api#xmlName": "groupSet" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The Amazon Web Services Region for the IP address.

", + "smithy.api#required": {} } }, - "SourceDestCheck": { - "target": "com.amazonaws.ec2#Boolean", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "SourceDestCheck", - "smithy.api#documentation": "

Indicates whether source/destination checking is enabled.

", - "smithy.api#xmlName": "sourceDestCheck" + "smithy.api#documentation": "

Filters.

", + "smithy.api#xmlName": "Filter" } }, - "SpotInstanceRequestId": { - "target": "com.amazonaws.ec2#String", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "SpotInstanceRequestId", - "smithy.api#documentation": "

If the request is a Spot Instance request, the ID of the request.

", - "smithy.api#xmlName": "spotInstanceRequestId" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "SriovNetSupport": { - "target": "com.amazonaws.ec2#String", + "MaxResults": { + "target": "com.amazonaws.ec2#IpamMaxResults", "traits": { - "aws.protocols#ec2QueryName": "SriovNetSupport", - "smithy.api#documentation": "

Specifies whether enhanced networking with the Intel 82599 Virtual Function interface\n is enabled.

", - "smithy.api#xmlName": "sriovNetSupport" + "smithy.api#documentation": "

The maximum number of IPAM discovered public addresses to return in one page of results.

" } - }, - "StateReason": { - "target": "com.amazonaws.ec2#StateReason", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetIpamDiscoveredPublicAddressesResult": { + "type": "structure", + "members": { + "IpamDiscoveredPublicAddresses": { + "target": "com.amazonaws.ec2#IpamDiscoveredPublicAddressSet", "traits": { - "aws.protocols#ec2QueryName": "StateReason", - "smithy.api#documentation": "

The reason for the most recent state transition.

", - "smithy.api#xmlName": "stateReason" + "aws.protocols#ec2QueryName": "IpamDiscoveredPublicAddressSet", + "smithy.api#documentation": "

IPAM discovered public addresses.

", + "smithy.api#xmlName": "ipamDiscoveredPublicAddressSet" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "OldestSampleTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the instance.

", - "smithy.api#xmlName": "tagSet" + "aws.protocols#ec2QueryName": "OldestSampleTime", + "smithy.api#documentation": "

The oldest successful resource discovery time.

", + "smithy.api#xmlName": "oldestSampleTime" } }, - "VirtualizationType": { - "target": "com.amazonaws.ec2#VirtualizationType", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "VirtualizationType", - "smithy.api#documentation": "

The virtualization type of the instance.

", - "smithy.api#xmlName": "virtualizationType" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } - }, - "CpuOptions": { - "target": "com.amazonaws.ec2#CpuOptions", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetIpamDiscoveredResourceCidrs": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetIpamDiscoveredResourceCidrsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetIpamDiscoveredResourceCidrsResult" + }, + "traits": { + "smithy.api#documentation": "

Returns the resource CIDRs that are monitored as part of a resource discovery. A discovered resource is a resource CIDR monitored under a resource discovery. The following resources can be discovered: VPCs, Public IPv4 pools, VPC subnets, and Elastic IP addresses.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "IpamDiscoveredResourceCidrs", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#GetIpamDiscoveredResourceCidrsRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "CpuOptions", - "smithy.api#documentation": "

The CPU options for the instance.

", - "smithy.api#xmlName": "cpuOptions" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "CapacityReservationId": { - "target": "com.amazonaws.ec2#String", + "IpamResourceDiscoveryId": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationId", - "smithy.api#documentation": "

The ID of the Capacity Reservation.

", - "smithy.api#xmlName": "capacityReservationId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A resource discovery ID.

", + "smithy.api#required": {} } }, - "CapacityReservationSpecification": { - "target": "com.amazonaws.ec2#CapacityReservationSpecificationResponse", + "ResourceRegion": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationSpecification", - "smithy.api#documentation": "

Information about the Capacity Reservation targeting option.

", - "smithy.api#xmlName": "capacityReservationSpecification" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A resource Region.

", + "smithy.api#required": {} } }, - "HibernationOptions": { - "target": "com.amazonaws.ec2#HibernationOptions", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "HibernationOptions", - "smithy.api#documentation": "

Indicates whether the instance is enabled for hibernation.

", - "smithy.api#xmlName": "hibernationOptions" + "smithy.api#documentation": "

Filters.

", + "smithy.api#xmlName": "Filter" } }, - "Licenses": { - "target": "com.amazonaws.ec2#LicenseList", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "LicenseSet", - "smithy.api#documentation": "

The license configurations for the instance.

", - "smithy.api#xmlName": "licenseSet" + "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

" } }, - "MetadataOptions": { - "target": "com.amazonaws.ec2#InstanceMetadataOptionsResponse", + "MaxResults": { + "target": "com.amazonaws.ec2#IpamMaxResults", "traits": { - "aws.protocols#ec2QueryName": "MetadataOptions", - "smithy.api#documentation": "

The metadata options for the instance.

", - "smithy.api#xmlName": "metadataOptions" - } - }, - "EnclaveOptions": { - "target": "com.amazonaws.ec2#EnclaveOptions", - "traits": { - "aws.protocols#ec2QueryName": "EnclaveOptions", - "smithy.api#documentation": "

Indicates whether the instance is enabled for Amazon Web Services Nitro\n Enclaves.

", - "smithy.api#xmlName": "enclaveOptions" - } - }, - "BootMode": { - "target": "com.amazonaws.ec2#BootModeValues", - "traits": { - "aws.protocols#ec2QueryName": "BootMode", - "smithy.api#documentation": "

The boot mode that was specified by the AMI. If the value is uefi-preferred, \n the AMI supports both UEFI and Legacy BIOS. The currentInstanceBootMode parameter \n is the boot mode that is used to boot the instance at launch or start.

\n \n

The operating system contained in the AMI must be configured to support the specified boot mode.

\n
\n

For more information, see Boot modes in the\n Amazon EC2 User Guide.

", - "smithy.api#xmlName": "bootMode" - } - }, - "PlatformDetails": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "PlatformDetails", - "smithy.api#documentation": "

The platform details value for the instance. For more information, see AMI\n billing information fields in the\n Amazon EC2 User Guide.

", - "smithy.api#xmlName": "platformDetails" - } - }, - "UsageOperation": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "UsageOperation", - "smithy.api#documentation": "

The usage operation value for the instance. For more information, see AMI\n billing information fields in the\n Amazon EC2 User Guide.

", - "smithy.api#xmlName": "usageOperation" - } - }, - "UsageOperationUpdateTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "aws.protocols#ec2QueryName": "UsageOperationUpdateTime", - "smithy.api#documentation": "

The time that the usage operation was last updated.

", - "smithy.api#xmlName": "usageOperationUpdateTime" - } - }, - "PrivateDnsNameOptions": { - "target": "com.amazonaws.ec2#PrivateDnsNameOptionsResponse", - "traits": { - "aws.protocols#ec2QueryName": "PrivateDnsNameOptions", - "smithy.api#documentation": "

The options for the instance hostname.

", - "smithy.api#xmlName": "privateDnsNameOptions" - } - }, - "Ipv6Address": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Ipv6Address", - "smithy.api#documentation": "

The IPv6 address assigned to the instance.

", - "smithy.api#xmlName": "ipv6Address" - } - }, - "TpmSupport": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "TpmSupport", - "smithy.api#documentation": "

If the instance is configured for NitroTPM support, the value is v2.0.\n For more information, see NitroTPM in the\n Amazon EC2 User Guide.

", - "smithy.api#xmlName": "tpmSupport" - } - }, - "MaintenanceOptions": { - "target": "com.amazonaws.ec2#InstanceMaintenanceOptions", - "traits": { - "aws.protocols#ec2QueryName": "MaintenanceOptions", - "smithy.api#documentation": "

Provides information on the recovery and maintenance options of your instance.

", - "smithy.api#xmlName": "maintenanceOptions" - } - }, - "CurrentInstanceBootMode": { - "target": "com.amazonaws.ec2#InstanceBootModeValues", - "traits": { - "aws.protocols#ec2QueryName": "CurrentInstanceBootMode", - "smithy.api#documentation": "

The boot mode that is used to boot the instance at launch or start. For more information, see Boot modes in the\n Amazon EC2 User Guide.

", - "smithy.api#xmlName": "currentInstanceBootMode" + "smithy.api#documentation": "

The maximum number of discovered resource CIDRs to return in one page of results.

" } } }, "traits": { - "smithy.api#documentation": "

Describes an instance.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceAttachmentEnaSrdSpecification": { + "com.amazonaws.ec2#GetIpamDiscoveredResourceCidrsResult": { "type": "structure", "members": { - "EnaSrdEnabled": { - "target": "com.amazonaws.ec2#Boolean", + "IpamDiscoveredResourceCidrs": { + "target": "com.amazonaws.ec2#IpamDiscoveredResourceCidrSet", "traits": { - "aws.protocols#ec2QueryName": "EnaSrdEnabled", - "smithy.api#documentation": "

Indicates whether ENA Express is enabled for the network interface.

", - "smithy.api#xmlName": "enaSrdEnabled" + "aws.protocols#ec2QueryName": "IpamDiscoveredResourceCidrSet", + "smithy.api#documentation": "

Discovered resource CIDRs.

", + "smithy.api#xmlName": "ipamDiscoveredResourceCidrSet" } }, - "EnaSrdUdpSpecification": { - "target": "com.amazonaws.ec2#InstanceAttachmentEnaSrdUdpSpecification", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "EnaSrdUdpSpecification", - "smithy.api#documentation": "

Configures ENA Express for UDP network traffic.

", - "smithy.api#xmlName": "enaSrdUdpSpecification" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

Specify the pagination token from a previous request to retrieve the next page of results.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology to increase the \n\t\t\tmaximum bandwidth used per stream and minimize tail latency of network traffic between EC2 instances. \n\t\t\tWith ENA Express, you can communicate between two EC2 instances in the same subnet within the same \n\t\t\taccount, or in different accounts. Both sending and receiving instances must have ENA Express enabled.

\n

To improve the reliability of network packet delivery, ENA Express reorders network packets on the \n\t\t\treceiving end by default. However, some UDP-based applications are designed to handle network packets \n\t\t\tthat are out of order to reduce the overhead for packet delivery at the network layer. When ENA Express \n\t\t\tis enabled, you can specify whether UDP network traffic uses it.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceAttachmentEnaSrdUdpSpecification": { - "type": "structure", - "members": { - "EnaSrdUdpEnabled": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "EnaSrdUdpEnabled", - "smithy.api#documentation": "

Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, \n\t\t\tyou must first enable ENA Express.

", - "smithy.api#xmlName": "enaSrdUdpEnabled" - } - } + "com.amazonaws.ec2#GetIpamPoolAllocations": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetIpamPoolAllocationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetIpamPoolAllocationsResult" }, "traits": { - "smithy.api#documentation": "

ENA Express is compatible with both TCP and UDP transport protocols. When it's enabled, TCP traffic \n\t\t\tautomatically uses it. However, some UDP-based applications are designed to handle network packets that are \n\t\t\tout of order, without a need for retransmission, such as live video broadcasting or other near-real-time \n\t\t\tapplications. For UDP traffic, you can specify whether to use ENA Express, based on your application \n\t\t\tenvironment needs.

" + "smithy.api#documentation": "

Get a list of all the CIDR allocations in an IPAM pool. The Region you use should be the IPAM pool locale. The locale is the Amazon Web Services Region where this IPAM pool is available for allocations.

\n \n

If you use this action after AllocateIpamPoolCidr or ReleaseIpamPoolAllocation, note that all EC2 API actions follow an eventual consistency model.

\n
", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "IpamPoolAllocations", + "pageSize": "MaxResults" + } } }, - "com.amazonaws.ec2#InstanceAttribute": { + "com.amazonaws.ec2#GetIpamPoolAllocationsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1000, + "max": 100000 + } + } + }, + "com.amazonaws.ec2#GetIpamPoolAllocationsRequest": { "type": "structure", "members": { - "Groups": { - "target": "com.amazonaws.ec2#GroupIdentifierList", - "traits": { - "aws.protocols#ec2QueryName": "GroupSet", - "smithy.api#documentation": "

The security groups associated with the instance.

", - "smithy.api#xmlName": "groupSet" - } - }, - "BlockDeviceMappings": { - "target": "com.amazonaws.ec2#InstanceBlockDeviceMappingList", - "traits": { - "aws.protocols#ec2QueryName": "BlockDeviceMapping", - "smithy.api#documentation": "

The block device mapping of the instance.

", - "smithy.api#xmlName": "blockDeviceMapping" - } - }, - "DisableApiTermination": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", - "traits": { - "aws.protocols#ec2QueryName": "DisableApiTermination", - "smithy.api#documentation": "

If the value is true, you can't terminate the instance through the Amazon\n EC2 console, CLI, or API; otherwise, you can.

", - "smithy.api#xmlName": "disableApiTermination" - } - }, - "EnaSupport": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", - "traits": { - "aws.protocols#ec2QueryName": "EnaSupport", - "smithy.api#documentation": "

Indicates whether enhanced networking with ENA is enabled.

", - "smithy.api#xmlName": "enaSupport" - } - }, - "EnclaveOptions": { - "target": "com.amazonaws.ec2#EnclaveOptions", - "traits": { - "aws.protocols#ec2QueryName": "EnclaveOptions", - "smithy.api#documentation": "

To enable the instance for Amazon Web Services Nitro Enclaves, set this parameter to\n true; otherwise, set it to false.

", - "smithy.api#xmlName": "enclaveOptions" - } - }, - "EbsOptimized": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", - "traits": { - "aws.protocols#ec2QueryName": "EbsOptimized", - "smithy.api#documentation": "

Indicates whether the instance is optimized for Amazon EBS I/O.

", - "smithy.api#xmlName": "ebsOptimized" - } - }, - "InstanceId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#xmlName": "instanceId" - } - }, - "InstanceInitiatedShutdownBehavior": { - "target": "com.amazonaws.ec2#AttributeValue", - "traits": { - "aws.protocols#ec2QueryName": "InstanceInitiatedShutdownBehavior", - "smithy.api#documentation": "

Indicates whether an instance stops or terminates when you initiate shutdown from the\n instance (using the operating system command for system shutdown).

", - "smithy.api#xmlName": "instanceInitiatedShutdownBehavior" - } - }, - "InstanceType": { - "target": "com.amazonaws.ec2#AttributeValue", - "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type.

", - "smithy.api#xmlName": "instanceType" - } - }, - "KernelId": { - "target": "com.amazonaws.ec2#AttributeValue", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Kernel", - "smithy.api#documentation": "

The kernel ID.

", - "smithy.api#xmlName": "kernel" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "ProductCodes": { - "target": "com.amazonaws.ec2#ProductCodeList", + "IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", "traits": { - "aws.protocols#ec2QueryName": "ProductCodes", - "smithy.api#documentation": "

A list of product codes.

", - "smithy.api#xmlName": "productCodes" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM pool you want to see the allocations for.

", + "smithy.api#required": {} } }, - "RamdiskId": { - "target": "com.amazonaws.ec2#AttributeValue", + "IpamPoolAllocationId": { + "target": "com.amazonaws.ec2#IpamPoolAllocationId", "traits": { - "aws.protocols#ec2QueryName": "Ramdisk", - "smithy.api#documentation": "

The RAM disk ID.

", - "smithy.api#xmlName": "ramdisk" + "smithy.api#documentation": "

The ID of the allocation.

" } }, - "RootDeviceName": { - "target": "com.amazonaws.ec2#AttributeValue", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "RootDeviceName", - "smithy.api#documentation": "

The device name of the root device volume (for example,\n /dev/sda1).

", - "smithy.api#xmlName": "rootDeviceName" + "smithy.api#documentation": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

", + "smithy.api#xmlName": "Filter" } }, - "SourceDestCheck": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "MaxResults": { + "target": "com.amazonaws.ec2#GetIpamPoolAllocationsMaxResults", "traits": { - "aws.protocols#ec2QueryName": "SourceDestCheck", - "smithy.api#documentation": "

Enable or disable source/destination checks, which ensure that the instance is either\n the source or the destination of any traffic that it receives. If the value is\n true, source/destination checks are enabled; otherwise, they are\n disabled. The default value is true. You must disable source/destination\n checks if the instance runs services such as network address translation, routing, or\n firewalls.

", - "smithy.api#xmlName": "sourceDestCheck" + "smithy.api#documentation": "

The maximum number of results you would like returned per page.

" } }, - "SriovNetSupport": { - "target": "com.amazonaws.ec2#AttributeValue", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "SriovNetSupport", - "smithy.api#documentation": "

Indicates whether enhanced networking with the Intel 82599 Virtual Function interface\n is enabled.

", - "smithy.api#xmlName": "sriovNetSupport" + "smithy.api#documentation": "

The token for the next page of results.

" } - }, - "UserData": { - "target": "com.amazonaws.ec2#AttributeValue", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetIpamPoolAllocationsResult": { + "type": "structure", + "members": { + "IpamPoolAllocations": { + "target": "com.amazonaws.ec2#IpamPoolAllocationSet", "traits": { - "aws.protocols#ec2QueryName": "UserData", - "smithy.api#documentation": "

The user data.

", - "smithy.api#xmlName": "userData" + "aws.protocols#ec2QueryName": "IpamPoolAllocationSet", + "smithy.api#documentation": "

The IPAM pool allocations you want information on.

", + "smithy.api#xmlName": "ipamPoolAllocationSet" } }, - "DisableApiStop": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "DisableApiStop", - "smithy.api#documentation": "

To enable the instance for Amazon Web Services Stop Protection, set this parameter to\n true; otherwise, set it to false.

", - "smithy.api#xmlName": "disableApiStop" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Describes an instance attribute.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceAttributeName": { - "type": "enum", + "com.amazonaws.ec2#GetIpamPoolCidrs": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetIpamPoolCidrsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetIpamPoolCidrsResult" + }, + "traits": { + "smithy.api#documentation": "

Get the CIDRs provisioned to an IPAM pool.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "IpamPoolCidrs", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#GetIpamPoolCidrsRequest": { + "type": "structure", "members": { - "instanceType": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "instanceType" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "kernel": { - "target": "smithy.api#Unit", + "IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", "traits": { - "smithy.api#enumValue": "kernel" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM pool you want the CIDR for.

", + "smithy.api#required": {} } }, - "ramdisk": { - "target": "smithy.api#Unit", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#enumValue": "ramdisk" + "smithy.api#documentation": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

", + "smithy.api#xmlName": "Filter" } }, - "userData": { - "target": "smithy.api#Unit", + "MaxResults": { + "target": "com.amazonaws.ec2#IpamMaxResults", "traits": { - "smithy.api#enumValue": "userData" + "smithy.api#documentation": "

The maximum number of results to return in the request.

" } }, - "disableApiTermination": { - "target": "smithy.api#Unit", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#enumValue": "disableApiTermination" + "smithy.api#documentation": "

The token for the next page of results.

" } - }, - "instanceInitiatedShutdownBehavior": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetIpamPoolCidrsResult": { + "type": "structure", + "members": { + "IpamPoolCidrs": { + "target": "com.amazonaws.ec2#IpamPoolCidrSet", "traits": { - "smithy.api#enumValue": "instanceInitiatedShutdownBehavior" + "aws.protocols#ec2QueryName": "IpamPoolCidrSet", + "smithy.api#documentation": "

Information about the CIDRs provisioned to an IPAM pool.

", + "smithy.api#xmlName": "ipamPoolCidrSet" } }, - "rootDeviceName": { - "target": "smithy.api#Unit", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#enumValue": "rootDeviceName" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } - }, - "blockDeviceMapping": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetIpamResourceCidrs": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetIpamResourceCidrsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetIpamResourceCidrsResult" + }, + "traits": { + "smithy.api#documentation": "

Returns resource CIDRs managed by IPAM in a given scope. If an IPAM is associated with more than one resource discovery, the resource CIDRs across all of the resource discoveries is returned. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "IpamResourceCidrs", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#GetIpamResourceCidrsRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "blockDeviceMapping" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "productCodes": { - "target": "smithy.api#Unit", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#enumValue": "productCodes" + "smithy.api#documentation": "

One or more filters for the request. For more information about filtering, see Filtering CLI output.

", + "smithy.api#xmlName": "Filter" } }, - "sourceDestCheck": { - "target": "smithy.api#Unit", + "MaxResults": { + "target": "com.amazonaws.ec2#IpamMaxResults", "traits": { - "smithy.api#enumValue": "sourceDestCheck" + "smithy.api#documentation": "

The maximum number of results to return in the request.

" } }, - "groupSet": { - "target": "smithy.api#Unit", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#enumValue": "groupSet" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "ebsOptimized": { - "target": "smithy.api#Unit", + "IpamScopeId": { + "target": "com.amazonaws.ec2#IpamScopeId", "traits": { - "smithy.api#enumValue": "ebsOptimized" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the scope that the resource is in.

", + "smithy.api#required": {} } }, - "sriovNetSupport": { - "target": "smithy.api#Unit", + "IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", "traits": { - "smithy.api#enumValue": "sriovNetSupport" + "smithy.api#documentation": "

The ID of the IPAM pool that the resource is in.

" } }, - "enaSupport": { - "target": "smithy.api#Unit", + "ResourceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "enaSupport" + "smithy.api#documentation": "

The ID of the resource.

" } }, - "enclaveOptions": { - "target": "smithy.api#Unit", + "ResourceType": { + "target": "com.amazonaws.ec2#IpamResourceType", "traits": { - "smithy.api#enumValue": "enclaveOptions" + "smithy.api#documentation": "

The resource type.

" } }, - "disableApiStop": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "disableApiStop" - } - } - } - }, - "com.amazonaws.ec2#InstanceAutoRecoveryState": { - "type": "enum", - "members": { - "disabled": { - "target": "smithy.api#Unit", + "ResourceTag": { + "target": "com.amazonaws.ec2#RequestIpamResourceTag", "traits": { - "smithy.api#enumValue": "disabled" + "smithy.api#documentation": "

The resource tag.

" } }, - "default": { - "target": "smithy.api#Unit", + "ResourceOwner": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "default" + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the resource.

" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceBlockDeviceMapping": { + "com.amazonaws.ec2#GetIpamResourceCidrsResult": { "type": "structure", "members": { - "DeviceName": { - "target": "com.amazonaws.ec2#String", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "DeviceName", - "smithy.api#documentation": "

The device name (for example, /dev/sdh or xvdh).

", - "smithy.api#xmlName": "deviceName" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } }, - "Ebs": { - "target": "com.amazonaws.ec2#EbsInstanceBlockDevice", + "IpamResourceCidrs": { + "target": "com.amazonaws.ec2#IpamResourceCidrSet", "traits": { - "aws.protocols#ec2QueryName": "Ebs", - "smithy.api#documentation": "

Parameters used to automatically set up EBS volumes when the instance is\n launched.

", - "smithy.api#xmlName": "ebs" + "aws.protocols#ec2QueryName": "IpamResourceCidrSet", + "smithy.api#documentation": "

The resource CIDRs.

", + "smithy.api#xmlName": "ipamResourceCidrSet" } } }, "traits": { - "smithy.api#documentation": "

Describes a block device mapping.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceBlockDeviceMappingList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceBlockDeviceMapping", - "traits": { - "smithy.api#xmlName": "item" - } + "com.amazonaws.ec2#GetLaunchTemplateData": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetLaunchTemplateDataRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetLaunchTemplateDataResult" + }, + "traits": { + "smithy.api#documentation": "

Retrieves the configuration data of the specified instance. You can use this data to\n create a launch template.

\n

This action calls on other describe actions to get instance information. Depending on\n your instance configuration, you may need to allow the following actions in your IAM\n policy: DescribeSpotInstanceRequests,\n DescribeInstanceCreditSpecifications, DescribeVolumes, and\n DescribeInstanceAttribute.\n Or, you can allow describe* depending on your instance requirements.

", + "smithy.api#examples": [ + { + "title": "To get the launch template data for an instance ", + "documentation": "This example gets the launch template data for the specified instance.", + "input": { + "InstanceId": "0123d646e8048babc" + }, + "output": { + "LaunchTemplateData": { + "NetworkInterfaces": [ + { + "DeviceIndex": 0, + "Groups": [ + "sg-d14e1bb4" + ], + "Ipv6Addresses": [], + "AssociatePublicIpAddress": false, + "NetworkInterfaceId": "eni-4338b5a9", + "DeleteOnTermination": true, + "Description": "", + "PrivateIpAddress": "10.0.3.233", + "SubnetId": "subnet-5264e837", + "PrivateIpAddresses": [ + { + "PrivateIpAddress": "10.0.3.233", + "Primary": true + } + ] + } + ], + "Placement": { + "GroupName": "", + "Tenancy": "default", + "AvailabilityZone": "us-east-2b" + }, + "InstanceType": "t2.medium", + "EbsOptimized": false, + "BlockDeviceMappings": [ + { + "Ebs": { + "VolumeType": "gp2", + "Encrypted": false, + "Iops": 100, + "VolumeSize": 8, + "SnapshotId": "snap-02594938353ef77d3", + "DeleteOnTermination": true + }, + "DeviceName": "/dev/xvda" + } + ], + "KeyName": "my-key-pair", + "ImageId": "ami-32cf7b4a", + "Monitoring": { + "Enabled": false + } + } + } + } + ] } }, - "com.amazonaws.ec2#InstanceBlockDeviceMappingSpecification": { + "com.amazonaws.ec2#GetLaunchTemplateDataRequest": { "type": "structure", "members": { - "DeviceName": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "DeviceName", - "smithy.api#documentation": "

The device name (for example, /dev/sdh or xvdh).

", - "smithy.api#xmlName": "deviceName" - } - }, - "Ebs": { - "target": "com.amazonaws.ec2#EbsInstanceBlockDeviceSpecification", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Ebs", - "smithy.api#documentation": "

Parameters used to automatically set up EBS volumes when the instance is\n launched.

", - "smithy.api#xmlName": "ebs" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" } }, - "NoDevice": { - "target": "com.amazonaws.ec2#String", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "aws.protocols#ec2QueryName": "NoDevice", - "smithy.api#documentation": "

suppress the specified device included in the block device mapping.

", - "smithy.api#xmlName": "noDevice" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#required": {} } - }, - "VirtualName": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetLaunchTemplateDataResult": { + "type": "structure", + "members": { + "LaunchTemplateData": { + "target": "com.amazonaws.ec2#ResponseLaunchTemplateData", "traits": { - "aws.protocols#ec2QueryName": "VirtualName", - "smithy.api#documentation": "

The virtual device name.

", - "smithy.api#xmlName": "virtualName" + "aws.protocols#ec2QueryName": "LaunchTemplateData", + "smithy.api#documentation": "

The instance data.

", + "smithy.api#xmlName": "launchTemplateData" } } }, "traits": { - "smithy.api#documentation": "

Describes a block device mapping entry.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceBlockDeviceMappingSpecificationList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceBlockDeviceMappingSpecification", - "traits": { - "smithy.api#xmlName": "item" + "com.amazonaws.ec2#GetManagedPrefixListAssociations": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetManagedPrefixListAssociationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetManagedPrefixListAssociationsResult" + }, + "traits": { + "smithy.api#documentation": "

Gets information about the resources that are associated with the specified managed prefix list.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "PrefixListAssociations", + "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#InstanceBootModeValues": { - "type": "enum", + "com.amazonaws.ec2#GetManagedPrefixListAssociationsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 255 + } + } + }, + "com.amazonaws.ec2#GetManagedPrefixListAssociationsRequest": { + "type": "structure", "members": { - "legacy_bios": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "legacy-bios" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "uefi": { - "target": "smithy.api#Unit", + "PrefixListId": { + "target": "com.amazonaws.ec2#PrefixListResourceId", "traits": { - "smithy.api#enumValue": "uefi" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the prefix list.

", + "smithy.api#required": {} + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#GetManagedPrefixListAssociationsMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceCapacity": { + "com.amazonaws.ec2#GetManagedPrefixListAssociationsResult": { "type": "structure", "members": { - "AvailableCapacity": { - "target": "com.amazonaws.ec2#Integer", + "PrefixListAssociations": { + "target": "com.amazonaws.ec2#PrefixListAssociationSet", "traits": { - "aws.protocols#ec2QueryName": "AvailableCapacity", - "smithy.api#documentation": "

The number of instances that can be launched onto the Dedicated Host based on the\n host's available capacity.

", - "smithy.api#xmlName": "availableCapacity" + "aws.protocols#ec2QueryName": "PrefixListAssociationSet", + "smithy.api#documentation": "

Information about the associations.

", + "smithy.api#xmlName": "prefixListAssociationSet" } }, - "InstanceType": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type supported by the Dedicated Host.

", - "smithy.api#xmlName": "instanceType" - } - }, - "TotalCapacity": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "TotalCapacity", - "smithy.api#documentation": "

The total number of instances that can be launched onto the Dedicated Host if there\n are no instances running on it.

", - "smithy.api#xmlName": "totalCapacity" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Information about the number of instances that can be launched onto the Dedicated\n Host.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceConnectEndpointId": { - "type": "string" - }, - "com.amazonaws.ec2#InstanceConnectEndpointMaxResults": { - "type": "integer", + "com.amazonaws.ec2#GetManagedPrefixListEntries": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetManagedPrefixListEntriesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetManagedPrefixListEntriesResult" + }, "traits": { - "smithy.api#range": { - "min": 1, - "max": 50 - } - } - }, - "com.amazonaws.ec2#InstanceConnectEndpointSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Ec2InstanceConnectEndpoint", - "traits": { - "smithy.api#xmlName": "item" + "smithy.api#documentation": "

Gets information about the entries for a specified managed prefix list.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "Entries", + "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#InstanceCount": { + "com.amazonaws.ec2#GetManagedPrefixListEntriesRequest": { "type": "structure", "members": { - "InstanceCount": { - "target": "com.amazonaws.ec2#Integer", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "InstanceCount", - "smithy.api#documentation": "

The number of listed Reserved Instances in the state specified by the state.

", - "smithy.api#xmlName": "instanceCount" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "State": { - "target": "com.amazonaws.ec2#ListingState", + "PrefixListId": { + "target": "com.amazonaws.ec2#PrefixListResourceId", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The states of the listed Reserved Instances.

", - "smithy.api#xmlName": "state" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the prefix list.

", + "smithy.api#required": {} + } + }, + "TargetVersion": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "smithy.api#documentation": "

The version of the prefix list for which to return the entries. The default is the current version.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#PrefixListMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" } } }, "traits": { - "smithy.api#documentation": "

Describes a Reserved Instance listing state.

" - } - }, - "com.amazonaws.ec2#InstanceCountList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceCount", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceCreditSpecification": { + "com.amazonaws.ec2#GetManagedPrefixListEntriesResult": { "type": "structure", "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#String", + "Entries": { + "target": "com.amazonaws.ec2#PrefixListEntrySet", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#xmlName": "instanceId" + "aws.protocols#ec2QueryName": "EntrySet", + "smithy.api#documentation": "

Information about the prefix list entries.

", + "smithy.api#xmlName": "entrySet" } }, - "CpuCredits": { - "target": "com.amazonaws.ec2#String", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "CpuCredits", - "smithy.api#documentation": "

The credit option for CPU usage of the instance.

\n

Valid values: standard | unlimited\n

", - "smithy.api#xmlName": "cpuCredits" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Describes the credit option for CPU usage of a burstable performance instance.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceCreditSpecificationList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceCreditSpecification", - "traits": { - "smithy.api#xmlName": "item" + "com.amazonaws.ec2#GetNetworkInsightsAccessScopeAnalysisFindings": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetNetworkInsightsAccessScopeAnalysisFindingsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetNetworkInsightsAccessScopeAnalysisFindingsResult" + }, + "traits": { + "smithy.api#documentation": "

Gets the findings for the specified Network Access Scope analysis.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "AnalysisFindings", + "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#InstanceCreditSpecificationListRequest": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceCreditSpecificationRequest", - "traits": { - "smithy.api#xmlName": "item" + "com.amazonaws.ec2#GetNetworkInsightsAccessScopeAnalysisFindingsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1000 } } }, - "com.amazonaws.ec2#InstanceCreditSpecificationRequest": { + "com.amazonaws.ec2#GetNetworkInsightsAccessScopeAnalysisFindingsRequest": { "type": "structure", "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", + "NetworkInsightsAccessScopeAnalysisId": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#documentation": "

The ID of the Network Access Scope analysis.

", "smithy.api#required": {} } }, - "CpuCredits": { - "target": "com.amazonaws.ec2#String", + "MaxResults": { + "target": "com.amazonaws.ec2#GetNetworkInsightsAccessScopeAnalysisFindingsMaxResults", "traits": { - "smithy.api#documentation": "

The credit option for CPU usage of the instance.

\n

Valid values: standard | unlimited\n

\n

T3 instances with host tenancy do not support the unlimited\n CPU credit option.

" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n To retrieve the remaining results, make another call with the returned nextToken value.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Describes the credit option for CPU usage of a burstable performance instance.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceEventId": { - "type": "string" - }, - "com.amazonaws.ec2#InstanceEventWindow": { + "com.amazonaws.ec2#GetNetworkInsightsAccessScopeAnalysisFindingsResult": { "type": "structure", "members": { - "InstanceEventWindowId": { - "target": "com.amazonaws.ec2#InstanceEventWindowId", - "traits": { - "aws.protocols#ec2QueryName": "InstanceEventWindowId", - "smithy.api#documentation": "

The ID of the event window.

", - "smithy.api#xmlName": "instanceEventWindowId" - } - }, - "TimeRanges": { - "target": "com.amazonaws.ec2#InstanceEventWindowTimeRangeList", - "traits": { - "aws.protocols#ec2QueryName": "TimeRangeSet", - "smithy.api#documentation": "

One or more time ranges defined for the event window.

", - "smithy.api#xmlName": "timeRangeSet" - } - }, - "Name": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Name", - "smithy.api#documentation": "

The name of the event window.

", - "smithy.api#xmlName": "name" - } - }, - "CronExpression": { - "target": "com.amazonaws.ec2#InstanceEventWindowCronExpression", + "NetworkInsightsAccessScopeAnalysisId": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisId", "traits": { - "aws.protocols#ec2QueryName": "CronExpression", - "smithy.api#documentation": "

The cron expression defined for the event window.

", - "smithy.api#xmlName": "cronExpression" + "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeAnalysisId", + "smithy.api#documentation": "

The ID of the Network Access Scope analysis.

", + "smithy.api#xmlName": "networkInsightsAccessScopeAnalysisId" } }, - "AssociationTarget": { - "target": "com.amazonaws.ec2#InstanceEventWindowAssociationTarget", + "AnalysisStatus": { + "target": "com.amazonaws.ec2#AnalysisStatus", "traits": { - "aws.protocols#ec2QueryName": "AssociationTarget", - "smithy.api#documentation": "

One or more targets associated with the event window.

", - "smithy.api#xmlName": "associationTarget" + "aws.protocols#ec2QueryName": "AnalysisStatus", + "smithy.api#documentation": "

The status of Network Access Scope Analysis.

", + "smithy.api#xmlName": "analysisStatus" } }, - "State": { - "target": "com.amazonaws.ec2#InstanceEventWindowState", + "AnalysisFindings": { + "target": "com.amazonaws.ec2#AccessScopeAnalysisFindingList", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The current state of the event window.

", - "smithy.api#xmlName": "state" + "aws.protocols#ec2QueryName": "AnalysisFindingSet", + "smithy.api#documentation": "

The findings associated with Network Access Scope Analysis.

", + "smithy.api#xmlName": "analysisFindingSet" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The instance tags associated with the event window.

", - "smithy.api#xmlName": "tagSet" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

The event window.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceEventWindowAssociationRequest": { + "com.amazonaws.ec2#GetNetworkInsightsAccessScopeContent": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetNetworkInsightsAccessScopeContentRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetNetworkInsightsAccessScopeContentResult" + }, + "traits": { + "smithy.api#documentation": "

Gets the content for the specified Network Access Scope.

" + } + }, + "com.amazonaws.ec2#GetNetworkInsightsAccessScopeContentRequest": { "type": "structure", "members": { - "InstanceIds": { - "target": "com.amazonaws.ec2#InstanceIdList", - "traits": { - "smithy.api#documentation": "

The IDs of the instances to associate with the event window. If the instance is on a\n Dedicated Host, you can't specify the Instance ID parameter; you must use the Dedicated\n Host ID parameter.

", - "smithy.api#xmlName": "InstanceId" - } - }, - "InstanceTags": { - "target": "com.amazonaws.ec2#TagList", + "NetworkInsightsAccessScopeId": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeId", "traits": { - "smithy.api#documentation": "

The instance tags to associate with the event window. Any instances associated with the\n tags will be associated with the event window.

", - "smithy.api#xmlName": "InstanceTag" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Network Access Scope.

", + "smithy.api#required": {} } }, - "DedicatedHostIds": { - "target": "com.amazonaws.ec2#DedicatedHostIdList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The IDs of the Dedicated Hosts to associate with the event window.

", - "smithy.api#xmlName": "DedicatedHostId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

One or more targets associated with the specified event window. Only one\n type of target (instance ID, instance tag, or Dedicated Host ID)\n can be associated with an event window.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceEventWindowAssociationTarget": { + "com.amazonaws.ec2#GetNetworkInsightsAccessScopeContentResult": { "type": "structure", "members": { - "InstanceIds": { - "target": "com.amazonaws.ec2#InstanceIdList", - "traits": { - "aws.protocols#ec2QueryName": "InstanceIdSet", - "smithy.api#documentation": "

The IDs of the instances associated with the event window.

", - "smithy.api#xmlName": "instanceIdSet" - } - }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", - "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The instance tags associated with the event window. Any instances associated with the tags\n will be associated with the event window.

", - "smithy.api#xmlName": "tagSet" - } - }, - "DedicatedHostIds": { - "target": "com.amazonaws.ec2#DedicatedHostIdList", + "NetworkInsightsAccessScopeContent": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeContent", "traits": { - "aws.protocols#ec2QueryName": "DedicatedHostIdSet", - "smithy.api#documentation": "

The IDs of the Dedicated Hosts associated with the event window.

", - "smithy.api#xmlName": "dedicatedHostIdSet" + "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeContent", + "smithy.api#documentation": "

The Network Access Scope content.

", + "smithy.api#xmlName": "networkInsightsAccessScopeContent" } } }, "traits": { - "smithy.api#documentation": "

One or more targets associated with the event window.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceEventWindowCronExpression": { - "type": "string" + "com.amazonaws.ec2#GetPasswordData": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetPasswordDataRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetPasswordDataResult" + }, + "traits": { + "smithy.api#documentation": "

Retrieves the encrypted administrator password for a running Windows instance.

\n

The Windows password is generated at boot by the EC2Config service or\n EC2Launch scripts (Windows Server 2016 and later). This usually only\n happens the first time an instance is launched. For more information, see EC2Config and EC2Launch in the\n Amazon EC2 User Guide.

\n

For the EC2Config service, the password is not generated for rebundled\n AMIs unless Ec2SetPassword is enabled before bundling.

\n

The password is encrypted using the key pair that you specified when you launched the\n instance. You must provide the corresponding key pair file.

\n

When you launch an instance, password generation and encryption may take a few\n minutes. If you try to retrieve the password before it's available, the output returns\n an empty string. We recommend that you wait up to 15 minutes after launching an instance\n before trying to retrieve the generated password.

", + "smithy.waiters#waitable": { + "PasswordDataAvailable": { + "acceptors": [ + { + "state": "success", + "matcher": { + "output": { + "path": "length(PasswordData) > `0`", + "expected": "true", + "comparator": "booleanEquals" + } + } + } + ], + "minDelay": 15 + } + } + } }, - "com.amazonaws.ec2#InstanceEventWindowDisassociationRequest": { + "com.amazonaws.ec2#GetPasswordDataRequest": { "type": "structure", "members": { - "InstanceIds": { - "target": "com.amazonaws.ec2#InstanceIdList", - "traits": { - "smithy.api#documentation": "

The IDs of the instances to disassociate from the event window.

", - "smithy.api#xmlName": "InstanceId" - } - }, - "InstanceTags": { - "target": "com.amazonaws.ec2#TagList", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "smithy.api#documentation": "

The instance tags to disassociate from the event window. Any instances associated with\n the tags will be disassociated from the event window.

", - "smithy.api#xmlName": "InstanceTag" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Windows instance.

", + "smithy.api#required": {} } }, - "DedicatedHostIds": { - "target": "com.amazonaws.ec2#DedicatedHostIdList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The IDs of the Dedicated Hosts to disassociate from the event window.

", - "smithy.api#xmlName": "DedicatedHostId" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, "traits": { - "smithy.api#documentation": "

The targets to disassociate from the specified event window.

" - } - }, - "com.amazonaws.ec2#InstanceEventWindowId": { - "type": "string" - }, - "com.amazonaws.ec2#InstanceEventWindowIdSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceEventWindowId", - "traits": { - "smithy.api#xmlName": "InstanceEventWindowId" - } - } - }, - "com.amazonaws.ec2#InstanceEventWindowSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceEventWindow", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceEventWindowState": { - "type": "enum", + "com.amazonaws.ec2#GetPasswordDataResult": { + "type": "structure", "members": { - "creating": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "creating" - } - }, - "deleting": { - "target": "smithy.api#Unit", + "InstanceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "deleting" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the Windows instance.

", + "smithy.api#xmlName": "instanceId" } }, - "active": { - "target": "smithy.api#Unit", + "Timestamp": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#enumValue": "active" + "aws.protocols#ec2QueryName": "Timestamp", + "smithy.api#documentation": "

The time the data was last updated.

", + "smithy.api#xmlName": "timestamp" } }, - "deleted": { - "target": "smithy.api#Unit", + "PasswordData": { + "target": "com.amazonaws.ec2#PasswordData", "traits": { - "smithy.api#enumValue": "deleted" + "aws.protocols#ec2QueryName": "PasswordData", + "smithy.api#documentation": "

The password of the instance. Returns an empty string if the password is not\n available.

", + "smithy.api#xmlName": "passwordData" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceEventWindowStateChange": { + "com.amazonaws.ec2#GetReservedInstancesExchangeQuote": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetReservedInstancesExchangeQuoteRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetReservedInstancesExchangeQuoteResult" + }, + "traits": { + "smithy.api#documentation": "

Returns a quote and exchange information for exchanging one or more specified Convertible\n Reserved Instances for a new Convertible Reserved Instance. If the exchange cannot be\n performed, the reason is returned in the response. Use AcceptReservedInstancesExchangeQuote to perform the exchange.

" + } + }, + "com.amazonaws.ec2#GetReservedInstancesExchangeQuoteRequest": { "type": "structure", "members": { - "InstanceEventWindowId": { - "target": "com.amazonaws.ec2#InstanceEventWindowId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "InstanceEventWindowId", - "smithy.api#documentation": "

The ID of the event window.

", - "smithy.api#xmlName": "instanceEventWindowId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making\n the request, and provides an error response. If you have the required permissions, the error\n response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" } }, - "State": { - "target": "com.amazonaws.ec2#InstanceEventWindowState", + "ReservedInstanceIds": { + "target": "com.amazonaws.ec2#ReservedInstanceIdSet", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The current state of the event window.

", - "smithy.api#xmlName": "state" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of the Convertible Reserved Instances to exchange.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "ReservedInstanceId" + } + }, + "TargetConfigurations": { + "target": "com.amazonaws.ec2#TargetConfigurationRequestSet", + "traits": { + "smithy.api#documentation": "

The configuration of the target Convertible Reserved Instance to exchange for your current\n Convertible Reserved Instances.

", + "smithy.api#xmlName": "TargetConfiguration" } } }, "traits": { - "smithy.api#documentation": "

The state of the event window.

" + "smithy.api#documentation": "

Contains the parameters for GetReservedInstanceExchangeQuote.

", + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceEventWindowTimeRange": { + "com.amazonaws.ec2#GetReservedInstancesExchangeQuoteResult": { "type": "structure", "members": { - "StartWeekDay": { - "target": "com.amazonaws.ec2#WeekDay", + "CurrencyCode": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "StartWeekDay", - "smithy.api#documentation": "

The day on which the time range begins.

", - "smithy.api#xmlName": "startWeekDay" + "aws.protocols#ec2QueryName": "CurrencyCode", + "smithy.api#documentation": "

The currency of the transaction.

", + "smithy.api#xmlName": "currencyCode" } }, - "StartHour": { - "target": "com.amazonaws.ec2#Hour", + "IsValidExchange": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "StartHour", - "smithy.api#documentation": "

The hour when the time range begins.

", - "smithy.api#xmlName": "startHour" + "aws.protocols#ec2QueryName": "IsValidExchange", + "smithy.api#documentation": "

If true, the exchange is valid. If false, the exchange cannot be\n completed.

", + "smithy.api#xmlName": "isValidExchange" } }, - "EndWeekDay": { - "target": "com.amazonaws.ec2#WeekDay", + "OutputReservedInstancesWillExpireAt": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "EndWeekDay", - "smithy.api#documentation": "

The day on which the time range ends.

", - "smithy.api#xmlName": "endWeekDay" + "aws.protocols#ec2QueryName": "OutputReservedInstancesWillExpireAt", + "smithy.api#documentation": "

The new end date of the reservation term.

", + "smithy.api#xmlName": "outputReservedInstancesWillExpireAt" } }, - "EndHour": { - "target": "com.amazonaws.ec2#Hour", + "PaymentDue": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "EndHour", - "smithy.api#documentation": "

The hour when the time range ends.

", - "smithy.api#xmlName": "endHour" + "aws.protocols#ec2QueryName": "PaymentDue", + "smithy.api#documentation": "

The total true upfront charge for the exchange.

", + "smithy.api#xmlName": "paymentDue" } - } - }, - "traits": { - "smithy.api#documentation": "

The start day and time and the end day and time of the time range, in UTC.

" - } - }, - "com.amazonaws.ec2#InstanceEventWindowTimeRangeList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceEventWindowTimeRange", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#InstanceEventWindowTimeRangeRequest": { - "type": "structure", - "members": { - "StartWeekDay": { - "target": "com.amazonaws.ec2#WeekDay", + }, + "ReservedInstanceValueRollup": { + "target": "com.amazonaws.ec2#ReservationValue", "traits": { - "smithy.api#documentation": "

The day on which the time range begins.

" + "aws.protocols#ec2QueryName": "ReservedInstanceValueRollup", + "smithy.api#documentation": "

The cost associated with the Reserved Instance.

", + "smithy.api#xmlName": "reservedInstanceValueRollup" } }, - "StartHour": { - "target": "com.amazonaws.ec2#Hour", + "ReservedInstanceValueSet": { + "target": "com.amazonaws.ec2#ReservedInstanceReservationValueSet", "traits": { - "smithy.api#documentation": "

The hour when the time range begins.

" + "aws.protocols#ec2QueryName": "ReservedInstanceValueSet", + "smithy.api#documentation": "

The configuration of your Convertible Reserved Instances.

", + "smithy.api#xmlName": "reservedInstanceValueSet" } }, - "EndWeekDay": { - "target": "com.amazonaws.ec2#WeekDay", + "TargetConfigurationValueRollup": { + "target": "com.amazonaws.ec2#ReservationValue", "traits": { - "smithy.api#documentation": "

The day on which the time range ends.

" + "aws.protocols#ec2QueryName": "TargetConfigurationValueRollup", + "smithy.api#documentation": "

The cost associated with the Reserved Instance.

", + "smithy.api#xmlName": "targetConfigurationValueRollup" } }, - "EndHour": { - "target": "com.amazonaws.ec2#Hour", + "TargetConfigurationValueSet": { + "target": "com.amazonaws.ec2#TargetReservationValueSet", "traits": { - "smithy.api#documentation": "

The hour when the time range ends.

" + "aws.protocols#ec2QueryName": "TargetConfigurationValueSet", + "smithy.api#documentation": "

The values of the target Convertible Reserved Instances.

", + "smithy.api#xmlName": "targetConfigurationValueSet" + } + }, + "ValidationFailureReason": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ValidationFailureReason", + "smithy.api#documentation": "

Describes the reason why the exchange cannot be completed.

", + "smithy.api#xmlName": "validationFailureReason" } } }, "traits": { - "smithy.api#documentation": "

The start day and time and the end day and time of the time range, in UTC.

" + "smithy.api#documentation": "

Contains the output of GetReservedInstancesExchangeQuote.

", + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceEventWindowTimeRangeRequestSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceEventWindowTimeRangeRequest" + "com.amazonaws.ec2#GetRouteServerAssociations": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetRouteServerAssociationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetRouteServerAssociationsResult" + }, + "traits": { + "smithy.api#documentation": "

Gets information about the associations for the specified route server.

\n

A route server association is the connection established between a route server and a VPC.

\n

For more information see Dynamic routing in your VPC with VPC Route Server in the Amazon VPC User Guide.

" } }, - "com.amazonaws.ec2#InstanceExportDetails": { + "com.amazonaws.ec2#GetRouteServerAssociationsRequest": { "type": "structure", "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#String", + "RouteServerId": { + "target": "com.amazonaws.ec2#RouteServerId", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the resource being exported.

", - "smithy.api#xmlName": "instanceId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the route server for which to get association information.

", + "smithy.api#required": {} } }, - "TargetEnvironment": { - "target": "com.amazonaws.ec2#ExportEnvironment", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "TargetEnvironment", - "smithy.api#documentation": "

The target virtualization environment.

", - "smithy.api#xmlName": "targetEnvironment" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Describes an instance to export.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceFamilyCreditSpecification": { + "com.amazonaws.ec2#GetRouteServerAssociationsResult": { "type": "structure", "members": { - "InstanceFamily": { - "target": "com.amazonaws.ec2#UnlimitedSupportedInstanceFamily", - "traits": { - "aws.protocols#ec2QueryName": "InstanceFamily", - "smithy.api#documentation": "

The instance family.

", - "smithy.api#xmlName": "instanceFamily" - } - }, - "CpuCredits": { - "target": "com.amazonaws.ec2#String", + "RouteServerAssociations": { + "target": "com.amazonaws.ec2#RouteServerAssociationsList", "traits": { - "aws.protocols#ec2QueryName": "CpuCredits", - "smithy.api#documentation": "

The default credit option for CPU usage of the instance family. Valid values are\n standard and unlimited.

", - "smithy.api#xmlName": "cpuCredits" + "aws.protocols#ec2QueryName": "RouteServerAssociationSet", + "smithy.api#documentation": "

Information about the associations for the specified route server.

", + "smithy.api#xmlName": "routeServerAssociationSet" } } }, "traits": { - "smithy.api#documentation": "

Describes the default credit option for CPU usage of a burstable performance instance\n family.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceGeneration": { - "type": "enum", + "com.amazonaws.ec2#GetRouteServerPropagations": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetRouteServerPropagationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetRouteServerPropagationsResult" + }, + "traits": { + "smithy.api#documentation": "

Gets information about the route propagations for the specified route server.

\n

When enabled, route server propagation installs the routes in the FIB on the route table you've specified. Route server supports IPv4 and IPv6 route propagation.

\n

Amazon VPC Route Server simplifies routing for traffic between workloads that are deployed within a VPC and its internet gateways. With this feature, \nVPC Route Server dynamically updates VPC and internet gateway route tables with your preferred IPv4 or IPv6 routes to achieve routing fault tolerance for those workloads. This enables you to automatically reroute traffic within a VPC, which increases the manageability of VPC routing and interoperability with third-party workloads.

\n

Route server supports the follow route table types:

\n \n

Route server does not support route tables associated with virtual private gateways. To propagate routes into a transit gateway route table, use Transit Gateway Connect.

" + } + }, + "com.amazonaws.ec2#GetRouteServerPropagationsRequest": { + "type": "structure", "members": { - "CURRENT": { - "target": "smithy.api#Unit", + "RouteServerId": { + "target": "com.amazonaws.ec2#RouteServerId", "traits": { - "smithy.api#enumValue": "current" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the route server for which to get propagation information.

", + "smithy.api#required": {} } }, - "PREVIOUS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "previous" - } - } - } - }, - "com.amazonaws.ec2#InstanceGenerationSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceGeneration", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#InstanceHealthStatus": { - "type": "enum", - "members": { - "HEALTHY_STATUS": { - "target": "smithy.api#Unit", + "RouteTableId": { + "target": "com.amazonaws.ec2#RouteTableId", "traits": { - "smithy.api#enumValue": "healthy" + "smithy.api#documentation": "

The ID of the route table for which to get propagation information.

" } }, - "UNHEALTHY_STATUS": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "unhealthy" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceId": { - "type": "string" - }, - "com.amazonaws.ec2#InstanceIdForResolver": { - "type": "string" - }, - "com.amazonaws.ec2#InstanceIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#InstanceIdSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#InstanceIdStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceId", - "traits": { - "smithy.api#xmlName": "InstanceId" + "com.amazonaws.ec2#GetRouteServerPropagationsResult": { + "type": "structure", + "members": { + "RouteServerPropagations": { + "target": "com.amazonaws.ec2#RouteServerPropagationsList", + "traits": { + "aws.protocols#ec2QueryName": "RouteServerPropagationSet", + "smithy.api#documentation": "

Information about the route propagations for the specified route server.

", + "smithy.api#xmlName": "routeServerPropagationSet" + } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceIdWithVolumeResolver": { - "type": "string" - }, - "com.amazonaws.ec2#InstanceIdsSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceId", - "traits": { - "smithy.api#xmlName": "item" - } + "com.amazonaws.ec2#GetRouteServerRoutingDatabase": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetRouteServerRoutingDatabaseRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetRouteServerRoutingDatabaseResult" + }, + "traits": { + "smithy.api#documentation": "

Gets the routing database for the specified route server. The Routing Information Base (RIB) serves as a database that stores all the routing information and network topology data collected by a router or routing system, such as routes learned from BGP peers. The RIB is constantly updated as new routing information is received or existing routes change. This ensures that the route server always has the most current view of the network topology and can make optimal routing decisions.

\n

Amazon VPC Route Server simplifies routing for traffic between workloads that are deployed within a VPC and its internet gateways. With this feature, \nVPC Route Server dynamically updates VPC and internet gateway route tables with your preferred IPv4 or IPv6 routes to achieve routing fault tolerance for those workloads. This enables you to automatically reroute traffic within a VPC, which increases the manageability of VPC routing and interoperability with third-party workloads.

\n

Route server supports the follow route table types:

\n \n

Route server does not support route tables associated with virtual private gateways. To propagate routes into a transit gateway route table, use Transit Gateway Connect.

" } }, - "com.amazonaws.ec2#InstanceInterruptionBehavior": { - "type": "enum", + "com.amazonaws.ec2#GetRouteServerRoutingDatabaseRequest": { + "type": "structure", "members": { - "hibernate": { - "target": "smithy.api#Unit", + "RouteServerId": { + "target": "com.amazonaws.ec2#RouteServerId", "traits": { - "smithy.api#enumValue": "hibernate" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the route server for which to get the routing database.

", + "smithy.api#required": {} } }, - "stop": { - "target": "smithy.api#Unit", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "stop" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "terminate": { - "target": "smithy.api#Unit", + "MaxResults": { + "target": "com.amazonaws.ec2#RouteServerMaxResults", "traits": { - "smithy.api#enumValue": "terminate" + "smithy.api#documentation": "

The maximum number of routing database entries to return in a single response.

" } - } - } - }, - "com.amazonaws.ec2#InstanceIpv4Prefix": { - "type": "structure", - "members": { - "Ipv4Prefix": { - "target": "com.amazonaws.ec2#String", + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Ipv4Prefix", - "smithy.api#documentation": "

One or more IPv4 prefixes assigned to the network interface.

", - "smithy.api#xmlName": "ipv4Prefix" + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

Filters to apply to the routing database query.

", + "smithy.api#xmlName": "Filter" } } }, "traits": { - "smithy.api#documentation": "

Information about an IPv4 prefix.

" - } - }, - "com.amazonaws.ec2#InstanceIpv4PrefixList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceIpv4Prefix", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceIpv6Address": { + "com.amazonaws.ec2#GetRouteServerRoutingDatabaseResult": { "type": "structure", "members": { - "Ipv6Address": { - "target": "com.amazonaws.ec2#String", + "AreRoutesPersisted": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Ipv6Address", - "smithy.api#documentation": "

The IPv6 address.

", - "smithy.api#xmlName": "ipv6Address" + "aws.protocols#ec2QueryName": "AreRoutesPersisted", + "smithy.api#documentation": "

Indicates whether routes are being persisted in the routing database.

", + "smithy.api#xmlName": "areRoutesPersisted" } }, - "IsPrimaryIpv6": { - "target": "com.amazonaws.ec2#Boolean", + "Routes": { + "target": "com.amazonaws.ec2#RouteServerRouteList", "traits": { - "aws.protocols#ec2QueryName": "IsPrimaryIpv6", - "smithy.api#documentation": "

Determines if an IPv6 address associated with a network interface is the primary IPv6 address. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. \n For more information, see RunInstances.

", - "smithy.api#xmlName": "isPrimaryIpv6" + "aws.protocols#ec2QueryName": "RouteSet", + "smithy.api#documentation": "

The collection of routes in the route server's routing database.

", + "smithy.api#xmlName": "routeSet" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Describes an IPv6 address.

" - } - }, - "com.amazonaws.ec2#InstanceIpv6AddressList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceIpv6Address", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceIpv6AddressListRequest": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceIpv6AddressRequest", - "traits": { - "smithy.api#xmlName": "InstanceIpv6Address" + "com.amazonaws.ec2#GetSecurityGroupsForVpc": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetSecurityGroupsForVpcRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetSecurityGroupsForVpcResult" + }, + "traits": { + "smithy.api#documentation": "

Gets security groups that can be associated by the Amazon Web Services account making the request with network interfaces in the specified VPC.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "SecurityGroupForVpcs", + "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#InstanceIpv6AddressRequest": { + "com.amazonaws.ec2#GetSecurityGroupsForVpcRequest": { "type": "structure", "members": { - "Ipv6Address": { + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The VPC ID where the security group can be used.

", + "smithy.api#required": {} + } + }, + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IPv6 address.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + } + }, + "MaxResults": { + "target": "com.amazonaws.ec2#GetSecurityGroupsForVpcRequestMaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output.\n\tFor more information, see Pagination.

" + } + }, + "Filters": { + "target": "com.amazonaws.ec2#FilterList", + "traits": { + "smithy.api#documentation": "

The filters. If using multiple filters, the results include security groups which match all filters.

\n ", + "smithy.api#xmlName": "Filter" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Describes an IPv6 address.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceIpv6Prefix": { + "com.amazonaws.ec2#GetSecurityGroupsForVpcRequestMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#GetSecurityGroupsForVpcResult": { "type": "structure", "members": { - "Ipv6Prefix": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Ipv6Prefix", - "smithy.api#documentation": "

One or more IPv6 prefixes assigned to the network interface.

", - "smithy.api#xmlName": "ipv6Prefix" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" + } + }, + "SecurityGroupForVpcs": { + "target": "com.amazonaws.ec2#SecurityGroupForVpcList", + "traits": { + "aws.protocols#ec2QueryName": "SecurityGroupForVpcSet", + "smithy.api#documentation": "

The security group that can be used by interfaces in the VPC.

", + "smithy.api#xmlName": "securityGroupForVpcSet" } } }, "traits": { - "smithy.api#documentation": "

Information about an IPv6 prefix.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceIpv6PrefixList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceIpv6Prefix", - "traits": { - "smithy.api#xmlName": "item" - } + "com.amazonaws.ec2#GetSerialConsoleAccessStatus": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetSerialConsoleAccessStatusRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetSerialConsoleAccessStatusResult" + }, + "traits": { + "smithy.api#documentation": "

Retrieves the access status of your account to the EC2 serial console of all instances. By\n\t\t\tdefault, access to the EC2 serial console is disabled for your account. For more\n\t\t\tinformation, see Manage account access to the EC2 serial console in the Amazon EC2\n\t\t\t\tUser Guide.

" } }, - "com.amazonaws.ec2#InstanceLifecycle": { - "type": "enum", + "com.amazonaws.ec2#GetSerialConsoleAccessStatusRequest": { + "type": "structure", "members": { - "SPOT": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "spot" - } - }, - "ON_DEMAND": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "on-demand" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceLifecycleType": { - "type": "enum", + "com.amazonaws.ec2#GetSerialConsoleAccessStatusResult": { + "type": "structure", "members": { - "spot": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "spot" - } - }, - "scheduled": { - "target": "smithy.api#Unit", + "SerialConsoleAccessEnabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "scheduled" + "aws.protocols#ec2QueryName": "SerialConsoleAccessEnabled", + "smithy.api#documentation": "

If true, access to the EC2 serial console of all instances is enabled for\n\t\t\tyour account. If false, access to the EC2 serial console of all instances\n\t\t\tis disabled for your account.

", + "smithy.api#xmlName": "serialConsoleAccessEnabled" } }, - "capacity_block": { - "target": "smithy.api#Unit", + "ManagedBy": { + "target": "com.amazonaws.ec2#ManagedBy", "traits": { - "smithy.api#enumValue": "capacity-block" + "aws.protocols#ec2QueryName": "ManagedBy", + "smithy.api#documentation": "

The entity that manages access to the serial console. Possible values include:

\n ", + "smithy.api#xmlName": "managedBy" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Instance", - "traits": { - "smithy.api#xmlName": "item" - } + "com.amazonaws.ec2#GetSnapshotBlockPublicAccessState": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetSnapshotBlockPublicAccessStateRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetSnapshotBlockPublicAccessStateResult" + }, + "traits": { + "smithy.api#documentation": "

Gets the current state of block public access for snapshots setting \n for the account and Region.

\n

For more information, see \n Block public access for snapshots in the Amazon EBS User Guide.

" } }, - "com.amazonaws.ec2#InstanceMaintenanceOptions": { + "com.amazonaws.ec2#GetSnapshotBlockPublicAccessStateRequest": { "type": "structure", "members": { - "AutoRecovery": { - "target": "com.amazonaws.ec2#InstanceAutoRecoveryState", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "AutoRecovery", - "smithy.api#documentation": "

Provides information on the current automatic recovery behavior of your\n instance.

", - "smithy.api#xmlName": "autoRecovery" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

The maintenance options for the instance.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceMaintenanceOptionsRequest": { + "com.amazonaws.ec2#GetSnapshotBlockPublicAccessStateResult": { "type": "structure", "members": { - "AutoRecovery": { - "target": "com.amazonaws.ec2#InstanceAutoRecoveryState", + "State": { + "target": "com.amazonaws.ec2#SnapshotBlockPublicAccessState", "traits": { - "smithy.api#documentation": "

Disables the automatic recovery behavior of your instance or sets it to default. For\n more information, see Simplified automatic recovery.

" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of block public access for snapshots. Possible values include:

\n ", + "smithy.api#xmlName": "state" + } + }, + "ManagedBy": { + "target": "com.amazonaws.ec2#ManagedBy", + "traits": { + "aws.protocols#ec2QueryName": "ManagedBy", + "smithy.api#documentation": "

The entity that manages the state for block public access for snapshots. Possible\n values include:

\n ", + "smithy.api#xmlName": "managedBy" } } }, "traits": { - "smithy.api#documentation": "

The maintenance options for the instance.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceMarketOptionsRequest": { + "com.amazonaws.ec2#GetSpotPlacementScores": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetSpotPlacementScoresRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetSpotPlacementScoresResult" + }, + "traits": { + "smithy.api#documentation": "

Calculates the Spot placement score for a Region or Availability Zone based on the\n specified target capacity and compute requirements.

\n

You can specify your compute requirements either by using\n InstanceRequirementsWithMetadata and letting Amazon EC2 choose the optimal\n instance types to fulfill your Spot request, or you can specify the instance types by using\n InstanceTypes.

\n

For more information, see Spot placement score in\n the Amazon EC2 User Guide.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "SpotPlacementScores", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#GetSpotPlacementScoresRequest": { "type": "structure", "members": { - "MarketType": { - "target": "com.amazonaws.ec2#MarketType", + "InstanceTypes": { + "target": "com.amazonaws.ec2#InstanceTypes", "traits": { - "smithy.api#documentation": "

The market type.

" + "smithy.api#documentation": "

The instance types. We recommend that you specify at least three instance types. If you\n specify one or two instance types, or specify variations of a single instance type (for\n example, an m3.xlarge with and without instance storage), the returned\n placement score will always be low.

\n

If you specify InstanceTypes, you can't specify\n InstanceRequirementsWithMetadata.

", + "smithy.api#xmlName": "InstanceType" } }, - "SpotOptions": { - "target": "com.amazonaws.ec2#SpotMarketOptions", + "TargetCapacity": { + "target": "com.amazonaws.ec2#SpotPlacementScoresTargetCapacity", "traits": { - "smithy.api#documentation": "

The options for Spot Instances.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The target capacity.

", + "smithy.api#required": {} } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the market (purchasing) option for the instances.

" - } - }, - "com.amazonaws.ec2#InstanceMatchCriteria": { - "type": "enum", - "members": { - "open": { - "target": "smithy.api#Unit", + }, + "TargetCapacityUnitType": { + "target": "com.amazonaws.ec2#TargetCapacityUnitType", "traits": { - "smithy.api#enumValue": "open" + "smithy.api#documentation": "

The unit for the target capacity.

" } }, - "targeted": { - "target": "smithy.api#Unit", + "SingleAvailabilityZone": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "targeted" + "smithy.api#documentation": "

Specify true so that the response returns a list of scored Availability Zones.\n Otherwise, the response returns a list of scored Regions.

\n

A list of scored Availability Zones is useful if you want to launch all of your Spot\n capacity into a single Availability Zone.

" } - } - } - }, - "com.amazonaws.ec2#InstanceMetadataDefaultsResponse": { - "type": "structure", - "members": { - "HttpTokens": { - "target": "com.amazonaws.ec2#HttpTokensState", + }, + "RegionNames": { + "target": "com.amazonaws.ec2#RegionNames", "traits": { - "aws.protocols#ec2QueryName": "HttpTokens", - "smithy.api#documentation": "

Indicates whether IMDSv2 is required.

\n ", - "smithy.api#xmlName": "httpTokens" + "smithy.api#documentation": "

The Regions used to narrow down the list of Regions to be scored. Enter the Region code,\n for example, us-east-1.

", + "smithy.api#xmlName": "RegionName" } }, - "HttpPutResponseHopLimit": { - "target": "com.amazonaws.ec2#BoxedInteger", + "InstanceRequirementsWithMetadata": { + "target": "com.amazonaws.ec2#InstanceRequirementsWithMetadataRequest", "traits": { - "aws.protocols#ec2QueryName": "HttpPutResponseHopLimit", - "smithy.api#documentation": "

The maximum number of hops that the metadata token can travel.

", - "smithy.api#xmlName": "httpPutResponseHopLimit" + "smithy.api#documentation": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will\n identify instance types with those attributes.

\n

If you specify InstanceRequirementsWithMetadata, you can't specify\n InstanceTypes.

" } }, - "HttpEndpoint": { - "target": "com.amazonaws.ec2#InstanceMetadataEndpointState", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "HttpEndpoint", - "smithy.api#documentation": "

Indicates whether the IMDS endpoint for an instance is enabled or disabled. When disabled, the instance\n metadata can't be accessed.

", - "smithy.api#xmlName": "httpEndpoint" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "InstanceMetadataTags": { - "target": "com.amazonaws.ec2#InstanceMetadataTagsState", + "MaxResults": { + "target": "com.amazonaws.ec2#SpotPlacementScoresMaxResults", "traits": { - "aws.protocols#ec2QueryName": "InstanceMetadataTags", - "smithy.api#documentation": "

Indicates whether access to instance tags from the instance metadata is enabled or\n disabled. For more information, see Work with\n instance tags using the instance metadata in the\n Amazon EC2 User Guide.

", - "smithy.api#xmlName": "instanceMetadataTags" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" + } + }, + "NextToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } } }, "traits": { - "smithy.api#documentation": "

The default instance metadata service (IMDS) settings that were set at the account\n level in the specified Amazon Web Services\u2028 Region.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceMetadataEndpointState": { - "type": "enum", + "com.amazonaws.ec2#GetSpotPlacementScoresResult": { + "type": "structure", "members": { - "disabled": { - "target": "smithy.api#Unit", + "SpotPlacementScores": { + "target": "com.amazonaws.ec2#SpotPlacementScores", "traits": { - "smithy.api#enumValue": "disabled" + "aws.protocols#ec2QueryName": "SpotPlacementScoreSet", + "smithy.api#documentation": "

The Spot placement score for the top 10 Regions or Availability Zones, scored on a scale\n from 1 to 10. Each score\u2028 reflects how likely it is that each Region or Availability Zone\n will succeed at fulfilling the specified target capacity\u2028 at the time of the Spot\n placement score request. A score of 10 means that your Spot\n capacity request is highly likely to succeed in that Region or Availability Zone.

\n

If you request a Spot placement score for Regions, a high score assumes that your fleet\n request will be configured to use all Availability Zones and the\n capacity-optimized allocation strategy. If you request a Spot placement\n score for Availability Zones, a high score assumes that your fleet request will be\n configured to use a single Availability Zone and the capacity-optimized\n allocation strategy.

\n

Different\u2028 Regions or Availability Zones might return the same score.

\n \n

The Spot placement score serves as a recommendation only. No score guarantees that your\n Spot request will be fully or partially fulfilled.

\n
", + "smithy.api#xmlName": "spotPlacementScoreSet" } }, - "enabled": { - "target": "smithy.api#Unit", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "enabled" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#xmlName": "nextToken" } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceMetadataOptionsRequest": { + "com.amazonaws.ec2#GetSubnetCidrReservations": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetSubnetCidrReservationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetSubnetCidrReservationsResult" + }, + "traits": { + "smithy.api#documentation": "

Gets information about the subnet CIDR reservations.

" + } + }, + "com.amazonaws.ec2#GetSubnetCidrReservationsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#GetSubnetCidrReservationsRequest": { "type": "structure", "members": { - "HttpTokens": { - "target": "com.amazonaws.ec2#HttpTokensState", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#documentation": "

Indicates whether IMDSv2 is required.

\n \n

Default:

\n \n

The default value can also be affected by other combinations of parameters. For more\n information, see Order of precedence for instance metadata options in the\n Amazon EC2 User Guide.

" + "smithy.api#documentation": "

One or more filters.

\n ", + "smithy.api#xmlName": "Filter" } }, - "HttpPutResponseHopLimit": { - "target": "com.amazonaws.ec2#Integer", + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", "traits": { - "smithy.api#documentation": "

The maximum number of hops that the metadata token can travel.

\n

Possible values: Integers from 1 to 64

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the subnet.

", + "smithy.api#required": {} } }, - "HttpEndpoint": { - "target": "com.amazonaws.ec2#InstanceMetadataEndpointState", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Enables or disables the HTTP metadata endpoint on your instances.

\n

If you specify a value of disabled, you cannot access your instance\n metadata.

\n

Default: enabled\n

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "HttpProtocolIpv6": { - "target": "com.amazonaws.ec2#InstanceMetadataProtocolState", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Enables or disables the IPv6 endpoint for the instance metadata service.

\n

Default: disabled\n

" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "InstanceMetadataTags": { - "target": "com.amazonaws.ec2#InstanceMetadataTagsState", + "MaxResults": { + "target": "com.amazonaws.ec2#GetSubnetCidrReservationsMaxResults", "traits": { - "smithy.api#documentation": "

Set to enabled to allow access to instance tags from the instance\n metadata. Set to disabled to turn off access to instance tags from the\n instance metadata. For more information, see Work with\n instance tags using the instance metadata.

\n

Default: disabled\n

" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } } }, "traits": { - "smithy.api#documentation": "

The metadata options for the instance.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceMetadataOptionsResponse": { + "com.amazonaws.ec2#GetSubnetCidrReservationsResult": { "type": "structure", "members": { - "State": { - "target": "com.amazonaws.ec2#InstanceMetadataOptionsState", - "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the metadata option changes.

\n

\n pending - The metadata options are being updated and the instance is not\n ready to process metadata traffic with the new selection.

\n

\n applied - The metadata options have been successfully applied on the\n instance.

", - "smithy.api#xmlName": "state" - } - }, - "HttpTokens": { - "target": "com.amazonaws.ec2#HttpTokensState", - "traits": { - "aws.protocols#ec2QueryName": "HttpTokens", - "smithy.api#documentation": "

Indicates whether IMDSv2 is required.

\n ", - "smithy.api#xmlName": "httpTokens" - } - }, - "HttpPutResponseHopLimit": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "HttpPutResponseHopLimit", - "smithy.api#documentation": "

The maximum number of hops that the metadata token can travel.

\n

Possible values: Integers from 1 to 64\n

", - "smithy.api#xmlName": "httpPutResponseHopLimit" - } - }, - "HttpEndpoint": { - "target": "com.amazonaws.ec2#InstanceMetadataEndpointState", + "SubnetIpv4CidrReservations": { + "target": "com.amazonaws.ec2#SubnetCidrReservationList", "traits": { - "aws.protocols#ec2QueryName": "HttpEndpoint", - "smithy.api#documentation": "

Indicates whether the HTTP metadata endpoint on your instances is enabled or\n disabled.

\n

If the value is disabled, you cannot access your instance\n metadata.

", - "smithy.api#xmlName": "httpEndpoint" + "aws.protocols#ec2QueryName": "SubnetIpv4CidrReservationSet", + "smithy.api#documentation": "

Information about the IPv4 subnet CIDR reservations.

", + "smithy.api#xmlName": "subnetIpv4CidrReservationSet" } }, - "HttpProtocolIpv6": { - "target": "com.amazonaws.ec2#InstanceMetadataProtocolState", + "SubnetIpv6CidrReservations": { + "target": "com.amazonaws.ec2#SubnetCidrReservationList", "traits": { - "aws.protocols#ec2QueryName": "HttpProtocolIpv6", - "smithy.api#documentation": "

Indicates whether the IPv6 endpoint for the instance metadata service is enabled or\n disabled.

\n

Default: disabled\n

", - "smithy.api#xmlName": "httpProtocolIpv6" + "aws.protocols#ec2QueryName": "SubnetIpv6CidrReservationSet", + "smithy.api#documentation": "

Information about the IPv6 subnet CIDR reservations.

", + "smithy.api#xmlName": "subnetIpv6CidrReservationSet" } }, - "InstanceMetadataTags": { - "target": "com.amazonaws.ec2#InstanceMetadataTagsState", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "InstanceMetadataTags", - "smithy.api#documentation": "

Indicates whether access to instance tags from the instance metadata is enabled or\n disabled. For more information, see Work with\n instance tags using the instance metadata.

", - "smithy.api#xmlName": "instanceMetadataTags" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

The metadata options for the instance.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceMetadataOptionsState": { - "type": "enum", - "members": { - "pending": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "pending" - } - }, - "applied": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "applied" - } + "com.amazonaws.ec2#GetTransitGatewayAttachmentPropagations": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetTransitGatewayAttachmentPropagationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetTransitGatewayAttachmentPropagationsResult" + }, + "traits": { + "smithy.api#documentation": "

Lists the route tables to which the specified resource attachment propagates routes.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "TransitGatewayAttachmentPropagations", + "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#InstanceMetadataProtocolState": { - "type": "enum", + "com.amazonaws.ec2#GetTransitGatewayAttachmentPropagationsRequest": { + "type": "structure", "members": { - "disabled": { - "target": "smithy.api#Unit", + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", "traits": { - "smithy.api#enumValue": "disabled" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the attachment.

", + "smithy.api#required": {} } }, - "enabled": { - "target": "smithy.api#Unit", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "smithy.api#enumValue": "enabled" + "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#xmlName": "Filter" } - } - } - }, - "com.amazonaws.ec2#InstanceMetadataTagsState": { - "type": "enum", - "members": { - "disabled": { - "target": "smithy.api#Unit", + }, + "MaxResults": { + "target": "com.amazonaws.ec2#TransitGatewayMaxResults", "traits": { - "smithy.api#enumValue": "disabled" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "enabled": { - "target": "smithy.api#Unit", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "enabled" + "smithy.api#documentation": "

The token for the next page of results.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceMonitoring": { + "com.amazonaws.ec2#GetTransitGatewayAttachmentPropagationsResult": { "type": "structure", "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#String", + "TransitGatewayAttachmentPropagations": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentPropagationList", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#xmlName": "instanceId" + "aws.protocols#ec2QueryName": "TransitGatewayAttachmentPropagations", + "smithy.api#documentation": "

Information about the propagation route tables.

", + "smithy.api#xmlName": "transitGatewayAttachmentPropagations" } }, - "Monitoring": { - "target": "com.amazonaws.ec2#Monitoring", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Monitoring", - "smithy.api#documentation": "

The monitoring for the instance.

", - "smithy.api#xmlName": "monitoring" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Describes the monitoring of an instance.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceMonitoringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceMonitoring", - "traits": { - "smithy.api#xmlName": "item" + "com.amazonaws.ec2#GetTransitGatewayMulticastDomainAssociations": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetTransitGatewayMulticastDomainAssociationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetTransitGatewayMulticastDomainAssociationsResult" + }, + "traits": { + "smithy.api#documentation": "

Gets information about the associations for the transit gateway multicast domain.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "MulticastDomainAssociations", + "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#InstanceNetworkInterface": { + "com.amazonaws.ec2#GetTransitGatewayMulticastDomainAssociationsRequest": { "type": "structure", "members": { - "Association": { - "target": "com.amazonaws.ec2#InstanceNetworkInterfaceAssociation", + "TransitGatewayMulticastDomainId": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainId", "traits": { - "aws.protocols#ec2QueryName": "Association", - "smithy.api#documentation": "

The association information for an Elastic IPv4 associated with the network\n interface.

", - "smithy.api#xmlName": "association" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

", + "smithy.api#required": {} } }, - "Attachment": { - "target": "com.amazonaws.ec2#InstanceNetworkInterfaceAttachment", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "Attachment", - "smithy.api#documentation": "

The network interface attachment.

", - "smithy.api#xmlName": "attachment" + "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#xmlName": "Filter" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "MaxResults": { + "target": "com.amazonaws.ec2#TransitGatewayMaxResults", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

The description.

", - "smithy.api#xmlName": "description" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "Groups": { - "target": "com.amazonaws.ec2#GroupIdentifierList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "GroupSet", - "smithy.api#documentation": "

The security groups.

", - "smithy.api#xmlName": "groupSet" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "Ipv6Addresses": { - "target": "com.amazonaws.ec2#InstanceIpv6AddressList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Ipv6AddressesSet", - "smithy.api#documentation": "

The IPv6 addresses associated with the network interface.

", - "smithy.api#xmlName": "ipv6AddressesSet" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "MacAddress": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetTransitGatewayMulticastDomainAssociationsResult": { + "type": "structure", + "members": { + "MulticastDomainAssociations": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainAssociationList", "traits": { - "aws.protocols#ec2QueryName": "MacAddress", - "smithy.api#documentation": "

The MAC address.

", - "smithy.api#xmlName": "macAddress" + "aws.protocols#ec2QueryName": "MulticastDomainAssociations", + "smithy.api#documentation": "

Information about the multicast domain associations.

", + "smithy.api#xmlName": "multicastDomainAssociations" } }, - "NetworkInterfaceId": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceId", - "smithy.api#documentation": "

The ID of the network interface.

", - "smithy.api#xmlName": "networkInterfaceId" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } - }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetTransitGatewayPolicyTableAssociations": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetTransitGatewayPolicyTableAssociationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetTransitGatewayPolicyTableAssociationsResult" + }, + "traits": { + "smithy.api#documentation": "

Gets a list of the transit gateway policy table associations.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "Associations", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#GetTransitGatewayPolicyTableAssociationsRequest": { + "type": "structure", + "members": { + "TransitGatewayPolicyTableId": { + "target": "com.amazonaws.ec2#TransitGatewayPolicyTableId", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that created the network interface.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway policy table.

", + "smithy.api#required": {} } }, - "PrivateDnsName": { - "target": "com.amazonaws.ec2#String", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "PrivateDnsName", - "smithy.api#documentation": "

The private DNS name.

", - "smithy.api#xmlName": "privateDnsName" + "smithy.api#documentation": "

The filters associated with the transit gateway policy table.

", + "smithy.api#xmlName": "Filter" } }, - "PrivateIpAddress": { - "target": "com.amazonaws.ec2#String", + "MaxResults": { + "target": "com.amazonaws.ec2#TransitGatewayMaxResults", "traits": { - "aws.protocols#ec2QueryName": "PrivateIpAddress", - "smithy.api#documentation": "

The IPv4 address of the network interface within the subnet.

", - "smithy.api#xmlName": "privateIpAddress" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "PrivateIpAddresses": { - "target": "com.amazonaws.ec2#InstancePrivateIpAddressList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PrivateIpAddressesSet", - "smithy.api#documentation": "

The private IPv4 addresses associated with the network interface.

", - "smithy.api#xmlName": "privateIpAddressesSet" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "SourceDestCheck": { + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "SourceDestCheck", - "smithy.api#documentation": "

Indicates whether source/destination checking is enabled.

", - "smithy.api#xmlName": "sourceDestCheck" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "Status": { - "target": "com.amazonaws.ec2#NetworkInterfaceStatus", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetTransitGatewayPolicyTableAssociationsResult": { + "type": "structure", + "members": { + "Associations": { + "target": "com.amazonaws.ec2#TransitGatewayPolicyTableAssociationList", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The status of the network interface.

", - "smithy.api#xmlName": "status" + "aws.protocols#ec2QueryName": "Associations", + "smithy.api#documentation": "

Returns details about the transit gateway policy table association.

", + "smithy.api#xmlName": "associations" } }, - "SubnetId": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#documentation": "

The ID of the subnet.

", - "smithy.api#xmlName": "subnetId" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token for the next page of results.

", + "smithy.api#xmlName": "nextToken" } - }, - "VpcId": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetTransitGatewayPolicyTableEntries": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetTransitGatewayPolicyTableEntriesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetTransitGatewayPolicyTableEntriesResult" + }, + "traits": { + "smithy.api#documentation": "

Returns a list of transit gateway policy table entries.

" + } + }, + "com.amazonaws.ec2#GetTransitGatewayPolicyTableEntriesRequest": { + "type": "structure", + "members": { + "TransitGatewayPolicyTableId": { + "target": "com.amazonaws.ec2#TransitGatewayPolicyTableId", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#xmlName": "vpcId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway policy table.

", + "smithy.api#required": {} } }, - "InterfaceType": { - "target": "com.amazonaws.ec2#String", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "InterfaceType", - "smithy.api#documentation": "

The type of network interface.

\n

Valid values: interface | efa | trunk\n

", - "smithy.api#xmlName": "interfaceType" + "smithy.api#documentation": "

The filters associated with the transit gateway policy table.

", + "smithy.api#xmlName": "Filter" } }, - "Ipv4Prefixes": { - "target": "com.amazonaws.ec2#InstanceIpv4PrefixList", + "MaxResults": { + "target": "com.amazonaws.ec2#TransitGatewayMaxResults", "traits": { - "aws.protocols#ec2QueryName": "Ipv4PrefixSet", - "smithy.api#documentation": "

The IPv4 delegated prefixes that are assigned to the network interface.

", - "smithy.api#xmlName": "ipv4PrefixSet" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "Ipv6Prefixes": { - "target": "com.amazonaws.ec2#InstanceIpv6PrefixList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Ipv6PrefixSet", - "smithy.api#documentation": "

The IPv6 delegated prefixes that are assigned to the network interface.

", - "smithy.api#xmlName": "ipv6PrefixSet" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "ConnectionTrackingConfiguration": { - "target": "com.amazonaws.ec2#ConnectionTrackingSpecificationResponse", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "ConnectionTrackingConfiguration", - "smithy.api#documentation": "

A security group connection tracking configuration that enables you to set the timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

", - "smithy.api#xmlName": "connectionTrackingConfiguration" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Describes a network interface.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceNetworkInterfaceAssociation": { + "com.amazonaws.ec2#GetTransitGatewayPolicyTableEntriesResult": { "type": "structure", "members": { - "CarrierIp": { - "target": "com.amazonaws.ec2#String", + "TransitGatewayPolicyTableEntries": { + "target": "com.amazonaws.ec2#TransitGatewayPolicyTableEntryList", "traits": { - "aws.protocols#ec2QueryName": "CarrierIp", - "smithy.api#documentation": "

The carrier IP address associated with the network interface.

", - "smithy.api#xmlName": "carrierIp" + "aws.protocols#ec2QueryName": "TransitGatewayPolicyTableEntries", + "smithy.api#documentation": "

The entries for the transit gateway policy table.

", + "smithy.api#xmlName": "transitGatewayPolicyTableEntries" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetTransitGatewayPrefixListReferences": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetTransitGatewayPrefixListReferencesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetTransitGatewayPrefixListReferencesResult" + }, + "traits": { + "smithy.api#documentation": "

Gets information about the prefix list references in a specified transit gateway route table.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "TransitGatewayPrefixListReferences", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#GetTransitGatewayPrefixListReferencesRequest": { + "type": "structure", + "members": { + "TransitGatewayRouteTableId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway route table.

", + "smithy.api#required": {} } }, - "CustomerOwnedIp": { - "target": "com.amazonaws.ec2#String", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "CustomerOwnedIp", - "smithy.api#documentation": "

The customer-owned IP address associated with the network interface.

", - "smithy.api#xmlName": "customerOwnedIp" + "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#xmlName": "Filter" } }, - "IpOwnerId": { - "target": "com.amazonaws.ec2#String", + "MaxResults": { + "target": "com.amazonaws.ec2#TransitGatewayMaxResults", "traits": { - "aws.protocols#ec2QueryName": "IpOwnerId", - "smithy.api#documentation": "

The ID of the owner of the Elastic IP address.

", - "smithy.api#xmlName": "ipOwnerId" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "PublicDnsName": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PublicDnsName", - "smithy.api#documentation": "

The public DNS name.

", - "smithy.api#xmlName": "publicDnsName" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "PublicIp": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "PublicIp", - "smithy.api#documentation": "

The public IP address or Elastic IP address bound to the network interface.

", - "smithy.api#xmlName": "publicIp" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Describes association information for an Elastic IP address (IPv4).

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#InstanceNetworkInterfaceAttachment": { + "com.amazonaws.ec2#GetTransitGatewayPrefixListReferencesResult": { "type": "structure", "members": { - "AttachTime": { - "target": "com.amazonaws.ec2#DateTime", + "TransitGatewayPrefixListReferences": { + "target": "com.amazonaws.ec2#TransitGatewayPrefixListReferenceSet", "traits": { - "aws.protocols#ec2QueryName": "AttachTime", - "smithy.api#documentation": "

The time stamp when the attachment initiated.

", - "smithy.api#xmlName": "attachTime" + "aws.protocols#ec2QueryName": "TransitGatewayPrefixListReferenceSet", + "smithy.api#documentation": "

Information about the prefix list references.

", + "smithy.api#xmlName": "transitGatewayPrefixListReferenceSet" } }, - "AttachmentId": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AttachmentId", - "smithy.api#documentation": "

The ID of the network interface attachment.

", - "smithy.api#xmlName": "attachmentId" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetTransitGatewayRouteTableAssociations": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetTransitGatewayRouteTableAssociationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetTransitGatewayRouteTableAssociationsResult" + }, + "traits": { + "smithy.api#documentation": "

Gets information about the associations for the specified transit gateway route table.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "Associations", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#GetTransitGatewayRouteTableAssociationsRequest": { + "type": "structure", + "members": { + "TransitGatewayRouteTableId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway route table.

", + "smithy.api#required": {} } }, - "DeleteOnTermination": { - "target": "com.amazonaws.ec2#Boolean", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "DeleteOnTermination", - "smithy.api#documentation": "

Indicates whether the network interface is deleted when the instance is terminated.

", - "smithy.api#xmlName": "deleteOnTermination" + "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#xmlName": "Filter" } }, - "DeviceIndex": { - "target": "com.amazonaws.ec2#Integer", + "MaxResults": { + "target": "com.amazonaws.ec2#TransitGatewayMaxResults", "traits": { - "aws.protocols#ec2QueryName": "DeviceIndex", - "smithy.api#documentation": "

The index of the device on the instance for the network interface attachment.

", - "smithy.api#xmlName": "deviceIndex" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "Status": { - "target": "com.amazonaws.ec2#AttachmentStatus", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The attachment state.

", - "smithy.api#xmlName": "status" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "NetworkCardIndex": { - "target": "com.amazonaws.ec2#Integer", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "NetworkCardIndex", - "smithy.api#documentation": "

The index of the network card.

", - "smithy.api#xmlName": "networkCardIndex" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetTransitGatewayRouteTableAssociationsResult": { + "type": "structure", + "members": { + "Associations": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableAssociationList", + "traits": { + "aws.protocols#ec2QueryName": "Associations", + "smithy.api#documentation": "

Information about the associations.

", + "smithy.api#xmlName": "associations" } }, - "EnaSrdSpecification": { - "target": "com.amazonaws.ec2#InstanceAttachmentEnaSrdSpecification", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "EnaSrdSpecification", - "smithy.api#documentation": "

Contains the ENA Express settings for the network interface that's attached \n\t\t\tto the instance.

", - "smithy.api#xmlName": "enaSrdSpecification" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Describes a network interface attachment.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceNetworkInterfaceList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceNetworkInterface", - "traits": { - "smithy.api#xmlName": "item" + "com.amazonaws.ec2#GetTransitGatewayRouteTablePropagations": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetTransitGatewayRouteTablePropagationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetTransitGatewayRouteTablePropagationsResult" + }, + "traits": { + "smithy.api#documentation": "

Gets information about the route table propagations for the specified transit gateway route table.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "TransitGatewayRouteTablePropagations", + "pageSize": "MaxResults" } } }, - "com.amazonaws.ec2#InstanceNetworkInterfaceSpecification": { + "com.amazonaws.ec2#GetTransitGatewayRouteTablePropagationsRequest": { "type": "structure", "members": { - "AssociatePublicIpAddress": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "AssociatePublicIpAddress", - "smithy.api#documentation": "

Indicates whether to assign a public IPv4 address to an instance you launch in a VPC. The\n public IP address can only be assigned to a network interface for eth0, and can only be\n assigned to a new network interface, not an existing one. You cannot specify more than one\n network interface in the request. If launching into a default subnet, the default value is\n true.

\n

Amazon Web Services charges for all public IPv4 addresses, including public IPv4 addresses \nassociated with running instances and Elastic IP addresses. For more information, see the Public IPv4 Address tab on the Amazon VPC pricing page.

", - "smithy.api#xmlName": "associatePublicIpAddress" - } - }, - "DeleteOnTermination": { - "target": "com.amazonaws.ec2#Boolean", + "TransitGatewayRouteTableId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", "traits": { - "aws.protocols#ec2QueryName": "DeleteOnTermination", - "smithy.api#documentation": "

If set to true, the interface is deleted when the instance is terminated. You can\n specify true only if creating a new network interface when launching an\n instance.

", - "smithy.api#xmlName": "deleteOnTermination" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway route table.

", + "smithy.api#required": {} } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "Filters": { + "target": "com.amazonaws.ec2#FilterList", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

The description of the network interface. Applies only if creating a network interface when launching an instance.

", - "smithy.api#xmlName": "description" + "smithy.api#documentation": "

One or more filters. The possible values are:

\n ", + "smithy.api#xmlName": "Filter" } }, - "DeviceIndex": { - "target": "com.amazonaws.ec2#Integer", + "MaxResults": { + "target": "com.amazonaws.ec2#TransitGatewayMaxResults", "traits": { - "aws.protocols#ec2QueryName": "DeviceIndex", - "smithy.api#documentation": "

The position of the network interface in the attachment order. \n A primary network interface has a device index of 0.

\n

If you specify a network interface when launching an instance, \n you must specify the device index.

", - "smithy.api#xmlName": "deviceIndex" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "Groups": { - "target": "com.amazonaws.ec2#SecurityGroupIdStringList", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.

", - "smithy.api#xmlName": "SecurityGroupId" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "Ipv6AddressCount": { - "target": "com.amazonaws.ec2#Integer", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Ipv6AddressCount", - "smithy.api#documentation": "

A number of IPv6 addresses to assign to the network interface. Amazon EC2 chooses\n the IPv6 addresses from the range of the subnet. You cannot specify this option and the\n option to assign specific IPv6 addresses in the same request. You can specify this\n option if you've specified a minimum number of instances to launch.

", - "smithy.api#xmlName": "ipv6AddressCount" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "Ipv6Addresses": { - "target": "com.amazonaws.ec2#InstanceIpv6AddressList", - "traits": { - "aws.protocols#ec2QueryName": "Ipv6Addresses", - "smithy.api#documentation": "

The IPv6 addresses to assign to the network interface. You cannot specify\n this option and the option to assign a number of IPv6 addresses in the same request. You\n cannot specify this option if you've specified a minimum number of instances to\n launch.

", - "smithy.api#xmlName": "ipv6AddressesSet" - } - }, - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#NetworkInterfaceId", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetTransitGatewayRouteTablePropagationsResult": { + "type": "structure", + "members": { + "TransitGatewayRouteTablePropagations": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTablePropagationList", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceId", - "smithy.api#documentation": "

The ID of the network interface.

\n

If you are creating a Spot Fleet, omit this parameter because you can’t specify a network interface ID in a launch specification.

", - "smithy.api#xmlName": "networkInterfaceId" + "aws.protocols#ec2QueryName": "TransitGatewayRouteTablePropagations", + "smithy.api#documentation": "

Information about the route table propagations.

", + "smithy.api#xmlName": "transitGatewayRouteTablePropagations" } }, - "PrivateIpAddress": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PrivateIpAddress", - "smithy.api#documentation": "

The private IPv4 address of the network interface. Applies only if creating a network interface when launching an instance. You cannot specify this option if you're launching\n \tmore than one instance in a RunInstances request.

", - "smithy.api#xmlName": "privateIpAddress" - } - }, - "PrivateIpAddresses": { - "target": "com.amazonaws.ec2#PrivateIpAddressSpecificationList", - "traits": { - "aws.protocols#ec2QueryName": "PrivateIpAddresses", - "smithy.api#documentation": "

The private IPv4 addresses to assign to the network interface. Only one private IPv4 address can be designated as primary. You cannot specify this option if you're\n \tlaunching more than one instance in a RunInstances request.

", - "smithy.api#xmlName": "privateIpAddressesSet" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } - }, - "SecondaryPrivateIpAddressCount": { - "target": "com.amazonaws.ec2#Integer", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetVerifiedAccessEndpointPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetVerifiedAccessEndpointPolicyRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetVerifiedAccessEndpointPolicyResult" + }, + "traits": { + "smithy.api#documentation": "

Get the Verified Access policy associated with the endpoint.

" + } + }, + "com.amazonaws.ec2#GetVerifiedAccessEndpointPolicyRequest": { + "type": "structure", + "members": { + "VerifiedAccessEndpointId": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointId", "traits": { - "aws.protocols#ec2QueryName": "SecondaryPrivateIpAddressCount", - "smithy.api#documentation": "

The number of secondary private IPv4 addresses. You can't specify this option and specify more than one private IP address using the private IP addresses option. You cannot specify this option if you're\n \tlaunching more than one instance in a RunInstances request.

", - "smithy.api#xmlName": "secondaryPrivateIpAddressCount" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Verified Access endpoint.

", + "smithy.api#required": {} } }, - "SubnetId": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#documentation": "

The ID of the subnet associated with the network interface. Applies only if creating a network interface when launching an instance.

", - "smithy.api#xmlName": "subnetId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "AssociateCarrierIpAddress": { + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetVerifiedAccessEndpointPolicyResult": { + "type": "structure", + "members": { + "PolicyEnabled": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Indicates whether to assign a carrier IP address to the network interface.

\n

You can only assign a carrier IP address to a network interface that is in a subnet in\n a Wavelength Zone. For more information about carrier IP addresses, see Carrier IP address in the Amazon Web Services Wavelength Developer\n Guide.

" + "aws.protocols#ec2QueryName": "PolicyEnabled", + "smithy.api#documentation": "

The status of the Verified Access policy.

", + "smithy.api#xmlName": "policyEnabled" } }, - "InterfaceType": { + "PolicyDocument": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The type of network interface.

\n

Valid values: interface | efa\n

" - } - }, - "NetworkCardIndex": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

The index of the network card. Some instance types support multiple network cards. \n The primary network interface must be assigned to network card index 0. \n The default is network card index 0.

\n

If you are using RequestSpotInstances to create Spot Instances, omit this parameter because\n you can’t specify the network card index when using this API. To specify the network\n card index, use RunInstances.

" - } - }, - "Ipv4Prefixes": { - "target": "com.amazonaws.ec2#Ipv4PrefixList", - "traits": { - "smithy.api#documentation": "

The IPv4 delegated prefixes to be assigned to the network interface. You cannot \n use this option if you use the Ipv4PrefixCount option.

", - "smithy.api#xmlName": "Ipv4Prefix" + "aws.protocols#ec2QueryName": "PolicyDocument", + "smithy.api#documentation": "

The Verified Access policy document.

", + "smithy.api#xmlName": "policyDocument" } - }, - "Ipv4PrefixCount": { - "target": "com.amazonaws.ec2#Integer", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetVerifiedAccessEndpointTargets": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetVerifiedAccessEndpointTargetsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetVerifiedAccessEndpointTargetsResult" + }, + "traits": { + "smithy.api#documentation": "

Gets the targets for the specified network CIDR endpoint for Verified Access.

" + } + }, + "com.amazonaws.ec2#GetVerifiedAccessEndpointTargetsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#GetVerifiedAccessEndpointTargetsRequest": { + "type": "structure", + "members": { + "VerifiedAccessEndpointId": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointId", "traits": { - "smithy.api#documentation": "

The number of IPv4 delegated prefixes to be automatically assigned to the network interface. \n You cannot use this option if you use the Ipv4Prefix option.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the network CIDR endpoint.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "VerifiedAccessEndpointId" } }, - "Ipv6Prefixes": { - "target": "com.amazonaws.ec2#Ipv6PrefixList", + "MaxResults": { + "target": "com.amazonaws.ec2#GetVerifiedAccessEndpointTargetsMaxResults", "traits": { - "smithy.api#documentation": "

The IPv6 delegated prefixes to be assigned to the network interface. You cannot \n use this option if you use the Ipv6PrefixCount option.

", - "smithy.api#xmlName": "Ipv6Prefix" + "smithy.api#documentation": "

The maximum number of results to return with a single call.\n\tTo retrieve the remaining results, make another call with the returned nextToken value.

" } }, - "Ipv6PrefixCount": { - "target": "com.amazonaws.ec2#Integer", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#documentation": "

The number of IPv6 delegated prefixes to be automatically assigned to the network interface. \n You cannot use this option if you use the Ipv6Prefix option.

" + "smithy.api#documentation": "

The token for the next page of results.

" } }, - "PrimaryIpv6": { + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The primary IPv6 address of the network interface. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. For more information about primary IPv6 addresses, see RunInstances.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "EnaSrdSpecification": { - "target": "com.amazonaws.ec2#EnaSrdSpecificationRequest", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetVerifiedAccessEndpointTargetsResult": { + "type": "structure", + "members": { + "VerifiedAccessEndpointTargets": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointTargetList", "traits": { - "smithy.api#documentation": "

Specifies the ENA Express settings for the network interface that's attached to \n\t\t\tthe instance.

" + "aws.protocols#ec2QueryName": "VerifiedAccessEndpointTargetSet", + "smithy.api#documentation": "

The Verified Access targets.

", + "smithy.api#xmlName": "verifiedAccessEndpointTargetSet" } }, - "ConnectionTrackingSpecification": { - "target": "com.amazonaws.ec2#ConnectionTrackingSpecificationRequest", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "smithy.api#documentation": "

A security group connection tracking specification that enables you to set the timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

Describes a network interface.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceNetworkInterfaceSpecificationList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceNetworkInterfaceSpecification", - "traits": { - "smithy.api#xmlName": "item" - } + "com.amazonaws.ec2#GetVerifiedAccessGroupPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetVerifiedAccessGroupPolicyRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetVerifiedAccessGroupPolicyResult" + }, + "traits": { + "smithy.api#documentation": "

Shows the contents of the Verified Access policy associated with the group.

" } }, - "com.amazonaws.ec2#InstancePrivateIpAddress": { + "com.amazonaws.ec2#GetVerifiedAccessGroupPolicyRequest": { "type": "structure", "members": { - "Association": { - "target": "com.amazonaws.ec2#InstanceNetworkInterfaceAssociation", + "VerifiedAccessGroupId": { + "target": "com.amazonaws.ec2#VerifiedAccessGroupId", "traits": { - "aws.protocols#ec2QueryName": "Association", - "smithy.api#documentation": "

The association information for an Elastic IP address for the network interface.

", - "smithy.api#xmlName": "association" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Verified Access group.

", + "smithy.api#required": {} } }, - "Primary": { + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Primary", - "smithy.api#documentation": "

Indicates whether this IPv4 address is the primary private IP address of the network interface.

", - "smithy.api#xmlName": "primary" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "PrivateDnsName": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetVerifiedAccessGroupPolicyResult": { + "type": "structure", + "members": { + "PolicyEnabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "PrivateDnsName", - "smithy.api#documentation": "

The private IPv4 DNS name.

", - "smithy.api#xmlName": "privateDnsName" + "aws.protocols#ec2QueryName": "PolicyEnabled", + "smithy.api#documentation": "

The status of the Verified Access policy.

", + "smithy.api#xmlName": "policyEnabled" } }, - "PrivateIpAddress": { + "PolicyDocument": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PrivateIpAddress", - "smithy.api#documentation": "

The private IPv4 address of the network interface.

", - "smithy.api#xmlName": "privateIpAddress" + "aws.protocols#ec2QueryName": "PolicyDocument", + "smithy.api#documentation": "

The Verified Access policy document.

", + "smithy.api#xmlName": "policyDocument" } } }, "traits": { - "smithy.api#documentation": "

Describes a private IPv4 address.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstancePrivateIpAddressList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstancePrivateIpAddress", - "traits": { - "smithy.api#xmlName": "item" - } + "com.amazonaws.ec2#GetVpnConnectionDeviceSampleConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetVpnConnectionDeviceSampleConfigurationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetVpnConnectionDeviceSampleConfigurationResult" + }, + "traits": { + "smithy.api#documentation": "

Download an Amazon Web Services-provided sample configuration file to be used with the customer\n gateway device specified for your Site-to-Site VPN connection.

" } }, - "com.amazonaws.ec2#InstanceRequirements": { + "com.amazonaws.ec2#GetVpnConnectionDeviceSampleConfigurationRequest": { "type": "structure", "members": { - "VCpuCount": { - "target": "com.amazonaws.ec2#VCpuCountRange", + "VpnConnectionId": { + "target": "com.amazonaws.ec2#VpnConnectionId", "traits": { - "aws.protocols#ec2QueryName": "VCpuCount", - "smithy.api#documentation": "

The minimum and maximum number of vCPUs.

", - "smithy.api#xmlName": "vCpuCount" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The VpnConnectionId specifies the Site-to-Site VPN connection used for the sample\n configuration.

", + "smithy.api#required": {} } }, - "MemoryMiB": { - "target": "com.amazonaws.ec2#MemoryMiB", + "VpnConnectionDeviceTypeId": { + "target": "com.amazonaws.ec2#VpnConnectionDeviceTypeId", "traits": { - "aws.protocols#ec2QueryName": "MemoryMiB", - "smithy.api#documentation": "

The minimum and maximum amount of memory, in MiB.

", - "smithy.api#xmlName": "memoryMiB" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Device identifier provided by the GetVpnConnectionDeviceTypes API.

", + "smithy.api#required": {} } }, - "CpuManufacturers": { - "target": "com.amazonaws.ec2#CpuManufacturerSet", + "InternetKeyExchangeVersion": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "CpuManufacturerSet", - "smithy.api#documentation": "

The CPU manufacturers to include.

\n \n \n

Don't confuse the CPU manufacturer with the CPU architecture. Instances will \n be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you \n specify in your launch template.

\n
\n

Default: Any manufacturer

", - "smithy.api#xmlName": "cpuManufacturerSet" + "smithy.api#documentation": "

The IKE version to be used in the sample configuration file for your customer gateway\n device. You can specify one of the following versions: ikev1 or\n ikev2.

" } }, - "MemoryGiBPerVCpu": { - "target": "com.amazonaws.ec2#MemoryGiBPerVCpu", + "SampleType": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "MemoryGiBPerVCpu", - "smithy.api#documentation": "

The minimum and maximum amount of memory per vCPU, in GiB.

\n

Default: No minimum or maximum limits

", - "smithy.api#xmlName": "memoryGiBPerVCpu" + "smithy.api#documentation": "

The type of sample configuration to generate. Valid values are \"compatibility\" (includes IKEv1) or \"recommended\" (throws UnsupportedOperationException for IKEv1).

" } }, - "ExcludedInstanceTypes": { - "target": "com.amazonaws.ec2#ExcludedInstanceTypeSet", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "ExcludedInstanceTypeSet", - "smithy.api#documentation": "

The instance types to exclude.

\n

You can use strings with one or more wild cards, represented by\n an asterisk (*), to exclude an instance type, size, or generation. The\n following are examples: m5.8xlarge, c5*.*, m5a.*,\n r*, *3*.

\n

For example, if you specify c5*,Amazon EC2 will exclude the entire C5 instance\n family, which includes all C5a and C5n instance types. If you specify\n m5a.*, Amazon EC2 will exclude all the M5a instance types, but not the M5n\n instance types.

\n \n

If you specify ExcludedInstanceTypes, you can't specify AllowedInstanceTypes.

\n
\n

Default: No excluded instance types

", - "smithy.api#xmlName": "excludedInstanceTypeSet" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" } - }, - "InstanceGenerations": { - "target": "com.amazonaws.ec2#InstanceGenerationSet", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetVpnConnectionDeviceSampleConfigurationResult": { + "type": "structure", + "members": { + "VpnConnectionDeviceSampleConfiguration": { + "target": "com.amazonaws.ec2#VpnConnectionDeviceSampleConfiguration", "traits": { - "aws.protocols#ec2QueryName": "InstanceGenerationSet", - "smithy.api#documentation": "

Indicates whether current or previous generation instance types are included. The\n current generation instance types are recommended for use. Current generation instance types are\n typically the latest two to three generations in each instance family. For more\n information, see Instance types in the\n Amazon EC2 User Guide.

\n

For current generation instance types, specify current.

\n

For previous generation instance types, specify previous.

\n

Default: Current and previous generation instance types

", - "smithy.api#xmlName": "instanceGenerationSet" + "aws.protocols#ec2QueryName": "VpnConnectionDeviceSampleConfiguration", + "smithy.api#documentation": "

Sample configuration file for the specified customer gateway device.

", + "smithy.api#xmlName": "vpnConnectionDeviceSampleConfiguration" } - }, - "SpotMaxPricePercentageOverLowestPrice": { - "target": "com.amazonaws.ec2#Integer", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetVpnConnectionDeviceTypes": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetVpnConnectionDeviceTypesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetVpnConnectionDeviceTypesResult" + }, + "traits": { + "smithy.api#documentation": "

Obtain a list of customer gateway devices for which sample configuration\n files can be provided. The request has no additional parameters. You can also see the\n list of device types with sample configuration files available under Your customer gateway\n device in the Amazon Web Services Site-to-Site VPN User Guide.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "VpnConnectionDeviceTypes", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#GetVpnConnectionDeviceTypesRequest": { + "type": "structure", + "members": { + "MaxResults": { + "target": "com.amazonaws.ec2#GVCDMaxResults", "traits": { - "aws.protocols#ec2QueryName": "SpotMaxPricePercentageOverLowestPrice", - "smithy.api#documentation": "

[Price protection] The price protection threshold for Spot Instances, as a percentage higher than\n an identified Spot price. The identified Spot price is the Spot price of the lowest priced\n current generation C, M, or R instance type with your specified attributes. If no current\n generation C, M, or R instance type matches your attributes, then the identified Spot price\n is from the lowest priced current generation instance types, and failing that, from the\n lowest priced previous generation instance types that match your attributes. When Amazon EC2\n selects instance types with your attributes, it will exclude instance types whose Spot\n price exceeds your specified threshold.

\n

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

\n

If you set TargetCapacityUnitType to vcpu or\n memory-mib, the price protection threshold is applied based on the per-vCPU\n or per-memory price instead of the per-instance price.

\n

This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements.

\n \n

Only one of SpotMaxPricePercentageOverLowestPrice or\n MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you\n don't specify either, Amazon EC2 will automatically apply optimal price protection to\n consistently select from a wide range of instance types. To indicate no price protection\n threshold for Spot Instances, meaning you want to consider all instance types that match your\n attributes, include one of these parameters and specify a high value, such as\n 999999.

\n
\n

Default: 100\n

", - "smithy.api#xmlName": "spotMaxPricePercentageOverLowestPrice" + "smithy.api#documentation": "

The maximum number of results returned by GetVpnConnectionDeviceTypes in\n paginated output. When this parameter is used, GetVpnConnectionDeviceTypes\n only returns MaxResults results in a single page along with a\n NextToken response element. The remaining results of the initial\n request can be seen by sending another GetVpnConnectionDeviceTypes request\n with the returned NextToken value. This value can be between 200 and 1000.\n If this parameter is not used, then GetVpnConnectionDeviceTypes returns all\n results.

" } }, - "OnDemandMaxPricePercentageOverLowestPrice": { - "target": "com.amazonaws.ec2#Integer", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "OnDemandMaxPricePercentageOverLowestPrice", - "smithy.api#documentation": "

[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher\n than an identified On-Demand price. The identified On-Demand price is the price of the\n lowest priced current generation C, M, or R instance type with your specified attributes.\n When Amazon EC2 selects instance types with your attributes, it will exclude instance types\n whose price exceeds your specified threshold.

\n

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

\n

To turn off price protection, specify a high value, such as 999999.

\n

This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements.

\n \n

If you set TargetCapacityUnitType to vcpu or\n memory-mib, the price protection threshold is applied based on the\n per-vCPU or per-memory price instead of the per-instance price.

\n
\n

Default: 20\n

", - "smithy.api#xmlName": "onDemandMaxPricePercentageOverLowestPrice" + "smithy.api#documentation": "

The NextToken value returned from a previous paginated\n GetVpnConnectionDeviceTypes request where MaxResults was\n used and the results exceeded the value of that parameter. Pagination continues from the\n end of the previous results that returned the NextToken value. This value\n is null when there are no more results to return.

" } }, - "BareMetal": { - "target": "com.amazonaws.ec2#BareMetal", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "BareMetal", - "smithy.api#documentation": "

Indicates whether bare metal instance types must be included, excluded, or required.

\n \n

Default: excluded\n

", - "smithy.api#xmlName": "bareMetal" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" } - }, - "BurstablePerformance": { - "target": "com.amazonaws.ec2#BurstablePerformance", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetVpnConnectionDeviceTypesResult": { + "type": "structure", + "members": { + "VpnConnectionDeviceTypes": { + "target": "com.amazonaws.ec2#VpnConnectionDeviceTypeList", "traits": { - "aws.protocols#ec2QueryName": "BurstablePerformance", - "smithy.api#documentation": "

Indicates whether burstable performance T instance types are included, excluded, or required. For more information, see \n Burstable performance instances.

\n \n

Default: excluded\n

", - "smithy.api#xmlName": "burstablePerformance" + "aws.protocols#ec2QueryName": "VpnConnectionDeviceTypeSet", + "smithy.api#documentation": "

List of customer gateway devices that have a sample configuration file available for\n use.

", + "smithy.api#xmlName": "vpnConnectionDeviceTypeSet" } }, - "RequireHibernateSupport": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#NextToken", "traits": { - "aws.protocols#ec2QueryName": "RequireHibernateSupport", - "smithy.api#documentation": "

Indicates whether instance types must support hibernation for On-Demand\n Instances.

\n

This parameter is not supported for GetSpotPlacementScores.

\n

Default: false\n

", - "smithy.api#xmlName": "requireHibernateSupport" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The NextToken value to include in a future\n GetVpnConnectionDeviceTypes request. When the results of a\n GetVpnConnectionDeviceTypes request exceed MaxResults,\n this value can be used to retrieve the next page of results. This value is null when\n there are no more results to return.

", + "smithy.api#xmlName": "nextToken" } - }, - "NetworkInterfaceCount": { - "target": "com.amazonaws.ec2#NetworkInterfaceCount", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#GetVpnTunnelReplacementStatus": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#GetVpnTunnelReplacementStatusRequest" + }, + "output": { + "target": "com.amazonaws.ec2#GetVpnTunnelReplacementStatusResult" + }, + "traits": { + "smithy.api#documentation": "

Get details of available tunnel endpoint maintenance.

" + } + }, + "com.amazonaws.ec2#GetVpnTunnelReplacementStatusRequest": { + "type": "structure", + "members": { + "VpnConnectionId": { + "target": "com.amazonaws.ec2#VpnConnectionId", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceCount", - "smithy.api#documentation": "

The minimum and maximum number of network interfaces.

\n

Default: No minimum or maximum limits

", - "smithy.api#xmlName": "networkInterfaceCount" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Site-to-Site VPN connection.

", + "smithy.api#required": {} } }, - "LocalStorage": { - "target": "com.amazonaws.ec2#LocalStorage", + "VpnTunnelOutsideIpAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "LocalStorage", - "smithy.api#documentation": "

Indicates whether instance types with instance store volumes are included, excluded, or required. For more information,\n Amazon\n EC2 instance store in the Amazon EC2 User Guide.

\n \n

Default: included\n

", - "smithy.api#xmlName": "localStorage" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The external IP address of the VPN tunnel.

", + "smithy.api#required": {} } }, - "LocalStorageTypes": { - "target": "com.amazonaws.ec2#LocalStorageTypeSet", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "LocalStorageTypeSet", - "smithy.api#documentation": "

The type of local storage that is required.

\n \n

Default: hdd and ssd\n

", - "smithy.api#xmlName": "localStorageTypeSet" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } - }, - "TotalLocalStorageGB": { - "target": "com.amazonaws.ec2#TotalLocalStorageGB", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#GetVpnTunnelReplacementStatusResult": { + "type": "structure", + "members": { + "VpnConnectionId": { + "target": "com.amazonaws.ec2#VpnConnectionId", "traits": { - "aws.protocols#ec2QueryName": "TotalLocalStorageGB", - "smithy.api#documentation": "

The minimum and maximum amount of total local storage, in GB.

\n

Default: No minimum or maximum limits

", - "smithy.api#xmlName": "totalLocalStorageGB" + "aws.protocols#ec2QueryName": "VpnConnectionId", + "smithy.api#documentation": "

The ID of the Site-to-Site VPN connection.

", + "smithy.api#xmlName": "vpnConnectionId" } }, - "BaselineEbsBandwidthMbps": { - "target": "com.amazonaws.ec2#BaselineEbsBandwidthMbps", + "TransitGatewayId": { + "target": "com.amazonaws.ec2#TransitGatewayId", "traits": { - "aws.protocols#ec2QueryName": "BaselineEbsBandwidthMbps", - "smithy.api#documentation": "

The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see\n Amazon\n EBS–optimized instances in the Amazon EC2 User Guide.

\n

Default: No minimum or maximum limits

", - "smithy.api#xmlName": "baselineEbsBandwidthMbps" + "aws.protocols#ec2QueryName": "TransitGatewayId", + "smithy.api#documentation": "

The ID of the transit gateway associated with the VPN connection.

", + "smithy.api#xmlName": "transitGatewayId" } }, - "AcceleratorTypes": { - "target": "com.amazonaws.ec2#AcceleratorTypeSet", + "CustomerGatewayId": { + "target": "com.amazonaws.ec2#CustomerGatewayId", "traits": { - "aws.protocols#ec2QueryName": "AcceleratorTypeSet", - "smithy.api#documentation": "

The accelerator types that must be on the instance type.

\n \n

Default: Any accelerator type

", - "smithy.api#xmlName": "acceleratorTypeSet" + "aws.protocols#ec2QueryName": "CustomerGatewayId", + "smithy.api#documentation": "

The ID of the customer gateway.

", + "smithy.api#xmlName": "customerGatewayId" } }, - "AcceleratorCount": { - "target": "com.amazonaws.ec2#AcceleratorCount", + "VpnGatewayId": { + "target": "com.amazonaws.ec2#VpnGatewayId", "traits": { - "aws.protocols#ec2QueryName": "AcceleratorCount", - "smithy.api#documentation": "

The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web Services Inferentia chips) on\n an instance.

\n

To exclude accelerator-enabled instance types, set Max to 0.

\n

Default: No minimum or maximum limits

", - "smithy.api#xmlName": "acceleratorCount" + "aws.protocols#ec2QueryName": "VpnGatewayId", + "smithy.api#documentation": "

The ID of the virtual private gateway.

", + "smithy.api#xmlName": "vpnGatewayId" } }, - "AcceleratorManufacturers": { - "target": "com.amazonaws.ec2#AcceleratorManufacturerSet", + "VpnTunnelOutsideIpAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AcceleratorManufacturerSet", - "smithy.api#documentation": "

Indicates whether instance types must have accelerators by specific manufacturers.

\n \n

Default: Any manufacturer

", - "smithy.api#xmlName": "acceleratorManufacturerSet" + "aws.protocols#ec2QueryName": "VpnTunnelOutsideIpAddress", + "smithy.api#documentation": "

The external IP address of the VPN tunnel.

", + "smithy.api#xmlName": "vpnTunnelOutsideIpAddress" } }, - "AcceleratorNames": { - "target": "com.amazonaws.ec2#AcceleratorNameSet", - "traits": { - "aws.protocols#ec2QueryName": "AcceleratorNameSet", - "smithy.api#documentation": "

The accelerators that must be on the instance type.

\n \n

Default: Any accelerator

", - "smithy.api#xmlName": "acceleratorNameSet" - } - }, - "AcceleratorTotalMemoryMiB": { - "target": "com.amazonaws.ec2#AcceleratorTotalMemoryMiB", - "traits": { - "aws.protocols#ec2QueryName": "AcceleratorTotalMemoryMiB", - "smithy.api#documentation": "

The minimum and maximum amount of total accelerator memory, in MiB.

\n

Default: No minimum or maximum limits

", - "smithy.api#xmlName": "acceleratorTotalMemoryMiB" - } - }, - "NetworkBandwidthGbps": { - "target": "com.amazonaws.ec2#NetworkBandwidthGbps", - "traits": { - "aws.protocols#ec2QueryName": "NetworkBandwidthGbps", - "smithy.api#documentation": "

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

\n

Default: No minimum or maximum limits

", - "smithy.api#xmlName": "networkBandwidthGbps" - } - }, - "AllowedInstanceTypes": { - "target": "com.amazonaws.ec2#AllowedInstanceTypeSet", - "traits": { - "aws.protocols#ec2QueryName": "AllowedInstanceTypeSet", - "smithy.api#documentation": "

The instance types to apply your specified attributes against. All other instance types \n are ignored, even if they match your specified attributes.

\n

You can use strings with one or more wild cards, represented by\n an asterisk (*), to allow an instance type, size, or generation. The\n following are examples: m5.8xlarge, c5*.*, m5a.*,\n r*, *3*.

\n

For example, if you specify c5*,Amazon EC2 will allow the entire C5 instance\n family, which includes all C5a and C5n instance types. If you specify\n m5a.*, Amazon EC2 will allow all the M5a instance types, but not the M5n\n instance types.

\n \n

If you specify AllowedInstanceTypes, you can't specify ExcludedInstanceTypes.

\n
\n

Default: All instance types

", - "smithy.api#xmlName": "allowedInstanceTypeSet" - } - }, - "MaxSpotPriceAsPercentageOfOptimalOnDemandPrice": { - "target": "com.amazonaws.ec2#Integer", + "MaintenanceDetails": { + "target": "com.amazonaws.ec2#MaintenanceDetails", "traits": { - "aws.protocols#ec2QueryName": "MaxSpotPriceAsPercentageOfOptimalOnDemandPrice", - "smithy.api#documentation": "

[Price protection] The price protection threshold for Spot Instances, as a percentage of an\n identified On-Demand price. The identified On-Demand price is the price of the lowest\n priced current generation C, M, or R instance type with your specified attributes. If no\n current generation C, M, or R instance type matches your attributes, then the identified\n price is from the lowest priced current generation instance types, and failing that, from\n the lowest priced previous generation instance types that match your attributes. When Amazon EC2\n selects instance types with your attributes, it will exclude instance types whose price\n exceeds your specified threshold.

\n

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

\n

If you set DesiredCapacityType to vcpu or\n memory-mib, the price protection threshold is based on the per vCPU or per\n memory price instead of the per instance price.

\n \n

Only one of SpotMaxPricePercentageOverLowestPrice or\n MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you\n don't specify either, Amazon EC2 will automatically apply optimal price protection to\n consistently select from a wide range of instance types. To indicate no price protection\n threshold for Spot Instances, meaning you want to consider all instance types that match your\n attributes, include one of these parameters and specify a high value, such as\n 999999.

\n
", - "smithy.api#xmlName": "maxSpotPriceAsPercentageOfOptimalOnDemandPrice" + "aws.protocols#ec2QueryName": "MaintenanceDetails", + "smithy.api#documentation": "

Get details of pending tunnel endpoint maintenance.

", + "smithy.api#xmlName": "maintenanceDetails" } } }, "traits": { - "smithy.api#documentation": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will\n identify instance types with these attributes.

\n

You must specify VCpuCount and MemoryMiB. All other attributes\n are optional. Any unspecified optional attribute is set to its default.

\n

When you specify multiple attributes, you get instance types that satisfy all of the\n specified attributes. If you specify multiple values for an attribute, you get instance\n types that satisfy any of the specified values.

\n

To limit the list of instance types from which Amazon EC2 can identify matching instance types, \n you can use one of the following parameters, but not both in the same request:

\n \n \n

If you specify InstanceRequirements, you can't specify\n InstanceType.

\n

Attribute-based instance type selection is only supported when using Auto Scaling\n groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in\n the launch instance\n wizard or with the RunInstances API, you\n can't specify InstanceRequirements.

\n
\n

For more information, see Create a mixed instances group using attribute-based instance type selection in\n the Amazon EC2 Auto Scaling User Guide, and also Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot\n placement score in the Amazon EC2 User Guide.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#InstanceRequirementsRequest": { + "com.amazonaws.ec2#GpuDeviceCount": { + "type": "integer" + }, + "com.amazonaws.ec2#GpuDeviceInfo": { "type": "structure", "members": { - "VCpuCount": { - "target": "com.amazonaws.ec2#VCpuCountRangeRequest", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The minimum and maximum number of vCPUs.

", - "smithy.api#required": {} - } - }, - "MemoryMiB": { - "target": "com.amazonaws.ec2#MemoryMiBRequest", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The minimum and maximum amount of memory, in MiB.

", - "smithy.api#required": {} - } - }, - "CpuManufacturers": { - "target": "com.amazonaws.ec2#CpuManufacturerSet", - "traits": { - "smithy.api#documentation": "

The CPU manufacturers to include.

\n \n \n

Don't confuse the CPU manufacturer with the CPU architecture. Instances will \n be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you \n specify in your launch template.

\n
\n

Default: Any manufacturer

", - "smithy.api#xmlName": "CpuManufacturer" - } - }, - "MemoryGiBPerVCpu": { - "target": "com.amazonaws.ec2#MemoryGiBPerVCpuRequest", - "traits": { - "smithy.api#documentation": "

The minimum and maximum amount of memory per vCPU, in GiB.

\n

Default: No minimum or maximum limits

" - } - }, - "ExcludedInstanceTypes": { - "target": "com.amazonaws.ec2#ExcludedInstanceTypeSet", - "traits": { - "smithy.api#documentation": "

The instance types to exclude.

\n

You can use strings with one or more wild cards, represented by\n an asterisk (*), to exclude an instance family, type, size, or generation. The\n following are examples: m5.8xlarge, c5*.*, m5a.*,\n r*, *3*.

\n

For example, if you specify c5*,Amazon EC2 will exclude the entire C5 instance\n family, which includes all C5a and C5n instance types. If you specify\n m5a.*, Amazon EC2 will exclude all the M5a instance types, but not the M5n\n instance types.

\n \n

If you specify ExcludedInstanceTypes, you can't specify AllowedInstanceTypes.

\n
\n

Default: No excluded instance types

", - "smithy.api#xmlName": "ExcludedInstanceType" - } - }, - "InstanceGenerations": { - "target": "com.amazonaws.ec2#InstanceGenerationSet", - "traits": { - "smithy.api#documentation": "

Indicates whether current or previous generation instance types are included. The\n current generation instance types are recommended for use. Current generation instance types are\n typically the latest two to three generations in each instance family. For more\n information, see Instance types in the\n Amazon EC2 User Guide.

\n

For current generation instance types, specify current.

\n

For previous generation instance types, specify previous.

\n

Default: Current and previous generation instance types

", - "smithy.api#xmlName": "InstanceGeneration" - } - }, - "SpotMaxPricePercentageOverLowestPrice": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

[Price protection] The price protection threshold for Spot Instances, as a percentage higher than\n an identified Spot price. The identified Spot price is the Spot price of the lowest priced\n current generation C, M, or R instance type with your specified attributes. If no current\n generation C, M, or R instance type matches your attributes, then the identified Spot price\n is from the lowest priced current generation instance types, and failing that, from the\n lowest priced previous generation instance types that match your attributes. When Amazon EC2\n selects instance types with your attributes, it will exclude instance types whose Spot\n price exceeds your specified threshold.

\n

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

\n

If you set TargetCapacityUnitType to vcpu or\n memory-mib, the price protection threshold is applied based on the\n per-vCPU or per-memory price instead of the per-instance price.

\n

This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements.

\n \n

Only one of SpotMaxPricePercentageOverLowestPrice or\n MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you\n don't specify either, Amazon EC2 will automatically apply optimal price protection to\n consistently select from a wide range of instance types. To indicate no price protection\n threshold for Spot Instances, meaning you want to consider all instance types that match your\n attributes, include one of these parameters and specify a high value, such as\n 999999.

\n
\n

Default: 100\n

" - } - }, - "OnDemandMaxPricePercentageOverLowestPrice": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than\n an identified On-Demand price. The identified On-Demand price is the price of the lowest\n priced current generation C, M, or R instance type with your specified attributes. When\n Amazon EC2 selects instance types with your attributes, it will exclude instance types whose\n price exceeds your specified threshold.

\n

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

\n

To indicate no price protection threshold, specify a high value, such as\n 999999.

\n

This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements.

\n \n

If you set TargetCapacityUnitType to vcpu or\n memory-mib, the price protection threshold is applied based on the\n per-vCPU or per-memory price instead of the per-instance price.

\n
\n

Default: 20\n

" - } - }, - "BareMetal": { - "target": "com.amazonaws.ec2#BareMetal", - "traits": { - "smithy.api#documentation": "

Indicates whether bare metal instance types must be included, excluded, or required.

\n \n

Default: excluded\n

" - } - }, - "BurstablePerformance": { - "target": "com.amazonaws.ec2#BurstablePerformance", - "traits": { - "smithy.api#documentation": "

Indicates whether burstable performance T instance types are included, excluded, or required. For more information, see \n Burstable performance instances.

\n \n

Default: excluded\n

" - } - }, - "RequireHibernateSupport": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Indicates whether instance types must support hibernation for On-Demand Instances.

\n

This parameter is not supported for GetSpotPlacementScores.

\n

Default: false\n

" - } - }, - "NetworkInterfaceCount": { - "target": "com.amazonaws.ec2#NetworkInterfaceCountRequest", - "traits": { - "smithy.api#documentation": "

The minimum and maximum number of network interfaces.

\n

Default: No minimum or maximum limits

" - } - }, - "LocalStorage": { - "target": "com.amazonaws.ec2#LocalStorage", - "traits": { - "smithy.api#documentation": "

Indicates whether instance types with instance store volumes are included, excluded, or required. For more information,\n Amazon\n EC2 instance store in the Amazon EC2 User Guide.

\n \n

Default: included\n

" - } - }, - "LocalStorageTypes": { - "target": "com.amazonaws.ec2#LocalStorageTypeSet", - "traits": { - "smithy.api#documentation": "

The type of local storage that is required.

\n \n

Default: hdd and ssd\n

", - "smithy.api#xmlName": "LocalStorageType" - } - }, - "TotalLocalStorageGB": { - "target": "com.amazonaws.ec2#TotalLocalStorageGBRequest", - "traits": { - "smithy.api#documentation": "

The minimum and maximum amount of total local storage, in GB.

\n

Default: No minimum or maximum limits

" - } - }, - "BaselineEbsBandwidthMbps": { - "target": "com.amazonaws.ec2#BaselineEbsBandwidthMbpsRequest", - "traits": { - "smithy.api#documentation": "

The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see\n Amazon\n EBS–optimized instances in the Amazon EC2 User Guide.

\n

Default: No minimum or maximum limits

" - } - }, - "AcceleratorTypes": { - "target": "com.amazonaws.ec2#AcceleratorTypeSet", - "traits": { - "smithy.api#documentation": "

The accelerator types that must be on the instance type.

\n \n

Default: Any accelerator type

", - "smithy.api#xmlName": "AcceleratorType" - } - }, - "AcceleratorCount": { - "target": "com.amazonaws.ec2#AcceleratorCountRequest", + "Name": { + "target": "com.amazonaws.ec2#GpuDeviceName", "traits": { - "smithy.api#documentation": "

The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web Services Inferentia chips) on\n an instance.

\n

To exclude accelerator-enabled instance types, set Max to 0.

\n

Default: No minimum or maximum limits

" + "aws.protocols#ec2QueryName": "Name", + "smithy.api#documentation": "

The name of the GPU accelerator.

", + "smithy.api#xmlName": "name" } }, - "AcceleratorManufacturers": { - "target": "com.amazonaws.ec2#AcceleratorManufacturerSet", + "Manufacturer": { + "target": "com.amazonaws.ec2#GpuDeviceManufacturerName", "traits": { - "smithy.api#documentation": "

Indicates whether instance types must have accelerators by specific manufacturers.

\n \n

Default: Any manufacturer

", - "smithy.api#xmlName": "AcceleratorManufacturer" + "aws.protocols#ec2QueryName": "Manufacturer", + "smithy.api#documentation": "

The manufacturer of the GPU accelerator.

", + "smithy.api#xmlName": "manufacturer" } }, - "AcceleratorNames": { - "target": "com.amazonaws.ec2#AcceleratorNameSet", + "Count": { + "target": "com.amazonaws.ec2#GpuDeviceCount", "traits": { - "smithy.api#documentation": "

The accelerators that must be on the instance type.

\n \n

Default: Any accelerator

", - "smithy.api#xmlName": "AcceleratorName" + "aws.protocols#ec2QueryName": "Count", + "smithy.api#documentation": "

The number of GPUs for the instance type.

", + "smithy.api#xmlName": "count" } }, - "AcceleratorTotalMemoryMiB": { - "target": "com.amazonaws.ec2#AcceleratorTotalMemoryMiBRequest", + "MemoryInfo": { + "target": "com.amazonaws.ec2#GpuDeviceMemoryInfo", "traits": { - "smithy.api#documentation": "

The minimum and maximum amount of total accelerator memory, in MiB.

\n

Default: No minimum or maximum limits

" + "aws.protocols#ec2QueryName": "MemoryInfo", + "smithy.api#documentation": "

Describes the memory available to the GPU accelerator.

", + "smithy.api#xmlName": "memoryInfo" } - }, - "NetworkBandwidthGbps": { - "target": "com.amazonaws.ec2#NetworkBandwidthGbpsRequest", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the GPU accelerators for the instance type.

" + } + }, + "com.amazonaws.ec2#GpuDeviceInfoList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#GpuDeviceInfo", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#GpuDeviceManufacturerName": { + "type": "string" + }, + "com.amazonaws.ec2#GpuDeviceMemoryInfo": { + "type": "structure", + "members": { + "SizeInMiB": { + "target": "com.amazonaws.ec2#GpuDeviceMemorySize", "traits": { - "smithy.api#documentation": "

The minimum and maximum amount of baseline network bandwidth, in gigabits per second \n (Gbps). For more information, see Amazon EC2 instance network bandwidth in the Amazon EC2 User Guide.

\n

Default: No minimum or maximum limits

" + "aws.protocols#ec2QueryName": "SizeInMiB", + "smithy.api#documentation": "

The size of the memory available to the GPU accelerator, in MiB.

", + "smithy.api#xmlName": "sizeInMiB" } - }, - "AllowedInstanceTypes": { - "target": "com.amazonaws.ec2#AllowedInstanceTypeSet", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the memory available to the GPU accelerator.

" + } + }, + "com.amazonaws.ec2#GpuDeviceMemorySize": { + "type": "integer" + }, + "com.amazonaws.ec2#GpuDeviceName": { + "type": "string" + }, + "com.amazonaws.ec2#GpuInfo": { + "type": "structure", + "members": { + "Gpus": { + "target": "com.amazonaws.ec2#GpuDeviceInfoList", "traits": { - "smithy.api#documentation": "

The instance types to apply your specified attributes against. All other instance types \n are ignored, even if they match your specified attributes.

\n

You can use strings with one or more wild cards, represented by\n an asterisk (*), to allow an instance type, size, or generation. The\n following are examples: m5.8xlarge, c5*.*, m5a.*,\n r*, *3*.

\n

For example, if you specify c5*,Amazon EC2 will allow the entire C5 instance\n family, which includes all C5a and C5n instance types. If you specify\n m5a.*, Amazon EC2 will allow all the M5a instance types, but not the M5n\n instance types.

\n \n

If you specify AllowedInstanceTypes, you can't specify ExcludedInstanceTypes.

\n
\n

Default: All instance types

", - "smithy.api#xmlName": "AllowedInstanceType" + "aws.protocols#ec2QueryName": "Gpus", + "smithy.api#documentation": "

Describes the GPU accelerators for the instance type.

", + "smithy.api#xmlName": "gpus" } }, - "MaxSpotPriceAsPercentageOfOptimalOnDemandPrice": { - "target": "com.amazonaws.ec2#Integer", + "TotalGpuMemoryInMiB": { + "target": "com.amazonaws.ec2#totalGpuMemory", "traits": { - "smithy.api#documentation": "

[Price protection] The price protection threshold for Spot Instances, as a percentage of an\n identified On-Demand price. The identified On-Demand price is the price of the lowest\n priced current generation C, M, or R instance type with your specified attributes. If no\n current generation C, M, or R instance type matches your attributes, then the identified\n price is from the lowest priced current generation instance types, and failing that, from\n the lowest priced previous generation instance types that match your attributes. When Amazon EC2\n selects instance types with your attributes, it will exclude instance types whose price\n exceeds your specified threshold.

\n

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

\n

If you set DesiredCapacityType to vcpu or\n memory-mib, the price protection threshold is based on the per vCPU or per\n memory price instead of the per instance price.

\n \n

Only one of SpotMaxPricePercentageOverLowestPrice or\n MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you\n don't specify either, Amazon EC2 will automatically apply optimal price protection to\n consistently select from a wide range of instance types. To indicate no price protection\n threshold for Spot Instances, meaning you want to consider all instance types that match your\n attributes, include one of these parameters and specify a high value, such as\n 999999.

\n
" + "aws.protocols#ec2QueryName": "TotalGpuMemoryInMiB", + "smithy.api#documentation": "

The total size of the memory for the GPU accelerators for the instance type, in MiB.

", + "smithy.api#xmlName": "totalGpuMemoryInMiB" } } }, "traits": { - "smithy.api#documentation": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will\n identify instance types with these attributes.

\n

You must specify VCpuCount and MemoryMiB. All other attributes\n are optional. Any unspecified optional attribute is set to its default.

\n

When you specify multiple attributes, you get instance types that satisfy all of the\n specified attributes. If you specify multiple values for an attribute, you get instance\n types that satisfy any of the specified values.

\n

To limit the list of instance types from which Amazon EC2 can identify matching instance types, \n you can use one of the following parameters, but not both in the same request:

\n \n \n

If you specify InstanceRequirements, you can't specify\n InstanceType.

\n

Attribute-based instance type selection is only supported when using Auto Scaling\n groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in\n the launch instance\n wizard, or with the RunInstances API or\n AWS::EC2::Instance Amazon Web Services CloudFormation resource, you can't specify\n InstanceRequirements.

\n
\n

For more information, see Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot\n placement score in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Describes the GPU accelerators for the instance type.

" } }, - "com.amazonaws.ec2#InstanceRequirementsWithMetadataRequest": { + "com.amazonaws.ec2#GroupIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#SecurityGroupId", + "traits": { + "smithy.api#xmlName": "groupId" + } + } + }, + "com.amazonaws.ec2#GroupIdentifier": { "type": "structure", "members": { - "ArchitectureTypes": { - "target": "com.amazonaws.ec2#ArchitectureTypeSet", - "traits": { - "smithy.api#documentation": "

The architecture type.

", - "smithy.api#xmlName": "ArchitectureType" - } - }, - "VirtualizationTypes": { - "target": "com.amazonaws.ec2#VirtualizationTypeSet", + "GroupId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The virtualization type.

", - "smithy.api#xmlName": "VirtualizationType" + "aws.protocols#ec2QueryName": "GroupId", + "smithy.api#documentation": "

The ID of the security group.

", + "smithy.api#xmlName": "groupId" } }, - "InstanceRequirements": { - "target": "com.amazonaws.ec2#InstanceRequirementsRequest", + "GroupName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will\n identify instance types with those attributes.

" + "aws.protocols#ec2QueryName": "GroupName", + "smithy.api#documentation": "

The name of the security group.

", + "smithy.api#xmlName": "groupName" } } }, "traits": { - "smithy.api#documentation": "

The architecture type, virtualization type, and other attributes for the instance types.\n When you specify instance attributes, Amazon EC2 will identify instance types with those\n attributes.

\n

If you specify InstanceRequirementsWithMetadataRequest, you can't specify\n InstanceTypes.

" + "smithy.api#documentation": "

Describes a security group.

" } }, - "com.amazonaws.ec2#InstanceSet": { + "com.amazonaws.ec2#GroupIdentifierList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#InstanceTopology", + "target": "com.amazonaws.ec2#GroupIdentifier", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#InstanceSpecification": { + "com.amazonaws.ec2#GroupIdentifierSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#SecurityGroupIdentifier", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#GroupIds": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#SecurityGroupId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#GroupNameStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#SecurityGroupName", + "traits": { + "smithy.api#xmlName": "GroupName" + } + } + }, + "com.amazonaws.ec2#HibernationFlag": { + "type": "boolean" + }, + "com.amazonaws.ec2#HibernationOptions": { "type": "structure", "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceIdWithVolumeResolver", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The instance to specify which volumes should be snapshotted.

", - "smithy.api#required": {} - } - }, - "ExcludeBootVolume": { + "Configured": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Excludes the root volume from being snapshotted.

" + "aws.protocols#ec2QueryName": "Configured", + "smithy.api#documentation": "

If true, your instance is enabled for hibernation; otherwise, it is not\n enabled for hibernation.

", + "smithy.api#xmlName": "configured" } - }, - "ExcludeDataVolumeIds": { - "target": "com.amazonaws.ec2#VolumeIdStringList", + } + }, + "traits": { + "smithy.api#documentation": "

Indicates whether your instance is configured for hibernation. This parameter is valid\n only if the instance meets the hibernation\n prerequisites. For more information, see Hibernate your Amazon EC2\n instance in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#HibernationOptionsRequest": { + "type": "structure", + "members": { + "Configured": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The IDs of the data (non-root) volumes to exclude from the multi-volume snapshot set. \n If you specify the ID of the root volume, the request fails. To exclude the root volume, \n use ExcludeBootVolume.

\n

You can specify up to 40 volume IDs per request.

", - "smithy.api#xmlName": "ExcludeDataVolumeId" + "smithy.api#documentation": "

Set to true to enable your instance for hibernation.

\n

For Spot Instances, if you set Configured to true, either\n omit the InstanceInterruptionBehavior parameter (for \n SpotMarketOptions\n ), or set it to\n hibernate. When Configured is true:

\n \n

Default: false\n

" } } }, "traits": { - "smithy.api#documentation": "

The instance details to specify which volumes should be snapshotted.

" + "smithy.api#documentation": "

Indicates whether your instance is configured for hibernation. This parameter is valid\n only if the instance meets the hibernation\n prerequisites. For more information, see Hibernate your Amazon EC2\n instance in the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#InstanceState": { + "com.amazonaws.ec2#HistoryRecord": { "type": "structure", "members": { - "Code": { - "target": "com.amazonaws.ec2#Integer", + "EventInformation": { + "target": "com.amazonaws.ec2#EventInformation", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The state of the instance as a 16-bit unsigned integer.

\n

The high byte is all of the bits between 2^8 and (2^16)-1, which equals decimal values\n between 256 and 65,535. These numerical values are used for internal purposes and should\n be ignored.

\n

The low byte is all of the bits between 2^0 and (2^8)-1, which equals decimal values\n between 0 and 255.

\n

The valid values for instance-state-code will all be in the range of the low byte and\n they are:

\n \n

You can ignore the high byte value by zeroing out all of the bits above 2^8 or 256 in\n decimal.

", - "smithy.api#xmlName": "code" + "aws.protocols#ec2QueryName": "EventInformation", + "smithy.api#documentation": "

Information about the event.

", + "smithy.api#xmlName": "eventInformation" } }, - "Name": { - "target": "com.amazonaws.ec2#InstanceStateName", + "EventType": { + "target": "com.amazonaws.ec2#EventType", "traits": { - "aws.protocols#ec2QueryName": "Name", - "smithy.api#documentation": "

The current state of the instance.

", - "smithy.api#xmlName": "name" + "aws.protocols#ec2QueryName": "EventType", + "smithy.api#documentation": "

The event type.

\n ", + "smithy.api#xmlName": "eventType" + } + }, + "Timestamp": { + "target": "com.amazonaws.ec2#DateTime", + "traits": { + "aws.protocols#ec2QueryName": "Timestamp", + "smithy.api#documentation": "

The date and time of the event, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).

", + "smithy.api#xmlName": "timestamp" } } }, "traits": { - "smithy.api#documentation": "

Describes the current state of an instance.

" + "smithy.api#documentation": "

Describes an event in the history of the Spot Fleet request.

" } }, - "com.amazonaws.ec2#InstanceStateChange": { + "com.amazonaws.ec2#HistoryRecordEntry": { "type": "structure", "members": { - "CurrentState": { - "target": "com.amazonaws.ec2#InstanceState", + "EventInformation": { + "target": "com.amazonaws.ec2#EventInformation", "traits": { - "aws.protocols#ec2QueryName": "CurrentState", - "smithy.api#documentation": "

The current state of the instance.

", - "smithy.api#xmlName": "currentState" + "aws.protocols#ec2QueryName": "EventInformation", + "smithy.api#documentation": "

Information about the event.

", + "smithy.api#xmlName": "eventInformation" } }, - "InstanceId": { - "target": "com.amazonaws.ec2#String", + "EventType": { + "target": "com.amazonaws.ec2#FleetEventType", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#xmlName": "instanceId" + "aws.protocols#ec2QueryName": "EventType", + "smithy.api#documentation": "

The event type.

", + "smithy.api#xmlName": "eventType" } }, - "PreviousState": { - "target": "com.amazonaws.ec2#InstanceState", + "Timestamp": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "PreviousState", - "smithy.api#documentation": "

The previous state of the instance.

", - "smithy.api#xmlName": "previousState" + "aws.protocols#ec2QueryName": "Timestamp", + "smithy.api#documentation": "

The date and time of the event, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).

", + "smithy.api#xmlName": "timestamp" } } }, "traits": { - "smithy.api#documentation": "

Describes an instance state change.

" + "smithy.api#documentation": "

Describes an event in the history of an EC2 Fleet.

" } }, - "com.amazonaws.ec2#InstanceStateChangeList": { + "com.amazonaws.ec2#HistoryRecordSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#InstanceStateChange", + "target": "com.amazonaws.ec2#HistoryRecordEntry", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#InstanceStateName": { - "type": "enum", + "com.amazonaws.ec2#HistoryRecords": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#HistoryRecord", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Host": { + "type": "structure", "members": { - "pending": { - "target": "smithy.api#Unit", + "AutoPlacement": { + "target": "com.amazonaws.ec2#AutoPlacement", "traits": { - "smithy.api#enumValue": "pending" + "aws.protocols#ec2QueryName": "AutoPlacement", + "smithy.api#documentation": "

Whether auto-placement is on or off.

", + "smithy.api#xmlName": "autoPlacement" } }, - "running": { - "target": "smithy.api#Unit", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "running" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone of the Dedicated Host.

", + "smithy.api#xmlName": "availabilityZone" } }, - "shutting_down": { - "target": "smithy.api#Unit", + "AvailableCapacity": { + "target": "com.amazonaws.ec2#AvailableCapacity", "traits": { - "smithy.api#enumValue": "shutting-down" + "aws.protocols#ec2QueryName": "AvailableCapacity", + "smithy.api#documentation": "

Information about the instances running on the Dedicated Host.

", + "smithy.api#xmlName": "availableCapacity" } }, - "terminated": { - "target": "smithy.api#Unit", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "terminated" + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

", + "smithy.api#xmlName": "clientToken" } }, - "stopping": { - "target": "smithy.api#Unit", + "HostId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "stopping" + "aws.protocols#ec2QueryName": "HostId", + "smithy.api#documentation": "

The ID of the Dedicated Host.

", + "smithy.api#xmlName": "hostId" } }, - "stopped": { - "target": "smithy.api#Unit", + "HostProperties": { + "target": "com.amazonaws.ec2#HostProperties", "traits": { - "smithy.api#enumValue": "stopped" + "aws.protocols#ec2QueryName": "HostProperties", + "smithy.api#documentation": "

The hardware specifications of the Dedicated Host.

", + "smithy.api#xmlName": "hostProperties" } - } - } - }, - "com.amazonaws.ec2#InstanceStatus": { - "type": "structure", - "members": { - "AvailabilityZone": { + }, + "HostReservationId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone of the instance.

", - "smithy.api#xmlName": "availabilityZone" + "aws.protocols#ec2QueryName": "HostReservationId", + "smithy.api#documentation": "

The reservation ID of the Dedicated Host. This returns a null response if\n the Dedicated Host doesn't have an associated reservation.

", + "smithy.api#xmlName": "hostReservationId" } }, - "OutpostArn": { - "target": "com.amazonaws.ec2#String", + "Instances": { + "target": "com.amazonaws.ec2#HostInstanceList", "traits": { - "aws.protocols#ec2QueryName": "OutpostArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost.

", - "smithy.api#xmlName": "outpostArn" + "aws.protocols#ec2QueryName": "Instances", + "smithy.api#documentation": "

The IDs and instance type that are currently running on the Dedicated Host.

", + "smithy.api#xmlName": "instances" } }, - "Events": { - "target": "com.amazonaws.ec2#InstanceStatusEventList", + "State": { + "target": "com.amazonaws.ec2#AllocationState", "traits": { - "aws.protocols#ec2QueryName": "EventsSet", - "smithy.api#documentation": "

Any scheduled events associated with the instance.

", - "smithy.api#xmlName": "eventsSet" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The Dedicated Host's state.

", + "smithy.api#xmlName": "state" } }, - "InstanceId": { - "target": "com.amazonaws.ec2#String", + "AllocationTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#xmlName": "instanceId" + "aws.protocols#ec2QueryName": "AllocationTime", + "smithy.api#documentation": "

The time that the Dedicated Host was allocated.

", + "smithy.api#xmlName": "allocationTime" } }, - "InstanceState": { - "target": "com.amazonaws.ec2#InstanceState", + "ReleaseTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "InstanceState", - "smithy.api#documentation": "

The intended state of the instance. DescribeInstanceStatus requires\n that an instance be in the running state.

", - "smithy.api#xmlName": "instanceState" + "aws.protocols#ec2QueryName": "ReleaseTime", + "smithy.api#documentation": "

The time that the Dedicated Host was released.

", + "smithy.api#xmlName": "releaseTime" } }, - "InstanceStatus": { - "target": "com.amazonaws.ec2#InstanceStatusSummary", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "aws.protocols#ec2QueryName": "InstanceStatus", - "smithy.api#documentation": "

Reports impaired functionality that stems from issues internal to the instance, such\n as impaired reachability.

", - "smithy.api#xmlName": "instanceStatus" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the Dedicated Host.

", + "smithy.api#xmlName": "tagSet" } }, - "SystemStatus": { - "target": "com.amazonaws.ec2#InstanceStatusSummary", + "HostRecovery": { + "target": "com.amazonaws.ec2#HostRecovery", "traits": { - "aws.protocols#ec2QueryName": "SystemStatus", - "smithy.api#documentation": "

Reports impaired functionality that stems from issues related to the systems that\n support an instance, such as hardware failures and network connectivity problems.

", - "smithy.api#xmlName": "systemStatus" + "aws.protocols#ec2QueryName": "HostRecovery", + "smithy.api#documentation": "

Indicates whether host recovery is enabled or disabled for the Dedicated Host.

", + "smithy.api#xmlName": "hostRecovery" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the status of an instance.

" - } - }, - "com.amazonaws.ec2#InstanceStatusDetails": { - "type": "structure", - "members": { - "ImpairedSince": { - "target": "com.amazonaws.ec2#DateTime", + }, + "AllowsMultipleInstanceTypes": { + "target": "com.amazonaws.ec2#AllowsMultipleInstanceTypes", "traits": { - "aws.protocols#ec2QueryName": "ImpairedSince", - "smithy.api#documentation": "

The time when a status check failed. For an instance that was launched and impaired,\n this is the time when the instance was launched.

", - "smithy.api#xmlName": "impairedSince" + "aws.protocols#ec2QueryName": "AllowsMultipleInstanceTypes", + "smithy.api#documentation": "

Indicates whether the Dedicated Host supports multiple instance types of the same\n instance family. If the value is on, the Dedicated Host supports multiple\n instance types in the instance family. If the value is off, the Dedicated\n Host supports a single instance type only.

", + "smithy.api#xmlName": "allowsMultipleInstanceTypes" } }, - "Name": { - "target": "com.amazonaws.ec2#StatusName", + "OwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Name", - "smithy.api#documentation": "

The type of instance status.

", - "smithy.api#xmlName": "name" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the Dedicated Host.

", + "smithy.api#xmlName": "ownerId" } }, - "Status": { - "target": "com.amazonaws.ec2#StatusType", + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The status.

", - "smithy.api#xmlName": "status" + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone in which the Dedicated Host is allocated.

", + "smithy.api#xmlName": "availabilityZoneId" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the instance status.

" - } - }, - "com.amazonaws.ec2#InstanceStatusDetailsList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceStatusDetails", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#InstanceStatusEvent": { - "type": "structure", - "members": { - "InstanceEventId": { - "target": "com.amazonaws.ec2#InstanceEventId", + }, + "MemberOfServiceLinkedResourceGroup": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "InstanceEventId", - "smithy.api#documentation": "

The ID of the event.

", - "smithy.api#xmlName": "instanceEventId" + "aws.protocols#ec2QueryName": "MemberOfServiceLinkedResourceGroup", + "smithy.api#documentation": "

Indicates whether the Dedicated Host is in a host resource group. If memberOfServiceLinkedResourceGroup is true, the\n host is in a host resource group; otherwise, it is not.

", + "smithy.api#xmlName": "memberOfServiceLinkedResourceGroup" } }, - "Code": { - "target": "com.amazonaws.ec2#EventCode", + "OutpostArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The event code.

", - "smithy.api#xmlName": "code" + "aws.protocols#ec2QueryName": "OutpostArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services Outpost on which the\n Dedicated Host is allocated.

", + "smithy.api#xmlName": "outpostArn" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "HostMaintenance": { + "target": "com.amazonaws.ec2#HostMaintenance", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description of the event.

\n

After a scheduled event is completed, it can still be described for up to a week. If\n the event has been completed, this description starts with the following text:\n [Completed].

", - "smithy.api#xmlName": "description" + "aws.protocols#ec2QueryName": "HostMaintenance", + "smithy.api#documentation": "

Indicates whether host maintenance is enabled or disabled for the Dedicated\n Host.

", + "smithy.api#xmlName": "hostMaintenance" } }, - "NotAfter": { - "target": "com.amazonaws.ec2#DateTime", + "AssetId": { + "target": "com.amazonaws.ec2#AssetId", "traits": { - "aws.protocols#ec2QueryName": "NotAfter", - "smithy.api#documentation": "

The latest scheduled end time for the event.

", - "smithy.api#xmlName": "notAfter" + "aws.protocols#ec2QueryName": "AssetId", + "smithy.api#documentation": "

The ID of the Outpost hardware asset on which the Dedicated Host is allocated.

", + "smithy.api#xmlName": "assetId" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the properties of the Dedicated Host.

" + } + }, + "com.amazonaws.ec2#HostInstance": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of instance that is running on the Dedicated Host.

", + "smithy.api#xmlName": "instanceId" } }, - "NotBefore": { - "target": "com.amazonaws.ec2#DateTime", + "InstanceType": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NotBefore", - "smithy.api#documentation": "

The earliest scheduled start time for the event.

", - "smithy.api#xmlName": "notBefore" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type (for example, m3.medium) of the running\n instance.

", + "smithy.api#xmlName": "instanceType" } }, - "NotBeforeDeadline": { - "target": "com.amazonaws.ec2#DateTime", + "OwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NotBeforeDeadline", - "smithy.api#documentation": "

The deadline for starting the event.

", - "smithy.api#xmlName": "notBeforeDeadline" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the instance.

", + "smithy.api#xmlName": "ownerId" } } }, "traits": { - "smithy.api#documentation": "

Describes a scheduled event for an instance.

" + "smithy.api#documentation": "

Describes an instance running on a Dedicated Host.

" } }, - "com.amazonaws.ec2#InstanceStatusEventList": { + "com.amazonaws.ec2#HostInstanceList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#InstanceStatusEvent", + "target": "com.amazonaws.ec2#HostInstance", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#InstanceStatusList": { + "com.amazonaws.ec2#HostList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#InstanceStatus", + "target": "com.amazonaws.ec2#Host", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#InstanceStatusSummary": { - "type": "structure", + "com.amazonaws.ec2#HostMaintenance": { + "type": "enum", "members": { - "Details": { - "target": "com.amazonaws.ec2#InstanceStatusDetailsList", + "on": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Details", - "smithy.api#documentation": "

The system instance health or application instance health.

", - "smithy.api#xmlName": "details" + "smithy.api#enumValue": "on" } }, - "Status": { - "target": "com.amazonaws.ec2#SummaryStatus", + "off": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The status.

", - "smithy.api#xmlName": "status" + "smithy.api#enumValue": "off" } } - }, - "traits": { - "smithy.api#documentation": "

Describes the status of an instance.

" } }, - "com.amazonaws.ec2#InstanceStorageEncryptionSupport": { - "type": "enum", + "com.amazonaws.ec2#HostOffering": { + "type": "structure", "members": { - "unsupported": { - "target": "smithy.api#Unit", + "CurrencyCode": { + "target": "com.amazonaws.ec2#CurrencyCodeValues", "traits": { - "smithy.api#enumValue": "unsupported" + "aws.protocols#ec2QueryName": "CurrencyCode", + "smithy.api#documentation": "

The currency of the offering.

", + "smithy.api#xmlName": "currencyCode" } }, - "required": { - "target": "smithy.api#Unit", + "Duration": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "required" + "aws.protocols#ec2QueryName": "Duration", + "smithy.api#documentation": "

The duration of the offering (in seconds).

", + "smithy.api#xmlName": "duration" } - } - } - }, - "com.amazonaws.ec2#InstanceStorageFlag": { - "type": "boolean" - }, - "com.amazonaws.ec2#InstanceStorageInfo": { - "type": "structure", - "members": { - "TotalSizeInGB": { - "target": "com.amazonaws.ec2#DiskSize", + }, + "HourlyPrice": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TotalSizeInGB", - "smithy.api#documentation": "

The total size of the disks, in GB.

", - "smithy.api#xmlName": "totalSizeInGB" + "aws.protocols#ec2QueryName": "HourlyPrice", + "smithy.api#documentation": "

The hourly price of the offering.

", + "smithy.api#xmlName": "hourlyPrice" } }, - "Disks": { - "target": "com.amazonaws.ec2#DiskInfoList", + "InstanceFamily": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Disks", - "smithy.api#documentation": "

Describes the disks that are available for the instance type.

", - "smithy.api#xmlName": "disks" + "aws.protocols#ec2QueryName": "InstanceFamily", + "smithy.api#documentation": "

The instance family of the offering.

", + "smithy.api#xmlName": "instanceFamily" } }, - "NvmeSupport": { - "target": "com.amazonaws.ec2#EphemeralNvmeSupport", + "OfferingId": { + "target": "com.amazonaws.ec2#OfferingId", "traits": { - "aws.protocols#ec2QueryName": "NvmeSupport", - "smithy.api#documentation": "

Indicates whether non-volatile memory express (NVMe) is supported.

", - "smithy.api#xmlName": "nvmeSupport" + "aws.protocols#ec2QueryName": "OfferingId", + "smithy.api#documentation": "

The ID of the offering.

", + "smithy.api#xmlName": "offeringId" } }, - "EncryptionSupport": { - "target": "com.amazonaws.ec2#InstanceStorageEncryptionSupport", + "PaymentOption": { + "target": "com.amazonaws.ec2#PaymentOption", "traits": { - "aws.protocols#ec2QueryName": "EncryptionSupport", - "smithy.api#documentation": "

Indicates whether data is encrypted at rest.

", - "smithy.api#xmlName": "encryptionSupport" + "aws.protocols#ec2QueryName": "PaymentOption", + "smithy.api#documentation": "

The available payment option.

", + "smithy.api#xmlName": "paymentOption" + } + }, + "UpfrontPrice": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "UpfrontPrice", + "smithy.api#documentation": "

The upfront price of the offering. Does not apply to No Upfront offerings.

", + "smithy.api#xmlName": "upfrontPrice" } } }, "traits": { - "smithy.api#documentation": "

Describes the instance store features that are supported by the instance type.

" + "smithy.api#documentation": "

Details about the Dedicated Host Reservation offering.

" } }, - "com.amazonaws.ec2#InstanceTagKeySet": { + "com.amazonaws.ec2#HostOfferingSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#HostOffering", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#InstanceTagNotificationAttribute": { - "type": "structure", - "members": { - "InstanceTagKeys": { - "target": "com.amazonaws.ec2#InstanceTagKeySet", - "traits": { - "aws.protocols#ec2QueryName": "InstanceTagKeySet", - "smithy.api#documentation": "

The registered tag keys.

", - "smithy.api#xmlName": "instanceTagKeySet" - } - }, - "IncludeAllTagsOfInstance": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "IncludeAllTagsOfInstance", - "smithy.api#documentation": "

Indicates wheter all tag keys in the current Region are registered to appear in scheduled event notifications. \n \ttrue indicates that all tag keys in the current Region are registered.

", - "smithy.api#xmlName": "includeAllTagsOfInstance" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the registered tag keys for the current Region.

" - } - }, - "com.amazonaws.ec2#InstanceTopology": { + "com.amazonaws.ec2#HostProperties": { "type": "structure", "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#String", + "Cores": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The instance ID.

", - "smithy.api#xmlName": "instanceId" + "aws.protocols#ec2QueryName": "Cores", + "smithy.api#documentation": "

The number of cores on the Dedicated Host.

", + "smithy.api#xmlName": "cores" } }, "InstanceType": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type.

", + "smithy.api#documentation": "

The instance type supported by the Dedicated Host. For example, m5.large.\n If the host supports multiple instance types, no instanceType is returned.

", "smithy.api#xmlName": "instanceType" } }, - "GroupName": { + "InstanceFamily": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "GroupName", - "smithy.api#documentation": "

The name of the placement group that the instance is in.

", - "smithy.api#xmlName": "groupName" - } - }, - "NetworkNodes": { - "target": "com.amazonaws.ec2#NetworkNodesList", - "traits": { - "aws.protocols#ec2QueryName": "NetworkNodeSet", - "smithy.api#documentation": "

The network nodes. The nodes are hashed based on your account. Instances from\n different accounts running under the same server will return a different hashed list of\n strings.

", - "smithy.api#xmlName": "networkNodeSet" + "aws.protocols#ec2QueryName": "InstanceFamily", + "smithy.api#documentation": "

The instance family supported by the Dedicated Host. For example,\n m5.

", + "smithy.api#xmlName": "instanceFamily" } }, - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + "Sockets": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The name of the Availability Zone or Local Zone that the instance is in.

", - "smithy.api#xmlName": "availabilityZone" + "aws.protocols#ec2QueryName": "Sockets", + "smithy.api#documentation": "

The number of sockets on the Dedicated Host.

", + "smithy.api#xmlName": "sockets" } }, - "ZoneId": { - "target": "com.amazonaws.ec2#String", + "TotalVCpus": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "ZoneId", - "smithy.api#documentation": "

The ID of the Availability Zone or Local Zone that the instance is in.

", - "smithy.api#xmlName": "zoneId" + "aws.protocols#ec2QueryName": "TotalVCpus", + "smithy.api#documentation": "

The total number of vCPUs on the Dedicated Host.

", + "smithy.api#xmlName": "totalVCpus" } } }, "traits": { - "smithy.api#documentation": "

Information about the instance topology.

" + "smithy.api#documentation": "

Describes the properties of a Dedicated Host.

" } }, - "com.amazonaws.ec2#InstanceType": { + "com.amazonaws.ec2#HostRecovery": { "type": "enum", "members": { - "a1_medium": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "a1.medium" - } - }, - "a1_large": { + "on": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "a1.large" + "smithy.api#enumValue": "on" } }, - "a1_xlarge": { + "off": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "a1.xlarge" + "smithy.api#enumValue": "off" } - }, - "a1_2xlarge": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#HostReservation": { + "type": "structure", + "members": { + "Count": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "a1.2xlarge" + "aws.protocols#ec2QueryName": "Count", + "smithy.api#documentation": "

The number of Dedicated Hosts the reservation is associated with.

", + "smithy.api#xmlName": "count" } }, - "a1_4xlarge": { - "target": "smithy.api#Unit", + "CurrencyCode": { + "target": "com.amazonaws.ec2#CurrencyCodeValues", "traits": { - "smithy.api#enumValue": "a1.4xlarge" + "aws.protocols#ec2QueryName": "CurrencyCode", + "smithy.api#documentation": "

The currency in which the upfrontPrice and hourlyPrice\n amounts are specified. At this time, the only supported currency is\n USD.

", + "smithy.api#xmlName": "currencyCode" } }, - "a1_metal": { - "target": "smithy.api#Unit", + "Duration": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "a1.metal" + "aws.protocols#ec2QueryName": "Duration", + "smithy.api#documentation": "

The length of the reservation's term, specified in seconds. Can be 31536000 (1\n year) | 94608000 (3 years).

", + "smithy.api#xmlName": "duration" } }, - "c1_medium": { - "target": "smithy.api#Unit", + "End": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#enumValue": "c1.medium" + "aws.protocols#ec2QueryName": "End", + "smithy.api#documentation": "

The date and time that the reservation ends.

", + "smithy.api#xmlName": "end" } }, - "c1_xlarge": { - "target": "smithy.api#Unit", + "HostIdSet": { + "target": "com.amazonaws.ec2#ResponseHostIdSet", "traits": { - "smithy.api#enumValue": "c1.xlarge" + "aws.protocols#ec2QueryName": "HostIdSet", + "smithy.api#documentation": "

The IDs of the Dedicated Hosts associated with the reservation.

", + "smithy.api#xmlName": "hostIdSet" } }, - "c3_large": { - "target": "smithy.api#Unit", + "HostReservationId": { + "target": "com.amazonaws.ec2#HostReservationId", "traits": { - "smithy.api#enumValue": "c3.large" + "aws.protocols#ec2QueryName": "HostReservationId", + "smithy.api#documentation": "

The ID of the reservation that specifies the associated Dedicated Hosts.

", + "smithy.api#xmlName": "hostReservationId" } }, - "c3_xlarge": { - "target": "smithy.api#Unit", + "HourlyPrice": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c3.xlarge" + "aws.protocols#ec2QueryName": "HourlyPrice", + "smithy.api#documentation": "

The hourly price of the reservation.

", + "smithy.api#xmlName": "hourlyPrice" } }, - "c3_2xlarge": { - "target": "smithy.api#Unit", + "InstanceFamily": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c3.2xlarge" + "aws.protocols#ec2QueryName": "InstanceFamily", + "smithy.api#documentation": "

The instance family of the Dedicated Host Reservation. The instance family on the\n Dedicated Host must be the same in order for it to benefit from the reservation.

", + "smithy.api#xmlName": "instanceFamily" } }, - "c3_4xlarge": { - "target": "smithy.api#Unit", + "OfferingId": { + "target": "com.amazonaws.ec2#OfferingId", "traits": { - "smithy.api#enumValue": "c3.4xlarge" + "aws.protocols#ec2QueryName": "OfferingId", + "smithy.api#documentation": "

The ID of the reservation. This remains the same regardless of which Dedicated Hosts\n are associated with it.

", + "smithy.api#xmlName": "offeringId" } }, - "c3_8xlarge": { - "target": "smithy.api#Unit", + "PaymentOption": { + "target": "com.amazonaws.ec2#PaymentOption", "traits": { - "smithy.api#enumValue": "c3.8xlarge" + "aws.protocols#ec2QueryName": "PaymentOption", + "smithy.api#documentation": "

The payment option selected for this reservation.

", + "smithy.api#xmlName": "paymentOption" } }, - "c4_large": { - "target": "smithy.api#Unit", + "Start": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#enumValue": "c4.large" + "aws.protocols#ec2QueryName": "Start", + "smithy.api#documentation": "

The date and time that the reservation started.

", + "smithy.api#xmlName": "start" } }, - "c4_xlarge": { - "target": "smithy.api#Unit", + "State": { + "target": "com.amazonaws.ec2#ReservationState", "traits": { - "smithy.api#enumValue": "c4.xlarge" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the reservation.

", + "smithy.api#xmlName": "state" } }, - "c4_2xlarge": { - "target": "smithy.api#Unit", + "UpfrontPrice": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c4.2xlarge" + "aws.protocols#ec2QueryName": "UpfrontPrice", + "smithy.api#documentation": "

The upfront price of the reservation.

", + "smithy.api#xmlName": "upfrontPrice" } }, - "c4_4xlarge": { - "target": "smithy.api#Unit", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "c4.4xlarge" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the Dedicated Host Reservation.

", + "smithy.api#xmlName": "tagSet" } - }, - "c4_8xlarge": { + } + }, + "traits": { + "smithy.api#documentation": "

Details about the Dedicated Host Reservation and associated Dedicated Hosts.

" + } + }, + "com.amazonaws.ec2#HostReservationId": { + "type": "string" + }, + "com.amazonaws.ec2#HostReservationIdSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#HostReservationId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#HostReservationSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#HostReservation", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#HostTenancy": { + "type": "enum", + "members": { + "default": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c4.8xlarge" + "smithy.api#enumValue": "default" } }, - "c5_large": { + "dedicated": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c5.large" + "smithy.api#enumValue": "dedicated" } }, - "c5_xlarge": { + "host": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c5.xlarge" + "smithy.api#enumValue": "host" } - }, - "c5_2xlarge": { + } + } + }, + "com.amazonaws.ec2#HostnameType": { + "type": "enum", + "members": { + "ip_name": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c5.2xlarge" + "smithy.api#enumValue": "ip-name" } }, - "c5_4xlarge": { + "resource_name": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c5.4xlarge" + "smithy.api#enumValue": "resource-name" } - }, - "c5_9xlarge": { + } + } + }, + "com.amazonaws.ec2#Hour": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 23 + } + } + }, + "com.amazonaws.ec2#HttpTokensState": { + "type": "enum", + "members": { + "optional": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c5.9xlarge" + "smithy.api#enumValue": "optional" } }, - "c5_12xlarge": { + "required": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c5.12xlarge" + "smithy.api#enumValue": "required" } - }, - "c5_18xlarge": { + } + } + }, + "com.amazonaws.ec2#HypervisorType": { + "type": "enum", + "members": { + "ovm": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c5.18xlarge" + "smithy.api#enumValue": "ovm" } }, - "c5_24xlarge": { + "xen": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c5.24xlarge" + "smithy.api#enumValue": "xen" } - }, - "c5_metal": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#IKEVersionsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IKEVersionsListValue", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IKEVersionsListValue": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c5.metal" + "aws.protocols#ec2QueryName": "Value", + "smithy.api#documentation": "

The IKE version.

", + "smithy.api#xmlName": "value" } - }, - "c5a_large": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The internet key exchange (IKE) version permitted for the VPN tunnel.

" + } + }, + "com.amazonaws.ec2#IKEVersionsRequestList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IKEVersionsRequestListValue", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IKEVersionsRequestListValue": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c5a.large" + "smithy.api#documentation": "

The IKE version.

" } - }, - "c5a_xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The IKE version that is permitted for the VPN tunnel.

" + } + }, + "com.amazonaws.ec2#IamInstanceProfile": { + "type": "structure", + "members": { + "Arn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c5a.xlarge" + "aws.protocols#ec2QueryName": "Arn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the instance profile.

", + "smithy.api#xmlName": "arn" } }, - "c5a_2xlarge": { - "target": "smithy.api#Unit", + "Id": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c5a.2xlarge" + "aws.protocols#ec2QueryName": "Id", + "smithy.api#documentation": "

The ID of the instance profile.

", + "smithy.api#xmlName": "id" } - }, - "c5a_4xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes an IAM instance profile.

" + } + }, + "com.amazonaws.ec2#IamInstanceProfileAssociation": { + "type": "structure", + "members": { + "AssociationId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c5a.4xlarge" + "aws.protocols#ec2QueryName": "AssociationId", + "smithy.api#documentation": "

The ID of the association.

", + "smithy.api#xmlName": "associationId" } }, - "c5a_8xlarge": { - "target": "smithy.api#Unit", + "InstanceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c5a.8xlarge" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#xmlName": "instanceId" } }, - "c5a_12xlarge": { - "target": "smithy.api#Unit", + "IamInstanceProfile": { + "target": "com.amazonaws.ec2#IamInstanceProfile", "traits": { - "smithy.api#enumValue": "c5a.12xlarge" + "aws.protocols#ec2QueryName": "IamInstanceProfile", + "smithy.api#documentation": "

The IAM instance profile.

", + "smithy.api#xmlName": "iamInstanceProfile" } }, - "c5a_16xlarge": { - "target": "smithy.api#Unit", + "State": { + "target": "com.amazonaws.ec2#IamInstanceProfileAssociationState", "traits": { - "smithy.api#enumValue": "c5a.16xlarge" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the association.

", + "smithy.api#xmlName": "state" } }, - "c5a_24xlarge": { - "target": "smithy.api#Unit", + "Timestamp": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#enumValue": "c5a.24xlarge" + "aws.protocols#ec2QueryName": "Timestamp", + "smithy.api#documentation": "

The time the IAM instance profile was associated with the instance.

", + "smithy.api#xmlName": "timestamp" } - }, - "c5ad_large": { + } + }, + "traits": { + "smithy.api#documentation": "

Describes an association between an IAM instance profile and an instance.

" + } + }, + "com.amazonaws.ec2#IamInstanceProfileAssociationId": { + "type": "string" + }, + "com.amazonaws.ec2#IamInstanceProfileAssociationSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IamInstanceProfileAssociation", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IamInstanceProfileAssociationState": { + "type": "enum", + "members": { + "ASSOCIATING": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c5ad.large" + "smithy.api#enumValue": "associating" } }, - "c5ad_xlarge": { + "ASSOCIATED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c5ad.xlarge" + "smithy.api#enumValue": "associated" } }, - "c5ad_2xlarge": { + "DISASSOCIATING": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c5ad.2xlarge" + "smithy.api#enumValue": "disassociating" } }, - "c5ad_4xlarge": { + "DISASSOCIATED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c5ad.4xlarge" + "smithy.api#enumValue": "disassociated" } - }, - "c5ad_8xlarge": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#IamInstanceProfileSpecification": { + "type": "structure", + "members": { + "Arn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c5ad.8xlarge" + "aws.protocols#ec2QueryName": "Arn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the instance profile.

", + "smithy.api#xmlName": "arn" } }, - "c5ad_12xlarge": { - "target": "smithy.api#Unit", + "Name": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c5ad.12xlarge" + "aws.protocols#ec2QueryName": "Name", + "smithy.api#documentation": "

The name of the instance profile.

", + "smithy.api#xmlName": "name" } - }, - "c5ad_16xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes an IAM instance profile.

" + } + }, + "com.amazonaws.ec2#IcmpTypeCode": { + "type": "structure", + "members": { + "Code": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "c5ad.16xlarge" + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The ICMP code. A value of -1 means all codes for the specified ICMP type.

", + "smithy.api#xmlName": "code" } }, - "c5ad_24xlarge": { - "target": "smithy.api#Unit", + "Type": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "c5ad.24xlarge" + "aws.protocols#ec2QueryName": "Type", + "smithy.api#documentation": "

The ICMP type. A value of -1 means all types.

", + "smithy.api#xmlName": "type" } - }, - "c5d_large": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the ICMP type and code.

" + } + }, + "com.amazonaws.ec2#IdFormat": { + "type": "structure", + "members": { + "Deadline": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#enumValue": "c5d.large" + "aws.protocols#ec2QueryName": "Deadline", + "smithy.api#documentation": "

The date in UTC at which you are permanently switched over to using longer IDs. If a deadline is not yet available for this resource type, this field is not returned.

", + "smithy.api#xmlName": "deadline" } }, - "c5d_xlarge": { - "target": "smithy.api#Unit", + "Resource": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c5d.xlarge" + "aws.protocols#ec2QueryName": "Resource", + "smithy.api#documentation": "

The type of resource.

", + "smithy.api#xmlName": "resource" } }, - "c5d_2xlarge": { - "target": "smithy.api#Unit", + "UseLongIds": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "c5d.2xlarge" + "aws.protocols#ec2QueryName": "UseLongIds", + "smithy.api#documentation": "

Indicates whether longer IDs (17-character IDs) are enabled for the resource.

", + "smithy.api#xmlName": "useLongIds" } - }, - "c5d_4xlarge": { + } + }, + "traits": { + "smithy.api#documentation": "

Describes the ID format for a resource.

" + } + }, + "com.amazonaws.ec2#IdFormatList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IdFormat", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Igmpv2SupportValue": { + "type": "enum", + "members": { + "enable": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c5d.4xlarge" + "smithy.api#enumValue": "enable" } }, - "c5d_9xlarge": { + "disable": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c5d.9xlarge" + "smithy.api#enumValue": "disable" } - }, - "c5d_12xlarge": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#Image": { + "type": "structure", + "members": { + "PlatformDetails": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c5d.12xlarge" + "aws.protocols#ec2QueryName": "PlatformDetails", + "smithy.api#documentation": "

The platform details associated with the billing code of the AMI. For more information,\n see Understand\n AMI billing information in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "platformDetails" } }, - "c5d_18xlarge": { - "target": "smithy.api#Unit", + "UsageOperation": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c5d.18xlarge" + "aws.protocols#ec2QueryName": "UsageOperation", + "smithy.api#documentation": "

The operation of the Amazon EC2 instance and the billing code that is associated with the AMI.\n usageOperation corresponds to the lineitem/Operation column on your Amazon Web Services Cost and Usage Report and in the Amazon Web Services Price\n List API. You can view these fields on the Instances or AMIs pages in the Amazon EC2 console,\n or in the responses that are returned by the DescribeImages command in\n the Amazon EC2 API, or the describe-images command in the\n CLI.

", + "smithy.api#xmlName": "usageOperation" } }, - "c5d_24xlarge": { - "target": "smithy.api#Unit", + "BlockDeviceMappings": { + "target": "com.amazonaws.ec2#BlockDeviceMappingList", "traits": { - "smithy.api#enumValue": "c5d.24xlarge" + "aws.protocols#ec2QueryName": "BlockDeviceMapping", + "smithy.api#documentation": "

Any block device mapping entries.

", + "smithy.api#xmlName": "blockDeviceMapping" } }, - "c5d_metal": { - "target": "smithy.api#Unit", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c5d.metal" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The description of the AMI that was provided during image creation.

", + "smithy.api#xmlName": "description" } }, - "c5n_large": { - "target": "smithy.api#Unit", + "EnaSupport": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "c5n.large" + "aws.protocols#ec2QueryName": "EnaSupport", + "smithy.api#documentation": "

Specifies whether enhanced networking with ENA is enabled.

", + "smithy.api#xmlName": "enaSupport" } }, - "c5n_xlarge": { - "target": "smithy.api#Unit", + "Hypervisor": { + "target": "com.amazonaws.ec2#HypervisorType", "traits": { - "smithy.api#enumValue": "c5n.xlarge" + "aws.protocols#ec2QueryName": "Hypervisor", + "smithy.api#documentation": "

The hypervisor type of the image. Only xen is supported. ovm is\n not supported.

", + "smithy.api#xmlName": "hypervisor" } }, - "c5n_2xlarge": { - "target": "smithy.api#Unit", + "ImageOwnerAlias": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c5n.2xlarge" + "aws.protocols#ec2QueryName": "ImageOwnerAlias", + "smithy.api#documentation": "

The owner alias (amazon | aws-backup-vault |\n aws-marketplace).

", + "smithy.api#xmlName": "imageOwnerAlias" } }, - "c5n_4xlarge": { - "target": "smithy.api#Unit", + "Name": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c5n.4xlarge" + "aws.protocols#ec2QueryName": "Name", + "smithy.api#documentation": "

The name of the AMI that was provided during image creation.

", + "smithy.api#xmlName": "name" } }, - "c5n_9xlarge": { - "target": "smithy.api#Unit", + "RootDeviceName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c5n.9xlarge" + "aws.protocols#ec2QueryName": "RootDeviceName", + "smithy.api#documentation": "

The device name of the root device volume (for example, /dev/sda1).

", + "smithy.api#xmlName": "rootDeviceName" } }, - "c5n_18xlarge": { - "target": "smithy.api#Unit", + "RootDeviceType": { + "target": "com.amazonaws.ec2#DeviceType", "traits": { - "smithy.api#enumValue": "c5n.18xlarge" + "aws.protocols#ec2QueryName": "RootDeviceType", + "smithy.api#documentation": "

The type of root device used by the AMI. The AMI can use an Amazon EBS volume or an instance\n store volume.

", + "smithy.api#xmlName": "rootDeviceType" } }, - "c5n_metal": { - "target": "smithy.api#Unit", + "SriovNetSupport": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c5n.metal" + "aws.protocols#ec2QueryName": "SriovNetSupport", + "smithy.api#documentation": "

Specifies whether enhanced networking with the Intel 82599 Virtual Function interface is\n enabled.

", + "smithy.api#xmlName": "sriovNetSupport" } }, - "c6g_medium": { - "target": "smithy.api#Unit", + "StateReason": { + "target": "com.amazonaws.ec2#StateReason", "traits": { - "smithy.api#enumValue": "c6g.medium" + "aws.protocols#ec2QueryName": "StateReason", + "smithy.api#documentation": "

The reason for the state change.

", + "smithy.api#xmlName": "stateReason" } }, - "c6g_large": { - "target": "smithy.api#Unit", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "c6g.large" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the image.

", + "smithy.api#xmlName": "tagSet" } }, - "c6g_xlarge": { - "target": "smithy.api#Unit", + "VirtualizationType": { + "target": "com.amazonaws.ec2#VirtualizationType", "traits": { - "smithy.api#enumValue": "c6g.xlarge" + "aws.protocols#ec2QueryName": "VirtualizationType", + "smithy.api#documentation": "

The type of virtualization of the AMI.

", + "smithy.api#xmlName": "virtualizationType" } }, - "c6g_2xlarge": { - "target": "smithy.api#Unit", + "BootMode": { + "target": "com.amazonaws.ec2#BootModeValues", "traits": { - "smithy.api#enumValue": "c6g.2xlarge" + "aws.protocols#ec2QueryName": "BootMode", + "smithy.api#documentation": "

The boot mode of the image. For more information, see Instance launch behavior with Amazon EC2\n boot modes in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "bootMode" } }, - "c6g_4xlarge": { - "target": "smithy.api#Unit", + "TpmSupport": { + "target": "com.amazonaws.ec2#TpmSupportValues", "traits": { - "smithy.api#enumValue": "c6g.4xlarge" + "aws.protocols#ec2QueryName": "TpmSupport", + "smithy.api#documentation": "

If the image is configured for NitroTPM support, the value is v2.0. For more\n information, see NitroTPM in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "tpmSupport" } }, - "c6g_8xlarge": { - "target": "smithy.api#Unit", + "DeprecationTime": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c6g.8xlarge" + "aws.protocols#ec2QueryName": "DeprecationTime", + "smithy.api#documentation": "

The date and time to deprecate the AMI, in UTC, in the following format:\n YYYY-MM-DDTHH:MM:SSZ.\n If you specified a value for seconds, Amazon EC2 rounds the seconds to the nearest minute.

", + "smithy.api#xmlName": "deprecationTime" } }, - "c6g_12xlarge": { - "target": "smithy.api#Unit", + "ImdsSupport": { + "target": "com.amazonaws.ec2#ImdsSupportValues", "traits": { - "smithy.api#enumValue": "c6g.12xlarge" + "aws.protocols#ec2QueryName": "ImdsSupport", + "smithy.api#documentation": "

If v2.0, it indicates that IMDSv2 is specified in the AMI. Instances launched\n from this AMI will have HttpTokens automatically set to required so\n that, by default, the instance requires that IMDSv2 is used when requesting instance metadata.\n In addition, HttpPutResponseHopLimit is set to 2. For more\n information, see Configure the AMI in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "imdsSupport" } }, - "c6g_16xlarge": { - "target": "smithy.api#Unit", + "SourceInstanceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c6g.16xlarge" + "aws.protocols#ec2QueryName": "SourceInstanceId", + "smithy.api#documentation": "

The ID of the instance that the AMI was created from if the AMI was created using CreateImage. This field only appears if the AMI was created using\n CreateImage.

", + "smithy.api#xmlName": "sourceInstanceId" } }, - "c6g_metal": { - "target": "smithy.api#Unit", + "DeregistrationProtection": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c6g.metal" + "aws.protocols#ec2QueryName": "DeregistrationProtection", + "smithy.api#documentation": "

Indicates whether deregistration protection is enabled for the AMI.

", + "smithy.api#xmlName": "deregistrationProtection" } }, - "c6gd_medium": { - "target": "smithy.api#Unit", + "LastLaunchedTime": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c6gd.medium" + "aws.protocols#ec2QueryName": "LastLaunchedTime", + "smithy.api#documentation": "

The date and time, in ISO 8601 date-time\n format, when the AMI was last used to launch an EC2 instance. When the AMI is used\n to launch an instance, there is a 24-hour delay before that usage is reported.

\n \n

\n lastLaunchedTime data is available starting April 2017.

\n
", + "smithy.api#xmlName": "lastLaunchedTime" } }, - "c6gd_large": { - "target": "smithy.api#Unit", + "ImageAllowed": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "c6gd.large" + "aws.protocols#ec2QueryName": "ImageAllowed", + "smithy.api#documentation": "

If true, the AMI satisfies the criteria for Allowed AMIs and can be\n discovered and used in the account. If false and Allowed AMIs is set to\n enabled, the AMI can't be discovered or used in the account. If\n false and Allowed AMIs is set to audit-mode, the AMI can be\n discovered and used in the account.

\n

For more information, see Control the discovery and use of AMIs in\n Amazon EC2 with Allowed AMIs in\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "imageAllowed" } }, - "c6gd_xlarge": { - "target": "smithy.api#Unit", + "SourceImageId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c6gd.xlarge" + "aws.protocols#ec2QueryName": "SourceImageId", + "smithy.api#documentation": "

The ID of the source AMI from which the AMI was created.

", + "smithy.api#xmlName": "sourceImageId" } }, - "c6gd_2xlarge": { - "target": "smithy.api#Unit", + "SourceImageRegion": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c6gd.2xlarge" + "aws.protocols#ec2QueryName": "SourceImageRegion", + "smithy.api#documentation": "

The Region of the source AMI.

", + "smithy.api#xmlName": "sourceImageRegion" } }, - "c6gd_4xlarge": { - "target": "smithy.api#Unit", + "FreeTierEligible": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "c6gd.4xlarge" + "aws.protocols#ec2QueryName": "FreeTierEligible", + "smithy.api#documentation": "

Indicates whether the image is eligible for Amazon Web Services Free Tier.

\n ", + "smithy.api#xmlName": "freeTierEligible" } }, - "c6gd_8xlarge": { - "target": "smithy.api#Unit", + "ImageId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c6gd.8xlarge" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the AMI.

", + "smithy.api#xmlName": "imageId" } }, - "c6gd_12xlarge": { - "target": "smithy.api#Unit", + "ImageLocation": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c6gd.12xlarge" + "aws.protocols#ec2QueryName": "ImageLocation", + "smithy.api#documentation": "

The location of the AMI.

", + "smithy.api#xmlName": "imageLocation" } }, - "c6gd_16xlarge": { - "target": "smithy.api#Unit", + "State": { + "target": "com.amazonaws.ec2#ImageState", "traits": { - "smithy.api#enumValue": "c6gd.16xlarge" + "aws.protocols#ec2QueryName": "ImageState", + "smithy.api#documentation": "

The current state of the AMI. If the state is available, the image is\n successfully registered and can be used to launch an instance.

", + "smithy.api#xmlName": "imageState" } }, - "c6gd_metal": { - "target": "smithy.api#Unit", + "OwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c6gd.metal" + "aws.protocols#ec2QueryName": "ImageOwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the image.

", + "smithy.api#xmlName": "imageOwnerId" } }, - "c6gn_medium": { - "target": "smithy.api#Unit", + "CreationDate": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c6gn.medium" + "aws.protocols#ec2QueryName": "CreationDate", + "smithy.api#documentation": "

The date and time the image was created.

", + "smithy.api#xmlName": "creationDate" } }, - "c6gn_large": { - "target": "smithy.api#Unit", + "Public": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "c6gn.large" + "aws.protocols#ec2QueryName": "IsPublic", + "smithy.api#documentation": "

Indicates whether the image has public launch permissions. The value is true\n if this image has public launch permissions or false if it has only implicit and\n explicit launch permissions.

", + "smithy.api#xmlName": "isPublic" } }, - "c6gn_xlarge": { - "target": "smithy.api#Unit", + "ProductCodes": { + "target": "com.amazonaws.ec2#ProductCodeList", "traits": { - "smithy.api#enumValue": "c6gn.xlarge" + "aws.protocols#ec2QueryName": "ProductCodes", + "smithy.api#documentation": "

Any product codes associated with the AMI.

", + "smithy.api#xmlName": "productCodes" } }, - "c6gn_2xlarge": { - "target": "smithy.api#Unit", + "Architecture": { + "target": "com.amazonaws.ec2#ArchitectureValues", "traits": { - "smithy.api#enumValue": "c6gn.2xlarge" + "aws.protocols#ec2QueryName": "Architecture", + "smithy.api#documentation": "

The architecture of the image.

", + "smithy.api#xmlName": "architecture" } }, - "c6gn_4xlarge": { - "target": "smithy.api#Unit", + "ImageType": { + "target": "com.amazonaws.ec2#ImageTypeValues", "traits": { - "smithy.api#enumValue": "c6gn.4xlarge" + "aws.protocols#ec2QueryName": "ImageType", + "smithy.api#documentation": "

The type of image.

", + "smithy.api#xmlName": "imageType" } }, - "c6gn_8xlarge": { - "target": "smithy.api#Unit", + "KernelId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c6gn.8xlarge" + "aws.protocols#ec2QueryName": "KernelId", + "smithy.api#documentation": "

The kernel associated with the image, if any. Only applicable for machine images.

", + "smithy.api#xmlName": "kernelId" } }, - "c6gn_12xlarge": { - "target": "smithy.api#Unit", + "RamdiskId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c6gn.12xlarge" + "aws.protocols#ec2QueryName": "RamdiskId", + "smithy.api#documentation": "

The RAM disk associated with the image, if any. Only applicable for machine images.

", + "smithy.api#xmlName": "ramdiskId" } }, - "c6gn_16xlarge": { - "target": "smithy.api#Unit", + "Platform": { + "target": "com.amazonaws.ec2#PlatformValues", "traits": { - "smithy.api#enumValue": "c6gn.16xlarge" + "aws.protocols#ec2QueryName": "Platform", + "smithy.api#documentation": "

This value is set to windows for Windows AMIs; otherwise, it is blank.

", + "smithy.api#xmlName": "platform" } - }, - "c6i_large": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes an image.

" + } + }, + "com.amazonaws.ec2#ImageAttribute": { + "type": "structure", + "members": { + "Description": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "smithy.api#enumValue": "c6i.large" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description for the AMI.

", + "smithy.api#xmlName": "description" } }, - "c6i_xlarge": { - "target": "smithy.api#Unit", + "KernelId": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "smithy.api#enumValue": "c6i.xlarge" + "aws.protocols#ec2QueryName": "Kernel", + "smithy.api#documentation": "

The kernel ID.

", + "smithy.api#xmlName": "kernel" } }, - "c6i_2xlarge": { - "target": "smithy.api#Unit", + "RamdiskId": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "smithy.api#enumValue": "c6i.2xlarge" + "aws.protocols#ec2QueryName": "Ramdisk", + "smithy.api#documentation": "

The RAM disk ID.

", + "smithy.api#xmlName": "ramdisk" } }, - "c6i_4xlarge": { - "target": "smithy.api#Unit", + "SriovNetSupport": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "smithy.api#enumValue": "c6i.4xlarge" + "aws.protocols#ec2QueryName": "SriovNetSupport", + "smithy.api#documentation": "

Indicates whether enhanced networking with the Intel 82599 Virtual Function interface is\n enabled.

", + "smithy.api#xmlName": "sriovNetSupport" } }, - "c6i_8xlarge": { - "target": "smithy.api#Unit", + "BootMode": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "smithy.api#enumValue": "c6i.8xlarge" + "aws.protocols#ec2QueryName": "BootMode", + "smithy.api#documentation": "

The boot mode.

", + "smithy.api#xmlName": "bootMode" } }, - "c6i_12xlarge": { - "target": "smithy.api#Unit", + "TpmSupport": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "smithy.api#enumValue": "c6i.12xlarge" + "aws.protocols#ec2QueryName": "TpmSupport", + "smithy.api#documentation": "

If the image is configured for NitroTPM support, the value is v2.0.

", + "smithy.api#xmlName": "tpmSupport" } }, - "c6i_16xlarge": { - "target": "smithy.api#Unit", + "UefiData": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "smithy.api#enumValue": "c6i.16xlarge" + "aws.protocols#ec2QueryName": "UefiData", + "smithy.api#documentation": "

Base64 representation of the non-volatile UEFI variable store. To retrieve the UEFI data,\n use the GetInstanceUefiData command. You can inspect and modify the UEFI data by using the\n python-uefivars tool on\n GitHub. For more information, see UEFI Secure Boot for Amazon EC2\n instances in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "uefiData" } }, - "c6i_24xlarge": { - "target": "smithy.api#Unit", + "LastLaunchedTime": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "smithy.api#enumValue": "c6i.24xlarge" + "aws.protocols#ec2QueryName": "LastLaunchedTime", + "smithy.api#documentation": "

The date and time, in ISO 8601 date-time\n format, when the AMI was last used to launch an EC2 instance. When the AMI is used\n to launch an instance, there is a 24-hour delay before that usage is reported.

\n \n

\n lastLaunchedTime data is available starting April 2017.

\n
", + "smithy.api#xmlName": "lastLaunchedTime" } }, - "c6i_32xlarge": { - "target": "smithy.api#Unit", + "ImdsSupport": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "smithy.api#enumValue": "c6i.32xlarge" + "aws.protocols#ec2QueryName": "ImdsSupport", + "smithy.api#documentation": "

If v2.0, it indicates that IMDSv2 is specified in the AMI. Instances launched\n from this AMI will have HttpTokens automatically set to required so\n that, by default, the instance requires that IMDSv2 is used when requesting instance metadata.\n In addition, HttpPutResponseHopLimit is set to 2. For more\n information, see Configure the AMI in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "imdsSupport" } }, - "c6i_metal": { - "target": "smithy.api#Unit", + "DeregistrationProtection": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "smithy.api#enumValue": "c6i.metal" + "aws.protocols#ec2QueryName": "DeregistrationProtection", + "smithy.api#documentation": "

Indicates whether deregistration protection is enabled for the AMI.

", + "smithy.api#xmlName": "deregistrationProtection" } }, - "cc1_4xlarge": { - "target": "smithy.api#Unit", + "ImageId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "cc1.4xlarge" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the AMI.

", + "smithy.api#xmlName": "imageId" } }, - "cc2_8xlarge": { - "target": "smithy.api#Unit", + "LaunchPermissions": { + "target": "com.amazonaws.ec2#LaunchPermissionList", "traits": { - "smithy.api#enumValue": "cc2.8xlarge" + "aws.protocols#ec2QueryName": "LaunchPermission", + "smithy.api#documentation": "

The launch permissions.

", + "smithy.api#xmlName": "launchPermission" } }, - "cg1_4xlarge": { - "target": "smithy.api#Unit", + "ProductCodes": { + "target": "com.amazonaws.ec2#ProductCodeList", "traits": { - "smithy.api#enumValue": "cg1.4xlarge" + "aws.protocols#ec2QueryName": "ProductCodes", + "smithy.api#documentation": "

The product codes.

", + "smithy.api#xmlName": "productCodes" } }, - "cr1_8xlarge": { - "target": "smithy.api#Unit", + "BlockDeviceMappings": { + "target": "com.amazonaws.ec2#BlockDeviceMappingList", "traits": { - "smithy.api#enumValue": "cr1.8xlarge" + "aws.protocols#ec2QueryName": "BlockDeviceMapping", + "smithy.api#documentation": "

The block device mapping entries.

", + "smithy.api#xmlName": "blockDeviceMapping" } - }, - "d2_xlarge": { + } + }, + "traits": { + "smithy.api#documentation": "

Describes an image attribute.

" + } + }, + "com.amazonaws.ec2#ImageAttributeName": { + "type": "enum", + "members": { + "description": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "d2.xlarge" + "smithy.api#enumValue": "description" } }, - "d2_2xlarge": { + "kernel": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "d2.2xlarge" + "smithy.api#enumValue": "kernel" } }, - "d2_4xlarge": { + "ramdisk": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "d2.4xlarge" + "smithy.api#enumValue": "ramdisk" } }, - "d2_8xlarge": { + "launchPermission": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "d2.8xlarge" + "smithy.api#enumValue": "launchPermission" } }, - "d3_xlarge": { + "productCodes": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "d3.xlarge" + "smithy.api#enumValue": "productCodes" } }, - "d3_2xlarge": { + "blockDeviceMapping": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "d3.2xlarge" + "smithy.api#enumValue": "blockDeviceMapping" } }, - "d3_4xlarge": { + "sriovNetSupport": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "d3.4xlarge" + "smithy.api#enumValue": "sriovNetSupport" } }, - "d3_8xlarge": { + "bootMode": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "d3.8xlarge" + "smithy.api#enumValue": "bootMode" } }, - "d3en_xlarge": { + "tpmSupport": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "d3en.xlarge" + "smithy.api#enumValue": "tpmSupport" } }, - "d3en_2xlarge": { + "uefiData": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "d3en.2xlarge" + "smithy.api#enumValue": "uefiData" } }, - "d3en_4xlarge": { + "lastLaunchedTime": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "d3en.4xlarge" + "smithy.api#enumValue": "lastLaunchedTime" } }, - "d3en_6xlarge": { + "imdsSupport": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "d3en.6xlarge" + "smithy.api#enumValue": "imdsSupport" } }, - "d3en_8xlarge": { + "deregistrationProtection": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "d3en.8xlarge" + "smithy.api#enumValue": "deregistrationProtection" } - }, - "d3en_12xlarge": { + } + } + }, + "com.amazonaws.ec2#ImageBlockPublicAccessDisabledState": { + "type": "enum", + "members": { + "unblocked": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "d3en.12xlarge" + "smithy.api#enumValue": "unblocked" } - }, - "dl1_24xlarge": { + } + } + }, + "com.amazonaws.ec2#ImageBlockPublicAccessEnabledState": { + "type": "enum", + "members": { + "block_new_sharing": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "dl1.24xlarge" + "smithy.api#enumValue": "block-new-sharing" } - }, - "f1_2xlarge": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#ImageCriterion": { + "type": "structure", + "members": { + "ImageProviders": { + "target": "com.amazonaws.ec2#ImageProviderList", "traits": { - "smithy.api#enumValue": "f1.2xlarge" + "aws.protocols#ec2QueryName": "ImageProviderSet", + "smithy.api#documentation": "

The image providers whose images are allowed.

\n

Possible values:

\n \n

Maximum: 200 values

", + "smithy.api#xmlName": "imageProviderSet" } }, - "f1_4xlarge": { - "target": "smithy.api#Unit", + "MarketplaceProductCodes": { + "target": "com.amazonaws.ec2#MarketplaceProductCodeList", "traits": { - "smithy.api#enumValue": "f1.4xlarge" + "aws.protocols#ec2QueryName": "MarketplaceProductCodeSet", + "smithy.api#documentation": "

The Amazon Web Services Marketplace product codes for allowed images.

\n

Length: 1-25 characters

\n

Valid characters: Letters (A–Z, a–z) and numbers (0–9)

\n

Maximum: 50 values

", + "smithy.api#xmlName": "marketplaceProductCodeSet" } }, - "f1_16xlarge": { - "target": "smithy.api#Unit", + "ImageNames": { + "target": "com.amazonaws.ec2#ImageNameList", "traits": { - "smithy.api#enumValue": "f1.16xlarge" + "aws.protocols#ec2QueryName": "ImageNameSet", + "smithy.api#documentation": "

The names of allowed images. Names can include wildcards (? and\n *).

\n

Length: 1–128 characters. With ?, the minimum is 3 characters.

\n

Valid characters:

\n \n

Maximum: 50 values

", + "smithy.api#xmlName": "imageNameSet" } }, - "g2_2xlarge": { - "target": "smithy.api#Unit", + "DeprecationTimeCondition": { + "target": "com.amazonaws.ec2#DeprecationTimeCondition", "traits": { - "smithy.api#enumValue": "g2.2xlarge" + "aws.protocols#ec2QueryName": "DeprecationTimeCondition", + "smithy.api#documentation": "

The maximum period since deprecation for allowed images.

", + "smithy.api#xmlName": "deprecationTimeCondition" } }, - "g2_8xlarge": { - "target": "smithy.api#Unit", + "CreationDateCondition": { + "target": "com.amazonaws.ec2#CreationDateCondition", "traits": { - "smithy.api#enumValue": "g2.8xlarge" + "aws.protocols#ec2QueryName": "CreationDateCondition", + "smithy.api#documentation": "

The maximum age for allowed images.

", + "smithy.api#xmlName": "creationDateCondition" } - }, - "g3_4xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The criteria that are evaluated to determine which AMIs are discoverable and usable in\n your account for the specified Amazon Web Services Region.

\n

For more information, see How Allowed AMIs\n works in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#ImageCriterionList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageCriterion", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImageCriterionRequest": { + "type": "structure", + "members": { + "ImageProviders": { + "target": "com.amazonaws.ec2#ImageProviderRequestList", "traits": { - "smithy.api#enumValue": "g3.4xlarge" + "smithy.api#documentation": "

The image providers whose images are allowed.

\n

Possible values:

\n \n

Maximum: 200 values

", + "smithy.api#xmlName": "ImageProvider" } }, - "g3_8xlarge": { - "target": "smithy.api#Unit", + "MarketplaceProductCodes": { + "target": "com.amazonaws.ec2#MarketplaceProductCodeRequestList", "traits": { - "smithy.api#enumValue": "g3.8xlarge" + "smithy.api#documentation": "

The Amazon Web Services Marketplace product codes for allowed images.

\n

Length: 1-25 characters

\n

Valid characters: Letters (A–Z, a–z) and numbers (0–9)

\n

Maximum: 50 values

", + "smithy.api#xmlName": "MarketplaceProductCode" } }, - "g3_16xlarge": { - "target": "smithy.api#Unit", + "ImageNames": { + "target": "com.amazonaws.ec2#ImageNameRequestList", "traits": { - "smithy.api#enumValue": "g3.16xlarge" + "smithy.api#documentation": "

The names of allowed images. Names can include wildcards (? and\n *).

\n

Length: 1–128 characters. With ?, the minimum is 3 characters.

\n

Valid characters:

\n \n

Maximum: 50 values

", + "smithy.api#xmlName": "ImageName" } }, - "g3s_xlarge": { - "target": "smithy.api#Unit", + "DeprecationTimeCondition": { + "target": "com.amazonaws.ec2#DeprecationTimeConditionRequest", "traits": { - "smithy.api#enumValue": "g3s.xlarge" + "smithy.api#documentation": "

The maximum period since deprecation for allowed images.

" } }, - "g4ad_xlarge": { - "target": "smithy.api#Unit", + "CreationDateCondition": { + "target": "com.amazonaws.ec2#CreationDateConditionRequest", "traits": { - "smithy.api#enumValue": "g4ad.xlarge" + "smithy.api#documentation": "

The maximum age for allowed images.

" } - }, - "g4ad_2xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The criteria that are evaluated to determine which AMIs are discoverable and usable in\n your account for the specified Amazon Web Services Region.

\n

The ImageCriteria can include up to:

\n \n

Each ImageCriterion can include up to:

\n \n

For more information, see How Allowed AMIs\n works in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#ImageCriterionRequestList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageCriterionRequest", + "traits": { + "smithy.api#xmlName": "ImageCriterion" + } + } + }, + "com.amazonaws.ec2#ImageDiskContainer": { + "type": "structure", + "members": { + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "g4ad.2xlarge" + "smithy.api#documentation": "

The description of the disk image.

" } }, - "g4ad_4xlarge": { - "target": "smithy.api#Unit", + "DeviceName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "g4ad.4xlarge" + "smithy.api#documentation": "

The block device mapping for the disk.

" } }, - "g4ad_8xlarge": { - "target": "smithy.api#Unit", + "Format": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "g4ad.8xlarge" + "smithy.api#documentation": "

The format of the disk image being imported.

\n

Valid values: OVA | VHD | VHDX | VMDK | RAW\n

" } }, - "g4ad_16xlarge": { - "target": "smithy.api#Unit", + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", "traits": { - "smithy.api#enumValue": "g4ad.16xlarge" + "smithy.api#documentation": "

The ID of the EBS snapshot to be used for importing the snapshot.

" } }, - "g4dn_xlarge": { - "target": "smithy.api#Unit", + "Url": { + "target": "com.amazonaws.ec2#SensitiveUrl", "traits": { - "smithy.api#enumValue": "g4dn.xlarge" + "smithy.api#documentation": "

The URL to the Amazon S3-based disk image being imported. The URL can either be a https URL (https://..) or an\n Amazon S3 URL (s3://..)

" } }, - "g4dn_2xlarge": { - "target": "smithy.api#Unit", + "UserBucket": { + "target": "com.amazonaws.ec2#UserBucket", "traits": { - "smithy.api#enumValue": "g4dn.2xlarge" + "smithy.api#documentation": "

The S3 bucket for the disk image.

" } - }, - "g4dn_4xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the disk container object for an import image task.

" + } + }, + "com.amazonaws.ec2#ImageDiskContainerList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageDiskContainer", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImageId": { + "type": "string" + }, + "com.amazonaws.ec2#ImageIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImageIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageId", + "traits": { + "smithy.api#xmlName": "ImageId" + } + } + }, + "com.amazonaws.ec2#ImageList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Image", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImageMetadata": { + "type": "structure", + "members": { + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { - "smithy.api#enumValue": "g4dn.4xlarge" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the AMI.

", + "smithy.api#xmlName": "imageId" } }, - "g4dn_8xlarge": { - "target": "smithy.api#Unit", + "Name": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "g4dn.8xlarge" + "aws.protocols#ec2QueryName": "Name", + "smithy.api#documentation": "

The name of the AMI.

", + "smithy.api#xmlName": "name" } }, - "g4dn_12xlarge": { - "target": "smithy.api#Unit", + "OwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "g4dn.12xlarge" - } - }, - "g4dn_16xlarge": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "g4dn.16xlarge" + "aws.protocols#ec2QueryName": "ImageOwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the AMI.

", + "smithy.api#xmlName": "imageOwnerId" } }, - "g4dn_metal": { - "target": "smithy.api#Unit", + "State": { + "target": "com.amazonaws.ec2#ImageState", "traits": { - "smithy.api#enumValue": "g4dn.metal" + "aws.protocols#ec2QueryName": "ImageState", + "smithy.api#documentation": "

The current state of the AMI. If the state is available, the AMI is\n successfully registered and can be used to launch an instance.

", + "smithy.api#xmlName": "imageState" } }, - "g5_xlarge": { - "target": "smithy.api#Unit", + "ImageOwnerAlias": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "g5.xlarge" + "aws.protocols#ec2QueryName": "ImageOwnerAlias", + "smithy.api#documentation": "

The alias of the AMI owner.

\n

Valid values: amazon | aws-backup-vault |\n aws-marketplace\n

", + "smithy.api#xmlName": "imageOwnerAlias" } }, - "g5_2xlarge": { - "target": "smithy.api#Unit", + "CreationDate": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "g5.2xlarge" + "aws.protocols#ec2QueryName": "CreationDate", + "smithy.api#documentation": "

The date and time the AMI was created.

", + "smithy.api#xmlName": "creationDate" } }, - "g5_4xlarge": { - "target": "smithy.api#Unit", + "DeprecationTime": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "g5.4xlarge" + "aws.protocols#ec2QueryName": "DeprecationTime", + "smithy.api#documentation": "

The deprecation date and time of the AMI, in UTC, in the following format:\n YYYY-MM-DDTHH:MM:SSZ.

", + "smithy.api#xmlName": "deprecationTime" } }, - "g5_8xlarge": { - "target": "smithy.api#Unit", + "ImageAllowed": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "g5.8xlarge" + "aws.protocols#ec2QueryName": "ImageAllowed", + "smithy.api#documentation": "

If true, the AMI satisfies the criteria for Allowed AMIs and can be\n discovered and used in the account. If false, the AMI can't be discovered or used\n in the account.

\n

For more information, see Control the discovery and use of AMIs in\n Amazon EC2 with Allowed AMIs in\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "imageAllowed" } }, - "g5_12xlarge": { - "target": "smithy.api#Unit", + "IsPublic": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "g5.12xlarge" + "aws.protocols#ec2QueryName": "IsPublic", + "smithy.api#documentation": "

Indicates whether the AMI has public launch permissions. A value of true\n means this AMI has public launch permissions, while false means it has only\n implicit (AMI owner) or explicit (shared with your account) launch permissions.

", + "smithy.api#xmlName": "isPublic" } - }, - "g5_16xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Information about the AMI.

" + } + }, + "com.amazonaws.ec2#ImageName": { + "type": "string" + }, + "com.amazonaws.ec2#ImageNameList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageName", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImageNameRequest": { + "type": "string" + }, + "com.amazonaws.ec2#ImageNameRequestList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageNameRequest", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImageProvider": { + "type": "string" + }, + "com.amazonaws.ec2#ImageProviderList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageProvider", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImageProviderRequest": { + "type": "string" + }, + "com.amazonaws.ec2#ImageProviderRequestList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageProviderRequest", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImageRecycleBinInfo": { + "type": "structure", + "members": { + "ImageId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "g5.16xlarge" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the AMI.

", + "smithy.api#xmlName": "imageId" } }, - "g5_24xlarge": { - "target": "smithy.api#Unit", + "Name": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "g5.24xlarge" + "aws.protocols#ec2QueryName": "Name", + "smithy.api#documentation": "

The name of the AMI.

", + "smithy.api#xmlName": "name" } }, - "g5_48xlarge": { - "target": "smithy.api#Unit", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "g5.48xlarge" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The description of the AMI.

", + "smithy.api#xmlName": "description" } }, - "g5g_xlarge": { - "target": "smithy.api#Unit", + "RecycleBinEnterTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#enumValue": "g5g.xlarge" + "aws.protocols#ec2QueryName": "RecycleBinEnterTime", + "smithy.api#documentation": "

The date and time when the AMI entered the Recycle Bin.

", + "smithy.api#xmlName": "recycleBinEnterTime" } }, - "g5g_2xlarge": { - "target": "smithy.api#Unit", + "RecycleBinExitTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#enumValue": "g5g.2xlarge" + "aws.protocols#ec2QueryName": "RecycleBinExitTime", + "smithy.api#documentation": "

The date and time when the AMI is to be permanently deleted from the Recycle Bin.

", + "smithy.api#xmlName": "recycleBinExitTime" } - }, - "g5g_4xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Information about an AMI that is currently in the Recycle Bin.

" + } + }, + "com.amazonaws.ec2#ImageRecycleBinInfoList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageRecycleBinInfo", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImageReference": { + "type": "structure", + "members": { + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { - "smithy.api#enumValue": "g5g.4xlarge" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the referenced image.

", + "smithy.api#xmlName": "imageId" } }, - "g5g_8xlarge": { - "target": "smithy.api#Unit", + "ResourceType": { + "target": "com.amazonaws.ec2#ImageReferenceResourceType", "traits": { - "smithy.api#enumValue": "g5g.8xlarge" + "aws.protocols#ec2QueryName": "ResourceType", + "smithy.api#documentation": "

The type of resource referencing the image.

", + "smithy.api#xmlName": "resourceType" } }, - "g5g_16xlarge": { - "target": "smithy.api#Unit", + "Arn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "g5g.16xlarge" + "aws.protocols#ec2QueryName": "Arn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the resource referencing the image.

", + "smithy.api#xmlName": "arn" } - }, - "g5g_metal": { + } + }, + "traits": { + "smithy.api#documentation": "

A resource that is referencing an image.

" + } + }, + "com.amazonaws.ec2#ImageReferenceList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageReference", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImageReferenceOptionName": { + "type": "enum", + "members": { + "STATE_NAME": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "g5g.metal" + "smithy.api#enumValue": "state-name" } }, - "hi1_4xlarge": { + "VERSION_DEPTH": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "hi1.4xlarge" + "smithy.api#enumValue": "version-depth" } - }, - "hpc6a_48xlarge": { + } + } + }, + "com.amazonaws.ec2#ImageReferenceResourceType": { + "type": "enum", + "members": { + "EC2_INSTANCE": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "hpc6a.48xlarge" + "smithy.api#enumValue": "ec2:Instance" } }, - "hs1_8xlarge": { + "EC2_LAUNCH_TEMPLATE": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "hs1.8xlarge" + "smithy.api#enumValue": "ec2:LaunchTemplate" } }, - "h1_2xlarge": { + "SSM_PARAMETER": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "h1.2xlarge" + "smithy.api#enumValue": "ssm:Parameter" } }, - "h1_4xlarge": { + "IMAGE_BUILDER_IMAGE_RECIPE": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "h1.4xlarge" + "smithy.api#enumValue": "imagebuilder:ImageRecipe" } }, - "h1_8xlarge": { + "IMAGE_BUILDER_CONTAINER_RECIPE": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "h1.8xlarge" + "smithy.api#enumValue": "imagebuilder:ContainerRecipe" } - }, - "h1_16xlarge": { + } + } + }, + "com.amazonaws.ec2#ImageState": { + "type": "enum", + "members": { + "pending": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "h1.16xlarge" + "smithy.api#enumValue": "pending" } }, - "i2_xlarge": { + "available": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "i2.xlarge" + "smithy.api#enumValue": "available" } }, - "i2_2xlarge": { + "invalid": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "i2.2xlarge" + "smithy.api#enumValue": "invalid" } }, - "i2_4xlarge": { + "deregistered": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "i2.4xlarge" + "smithy.api#enumValue": "deregistered" } }, - "i2_8xlarge": { + "transient": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "i2.8xlarge" + "smithy.api#enumValue": "transient" } }, - "i3_large": { + "failed": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "i3.large" + "smithy.api#enumValue": "failed" } }, - "i3_xlarge": { + "error": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "i3.xlarge" + "smithy.api#enumValue": "error" } }, - "i3_2xlarge": { + "disabled": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "i3.2xlarge" + "smithy.api#enumValue": "disabled" } - }, - "i3_4xlarge": { + } + } + }, + "com.amazonaws.ec2#ImageTypeValues": { + "type": "enum", + "members": { + "machine": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "i3.4xlarge" + "smithy.api#enumValue": "machine" } }, - "i3_8xlarge": { + "kernel": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "i3.8xlarge" + "smithy.api#enumValue": "kernel" } }, - "i3_16xlarge": { + "ramdisk": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "i3.16xlarge" + "smithy.api#enumValue": "ramdisk" } - }, - "i3_metal": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#ImageUsageReport": { + "type": "structure", + "members": { + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { - "smithy.api#enumValue": "i3.metal" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the image that was specified when the report was created.

", + "smithy.api#xmlName": "imageId" } }, - "i3en_large": { - "target": "smithy.api#Unit", + "ReportId": { + "target": "com.amazonaws.ec2#ImageUsageReportId", "traits": { - "smithy.api#enumValue": "i3en.large" + "aws.protocols#ec2QueryName": "ReportId", + "smithy.api#documentation": "

The ID of the report.

", + "smithy.api#xmlName": "reportId" } }, - "i3en_xlarge": { - "target": "smithy.api#Unit", + "ResourceTypes": { + "target": "com.amazonaws.ec2#ImageUsageResourceTypeList", "traits": { - "smithy.api#enumValue": "i3en.xlarge" + "aws.protocols#ec2QueryName": "ResourceTypeSet", + "smithy.api#documentation": "

The resource types that were specified when the report was created.

", + "smithy.api#xmlName": "resourceTypeSet" } }, - "i3en_2xlarge": { - "target": "smithy.api#Unit", + "AccountIds": { + "target": "com.amazonaws.ec2#UserIdList", "traits": { - "smithy.api#enumValue": "i3en.2xlarge" + "aws.protocols#ec2QueryName": "AccountIdSet", + "smithy.api#documentation": "

The IDs of the Amazon Web Services accounts that were specified when the report was created.

", + "smithy.api#xmlName": "accountIdSet" } }, - "i3en_3xlarge": { - "target": "smithy.api#Unit", + "State": { + "target": "com.amazonaws.ec2#ImageUsageReportState", "traits": { - "smithy.api#enumValue": "i3en.3xlarge" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the report. Possible values:

\n ", + "smithy.api#xmlName": "state" } }, - "i3en_6xlarge": { - "target": "smithy.api#Unit", + "StateReason": { + "target": "com.amazonaws.ec2#ImageUsageReportStateReason", "traits": { - "smithy.api#enumValue": "i3en.6xlarge" + "aws.protocols#ec2QueryName": "StateReason", + "smithy.api#documentation": "

Provides additional details when the report is in an error state.

", + "smithy.api#xmlName": "stateReason" } }, - "i3en_12xlarge": { - "target": "smithy.api#Unit", + "CreationTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#enumValue": "i3en.12xlarge" + "aws.protocols#ec2QueryName": "CreationTime", + "smithy.api#documentation": "

The date and time when the report was created.

", + "smithy.api#xmlName": "creationTime" } }, - "i3en_24xlarge": { - "target": "smithy.api#Unit", + "ExpirationTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#enumValue": "i3en.24xlarge" + "aws.protocols#ec2QueryName": "ExpirationTime", + "smithy.api#documentation": "

The date and time when Amazon EC2 will delete the report (30 days after the report was\n created).

", + "smithy.api#xmlName": "expirationTime" } }, - "i3en_metal": { - "target": "smithy.api#Unit", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "i3en.metal" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the report.

", + "smithy.api#xmlName": "tagSet" } - }, - "im4gn_large": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The configuration and status of an image usage report.

" + } + }, + "com.amazonaws.ec2#ImageUsageReportEntry": { + "type": "structure", + "members": { + "ResourceType": { + "target": "com.amazonaws.ec2#ImageUsageResourceTypeName", "traits": { - "smithy.api#enumValue": "im4gn.large" + "aws.protocols#ec2QueryName": "ResourceType", + "smithy.api#documentation": "

The type of resource (ec2:Instance or\n ec2:LaunchTemplate).

", + "smithy.api#xmlName": "resourceType" } }, - "im4gn_xlarge": { - "target": "smithy.api#Unit", + "ReportId": { + "target": "com.amazonaws.ec2#ImageUsageReportId", "traits": { - "smithy.api#enumValue": "im4gn.xlarge" + "aws.protocols#ec2QueryName": "ReportId", + "smithy.api#documentation": "

The ID of the report.

", + "smithy.api#xmlName": "reportId" } }, - "im4gn_2xlarge": { - "target": "smithy.api#Unit", + "UsageCount": { + "target": "com.amazonaws.ec2#Long", "traits": { - "smithy.api#enumValue": "im4gn.2xlarge" + "aws.protocols#ec2QueryName": "UsageCount", + "smithy.api#documentation": "

The number of times resources of this type reference this image in the account.

", + "smithy.api#xmlName": "usageCount" } }, - "im4gn_4xlarge": { - "target": "smithy.api#Unit", + "AccountId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "im4gn.4xlarge" + "aws.protocols#ec2QueryName": "AccountId", + "smithy.api#documentation": "

The ID of the account that uses the image.

", + "smithy.api#xmlName": "accountId" } }, - "im4gn_8xlarge": { - "target": "smithy.api#Unit", + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { - "smithy.api#enumValue": "im4gn.8xlarge" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the image.

", + "smithy.api#xmlName": "imageId" } }, - "im4gn_16xlarge": { - "target": "smithy.api#Unit", + "ReportCreationTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#enumValue": "im4gn.16xlarge" + "aws.protocols#ec2QueryName": "ReportCreationTime", + "smithy.api#documentation": "

The date and time the report creation was initiated.

", + "smithy.api#xmlName": "reportCreationTime" } - }, - "inf1_xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

A single entry in an image usage report, detailing how an image is being used by a\n specific Amazon Web Services account and resource type.

" + } + }, + "com.amazonaws.ec2#ImageUsageReportEntryList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageUsageReportEntry", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImageUsageReportId": { + "type": "string" + }, + "com.amazonaws.ec2#ImageUsageReportIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageUsageReportId" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 200 + } + } + }, + "com.amazonaws.ec2#ImageUsageReportList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageUsageReport", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImageUsageReportState": { + "type": "string" + }, + "com.amazonaws.ec2#ImageUsageReportStateReason": { + "type": "string" + }, + "com.amazonaws.ec2#ImageUsageReportUserIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "UserId" + } + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 200 + } + } + }, + "com.amazonaws.ec2#ImageUsageResourceType": { + "type": "structure", + "members": { + "ResourceType": { + "target": "com.amazonaws.ec2#ImageUsageResourceTypeName", "traits": { - "smithy.api#enumValue": "inf1.xlarge" + "aws.protocols#ec2QueryName": "ResourceType", + "smithy.api#documentation": "

The resource type.

\n

Valid values: ec2:Instance | ec2:LaunchTemplate\n

", + "smithy.api#xmlName": "resourceType" } }, - "inf1_2xlarge": { - "target": "smithy.api#Unit", + "ResourceTypeOptions": { + "target": "com.amazonaws.ec2#ImageUsageResourceTypeOptionList", "traits": { - "smithy.api#enumValue": "inf1.2xlarge" + "aws.protocols#ec2QueryName": "ResourceTypeOptionSet", + "smithy.api#documentation": "

The options that affect the scope of the report. Valid only when ResourceType\n is ec2:LaunchTemplate.

", + "smithy.api#xmlName": "resourceTypeOptionSet" } - }, - "inf1_6xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

A resource type to include in the report. Associated options can also be specified if the\n resource type is a launch template.

" + } + }, + "com.amazonaws.ec2#ImageUsageResourceTypeList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageUsageResourceType", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImageUsageResourceTypeName": { + "type": "string" + }, + "com.amazonaws.ec2#ImageUsageResourceTypeOption": { + "type": "structure", + "members": { + "OptionName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "inf1.6xlarge" + "aws.protocols#ec2QueryName": "OptionName", + "smithy.api#documentation": "

The name of the option.

", + "smithy.api#xmlName": "optionName" } }, - "inf1_24xlarge": { - "target": "smithy.api#Unit", + "OptionValues": { + "target": "com.amazonaws.ec2#ImageUsageResourceTypeOptionValuesList", "traits": { - "smithy.api#enumValue": "inf1.24xlarge" + "aws.protocols#ec2QueryName": "OptionValueSet", + "smithy.api#documentation": "

The number of launch template versions to check.

", + "smithy.api#xmlName": "optionValueSet" } - }, - "is4gen_medium": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The options that affect the scope of the report.

" + } + }, + "com.amazonaws.ec2#ImageUsageResourceTypeOptionList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageUsageResourceTypeOption", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImageUsageResourceTypeOptionRequest": { + "type": "structure", + "members": { + "OptionName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "is4gen.medium" + "smithy.api#documentation": "

The name of the option.

\n

Valid value: version-depth - The number of launch template versions to\n check.

" } }, - "is4gen_large": { - "target": "smithy.api#Unit", + "OptionValues": { + "target": "com.amazonaws.ec2#ImageUsageResourceTypeOptionValuesList", "traits": { - "smithy.api#enumValue": "is4gen.large" + "smithy.api#documentation": "

A value for the specified option.

\n

Valid values: Integers between 1 and 10000\n

\n

Default: 20\n

", + "smithy.api#xmlName": "OptionValue" } - }, - "is4gen_xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The options that affect the scope of the report.

" + } + }, + "com.amazonaws.ec2#ImageUsageResourceTypeOptionRequestList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageUsageResourceTypeOptionRequest" + } + }, + "com.amazonaws.ec2#ImageUsageResourceTypeOptionValue": { + "type": "string" + }, + "com.amazonaws.ec2#ImageUsageResourceTypeOptionValuesList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageUsageResourceTypeOptionValue", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImageUsageResourceTypeRequest": { + "type": "structure", + "members": { + "ResourceType": { + "target": "com.amazonaws.ec2#ImageUsageResourceTypeName", "traits": { - "smithy.api#enumValue": "is4gen.xlarge" + "smithy.api#documentation": "

The resource type.

\n

Valid values: ec2:Instance | ec2:LaunchTemplate\n

" } }, - "is4gen_2xlarge": { - "target": "smithy.api#Unit", + "ResourceTypeOptions": { + "target": "com.amazonaws.ec2#ImageUsageResourceTypeOptionRequestList", "traits": { - "smithy.api#enumValue": "is4gen.2xlarge" + "smithy.api#documentation": "

The options that affect the scope of the report. Valid only when ResourceType\n is ec2:LaunchTemplate.

", + "smithy.api#xmlName": "ResourceTypeOption" } - }, - "is4gen_4xlarge": { + } + }, + "traits": { + "smithy.api#documentation": "

A resource type to include in the report. Associated options can also be specified if the\n resource type is a launch template.

" + } + }, + "com.amazonaws.ec2#ImageUsageResourceTypeRequestList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImageUsageResourceTypeRequest" + } + }, + "com.amazonaws.ec2#ImdsSupportValues": { + "type": "enum", + "members": { + "v2_0": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "is4gen.4xlarge" + "smithy.api#enumValue": "v2.0" } - }, - "is4gen_8xlarge": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#ImportClientVpnClientCertificateRevocationList": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ImportClientVpnClientCertificateRevocationListRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ImportClientVpnClientCertificateRevocationListResult" + }, + "traits": { + "smithy.api#documentation": "

Uploads a client certificate revocation list to the specified Client VPN endpoint. Uploading a client certificate revocation list overwrites the existing client certificate revocation list.

\n

Uploading a client certificate revocation list resets existing client connections.

" + } + }, + "com.amazonaws.ec2#ImportClientVpnClientCertificateRevocationListRequest": { + "type": "structure", + "members": { + "ClientVpnEndpointId": { + "target": "com.amazonaws.ec2#ClientVpnEndpointId", "traits": { - "smithy.api#enumValue": "is4gen.8xlarge" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Client VPN endpoint to which the client certificate revocation list applies.

", + "smithy.api#required": {} } }, - "m1_small": { - "target": "smithy.api#Unit", + "CertificateRevocationList": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m1.small" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The client certificate revocation list file. For more information, see Generate a Client Certificate Revocation List in the\n\t\t\t\tClient VPN Administrator Guide.

", + "smithy.api#required": {} } }, - "m1_medium": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "m1.medium" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } - }, - "m1_large": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ImportClientVpnClientCertificateRevocationListResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "m1.large" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } - }, - "m1_xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ImportImage": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ImportImageRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ImportImageResult" + }, + "traits": { + "smithy.api#documentation": "\n

To import your virtual machines (VMs) with a console-based experience, you can use the\n Import virtual machine images to Amazon Web Services template in the Migration Hub Orchestrator console. For more\n information, see the \n Migration Hub Orchestrator User Guide\n .

\n
\n

Import single or multi-volume disk images or EBS snapshots into an Amazon Machine Image (AMI).

\n \n

Amazon Web Services VM Import/Export strongly recommends specifying a value for either the\n --license-type or --usage-operation parameter when you create a new\n VM Import task. This ensures your operating system is licensed appropriately and your billing is\n optimized.

\n
\n

For more information, see Importing a \n VM as an image using VM Import/Export in the VM Import/Export User Guide.

" + } + }, + "com.amazonaws.ec2#ImportImageLicenseConfigurationRequest": { + "type": "structure", + "members": { + "LicenseConfigurationArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m1.xlarge" + "smithy.api#documentation": "

The ARN of a license configuration.

" } - }, - "m2_xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The request information of license configurations.

" + } + }, + "com.amazonaws.ec2#ImportImageLicenseConfigurationResponse": { + "type": "structure", + "members": { + "LicenseConfigurationArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m2.xlarge" + "aws.protocols#ec2QueryName": "LicenseConfigurationArn", + "smithy.api#documentation": "

The ARN of a license configuration.

", + "smithy.api#xmlName": "licenseConfigurationArn" } - }, - "m2_2xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The response information for license configurations.

" + } + }, + "com.amazonaws.ec2#ImportImageLicenseSpecificationListRequest": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImportImageLicenseConfigurationRequest", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImportImageLicenseSpecificationListResponse": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImportImageLicenseConfigurationResponse", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImportImageRequest": { + "type": "structure", + "members": { + "Architecture": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m2.2xlarge" + "smithy.api#documentation": "

The architecture of the virtual machine.

\n

Valid values: i386 | x86_64\n

" } }, - "m2_4xlarge": { - "target": "smithy.api#Unit", + "ClientData": { + "target": "com.amazonaws.ec2#ClientData", "traits": { - "smithy.api#enumValue": "m2.4xlarge" + "smithy.api#documentation": "

The client-specific data.

" } }, - "m3_medium": { - "target": "smithy.api#Unit", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m3.medium" + "smithy.api#documentation": "

The token to enable idempotency for VM import requests.

" } }, - "m3_large": { - "target": "smithy.api#Unit", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m3.large" + "smithy.api#documentation": "

A description string for the import image task.

" } }, - "m3_xlarge": { - "target": "smithy.api#Unit", + "DiskContainers": { + "target": "com.amazonaws.ec2#ImageDiskContainerList", "traits": { - "smithy.api#enumValue": "m3.xlarge" + "smithy.api#documentation": "

Information about the disk containers.

", + "smithy.api#xmlName": "DiskContainer" } }, - "m3_2xlarge": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "m3.2xlarge" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "m4_large": { - "target": "smithy.api#Unit", + "Encrypted": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "m4.large" + "smithy.api#documentation": "

Specifies whether the destination AMI of the imported image should be encrypted. The default KMS key for EBS is used\n unless you specify a non-default KMS key using KmsKeyId. For more information, see Amazon EBS Encryption in the\n Amazon Elastic Compute Cloud User Guide.

" } }, - "m4_xlarge": { - "target": "smithy.api#Unit", + "Hypervisor": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m4.xlarge" + "smithy.api#documentation": "

The target hypervisor platform.

\n

Valid values: xen\n

" } }, - "m4_2xlarge": { - "target": "smithy.api#Unit", + "KmsKeyId": { + "target": "com.amazonaws.ec2#KmsKeyId", "traits": { - "smithy.api#enumValue": "m4.2xlarge" + "smithy.api#documentation": "

An identifier for the symmetric KMS key to use when creating the\n encrypted AMI. This parameter is only required if you want to use a non-default KMS key; if this\n parameter is not specified, the default KMS key for EBS is used. If a KmsKeyId is\n specified, the Encrypted flag must also be set.

\n

The KMS key identifier may be provided in any of the following formats:

\n \n

Amazon Web Services parses KmsKeyId asynchronously, meaning that the action you call may appear to complete even\n though you provided an invalid identifier. This action will eventually report failure.

\n

The specified KMS key must exist in the Region that the AMI is being copied to.

\n

Amazon EBS does not support asymmetric KMS keys.

" } }, - "m4_4xlarge": { - "target": "smithy.api#Unit", + "LicenseType": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m4.4xlarge" + "smithy.api#documentation": "

The license type to be used for the Amazon Machine Image (AMI) after importing.

\n

Specify AWS to replace the source-system license with an Amazon Web Services\n license or BYOL to retain the source-system license. Leaving this parameter\n undefined is the same as choosing AWS when importing a Windows Server operating\n system, and the same as choosing BYOL when importing a Windows client operating\n system (such as Windows 10) or a Linux operating system.

\n

To use BYOL, you must have existing licenses with rights to use these licenses in a third party\n cloud, such as Amazon Web Services. For more information, see Prerequisites in the\n VM Import/Export User Guide.

" } }, - "m4_10xlarge": { - "target": "smithy.api#Unit", + "Platform": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m4.10xlarge" + "smithy.api#documentation": "

The operating system of the virtual machine. If you import a VM that is compatible with\n Unified Extensible Firmware Interface (UEFI) using an EBS snapshot, you must specify a value for\n the platform.

\n

Valid values: Windows | Linux\n

" } }, - "m4_16xlarge": { - "target": "smithy.api#Unit", + "RoleName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m4.16xlarge" + "smithy.api#documentation": "

The name of the role to use when not using the default role, 'vmimport'.

" } }, - "m5_large": { - "target": "smithy.api#Unit", + "LicenseSpecifications": { + "target": "com.amazonaws.ec2#ImportImageLicenseSpecificationListRequest", "traits": { - "smithy.api#enumValue": "m5.large" + "smithy.api#documentation": "

The ARNs of the license configurations.

" } }, - "m5_xlarge": { - "target": "smithy.api#Unit", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#enumValue": "m5.xlarge" + "smithy.api#documentation": "

The tags to apply to the import image task during creation.

", + "smithy.api#xmlName": "TagSpecification" } }, - "m5_2xlarge": { - "target": "smithy.api#Unit", + "UsageOperation": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5.2xlarge" + "smithy.api#documentation": "

The usage operation value. For more information, see Licensing options in the VM Import/Export User Guide.

" } }, - "m5_4xlarge": { - "target": "smithy.api#Unit", + "BootMode": { + "target": "com.amazonaws.ec2#BootModeValues", "traits": { - "smithy.api#enumValue": "m5.4xlarge" + "smithy.api#documentation": "

The boot mode of the virtual machine.

\n \n

The uefi-preferred boot mode isn't supported for importing images. For more\n information, see Boot modes in\n the VM Import/Export User Guide.

\n
" } - }, - "m5_8xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ImportImageResult": { + "type": "structure", + "members": { + "Architecture": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5.8xlarge" + "aws.protocols#ec2QueryName": "Architecture", + "smithy.api#documentation": "

The architecture of the virtual machine.

", + "smithy.api#xmlName": "architecture" } }, - "m5_12xlarge": { - "target": "smithy.api#Unit", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5.12xlarge" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description of the import task.

", + "smithy.api#xmlName": "description" } }, - "m5_16xlarge": { - "target": "smithy.api#Unit", + "Encrypted": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "m5.16xlarge" + "aws.protocols#ec2QueryName": "Encrypted", + "smithy.api#documentation": "

Indicates whether the AMI is encrypted.

", + "smithy.api#xmlName": "encrypted" } }, - "m5_24xlarge": { - "target": "smithy.api#Unit", + "Hypervisor": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5.24xlarge" + "aws.protocols#ec2QueryName": "Hypervisor", + "smithy.api#documentation": "

The target hypervisor of the import task.

", + "smithy.api#xmlName": "hypervisor" } }, - "m5_metal": { - "target": "smithy.api#Unit", + "ImageId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5.metal" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the Amazon Machine Image (AMI) created by the import task.

", + "smithy.api#xmlName": "imageId" } }, - "m5a_large": { - "target": "smithy.api#Unit", + "ImportTaskId": { + "target": "com.amazonaws.ec2#ImportImageTaskId", "traits": { - "smithy.api#enumValue": "m5a.large" + "aws.protocols#ec2QueryName": "ImportTaskId", + "smithy.api#documentation": "

The task ID of the import image task.

", + "smithy.api#xmlName": "importTaskId" } }, - "m5a_xlarge": { - "target": "smithy.api#Unit", + "KmsKeyId": { + "target": "com.amazonaws.ec2#KmsKeyId", "traits": { - "smithy.api#enumValue": "m5a.xlarge" + "aws.protocols#ec2QueryName": "KmsKeyId", + "smithy.api#documentation": "

The identifier for the symmetric KMS key that was used to create the encrypted AMI.

", + "smithy.api#xmlName": "kmsKeyId" } }, - "m5a_2xlarge": { - "target": "smithy.api#Unit", + "LicenseType": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5a.2xlarge" + "aws.protocols#ec2QueryName": "LicenseType", + "smithy.api#documentation": "

The license type of the virtual machine.

", + "smithy.api#xmlName": "licenseType" } }, - "m5a_4xlarge": { - "target": "smithy.api#Unit", + "Platform": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5a.4xlarge" + "aws.protocols#ec2QueryName": "Platform", + "smithy.api#documentation": "

The operating system of the virtual machine.

", + "smithy.api#xmlName": "platform" } }, - "m5a_8xlarge": { - "target": "smithy.api#Unit", + "Progress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5a.8xlarge" + "aws.protocols#ec2QueryName": "Progress", + "smithy.api#documentation": "

The progress of the task.

", + "smithy.api#xmlName": "progress" } }, - "m5a_12xlarge": { - "target": "smithy.api#Unit", + "SnapshotDetails": { + "target": "com.amazonaws.ec2#SnapshotDetailList", "traits": { - "smithy.api#enumValue": "m5a.12xlarge" + "aws.protocols#ec2QueryName": "SnapshotDetailSet", + "smithy.api#documentation": "

Information about the snapshots.

", + "smithy.api#xmlName": "snapshotDetailSet" } }, - "m5a_16xlarge": { - "target": "smithy.api#Unit", + "Status": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5a.16xlarge" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

A brief status of the task.

", + "smithy.api#xmlName": "status" } }, - "m5a_24xlarge": { - "target": "smithy.api#Unit", + "StatusMessage": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5a.24xlarge" + "aws.protocols#ec2QueryName": "StatusMessage", + "smithy.api#documentation": "

A detailed status message of the import task.

", + "smithy.api#xmlName": "statusMessage" } }, - "m5ad_large": { - "target": "smithy.api#Unit", + "LicenseSpecifications": { + "target": "com.amazonaws.ec2#ImportImageLicenseSpecificationListResponse", "traits": { - "smithy.api#enumValue": "m5ad.large" + "aws.protocols#ec2QueryName": "LicenseSpecifications", + "smithy.api#documentation": "

The ARNs of the license configurations.

", + "smithy.api#xmlName": "licenseSpecifications" } }, - "m5ad_xlarge": { - "target": "smithy.api#Unit", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "m5ad.xlarge" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the import image task.

", + "smithy.api#xmlName": "tagSet" } }, - "m5ad_2xlarge": { - "target": "smithy.api#Unit", + "UsageOperation": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5ad.2xlarge" + "aws.protocols#ec2QueryName": "UsageOperation", + "smithy.api#documentation": "

The usage operation value.

", + "smithy.api#xmlName": "usageOperation" } - }, - "m5ad_4xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ImportImageTask": { + "type": "structure", + "members": { + "Architecture": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5ad.4xlarge" + "aws.protocols#ec2QueryName": "Architecture", + "smithy.api#documentation": "

The architecture of the virtual machine.

\n

Valid values: i386 | x86_64 | arm64\n

", + "smithy.api#xmlName": "architecture" } }, - "m5ad_8xlarge": { - "target": "smithy.api#Unit", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5ad.8xlarge" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description of the import task.

", + "smithy.api#xmlName": "description" } }, - "m5ad_12xlarge": { - "target": "smithy.api#Unit", + "Encrypted": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "m5ad.12xlarge" + "aws.protocols#ec2QueryName": "Encrypted", + "smithy.api#documentation": "

Indicates whether the image is encrypted.

", + "smithy.api#xmlName": "encrypted" } }, - "m5ad_16xlarge": { - "target": "smithy.api#Unit", + "Hypervisor": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5ad.16xlarge" + "aws.protocols#ec2QueryName": "Hypervisor", + "smithy.api#documentation": "

The target hypervisor for the import task.

\n

Valid values: xen\n

", + "smithy.api#xmlName": "hypervisor" } }, - "m5ad_24xlarge": { - "target": "smithy.api#Unit", + "ImageId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5ad.24xlarge" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the Amazon Machine Image (AMI) of the imported virtual machine.

", + "smithy.api#xmlName": "imageId" } }, - "m5d_large": { - "target": "smithy.api#Unit", + "ImportTaskId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5d.large" + "aws.protocols#ec2QueryName": "ImportTaskId", + "smithy.api#documentation": "

The ID of the import image task.

", + "smithy.api#xmlName": "importTaskId" } }, - "m5d_xlarge": { - "target": "smithy.api#Unit", + "KmsKeyId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5d.xlarge" + "aws.protocols#ec2QueryName": "KmsKeyId", + "smithy.api#documentation": "

The identifier for the KMS key that was used to create the encrypted image.

", + "smithy.api#xmlName": "kmsKeyId" } }, - "m5d_2xlarge": { - "target": "smithy.api#Unit", + "LicenseType": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5d.2xlarge" + "aws.protocols#ec2QueryName": "LicenseType", + "smithy.api#documentation": "

The license type of the virtual machine.

", + "smithy.api#xmlName": "licenseType" } }, - "m5d_4xlarge": { - "target": "smithy.api#Unit", + "Platform": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5d.4xlarge" + "aws.protocols#ec2QueryName": "Platform", + "smithy.api#documentation": "

The description string for the import image task.

", + "smithy.api#xmlName": "platform" } }, - "m5d_8xlarge": { - "target": "smithy.api#Unit", + "Progress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5d.8xlarge" + "aws.protocols#ec2QueryName": "Progress", + "smithy.api#documentation": "

The percentage of progress of the import image task.

", + "smithy.api#xmlName": "progress" } }, - "m5d_12xlarge": { - "target": "smithy.api#Unit", + "SnapshotDetails": { + "target": "com.amazonaws.ec2#SnapshotDetailList", "traits": { - "smithy.api#enumValue": "m5d.12xlarge" + "aws.protocols#ec2QueryName": "SnapshotDetailSet", + "smithy.api#documentation": "

Information about the snapshots.

", + "smithy.api#xmlName": "snapshotDetailSet" } }, - "m5d_16xlarge": { - "target": "smithy.api#Unit", + "Status": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5d.16xlarge" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

A brief status for the import image task.

", + "smithy.api#xmlName": "status" } }, - "m5d_24xlarge": { - "target": "smithy.api#Unit", + "StatusMessage": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5d.24xlarge" + "aws.protocols#ec2QueryName": "StatusMessage", + "smithy.api#documentation": "

A descriptive status message for the import image task.

", + "smithy.api#xmlName": "statusMessage" } }, - "m5d_metal": { - "target": "smithy.api#Unit", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "m5d.metal" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags for the import image task.

", + "smithy.api#xmlName": "tagSet" } }, - "m5dn_large": { - "target": "smithy.api#Unit", + "LicenseSpecifications": { + "target": "com.amazonaws.ec2#ImportImageLicenseSpecificationListResponse", "traits": { - "smithy.api#enumValue": "m5dn.large" + "aws.protocols#ec2QueryName": "LicenseSpecifications", + "smithy.api#documentation": "

The ARNs of the license configurations that are associated with the import image task.

", + "smithy.api#xmlName": "licenseSpecifications" } }, - "m5dn_xlarge": { - "target": "smithy.api#Unit", + "UsageOperation": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5dn.xlarge" + "aws.protocols#ec2QueryName": "UsageOperation", + "smithy.api#documentation": "

The usage operation value.

", + "smithy.api#xmlName": "usageOperation" } }, - "m5dn_2xlarge": { - "target": "smithy.api#Unit", + "BootMode": { + "target": "com.amazonaws.ec2#BootModeValues", "traits": { - "smithy.api#enumValue": "m5dn.2xlarge" - } - }, - "m5dn_4xlarge": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "m5dn.4xlarge" - } - }, - "m5dn_8xlarge": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "m5dn.8xlarge" + "aws.protocols#ec2QueryName": "BootMode", + "smithy.api#documentation": "

The boot mode of the virtual machine.

", + "smithy.api#xmlName": "bootMode" } - }, - "m5dn_12xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes an import image task.

" + } + }, + "com.amazonaws.ec2#ImportImageTaskId": { + "type": "string" + }, + "com.amazonaws.ec2#ImportImageTaskList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImportImageTask", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImportInstance": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ImportInstanceRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ImportInstanceResult" + }, + "traits": { + "smithy.api#documentation": "\n

We recommend that you use the \n ImportImage\n \n API instead. For more information, see Importing a VM as an image using VM\n Import/Export in the VM Import/Export User Guide.

\n
\n

Creates an import instance task using metadata from the specified disk image.

\n

This API action supports only single-volume VMs. To import multi-volume VMs, use ImportImage\n instead.

\n

For information about the import manifest referenced by this API action, see VM Import Manifest.

\n

This API action is not supported by the Command Line Interface (CLI).

" + } + }, + "com.amazonaws.ec2#ImportInstanceLaunchSpecification": { + "type": "structure", + "members": { + "Architecture": { + "target": "com.amazonaws.ec2#ArchitectureValues", "traits": { - "smithy.api#enumValue": "m5dn.12xlarge" + "aws.protocols#ec2QueryName": "Architecture", + "smithy.api#documentation": "

The architecture of the instance.

", + "smithy.api#xmlName": "architecture" } }, - "m5dn_16xlarge": { - "target": "smithy.api#Unit", + "GroupNames": { + "target": "com.amazonaws.ec2#SecurityGroupStringList", "traits": { - "smithy.api#enumValue": "m5dn.16xlarge" + "smithy.api#documentation": "

The security group names.

", + "smithy.api#xmlName": "GroupName" } }, - "m5dn_24xlarge": { - "target": "smithy.api#Unit", + "GroupIds": { + "target": "com.amazonaws.ec2#SecurityGroupIdStringList", "traits": { - "smithy.api#enumValue": "m5dn.24xlarge" + "smithy.api#documentation": "

The security group IDs.

", + "smithy.api#xmlName": "GroupId" } }, - "m5dn_metal": { - "target": "smithy.api#Unit", + "AdditionalInfo": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5dn.metal" + "aws.protocols#ec2QueryName": "AdditionalInfo", + "smithy.api#documentation": "

Reserved.

", + "smithy.api#xmlName": "additionalInfo" } }, - "m5n_large": { - "target": "smithy.api#Unit", + "UserData": { + "target": "com.amazonaws.ec2#UserData", "traits": { - "smithy.api#enumValue": "m5n.large" + "aws.protocols#ec2QueryName": "UserData", + "smithy.api#documentation": "

The Base64-encoded user data to make available to the instance.

", + "smithy.api#xmlName": "userData" } }, - "m5n_xlarge": { - "target": "smithy.api#Unit", + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", "traits": { - "smithy.api#enumValue": "m5n.xlarge" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type. For more information about the instance types that you can import, see Instance Types in the\n VM Import/Export User Guide.

", + "smithy.api#xmlName": "instanceType" } }, - "m5n_2xlarge": { - "target": "smithy.api#Unit", + "Placement": { + "target": "com.amazonaws.ec2#Placement", "traits": { - "smithy.api#enumValue": "m5n.2xlarge" + "aws.protocols#ec2QueryName": "Placement", + "smithy.api#documentation": "

The placement information for the instance.

", + "smithy.api#xmlName": "placement" } }, - "m5n_4xlarge": { - "target": "smithy.api#Unit", + "Monitoring": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "m5n.4xlarge" + "aws.protocols#ec2QueryName": "Monitoring", + "smithy.api#documentation": "

Indicates whether monitoring is enabled.

", + "smithy.api#xmlName": "monitoring" } }, - "m5n_8xlarge": { - "target": "smithy.api#Unit", + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", "traits": { - "smithy.api#enumValue": "m5n.8xlarge" + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

[EC2-VPC] The ID of the subnet in which to launch the instance.

", + "smithy.api#xmlName": "subnetId" } }, - "m5n_12xlarge": { - "target": "smithy.api#Unit", + "InstanceInitiatedShutdownBehavior": { + "target": "com.amazonaws.ec2#ShutdownBehavior", "traits": { - "smithy.api#enumValue": "m5n.12xlarge" + "aws.protocols#ec2QueryName": "InstanceInitiatedShutdownBehavior", + "smithy.api#documentation": "

Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the\n operating system command for system shutdown).

", + "smithy.api#xmlName": "instanceInitiatedShutdownBehavior" } }, - "m5n_16xlarge": { - "target": "smithy.api#Unit", + "PrivateIpAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5n.16xlarge" + "aws.protocols#ec2QueryName": "PrivateIpAddress", + "smithy.api#documentation": "

[EC2-VPC] An available IP address from the IP address range of the subnet.

", + "smithy.api#xmlName": "privateIpAddress" } - }, - "m5n_24xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the launch specification for VM import.

" + } + }, + "com.amazonaws.ec2#ImportInstanceRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "m5n.24xlarge" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "m5n_metal": { - "target": "smithy.api#Unit", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5n.metal" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description for the instance being imported.

", + "smithy.api#xmlName": "description" } }, - "m5zn_large": { - "target": "smithy.api#Unit", + "LaunchSpecification": { + "target": "com.amazonaws.ec2#ImportInstanceLaunchSpecification", "traits": { - "smithy.api#enumValue": "m5zn.large" + "aws.protocols#ec2QueryName": "LaunchSpecification", + "smithy.api#documentation": "

The launch specification.

", + "smithy.api#xmlName": "launchSpecification" } }, - "m5zn_xlarge": { - "target": "smithy.api#Unit", + "DiskImages": { + "target": "com.amazonaws.ec2#DiskImageList", "traits": { - "smithy.api#enumValue": "m5zn.xlarge" + "aws.protocols#ec2QueryName": "DiskImage", + "smithy.api#documentation": "

The disk image.

", + "smithy.api#xmlName": "diskImage" } }, - "m5zn_2xlarge": { - "target": "smithy.api#Unit", + "Platform": { + "target": "com.amazonaws.ec2#PlatformValues", "traits": { - "smithy.api#enumValue": "m5zn.2xlarge" + "aws.protocols#ec2QueryName": "Platform", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The instance operating system.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "platform" } - }, - "m5zn_3xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ImportInstanceResult": { + "type": "structure", + "members": { + "ConversionTask": { + "target": "com.amazonaws.ec2#ConversionTask", "traits": { - "smithy.api#enumValue": "m5zn.3xlarge" + "aws.protocols#ec2QueryName": "ConversionTask", + "smithy.api#documentation": "

Information about the conversion task.

", + "smithy.api#xmlName": "conversionTask" } - }, - "m5zn_6xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ImportInstanceTaskDetails": { + "type": "structure", + "members": { + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5zn.6xlarge" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description of the task.

", + "smithy.api#xmlName": "description" } }, - "m5zn_12xlarge": { - "target": "smithy.api#Unit", + "InstanceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m5zn.12xlarge" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#xmlName": "instanceId" } }, - "m5zn_metal": { - "target": "smithy.api#Unit", + "Platform": { + "target": "com.amazonaws.ec2#PlatformValues", "traits": { - "smithy.api#enumValue": "m5zn.metal" + "aws.protocols#ec2QueryName": "Platform", + "smithy.api#documentation": "

The instance operating system.

", + "smithy.api#xmlName": "platform" } }, - "m6a_large": { - "target": "smithy.api#Unit", + "Volumes": { + "target": "com.amazonaws.ec2#ImportInstanceVolumeDetailSet", "traits": { - "smithy.api#enumValue": "m6a.large" + "aws.protocols#ec2QueryName": "Volumes", + "smithy.api#documentation": "

The volumes.

", + "smithy.api#xmlName": "volumes" } - }, - "m6a_xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes an import instance task.

" + } + }, + "com.amazonaws.ec2#ImportInstanceVolumeDetailItem": { + "type": "structure", + "members": { + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6a.xlarge" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone where the resulting instance will reside.

", + "smithy.api#xmlName": "availabilityZone" } }, - "m6a_2xlarge": { - "target": "smithy.api#Unit", + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6a.2xlarge" + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone where the resulting instance will reside.

", + "smithy.api#xmlName": "availabilityZoneId" } }, - "m6a_4xlarge": { - "target": "smithy.api#Unit", + "BytesConverted": { + "target": "com.amazonaws.ec2#Long", "traits": { - "smithy.api#enumValue": "m6a.4xlarge" + "aws.protocols#ec2QueryName": "BytesConverted", + "smithy.api#documentation": "

The number of bytes converted so far.

", + "smithy.api#xmlName": "bytesConverted" } }, - "m6a_8xlarge": { - "target": "smithy.api#Unit", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6a.8xlarge" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description of the task.

", + "smithy.api#xmlName": "description" } }, - "m6a_12xlarge": { - "target": "smithy.api#Unit", + "Image": { + "target": "com.amazonaws.ec2#DiskImageDescription", "traits": { - "smithy.api#enumValue": "m6a.12xlarge" + "aws.protocols#ec2QueryName": "Image", + "smithy.api#documentation": "

The image.

", + "smithy.api#xmlName": "image" } }, - "m6a_16xlarge": { - "target": "smithy.api#Unit", + "Status": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6a.16xlarge" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The status of the import of this particular disk image.

", + "smithy.api#xmlName": "status" } }, - "m6a_24xlarge": { - "target": "smithy.api#Unit", + "StatusMessage": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6a.24xlarge" + "aws.protocols#ec2QueryName": "StatusMessage", + "smithy.api#documentation": "

The status information or errors related to the disk image.

", + "smithy.api#xmlName": "statusMessage" } }, - "m6a_32xlarge": { - "target": "smithy.api#Unit", + "Volume": { + "target": "com.amazonaws.ec2#DiskImageVolumeDescription", "traits": { - "smithy.api#enumValue": "m6a.32xlarge" + "aws.protocols#ec2QueryName": "Volume", + "smithy.api#documentation": "

The volume.

", + "smithy.api#xmlName": "volume" } - }, - "m6a_48xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes an import volume task.

" + } + }, + "com.amazonaws.ec2#ImportInstanceVolumeDetailSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImportInstanceVolumeDetailItem", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImportKeyPair": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ImportKeyPairRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ImportKeyPairResult" + }, + "traits": { + "smithy.api#documentation": "

Imports the public key from an RSA or ED25519 key pair that you created using a third-party tool. \n You give Amazon Web Services only the public key. The private key is never transferred between you and Amazon Web Services.

\n

For more information about the requirements for importing a key pair, see Create a key pair and import the public key to Amazon EC2 in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#ImportKeyPairRequest": { + "type": "structure", + "members": { + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#enumValue": "m6a.48xlarge" + "smithy.api#documentation": "

The tags to apply to the imported key pair.

", + "smithy.api#xmlName": "TagSpecification" } }, - "m6g_metal": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "m6g.metal" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "m6g_medium": { - "target": "smithy.api#Unit", + "KeyName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6g.medium" + "aws.protocols#ec2QueryName": "KeyName", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A unique name for the key pair.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "keyName" } }, - "m6g_large": { - "target": "smithy.api#Unit", + "PublicKeyMaterial": { + "target": "com.amazonaws.ec2#Blob", "traits": { - "smithy.api#enumValue": "m6g.large" + "aws.protocols#ec2QueryName": "PublicKeyMaterial", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The public key.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "publicKeyMaterial" } - }, - "m6g_xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ImportKeyPairResult": { + "type": "structure", + "members": { + "KeyFingerprint": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6g.xlarge" + "aws.protocols#ec2QueryName": "KeyFingerprint", + "smithy.api#documentation": "", + "smithy.api#xmlName": "keyFingerprint" } }, - "m6g_2xlarge": { - "target": "smithy.api#Unit", + "KeyName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6g.2xlarge" + "aws.protocols#ec2QueryName": "KeyName", + "smithy.api#documentation": "

The key pair name that you provided.

", + "smithy.api#xmlName": "keyName" } }, - "m6g_4xlarge": { - "target": "smithy.api#Unit", + "KeyPairId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6g.4xlarge" + "aws.protocols#ec2QueryName": "KeyPairId", + "smithy.api#documentation": "

The ID of the resulting key pair.

", + "smithy.api#xmlName": "keyPairId" } }, - "m6g_8xlarge": { - "target": "smithy.api#Unit", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "m6g.8xlarge" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags applied to the imported key pair.

", + "smithy.api#xmlName": "tagSet" } - }, - "m6g_12xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ImportManifestUrl": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.ec2#ImportSnapshot": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ImportSnapshotRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ImportSnapshotResult" + }, + "traits": { + "smithy.api#documentation": "

Imports a disk into an EBS snapshot.

\n

For more information, see Importing a disk as a snapshot using VM Import/Export in the \n VM Import/Export User Guide.

" + } + }, + "com.amazonaws.ec2#ImportSnapshotRequest": { + "type": "structure", + "members": { + "ClientData": { + "target": "com.amazonaws.ec2#ClientData", "traits": { - "smithy.api#enumValue": "m6g.12xlarge" + "smithy.api#documentation": "

The client-specific data.

" } }, - "m6g_16xlarge": { - "target": "smithy.api#Unit", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6g.16xlarge" + "smithy.api#documentation": "

Token to enable idempotency for VM import requests.

" } }, - "m6gd_metal": { - "target": "smithy.api#Unit", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6gd.metal" + "smithy.api#documentation": "

The description string for the import snapshot task.

" } }, - "m6gd_medium": { - "target": "smithy.api#Unit", + "DiskContainer": { + "target": "com.amazonaws.ec2#SnapshotDiskContainer", "traits": { - "smithy.api#enumValue": "m6gd.medium" + "smithy.api#documentation": "

Information about the disk container.

" } }, - "m6gd_large": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "m6gd.large" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "m6gd_xlarge": { - "target": "smithy.api#Unit", + "Encrypted": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "m6gd.xlarge" + "smithy.api#documentation": "

Specifies whether the destination snapshot of the imported image should be encrypted. The default KMS key for EBS is\n used unless you specify a non-default KMS key using KmsKeyId. For more information, see Amazon EBS Encryption in the\n Amazon Elastic Compute Cloud User Guide.

" } }, - "m6gd_2xlarge": { - "target": "smithy.api#Unit", + "KmsKeyId": { + "target": "com.amazonaws.ec2#KmsKeyId", "traits": { - "smithy.api#enumValue": "m6gd.2xlarge" + "smithy.api#documentation": "

An identifier for the symmetric KMS key to use when creating the\n encrypted snapshot. This parameter is only required if you want to use a non-default KMS key; if this\n parameter is not specified, the default KMS key for EBS is used. If a KmsKeyId is\n specified, the Encrypted flag must also be set.

\n

The KMS key identifier may be provided in any of the following formats:

\n \n

Amazon Web Services parses KmsKeyId asynchronously, meaning that the action you call may appear to complete even\n though you provided an invalid identifier. This action will eventually report failure.

\n

The specified KMS key must exist in the Region that the snapshot is being copied to.

\n

Amazon EBS does not support asymmetric KMS keys.

" } }, - "m6gd_4xlarge": { - "target": "smithy.api#Unit", + "RoleName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6gd.4xlarge" + "smithy.api#documentation": "

The name of the role to use when not using the default role, 'vmimport'.

" } }, - "m6gd_8xlarge": { - "target": "smithy.api#Unit", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#enumValue": "m6gd.8xlarge" + "smithy.api#documentation": "

The tags to apply to the import snapshot task during creation.

", + "smithy.api#xmlName": "TagSpecification" } - }, - "m6gd_12xlarge": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "m6gd.12xlarge" - } - }, - "m6gd_16xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ImportSnapshotResult": { + "type": "structure", + "members": { + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6gd.16xlarge" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description of the import snapshot task.

", + "smithy.api#xmlName": "description" } }, - "m6i_large": { - "target": "smithy.api#Unit", + "ImportTaskId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6i.large" + "aws.protocols#ec2QueryName": "ImportTaskId", + "smithy.api#documentation": "

The ID of the import snapshot task.

", + "smithy.api#xmlName": "importTaskId" } }, - "m6i_xlarge": { - "target": "smithy.api#Unit", + "SnapshotTaskDetail": { + "target": "com.amazonaws.ec2#SnapshotTaskDetail", "traits": { - "smithy.api#enumValue": "m6i.xlarge" + "aws.protocols#ec2QueryName": "SnapshotTaskDetail", + "smithy.api#documentation": "

Information about the import snapshot task.

", + "smithy.api#xmlName": "snapshotTaskDetail" } }, - "m6i_2xlarge": { - "target": "smithy.api#Unit", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "m6i.2xlarge" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the import snapshot task.

", + "smithy.api#xmlName": "tagSet" } - }, - "m6i_4xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ImportSnapshotTask": { + "type": "structure", + "members": { + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6i.4xlarge" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description of the import snapshot task.

", + "smithy.api#xmlName": "description" } }, - "m6i_8xlarge": { - "target": "smithy.api#Unit", + "ImportTaskId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6i.8xlarge" + "aws.protocols#ec2QueryName": "ImportTaskId", + "smithy.api#documentation": "

The ID of the import snapshot task.

", + "smithy.api#xmlName": "importTaskId" } }, - "m6i_12xlarge": { - "target": "smithy.api#Unit", + "SnapshotTaskDetail": { + "target": "com.amazonaws.ec2#SnapshotTaskDetail", "traits": { - "smithy.api#enumValue": "m6i.12xlarge" + "aws.protocols#ec2QueryName": "SnapshotTaskDetail", + "smithy.api#documentation": "

Describes an import snapshot task.

", + "smithy.api#xmlName": "snapshotTaskDetail" } }, - "m6i_16xlarge": { - "target": "smithy.api#Unit", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "m6i.16xlarge" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags for the import snapshot task.

", + "smithy.api#xmlName": "tagSet" } - }, - "m6i_24xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes an import snapshot task.

" + } + }, + "com.amazonaws.ec2#ImportSnapshotTaskId": { + "type": "string" + }, + "com.amazonaws.ec2#ImportSnapshotTaskIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImportSnapshotTaskId", + "traits": { + "smithy.api#xmlName": "ImportTaskId" + } + } + }, + "com.amazonaws.ec2#ImportSnapshotTaskList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImportSnapshotTask", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ImportTaskId": { + "type": "string" + }, + "com.amazonaws.ec2#ImportTaskIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ImportImageTaskId", + "traits": { + "smithy.api#xmlName": "ImportTaskId" + } + } + }, + "com.amazonaws.ec2#ImportVolume": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ImportVolumeRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ImportVolumeResult" + }, + "traits": { + "smithy.api#documentation": "\n

This API action supports only single-volume VMs. To import multi-volume VMs, use \n ImportImage instead. To import a disk to a snapshot, use\n ImportSnapshot instead.

\n
\n

Creates an import volume task using metadata from the specified disk image.

\n

For information about the import manifest referenced by this API action, see VM Import Manifest.

\n

This API action is not supported by the Command Line Interface (CLI).

" + } + }, + "com.amazonaws.ec2#ImportVolumeRequest": { + "type": "structure", + "members": { + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#AvailabilityZoneId", "traits": { - "smithy.api#enumValue": "m6i.24xlarge" + "smithy.api#documentation": "

The ID of the Availability Zone for the resulting EBS volume.

\n

Either AvailabilityZone or AvailabilityZoneId must be specified,\n but not both.

" } }, - "m6i_32xlarge": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "m6i.32xlarge" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "m6i_metal": { - "target": "smithy.api#Unit", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6i.metal" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone for the resulting EBS volume.

\n

Either AvailabilityZone or AvailabilityZoneId must be specified,\n but not both.

", + "smithy.api#xmlName": "availabilityZone" } }, - "mac1_metal": { - "target": "smithy.api#Unit", + "Image": { + "target": "com.amazonaws.ec2#DiskImageDetail", "traits": { - "smithy.api#enumValue": "mac1.metal" + "aws.protocols#ec2QueryName": "Image", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The disk image.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "image" } }, - "p2_xlarge": { - "target": "smithy.api#Unit", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "p2.xlarge" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description of the volume.

", + "smithy.api#xmlName": "description" } }, - "p2_8xlarge": { - "target": "smithy.api#Unit", + "Volume": { + "target": "com.amazonaws.ec2#VolumeDetail", "traits": { - "smithy.api#enumValue": "p2.8xlarge" + "aws.protocols#ec2QueryName": "Volume", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The volume size.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "volume" } - }, - "p2_16xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ImportVolumeResult": { + "type": "structure", + "members": { + "ConversionTask": { + "target": "com.amazonaws.ec2#ConversionTask", "traits": { - "smithy.api#enumValue": "p2.16xlarge" + "aws.protocols#ec2QueryName": "ConversionTask", + "smithy.api#documentation": "

Information about the conversion task.

", + "smithy.api#xmlName": "conversionTask" } - }, - "p3_2xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ImportVolumeTaskDetails": { + "type": "structure", + "members": { + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "p3.2xlarge" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone where the resulting volume will reside.

", + "smithy.api#xmlName": "availabilityZone" } }, - "p3_8xlarge": { - "target": "smithy.api#Unit", + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "p3.8xlarge" + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone where the resulting volume will reside.

", + "smithy.api#xmlName": "availabilityZoneId" } }, - "p3_16xlarge": { - "target": "smithy.api#Unit", + "BytesConverted": { + "target": "com.amazonaws.ec2#Long", "traits": { - "smithy.api#enumValue": "p3.16xlarge" + "aws.protocols#ec2QueryName": "BytesConverted", + "smithy.api#documentation": "

The number of bytes converted so far.

", + "smithy.api#xmlName": "bytesConverted" } }, - "p3dn_24xlarge": { - "target": "smithy.api#Unit", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "p3dn.24xlarge" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The description you provided when starting the import volume task.

", + "smithy.api#xmlName": "description" } }, - "p4d_24xlarge": { - "target": "smithy.api#Unit", + "Image": { + "target": "com.amazonaws.ec2#DiskImageDescription", "traits": { - "smithy.api#enumValue": "p4d.24xlarge" + "aws.protocols#ec2QueryName": "Image", + "smithy.api#documentation": "

The image.

", + "smithy.api#xmlName": "image" } }, - "r3_large": { - "target": "smithy.api#Unit", + "Volume": { + "target": "com.amazonaws.ec2#DiskImageVolumeDescription", "traits": { - "smithy.api#enumValue": "r3.large" + "aws.protocols#ec2QueryName": "Volume", + "smithy.api#documentation": "

The volume.

", + "smithy.api#xmlName": "volume" } - }, - "r3_xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes an import volume task.

" + } + }, + "com.amazonaws.ec2#InferenceAcceleratorInfo": { + "type": "structure", + "members": { + "Accelerators": { + "target": "com.amazonaws.ec2#InferenceDeviceInfoList", "traits": { - "smithy.api#enumValue": "r3.xlarge" + "aws.protocols#ec2QueryName": "Accelerators", + "smithy.api#documentation": "

Describes the Inference accelerators for the instance type.

", + "smithy.api#xmlName": "accelerators" } }, - "r3_2xlarge": { - "target": "smithy.api#Unit", + "TotalInferenceMemoryInMiB": { + "target": "com.amazonaws.ec2#totalInferenceMemory", "traits": { - "smithy.api#enumValue": "r3.2xlarge" + "aws.protocols#ec2QueryName": "TotalInferenceMemoryInMiB", + "smithy.api#documentation": "

The total size of the memory for the inference accelerators for the instance type, in\n MiB.

", + "smithy.api#xmlName": "totalInferenceMemoryInMiB" } - }, - "r3_4xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "\n

Amazon Elastic Inference is no longer available.

\n
\n

Describes the Inference accelerators for the instance type.

" + } + }, + "com.amazonaws.ec2#InferenceDeviceCount": { + "type": "integer" + }, + "com.amazonaws.ec2#InferenceDeviceInfo": { + "type": "structure", + "members": { + "Count": { + "target": "com.amazonaws.ec2#InferenceDeviceCount", "traits": { - "smithy.api#enumValue": "r3.4xlarge" + "aws.protocols#ec2QueryName": "Count", + "smithy.api#documentation": "

The number of Inference accelerators for the instance type.

", + "smithy.api#xmlName": "count" } }, - "r3_8xlarge": { - "target": "smithy.api#Unit", + "Name": { + "target": "com.amazonaws.ec2#InferenceDeviceName", "traits": { - "smithy.api#enumValue": "r3.8xlarge" + "aws.protocols#ec2QueryName": "Name", + "smithy.api#documentation": "

The name of the Inference accelerator.

", + "smithy.api#xmlName": "name" } }, - "r4_large": { - "target": "smithy.api#Unit", + "Manufacturer": { + "target": "com.amazonaws.ec2#InferenceDeviceManufacturerName", "traits": { - "smithy.api#enumValue": "r4.large" + "aws.protocols#ec2QueryName": "Manufacturer", + "smithy.api#documentation": "

The manufacturer of the Inference accelerator.

", + "smithy.api#xmlName": "manufacturer" } }, - "r4_xlarge": { - "target": "smithy.api#Unit", + "MemoryInfo": { + "target": "com.amazonaws.ec2#InferenceDeviceMemoryInfo", "traits": { - "smithy.api#enumValue": "r4.xlarge" + "aws.protocols#ec2QueryName": "MemoryInfo", + "smithy.api#documentation": "

Describes the memory available to the inference accelerator.

", + "smithy.api#xmlName": "memoryInfo" } - }, - "r4_2xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "\n

Amazon Elastic Inference is no longer available.

\n
\n

Describes the Inference accelerators for the instance type.

" + } + }, + "com.amazonaws.ec2#InferenceDeviceInfoList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InferenceDeviceInfo" + } + }, + "com.amazonaws.ec2#InferenceDeviceManufacturerName": { + "type": "string" + }, + "com.amazonaws.ec2#InferenceDeviceMemoryInfo": { + "type": "structure", + "members": { + "SizeInMiB": { + "target": "com.amazonaws.ec2#InferenceDeviceMemorySize", "traits": { - "smithy.api#enumValue": "r4.2xlarge" + "aws.protocols#ec2QueryName": "SizeInMiB", + "smithy.api#documentation": "

The size of the memory available to the inference accelerator, in MiB.

", + "smithy.api#xmlName": "sizeInMiB" } - }, - "r4_4xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "\n

Amazon Elastic Inference is no longer available.

\n
\n

Describes the memory available to the inference accelerator.

" + } + }, + "com.amazonaws.ec2#InferenceDeviceMemorySize": { + "type": "integer" + }, + "com.amazonaws.ec2#InferenceDeviceName": { + "type": "string" + }, + "com.amazonaws.ec2#InitializationStatusDetails": { + "type": "structure", + "members": { + "InitializationType": { + "target": "com.amazonaws.ec2#InitializationType", "traits": { - "smithy.api#enumValue": "r4.4xlarge" + "aws.protocols#ec2QueryName": "InitializationType", + "smithy.api#documentation": "

The method used for volume initialization. Possible values include:

\n ", + "smithy.api#xmlName": "initializationType" } }, - "r4_8xlarge": { - "target": "smithy.api#Unit", + "Progress": { + "target": "com.amazonaws.ec2#Long", "traits": { - "smithy.api#enumValue": "r4.8xlarge" + "aws.protocols#ec2QueryName": "Progress", + "smithy.api#documentation": "

The current volume initialization progress as a percentage (0-100). Returns 100 \n when volume initialization has completed.

", + "smithy.api#xmlName": "progress" } }, - "r4_16xlarge": { - "target": "smithy.api#Unit", + "EstimatedTimeToCompleteInSeconds": { + "target": "com.amazonaws.ec2#Long", "traits": { - "smithy.api#enumValue": "r4.16xlarge" + "aws.protocols#ec2QueryName": "EstimatedTimeToCompleteInSeconds", + "smithy.api#documentation": "

The estimated remaining time, in seconds, for volume initialization to complete. Returns \n 0 when volume initialization has completed.

\n

Only available for volumes created with Amazon EBS Provisioned Rate for Volume Initialization.

", + "smithy.api#xmlName": "estimatedTimeToCompleteInSeconds" } - }, - "r5_large": { + } + }, + "traits": { + "smithy.api#documentation": "

Information about the volume initialization. For more information, see Initialize Amazon EBS volumes.

" + } + }, + "com.amazonaws.ec2#InitializationType": { + "type": "enum", + "members": { + "default": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r5.large" + "smithy.api#enumValue": "default" } }, - "r5_xlarge": { + "provisioned_rate": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r5.xlarge" + "smithy.api#enumValue": "provisioned-rate" } - }, - "r5_2xlarge": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#InsideCidrBlocksStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Instance": { + "type": "structure", + "members": { + "Architecture": { + "target": "com.amazonaws.ec2#ArchitectureValues", "traits": { - "smithy.api#enumValue": "r5.2xlarge" + "aws.protocols#ec2QueryName": "Architecture", + "smithy.api#documentation": "

The architecture of the image.

", + "smithy.api#xmlName": "architecture" } }, - "r5_4xlarge": { - "target": "smithy.api#Unit", + "BlockDeviceMappings": { + "target": "com.amazonaws.ec2#InstanceBlockDeviceMappingList", "traits": { - "smithy.api#enumValue": "r5.4xlarge" + "aws.protocols#ec2QueryName": "BlockDeviceMapping", + "smithy.api#documentation": "

Any block device mapping entries for the instance.

", + "smithy.api#xmlName": "blockDeviceMapping" } }, - "r5_8xlarge": { - "target": "smithy.api#Unit", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5.8xlarge" + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

The idempotency token you provided when you launched the instance, if\n applicable.

", + "smithy.api#xmlName": "clientToken" } }, - "r5_12xlarge": { - "target": "smithy.api#Unit", + "EbsOptimized": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "r5.12xlarge" + "aws.protocols#ec2QueryName": "EbsOptimized", + "smithy.api#documentation": "

Indicates whether the instance is optimized for Amazon EBS I/O. This optimization\n provides dedicated throughput to Amazon EBS and an optimized configuration stack to\n provide optimal I/O performance. This optimization isn't available with all instance\n types. Additional usage charges apply when using an EBS Optimized instance.

", + "smithy.api#xmlName": "ebsOptimized" } }, - "r5_16xlarge": { - "target": "smithy.api#Unit", + "EnaSupport": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "r5.16xlarge" + "aws.protocols#ec2QueryName": "EnaSupport", + "smithy.api#documentation": "

Specifies whether enhanced networking with ENA is enabled.

", + "smithy.api#xmlName": "enaSupport" } }, - "r5_24xlarge": { - "target": "smithy.api#Unit", + "Hypervisor": { + "target": "com.amazonaws.ec2#HypervisorType", "traits": { - "smithy.api#enumValue": "r5.24xlarge" + "aws.protocols#ec2QueryName": "Hypervisor", + "smithy.api#documentation": "

The hypervisor type of the instance. The value xen is used for both Xen\n and Nitro hypervisors.

", + "smithy.api#xmlName": "hypervisor" } }, - "r5_metal": { - "target": "smithy.api#Unit", + "IamInstanceProfile": { + "target": "com.amazonaws.ec2#IamInstanceProfile", "traits": { - "smithy.api#enumValue": "r5.metal" + "aws.protocols#ec2QueryName": "IamInstanceProfile", + "smithy.api#documentation": "

The IAM instance profile associated with the instance, if\n applicable.

", + "smithy.api#xmlName": "iamInstanceProfile" } }, - "r5a_large": { - "target": "smithy.api#Unit", + "InstanceLifecycle": { + "target": "com.amazonaws.ec2#InstanceLifecycleType", "traits": { - "smithy.api#enumValue": "r5a.large" + "aws.protocols#ec2QueryName": "InstanceLifecycle", + "smithy.api#documentation": "

Indicates whether this is a Spot Instance or a Scheduled Instance.

", + "smithy.api#xmlName": "instanceLifecycle" } }, - "r5a_xlarge": { - "target": "smithy.api#Unit", + "ElasticGpuAssociations": { + "target": "com.amazonaws.ec2#ElasticGpuAssociationList", "traits": { - "smithy.api#enumValue": "r5a.xlarge" + "aws.protocols#ec2QueryName": "ElasticGpuAssociationSet", + "smithy.api#documentation": "

Deprecated.

\n \n

Amazon Elastic Graphics reached end of life on January 8, 2024.

\n
", + "smithy.api#xmlName": "elasticGpuAssociationSet" } }, - "r5a_2xlarge": { - "target": "smithy.api#Unit", + "ElasticInferenceAcceleratorAssociations": { + "target": "com.amazonaws.ec2#ElasticInferenceAcceleratorAssociationList", "traits": { - "smithy.api#enumValue": "r5a.2xlarge" + "aws.protocols#ec2QueryName": "ElasticInferenceAcceleratorAssociationSet", + "smithy.api#documentation": "

Deprecated

\n \n

Amazon Elastic Inference is no longer available.

\n
", + "smithy.api#xmlName": "elasticInferenceAcceleratorAssociationSet" } }, - "r5a_4xlarge": { - "target": "smithy.api#Unit", + "NetworkInterfaces": { + "target": "com.amazonaws.ec2#InstanceNetworkInterfaceList", "traits": { - "smithy.api#enumValue": "r5a.4xlarge" + "aws.protocols#ec2QueryName": "NetworkInterfaceSet", + "smithy.api#documentation": "

The network interfaces for the instance.

", + "smithy.api#xmlName": "networkInterfaceSet" } }, - "r5a_8xlarge": { - "target": "smithy.api#Unit", + "OutpostArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5a.8xlarge" + "aws.protocols#ec2QueryName": "OutpostArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost.

", + "smithy.api#xmlName": "outpostArn" } }, - "r5a_12xlarge": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "r5a.12xlarge" - } - }, - "r5a_16xlarge": { - "target": "smithy.api#Unit", + "RootDeviceName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5a.16xlarge" + "aws.protocols#ec2QueryName": "RootDeviceName", + "smithy.api#documentation": "

The device name of the root device volume (for example,\n /dev/sda1).

", + "smithy.api#xmlName": "rootDeviceName" } }, - "r5a_24xlarge": { - "target": "smithy.api#Unit", + "RootDeviceType": { + "target": "com.amazonaws.ec2#DeviceType", "traits": { - "smithy.api#enumValue": "r5a.24xlarge" + "aws.protocols#ec2QueryName": "RootDeviceType", + "smithy.api#documentation": "

The root device type used by the AMI. The AMI can use an EBS volume or an instance\n store volume.

", + "smithy.api#xmlName": "rootDeviceType" } }, - "r5ad_large": { - "target": "smithy.api#Unit", + "SecurityGroups": { + "target": "com.amazonaws.ec2#GroupIdentifierList", "traits": { - "smithy.api#enumValue": "r5ad.large" + "aws.protocols#ec2QueryName": "GroupSet", + "smithy.api#documentation": "

The security groups for the instance.

", + "smithy.api#xmlName": "groupSet" } }, - "r5ad_xlarge": { - "target": "smithy.api#Unit", + "SourceDestCheck": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "r5ad.xlarge" + "aws.protocols#ec2QueryName": "SourceDestCheck", + "smithy.api#documentation": "

Indicates whether source/destination checking is enabled.

", + "smithy.api#xmlName": "sourceDestCheck" } }, - "r5ad_2xlarge": { - "target": "smithy.api#Unit", + "SpotInstanceRequestId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5ad.2xlarge" + "aws.protocols#ec2QueryName": "SpotInstanceRequestId", + "smithy.api#documentation": "

If the request is a Spot Instance request, the ID of the request.

", + "smithy.api#xmlName": "spotInstanceRequestId" } }, - "r5ad_4xlarge": { - "target": "smithy.api#Unit", + "SriovNetSupport": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5ad.4xlarge" + "aws.protocols#ec2QueryName": "SriovNetSupport", + "smithy.api#documentation": "

Specifies whether enhanced networking with the Intel 82599 Virtual Function interface\n is enabled.

", + "smithy.api#xmlName": "sriovNetSupport" } }, - "r5ad_8xlarge": { - "target": "smithy.api#Unit", + "StateReason": { + "target": "com.amazonaws.ec2#StateReason", "traits": { - "smithy.api#enumValue": "r5ad.8xlarge" + "aws.protocols#ec2QueryName": "StateReason", + "smithy.api#documentation": "

The reason for the most recent state transition.

", + "smithy.api#xmlName": "stateReason" } }, - "r5ad_12xlarge": { - "target": "smithy.api#Unit", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "r5ad.12xlarge" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the instance.

", + "smithy.api#xmlName": "tagSet" } }, - "r5ad_16xlarge": { - "target": "smithy.api#Unit", + "VirtualizationType": { + "target": "com.amazonaws.ec2#VirtualizationType", "traits": { - "smithy.api#enumValue": "r5ad.16xlarge" + "aws.protocols#ec2QueryName": "VirtualizationType", + "smithy.api#documentation": "

The virtualization type of the instance.

", + "smithy.api#xmlName": "virtualizationType" } }, - "r5ad_24xlarge": { - "target": "smithy.api#Unit", + "CpuOptions": { + "target": "com.amazonaws.ec2#CpuOptions", "traits": { - "smithy.api#enumValue": "r5ad.24xlarge" + "aws.protocols#ec2QueryName": "CpuOptions", + "smithy.api#documentation": "

The CPU options for the instance.

", + "smithy.api#xmlName": "cpuOptions" } }, - "r5b_large": { - "target": "smithy.api#Unit", + "CapacityBlockId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5b.large" + "aws.protocols#ec2QueryName": "CapacityBlockId", + "smithy.api#documentation": "

The ID of the Capacity Block.

\n \n

For P5 instances, a Capacity Block ID refers to a group of instances. For Trn2u\n instances, a capacity block ID refers to an EC2 UltraServer.

\n
", + "smithy.api#xmlName": "capacityBlockId" } }, - "r5b_xlarge": { - "target": "smithy.api#Unit", + "CapacityReservationId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5b.xlarge" + "aws.protocols#ec2QueryName": "CapacityReservationId", + "smithy.api#documentation": "

The ID of the Capacity Reservation.

", + "smithy.api#xmlName": "capacityReservationId" } }, - "r5b_2xlarge": { - "target": "smithy.api#Unit", + "CapacityReservationSpecification": { + "target": "com.amazonaws.ec2#CapacityReservationSpecificationResponse", "traits": { - "smithy.api#enumValue": "r5b.2xlarge" + "aws.protocols#ec2QueryName": "CapacityReservationSpecification", + "smithy.api#documentation": "

Information about the Capacity Reservation targeting option.

", + "smithy.api#xmlName": "capacityReservationSpecification" } }, - "r5b_4xlarge": { - "target": "smithy.api#Unit", + "HibernationOptions": { + "target": "com.amazonaws.ec2#HibernationOptions", "traits": { - "smithy.api#enumValue": "r5b.4xlarge" + "aws.protocols#ec2QueryName": "HibernationOptions", + "smithy.api#documentation": "

Indicates whether the instance is enabled for hibernation.

", + "smithy.api#xmlName": "hibernationOptions" } }, - "r5b_8xlarge": { - "target": "smithy.api#Unit", + "Licenses": { + "target": "com.amazonaws.ec2#LicenseList", "traits": { - "smithy.api#enumValue": "r5b.8xlarge" + "aws.protocols#ec2QueryName": "LicenseSet", + "smithy.api#documentation": "

The license configurations for the instance.

", + "smithy.api#xmlName": "licenseSet" } }, - "r5b_12xlarge": { - "target": "smithy.api#Unit", + "MetadataOptions": { + "target": "com.amazonaws.ec2#InstanceMetadataOptionsResponse", "traits": { - "smithy.api#enumValue": "r5b.12xlarge" + "aws.protocols#ec2QueryName": "MetadataOptions", + "smithy.api#documentation": "

The metadata options for the instance.

", + "smithy.api#xmlName": "metadataOptions" } }, - "r5b_16xlarge": { - "target": "smithy.api#Unit", + "EnclaveOptions": { + "target": "com.amazonaws.ec2#EnclaveOptions", "traits": { - "smithy.api#enumValue": "r5b.16xlarge" + "aws.protocols#ec2QueryName": "EnclaveOptions", + "smithy.api#documentation": "

Indicates whether the instance is enabled for Amazon Web Services Nitro\n Enclaves.

", + "smithy.api#xmlName": "enclaveOptions" } }, - "r5b_24xlarge": { - "target": "smithy.api#Unit", + "BootMode": { + "target": "com.amazonaws.ec2#BootModeValues", "traits": { - "smithy.api#enumValue": "r5b.24xlarge" + "aws.protocols#ec2QueryName": "BootMode", + "smithy.api#documentation": "

The boot mode that was specified by the AMI. If the value is uefi-preferred, \n the AMI supports both UEFI and Legacy BIOS. The currentInstanceBootMode parameter \n is the boot mode that is used to boot the instance at launch or start.

\n \n

The operating system contained in the AMI must be configured to support the specified boot mode.

\n
\n

For more information, see Boot modes in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "bootMode" } }, - "r5b_metal": { - "target": "smithy.api#Unit", + "PlatformDetails": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5b.metal" + "aws.protocols#ec2QueryName": "PlatformDetails", + "smithy.api#documentation": "

The platform details value for the instance. For more information, see AMI\n billing information fields in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "platformDetails" } }, - "r5d_large": { - "target": "smithy.api#Unit", + "UsageOperation": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5d.large" + "aws.protocols#ec2QueryName": "UsageOperation", + "smithy.api#documentation": "

The usage operation value for the instance. For more information, see AMI\n billing information fields in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "usageOperation" } }, - "r5d_xlarge": { - "target": "smithy.api#Unit", + "UsageOperationUpdateTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#enumValue": "r5d.xlarge" + "aws.protocols#ec2QueryName": "UsageOperationUpdateTime", + "smithy.api#documentation": "

The time that the usage operation was last updated.

", + "smithy.api#xmlName": "usageOperationUpdateTime" } }, - "r5d_2xlarge": { - "target": "smithy.api#Unit", + "PrivateDnsNameOptions": { + "target": "com.amazonaws.ec2#PrivateDnsNameOptionsResponse", "traits": { - "smithy.api#enumValue": "r5d.2xlarge" + "aws.protocols#ec2QueryName": "PrivateDnsNameOptions", + "smithy.api#documentation": "

The options for the instance hostname.

", + "smithy.api#xmlName": "privateDnsNameOptions" } }, - "r5d_4xlarge": { - "target": "smithy.api#Unit", + "Ipv6Address": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5d.4xlarge" + "aws.protocols#ec2QueryName": "Ipv6Address", + "smithy.api#documentation": "

The IPv6 address assigned to the instance.

", + "smithy.api#xmlName": "ipv6Address" } }, - "r5d_8xlarge": { - "target": "smithy.api#Unit", + "TpmSupport": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5d.8xlarge" + "aws.protocols#ec2QueryName": "TpmSupport", + "smithy.api#documentation": "

If the instance is configured for NitroTPM support, the value is v2.0.\n For more information, see NitroTPM in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "tpmSupport" } }, - "r5d_12xlarge": { - "target": "smithy.api#Unit", + "MaintenanceOptions": { + "target": "com.amazonaws.ec2#InstanceMaintenanceOptions", "traits": { - "smithy.api#enumValue": "r5d.12xlarge" + "aws.protocols#ec2QueryName": "MaintenanceOptions", + "smithy.api#documentation": "

Provides information on the recovery and maintenance options of your instance.

", + "smithy.api#xmlName": "maintenanceOptions" } }, - "r5d_16xlarge": { - "target": "smithy.api#Unit", + "CurrentInstanceBootMode": { + "target": "com.amazonaws.ec2#InstanceBootModeValues", "traits": { - "smithy.api#enumValue": "r5d.16xlarge" + "aws.protocols#ec2QueryName": "CurrentInstanceBootMode", + "smithy.api#documentation": "

The boot mode that is used to boot the instance at launch or start. For more information, see Boot modes in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "currentInstanceBootMode" } }, - "r5d_24xlarge": { - "target": "smithy.api#Unit", + "NetworkPerformanceOptions": { + "target": "com.amazonaws.ec2#InstanceNetworkPerformanceOptions", "traits": { - "smithy.api#enumValue": "r5d.24xlarge" + "aws.protocols#ec2QueryName": "NetworkPerformanceOptions", + "smithy.api#documentation": "

Contains settings for the network performance options for your instance.

", + "smithy.api#xmlName": "networkPerformanceOptions" } }, - "r5d_metal": { - "target": "smithy.api#Unit", + "Operator": { + "target": "com.amazonaws.ec2#OperatorResponse", "traits": { - "smithy.api#enumValue": "r5d.metal" + "aws.protocols#ec2QueryName": "Operator", + "smithy.api#documentation": "

The service provider that manages the instance.

", + "smithy.api#xmlName": "operator" } }, - "r5dn_large": { - "target": "smithy.api#Unit", + "InstanceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5dn.large" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#xmlName": "instanceId" } }, - "r5dn_xlarge": { - "target": "smithy.api#Unit", + "ImageId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5dn.xlarge" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the AMI used to launch the instance.

", + "smithy.api#xmlName": "imageId" } }, - "r5dn_2xlarge": { - "target": "smithy.api#Unit", + "State": { + "target": "com.amazonaws.ec2#InstanceState", "traits": { - "smithy.api#enumValue": "r5dn.2xlarge" + "aws.protocols#ec2QueryName": "InstanceState", + "smithy.api#documentation": "

The current state of the instance.

", + "smithy.api#xmlName": "instanceState" } }, - "r5dn_4xlarge": { - "target": "smithy.api#Unit", + "PrivateDnsName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5dn.4xlarge" + "aws.protocols#ec2QueryName": "PrivateDnsName", + "smithy.api#documentation": "

[IPv4 only] The private DNS hostname name assigned to the instance. This DNS hostname\n can only be used inside the Amazon EC2 network. This name is not available until the\n instance enters the running state.

\n

The Amazon-provided DNS server resolves Amazon-provided private DNS\n hostnames if you've enabled DNS resolution and DNS hostnames in your VPC. If you are not\n using the Amazon-provided DNS server in your VPC, your custom domain name servers must\n resolve the hostname as appropriate.

", + "smithy.api#xmlName": "privateDnsName" } }, - "r5dn_8xlarge": { - "target": "smithy.api#Unit", + "PublicDnsName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5dn.8xlarge" + "aws.protocols#ec2QueryName": "DnsName", + "smithy.api#documentation": "

The public DNS name assigned to the instance. This name is not available\n until the instance enters the running state. This name is only\n available if you've enabled DNS hostnames for your VPC. The format of this\n name depends on the public hostname type.

", + "smithy.api#xmlName": "dnsName" } }, - "r5dn_12xlarge": { - "target": "smithy.api#Unit", + "StateTransitionReason": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5dn.12xlarge" + "aws.protocols#ec2QueryName": "Reason", + "smithy.api#documentation": "

The reason for the most recent state transition. This might be an empty string.

", + "smithy.api#xmlName": "reason" } }, - "r5dn_16xlarge": { - "target": "smithy.api#Unit", + "KeyName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5dn.16xlarge" + "aws.protocols#ec2QueryName": "KeyName", + "smithy.api#documentation": "

The name of the key pair, if this instance was launched with an associated key\n pair.

", + "smithy.api#xmlName": "keyName" } }, - "r5dn_24xlarge": { - "target": "smithy.api#Unit", + "AmiLaunchIndex": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "r5dn.24xlarge" + "aws.protocols#ec2QueryName": "AmiLaunchIndex", + "smithy.api#documentation": "

The AMI launch index, which can be used to find this instance in the launch\n group.

", + "smithy.api#xmlName": "amiLaunchIndex" } }, - "r5dn_metal": { - "target": "smithy.api#Unit", + "ProductCodes": { + "target": "com.amazonaws.ec2#ProductCodeList", "traits": { - "smithy.api#enumValue": "r5dn.metal" + "aws.protocols#ec2QueryName": "ProductCodes", + "smithy.api#documentation": "

The product codes attached to this instance, if applicable.

", + "smithy.api#xmlName": "productCodes" } }, - "r5n_large": { - "target": "smithy.api#Unit", + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", "traits": { - "smithy.api#enumValue": "r5n.large" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type.

", + "smithy.api#xmlName": "instanceType" } }, - "r5n_xlarge": { - "target": "smithy.api#Unit", + "LaunchTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#enumValue": "r5n.xlarge" + "aws.protocols#ec2QueryName": "LaunchTime", + "smithy.api#documentation": "

The time that the instance was last launched. To determine the time that instance was first launched,\n see the attachment time for the primary network interface.

", + "smithy.api#xmlName": "launchTime" } }, - "r5n_2xlarge": { - "target": "smithy.api#Unit", + "Placement": { + "target": "com.amazonaws.ec2#Placement", "traits": { - "smithy.api#enumValue": "r5n.2xlarge" + "aws.protocols#ec2QueryName": "Placement", + "smithy.api#documentation": "

The location where the instance launched, if applicable.

", + "smithy.api#xmlName": "placement" } }, - "r5n_4xlarge": { - "target": "smithy.api#Unit", + "KernelId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5n.4xlarge" + "aws.protocols#ec2QueryName": "KernelId", + "smithy.api#documentation": "

The kernel associated with this instance, if applicable.

", + "smithy.api#xmlName": "kernelId" } }, - "r5n_8xlarge": { - "target": "smithy.api#Unit", + "RamdiskId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5n.8xlarge" + "aws.protocols#ec2QueryName": "RamdiskId", + "smithy.api#documentation": "

The RAM disk associated with this instance, if applicable.

", + "smithy.api#xmlName": "ramdiskId" } }, - "r5n_12xlarge": { - "target": "smithy.api#Unit", + "Platform": { + "target": "com.amazonaws.ec2#PlatformValues", "traits": { - "smithy.api#enumValue": "r5n.12xlarge" + "aws.protocols#ec2QueryName": "Platform", + "smithy.api#documentation": "

The platform. This value is windows for Windows instances; otherwise, it is empty.

", + "smithy.api#xmlName": "platform" } }, - "r5n_16xlarge": { - "target": "smithy.api#Unit", + "Monitoring": { + "target": "com.amazonaws.ec2#Monitoring", "traits": { - "smithy.api#enumValue": "r5n.16xlarge" + "aws.protocols#ec2QueryName": "Monitoring", + "smithy.api#documentation": "

The monitoring for the instance.

", + "smithy.api#xmlName": "monitoring" } }, - "r5n_24xlarge": { - "target": "smithy.api#Unit", + "SubnetId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5n.24xlarge" + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet in which the instance is running.

", + "smithy.api#xmlName": "subnetId" } }, - "r5n_metal": { - "target": "smithy.api#Unit", + "VpcId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r5n.metal" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC in which the instance is running.

", + "smithy.api#xmlName": "vpcId" } }, - "r6g_medium": { - "target": "smithy.api#Unit", + "PrivateIpAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r6g.medium" + "aws.protocols#ec2QueryName": "PrivateIpAddress", + "smithy.api#documentation": "

The private IPv4 address assigned to the instance.

", + "smithy.api#xmlName": "privateIpAddress" } }, - "r6g_large": { - "target": "smithy.api#Unit", + "PublicIpAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r6g.large" + "aws.protocols#ec2QueryName": "IpAddress", + "smithy.api#documentation": "

The public IPv4 address, or the Carrier IP address assigned to the instance, if\n applicable.

\n

A Carrier IP address only applies to an instance launched in a subnet associated with\n a Wavelength Zone.

", + "smithy.api#xmlName": "ipAddress" } - }, - "r6g_xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes an instance.

" + } + }, + "com.amazonaws.ec2#InstanceAttachmentEnaSrdSpecification": { + "type": "structure", + "members": { + "EnaSrdEnabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "r6g.xlarge" + "aws.protocols#ec2QueryName": "EnaSrdEnabled", + "smithy.api#documentation": "

Indicates whether ENA Express is enabled for the network interface.

", + "smithy.api#xmlName": "enaSrdEnabled" } }, - "r6g_2xlarge": { - "target": "smithy.api#Unit", + "EnaSrdUdpSpecification": { + "target": "com.amazonaws.ec2#InstanceAttachmentEnaSrdUdpSpecification", "traits": { - "smithy.api#enumValue": "r6g.2xlarge" + "aws.protocols#ec2QueryName": "EnaSrdUdpSpecification", + "smithy.api#documentation": "

Configures ENA Express for UDP network traffic.

", + "smithy.api#xmlName": "enaSrdUdpSpecification" } - }, - "r6g_4xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology to increase the \n\t\t\tmaximum bandwidth used per stream and minimize tail latency of network traffic between EC2 instances. \n\t\t\tWith ENA Express, you can communicate between two EC2 instances in the same subnet within the same \n\t\t\taccount, or in different accounts. Both sending and receiving instances must have ENA Express enabled.

\n

To improve the reliability of network packet delivery, ENA Express reorders network packets on the \n\t\t\treceiving end by default. However, some UDP-based applications are designed to handle network packets \n\t\t\tthat are out of order to reduce the overhead for packet delivery at the network layer. When ENA Express \n\t\t\tis enabled, you can specify whether UDP network traffic uses it.

" + } + }, + "com.amazonaws.ec2#InstanceAttachmentEnaSrdUdpSpecification": { + "type": "structure", + "members": { + "EnaSrdUdpEnabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "r6g.4xlarge" + "aws.protocols#ec2QueryName": "EnaSrdUdpEnabled", + "smithy.api#documentation": "

Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, \n\t\t\tyou must first enable ENA Express.

", + "smithy.api#xmlName": "enaSrdUdpEnabled" } - }, - "r6g_8xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

ENA Express is compatible with both TCP and UDP transport protocols. When it's enabled, TCP traffic \n\t\t\tautomatically uses it. However, some UDP-based applications are designed to handle network packets that are \n\t\t\tout of order, without a need for retransmission, such as live video broadcasting or other near-real-time \n\t\t\tapplications. For UDP traffic, you can specify whether to use ENA Express, based on your application \n\t\t\tenvironment needs.

" + } + }, + "com.amazonaws.ec2#InstanceAttribute": { + "type": "structure", + "members": { + "BlockDeviceMappings": { + "target": "com.amazonaws.ec2#InstanceBlockDeviceMappingList", "traits": { - "smithy.api#enumValue": "r6g.8xlarge" + "aws.protocols#ec2QueryName": "BlockDeviceMapping", + "smithy.api#documentation": "

The block device mapping of the instance.

", + "smithy.api#xmlName": "blockDeviceMapping" } }, - "r6g_12xlarge": { - "target": "smithy.api#Unit", + "DisableApiTermination": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", "traits": { - "smithy.api#enumValue": "r6g.12xlarge" + "aws.protocols#ec2QueryName": "DisableApiTermination", + "smithy.api#documentation": "

Indicates whether termination protection is enabled. If the value is true, \n you can't terminate the instance using the Amazon EC2 console, command line tools, or API.

", + "smithy.api#xmlName": "disableApiTermination" } }, - "r6g_16xlarge": { - "target": "smithy.api#Unit", + "EnaSupport": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", "traits": { - "smithy.api#enumValue": "r6g.16xlarge" + "aws.protocols#ec2QueryName": "EnaSupport", + "smithy.api#documentation": "

Indicates whether enhanced networking with ENA is enabled.

", + "smithy.api#xmlName": "enaSupport" } }, - "r6g_metal": { - "target": "smithy.api#Unit", + "EnclaveOptions": { + "target": "com.amazonaws.ec2#EnclaveOptions", "traits": { - "smithy.api#enumValue": "r6g.metal" + "aws.protocols#ec2QueryName": "EnclaveOptions", + "smithy.api#documentation": "

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.

", + "smithy.api#xmlName": "enclaveOptions" } }, - "r6gd_medium": { - "target": "smithy.api#Unit", + "EbsOptimized": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", "traits": { - "smithy.api#enumValue": "r6gd.medium" + "aws.protocols#ec2QueryName": "EbsOptimized", + "smithy.api#documentation": "

Indicates whether the instance is optimized for Amazon EBS I/O.

", + "smithy.api#xmlName": "ebsOptimized" } }, - "r6gd_large": { - "target": "smithy.api#Unit", + "InstanceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r6gd.large" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#xmlName": "instanceId" } }, - "r6gd_xlarge": { - "target": "smithy.api#Unit", + "InstanceInitiatedShutdownBehavior": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "smithy.api#enumValue": "r6gd.xlarge" + "aws.protocols#ec2QueryName": "InstanceInitiatedShutdownBehavior", + "smithy.api#documentation": "

Indicates whether an instance stops or terminates when you initiate shutdown from the\n instance (using the operating system command for system shutdown).

", + "smithy.api#xmlName": "instanceInitiatedShutdownBehavior" } }, - "r6gd_2xlarge": { - "target": "smithy.api#Unit", + "InstanceType": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "smithy.api#enumValue": "r6gd.2xlarge" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type.

", + "smithy.api#xmlName": "instanceType" } }, - "r6gd_4xlarge": { - "target": "smithy.api#Unit", + "KernelId": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "smithy.api#enumValue": "r6gd.4xlarge" + "aws.protocols#ec2QueryName": "Kernel", + "smithy.api#documentation": "

The kernel ID.

", + "smithy.api#xmlName": "kernel" } }, - "r6gd_8xlarge": { - "target": "smithy.api#Unit", + "ProductCodes": { + "target": "com.amazonaws.ec2#ProductCodeList", "traits": { - "smithy.api#enumValue": "r6gd.8xlarge" + "aws.protocols#ec2QueryName": "ProductCodes", + "smithy.api#documentation": "

The product codes.

", + "smithy.api#xmlName": "productCodes" } }, - "r6gd_12xlarge": { - "target": "smithy.api#Unit", + "RamdiskId": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "smithy.api#enumValue": "r6gd.12xlarge" + "aws.protocols#ec2QueryName": "Ramdisk", + "smithy.api#documentation": "

The RAM disk ID.

", + "smithy.api#xmlName": "ramdisk" } }, - "r6gd_16xlarge": { - "target": "smithy.api#Unit", + "RootDeviceName": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "smithy.api#enumValue": "r6gd.16xlarge" + "aws.protocols#ec2QueryName": "RootDeviceName", + "smithy.api#documentation": "

The device name of the root device volume (for example,\n /dev/sda1).

", + "smithy.api#xmlName": "rootDeviceName" } }, - "r6gd_metal": { - "target": "smithy.api#Unit", + "SourceDestCheck": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", "traits": { - "smithy.api#enumValue": "r6gd.metal" + "aws.protocols#ec2QueryName": "SourceDestCheck", + "smithy.api#documentation": "

Indicates whether source/destination checks are enabled.

", + "smithy.api#xmlName": "sourceDestCheck" } }, - "r6i_large": { - "target": "smithy.api#Unit", + "SriovNetSupport": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "smithy.api#enumValue": "r6i.large" + "aws.protocols#ec2QueryName": "SriovNetSupport", + "smithy.api#documentation": "

Indicates whether enhanced networking with the Intel 82599 Virtual Function interface\n is enabled.

", + "smithy.api#xmlName": "sriovNetSupport" } }, - "r6i_xlarge": { - "target": "smithy.api#Unit", + "UserData": { + "target": "com.amazonaws.ec2#AttributeValue", "traits": { - "smithy.api#enumValue": "r6i.xlarge" + "aws.protocols#ec2QueryName": "UserData", + "smithy.api#documentation": "

The user data.

", + "smithy.api#xmlName": "userData" } }, - "r6i_2xlarge": { - "target": "smithy.api#Unit", + "DisableApiStop": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", "traits": { - "smithy.api#enumValue": "r6i.2xlarge" + "aws.protocols#ec2QueryName": "DisableApiStop", + "smithy.api#documentation": "

Indicates whether stop protection is enabled for the instance.

", + "smithy.api#xmlName": "disableApiStop" } }, - "r6i_4xlarge": { - "target": "smithy.api#Unit", + "Groups": { + "target": "com.amazonaws.ec2#GroupIdentifierList", "traits": { - "smithy.api#enumValue": "r6i.4xlarge" + "aws.protocols#ec2QueryName": "GroupSet", + "smithy.api#documentation": "

The security groups associated with the instance.

", + "smithy.api#xmlName": "groupSet" } - }, - "r6i_8xlarge": { + } + }, + "traits": { + "smithy.api#documentation": "

Describes an instance attribute.

" + } + }, + "com.amazonaws.ec2#InstanceAttributeName": { + "type": "enum", + "members": { + "instanceType": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r6i.8xlarge" + "smithy.api#enumValue": "instanceType" } }, - "r6i_12xlarge": { + "kernel": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r6i.12xlarge" + "smithy.api#enumValue": "kernel" } }, - "r6i_16xlarge": { + "ramdisk": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r6i.16xlarge" + "smithy.api#enumValue": "ramdisk" } }, - "r6i_24xlarge": { + "userData": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r6i.24xlarge" + "smithy.api#enumValue": "userData" } }, - "r6i_32xlarge": { + "disableApiTermination": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r6i.32xlarge" + "smithy.api#enumValue": "disableApiTermination" } }, - "r6i_metal": { + "instanceInitiatedShutdownBehavior": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r6i.metal" + "smithy.api#enumValue": "instanceInitiatedShutdownBehavior" } }, - "t1_micro": { + "rootDeviceName": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "t1.micro" + "smithy.api#enumValue": "rootDeviceName" } }, - "t2_nano": { + "blockDeviceMapping": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "t2.nano" + "smithy.api#enumValue": "blockDeviceMapping" } }, - "t2_micro": { + "productCodes": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "t2.micro" + "smithy.api#enumValue": "productCodes" } }, - "t2_small": { + "sourceDestCheck": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "t2.small" + "smithy.api#enumValue": "sourceDestCheck" } }, - "t2_medium": { + "groupSet": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "t2.medium" + "smithy.api#enumValue": "groupSet" } }, - "t2_large": { + "ebsOptimized": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "t2.large" + "smithy.api#enumValue": "ebsOptimized" } }, - "t2_xlarge": { + "sriovNetSupport": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "t2.xlarge" + "smithy.api#enumValue": "sriovNetSupport" } }, - "t2_2xlarge": { + "enaSupport": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "t2.2xlarge" + "smithy.api#enumValue": "enaSupport" } }, - "t3_nano": { + "enclaveOptions": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "t3.nano" + "smithy.api#enumValue": "enclaveOptions" } }, - "t3_micro": { + "disableApiStop": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "t3.micro" + "smithy.api#enumValue": "disableApiStop" } - }, - "t3_small": { + } + } + }, + "com.amazonaws.ec2#InstanceAutoRecoveryState": { + "type": "enum", + "members": { + "disabled": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "t3.small" + "smithy.api#enumValue": "disabled" } }, - "t3_medium": { + "default": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "t3.medium" + "smithy.api#enumValue": "default" } - }, - "t3_large": { + } + } + }, + "com.amazonaws.ec2#InstanceBandwidthWeighting": { + "type": "enum", + "members": { + "DEFAULT": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "t3.large" + "smithy.api#enumValue": "default" } }, - "t3_xlarge": { + "VPC_1": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "t3.xlarge" + "smithy.api#enumValue": "vpc-1" } }, - "t3_2xlarge": { + "EBS_1": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "t3.2xlarge" + "smithy.api#enumValue": "ebs-1" } - }, - "t3a_nano": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#InstanceBlockDeviceMapping": { + "type": "structure", + "members": { + "DeviceName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "t3a.nano" + "aws.protocols#ec2QueryName": "DeviceName", + "smithy.api#documentation": "

The device name.

", + "smithy.api#xmlName": "deviceName" } }, - "t3a_micro": { - "target": "smithy.api#Unit", + "Ebs": { + "target": "com.amazonaws.ec2#EbsInstanceBlockDevice", "traits": { - "smithy.api#enumValue": "t3a.micro" + "aws.protocols#ec2QueryName": "Ebs", + "smithy.api#documentation": "

Parameters used to automatically set up EBS volumes when the instance is\n launched.

", + "smithy.api#xmlName": "ebs" } - }, - "t3a_small": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes a block device mapping.

" + } + }, + "com.amazonaws.ec2#InstanceBlockDeviceMappingList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceBlockDeviceMapping", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceBlockDeviceMappingSpecification": { + "type": "structure", + "members": { + "DeviceName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "t3a.small" + "aws.protocols#ec2QueryName": "DeviceName", + "smithy.api#documentation": "

The device name. For available device names, see Device names for volumes.

", + "smithy.api#xmlName": "deviceName" } }, - "t3a_medium": { - "target": "smithy.api#Unit", + "Ebs": { + "target": "com.amazonaws.ec2#EbsInstanceBlockDeviceSpecification", "traits": { - "smithy.api#enumValue": "t3a.medium" + "aws.protocols#ec2QueryName": "Ebs", + "smithy.api#documentation": "

Parameters used to automatically set up EBS volumes when the instance is\n launched.

", + "smithy.api#xmlName": "ebs" } }, - "t3a_large": { - "target": "smithy.api#Unit", + "VirtualName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "t3a.large" + "aws.protocols#ec2QueryName": "VirtualName", + "smithy.api#documentation": "

The virtual device name.

", + "smithy.api#xmlName": "virtualName" } }, - "t3a_xlarge": { - "target": "smithy.api#Unit", + "NoDevice": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "t3a.xlarge" + "aws.protocols#ec2QueryName": "NoDevice", + "smithy.api#documentation": "

Suppresses the specified device included in the block device mapping.

", + "smithy.api#xmlName": "noDevice" } - }, - "t3a_2xlarge": { + } + }, + "traits": { + "smithy.api#documentation": "

Describes a block device mapping entry.

" + } + }, + "com.amazonaws.ec2#InstanceBlockDeviceMappingSpecificationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceBlockDeviceMappingSpecification", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceBootModeValues": { + "type": "enum", + "members": { + "legacy_bios": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "t3a.2xlarge" + "smithy.api#enumValue": "legacy-bios" } }, - "t4g_nano": { + "uefi": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "t4g.nano" + "smithy.api#enumValue": "uefi" } - }, - "t4g_micro": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#InstanceCapacity": { + "type": "structure", + "members": { + "AvailableCapacity": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "t4g.micro" + "aws.protocols#ec2QueryName": "AvailableCapacity", + "smithy.api#documentation": "

The number of instances that can be launched onto the Dedicated Host based on the\n host's available capacity.

", + "smithy.api#xmlName": "availableCapacity" } }, - "t4g_small": { - "target": "smithy.api#Unit", + "InstanceType": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "t4g.small" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type supported by the Dedicated Host.

", + "smithy.api#xmlName": "instanceType" } }, - "t4g_medium": { - "target": "smithy.api#Unit", + "TotalCapacity": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "t4g.medium" + "aws.protocols#ec2QueryName": "TotalCapacity", + "smithy.api#documentation": "

The total number of instances that can be launched onto the Dedicated Host if there\n are no instances running on it.

", + "smithy.api#xmlName": "totalCapacity" } - }, - "t4g_large": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Information about the number of instances that can be launched onto the Dedicated\n Host.

" + } + }, + "com.amazonaws.ec2#InstanceConnectEndpointDnsNames": { + "type": "structure", + "members": { + "DnsName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "t4g.large" + "aws.protocols#ec2QueryName": "DnsName", + "smithy.api#documentation": "

The DNS name of the EC2 Instance Connect Endpoint.

", + "smithy.api#xmlName": "dnsName" } }, - "t4g_xlarge": { - "target": "smithy.api#Unit", + "FipsDnsName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "t4g.xlarge" + "aws.protocols#ec2QueryName": "FipsDnsName", + "smithy.api#documentation": "

The Federal Information Processing Standards (FIPS) compliant DNS name of the EC2 Instance Connect Endpoint.

", + "smithy.api#xmlName": "fipsDnsName" } - }, - "t4g_2xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The DNS names of the endpoint.

" + } + }, + "com.amazonaws.ec2#InstanceConnectEndpointId": { + "type": "string" + }, + "com.amazonaws.ec2#InstanceConnectEndpointMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 50 + } + } + }, + "com.amazonaws.ec2#InstanceConnectEndpointPublicDnsNames": { + "type": "structure", + "members": { + "Ipv4": { + "target": "com.amazonaws.ec2#InstanceConnectEndpointDnsNames", "traits": { - "smithy.api#enumValue": "t4g.2xlarge" + "aws.protocols#ec2QueryName": "Ipv4", + "smithy.api#documentation": "

The IPv4-only DNS name of the EC2 Instance Connect Endpoint.

", + "smithy.api#xmlName": "ipv4" } }, - "u_6tb1_56xlarge": { - "target": "smithy.api#Unit", + "Dualstack": { + "target": "com.amazonaws.ec2#InstanceConnectEndpointDnsNames", "traits": { - "smithy.api#enumValue": "u-6tb1.56xlarge" + "aws.protocols#ec2QueryName": "Dualstack", + "smithy.api#documentation": "

The dualstack DNS name of the EC2 Instance Connect Endpoint. A dualstack DNS name supports connections from both IPv4 and IPv6 clients.

", + "smithy.api#xmlName": "dualstack" } - }, - "u_6tb1_112xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The public DNS names of the endpoint, including IPv4-only and dualstack DNS\n names.

" + } + }, + "com.amazonaws.ec2#InstanceConnectEndpointSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Ec2InstanceConnectEndpoint", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceCount": { + "type": "structure", + "members": { + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "u-6tb1.112xlarge" + "aws.protocols#ec2QueryName": "InstanceCount", + "smithy.api#documentation": "

The number of listed Reserved Instances in the state specified by the\n state.

", + "smithy.api#xmlName": "instanceCount" } }, - "u_9tb1_112xlarge": { - "target": "smithy.api#Unit", + "State": { + "target": "com.amazonaws.ec2#ListingState", "traits": { - "smithy.api#enumValue": "u-9tb1.112xlarge" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The states of the listed Reserved Instances.

", + "smithy.api#xmlName": "state" } - }, - "u_12tb1_112xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes a Reserved Instance listing state.

" + } + }, + "com.amazonaws.ec2#InstanceCountList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceCount", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceCreditSpecification": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "u-12tb1.112xlarge" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#xmlName": "instanceId" } }, - "u_6tb1_metal": { - "target": "smithy.api#Unit", + "CpuCredits": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "u-6tb1.metal" + "aws.protocols#ec2QueryName": "CpuCredits", + "smithy.api#documentation": "

The credit option for CPU usage of the instance.

\n

Valid values: standard | unlimited\n

", + "smithy.api#xmlName": "cpuCredits" } - }, - "u_9tb1_metal": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the credit option for CPU usage of a burstable performance instance.

" + } + }, + "com.amazonaws.ec2#InstanceCreditSpecificationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceCreditSpecification", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceCreditSpecificationListRequest": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceCreditSpecificationRequest", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceCreditSpecificationRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "smithy.api#enumValue": "u-9tb1.metal" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#required": {} } }, - "u_12tb1_metal": { - "target": "smithy.api#Unit", + "CpuCredits": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "u-12tb1.metal" + "smithy.api#documentation": "

The credit option for CPU usage of the instance.

\n

Valid values: standard | unlimited\n

\n

T3 instances with host tenancy do not support the unlimited\n CPU credit option.

" } - }, - "u_18tb1_metal": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the credit option for CPU usage of a burstable performance instance.

" + } + }, + "com.amazonaws.ec2#InstanceEventId": { + "type": "string" + }, + "com.amazonaws.ec2#InstanceEventWindow": { + "type": "structure", + "members": { + "InstanceEventWindowId": { + "target": "com.amazonaws.ec2#InstanceEventWindowId", "traits": { - "smithy.api#enumValue": "u-18tb1.metal" + "aws.protocols#ec2QueryName": "InstanceEventWindowId", + "smithy.api#documentation": "

The ID of the event window.

", + "smithy.api#xmlName": "instanceEventWindowId" } }, - "u_24tb1_metal": { - "target": "smithy.api#Unit", + "TimeRanges": { + "target": "com.amazonaws.ec2#InstanceEventWindowTimeRangeList", "traits": { - "smithy.api#enumValue": "u-24tb1.metal" + "aws.protocols#ec2QueryName": "TimeRangeSet", + "smithy.api#documentation": "

One or more time ranges defined for the event window.

", + "smithy.api#xmlName": "timeRangeSet" } }, - "vt1_3xlarge": { - "target": "smithy.api#Unit", + "Name": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "vt1.3xlarge" + "aws.protocols#ec2QueryName": "Name", + "smithy.api#documentation": "

The name of the event window.

", + "smithy.api#xmlName": "name" } }, - "vt1_6xlarge": { - "target": "smithy.api#Unit", + "CronExpression": { + "target": "com.amazonaws.ec2#InstanceEventWindowCronExpression", "traits": { - "smithy.api#enumValue": "vt1.6xlarge" + "aws.protocols#ec2QueryName": "CronExpression", + "smithy.api#documentation": "

The cron expression defined for the event window.

", + "smithy.api#xmlName": "cronExpression" } }, - "vt1_24xlarge": { - "target": "smithy.api#Unit", + "AssociationTarget": { + "target": "com.amazonaws.ec2#InstanceEventWindowAssociationTarget", "traits": { - "smithy.api#enumValue": "vt1.24xlarge" + "aws.protocols#ec2QueryName": "AssociationTarget", + "smithy.api#documentation": "

One or more targets associated with the event window.

", + "smithy.api#xmlName": "associationTarget" } }, - "x1_16xlarge": { - "target": "smithy.api#Unit", + "State": { + "target": "com.amazonaws.ec2#InstanceEventWindowState", "traits": { - "smithy.api#enumValue": "x1.16xlarge" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the event window.

", + "smithy.api#xmlName": "state" } }, - "x1_32xlarge": { - "target": "smithy.api#Unit", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "x1.32xlarge" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The instance tags associated with the event window.

", + "smithy.api#xmlName": "tagSet" } - }, - "x1e_xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The event window.

" + } + }, + "com.amazonaws.ec2#InstanceEventWindowAssociationRequest": { + "type": "structure", + "members": { + "InstanceIds": { + "target": "com.amazonaws.ec2#InstanceIdList", "traits": { - "smithy.api#enumValue": "x1e.xlarge" + "smithy.api#documentation": "

The IDs of the instances to associate with the event window. If the instance is on a\n Dedicated Host, you can't specify the Instance ID parameter; you must use the Dedicated\n Host ID parameter.

", + "smithy.api#xmlName": "InstanceId" } }, - "x1e_2xlarge": { - "target": "smithy.api#Unit", + "InstanceTags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "x1e.2xlarge" + "smithy.api#documentation": "

The instance tags to associate with the event window. Any instances associated with the\n tags will be associated with the event window.

\n

Note that while you can't create tag keys beginning with aws:, you can\n specify existing Amazon Web Services managed tag keys (with the aws: prefix) when specifying\n them as targets to associate with the event window.

", + "smithy.api#xmlName": "InstanceTag" } }, - "x1e_4xlarge": { - "target": "smithy.api#Unit", + "DedicatedHostIds": { + "target": "com.amazonaws.ec2#DedicatedHostIdList", "traits": { - "smithy.api#enumValue": "x1e.4xlarge" + "smithy.api#documentation": "

The IDs of the Dedicated Hosts to associate with the event window.

", + "smithy.api#xmlName": "DedicatedHostId" } - }, - "x1e_8xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

One or more targets associated with the specified event window. Only one\n type of target (instance ID, instance tag, or Dedicated Host ID)\n can be associated with an event window.

" + } + }, + "com.amazonaws.ec2#InstanceEventWindowAssociationTarget": { + "type": "structure", + "members": { + "InstanceIds": { + "target": "com.amazonaws.ec2#InstanceIdList", "traits": { - "smithy.api#enumValue": "x1e.8xlarge" + "aws.protocols#ec2QueryName": "InstanceIdSet", + "smithy.api#documentation": "

The IDs of the instances associated with the event window.

", + "smithy.api#xmlName": "instanceIdSet" } }, - "x1e_16xlarge": { - "target": "smithy.api#Unit", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "x1e.16xlarge" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The instance tags associated with the event window. Any instances associated with the\n tags will be associated with the event window.

\n

Note that while you can't create tag keys beginning with aws:, you can\n specify existing Amazon Web Services managed tag keys (with the aws: prefix) when specifying\n them as targets to associate with the event window.

", + "smithy.api#xmlName": "tagSet" } }, - "x1e_32xlarge": { - "target": "smithy.api#Unit", + "DedicatedHostIds": { + "target": "com.amazonaws.ec2#DedicatedHostIdList", "traits": { - "smithy.api#enumValue": "x1e.32xlarge" + "aws.protocols#ec2QueryName": "DedicatedHostIdSet", + "smithy.api#documentation": "

The IDs of the Dedicated Hosts associated with the event window.

", + "smithy.api#xmlName": "dedicatedHostIdSet" } - }, - "x2iezn_2xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

One or more targets associated with the event window.

" + } + }, + "com.amazonaws.ec2#InstanceEventWindowCronExpression": { + "type": "string" + }, + "com.amazonaws.ec2#InstanceEventWindowDisassociationRequest": { + "type": "structure", + "members": { + "InstanceIds": { + "target": "com.amazonaws.ec2#InstanceIdList", "traits": { - "smithy.api#enumValue": "x2iezn.2xlarge" + "smithy.api#documentation": "

The IDs of the instances to disassociate from the event window.

", + "smithy.api#xmlName": "InstanceId" } }, - "x2iezn_4xlarge": { - "target": "smithy.api#Unit", + "InstanceTags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "x2iezn.4xlarge" + "smithy.api#documentation": "

The instance tags to disassociate from the event window. Any instances associated with\n the tags will be disassociated from the event window.

", + "smithy.api#xmlName": "InstanceTag" } }, - "x2iezn_6xlarge": { - "target": "smithy.api#Unit", + "DedicatedHostIds": { + "target": "com.amazonaws.ec2#DedicatedHostIdList", "traits": { - "smithy.api#enumValue": "x2iezn.6xlarge" + "smithy.api#documentation": "

The IDs of the Dedicated Hosts to disassociate from the event window.

", + "smithy.api#xmlName": "DedicatedHostId" } - }, - "x2iezn_8xlarge": { + } + }, + "traits": { + "smithy.api#documentation": "

The targets to disassociate from the specified event window.

" + } + }, + "com.amazonaws.ec2#InstanceEventWindowId": { + "type": "string" + }, + "com.amazonaws.ec2#InstanceEventWindowIdSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceEventWindowId", + "traits": { + "smithy.api#xmlName": "InstanceEventWindowId" + } + } + }, + "com.amazonaws.ec2#InstanceEventWindowSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceEventWindow", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceEventWindowState": { + "type": "enum", + "members": { + "creating": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "x2iezn.8xlarge" + "smithy.api#enumValue": "creating" } }, - "x2iezn_12xlarge": { + "deleting": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "x2iezn.12xlarge" + "smithy.api#enumValue": "deleting" } }, - "x2iezn_metal": { + "active": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "x2iezn.metal" + "smithy.api#enumValue": "active" } }, - "x2gd_medium": { + "deleted": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "x2gd.medium" + "smithy.api#enumValue": "deleted" } - }, - "x2gd_large": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#InstanceEventWindowStateChange": { + "type": "structure", + "members": { + "InstanceEventWindowId": { + "target": "com.amazonaws.ec2#InstanceEventWindowId", "traits": { - "smithy.api#enumValue": "x2gd.large" + "aws.protocols#ec2QueryName": "InstanceEventWindowId", + "smithy.api#documentation": "

The ID of the event window.

", + "smithy.api#xmlName": "instanceEventWindowId" } }, - "x2gd_xlarge": { - "target": "smithy.api#Unit", + "State": { + "target": "com.amazonaws.ec2#InstanceEventWindowState", "traits": { - "smithy.api#enumValue": "x2gd.xlarge" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the event window.

", + "smithy.api#xmlName": "state" } - }, - "x2gd_2xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The state of the event window.

" + } + }, + "com.amazonaws.ec2#InstanceEventWindowTimeRange": { + "type": "structure", + "members": { + "StartWeekDay": { + "target": "com.amazonaws.ec2#WeekDay", "traits": { - "smithy.api#enumValue": "x2gd.2xlarge" + "aws.protocols#ec2QueryName": "StartWeekDay", + "smithy.api#documentation": "

The day on which the time range begins.

", + "smithy.api#xmlName": "startWeekDay" } }, - "x2gd_4xlarge": { - "target": "smithy.api#Unit", + "StartHour": { + "target": "com.amazonaws.ec2#Hour", "traits": { - "smithy.api#enumValue": "x2gd.4xlarge" + "aws.protocols#ec2QueryName": "StartHour", + "smithy.api#documentation": "

The hour when the time range begins.

", + "smithy.api#xmlName": "startHour" } }, - "x2gd_8xlarge": { - "target": "smithy.api#Unit", + "EndWeekDay": { + "target": "com.amazonaws.ec2#WeekDay", "traits": { - "smithy.api#enumValue": "x2gd.8xlarge" + "aws.protocols#ec2QueryName": "EndWeekDay", + "smithy.api#documentation": "

The day on which the time range ends.

", + "smithy.api#xmlName": "endWeekDay" } }, - "x2gd_12xlarge": { - "target": "smithy.api#Unit", + "EndHour": { + "target": "com.amazonaws.ec2#Hour", "traits": { - "smithy.api#enumValue": "x2gd.12xlarge" + "aws.protocols#ec2QueryName": "EndHour", + "smithy.api#documentation": "

The hour when the time range ends.

", + "smithy.api#xmlName": "endHour" } - }, - "x2gd_16xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The start day and time and the end day and time of the time range, in UTC.

" + } + }, + "com.amazonaws.ec2#InstanceEventWindowTimeRangeList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceEventWindowTimeRange", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceEventWindowTimeRangeRequest": { + "type": "structure", + "members": { + "StartWeekDay": { + "target": "com.amazonaws.ec2#WeekDay", "traits": { - "smithy.api#enumValue": "x2gd.16xlarge" + "smithy.api#documentation": "

The day on which the time range begins.

" } }, - "x2gd_metal": { - "target": "smithy.api#Unit", + "StartHour": { + "target": "com.amazonaws.ec2#Hour", "traits": { - "smithy.api#enumValue": "x2gd.metal" + "smithy.api#documentation": "

The hour when the time range begins.

" } }, - "z1d_large": { - "target": "smithy.api#Unit", + "EndWeekDay": { + "target": "com.amazonaws.ec2#WeekDay", "traits": { - "smithy.api#enumValue": "z1d.large" + "smithy.api#documentation": "

The day on which the time range ends.

" } }, - "z1d_xlarge": { - "target": "smithy.api#Unit", + "EndHour": { + "target": "com.amazonaws.ec2#Hour", "traits": { - "smithy.api#enumValue": "z1d.xlarge" + "smithy.api#documentation": "

The hour when the time range ends.

" } - }, - "z1d_2xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The start day and time and the end day and time of the time range, in UTC.

" + } + }, + "com.amazonaws.ec2#InstanceEventWindowTimeRangeRequestSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceEventWindowTimeRangeRequest" + } + }, + "com.amazonaws.ec2#InstanceExportDetails": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "z1d.2xlarge" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the resource being exported.

", + "smithy.api#xmlName": "instanceId" } }, - "z1d_3xlarge": { - "target": "smithy.api#Unit", + "TargetEnvironment": { + "target": "com.amazonaws.ec2#ExportEnvironment", "traits": { - "smithy.api#enumValue": "z1d.3xlarge" + "aws.protocols#ec2QueryName": "TargetEnvironment", + "smithy.api#documentation": "

The target virtualization environment.

", + "smithy.api#xmlName": "targetEnvironment" } - }, - "z1d_6xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes an instance to export.

" + } + }, + "com.amazonaws.ec2#InstanceFamilyCreditSpecification": { + "type": "structure", + "members": { + "InstanceFamily": { + "target": "com.amazonaws.ec2#UnlimitedSupportedInstanceFamily", "traits": { - "smithy.api#enumValue": "z1d.6xlarge" + "aws.protocols#ec2QueryName": "InstanceFamily", + "smithy.api#documentation": "

The instance family.

", + "smithy.api#xmlName": "instanceFamily" } }, - "z1d_12xlarge": { - "target": "smithy.api#Unit", + "CpuCredits": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "z1d.12xlarge" + "aws.protocols#ec2QueryName": "CpuCredits", + "smithy.api#documentation": "

The default credit option for CPU usage of the instance family. Valid values are\n standard and unlimited.

", + "smithy.api#xmlName": "cpuCredits" } - }, - "z1d_metal": { + } + }, + "traits": { + "smithy.api#documentation": "

Describes the default credit option for CPU usage of a burstable performance instance\n family.

" + } + }, + "com.amazonaws.ec2#InstanceGeneration": { + "type": "enum", + "members": { + "CURRENT": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "z1d.metal" + "smithy.api#enumValue": "current" } }, - "x2idn_16xlarge": { + "PREVIOUS": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "x2idn.16xlarge" + "smithy.api#enumValue": "previous" } - }, - "x2idn_24xlarge": { + } + } + }, + "com.amazonaws.ec2#InstanceGenerationSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceGeneration", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceHealthStatus": { + "type": "enum", + "members": { + "HEALTHY_STATUS": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "x2idn.24xlarge" + "smithy.api#enumValue": "healthy" } }, - "x2idn_32xlarge": { + "UNHEALTHY_STATUS": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "x2idn.32xlarge" + "smithy.api#enumValue": "unhealthy" } - }, - "x2iedn_xlarge": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#InstanceId": { + "type": "string" + }, + "com.amazonaws.ec2#InstanceIdForResolver": { + "type": "string" + }, + "com.amazonaws.ec2#InstanceIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceIdSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceId", + "traits": { + "smithy.api#xmlName": "InstanceId" + } + } + }, + "com.amazonaws.ec2#InstanceIdWithVolumeResolver": { + "type": "string" + }, + "com.amazonaws.ec2#InstanceIdsSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceImageMetadata": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "smithy.api#enumValue": "x2iedn.xlarge" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#xmlName": "instanceId" } }, - "x2iedn_2xlarge": { - "target": "smithy.api#Unit", + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", "traits": { - "smithy.api#enumValue": "x2iedn.2xlarge" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type.

", + "smithy.api#xmlName": "instanceType" } }, - "x2iedn_4xlarge": { - "target": "smithy.api#Unit", + "LaunchTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#enumValue": "x2iedn.4xlarge" + "aws.protocols#ec2QueryName": "LaunchTime", + "smithy.api#documentation": "

The time the instance was launched.

", + "smithy.api#xmlName": "launchTime" } }, - "x2iedn_8xlarge": { - "target": "smithy.api#Unit", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "x2iedn.8xlarge" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone or Local Zone of the instance.

", + "smithy.api#xmlName": "availabilityZone" } }, - "x2iedn_16xlarge": { - "target": "smithy.api#Unit", + "ZoneId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "x2iedn.16xlarge" + "aws.protocols#ec2QueryName": "ZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone or Local Zone of the instance.

", + "smithy.api#xmlName": "zoneId" } }, - "x2iedn_24xlarge": { - "target": "smithy.api#Unit", + "State": { + "target": "com.amazonaws.ec2#InstanceState", "traits": { - "smithy.api#enumValue": "x2iedn.24xlarge" + "aws.protocols#ec2QueryName": "InstanceState", + "smithy.api#documentation": "

The current state of the instance.

", + "smithy.api#xmlName": "instanceState" } }, - "x2iedn_32xlarge": { - "target": "smithy.api#Unit", + "OwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "x2iedn.32xlarge" + "aws.protocols#ec2QueryName": "InstanceOwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the instance.

", + "smithy.api#xmlName": "instanceOwnerId" } }, - "c6a_large": { - "target": "smithy.api#Unit", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "c6a.large" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the instance.

", + "smithy.api#xmlName": "tagSet" } }, - "c6a_xlarge": { - "target": "smithy.api#Unit", + "ImageMetadata": { + "target": "com.amazonaws.ec2#ImageMetadata", "traits": { - "smithy.api#enumValue": "c6a.xlarge" + "aws.protocols#ec2QueryName": "ImageMetadata", + "smithy.api#documentation": "

Information about the AMI used to launch the instance.

", + "smithy.api#xmlName": "imageMetadata" } }, - "c6a_2xlarge": { - "target": "smithy.api#Unit", + "Operator": { + "target": "com.amazonaws.ec2#OperatorResponse", "traits": { - "smithy.api#enumValue": "c6a.2xlarge" + "aws.protocols#ec2QueryName": "Operator", + "smithy.api#documentation": "

The entity that manages the instance.

", + "smithy.api#xmlName": "operator" } - }, - "c6a_4xlarge": { + } + }, + "traits": { + "smithy.api#documentation": "

Information about the instance and the AMI used to launch the instance.

" + } + }, + "com.amazonaws.ec2#InstanceImageMetadataList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceImageMetadata", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceInterruptionBehavior": { + "type": "enum", + "members": { + "hibernate": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c6a.4xlarge" + "smithy.api#enumValue": "hibernate" } }, - "c6a_8xlarge": { + "stop": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c6a.8xlarge" + "smithy.api#enumValue": "stop" } }, - "c6a_12xlarge": { + "terminate": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c6a.12xlarge" + "smithy.api#enumValue": "terminate" } - }, - "c6a_16xlarge": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#InstanceIpv4Prefix": { + "type": "structure", + "members": { + "Ipv4Prefix": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c6a.16xlarge" + "aws.protocols#ec2QueryName": "Ipv4Prefix", + "smithy.api#documentation": "

One or more IPv4 prefixes assigned to the network interface.

", + "smithy.api#xmlName": "ipv4Prefix" } - }, - "c6a_24xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Information about an IPv4 prefix.

" + } + }, + "com.amazonaws.ec2#InstanceIpv4PrefixList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceIpv4Prefix", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceIpv6Address": { + "type": "structure", + "members": { + "Ipv6Address": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c6a.24xlarge" + "aws.protocols#ec2QueryName": "Ipv6Address", + "smithy.api#documentation": "

The IPv6 address.

", + "smithy.api#xmlName": "ipv6Address" } }, - "c6a_32xlarge": { - "target": "smithy.api#Unit", + "IsPrimaryIpv6": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "c6a.32xlarge" + "aws.protocols#ec2QueryName": "IsPrimaryIpv6", + "smithy.api#documentation": "

Determines if an IPv6 address associated with a network interface is the primary IPv6 address. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. \n For more information, see RunInstances.

", + "smithy.api#xmlName": "isPrimaryIpv6" } - }, - "c6a_48xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes an IPv6 address.

" + } + }, + "com.amazonaws.ec2#InstanceIpv6AddressList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceIpv6Address", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceIpv6AddressListRequest": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceIpv6AddressRequest", + "traits": { + "smithy.api#xmlName": "InstanceIpv6Address" + } + } + }, + "com.amazonaws.ec2#InstanceIpv6AddressRequest": { + "type": "structure", + "members": { + "Ipv6Address": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c6a.48xlarge" + "smithy.api#documentation": "

The IPv6 address.

" } - }, - "c6a_metal": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes an IPv6 address.

" + } + }, + "com.amazonaws.ec2#InstanceIpv6Prefix": { + "type": "structure", + "members": { + "Ipv6Prefix": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c6a.metal" + "aws.protocols#ec2QueryName": "Ipv6Prefix", + "smithy.api#documentation": "

One or more IPv6 prefixes assigned to the network interface.

", + "smithy.api#xmlName": "ipv6Prefix" } - }, - "m6a_metal": { + } + }, + "traits": { + "smithy.api#documentation": "

Information about an IPv6 prefix.

" + } + }, + "com.amazonaws.ec2#InstanceIpv6PrefixList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceIpv6Prefix", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceLifecycle": { + "type": "enum", + "members": { + "SPOT": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "m6a.metal" + "smithy.api#enumValue": "spot" } }, - "i4i_large": { + "ON_DEMAND": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "i4i.large" + "smithy.api#enumValue": "on-demand" } - }, - "i4i_xlarge": { + } + } + }, + "com.amazonaws.ec2#InstanceLifecycleType": { + "type": "enum", + "members": { + "spot": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "i4i.xlarge" + "smithy.api#enumValue": "spot" } }, - "i4i_2xlarge": { + "scheduled": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "i4i.2xlarge" + "smithy.api#enumValue": "scheduled" } }, - "i4i_4xlarge": { + "capacity_block": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "i4i.4xlarge" + "smithy.api#enumValue": "capacity-block" } - }, - "i4i_8xlarge": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#InstanceList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Instance", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceMaintenanceOptions": { + "type": "structure", + "members": { + "AutoRecovery": { + "target": "com.amazonaws.ec2#InstanceAutoRecoveryState", "traits": { - "smithy.api#enumValue": "i4i.8xlarge" + "aws.protocols#ec2QueryName": "AutoRecovery", + "smithy.api#documentation": "

Provides information on the current automatic recovery behavior of your\n instance.

", + "smithy.api#xmlName": "autoRecovery" } }, - "i4i_16xlarge": { - "target": "smithy.api#Unit", + "RebootMigration": { + "target": "com.amazonaws.ec2#InstanceRebootMigrationState", "traits": { - "smithy.api#enumValue": "i4i.16xlarge" + "aws.protocols#ec2QueryName": "RebootMigration", + "smithy.api#documentation": "

Specifies whether to attempt reboot migration during a user-initiated reboot of an\n instance that has a scheduled system-reboot event:

\n \n

This setting only applies to supported instances that have a scheduled reboot event.\n For more information, see Enable or disable reboot migration in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "rebootMigration" } - }, - "i4i_32xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The maintenance options for the instance.

" + } + }, + "com.amazonaws.ec2#InstanceMaintenanceOptionsRequest": { + "type": "structure", + "members": { + "AutoRecovery": { + "target": "com.amazonaws.ec2#InstanceAutoRecoveryState", "traits": { - "smithy.api#enumValue": "i4i.32xlarge" + "smithy.api#documentation": "

Disables the automatic recovery behavior of your instance or sets it to default. For\n more information, see Simplified automatic recovery.

" } - }, - "i4i_metal": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The maintenance options for the instance.

" + } + }, + "com.amazonaws.ec2#InstanceMarketOptionsRequest": { + "type": "structure", + "members": { + "MarketType": { + "target": "com.amazonaws.ec2#MarketType", "traits": { - "smithy.api#enumValue": "i4i.metal" + "smithy.api#documentation": "

The market type.

" } }, - "x2idn_metal": { - "target": "smithy.api#Unit", + "SpotOptions": { + "target": "com.amazonaws.ec2#SpotMarketOptions", "traits": { - "smithy.api#enumValue": "x2idn.metal" + "smithy.api#documentation": "

The options for Spot Instances.

" } - }, - "x2iedn_metal": { + } + }, + "traits": { + "smithy.api#documentation": "

Describes the market (purchasing) option for the instances.

" + } + }, + "com.amazonaws.ec2#InstanceMatchCriteria": { + "type": "enum", + "members": { + "open": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "x2iedn.metal" + "smithy.api#enumValue": "open" } }, - "c7g_medium": { + "targeted": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7g.medium" + "smithy.api#enumValue": "targeted" } - }, - "c7g_large": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#InstanceMetadataDefaultsResponse": { + "type": "structure", + "members": { + "HttpTokens": { + "target": "com.amazonaws.ec2#HttpTokensState", "traits": { - "smithy.api#enumValue": "c7g.large" + "aws.protocols#ec2QueryName": "HttpTokens", + "smithy.api#documentation": "

Indicates whether IMDSv2 is required.

\n ", + "smithy.api#xmlName": "httpTokens" } }, - "c7g_xlarge": { - "target": "smithy.api#Unit", + "HttpPutResponseHopLimit": { + "target": "com.amazonaws.ec2#BoxedInteger", "traits": { - "smithy.api#enumValue": "c7g.xlarge" + "aws.protocols#ec2QueryName": "HttpPutResponseHopLimit", + "smithy.api#documentation": "

The maximum number of hops that the metadata token can travel.

", + "smithy.api#xmlName": "httpPutResponseHopLimit" } }, - "c7g_2xlarge": { - "target": "smithy.api#Unit", + "HttpEndpoint": { + "target": "com.amazonaws.ec2#InstanceMetadataEndpointState", "traits": { - "smithy.api#enumValue": "c7g.2xlarge" + "aws.protocols#ec2QueryName": "HttpEndpoint", + "smithy.api#documentation": "

Indicates whether the IMDS endpoint for an instance is enabled or disabled. When disabled, the instance\n metadata can't be accessed.

", + "smithy.api#xmlName": "httpEndpoint" } }, - "c7g_4xlarge": { - "target": "smithy.api#Unit", + "InstanceMetadataTags": { + "target": "com.amazonaws.ec2#InstanceMetadataTagsState", "traits": { - "smithy.api#enumValue": "c7g.4xlarge" + "aws.protocols#ec2QueryName": "InstanceMetadataTags", + "smithy.api#documentation": "

Indicates whether access to instance tags from the instance metadata is enabled or\n disabled. For more information, see Work with\n instance tags using the instance metadata in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "instanceMetadataTags" } }, - "c7g_8xlarge": { - "target": "smithy.api#Unit", + "ManagedBy": { + "target": "com.amazonaws.ec2#ManagedBy", "traits": { - "smithy.api#enumValue": "c7g.8xlarge" + "aws.protocols#ec2QueryName": "ManagedBy", + "smithy.api#documentation": "

The entity that manages the IMDS default settings. Possible values include:

\n ", + "smithy.api#xmlName": "managedBy" } }, - "c7g_12xlarge": { - "target": "smithy.api#Unit", + "ManagedExceptionMessage": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c7g.12xlarge" + "aws.protocols#ec2QueryName": "ManagedExceptionMessage", + "smithy.api#documentation": "

The customized exception message that is specified in the declarative policy.

", + "smithy.api#xmlName": "managedExceptionMessage" } - }, - "c7g_16xlarge": { + } + }, + "traits": { + "smithy.api#documentation": "

The default instance metadata service (IMDS) settings that were set at the account\n level in the specified Amazon Web Services\u2028 Region.

" + } + }, + "com.amazonaws.ec2#InstanceMetadataEndpointState": { + "type": "enum", + "members": { + "disabled": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7g.16xlarge" + "smithy.api#enumValue": "disabled" } }, - "mac2_metal": { + "enabled": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "mac2.metal" + "smithy.api#enumValue": "enabled" } - }, - "c6id_large": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#InstanceMetadataOptionsRequest": { + "type": "structure", + "members": { + "HttpTokens": { + "target": "com.amazonaws.ec2#HttpTokensState", "traits": { - "smithy.api#enumValue": "c6id.large" + "smithy.api#documentation": "

Indicates whether IMDSv2 is required.

\n \n

Default:

\n \n

The default value can also be affected by other combinations of parameters. For more\n information, see Order of precedence for instance metadata options in the\n Amazon EC2 User Guide.

" } }, - "c6id_xlarge": { - "target": "smithy.api#Unit", + "HttpPutResponseHopLimit": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "c6id.xlarge" + "smithy.api#documentation": "

The maximum number of hops that the metadata token can travel.

\n

Possible values: Integers from 1 to 64

" } }, - "c6id_2xlarge": { - "target": "smithy.api#Unit", + "HttpEndpoint": { + "target": "com.amazonaws.ec2#InstanceMetadataEndpointState", "traits": { - "smithy.api#enumValue": "c6id.2xlarge" + "smithy.api#documentation": "

Enables or disables the HTTP metadata endpoint on your instances.

\n

If you specify a value of disabled, you cannot access your instance\n metadata.

\n

Default: enabled\n

" } }, - "c6id_4xlarge": { - "target": "smithy.api#Unit", + "HttpProtocolIpv6": { + "target": "com.amazonaws.ec2#InstanceMetadataProtocolState", "traits": { - "smithy.api#enumValue": "c6id.4xlarge" + "smithy.api#documentation": "

Enables or disables the IPv6 endpoint for the instance metadata service.

\n

Default: disabled\n

" } }, - "c6id_8xlarge": { - "target": "smithy.api#Unit", + "InstanceMetadataTags": { + "target": "com.amazonaws.ec2#InstanceMetadataTagsState", "traits": { - "smithy.api#enumValue": "c6id.8xlarge" + "smithy.api#documentation": "

Set to enabled to allow access to instance tags from the instance\n metadata. Set to disabled to turn off access to instance tags from the\n instance metadata. For more information, see Work with\n instance tags using the instance metadata.

\n

Default: disabled\n

" } - }, - "c6id_12xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The metadata options for the instance.

" + } + }, + "com.amazonaws.ec2#InstanceMetadataOptionsResponse": { + "type": "structure", + "members": { + "State": { + "target": "com.amazonaws.ec2#InstanceMetadataOptionsState", "traits": { - "smithy.api#enumValue": "c6id.12xlarge" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the metadata option changes.

\n

\n pending - The metadata options are being updated and the instance is not\n ready to process metadata traffic with the new selection.

\n

\n applied - The metadata options have been successfully applied on the\n instance.

", + "smithy.api#xmlName": "state" } }, - "c6id_16xlarge": { - "target": "smithy.api#Unit", + "HttpTokens": { + "target": "com.amazonaws.ec2#HttpTokensState", "traits": { - "smithy.api#enumValue": "c6id.16xlarge" + "aws.protocols#ec2QueryName": "HttpTokens", + "smithy.api#documentation": "

Indicates whether IMDSv2 is required.

\n ", + "smithy.api#xmlName": "httpTokens" } }, - "c6id_24xlarge": { - "target": "smithy.api#Unit", + "HttpPutResponseHopLimit": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "c6id.24xlarge" + "aws.protocols#ec2QueryName": "HttpPutResponseHopLimit", + "smithy.api#documentation": "

The maximum number of hops that the metadata token can travel.

\n

Possible values: Integers from 1 to 64\n

", + "smithy.api#xmlName": "httpPutResponseHopLimit" } }, - "c6id_32xlarge": { - "target": "smithy.api#Unit", + "HttpEndpoint": { + "target": "com.amazonaws.ec2#InstanceMetadataEndpointState", "traits": { - "smithy.api#enumValue": "c6id.32xlarge" + "aws.protocols#ec2QueryName": "HttpEndpoint", + "smithy.api#documentation": "

Indicates whether the HTTP metadata endpoint on your instances is enabled or\n disabled.

\n

If the value is disabled, you cannot access your instance\n metadata.

", + "smithy.api#xmlName": "httpEndpoint" } }, - "c6id_metal": { - "target": "smithy.api#Unit", + "HttpProtocolIpv6": { + "target": "com.amazonaws.ec2#InstanceMetadataProtocolState", "traits": { - "smithy.api#enumValue": "c6id.metal" + "aws.protocols#ec2QueryName": "HttpProtocolIpv6", + "smithy.api#documentation": "

Indicates whether the IPv6 endpoint for the instance metadata service is enabled or\n disabled.

\n

Default: disabled\n

", + "smithy.api#xmlName": "httpProtocolIpv6" } }, - "m6id_large": { - "target": "smithy.api#Unit", + "InstanceMetadataTags": { + "target": "com.amazonaws.ec2#InstanceMetadataTagsState", "traits": { - "smithy.api#enumValue": "m6id.large" + "aws.protocols#ec2QueryName": "InstanceMetadataTags", + "smithy.api#documentation": "

Indicates whether access to instance tags from the instance metadata is enabled or\n disabled. For more information, see Work with\n instance tags using the instance metadata.

", + "smithy.api#xmlName": "instanceMetadataTags" } - }, - "m6id_xlarge": { + } + }, + "traits": { + "smithy.api#documentation": "

The metadata options for the instance.

" + } + }, + "com.amazonaws.ec2#InstanceMetadataOptionsState": { + "type": "enum", + "members": { + "pending": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "m6id.xlarge" + "smithy.api#enumValue": "pending" } }, - "m6id_2xlarge": { + "applied": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "m6id.2xlarge" + "smithy.api#enumValue": "applied" } - }, - "m6id_4xlarge": { + } + } + }, + "com.amazonaws.ec2#InstanceMetadataProtocolState": { + "type": "enum", + "members": { + "disabled": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "m6id.4xlarge" + "smithy.api#enumValue": "disabled" } }, - "m6id_8xlarge": { + "enabled": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "m6id.8xlarge" + "smithy.api#enumValue": "enabled" } - }, - "m6id_12xlarge": { + } + } + }, + "com.amazonaws.ec2#InstanceMetadataTagsState": { + "type": "enum", + "members": { + "disabled": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "m6id.12xlarge" + "smithy.api#enumValue": "disabled" } }, - "m6id_16xlarge": { + "enabled": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "m6id.16xlarge" + "smithy.api#enumValue": "enabled" } - }, - "m6id_24xlarge": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#InstanceMonitoring": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6id.24xlarge" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#xmlName": "instanceId" } }, - "m6id_32xlarge": { - "target": "smithy.api#Unit", + "Monitoring": { + "target": "com.amazonaws.ec2#Monitoring", "traits": { - "smithy.api#enumValue": "m6id.32xlarge" + "aws.protocols#ec2QueryName": "Monitoring", + "smithy.api#documentation": "

The monitoring for the instance.

", + "smithy.api#xmlName": "monitoring" } - }, - "m6id_metal": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the monitoring of an instance.

" + } + }, + "com.amazonaws.ec2#InstanceMonitoringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceMonitoring", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceNetworkInterface": { + "type": "structure", + "members": { + "Association": { + "target": "com.amazonaws.ec2#InstanceNetworkInterfaceAssociation", "traits": { - "smithy.api#enumValue": "m6id.metal" + "aws.protocols#ec2QueryName": "Association", + "smithy.api#documentation": "

The association information for an Elastic IPv4 associated with the network\n interface.

", + "smithy.api#xmlName": "association" } }, - "r6id_large": { - "target": "smithy.api#Unit", + "Attachment": { + "target": "com.amazonaws.ec2#InstanceNetworkInterfaceAttachment", "traits": { - "smithy.api#enumValue": "r6id.large" + "aws.protocols#ec2QueryName": "Attachment", + "smithy.api#documentation": "

The network interface attachment.

", + "smithy.api#xmlName": "attachment" } }, - "r6id_xlarge": { - "target": "smithy.api#Unit", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r6id.xlarge" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The description.

", + "smithy.api#xmlName": "description" } }, - "r6id_2xlarge": { - "target": "smithy.api#Unit", + "Groups": { + "target": "com.amazonaws.ec2#GroupIdentifierList", "traits": { - "smithy.api#enumValue": "r6id.2xlarge" + "aws.protocols#ec2QueryName": "GroupSet", + "smithy.api#documentation": "

The security groups.

", + "smithy.api#xmlName": "groupSet" } }, - "r6id_4xlarge": { - "target": "smithy.api#Unit", + "Ipv6Addresses": { + "target": "com.amazonaws.ec2#InstanceIpv6AddressList", "traits": { - "smithy.api#enumValue": "r6id.4xlarge" + "aws.protocols#ec2QueryName": "Ipv6AddressesSet", + "smithy.api#documentation": "

The IPv6 addresses associated with the network interface.

", + "smithy.api#xmlName": "ipv6AddressesSet" } }, - "r6id_8xlarge": { - "target": "smithy.api#Unit", + "MacAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r6id.8xlarge" + "aws.protocols#ec2QueryName": "MacAddress", + "smithy.api#documentation": "

The MAC address.

", + "smithy.api#xmlName": "macAddress" } }, - "r6id_12xlarge": { - "target": "smithy.api#Unit", + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r6id.12xlarge" + "aws.protocols#ec2QueryName": "NetworkInterfaceId", + "smithy.api#documentation": "

The ID of the network interface.

", + "smithy.api#xmlName": "networkInterfaceId" } }, - "r6id_16xlarge": { - "target": "smithy.api#Unit", + "OwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r6id.16xlarge" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that created the network interface.

", + "smithy.api#xmlName": "ownerId" } }, - "r6id_24xlarge": { - "target": "smithy.api#Unit", + "PrivateDnsName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r6id.24xlarge" + "aws.protocols#ec2QueryName": "PrivateDnsName", + "smithy.api#documentation": "

The private DNS name.

", + "smithy.api#xmlName": "privateDnsName" } }, - "r6id_32xlarge": { - "target": "smithy.api#Unit", + "PrivateIpAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r6id.32xlarge" + "aws.protocols#ec2QueryName": "PrivateIpAddress", + "smithy.api#documentation": "

The IPv4 address of the network interface within the subnet.

", + "smithy.api#xmlName": "privateIpAddress" } }, - "r6id_metal": { - "target": "smithy.api#Unit", + "PrivateIpAddresses": { + "target": "com.amazonaws.ec2#InstancePrivateIpAddressList", "traits": { - "smithy.api#enumValue": "r6id.metal" + "aws.protocols#ec2QueryName": "PrivateIpAddressesSet", + "smithy.api#documentation": "

The private IPv4 addresses associated with the network interface.

", + "smithy.api#xmlName": "privateIpAddressesSet" } }, - "r6a_large": { - "target": "smithy.api#Unit", + "SourceDestCheck": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "r6a.large" + "aws.protocols#ec2QueryName": "SourceDestCheck", + "smithy.api#documentation": "

Indicates whether source/destination checking is enabled.

", + "smithy.api#xmlName": "sourceDestCheck" } }, - "r6a_xlarge": { - "target": "smithy.api#Unit", + "Status": { + "target": "com.amazonaws.ec2#NetworkInterfaceStatus", "traits": { - "smithy.api#enumValue": "r6a.xlarge" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The status of the network interface.

", + "smithy.api#xmlName": "status" } }, - "r6a_2xlarge": { - "target": "smithy.api#Unit", + "SubnetId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r6a.2xlarge" + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet.

", + "smithy.api#xmlName": "subnetId" } }, - "r6a_4xlarge": { - "target": "smithy.api#Unit", + "VpcId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r6a.4xlarge" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#xmlName": "vpcId" } }, - "r6a_8xlarge": { - "target": "smithy.api#Unit", + "InterfaceType": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r6a.8xlarge" + "aws.protocols#ec2QueryName": "InterfaceType", + "smithy.api#documentation": "

The type of network interface.

\n

Valid values: interface | efa | efa-only | evs |\n trunk\n

", + "smithy.api#xmlName": "interfaceType" } }, - "r6a_12xlarge": { - "target": "smithy.api#Unit", + "Ipv4Prefixes": { + "target": "com.amazonaws.ec2#InstanceIpv4PrefixList", "traits": { - "smithy.api#enumValue": "r6a.12xlarge" + "aws.protocols#ec2QueryName": "Ipv4PrefixSet", + "smithy.api#documentation": "

The IPv4 delegated prefixes that are assigned to the network interface.

", + "smithy.api#xmlName": "ipv4PrefixSet" } }, - "r6a_16xlarge": { - "target": "smithy.api#Unit", + "Ipv6Prefixes": { + "target": "com.amazonaws.ec2#InstanceIpv6PrefixList", "traits": { - "smithy.api#enumValue": "r6a.16xlarge" + "aws.protocols#ec2QueryName": "Ipv6PrefixSet", + "smithy.api#documentation": "

The IPv6 delegated prefixes that are assigned to the network interface.

", + "smithy.api#xmlName": "ipv6PrefixSet" } }, - "r6a_24xlarge": { - "target": "smithy.api#Unit", + "ConnectionTrackingConfiguration": { + "target": "com.amazonaws.ec2#ConnectionTrackingSpecificationResponse", "traits": { - "smithy.api#enumValue": "r6a.24xlarge" + "aws.protocols#ec2QueryName": "ConnectionTrackingConfiguration", + "smithy.api#documentation": "

A security group connection tracking configuration that enables you to set the timeout\n for connection tracking on an Elastic network interface. For more information, see\n Connection tracking timeouts in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "connectionTrackingConfiguration" } }, - "r6a_32xlarge": { - "target": "smithy.api#Unit", + "Operator": { + "target": "com.amazonaws.ec2#OperatorResponse", "traits": { - "smithy.api#enumValue": "r6a.32xlarge" + "aws.protocols#ec2QueryName": "Operator", + "smithy.api#documentation": "

The service provider that manages the network interface.

", + "smithy.api#xmlName": "operator" } - }, - "r6a_48xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes a network interface.

" + } + }, + "com.amazonaws.ec2#InstanceNetworkInterfaceAssociation": { + "type": "structure", + "members": { + "CarrierIp": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r6a.48xlarge" + "aws.protocols#ec2QueryName": "CarrierIp", + "smithy.api#documentation": "

The carrier IP address associated with the network interface.

", + "smithy.api#xmlName": "carrierIp" } }, - "r6a_metal": { - "target": "smithy.api#Unit", + "CustomerOwnedIp": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r6a.metal" + "aws.protocols#ec2QueryName": "CustomerOwnedIp", + "smithy.api#documentation": "

The customer-owned IP address associated with the network interface.

", + "smithy.api#xmlName": "customerOwnedIp" } }, - "p4de_24xlarge": { - "target": "smithy.api#Unit", + "IpOwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "p4de.24xlarge" + "aws.protocols#ec2QueryName": "IpOwnerId", + "smithy.api#documentation": "

The ID of the owner of the Elastic IP address.

", + "smithy.api#xmlName": "ipOwnerId" } }, - "u_3tb1_56xlarge": { - "target": "smithy.api#Unit", + "PublicDnsName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "u-3tb1.56xlarge" + "aws.protocols#ec2QueryName": "PublicDnsName", + "smithy.api#documentation": "

The public DNS name.

", + "smithy.api#xmlName": "publicDnsName" } }, - "u_18tb1_112xlarge": { - "target": "smithy.api#Unit", + "PublicIp": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "u-18tb1.112xlarge" + "aws.protocols#ec2QueryName": "PublicIp", + "smithy.api#documentation": "

The public IP address or Elastic IP address bound to the network interface.

", + "smithy.api#xmlName": "publicIp" } - }, - "u_24tb1_112xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes association information for an Elastic IP address (IPv4).

" + } + }, + "com.amazonaws.ec2#InstanceNetworkInterfaceAttachment": { + "type": "structure", + "members": { + "AttachTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#enumValue": "u-24tb1.112xlarge" + "aws.protocols#ec2QueryName": "AttachTime", + "smithy.api#documentation": "

The time stamp when the attachment initiated.

", + "smithy.api#xmlName": "attachTime" } }, - "trn1_2xlarge": { - "target": "smithy.api#Unit", + "AttachmentId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "trn1.2xlarge" + "aws.protocols#ec2QueryName": "AttachmentId", + "smithy.api#documentation": "

The ID of the network interface attachment.

", + "smithy.api#xmlName": "attachmentId" } }, - "trn1_32xlarge": { - "target": "smithy.api#Unit", + "DeleteOnTermination": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "trn1.32xlarge" + "aws.protocols#ec2QueryName": "DeleteOnTermination", + "smithy.api#documentation": "

Indicates whether the network interface is deleted when the instance is\n terminated.

", + "smithy.api#xmlName": "deleteOnTermination" } }, - "hpc6id_32xlarge": { - "target": "smithy.api#Unit", + "DeviceIndex": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "hpc6id.32xlarge" + "aws.protocols#ec2QueryName": "DeviceIndex", + "smithy.api#documentation": "

The index of the device on the instance for the network interface attachment.

", + "smithy.api#xmlName": "deviceIndex" } }, - "c6in_large": { - "target": "smithy.api#Unit", + "Status": { + "target": "com.amazonaws.ec2#AttachmentStatus", "traits": { - "smithy.api#enumValue": "c6in.large" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The attachment state.

", + "smithy.api#xmlName": "status" } }, - "c6in_xlarge": { - "target": "smithy.api#Unit", + "NetworkCardIndex": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "c6in.xlarge" + "aws.protocols#ec2QueryName": "NetworkCardIndex", + "smithy.api#documentation": "

The index of the network card.

", + "smithy.api#xmlName": "networkCardIndex" } }, - "c6in_2xlarge": { - "target": "smithy.api#Unit", + "EnaSrdSpecification": { + "target": "com.amazonaws.ec2#InstanceAttachmentEnaSrdSpecification", "traits": { - "smithy.api#enumValue": "c6in.2xlarge" + "aws.protocols#ec2QueryName": "EnaSrdSpecification", + "smithy.api#documentation": "

Contains the ENA Express settings for the network interface that's attached to\n the instance.

", + "smithy.api#xmlName": "enaSrdSpecification" } }, - "c6in_4xlarge": { - "target": "smithy.api#Unit", + "EnaQueueCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "c6in.4xlarge" + "aws.protocols#ec2QueryName": "EnaQueueCount", + "smithy.api#documentation": "

The number of ENA queues created with the instance.

", + "smithy.api#xmlName": "enaQueueCount" } - }, - "c6in_8xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes a network interface attachment.

" + } + }, + "com.amazonaws.ec2#InstanceNetworkInterfaceList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceNetworkInterface", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceNetworkInterfaceSpecification": { + "type": "structure", + "members": { + "AssociatePublicIpAddress": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "c6in.8xlarge" + "aws.protocols#ec2QueryName": "AssociatePublicIpAddress", + "smithy.api#documentation": "

Indicates whether to assign a public IPv4 address to an instance you launch in a VPC.\n The public IP address can only be assigned to a network interface for eth0, and can only\n be assigned to a new network interface, not an existing one. You cannot specify more\n than one network interface in the request. If launching into a default subnet, the\n default value is true.

\n

Amazon Web Services charges for all public IPv4 addresses, including public IPv4 addresses \nassociated with running instances and Elastic IP addresses. For more information, see the Public IPv4 Address tab on the Amazon VPC pricing page.

", + "smithy.api#xmlName": "associatePublicIpAddress" } }, - "c6in_12xlarge": { - "target": "smithy.api#Unit", + "DeleteOnTermination": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "c6in.12xlarge" + "aws.protocols#ec2QueryName": "DeleteOnTermination", + "smithy.api#documentation": "

If set to true, the interface is deleted when the instance is terminated.\n You can specify true only if creating a new network interface when\n launching an instance.

", + "smithy.api#xmlName": "deleteOnTermination" } }, - "c6in_16xlarge": { - "target": "smithy.api#Unit", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "c6in.16xlarge" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The description of the network interface. Applies only if creating a network interface\n when launching an instance.

", + "smithy.api#xmlName": "description" } }, - "c6in_24xlarge": { - "target": "smithy.api#Unit", + "DeviceIndex": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "c6in.24xlarge" + "aws.protocols#ec2QueryName": "DeviceIndex", + "smithy.api#documentation": "

The position of the network interface in the attachment order. A primary network\n interface has a device index of 0.

\n

If you specify a network interface when launching an instance, you must specify the\n device index.

", + "smithy.api#xmlName": "deviceIndex" } }, - "c6in_32xlarge": { - "target": "smithy.api#Unit", + "Groups": { + "target": "com.amazonaws.ec2#SecurityGroupIdStringList", "traits": { - "smithy.api#enumValue": "c6in.32xlarge" + "smithy.api#documentation": "

The IDs of the security groups for the network interface. Applies only if creating a\n network interface when launching an instance.

", + "smithy.api#xmlName": "SecurityGroupId" } }, - "m6in_large": { - "target": "smithy.api#Unit", + "Ipv6AddressCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "m6in.large" + "aws.protocols#ec2QueryName": "Ipv6AddressCount", + "smithy.api#documentation": "

A number of IPv6 addresses to assign to the network interface. Amazon EC2 chooses the\n IPv6 addresses from the range of the subnet. You cannot specify this option and the\n option to assign specific IPv6 addresses in the same request. You can specify this\n option if you've specified a minimum number of instances to launch.

", + "smithy.api#xmlName": "ipv6AddressCount" } }, - "m6in_xlarge": { - "target": "smithy.api#Unit", + "Ipv6Addresses": { + "target": "com.amazonaws.ec2#InstanceIpv6AddressList", "traits": { - "smithy.api#enumValue": "m6in.xlarge" + "aws.protocols#ec2QueryName": "Ipv6Addresses", + "smithy.api#documentation": "

The IPv6 addresses to assign to the network interface. You cannot specify this option\n and the option to assign a number of IPv6 addresses in the same request. You cannot\n specify this option if you've specified a minimum number of instances to launch.

", + "smithy.api#xmlName": "ipv6AddressesSet" } }, - "m6in_2xlarge": { - "target": "smithy.api#Unit", + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", "traits": { - "smithy.api#enumValue": "m6in.2xlarge" + "aws.protocols#ec2QueryName": "NetworkInterfaceId", + "smithy.api#documentation": "

The ID of the network interface.

\n

If you are creating a Spot Fleet, omit this parameter because you can’t specify a\n network interface ID in a launch specification.

", + "smithy.api#xmlName": "networkInterfaceId" } }, - "m6in_4xlarge": { - "target": "smithy.api#Unit", + "PrivateIpAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6in.4xlarge" + "aws.protocols#ec2QueryName": "PrivateIpAddress", + "smithy.api#documentation": "

The private IPv4 address of the network interface. Applies only if creating a network\n interface when launching an instance. You cannot specify this option if you're launching\n more than one instance in a RunInstances\n request.

", + "smithy.api#xmlName": "privateIpAddress" } }, - "m6in_8xlarge": { - "target": "smithy.api#Unit", + "PrivateIpAddresses": { + "target": "com.amazonaws.ec2#PrivateIpAddressSpecificationList", "traits": { - "smithy.api#enumValue": "m6in.8xlarge" + "aws.protocols#ec2QueryName": "PrivateIpAddresses", + "smithy.api#documentation": "

The private IPv4 addresses to assign to the network interface. Only one private IPv4\n address can be designated as primary. You cannot specify this option if you're launching\n more than one instance in a RunInstances\n request.

", + "smithy.api#xmlName": "privateIpAddressesSet" } }, - "m6in_12xlarge": { - "target": "smithy.api#Unit", + "SecondaryPrivateIpAddressCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "m6in.12xlarge" + "aws.protocols#ec2QueryName": "SecondaryPrivateIpAddressCount", + "smithy.api#documentation": "

The number of secondary private IPv4 addresses. You can’t specify this parameter and\n also specify a secondary private IP address using the PrivateIpAddress\n parameter.

", + "smithy.api#xmlName": "secondaryPrivateIpAddressCount" } }, - "m6in_16xlarge": { - "target": "smithy.api#Unit", + "SubnetId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6in.16xlarge" + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet associated with the network interface. Applies only if creating a\n network interface when launching an instance.

", + "smithy.api#xmlName": "subnetId" } }, - "m6in_24xlarge": { - "target": "smithy.api#Unit", + "AssociateCarrierIpAddress": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "m6in.24xlarge" + "smithy.api#documentation": "

Indicates whether to assign a carrier IP address to the network interface.

\n

You can only assign a carrier IP address to a network interface that is in a subnet in\n a Wavelength Zone. For more information about carrier IP addresses, see Carrier IP address in the Amazon Web Services Wavelength Developer\n Guide.

" } }, - "m6in_32xlarge": { - "target": "smithy.api#Unit", + "InterfaceType": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m6in.32xlarge" + "smithy.api#documentation": "

The type of network interface.

\n

If you specify efa-only, do not assign any IP addresses to the network\n interface. EFA-only network interfaces do not support IP addresses.

\n

Valid values: interface | efa | efa-only\n

" } }, - "m6idn_large": { - "target": "smithy.api#Unit", + "NetworkCardIndex": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "m6idn.large" + "smithy.api#documentation": "

The index of the network card. Some instance types support multiple network cards. The\n primary network interface must be assigned to network card index 0. The default is\n network card index 0.

\n

If you are using RequestSpotInstances to create Spot Instances, omit this parameter because\n you can’t specify the network card index when using this API. To specify the network\n card index, use RunInstances.

" } }, - "m6idn_xlarge": { - "target": "smithy.api#Unit", + "Ipv4Prefixes": { + "target": "com.amazonaws.ec2#Ipv4PrefixList", "traits": { - "smithy.api#enumValue": "m6idn.xlarge" + "smithy.api#documentation": "

The IPv4 delegated prefixes to be assigned to the network interface. You cannot use\n this option if you use the Ipv4PrefixCount option.

", + "smithy.api#xmlName": "Ipv4Prefix" } }, - "m6idn_2xlarge": { - "target": "smithy.api#Unit", + "Ipv4PrefixCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "m6idn.2xlarge" + "smithy.api#documentation": "

The number of IPv4 delegated prefixes to be automatically assigned to the network\n interface. You cannot use this option if you use the Ipv4Prefix\n option.

" } }, - "m6idn_4xlarge": { - "target": "smithy.api#Unit", + "Ipv6Prefixes": { + "target": "com.amazonaws.ec2#Ipv6PrefixList", "traits": { - "smithy.api#enumValue": "m6idn.4xlarge" + "smithy.api#documentation": "

The IPv6 delegated prefixes to be assigned to the network interface. You cannot use\n this option if you use the Ipv6PrefixCount option.

", + "smithy.api#xmlName": "Ipv6Prefix" } }, - "m6idn_8xlarge": { - "target": "smithy.api#Unit", + "Ipv6PrefixCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "m6idn.8xlarge" + "smithy.api#documentation": "

The number of IPv6 delegated prefixes to be automatically assigned to the network\n interface. You cannot use this option if you use the Ipv6Prefix\n option.

" } }, - "m6idn_12xlarge": { - "target": "smithy.api#Unit", + "PrimaryIpv6": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "m6idn.12xlarge" + "smithy.api#documentation": "

The primary IPv6 address of the network interface. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. For more information about primary IPv6 addresses, see RunInstances.

" } }, - "m6idn_16xlarge": { - "target": "smithy.api#Unit", + "EnaSrdSpecification": { + "target": "com.amazonaws.ec2#EnaSrdSpecificationRequest", "traits": { - "smithy.api#enumValue": "m6idn.16xlarge" + "smithy.api#documentation": "

Specifies the ENA Express settings for the network interface that's attached to\n the instance.

" } }, - "m6idn_24xlarge": { - "target": "smithy.api#Unit", + "ConnectionTrackingSpecification": { + "target": "com.amazonaws.ec2#ConnectionTrackingSpecificationRequest", "traits": { - "smithy.api#enumValue": "m6idn.24xlarge" + "smithy.api#documentation": "

A security group connection tracking specification that enables you to set the timeout\n for connection tracking on an Elastic network interface. For more information, see\n Connection tracking timeouts in the\n Amazon EC2 User Guide.

" } }, - "m6idn_32xlarge": { - "target": "smithy.api#Unit", + "EnaQueueCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "m6idn.32xlarge" + "smithy.api#documentation": "

The number of ENA queues to be created with the instance.

" } - }, - "r6in_large": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes a network interface.

" + } + }, + "com.amazonaws.ec2#InstanceNetworkInterfaceSpecificationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceNetworkInterfaceSpecification", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceNetworkPerformanceOptions": { + "type": "structure", + "members": { + "BandwidthWeighting": { + "target": "com.amazonaws.ec2#InstanceBandwidthWeighting", "traits": { - "smithy.api#enumValue": "r6in.large" + "aws.protocols#ec2QueryName": "BandwidthWeighting", + "smithy.api#documentation": "

When you configure network bandwidth weighting, you can boost your baseline bandwidth for either \n \t\tnetworking or EBS by up to 25%. The total available baseline bandwidth for your instance remains \n \t\tthe same. The default option uses the standard bandwidth configuration for your instance type.

", + "smithy.api#xmlName": "bandwidthWeighting" } - }, - "r6in_xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

With network performance options, you can adjust your bandwidth preferences to meet \n \t\tthe needs of the workload that runs on your instance.

" + } + }, + "com.amazonaws.ec2#InstanceNetworkPerformanceOptionsRequest": { + "type": "structure", + "members": { + "BandwidthWeighting": { + "target": "com.amazonaws.ec2#InstanceBandwidthWeighting", "traits": { - "smithy.api#enumValue": "r6in.xlarge" + "smithy.api#documentation": "

Specify the bandwidth weighting option to boost the associated type of baseline bandwidth, \n \t\tas follows:

\n
\n
default
\n
\n

This option uses the standard bandwidth configuration for your instance type.

\n
\n
vpc-1
\n
\n

This option boosts your networking baseline bandwidth and reduces your EBS baseline \n \t\t\t\t\tbandwidth.

\n
\n
ebs-1
\n
\n

This option boosts your EBS baseline bandwidth and reduces your networking baseline \n \t\t\t\t\tbandwidth.

\n
\n
" } - }, - "r6in_2xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Configure network performance options for your instance that are geared towards performance \n \t\timprovements based on the workload that it runs.

" + } + }, + "com.amazonaws.ec2#InstancePrivateIpAddress": { + "type": "structure", + "members": { + "Association": { + "target": "com.amazonaws.ec2#InstanceNetworkInterfaceAssociation", "traits": { - "smithy.api#enumValue": "r6in.2xlarge" + "aws.protocols#ec2QueryName": "Association", + "smithy.api#documentation": "

The association information for an Elastic IP address for the network\n interface.

", + "smithy.api#xmlName": "association" } }, - "r6in_4xlarge": { - "target": "smithy.api#Unit", + "Primary": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "r6in.4xlarge" + "aws.protocols#ec2QueryName": "Primary", + "smithy.api#documentation": "

Indicates whether this IPv4 address is the primary private IP address of the network\n interface.

", + "smithy.api#xmlName": "primary" } }, - "r6in_8xlarge": { - "target": "smithy.api#Unit", + "PrivateDnsName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r6in.8xlarge" + "aws.protocols#ec2QueryName": "PrivateDnsName", + "smithy.api#documentation": "

The private IPv4 DNS name.

", + "smithy.api#xmlName": "privateDnsName" } }, - "r6in_12xlarge": { - "target": "smithy.api#Unit", + "PrivateIpAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r6in.12xlarge" + "aws.protocols#ec2QueryName": "PrivateIpAddress", + "smithy.api#documentation": "

The private IPv4 address of the network interface.

", + "smithy.api#xmlName": "privateIpAddress" } - }, - "r6in_16xlarge": { + } + }, + "traits": { + "smithy.api#documentation": "

Describes a private IPv4 address.

" + } + }, + "com.amazonaws.ec2#InstancePrivateIpAddressList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstancePrivateIpAddress", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceRebootMigrationState": { + "type": "enum", + "members": { + "disabled": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r6in.16xlarge" + "smithy.api#enumValue": "disabled" } }, - "r6in_24xlarge": { + "default": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r6in.24xlarge" + "smithy.api#enumValue": "default" } - }, - "r6in_32xlarge": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#InstanceRequirements": { + "type": "structure", + "members": { + "VCpuCount": { + "target": "com.amazonaws.ec2#VCpuCountRange", "traits": { - "smithy.api#enumValue": "r6in.32xlarge" + "aws.protocols#ec2QueryName": "VCpuCount", + "smithy.api#documentation": "

The minimum and maximum number of vCPUs.

", + "smithy.api#xmlName": "vCpuCount" } }, - "r6idn_large": { - "target": "smithy.api#Unit", + "MemoryMiB": { + "target": "com.amazonaws.ec2#MemoryMiB", "traits": { - "smithy.api#enumValue": "r6idn.large" + "aws.protocols#ec2QueryName": "MemoryMiB", + "smithy.api#documentation": "

The minimum and maximum amount of memory, in MiB.

", + "smithy.api#xmlName": "memoryMiB" } }, - "r6idn_xlarge": { - "target": "smithy.api#Unit", + "CpuManufacturers": { + "target": "com.amazonaws.ec2#CpuManufacturerSet", "traits": { - "smithy.api#enumValue": "r6idn.xlarge" + "aws.protocols#ec2QueryName": "CpuManufacturerSet", + "smithy.api#documentation": "

The CPU manufacturers to include.

\n \n \n

Don't confuse the CPU manufacturer with the CPU architecture. Instances will \n be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you \n specify in your launch template.

\n
\n

Default: Any manufacturer

", + "smithy.api#xmlName": "cpuManufacturerSet" } }, - "r6idn_2xlarge": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "r6idn.2xlarge" - } - }, - "r6idn_4xlarge": { - "target": "smithy.api#Unit", + "MemoryGiBPerVCpu": { + "target": "com.amazonaws.ec2#MemoryGiBPerVCpu", "traits": { - "smithy.api#enumValue": "r6idn.4xlarge" + "aws.protocols#ec2QueryName": "MemoryGiBPerVCpu", + "smithy.api#documentation": "

The minimum and maximum amount of memory per vCPU, in GiB.

\n

Default: No minimum or maximum limits

", + "smithy.api#xmlName": "memoryGiBPerVCpu" } }, - "r6idn_8xlarge": { - "target": "smithy.api#Unit", + "ExcludedInstanceTypes": { + "target": "com.amazonaws.ec2#ExcludedInstanceTypeSet", "traits": { - "smithy.api#enumValue": "r6idn.8xlarge" + "aws.protocols#ec2QueryName": "ExcludedInstanceTypeSet", + "smithy.api#documentation": "

The instance types to exclude.

\n

You can use strings with one or more wild cards, represented by\n an asterisk (*), to exclude an instance type, size, or generation. The\n following are examples: m5.8xlarge, c5*.*, m5a.*,\n r*, *3*.

\n

For example, if you specify c5*,Amazon EC2 will exclude the entire C5 instance\n family, which includes all C5a and C5n instance types. If you specify\n m5a.*, Amazon EC2 will exclude all the M5a instance types, but not the M5n\n instance types.

\n \n

If you specify ExcludedInstanceTypes, you can't specify AllowedInstanceTypes.

\n
\n

Default: No excluded instance types

", + "smithy.api#xmlName": "excludedInstanceTypeSet" } }, - "r6idn_12xlarge": { - "target": "smithy.api#Unit", + "InstanceGenerations": { + "target": "com.amazonaws.ec2#InstanceGenerationSet", "traits": { - "smithy.api#enumValue": "r6idn.12xlarge" + "aws.protocols#ec2QueryName": "InstanceGenerationSet", + "smithy.api#documentation": "

Indicates whether current or previous generation instance types are included. The\n current generation instance types are recommended for use. Current generation instance types are\n typically the latest two to three generations in each instance family. For more\n information, see Instance types in the\n Amazon EC2 User Guide.

\n

For current generation instance types, specify current.

\n

For previous generation instance types, specify previous.

\n

Default: Current and previous generation instance types

", + "smithy.api#xmlName": "instanceGenerationSet" } }, - "r6idn_16xlarge": { - "target": "smithy.api#Unit", + "SpotMaxPricePercentageOverLowestPrice": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "r6idn.16xlarge" + "aws.protocols#ec2QueryName": "SpotMaxPricePercentageOverLowestPrice", + "smithy.api#documentation": "

[Price protection] The price protection threshold for Spot Instances, as a percentage higher than\n an identified Spot price. The identified Spot price is the Spot price of the lowest priced\n current generation C, M, or R instance type with your specified attributes. If no current\n generation C, M, or R instance type matches your attributes, then the identified Spot price\n is from the lowest priced current generation instance types, and failing that, from the\n lowest priced previous generation instance types that match your attributes. When Amazon EC2\n selects instance types with your attributes, it will exclude instance types whose Spot\n price exceeds your specified threshold.

\n

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

\n

If you set TargetCapacityUnitType to vcpu or\n memory-mib, the price protection threshold is applied based on the per-vCPU\n or per-memory price instead of the per-instance price.

\n

This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements.

\n \n

Only one of SpotMaxPricePercentageOverLowestPrice or\n MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you\n don't specify either, Amazon EC2 will automatically apply optimal price protection to\n consistently select from a wide range of instance types. To indicate no price protection\n threshold for Spot Instances, meaning you want to consider all instance types that match your\n attributes, include one of these parameters and specify a high value, such as\n 999999.

\n
\n

Default: 100\n

", + "smithy.api#xmlName": "spotMaxPricePercentageOverLowestPrice" } }, - "r6idn_24xlarge": { - "target": "smithy.api#Unit", + "OnDemandMaxPricePercentageOverLowestPrice": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "r6idn.24xlarge" + "aws.protocols#ec2QueryName": "OnDemandMaxPricePercentageOverLowestPrice", + "smithy.api#documentation": "

[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher\n than an identified On-Demand price. The identified On-Demand price is the price of the\n lowest priced current generation C, M, or R instance type with your specified attributes.\n When Amazon EC2 selects instance types with your attributes, it will exclude instance types\n whose price exceeds your specified threshold.

\n

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

\n

To turn off price protection, specify a high value, such as 999999.

\n

This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements.

\n \n

If you set TargetCapacityUnitType to vcpu or\n memory-mib, the price protection threshold is applied based on the\n per-vCPU or per-memory price instead of the per-instance price.

\n
\n

Default: 20\n

", + "smithy.api#xmlName": "onDemandMaxPricePercentageOverLowestPrice" } }, - "r6idn_32xlarge": { - "target": "smithy.api#Unit", + "BareMetal": { + "target": "com.amazonaws.ec2#BareMetal", "traits": { - "smithy.api#enumValue": "r6idn.32xlarge" + "aws.protocols#ec2QueryName": "BareMetal", + "smithy.api#documentation": "

Indicates whether bare metal instance types must be included, excluded, or required.

\n \n

Default: excluded\n

", + "smithy.api#xmlName": "bareMetal" } }, - "c7g_metal": { - "target": "smithy.api#Unit", + "BurstablePerformance": { + "target": "com.amazonaws.ec2#BurstablePerformance", "traits": { - "smithy.api#enumValue": "c7g.metal" + "aws.protocols#ec2QueryName": "BurstablePerformance", + "smithy.api#documentation": "

Indicates whether burstable performance T instance types are included, excluded, or required. For more information, see \n Burstable performance instances.

\n \n

Default: excluded\n

", + "smithy.api#xmlName": "burstablePerformance" } }, - "m7g_medium": { - "target": "smithy.api#Unit", + "RequireHibernateSupport": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "m7g.medium" + "aws.protocols#ec2QueryName": "RequireHibernateSupport", + "smithy.api#documentation": "

Indicates whether instance types must support hibernation for On-Demand\n Instances.

\n

This parameter is not supported for GetSpotPlacementScores.

\n

Default: false\n

", + "smithy.api#xmlName": "requireHibernateSupport" } }, - "m7g_large": { - "target": "smithy.api#Unit", + "NetworkInterfaceCount": { + "target": "com.amazonaws.ec2#NetworkInterfaceCount", "traits": { - "smithy.api#enumValue": "m7g.large" + "aws.protocols#ec2QueryName": "NetworkInterfaceCount", + "smithy.api#documentation": "

The minimum and maximum number of network interfaces.

\n

Default: No minimum or maximum limits

", + "smithy.api#xmlName": "networkInterfaceCount" } }, - "m7g_xlarge": { - "target": "smithy.api#Unit", + "LocalStorage": { + "target": "com.amazonaws.ec2#LocalStorage", "traits": { - "smithy.api#enumValue": "m7g.xlarge" + "aws.protocols#ec2QueryName": "LocalStorage", + "smithy.api#documentation": "

Indicates whether instance types with instance store volumes are included, excluded, or required. For more information,\n Amazon\n EC2 instance store in the Amazon EC2 User Guide.

\n \n

Default: included\n

", + "smithy.api#xmlName": "localStorage" } }, - "m7g_2xlarge": { - "target": "smithy.api#Unit", + "LocalStorageTypes": { + "target": "com.amazonaws.ec2#LocalStorageTypeSet", "traits": { - "smithy.api#enumValue": "m7g.2xlarge" + "aws.protocols#ec2QueryName": "LocalStorageTypeSet", + "smithy.api#documentation": "

The type of local storage that is required.

\n \n

Default: hdd and ssd\n

", + "smithy.api#xmlName": "localStorageTypeSet" } }, - "m7g_4xlarge": { - "target": "smithy.api#Unit", + "TotalLocalStorageGB": { + "target": "com.amazonaws.ec2#TotalLocalStorageGB", "traits": { - "smithy.api#enumValue": "m7g.4xlarge" + "aws.protocols#ec2QueryName": "TotalLocalStorageGB", + "smithy.api#documentation": "

The minimum and maximum amount of total local storage, in GB.

\n

Default: No minimum or maximum limits

", + "smithy.api#xmlName": "totalLocalStorageGB" } }, - "m7g_8xlarge": { - "target": "smithy.api#Unit", + "BaselineEbsBandwidthMbps": { + "target": "com.amazonaws.ec2#BaselineEbsBandwidthMbps", "traits": { - "smithy.api#enumValue": "m7g.8xlarge" + "aws.protocols#ec2QueryName": "BaselineEbsBandwidthMbps", + "smithy.api#documentation": "

The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see\n Amazon\n EBS–optimized instances in the Amazon EC2 User Guide.

\n

Default: No minimum or maximum limits

", + "smithy.api#xmlName": "baselineEbsBandwidthMbps" } }, - "m7g_12xlarge": { - "target": "smithy.api#Unit", + "AcceleratorTypes": { + "target": "com.amazonaws.ec2#AcceleratorTypeSet", "traits": { - "smithy.api#enumValue": "m7g.12xlarge" + "aws.protocols#ec2QueryName": "AcceleratorTypeSet", + "smithy.api#documentation": "

The accelerator types that must be on the instance type.

\n \n

Default: Any accelerator type

", + "smithy.api#xmlName": "acceleratorTypeSet" } }, - "m7g_16xlarge": { - "target": "smithy.api#Unit", + "AcceleratorCount": { + "target": "com.amazonaws.ec2#AcceleratorCount", "traits": { - "smithy.api#enumValue": "m7g.16xlarge" + "aws.protocols#ec2QueryName": "AcceleratorCount", + "smithy.api#documentation": "

The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web Services Inferentia chips) on\n an instance.

\n

To exclude accelerator-enabled instance types, set Max to 0.

\n

Default: No minimum or maximum limits

", + "smithy.api#xmlName": "acceleratorCount" } }, - "m7g_metal": { - "target": "smithy.api#Unit", + "AcceleratorManufacturers": { + "target": "com.amazonaws.ec2#AcceleratorManufacturerSet", "traits": { - "smithy.api#enumValue": "m7g.metal" + "aws.protocols#ec2QueryName": "AcceleratorManufacturerSet", + "smithy.api#documentation": "

Indicates whether instance types must have accelerators by specific manufacturers.

\n \n

Default: Any manufacturer

", + "smithy.api#xmlName": "acceleratorManufacturerSet" } }, - "r7g_medium": { - "target": "smithy.api#Unit", + "AcceleratorNames": { + "target": "com.amazonaws.ec2#AcceleratorNameSet", "traits": { - "smithy.api#enumValue": "r7g.medium" + "aws.protocols#ec2QueryName": "AcceleratorNameSet", + "smithy.api#documentation": "

The accelerators that must be on the instance type.

\n \n

Default: Any accelerator

", + "smithy.api#xmlName": "acceleratorNameSet" } }, - "r7g_large": { - "target": "smithy.api#Unit", + "AcceleratorTotalMemoryMiB": { + "target": "com.amazonaws.ec2#AcceleratorTotalMemoryMiB", "traits": { - "smithy.api#enumValue": "r7g.large" + "aws.protocols#ec2QueryName": "AcceleratorTotalMemoryMiB", + "smithy.api#documentation": "

The minimum and maximum amount of total accelerator memory, in MiB.

\n

Default: No minimum or maximum limits

", + "smithy.api#xmlName": "acceleratorTotalMemoryMiB" } }, - "r7g_xlarge": { - "target": "smithy.api#Unit", + "NetworkBandwidthGbps": { + "target": "com.amazonaws.ec2#NetworkBandwidthGbps", "traits": { - "smithy.api#enumValue": "r7g.xlarge" + "aws.protocols#ec2QueryName": "NetworkBandwidthGbps", + "smithy.api#documentation": "

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

\n

Default: No minimum or maximum limits

", + "smithy.api#xmlName": "networkBandwidthGbps" } }, - "r7g_2xlarge": { - "target": "smithy.api#Unit", + "AllowedInstanceTypes": { + "target": "com.amazonaws.ec2#AllowedInstanceTypeSet", "traits": { - "smithy.api#enumValue": "r7g.2xlarge" + "aws.protocols#ec2QueryName": "AllowedInstanceTypeSet", + "smithy.api#documentation": "

The instance types to apply your specified attributes against. All other instance types \n are ignored, even if they match your specified attributes.

\n

You can use strings with one or more wild cards, represented by\n an asterisk (*), to allow an instance type, size, or generation. The\n following are examples: m5.8xlarge, c5*.*, m5a.*,\n r*, *3*.

\n

For example, if you specify c5*,Amazon EC2 will allow the entire C5 instance\n family, which includes all C5a and C5n instance types. If you specify\n m5a.*, Amazon EC2 will allow all the M5a instance types, but not the M5n\n instance types.

\n \n

If you specify AllowedInstanceTypes, you can't specify ExcludedInstanceTypes.

\n
\n

Default: All instance types

", + "smithy.api#xmlName": "allowedInstanceTypeSet" } }, - "r7g_4xlarge": { - "target": "smithy.api#Unit", + "MaxSpotPriceAsPercentageOfOptimalOnDemandPrice": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "r7g.4xlarge" + "aws.protocols#ec2QueryName": "MaxSpotPriceAsPercentageOfOptimalOnDemandPrice", + "smithy.api#documentation": "

[Price protection] The price protection threshold for Spot Instances, as a percentage of an\n identified On-Demand price. The identified On-Demand price is the price of the lowest\n priced current generation C, M, or R instance type with your specified attributes. If no\n current generation C, M, or R instance type matches your attributes, then the identified\n price is from the lowest priced current generation instance types, and failing that, from\n the lowest priced previous generation instance types that match your attributes. When Amazon EC2\n selects instance types with your attributes, it will exclude instance types whose price\n exceeds your specified threshold.

\n

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

\n

If you set TargetCapacityUnitType to vcpu or\n memory-mib, the price protection threshold is based on the per vCPU or per\n memory price instead of the per instance price.

\n \n

Only one of SpotMaxPricePercentageOverLowestPrice or\n MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you\n don't specify either, Amazon EC2 will automatically apply optimal price protection to\n consistently select from a wide range of instance types. To indicate no price protection\n threshold for Spot Instances, meaning you want to consider all instance types that match your\n attributes, include one of these parameters and specify a high value, such as\n 999999.

\n
", + "smithy.api#xmlName": "maxSpotPriceAsPercentageOfOptimalOnDemandPrice" } }, - "r7g_8xlarge": { - "target": "smithy.api#Unit", + "BaselinePerformanceFactors": { + "target": "com.amazonaws.ec2#BaselinePerformanceFactors", "traits": { - "smithy.api#enumValue": "r7g.8xlarge" + "aws.protocols#ec2QueryName": "BaselinePerformanceFactors", + "smithy.api#documentation": "

The baseline performance to consider, using an instance family as a baseline reference.\n The instance family establishes the lowest acceptable level of performance. Amazon EC2 uses this\n baseline to guide instance type selection, but there is no guarantee that the selected\n instance types will always exceed the baseline for every application. Currently, this\n parameter only supports CPU performance as a baseline performance factor. For more\n information, see Performance protection in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "baselinePerformanceFactors" } - }, - "r7g_12xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will\n identify instance types with these attributes.

\n

You must specify VCpuCount and MemoryMiB. All other attributes\n are optional. Any unspecified optional attribute is set to its default.

\n

When you specify multiple attributes, you get instance types that satisfy all of the\n specified attributes. If you specify multiple values for an attribute, you get instance\n types that satisfy any of the specified values.

\n

To limit the list of instance types from which Amazon EC2 can identify matching instance types, \n you can use one of the following parameters, but not both in the same request:

\n \n \n

If you specify InstanceRequirements, you can't specify\n InstanceType.

\n

Attribute-based instance type selection is only supported when using Auto Scaling\n groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in\n the launch instance\n wizard or with the RunInstances API, you\n can't specify InstanceRequirements.

\n
\n

For more information, see Create mixed instances group using attribute-based instance type selection in\n the Amazon EC2 Auto Scaling User Guide, and also Specify attributes for instance type selection for EC2 Fleet or Spot Fleet and Spot\n placement score in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#InstanceRequirementsRequest": { + "type": "structure", + "members": { + "VCpuCount": { + "target": "com.amazonaws.ec2#VCpuCountRangeRequest", "traits": { - "smithy.api#enumValue": "r7g.12xlarge" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The minimum and maximum number of vCPUs.

", + "smithy.api#required": {} } }, - "r7g_16xlarge": { - "target": "smithy.api#Unit", + "MemoryMiB": { + "target": "com.amazonaws.ec2#MemoryMiBRequest", "traits": { - "smithy.api#enumValue": "r7g.16xlarge" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The minimum and maximum amount of memory, in MiB.

", + "smithy.api#required": {} } }, - "r7g_metal": { - "target": "smithy.api#Unit", + "CpuManufacturers": { + "target": "com.amazonaws.ec2#CpuManufacturerSet", "traits": { - "smithy.api#enumValue": "r7g.metal" + "smithy.api#documentation": "

The CPU manufacturers to include.

\n \n \n

Don't confuse the CPU manufacturer with the CPU architecture. Instances will \n be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you \n specify in your launch template.

\n
\n

Default: Any manufacturer

", + "smithy.api#xmlName": "CpuManufacturer" } }, - "c6in_metal": { - "target": "smithy.api#Unit", + "MemoryGiBPerVCpu": { + "target": "com.amazonaws.ec2#MemoryGiBPerVCpuRequest", "traits": { - "smithy.api#enumValue": "c6in.metal" + "smithy.api#documentation": "

The minimum and maximum amount of memory per vCPU, in GiB.

\n

Default: No minimum or maximum limits

" } }, - "m6in_metal": { - "target": "smithy.api#Unit", + "ExcludedInstanceTypes": { + "target": "com.amazonaws.ec2#ExcludedInstanceTypeSet", "traits": { - "smithy.api#enumValue": "m6in.metal" + "smithy.api#documentation": "

The instance types to exclude.

\n

You can use strings with one or more wild cards, represented by\n an asterisk (*), to exclude an instance family, type, size, or generation. The\n following are examples: m5.8xlarge, c5*.*, m5a.*,\n r*, *3*.

\n

For example, if you specify c5*,Amazon EC2 will exclude the entire C5 instance\n family, which includes all C5a and C5n instance types. If you specify\n m5a.*, Amazon EC2 will exclude all the M5a instance types, but not the M5n\n instance types.

\n \n

If you specify ExcludedInstanceTypes, you can't specify AllowedInstanceTypes.

\n
\n

Default: No excluded instance types

", + "smithy.api#xmlName": "ExcludedInstanceType" } }, - "m6idn_metal": { - "target": "smithy.api#Unit", + "InstanceGenerations": { + "target": "com.amazonaws.ec2#InstanceGenerationSet", "traits": { - "smithy.api#enumValue": "m6idn.metal" + "smithy.api#documentation": "

Indicates whether current or previous generation instance types are included. The\n current generation instance types are recommended for use. Current generation instance types are\n typically the latest two to three generations in each instance family. For more\n information, see Instance types in the\n Amazon EC2 User Guide.

\n

For current generation instance types, specify current.

\n

For previous generation instance types, specify previous.

\n

Default: Current and previous generation instance types

", + "smithy.api#xmlName": "InstanceGeneration" } }, - "r6in_metal": { - "target": "smithy.api#Unit", + "SpotMaxPricePercentageOverLowestPrice": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "r6in.metal" + "smithy.api#documentation": "

[Price protection] The price protection threshold for Spot Instances, as a percentage higher than\n an identified Spot price. The identified Spot price is the Spot price of the lowest priced\n current generation C, M, or R instance type with your specified attributes. If no current\n generation C, M, or R instance type matches your attributes, then the identified Spot price\n is from the lowest priced current generation instance types, and failing that, from the\n lowest priced previous generation instance types that match your attributes. When Amazon EC2\n selects instance types with your attributes, it will exclude instance types whose Spot\n price exceeds your specified threshold.

\n

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

\n

If you set TargetCapacityUnitType to vcpu or\n memory-mib, the price protection threshold is applied based on the\n per-vCPU or per-memory price instead of the per-instance price.

\n

This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements.

\n \n

Only one of SpotMaxPricePercentageOverLowestPrice or\n MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you\n don't specify either, Amazon EC2 will automatically apply optimal price protection to\n consistently select from a wide range of instance types. To indicate no price protection\n threshold for Spot Instances, meaning you want to consider all instance types that match your\n attributes, include one of these parameters and specify a high value, such as\n 999999.

\n
\n

Default: 100\n

" } }, - "r6idn_metal": { - "target": "smithy.api#Unit", + "OnDemandMaxPricePercentageOverLowestPrice": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "r6idn.metal" + "smithy.api#documentation": "

[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than\n an identified On-Demand price. The identified On-Demand price is the price of the lowest\n priced current generation C, M, or R instance type with your specified attributes. When\n Amazon EC2 selects instance types with your attributes, it will exclude instance types whose\n price exceeds your specified threshold.

\n

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

\n

To indicate no price protection threshold, specify a high value, such as\n 999999.

\n

This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements.

\n \n

If you set TargetCapacityUnitType to vcpu or\n memory-mib, the price protection threshold is applied based on the\n per-vCPU or per-memory price instead of the per-instance price.

\n
\n

Default: 20\n

" } }, - "inf2_xlarge": { - "target": "smithy.api#Unit", + "BareMetal": { + "target": "com.amazonaws.ec2#BareMetal", "traits": { - "smithy.api#enumValue": "inf2.xlarge" + "smithy.api#documentation": "

Indicates whether bare metal instance types must be included, excluded, or required.

\n \n

Default: excluded\n

" } }, - "inf2_8xlarge": { - "target": "smithy.api#Unit", + "BurstablePerformance": { + "target": "com.amazonaws.ec2#BurstablePerformance", "traits": { - "smithy.api#enumValue": "inf2.8xlarge" + "smithy.api#documentation": "

Indicates whether burstable performance T instance types are included, excluded, or required. For more information, see \n Burstable performance instances.

\n \n

Default: excluded\n

" } }, - "inf2_24xlarge": { - "target": "smithy.api#Unit", + "RequireHibernateSupport": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "inf2.24xlarge" + "smithy.api#documentation": "

Indicates whether instance types must support hibernation for On-Demand Instances.

\n

This parameter is not supported for GetSpotPlacementScores.

\n

Default: false\n

" } }, - "inf2_48xlarge": { - "target": "smithy.api#Unit", + "NetworkInterfaceCount": { + "target": "com.amazonaws.ec2#NetworkInterfaceCountRequest", "traits": { - "smithy.api#enumValue": "inf2.48xlarge" + "smithy.api#documentation": "

The minimum and maximum number of network interfaces.

\n

Default: No minimum or maximum limits

" } }, - "trn1n_32xlarge": { - "target": "smithy.api#Unit", + "LocalStorage": { + "target": "com.amazonaws.ec2#LocalStorage", "traits": { - "smithy.api#enumValue": "trn1n.32xlarge" + "smithy.api#documentation": "

Indicates whether instance types with instance store volumes are included, excluded, or required. For more information,\n Amazon\n EC2 instance store in the Amazon EC2 User Guide.

\n \n

Default: included\n

" } }, - "i4g_large": { - "target": "smithy.api#Unit", + "LocalStorageTypes": { + "target": "com.amazonaws.ec2#LocalStorageTypeSet", "traits": { - "smithy.api#enumValue": "i4g.large" + "smithy.api#documentation": "

The type of local storage that is required.

\n \n

Default: hdd and ssd\n

", + "smithy.api#xmlName": "LocalStorageType" } }, - "i4g_xlarge": { - "target": "smithy.api#Unit", + "TotalLocalStorageGB": { + "target": "com.amazonaws.ec2#TotalLocalStorageGBRequest", "traits": { - "smithy.api#enumValue": "i4g.xlarge" + "smithy.api#documentation": "

The minimum and maximum amount of total local storage, in GB.

\n

Default: No minimum or maximum limits

" } }, - "i4g_2xlarge": { - "target": "smithy.api#Unit", + "BaselineEbsBandwidthMbps": { + "target": "com.amazonaws.ec2#BaselineEbsBandwidthMbpsRequest", "traits": { - "smithy.api#enumValue": "i4g.2xlarge" + "smithy.api#documentation": "

The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see\n Amazon\n EBS–optimized instances in the Amazon EC2 User Guide.

\n

Default: No minimum or maximum limits

" } }, - "i4g_4xlarge": { - "target": "smithy.api#Unit", + "AcceleratorTypes": { + "target": "com.amazonaws.ec2#AcceleratorTypeSet", "traits": { - "smithy.api#enumValue": "i4g.4xlarge" + "smithy.api#documentation": "

The accelerator types that must be on the instance type.

\n \n

Default: Any accelerator type

", + "smithy.api#xmlName": "AcceleratorType" } }, - "i4g_8xlarge": { - "target": "smithy.api#Unit", + "AcceleratorCount": { + "target": "com.amazonaws.ec2#AcceleratorCountRequest", "traits": { - "smithy.api#enumValue": "i4g.8xlarge" + "smithy.api#documentation": "

The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web Services Inferentia chips) on\n an instance.

\n

To exclude accelerator-enabled instance types, set Max to 0.

\n

Default: No minimum or maximum limits

" } }, - "i4g_16xlarge": { - "target": "smithy.api#Unit", + "AcceleratorManufacturers": { + "target": "com.amazonaws.ec2#AcceleratorManufacturerSet", "traits": { - "smithy.api#enumValue": "i4g.16xlarge" + "smithy.api#documentation": "

Indicates whether instance types must have accelerators by specific manufacturers.

\n \n

Default: Any manufacturer

", + "smithy.api#xmlName": "AcceleratorManufacturer" } }, - "hpc7g_4xlarge": { - "target": "smithy.api#Unit", + "AcceleratorNames": { + "target": "com.amazonaws.ec2#AcceleratorNameSet", "traits": { - "smithy.api#enumValue": "hpc7g.4xlarge" + "smithy.api#documentation": "

The accelerators that must be on the instance type.

\n \n

Default: Any accelerator

", + "smithy.api#xmlName": "AcceleratorName" } }, - "hpc7g_8xlarge": { - "target": "smithy.api#Unit", + "AcceleratorTotalMemoryMiB": { + "target": "com.amazonaws.ec2#AcceleratorTotalMemoryMiBRequest", "traits": { - "smithy.api#enumValue": "hpc7g.8xlarge" + "smithy.api#documentation": "

The minimum and maximum amount of total accelerator memory, in MiB.

\n

Default: No minimum or maximum limits

" } }, - "hpc7g_16xlarge": { - "target": "smithy.api#Unit", + "NetworkBandwidthGbps": { + "target": "com.amazonaws.ec2#NetworkBandwidthGbpsRequest", "traits": { - "smithy.api#enumValue": "hpc7g.16xlarge" + "smithy.api#documentation": "

The minimum and maximum amount of baseline network bandwidth, in gigabits per second \n (Gbps). For more information, see Amazon EC2 instance network bandwidth in the Amazon EC2 User Guide.

\n

Default: No minimum or maximum limits

" } }, - "c7gn_medium": { - "target": "smithy.api#Unit", + "AllowedInstanceTypes": { + "target": "com.amazonaws.ec2#AllowedInstanceTypeSet", "traits": { - "smithy.api#enumValue": "c7gn.medium" + "smithy.api#documentation": "

The instance types to apply your specified attributes against. All other instance types \n are ignored, even if they match your specified attributes.

\n

You can use strings with one or more wild cards, represented by\n an asterisk (*), to allow an instance type, size, or generation. The\n following are examples: m5.8xlarge, c5*.*, m5a.*,\n r*, *3*.

\n

For example, if you specify c5*,Amazon EC2 will allow the entire C5 instance\n family, which includes all C5a and C5n instance types. If you specify\n m5a.*, Amazon EC2 will allow all the M5a instance types, but not the M5n\n instance types.

\n \n

If you specify AllowedInstanceTypes, you can't specify ExcludedInstanceTypes.

\n
\n

Default: All instance types

", + "smithy.api#xmlName": "AllowedInstanceType" } }, - "c7gn_large": { - "target": "smithy.api#Unit", + "MaxSpotPriceAsPercentageOfOptimalOnDemandPrice": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "c7gn.large" + "smithy.api#documentation": "

[Price protection] The price protection threshold for Spot Instances, as a percentage of an\n identified On-Demand price. The identified On-Demand price is the price of the lowest\n priced current generation C, M, or R instance type with your specified attributes. If no\n current generation C, M, or R instance type matches your attributes, then the identified\n price is from the lowest priced current generation instance types, and failing that, from\n the lowest priced previous generation instance types that match your attributes. When Amazon EC2\n selects instance types with your attributes, it will exclude instance types whose price\n exceeds your specified threshold.

\n

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

\n

If you set TargetCapacityUnitType to vcpu or\n memory-mib, the price protection threshold is based on the per vCPU or per\n memory price instead of the per instance price.

\n \n

Only one of SpotMaxPricePercentageOverLowestPrice or\n MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you\n don't specify either, Amazon EC2 will automatically apply optimal price protection to\n consistently select from a wide range of instance types. To indicate no price protection\n threshold for Spot Instances, meaning you want to consider all instance types that match your\n attributes, include one of these parameters and specify a high value, such as\n 999999.

\n
" } }, - "c7gn_xlarge": { - "target": "smithy.api#Unit", + "BaselinePerformanceFactors": { + "target": "com.amazonaws.ec2#BaselinePerformanceFactorsRequest", "traits": { - "smithy.api#enumValue": "c7gn.xlarge" + "smithy.api#documentation": "

The baseline performance to consider, using an instance family as a baseline reference.\n The instance family establishes the lowest acceptable level of performance. Amazon EC2 uses this\n baseline to guide instance type selection, but there is no guarantee that the selected\n instance types will always exceed the baseline for every application. Currently, this\n parameter only supports CPU performance as a baseline performance factor. For more\n information, see Performance protection in the Amazon EC2 User Guide.

" } - }, - "c7gn_2xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will\n identify instance types with these attributes.

\n

You must specify VCpuCount and MemoryMiB. All other attributes\n are optional. Any unspecified optional attribute is set to its default.

\n

When you specify multiple attributes, you get instance types that satisfy all of the\n specified attributes. If you specify multiple values for an attribute, you get instance\n types that satisfy any of the specified values.

\n

To limit the list of instance types from which Amazon EC2 can identify matching instance types, \n you can use one of the following parameters, but not both in the same request:

\n \n \n

If you specify InstanceRequirements, you can't specify\n InstanceType.

\n

Attribute-based instance type selection is only supported when using Auto Scaling\n groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in\n the launch instance\n wizard, or with the RunInstances API or\n AWS::EC2::Instance Amazon Web Services CloudFormation resource, you can't specify\n InstanceRequirements.

\n
\n

For more information, see Specify attributes for instance type selection for EC2 Fleet or Spot Fleet and Spot\n placement score in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#InstanceRequirementsWithMetadataRequest": { + "type": "structure", + "members": { + "ArchitectureTypes": { + "target": "com.amazonaws.ec2#ArchitectureTypeSet", "traits": { - "smithy.api#enumValue": "c7gn.2xlarge" + "smithy.api#documentation": "

The architecture type.

", + "smithy.api#xmlName": "ArchitectureType" } }, - "c7gn_4xlarge": { - "target": "smithy.api#Unit", + "VirtualizationTypes": { + "target": "com.amazonaws.ec2#VirtualizationTypeSet", "traits": { - "smithy.api#enumValue": "c7gn.4xlarge" + "smithy.api#documentation": "

The virtualization type.

", + "smithy.api#xmlName": "VirtualizationType" } }, - "c7gn_8xlarge": { - "target": "smithy.api#Unit", + "InstanceRequirements": { + "target": "com.amazonaws.ec2#InstanceRequirementsRequest", "traits": { - "smithy.api#enumValue": "c7gn.8xlarge" + "smithy.api#documentation": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will\n identify instance types with those attributes.

" } - }, - "c7gn_12xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The architecture type, virtualization type, and other attributes for the instance types.\n When you specify instance attributes, Amazon EC2 will identify instance types with those\n attributes.

\n

If you specify InstanceRequirementsWithMetadataRequest, you can't specify\n InstanceTypes.

" + } + }, + "com.amazonaws.ec2#InstanceSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceTopology", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceSpecification": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceIdWithVolumeResolver", "traits": { - "smithy.api#enumValue": "c7gn.12xlarge" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The instance to specify which volumes should be snapshotted.

", + "smithy.api#required": {} } }, - "c7gn_16xlarge": { - "target": "smithy.api#Unit", + "ExcludeBootVolume": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "c7gn.16xlarge" + "smithy.api#documentation": "

Excludes the root volume from being snapshotted.

" } }, - "p5_48xlarge": { - "target": "smithy.api#Unit", + "ExcludeDataVolumeIds": { + "target": "com.amazonaws.ec2#VolumeIdStringList", "traits": { - "smithy.api#enumValue": "p5.48xlarge" + "smithy.api#documentation": "

The IDs of the data (non-root) volumes to exclude from the multi-volume snapshot set. \n If you specify the ID of the root volume, the request fails. To exclude the root volume, \n use ExcludeBootVolume.

\n

You can specify up to 40 volume IDs per request.

", + "smithy.api#xmlName": "ExcludeDataVolumeId" } - }, - "m7i_large": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The instance details to specify which volumes should be snapshotted.

" + } + }, + "com.amazonaws.ec2#InstanceState": { + "type": "structure", + "members": { + "Code": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "m7i.large" + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The state of the instance as a 16-bit unsigned integer.

\n

The high byte is all of the bits between 2^8 and (2^16)-1, which equals decimal values\n between 256 and 65,535. These numerical values are used for internal purposes and should\n be ignored.

\n

The low byte is all of the bits between 2^0 and (2^8)-1, which equals decimal values\n between 0 and 255.

\n

The valid values for instance-state-code will all be in the range of the low byte and\n they are:

\n \n

You can ignore the high byte value by zeroing out all of the bits above 2^8 or 256 in\n decimal.

", + "smithy.api#xmlName": "code" } }, - "m7i_xlarge": { - "target": "smithy.api#Unit", + "Name": { + "target": "com.amazonaws.ec2#InstanceStateName", "traits": { - "smithy.api#enumValue": "m7i.xlarge" + "aws.protocols#ec2QueryName": "Name", + "smithy.api#documentation": "

The current state of the instance.

", + "smithy.api#xmlName": "name" } - }, - "m7i_2xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the current state of an instance.

" + } + }, + "com.amazonaws.ec2#InstanceStateChange": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m7i.2xlarge" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#xmlName": "instanceId" } }, - "m7i_4xlarge": { - "target": "smithy.api#Unit", + "CurrentState": { + "target": "com.amazonaws.ec2#InstanceState", "traits": { - "smithy.api#enumValue": "m7i.4xlarge" + "aws.protocols#ec2QueryName": "CurrentState", + "smithy.api#documentation": "

The current state of the instance.

", + "smithy.api#xmlName": "currentState" } }, - "m7i_8xlarge": { - "target": "smithy.api#Unit", + "PreviousState": { + "target": "com.amazonaws.ec2#InstanceState", "traits": { - "smithy.api#enumValue": "m7i.8xlarge" + "aws.protocols#ec2QueryName": "PreviousState", + "smithy.api#documentation": "

The previous state of the instance.

", + "smithy.api#xmlName": "previousState" } - }, - "m7i_12xlarge": { + } + }, + "traits": { + "smithy.api#documentation": "

Describes an instance state change.

" + } + }, + "com.amazonaws.ec2#InstanceStateChangeList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceStateChange", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceStateName": { + "type": "enum", + "members": { + "pending": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "m7i.12xlarge" + "smithy.api#enumValue": "pending" } }, - "m7i_16xlarge": { + "running": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "m7i.16xlarge" + "smithy.api#enumValue": "running" } }, - "m7i_24xlarge": { + "shutting_down": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "m7i.24xlarge" + "smithy.api#enumValue": "shutting-down" } }, - "m7i_48xlarge": { + "terminated": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "m7i.48xlarge" + "smithy.api#enumValue": "terminated" } }, - "m7i_flex_large": { + "stopping": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "m7i-flex.large" + "smithy.api#enumValue": "stopping" } }, - "m7i_flex_xlarge": { + "stopped": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "m7i-flex.xlarge" + "smithy.api#enumValue": "stopped" } - }, - "m7i_flex_2xlarge": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#InstanceStatus": { + "type": "structure", + "members": { + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m7i-flex.2xlarge" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone of the instance.

", + "smithy.api#xmlName": "availabilityZone" } }, - "m7i_flex_4xlarge": { - "target": "smithy.api#Unit", + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#AvailabilityZoneId", "traits": { - "smithy.api#enumValue": "m7i-flex.4xlarge" + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone of the instance.

", + "smithy.api#xmlName": "availabilityZoneId" } }, - "m7i_flex_8xlarge": { - "target": "smithy.api#Unit", + "OutpostArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m7i-flex.8xlarge" + "aws.protocols#ec2QueryName": "OutpostArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost.

", + "smithy.api#xmlName": "outpostArn" } }, - "m7a_medium": { - "target": "smithy.api#Unit", + "Operator": { + "target": "com.amazonaws.ec2#OperatorResponse", "traits": { - "smithy.api#enumValue": "m7a.medium" + "aws.protocols#ec2QueryName": "Operator", + "smithy.api#documentation": "

The service provider that manages the instance.

", + "smithy.api#xmlName": "operator" } }, - "m7a_large": { - "target": "smithy.api#Unit", + "Events": { + "target": "com.amazonaws.ec2#InstanceStatusEventList", "traits": { - "smithy.api#enumValue": "m7a.large" + "aws.protocols#ec2QueryName": "EventsSet", + "smithy.api#documentation": "

Any scheduled events associated with the instance.

", + "smithy.api#xmlName": "eventsSet" } }, - "m7a_xlarge": { - "target": "smithy.api#Unit", + "InstanceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m7a.xlarge" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#xmlName": "instanceId" } }, - "m7a_2xlarge": { - "target": "smithy.api#Unit", + "InstanceState": { + "target": "com.amazonaws.ec2#InstanceState", "traits": { - "smithy.api#enumValue": "m7a.2xlarge" + "aws.protocols#ec2QueryName": "InstanceState", + "smithy.api#documentation": "

The intended state of the instance. DescribeInstanceStatus requires\n that an instance be in the running state.

", + "smithy.api#xmlName": "instanceState" } }, - "m7a_4xlarge": { - "target": "smithy.api#Unit", + "InstanceStatus": { + "target": "com.amazonaws.ec2#InstanceStatusSummary", "traits": { - "smithy.api#enumValue": "m7a.4xlarge" + "aws.protocols#ec2QueryName": "InstanceStatus", + "smithy.api#documentation": "

Reports impaired functionality that stems from issues internal to the instance, such\n as impaired reachability.

", + "smithy.api#xmlName": "instanceStatus" } }, - "m7a_8xlarge": { - "target": "smithy.api#Unit", + "SystemStatus": { + "target": "com.amazonaws.ec2#InstanceStatusSummary", "traits": { - "smithy.api#enumValue": "m7a.8xlarge" + "aws.protocols#ec2QueryName": "SystemStatus", + "smithy.api#documentation": "

Reports impaired functionality that stems from issues related to the systems that\n support an instance, such as hardware failures and network connectivity problems.

", + "smithy.api#xmlName": "systemStatus" } }, - "m7a_12xlarge": { - "target": "smithy.api#Unit", + "AttachedEbsStatus": { + "target": "com.amazonaws.ec2#EbsStatusSummary", "traits": { - "smithy.api#enumValue": "m7a.12xlarge" + "aws.protocols#ec2QueryName": "AttachedEbsStatus", + "smithy.api#documentation": "

Reports impaired functionality that stems from an attached Amazon EBS volume that is \n unreachable and unable to complete I/O operations.

", + "smithy.api#xmlName": "attachedEbsStatus" } - }, - "m7a_16xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the status of an instance.

" + } + }, + "com.amazonaws.ec2#InstanceStatusDetails": { + "type": "structure", + "members": { + "ImpairedSince": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#enumValue": "m7a.16xlarge" + "aws.protocols#ec2QueryName": "ImpairedSince", + "smithy.api#documentation": "

The time when a status check failed. For an instance that was launched and impaired,\n this is the time when the instance was launched.

", + "smithy.api#xmlName": "impairedSince" } }, - "m7a_24xlarge": { - "target": "smithy.api#Unit", + "Name": { + "target": "com.amazonaws.ec2#StatusName", "traits": { - "smithy.api#enumValue": "m7a.24xlarge" + "aws.protocols#ec2QueryName": "Name", + "smithy.api#documentation": "

The type of instance status.

", + "smithy.api#xmlName": "name" } }, - "m7a_32xlarge": { - "target": "smithy.api#Unit", + "Status": { + "target": "com.amazonaws.ec2#StatusType", "traits": { - "smithy.api#enumValue": "m7a.32xlarge" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The status.

", + "smithy.api#xmlName": "status" } - }, - "m7a_48xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the instance status.

" + } + }, + "com.amazonaws.ec2#InstanceStatusDetailsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceStatusDetails", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceStatusEvent": { + "type": "structure", + "members": { + "InstanceEventId": { + "target": "com.amazonaws.ec2#InstanceEventId", "traits": { - "smithy.api#enumValue": "m7a.48xlarge" + "aws.protocols#ec2QueryName": "InstanceEventId", + "smithy.api#documentation": "

The ID of the event.

", + "smithy.api#xmlName": "instanceEventId" } }, - "m7a_metal_48xl": { - "target": "smithy.api#Unit", + "Code": { + "target": "com.amazonaws.ec2#EventCode", "traits": { - "smithy.api#enumValue": "m7a.metal-48xl" + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The event code.

", + "smithy.api#xmlName": "code" } }, - "hpc7a_12xlarge": { - "target": "smithy.api#Unit", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "hpc7a.12xlarge" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description of the event.

\n

After a scheduled event is completed, it can still be described for up to a week. If\n the event has been completed, this description starts with the following text:\n [Completed].

", + "smithy.api#xmlName": "description" } }, - "hpc7a_24xlarge": { - "target": "smithy.api#Unit", + "NotAfter": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#enumValue": "hpc7a.24xlarge" + "aws.protocols#ec2QueryName": "NotAfter", + "smithy.api#documentation": "

The latest scheduled end time for the event.

", + "smithy.api#xmlName": "notAfter" } }, - "hpc7a_48xlarge": { - "target": "smithy.api#Unit", + "NotBefore": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#enumValue": "hpc7a.48xlarge" + "aws.protocols#ec2QueryName": "NotBefore", + "smithy.api#documentation": "

The earliest scheduled start time for the event.

", + "smithy.api#xmlName": "notBefore" } }, - "hpc7a_96xlarge": { - "target": "smithy.api#Unit", + "NotBeforeDeadline": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#enumValue": "hpc7a.96xlarge" + "aws.protocols#ec2QueryName": "NotBeforeDeadline", + "smithy.api#documentation": "

The deadline for starting the event.

", + "smithy.api#xmlName": "notBeforeDeadline" } - }, - "c7gd_medium": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes a scheduled event for an instance.

" + } + }, + "com.amazonaws.ec2#InstanceStatusEventList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceStatusEvent", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceStatusList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceStatus", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceStatusSummary": { + "type": "structure", + "members": { + "Details": { + "target": "com.amazonaws.ec2#InstanceStatusDetailsList", "traits": { - "smithy.api#enumValue": "c7gd.medium" + "aws.protocols#ec2QueryName": "Details", + "smithy.api#documentation": "

The system instance health or application instance health.

", + "smithy.api#xmlName": "details" } }, - "c7gd_large": { - "target": "smithy.api#Unit", + "Status": { + "target": "com.amazonaws.ec2#SummaryStatus", "traits": { - "smithy.api#enumValue": "c7gd.large" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The status.

", + "smithy.api#xmlName": "status" } - }, - "c7gd_xlarge": { + } + }, + "traits": { + "smithy.api#documentation": "

Describes the status of an instance.

" + } + }, + "com.amazonaws.ec2#InstanceStorageEncryptionSupport": { + "type": "enum", + "members": { + "unsupported": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7gd.xlarge" + "smithy.api#enumValue": "unsupported" } }, - "c7gd_2xlarge": { + "required": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7gd.2xlarge" + "smithy.api#enumValue": "required" } - }, - "c7gd_4xlarge": { - "target": "smithy.api#Unit", + } + } + }, + "com.amazonaws.ec2#InstanceStorageFlag": { + "type": "boolean" + }, + "com.amazonaws.ec2#InstanceStorageInfo": { + "type": "structure", + "members": { + "TotalSizeInGB": { + "target": "com.amazonaws.ec2#DiskSize", "traits": { - "smithy.api#enumValue": "c7gd.4xlarge" + "aws.protocols#ec2QueryName": "TotalSizeInGB", + "smithy.api#documentation": "

The total size of the disks, in GB.

", + "smithy.api#xmlName": "totalSizeInGB" } }, - "c7gd_8xlarge": { - "target": "smithy.api#Unit", + "Disks": { + "target": "com.amazonaws.ec2#DiskInfoList", "traits": { - "smithy.api#enumValue": "c7gd.8xlarge" + "aws.protocols#ec2QueryName": "Disks", + "smithy.api#documentation": "

Describes the disks that are available for the instance type.

", + "smithy.api#xmlName": "disks" } }, - "c7gd_12xlarge": { - "target": "smithy.api#Unit", + "NvmeSupport": { + "target": "com.amazonaws.ec2#EphemeralNvmeSupport", "traits": { - "smithy.api#enumValue": "c7gd.12xlarge" + "aws.protocols#ec2QueryName": "NvmeSupport", + "smithy.api#documentation": "

Indicates whether non-volatile memory express (NVMe) is supported.

", + "smithy.api#xmlName": "nvmeSupport" } }, - "c7gd_16xlarge": { - "target": "smithy.api#Unit", + "EncryptionSupport": { + "target": "com.amazonaws.ec2#InstanceStorageEncryptionSupport", "traits": { - "smithy.api#enumValue": "c7gd.16xlarge" + "aws.protocols#ec2QueryName": "EncryptionSupport", + "smithy.api#documentation": "

Indicates whether data is encrypted at rest.

", + "smithy.api#xmlName": "encryptionSupport" } - }, - "m7gd_medium": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the instance store features that are supported by the instance type.

" + } + }, + "com.amazonaws.ec2#InstanceTagKeySet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceTagNotificationAttribute": { + "type": "structure", + "members": { + "InstanceTagKeys": { + "target": "com.amazonaws.ec2#InstanceTagKeySet", "traits": { - "smithy.api#enumValue": "m7gd.medium" + "aws.protocols#ec2QueryName": "InstanceTagKeySet", + "smithy.api#documentation": "

The registered tag keys.

", + "smithy.api#xmlName": "instanceTagKeySet" } }, - "m7gd_large": { - "target": "smithy.api#Unit", + "IncludeAllTagsOfInstance": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "m7gd.large" + "aws.protocols#ec2QueryName": "IncludeAllTagsOfInstance", + "smithy.api#documentation": "

Indicates wheter all tag keys in the current Region are registered to appear in\n scheduled event notifications. true indicates that all tag keys in the current\n Region are registered.

", + "smithy.api#xmlName": "includeAllTagsOfInstance" } - }, - "m7gd_xlarge": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the registered tag keys for the current Region.

" + } + }, + "com.amazonaws.ec2#InstanceTopology": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m7gd.xlarge" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The instance ID.

", + "smithy.api#xmlName": "instanceId" } }, - "m7gd_2xlarge": { - "target": "smithy.api#Unit", + "InstanceType": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m7gd.2xlarge" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type.

", + "smithy.api#xmlName": "instanceType" } }, - "m7gd_4xlarge": { - "target": "smithy.api#Unit", + "GroupName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m7gd.4xlarge" + "aws.protocols#ec2QueryName": "GroupName", + "smithy.api#documentation": "

The name of the placement group that the instance is in.

", + "smithy.api#xmlName": "groupName" } }, - "m7gd_8xlarge": { - "target": "smithy.api#Unit", + "NetworkNodes": { + "target": "com.amazonaws.ec2#NetworkNodesList", "traits": { - "smithy.api#enumValue": "m7gd.8xlarge" + "aws.protocols#ec2QueryName": "NetworkNodeSet", + "smithy.api#documentation": "

The network nodes. The nodes are hashed based on your account. Instances from\n different accounts running under the same server will return a different hashed list of\n strings.

", + "smithy.api#xmlName": "networkNodeSet" } }, - "m7gd_12xlarge": { - "target": "smithy.api#Unit", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m7gd.12xlarge" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The name of the Availability Zone or Local Zone that the instance is in.

", + "smithy.api#xmlName": "availabilityZone" } }, - "m7gd_16xlarge": { - "target": "smithy.api#Unit", + "ZoneId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "m7gd.16xlarge" + "aws.protocols#ec2QueryName": "ZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone or Local Zone that the instance is in.

", + "smithy.api#xmlName": "zoneId" } }, - "r7gd_medium": { - "target": "smithy.api#Unit", + "CapacityBlockId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "r7gd.medium" + "aws.protocols#ec2QueryName": "CapacityBlockId", + "smithy.api#documentation": "

The ID of the Capacity Block. This parameter is only supported for Ultraserver\n instances and identifies instances within the Ultraserver domain.

", + "smithy.api#xmlName": "capacityBlockId" } - }, - "r7gd_large": { + } + }, + "traits": { + "smithy.api#documentation": "

Information about the instance topology.

" + } + }, + "com.amazonaws.ec2#InstanceType": { + "type": "enum", + "members": { + "a1_medium": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7gd.large" + "smithy.api#enumValue": "a1.medium" } }, - "r7gd_xlarge": { + "a1_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7gd.xlarge" + "smithy.api#enumValue": "a1.large" } }, - "r7gd_2xlarge": { + "a1_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7gd.2xlarge" + "smithy.api#enumValue": "a1.xlarge" } }, - "r7gd_4xlarge": { + "a1_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7gd.4xlarge" + "smithy.api#enumValue": "a1.2xlarge" } }, - "r7gd_8xlarge": { + "a1_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7gd.8xlarge" + "smithy.api#enumValue": "a1.4xlarge" } }, - "r7gd_12xlarge": { + "a1_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7gd.12xlarge" + "smithy.api#enumValue": "a1.metal" } }, - "r7gd_16xlarge": { + "c1_medium": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7gd.16xlarge" + "smithy.api#enumValue": "c1.medium" } }, - "r7a_medium": { + "c1_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7a.medium" + "smithy.api#enumValue": "c1.xlarge" } }, - "r7a_large": { + "c3_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7a.large" + "smithy.api#enumValue": "c3.large" } }, - "r7a_xlarge": { + "c3_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7a.xlarge" + "smithy.api#enumValue": "c3.xlarge" } }, - "r7a_2xlarge": { + "c3_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7a.2xlarge" + "smithy.api#enumValue": "c3.2xlarge" } }, - "r7a_4xlarge": { + "c3_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7a.4xlarge" + "smithy.api#enumValue": "c3.4xlarge" } }, - "r7a_8xlarge": { + "c3_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7a.8xlarge" + "smithy.api#enumValue": "c3.8xlarge" } }, - "r7a_12xlarge": { + "c4_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7a.12xlarge" + "smithy.api#enumValue": "c4.large" } }, - "r7a_16xlarge": { + "c4_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7a.16xlarge" + "smithy.api#enumValue": "c4.xlarge" } }, - "r7a_24xlarge": { + "c4_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7a.24xlarge" + "smithy.api#enumValue": "c4.2xlarge" } }, - "r7a_32xlarge": { + "c4_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7a.32xlarge" + "smithy.api#enumValue": "c4.4xlarge" } }, - "r7a_48xlarge": { + "c4_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7a.48xlarge" + "smithy.api#enumValue": "c4.8xlarge" } }, - "c7i_large": { + "c5_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7i.large" + "smithy.api#enumValue": "c5.large" } }, - "c7i_xlarge": { + "c5_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7i.xlarge" + "smithy.api#enumValue": "c5.xlarge" } }, - "c7i_2xlarge": { + "c5_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7i.2xlarge" + "smithy.api#enumValue": "c5.2xlarge" } }, - "c7i_4xlarge": { + "c5_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7i.4xlarge" + "smithy.api#enumValue": "c5.4xlarge" } }, - "c7i_8xlarge": { + "c5_9xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7i.8xlarge" + "smithy.api#enumValue": "c5.9xlarge" } }, - "c7i_12xlarge": { + "c5_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7i.12xlarge" + "smithy.api#enumValue": "c5.12xlarge" } }, - "c7i_16xlarge": { + "c5_18xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7i.16xlarge" + "smithy.api#enumValue": "c5.18xlarge" } }, - "c7i_24xlarge": { + "c5_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7i.24xlarge" + "smithy.api#enumValue": "c5.24xlarge" } }, - "c7i_48xlarge": { + "c5_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7i.48xlarge" + "smithy.api#enumValue": "c5.metal" } }, - "mac2_m2pro_metal": { + "c5a_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "mac2-m2pro.metal" + "smithy.api#enumValue": "c5a.large" } }, - "r7iz_large": { + "c5a_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7iz.large" + "smithy.api#enumValue": "c5a.xlarge" } }, - "r7iz_xlarge": { + "c5a_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7iz.xlarge" + "smithy.api#enumValue": "c5a.2xlarge" } }, - "r7iz_2xlarge": { + "c5a_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7iz.2xlarge" + "smithy.api#enumValue": "c5a.4xlarge" } }, - "r7iz_4xlarge": { + "c5a_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7iz.4xlarge" + "smithy.api#enumValue": "c5a.8xlarge" } }, - "r7iz_8xlarge": { + "c5a_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7iz.8xlarge" + "smithy.api#enumValue": "c5a.12xlarge" } }, - "r7iz_12xlarge": { + "c5a_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7iz.12xlarge" + "smithy.api#enumValue": "c5a.16xlarge" } }, - "r7iz_16xlarge": { + "c5a_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7iz.16xlarge" + "smithy.api#enumValue": "c5a.24xlarge" } }, - "r7iz_32xlarge": { + "c5ad_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7iz.32xlarge" + "smithy.api#enumValue": "c5ad.large" } }, - "c7a_medium": { + "c5ad_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7a.medium" + "smithy.api#enumValue": "c5ad.xlarge" } }, - "c7a_large": { + "c5ad_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7a.large" + "smithy.api#enumValue": "c5ad.2xlarge" } }, - "c7a_xlarge": { + "c5ad_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7a.xlarge" + "smithy.api#enumValue": "c5ad.4xlarge" } }, - "c7a_2xlarge": { + "c5ad_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7a.2xlarge" + "smithy.api#enumValue": "c5ad.8xlarge" } }, - "c7a_4xlarge": { + "c5ad_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7a.4xlarge" + "smithy.api#enumValue": "c5ad.12xlarge" } }, - "c7a_8xlarge": { + "c5ad_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7a.8xlarge" + "smithy.api#enumValue": "c5ad.16xlarge" } }, - "c7a_12xlarge": { + "c5ad_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7a.12xlarge" + "smithy.api#enumValue": "c5ad.24xlarge" } }, - "c7a_16xlarge": { + "c5d_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7a.16xlarge" + "smithy.api#enumValue": "c5d.large" } }, - "c7a_24xlarge": { + "c5d_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7a.24xlarge" + "smithy.api#enumValue": "c5d.xlarge" } }, - "c7a_32xlarge": { + "c5d_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7a.32xlarge" + "smithy.api#enumValue": "c5d.2xlarge" } }, - "c7a_48xlarge": { + "c5d_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7a.48xlarge" + "smithy.api#enumValue": "c5d.4xlarge" } }, - "c7a_metal_48xl": { + "c5d_9xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7a.metal-48xl" + "smithy.api#enumValue": "c5d.9xlarge" } }, - "r7a_metal_48xl": { + "c5d_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7a.metal-48xl" + "smithy.api#enumValue": "c5d.12xlarge" } }, - "r7i_large": { + "c5d_18xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7i.large" + "smithy.api#enumValue": "c5d.18xlarge" } }, - "r7i_xlarge": { + "c5d_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7i.xlarge" + "smithy.api#enumValue": "c5d.24xlarge" } }, - "r7i_2xlarge": { + "c5d_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7i.2xlarge" + "smithy.api#enumValue": "c5d.metal" } }, - "r7i_4xlarge": { + "c5n_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7i.4xlarge" + "smithy.api#enumValue": "c5n.large" } }, - "r7i_8xlarge": { + "c5n_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7i.8xlarge" + "smithy.api#enumValue": "c5n.xlarge" } }, - "r7i_12xlarge": { + "c5n_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7i.12xlarge" + "smithy.api#enumValue": "c5n.2xlarge" } }, - "r7i_16xlarge": { + "c5n_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7i.16xlarge" + "smithy.api#enumValue": "c5n.4xlarge" } }, - "r7i_24xlarge": { + "c5n_9xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7i.24xlarge" + "smithy.api#enumValue": "c5n.9xlarge" } }, - "r7i_48xlarge": { + "c5n_18xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7i.48xlarge" + "smithy.api#enumValue": "c5n.18xlarge" } }, - "dl2q_24xlarge": { + "c5n_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "dl2q.24xlarge" + "smithy.api#enumValue": "c5n.metal" } }, - "mac2_m2_metal": { + "c6g_medium": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "mac2-m2.metal" + "smithy.api#enumValue": "c6g.medium" } }, - "i4i_12xlarge": { + "c6g_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "i4i.12xlarge" + "smithy.api#enumValue": "c6g.large" } }, - "i4i_24xlarge": { + "c6g_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "i4i.24xlarge" + "smithy.api#enumValue": "c6g.xlarge" } }, - "c7i_metal_24xl": { + "c6g_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7i.metal-24xl" + "smithy.api#enumValue": "c6g.2xlarge" } }, - "c7i_metal_48xl": { + "c6g_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7i.metal-48xl" + "smithy.api#enumValue": "c6g.4xlarge" } }, - "m7i_metal_24xl": { + "c6g_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "m7i.metal-24xl" + "smithy.api#enumValue": "c6g.8xlarge" } }, - "m7i_metal_48xl": { + "c6g_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "m7i.metal-48xl" + "smithy.api#enumValue": "c6g.12xlarge" } }, - "r7i_metal_24xl": { + "c6g_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7i.metal-24xl" + "smithy.api#enumValue": "c6g.16xlarge" } }, - "r7i_metal_48xl": { + "c6g_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7i.metal-48xl" + "smithy.api#enumValue": "c6g.metal" } }, - "r7iz_metal_16xl": { + "c6gd_medium": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7iz.metal-16xl" + "smithy.api#enumValue": "c6gd.medium" } }, - "r7iz_metal_32xl": { + "c6gd_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7iz.metal-32xl" + "smithy.api#enumValue": "c6gd.large" } }, - "c7gd_metal": { + "c6gd_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7gd.metal" + "smithy.api#enumValue": "c6gd.xlarge" } }, - "m7gd_metal": { + "c6gd_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "m7gd.metal" + "smithy.api#enumValue": "c6gd.2xlarge" } }, - "r7gd_metal": { + "c6gd_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "r7gd.metal" + "smithy.api#enumValue": "c6gd.4xlarge" } }, - "g6_xlarge": { + "c6gd_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "g6.xlarge" + "smithy.api#enumValue": "c6gd.8xlarge" } }, - "g6_2xlarge": { + "c6gd_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "g6.2xlarge" + "smithy.api#enumValue": "c6gd.12xlarge" } }, - "g6_4xlarge": { + "c6gd_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "g6.4xlarge" + "smithy.api#enumValue": "c6gd.16xlarge" } }, - "g6_8xlarge": { + "c6gd_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "g6.8xlarge" + "smithy.api#enumValue": "c6gd.metal" } }, - "g6_12xlarge": { + "c6gn_medium": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "g6.12xlarge" + "smithy.api#enumValue": "c6gn.medium" } }, - "g6_16xlarge": { + "c6gn_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "g6.16xlarge" + "smithy.api#enumValue": "c6gn.large" } }, - "g6_24xlarge": { + "c6gn_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "g6.24xlarge" + "smithy.api#enumValue": "c6gn.xlarge" } }, - "g6_48xlarge": { + "c6gn_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "g6.48xlarge" + "smithy.api#enumValue": "c6gn.2xlarge" } }, - "gr6_4xlarge": { + "c6gn_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "gr6.4xlarge" + "smithy.api#enumValue": "c6gn.4xlarge" } }, - "gr6_8xlarge": { + "c6gn_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "gr6.8xlarge" + "smithy.api#enumValue": "c6gn.8xlarge" } }, - "c7i_flex_large": { + "c6gn_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7i-flex.large" + "smithy.api#enumValue": "c6gn.12xlarge" } }, - "c7i_flex_xlarge": { + "c6gn_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7i-flex.xlarge" + "smithy.api#enumValue": "c6gn.16xlarge" } }, - "c7i_flex_2xlarge": { + "c6i_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7i-flex.2xlarge" + "smithy.api#enumValue": "c6i.large" } }, - "c7i_flex_4xlarge": { + "c6i_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7i-flex.4xlarge" + "smithy.api#enumValue": "c6i.xlarge" } }, - "c7i_flex_8xlarge": { + "c6i_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "c7i-flex.8xlarge" + "smithy.api#enumValue": "c6i.2xlarge" } }, - "u7i_12tb_224xlarge": { + "c6i_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "u7i-12tb.224xlarge" + "smithy.api#enumValue": "c6i.4xlarge" } }, - "u7in_16tb_224xlarge": { + "c6i_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "u7in-16tb.224xlarge" + "smithy.api#enumValue": "c6i.8xlarge" } }, - "u7in_24tb_224xlarge": { + "c6i_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "u7in-24tb.224xlarge" + "smithy.api#enumValue": "c6i.12xlarge" } }, - "u7in_32tb_224xlarge": { + "c6i_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "u7in-32tb.224xlarge" + "smithy.api#enumValue": "c6i.16xlarge" } - } - } - }, - "com.amazonaws.ec2#InstanceTypeHypervisor": { - "type": "enum", - "members": { - "NITRO": { + }, + "c6i_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "nitro" + "smithy.api#enumValue": "c6i.24xlarge" } }, - "XEN": { + "c6i_32xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "xen" + "smithy.api#enumValue": "c6i.32xlarge" } - } - } - }, - "com.amazonaws.ec2#InstanceTypeInfo": { - "type": "structure", - "members": { - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", + }, + "c6i_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type. For more information, see Instance types in the Amazon EC2 User Guide.

", - "smithy.api#xmlName": "instanceType" + "smithy.api#enumValue": "c6i.metal" } }, - "CurrentGeneration": { - "target": "com.amazonaws.ec2#CurrentGenerationFlag", + "cc1_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CurrentGeneration", - "smithy.api#documentation": "

Indicates whether the instance type is current generation.

", - "smithy.api#xmlName": "currentGeneration" + "smithy.api#enumValue": "cc1.4xlarge" } }, - "FreeTierEligible": { - "target": "com.amazonaws.ec2#FreeTierEligibleFlag", + "cc2_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "FreeTierEligible", - "smithy.api#documentation": "

Indicates whether the instance type is eligible for the free tier.

", - "smithy.api#xmlName": "freeTierEligible" + "smithy.api#enumValue": "cc2.8xlarge" } }, - "SupportedUsageClasses": { - "target": "com.amazonaws.ec2#UsageClassTypeList", + "cg1_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SupportedUsageClasses", - "smithy.api#documentation": "

Indicates whether the instance type is offered for spot or On-Demand.

", - "smithy.api#xmlName": "supportedUsageClasses" + "smithy.api#enumValue": "cg1.4xlarge" } }, - "SupportedRootDeviceTypes": { - "target": "com.amazonaws.ec2#RootDeviceTypeList", + "cr1_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SupportedRootDeviceTypes", - "smithy.api#documentation": "

The supported root device types.

", - "smithy.api#xmlName": "supportedRootDeviceTypes" + "smithy.api#enumValue": "cr1.8xlarge" } }, - "SupportedVirtualizationTypes": { - "target": "com.amazonaws.ec2#VirtualizationTypeList", + "d2_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SupportedVirtualizationTypes", - "smithy.api#documentation": "

The supported virtualization types.

", - "smithy.api#xmlName": "supportedVirtualizationTypes" + "smithy.api#enumValue": "d2.xlarge" } }, - "BareMetal": { - "target": "com.amazonaws.ec2#BareMetalFlag", + "d2_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "BareMetal", - "smithy.api#documentation": "

Indicates whether the instance is a bare metal instance type.

", - "smithy.api#xmlName": "bareMetal" + "smithy.api#enumValue": "d2.2xlarge" } }, - "Hypervisor": { - "target": "com.amazonaws.ec2#InstanceTypeHypervisor", + "d2_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Hypervisor", - "smithy.api#documentation": "

The hypervisor for the instance type.

", - "smithy.api#xmlName": "hypervisor" + "smithy.api#enumValue": "d2.4xlarge" } }, - "ProcessorInfo": { - "target": "com.amazonaws.ec2#ProcessorInfo", + "d2_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ProcessorInfo", - "smithy.api#documentation": "

Describes the processor.

", - "smithy.api#xmlName": "processorInfo" + "smithy.api#enumValue": "d2.8xlarge" } }, - "VCpuInfo": { - "target": "com.amazonaws.ec2#VCpuInfo", + "d3_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VCpuInfo", - "smithy.api#documentation": "

Describes the vCPU configurations for the instance type.

", - "smithy.api#xmlName": "vCpuInfo" + "smithy.api#enumValue": "d3.xlarge" } }, - "MemoryInfo": { - "target": "com.amazonaws.ec2#MemoryInfo", + "d3_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "MemoryInfo", - "smithy.api#documentation": "

Describes the memory for the instance type.

", - "smithy.api#xmlName": "memoryInfo" + "smithy.api#enumValue": "d3.2xlarge" } }, - "InstanceStorageSupported": { - "target": "com.amazonaws.ec2#InstanceStorageFlag", + "d3_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceStorageSupported", - "smithy.api#documentation": "

Indicates whether instance storage is supported.

", - "smithy.api#xmlName": "instanceStorageSupported" + "smithy.api#enumValue": "d3.4xlarge" } }, - "InstanceStorageInfo": { - "target": "com.amazonaws.ec2#InstanceStorageInfo", + "d3_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceStorageInfo", - "smithy.api#documentation": "

Describes the instance storage for the instance type.

", - "smithy.api#xmlName": "instanceStorageInfo" + "smithy.api#enumValue": "d3.8xlarge" } }, - "EbsInfo": { - "target": "com.amazonaws.ec2#EbsInfo", + "d3en_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EbsInfo", - "smithy.api#documentation": "

Describes the Amazon EBS settings for the instance type.

", - "smithy.api#xmlName": "ebsInfo" + "smithy.api#enumValue": "d3en.xlarge" } }, - "NetworkInfo": { - "target": "com.amazonaws.ec2#NetworkInfo", + "d3en_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NetworkInfo", - "smithy.api#documentation": "

Describes the network settings for the instance type.

", - "smithy.api#xmlName": "networkInfo" + "smithy.api#enumValue": "d3en.2xlarge" } }, - "GpuInfo": { - "target": "com.amazonaws.ec2#GpuInfo", + "d3en_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "GpuInfo", - "smithy.api#documentation": "

Describes the GPU accelerator settings for the instance type.

", - "smithy.api#xmlName": "gpuInfo" + "smithy.api#enumValue": "d3en.4xlarge" } }, - "FpgaInfo": { - "target": "com.amazonaws.ec2#FpgaInfo", + "d3en_6xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "FpgaInfo", - "smithy.api#documentation": "

Describes the FPGA accelerator settings for the instance type.

", - "smithy.api#xmlName": "fpgaInfo" + "smithy.api#enumValue": "d3en.6xlarge" } }, - "PlacementGroupInfo": { - "target": "com.amazonaws.ec2#PlacementGroupInfo", + "d3en_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PlacementGroupInfo", - "smithy.api#documentation": "

Describes the placement group settings for the instance type.

", - "smithy.api#xmlName": "placementGroupInfo" + "smithy.api#enumValue": "d3en.8xlarge" } }, - "InferenceAcceleratorInfo": { - "target": "com.amazonaws.ec2#InferenceAcceleratorInfo", + "d3en_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InferenceAcceleratorInfo", - "smithy.api#documentation": "

Describes the Inference accelerator settings for the instance type.

", - "smithy.api#xmlName": "inferenceAcceleratorInfo" + "smithy.api#enumValue": "d3en.12xlarge" } }, - "HibernationSupported": { - "target": "com.amazonaws.ec2#HibernationFlag", + "dl1_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "HibernationSupported", - "smithy.api#documentation": "

Indicates whether On-Demand hibernation is supported.

", - "smithy.api#xmlName": "hibernationSupported" + "smithy.api#enumValue": "dl1.24xlarge" } }, - "BurstablePerformanceSupported": { - "target": "com.amazonaws.ec2#BurstablePerformanceFlag", + "f1_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "BurstablePerformanceSupported", - "smithy.api#documentation": "

Indicates whether the instance type is a burstable performance T instance \n type. For more information, see Burstable \n performance instances.

", - "smithy.api#xmlName": "burstablePerformanceSupported" + "smithy.api#enumValue": "f1.2xlarge" } }, - "DedicatedHostsSupported": { - "target": "com.amazonaws.ec2#DedicatedHostFlag", + "f1_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DedicatedHostsSupported", - "smithy.api#documentation": "

Indicates whether Dedicated Hosts are supported on the instance type.

", - "smithy.api#xmlName": "dedicatedHostsSupported" + "smithy.api#enumValue": "f1.4xlarge" } }, - "AutoRecoverySupported": { - "target": "com.amazonaws.ec2#AutoRecoveryFlag", + "f1_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AutoRecoverySupported", - "smithy.api#documentation": "

Indicates whether Amazon CloudWatch action based recovery is supported.

", - "smithy.api#xmlName": "autoRecoverySupported" + "smithy.api#enumValue": "f1.16xlarge" } }, - "SupportedBootModes": { - "target": "com.amazonaws.ec2#BootModeTypeList", + "g2_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SupportedBootModes", - "smithy.api#documentation": "

The supported boot modes. For more information, see Boot modes in the\n Amazon EC2 User Guide.

", - "smithy.api#xmlName": "supportedBootModes" + "smithy.api#enumValue": "g2.2xlarge" } }, - "NitroEnclavesSupport": { - "target": "com.amazonaws.ec2#NitroEnclavesSupport", + "g2_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NitroEnclavesSupport", - "smithy.api#documentation": "

Indicates whether Nitro Enclaves is supported.

", - "smithy.api#xmlName": "nitroEnclavesSupport" + "smithy.api#enumValue": "g2.8xlarge" } }, - "NitroTpmSupport": { - "target": "com.amazonaws.ec2#NitroTpmSupport", + "g3_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NitroTpmSupport", - "smithy.api#documentation": "

Indicates whether NitroTPM is supported.

", - "smithy.api#xmlName": "nitroTpmSupport" + "smithy.api#enumValue": "g3.4xlarge" } }, - "NitroTpmInfo": { - "target": "com.amazonaws.ec2#NitroTpmInfo", + "g3_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NitroTpmInfo", - "smithy.api#documentation": "

Describes the supported NitroTPM versions for the instance type.

", - "smithy.api#xmlName": "nitroTpmInfo" + "smithy.api#enumValue": "g3.8xlarge" } }, - "MediaAcceleratorInfo": { - "target": "com.amazonaws.ec2#MediaAcceleratorInfo", + "g3_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "MediaAcceleratorInfo", - "smithy.api#documentation": "

Describes the media accelerator settings for the instance type.

", - "smithy.api#xmlName": "mediaAcceleratorInfo" + "smithy.api#enumValue": "g3.16xlarge" } }, - "NeuronInfo": { - "target": "com.amazonaws.ec2#NeuronInfo", + "g3s_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NeuronInfo", - "smithy.api#documentation": "

Describes the Neuron accelerator settings for the instance type.

", - "smithy.api#xmlName": "neuronInfo" + "smithy.api#enumValue": "g3s.xlarge" } }, - "PhcSupport": { - "target": "com.amazonaws.ec2#PhcSupport", + "g4ad_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PhcSupport", - "smithy.api#documentation": "

Indicates whether a local Precision Time Protocol (PTP) hardware clock (PHC) is\n supported.

", - "smithy.api#xmlName": "phcSupport" + "smithy.api#enumValue": "g4ad.xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the instance type.

" - } - }, - "com.amazonaws.ec2#InstanceTypeInfoFromInstanceRequirements": { - "type": "structure", - "members": { - "InstanceType": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The matching instance type.

", - "smithy.api#xmlName": "instanceType" - } - } - }, - "traits": { - "smithy.api#documentation": "

The list of instance types with the specified instance attributes.

" - } - }, - "com.amazonaws.ec2#InstanceTypeInfoFromInstanceRequirementsSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceTypeInfoFromInstanceRequirements", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#InstanceTypeInfoList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceTypeInfo", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#InstanceTypeList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceType" - } - }, - "com.amazonaws.ec2#InstanceTypeOffering": { - "type": "structure", - "members": { - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", + }, + "g4ad_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type. For more information, see Instance types in the Amazon EC2 User Guide.

", - "smithy.api#xmlName": "instanceType" + "smithy.api#enumValue": "g4ad.2xlarge" } }, - "LocationType": { - "target": "com.amazonaws.ec2#LocationType", + "g4ad_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocationType", - "smithy.api#documentation": "

The location type.

", - "smithy.api#xmlName": "locationType" + "smithy.api#enumValue": "g4ad.4xlarge" } }, - "Location": { - "target": "com.amazonaws.ec2#Location", + "g4ad_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Location", - "smithy.api#documentation": "

The identifier for the location. This depends on the location type. For example, if the location type is\n region, the location is the Region code (for example, us-east-2.)

", - "smithy.api#xmlName": "location" + "smithy.api#enumValue": "g4ad.8xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The instance types offered.

" - } - }, - "com.amazonaws.ec2#InstanceTypeOfferingsList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceTypeOffering", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#InstanceTypes": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String" - }, - "traits": { - "smithy.api#length": { - "min": 0, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#InstanceTypesList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#InstanceUsage": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.ec2#String", + }, + "g4ad_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AccountId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that is making use of the Capacity Reservation.

", - "smithy.api#xmlName": "accountId" + "smithy.api#enumValue": "g4ad.16xlarge" } }, - "UsedInstanceCount": { - "target": "com.amazonaws.ec2#Integer", + "g4dn_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "UsedInstanceCount", - "smithy.api#documentation": "

The number of instances the Amazon Web Services account currently has in the Capacity Reservation.

", - "smithy.api#xmlName": "usedInstanceCount" + "smithy.api#enumValue": "g4dn.xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Information about the Capacity Reservation usage.

" - } - }, - "com.amazonaws.ec2#InstanceUsageSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InstanceUsage", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Integer": { - "type": "integer" - }, - "com.amazonaws.ec2#IntegerWithConstraints": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 0 - } - } - }, - "com.amazonaws.ec2#IntegrateServices": { - "type": "structure", - "members": { - "AthenaIntegrations": { - "target": "com.amazonaws.ec2#AthenaIntegrationsSet", + }, + "g4dn_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Information about the integration with Amazon Athena.

", - "smithy.api#xmlName": "AthenaIntegration" + "smithy.api#enumValue": "g4dn.2xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes service integrations with VPC Flow logs.

" - } - }, - "com.amazonaws.ec2#InterfacePermissionType": { - "type": "enum", - "members": { - "INSTANCE_ATTACH": { + }, + "g4dn_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "INSTANCE-ATTACH" + "smithy.api#enumValue": "g4dn.4xlarge" } }, - "EIP_ASSOCIATE": { + "g4dn_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "EIP-ASSOCIATE" + "smithy.api#enumValue": "g4dn.8xlarge" } - } - } - }, - "com.amazonaws.ec2#InterfaceProtocolType": { - "type": "enum", - "members": { - "VLAN": { + }, + "g4dn_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "VLAN" + "smithy.api#enumValue": "g4dn.12xlarge" } }, - "GRE": { + "g4dn_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "GRE" + "smithy.api#enumValue": "g4dn.16xlarge" } - } - } - }, - "com.amazonaws.ec2#InternetGateway": { - "type": "structure", - "members": { - "Attachments": { - "target": "com.amazonaws.ec2#InternetGatewayAttachmentList", + }, + "g4dn_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AttachmentSet", - "smithy.api#documentation": "

Any VPCs attached to the internet gateway.

", - "smithy.api#xmlName": "attachmentSet" + "smithy.api#enumValue": "g4dn.metal" } }, - "InternetGatewayId": { - "target": "com.amazonaws.ec2#String", + "g5_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InternetGatewayId", - "smithy.api#documentation": "

The ID of the internet gateway.

", - "smithy.api#xmlName": "internetGatewayId" + "smithy.api#enumValue": "g5.xlarge" } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "g5_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the internet gateway.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "g5.2xlarge" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "g5_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the internet gateway.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "g5.4xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an internet gateway.

" - } - }, - "com.amazonaws.ec2#InternetGatewayAttachment": { - "type": "structure", - "members": { - "State": { - "target": "com.amazonaws.ec2#AttachmentStatus", + }, + "g5_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The current state of the attachment. For an internet gateway, the state is\n\t\t\t\tavailable when attached to a VPC; otherwise, this value is not\n\t\t\treturned.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "g5.8xlarge" } }, - "VpcId": { - "target": "com.amazonaws.ec2#String", + "g5_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#xmlName": "vpcId" + "smithy.api#enumValue": "g5.12xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the attachment of a VPC to an internet gateway or an egress-only internet gateway.

" - } - }, - "com.amazonaws.ec2#InternetGatewayAttachmentList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InternetGatewayAttachment", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#InternetGatewayId": { - "type": "string" - }, - "com.amazonaws.ec2#InternetGatewayIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InternetGatewayId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#InternetGatewayList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#InternetGateway", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpAddress": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 15 }, - "smithy.api#pattern": "^([0-9]{1,3}.){3}[0-9]{1,3}$" - } - }, - "com.amazonaws.ec2#IpAddressList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpAddress", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpAddressType": { - "type": "enum", - "members": { - "ipv4": { + "g5_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ipv4" + "smithy.api#enumValue": "g5.16xlarge" } }, - "dualstack": { + "g5_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "dualstack" + "smithy.api#enumValue": "g5.24xlarge" } }, - "ipv6": { + "g5_48xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ipv6" + "smithy.api#enumValue": "g5.48xlarge" } - } - } - }, - "com.amazonaws.ec2#IpList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpPermission": { - "type": "structure", - "members": { - "FromPort": { - "target": "com.amazonaws.ec2#Integer", + }, + "g5g_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "FromPort", - "smithy.api#documentation": "

If the protocol is TCP or UDP, this is the start of the port range.\n If the protocol is ICMP or ICMPv6, this is the ICMP type or -1 (all ICMP types).

", - "smithy.api#xmlName": "fromPort" + "smithy.api#enumValue": "g5g.xlarge" } }, - "IpProtocol": { - "target": "com.amazonaws.ec2#String", + "g5g_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpProtocol", - "smithy.api#documentation": "

The IP protocol name (tcp, udp, icmp, icmpv6) \n or number (see Protocol Numbers).

\n

Use -1 to specify all protocols. When authorizing\n security group rules, specifying -1 or a protocol number other than\n tcp, udp, icmp, or icmpv6 allows\n traffic on all ports, regardless of any port range you specify. For tcp,\n udp, and icmp, you must specify a port range. For icmpv6,\n the port range is optional; if you omit the port range, traffic for all types and codes is allowed.

", - "smithy.api#xmlName": "ipProtocol" + "smithy.api#enumValue": "g5g.2xlarge" } }, - "IpRanges": { - "target": "com.amazonaws.ec2#IpRangeList", + "g5g_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpRanges", - "smithy.api#documentation": "

The IPv4 address ranges.

", - "smithy.api#xmlName": "ipRanges" + "smithy.api#enumValue": "g5g.4xlarge" } }, - "Ipv6Ranges": { - "target": "com.amazonaws.ec2#Ipv6RangeList", + "g5g_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Ipv6Ranges", - "smithy.api#documentation": "

The IPv6 address ranges.

", - "smithy.api#xmlName": "ipv6Ranges" + "smithy.api#enumValue": "g5g.8xlarge" } }, - "PrefixListIds": { - "target": "com.amazonaws.ec2#PrefixListIdList", + "g5g_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PrefixListIds", - "smithy.api#documentation": "

The prefix list IDs.

", - "smithy.api#xmlName": "prefixListIds" + "smithy.api#enumValue": "g5g.16xlarge" } }, - "ToPort": { - "target": "com.amazonaws.ec2#Integer", + "g5g_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ToPort", - "smithy.api#documentation": "

If the protocol is TCP or UDP, this is the end of the port range.\n If the protocol is ICMP or ICMPv6, this is the ICMP code or -1 (all ICMP codes). \n If the start port is -1 (all ICMP types), then the end port must be -1 (all ICMP codes).

", - "smithy.api#xmlName": "toPort" + "smithy.api#enumValue": "g5g.metal" } }, - "UserIdGroupPairs": { - "target": "com.amazonaws.ec2#UserIdGroupPairList", + "hi1_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Groups", - "smithy.api#documentation": "

The security group and Amazon Web Services account ID pairs.

", - "smithy.api#xmlName": "groups" + "smithy.api#enumValue": "hi1.4xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the permissions for a security group rule.

" - } - }, - "com.amazonaws.ec2#IpPermissionList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpPermission", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpPrefixList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpRange": { - "type": "structure", - "members": { - "CidrIp": { - "target": "com.amazonaws.ec2#String", + }, + "hpc6a_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CidrIp", - "smithy.api#documentation": "

The IPv4 address range. You can either specify a CIDR block or a source security group,\n not both. To specify a single IPv4 address, use the /32 prefix length.

", - "smithy.api#xmlName": "cidrIp" + "smithy.api#enumValue": "hpc6a.48xlarge" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "hs1_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description for the security group rule that references this IPv4 address range.

\n

Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9,\n spaces, and ._-:/()#,@[]+=&;{}!$*

", - "smithy.api#xmlName": "description" + "smithy.api#enumValue": "hs1.8xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an IPv4 address range.

" - } - }, - "com.amazonaws.ec2#IpRangeList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpRange", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpRanges": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Ipam": { - "type": "structure", - "members": { - "OwnerId": { - "target": "com.amazonaws.ec2#String", + }, + "h1_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the IPAM.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "h1.2xlarge" } }, - "IpamId": { - "target": "com.amazonaws.ec2#IpamId", + "h1_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamId", - "smithy.api#documentation": "

The ID of the IPAM.

", - "smithy.api#xmlName": "ipamId" + "smithy.api#enumValue": "h1.4xlarge" } }, - "IpamArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "h1_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IPAM.

", - "smithy.api#xmlName": "ipamArn" + "smithy.api#enumValue": "h1.8xlarge" } }, - "IpamRegion": { - "target": "com.amazonaws.ec2#String", + "h1_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamRegion", - "smithy.api#documentation": "

The Amazon Web Services Region of the IPAM.

", - "smithy.api#xmlName": "ipamRegion" + "smithy.api#enumValue": "h1.16xlarge" } }, - "PublicDefaultScopeId": { - "target": "com.amazonaws.ec2#IpamScopeId", + "i2_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PublicDefaultScopeId", - "smithy.api#documentation": "

The ID of the IPAM's default public scope.

", - "smithy.api#xmlName": "publicDefaultScopeId" + "smithy.api#enumValue": "i2.xlarge" } }, - "PrivateDefaultScopeId": { - "target": "com.amazonaws.ec2#IpamScopeId", + "i2_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PrivateDefaultScopeId", - "smithy.api#documentation": "

The ID of the IPAM's default private scope.

", - "smithy.api#xmlName": "privateDefaultScopeId" + "smithy.api#enumValue": "i2.2xlarge" } }, - "ScopeCount": { - "target": "com.amazonaws.ec2#Integer", + "i2_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ScopeCount", - "smithy.api#documentation": "

The number of scopes in the IPAM. The scope quota is 5. For more information on quotas, see Quotas in IPAM in the Amazon VPC IPAM User Guide.\n

", - "smithy.api#xmlName": "scopeCount" + "smithy.api#enumValue": "i2.4xlarge" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "i2_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

The description for the IPAM.

", - "smithy.api#xmlName": "description" + "smithy.api#enumValue": "i2.8xlarge" } }, - "OperatingRegions": { - "target": "com.amazonaws.ec2#IpamOperatingRegionSet", + "i3_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OperatingRegionSet", - "smithy.api#documentation": "

The operating Regions for an IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

\n

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide.

", - "smithy.api#xmlName": "operatingRegionSet" + "smithy.api#enumValue": "i3.large" } }, - "State": { - "target": "com.amazonaws.ec2#IpamState", + "i3_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the IPAM.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "i3.xlarge" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "i3_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "i3.2xlarge" } }, - "DefaultResourceDiscoveryId": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", + "i3_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DefaultResourceDiscoveryId", - "smithy.api#documentation": "

The IPAM's default resource discovery ID.

", - "smithy.api#xmlName": "defaultResourceDiscoveryId" + "smithy.api#enumValue": "i3.4xlarge" } }, - "DefaultResourceDiscoveryAssociationId": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryAssociationId", + "i3_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DefaultResourceDiscoveryAssociationId", - "smithy.api#documentation": "

The IPAM's default resource discovery association ID.

", - "smithy.api#xmlName": "defaultResourceDiscoveryAssociationId" + "smithy.api#enumValue": "i3.8xlarge" } }, - "ResourceDiscoveryAssociationCount": { - "target": "com.amazonaws.ec2#Integer", + "i3_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceDiscoveryAssociationCount", - "smithy.api#documentation": "

The IPAM's resource discovery association count.

", - "smithy.api#xmlName": "resourceDiscoveryAssociationCount" + "smithy.api#enumValue": "i3.16xlarge" } }, - "StateMessage": { - "target": "com.amazonaws.ec2#String", + "i3_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "StateMessage", - "smithy.api#documentation": "

The state message.

", - "smithy.api#xmlName": "stateMessage" + "smithy.api#enumValue": "i3.metal" } }, - "Tier": { - "target": "com.amazonaws.ec2#IpamTier", + "i3en_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Tier", - "smithy.api#documentation": "

IPAM is offered in a Free Tier and an Advanced Tier. For more information about the features available in each tier and the costs associated with the tiers, see Amazon VPC pricing > IPAM tab.

", - "smithy.api#xmlName": "tier" + "smithy.api#enumValue": "i3en.large" } - } - }, - "traits": { - "smithy.api#documentation": "

IPAM is a VPC feature that you can use to automate your IP address management workflows including assigning, tracking, troubleshooting, and auditing IP addresses across Amazon Web Services Regions and accounts throughout your Amazon Web Services Organization. For more information, see What is IPAM? in the Amazon VPC IPAM User Guide.

" - } - }, - "com.amazonaws.ec2#IpamAddressHistoryMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#IpamAddressHistoryRecord": { - "type": "structure", - "members": { - "ResourceOwnerId": { - "target": "com.amazonaws.ec2#String", + }, + "i3en_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceOwnerId", - "smithy.api#documentation": "

The ID of the resource owner.

", - "smithy.api#xmlName": "resourceOwnerId" + "smithy.api#enumValue": "i3en.xlarge" } }, - "ResourceRegion": { - "target": "com.amazonaws.ec2#String", + "i3en_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceRegion", - "smithy.api#documentation": "

The Amazon Web Services Region of the resource.

", - "smithy.api#xmlName": "resourceRegion" + "smithy.api#enumValue": "i3en.2xlarge" } }, - "ResourceType": { - "target": "com.amazonaws.ec2#IpamAddressHistoryResourceType", + "i3en_3xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceType", - "smithy.api#documentation": "

The type of the resource.

", - "smithy.api#xmlName": "resourceType" + "smithy.api#enumValue": "i3en.3xlarge" } }, - "ResourceId": { - "target": "com.amazonaws.ec2#String", + "i3en_6xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceId", - "smithy.api#documentation": "

The ID of the resource.

", - "smithy.api#xmlName": "resourceId" + "smithy.api#enumValue": "i3en.6xlarge" } }, - "ResourceCidr": { - "target": "com.amazonaws.ec2#String", + "i3en_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceCidr", - "smithy.api#documentation": "

The CIDR of the resource.

", - "smithy.api#xmlName": "resourceCidr" + "smithy.api#enumValue": "i3en.12xlarge" } }, - "ResourceName": { - "target": "com.amazonaws.ec2#String", + "i3en_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceName", - "smithy.api#documentation": "

The name of the resource.

", - "smithy.api#xmlName": "resourceName" + "smithy.api#enumValue": "i3en.24xlarge" } }, - "ResourceComplianceStatus": { - "target": "com.amazonaws.ec2#IpamComplianceStatus", + "i3en_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceComplianceStatus", - "smithy.api#documentation": "

The compliance status of a resource. For more information on compliance statuses, see Monitor CIDR usage by resource in the Amazon VPC IPAM User Guide.

", - "smithy.api#xmlName": "resourceComplianceStatus" + "smithy.api#enumValue": "i3en.metal" } }, - "ResourceOverlapStatus": { - "target": "com.amazonaws.ec2#IpamOverlapStatus", + "im4gn_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceOverlapStatus", - "smithy.api#documentation": "

The overlap status of an IPAM resource. The overlap status tells you if the CIDR for a resource overlaps with another CIDR in the scope. For more information on overlap statuses, see Monitor CIDR usage by resource in the Amazon VPC IPAM User Guide.

", - "smithy.api#xmlName": "resourceOverlapStatus" + "smithy.api#enumValue": "im4gn.large" } }, - "VpcId": { - "target": "com.amazonaws.ec2#String", + "im4gn_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The VPC ID of the resource.

", - "smithy.api#xmlName": "vpcId" + "smithy.api#enumValue": "im4gn.xlarge" } }, - "SampledStartTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "im4gn_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SampledStartTime", - "smithy.api#documentation": "

Sampled start time of the resource-to-CIDR association within the IPAM scope. Changes are picked up in periodic snapshots, so the start time may have occurred before this specific time.

", - "smithy.api#xmlName": "sampledStartTime" + "smithy.api#enumValue": "im4gn.2xlarge" } }, - "SampledEndTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "im4gn_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SampledEndTime", - "smithy.api#documentation": "

Sampled end time of the resource-to-CIDR association within the IPAM scope. Changes are picked up in periodic snapshots, so the end time may have occurred before this specific time.

", - "smithy.api#xmlName": "sampledEndTime" + "smithy.api#enumValue": "im4gn.4xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The historical record of a CIDR within an IPAM scope. For more information, see View the history of IP addresses in the Amazon VPC IPAM User Guide.\n

" - } - }, - "com.amazonaws.ec2#IpamAddressHistoryRecordSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpamAddressHistoryRecord", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamAddressHistoryResourceType": { - "type": "enum", - "members": { - "eip": { + }, + "im4gn_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "eip" + "smithy.api#enumValue": "im4gn.8xlarge" } }, - "vpc": { + "im4gn_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "vpc" + "smithy.api#enumValue": "im4gn.16xlarge" } }, - "subnet": { + "inf1_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "subnet" + "smithy.api#enumValue": "inf1.xlarge" } }, - "network_interface": { + "inf1_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "network-interface" + "smithy.api#enumValue": "inf1.2xlarge" } }, - "instance": { + "inf1_6xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "instance" + "smithy.api#enumValue": "inf1.6xlarge" } - } - } - }, - "com.amazonaws.ec2#IpamAssociatedResourceDiscoveryStatus": { - "type": "enum", - "members": { - "ACTIVE": { + }, + "inf1_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "active" + "smithy.api#enumValue": "inf1.24xlarge" } }, - "NOT_FOUND": { + "is4gen_medium": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "not-found" + "smithy.api#enumValue": "is4gen.medium" } - } - } - }, - "com.amazonaws.ec2#IpamCidrAuthorizationContext": { - "type": "structure", - "members": { - "Message": { - "target": "com.amazonaws.ec2#String", + }, + "is4gen_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The plain-text authorization message for the prefix and account.

" + "smithy.api#enumValue": "is4gen.large" } }, - "Signature": { - "target": "com.amazonaws.ec2#String", + "is4gen_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The signed authorization message for the prefix and account.

" + "smithy.api#enumValue": "is4gen.xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP.

" - } - }, - "com.amazonaws.ec2#IpamComplianceStatus": { - "type": "enum", - "members": { - "compliant": { + }, + "is4gen_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "compliant" + "smithy.api#enumValue": "is4gen.2xlarge" } }, - "noncompliant": { + "is4gen_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "noncompliant" + "smithy.api#enumValue": "is4gen.4xlarge" } }, - "unmanaged": { + "is4gen_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "unmanaged" + "smithy.api#enumValue": "is4gen.8xlarge" } }, - "ignored": { + "m1_small": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ignored" + "smithy.api#enumValue": "m1.small" } - } - } - }, - "com.amazonaws.ec2#IpamDiscoveredAccount": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.ec2#String", + }, + "m1_medium": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AccountId", - "smithy.api#documentation": "

The account ID.

", - "smithy.api#xmlName": "accountId" + "smithy.api#enumValue": "m1.medium" } }, - "DiscoveryRegion": { - "target": "com.amazonaws.ec2#String", + "m1_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DiscoveryRegion", - "smithy.api#documentation": "

The Amazon Web Services Region that the account information is returned from. \n An account can be discovered in multiple regions and will have a separate discovered account for each Region.

", - "smithy.api#xmlName": "discoveryRegion" + "smithy.api#enumValue": "m1.large" } }, - "FailureReason": { - "target": "com.amazonaws.ec2#IpamDiscoveryFailureReason", + "m1_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "FailureReason", - "smithy.api#documentation": "

The resource discovery failure reason.

", - "smithy.api#xmlName": "failureReason" + "smithy.api#enumValue": "m1.xlarge" } }, - "LastAttemptedDiscoveryTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "m2_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LastAttemptedDiscoveryTime", - "smithy.api#documentation": "

The last attempted resource discovery time.

", - "smithy.api#xmlName": "lastAttemptedDiscoveryTime" + "smithy.api#enumValue": "m2.xlarge" } }, - "LastSuccessfulDiscoveryTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "m2_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LastSuccessfulDiscoveryTime", - "smithy.api#documentation": "

The last successful resource discovery time.

", - "smithy.api#xmlName": "lastSuccessfulDiscoveryTime" + "smithy.api#enumValue": "m2.2xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

An IPAM discovered account. A discovered account is an Amazon Web Services account that is monitored under a resource discovery. If you have integrated IPAM with Amazon Web Services Organizations, all accounts in the organization are discovered accounts.

" - } - }, - "com.amazonaws.ec2#IpamDiscoveredAccountSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpamDiscoveredAccount", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamDiscoveredPublicAddress": { - "type": "structure", - "members": { - "IpamResourceDiscoveryId": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", + }, + "m2_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamResourceDiscoveryId", - "smithy.api#documentation": "

The resource discovery ID.

", - "smithy.api#xmlName": "ipamResourceDiscoveryId" + "smithy.api#enumValue": "m2.4xlarge" } }, - "AddressRegion": { - "target": "com.amazonaws.ec2#String", + "m3_medium": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AddressRegion", - "smithy.api#documentation": "

The Region of the resource the IP address is assigned to.

", - "smithy.api#xmlName": "addressRegion" + "smithy.api#enumValue": "m3.medium" } }, - "Address": { - "target": "com.amazonaws.ec2#String", + "m3_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Address", - "smithy.api#documentation": "

The IP address.

", - "smithy.api#xmlName": "address" + "smithy.api#enumValue": "m3.large" } }, - "AddressOwnerId": { - "target": "com.amazonaws.ec2#String", + "m3_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AddressOwnerId", - "smithy.api#documentation": "

The ID of the owner of the resource the IP address is assigned to.

", - "smithy.api#xmlName": "addressOwnerId" + "smithy.api#enumValue": "m3.xlarge" } }, - "AddressAllocationId": { - "target": "com.amazonaws.ec2#String", + "m3_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AddressAllocationId", - "smithy.api#documentation": "

The allocation ID of the resource the IP address is assigned to.

", - "smithy.api#xmlName": "addressAllocationId" + "smithy.api#enumValue": "m3.2xlarge" } }, - "AssociationStatus": { - "target": "com.amazonaws.ec2#IpamPublicAddressAssociationStatus", + "m4_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AssociationStatus", - "smithy.api#documentation": "

The association status.

", - "smithy.api#xmlName": "associationStatus" + "smithy.api#enumValue": "m4.large" } }, - "AddressType": { - "target": "com.amazonaws.ec2#IpamPublicAddressType", + "m4_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AddressType", - "smithy.api#documentation": "

The IP address type.

", - "smithy.api#xmlName": "addressType" + "smithy.api#enumValue": "m4.xlarge" } }, - "Service": { - "target": "com.amazonaws.ec2#IpamPublicAddressAwsService", + "m4_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Service", - "smithy.api#documentation": "

The Amazon Web Services service associated with the IP address.

", - "smithy.api#xmlName": "service" + "smithy.api#enumValue": "m4.2xlarge" } }, - "ServiceResource": { - "target": "com.amazonaws.ec2#String", + "m4_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ServiceResource", - "smithy.api#documentation": "

The resource ARN or ID.

", - "smithy.api#xmlName": "serviceResource" + "smithy.api#enumValue": "m4.4xlarge" } }, - "VpcId": { - "target": "com.amazonaws.ec2#String", + "m4_10xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC that the resource with the assigned IP address is in.

", - "smithy.api#xmlName": "vpcId" + "smithy.api#enumValue": "m4.10xlarge" } }, - "SubnetId": { - "target": "com.amazonaws.ec2#String", + "m4_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#documentation": "

The ID of the subnet that the resource with the assigned IP address is in.

", - "smithy.api#xmlName": "subnetId" + "smithy.api#enumValue": "m4.16xlarge" } }, - "PublicIpv4PoolId": { - "target": "com.amazonaws.ec2#String", + "m5_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PublicIpv4PoolId", - "smithy.api#documentation": "

The ID of the public IPv4 pool that the resource with the assigned IP address is from.

", - "smithy.api#xmlName": "publicIpv4PoolId" + "smithy.api#enumValue": "m5.large" } }, - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#String", + "m5_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceId", - "smithy.api#documentation": "

The network interface ID of the resource with the assigned IP address.

", - "smithy.api#xmlName": "networkInterfaceId" + "smithy.api#enumValue": "m5.xlarge" } }, - "NetworkInterfaceDescription": { - "target": "com.amazonaws.ec2#String", + "m5_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceDescription", - "smithy.api#documentation": "

The description of the network interface that IP address is assigned to.

", - "smithy.api#xmlName": "networkInterfaceDescription" + "smithy.api#enumValue": "m5.2xlarge" } }, - "InstanceId": { - "target": "com.amazonaws.ec2#String", + "m5_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The instance ID of the instance the assigned IP address is assigned to.

", - "smithy.api#xmlName": "instanceId" + "smithy.api#enumValue": "m5.4xlarge" } }, - "Tags": { - "target": "com.amazonaws.ec2#IpamPublicAddressTags", + "m5_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Tags", - "smithy.api#documentation": "

Tags associated with the IP address.

", - "smithy.api#xmlName": "tags" + "smithy.api#enumValue": "m5.8xlarge" } }, - "NetworkBorderGroup": { - "target": "com.amazonaws.ec2#String", + "m5_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NetworkBorderGroup", - "smithy.api#documentation": "

The network border group that the resource that the IP address is assigned to is in.

", - "smithy.api#xmlName": "networkBorderGroup" + "smithy.api#enumValue": "m5.12xlarge" } }, - "SecurityGroups": { - "target": "com.amazonaws.ec2#IpamPublicAddressSecurityGroupList", + "m5_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SecurityGroupSet", - "smithy.api#documentation": "

Security groups associated with the resource that the IP address is assigned to.

", - "smithy.api#xmlName": "securityGroupSet" + "smithy.api#enumValue": "m5.16xlarge" } }, - "SampleTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "m5_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SampleTime", - "smithy.api#documentation": "

The last successful resource discovery time.

", - "smithy.api#xmlName": "sampleTime" + "smithy.api#enumValue": "m5.24xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

A public IP Address discovered by IPAM.

" - } - }, - "com.amazonaws.ec2#IpamDiscoveredPublicAddressSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpamDiscoveredPublicAddress", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamDiscoveredResourceCidr": { - "type": "structure", - "members": { - "IpamResourceDiscoveryId": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", + }, + "m5_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamResourceDiscoveryId", - "smithy.api#documentation": "

The resource discovery ID.

", - "smithy.api#xmlName": "ipamResourceDiscoveryId" + "smithy.api#enumValue": "m5.metal" } }, - "ResourceRegion": { - "target": "com.amazonaws.ec2#String", + "m5a_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceRegion", - "smithy.api#documentation": "

The resource Region.

", - "smithy.api#xmlName": "resourceRegion" + "smithy.api#enumValue": "m5a.large" } }, - "ResourceId": { - "target": "com.amazonaws.ec2#String", + "m5a_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceId", - "smithy.api#documentation": "

The resource ID.

", - "smithy.api#xmlName": "resourceId" + "smithy.api#enumValue": "m5a.xlarge" } }, - "ResourceOwnerId": { - "target": "com.amazonaws.ec2#String", + "m5a_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceOwnerId", - "smithy.api#documentation": "

The resource owner ID.

", - "smithy.api#xmlName": "resourceOwnerId" + "smithy.api#enumValue": "m5a.2xlarge" } }, - "ResourceCidr": { - "target": "com.amazonaws.ec2#String", + "m5a_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceCidr", - "smithy.api#documentation": "

The resource CIDR.

", - "smithy.api#xmlName": "resourceCidr" + "smithy.api#enumValue": "m5a.4xlarge" } }, - "ResourceType": { - "target": "com.amazonaws.ec2#IpamResourceType", + "m5a_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceType", - "smithy.api#documentation": "

The resource type.

", - "smithy.api#xmlName": "resourceType" + "smithy.api#enumValue": "m5a.8xlarge" } }, - "ResourceTags": { - "target": "com.amazonaws.ec2#IpamResourceTagList", + "m5a_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceTagSet", - "smithy.api#documentation": "

The resource tags.

", - "smithy.api#xmlName": "resourceTagSet" + "smithy.api#enumValue": "m5a.12xlarge" } }, - "IpUsage": { - "target": "com.amazonaws.ec2#BoxedDouble", + "m5a_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpUsage", - "smithy.api#documentation": "

The percentage of IP address space in use. To convert the decimal to a percentage, multiply the decimal by 100. Note the following:

\n ", - "smithy.api#xmlName": "ipUsage" + "smithy.api#enumValue": "m5a.16xlarge" } }, - "VpcId": { - "target": "com.amazonaws.ec2#String", + "m5a_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The VPC ID.

", - "smithy.api#xmlName": "vpcId" + "smithy.api#enumValue": "m5a.24xlarge" } }, - "SampleTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "m5ad_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SampleTime", - "smithy.api#documentation": "

The last successful resource discovery time.

", - "smithy.api#xmlName": "sampleTime" + "smithy.api#enumValue": "m5ad.large" } - } - }, - "traits": { - "smithy.api#documentation": "

An IPAM discovered resource CIDR. A discovered resource is a resource CIDR monitored under a resource discovery. The following resources can be discovered: VPCs, Public IPv4 pools, VPC subnets, and Elastic IP addresses. The discovered resource CIDR is the IP address range in CIDR notation that is associated with the resource.

" - } - }, - "com.amazonaws.ec2#IpamDiscoveredResourceCidrSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpamDiscoveredResourceCidr", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamDiscoveryFailureCode": { - "type": "enum", - "members": { - "assume_role_failure": { + }, + "m5ad_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "assume-role-failure" + "smithy.api#enumValue": "m5ad.xlarge" } }, - "throttling_failure": { + "m5ad_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "throttling-failure" + "smithy.api#enumValue": "m5ad.2xlarge" } }, - "unauthorized_failure": { + "m5ad_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "unauthorized-failure" + "smithy.api#enumValue": "m5ad.4xlarge" } - } - } - }, - "com.amazonaws.ec2#IpamDiscoveryFailureReason": { - "type": "structure", - "members": { - "Code": { - "target": "com.amazonaws.ec2#IpamDiscoveryFailureCode", + }, + "m5ad_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The discovery failure code.

\n ", - "smithy.api#xmlName": "code" + "smithy.api#enumValue": "m5ad.8xlarge" } }, - "Message": { - "target": "com.amazonaws.ec2#String", + "m5ad_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Message", - "smithy.api#documentation": "

The discovery failure message.

", - "smithy.api#xmlName": "message" + "smithy.api#enumValue": "m5ad.12xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The discovery failure reason.

" - } - }, - "com.amazonaws.ec2#IpamId": { - "type": "string" - }, - "com.amazonaws.ec2#IpamManagementState": { - "type": "enum", - "members": { - "managed": { + }, + "m5ad_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "managed" + "smithy.api#enumValue": "m5ad.16xlarge" } }, - "unmanaged": { + "m5ad_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "unmanaged" + "smithy.api#enumValue": "m5ad.24xlarge" } }, - "ignored": { + "m5d_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ignored" + "smithy.api#enumValue": "m5d.large" } - } - } - }, - "com.amazonaws.ec2#IpamMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#IpamNetmaskLength": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 0, - "max": 128 - } - } - }, - "com.amazonaws.ec2#IpamOperatingRegion": { - "type": "structure", - "members": { - "RegionName": { - "target": "com.amazonaws.ec2#String", + }, + "m5d_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "RegionName", - "smithy.api#documentation": "

The name of the operating Region.

", - "smithy.api#xmlName": "regionName" + "smithy.api#enumValue": "m5d.xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The operating Regions for an IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

\n

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide.

" - } - }, - "com.amazonaws.ec2#IpamOperatingRegionSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpamOperatingRegion", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamOverlapStatus": { - "type": "enum", - "members": { - "overlapping": { + }, + "m5d_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "overlapping" + "smithy.api#enumValue": "m5d.2xlarge" } }, - "nonoverlapping": { + "m5d_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "nonoverlapping" + "smithy.api#enumValue": "m5d.4xlarge" } }, - "ignored": { + "m5d_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ignored" + "smithy.api#enumValue": "m5d.8xlarge" } - } - } - }, - "com.amazonaws.ec2#IpamPool": { - "type": "structure", - "members": { - "OwnerId": { - "target": "com.amazonaws.ec2#String", + }, + "m5d_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the IPAM pool.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "m5d.12xlarge" } }, - "IpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", + "m5d_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamPoolId", - "smithy.api#documentation": "

The ID of the IPAM pool.

", - "smithy.api#xmlName": "ipamPoolId" + "smithy.api#enumValue": "m5d.16xlarge" } }, - "SourceIpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", + "m5d_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SourceIpamPoolId", - "smithy.api#documentation": "

The ID of the source IPAM pool. You can use this option to create an IPAM pool within an existing source pool.

", - "smithy.api#xmlName": "sourceIpamPoolId" + "smithy.api#enumValue": "m5d.24xlarge" } }, - "IpamPoolArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "m5d_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamPoolArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IPAM pool.

", - "smithy.api#xmlName": "ipamPoolArn" + "smithy.api#enumValue": "m5d.metal" } }, - "IpamScopeArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "m5dn_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamScopeArn", - "smithy.api#documentation": "

The ARN of the scope of the IPAM pool.

", - "smithy.api#xmlName": "ipamScopeArn" + "smithy.api#enumValue": "m5dn.large" } }, - "IpamScopeType": { - "target": "com.amazonaws.ec2#IpamScopeType", + "m5dn_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamScopeType", - "smithy.api#documentation": "

In IPAM, a scope is the highest-level container within IPAM. An IPAM contains two default scopes. Each scope represents the IP space for a single network. The private scope is intended for all private IP address space. The public scope is intended for all public IP address space. Scopes enable you to reuse IP addresses across multiple unconnected networks without causing IP address overlap or conflict.

", - "smithy.api#xmlName": "ipamScopeType" + "smithy.api#enumValue": "m5dn.xlarge" } }, - "IpamArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "m5dn_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamArn", - "smithy.api#documentation": "

The ARN of the IPAM.

", - "smithy.api#xmlName": "ipamArn" + "smithy.api#enumValue": "m5dn.2xlarge" } }, - "IpamRegion": { - "target": "com.amazonaws.ec2#String", + "m5dn_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamRegion", - "smithy.api#documentation": "

The Amazon Web Services Region of the IPAM pool.

", - "smithy.api#xmlName": "ipamRegion" + "smithy.api#enumValue": "m5dn.4xlarge" } }, - "Locale": { - "target": "com.amazonaws.ec2#String", + "m5dn_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Locale", - "smithy.api#documentation": "

The locale of the IPAM pool. In IPAM, the locale is the Amazon Web Services Region where you want to make an IPAM pool available for allocations. Only resources in the same Region as the locale of the pool can get IP address allocations from the pool. You can only allocate a CIDR for a VPC, for example, from an IPAM pool that shares a locale with the VPC’s Region. Note that once you choose a Locale for a pool, you cannot modify it. If you choose an Amazon Web Services Region for locale that has not been configured as an operating Region for the IPAM, you'll get an error.

", - "smithy.api#xmlName": "locale" + "smithy.api#enumValue": "m5dn.8xlarge" } }, - "PoolDepth": { - "target": "com.amazonaws.ec2#Integer", + "m5dn_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PoolDepth", - "smithy.api#documentation": "

The depth of pools in your IPAM pool. The pool depth quota is 10. For more information, see Quotas in IPAM in the Amazon VPC IPAM User Guide.\n

", - "smithy.api#xmlName": "poolDepth" + "smithy.api#enumValue": "m5dn.12xlarge" } }, - "State": { - "target": "com.amazonaws.ec2#IpamPoolState", + "m5dn_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the IPAM pool.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "m5dn.16xlarge" } }, - "StateMessage": { - "target": "com.amazonaws.ec2#String", + "m5dn_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "StateMessage", - "smithy.api#documentation": "

The state message.

", - "smithy.api#xmlName": "stateMessage" + "smithy.api#enumValue": "m5dn.24xlarge" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "m5dn_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

The description of the IPAM pool.

", - "smithy.api#xmlName": "description" + "smithy.api#enumValue": "m5dn.metal" } }, - "AutoImport": { - "target": "com.amazonaws.ec2#Boolean", + "m5n_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AutoImport", - "smithy.api#documentation": "

If selected, IPAM will continuously look for resources within the CIDR range of this pool \n and automatically import them as allocations into your IPAM. The CIDRs that will be allocated for\n these resources must not already be allocated to other resources in order for the import to succeed. IPAM will import \n a CIDR regardless of its compliance with the pool's allocation rules, so a resource might be imported and subsequently \n marked as noncompliant. If IPAM discovers multiple CIDRs that overlap, IPAM will import the largest CIDR only. If IPAM \n discovers multiple CIDRs with matching CIDRs, IPAM will randomly import one of them only.\n

\n

A locale must be set on the pool for this feature to work.

", - "smithy.api#xmlName": "autoImport" + "smithy.api#enumValue": "m5n.large" } }, - "PubliclyAdvertisable": { - "target": "com.amazonaws.ec2#Boolean", + "m5n_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PubliclyAdvertisable", - "smithy.api#documentation": "

Determines if a pool is publicly advertisable. This option is not available for pools with AddressFamily set to ipv4.

", - "smithy.api#xmlName": "publiclyAdvertisable" + "smithy.api#enumValue": "m5n.xlarge" } }, - "AddressFamily": { - "target": "com.amazonaws.ec2#AddressFamily", + "m5n_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AddressFamily", - "smithy.api#documentation": "

The address family of the pool.

", - "smithy.api#xmlName": "addressFamily" + "smithy.api#enumValue": "m5n.2xlarge" } }, - "AllocationMinNetmaskLength": { - "target": "com.amazonaws.ec2#IpamNetmaskLength", + "m5n_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AllocationMinNetmaskLength", - "smithy.api#documentation": "

The minimum netmask length required for CIDR allocations in this IPAM pool to be compliant. The minimum netmask length must be less than the maximum netmask length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.

", - "smithy.api#xmlName": "allocationMinNetmaskLength" + "smithy.api#enumValue": "m5n.4xlarge" } }, - "AllocationMaxNetmaskLength": { - "target": "com.amazonaws.ec2#IpamNetmaskLength", + "m5n_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AllocationMaxNetmaskLength", - "smithy.api#documentation": "

The maximum netmask length possible for CIDR allocations in this IPAM pool to be compliant. The maximum netmask length must be greater than the minimum netmask length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.

", - "smithy.api#xmlName": "allocationMaxNetmaskLength" + "smithy.api#enumValue": "m5n.8xlarge" } }, - "AllocationDefaultNetmaskLength": { - "target": "com.amazonaws.ec2#IpamNetmaskLength", + "m5n_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AllocationDefaultNetmaskLength", - "smithy.api#documentation": "

The default netmask length for allocations added to this pool. If, for example, the CIDR assigned to this pool is 10.0.0.0/8 and \n you enter 16 here, new allocations will default to 10.0.0.0/16.

", - "smithy.api#xmlName": "allocationDefaultNetmaskLength" + "smithy.api#enumValue": "m5n.12xlarge" } }, - "AllocationResourceTags": { - "target": "com.amazonaws.ec2#IpamResourceTagList", + "m5n_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AllocationResourceTagSet", - "smithy.api#documentation": "

Tags that are required for resources that use CIDRs from this IPAM pool. Resources that do not have these tags will not be allowed to allocate space from the pool. If the resources have their tags changed after they have allocated space or if the allocation tagging requirements are changed on the pool, the resource may be marked as noncompliant.

", - "smithy.api#xmlName": "allocationResourceTagSet" + "smithy.api#enumValue": "m5n.16xlarge" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "m5n_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "m5n.24xlarge" } }, - "AwsService": { - "target": "com.amazonaws.ec2#IpamPoolAwsService", + "m5n_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AwsService", - "smithy.api#documentation": "

Limits which service in Amazon Web Services that the pool can be used in. \"ec2\", for example, allows users to use space for Elastic IP addresses and VPCs.

", - "smithy.api#xmlName": "awsService" + "smithy.api#enumValue": "m5n.metal" } }, - "PublicIpSource": { - "target": "com.amazonaws.ec2#IpamPoolPublicIpSource", + "m5zn_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PublicIpSource", - "smithy.api#documentation": "

The IP address source for pools in the public scope. Only used for provisioning IP address CIDRs to pools in the public scope. Default is BYOIP. For more information, see Create IPv6 pools in the Amazon VPC IPAM User Guide. \n By default, you can add only one Amazon-provided IPv6 CIDR block to a top-level IPv6 pool. For information on increasing the default limit, see Quotas for your IPAM in the Amazon VPC IPAM User Guide.

", - "smithy.api#xmlName": "publicIpSource" + "smithy.api#enumValue": "m5zn.large" } }, - "SourceResource": { - "target": "com.amazonaws.ec2#IpamPoolSourceResource", + "m5zn_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SourceResource", - "smithy.api#documentation": "

The resource used to provision CIDRs to a resource planning pool.

", - "smithy.api#xmlName": "sourceResource" + "smithy.api#enumValue": "m5zn.xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

In IPAM, a pool is a collection of contiguous IP addresses CIDRs. Pools enable you to organize your IP addresses according to your routing and security needs. For example, if you have separate routing and security needs for development and production applications, you can create a pool for each.

" - } - }, - "com.amazonaws.ec2#IpamPoolAllocation": { - "type": "structure", - "members": { - "Cidr": { - "target": "com.amazonaws.ec2#String", + }, + "m5zn_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Cidr", - "smithy.api#documentation": "

The CIDR for the allocation. A CIDR is a representation of an IP address and its associated network mask (or netmask) and \n refers to a range of IP addresses. An IPv4 CIDR example is 10.24.34.0/23. An IPv6 CIDR example is 2001:DB8::/32.

", - "smithy.api#xmlName": "cidr" + "smithy.api#enumValue": "m5zn.2xlarge" } }, - "IpamPoolAllocationId": { - "target": "com.amazonaws.ec2#IpamPoolAllocationId", + "m5zn_3xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamPoolAllocationId", - "smithy.api#documentation": "

The ID of an allocation.

", - "smithy.api#xmlName": "ipamPoolAllocationId" + "smithy.api#enumValue": "m5zn.3xlarge" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "m5zn_6xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description of the pool allocation.

", - "smithy.api#xmlName": "description" + "smithy.api#enumValue": "m5zn.6xlarge" } }, - "ResourceId": { - "target": "com.amazonaws.ec2#String", + "m5zn_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceId", - "smithy.api#documentation": "

The ID of the resource.

", - "smithy.api#xmlName": "resourceId" + "smithy.api#enumValue": "m5zn.12xlarge" } }, - "ResourceType": { - "target": "com.amazonaws.ec2#IpamPoolAllocationResourceType", + "m5zn_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceType", - "smithy.api#documentation": "

The type of the resource.

", - "smithy.api#xmlName": "resourceType" + "smithy.api#enumValue": "m5zn.metal" } }, - "ResourceRegion": { - "target": "com.amazonaws.ec2#String", + "m6a_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceRegion", - "smithy.api#documentation": "

The Amazon Web Services Region of the resource.

", - "smithy.api#xmlName": "resourceRegion" + "smithy.api#enumValue": "m6a.large" } }, - "ResourceOwner": { - "target": "com.amazonaws.ec2#String", + "m6a_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceOwner", - "smithy.api#documentation": "

The owner of the resource.

", - "smithy.api#xmlName": "resourceOwner" + "smithy.api#enumValue": "m6a.xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

In IPAM, an allocation is a CIDR assignment from an IPAM pool to another IPAM pool or to a resource.

" - } - }, - "com.amazonaws.ec2#IpamPoolAllocationAllowedCidrs": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamPoolAllocationDisallowedCidrs": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamPoolAllocationId": { - "type": "string" - }, - "com.amazonaws.ec2#IpamPoolAllocationResourceType": { - "type": "enum", - "members": { - "ipam_pool": { + }, + "m6a_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ipam-pool" + "smithy.api#enumValue": "m6a.2xlarge" } }, - "vpc": { + "m6a_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "vpc" + "smithy.api#enumValue": "m6a.4xlarge" } }, - "ec2_public_ipv4_pool": { + "m6a_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ec2-public-ipv4-pool" + "smithy.api#enumValue": "m6a.8xlarge" } }, - "custom": { + "m6a_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "custom" + "smithy.api#enumValue": "m6a.12xlarge" } }, - "subnet": { + "m6a_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "subnet" + "smithy.api#enumValue": "m6a.16xlarge" } - } - } - }, - "com.amazonaws.ec2#IpamPoolAllocationSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpamPoolAllocation", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamPoolAwsService": { - "type": "enum", - "members": { - "ec2": { + }, + "m6a_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ec2" + "smithy.api#enumValue": "m6a.24xlarge" } - } - } - }, - "com.amazonaws.ec2#IpamPoolCidr": { - "type": "structure", - "members": { - "Cidr": { - "target": "com.amazonaws.ec2#String", + }, + "m6a_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Cidr", - "smithy.api#documentation": "

The CIDR provisioned to the IPAM pool. A CIDR is a representation of an IP address and its associated network mask (or netmask) \n and refers to a range of IP addresses. An IPv4 CIDR example is 10.24.34.0/23. An IPv6 CIDR example is 2001:DB8::/32.

", - "smithy.api#xmlName": "cidr" + "smithy.api#enumValue": "m6a.32xlarge" } }, - "State": { - "target": "com.amazonaws.ec2#IpamPoolCidrState", + "m6a_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the CIDR.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "m6a.48xlarge" } }, - "FailureReason": { - "target": "com.amazonaws.ec2#IpamPoolCidrFailureReason", + "m6g_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "FailureReason", - "smithy.api#documentation": "

Details related to why an IPAM pool CIDR failed to be provisioned.

", - "smithy.api#xmlName": "failureReason" + "smithy.api#enumValue": "m6g.metal" } }, - "IpamPoolCidrId": { - "target": "com.amazonaws.ec2#IpamPoolCidrId", + "m6g_medium": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamPoolCidrId", - "smithy.api#documentation": "

The IPAM pool CIDR ID.

", - "smithy.api#xmlName": "ipamPoolCidrId" + "smithy.api#enumValue": "m6g.medium" } }, - "NetmaskLength": { - "target": "com.amazonaws.ec2#Integer", + "m6g_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NetmaskLength", - "smithy.api#documentation": "

The netmask length of the CIDR you'd like to provision to a pool. Can be used for provisioning Amazon-provided IPv6 CIDRs to top-level pools and for provisioning CIDRs to pools with source pools. Cannot be used to provision BYOIP CIDRs to top-level pools. \"NetmaskLength\" or \"Cidr\" is required.

", - "smithy.api#xmlName": "netmaskLength" + "smithy.api#enumValue": "m6g.large" } - } - }, - "traits": { - "smithy.api#documentation": "

A CIDR provisioned to an IPAM pool.

" - } - }, - "com.amazonaws.ec2#IpamPoolCidrFailureCode": { - "type": "enum", - "members": { - "cidr_not_available": { + }, + "m6g_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "cidr-not-available" + "smithy.api#enumValue": "m6g.xlarge" } }, - "limit_exceeded": { + "m6g_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "limit-exceeded" + "smithy.api#enumValue": "m6g.2xlarge" } - } - } - }, - "com.amazonaws.ec2#IpamPoolCidrFailureReason": { - "type": "structure", - "members": { - "Code": { - "target": "com.amazonaws.ec2#IpamPoolCidrFailureCode", + }, + "m6g_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

An error code related to why an IPAM pool CIDR failed to be provisioned.

", - "smithy.api#xmlName": "code" + "smithy.api#enumValue": "m6g.4xlarge" } }, - "Message": { - "target": "com.amazonaws.ec2#String", + "m6g_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Message", - "smithy.api#documentation": "

A message related to why an IPAM pool CIDR failed to be provisioned.

", - "smithy.api#xmlName": "message" + "smithy.api#enumValue": "m6g.8xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Details related to why an IPAM pool CIDR failed to be provisioned.

" - } - }, - "com.amazonaws.ec2#IpamPoolCidrId": { - "type": "string" - }, - "com.amazonaws.ec2#IpamPoolCidrSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpamPoolCidr", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamPoolCidrState": { - "type": "enum", - "members": { - "pending_provision": { + }, + "m6g_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "pending-provision" + "smithy.api#enumValue": "m6g.12xlarge" } }, - "provisioned": { + "m6g_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "provisioned" + "smithy.api#enumValue": "m6g.16xlarge" } }, - "failed_provision": { + "m6gd_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "failed-provision" + "smithy.api#enumValue": "m6gd.metal" } }, - "pending_deprovision": { + "m6gd_medium": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "pending-deprovision" + "smithy.api#enumValue": "m6gd.medium" } }, - "deprovisioned": { + "m6gd_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "deprovisioned" + "smithy.api#enumValue": "m6gd.large" } }, - "failed_deprovision": { + "m6gd_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "failed-deprovision" + "smithy.api#enumValue": "m6gd.xlarge" } }, - "pending_import": { + "m6gd_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "pending-import" + "smithy.api#enumValue": "m6gd.2xlarge" } }, - "failed_import": { + "m6gd_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "failed-import" + "smithy.api#enumValue": "m6gd.4xlarge" } - } - } - }, - "com.amazonaws.ec2#IpamPoolId": { - "type": "string" - }, - "com.amazonaws.ec2#IpamPoolPublicIpSource": { - "type": "enum", - "members": { - "amazon": { + }, + "m6gd_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "amazon" + "smithy.api#enumValue": "m6gd.8xlarge" } }, - "byoip": { + "m6gd_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "byoip" + "smithy.api#enumValue": "m6gd.12xlarge" } - } - } - }, - "com.amazonaws.ec2#IpamPoolSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpamPool", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamPoolSourceResource": { - "type": "structure", - "members": { - "ResourceId": { - "target": "com.amazonaws.ec2#String", + }, + "m6gd_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceId", - "smithy.api#documentation": "

The source resource ID.

", - "smithy.api#xmlName": "resourceId" + "smithy.api#enumValue": "m6gd.16xlarge" } }, - "ResourceType": { - "target": "com.amazonaws.ec2#IpamPoolSourceResourceType", + "m6i_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceType", - "smithy.api#documentation": "

The source resource type.

", - "smithy.api#xmlName": "resourceType" + "smithy.api#enumValue": "m6i.large" } }, - "ResourceRegion": { - "target": "com.amazonaws.ec2#String", + "m6i_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceRegion", - "smithy.api#documentation": "

The source resource Region.

", - "smithy.api#xmlName": "resourceRegion" + "smithy.api#enumValue": "m6i.xlarge" } }, - "ResourceOwner": { - "target": "com.amazonaws.ec2#String", + "m6i_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceOwner", - "smithy.api#documentation": "

The source resource owner.

", - "smithy.api#xmlName": "resourceOwner" + "smithy.api#enumValue": "m6i.2xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The resource used to provision CIDRs to a resource planning pool.

" - } - }, - "com.amazonaws.ec2#IpamPoolSourceResourceRequest": { - "type": "structure", - "members": { - "ResourceId": { - "target": "com.amazonaws.ec2#String", + }, + "m6i_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The source resource ID.

" + "smithy.api#enumValue": "m6i.4xlarge" } }, - "ResourceType": { - "target": "com.amazonaws.ec2#IpamPoolSourceResourceType", + "m6i_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The source resource type.

" + "smithy.api#enumValue": "m6i.8xlarge" } }, - "ResourceRegion": { - "target": "com.amazonaws.ec2#String", + "m6i_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The source resource Region.

" + "smithy.api#enumValue": "m6i.12xlarge" } }, - "ResourceOwner": { - "target": "com.amazonaws.ec2#String", + "m6i_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The source resource owner.

" + "smithy.api#enumValue": "m6i.16xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The resource used to provision CIDRs to a resource planning pool.

" - } - }, - "com.amazonaws.ec2#IpamPoolSourceResourceType": { - "type": "enum", - "members": { - "vpc": { + }, + "m6i_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "vpc" + "smithy.api#enumValue": "m6i.24xlarge" } - } - } - }, - "com.amazonaws.ec2#IpamPoolState": { - "type": "enum", - "members": { - "create_in_progress": { + }, + "m6i_32xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "create-in-progress" + "smithy.api#enumValue": "m6i.32xlarge" } }, - "create_complete": { + "m6i_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "create-complete" + "smithy.api#enumValue": "m6i.metal" } }, - "create_failed": { + "mac1_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "create-failed" + "smithy.api#enumValue": "mac1.metal" } }, - "modify_in_progress": { + "p2_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "modify-in-progress" + "smithy.api#enumValue": "p2.xlarge" } }, - "modify_complete": { + "p2_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "modify-complete" + "smithy.api#enumValue": "p2.8xlarge" } }, - "modify_failed": { + "p2_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "modify-failed" + "smithy.api#enumValue": "p2.16xlarge" } }, - "delete_in_progress": { + "p3_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "delete-in-progress" + "smithy.api#enumValue": "p3.2xlarge" } }, - "delete_complete": { + "p3_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "delete-complete" + "smithy.api#enumValue": "p3.8xlarge" } }, - "delete_failed": { + "p3_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "delete-failed" + "smithy.api#enumValue": "p3.16xlarge" } }, - "isolate_in_progress": { + "p3dn_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "isolate-in-progress" + "smithy.api#enumValue": "p3dn.24xlarge" } }, - "isolate_complete": { + "p4d_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "isolate-complete" + "smithy.api#enumValue": "p4d.24xlarge" } }, - "restore_in_progress": { + "r3_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "restore-in-progress" + "smithy.api#enumValue": "r3.large" } - } - } - }, - "com.amazonaws.ec2#IpamPublicAddressAssociationStatus": { - "type": "enum", - "members": { - "ASSOCIATED": { + }, + "r3_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "associated" + "smithy.api#enumValue": "r3.xlarge" } }, - "DISASSOCIATED": { + "r3_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "disassociated" + "smithy.api#enumValue": "r3.2xlarge" } - } - } - }, - "com.amazonaws.ec2#IpamPublicAddressAwsService": { - "type": "enum", - "members": { - "NAT_GATEWAY": { + }, + "r3_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "nat-gateway" + "smithy.api#enumValue": "r3.4xlarge" } }, - "DMS": { + "r3_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "database-migration-service" + "smithy.api#enumValue": "r3.8xlarge" } }, - "REDSHIFT": { + "r4_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "redshift" + "smithy.api#enumValue": "r4.large" } }, - "ECS": { + "r4_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "elastic-container-service" + "smithy.api#enumValue": "r4.xlarge" } }, - "RDS": { + "r4_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "relational-database-service" + "smithy.api#enumValue": "r4.2xlarge" } }, - "S2S_VPN": { + "r4_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "site-to-site-vpn" + "smithy.api#enumValue": "r4.4xlarge" } }, - "EC2_LB": { + "r4_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "load-balancer" + "smithy.api#enumValue": "r4.8xlarge" } }, - "AGA": { + "r4_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "global-accelerator" + "smithy.api#enumValue": "r4.16xlarge" } }, - "OTHER": { + "r5_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "other" + "smithy.api#enumValue": "r5.large" } - } - } - }, - "com.amazonaws.ec2#IpamPublicAddressSecurityGroup": { - "type": "structure", - "members": { - "GroupName": { - "target": "com.amazonaws.ec2#String", + }, + "r5_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "GroupName", - "smithy.api#documentation": "

The security group's name.

", - "smithy.api#xmlName": "groupName" + "smithy.api#enumValue": "r5.xlarge" } }, - "GroupId": { - "target": "com.amazonaws.ec2#String", + "r5_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "GroupId", - "smithy.api#documentation": "

The security group's ID.

", - "smithy.api#xmlName": "groupId" + "smithy.api#enumValue": "r5.2xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The security group that the resource with the public IP address is in.

" - } - }, - "com.amazonaws.ec2#IpamPublicAddressSecurityGroupList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpamPublicAddressSecurityGroup", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamPublicAddressTag": { - "type": "structure", - "members": { - "Key": { - "target": "com.amazonaws.ec2#String", + }, + "r5_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Key", - "smithy.api#documentation": "

The tag's key.

", - "smithy.api#xmlName": "key" + "smithy.api#enumValue": "r5.4xlarge" } }, - "Value": { - "target": "com.amazonaws.ec2#String", + "r5_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Value", - "smithy.api#documentation": "

The tag's value.

", - "smithy.api#xmlName": "value" + "smithy.api#enumValue": "r5.8xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

A tag for a public IP address discovered by IPAM.

" - } - }, - "com.amazonaws.ec2#IpamPublicAddressTagList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpamPublicAddressTag", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamPublicAddressTags": { - "type": "structure", - "members": { - "EipTags": { - "target": "com.amazonaws.ec2#IpamPublicAddressTagList", + }, + "r5_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EipTagSet", - "smithy.api#documentation": "

Tags for an Elastic IP address.

", - "smithy.api#xmlName": "eipTagSet" + "smithy.api#enumValue": "r5.12xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Tags for a public IP address discovered by IPAM.

" - } - }, - "com.amazonaws.ec2#IpamPublicAddressType": { - "type": "enum", - "members": { - "SERVICE_MANAGED_IP": { + }, + "r5_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "service-managed-ip" + "smithy.api#enumValue": "r5.16xlarge" } }, - "SERVICE_MANAGED_BYOIP": { + "r5_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "service-managed-byoip" + "smithy.api#enumValue": "r5.24xlarge" } }, - "AMAZON_OWNED_EIP": { + "r5_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "amazon-owned-eip" + "smithy.api#enumValue": "r5.metal" } }, - "BYOIP": { + "r5a_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "byoip" + "smithy.api#enumValue": "r5a.large" } }, - "EC2_PUBLIC_IP": { + "r5a_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ec2-public-ip" - } - } - } - }, - "com.amazonaws.ec2#IpamResourceCidr": { - "type": "structure", - "members": { - "IpamId": { - "target": "com.amazonaws.ec2#IpamId", - "traits": { - "aws.protocols#ec2QueryName": "IpamId", - "smithy.api#documentation": "

The IPAM ID for an IPAM resource.

", - "smithy.api#xmlName": "ipamId" + "smithy.api#enumValue": "r5a.xlarge" } }, - "IpamScopeId": { - "target": "com.amazonaws.ec2#IpamScopeId", + "r5a_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamScopeId", - "smithy.api#documentation": "

The scope ID for an IPAM resource.

", - "smithy.api#xmlName": "ipamScopeId" + "smithy.api#enumValue": "r5a.2xlarge" } }, - "IpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", + "r5a_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamPoolId", - "smithy.api#documentation": "

The pool ID for an IPAM resource.

", - "smithy.api#xmlName": "ipamPoolId" + "smithy.api#enumValue": "r5a.4xlarge" } }, - "ResourceRegion": { - "target": "com.amazonaws.ec2#String", + "r5a_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceRegion", - "smithy.api#documentation": "

The Amazon Web Services Region for an IPAM resource.

", - "smithy.api#xmlName": "resourceRegion" + "smithy.api#enumValue": "r5a.8xlarge" } }, - "ResourceOwnerId": { - "target": "com.amazonaws.ec2#String", + "r5a_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceOwnerId", - "smithy.api#documentation": "

The Amazon Web Services account number of the owner of an IPAM resource.

", - "smithy.api#xmlName": "resourceOwnerId" + "smithy.api#enumValue": "r5a.12xlarge" } }, - "ResourceId": { - "target": "com.amazonaws.ec2#String", + "r5a_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceId", - "smithy.api#documentation": "

The ID of an IPAM resource.

", - "smithy.api#xmlName": "resourceId" + "smithy.api#enumValue": "r5a.16xlarge" } }, - "ResourceName": { - "target": "com.amazonaws.ec2#String", + "r5a_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceName", - "smithy.api#documentation": "

The name of an IPAM resource.

", - "smithy.api#xmlName": "resourceName" + "smithy.api#enumValue": "r5a.24xlarge" } }, - "ResourceCidr": { - "target": "com.amazonaws.ec2#String", + "r5ad_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceCidr", - "smithy.api#documentation": "

The CIDR for an IPAM resource.

", - "smithy.api#xmlName": "resourceCidr" + "smithy.api#enumValue": "r5ad.large" } }, - "ResourceType": { - "target": "com.amazonaws.ec2#IpamResourceType", + "r5ad_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceType", - "smithy.api#documentation": "

The type of IPAM resource.

", - "smithy.api#xmlName": "resourceType" + "smithy.api#enumValue": "r5ad.xlarge" } }, - "ResourceTags": { - "target": "com.amazonaws.ec2#IpamResourceTagList", + "r5ad_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceTagSet", - "smithy.api#documentation": "

The tags for an IPAM resource.

", - "smithy.api#xmlName": "resourceTagSet" + "smithy.api#enumValue": "r5ad.2xlarge" } }, - "IpUsage": { - "target": "com.amazonaws.ec2#BoxedDouble", + "r5ad_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpUsage", - "smithy.api#documentation": "

The percentage of IP address space in use. To convert the decimal to a percentage, multiply the decimal by 100. Note the following:

\n ", - "smithy.api#xmlName": "ipUsage" + "smithy.api#enumValue": "r5ad.4xlarge" } }, - "ComplianceStatus": { - "target": "com.amazonaws.ec2#IpamComplianceStatus", + "r5ad_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ComplianceStatus", - "smithy.api#documentation": "

The compliance status of the IPAM resource. For more information on compliance statuses, see Monitor CIDR usage by resource in the Amazon VPC IPAM User Guide.

", - "smithy.api#xmlName": "complianceStatus" + "smithy.api#enumValue": "r5ad.8xlarge" } }, - "ManagementState": { - "target": "com.amazonaws.ec2#IpamManagementState", + "r5ad_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ManagementState", - "smithy.api#documentation": "

The management state of the resource. For more information about management states, see Monitor CIDR usage by resource in the Amazon VPC IPAM User Guide.

", - "smithy.api#xmlName": "managementState" + "smithy.api#enumValue": "r5ad.12xlarge" } }, - "OverlapStatus": { - "target": "com.amazonaws.ec2#IpamOverlapStatus", + "r5ad_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OverlapStatus", - "smithy.api#documentation": "

The overlap status of an IPAM resource. The overlap status tells you if the CIDR for a resource overlaps with another CIDR in the scope. For more information on overlap statuses, see Monitor CIDR usage by resource in the Amazon VPC IPAM User Guide.

", - "smithy.api#xmlName": "overlapStatus" + "smithy.api#enumValue": "r5ad.16xlarge" } }, - "VpcId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of a VPC.

", - "smithy.api#xmlName": "vpcId" - } - } - }, - "traits": { - "smithy.api#documentation": "

The CIDR for an IPAM resource.

" - } - }, - "com.amazonaws.ec2#IpamResourceCidrSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpamResourceCidr", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamResourceDiscovery": { - "type": "structure", - "members": { - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "r5ad_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the owner.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "r5ad.24xlarge" } }, - "IpamResourceDiscoveryId": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", + "r5b_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamResourceDiscoveryId", - "smithy.api#documentation": "

The resource discovery ID.

", - "smithy.api#xmlName": "ipamResourceDiscoveryId" + "smithy.api#enumValue": "r5b.large" } }, - "IpamResourceDiscoveryArn": { - "target": "com.amazonaws.ec2#String", + "r5b_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamResourceDiscoveryArn", - "smithy.api#documentation": "

The resource discovery Amazon Resource Name (ARN).

", - "smithy.api#xmlName": "ipamResourceDiscoveryArn" + "smithy.api#enumValue": "r5b.xlarge" } }, - "IpamResourceDiscoveryRegion": { - "target": "com.amazonaws.ec2#String", + "r5b_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamResourceDiscoveryRegion", - "smithy.api#documentation": "

The resource discovery Region.

", - "smithy.api#xmlName": "ipamResourceDiscoveryRegion" + "smithy.api#enumValue": "r5b.2xlarge" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "r5b_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

The resource discovery description.

", - "smithy.api#xmlName": "description" + "smithy.api#enumValue": "r5b.4xlarge" } }, - "OperatingRegions": { - "target": "com.amazonaws.ec2#IpamOperatingRegionSet", + "r5b_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OperatingRegionSet", - "smithy.api#documentation": "

The operating Regions for the resource discovery. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

", - "smithy.api#xmlName": "operatingRegionSet" + "smithy.api#enumValue": "r5b.8xlarge" } }, - "IsDefault": { - "target": "com.amazonaws.ec2#Boolean", + "r5b_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IsDefault", - "smithy.api#documentation": "

Defines if the resource discovery is the default. The default resource discovery is the resource discovery automatically created when you create an IPAM.

", - "smithy.api#xmlName": "isDefault" + "smithy.api#enumValue": "r5b.12xlarge" } }, - "State": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryState", + "r5b_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The lifecycle state of the resource discovery.

\n ", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "r5b.16xlarge" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", - "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key and an optional value. You can use tags to search and filter your resources or track your Amazon Web Services costs.

", - "smithy.api#xmlName": "tagSet" - } - } - }, - "traits": { - "smithy.api#documentation": "

A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

" - } - }, - "com.amazonaws.ec2#IpamResourceDiscoveryAssociation": { - "type": "structure", - "members": { - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "r5b_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The Amazon Web Services account ID of the resource discovery owner.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "r5b.24xlarge" } }, - "IpamResourceDiscoveryAssociationId": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryAssociationId", + "r5b_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamResourceDiscoveryAssociationId", - "smithy.api#documentation": "

The resource discovery association ID.

", - "smithy.api#xmlName": "ipamResourceDiscoveryAssociationId" + "smithy.api#enumValue": "r5b.metal" } }, - "IpamResourceDiscoveryAssociationArn": { - "target": "com.amazonaws.ec2#String", + "r5d_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamResourceDiscoveryAssociationArn", - "smithy.api#documentation": "

The resource discovery association Amazon Resource Name (ARN).

", - "smithy.api#xmlName": "ipamResourceDiscoveryAssociationArn" + "smithy.api#enumValue": "r5d.large" } }, - "IpamResourceDiscoveryId": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", + "r5d_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamResourceDiscoveryId", - "smithy.api#documentation": "

The resource discovery ID.

", - "smithy.api#xmlName": "ipamResourceDiscoveryId" + "smithy.api#enumValue": "r5d.xlarge" } }, - "IpamId": { - "target": "com.amazonaws.ec2#IpamId", + "r5d_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamId", - "smithy.api#documentation": "

The IPAM ID.

", - "smithy.api#xmlName": "ipamId" + "smithy.api#enumValue": "r5d.2xlarge" } }, - "IpamArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "r5d_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamArn", - "smithy.api#documentation": "

The IPAM ARN.

", - "smithy.api#xmlName": "ipamArn" + "smithy.api#enumValue": "r5d.4xlarge" } }, - "IpamRegion": { - "target": "com.amazonaws.ec2#String", + "r5d_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamRegion", - "smithy.api#documentation": "

The IPAM home Region.

", - "smithy.api#xmlName": "ipamRegion" + "smithy.api#enumValue": "r5d.8xlarge" } }, - "IsDefault": { - "target": "com.amazonaws.ec2#Boolean", + "r5d_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IsDefault", - "smithy.api#documentation": "

Defines if the resource discovery is the default. When you create an IPAM, a default resource discovery is created for your IPAM and it's associated with your IPAM.

", - "smithy.api#xmlName": "isDefault" + "smithy.api#enumValue": "r5d.12xlarge" } }, - "ResourceDiscoveryStatus": { - "target": "com.amazonaws.ec2#IpamAssociatedResourceDiscoveryStatus", + "r5d_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceDiscoveryStatus", - "smithy.api#documentation": "

The resource discovery status.

\n ", - "smithy.api#xmlName": "resourceDiscoveryStatus" + "smithy.api#enumValue": "r5d.16xlarge" } }, - "State": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryAssociationState", + "r5d_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The lifecycle state of the association when you associate or disassociate a resource discovery.

\n ", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "r5d.24xlarge" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", - "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key and an optional value. You can use tags to search and filter your resources or track your Amazon Web Services costs.

", - "smithy.api#xmlName": "tagSet" - } - } - }, - "traits": { - "smithy.api#documentation": "

An IPAM resource discovery association. An associated resource discovery is a resource discovery that has been associated with an IPAM. IPAM aggregates the resource CIDRs discovered by the associated resource discovery.

" - } - }, - "com.amazonaws.ec2#IpamResourceDiscoveryAssociationId": { - "type": "string" - }, - "com.amazonaws.ec2#IpamResourceDiscoveryAssociationSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryAssociation", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamResourceDiscoveryAssociationState": { - "type": "enum", - "members": { - "ASSOCIATE_IN_PROGRESS": { + "r5d_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "associate-in-progress" + "smithy.api#enumValue": "r5d.metal" } }, - "ASSOCIATE_COMPLETE": { + "r5dn_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "associate-complete" + "smithy.api#enumValue": "r5dn.large" } }, - "ASSOCIATE_FAILED": { + "r5dn_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "associate-failed" + "smithy.api#enumValue": "r5dn.xlarge" } }, - "DISASSOCIATE_IN_PROGRESS": { + "r5dn_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "disassociate-in-progress" + "smithy.api#enumValue": "r5dn.2xlarge" } }, - "DISASSOCIATE_COMPLETE": { + "r5dn_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "disassociate-complete" + "smithy.api#enumValue": "r5dn.4xlarge" } }, - "DISASSOCIATE_FAILED": { + "r5dn_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "disassociate-failed" + "smithy.api#enumValue": "r5dn.8xlarge" } }, - "ISOLATE_IN_PROGRESS": { + "r5dn_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "isolate-in-progress" + "smithy.api#enumValue": "r5dn.12xlarge" } }, - "ISOLATE_COMPLETE": { + "r5dn_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "isolate-complete" + "smithy.api#enumValue": "r5dn.16xlarge" } }, - "RESTORE_IN_PROGRESS": { + "r5dn_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "restore-in-progress" + "smithy.api#enumValue": "r5dn.24xlarge" } - } - } - }, - "com.amazonaws.ec2#IpamResourceDiscoveryId": { - "type": "string" - }, - "com.amazonaws.ec2#IpamResourceDiscoverySet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpamResourceDiscovery", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamResourceDiscoveryState": { - "type": "enum", - "members": { - "CREATE_IN_PROGRESS": { + }, + "r5dn_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "create-in-progress" + "smithy.api#enumValue": "r5dn.metal" } }, - "CREATE_COMPLETE": { + "r5n_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "create-complete" + "smithy.api#enumValue": "r5n.large" } }, - "CREATE_FAILED": { + "r5n_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "create-failed" + "smithy.api#enumValue": "r5n.xlarge" } }, - "MODIFY_IN_PROGRESS": { + "r5n_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "modify-in-progress" + "smithy.api#enumValue": "r5n.2xlarge" } }, - "MODIFY_COMPLETE": { + "r5n_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "modify-complete" + "smithy.api#enumValue": "r5n.4xlarge" } }, - "MODIFY_FAILED": { + "r5n_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "modify-failed" + "smithy.api#enumValue": "r5n.8xlarge" } }, - "DELETE_IN_PROGRESS": { + "r5n_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "delete-in-progress" + "smithy.api#enumValue": "r5n.12xlarge" } }, - "DELETE_COMPLETE": { + "r5n_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "delete-complete" + "smithy.api#enumValue": "r5n.16xlarge" } }, - "DELETE_FAILED": { + "r5n_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "delete-failed" + "smithy.api#enumValue": "r5n.24xlarge" } }, - "ISOLATE_IN_PROGRESS": { + "r5n_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "isolate-in-progress" + "smithy.api#enumValue": "r5n.metal" } }, - "ISOLATE_COMPLETE": { + "r6g_medium": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "isolate-complete" + "smithy.api#enumValue": "r6g.medium" } }, - "RESTORE_IN_PROGRESS": { + "r6g_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "restore-in-progress" - } - } - } - }, - "com.amazonaws.ec2#IpamResourceTag": { - "type": "structure", - "members": { - "Key": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Key", - "smithy.api#documentation": "

The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

", - "smithy.api#xmlName": "key" + "smithy.api#enumValue": "r6g.large" } }, - "Value": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Value", - "smithy.api#documentation": "

The value of the tag.

", - "smithy.api#xmlName": "value" - } - } - }, - "traits": { - "smithy.api#documentation": "

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

" - } - }, - "com.amazonaws.ec2#IpamResourceTagList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpamResourceTag", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamResourceType": { - "type": "enum", - "members": { - "vpc": { + "r6g_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "vpc" + "smithy.api#enumValue": "r6g.xlarge" } }, - "subnet": { + "r6g_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "subnet" + "smithy.api#enumValue": "r6g.2xlarge" } }, - "eip": { + "r6g_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "eip" + "smithy.api#enumValue": "r6g.4xlarge" } }, - "public_ipv4_pool": { + "r6g_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "public-ipv4-pool" + "smithy.api#enumValue": "r6g.8xlarge" } }, - "ipv6_pool": { + "r6g_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ipv6-pool" + "smithy.api#enumValue": "r6g.12xlarge" } }, - "eni": { + "r6g_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "eni" + "smithy.api#enumValue": "r6g.16xlarge" } - } - } - }, - "com.amazonaws.ec2#IpamScope": { - "type": "structure", - "members": { - "OwnerId": { - "target": "com.amazonaws.ec2#String", + }, + "r6g_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the scope.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "r6g.metal" } }, - "IpamScopeId": { - "target": "com.amazonaws.ec2#IpamScopeId", + "r6gd_medium": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamScopeId", - "smithy.api#documentation": "

The ID of the scope.

", - "smithy.api#xmlName": "ipamScopeId" + "smithy.api#enumValue": "r6gd.medium" } }, - "IpamScopeArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "r6gd_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamScopeArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the scope.

", - "smithy.api#xmlName": "ipamScopeArn" + "smithy.api#enumValue": "r6gd.large" } }, - "IpamArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "r6gd_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamArn", - "smithy.api#documentation": "

The ARN of the IPAM.

", - "smithy.api#xmlName": "ipamArn" + "smithy.api#enumValue": "r6gd.xlarge" } }, - "IpamRegion": { - "target": "com.amazonaws.ec2#String", + "r6gd_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamRegion", - "smithy.api#documentation": "

The Amazon Web Services Region of the IPAM scope.

", - "smithy.api#xmlName": "ipamRegion" + "smithy.api#enumValue": "r6gd.2xlarge" } }, - "IpamScopeType": { - "target": "com.amazonaws.ec2#IpamScopeType", + "r6gd_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamScopeType", - "smithy.api#documentation": "

The type of the scope.

", - "smithy.api#xmlName": "ipamScopeType" + "smithy.api#enumValue": "r6gd.4xlarge" } }, - "IsDefault": { - "target": "com.amazonaws.ec2#Boolean", + "r6gd_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IsDefault", - "smithy.api#documentation": "

Defines if the scope is the default scope or not.

", - "smithy.api#xmlName": "isDefault" + "smithy.api#enumValue": "r6gd.8xlarge" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "r6gd_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

The description of the scope.

", - "smithy.api#xmlName": "description" + "smithy.api#enumValue": "r6gd.12xlarge" } }, - "PoolCount": { - "target": "com.amazonaws.ec2#Integer", + "r6gd_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PoolCount", - "smithy.api#documentation": "

The number of pools in the scope.

", - "smithy.api#xmlName": "poolCount" + "smithy.api#enumValue": "r6gd.16xlarge" } }, - "State": { - "target": "com.amazonaws.ec2#IpamScopeState", + "r6gd_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the IPAM scope.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "r6gd.metal" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "r6i_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "r6i.large" } - } - }, - "traits": { - "smithy.api#documentation": "

In IPAM, a scope is the highest-level container within IPAM. An IPAM contains two default scopes. Each scope represents the IP space for a single network. The private scope is intended for all private IP address space. The public scope is intended for all public IP address space. Scopes enable you to reuse IP addresses across multiple unconnected networks without causing IP address overlap or conflict.

\n

For more information, see How IPAM works in the Amazon VPC IPAM User Guide.

" - } - }, - "com.amazonaws.ec2#IpamScopeId": { - "type": "string" - }, - "com.amazonaws.ec2#IpamScopeSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#IpamScope", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamScopeState": { - "type": "enum", - "members": { - "create_in_progress": { + }, + "r6i_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "create-in-progress" + "smithy.api#enumValue": "r6i.xlarge" } }, - "create_complete": { + "r6i_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "create-complete" + "smithy.api#enumValue": "r6i.2xlarge" } }, - "create_failed": { + "r6i_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "create-failed" + "smithy.api#enumValue": "r6i.4xlarge" } }, - "modify_in_progress": { + "r6i_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "modify-in-progress" + "smithy.api#enumValue": "r6i.8xlarge" } }, - "modify_complete": { + "r6i_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "modify-complete" + "smithy.api#enumValue": "r6i.12xlarge" } }, - "modify_failed": { + "r6i_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "modify-failed" + "smithy.api#enumValue": "r6i.16xlarge" } }, - "delete_in_progress": { + "r6i_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "delete-in-progress" + "smithy.api#enumValue": "r6i.24xlarge" } }, - "delete_complete": { + "r6i_32xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "delete-complete" + "smithy.api#enumValue": "r6i.32xlarge" } }, - "delete_failed": { + "r6i_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "delete-failed" + "smithy.api#enumValue": "r6i.metal" } }, - "isolate_in_progress": { + "t1_micro": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "isolate-in-progress" + "smithy.api#enumValue": "t1.micro" } }, - "isolate_complete": { + "t2_nano": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "isolate-complete" + "smithy.api#enumValue": "t2.nano" } }, - "restore_in_progress": { + "t2_micro": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "restore-in-progress" + "smithy.api#enumValue": "t2.micro" } - } - } - }, - "com.amazonaws.ec2#IpamScopeType": { - "type": "enum", - "members": { - "public": { + }, + "t2_small": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "public" + "smithy.api#enumValue": "t2.small" } }, - "private": { + "t2_medium": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "private" + "smithy.api#enumValue": "t2.medium" } - } - } - }, - "com.amazonaws.ec2#IpamSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Ipam", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#IpamState": { - "type": "enum", - "members": { - "create_in_progress": { + }, + "t2_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "create-in-progress" + "smithy.api#enumValue": "t2.large" } }, - "create_complete": { + "t2_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "create-complete" + "smithy.api#enumValue": "t2.xlarge" } }, - "create_failed": { + "t2_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "create-failed" + "smithy.api#enumValue": "t2.2xlarge" } }, - "modify_in_progress": { + "t3_nano": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "modify-in-progress" + "smithy.api#enumValue": "t3.nano" } }, - "modify_complete": { + "t3_micro": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "modify-complete" + "smithy.api#enumValue": "t3.micro" } }, - "modify_failed": { + "t3_small": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "modify-failed" + "smithy.api#enumValue": "t3.small" } }, - "delete_in_progress": { + "t3_medium": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "delete-in-progress" + "smithy.api#enumValue": "t3.medium" } }, - "delete_complete": { + "t3_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "delete-complete" + "smithy.api#enumValue": "t3.large" } }, - "delete_failed": { + "t3_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "delete-failed" + "smithy.api#enumValue": "t3.xlarge" } }, - "isolate_in_progress": { + "t3_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "isolate-in-progress" + "smithy.api#enumValue": "t3.2xlarge" } }, - "isolate_complete": { + "t3a_nano": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "isolate-complete" + "smithy.api#enumValue": "t3a.nano" } }, - "restore_in_progress": { + "t3a_micro": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "restore-in-progress" + "smithy.api#enumValue": "t3a.micro" } - } - } - }, - "com.amazonaws.ec2#IpamTier": { - "type": "enum", - "members": { - "free": { + }, + "t3a_small": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "free" + "smithy.api#enumValue": "t3a.small" } }, - "advanced": { + "t3a_medium": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "advanced" + "smithy.api#enumValue": "t3a.medium" } - } - } - }, - "com.amazonaws.ec2#Ipv4PoolCoipId": { - "type": "string" - }, - "com.amazonaws.ec2#Ipv4PoolEc2Id": { - "type": "string" - }, - "com.amazonaws.ec2#Ipv4PrefixList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Ipv4PrefixSpecificationRequest", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Ipv4PrefixListResponse": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Ipv4PrefixSpecificationResponse", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Ipv4PrefixSpecification": { - "type": "structure", - "members": { - "Ipv4Prefix": { - "target": "com.amazonaws.ec2#String", + }, + "t3a_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Ipv4Prefix", - "smithy.api#documentation": "

The IPv4 prefix. For information, see \n Assigning prefixes to Amazon EC2 network interfaces in the\n Amazon Elastic Compute Cloud User Guide.

", - "smithy.api#xmlName": "ipv4Prefix" + "smithy.api#enumValue": "t3a.large" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an IPv4 prefix.

" - } - }, - "com.amazonaws.ec2#Ipv4PrefixSpecificationRequest": { - "type": "structure", - "members": { - "Ipv4Prefix": { - "target": "com.amazonaws.ec2#String", + }, + "t3a_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The IPv4 prefix. For information, see \n Assigning prefixes to Amazon EC2 network interfaces in the\n Amazon Elastic Compute Cloud User Guide.

" + "smithy.api#enumValue": "t3a.xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the IPv4 prefix option for a network interface.

" - } - }, - "com.amazonaws.ec2#Ipv4PrefixSpecificationResponse": { - "type": "structure", - "members": { - "Ipv4Prefix": { - "target": "com.amazonaws.ec2#String", + }, + "t3a_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Ipv4Prefix", - "smithy.api#documentation": "

The IPv4 delegated prefixes assigned to the network interface.

", - "smithy.api#xmlName": "ipv4Prefix" + "smithy.api#enumValue": "t3a.2xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Information about the IPv4 delegated prefixes assigned \n to a network interface.

" - } - }, - "com.amazonaws.ec2#Ipv4PrefixesList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Ipv4PrefixSpecification", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Ipv6Address": { - "type": "string" - }, - "com.amazonaws.ec2#Ipv6AddressList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Ipv6CidrAssociation": { - "type": "structure", - "members": { - "Ipv6Cidr": { - "target": "com.amazonaws.ec2#String", + }, + "t4g_nano": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Ipv6Cidr", - "smithy.api#documentation": "

The IPv6 CIDR block.

", - "smithy.api#xmlName": "ipv6Cidr" + "smithy.api#enumValue": "t4g.nano" } }, - "AssociatedResource": { - "target": "com.amazonaws.ec2#String", + "t4g_micro": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AssociatedResource", - "smithy.api#documentation": "

The resource that's associated with the IPv6 CIDR block.

", - "smithy.api#xmlName": "associatedResource" + "smithy.api#enumValue": "t4g.micro" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an IPv6 CIDR block association.

" - } - }, - "com.amazonaws.ec2#Ipv6CidrAssociationSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Ipv6CidrAssociation", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Ipv6CidrBlock": { - "type": "structure", - "members": { - "Ipv6CidrBlock": { - "target": "com.amazonaws.ec2#String", + }, + "t4g_small": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Ipv6CidrBlock", - "smithy.api#documentation": "

The IPv6 CIDR block.

", - "smithy.api#xmlName": "ipv6CidrBlock" + "smithy.api#enumValue": "t4g.small" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an IPv6 CIDR block.

" - } - }, - "com.amazonaws.ec2#Ipv6CidrBlockSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Ipv6CidrBlock", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Ipv6Flag": { - "type": "boolean" - }, - "com.amazonaws.ec2#Ipv6Pool": { - "type": "structure", - "members": { - "PoolId": { - "target": "com.amazonaws.ec2#String", + }, + "t4g_medium": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PoolId", - "smithy.api#documentation": "

The ID of the address pool.

", - "smithy.api#xmlName": "poolId" + "smithy.api#enumValue": "t4g.medium" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "t4g_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

The description for the address pool.

", - "smithy.api#xmlName": "description" + "smithy.api#enumValue": "t4g.large" } }, - "PoolCidrBlocks": { - "target": "com.amazonaws.ec2#PoolCidrBlocksSet", + "t4g_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PoolCidrBlockSet", - "smithy.api#documentation": "

The CIDR blocks for the address pool.

", - "smithy.api#xmlName": "poolCidrBlockSet" + "smithy.api#enumValue": "t4g.xlarge" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "t4g_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags for the address pool.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "t4g.2xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an IPv6 address pool.

" - } - }, - "com.amazonaws.ec2#Ipv6PoolEc2Id": { - "type": "string" - }, - "com.amazonaws.ec2#Ipv6PoolIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Ipv6PoolEc2Id", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Ipv6PoolMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#Ipv6PoolSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Ipv6Pool", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Ipv6PrefixList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Ipv6PrefixSpecificationRequest", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Ipv6PrefixListResponse": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Ipv6PrefixSpecificationResponse", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Ipv6PrefixSpecification": { - "type": "structure", - "members": { - "Ipv6Prefix": { - "target": "com.amazonaws.ec2#String", + }, + "u_6tb1_56xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Ipv6Prefix", - "smithy.api#documentation": "

The IPv6 prefix.

", - "smithy.api#xmlName": "ipv6Prefix" + "smithy.api#enumValue": "u-6tb1.56xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the IPv6 prefix.

" - } - }, - "com.amazonaws.ec2#Ipv6PrefixSpecificationRequest": { - "type": "structure", - "members": { - "Ipv6Prefix": { - "target": "com.amazonaws.ec2#String", + }, + "u_6tb1_112xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The IPv6 prefix.

" + "smithy.api#enumValue": "u-6tb1.112xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the IPv4 prefix option for a network interface.

" - } - }, - "com.amazonaws.ec2#Ipv6PrefixSpecificationResponse": { - "type": "structure", - "members": { - "Ipv6Prefix": { - "target": "com.amazonaws.ec2#String", + }, + "u_9tb1_112xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Ipv6Prefix", - "smithy.api#documentation": "

The IPv6 delegated prefixes assigned to the network interface.

", - "smithy.api#xmlName": "ipv6Prefix" + "smithy.api#enumValue": "u-9tb1.112xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Information about the IPv6 delegated prefixes assigned \n to a network interface.

" - } - }, - "com.amazonaws.ec2#Ipv6PrefixesList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Ipv6PrefixSpecification", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Ipv6Range": { - "type": "structure", - "members": { - "CidrIpv6": { - "target": "com.amazonaws.ec2#String", + }, + "u_12tb1_112xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CidrIpv6", - "smithy.api#documentation": "

The IPv6 address range. You can either specify a CIDR block or a source security group,\n not both. To specify a single IPv6 address, use the /128 prefix length.

", - "smithy.api#xmlName": "cidrIpv6" + "smithy.api#enumValue": "u-12tb1.112xlarge" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "u_6tb1_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description for the security group rule that references this IPv6 address range.

\n

Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9,\n spaces, and ._-:/()#,@[]+=&;{}!$*

", - "smithy.api#xmlName": "description" + "smithy.api#enumValue": "u-6tb1.metal" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an IPv6 address range.

" - } - }, - "com.amazonaws.ec2#Ipv6RangeList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Ipv6Range", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Ipv6SupportValue": { - "type": "enum", - "members": { - "enable": { + }, + "u_9tb1_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "enable" + "smithy.api#enumValue": "u-9tb1.metal" } }, - "disable": { + "u_12tb1_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "disable" + "smithy.api#enumValue": "u-12tb1.metal" } - } - } - }, - "com.amazonaws.ec2#KernelId": { - "type": "string" - }, - "com.amazonaws.ec2#KeyFormat": { - "type": "enum", - "members": { - "pem": { + }, + "u_18tb1_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "pem" + "smithy.api#enumValue": "u-18tb1.metal" } }, - "ppk": { + "u_24tb1_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ppk" + "smithy.api#enumValue": "u-24tb1.metal" } - } - } - }, - "com.amazonaws.ec2#KeyNameStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#KeyPairName", - "traits": { - "smithy.api#xmlName": "KeyName" - } - } - }, - "com.amazonaws.ec2#KeyPair": { - "type": "structure", - "members": { - "KeyFingerprint": { - "target": "com.amazonaws.ec2#String", + }, + "vt1_3xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "KeyFingerprint", - "smithy.api#documentation": "", - "smithy.api#xmlName": "keyFingerprint" + "smithy.api#enumValue": "vt1.3xlarge" } }, - "KeyMaterial": { - "target": "com.amazonaws.ec2#SensitiveUserData", + "vt1_6xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "KeyMaterial", - "smithy.api#documentation": "

An unencrypted PEM encoded RSA or ED25519 private key.

", - "smithy.api#xmlName": "keyMaterial" + "smithy.api#enumValue": "vt1.6xlarge" } }, - "KeyName": { - "target": "com.amazonaws.ec2#String", + "vt1_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "KeyName", - "smithy.api#documentation": "

The name of the key pair.

", - "smithy.api#xmlName": "keyName" + "smithy.api#enumValue": "vt1.24xlarge" } }, - "KeyPairId": { - "target": "com.amazonaws.ec2#String", + "x1_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "KeyPairId", - "smithy.api#documentation": "

The ID of the key pair.

", - "smithy.api#xmlName": "keyPairId" + "smithy.api#enumValue": "x1.16xlarge" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "x1_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags applied to the key pair.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "x1.32xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a key pair.

" - } - }, - "com.amazonaws.ec2#KeyPairId": { - "type": "string" - }, - "com.amazonaws.ec2#KeyPairIdStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#KeyPairId", - "traits": { - "smithy.api#xmlName": "KeyPairId" - } - } - }, - "com.amazonaws.ec2#KeyPairInfo": { - "type": "structure", - "members": { - "KeyPairId": { - "target": "com.amazonaws.ec2#String", + }, + "x1e_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "KeyPairId", - "smithy.api#documentation": "

The ID of the key pair.

", - "smithy.api#xmlName": "keyPairId" + "smithy.api#enumValue": "x1e.xlarge" } }, - "KeyFingerprint": { - "target": "com.amazonaws.ec2#String", + "x1e_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "KeyFingerprint", - "smithy.api#documentation": "

If you used CreateKeyPair to create the key pair:

\n \n

If you used ImportKeyPair to provide Amazon Web Services the public key:

\n ", - "smithy.api#xmlName": "keyFingerprint" + "smithy.api#enumValue": "x1e.2xlarge" } }, - "KeyName": { - "target": "com.amazonaws.ec2#String", + "x1e_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "KeyName", - "smithy.api#documentation": "

The name of the key pair.

", - "smithy.api#xmlName": "keyName" + "smithy.api#enumValue": "x1e.4xlarge" } }, - "KeyType": { - "target": "com.amazonaws.ec2#KeyType", + "x1e_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "KeyType", - "smithy.api#documentation": "

The type of key pair.

", - "smithy.api#xmlName": "keyType" + "smithy.api#enumValue": "x1e.8xlarge" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "x1e_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags applied to the key pair.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "x1e.16xlarge" } }, - "PublicKey": { - "target": "com.amazonaws.ec2#String", + "x1e_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PublicKey", - "smithy.api#documentation": "

The public key material.

", - "smithy.api#xmlName": "publicKey" + "smithy.api#enumValue": "x1e.32xlarge" } }, - "CreateTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "x2iezn_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CreateTime", - "smithy.api#documentation": "

If you used Amazon EC2 to create the key pair, this is the date and time when the key\n was created, in ISO\n 8601 date-time format, in the UTC time zone.

\n

If you imported an existing key pair to Amazon EC2, this is the date and time the key\n was imported, in ISO\n 8601 date-time format, in the UTC time zone.

", - "smithy.api#xmlName": "createTime" + "smithy.api#enumValue": "x2iezn.2xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a key pair.

" - } - }, - "com.amazonaws.ec2#KeyPairList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#KeyPairInfo", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#KeyPairName": { - "type": "string" - }, - "com.amazonaws.ec2#KeyType": { - "type": "enum", - "members": { - "rsa": { + }, + "x2iezn_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "rsa" + "smithy.api#enumValue": "x2iezn.4xlarge" } }, - "ed25519": { + "x2iezn_6xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ed25519" + "smithy.api#enumValue": "x2iezn.6xlarge" } - } - } - }, - "com.amazonaws.ec2#KmsKeyArn": { - "type": "string" - }, - "com.amazonaws.ec2#KmsKeyId": { - "type": "string" - }, - "com.amazonaws.ec2#LastError": { - "type": "structure", - "members": { - "Message": { - "target": "com.amazonaws.ec2#String", + }, + "x2iezn_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Message", - "smithy.api#documentation": "

The error message for the VPC endpoint error.

", - "smithy.api#xmlName": "message" + "smithy.api#enumValue": "x2iezn.8xlarge" } }, - "Code": { - "target": "com.amazonaws.ec2#String", + "x2iezn_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The error code for the VPC endpoint error.

", - "smithy.api#xmlName": "code" + "smithy.api#enumValue": "x2iezn.12xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The last error that occurred for a VPC endpoint.

" - } - }, - "com.amazonaws.ec2#LaunchPermission": { - "type": "structure", - "members": { - "Group": { - "target": "com.amazonaws.ec2#PermissionGroup", + }, + "x2iezn_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Group", - "smithy.api#documentation": "

The name of the group.

", - "smithy.api#xmlName": "group" + "smithy.api#enumValue": "x2iezn.metal" } }, - "UserId": { - "target": "com.amazonaws.ec2#String", + "x2gd_medium": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "UserId", - "smithy.api#documentation": "

The Amazon Web Services account ID.

\n

Constraints: Up to 10 000 account IDs can be specified in a single request.

", - "smithy.api#xmlName": "userId" + "smithy.api#enumValue": "x2gd.medium" } }, - "OrganizationArn": { - "target": "com.amazonaws.ec2#String", + "x2gd_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OrganizationArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an organization.

", - "smithy.api#xmlName": "organizationArn" + "smithy.api#enumValue": "x2gd.large" } }, - "OrganizationalUnitArn": { - "target": "com.amazonaws.ec2#String", + "x2gd_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OrganizationalUnitArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an organizational unit (OU).

", - "smithy.api#xmlName": "organizationalUnitArn" + "smithy.api#enumValue": "x2gd.xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a launch permission.

" - } - }, - "com.amazonaws.ec2#LaunchPermissionList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LaunchPermission", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LaunchPermissionModifications": { - "type": "structure", - "members": { - "Add": { - "target": "com.amazonaws.ec2#LaunchPermissionList", + }, + "x2gd_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID, organization ARN, or OU ARN to add to the list of launch permissions for the AMI.

" + "smithy.api#enumValue": "x2gd.2xlarge" } }, - "Remove": { - "target": "com.amazonaws.ec2#LaunchPermissionList", + "x2gd_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID, organization ARN, or OU ARN to remove from the list of launch permissions for the AMI.

" + "smithy.api#enumValue": "x2gd.4xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a launch permission modification.

" - } - }, - "com.amazonaws.ec2#LaunchSpecification": { - "type": "structure", - "members": { - "UserData": { - "target": "com.amazonaws.ec2#SensitiveUserData", + }, + "x2gd_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "UserData", - "smithy.api#documentation": "

The base64-encoded user data that instances use when starting up. User data is limited to 16 KB.

", - "smithy.api#xmlName": "userData" + "smithy.api#enumValue": "x2gd.8xlarge" } }, - "SecurityGroups": { - "target": "com.amazonaws.ec2#GroupIdentifierList", + "x2gd_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "GroupSet", - "smithy.api#documentation": "

The IDs of the security groups.

", - "smithy.api#xmlName": "groupSet" + "smithy.api#enumValue": "x2gd.12xlarge" } }, - "AddressingType": { - "target": "com.amazonaws.ec2#String", + "x2gd_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AddressingType", - "smithy.api#documentation": "

Deprecated.

", - "smithy.api#xmlName": "addressingType" + "smithy.api#enumValue": "x2gd.16xlarge" } }, - "BlockDeviceMappings": { - "target": "com.amazonaws.ec2#BlockDeviceMappingList", + "x2gd_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "BlockDeviceMapping", - "smithy.api#documentation": "

The block device mapping entries.

", - "smithy.api#xmlName": "blockDeviceMapping" + "smithy.api#enumValue": "x2gd.metal" } }, - "EbsOptimized": { - "target": "com.amazonaws.ec2#Boolean", + "z1d_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EbsOptimized", - "smithy.api#documentation": "

Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

\n

Default: false\n

", - "smithy.api#xmlName": "ebsOptimized" + "smithy.api#enumValue": "z1d.large" } }, - "IamInstanceProfile": { - "target": "com.amazonaws.ec2#IamInstanceProfileSpecification", + "z1d_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IamInstanceProfile", - "smithy.api#documentation": "

The IAM instance profile.

", - "smithy.api#xmlName": "iamInstanceProfile" + "smithy.api#enumValue": "z1d.xlarge" } }, - "ImageId": { - "target": "com.amazonaws.ec2#String", + "z1d_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The ID of the AMI.

", - "smithy.api#xmlName": "imageId" + "smithy.api#enumValue": "z1d.2xlarge" } }, - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", + "z1d_3xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type. Only one instance type can be specified.

", - "smithy.api#xmlName": "instanceType" + "smithy.api#enumValue": "z1d.3xlarge" } }, - "KernelId": { - "target": "com.amazonaws.ec2#String", + "z1d_6xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "KernelId", - "smithy.api#documentation": "

The ID of the kernel.

", - "smithy.api#xmlName": "kernelId" + "smithy.api#enumValue": "z1d.6xlarge" } }, - "KeyName": { - "target": "com.amazonaws.ec2#String", + "z1d_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "KeyName", - "smithy.api#documentation": "

The name of the key pair.

", - "smithy.api#xmlName": "keyName" + "smithy.api#enumValue": "z1d.12xlarge" } }, - "NetworkInterfaces": { - "target": "com.amazonaws.ec2#InstanceNetworkInterfaceSpecificationList", + "z1d_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceSet", - "smithy.api#documentation": "

The network interfaces. If you specify a network interface, you must specify \n subnet IDs and security group IDs using the network interface.

", - "smithy.api#xmlName": "networkInterfaceSet" + "smithy.api#enumValue": "z1d.metal" } }, - "Placement": { - "target": "com.amazonaws.ec2#SpotPlacement", + "x2idn_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Placement", - "smithy.api#documentation": "

The placement information for the instance.

", - "smithy.api#xmlName": "placement" + "smithy.api#enumValue": "x2idn.16xlarge" } }, - "RamdiskId": { - "target": "com.amazonaws.ec2#String", + "x2idn_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "RamdiskId", - "smithy.api#documentation": "

The ID of the RAM disk.

", - "smithy.api#xmlName": "ramdiskId" + "smithy.api#enumValue": "x2idn.24xlarge" } }, - "SubnetId": { - "target": "com.amazonaws.ec2#String", + "x2idn_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#documentation": "

The ID of the subnet in which to launch the instance.

", - "smithy.api#xmlName": "subnetId" + "smithy.api#enumValue": "x2idn.32xlarge" } }, - "Monitoring": { - "target": "com.amazonaws.ec2#RunInstancesMonitoringEnabled", - "traits": { - "aws.protocols#ec2QueryName": "Monitoring", - "smithy.api#xmlName": "monitoring" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the launch specification for an instance.

" - } - }, - "com.amazonaws.ec2#LaunchSpecsList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#SpotFleetLaunchSpecification", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LaunchTemplate": { - "type": "structure", - "members": { - "LaunchTemplateId": { - "target": "com.amazonaws.ec2#String", + "x2iedn_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateId", - "smithy.api#documentation": "

The ID of the launch template.

", - "smithy.api#xmlName": "launchTemplateId" + "smithy.api#enumValue": "x2iedn.xlarge" } }, - "LaunchTemplateName": { - "target": "com.amazonaws.ec2#LaunchTemplateName", + "x2iedn_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateName", - "smithy.api#documentation": "

The name of the launch template.

", - "smithy.api#xmlName": "launchTemplateName" + "smithy.api#enumValue": "x2iedn.2xlarge" } }, - "CreateTime": { - "target": "com.amazonaws.ec2#DateTime", + "x2iedn_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CreateTime", - "smithy.api#documentation": "

The time launch template was created.

", - "smithy.api#xmlName": "createTime" + "smithy.api#enumValue": "x2iedn.4xlarge" } }, - "CreatedBy": { - "target": "com.amazonaws.ec2#String", + "x2iedn_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CreatedBy", - "smithy.api#documentation": "

The principal that created the launch template.

", - "smithy.api#xmlName": "createdBy" + "smithy.api#enumValue": "x2iedn.8xlarge" } }, - "DefaultVersionNumber": { - "target": "com.amazonaws.ec2#Long", + "x2iedn_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DefaultVersionNumber", - "smithy.api#documentation": "

The version number of the default version of the launch template.

", - "smithy.api#xmlName": "defaultVersionNumber" + "smithy.api#enumValue": "x2iedn.16xlarge" } }, - "LatestVersionNumber": { - "target": "com.amazonaws.ec2#Long", + "x2iedn_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LatestVersionNumber", - "smithy.api#documentation": "

The version number of the latest version of the launch template.

", - "smithy.api#xmlName": "latestVersionNumber" + "smithy.api#enumValue": "x2iedn.24xlarge" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "x2iedn_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags for the launch template.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "x2iedn.32xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a launch template.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateAndOverridesResponse": { - "type": "structure", - "members": { - "LaunchTemplateSpecification": { - "target": "com.amazonaws.ec2#FleetLaunchTemplateSpecification", + }, + "c6a_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateSpecification", - "smithy.api#documentation": "

The launch template.

", - "smithy.api#xmlName": "launchTemplateSpecification" + "smithy.api#enumValue": "c6a.large" } }, - "Overrides": { - "target": "com.amazonaws.ec2#FleetLaunchTemplateOverrides", + "c6a_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Overrides", - "smithy.api#documentation": "

Any parameters that you specify override the same parameters in the launch\n template.

", - "smithy.api#xmlName": "overrides" + "smithy.api#enumValue": "c6a.xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a launch template and overrides.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateAutoRecoveryState": { - "type": "enum", - "members": { - "default": { + }, + "c6a_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "default" + "smithy.api#enumValue": "c6a.2xlarge" } }, - "disabled": { + "c6a_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "disabled" + "smithy.api#enumValue": "c6a.4xlarge" } - } - } - }, - "com.amazonaws.ec2#LaunchTemplateBlockDeviceMapping": { - "type": "structure", - "members": { - "DeviceName": { - "target": "com.amazonaws.ec2#String", + }, + "c6a_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DeviceName", - "smithy.api#documentation": "

The device name.

", - "smithy.api#xmlName": "deviceName" + "smithy.api#enumValue": "c6a.8xlarge" } }, - "VirtualName": { - "target": "com.amazonaws.ec2#String", + "c6a_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VirtualName", - "smithy.api#documentation": "

The virtual device name (ephemeralN).

", - "smithy.api#xmlName": "virtualName" + "smithy.api#enumValue": "c6a.12xlarge" } }, - "Ebs": { - "target": "com.amazonaws.ec2#LaunchTemplateEbsBlockDevice", + "c6a_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Ebs", - "smithy.api#documentation": "

Information about the block device for an EBS volume.

", - "smithy.api#xmlName": "ebs" + "smithy.api#enumValue": "c6a.16xlarge" } }, - "NoDevice": { - "target": "com.amazonaws.ec2#String", + "c6a_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NoDevice", - "smithy.api#documentation": "

To omit the device from the block device mapping, specify an empty string.

", - "smithy.api#xmlName": "noDevice" + "smithy.api#enumValue": "c6a.24xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a block device mapping.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateBlockDeviceMappingList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LaunchTemplateBlockDeviceMapping", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LaunchTemplateBlockDeviceMappingRequest": { - "type": "structure", - "members": { - "DeviceName": { - "target": "com.amazonaws.ec2#String", + }, + "c6a_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The device name (for example, /dev/sdh or xvdh).

" + "smithy.api#enumValue": "c6a.32xlarge" } }, - "VirtualName": { - "target": "com.amazonaws.ec2#String", + "c6a_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The virtual device name (ephemeralN). Instance store volumes are numbered starting\n from 0. An instance type with 2 available instance store volumes can specify mappings\n for ephemeral0 and ephemeral1. The number of available instance store volumes depends on\n the instance type. After you connect to the instance, you must mount the volume.

" + "smithy.api#enumValue": "c6a.48xlarge" } }, - "Ebs": { - "target": "com.amazonaws.ec2#LaunchTemplateEbsBlockDeviceRequest", + "c6a_metal": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Parameters used to automatically set up EBS volumes when the instance is\n launched.

" + "smithy.api#enumValue": "c6a.metal" } }, - "NoDevice": { - "target": "com.amazonaws.ec2#String", + "m6a_metal": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

To omit the device from the block device mapping, specify an empty string.

" + "smithy.api#enumValue": "m6a.metal" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a block device mapping.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateBlockDeviceMappingRequestList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LaunchTemplateBlockDeviceMappingRequest", - "traits": { - "smithy.api#xmlName": "BlockDeviceMapping" - } - } - }, - "com.amazonaws.ec2#LaunchTemplateCapacityReservationSpecificationRequest": { - "type": "structure", - "members": { - "CapacityReservationPreference": { - "target": "com.amazonaws.ec2#CapacityReservationPreference", + }, + "i4i_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates the instance's Capacity Reservation preferences. Possible preferences\n include:

\n " + "smithy.api#enumValue": "i4i.large" } }, - "CapacityReservationTarget": { - "target": "com.amazonaws.ec2#CapacityReservationTarget", + "i4i_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Information about the target Capacity Reservation or Capacity Reservation\n group.

" + "smithy.api#enumValue": "i4i.xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an instance's Capacity Reservation targeting option. You can specify only\n one option at a time. Use the CapacityReservationPreference parameter to\n configure the instance to run in On-Demand capacity or to run in any open\n Capacity Reservation that has matching attributes (instance type, platform, Availability\n Zone). Use the CapacityReservationTarget parameter to explicitly target a\n specific Capacity Reservation or a Capacity Reservation group.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateCapacityReservationSpecificationResponse": { - "type": "structure", - "members": { - "CapacityReservationPreference": { - "target": "com.amazonaws.ec2#CapacityReservationPreference", + }, + "i4i_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationPreference", - "smithy.api#documentation": "

Indicates the instance's Capacity Reservation preferences. Possible preferences\n include:

\n ", - "smithy.api#xmlName": "capacityReservationPreference" + "smithy.api#enumValue": "i4i.2xlarge" } }, - "CapacityReservationTarget": { - "target": "com.amazonaws.ec2#CapacityReservationTargetResponse", + "i4i_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationTarget", - "smithy.api#documentation": "

Information about the target Capacity Reservation or Capacity Reservation\n group.

", - "smithy.api#xmlName": "capacityReservationTarget" + "smithy.api#enumValue": "i4i.4xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Information about the Capacity Reservation targeting option.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateConfig": { - "type": "structure", - "members": { - "LaunchTemplateSpecification": { - "target": "com.amazonaws.ec2#FleetLaunchTemplateSpecification", + }, + "i4i_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateSpecification", - "smithy.api#documentation": "

The launch template to use. Make sure that the launch template does not contain the\n NetworkInterfaceId parameter because you can't specify a network interface\n ID in a Spot Fleet.

", - "smithy.api#xmlName": "launchTemplateSpecification" + "smithy.api#enumValue": "i4i.8xlarge" } }, - "Overrides": { - "target": "com.amazonaws.ec2#LaunchTemplateOverridesList", + "i4i_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Overrides", - "smithy.api#documentation": "

Any parameters that you specify override the same parameters in the launch\n template.

", - "smithy.api#xmlName": "overrides" + "smithy.api#enumValue": "i4i.16xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a launch template and overrides.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateConfigList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LaunchTemplateConfig", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LaunchTemplateCpuOptions": { - "type": "structure", - "members": { - "CoreCount": { - "target": "com.amazonaws.ec2#Integer", + }, + "i4i_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CoreCount", - "smithy.api#documentation": "

The number of CPU cores for the instance.

", - "smithy.api#xmlName": "coreCount" + "smithy.api#enumValue": "i4i.32xlarge" } }, - "ThreadsPerCore": { - "target": "com.amazonaws.ec2#Integer", + "i4i_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ThreadsPerCore", - "smithy.api#documentation": "

The number of threads per CPU core.

", - "smithy.api#xmlName": "threadsPerCore" + "smithy.api#enumValue": "i4i.metal" } }, - "AmdSevSnp": { - "target": "com.amazonaws.ec2#AmdSevSnpSpecification", + "x2idn_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AmdSevSnp", - "smithy.api#documentation": "

Indicates whether the instance is enabled for AMD SEV-SNP. For more information, see \n AMD SEV-SNP.

", - "smithy.api#xmlName": "amdSevSnp" + "smithy.api#enumValue": "x2idn.metal" } - } - }, - "traits": { - "smithy.api#documentation": "

The CPU options for the instance.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateCpuOptionsRequest": { - "type": "structure", - "members": { - "CoreCount": { - "target": "com.amazonaws.ec2#Integer", + }, + "x2iedn_metal": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The number of CPU cores for the instance.

" + "smithy.api#enumValue": "x2iedn.metal" } }, - "ThreadsPerCore": { - "target": "com.amazonaws.ec2#Integer", + "c7g_medium": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The number of threads per CPU core. To disable multithreading for the instance,\n specify a value of 1. Otherwise, specify the default value of\n 2.

" + "smithy.api#enumValue": "c7g.medium" } }, - "AmdSevSnp": { - "target": "com.amazonaws.ec2#AmdSevSnpSpecification", + "c7g_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported \n with M6a, R6a, and C6a instance types only. For more information, see \n AMD SEV-SNP.

" + "smithy.api#enumValue": "c7g.large" } - } - }, - "traits": { - "smithy.api#documentation": "

The CPU options for the instance. Both the core count and threads per core must be\n specified in the request.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateEbsBlockDevice": { - "type": "structure", - "members": { - "Encrypted": { - "target": "com.amazonaws.ec2#Boolean", + }, + "c7g_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Encrypted", - "smithy.api#documentation": "

Indicates whether the EBS volume is encrypted.

", - "smithy.api#xmlName": "encrypted" + "smithy.api#enumValue": "c7g.xlarge" } }, - "DeleteOnTermination": { - "target": "com.amazonaws.ec2#Boolean", + "c7g_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DeleteOnTermination", - "smithy.api#documentation": "

Indicates whether the EBS volume is deleted on instance termination.

", - "smithy.api#xmlName": "deleteOnTermination" + "smithy.api#enumValue": "c7g.2xlarge" } }, - "Iops": { - "target": "com.amazonaws.ec2#Integer", + "c7g_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Iops", - "smithy.api#documentation": "

The number of I/O operations per second (IOPS) that the volume supports.

", - "smithy.api#xmlName": "iops" + "smithy.api#enumValue": "c7g.4xlarge" } }, - "KmsKeyId": { - "target": "com.amazonaws.ec2#KmsKeyId", + "c7g_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "KmsKeyId", - "smithy.api#documentation": "

The ARN of the Key Management Service (KMS) CMK used for encryption.

", - "smithy.api#xmlName": "kmsKeyId" + "smithy.api#enumValue": "c7g.8xlarge" } }, - "SnapshotId": { - "target": "com.amazonaws.ec2#SnapshotId", + "c7g_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SnapshotId", - "smithy.api#documentation": "

The ID of the snapshot.

", - "smithy.api#xmlName": "snapshotId" + "smithy.api#enumValue": "c7g.12xlarge" } }, - "VolumeSize": { - "target": "com.amazonaws.ec2#Integer", + "c7g_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VolumeSize", - "smithy.api#documentation": "

The size of the volume, in GiB.

", - "smithy.api#xmlName": "volumeSize" + "smithy.api#enumValue": "c7g.16xlarge" } }, - "VolumeType": { - "target": "com.amazonaws.ec2#VolumeType", + "mac2_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VolumeType", - "smithy.api#documentation": "

The volume type.

", - "smithy.api#xmlName": "volumeType" + "smithy.api#enumValue": "mac2.metal" } }, - "Throughput": { - "target": "com.amazonaws.ec2#Integer", + "c6id_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Throughput", - "smithy.api#documentation": "

The throughput that the volume supports, in MiB/s.

", - "smithy.api#xmlName": "throughput" + "smithy.api#enumValue": "c6id.large" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a block device for an EBS volume.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateEbsBlockDeviceRequest": { - "type": "structure", - "members": { - "Encrypted": { - "target": "com.amazonaws.ec2#Boolean", + }, + "c6id_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether the EBS volume is encrypted. Encrypted volumes can only be attached\n to instances that support Amazon EBS encryption. If you are creating a volume from a\n snapshot, you can't specify an encryption value.

" + "smithy.api#enumValue": "c6id.xlarge" } }, - "DeleteOnTermination": { - "target": "com.amazonaws.ec2#Boolean", + "c6id_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether the EBS volume is deleted on instance termination.

" + "smithy.api#enumValue": "c6id.2xlarge" } }, - "Iops": { - "target": "com.amazonaws.ec2#Integer", + "c6id_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The number of I/O operations per second (IOPS). For gp3,\n io1, and io2 volumes, this represents the number of IOPS that\n are provisioned for the volume. For gp2 volumes, this represents the\n baseline performance of the volume and the rate at which the volume accumulates I/O\n credits for bursting.

\n

The following are the supported values for each volume type:

\n \n

For io2 volumes, you can achieve up to 256,000 IOPS on \ninstances \nbuilt on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS.

\n

This parameter is supported for io1, io2, and gp3 volumes only.

" + "smithy.api#enumValue": "c6id.4xlarge" } }, - "KmsKeyId": { - "target": "com.amazonaws.ec2#KmsKeyId", + "c6id_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ARN of the symmetric Key Management Service (KMS) CMK used for encryption.

" + "smithy.api#enumValue": "c6id.8xlarge" } }, - "SnapshotId": { - "target": "com.amazonaws.ec2#SnapshotId", + "c6id_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ID of the snapshot.

" + "smithy.api#enumValue": "c6id.12xlarge" } }, - "VolumeSize": { - "target": "com.amazonaws.ec2#Integer", + "c6id_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The size of the volume, in GiBs. You must specify either a snapshot ID or a volume\n size. The following are the supported volumes sizes for each volume type:

\n " + "smithy.api#enumValue": "c6id.16xlarge" } }, - "VolumeType": { - "target": "com.amazonaws.ec2#VolumeType", + "c6id_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The volume type. For more information, see Amazon EBS volume types in the\n Amazon EBS User Guide.

" + "smithy.api#enumValue": "c6id.24xlarge" } }, - "Throughput": { - "target": "com.amazonaws.ec2#Integer", + "c6id_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The throughput to provision for a gp3 volume, with a maximum of 1,000\n MiB/s.

\n

Valid Range: Minimum value of 125. Maximum value of 1000.

" + "smithy.api#enumValue": "c6id.32xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The parameters for a block device for an EBS volume.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateElasticInferenceAccelerator": { - "type": "structure", - "members": { - "Type": { - "target": "com.amazonaws.ec2#String", + }, + "c6id_metal": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of elastic inference accelerator. The possible values are eia1.medium,\n eia1.large, and eia1.xlarge.

", - "smithy.api#required": {} + "smithy.api#enumValue": "c6id.metal" } }, - "Count": { - "target": "com.amazonaws.ec2#LaunchTemplateElasticInferenceAcceleratorCount", + "m6id_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The number of elastic inference accelerators to attach to the instance.

\n

Default: 1

" + "smithy.api#enumValue": "m6id.large" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an elastic inference accelerator.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateElasticInferenceAcceleratorCount": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1 - } - } - }, - "com.amazonaws.ec2#LaunchTemplateElasticInferenceAcceleratorList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LaunchTemplateElasticInferenceAccelerator", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LaunchTemplateElasticInferenceAcceleratorResponse": { - "type": "structure", - "members": { - "Type": { - "target": "com.amazonaws.ec2#String", + }, + "m6id_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Type", - "smithy.api#documentation": "

The type of elastic inference accelerator. The possible values are eia1.medium,\n eia1.large, and eia1.xlarge.

", - "smithy.api#xmlName": "type" + "smithy.api#enumValue": "m6id.xlarge" } }, - "Count": { - "target": "com.amazonaws.ec2#Integer", + "m6id_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Count", - "smithy.api#documentation": "

The number of elastic inference accelerators to attach to the instance.

\n

Default: 1

", - "smithy.api#xmlName": "count" + "smithy.api#enumValue": "m6id.2xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an elastic inference accelerator.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateElasticInferenceAcceleratorResponseList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LaunchTemplateElasticInferenceAcceleratorResponse", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LaunchTemplateEnaSrdSpecification": { - "type": "structure", - "members": { - "EnaSrdEnabled": { - "target": "com.amazonaws.ec2#Boolean", + }, + "m6id_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EnaSrdEnabled", - "smithy.api#documentation": "

Indicates whether ENA Express is enabled for the network interface.

", - "smithy.api#xmlName": "enaSrdEnabled" + "smithy.api#enumValue": "m6id.4xlarge" } }, - "EnaSrdUdpSpecification": { - "target": "com.amazonaws.ec2#LaunchTemplateEnaSrdUdpSpecification", + "m6id_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EnaSrdUdpSpecification", - "smithy.api#documentation": "

Configures ENA Express for UDP network traffic.

", - "smithy.api#xmlName": "enaSrdUdpSpecification" + "smithy.api#enumValue": "m6id.8xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology to increase the \n\t\t\tmaximum bandwidth used per stream and minimize tail latency of network traffic between EC2 instances. \n\t\t\tWith ENA Express, you can communicate between two EC2 instances in the same subnet within the same \n\t\t\taccount, or in different accounts. Both sending and receiving instances must have ENA Express enabled.

\n

To improve the reliability of network packet delivery, ENA Express reorders network packets on the \n\t\t\treceiving end by default. However, some UDP-based applications are designed to handle network packets \n\t\t\tthat are out of order to reduce the overhead for packet delivery at the network layer. When ENA Express \n\t\t\tis enabled, you can specify whether UDP network traffic uses it.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateEnaSrdUdpSpecification": { - "type": "structure", - "members": { - "EnaSrdUdpEnabled": { - "target": "com.amazonaws.ec2#Boolean", + }, + "m6id_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EnaSrdUdpEnabled", - "smithy.api#documentation": "

Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, \n\t\t\tyou must first enable ENA Express.

", - "smithy.api#xmlName": "enaSrdUdpEnabled" + "smithy.api#enumValue": "m6id.12xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

ENA Express is compatible with both TCP and UDP transport protocols. When it's enabled, TCP traffic \n\t\t\tautomatically uses it. However, some UDP-based applications are designed to handle network packets that are \n\t\t\tout of order, without a need for retransmission, such as live video broadcasting or other near-real-time \n\t\t\tapplications. For UDP traffic, you can specify whether to use ENA Express, based on your application \n\t\t\tenvironment needs.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateEnclaveOptions": { - "type": "structure", - "members": { - "Enabled": { - "target": "com.amazonaws.ec2#Boolean", + }, + "m6id_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Enabled", - "smithy.api#documentation": "

If this parameter is set to true, the instance is enabled for Amazon Web Services Nitro\n Enclaves; otherwise, it is not enabled for Amazon Web Services Nitro Enclaves.

", - "smithy.api#xmlName": "enabled" + "smithy.api#enumValue": "m6id.16xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateEnclaveOptionsRequest": { - "type": "structure", - "members": { - "Enabled": { - "target": "com.amazonaws.ec2#Boolean", + }, + "m6id_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

To enable the instance for Amazon Web Services Nitro Enclaves, set this parameter to\n true.

" + "smithy.api#enumValue": "m6id.24xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For more\n information, see What is Amazon Web Services Nitro Enclaves?\n in the Amazon Web Services Nitro Enclaves User Guide.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateErrorCode": { - "type": "enum", - "members": { - "LAUNCH_TEMPLATE_ID_DOES_NOT_EXIST": { + }, + "m6id_32xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "launchTemplateIdDoesNotExist" + "smithy.api#enumValue": "m6id.32xlarge" } }, - "LAUNCH_TEMPLATE_ID_MALFORMED": { + "m6id_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "launchTemplateIdMalformed" + "smithy.api#enumValue": "m6id.metal" } }, - "LAUNCH_TEMPLATE_NAME_DOES_NOT_EXIST": { + "r6id_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "launchTemplateNameDoesNotExist" + "smithy.api#enumValue": "r6id.large" } }, - "LAUNCH_TEMPLATE_NAME_MALFORMED": { + "r6id_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "launchTemplateNameMalformed" + "smithy.api#enumValue": "r6id.xlarge" } }, - "LAUNCH_TEMPLATE_VERSION_DOES_NOT_EXIST": { + "r6id_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "launchTemplateVersionDoesNotExist" + "smithy.api#enumValue": "r6id.2xlarge" } }, - "UNEXPECTED_ERROR": { + "r6id_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "unexpectedError" + "smithy.api#enumValue": "r6id.4xlarge" } - } - } - }, - "com.amazonaws.ec2#LaunchTemplateHibernationOptions": { - "type": "structure", - "members": { - "Configured": { - "target": "com.amazonaws.ec2#Boolean", + }, + "r6id_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Configured", - "smithy.api#documentation": "

If this parameter is set to true, the instance is enabled for\n hibernation; otherwise, it is not enabled for hibernation.

", - "smithy.api#xmlName": "configured" + "smithy.api#enumValue": "r6id.8xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Indicates whether an instance is configured for hibernation.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateHibernationOptionsRequest": { - "type": "structure", - "members": { - "Configured": { - "target": "com.amazonaws.ec2#Boolean", + }, + "r6id_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

If you set this parameter to true, the instance is enabled for\n hibernation.

\n

Default: false\n

" + "smithy.api#enumValue": "r6id.12xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Indicates whether the instance is configured for hibernation. This parameter is valid\n only if the instance meets the hibernation\n prerequisites.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateHttpTokensState": { - "type": "enum", - "members": { - "optional": { + }, + "r6id_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "optional" + "smithy.api#enumValue": "r6id.16xlarge" } }, - "required": { + "r6id_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "required" + "smithy.api#enumValue": "r6id.24xlarge" } - } - } - }, - "com.amazonaws.ec2#LaunchTemplateIamInstanceProfileSpecification": { - "type": "structure", - "members": { - "Arn": { - "target": "com.amazonaws.ec2#String", + }, + "r6id_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Arn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the instance profile.

", - "smithy.api#xmlName": "arn" + "smithy.api#enumValue": "r6id.32xlarge" } }, - "Name": { - "target": "com.amazonaws.ec2#String", + "r6id_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Name", - "smithy.api#documentation": "

The name of the instance profile.

", - "smithy.api#xmlName": "name" + "smithy.api#enumValue": "r6id.metal" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an IAM instance profile.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateIamInstanceProfileSpecificationRequest": { - "type": "structure", - "members": { - "Arn": { - "target": "com.amazonaws.ec2#String", + }, + "r6a_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the instance profile.

" + "smithy.api#enumValue": "r6a.large" } }, - "Name": { - "target": "com.amazonaws.ec2#String", + "r6a_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The name of the instance profile.

" + "smithy.api#enumValue": "r6a.xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

An IAM instance profile.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateId": { - "type": "string" - }, - "com.amazonaws.ec2#LaunchTemplateIdStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LaunchTemplateId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LaunchTemplateInstanceMaintenanceOptions": { - "type": "structure", - "members": { - "AutoRecovery": { - "target": "com.amazonaws.ec2#LaunchTemplateAutoRecoveryState", + }, + "r6a_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AutoRecovery", - "smithy.api#documentation": "

Disables the automatic recovery behavior of your instance or sets it to\n default.

", - "smithy.api#xmlName": "autoRecovery" + "smithy.api#enumValue": "r6a.2xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The maintenance options of your instance.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateInstanceMaintenanceOptionsRequest": { - "type": "structure", - "members": { - "AutoRecovery": { - "target": "com.amazonaws.ec2#LaunchTemplateAutoRecoveryState", + }, + "r6a_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Disables the automatic recovery behavior of your instance or sets it to default. For\n more information, see Simplified automatic recovery.

" + "smithy.api#enumValue": "r6a.4xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The maintenance options of your instance.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateInstanceMarketOptions": { - "type": "structure", - "members": { - "MarketType": { - "target": "com.amazonaws.ec2#MarketType", + }, + "r6a_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "MarketType", - "smithy.api#documentation": "

The market type.

", - "smithy.api#xmlName": "marketType" + "smithy.api#enumValue": "r6a.8xlarge" } }, - "SpotOptions": { - "target": "com.amazonaws.ec2#LaunchTemplateSpotMarketOptions", + "r6a_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SpotOptions", - "smithy.api#documentation": "

The options for Spot Instances.

", - "smithy.api#xmlName": "spotOptions" + "smithy.api#enumValue": "r6a.12xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The market (purchasing) option for the instances.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateInstanceMarketOptionsRequest": { - "type": "structure", - "members": { - "MarketType": { - "target": "com.amazonaws.ec2#MarketType", + }, + "r6a_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The market type.

" + "smithy.api#enumValue": "r6a.16xlarge" } }, - "SpotOptions": { - "target": "com.amazonaws.ec2#LaunchTemplateSpotMarketOptionsRequest", + "r6a_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The options for Spot Instances.

" + "smithy.api#enumValue": "r6a.24xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The market (purchasing) option for the instances.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateInstanceMetadataEndpointState": { - "type": "enum", - "members": { - "disabled": { + }, + "r6a_32xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "disabled" + "smithy.api#enumValue": "r6a.32xlarge" } }, - "enabled": { + "r6a_48xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "enabled" + "smithy.api#enumValue": "r6a.48xlarge" } - } - } - }, - "com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptions": { - "type": "structure", - "members": { - "State": { - "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptionsState", + }, + "r6a_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the metadata option changes.

\n

\n pending - The metadata options are being updated and the instance is not\n ready to process metadata traffic with the new selection.

\n

\n applied - The metadata options have been successfully applied on the\n instance.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "r6a.metal" } }, - "HttpTokens": { - "target": "com.amazonaws.ec2#LaunchTemplateHttpTokensState", + "p4de_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "HttpTokens", - "smithy.api#documentation": "

Indicates whether IMDSv2 is required.

\n ", - "smithy.api#xmlName": "httpTokens" + "smithy.api#enumValue": "p4de.24xlarge" } }, - "HttpPutResponseHopLimit": { - "target": "com.amazonaws.ec2#Integer", + "u_3tb1_56xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "HttpPutResponseHopLimit", - "smithy.api#documentation": "

The desired HTTP PUT response hop limit for instance metadata requests. The larger the\n number, the further instance metadata requests can travel.

\n

Default: 1

\n

Possible values: Integers from 1 to 64

", - "smithy.api#xmlName": "httpPutResponseHopLimit" + "smithy.api#enumValue": "u-3tb1.56xlarge" } }, - "HttpEndpoint": { - "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataEndpointState", + "u_18tb1_112xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "HttpEndpoint", - "smithy.api#documentation": "

Enables or disables the HTTP metadata endpoint on your instances. If the parameter is\n not specified, the default state is enabled.

\n \n

If you specify a value of disabled, you will not be able to access\n your instance metadata.

\n
", - "smithy.api#xmlName": "httpEndpoint" + "smithy.api#enumValue": "u-18tb1.112xlarge" } }, - "HttpProtocolIpv6": { - "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataProtocolIpv6", + "u_24tb1_112xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "HttpProtocolIpv6", - "smithy.api#documentation": "

Enables or disables the IPv6 endpoint for the instance metadata service.

\n

Default: disabled\n

", - "smithy.api#xmlName": "httpProtocolIpv6" + "smithy.api#enumValue": "u-24tb1.112xlarge" } }, - "InstanceMetadataTags": { - "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataTagsState", + "trn1_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceMetadataTags", - "smithy.api#documentation": "

Set to enabled to allow access to instance tags from the instance\n metadata. Set to disabled to turn off access to instance tags from the\n instance metadata. For more information, see Work with\n instance tags using the instance metadata.

\n

Default: disabled\n

", - "smithy.api#xmlName": "instanceMetadataTags" + "smithy.api#enumValue": "trn1.2xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The metadata options for the instance. For more information, see Instance metadata and user data in the\n Amazon Elastic Compute Cloud User Guide.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptionsRequest": { - "type": "structure", - "members": { - "HttpTokens": { - "target": "com.amazonaws.ec2#LaunchTemplateHttpTokensState", + }, + "trn1_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether IMDSv2 is required.

\n \n

Default: If the value of ImdsSupport for the Amazon Machine Image (AMI) \n for your instance is v2.0, the default is required.

" + "smithy.api#enumValue": "trn1.32xlarge" } }, - "HttpPutResponseHopLimit": { - "target": "com.amazonaws.ec2#Integer", + "hpc6id_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The desired HTTP PUT response hop limit for instance metadata requests. The larger the\n number, the further instance metadata requests can travel.

\n

Default: 1\n

\n

Possible values: Integers from 1 to 64

" + "smithy.api#enumValue": "hpc6id.32xlarge" } }, - "HttpEndpoint": { - "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataEndpointState", + "c6in_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Enables or disables the HTTP metadata endpoint on your instances. If the parameter is\n not specified, the default state is enabled.

\n \n

If you specify a value of disabled, you will not be able to access\n your instance metadata.

\n
" + "smithy.api#enumValue": "c6in.large" } }, - "HttpProtocolIpv6": { - "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataProtocolIpv6", + "c6in_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Enables or disables the IPv6 endpoint for the instance metadata service.

\n

Default: disabled\n

" + "smithy.api#enumValue": "c6in.xlarge" } }, - "InstanceMetadataTags": { - "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataTagsState", + "c6in_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Set to enabled to allow access to instance tags from the instance\n metadata. Set to disabled to turn off access to instance tags from the\n instance metadata. For more information, see Work with\n instance tags using the instance metadata.

\n

Default: disabled\n

" + "smithy.api#enumValue": "c6in.2xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The metadata options for the instance. For more information, see Instance metadata and user data in the\n Amazon Elastic Compute Cloud User Guide.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptionsState": { - "type": "enum", - "members": { - "pending": { + }, + "c6in_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "pending" + "smithy.api#enumValue": "c6in.4xlarge" } }, - "applied": { + "c6in_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "applied" + "smithy.api#enumValue": "c6in.8xlarge" } - } - } - }, - "com.amazonaws.ec2#LaunchTemplateInstanceMetadataProtocolIpv6": { - "type": "enum", - "members": { - "disabled": { + }, + "c6in_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "disabled" + "smithy.api#enumValue": "c6in.12xlarge" } }, - "enabled": { + "c6in_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "enabled" + "smithy.api#enumValue": "c6in.16xlarge" } - } - } - }, - "com.amazonaws.ec2#LaunchTemplateInstanceMetadataTagsState": { - "type": "enum", - "members": { - "disabled": { + }, + "c6in_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "disabled" + "smithy.api#enumValue": "c6in.24xlarge" } }, - "enabled": { + "c6in_32xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "enabled" - } - } - } - }, - "com.amazonaws.ec2#LaunchTemplateInstanceNetworkInterfaceSpecification": { - "type": "structure", - "members": { - "AssociateCarrierIpAddress": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "AssociateCarrierIpAddress", - "smithy.api#documentation": "

Indicates whether to associate a Carrier IP address with eth0 for a new network\n interface.

\n

Use this option when you launch an instance in a Wavelength Zone and want to associate\n a Carrier IP address with the network interface. For more information about Carrier IP\n addresses, see Carrier IP addresses in the Wavelength Developer\n Guide.

", - "smithy.api#xmlName": "associateCarrierIpAddress" + "smithy.api#enumValue": "c6in.32xlarge" } }, - "AssociatePublicIpAddress": { - "target": "com.amazonaws.ec2#Boolean", + "m6in_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AssociatePublicIpAddress", - "smithy.api#documentation": "

Indicates whether to associate a public IPv4 address with eth0 for a new network\n interface.

\n

Amazon Web Services charges for all public IPv4 addresses, including public IPv4 addresses \nassociated with running instances and Elastic IP addresses. For more information, see the Public IPv4 Address tab on the Amazon VPC pricing page.

", - "smithy.api#xmlName": "associatePublicIpAddress" + "smithy.api#enumValue": "m6in.large" } }, - "DeleteOnTermination": { - "target": "com.amazonaws.ec2#Boolean", + "m6in_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DeleteOnTermination", - "smithy.api#documentation": "

Indicates whether the network interface is deleted when the instance is\n terminated.

", - "smithy.api#xmlName": "deleteOnTermination" + "smithy.api#enumValue": "m6in.xlarge" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "m6in_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description for the network interface.

", - "smithy.api#xmlName": "description" + "smithy.api#enumValue": "m6in.2xlarge" } }, - "DeviceIndex": { - "target": "com.amazonaws.ec2#Integer", + "m6in_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DeviceIndex", - "smithy.api#documentation": "

The device index for the network interface attachment.

", - "smithy.api#xmlName": "deviceIndex" + "smithy.api#enumValue": "m6in.4xlarge" } }, - "Groups": { - "target": "com.amazonaws.ec2#GroupIdStringList", + "m6in_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "GroupSet", - "smithy.api#documentation": "

The IDs of one or more security groups.

", - "smithy.api#xmlName": "groupSet" + "smithy.api#enumValue": "m6in.8xlarge" } }, - "InterfaceType": { - "target": "com.amazonaws.ec2#String", + "m6in_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InterfaceType", - "smithy.api#documentation": "

The type of network interface.

", - "smithy.api#xmlName": "interfaceType" + "smithy.api#enumValue": "m6in.12xlarge" } }, - "Ipv6AddressCount": { - "target": "com.amazonaws.ec2#Integer", + "m6in_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Ipv6AddressCount", - "smithy.api#documentation": "

The number of IPv6 addresses for the network interface.

", - "smithy.api#xmlName": "ipv6AddressCount" + "smithy.api#enumValue": "m6in.16xlarge" } }, - "Ipv6Addresses": { - "target": "com.amazonaws.ec2#InstanceIpv6AddressList", + "m6in_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Ipv6AddressesSet", - "smithy.api#documentation": "

The IPv6 addresses for the network interface.

", - "smithy.api#xmlName": "ipv6AddressesSet" + "smithy.api#enumValue": "m6in.24xlarge" } }, - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#NetworkInterfaceId", + "m6in_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceId", - "smithy.api#documentation": "

The ID of the network interface.

", - "smithy.api#xmlName": "networkInterfaceId" + "smithy.api#enumValue": "m6in.32xlarge" } }, - "PrivateIpAddress": { - "target": "com.amazonaws.ec2#String", + "m6idn_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PrivateIpAddress", - "smithy.api#documentation": "

The primary private IPv4 address of the network interface.

", - "smithy.api#xmlName": "privateIpAddress" + "smithy.api#enumValue": "m6idn.large" } }, - "PrivateIpAddresses": { - "target": "com.amazonaws.ec2#PrivateIpAddressSpecificationList", + "m6idn_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PrivateIpAddressesSet", - "smithy.api#documentation": "

One or more private IPv4 addresses.

", - "smithy.api#xmlName": "privateIpAddressesSet" + "smithy.api#enumValue": "m6idn.xlarge" } }, - "SecondaryPrivateIpAddressCount": { - "target": "com.amazonaws.ec2#Integer", + "m6idn_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SecondaryPrivateIpAddressCount", - "smithy.api#documentation": "

The number of secondary private IPv4 addresses for the network interface.

", - "smithy.api#xmlName": "secondaryPrivateIpAddressCount" + "smithy.api#enumValue": "m6idn.2xlarge" } }, - "SubnetId": { - "target": "com.amazonaws.ec2#SubnetId", + "m6idn_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#documentation": "

The ID of the subnet for the network interface.

", - "smithy.api#xmlName": "subnetId" + "smithy.api#enumValue": "m6idn.4xlarge" } }, - "NetworkCardIndex": { - "target": "com.amazonaws.ec2#Integer", + "m6idn_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NetworkCardIndex", - "smithy.api#documentation": "

The index of the network card.

", - "smithy.api#xmlName": "networkCardIndex" + "smithy.api#enumValue": "m6idn.8xlarge" } }, - "Ipv4Prefixes": { - "target": "com.amazonaws.ec2#Ipv4PrefixListResponse", + "m6idn_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Ipv4PrefixSet", - "smithy.api#documentation": "

One or more IPv4 prefixes assigned to the network interface.

", - "smithy.api#xmlName": "ipv4PrefixSet" + "smithy.api#enumValue": "m6idn.12xlarge" } }, - "Ipv4PrefixCount": { - "target": "com.amazonaws.ec2#Integer", + "m6idn_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Ipv4PrefixCount", - "smithy.api#documentation": "

The number of IPv4 prefixes that Amazon Web Services automatically assigned to the network\n interface.

", - "smithy.api#xmlName": "ipv4PrefixCount" + "smithy.api#enumValue": "m6idn.16xlarge" } }, - "Ipv6Prefixes": { - "target": "com.amazonaws.ec2#Ipv6PrefixListResponse", + "m6idn_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Ipv6PrefixSet", - "smithy.api#documentation": "

One or more IPv6 prefixes assigned to the network interface.

", - "smithy.api#xmlName": "ipv6PrefixSet" + "smithy.api#enumValue": "m6idn.24xlarge" } }, - "Ipv6PrefixCount": { - "target": "com.amazonaws.ec2#Integer", + "m6idn_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Ipv6PrefixCount", - "smithy.api#documentation": "

The number of IPv6 prefixes that Amazon Web Services automatically assigned to the network\n interface.

", - "smithy.api#xmlName": "ipv6PrefixCount" + "smithy.api#enumValue": "m6idn.32xlarge" } }, - "PrimaryIpv6": { - "target": "com.amazonaws.ec2#Boolean", + "r6in_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PrimaryIpv6", - "smithy.api#documentation": "

The primary IPv6 address of the network interface. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. For more information about primary IPv6 addresses, see RunInstances.

", - "smithy.api#xmlName": "primaryIpv6" + "smithy.api#enumValue": "r6in.large" } }, - "EnaSrdSpecification": { - "target": "com.amazonaws.ec2#LaunchTemplateEnaSrdSpecification", + "r6in_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EnaSrdSpecification", - "smithy.api#documentation": "

Contains the ENA Express settings for instances launched from your launch template.

", - "smithy.api#xmlName": "enaSrdSpecification" + "smithy.api#enumValue": "r6in.xlarge" } }, - "ConnectionTrackingSpecification": { - "target": "com.amazonaws.ec2#ConnectionTrackingSpecification", - "traits": { - "aws.protocols#ec2QueryName": "ConnectionTrackingSpecification", - "smithy.api#documentation": "

A security group connection tracking specification that enables you to set the timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

", - "smithy.api#xmlName": "connectionTrackingSpecification" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a network interface.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateInstanceNetworkInterfaceSpecificationList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LaunchTemplateInstanceNetworkInterfaceSpecification", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LaunchTemplateInstanceNetworkInterfaceSpecificationRequest": { - "type": "structure", - "members": { - "AssociateCarrierIpAddress": { - "target": "com.amazonaws.ec2#Boolean", + "r6in_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Associates a Carrier IP address with eth0 for a new network interface.

\n

Use this option when you launch an instance in a Wavelength Zone and want to associate\n a Carrier IP address with the network interface. For more information about Carrier IP\n addresses, see Carrier IP addresses in the Wavelength Developer\n Guide.

" + "smithy.api#enumValue": "r6in.2xlarge" } }, - "AssociatePublicIpAddress": { - "target": "com.amazonaws.ec2#Boolean", + "r6in_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Associates a public IPv4 address with eth0 for a new network interface.

\n

Amazon Web Services charges for all public IPv4 addresses, including public IPv4 addresses \nassociated with running instances and Elastic IP addresses. For more information, see the Public IPv4 Address tab on the Amazon VPC pricing page.

" + "smithy.api#enumValue": "r6in.4xlarge" } }, - "DeleteOnTermination": { - "target": "com.amazonaws.ec2#Boolean", + "r6in_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether the network interface is deleted when the instance is\n terminated.

" + "smithy.api#enumValue": "r6in.8xlarge" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "r6in_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

A description for the network interface.

" + "smithy.api#enumValue": "r6in.12xlarge" } }, - "DeviceIndex": { - "target": "com.amazonaws.ec2#Integer", + "r6in_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The device index for the network interface attachment. Each network interface requires\n a device index. If you create a launch template that includes secondary network interfaces \n but not a primary network interface, then you must add a primary network interface as a \n launch parameter when you launch an instance from the template.

" + "smithy.api#enumValue": "r6in.16xlarge" } }, - "Groups": { - "target": "com.amazonaws.ec2#SecurityGroupIdStringList", + "r6in_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The IDs of one or more security groups.

", - "smithy.api#xmlName": "SecurityGroupId" + "smithy.api#enumValue": "r6in.24xlarge" } }, - "InterfaceType": { - "target": "com.amazonaws.ec2#String", + "r6in_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The type of network interface. To create an Elastic Fabric Adapter (EFA), specify\n efa. For more information, see Elastic Fabric Adapter in the\n Amazon Elastic Compute Cloud User Guide.

\n

If you are not creating an EFA, specify interface or omit this\n parameter.

\n

Valid values: interface | efa\n

" + "smithy.api#enumValue": "r6in.32xlarge" } }, - "Ipv6AddressCount": { - "target": "com.amazonaws.ec2#Integer", + "r6idn_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The number of IPv6 addresses to assign to a network interface. Amazon EC2\n automatically selects the IPv6 addresses from the subnet range. You can't use this\n option if specifying specific IPv6 addresses.

" + "smithy.api#enumValue": "r6idn.large" } }, - "Ipv6Addresses": { - "target": "com.amazonaws.ec2#InstanceIpv6AddressListRequest", + "r6idn_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You\n can't use this option if you're specifying a number of IPv6 addresses.

" + "smithy.api#enumValue": "r6idn.xlarge" } }, - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#NetworkInterfaceId", + "r6idn_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ID of the network interface.

" + "smithy.api#enumValue": "r6idn.2xlarge" } }, - "PrivateIpAddress": { - "target": "com.amazonaws.ec2#String", + "r6idn_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The primary private IPv4 address of the network interface.

" + "smithy.api#enumValue": "r6idn.4xlarge" } }, - "PrivateIpAddresses": { - "target": "com.amazonaws.ec2#PrivateIpAddressSpecificationList", + "r6idn_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

One or more private IPv4 addresses.

" + "smithy.api#enumValue": "r6idn.8xlarge" } }, - "SecondaryPrivateIpAddressCount": { - "target": "com.amazonaws.ec2#Integer", + "r6idn_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The number of secondary private IPv4 addresses to assign to a network\n interface.

" + "smithy.api#enumValue": "r6idn.12xlarge" } }, - "SubnetId": { - "target": "com.amazonaws.ec2#SubnetId", + "r6idn_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ID of the subnet for the network interface.

" + "smithy.api#enumValue": "r6idn.16xlarge" } }, - "NetworkCardIndex": { - "target": "com.amazonaws.ec2#Integer", + "r6idn_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The index of the network card. Some instance types support multiple network cards. The\n primary network interface must be assigned to network card index 0. The default is\n network card index 0.

" + "smithy.api#enumValue": "r6idn.24xlarge" } }, - "Ipv4Prefixes": { - "target": "com.amazonaws.ec2#Ipv4PrefixList", + "r6idn_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

One or more IPv4 prefixes to be assigned to the network interface. You cannot use this\n option if you use the Ipv4PrefixCount option.

", - "smithy.api#xmlName": "Ipv4Prefix" + "smithy.api#enumValue": "r6idn.32xlarge" } }, - "Ipv4PrefixCount": { - "target": "com.amazonaws.ec2#Integer", + "c7g_metal": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The number of IPv4 prefixes to be automatically assigned to the network interface. You\n cannot use this option if you use the Ipv4Prefix option.

" + "smithy.api#enumValue": "c7g.metal" } }, - "Ipv6Prefixes": { - "target": "com.amazonaws.ec2#Ipv6PrefixList", + "m7g_medium": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

One or more IPv6 prefixes to be assigned to the network interface. You cannot use this\n option if you use the Ipv6PrefixCount option.

", - "smithy.api#xmlName": "Ipv6Prefix" + "smithy.api#enumValue": "m7g.medium" } }, - "Ipv6PrefixCount": { - "target": "com.amazonaws.ec2#Integer", + "m7g_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The number of IPv6 prefixes to be automatically assigned to the network interface. You\n cannot use this option if you use the Ipv6Prefix option.

" + "smithy.api#enumValue": "m7g.large" } }, - "PrimaryIpv6": { - "target": "com.amazonaws.ec2#Boolean", + "m7g_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The primary IPv6 address of the network interface. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. For more information about primary IPv6 addresses, see RunInstances.

" + "smithy.api#enumValue": "m7g.xlarge" } }, - "EnaSrdSpecification": { - "target": "com.amazonaws.ec2#EnaSrdSpecificationRequest", + "m7g_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Configure ENA Express settings for your launch template.

" + "smithy.api#enumValue": "m7g.2xlarge" } }, - "ConnectionTrackingSpecification": { - "target": "com.amazonaws.ec2#ConnectionTrackingSpecificationRequest", + "m7g_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

A security group connection tracking specification that enables you to set the timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

" + "smithy.api#enumValue": "m7g.4xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The parameters for a network interface.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateInstanceNetworkInterfaceSpecificationRequestList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LaunchTemplateInstanceNetworkInterfaceSpecificationRequest", - "traits": { - "smithy.api#xmlName": "InstanceNetworkInterfaceSpecification" - } - } - }, - "com.amazonaws.ec2#LaunchTemplateLicenseConfiguration": { - "type": "structure", - "members": { - "LicenseConfigurationArn": { - "target": "com.amazonaws.ec2#String", + }, + "m7g_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LicenseConfigurationArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the license configuration.

", - "smithy.api#xmlName": "licenseConfigurationArn" + "smithy.api#enumValue": "m7g.8xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a license configuration.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateLicenseConfigurationRequest": { - "type": "structure", - "members": { - "LicenseConfigurationArn": { - "target": "com.amazonaws.ec2#String", + }, + "m7g_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the license configuration.

" + "smithy.api#enumValue": "m7g.12xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a license configuration.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateLicenseList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LaunchTemplateLicenseConfiguration", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LaunchTemplateLicenseSpecificationListRequest": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LaunchTemplateLicenseConfigurationRequest", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LaunchTemplateName": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 3, - "max": 128 }, - "smithy.api#pattern": "^[a-zA-Z0-9\\(\\)\\.\\-/_]+$" - } - }, - "com.amazonaws.ec2#LaunchTemplateNameStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LaunchTemplateName", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LaunchTemplateOverrides": { - "type": "structure", - "members": { - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", + "m7g_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type.

", - "smithy.api#xmlName": "instanceType" + "smithy.api#enumValue": "m7g.16xlarge" } }, - "SpotPrice": { - "target": "com.amazonaws.ec2#String", + "m7g_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SpotPrice", - "smithy.api#documentation": "

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to \n increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

\n \n

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

\n
", - "smithy.api#xmlName": "spotPrice" + "smithy.api#enumValue": "m7g.metal" } }, - "SubnetId": { - "target": "com.amazonaws.ec2#SubnetId", + "r7g_medium": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#documentation": "

The ID of the subnet in which to launch the instances.

", - "smithy.api#xmlName": "subnetId" + "smithy.api#enumValue": "r7g.medium" } }, - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + "r7g_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone in which to launch the instances.

", - "smithy.api#xmlName": "availabilityZone" + "smithy.api#enumValue": "r7g.large" } }, - "WeightedCapacity": { - "target": "com.amazonaws.ec2#Double", + "r7g_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "WeightedCapacity", - "smithy.api#documentation": "

The number of units provided by the specified instance type.

\n \n

When specifying weights, the price used in the lowest-price and\n price-capacity-optimized allocation strategies is per\n unit hour (where the instance price is divided by the specified\n weight). However, if all the specified weights are above the requested\n TargetCapacity, resulting in only 1 instance being launched, the price\n used is per instance hour.

\n
", - "smithy.api#xmlName": "weightedCapacity" + "smithy.api#enumValue": "r7g.xlarge" } }, - "Priority": { - "target": "com.amazonaws.ec2#Double", + "r7g_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Priority", - "smithy.api#documentation": "

The priority for the launch template override. The highest priority is launched\n first.

\n

If OnDemandAllocationStrategy is set to prioritized, Spot Fleet\n uses priority to determine which launch template override to use first in fulfilling\n On-Demand capacity.

\n

If the Spot AllocationStrategy is set to\n capacityOptimizedPrioritized, Spot Fleet uses priority on a best-effort basis\n to determine which launch template override to use in fulfilling Spot capacity, but\n optimizes for capacity first.

\n

Valid values are whole numbers starting at 0. The lower the number, the\n higher the priority. If no number is set, the launch template override has the lowest\n priority. You can set the same priority for different launch template overrides.

", - "smithy.api#xmlName": "priority" + "smithy.api#enumValue": "r7g.2xlarge" } }, - "InstanceRequirements": { - "target": "com.amazonaws.ec2#InstanceRequirements", + "r7g_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceRequirements", - "smithy.api#documentation": "

The instance requirements. When you specify instance requirements, Amazon EC2 will identify\n instance types with the provided requirements, and then use your On-Demand and Spot\n allocation strategies to launch instances from these instance types, in the same way as\n when you specify a list of instance types.

\n \n

If you specify InstanceRequirements, you can't specify\n InstanceType.

\n
", - "smithy.api#xmlName": "instanceRequirements" + "smithy.api#enumValue": "r7g.4xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes overrides for a launch template.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateOverridesList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LaunchTemplateOverrides", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LaunchTemplatePlacement": { - "type": "structure", - "members": { - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + }, + "r7g_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone of the instance.

", - "smithy.api#xmlName": "availabilityZone" + "smithy.api#enumValue": "r7g.8xlarge" } }, - "Affinity": { - "target": "com.amazonaws.ec2#String", + "r7g_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Affinity", - "smithy.api#documentation": "

The affinity setting for the instance on the Dedicated Host.

", - "smithy.api#xmlName": "affinity" + "smithy.api#enumValue": "r7g.12xlarge" } }, - "GroupName": { - "target": "com.amazonaws.ec2#String", + "r7g_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "GroupName", - "smithy.api#documentation": "

The name of the placement group for the instance.

", - "smithy.api#xmlName": "groupName" + "smithy.api#enumValue": "r7g.16xlarge" } }, - "HostId": { - "target": "com.amazonaws.ec2#String", + "r7g_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "HostId", - "smithy.api#documentation": "

The ID of the Dedicated Host for the instance.

", - "smithy.api#xmlName": "hostId" + "smithy.api#enumValue": "r7g.metal" } }, - "Tenancy": { - "target": "com.amazonaws.ec2#Tenancy", + "c6in_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Tenancy", - "smithy.api#documentation": "

The tenancy of the instance. An instance with a\n tenancy of dedicated runs on single-tenant hardware.

", - "smithy.api#xmlName": "tenancy" + "smithy.api#enumValue": "c6in.metal" } }, - "SpreadDomain": { - "target": "com.amazonaws.ec2#String", + "m6in_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SpreadDomain", - "smithy.api#documentation": "

Reserved for future use.

", - "smithy.api#xmlName": "spreadDomain" + "smithy.api#enumValue": "m6in.metal" } }, - "HostResourceGroupArn": { - "target": "com.amazonaws.ec2#String", + "m6idn_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "HostResourceGroupArn", - "smithy.api#documentation": "

The ARN of the host resource group in which to launch the instances.

", - "smithy.api#xmlName": "hostResourceGroupArn" + "smithy.api#enumValue": "m6idn.metal" } }, - "PartitionNumber": { - "target": "com.amazonaws.ec2#Integer", + "r6in_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PartitionNumber", - "smithy.api#documentation": "

The number of the partition the instance should launch in. Valid only if the placement\n group strategy is set to partition.

", - "smithy.api#xmlName": "partitionNumber" + "smithy.api#enumValue": "r6in.metal" } }, - "GroupId": { - "target": "com.amazonaws.ec2#PlacementGroupId", + "r6idn_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "GroupId", - "smithy.api#documentation": "

The Group ID of the placement group. You must specify the Placement Group Group ID to launch an instance in a shared placement\n group.

", - "smithy.api#xmlName": "groupId" + "smithy.api#enumValue": "r6idn.metal" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the placement of an instance.

" - } - }, - "com.amazonaws.ec2#LaunchTemplatePlacementRequest": { - "type": "structure", - "members": { - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + }, + "inf2_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The Availability Zone for the instance.

" + "smithy.api#enumValue": "inf2.xlarge" } }, - "Affinity": { - "target": "com.amazonaws.ec2#String", + "inf2_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The affinity setting for an instance on a Dedicated Host.

" + "smithy.api#enumValue": "inf2.8xlarge" } }, - "GroupName": { - "target": "com.amazonaws.ec2#PlacementGroupName", + "inf2_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The name of the placement group for the instance.

" + "smithy.api#enumValue": "inf2.24xlarge" } }, - "HostId": { - "target": "com.amazonaws.ec2#DedicatedHostId", + "inf2_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ID of the Dedicated Host for the instance.

" + "smithy.api#enumValue": "inf2.48xlarge" } }, - "Tenancy": { - "target": "com.amazonaws.ec2#Tenancy", + "trn1n_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The tenancy of the instance. An instance with a\n tenancy of dedicated runs on single-tenant hardware.

" + "smithy.api#enumValue": "trn1n.32xlarge" } }, - "SpreadDomain": { - "target": "com.amazonaws.ec2#String", + "i4g_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Reserved for future use.

" + "smithy.api#enumValue": "i4g.large" } }, - "HostResourceGroupArn": { - "target": "com.amazonaws.ec2#String", + "i4g_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ARN of the host resource group in which to launch the instances. If you specify a\n host resource group ARN, omit the Tenancy parameter or\n set it to host.

" + "smithy.api#enumValue": "i4g.xlarge" } }, - "PartitionNumber": { - "target": "com.amazonaws.ec2#Integer", + "i4g_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The number of the partition the instance should launch in. Valid only if the placement\n group strategy is set to partition.

" + "smithy.api#enumValue": "i4g.2xlarge" } }, - "GroupId": { - "target": "com.amazonaws.ec2#PlacementGroupId", + "i4g_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The Group Id of a placement group. You must specify the Placement Group Group Id to launch an instance in a shared placement\n group.

" + "smithy.api#enumValue": "i4g.4xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the placement of an instance.

" - } - }, - "com.amazonaws.ec2#LaunchTemplatePrivateDnsNameOptions": { - "type": "structure", - "members": { - "HostnameType": { - "target": "com.amazonaws.ec2#HostnameType", + }, + "i4g_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "HostnameType", - "smithy.api#documentation": "

The type of hostname to assign to an instance.

", - "smithy.api#xmlName": "hostnameType" + "smithy.api#enumValue": "i4g.8xlarge" } }, - "EnableResourceNameDnsARecord": { - "target": "com.amazonaws.ec2#Boolean", + "i4g_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EnableResourceNameDnsARecord", - "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS A\n records.

", - "smithy.api#xmlName": "enableResourceNameDnsARecord" + "smithy.api#enumValue": "i4g.16xlarge" } }, - "EnableResourceNameDnsAAAARecord": { - "target": "com.amazonaws.ec2#Boolean", + "hpc7g_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EnableResourceNameDnsAAAARecord", - "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA\n records.

", - "smithy.api#xmlName": "enableResourceNameDnsAAAARecord" + "smithy.api#enumValue": "hpc7g.4xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the options for instance hostnames.

" - } - }, - "com.amazonaws.ec2#LaunchTemplatePrivateDnsNameOptionsRequest": { - "type": "structure", - "members": { - "HostnameType": { - "target": "com.amazonaws.ec2#HostnameType", + }, + "hpc7g_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The type of hostname for Amazon EC2 instances. For IPv4 only subnets, an instance DNS name\n must be based on the instance IPv4 address. For IPv6 native subnets, an instance DNS\n name must be based on the instance ID. For dual-stack subnets, you can specify whether\n DNS names use the instance IPv4 address or the instance ID.

" + "smithy.api#enumValue": "hpc7g.8xlarge" } }, - "EnableResourceNameDnsARecord": { - "target": "com.amazonaws.ec2#Boolean", + "hpc7g_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS A\n records.

" + "smithy.api#enumValue": "hpc7g.16xlarge" } }, - "EnableResourceNameDnsAAAARecord": { - "target": "com.amazonaws.ec2#Boolean", + "c7gn_medium": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA\n records.

" + "smithy.api#enumValue": "c7gn.medium" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the options for instance hostnames.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LaunchTemplate", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LaunchTemplateSpecification": { - "type": "structure", - "members": { - "LaunchTemplateId": { - "target": "com.amazonaws.ec2#LaunchTemplateId", + }, + "c7gn_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ID of the launch template.

\n

You must specify either the launch template ID or the\n launch template name, but not both.

" + "smithy.api#enumValue": "c7gn.large" } }, - "LaunchTemplateName": { - "target": "com.amazonaws.ec2#String", + "c7gn_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The name of the launch template.

\n

You must specify either the launch template ID or the\n launch template name, but not both.

" + "smithy.api#enumValue": "c7gn.xlarge" } }, - "Version": { - "target": "com.amazonaws.ec2#String", + "c7gn_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The launch template version number, $Latest, or\n $Default.

\n

A value of $Latest uses the latest version of the launch template.

\n

A value of $Default uses the default version of the launch template.

\n

Default: The default version of the launch template.

" + "smithy.api#enumValue": "c7gn.2xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the launch template to use.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateSpotMarketOptions": { - "type": "structure", - "members": { - "MaxPrice": { - "target": "com.amazonaws.ec2#String", + }, + "c7gn_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "MaxPrice", - "smithy.api#documentation": "

The maximum hourly price you're willing to pay for the Spot Instances. We do not\n recommend using this parameter because it can lead to increased interruptions. If you do\n not specify this parameter, you will pay the current Spot price.

\n \n

If you specify a maximum price, your Spot Instances will be interrupted more\n frequently than if you do not specify this parameter.

\n
", - "smithy.api#xmlName": "maxPrice" + "smithy.api#enumValue": "c7gn.4xlarge" } }, - "SpotInstanceType": { - "target": "com.amazonaws.ec2#SpotInstanceType", + "c7gn_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SpotInstanceType", - "smithy.api#documentation": "

The Spot Instance request type.

", - "smithy.api#xmlName": "spotInstanceType" + "smithy.api#enumValue": "c7gn.8xlarge" } }, - "BlockDurationMinutes": { - "target": "com.amazonaws.ec2#Integer", + "c7gn_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "BlockDurationMinutes", - "smithy.api#documentation": "

The required duration for the Spot Instances (also known as Spot blocks), in minutes.\n This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360).

", - "smithy.api#xmlName": "blockDurationMinutes" + "smithy.api#enumValue": "c7gn.12xlarge" } }, - "ValidUntil": { - "target": "com.amazonaws.ec2#DateTime", + "c7gn_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ValidUntil", - "smithy.api#documentation": "

The end date of the request. For a one-time request, the request remains active until\n all instances launch, the request is canceled, or this date is reached. If the request\n is persistent, it remains active until it is canceled or this date and time is\n reached.

", - "smithy.api#xmlName": "validUntil" + "smithy.api#enumValue": "c7gn.16xlarge" } }, - "InstanceInterruptionBehavior": { - "target": "com.amazonaws.ec2#InstanceInterruptionBehavior", + "p5_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceInterruptionBehavior", - "smithy.api#documentation": "

The behavior when a Spot Instance is interrupted.

", - "smithy.api#xmlName": "instanceInterruptionBehavior" + "smithy.api#enumValue": "p5.48xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The options for Spot Instances.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateSpotMarketOptionsRequest": { - "type": "structure", - "members": { - "MaxPrice": { - "target": "com.amazonaws.ec2#String", + }, + "m7i_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum hourly price you're willing to pay for the Spot Instances. We do not\n recommend using this parameter because it can lead to increased interruptions. If you do\n not specify this parameter, you will pay the current Spot price.

\n \n

If you specify a maximum price, your Spot Instances will be interrupted more\n frequently than if you do not specify this parameter.

\n
" + "smithy.api#enumValue": "m7i.large" } }, - "SpotInstanceType": { - "target": "com.amazonaws.ec2#SpotInstanceType", + "m7i_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The Spot Instance request type.

" + "smithy.api#enumValue": "m7i.xlarge" } }, - "BlockDurationMinutes": { - "target": "com.amazonaws.ec2#Integer", + "m7i_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Deprecated.

" + "smithy.api#enumValue": "m7i.2xlarge" } }, - "ValidUntil": { - "target": "com.amazonaws.ec2#DateTime", + "m7i_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The end date of the request, in UTC format\n (YYYY-MM-DDTHH:MM:SSZ). Supported only for\n persistent requests.

\n \n

Default: 7 days from the current date

" + "smithy.api#enumValue": "m7i.4xlarge" } }, - "InstanceInterruptionBehavior": { - "target": "com.amazonaws.ec2#InstanceInterruptionBehavior", + "m7i_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The behavior when a Spot Instance is interrupted. The default is\n terminate.

" + "smithy.api#enumValue": "m7i.8xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The options for Spot Instances.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateTagSpecification": { - "type": "structure", - "members": { - "ResourceType": { - "target": "com.amazonaws.ec2#ResourceType", + }, + "m7i_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ResourceType", - "smithy.api#documentation": "

The type of resource to tag.

", - "smithy.api#xmlName": "resourceType" + "smithy.api#enumValue": "m7i.12xlarge" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "m7i_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags for the resource.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "m7i.16xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The tags specification for the launch template.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateTagSpecificationList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LaunchTemplateTagSpecification", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LaunchTemplateTagSpecificationRequest": { - "type": "structure", - "members": { - "ResourceType": { - "target": "com.amazonaws.ec2#ResourceType", + }, + "m7i_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The type of resource to tag.

\n

Valid Values lists all resource types for Amazon EC2 that can be tagged. When\n you create a launch template, you can specify tags for the following resource types\n only: instance | volume |\n network-interface | spot-instances-request.\n If the instance does not include the resource type that you specify, the instance \n launch fails. For example, not all instance types include a volume.

\n

To tag a resource after it has been created, see CreateTags.

" + "smithy.api#enumValue": "m7i.24xlarge" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "m7i_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The tags to apply to the resource.

", - "smithy.api#xmlName": "Tag" + "smithy.api#enumValue": "m7i.48xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The tags specification for the resources that are created during instance\n launch.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateTagSpecificationRequestList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LaunchTemplateTagSpecificationRequest", - "traits": { - "smithy.api#xmlName": "LaunchTemplateTagSpecificationRequest" - } - } - }, - "com.amazonaws.ec2#LaunchTemplateVersion": { - "type": "structure", - "members": { - "LaunchTemplateId": { - "target": "com.amazonaws.ec2#String", + }, + "m7i_flex_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateId", - "smithy.api#documentation": "

The ID of the launch template.

", - "smithy.api#xmlName": "launchTemplateId" + "smithy.api#enumValue": "m7i-flex.large" } }, - "LaunchTemplateName": { - "target": "com.amazonaws.ec2#LaunchTemplateName", + "m7i_flex_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateName", - "smithy.api#documentation": "

The name of the launch template.

", - "smithy.api#xmlName": "launchTemplateName" + "smithy.api#enumValue": "m7i-flex.xlarge" } }, - "VersionNumber": { - "target": "com.amazonaws.ec2#Long", + "m7i_flex_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VersionNumber", - "smithy.api#documentation": "

The version number.

", - "smithy.api#xmlName": "versionNumber" + "smithy.api#enumValue": "m7i-flex.2xlarge" } }, - "VersionDescription": { - "target": "com.amazonaws.ec2#VersionDescription", + "m7i_flex_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VersionDescription", - "smithy.api#documentation": "

The description for the version.

", - "smithy.api#xmlName": "versionDescription" + "smithy.api#enumValue": "m7i-flex.4xlarge" } }, - "CreateTime": { - "target": "com.amazonaws.ec2#DateTime", + "m7i_flex_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CreateTime", - "smithy.api#documentation": "

The time the version was created.

", - "smithy.api#xmlName": "createTime" + "smithy.api#enumValue": "m7i-flex.8xlarge" } }, - "CreatedBy": { - "target": "com.amazonaws.ec2#String", + "m7a_medium": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CreatedBy", - "smithy.api#documentation": "

The principal that created the version.

", - "smithy.api#xmlName": "createdBy" + "smithy.api#enumValue": "m7a.medium" } }, - "DefaultVersion": { - "target": "com.amazonaws.ec2#Boolean", + "m7a_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DefaultVersion", - "smithy.api#documentation": "

Indicates whether the version is the default version.

", - "smithy.api#xmlName": "defaultVersion" + "smithy.api#enumValue": "m7a.large" } }, - "LaunchTemplateData": { - "target": "com.amazonaws.ec2#ResponseLaunchTemplateData", + "m7a_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplateData", - "smithy.api#documentation": "

Information about the launch template.

", - "smithy.api#xmlName": "launchTemplateData" + "smithy.api#enumValue": "m7a.xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a launch template version.

" - } - }, - "com.amazonaws.ec2#LaunchTemplateVersionSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LaunchTemplateVersion", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LaunchTemplatesMonitoring": { - "type": "structure", - "members": { - "Enabled": { - "target": "com.amazonaws.ec2#Boolean", + }, + "m7a_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Enabled", - "smithy.api#documentation": "

Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is\n enabled.

", - "smithy.api#xmlName": "enabled" + "smithy.api#enumValue": "m7a.2xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the monitoring for the instance.

" - } - }, - "com.amazonaws.ec2#LaunchTemplatesMonitoringRequest": { - "type": "structure", - "members": { - "Enabled": { - "target": "com.amazonaws.ec2#Boolean", + }, + "m7a_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Specify true to enable detailed monitoring. Otherwise, basic monitoring\n is enabled.

" + "smithy.api#enumValue": "m7a.4xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the monitoring for the instance.

" - } - }, - "com.amazonaws.ec2#LicenseConfiguration": { - "type": "structure", - "members": { - "LicenseConfigurationArn": { - "target": "com.amazonaws.ec2#String", + }, + "m7a_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LicenseConfigurationArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the license configuration.

", - "smithy.api#xmlName": "licenseConfigurationArn" + "smithy.api#enumValue": "m7a.8xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a license configuration.

" - } - }, - "com.amazonaws.ec2#LicenseConfigurationRequest": { - "type": "structure", - "members": { - "LicenseConfigurationArn": { - "target": "com.amazonaws.ec2#String", + }, + "m7a_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the license configuration.

" + "smithy.api#enumValue": "m7a.12xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a license configuration.

" - } - }, - "com.amazonaws.ec2#LicenseList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LicenseConfiguration", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LicenseSpecificationListRequest": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LicenseConfigurationRequest", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ListImagesInRecycleBin": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ListImagesInRecycleBinRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ListImagesInRecycleBinResult" - }, - "traits": { - "smithy.api#documentation": "

Lists one or more AMIs that are currently in the Recycle Bin. For more information, \n see Recycle\n Bin in the Amazon EC2 User Guide.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "Images", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#ListImagesInRecycleBinMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#ListImagesInRecycleBinRequest": { - "type": "structure", - "members": { - "ImageIds": { - "target": "com.amazonaws.ec2#ImageIdStringList", + }, + "m7a_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The IDs of the AMIs to list. Omit this parameter to list all of the AMIs that \n are in the Recycle Bin. You can specify up to 20 IDs in a single request.

", - "smithy.api#xmlName": "ImageId" + "smithy.api#enumValue": "m7a.16xlarge" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "m7a_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#enumValue": "m7a.24xlarge" } }, - "MaxResults": { - "target": "com.amazonaws.ec2#ListImagesInRecycleBinMaxResults", + "m7a_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" + "smithy.api#enumValue": "m7a.32xlarge" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "m7a_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "m7a.48xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ListImagesInRecycleBinResult": { - "type": "structure", - "members": { - "Images": { - "target": "com.amazonaws.ec2#ImageRecycleBinInfoList", + }, + "m7a_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ImageSet", - "smithy.api#documentation": "

Information about the AMIs.

", - "smithy.api#xmlName": "imageSet" + "smithy.api#enumValue": "m7a.metal-48xl" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "hpc7a_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#enumValue": "hpc7a.12xlarge" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ListSnapshotsInRecycleBin": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ListSnapshotsInRecycleBinRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ListSnapshotsInRecycleBinResult" - }, - "traits": { - "smithy.api#documentation": "

Lists one or more snapshots that are currently in the Recycle Bin.

", - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "Snapshots", - "pageSize": "MaxResults" - } - } - }, - "com.amazonaws.ec2#ListSnapshotsInRecycleBinMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#ListSnapshotsInRecycleBinRequest": { - "type": "structure", - "members": { - "MaxResults": { - "target": "com.amazonaws.ec2#ListSnapshotsInRecycleBinMaxResults", + }, + "hpc7a_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output. \n\tFor more information, see Pagination.

" + "smithy.api#enumValue": "hpc7a.24xlarge" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "hpc7a_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" + "smithy.api#enumValue": "hpc7a.48xlarge" } }, - "SnapshotIds": { - "target": "com.amazonaws.ec2#SnapshotIdStringList", + "hpc7a_96xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The IDs of the snapshots to list. Omit this parameter to list all of the \n snapshots that are in the Recycle Bin.

", - "smithy.api#xmlName": "SnapshotId" + "smithy.api#enumValue": "hpc7a.96xlarge" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "c7gd_medium": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "c7gd.medium" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ListSnapshotsInRecycleBinResult": { - "type": "structure", - "members": { - "Snapshots": { - "target": "com.amazonaws.ec2#SnapshotRecycleBinInfoList", + }, + "c7gd_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SnapshotSet", - "smithy.api#documentation": "

Information about the snapshots.

", - "smithy.api#xmlName": "snapshotSet" + "smithy.api#enumValue": "c7gd.large" } }, - "NextToken": { - "target": "com.amazonaws.ec2#String", + "c7gd_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NextToken", - "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", - "smithy.api#xmlName": "nextToken" + "smithy.api#enumValue": "c7gd.xlarge" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ListingState": { - "type": "enum", - "members": { - "available": { + }, + "c7gd_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "available" + "smithy.api#enumValue": "c7gd.2xlarge" } }, - "sold": { + "c7gd_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "sold" + "smithy.api#enumValue": "c7gd.4xlarge" } }, - "cancelled": { + "c7gd_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "cancelled" + "smithy.api#enumValue": "c7gd.8xlarge" } }, - "pending": { + "c7gd_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "pending" + "smithy.api#enumValue": "c7gd.12xlarge" } - } - } - }, - "com.amazonaws.ec2#ListingStatus": { - "type": "enum", - "members": { - "active": { + }, + "c7gd_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "active" + "smithy.api#enumValue": "c7gd.16xlarge" } }, - "pending": { + "m7gd_medium": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "pending" + "smithy.api#enumValue": "m7gd.medium" } }, - "cancelled": { + "m7gd_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "cancelled" + "smithy.api#enumValue": "m7gd.large" } }, - "closed": { + "m7gd_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "closed" + "smithy.api#enumValue": "m7gd.xlarge" } - } - } - }, - "com.amazonaws.ec2#LoadBalancerArn": { - "type": "string" - }, - "com.amazonaws.ec2#LoadBalancersConfig": { - "type": "structure", - "members": { - "ClassicLoadBalancersConfig": { - "target": "com.amazonaws.ec2#ClassicLoadBalancersConfig", + }, + "m7gd_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ClassicLoadBalancersConfig", - "smithy.api#documentation": "

The Classic Load Balancers.

", - "smithy.api#xmlName": "classicLoadBalancersConfig" + "smithy.api#enumValue": "m7gd.2xlarge" } }, - "TargetGroupsConfig": { - "target": "com.amazonaws.ec2#TargetGroupsConfig", + "m7gd_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TargetGroupsConfig", - "smithy.api#documentation": "

The target groups.

", - "smithy.api#xmlName": "targetGroupsConfig" + "smithy.api#enumValue": "m7gd.4xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the Classic Load Balancers and target groups to attach to a Spot Fleet\n request.

" - } - }, - "com.amazonaws.ec2#LoadPermission": { - "type": "structure", - "members": { - "UserId": { - "target": "com.amazonaws.ec2#String", + }, + "m7gd_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "UserId", - "smithy.api#documentation": "

The Amazon Web Services account ID.

", - "smithy.api#xmlName": "userId" + "smithy.api#enumValue": "m7gd.8xlarge" } }, - "Group": { - "target": "com.amazonaws.ec2#PermissionGroup", + "m7gd_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Group", - "smithy.api#documentation": "

The name of the group.

", - "smithy.api#xmlName": "group" + "smithy.api#enumValue": "m7gd.12xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a load permission.

" - } - }, - "com.amazonaws.ec2#LoadPermissionList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LoadPermission", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LoadPermissionListRequest": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LoadPermissionRequest", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LoadPermissionModifications": { - "type": "structure", - "members": { - "Add": { - "target": "com.amazonaws.ec2#LoadPermissionListRequest", + }, + "m7gd_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The load permissions to add.

" + "smithy.api#enumValue": "m7gd.16xlarge" } }, - "Remove": { - "target": "com.amazonaws.ec2#LoadPermissionListRequest", + "r7gd_medium": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The load permissions to remove.

" + "smithy.api#enumValue": "r7gd.medium" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes modifications to the load permissions of an Amazon FPGA image (AFI).

" - } - }, - "com.amazonaws.ec2#LoadPermissionRequest": { - "type": "structure", - "members": { - "Group": { - "target": "com.amazonaws.ec2#PermissionGroup", + }, + "r7gd_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The name of the group.

" + "smithy.api#enumValue": "r7gd.large" } }, - "UserId": { - "target": "com.amazonaws.ec2#String", + "r7gd_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID.

" + "smithy.api#enumValue": "r7gd.xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a load permission.

" - } - }, - "com.amazonaws.ec2#LocalGateway": { - "type": "structure", - "members": { - "LocalGatewayId": { - "target": "com.amazonaws.ec2#LocalGatewayId", + }, + "r7gd_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayId", - "smithy.api#documentation": "

The ID of the local gateway.

", - "smithy.api#xmlName": "localGatewayId" + "smithy.api#enumValue": "r7gd.2xlarge" } }, - "OutpostArn": { - "target": "com.amazonaws.ec2#String", + "r7gd_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OutpostArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost.

", - "smithy.api#xmlName": "outpostArn" + "smithy.api#enumValue": "r7gd.4xlarge" } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "r7gd_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the local gateway.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "r7gd.8xlarge" } }, - "State": { - "target": "com.amazonaws.ec2#String", + "r7gd_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the local gateway.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "r7gd.12xlarge" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "r7gd_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags assigned to the local gateway.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "r7gd.16xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a local gateway.

" - } - }, - "com.amazonaws.ec2#LocalGatewayId": { - "type": "string" - }, - "com.amazonaws.ec2#LocalGatewayIdSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LocalGatewayId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LocalGatewayMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 5, - "max": 1000 - } - } - }, - "com.amazonaws.ec2#LocalGatewayRoute": { - "type": "structure", - "members": { - "DestinationCidrBlock": { - "target": "com.amazonaws.ec2#String", + }, + "r7a_medium": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DestinationCidrBlock", - "smithy.api#documentation": "

The CIDR block used for destination matches.

", - "smithy.api#xmlName": "destinationCidrBlock" + "smithy.api#enumValue": "r7a.medium" } }, - "LocalGatewayVirtualInterfaceGroupId": { - "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId", + "r7a_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceGroupId", - "smithy.api#documentation": "

The ID of the virtual interface group.

", - "smithy.api#xmlName": "localGatewayVirtualInterfaceGroupId" + "smithy.api#enumValue": "r7a.large" } }, - "Type": { - "target": "com.amazonaws.ec2#LocalGatewayRouteType", + "r7a_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Type", - "smithy.api#documentation": "

The route type.

", - "smithy.api#xmlName": "type" + "smithy.api#enumValue": "r7a.xlarge" } }, - "State": { - "target": "com.amazonaws.ec2#LocalGatewayRouteState", + "r7a_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the route.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "r7a.2xlarge" } }, - "LocalGatewayRouteTableId": { - "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", + "r7a_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableId", - "smithy.api#documentation": "

The ID of the local gateway route table.

", - "smithy.api#xmlName": "localGatewayRouteTableId" + "smithy.api#enumValue": "r7a.4xlarge" } }, - "LocalGatewayRouteTableArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "r7a_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the local gateway route table.

", - "smithy.api#xmlName": "localGatewayRouteTableArn" + "smithy.api#enumValue": "r7a.8xlarge" } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "r7a_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the local gateway route.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "r7a.12xlarge" } }, - "SubnetId": { - "target": "com.amazonaws.ec2#SubnetId", + "r7a_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#documentation": "

The ID of the subnet.

", - "smithy.api#xmlName": "subnetId" + "smithy.api#enumValue": "r7a.16xlarge" } }, - "CoipPoolId": { - "target": "com.amazonaws.ec2#CoipPoolId", + "r7a_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CoipPoolId", - "smithy.api#documentation": "

The ID of the customer-owned address pool.

", - "smithy.api#xmlName": "coipPoolId" + "smithy.api#enumValue": "r7a.24xlarge" } }, - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#NetworkInterfaceId", + "r7a_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceId", - "smithy.api#documentation": "

The ID of the network interface.

", - "smithy.api#xmlName": "networkInterfaceId" + "smithy.api#enumValue": "r7a.32xlarge" } }, - "DestinationPrefixListId": { - "target": "com.amazonaws.ec2#PrefixListResourceId", + "r7a_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DestinationPrefixListId", - "smithy.api#documentation": "

\n The ID of the prefix list.\n

", - "smithy.api#xmlName": "destinationPrefixListId" + "smithy.api#enumValue": "r7a.48xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a route for a local gateway route table.

" - } - }, - "com.amazonaws.ec2#LocalGatewayRouteList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LocalGatewayRoute", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LocalGatewayRouteState": { - "type": "enum", - "members": { - "pending": { + }, + "c7i_large": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "pending" + "smithy.api#enumValue": "c7i.large" } }, - "active": { + "c7i_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "active" + "smithy.api#enumValue": "c7i.xlarge" } }, - "blackhole": { + "c7i_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "blackhole" + "smithy.api#enumValue": "c7i.2xlarge" } }, - "deleting": { + "c7i_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "deleting" + "smithy.api#enumValue": "c7i.4xlarge" } }, - "deleted": { + "c7i_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "deleted" + "smithy.api#enumValue": "c7i.8xlarge" } - } - } - }, - "com.amazonaws.ec2#LocalGatewayRouteTable": { - "type": "structure", - "members": { - "LocalGatewayRouteTableId": { - "target": "com.amazonaws.ec2#String", + }, + "c7i_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableId", - "smithy.api#documentation": "

The ID of the local gateway route table.

", - "smithy.api#xmlName": "localGatewayRouteTableId" + "smithy.api#enumValue": "c7i.12xlarge" } }, - "LocalGatewayRouteTableArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "c7i_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the local gateway route table.

", - "smithy.api#xmlName": "localGatewayRouteTableArn" + "smithy.api#enumValue": "c7i.16xlarge" } }, - "LocalGatewayId": { - "target": "com.amazonaws.ec2#LocalGatewayId", + "c7i_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayId", - "smithy.api#documentation": "

The ID of the local gateway.

", - "smithy.api#xmlName": "localGatewayId" + "smithy.api#enumValue": "c7i.24xlarge" } }, - "OutpostArn": { - "target": "com.amazonaws.ec2#String", + "c7i_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OutpostArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost.

", - "smithy.api#xmlName": "outpostArn" + "smithy.api#enumValue": "c7i.48xlarge" } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "mac2_m2pro_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the local gateway route table.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "mac2-m2pro.metal" } }, - "State": { - "target": "com.amazonaws.ec2#String", + "r7iz_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the local gateway route table.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "r7iz.large" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "r7iz_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags assigned to the local gateway route table.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "r7iz.xlarge" } }, - "Mode": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableMode", + "r7iz_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Mode", - "smithy.api#documentation": "

The mode of the local gateway route table.

", - "smithy.api#xmlName": "mode" + "smithy.api#enumValue": "r7iz.2xlarge" } }, - "StateReason": { - "target": "com.amazonaws.ec2#StateReason", + "r7iz_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "StateReason", - "smithy.api#documentation": "

Information about the state change.

", - "smithy.api#xmlName": "stateReason" + "smithy.api#enumValue": "r7iz.4xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a local gateway route table.

" - } - }, - "com.amazonaws.ec2#LocalGatewayRouteTableIdSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LocalGatewayRouteTableMode": { - "type": "enum", - "members": { - "direct_vpc_routing": { + }, + "r7iz_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "direct-vpc-routing" + "smithy.api#enumValue": "r7iz.8xlarge" } }, - "coip": { + "r7iz_12xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "coip" + "smithy.api#enumValue": "r7iz.12xlarge" } - } - } - }, - "com.amazonaws.ec2#LocalGatewayRouteTableSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTable", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociation": { - "type": "structure", - "members": { - "LocalGatewayRouteTableVirtualInterfaceGroupAssociationId": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociationId", + }, + "r7iz_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableVirtualInterfaceGroupAssociationId", - "smithy.api#documentation": "

The ID of the association.

", - "smithy.api#xmlName": "localGatewayRouteTableVirtualInterfaceGroupAssociationId" + "smithy.api#enumValue": "r7iz.16xlarge" } }, - "LocalGatewayVirtualInterfaceGroupId": { - "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId", + "r7iz_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceGroupId", - "smithy.api#documentation": "

The ID of the virtual interface group.

", - "smithy.api#xmlName": "localGatewayVirtualInterfaceGroupId" + "smithy.api#enumValue": "r7iz.32xlarge" } }, - "LocalGatewayId": { - "target": "com.amazonaws.ec2#String", + "c7a_medium": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayId", - "smithy.api#documentation": "

The ID of the local gateway.

", - "smithy.api#xmlName": "localGatewayId" + "smithy.api#enumValue": "c7a.medium" } }, - "LocalGatewayRouteTableId": { - "target": "com.amazonaws.ec2#LocalGatewayId", + "c7a_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableId", - "smithy.api#documentation": "

The ID of the local gateway route table.

", - "smithy.api#xmlName": "localGatewayRouteTableId" + "smithy.api#enumValue": "c7a.large" } }, - "LocalGatewayRouteTableArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "c7a_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the local gateway route table for the virtual interface group.

", - "smithy.api#xmlName": "localGatewayRouteTableArn" + "smithy.api#enumValue": "c7a.xlarge" } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "c7a_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the local gateway virtual interface group association.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "c7a.2xlarge" } }, - "State": { - "target": "com.amazonaws.ec2#String", + "c7a_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the association.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "c7a.4xlarge" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "c7a_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags assigned to the association.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "c7a.8xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an association between a local gateway route table and a virtual interface group.

" - } - }, - "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociationId": { - "type": "string" - }, - "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociationIdSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociationId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociationSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociation", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociation": { - "type": "structure", - "members": { - "LocalGatewayRouteTableVpcAssociationId": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociationId", + }, + "c7a_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableVpcAssociationId", - "smithy.api#documentation": "

The ID of the association.

", - "smithy.api#xmlName": "localGatewayRouteTableVpcAssociationId" + "smithy.api#enumValue": "c7a.12xlarge" } }, - "LocalGatewayRouteTableId": { - "target": "com.amazonaws.ec2#String", + "c7a_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableId", - "smithy.api#documentation": "

The ID of the local gateway route table.

", - "smithy.api#xmlName": "localGatewayRouteTableId" + "smithy.api#enumValue": "c7a.16xlarge" } }, - "LocalGatewayRouteTableArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "c7a_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayRouteTableArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the local gateway route table for the association.

", - "smithy.api#xmlName": "localGatewayRouteTableArn" + "smithy.api#enumValue": "c7a.24xlarge" } }, - "LocalGatewayId": { - "target": "com.amazonaws.ec2#String", + "c7a_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayId", - "smithy.api#documentation": "

The ID of the local gateway.

", - "smithy.api#xmlName": "localGatewayId" + "smithy.api#enumValue": "c7a.32xlarge" } }, - "VpcId": { - "target": "com.amazonaws.ec2#String", + "c7a_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#xmlName": "vpcId" + "smithy.api#enumValue": "c7a.48xlarge" } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "c7a_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the local gateway route table for the association.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "c7a.metal-48xl" } }, - "State": { - "target": "com.amazonaws.ec2#String", + "r7a_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the association.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "r7a.metal-48xl" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "r7i_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags assigned to the association.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "r7i.large" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an association between a local gateway route table and a VPC.

" - } - }, - "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociationId": { - "type": "string" - }, - "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociationIdSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociationId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociationSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociation", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LocalGatewayRouteType": { - "type": "enum", - "members": { - "static": { + }, + "r7i_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "static" + "smithy.api#enumValue": "r7i.xlarge" } }, - "propagated": { + "r7i_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "propagated" + "smithy.api#enumValue": "r7i.2xlarge" } - } - } - }, - "com.amazonaws.ec2#LocalGatewayRoutetableId": { - "type": "string" - }, - "com.amazonaws.ec2#LocalGatewaySet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LocalGateway", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LocalGatewayVirtualInterface": { - "type": "structure", - "members": { - "LocalGatewayVirtualInterfaceId": { - "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceId", + }, + "r7i_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceId", - "smithy.api#documentation": "

The ID of the virtual interface.

", - "smithy.api#xmlName": "localGatewayVirtualInterfaceId" + "smithy.api#enumValue": "r7i.4xlarge" } }, - "LocalGatewayId": { - "target": "com.amazonaws.ec2#String", + "r7i_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayId", - "smithy.api#documentation": "

The ID of the local gateway.

", - "smithy.api#xmlName": "localGatewayId" + "smithy.api#enumValue": "r7i.8xlarge" } }, - "Vlan": { - "target": "com.amazonaws.ec2#Integer", + "r7i_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Vlan", - "smithy.api#documentation": "

The ID of the VLAN.

", - "smithy.api#xmlName": "vlan" + "smithy.api#enumValue": "r7i.12xlarge" } }, - "LocalAddress": { - "target": "com.amazonaws.ec2#String", + "r7i_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalAddress", - "smithy.api#documentation": "

The local address.

", - "smithy.api#xmlName": "localAddress" + "smithy.api#enumValue": "r7i.16xlarge" } }, - "PeerAddress": { - "target": "com.amazonaws.ec2#String", + "r7i_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PeerAddress", - "smithy.api#documentation": "

The peer address.

", - "smithy.api#xmlName": "peerAddress" + "smithy.api#enumValue": "r7i.24xlarge" } }, - "LocalBgpAsn": { - "target": "com.amazonaws.ec2#Integer", + "r7i_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalBgpAsn", - "smithy.api#documentation": "

The Border Gateway Protocol (BGP) Autonomous System Number (ASN) of the local gateway.

", - "smithy.api#xmlName": "localBgpAsn" + "smithy.api#enumValue": "r7i.48xlarge" } }, - "PeerBgpAsn": { - "target": "com.amazonaws.ec2#Integer", + "dl2q_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PeerBgpAsn", - "smithy.api#documentation": "

The peer BGP ASN.

", - "smithy.api#xmlName": "peerBgpAsn" + "smithy.api#enumValue": "dl2q.24xlarge" } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "mac2_m2_metal": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the local gateway virtual interface.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "mac2-m2.metal" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "i4i_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags assigned to the virtual interface.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "i4i.12xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a local gateway virtual interface.

" - } - }, - "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroup": { - "type": "structure", - "members": { - "LocalGatewayVirtualInterfaceGroupId": { - "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId", + }, + "i4i_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceGroupId", - "smithy.api#documentation": "

The ID of the virtual interface group.

", - "smithy.api#xmlName": "localGatewayVirtualInterfaceGroupId" + "smithy.api#enumValue": "i4i.24xlarge" } }, - "LocalGatewayVirtualInterfaceIds": { - "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceIdSet", + "c7i_metal_24xl": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceIdSet", - "smithy.api#documentation": "

The IDs of the virtual interfaces.

", - "smithy.api#xmlName": "localGatewayVirtualInterfaceIdSet" + "smithy.api#enumValue": "c7i.metal-24xl" } }, - "LocalGatewayId": { - "target": "com.amazonaws.ec2#String", + "c7i_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayId", - "smithy.api#documentation": "

The ID of the local gateway.

", - "smithy.api#xmlName": "localGatewayId" + "smithy.api#enumValue": "c7i.metal-48xl" } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "m7i_metal_24xl": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the local gateway virtual interface group.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "m7i.metal-24xl" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "m7i_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags assigned to the virtual interface group.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "m7i.metal-48xl" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a local gateway virtual interface group.

" - } - }, - "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId": { - "type": "string" - }, - "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupIdSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroup", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LocalGatewayVirtualInterfaceId": { - "type": "string" - }, - "com.amazonaws.ec2#LocalGatewayVirtualInterfaceIdSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LocalGatewayVirtualInterfaceSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LocalGatewayVirtualInterface", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LocalStorage": { - "type": "enum", - "members": { - "INCLUDED": { + }, + "r7i_metal_24xl": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "included" + "smithy.api#enumValue": "r7i.metal-24xl" } }, - "REQUIRED": { + "r7i_metal_48xl": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "required" + "smithy.api#enumValue": "r7i.metal-48xl" } }, - "EXCLUDED": { + "r7iz_metal_16xl": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "excluded" + "smithy.api#enumValue": "r7iz.metal-16xl" } - } - } - }, - "com.amazonaws.ec2#LocalStorageType": { - "type": "enum", - "members": { - "HDD": { + }, + "r7iz_metal_32xl": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "hdd" + "smithy.api#enumValue": "r7iz.metal-32xl" } }, - "SSD": { + "c7gd_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ssd" + "smithy.api#enumValue": "c7gd.metal" } - } - } - }, - "com.amazonaws.ec2#LocalStorageTypeSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LocalStorageType", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Location": { - "type": "string" - }, - "com.amazonaws.ec2#LocationType": { - "type": "enum", - "members": { - "region": { + }, + "m7gd_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "region" + "smithy.api#enumValue": "m7gd.metal" } }, - "availability_zone": { + "r7gd_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "availability-zone" + "smithy.api#enumValue": "r7gd.metal" } }, - "availability_zone_id": { + "g6_xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "availability-zone-id" + "smithy.api#enumValue": "g6.xlarge" } }, - "outpost": { + "g6_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "outpost" + "smithy.api#enumValue": "g6.2xlarge" } - } - } - }, - "com.amazonaws.ec2#LockMode": { - "type": "enum", - "members": { - "compliance": { + }, + "g6_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "compliance" + "smithy.api#enumValue": "g6.4xlarge" } }, - "governance": { + "g6_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "governance" + "smithy.api#enumValue": "g6.8xlarge" } - } - } - }, - "com.amazonaws.ec2#LockSnapshot": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#LockSnapshotRequest" - }, - "output": { - "target": "com.amazonaws.ec2#LockSnapshotResult" - }, - "traits": { - "smithy.api#documentation": "

Locks an Amazon EBS snapshot in either governance or compliance \n mode to protect it against accidental or malicious deletions for a specific duration. A locked snapshot \n can't be deleted.

\n

You can also use this action to modify the lock settings for a snapshot that is already locked. The \n allowed modifications depend on the lock mode and lock state:

\n " - } - }, - "com.amazonaws.ec2#LockSnapshotRequest": { - "type": "structure", - "members": { - "SnapshotId": { - "target": "com.amazonaws.ec2#SnapshotId", + }, + "g6_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the snapshot to lock.

", - "smithy.api#required": {} + "smithy.api#enumValue": "g6.12xlarge" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "g6_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "g6.16xlarge" } }, - "LockMode": { - "target": "com.amazonaws.ec2#LockMode", + "g6_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The mode in which to lock the snapshot. Specify one of the following:

\n ", - "smithy.api#required": {} + "smithy.api#enumValue": "g6.24xlarge" } }, - "CoolOffPeriod": { - "target": "com.amazonaws.ec2#CoolOffPeriodRequestHours", + "g6_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The cooling-off period during which you can unlock the snapshot or modify the lock settings after \n locking the snapshot in compliance mode, in hours. After the cooling-off period expires, you can't \n unlock or delete the snapshot, decrease the lock duration, or change the lock mode. You can increase \n the lock duration after the cooling-off period expires.

\n

The cooling-off period is optional when locking a snapshot in compliance mode. If you are locking \n the snapshot in governance mode, omit this parameter.

\n

To lock the snapshot in compliance mode immediately without a cooling-off period, omit this \n parameter.

\n

If you are extending the lock duration for a snapshot that is locked in compliance mode after \n the cooling-off period has expired, omit this parameter. If you specify a cooling-period in a such \n a request, the request fails.

\n

Allowed values: Min 1, max 72.

" + "smithy.api#enumValue": "g6.48xlarge" } }, - "LockDuration": { - "target": "com.amazonaws.ec2#RetentionPeriodRequestDays", + "gr6_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The period of time for which to lock the snapshot, in days. The snapshot lock will automatically \n expire after this period lapses.

\n

You must specify either this parameter or ExpirationDate, but \n not both.

\n

Allowed values: Min: 1, max 36500

" + "smithy.api#enumValue": "gr6.4xlarge" } }, - "ExpirationDate": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "gr6_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The date and time at which the snapshot lock is to automatically expire, in the UTC time zone \n (YYYY-MM-DDThh:mm:ss.sssZ).

\n

You must specify either this parameter or LockDuration, but \n not both.

" + "smithy.api#enumValue": "gr6.8xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#LockSnapshotResult": { - "type": "structure", - "members": { - "SnapshotId": { - "target": "com.amazonaws.ec2#String", + }, + "c7i_flex_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SnapshotId", - "smithy.api#documentation": "

The ID of the snapshot

", - "smithy.api#xmlName": "snapshotId" + "smithy.api#enumValue": "c7i-flex.large" } }, - "LockState": { - "target": "com.amazonaws.ec2#LockState", + "c7i_flex_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LockState", - "smithy.api#documentation": "

The state of the snapshot lock. Valid states include:

\n ", - "smithy.api#xmlName": "lockState" + "smithy.api#enumValue": "c7i-flex.xlarge" } }, - "LockDuration": { - "target": "com.amazonaws.ec2#RetentionPeriodResponseDays", + "c7i_flex_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LockDuration", - "smithy.api#documentation": "

The period of time for which the snapshot is locked, in days.

", - "smithy.api#xmlName": "lockDuration" + "smithy.api#enumValue": "c7i-flex.2xlarge" } }, - "CoolOffPeriod": { - "target": "com.amazonaws.ec2#CoolOffPeriodResponseHours", + "c7i_flex_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CoolOffPeriod", - "smithy.api#documentation": "

The compliance mode cooling-off period, in hours.

", - "smithy.api#xmlName": "coolOffPeriod" + "smithy.api#enumValue": "c7i-flex.4xlarge" } }, - "CoolOffPeriodExpiresOn": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "c7i_flex_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CoolOffPeriodExpiresOn", - "smithy.api#documentation": "

The date and time at which the compliance mode cooling-off period expires, in the UTC time zone \n (YYYY-MM-DDThh:mm:ss.sssZ).

", - "smithy.api#xmlName": "coolOffPeriodExpiresOn" + "smithy.api#enumValue": "c7i-flex.8xlarge" } }, - "LockCreatedOn": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "u7i_12tb_224xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LockCreatedOn", - "smithy.api#documentation": "

The date and time at which the snapshot was locked, in the UTC time zone \n (YYYY-MM-DDThh:mm:ss.sssZ).

", - "smithy.api#xmlName": "lockCreatedOn" + "smithy.api#enumValue": "u7i-12tb.224xlarge" } }, - "LockExpiresOn": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "u7in_16tb_224xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LockExpiresOn", - "smithy.api#documentation": "

The date and time at which the lock will expire, in the UTC time zone \n (YYYY-MM-DDThh:mm:ss.sssZ).

", - "smithy.api#xmlName": "lockExpiresOn" + "smithy.api#enumValue": "u7in-16tb.224xlarge" } }, - "LockDurationStartTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "u7in_24tb_224xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LockDurationStartTime", - "smithy.api#documentation": "

The date and time at which the lock duration started, in the UTC time zone \n (YYYY-MM-DDThh:mm:ss.sssZ).

", - "smithy.api#xmlName": "lockDurationStartTime" + "smithy.api#enumValue": "u7in-24tb.224xlarge" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#LockState": { - "type": "enum", - "members": { - "compliance": { + }, + "u7in_32tb_224xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "compliance" + "smithy.api#enumValue": "u7in-32tb.224xlarge" } }, - "governance": { + "u7ib_12tb_224xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "governance" + "smithy.api#enumValue": "u7ib-12tb.224xlarge" } }, - "compliance_cooloff": { + "c7gn_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "compliance-cooloff" + "smithy.api#enumValue": "c7gn.metal" } }, - "expired": { + "r8g_medium": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "expired" + "smithy.api#enumValue": "r8g.medium" } - } - } - }, - "com.amazonaws.ec2#LockedSnapshotsInfo": { - "type": "structure", - "members": { - "OwnerId": { - "target": "com.amazonaws.ec2#String", + }, + "r8g_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The account ID of the Amazon Web Services account that owns the snapshot.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "r8g.large" } }, - "SnapshotId": { - "target": "com.amazonaws.ec2#String", + "r8g_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SnapshotId", - "smithy.api#documentation": "

The ID of the snapshot.

", - "smithy.api#xmlName": "snapshotId" + "smithy.api#enumValue": "r8g.xlarge" } }, - "LockState": { - "target": "com.amazonaws.ec2#LockState", + "r8g_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LockState", - "smithy.api#documentation": "

The state of the snapshot lock. Valid states include:

\n ", - "smithy.api#xmlName": "lockState" + "smithy.api#enumValue": "r8g.2xlarge" } }, - "LockDuration": { - "target": "com.amazonaws.ec2#RetentionPeriodResponseDays", + "r8g_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LockDuration", - "smithy.api#documentation": "

The period of time for which the snapshot is locked, in days.

", - "smithy.api#xmlName": "lockDuration" + "smithy.api#enumValue": "r8g.4xlarge" } }, - "CoolOffPeriod": { - "target": "com.amazonaws.ec2#CoolOffPeriodResponseHours", + "r8g_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CoolOffPeriod", - "smithy.api#documentation": "

The compliance mode cooling-off period, in hours.

", - "smithy.api#xmlName": "coolOffPeriod" + "smithy.api#enumValue": "r8g.8xlarge" } }, - "CoolOffPeriodExpiresOn": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "r8g_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CoolOffPeriodExpiresOn", - "smithy.api#documentation": "

The date and time at which the compliance mode cooling-off period expires, in the UTC time zone \n (YYYY-MM-DDThh:mm:ss.sssZ).

", - "smithy.api#xmlName": "coolOffPeriodExpiresOn" + "smithy.api#enumValue": "r8g.12xlarge" } }, - "LockCreatedOn": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "r8g_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LockCreatedOn", - "smithy.api#documentation": "

The date and time at which the snapshot was locked, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).

", - "smithy.api#xmlName": "lockCreatedOn" + "smithy.api#enumValue": "r8g.16xlarge" } }, - "LockDurationStartTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "r8g_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LockDurationStartTime", - "smithy.api#documentation": "

The date and time at which the lock duration started, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).

\n

If you lock a snapshot that is in the pending state, the lock duration \n starts only once the snapshot enters the completed state.

", - "smithy.api#xmlName": "lockDurationStartTime" + "smithy.api#enumValue": "r8g.24xlarge" } }, - "LockExpiresOn": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "r8g_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LockExpiresOn", - "smithy.api#documentation": "

The date and time at which the lock will expire, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).

", - "smithy.api#xmlName": "lockExpiresOn" + "smithy.api#enumValue": "r8g.48xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Information about a locked snapshot.

" - } - }, - "com.amazonaws.ec2#LockedSnapshotsInfoList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#LockedSnapshotsInfo", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#LogDestinationType": { - "type": "enum", - "members": { - "cloud_watch_logs": { + }, + "r8g_metal_24xl": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "cloud-watch-logs" + "smithy.api#enumValue": "r8g.metal-24xl" } }, - "s3": { + "r8g_metal_48xl": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "s3" + "smithy.api#enumValue": "r8g.metal-48xl" } }, - "kinesis_data_firehose": { + "mac2_m1ultra_metal": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "kinesis-data-firehose" + "smithy.api#enumValue": "mac2-m1ultra.metal" } - } - } - }, - "com.amazonaws.ec2#Long": { - "type": "long" - }, - "com.amazonaws.ec2#MacHost": { - "type": "structure", - "members": { - "HostId": { - "target": "com.amazonaws.ec2#DedicatedHostId", + }, + "g6e_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "HostId", - "smithy.api#documentation": "

\n The EC2 Mac Dedicated Host ID.\n

", - "smithy.api#xmlName": "hostId" + "smithy.api#enumValue": "g6e.xlarge" } }, - "MacOSLatestSupportedVersions": { - "target": "com.amazonaws.ec2#MacOSVersionStringList", + "g6e_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "MacOSLatestSupportedVersionSet", - "smithy.api#documentation": "

\n The latest macOS versions that the EC2 Mac Dedicated Host can launch without being upgraded.\n

", - "smithy.api#xmlName": "macOSLatestSupportedVersionSet" + "smithy.api#enumValue": "g6e.2xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

\n Information about the EC2 Mac Dedicated Host.\n

" - } - }, - "com.amazonaws.ec2#MacHostList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#MacHost", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#MacOSVersionStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#MaintenanceDetails": { - "type": "structure", - "members": { - "PendingMaintenance": { - "target": "com.amazonaws.ec2#String", + }, + "g6e_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PendingMaintenance", - "smithy.api#documentation": "

Verify existence of a pending maintenance.

", - "smithy.api#xmlName": "pendingMaintenance" + "smithy.api#enumValue": "g6e.4xlarge" } }, - "MaintenanceAutoAppliedAfter": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "g6e_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "MaintenanceAutoAppliedAfter", - "smithy.api#documentation": "

The timestamp after which Amazon Web Services will automatically apply maintenance.

", - "smithy.api#xmlName": "maintenanceAutoAppliedAfter" + "smithy.api#enumValue": "g6e.8xlarge" } }, - "LastMaintenanceApplied": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "g6e_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LastMaintenanceApplied", - "smithy.api#documentation": "

Timestamp of last applied maintenance.

", - "smithy.api#xmlName": "lastMaintenanceApplied" + "smithy.api#enumValue": "g6e.12xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Details for Site-to-Site VPN tunnel endpoint maintenance events.

" - } - }, - "com.amazonaws.ec2#ManagedPrefixList": { - "type": "structure", - "members": { - "PrefixListId": { - "target": "com.amazonaws.ec2#PrefixListResourceId", + }, + "g6e_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PrefixListId", - "smithy.api#documentation": "

The ID of the prefix list.

", - "smithy.api#xmlName": "prefixListId" + "smithy.api#enumValue": "g6e.16xlarge" } }, - "AddressFamily": { - "target": "com.amazonaws.ec2#String", + "g6e_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AddressFamily", - "smithy.api#documentation": "

The IP address version.

", - "smithy.api#xmlName": "addressFamily" + "smithy.api#enumValue": "g6e.24xlarge" } }, - "State": { - "target": "com.amazonaws.ec2#PrefixListState", + "g6e_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The current state of the prefix list.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "g6e.48xlarge" } }, - "StateMessage": { - "target": "com.amazonaws.ec2#String", + "c8g_medium": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "StateMessage", - "smithy.api#documentation": "

The state message.

", - "smithy.api#xmlName": "stateMessage" + "smithy.api#enumValue": "c8g.medium" } }, - "PrefixListArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "c8g_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PrefixListArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the prefix list.

", - "smithy.api#xmlName": "prefixListArn" + "smithy.api#enumValue": "c8g.large" } }, - "PrefixListName": { - "target": "com.amazonaws.ec2#String", + "c8g_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PrefixListName", - "smithy.api#documentation": "

The name of the prefix list.

", - "smithy.api#xmlName": "prefixListName" + "smithy.api#enumValue": "c8g.xlarge" } }, - "MaxEntries": { - "target": "com.amazonaws.ec2#Integer", + "c8g_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "MaxEntries", - "smithy.api#documentation": "

The maximum number of entries for the prefix list.

", - "smithy.api#xmlName": "maxEntries" + "smithy.api#enumValue": "c8g.2xlarge" } }, - "Version": { - "target": "com.amazonaws.ec2#Long", + "c8g_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Version", - "smithy.api#documentation": "

The version of the prefix list.

", - "smithy.api#xmlName": "version" + "smithy.api#enumValue": "c8g.4xlarge" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "c8g_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags for the prefix list.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "c8g.8xlarge" } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "c8g_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the owner of the prefix list.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "c8g.12xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a managed prefix list.

" - } - }, - "com.amazonaws.ec2#ManagedPrefixListSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ManagedPrefixList", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#MarketType": { - "type": "enum", - "members": { - "spot": { + }, + "c8g_16xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "spot" + "smithy.api#enumValue": "c8g.16xlarge" } }, - "capacity_block": { + "c8g_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "capacity-block" + "smithy.api#enumValue": "c8g.24xlarge" } - } - } - }, - "com.amazonaws.ec2#MaxIpv4AddrPerInterface": { - "type": "integer" - }, - "com.amazonaws.ec2#MaxIpv6AddrPerInterface": { - "type": "integer" - }, - "com.amazonaws.ec2#MaxNetworkInterfaces": { - "type": "integer" - }, - "com.amazonaws.ec2#MaxResults": { - "type": "integer" - }, - "com.amazonaws.ec2#MaxResultsParam": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 0, - "max": 100 - } - } - }, - "com.amazonaws.ec2#MaximumBandwidthInMbps": { - "type": "integer" - }, - "com.amazonaws.ec2#MaximumEfaInterfaces": { - "type": "integer" - }, - "com.amazonaws.ec2#MaximumIops": { - "type": "integer" - }, - "com.amazonaws.ec2#MaximumNetworkCards": { - "type": "integer" - }, - "com.amazonaws.ec2#MaximumThroughputInMBps": { - "type": "double" - }, - "com.amazonaws.ec2#MediaAcceleratorInfo": { - "type": "structure", - "members": { - "Accelerators": { - "target": "com.amazonaws.ec2#MediaDeviceInfoList", + }, + "c8g_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Accelerators", - "smithy.api#documentation": "

Describes the media accelerators for the instance type.

", - "smithy.api#xmlName": "accelerators" + "smithy.api#enumValue": "c8g.48xlarge" } }, - "TotalMediaMemoryInMiB": { - "target": "com.amazonaws.ec2#TotalMediaMemory", + "c8g_metal_24xl": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TotalMediaMemoryInMiB", - "smithy.api#documentation": "

The total size of the memory for the media accelerators for the instance type, in MiB.

", - "smithy.api#xmlName": "totalMediaMemoryInMiB" + "smithy.api#enumValue": "c8g.metal-24xl" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the media accelerators for the instance type.

" - } - }, - "com.amazonaws.ec2#MediaDeviceCount": { - "type": "integer" - }, - "com.amazonaws.ec2#MediaDeviceInfo": { - "type": "structure", - "members": { - "Count": { - "target": "com.amazonaws.ec2#MediaDeviceCount", + }, + "c8g_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Count", - "smithy.api#documentation": "

The number of media accelerators for the instance type.

", - "smithy.api#xmlName": "count" + "smithy.api#enumValue": "c8g.metal-48xl" } }, - "Name": { - "target": "com.amazonaws.ec2#MediaDeviceName", + "m8g_medium": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Name", - "smithy.api#documentation": "

The name of the media accelerator.

", - "smithy.api#xmlName": "name" + "smithy.api#enumValue": "m8g.medium" } }, - "Manufacturer": { - "target": "com.amazonaws.ec2#MediaDeviceManufacturerName", + "m8g_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Manufacturer", - "smithy.api#documentation": "

The manufacturer of the media accelerator.

", - "smithy.api#xmlName": "manufacturer" + "smithy.api#enumValue": "m8g.large" } }, - "MemoryInfo": { - "target": "com.amazonaws.ec2#MediaDeviceMemoryInfo", + "m8g_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "MemoryInfo", - "smithy.api#documentation": "

Describes the memory available to the media accelerator.

", - "smithy.api#xmlName": "memoryInfo" + "smithy.api#enumValue": "m8g.xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the media accelerators for the instance type.

" - } - }, - "com.amazonaws.ec2#MediaDeviceInfoList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#MediaDeviceInfo", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#MediaDeviceManufacturerName": { - "type": "string" - }, - "com.amazonaws.ec2#MediaDeviceMemoryInfo": { - "type": "structure", - "members": { - "SizeInMiB": { - "target": "com.amazonaws.ec2#MediaDeviceMemorySize", + }, + "m8g_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SizeInMiB", - "smithy.api#documentation": "

The size of the memory available to each media accelerator, in MiB.

", - "smithy.api#xmlName": "sizeInMiB" + "smithy.api#enumValue": "m8g.2xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the memory available to the media accelerator.

" - } - }, - "com.amazonaws.ec2#MediaDeviceMemorySize": { - "type": "integer" - }, - "com.amazonaws.ec2#MediaDeviceName": { - "type": "string" - }, - "com.amazonaws.ec2#MembershipType": { - "type": "enum", - "members": { - "static": { + }, + "m8g_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "static" + "smithy.api#enumValue": "m8g.4xlarge" } }, - "igmp": { + "m8g_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "igmp" + "smithy.api#enumValue": "m8g.8xlarge" } - } - } - }, - "com.amazonaws.ec2#MemoryGiBPerVCpu": { - "type": "structure", - "members": { - "Min": { - "target": "com.amazonaws.ec2#Double", + }, + "m8g_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Min", - "smithy.api#documentation": "

The minimum amount of memory per vCPU, in GiB. If this parameter is not specified, there is\n no minimum limit.

", - "smithy.api#xmlName": "min" + "smithy.api#enumValue": "m8g.12xlarge" } }, - "Max": { - "target": "com.amazonaws.ec2#Double", + "m8g_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Max", - "smithy.api#documentation": "

The maximum amount of memory per vCPU, in GiB. If this parameter is not specified, there is\n no maximum limit.

", - "smithy.api#xmlName": "max" + "smithy.api#enumValue": "m8g.16xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The minimum and maximum amount of memory per vCPU, in GiB.

\n

" - } - }, - "com.amazonaws.ec2#MemoryGiBPerVCpuRequest": { - "type": "structure", - "members": { - "Min": { - "target": "com.amazonaws.ec2#Double", + }, + "m8g_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The minimum amount of memory per vCPU, in GiB. To specify no minimum limit, omit this\n parameter.

" + "smithy.api#enumValue": "m8g.24xlarge" } }, - "Max": { - "target": "com.amazonaws.ec2#Double", + "m8g_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum amount of memory per vCPU, in GiB. To specify no maximum limit, omit this\n parameter.

" + "smithy.api#enumValue": "m8g.48xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The minimum and maximum amount of memory per vCPU, in GiB.

" - } - }, - "com.amazonaws.ec2#MemoryInfo": { - "type": "structure", - "members": { - "SizeInMiB": { - "target": "com.amazonaws.ec2#MemorySize", + }, + "m8g_metal_24xl": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SizeInMiB", - "smithy.api#documentation": "

The size of the memory, in MiB.

", - "smithy.api#xmlName": "sizeInMiB" + "smithy.api#enumValue": "m8g.metal-24xl" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the memory for the instance type.

" - } - }, - "com.amazonaws.ec2#MemoryMiB": { - "type": "structure", - "members": { - "Min": { - "target": "com.amazonaws.ec2#Integer", + }, + "m8g_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Min", - "smithy.api#documentation": "

The minimum amount of memory, in MiB. If this parameter is not specified, there is no minimum\n limit.

", - "smithy.api#xmlName": "min" + "smithy.api#enumValue": "m8g.metal-48xl" } }, - "Max": { - "target": "com.amazonaws.ec2#Integer", + "x8g_medium": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Max", - "smithy.api#documentation": "

The maximum amount of memory, in MiB. If this parameter is not specified, there is no\n maximum limit.

", - "smithy.api#xmlName": "max" + "smithy.api#enumValue": "x8g.medium" } - } - }, - "traits": { - "smithy.api#documentation": "

The minimum and maximum amount of memory, in MiB.

" - } - }, - "com.amazonaws.ec2#MemoryMiBRequest": { - "type": "structure", - "members": { - "Min": { - "target": "com.amazonaws.ec2#Integer", + }, + "x8g_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The minimum amount of memory, in MiB. To specify no minimum limit, specify\n 0.

", - "smithy.api#required": {} + "smithy.api#enumValue": "x8g.large" } }, - "Max": { - "target": "com.amazonaws.ec2#Integer", + "x8g_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum amount of memory, in MiB. To specify no maximum limit, omit this\n parameter.

" + "smithy.api#enumValue": "x8g.xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

The minimum and maximum amount of memory, in MiB.

" - } - }, - "com.amazonaws.ec2#MemorySize": { - "type": "long" - }, - "com.amazonaws.ec2#MetadataDefaultHttpTokensState": { - "type": "enum", - "members": { - "optional": { + }, + "x8g_2xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "optional" + "smithy.api#enumValue": "x8g.2xlarge" } }, - "required": { + "x8g_4xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "required" + "smithy.api#enumValue": "x8g.4xlarge" } }, - "no_preference": { + "x8g_8xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "no-preference" + "smithy.api#enumValue": "x8g.8xlarge" } - } - } - }, - "com.amazonaws.ec2#MetricPoint": { - "type": "structure", - "members": { - "StartDate": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + }, + "x8g_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "StartDate", - "smithy.api#documentation": "

The start date for the metric point. The starting date for the metric point. The starting time must be formatted\n as yyyy-mm-ddThh:mm:ss. For example, 2022-06-10T12:00:00.000Z.

", - "smithy.api#xmlName": "startDate" + "smithy.api#enumValue": "x8g.12xlarge" } }, - "EndDate": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "x8g_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EndDate", - "smithy.api#documentation": "

The end date for the metric point. The ending time must be formatted as yyyy-mm-ddThh:mm:ss. For example, 2022-06-12T12:00:00.000Z.

", - "smithy.api#xmlName": "endDate" + "smithy.api#enumValue": "x8g.16xlarge" } }, - "Value": { - "target": "com.amazonaws.ec2#Float", + "x8g_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Value", - "smithy.api#xmlName": "value" + "smithy.api#enumValue": "x8g.24xlarge" } }, - "Status": { - "target": "com.amazonaws.ec2#String", + "x8g_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The status of the metric point.

", - "smithy.api#xmlName": "status" + "smithy.api#enumValue": "x8g.48xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Indicates whether the network was healthy or degraded at a particular point. The value is aggregated from the startDate to the endDate. Currently only five_minutes is supported.

" - } - }, - "com.amazonaws.ec2#MetricPoints": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#MetricPoint", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#MetricType": { - "type": "enum", - "members": { - "aggregate_latency": { + }, + "x8g_metal_24xl": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "aggregate-latency" + "smithy.api#enumValue": "x8g.metal-24xl" } - } - } - }, - "com.amazonaws.ec2#MillisecondDateTime": { - "type": "timestamp" - }, - "com.amazonaws.ec2#ModifyAddressAttribute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyAddressAttributeRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyAddressAttributeResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies an attribute of the specified Elastic IP address. For requirements, see Using reverse DNS for email applications.

" - } - }, - "com.amazonaws.ec2#ModifyAddressAttributeRequest": { - "type": "structure", - "members": { - "AllocationId": { - "target": "com.amazonaws.ec2#AllocationId", + }, + "x8g_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

[EC2-VPC] The allocation ID.

", - "smithy.api#required": {} + "smithy.api#enumValue": "x8g.metal-48xl" } }, - "DomainName": { - "target": "com.amazonaws.ec2#String", + "i7ie_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The domain name to modify for the IP address.

" + "smithy.api#enumValue": "i7ie.large" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "i7ie_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "i7ie.xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyAddressAttributeResult": { - "type": "structure", - "members": { - "Address": { - "target": "com.amazonaws.ec2#AddressAttribute", + }, + "i7ie_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Address", - "smithy.api#documentation": "

Information about the Elastic IP address.

", - "smithy.api#xmlName": "address" + "smithy.api#enumValue": "i7ie.2xlarge" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyAvailabilityZoneGroup": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyAvailabilityZoneGroupRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyAvailabilityZoneGroupResult" - }, - "traits": { - "smithy.api#documentation": "

Changes the opt-in status of the Local Zone and Wavelength Zone group for your\n account.

\n

Use \n \t\tDescribeAvailabilityZones to view the value for GroupName.

" - } - }, - "com.amazonaws.ec2#ModifyAvailabilityZoneGroupRequest": { - "type": "structure", - "members": { - "GroupName": { - "target": "com.amazonaws.ec2#String", + }, + "i7ie_3xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The name of the Availability Zone group, Local Zone group, or Wavelength Zone\n group.

", - "smithy.api#required": {} + "smithy.api#enumValue": "i7ie.3xlarge" } }, - "OptInStatus": { - "target": "com.amazonaws.ec2#ModifyAvailabilityZoneOptInStatus", + "i7ie_6xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Indicates whether you are opted in to the Local Zone group or Wavelength Zone group. The\n only valid value is opted-in. You must contact Amazon Web Services Support to opt out of a Local Zone or Wavelength Zone group.

", - "smithy.api#required": {} + "smithy.api#enumValue": "i7ie.6xlarge" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "i7ie_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "i7ie.12xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyAvailabilityZoneGroupResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + }, + "i7ie_18xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Is true if the request succeeds, and an error otherwise.

", - "smithy.api#xmlName": "return" + "smithy.api#enumValue": "i7ie.18xlarge" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyAvailabilityZoneOptInStatus": { - "type": "enum", - "members": { - "opted_in": { + }, + "i7ie_24xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "opted-in" + "smithy.api#enumValue": "i7ie.24xlarge" } }, - "not_opted_in": { + "i7ie_48xlarge": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "not-opted-in" + "smithy.api#enumValue": "i7ie.48xlarge" } - } - } - }, - "com.amazonaws.ec2#ModifyCapacityReservation": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyCapacityReservationRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyCapacityReservationResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies a Capacity Reservation's capacity and the conditions under which it is to be released. You\n\t\t\tcannot change a Capacity Reservation's instance type, EBS optimization, instance store settings,\n\t\t\tplatform, Availability Zone, or instance eligibility. If you need to modify any of these\n\t\t\tattributes, we recommend that you cancel the Capacity Reservation, and then create a new one with\n\t\t\tthe required attributes.

" - } - }, - "com.amazonaws.ec2#ModifyCapacityReservationFleet": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyCapacityReservationFleetRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyCapacityReservationFleetResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies a Capacity Reservation Fleet.

\n

When you modify the total target capacity of a Capacity Reservation Fleet, the Fleet automatically \n\t\t\tcreates new Capacity Reservations, or modifies or cancels existing Capacity Reservations in the Fleet \n\t\t\tto meet the new total target capacity. When you modify the end date for the Fleet, the end dates for \n\t\t\tall of the individual Capacity Reservations in the Fleet are updated accordingly.

" - } - }, - "com.amazonaws.ec2#ModifyCapacityReservationFleetRequest": { - "type": "structure", - "members": { - "CapacityReservationFleetId": { - "target": "com.amazonaws.ec2#CapacityReservationFleetId", + }, + "i8g_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Capacity Reservation Fleet to modify.

", - "smithy.api#required": {} + "smithy.api#enumValue": "i8g.large" } }, - "TotalTargetCapacity": { - "target": "com.amazonaws.ec2#Integer", + "i8g_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The total number of capacity units to be reserved by the Capacity Reservation Fleet. This value, \n\t\t\ttogether with the instance type weights that you assign to each instance type used by the Fleet \n\t\t\tdetermine the number of instances for which the Fleet reserves capacity. Both values are based on \n\t\t\tunits that make sense for your workload. For more information, see Total target capacity \n\t\t\tin the Amazon EC2 User Guide.

" + "smithy.api#enumValue": "i8g.xlarge" } }, - "EndDate": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "i8g_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The date and time at which the Capacity Reservation Fleet expires. When the Capacity Reservation \n\t\t\tFleet expires, its state changes to expired and all of the Capacity Reservations in the \n\t\t\tFleet expire.

\n

The Capacity Reservation Fleet expires within an hour after the specified time. For example, if you \n\t\t\tspecify 5/31/2019, 13:30:55, the Capacity Reservation Fleet is guaranteed \n\t\t\tto expire between 13:30:55 and 14:30:55 on 5/31/2019.

\n

You can't specify EndDate and \n\t\t\tRemoveEndDate in the same request.

" + "smithy.api#enumValue": "i8g.2xlarge" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "i8g_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "i8g.4xlarge" } }, - "RemoveEndDate": { - "target": "com.amazonaws.ec2#Boolean", + "i8g_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether to remove the end date from the Capacity Reservation Fleet. If you remove the \n\t\t\tend date, the Capacity Reservation Fleet does not expire and it remains active until you explicitly \n\t\t\tcancel it using the CancelCapacityReservationFleet action.

\n

You can't specify RemoveEndDate and \n\t\t\tEndDate in the same request.

" + "smithy.api#enumValue": "i8g.8xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyCapacityReservationFleetResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + }, + "i8g_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "smithy.api#enumValue": "i8g.12xlarge" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyCapacityReservationRequest": { - "type": "structure", - "members": { - "CapacityReservationId": { - "target": "com.amazonaws.ec2#CapacityReservationId", + }, + "i8g_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Capacity Reservation.

", - "smithy.api#required": {} + "smithy.api#enumValue": "i8g.16xlarge" } }, - "InstanceCount": { - "target": "com.amazonaws.ec2#Integer", + "i8g_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The number of instances for which to reserve capacity. The number of instances can't be increased or \n\t\t \tdecreased by more than 1000 in a single request.

" + "smithy.api#enumValue": "i8g.24xlarge" } }, - "EndDate": { - "target": "com.amazonaws.ec2#DateTime", + "i8g_metal_24xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity\n\t\t\tis released and you can no longer launch instances into it. The Capacity Reservation's state changes to\n\t\t\t\texpired when it reaches its end date and time.

\n

The Capacity Reservation is cancelled within an hour from the specified time. For example, if you specify \n\t\t\t5/31/2019, 13:30:55, the Capacity Reservation is guaranteed to end between 13:30:55 and 14:30:55 on 5/31/2019.

\n

You must provide an EndDate value if EndDateType is\n\t\t\t\tlimited. Omit EndDate if EndDateType is\n\t\t\t\tunlimited.

" + "smithy.api#enumValue": "i8g.metal-24xl" } }, - "EndDateType": { - "target": "com.amazonaws.ec2#EndDateType", + "u7i_6tb_112xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates the way in which the Capacity Reservation ends. A Capacity Reservation can have one of the following end\n\t\t\ttypes:

\n " + "smithy.api#enumValue": "u7i-6tb.112xlarge" } }, - "Accept": { - "target": "com.amazonaws.ec2#Boolean", + "u7i_8tb_112xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Reserved. Capacity Reservations you have created are accepted by default.

" + "smithy.api#enumValue": "u7i-8tb.112xlarge" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "u7inh_32tb_480xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "u7inh-32tb.480xlarge" } }, - "AdditionalInfo": { - "target": "com.amazonaws.ec2#String", + "p5e_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Reserved for future use.

" + "smithy.api#enumValue": "p5e.48xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyCapacityReservationResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + }, + "p5en_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "smithy.api#enumValue": "p5en.48xlarge" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyClientVpnEndpoint": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyClientVpnEndpointRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyClientVpnEndpointResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the specified Client VPN endpoint. Modifying the DNS server resets existing client connections.

" - } - }, - "com.amazonaws.ec2#ModifyClientVpnEndpointRequest": { - "type": "structure", - "members": { - "ClientVpnEndpointId": { - "target": "com.amazonaws.ec2#ClientVpnEndpointId", + }, + "f2_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Client VPN endpoint to modify.

", - "smithy.api#required": {} + "smithy.api#enumValue": "f2.12xlarge" } }, - "ServerCertificateArn": { - "target": "com.amazonaws.ec2#String", + "f2_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ARN of the server certificate to be used. The server certificate must be provisioned in \n\t\t\tCertificate Manager (ACM).

" + "smithy.api#enumValue": "f2.48xlarge" } }, - "ConnectionLogOptions": { - "target": "com.amazonaws.ec2#ConnectionLogOptions", + "trn2_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Information about the client connection logging options.

\n

If you enable client connection logging, data about client connections is sent to a\n\t\t\tCloudwatch Logs log stream. The following information is logged:

\n " + "smithy.api#enumValue": "trn2.48xlarge" } }, - "DnsServers": { - "target": "com.amazonaws.ec2#DnsServersOptionsModifyStructure", + "c7i_flex_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Information about the DNS servers to be used by Client VPN connections. A Client VPN endpoint can have \n\t\t\tup to two DNS servers.

" + "smithy.api#enumValue": "c7i-flex.12xlarge" } }, - "VpnPort": { - "target": "com.amazonaws.ec2#Integer", + "c7i_flex_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The port number to assign to the Client VPN endpoint for TCP and UDP traffic.

\n

Valid Values: 443 | 1194\n

\n

Default Value: 443\n

" + "smithy.api#enumValue": "c7i-flex.16xlarge" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "m7i_flex_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

A brief description of the Client VPN endpoint.

" + "smithy.api#enumValue": "m7i-flex.12xlarge" } }, - "SplitTunnel": { - "target": "com.amazonaws.ec2#Boolean", + "m7i_flex_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether the VPN is split-tunnel.

\n

For information about split-tunnel VPN endpoints, see Split-tunnel Client VPN endpoint in the \n \tClient VPN Administrator Guide.

" + "smithy.api#enumValue": "m7i-flex.16xlarge" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "i7ie_metal_24xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "i7ie.metal-24xl" } }, - "SecurityGroupIds": { - "target": "com.amazonaws.ec2#ClientVpnSecurityGroupIdSet", + "i7ie_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The IDs of one or more security groups to apply to the target network.

", - "smithy.api#xmlName": "SecurityGroupId" + "smithy.api#enumValue": "i7ie.metal-48xl" } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "i8g_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ID of the VPC to associate with the Client VPN endpoint.

" + "smithy.api#enumValue": "i8g.48xlarge" } }, - "SelfServicePortal": { - "target": "com.amazonaws.ec2#SelfServicePortal", + "c8gd_medium": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Specify whether to enable the self-service portal for the Client VPN endpoint.

" + "smithy.api#enumValue": "c8gd.medium" } }, - "ClientConnectOptions": { - "target": "com.amazonaws.ec2#ClientConnectOptions", + "c8gd_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The options for managing connection authorization for new client connections.

" + "smithy.api#enumValue": "c8gd.large" } }, - "SessionTimeoutHours": { - "target": "com.amazonaws.ec2#Integer", + "c8gd_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum VPN session duration time in hours.

\n

Valid values: 8 | 10 | 12 | 24\n

\n

Default value: 24\n

" + "smithy.api#enumValue": "c8gd.xlarge" } }, - "ClientLoginBannerOptions": { - "target": "com.amazonaws.ec2#ClientLoginBannerOptions", + "c8gd_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Options for enabling a customizable text banner that will be displayed on\n\t\t\tAmazon Web Services provided clients when a VPN session is established.

" + "smithy.api#enumValue": "c8gd.2xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyClientVpnEndpointResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + }, + "c8gd_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "smithy.api#enumValue": "c8gd.4xlarge" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyDefaultCreditSpecification": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyDefaultCreditSpecificationRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyDefaultCreditSpecificationResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the default credit option for CPU usage of burstable performance instances.\n The default credit option is set at the account level per Amazon Web Services Region, and\n is specified per instance family. All new burstable performance instances in the account\n launch using the default credit option.

\n

\n ModifyDefaultCreditSpecification is an asynchronous operation, which\n works at an Amazon Web Services Region level and modifies the credit option for each\n Availability Zone. All zones in a Region are updated within five minutes. But if\n instances are launched during this operation, they might not get the new credit option\n until the zone is updated. To verify whether the update has occurred, you can call\n GetDefaultCreditSpecification and check\n DefaultCreditSpecification for updates.

\n

For more information, see Burstable\n performance instances in the Amazon EC2 User Guide.

" - } - }, - "com.amazonaws.ec2#ModifyDefaultCreditSpecificationRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "c8gd_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "c8gd.8xlarge" } }, - "InstanceFamily": { - "target": "com.amazonaws.ec2#UnlimitedSupportedInstanceFamily", + "c8gd_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The instance family.

", - "smithy.api#required": {} + "smithy.api#enumValue": "c8gd.12xlarge" } }, - "CpuCredits": { - "target": "com.amazonaws.ec2#String", + "c8gd_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The credit option for CPU usage of the instance family.

\n

Valid Values: standard | unlimited\n

", - "smithy.api#required": {} + "smithy.api#enumValue": "c8gd.16xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyDefaultCreditSpecificationResult": { - "type": "structure", - "members": { - "InstanceFamilyCreditSpecification": { - "target": "com.amazonaws.ec2#InstanceFamilyCreditSpecification", + }, + "c8gd_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceFamilyCreditSpecification", - "smithy.api#documentation": "

The default credit option for CPU usage of the instance family.

", - "smithy.api#xmlName": "instanceFamilyCreditSpecification" + "smithy.api#enumValue": "c8gd.24xlarge" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyEbsDefaultKmsKeyId": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyEbsDefaultKmsKeyIdRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyEbsDefaultKmsKeyIdResult" - }, - "traits": { - "smithy.api#documentation": "

Changes the default KMS key for EBS encryption by default for your account in this Region.

\n

Amazon Web Services creates a unique Amazon Web Services managed KMS key in each Region for use with encryption by default. If\n you change the default KMS key to a symmetric customer managed KMS key, it is used instead of the Amazon Web Services\n managed KMS key. To reset the default KMS key to the Amazon Web Services managed KMS key for EBS, use ResetEbsDefaultKmsKeyId. Amazon EBS does not support asymmetric KMS keys.

\n

If you delete or disable the customer managed KMS key that you specified for use with\n encryption by default, your instances will fail to launch.

\n

For more information, see Amazon EBS encryption\n in the Amazon EBS User Guide.

" - } - }, - "com.amazonaws.ec2#ModifyEbsDefaultKmsKeyIdRequest": { - "type": "structure", - "members": { - "KmsKeyId": { - "target": "com.amazonaws.ec2#KmsKeyId", + }, + "c8gd_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The identifier of the Key Management Service (KMS) KMS key to use for Amazon EBS encryption.\n If this parameter is not specified, your KMS key for Amazon EBS is used. If KmsKeyId is\n specified, the encrypted state must be true.

\n

You can specify the KMS key using any of the following:

\n \n

Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an ID, alias, or ARN that is not valid, \n the action can appear to complete, but eventually fails.

\n

Amazon EBS does not support asymmetric KMS keys.

", - "smithy.api#required": {} + "smithy.api#enumValue": "c8gd.48xlarge" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "c8gd_metal_24xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "c8gd.metal-24xl" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyEbsDefaultKmsKeyIdResult": { - "type": "structure", - "members": { - "KmsKeyId": { - "target": "com.amazonaws.ec2#String", + }, + "c8gd_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "KmsKeyId", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the default KMS key for encryption by default.

", - "smithy.api#xmlName": "kmsKeyId" + "smithy.api#enumValue": "c8gd.metal-48xl" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyFleet": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyFleetRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyFleetResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the specified EC2 Fleet.

\n

You can only modify an EC2 Fleet request of type maintain.

\n

While the EC2 Fleet is being modified, it is in the modifying state.

\n

To scale up your EC2 Fleet, increase its target capacity. The EC2 Fleet launches the additional\n Spot Instances according to the allocation strategy for the EC2 Fleet request. If the allocation\n strategy is lowest-price, the EC2 Fleet launches instances using the Spot Instance\n pool with the lowest price. If the allocation strategy is diversified, the\n EC2 Fleet distributes the instances across the Spot Instance pools. If the allocation strategy\n is capacity-optimized, EC2 Fleet launches instances from Spot Instance pools with optimal\n capacity for the number of instances that are launching.

\n

To scale down your EC2 Fleet, decrease its target capacity. First, the EC2 Fleet cancels any open\n requests that exceed the new target capacity. You can request that the EC2 Fleet terminate Spot\n Instances until the size of the fleet no longer exceeds the new target capacity. If the\n allocation strategy is lowest-price, the EC2 Fleet terminates the instances with\n the highest price per unit. If the allocation strategy is capacity-optimized,\n the EC2 Fleet terminates the instances in the Spot Instance pools that have the least available\n Spot Instance capacity. If the allocation strategy is diversified, the EC2 Fleet terminates\n instances across the Spot Instance pools. Alternatively, you can request that the EC2 Fleet keep\n the fleet at its current size, but not replace any Spot Instances that are interrupted or\n that you terminate manually.

\n

If you are finished with your EC2 Fleet for now, but will use it again later, you can set the\n target capacity to 0.

" - } - }, - "com.amazonaws.ec2#ModifyFleetRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "i7i_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "i7i.large" } }, - "ExcessCapacityTerminationPolicy": { - "target": "com.amazonaws.ec2#FleetExcessCapacityTerminationPolicy", + "i7i_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether running instances should be terminated if the total target capacity of\n the EC2 Fleet is decreased below the current size of the EC2 Fleet.

\n

Supported only for fleets of type maintain.

" + "smithy.api#enumValue": "i7i.xlarge" } }, - "LaunchTemplateConfigs": { - "target": "com.amazonaws.ec2#FleetLaunchTemplateConfigListRequest", + "i7i_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The launch template and overrides.

", - "smithy.api#xmlName": "LaunchTemplateConfig" + "smithy.api#enumValue": "i7i.2xlarge" } }, - "FleetId": { - "target": "com.amazonaws.ec2#FleetId", + "i7i_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the EC2 Fleet.

", - "smithy.api#required": {} + "smithy.api#enumValue": "i7i.4xlarge" } }, - "TargetCapacitySpecification": { - "target": "com.amazonaws.ec2#TargetCapacitySpecificationRequest", + "i7i_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The size of the EC2 Fleet.

" + "smithy.api#enumValue": "i7i.8xlarge" } }, - "Context": { - "target": "com.amazonaws.ec2#String", + "i7i_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Reserved.

" + "smithy.api#enumValue": "i7i.12xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyFleetResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + }, + "i7i_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

If the request succeeds, the response returns true. If the request fails,\n no response is returned, and instead an error message is returned.

", - "smithy.api#xmlName": "return" + "smithy.api#enumValue": "i7i.16xlarge" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyFpgaImageAttribute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyFpgaImageAttributeRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyFpgaImageAttributeResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the specified attribute of the specified Amazon FPGA Image (AFI).

" - } - }, - "com.amazonaws.ec2#ModifyFpgaImageAttributeRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "i7i_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "i7i.24xlarge" } }, - "FpgaImageId": { - "target": "com.amazonaws.ec2#FpgaImageId", + "i7i_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the AFI.

", - "smithy.api#required": {} + "smithy.api#enumValue": "i7i.48xlarge" } }, - "Attribute": { - "target": "com.amazonaws.ec2#FpgaImageAttributeName", + "i7i_metal_24xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The name of the attribute.

" + "smithy.api#enumValue": "i7i.metal-24xl" } }, - "OperationType": { - "target": "com.amazonaws.ec2#OperationType", + "i7i_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The operation type.

" + "smithy.api#enumValue": "i7i.metal-48xl" } }, - "UserIds": { - "target": "com.amazonaws.ec2#UserIdStringList", + "p6_b200_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The Amazon Web Services account IDs. This parameter is valid only when modifying the loadPermission attribute.

", - "smithy.api#xmlName": "UserId" + "smithy.api#enumValue": "p6-b200.48xlarge" } }, - "UserGroups": { - "target": "com.amazonaws.ec2#UserGroupStringList", + "m8gd_medium": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The user groups. This parameter is valid only when modifying the loadPermission attribute.

", - "smithy.api#xmlName": "UserGroup" + "smithy.api#enumValue": "m8gd.medium" } }, - "ProductCodes": { - "target": "com.amazonaws.ec2#ProductCodeStringList", + "m8gd_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The product codes. After you add a product code to an AFI, it can't be removed.\n\t\t This parameter is valid only when modifying the productCodes attribute.

", - "smithy.api#xmlName": "ProductCode" + "smithy.api#enumValue": "m8gd.large" } }, - "LoadPermission": { - "target": "com.amazonaws.ec2#LoadPermissionModifications", + "m8gd_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The load permission for the AFI.

" + "smithy.api#enumValue": "m8gd.xlarge" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "m8gd_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

A description for the AFI.

" + "smithy.api#enumValue": "m8gd.2xlarge" } }, - "Name": { - "target": "com.amazonaws.ec2#String", + "m8gd_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

A name for the AFI.

" + "smithy.api#enumValue": "m8gd.4xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyFpgaImageAttributeResult": { - "type": "structure", - "members": { - "FpgaImageAttribute": { - "target": "com.amazonaws.ec2#FpgaImageAttribute", + }, + "m8gd_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "FpgaImageAttribute", - "smithy.api#documentation": "

Information about the attribute.

", - "smithy.api#xmlName": "fpgaImageAttribute" + "smithy.api#enumValue": "m8gd.8xlarge" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyHosts": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyHostsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyHostsResult" - }, - "traits": { - "smithy.api#documentation": "

Modify the auto-placement setting of a Dedicated Host. When auto-placement is enabled,\n any instances that you launch with a tenancy of host but without a specific\n host ID are placed onto any available Dedicated Host in your account that has\n auto-placement enabled. When auto-placement is disabled, you need to provide a host ID\n to have the instance launch onto a specific host. If no host ID is provided, the\n instance is launched onto a suitable host with auto-placement enabled.

\n

You can also use this API action to modify a Dedicated Host to support either multiple\n instance types in an instance family, or to support a specific instance type\n only.

" - } - }, - "com.amazonaws.ec2#ModifyHostsRequest": { - "type": "structure", - "members": { - "AutoPlacement": { - "target": "com.amazonaws.ec2#AutoPlacement", + }, + "m8gd_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AutoPlacement", - "smithy.api#documentation": "

Specify whether to enable or disable auto-placement.

", - "smithy.api#xmlName": "autoPlacement" + "smithy.api#enumValue": "m8gd.12xlarge" } }, - "HostIds": { - "target": "com.amazonaws.ec2#RequestHostIdList", + "m8gd_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "HostId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the Dedicated Hosts to modify.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "hostId" + "smithy.api#enumValue": "m8gd.16xlarge" } }, - "HostRecovery": { - "target": "com.amazonaws.ec2#HostRecovery", + "m8gd_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether to enable or disable host recovery for the Dedicated Host. For more\n information, see Host recovery\n in the Amazon EC2 User Guide.

" + "smithy.api#enumValue": "m8gd.24xlarge" } }, - "InstanceType": { - "target": "com.amazonaws.ec2#String", + "m8gd_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Specifies the instance type to be supported by the Dedicated Host. Specify this\n parameter to modify a Dedicated Host to support only a specific instance type.

\n

If you want to modify a Dedicated Host to support multiple instance types in its\n current instance family, omit this parameter and specify InstanceFamily instead. You cannot specify InstanceType and InstanceFamily in the\n same request.

" + "smithy.api#enumValue": "m8gd.48xlarge" } }, - "InstanceFamily": { - "target": "com.amazonaws.ec2#String", + "m8gd_metal_24xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Specifies the instance family to be supported by the Dedicated Host. Specify this\n parameter to modify a Dedicated Host to support multiple instance types within its\n current instance family.

\n

If you want to modify a Dedicated Host to support a specific instance type only, omit\n this parameter and specify InstanceType instead. You\n cannot specify InstanceFamily and InstanceType in the same request.

" + "smithy.api#enumValue": "m8gd.metal-24xl" } }, - "HostMaintenance": { - "target": "com.amazonaws.ec2#HostMaintenance", + "m8gd_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether to enable or disable host maintenance for the Dedicated Host. For\n more information, see Host\n maintenance in the Amazon EC2 User Guide.

" + "smithy.api#enumValue": "m8gd.metal-48xl" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyHostsResult": { - "type": "structure", - "members": { - "Successful": { - "target": "com.amazonaws.ec2#ResponseHostIdList", + }, + "r8gd_medium": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Successful", - "smithy.api#documentation": "

The IDs of the Dedicated Hosts that were successfully modified.

", - "smithy.api#xmlName": "successful" + "smithy.api#enumValue": "r8gd.medium" } }, - "Unsuccessful": { - "target": "com.amazonaws.ec2#UnsuccessfulItemList", + "r8gd_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Unsuccessful", - "smithy.api#documentation": "

The IDs of the Dedicated Hosts that could not be modified. Check whether the setting\n you requested can be used.

", - "smithy.api#xmlName": "unsuccessful" + "smithy.api#enumValue": "r8gd.large" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyIdFormat": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyIdFormatRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Modifies the ID format for the specified resource on a per-Region basis. You can\n specify that resources should receive longer IDs (17-character IDs) when they are\n created.

\n

This request can only be used to modify longer ID settings for resource types that\n are within the opt-in period. Resources currently in their opt-in period include:\n bundle | conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | internet-gateway | network-acl\n | network-acl-association | network-interface |\n network-interface-attachment | prefix-list |\n route-table | route-table-association |\n security-group | subnet |\n subnet-cidr-block-association | vpc |\n vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway.

\n

This setting applies to the IAM user who makes the request; it does not apply to the\n entire Amazon Web Services account. By default, an IAM user defaults to the same settings as the root user. If\n you're using this action as the root user, then these settings apply to the entire account,\n unless an IAM user explicitly overrides these settings for themselves. For more information,\n see Resource IDs \n in the Amazon Elastic Compute Cloud User Guide.

\n

Resources created with longer IDs are visible to all IAM roles and users, regardless\n of these settings and provided that they have permission to use the relevant\n Describe command for the resource type.

" - } - }, - "com.amazonaws.ec2#ModifyIdFormatRequest": { - "type": "structure", - "members": { - "Resource": { - "target": "com.amazonaws.ec2#String", + }, + "r8gd_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of resource: bundle | conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | internet-gateway | network-acl\n | network-acl-association | network-interface |\n network-interface-attachment | prefix-list |\n route-table | route-table-association |\n security-group | subnet |\n subnet-cidr-block-association | vpc |\n vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway.

\n

Alternatively, use the all-current option to include all resource types that are\n currently within their opt-in period for longer IDs.

", - "smithy.api#required": {} + "smithy.api#enumValue": "r8gd.xlarge" } }, - "UseLongIds": { - "target": "com.amazonaws.ec2#Boolean", + "r8gd_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Indicate whether the resource should use longer IDs (17-character IDs).

", - "smithy.api#required": {} + "smithy.api#enumValue": "r8gd.2xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyIdentityIdFormat": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyIdentityIdFormatRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Modifies the ID format of a resource for a specified IAM user, IAM role, or the root\n user for an account; or all IAM users, IAM roles, and the root user for an account. You can\n specify that resources should receive longer IDs (17-character IDs) when they are created.

\n

This request can only be used to modify longer ID settings for resource types that are\n within the opt-in period. Resources currently in their opt-in period include:\n bundle | conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | internet-gateway | network-acl\n | network-acl-association | network-interface |\n network-interface-attachment | prefix-list |\n route-table | route-table-association |\n security-group | subnet |\n subnet-cidr-block-association | vpc |\n vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway.

\n

For more information, see Resource IDs in the\n Amazon Elastic Compute Cloud User Guide.

\n

This setting applies to the principal specified in the request; it does not apply to the\n principal that makes the request.

\n

Resources created with longer IDs are visible to all IAM roles and users, regardless of these\n settings and provided that they have permission to use the relevant Describe\n command for the resource type.

" - } - }, - "com.amazonaws.ec2#ModifyIdentityIdFormatRequest": { - "type": "structure", - "members": { - "PrincipalArn": { - "target": "com.amazonaws.ec2#String", + }, + "r8gd_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PrincipalArn", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ARN of the principal, which can be an IAM user, IAM role, or the root user. Specify\n all to modify the ID format for all IAM users, IAM roles, and the root user of\n the account.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "principalArn" + "smithy.api#enumValue": "r8gd.4xlarge" } }, - "Resource": { - "target": "com.amazonaws.ec2#String", + "r8gd_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Resource", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of resource: bundle | conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | internet-gateway | network-acl\n | network-acl-association | network-interface |\n network-interface-attachment | prefix-list |\n route-table | route-table-association |\n security-group | subnet |\n subnet-cidr-block-association | vpc |\n vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway.

\n

Alternatively, use the all-current option to include all resource types that are\n currently within their opt-in period for longer IDs.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "resource" + "smithy.api#enumValue": "r8gd.8xlarge" } }, - "UseLongIds": { - "target": "com.amazonaws.ec2#Boolean", + "r8gd_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "UseLongIds", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Indicates whether the resource should use longer IDs (17-character IDs)

", - "smithy.api#required": {}, - "smithy.api#xmlName": "useLongIds" + "smithy.api#enumValue": "r8gd.12xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyImageAttribute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyImageAttributeRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Modifies the specified attribute of the specified AMI. You can specify only one attribute at a time.

\n

To specify the attribute, you can use the Attribute parameter, or one of the following parameters: \n Description, ImdsSupport, or LaunchPermission.

\n

Images with an Amazon Web Services Marketplace product code cannot be made public.

\n

To enable the SriovNetSupport enhanced networking attribute of an image, enable SriovNetSupport on an instance \n and create an AMI from the instance.

", - "smithy.api#examples": [ - { - "title": "To make an AMI public", - "documentation": "This example makes the specified AMI public.", - "input": { - "ImageId": "ami-5731123e", - "LaunchPermission": { - "Add": [ - { - "Group": "all" - } - ] - } - }, - "output": {} - }, - { - "title": "To grant launch permissions", - "documentation": "This example grants launch permissions for the specified AMI to the specified AWS account.", - "input": { - "ImageId": "ami-5731123e", - "LaunchPermission": { - "Add": [ - { - "UserId": "123456789012" - } - ] - } - }, - "output": {} + }, + "r8gd_16xlarge": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "r8gd.16xlarge" } - ] - } - }, - "com.amazonaws.ec2#ModifyImageAttributeRequest": { - "type": "structure", - "members": { - "Attribute": { - "target": "com.amazonaws.ec2#String", + }, + "r8gd_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The name of the attribute to modify.

\n

Valid values: description | imdsSupport | launchPermission\n

" + "smithy.api#enumValue": "r8gd.24xlarge" } }, - "Description": { - "target": "com.amazonaws.ec2#AttributeValue", + "r8gd_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

A new description for the AMI.

" + "smithy.api#enumValue": "r8gd.48xlarge" } }, - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", + "r8gd_metal_24xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the AMI.

", - "smithy.api#required": {} + "smithy.api#enumValue": "r8gd.metal-24xl" } }, - "LaunchPermission": { - "target": "com.amazonaws.ec2#LaunchPermissionModifications", + "r8gd_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

A new launch permission for the AMI.

" + "smithy.api#enumValue": "r8gd.metal-48xl" } }, - "OperationType": { - "target": "com.amazonaws.ec2#OperationType", + "c8gn_medium": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The operation type. \n This parameter can be used only when the Attribute parameter is launchPermission.

" + "smithy.api#enumValue": "c8gn.medium" } }, - "ProductCodes": { - "target": "com.amazonaws.ec2#ProductCodeStringList", + "c8gn_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Not supported.

", - "smithy.api#xmlName": "ProductCode" + "smithy.api#enumValue": "c8gn.large" } }, - "UserGroups": { - "target": "com.amazonaws.ec2#UserGroupStringList", + "c8gn_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The user groups. \n This parameter can be used only when the Attribute parameter is launchPermission.

", - "smithy.api#xmlName": "UserGroup" + "smithy.api#enumValue": "c8gn.xlarge" } }, - "UserIds": { - "target": "com.amazonaws.ec2#UserIdStringList", + "c8gn_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The Amazon Web Services account IDs. \n This parameter can be used only when the Attribute parameter is launchPermission.

", - "smithy.api#xmlName": "UserId" + "smithy.api#enumValue": "c8gn.2xlarge" } }, - "Value": { - "target": "com.amazonaws.ec2#String", + "c8gn_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The value of the attribute being modified. \n This parameter can be used only when the Attribute parameter is description or imdsSupport.

" + "smithy.api#enumValue": "c8gn.4xlarge" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "c8gn_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#enumValue": "c8gn.8xlarge" } }, - "OrganizationArns": { - "target": "com.amazonaws.ec2#OrganizationArnStringList", + "c8gn_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an organization. This parameter can be used only when the Attribute parameter is launchPermission.

", - "smithy.api#xmlName": "OrganizationArn" + "smithy.api#enumValue": "c8gn.12xlarge" } }, - "OrganizationalUnitArns": { - "target": "com.amazonaws.ec2#OrganizationalUnitArnStringList", + "c8gn_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an organizational unit (OU). This parameter can be used only when the Attribute parameter is launchPermission.

", - "smithy.api#xmlName": "OrganizationalUnitArn" + "smithy.api#enumValue": "c8gn.16xlarge" } }, - "ImdsSupport": { - "target": "com.amazonaws.ec2#AttributeValue", + "c8gn_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Set to v2.0 to indicate that IMDSv2 is specified in the AMI. Instances\n launched from this AMI will have HttpTokens automatically set to\n required so that, by default, the instance requires that IMDSv2 is used when\n requesting instance metadata. In addition, HttpPutResponseHopLimit is set to\n 2. For more information, see Configure\n the AMI in the Amazon EC2 User Guide.

\n \n

Do not use this parameter unless your AMI software supports IMDSv2. After you set the value to v2.0, \n you can't undo it. The only way to “reset” your AMI is to create a new AMI from the underlying snapshot.

\n
" + "smithy.api#enumValue": "c8gn.24xlarge" } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the parameters for ModifyImageAttribute.

", - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyInstanceAttribute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyInstanceAttributeRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Modifies the specified attribute of the specified instance. You can specify only one\n attribute at a time.

\n

\n Note: Using this action to change the security groups\n associated with an elastic network interface (ENI) attached to an instance can\n result in an error if the instance has more than one ENI. To change the security groups\n associated with an ENI attached to an instance that has multiple ENIs, we recommend that\n you use the ModifyNetworkInterfaceAttribute action.

\n

To modify some attributes, the instance must be stopped. For more information, see\n Modify a stopped instance in the\n Amazon EC2 User Guide.

", - "smithy.api#examples": [ - { - "title": "To modify the instance type", - "documentation": "This example modifies the instance type of the specified stopped instance.", - "input": { - "InstanceId": "i-1234567890abcdef0", - "InstanceType": { - "Value": "m5.large" - } - }, - "output": {} - }, - { - "title": "To enable enhanced networking", - "documentation": "This example enables enhanced networking for the specified stopped instance.", - "input": { - "InstanceId": "i-1234567890abcdef0", - "EnaSupport": { - "Value": true - } - }, - "output": {} + }, + "c8gn_48xlarge": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c8gn.48xlarge" } - ] - } - }, - "com.amazonaws.ec2#ModifyInstanceAttributeRequest": { - "type": "structure", - "members": { - "SourceDestCheck": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + }, + "c8gn_metal_24xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Enable or disable source/destination checks, which ensure that the instance is either\n the source or the destination of any traffic that it receives. If the value is\n true, source/destination checks are enabled; otherwise, they are\n disabled. The default value is true. You must disable source/destination\n checks if the instance runs services such as network address translation, routing, or\n firewalls.

" + "smithy.api#enumValue": "c8gn.metal-24xl" } }, - "Attribute": { - "target": "com.amazonaws.ec2#InstanceAttributeName", + "c8gn_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Attribute", - "smithy.api#documentation": "

The name of the attribute to modify.

\n \n

You can modify the following attributes only: disableApiTermination |\n instanceType | kernel | ramdisk |\n instanceInitiatedShutdownBehavior | blockDeviceMapping\n | userData | sourceDestCheck | groupSet |\n ebsOptimized | sriovNetSupport |\n enaSupport | nvmeSupport | disableApiStop\n | enclaveOptions\n

\n
", - "smithy.api#xmlName": "attribute" + "smithy.api#enumValue": "c8gn.metal-48xl" } }, - "BlockDeviceMappings": { - "target": "com.amazonaws.ec2#InstanceBlockDeviceMappingSpecificationList", + "f2_6xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "BlockDeviceMapping", - "smithy.api#documentation": "

Modifies the DeleteOnTermination attribute for volumes that are currently\n attached. The volume must be owned by the caller. If no value is specified for\n DeleteOnTermination, the default is true and the volume is\n deleted when the instance is terminated. You can't modify the DeleteOnTermination \n attribute for volumes that are attached to Fargate tasks.

\n

To add instance store volumes to an Amazon EBS-backed instance, you must add them when\n you launch the instance. For more information, see Update the block device mapping when launching an instance in the\n Amazon EC2 User Guide.

", - "smithy.api#xmlName": "blockDeviceMapping" + "smithy.api#enumValue": "f2.6xlarge" } }, - "DisableApiTermination": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "p6e_gb200_36xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DisableApiTermination", - "smithy.api#documentation": "

If the value is true, you can't terminate the instance using the Amazon\n EC2 console, CLI, or API; otherwise, you can. You cannot use this parameter for Spot\n Instances.

", - "smithy.api#xmlName": "disableApiTermination" + "smithy.api#enumValue": "p6e-gb200.36xlarge" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "g6f_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#enumValue": "g6f.large" } }, - "EbsOptimized": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "g6f_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EbsOptimized", - "smithy.api#documentation": "

Specifies whether the instance is optimized for Amazon EBS I/O. This optimization\n provides dedicated throughput to Amazon EBS and an optimized configuration stack to\n provide optimal EBS I/O performance. This optimization isn't available with all instance\n types. Additional usage charges apply when using an EBS Optimized instance.

", - "smithy.api#xmlName": "ebsOptimized" + "smithy.api#enumValue": "g6f.xlarge" } }, - "EnaSupport": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "g6f_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EnaSupport", - "smithy.api#documentation": "

Set to true to enable enhanced networking with ENA for the\n instance.

\n

This option is supported only for HVM instances. Specifying this option with a PV\n instance can make it unreachable.

", - "smithy.api#xmlName": "enaSupport" + "smithy.api#enumValue": "g6f.2xlarge" } }, - "Groups": { - "target": "com.amazonaws.ec2#GroupIdStringList", + "g6f_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Replaces the security groups of the instance with the specified security groups.\n You must specify the ID of at least one security group, even if it's just the default\n security group for the VPC.

", - "smithy.api#xmlName": "GroupId" + "smithy.api#enumValue": "g6f.4xlarge" } }, - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", + "gr6f_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "instanceId" + "smithy.api#enumValue": "gr6f.4xlarge" } }, - "InstanceInitiatedShutdownBehavior": { - "target": "com.amazonaws.ec2#AttributeValue", + "p5_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceInitiatedShutdownBehavior", - "smithy.api#documentation": "

Specifies whether an instance stops or terminates when you initiate shutdown from the\n instance (using the operating system command for system shutdown).

", - "smithy.api#xmlName": "instanceInitiatedShutdownBehavior" + "smithy.api#enumValue": "p5.4xlarge" } }, - "InstanceType": { - "target": "com.amazonaws.ec2#AttributeValue", + "r8i_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

Changes the instance type to the specified value. For more information, see Instance\n types in the Amazon EC2 User Guide. If the instance type is\n not valid, the error returned is InvalidInstanceAttributeValue.

", - "smithy.api#xmlName": "instanceType" + "smithy.api#enumValue": "r8i.large" } }, - "Kernel": { - "target": "com.amazonaws.ec2#AttributeValue", + "r8i_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Kernel", - "smithy.api#documentation": "

Changes the instance's kernel to the specified value. We recommend that you use\n PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.

", - "smithy.api#xmlName": "kernel" + "smithy.api#enumValue": "r8i.xlarge" } }, - "Ramdisk": { - "target": "com.amazonaws.ec2#AttributeValue", + "r8i_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Ramdisk", - "smithy.api#documentation": "

Changes the instance's RAM disk to the specified value. We recommend that you use\n PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.

", - "smithy.api#xmlName": "ramdisk" + "smithy.api#enumValue": "r8i.2xlarge" } }, - "SriovNetSupport": { - "target": "com.amazonaws.ec2#AttributeValue", + "r8i_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SriovNetSupport", - "smithy.api#documentation": "

Set to simple to enable enhanced networking with the Intel 82599 Virtual\n Function interface for the instance.

\n

There is no way to disable enhanced networking with the Intel 82599 Virtual Function\n interface at this time.

\n

This option is supported only for HVM instances. Specifying this option with a PV\n instance can make it unreachable.

", - "smithy.api#xmlName": "sriovNetSupport" + "smithy.api#enumValue": "r8i.4xlarge" } }, - "UserData": { - "target": "com.amazonaws.ec2#BlobAttributeValue", + "r8i_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "UserData", - "smithy.api#documentation": "

Changes the instance's user data to the specified value. If you are using an Amazon Web Services SDK or command line tool, base64-encoding is performed for you, and you\n can load the text from a file. Otherwise, you must provide base64-encoded text.

", - "smithy.api#xmlName": "userData" + "smithy.api#enumValue": "r8i.8xlarge" } }, - "Value": { - "target": "com.amazonaws.ec2#String", + "r8i_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Value", - "smithy.api#documentation": "

A new value for the attribute. Use only with the kernel,\n ramdisk, userData, disableApiTermination, or\n instanceInitiatedShutdownBehavior attribute.

", - "smithy.api#xmlName": "value" + "smithy.api#enumValue": "r8i.12xlarge" } }, - "DisableApiStop": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "r8i_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether an instance is enabled for stop protection. For more information,\n see Stop\n Protection.

\n

" + "smithy.api#enumValue": "r8i.16xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyInstanceCapacityReservationAttributes": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyInstanceCapacityReservationAttributesRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyInstanceCapacityReservationAttributesResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the Capacity Reservation settings for a stopped instance. Use this action to configure an\n\t\t\tinstance to target a specific Capacity Reservation, run in any open Capacity Reservation with matching\n\t\t\tattributes, or run On-Demand Instance capacity.

" - } - }, - "com.amazonaws.ec2#ModifyInstanceCapacityReservationAttributesRequest": { - "type": "structure", - "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", + }, + "r8i_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance to be modified.

", - "smithy.api#required": {} + "smithy.api#enumValue": "r8i.24xlarge" } }, - "CapacityReservationSpecification": { - "target": "com.amazonaws.ec2#CapacityReservationSpecification", + "r8i_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Information about the Capacity Reservation targeting option.

", - "smithy.api#required": {} + "smithy.api#enumValue": "r8i.32xlarge" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "r8i_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "r8i.48xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyInstanceCapacityReservationAttributesResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + }, + "r8i_96xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "smithy.api#enumValue": "r8i.96xlarge" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyInstanceCreditSpecification": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyInstanceCreditSpecificationRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyInstanceCreditSpecificationResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the credit option for CPU usage on a running or stopped burstable performance\n instance. The credit options are standard and\n unlimited.

\n

For more information, see Burstable\n performance instances in the Amazon EC2 User Guide.

" - } - }, - "com.amazonaws.ec2#ModifyInstanceCreditSpecificationRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "r8i_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "r8i.metal-48xl" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "r8i_metal_96xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring\n Idempotency.

" + "smithy.api#enumValue": "r8i.metal-96xl" } }, - "InstanceCreditSpecifications": { - "target": "com.amazonaws.ec2#InstanceCreditSpecificationListRequest", + "r8i_flex_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Information about the credit option for CPU usage.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "InstanceCreditSpecification" + "smithy.api#enumValue": "r8i-flex.large" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyInstanceCreditSpecificationResult": { - "type": "structure", - "members": { - "SuccessfulInstanceCreditSpecifications": { - "target": "com.amazonaws.ec2#SuccessfulInstanceCreditSpecificationSet", + }, + "r8i_flex_xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SuccessfulInstanceCreditSpecificationSet", - "smithy.api#documentation": "

Information about the instances whose credit option for CPU usage was successfully\n modified.

", - "smithy.api#xmlName": "successfulInstanceCreditSpecificationSet" + "smithy.api#enumValue": "r8i-flex.xlarge" } }, - "UnsuccessfulInstanceCreditSpecifications": { - "target": "com.amazonaws.ec2#UnsuccessfulInstanceCreditSpecificationSet", + "r8i_flex_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "UnsuccessfulInstanceCreditSpecificationSet", - "smithy.api#documentation": "

Information about the instances whose credit option for CPU usage was not\n modified.

", - "smithy.api#xmlName": "unsuccessfulInstanceCreditSpecificationSet" + "smithy.api#enumValue": "r8i-flex.2xlarge" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyInstanceEventStartTime": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyInstanceEventStartTimeRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyInstanceEventStartTimeResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the start time for a scheduled Amazon EC2 instance event.

" - } - }, - "com.amazonaws.ec2#ModifyInstanceEventStartTimeRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "r8i_flex_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "r8i-flex.4xlarge" } }, - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", + "r8i_flex_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance with the scheduled event.

", - "smithy.api#required": {} + "smithy.api#enumValue": "r8i-flex.8xlarge" } }, - "InstanceEventId": { - "target": "com.amazonaws.ec2#String", + "r8i_flex_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the event whose date and time you are modifying.

", - "smithy.api#required": {} + "smithy.api#enumValue": "r8i-flex.12xlarge" } }, - "NotBefore": { - "target": "com.amazonaws.ec2#DateTime", + "r8i_flex_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The new date and time when the event will take place.

", - "smithy.api#required": {} + "smithy.api#enumValue": "r8i-flex.16xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyInstanceEventStartTimeResult": { - "type": "structure", - "members": { - "Event": { - "target": "com.amazonaws.ec2#InstanceStatusEvent", + }, + "m8i_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Event", - "smithy.api#documentation": "

Information about the event.

", - "smithy.api#xmlName": "event" + "smithy.api#enumValue": "m8i.large" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyInstanceEventWindow": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyInstanceEventWindowRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyInstanceEventWindowResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the specified event window.

\n

You can define either a set of time ranges or a cron expression when modifying the event\n window, but not both.

\n

To modify the targets associated with the event window, use the AssociateInstanceEventWindow and DisassociateInstanceEventWindow API.

\n

If Amazon Web Services has already scheduled an event, modifying an event window won't change the time\n of the scheduled event.

\n

For more information, see Define event windows for scheduled\n events in the Amazon EC2 User Guide.

" - } - }, - "com.amazonaws.ec2#ModifyInstanceEventWindowRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "m8i_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "m8i.xlarge" } }, - "Name": { - "target": "com.amazonaws.ec2#String", + "m8i_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The name of the event window.

" + "smithy.api#enumValue": "m8i.2xlarge" } }, - "InstanceEventWindowId": { - "target": "com.amazonaws.ec2#InstanceEventWindowId", + "m8i_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the event window.

", - "smithy.api#required": {} + "smithy.api#enumValue": "m8i.4xlarge" } }, - "TimeRanges": { - "target": "com.amazonaws.ec2#InstanceEventWindowTimeRangeRequestSet", + "m8i_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The time ranges of the event window.

", - "smithy.api#xmlName": "TimeRange" + "smithy.api#enumValue": "m8i.8xlarge" } }, - "CronExpression": { - "target": "com.amazonaws.ec2#InstanceEventWindowCronExpression", + "m8i_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The cron expression of the event window, for example, * 0-4,20-23 * * 1,5.

\n

Constraints:

\n \n

For more information about cron expressions, see cron on the Wikipedia\n website.

" + "smithy.api#enumValue": "m8i.12xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyInstanceEventWindowResult": { - "type": "structure", - "members": { - "InstanceEventWindow": { - "target": "com.amazonaws.ec2#InstanceEventWindow", + }, + "m8i_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceEventWindow", - "smithy.api#documentation": "

Information about the event window.

", - "smithy.api#xmlName": "instanceEventWindow" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyInstanceMaintenanceOptions": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyInstanceMaintenanceOptionsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyInstanceMaintenanceOptionsResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the recovery behavior of your instance to disable simplified automatic\n recovery or set the recovery behavior to default. The default configuration will not\n enable simplified automatic recovery for an unsupported instance type. For more\n information, see Simplified automatic recovery.

" - } - }, - "com.amazonaws.ec2#ModifyInstanceMaintenanceOptionsRequest": { - "type": "structure", - "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#required": {} + "smithy.api#enumValue": "m8i.16xlarge" } }, - "AutoRecovery": { - "target": "com.amazonaws.ec2#InstanceAutoRecoveryState", + "m8i_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Disables the automatic recovery behavior of your instance or sets it to\n default.

" + "smithy.api#enumValue": "m8i.24xlarge" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "m8i_32xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + "smithy.api#enumValue": "m8i.32xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyInstanceMaintenanceOptionsResult": { - "type": "structure", - "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#String", + }, + "m8i_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#xmlName": "instanceId" + "smithy.api#enumValue": "m8i.48xlarge" } }, - "AutoRecovery": { - "target": "com.amazonaws.ec2#InstanceAutoRecoveryState", + "m8i_96xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AutoRecovery", - "smithy.api#documentation": "

Provides information on the current automatic recovery behavior of your\n instance.

", - "smithy.api#xmlName": "autoRecovery" + "smithy.api#enumValue": "m8i.96xlarge" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyInstanceMetadataDefaults": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyInstanceMetadataDefaultsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyInstanceMetadataDefaultsResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the default instance metadata service (IMDS) settings at the account level in\n the specified Amazon Web Services\u2028 Region.

\n \n

To remove a parameter's account-level default setting, specify\n no-preference. If an account-level setting is cleared with\n no-preference, then the instance launch considers the other\n instance metadata settings. For more information, see Order of precedence for instance metadata options in the\n Amazon EC2 User Guide.

\n
" - } - }, - "com.amazonaws.ec2#ModifyInstanceMetadataDefaultsRequest": { - "type": "structure", - "members": { - "HttpTokens": { - "target": "com.amazonaws.ec2#MetadataDefaultHttpTokensState", + }, + "m8i_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether IMDSv2 is required.

\n " + "smithy.api#enumValue": "m8i.metal-48xl" } }, - "HttpPutResponseHopLimit": { - "target": "com.amazonaws.ec2#BoxedInteger", + "m8i_metal_96xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum number of hops that the metadata token can travel. To indicate no\n preference, specify -1.

\n

Possible values: Integers from 1 to 64, and -1\n to indicate no preference

" + "smithy.api#enumValue": "m8i.metal-96xl" } }, - "HttpEndpoint": { - "target": "com.amazonaws.ec2#DefaultInstanceMetadataEndpointState", + "m8i_flex_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Enables or disables the IMDS endpoint on an instance. When disabled, the instance\n metadata can't be accessed.

" + "smithy.api#enumValue": "m8i-flex.large" } }, - "InstanceMetadataTags": { - "target": "com.amazonaws.ec2#DefaultInstanceMetadataTagsState", + "m8i_flex_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Enables or disables access to an instance's tags from the instance metadata. For more\n information, see Work with\n instance tags using the instance metadata in the\n Amazon EC2 User Guide.

" + "smithy.api#enumValue": "m8i-flex.xlarge" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "m8i_flex_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "m8i-flex.2xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyInstanceMetadataDefaultsResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + }, + "m8i_flex_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

If the request succeeds, the response returns true. If the request fails,\n no response is returned, and instead an error message is returned.

", - "smithy.api#xmlName": "return" + "smithy.api#enumValue": "m8i-flex.4xlarge" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyInstanceMetadataOptions": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyInstanceMetadataOptionsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyInstanceMetadataOptionsResult" - }, - "traits": { - "smithy.api#documentation": "

Modify the instance metadata parameters on a running or stopped instance. When you\n modify the parameters on a stopped instance, they are applied when the instance is\n started. When you modify the parameters on a running instance, the API responds with a\n state of “pending”. After the parameter modifications are successfully applied to the\n instance, the state of the modifications changes from “pending” to “applied” in\n subsequent describe-instances API calls. For more information, see Instance metadata and user data in the\n Amazon EC2 User Guide.

" - } - }, - "com.amazonaws.ec2#ModifyInstanceMetadataOptionsRequest": { - "type": "structure", - "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", + }, + "m8i_flex_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#required": {} + "smithy.api#enumValue": "m8i-flex.8xlarge" } }, - "HttpTokens": { - "target": "com.amazonaws.ec2#HttpTokensState", + "m8i_flex_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether IMDSv2 is required.

\n \n

Default:

\n \n

The default value can also be affected by other combinations of parameters. For more\n information, see Order of precedence for instance metadata options in the\n Amazon EC2 User Guide.

" + "smithy.api#enumValue": "m8i-flex.12xlarge" } }, - "HttpPutResponseHopLimit": { - "target": "com.amazonaws.ec2#Integer", + "m8i_flex_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The desired HTTP PUT response hop limit for instance metadata requests. The larger the\n number, the further instance metadata requests can travel. If no parameter is specified,\n the existing state is maintained.

\n

Possible values: Integers from 1 to 64

" + "smithy.api#enumValue": "m8i-flex.16xlarge" } }, - "HttpEndpoint": { - "target": "com.amazonaws.ec2#InstanceMetadataEndpointState", + "i8ge_large": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Enables or disables the HTTP metadata endpoint on your instances. If this parameter is\n not specified, the existing state is maintained.

\n

If you specify a value of disabled, you cannot access your instance\n metadata.

" + "smithy.api#enumValue": "i8ge.large" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "i8ge_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + "smithy.api#enumValue": "i8ge.xlarge" } }, - "HttpProtocolIpv6": { - "target": "com.amazonaws.ec2#InstanceMetadataProtocolState", + "i8ge_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Enables or disables the IPv6 endpoint for the instance metadata service. \n Applies only if you enabled the HTTP metadata endpoint.

" + "smithy.api#enumValue": "i8ge.2xlarge" } }, - "InstanceMetadataTags": { - "target": "com.amazonaws.ec2#InstanceMetadataTagsState", + "i8ge_3xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Set to enabled to allow access to instance tags from the instance\n metadata. Set to disabled to turn off access to instance tags from the\n instance metadata. For more information, see Work with\n instance tags using the instance metadata.

" + "smithy.api#enumValue": "i8ge.3xlarge" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyInstanceMetadataOptionsResult": { - "type": "structure", - "members": { - "InstanceId": { - "target": "com.amazonaws.ec2#String", + }, + "i8ge_6xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#xmlName": "instanceId" + "smithy.api#enumValue": "i8ge.6xlarge" } }, - "InstanceMetadataOptions": { - "target": "com.amazonaws.ec2#InstanceMetadataOptionsResponse", + "i8ge_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceMetadataOptions", - "smithy.api#documentation": "

The metadata options for the instance.

", - "smithy.api#xmlName": "instanceMetadataOptions" + "smithy.api#enumValue": "i8ge.12xlarge" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyInstancePlacement": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyInstancePlacementRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyInstancePlacementResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the placement attributes for a specified instance. You can do the\n following:

\n \n

At least one attribute for affinity, host ID, tenancy, or placement group name must be\n specified in the request. Affinity and tenancy can be modified in the same\n request.

\n

To modify the host ID, tenancy, placement group, or partition for an instance, the\n instance must be in the stopped state.

" - } - }, - "com.amazonaws.ec2#ModifyInstancePlacementRequest": { - "type": "structure", - "members": { - "Affinity": { - "target": "com.amazonaws.ec2#Affinity", + }, + "i8ge_18xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Affinity", - "smithy.api#documentation": "

The affinity setting for the instance. For more information, see Host affinity in the Amazon EC2 User Guide.

", - "smithy.api#xmlName": "affinity" + "smithy.api#enumValue": "i8ge.18xlarge" } }, - "GroupName": { - "target": "com.amazonaws.ec2#PlacementGroupName", + "i8ge_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The name of the placement group in which to place the instance. For spread placement\n groups, the instance must have a tenancy of default. For cluster and\n partition placement groups, the instance must have a tenancy of default or\n dedicated.

\n

To remove an instance from a placement group, specify an empty string (\"\").

" + "smithy.api#enumValue": "i8ge.24xlarge" } }, - "HostId": { - "target": "com.amazonaws.ec2#DedicatedHostId", + "i8ge_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "HostId", - "smithy.api#documentation": "

The ID of the Dedicated Host with which to associate the instance.

", - "smithy.api#xmlName": "hostId" + "smithy.api#enumValue": "i8ge.48xlarge" } }, - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", + "i8ge_metal_24xl": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance that you are modifying.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "instanceId" + "smithy.api#enumValue": "i8ge.metal-24xl" } }, - "Tenancy": { - "target": "com.amazonaws.ec2#HostTenancy", + "i8ge_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Tenancy", - "smithy.api#documentation": "

The tenancy for the instance.

\n \n

For T3 instances, you must launch the instance on a Dedicated Host to use a\n tenancy of host. You can't change the tenancy from\n host to dedicated or default.\n Attempting to make one of these unsupported tenancy changes results in an\n InvalidRequest error code.

\n
", - "smithy.api#xmlName": "tenancy" + "smithy.api#enumValue": "i8ge.metal-48xl" } }, - "PartitionNumber": { - "target": "com.amazonaws.ec2#Integer", + "mac_m4_metal": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The number of the partition in which to place the instance. Valid only if the\n placement group strategy is set to partition.

" + "smithy.api#enumValue": "mac-m4.metal" } }, - "HostResourceGroupArn": { - "target": "com.amazonaws.ec2#String", + "mac_m4pro_metal": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ARN of the host resource group in which to place the instance. The instance must\n have a tenancy of host to specify this parameter.

" + "smithy.api#enumValue": "mac-m4pro.metal" } }, - "GroupId": { - "target": "com.amazonaws.ec2#PlacementGroupId", + "r8gn_medium": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The Group Id of a placement group. You must specify the Placement Group Group Id to launch an instance in a shared placement\n group.

" + "smithy.api#enumValue": "r8gn.medium" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyInstancePlacementResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + }, + "r8gn_large": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Is true if the request succeeds, and an error otherwise.

", - "smithy.api#xmlName": "return" + "smithy.api#enumValue": "r8gn.large" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyIpam": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyIpamRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyIpamResult" - }, - "traits": { - "smithy.api#documentation": "

Modify the configurations of an IPAM.\n

" - } - }, - "com.amazonaws.ec2#ModifyIpamPool": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyIpamPoolRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyIpamPoolResult" - }, - "traits": { - "smithy.api#documentation": "

Modify the configurations of an IPAM pool.

\n

For more information, see Modify a pool in the Amazon VPC IPAM User Guide.\n

" - } - }, - "com.amazonaws.ec2#ModifyIpamPoolRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "r8gn_xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "r8gn.xlarge" } }, - "IpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", + "r8gn_2xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the IPAM pool you want to modify.

", - "smithy.api#required": {} + "smithy.api#enumValue": "r8gn.2xlarge" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "r8gn_4xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The description of the IPAM pool you want to modify.

" + "smithy.api#enumValue": "r8gn.4xlarge" } }, - "AutoImport": { - "target": "com.amazonaws.ec2#Boolean", + "r8gn_8xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

If true, IPAM will continuously look for resources within the CIDR range of this pool \n and automatically import them as allocations into your IPAM. The CIDRs that will be allocated for\n these resources must not already be allocated to other resources in order for the import to succeed. IPAM will import \n a CIDR regardless of its compliance with the pool's allocation rules, so a resource might be imported and subsequently \n marked as noncompliant. If IPAM discovers multiple CIDRs that overlap, IPAM will import the largest CIDR only. If IPAM \n discovers multiple CIDRs with matching CIDRs, IPAM will randomly import one of them only.\n

\n

A locale must be set on the pool for this feature to work.

" + "smithy.api#enumValue": "r8gn.8xlarge" } }, - "AllocationMinNetmaskLength": { - "target": "com.amazonaws.ec2#IpamNetmaskLength", + "r8gn_12xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The minimum netmask length required for CIDR allocations in this IPAM pool to be compliant. Possible \n netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128. The minimum netmask \n length must be less than the maximum netmask length.

" + "smithy.api#enumValue": "r8gn.12xlarge" } }, - "AllocationMaxNetmaskLength": { - "target": "com.amazonaws.ec2#IpamNetmaskLength", + "r8gn_16xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum netmask length possible for CIDR allocations in this IPAM pool to be compliant. Possible \n netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.The maximum netmask \n length must be greater than the minimum netmask length.

" + "smithy.api#enumValue": "r8gn.16xlarge" } }, - "AllocationDefaultNetmaskLength": { - "target": "com.amazonaws.ec2#IpamNetmaskLength", + "r8gn_24xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The default netmask length for allocations added to this pool. If, for example, the CIDR assigned to this pool is 10.0.0.0/8 and you enter 16 here, new allocations will default to 10.0.0.0/16.

" + "smithy.api#enumValue": "r8gn.24xlarge" } }, - "ClearAllocationDefaultNetmaskLength": { - "target": "com.amazonaws.ec2#Boolean", + "r8gn_48xlarge": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Clear the default netmask length allocation rule for this pool.

" + "smithy.api#enumValue": "r8gn.48xlarge" } }, - "AddAllocationResourceTags": { - "target": "com.amazonaws.ec2#RequestIpamResourceTagList", + "r8gn_metal_24xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Add tag allocation rules to a pool. For more information about allocation rules, see Create a top-level pool in the Amazon VPC IPAM User Guide.

", - "smithy.api#xmlName": "AddAllocationResourceTag" + "smithy.api#enumValue": "r8gn.metal-24xl" } }, - "RemoveAllocationResourceTags": { - "target": "com.amazonaws.ec2#RequestIpamResourceTagList", + "r8gn_metal_48xl": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Remove tag allocation rules from a pool.

", - "smithy.api#xmlName": "RemoveAllocationResourceTag" + "smithy.api#enumValue": "r8gn.metal-48xl" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#ModifyIpamPoolResult": { - "type": "structure", + "com.amazonaws.ec2#InstanceTypeHypervisor": { + "type": "enum", "members": { - "IpamPool": { - "target": "com.amazonaws.ec2#IpamPool", + "NITRO": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamPool", - "smithy.api#documentation": "

The results of the modification.

", - "smithy.api#xmlName": "ipamPool" + "smithy.api#enumValue": "nitro" + } + }, + "XEN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "xen" } } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#ModifyIpamRequest": { + "com.amazonaws.ec2#InstanceTypeInfo": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type. For more information, see Instance types in the Amazon EC2\n User Guide.

", + "smithy.api#xmlName": "instanceType" } }, - "IpamId": { - "target": "com.amazonaws.ec2#IpamId", + "CurrentGeneration": { + "target": "com.amazonaws.ec2#CurrentGenerationFlag", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the IPAM you want to modify.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "CurrentGeneration", + "smithy.api#documentation": "

Indicates whether the instance type is current generation.

", + "smithy.api#xmlName": "currentGeneration" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "FreeTierEligible": { + "target": "com.amazonaws.ec2#FreeTierEligibleFlag", "traits": { - "smithy.api#documentation": "

The description of the IPAM you want to modify.

" + "aws.protocols#ec2QueryName": "FreeTierEligible", + "smithy.api#documentation": "

Indicates whether the instance type is eligible for the free tier.

", + "smithy.api#xmlName": "freeTierEligible" } }, - "AddOperatingRegions": { - "target": "com.amazonaws.ec2#AddIpamOperatingRegionSet", + "SupportedUsageClasses": { + "target": "com.amazonaws.ec2#UsageClassTypeList", "traits": { - "smithy.api#documentation": "

Choose the operating Regions for the IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

\n

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide.

", - "smithy.api#xmlName": "AddOperatingRegion" + "aws.protocols#ec2QueryName": "SupportedUsageClasses", + "smithy.api#documentation": "

Indicates whether the instance type is offered for spot, On-Demand, or Capacity\n Blocks.

", + "smithy.api#xmlName": "supportedUsageClasses" } }, - "RemoveOperatingRegions": { - "target": "com.amazonaws.ec2#RemoveIpamOperatingRegionSet", + "SupportedRootDeviceTypes": { + "target": "com.amazonaws.ec2#RootDeviceTypeList", "traits": { - "smithy.api#documentation": "

The operating Regions to remove.

", - "smithy.api#xmlName": "RemoveOperatingRegion" + "aws.protocols#ec2QueryName": "SupportedRootDeviceTypes", + "smithy.api#documentation": "

The supported root device types.

", + "smithy.api#xmlName": "supportedRootDeviceTypes" } }, - "Tier": { - "target": "com.amazonaws.ec2#IpamTier", + "SupportedVirtualizationTypes": { + "target": "com.amazonaws.ec2#VirtualizationTypeList", "traits": { - "smithy.api#documentation": "

IPAM is offered in a Free Tier and an Advanced Tier. For more information about the features available in each tier and the costs associated with the tiers, see Amazon VPC pricing > IPAM tab.

" + "aws.protocols#ec2QueryName": "SupportedVirtualizationTypes", + "smithy.api#documentation": "

The supported virtualization types.

", + "smithy.api#xmlName": "supportedVirtualizationTypes" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyIpamResourceCidr": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyIpamResourceCidrRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyIpamResourceCidrResult" - }, - "traits": { - "smithy.api#documentation": "

Modify a resource CIDR. You can use this action to transfer resource CIDRs between scopes and ignore resource CIDRs that you do not want to manage. If set to false, the resource will not be tracked for overlap, it cannot be auto-imported into a pool, and it will be removed from any pool it has an allocation in.

\n

For more information, see Move resource CIDRs between scopes and Change the monitoring state of resource CIDRs in the Amazon VPC IPAM User Guide.

" - } - }, - "com.amazonaws.ec2#ModifyIpamResourceCidrRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "BareMetal": { + "target": "com.amazonaws.ec2#BareMetalFlag", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "BareMetal", + "smithy.api#documentation": "

Indicates whether the instance is a bare metal instance type.

", + "smithy.api#xmlName": "bareMetal" } }, - "ResourceId": { - "target": "com.amazonaws.ec2#String", + "Hypervisor": { + "target": "com.amazonaws.ec2#InstanceTypeHypervisor", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the resource you want to modify.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Hypervisor", + "smithy.api#documentation": "

The hypervisor for the instance type.

", + "smithy.api#xmlName": "hypervisor" } }, - "ResourceCidr": { - "target": "com.amazonaws.ec2#String", + "ProcessorInfo": { + "target": "com.amazonaws.ec2#ProcessorInfo", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The CIDR of the resource you want to modify.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "ProcessorInfo", + "smithy.api#documentation": "

Describes the processor.

", + "smithy.api#xmlName": "processorInfo" } }, - "ResourceRegion": { - "target": "com.amazonaws.ec2#String", + "VCpuInfo": { + "target": "com.amazonaws.ec2#VCpuInfo", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Amazon Web Services Region of the resource you want to modify.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "VCpuInfo", + "smithy.api#documentation": "

Describes the vCPU configurations for the instance type.

", + "smithy.api#xmlName": "vCpuInfo" } }, - "CurrentIpamScopeId": { - "target": "com.amazonaws.ec2#IpamScopeId", + "MemoryInfo": { + "target": "com.amazonaws.ec2#MemoryInfo", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the current scope that the resource CIDR is in.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "MemoryInfo", + "smithy.api#documentation": "

Describes the memory for the instance type.

", + "smithy.api#xmlName": "memoryInfo" } }, - "DestinationIpamScopeId": { - "target": "com.amazonaws.ec2#IpamScopeId", + "InstanceStorageSupported": { + "target": "com.amazonaws.ec2#InstanceStorageFlag", "traits": { - "smithy.api#documentation": "

The ID of the scope you want to transfer the resource CIDR to.

" + "aws.protocols#ec2QueryName": "InstanceStorageSupported", + "smithy.api#documentation": "

Indicates whether instance storage is supported.

", + "smithy.api#xmlName": "instanceStorageSupported" } }, - "Monitored": { - "target": "com.amazonaws.ec2#Boolean", + "InstanceStorageInfo": { + "target": "com.amazonaws.ec2#InstanceStorageInfo", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Determines if the resource is monitored by IPAM. If a resource is monitored, the resource is discovered by IPAM and you can view details about the resource’s CIDR.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "InstanceStorageInfo", + "smithy.api#documentation": "

Describes the instance storage for the instance type.

", + "smithy.api#xmlName": "instanceStorageInfo" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyIpamResourceCidrResult": { - "type": "structure", - "members": { - "IpamResourceCidr": { - "target": "com.amazonaws.ec2#IpamResourceCidr", + }, + "EbsInfo": { + "target": "com.amazonaws.ec2#EbsInfo", "traits": { - "aws.protocols#ec2QueryName": "IpamResourceCidr", - "smithy.api#documentation": "

The CIDR of the resource.

", - "smithy.api#xmlName": "ipamResourceCidr" + "aws.protocols#ec2QueryName": "EbsInfo", + "smithy.api#documentation": "

Describes the Amazon EBS settings for the instance type.

", + "smithy.api#xmlName": "ebsInfo" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyIpamResourceDiscovery": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyIpamResourceDiscoveryRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyIpamResourceDiscoveryResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies a resource discovery. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

" - } - }, - "com.amazonaws.ec2#ModifyIpamResourceDiscoveryRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "NetworkInfo": { + "target": "com.amazonaws.ec2#NetworkInfo", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "NetworkInfo", + "smithy.api#documentation": "

Describes the network settings for the instance type.

", + "smithy.api#xmlName": "networkInfo" } }, - "IpamResourceDiscoveryId": { - "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", + "GpuInfo": { + "target": "com.amazonaws.ec2#GpuInfo", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A resource discovery ID.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "GpuInfo", + "smithy.api#documentation": "

Describes the GPU accelerator settings for the instance type.

", + "smithy.api#xmlName": "gpuInfo" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "FpgaInfo": { + "target": "com.amazonaws.ec2#FpgaInfo", "traits": { - "smithy.api#documentation": "

A resource discovery description.

" + "aws.protocols#ec2QueryName": "FpgaInfo", + "smithy.api#documentation": "

Describes the FPGA accelerator settings for the instance type.

", + "smithy.api#xmlName": "fpgaInfo" } }, - "AddOperatingRegions": { - "target": "com.amazonaws.ec2#AddIpamOperatingRegionSet", + "PlacementGroupInfo": { + "target": "com.amazonaws.ec2#PlacementGroupInfo", "traits": { - "smithy.api#documentation": "

Add operating Regions to the resource discovery. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

", - "smithy.api#xmlName": "AddOperatingRegion" + "aws.protocols#ec2QueryName": "PlacementGroupInfo", + "smithy.api#documentation": "

Describes the placement group settings for the instance type.

", + "smithy.api#xmlName": "placementGroupInfo" } }, - "RemoveOperatingRegions": { - "target": "com.amazonaws.ec2#RemoveIpamOperatingRegionSet", + "InferenceAcceleratorInfo": { + "target": "com.amazonaws.ec2#InferenceAcceleratorInfo", "traits": { - "smithy.api#documentation": "

Remove operating Regions.

", - "smithy.api#xmlName": "RemoveOperatingRegion" + "aws.protocols#ec2QueryName": "InferenceAcceleratorInfo", + "smithy.api#documentation": "

Describes the Inference accelerator settings for the instance type.

", + "smithy.api#xmlName": "inferenceAcceleratorInfo" + } + }, + "HibernationSupported": { + "target": "com.amazonaws.ec2#HibernationFlag", + "traits": { + "aws.protocols#ec2QueryName": "HibernationSupported", + "smithy.api#documentation": "

Indicates whether On-Demand hibernation is supported.

", + "smithy.api#xmlName": "hibernationSupported" + } + }, + "BurstablePerformanceSupported": { + "target": "com.amazonaws.ec2#BurstablePerformanceFlag", + "traits": { + "aws.protocols#ec2QueryName": "BurstablePerformanceSupported", + "smithy.api#documentation": "

Indicates whether the instance type is a burstable performance T instance type. For more\n information, see Burstable performance\n instances.

", + "smithy.api#xmlName": "burstablePerformanceSupported" + } + }, + "DedicatedHostsSupported": { + "target": "com.amazonaws.ec2#DedicatedHostFlag", + "traits": { + "aws.protocols#ec2QueryName": "DedicatedHostsSupported", + "smithy.api#documentation": "

Indicates whether Dedicated Hosts are supported on the instance type.

", + "smithy.api#xmlName": "dedicatedHostsSupported" + } + }, + "AutoRecoverySupported": { + "target": "com.amazonaws.ec2#AutoRecoveryFlag", + "traits": { + "aws.protocols#ec2QueryName": "AutoRecoverySupported", + "smithy.api#documentation": "

Indicates whether Amazon CloudWatch action based recovery is supported.

", + "smithy.api#xmlName": "autoRecoverySupported" + } + }, + "SupportedBootModes": { + "target": "com.amazonaws.ec2#BootModeTypeList", + "traits": { + "aws.protocols#ec2QueryName": "SupportedBootModes", + "smithy.api#documentation": "

The supported boot modes. For more information, see Boot modes in the Amazon EC2 User\n Guide.

", + "smithy.api#xmlName": "supportedBootModes" + } + }, + "NitroEnclavesSupport": { + "target": "com.amazonaws.ec2#NitroEnclavesSupport", + "traits": { + "aws.protocols#ec2QueryName": "NitroEnclavesSupport", + "smithy.api#documentation": "

Indicates whether Nitro Enclaves is supported.

", + "smithy.api#xmlName": "nitroEnclavesSupport" + } + }, + "NitroTpmSupport": { + "target": "com.amazonaws.ec2#NitroTpmSupport", + "traits": { + "aws.protocols#ec2QueryName": "NitroTpmSupport", + "smithy.api#documentation": "

Indicates whether NitroTPM is supported.

", + "smithy.api#xmlName": "nitroTpmSupport" + } + }, + "NitroTpmInfo": { + "target": "com.amazonaws.ec2#NitroTpmInfo", + "traits": { + "aws.protocols#ec2QueryName": "NitroTpmInfo", + "smithy.api#documentation": "

Describes the supported NitroTPM versions for the instance type.

", + "smithy.api#xmlName": "nitroTpmInfo" + } + }, + "MediaAcceleratorInfo": { + "target": "com.amazonaws.ec2#MediaAcceleratorInfo", + "traits": { + "aws.protocols#ec2QueryName": "MediaAcceleratorInfo", + "smithy.api#documentation": "

Describes the media accelerator settings for the instance type.

", + "smithy.api#xmlName": "mediaAcceleratorInfo" + } + }, + "NeuronInfo": { + "target": "com.amazonaws.ec2#NeuronInfo", + "traits": { + "aws.protocols#ec2QueryName": "NeuronInfo", + "smithy.api#documentation": "

Describes the Neuron accelerator settings for the instance type.

", + "smithy.api#xmlName": "neuronInfo" + } + }, + "PhcSupport": { + "target": "com.amazonaws.ec2#PhcSupport", + "traits": { + "aws.protocols#ec2QueryName": "PhcSupport", + "smithy.api#documentation": "

Indicates whether a local Precision Time Protocol (PTP) hardware clock (PHC) is\n supported.

", + "smithy.api#xmlName": "phcSupport" + } + }, + "RebootMigrationSupport": { + "target": "com.amazonaws.ec2#RebootMigrationSupport", + "traits": { + "aws.protocols#ec2QueryName": "RebootMigrationSupport", + "smithy.api#documentation": "

Indicates whether reboot migration during a user-initiated reboot is supported for\n instances that have a scheduled system-reboot event. For more information,\n see Enable or disable reboot migration in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "rebootMigrationSupport" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes the instance type.

" } }, - "com.amazonaws.ec2#ModifyIpamResourceDiscoveryResult": { + "com.amazonaws.ec2#InstanceTypeInfoFromInstanceRequirements": { "type": "structure", "members": { - "IpamResourceDiscovery": { - "target": "com.amazonaws.ec2#IpamResourceDiscovery", + "InstanceType": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "IpamResourceDiscovery", - "smithy.api#documentation": "

A resource discovery.

", - "smithy.api#xmlName": "ipamResourceDiscovery" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The matching instance type.

", + "smithy.api#xmlName": "instanceType" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

The list of instance types with the specified instance attributes.

" } }, - "com.amazonaws.ec2#ModifyIpamResult": { - "type": "structure", - "members": { - "Ipam": { - "target": "com.amazonaws.ec2#Ipam", - "traits": { - "aws.protocols#ec2QueryName": "Ipam", - "smithy.api#documentation": "

The results of the modification.

", - "smithy.api#xmlName": "ipam" - } + "com.amazonaws.ec2#InstanceTypeInfoFromInstanceRequirementsSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceTypeInfoFromInstanceRequirements", + "traits": { + "smithy.api#xmlName": "item" } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#ModifyIpamScope": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyIpamScopeRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyIpamScopeResult" - }, - "traits": { - "smithy.api#documentation": "

Modify an IPAM scope.

" + "com.amazonaws.ec2#InstanceTypeInfoList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceTypeInfo", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#ModifyIpamScopeRequest": { + "com.amazonaws.ec2#InstanceTypeList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceType" + } + }, + "com.amazonaws.ec2#InstanceTypeOffering": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type. For more information, see Instance types in the Amazon EC2\n User Guide.

", + "smithy.api#xmlName": "instanceType" } }, - "IpamScopeId": { - "target": "com.amazonaws.ec2#IpamScopeId", + "LocationType": { + "target": "com.amazonaws.ec2#LocationType", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the scope you want to modify.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "LocationType", + "smithy.api#documentation": "

The location type.

", + "smithy.api#xmlName": "locationType" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "Location": { + "target": "com.amazonaws.ec2#Location", "traits": { - "smithy.api#documentation": "

The description of the scope you want to modify.

" + "aws.protocols#ec2QueryName": "Location", + "smithy.api#documentation": "

The identifier for the location. This depends on the location type. For example, if the\n location type is region, the location is the Region code (for example,\n us-east-2.)

", + "smithy.api#xmlName": "location" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

The instance types offered.

" } }, - "com.amazonaws.ec2#ModifyIpamScopeResult": { - "type": "structure", - "members": { - "IpamScope": { - "target": "com.amazonaws.ec2#IpamScope", - "traits": { - "aws.protocols#ec2QueryName": "IpamScope", - "smithy.api#documentation": "

The results of the modification.

", - "smithy.api#xmlName": "ipamScope" - } + "com.amazonaws.ec2#InstanceTypeOfferingsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceTypeOffering", + "traits": { + "smithy.api#xmlName": "item" } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#ModifyLaunchTemplate": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyLaunchTemplateRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyLaunchTemplateResult" + "com.amazonaws.ec2#InstanceTypes": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String" }, "traits": { - "smithy.api#documentation": "

Modifies a launch template. You can specify which version of the launch template to\n set as the default version. When launching an instance, the default version applies when\n a launch template version is not specified.

", - "smithy.api#examples": [ - { - "title": "To change the default version of a launch template", - "documentation": "This example specifies version 2 as the default version of the specified launch template.", - "input": { - "LaunchTemplateId": "lt-0abcd290751193123", - "DefaultVersion": "2" - }, - "output": { - "LaunchTemplate": { - "LatestVersionNumber": 2, - "LaunchTemplateId": "lt-0abcd290751193123", - "LaunchTemplateName": "WebServers", - "DefaultVersionNumber": 2, - "CreatedBy": "arn:aws:iam::123456789012:root", - "CreateTime": "2017-12-01T13:35:46.000Z" - } - } - } - ] + "smithy.api#length": { + "min": 0, + "max": 1000 + } } }, - "com.amazonaws.ec2#ModifyLaunchTemplateRequest": { + "com.amazonaws.ec2#InstanceTypesList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InstanceUsage": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" - } - }, - "ClientToken": { + "AccountId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier you provide to ensure the idempotency of the\n request. For more information, see Ensuring\n idempotency.

\n

Constraint: Maximum 128 ASCII characters.

" - } - }, - "LaunchTemplateId": { - "target": "com.amazonaws.ec2#LaunchTemplateId", - "traits": { - "smithy.api#documentation": "

The ID of the launch template.

\n

You must specify either the launch template ID or the\n launch template name, but not both.

" - } - }, - "LaunchTemplateName": { - "target": "com.amazonaws.ec2#LaunchTemplateName", - "traits": { - "smithy.api#documentation": "

The name of the launch template.

\n

You must specify either the launch template ID or the\n launch template name, but not both.

" + "aws.protocols#ec2QueryName": "AccountId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that is making use of the Capacity\n\t\t\tReservation.

", + "smithy.api#xmlName": "accountId" } }, - "DefaultVersion": { - "target": "com.amazonaws.ec2#String", + "UsedInstanceCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The version number of the launch template to set as the default version.

", - "smithy.api#xmlName": "SetDefaultVersion" + "aws.protocols#ec2QueryName": "UsedInstanceCount", + "smithy.api#documentation": "

The number of instances the Amazon Web Services account currently has in the Capacity\n\t\t\tReservation.

", + "smithy.api#xmlName": "usedInstanceCount" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Information about the Capacity Reservation usage.

" } }, - "com.amazonaws.ec2#ModifyLaunchTemplateResult": { + "com.amazonaws.ec2#InstanceUsageSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceUsage", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Integer": { + "type": "integer" + }, + "com.amazonaws.ec2#IntegerWithConstraints": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0 + } + } + }, + "com.amazonaws.ec2#IntegrateServices": { "type": "structure", "members": { - "LaunchTemplate": { - "target": "com.amazonaws.ec2#LaunchTemplate", + "AthenaIntegrations": { + "target": "com.amazonaws.ec2#AthenaIntegrationsSet", "traits": { - "aws.protocols#ec2QueryName": "LaunchTemplate", - "smithy.api#documentation": "

Information about the launch template.

", - "smithy.api#xmlName": "launchTemplate" + "smithy.api#documentation": "

Information about the integration with Amazon Athena.

", + "smithy.api#xmlName": "AthenaIntegration" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes service integrations with VPC Flow logs.

" } }, - "com.amazonaws.ec2#ModifyLocalGatewayRoute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyLocalGatewayRouteRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyLocalGatewayRouteResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the specified local gateway route.

" + "com.amazonaws.ec2#InterfacePermissionType": { + "type": "enum", + "members": { + "INSTANCE_ATTACH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INSTANCE-ATTACH" + } + }, + "EIP_ASSOCIATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EIP-ASSOCIATE" + } + } } }, - "com.amazonaws.ec2#ModifyLocalGatewayRouteRequest": { - "type": "structure", + "com.amazonaws.ec2#InterfaceProtocolType": { + "type": "enum", "members": { - "DestinationCidrBlock": { - "target": "com.amazonaws.ec2#String", + "VLAN": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The CIDR block used for destination matches. The value that you provide must match the CIDR of an existing route in the table.

" + "smithy.api#enumValue": "VLAN" } }, - "LocalGatewayRouteTableId": { - "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", + "GRE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the local gateway route table.

", - "smithy.api#required": {} + "smithy.api#enumValue": "GRE" } - }, - "LocalGatewayVirtualInterfaceGroupId": { - "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId", + } + } + }, + "com.amazonaws.ec2#InternetGateway": { + "type": "structure", + "members": { + "Attachments": { + "target": "com.amazonaws.ec2#InternetGatewayAttachmentList", "traits": { - "smithy.api#documentation": "

\n The ID of the virtual interface group.\n

" + "aws.protocols#ec2QueryName": "AttachmentSet", + "smithy.api#documentation": "

Any VPCs attached to the internet gateway.

", + "smithy.api#xmlName": "attachmentSet" } }, - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#NetworkInterfaceId", + "InternetGatewayId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The ID of the network interface.

" + "aws.protocols#ec2QueryName": "InternetGatewayId", + "smithy.api#documentation": "

The ID of the internet gateway.

", + "smithy.api#xmlName": "internetGatewayId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "OwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the internet gateway.

", + "smithy.api#xmlName": "ownerId" } }, - "DestinationPrefixListId": { - "target": "com.amazonaws.ec2#PrefixListResourceId", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#documentation": "

\n The ID of the prefix list. Use a prefix list in place of DestinationCidrBlock. You \n cannot use DestinationPrefixListId and DestinationCidrBlock in the same request.\n

" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the internet gateway.

", + "smithy.api#xmlName": "tagSet" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes an internet gateway.

" } }, - "com.amazonaws.ec2#ModifyLocalGatewayRouteResult": { + "com.amazonaws.ec2#InternetGatewayAttachment": { "type": "structure", "members": { - "Route": { - "target": "com.amazonaws.ec2#LocalGatewayRoute", + "State": { + "target": "com.amazonaws.ec2#AttachmentStatus", "traits": { - "aws.protocols#ec2QueryName": "Route", - "smithy.api#documentation": "

Information about the local gateway route table.

", - "smithy.api#xmlName": "route" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the attachment. For an internet gateway, the state is\n\t\t\t\tavailable when attached to a VPC; otherwise, this value is not\n\t\t\treturned.

", + "smithy.api#xmlName": "state" + } + }, + "VpcId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#xmlName": "vpcId" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes the attachment of a VPC to an internet gateway or an egress-only internet gateway.

" } }, - "com.amazonaws.ec2#ModifyManagedPrefixList": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyManagedPrefixListRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyManagedPrefixListResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the specified managed prefix list.

\n

Adding or removing entries in a prefix list creates a new version of the prefix list.\n Changing the name of the prefix list does not affect the version.

\n

If you specify a current version number that does not match the true current version\n number, the request fails.

" + "com.amazonaws.ec2#InternetGatewayAttachmentList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InternetGatewayAttachment", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#ModifyManagedPrefixListRequest": { - "type": "structure", + "com.amazonaws.ec2#InternetGatewayBlockMode": { + "type": "enum", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "off": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "off" } }, - "PrefixListId": { - "target": "com.amazonaws.ec2#PrefixListResourceId", + "block_bidirectional": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the prefix list.

", - "smithy.api#required": {} + "smithy.api#enumValue": "block-bidirectional" } }, - "CurrentVersion": { - "target": "com.amazonaws.ec2#Long", + "block_ingress": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The current version of the prefix list.

" + "smithy.api#enumValue": "block-ingress" + } + } + } + }, + "com.amazonaws.ec2#InternetGatewayExclusionMode": { + "type": "enum", + "members": { + "allow_bidirectional": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "allow-bidirectional" } }, - "PrefixListName": { - "target": "com.amazonaws.ec2#String", + "allow_egress": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

A name for the prefix list.

" + "smithy.api#enumValue": "allow-egress" } + } + } + }, + "com.amazonaws.ec2#InternetGatewayId": { + "type": "string" + }, + "com.amazonaws.ec2#InternetGatewayIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InternetGatewayId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#InternetGatewayList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InternetGateway", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpAddress": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 15 }, - "AddEntries": { - "target": "com.amazonaws.ec2#AddPrefixListEntries", + "smithy.api#pattern": "^([0-9]{1,3}.){3}[0-9]{1,3}$" + } + }, + "com.amazonaws.ec2#IpAddressList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpAddress", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpAddressType": { + "type": "enum", + "members": { + "ipv4": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

One or more entries to add to the prefix list.

", - "smithy.api#xmlName": "AddEntry" + "smithy.api#enumValue": "ipv4" } }, - "RemoveEntries": { - "target": "com.amazonaws.ec2#RemovePrefixListEntries", + "dualstack": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

One or more entries to remove from the prefix list.

", - "smithy.api#xmlName": "RemoveEntry" + "smithy.api#enumValue": "dualstack" } }, - "MaxEntries": { + "ipv6": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ipv6" + } + } + } + }, + "com.amazonaws.ec2#IpList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpPermission": { + "type": "structure", + "members": { + "IpProtocol": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "IpProtocol", + "smithy.api#documentation": "

The IP protocol name (tcp, udp, icmp, icmpv6) \n or number (see Protocol Numbers).

\n

Use -1 to specify all protocols. When authorizing\n security group rules, specifying -1 or a protocol number other than\n tcp, udp, icmp, or icmpv6 allows\n traffic on all ports, regardless of any port range you specify. For tcp,\n udp, and icmp, you must specify a port range. For icmpv6,\n the port range is optional; if you omit the port range, traffic for all types and codes is allowed.

", + "smithy.api#xmlName": "ipProtocol" + } + }, + "FromPort": { "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The maximum number of entries for the prefix list. You cannot modify the entries \n of a prefix list and modify the size of a prefix list at the same time.

\n

If any of the resources that reference the prefix list cannot support the new\n maximum size, the modify operation fails. Check the state message for the IDs of \n the first ten resources that do not support the new maximum size.

" + "aws.protocols#ec2QueryName": "FromPort", + "smithy.api#documentation": "

If the protocol is TCP or UDP, this is the start of the port range.\n If the protocol is ICMP or ICMPv6, this is the ICMP type or -1 (all ICMP types).

", + "smithy.api#xmlName": "fromPort" + } + }, + "ToPort": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "ToPort", + "smithy.api#documentation": "

If the protocol is TCP or UDP, this is the end of the port range.\n If the protocol is ICMP or ICMPv6, this is the ICMP code or -1 (all ICMP codes). \n If the start port is -1 (all ICMP types), then the end port must be -1 (all ICMP codes).

", + "smithy.api#xmlName": "toPort" + } + }, + "UserIdGroupPairs": { + "target": "com.amazonaws.ec2#UserIdGroupPairList", + "traits": { + "aws.protocols#ec2QueryName": "Groups", + "smithy.api#documentation": "

The security group and Amazon Web Services account ID pairs.

", + "smithy.api#xmlName": "groups" + } + }, + "IpRanges": { + "target": "com.amazonaws.ec2#IpRangeList", + "traits": { + "aws.protocols#ec2QueryName": "IpRanges", + "smithy.api#documentation": "

The IPv4 address ranges.

", + "smithy.api#xmlName": "ipRanges" + } + }, + "Ipv6Ranges": { + "target": "com.amazonaws.ec2#Ipv6RangeList", + "traits": { + "aws.protocols#ec2QueryName": "Ipv6Ranges", + "smithy.api#documentation": "

The IPv6 address ranges.

", + "smithy.api#xmlName": "ipv6Ranges" + } + }, + "PrefixListIds": { + "target": "com.amazonaws.ec2#PrefixListIdList", + "traits": { + "aws.protocols#ec2QueryName": "PrefixListIds", + "smithy.api#documentation": "

The prefix list IDs.

", + "smithy.api#xmlName": "prefixListIds" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes the permissions for a security group rule.

" } }, - "com.amazonaws.ec2#ModifyManagedPrefixListResult": { + "com.amazonaws.ec2#IpPermissionList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpPermission", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpPrefixList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpRange": { "type": "structure", "members": { - "PrefixList": { - "target": "com.amazonaws.ec2#ManagedPrefixList", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PrefixList", - "smithy.api#documentation": "

Information about the prefix list.

", - "smithy.api#xmlName": "prefixList" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description for the security group rule that references this IPv4 address range.

\n

Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9,\n spaces, and ._-:/()#,@[]+=&;{}!$*

", + "smithy.api#xmlName": "description" + } + }, + "CidrIp": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "CidrIp", + "smithy.api#documentation": "

The IPv4 address range. You can either specify a CIDR block or a source security group,\n not both. To specify a single IPv4 address, use the /32 prefix length.

\n \n

\n Amazon Web Services canonicalizes IPv4 and IPv6 CIDRs. For example, if you specify 100.68.0.18/18 for the CIDR block, \n Amazon Web Services canonicalizes the CIDR block to 100.68.0.0/18. Any subsequent DescribeSecurityGroups and DescribeSecurityGroupRules calls will \n return the canonicalized form of the CIDR block. Additionally, if you attempt to add another rule with the \n non-canonical form of the CIDR (such as 100.68.0.18/18) and there is already a rule for the canonicalized \n form of the CIDR block (such as 100.68.0.0/18), the API throws an duplicate rule error.

\n
", + "smithy.api#xmlName": "cidrIp" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes an IPv4 address range.

" } }, - "com.amazonaws.ec2#ModifyNetworkInterfaceAttribute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyNetworkInterfaceAttributeRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Modifies the specified network interface attribute. You can specify only one\n attribute at a time. You can use this action to attach and detach security groups from\n an existing EC2 instance.

", - "smithy.api#examples": [ - { - "title": "To modify the attachment attribute of a network interface", - "documentation": "This example modifies the attachment attribute of the specified network interface.", - "input": { - "NetworkInterfaceId": "eni-686ea200", - "Attachment": { - "AttachmentId": "eni-attach-43348162", - "DeleteOnTermination": false - } - } - }, - { - "title": "To modify the description attribute of a network interface", - "documentation": "This example modifies the description attribute of the specified network interface.", - "input": { - "NetworkInterfaceId": "eni-686ea200", - "Description": { - "Value": "My description" - } - } - }, - { - "title": "To modify the groupSet attribute of a network interface", - "documentation": "This example command modifies the groupSet attribute of the specified network interface.", - "input": { - "NetworkInterfaceId": "eni-686ea200", - "Groups": [ - "sg-903004f8", - "sg-1a2b3c4d" - ] - } - }, - { - "title": "To modify the sourceDestCheck attribute of a network interface", - "documentation": "This example command modifies the sourceDestCheck attribute of the specified network interface.", - "input": { - "NetworkInterfaceId": "eni-686ea200", - "SourceDestCheck": { - "Value": false - } - } + "com.amazonaws.ec2#IpRangeList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpRange", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpRanges": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpSource": { + "type": "enum", + "members": { + "amazon": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "amazon" } - ] + }, + "byoip": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "byoip" + } + }, + "none": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "none" + } + } } }, - "com.amazonaws.ec2#ModifyNetworkInterfaceAttributeRequest": { + "com.amazonaws.ec2#Ipam": { "type": "structure", "members": { - "Attachment": { - "target": "com.amazonaws.ec2#NetworkInterfaceAttachmentChanges", + "OwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Attachment", - "smithy.api#documentation": "

Information about the interface attachment. If modifying the delete on\n\t\t\t\ttermination attribute, you must specify the ID of the interface\n\t\t\tattachment.

", - "smithy.api#xmlName": "attachment" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the IPAM.

", + "smithy.api#xmlName": "ownerId" } }, - "Description": { - "target": "com.amazonaws.ec2#AttributeValue", + "IpamId": { + "target": "com.amazonaws.ec2#IpamId", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description for the network interface.

", - "smithy.api#xmlName": "description" + "aws.protocols#ec2QueryName": "IpamId", + "smithy.api#documentation": "

The ID of the IPAM.

", + "smithy.api#xmlName": "ipamId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "IpamArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "IpamArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IPAM.

", + "smithy.api#xmlName": "ipamArn" } }, - "Groups": { - "target": "com.amazonaws.ec2#SecurityGroupIdStringList", + "IpamRegion": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Changes the security groups for the network interface. The new set of groups you specify replaces the current set. You must specify at least one group, even if it's just the default security group in the VPC. You must specify the ID of the security group, not the name.

", - "smithy.api#xmlName": "SecurityGroupId" + "aws.protocols#ec2QueryName": "IpamRegion", + "smithy.api#documentation": "

The Amazon Web Services Region of the IPAM.

", + "smithy.api#xmlName": "ipamRegion" } }, - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#NetworkInterfaceId", + "PublicDefaultScopeId": { + "target": "com.amazonaws.ec2#IpamScopeId", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the network interface.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "networkInterfaceId" + "aws.protocols#ec2QueryName": "PublicDefaultScopeId", + "smithy.api#documentation": "

The ID of the IPAM's default public scope.

", + "smithy.api#xmlName": "publicDefaultScopeId" } }, - "SourceDestCheck": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "PrivateDefaultScopeId": { + "target": "com.amazonaws.ec2#IpamScopeId", "traits": { - "aws.protocols#ec2QueryName": "SourceDestCheck", - "smithy.api#documentation": "

Enable or disable source/destination checks, which ensure that the instance\n is either the source or the destination of any traffic that it receives.\n If the value is true, source/destination checks are enabled;\n otherwise, they are disabled. The default value is true. \n You must disable source/destination checks if the instance runs services \n such as network address translation, routing, or firewalls.

", - "smithy.api#xmlName": "sourceDestCheck" + "aws.protocols#ec2QueryName": "PrivateDefaultScopeId", + "smithy.api#documentation": "

The ID of the IPAM's default private scope.

", + "smithy.api#xmlName": "privateDefaultScopeId" } }, - "EnaSrdSpecification": { - "target": "com.amazonaws.ec2#EnaSrdSpecification", + "ScopeCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

Updates the ENA Express configuration for the network interface that’s attached to the\n\t\t\tinstance.

" + "aws.protocols#ec2QueryName": "ScopeCount", + "smithy.api#documentation": "

The number of scopes in the IPAM. The scope quota is 5. For more information on quotas, see Quotas in IPAM in the Amazon VPC IPAM User Guide.\n

", + "smithy.api#xmlName": "scopeCount" } }, - "EnablePrimaryIpv6": { - "target": "com.amazonaws.ec2#Boolean", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

If you’re modifying a network interface in a dual-stack or IPv6-only subnet, you have\n the option to assign a primary IPv6 IP address. A primary IPv6 address is an IPv6 GUA\n address associated with an ENI that you have enabled to use a primary IPv6 address. Use\n this option if the instance that this ENI will be attached to relies on its IPv6 address\n not changing. Amazon Web Services will automatically assign an IPv6 address associated\n with the ENI attached to your instance to be the primary IPv6 address. Once you enable\n an IPv6 GUA address to be a primary IPv6, you cannot disable it. When you enable an IPv6\n GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6\n address until the instance is terminated or the network interface is detached. If you\n have multiple IPv6 addresses associated with an ENI attached to your instance and you\n enable a primary IPv6 address, the first IPv6 GUA address associated with the ENI\n becomes the primary IPv6 address.

" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The description for the IPAM.

", + "smithy.api#xmlName": "description" } }, - "ConnectionTrackingSpecification": { - "target": "com.amazonaws.ec2#ConnectionTrackingSpecificationRequest", + "OperatingRegions": { + "target": "com.amazonaws.ec2#IpamOperatingRegionSet", "traits": { - "smithy.api#documentation": "

A connection tracking specification.

" + "aws.protocols#ec2QueryName": "OperatingRegionSet", + "smithy.api#documentation": "

The operating Regions for an IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

\n

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide.

", + "smithy.api#xmlName": "operatingRegionSet" } }, - "AssociatePublicIpAddress": { - "target": "com.amazonaws.ec2#Boolean", + "State": { + "target": "com.amazonaws.ec2#IpamState", "traits": { - "smithy.api#documentation": "

Indicates whether to assign a public IPv4 address to a network interface. \n This option can be enabled for any network interface but will only apply to the primary network interface (eth0).

" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the IPAM.

", + "smithy.api#xmlName": "state" } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the parameters for ModifyNetworkInterfaceAttribute.

", - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyPrivateDnsNameOptions": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyPrivateDnsNameOptionsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyPrivateDnsNameOptionsResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the options for instance hostnames for the specified instance.

" - } - }, - "com.amazonaws.ec2#ModifyPrivateDnsNameOptionsRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

", + "smithy.api#xmlName": "tagSet" } }, - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", + "DefaultResourceDiscoveryId": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "DefaultResourceDiscoveryId", + "smithy.api#documentation": "

The IPAM's default resource discovery ID.

", + "smithy.api#xmlName": "defaultResourceDiscoveryId" } }, - "PrivateDnsHostnameType": { - "target": "com.amazonaws.ec2#HostnameType", + "DefaultResourceDiscoveryAssociationId": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryAssociationId", "traits": { - "smithy.api#documentation": "

The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name\n must be based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name\n must be based on the instance ID. For dual-stack subnets, you can specify whether DNS\n names use the instance IPv4 address or the instance ID.

" + "aws.protocols#ec2QueryName": "DefaultResourceDiscoveryAssociationId", + "smithy.api#documentation": "

The IPAM's default resource discovery association ID.

", + "smithy.api#xmlName": "defaultResourceDiscoveryAssociationId" } }, - "EnableResourceNameDnsARecord": { - "target": "com.amazonaws.ec2#Boolean", + "ResourceDiscoveryAssociationCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS A\n records.

" + "aws.protocols#ec2QueryName": "ResourceDiscoveryAssociationCount", + "smithy.api#documentation": "

The IPAM's resource discovery association count.

", + "smithy.api#xmlName": "resourceDiscoveryAssociationCount" } }, - "EnableResourceNameDnsAAAARecord": { - "target": "com.amazonaws.ec2#Boolean", + "StateMessage": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA\n records.

" + "aws.protocols#ec2QueryName": "StateMessage", + "smithy.api#documentation": "

The state message.

", + "smithy.api#xmlName": "stateMessage" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyPrivateDnsNameOptionsResult": { - "type": "structure", - "members": { - "Return": { + }, + "Tier": { + "target": "com.amazonaws.ec2#IpamTier", + "traits": { + "aws.protocols#ec2QueryName": "Tier", + "smithy.api#documentation": "

IPAM is offered in a Free Tier and an Advanced Tier. For more information about the features available in each tier and the costs associated with the tiers, see Amazon VPC pricing > IPAM tab.

", + "smithy.api#xmlName": "tier" + } + }, + "EnablePrivateGua": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an\n error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "EnablePrivateGua", + "smithy.api#documentation": "

Enable this option to use your own GUA ranges as private IPv6 addresses. This option is disabled by default.

", + "smithy.api#xmlName": "enablePrivateGua" + } + }, + "MeteredAccount": { + "target": "com.amazonaws.ec2#IpamMeteredAccount", + "traits": { + "aws.protocols#ec2QueryName": "MeteredAccount", + "smithy.api#documentation": "

A metered account is an Amazon Web Services account that is charged for active IP addresses managed in IPAM. For more information, see Enable cost distribution in the Amazon VPC IPAM User Guide.

\n

Possible values:

\n ", + "smithy.api#xmlName": "meteredAccount" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

IPAM is a VPC feature that you can use to automate your IP address management workflows including assigning, tracking, troubleshooting, and auditing IP addresses across Amazon Web Services Regions and accounts throughout your Amazon Web Services Organization. For more information, see What is IPAM? in the Amazon VPC IPAM User Guide.

" } }, - "com.amazonaws.ec2#ModifyReservedInstances": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyReservedInstancesRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyReservedInstancesResult" - }, + "com.amazonaws.ec2#IpamAddressHistoryMaxResults": { + "type": "integer", "traits": { - "smithy.api#documentation": "

Modifies the configuration of your Reserved Instances, such as the Availability Zone, \n instance count, or instance type. The Reserved Instances to be modified must be identical, \n except for Availability Zone, network platform, and instance type.

\n

For more information, see Modifying Reserved\n\t\t\t\tInstances in the Amazon EC2 User Guide.

" + "smithy.api#range": { + "min": 1, + "max": 1000 + } } }, - "com.amazonaws.ec2#ModifyReservedInstancesRequest": { + "com.amazonaws.ec2#IpamAddressHistoryRecord": { "type": "structure", "members": { - "ReservedInstancesIds": { - "target": "com.amazonaws.ec2#ReservedInstancesIdStringList", + "ResourceOwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the Reserved Instances to modify.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "ReservedInstancesId" + "aws.protocols#ec2QueryName": "ResourceOwnerId", + "smithy.api#documentation": "

The ID of the resource owner.

", + "smithy.api#xmlName": "resourceOwnerId" } }, - "ClientToken": { + "ResourceRegion": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

A unique, case-sensitive token you provide to ensure idempotency of your modification request. For more information, see \n \t\tEnsuring Idempotency.

", - "smithy.api#xmlName": "clientToken" + "aws.protocols#ec2QueryName": "ResourceRegion", + "smithy.api#documentation": "

The Amazon Web Services Region of the resource.

", + "smithy.api#xmlName": "resourceRegion" } }, - "TargetConfigurations": { - "target": "com.amazonaws.ec2#ReservedInstancesConfigurationList", + "ResourceType": { + "target": "com.amazonaws.ec2#IpamAddressHistoryResourceType", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The configuration settings for the Reserved Instances to modify.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "ReservedInstancesConfigurationSetItemType" + "aws.protocols#ec2QueryName": "ResourceType", + "smithy.api#documentation": "

The type of the resource.

", + "smithy.api#xmlName": "resourceType" } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the parameters for ModifyReservedInstances.

", - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyReservedInstancesResult": { - "type": "structure", - "members": { - "ReservedInstancesModificationId": { + }, + "ResourceId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesModificationId", - "smithy.api#documentation": "

The ID for the modification.

", - "smithy.api#xmlName": "reservedInstancesModificationId" + "aws.protocols#ec2QueryName": "ResourceId", + "smithy.api#documentation": "

The ID of the resource.

", + "smithy.api#xmlName": "resourceId" } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the output of ModifyReservedInstances.

", - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifySecurityGroupRules": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifySecurityGroupRulesRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifySecurityGroupRulesResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the rules of a security group.

" - } - }, - "com.amazonaws.ec2#ModifySecurityGroupRulesRequest": { - "type": "structure", - "members": { - "GroupId": { - "target": "com.amazonaws.ec2#SecurityGroupId", + }, + "ResourceCidr": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the security group.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "ResourceCidr", + "smithy.api#documentation": "

The CIDR of the resource.

", + "smithy.api#xmlName": "resourceCidr" } }, - "SecurityGroupRules": { - "target": "com.amazonaws.ec2#SecurityGroupRuleUpdateList", + "ResourceName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Information about the security group properties to update.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "SecurityGroupRule" + "aws.protocols#ec2QueryName": "ResourceName", + "smithy.api#documentation": "

The name of the resource.

", + "smithy.api#xmlName": "resourceName" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ResourceComplianceStatus": { + "target": "com.amazonaws.ec2#IpamComplianceStatus", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "ResourceComplianceStatus", + "smithy.api#documentation": "

The compliance status of a resource. For more information on compliance statuses, see Monitor CIDR usage by resource in the Amazon VPC IPAM User Guide.

", + "smithy.api#xmlName": "resourceComplianceStatus" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifySecurityGroupRulesResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + }, + "ResourceOverlapStatus": { + "target": "com.amazonaws.ec2#IpamOverlapStatus", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, returns an error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "ResourceOverlapStatus", + "smithy.api#documentation": "

The overlap status of an IPAM resource. The overlap status tells you if the CIDR for a resource overlaps with another CIDR in the scope. For more information on overlap statuses, see Monitor CIDR usage by resource in the Amazon VPC IPAM User Guide.

", + "smithy.api#xmlName": "resourceOverlapStatus" + } + }, + "VpcId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The VPC ID of the resource.

", + "smithy.api#xmlName": "vpcId" + } + }, + "SampledStartTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "SampledStartTime", + "smithy.api#documentation": "

Sampled start time of the resource-to-CIDR association within the IPAM scope. Changes are picked up in periodic snapshots, so the start time may have occurred before this specific time.

", + "smithy.api#xmlName": "sampledStartTime" + } + }, + "SampledEndTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "SampledEndTime", + "smithy.api#documentation": "

Sampled end time of the resource-to-CIDR association within the IPAM scope. Changes are picked up in periodic snapshots, so the end time may have occurred before this specific time.

", + "smithy.api#xmlName": "sampledEndTime" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

The historical record of a CIDR within an IPAM scope. For more information, see View the history of IP addresses in the Amazon VPC IPAM User Guide.\n

" } }, - "com.amazonaws.ec2#ModifySnapshotAttribute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifySnapshotAttributeRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Adds or removes permission settings for the specified snapshot. You may add or remove\n specified Amazon Web Services account IDs from a snapshot's list of create volume permissions, but you cannot\n do both in a single operation. If you need to both add and remove account IDs for a snapshot,\n you must use multiple operations. You can make up to 500 modifications to a snapshot in a single operation.

\n

Encrypted snapshots and snapshots with Amazon Web Services Marketplace product codes cannot be made\n public. Snapshots encrypted with your default KMS key cannot be shared with other accounts.

\n

For more information about modifying snapshot permissions, see Share a snapshot in the\n Amazon EBS User Guide.

", - "smithy.api#examples": [ - { - "title": "To modify a snapshot attribute", - "documentation": "This example modifies snapshot ``snap-1234567890abcdef0`` to remove the create volume permission for a user with the account ID ``123456789012``. If the command succeeds, no output is returned.", - "input": { - "SnapshotId": "snap-1234567890abcdef0", - "Attribute": "createVolumePermission", - "OperationType": "remove", - "UserIds": [ - "123456789012" - ] - }, - "output": {} - }, - { - "title": "To make a snapshot public", - "documentation": "This example makes the snapshot ``snap-1234567890abcdef0`` public.", - "input": { - "SnapshotId": "snap-1234567890abcdef0", - "Attribute": "createVolumePermission", - "OperationType": "add", - "GroupNames": [ - "all" - ] - }, - "output": {} - } - ] + "com.amazonaws.ec2#IpamAddressHistoryRecordSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamAddressHistoryRecord", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#ModifySnapshotAttributeRequest": { - "type": "structure", + "com.amazonaws.ec2#IpamAddressHistoryResourceType": { + "type": "enum", "members": { - "Attribute": { - "target": "com.amazonaws.ec2#SnapshotAttributeName", + "eip": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The snapshot attribute to modify. Only volume creation permissions can be modified.

" + "smithy.api#enumValue": "eip" } }, - "CreateVolumePermission": { - "target": "com.amazonaws.ec2#CreateVolumePermissionModifications", + "vpc": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

A JSON representation of the snapshot attribute modification.

" + "smithy.api#enumValue": "vpc" } }, - "GroupNames": { - "target": "com.amazonaws.ec2#GroupNameStringList", + "subnet": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The group to modify for the snapshot.

", - "smithy.api#xmlName": "UserGroup" + "smithy.api#enumValue": "subnet" } }, - "OperationType": { - "target": "com.amazonaws.ec2#OperationType", + "network_interface": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The type of operation to perform to the attribute.

" + "smithy.api#enumValue": "network-interface" } }, - "SnapshotId": { - "target": "com.amazonaws.ec2#SnapshotId", + "instance": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the snapshot.

", - "smithy.api#required": {} + "smithy.api#enumValue": "instance" } - }, - "UserIds": { - "target": "com.amazonaws.ec2#UserIdStringList", + } + } + }, + "com.amazonaws.ec2#IpamAssociatedResourceDiscoveryStatus": { + "type": "enum", + "members": { + "ACTIVE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The account ID to modify for the snapshot.

", - "smithy.api#xmlName": "UserId" + "smithy.api#enumValue": "active" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "NOT_FOUND": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#enumValue": "not-found" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#ModifySnapshotTier": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifySnapshotTierRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifySnapshotTierResult" - }, - "traits": { - "smithy.api#documentation": "

Archives an Amazon EBS snapshot. When you archive a snapshot, it is converted to a full \n snapshot that includes all of the blocks of data that were written to the volume at the \n time the snapshot was created, and moved from the standard tier to the archive \n tier. For more information, see Archive Amazon EBS snapshots \n in the Amazon EBS User Guide.

" - } - }, - "com.amazonaws.ec2#ModifySnapshotTierRequest": { + "com.amazonaws.ec2#IpamCidrAuthorizationContext": { "type": "structure", "members": { - "SnapshotId": { - "target": "com.amazonaws.ec2#SnapshotId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the snapshot.

", - "smithy.api#required": {} - } - }, - "StorageTier": { - "target": "com.amazonaws.ec2#TargetStorageTier", + "Message": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The name of the storage tier. You must specify archive.

" + "smithy.api#documentation": "

The plain-text authorization message for the prefix and account.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Signature": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The signed authorization message for the prefix and account.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP.

" } }, - "com.amazonaws.ec2#ModifySnapshotTierResult": { - "type": "structure", + "com.amazonaws.ec2#IpamComplianceStatus": { + "type": "enum", "members": { - "SnapshotId": { - "target": "com.amazonaws.ec2#String", + "compliant": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SnapshotId", - "smithy.api#documentation": "

The ID of the snapshot.

", - "smithy.api#xmlName": "snapshotId" + "smithy.api#enumValue": "compliant" } }, - "TieringStartTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "noncompliant": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TieringStartTime", - "smithy.api#documentation": "

The date and time when the archive process was started.

", - "smithy.api#xmlName": "tieringStartTime" + "smithy.api#enumValue": "noncompliant" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifySpotFleetRequest": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifySpotFleetRequestRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifySpotFleetRequestResponse" - }, - "traits": { - "smithy.api#documentation": "

Modifies the specified Spot Fleet request.

\n

You can only modify a Spot Fleet request of type maintain.

\n

While the Spot Fleet request is being modified, it is in the modifying\n state.

\n

To scale up your Spot Fleet, increase its target capacity. The Spot Fleet launches the\n additional Spot Instances according to the allocation strategy for the Spot Fleet\n request. If the allocation strategy is lowestPrice, the Spot Fleet launches\n instances using the Spot Instance pool with the lowest price. If the allocation strategy\n is diversified, the Spot Fleet distributes the instances across the Spot\n Instance pools. If the allocation strategy is capacityOptimized, Spot Fleet\n launches instances from Spot Instance pools with optimal capacity for the number of instances\n that are launching.

\n

To scale down your Spot Fleet, decrease its target capacity. First, the Spot Fleet\n cancels any open requests that exceed the new target capacity. You can request that the\n Spot Fleet terminate Spot Instances until the size of the fleet no longer exceeds the\n new target capacity. If the allocation strategy is lowestPrice, the Spot\n Fleet terminates the instances with the highest price per unit. If the allocation\n strategy is capacityOptimized, the Spot Fleet terminates the instances in\n the Spot Instance pools that have the least available Spot Instance capacity. If the allocation\n strategy is diversified, the Spot Fleet terminates instances across the\n Spot Instance pools. Alternatively, you can request that the Spot Fleet keep the fleet\n at its current size, but not replace any Spot Instances that are interrupted or that you\n terminate manually.

\n

If you are finished with your Spot Fleet for now, but will use it again later, you can\n set the target capacity to 0.

", - "smithy.api#examples": [ - { - "title": "To increase the target capacity of a Spot fleet request", - "documentation": "This example increases the target capacity of the specified Spot fleet request.", - "input": { - "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", - "TargetCapacity": 20 - }, - "output": { - "Return": true - } + }, + "unmanaged": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "unmanaged" } - ] + }, + "ignored": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ignored" + } + } } }, - "com.amazonaws.ec2#ModifySpotFleetRequestRequest": { + "com.amazonaws.ec2#IpamDiscoveredAccount": { "type": "structure", "members": { - "ExcessCapacityTerminationPolicy": { - "target": "com.amazonaws.ec2#ExcessCapacityTerminationPolicy", + "AccountId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ExcessCapacityTerminationPolicy", - "smithy.api#documentation": "

Indicates whether running instances should be terminated if the target capacity\n of the Spot Fleet request is decreased below the current size of the Spot Fleet.

\n

Supported only for fleets of type maintain.

", - "smithy.api#xmlName": "excessCapacityTerminationPolicy" + "aws.protocols#ec2QueryName": "AccountId", + "smithy.api#documentation": "

The account ID.

", + "smithy.api#xmlName": "accountId" } }, - "LaunchTemplateConfigs": { - "target": "com.amazonaws.ec2#LaunchTemplateConfigList", + "DiscoveryRegion": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The launch template and overrides. You can only use this parameter if you specified a\n launch template (LaunchTemplateConfigs) in your Spot Fleet request. If you\n specified LaunchSpecifications in your Spot Fleet request, then omit this\n parameter.

", - "smithy.api#xmlName": "LaunchTemplateConfig" + "aws.protocols#ec2QueryName": "DiscoveryRegion", + "smithy.api#documentation": "

The Amazon Web Services Region that the account information is returned from. \n An account can be discovered in multiple regions and will have a separate discovered account for each Region.

", + "smithy.api#xmlName": "discoveryRegion" } }, - "SpotFleetRequestId": { - "target": "com.amazonaws.ec2#SpotFleetRequestId", + "FailureReason": { + "target": "com.amazonaws.ec2#IpamDiscoveryFailureReason", "traits": { - "aws.protocols#ec2QueryName": "SpotFleetRequestId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Spot Fleet request.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "spotFleetRequestId" + "aws.protocols#ec2QueryName": "FailureReason", + "smithy.api#documentation": "

The resource discovery failure reason.

", + "smithy.api#xmlName": "failureReason" } }, - "TargetCapacity": { - "target": "com.amazonaws.ec2#Integer", + "LastAttemptedDiscoveryTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "TargetCapacity", - "smithy.api#documentation": "

The size of the fleet.

", - "smithy.api#xmlName": "targetCapacity" + "aws.protocols#ec2QueryName": "LastAttemptedDiscoveryTime", + "smithy.api#documentation": "

The last attempted resource discovery time.

", + "smithy.api#xmlName": "lastAttemptedDiscoveryTime" } }, - "OnDemandTargetCapacity": { - "target": "com.amazonaws.ec2#Integer", + "LastSuccessfulDiscoveryTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#documentation": "

The number of On-Demand Instances in the fleet.

" + "aws.protocols#ec2QueryName": "LastSuccessfulDiscoveryTime", + "smithy.api#documentation": "

The last successful resource discovery time.

", + "smithy.api#xmlName": "lastSuccessfulDiscoveryTime" } }, - "Context": { + "OrganizationalUnitId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Reserved.

" + "aws.protocols#ec2QueryName": "OrganizationalUnitId", + "smithy.api#documentation": "

The ID of an Organizational Unit in Amazon Web Services Organizations.

", + "smithy.api#xmlName": "organizationalUnitId" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for ModifySpotFleetRequest.

", - "smithy.api#input": {} + "smithy.api#documentation": "

An IPAM discovered account. A discovered account is an Amazon Web Services account that is monitored under a resource discovery. If you have integrated IPAM with Amazon Web Services Organizations, all accounts in the organization are discovered accounts.

" } }, - "com.amazonaws.ec2#ModifySpotFleetRequestResponse": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

If the request succeeds, the response returns true. If the request fails,\n no response is returned, and instead an error message is returned.

", - "smithy.api#xmlName": "return" - } + "com.amazonaws.ec2#IpamDiscoveredAccountSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamDiscoveredAccount", + "traits": { + "smithy.api#xmlName": "item" } - }, - "traits": { - "smithy.api#documentation": "

Contains the output of ModifySpotFleetRequest.

", - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifySubnetAttribute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifySubnetAttributeRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Modifies a subnet attribute. You can only modify one attribute at a time.

\n

Use this action to modify subnets on Amazon Web Services Outposts.

\n \n

For more information about Amazon Web Services Outposts, see the following:

\n ", - "smithy.api#examples": [ - { - "title": "To change a subnet's public IP addressing behavior", - "documentation": "This example modifies the specified subnet so that all instances launched into this subnet are assigned a public IP address.", - "input": { - "SubnetId": "subnet-1a2b3c4d", - "MapPublicIpOnLaunch": { - "Value": true - } - } - } - ] } }, - "com.amazonaws.ec2#ModifySubnetAttributeRequest": { + "com.amazonaws.ec2#IpamDiscoveredPublicAddress": { "type": "structure", "members": { - "AssignIpv6AddressOnCreation": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "IpamResourceDiscoveryId": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", "traits": { - "smithy.api#documentation": "

Specify true to indicate that network interfaces created in the\n specified subnet should be assigned an IPv6 address. This includes a network interface\n that's created when launching an instance into the subnet (the instance therefore\n receives an IPv6 address).

\n

If you enable the IPv6 addressing feature for your subnet, your network interface\n or instance only receives an IPv6 address if it's created using version\n 2016-11-15 or later of the Amazon EC2 API.

" + "aws.protocols#ec2QueryName": "IpamResourceDiscoveryId", + "smithy.api#documentation": "

The resource discovery ID.

", + "smithy.api#xmlName": "ipamResourceDiscoveryId" } }, - "MapPublicIpOnLaunch": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "AddressRegion": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Specify true to indicate that network interfaces attached to instances created in the\n specified subnet should be assigned a public IPv4 address.

\n

Amazon Web Services charges for all public IPv4 addresses, including public IPv4 addresses \nassociated with running instances and Elastic IP addresses. For more information, see the Public IPv4 Address tab on the Amazon VPC pricing page.

" + "aws.protocols#ec2QueryName": "AddressRegion", + "smithy.api#documentation": "

The Region of the resource the IP address is assigned to.

", + "smithy.api#xmlName": "addressRegion" } }, - "SubnetId": { - "target": "com.amazonaws.ec2#SubnetId", + "Address": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the subnet.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "subnetId" + "aws.protocols#ec2QueryName": "Address", + "smithy.api#documentation": "

The IP address.

", + "smithy.api#xmlName": "address" } }, - "MapCustomerOwnedIpOnLaunch": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "AddressOwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Specify true to indicate that network interfaces attached to instances created in the\n specified subnet should be assigned a customer-owned IPv4 address.

\n

When this value is true, you must specify the customer-owned IP pool using CustomerOwnedIpv4Pool.

" + "aws.protocols#ec2QueryName": "AddressOwnerId", + "smithy.api#documentation": "

The ID of the owner of the resource the IP address is assigned to.

", + "smithy.api#xmlName": "addressOwnerId" } }, - "CustomerOwnedIpv4Pool": { - "target": "com.amazonaws.ec2#CoipPoolId", + "AddressAllocationId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The customer-owned IPv4 address pool associated with the subnet.

\n

You must set this value when you specify true for MapCustomerOwnedIpOnLaunch.

" + "aws.protocols#ec2QueryName": "AddressAllocationId", + "smithy.api#documentation": "

The allocation ID of the resource the IP address is assigned to.

", + "smithy.api#xmlName": "addressAllocationId" } }, - "EnableDns64": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "AssociationStatus": { + "target": "com.amazonaws.ec2#IpamPublicAddressAssociationStatus", "traits": { - "smithy.api#documentation": "

Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this subnet \n should return synthetic IPv6 addresses for IPv4-only destinations.

" + "aws.protocols#ec2QueryName": "AssociationStatus", + "smithy.api#documentation": "

The association status.

", + "smithy.api#xmlName": "associationStatus" } }, - "PrivateDnsHostnameTypeOnLaunch": { - "target": "com.amazonaws.ec2#HostnameType", + "AddressType": { + "target": "com.amazonaws.ec2#IpamPublicAddressType", "traits": { - "smithy.api#documentation": "

The type of hostname to assign to instances in the subnet at launch. For IPv4-only and dual-stack (IPv4 and IPv6) subnets, an\n instance DNS name can be based on the instance IPv4 address (ip-name) or the instance ID (resource-name). For IPv6 only subnets, an instance\n DNS name must be based on the instance ID (resource-name).

" + "aws.protocols#ec2QueryName": "AddressType", + "smithy.api#documentation": "

The IP address type.

", + "smithy.api#xmlName": "addressType" } }, - "EnableResourceNameDnsARecordOnLaunch": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "Service": { + "target": "com.amazonaws.ec2#IpamPublicAddressAwsService", "traits": { - "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS A records.

" + "aws.protocols#ec2QueryName": "Service", + "smithy.api#documentation": "

The Amazon Web Services service associated with the IP address.

", + "smithy.api#xmlName": "service" } }, - "EnableResourceNameDnsAAAARecordOnLaunch": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "ServiceResource": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.

" + "aws.protocols#ec2QueryName": "ServiceResource", + "smithy.api#documentation": "

The resource ARN or ID.

", + "smithy.api#xmlName": "serviceResource" } }, - "EnableLniAtDeviceIndex": { - "target": "com.amazonaws.ec2#Integer", + "VpcId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

\n Indicates the device position for local network interfaces in this subnet. For example, \n 1 indicates local network interfaces in this subnet are the secondary \n network interface (eth1). A local network interface cannot be the primary network\n interface (eth0).\n

" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC that the resource with the assigned IP address is in.

", + "smithy.api#xmlName": "vpcId" } }, - "DisableLniAtDeviceIndex": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "SubnetId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

\n Specify true to indicate that local network interfaces at the current \n position should be disabled. \n

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyTrafficMirrorFilterNetworkServices": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyTrafficMirrorFilterNetworkServicesRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyTrafficMirrorFilterNetworkServicesResult" - }, - "traits": { - "smithy.api#documentation": "

Allows or restricts mirroring network services.

\n

By default, Amazon DNS network services are not eligible for Traffic Mirror. Use AddNetworkServices to add network services to a Traffic Mirror filter. When a network service is added to the Traffic Mirror filter, all traffic related to that network service will be mirrored.\n When you no longer want to mirror network services, use RemoveNetworkServices to remove the network services from the Traffic Mirror filter.\n

" - } - }, - "com.amazonaws.ec2#ModifyTrafficMirrorFilterNetworkServicesRequest": { - "type": "structure", - "members": { - "TrafficMirrorFilterId": { - "target": "com.amazonaws.ec2#TrafficMirrorFilterId", + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet that the resource with the assigned IP address is in.

", + "smithy.api#xmlName": "subnetId" + } + }, + "PublicIpv4PoolId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Traffic Mirror filter.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "PublicIpv4PoolId", + "smithy.api#documentation": "

The ID of the public IPv4 pool that the resource with the assigned IP address is from.

", + "smithy.api#xmlName": "publicIpv4PoolId" } }, - "AddNetworkServices": { - "target": "com.amazonaws.ec2#TrafficMirrorNetworkServiceList", + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The network service, for example Amazon DNS, that you want to mirror.

", - "smithy.api#xmlName": "AddNetworkService" + "aws.protocols#ec2QueryName": "NetworkInterfaceId", + "smithy.api#documentation": "

The network interface ID of the resource with the assigned IP address.

", + "smithy.api#xmlName": "networkInterfaceId" } }, - "RemoveNetworkServices": { - "target": "com.amazonaws.ec2#TrafficMirrorNetworkServiceList", + "NetworkInterfaceDescription": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The network service, for example Amazon DNS, that you no longer want to mirror.

", - "smithy.api#xmlName": "RemoveNetworkService" + "aws.protocols#ec2QueryName": "NetworkInterfaceDescription", + "smithy.api#documentation": "

The description of the network interface that IP address is assigned to.

", + "smithy.api#xmlName": "networkInterfaceDescription" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "InstanceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The instance ID of the instance the assigned IP address is assigned to.

", + "smithy.api#xmlName": "instanceId" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyTrafficMirrorFilterNetworkServicesResult": { - "type": "structure", - "members": { - "TrafficMirrorFilter": { - "target": "com.amazonaws.ec2#TrafficMirrorFilter", + }, + "Tags": { + "target": "com.amazonaws.ec2#IpamPublicAddressTags", "traits": { - "aws.protocols#ec2QueryName": "TrafficMirrorFilter", - "smithy.api#documentation": "

The Traffic Mirror filter that the network service is associated with.

", - "smithy.api#xmlName": "trafficMirrorFilter" + "aws.protocols#ec2QueryName": "Tags", + "smithy.api#documentation": "

Tags associated with the IP address.

", + "smithy.api#xmlName": "tags" + } + }, + "NetworkBorderGroup": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NetworkBorderGroup", + "smithy.api#documentation": "

The Availability Zone (AZ) or Local Zone (LZ) network border group that the resource that the IP address is assigned to is in. Defaults to an AZ network border group. For more information on available Local Zones, see Local Zone availability in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "networkBorderGroup" + } + }, + "SecurityGroups": { + "target": "com.amazonaws.ec2#IpamPublicAddressSecurityGroupList", + "traits": { + "aws.protocols#ec2QueryName": "SecurityGroupSet", + "smithy.api#documentation": "

Security groups associated with the resource that the IP address is assigned to.

", + "smithy.api#xmlName": "securityGroupSet" + } + }, + "SampleTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "SampleTime", + "smithy.api#documentation": "

The last successful resource discovery time.

", + "smithy.api#xmlName": "sampleTime" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

A public IP Address discovered by IPAM.

" } }, - "com.amazonaws.ec2#ModifyTrafficMirrorFilterRule": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyTrafficMirrorFilterRuleRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyTrafficMirrorFilterRuleResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the specified Traffic Mirror rule.

\n

\n DestinationCidrBlock and SourceCidrBlock must both be an IPv4\n range or an IPv6 range.

" + "com.amazonaws.ec2#IpamDiscoveredPublicAddressSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamDiscoveredPublicAddress", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#ModifyTrafficMirrorFilterRuleRequest": { + "com.amazonaws.ec2#IpamDiscoveredResourceCidr": { "type": "structure", "members": { - "TrafficMirrorFilterRuleId": { - "target": "com.amazonaws.ec2#TrafficMirrorFilterRuleIdWithResolver", + "IpamResourceDiscoveryId": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Traffic Mirror rule.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "IpamResourceDiscoveryId", + "smithy.api#documentation": "

The resource discovery ID.

", + "smithy.api#xmlName": "ipamResourceDiscoveryId" } }, - "TrafficDirection": { - "target": "com.amazonaws.ec2#TrafficDirection", + "ResourceRegion": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The type of traffic to assign to the rule.

" + "aws.protocols#ec2QueryName": "ResourceRegion", + "smithy.api#documentation": "

The resource Region.

", + "smithy.api#xmlName": "resourceRegion" } }, - "RuleNumber": { - "target": "com.amazonaws.ec2#Integer", + "ResourceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The number of the Traffic Mirror rule. This number must be unique for each Traffic Mirror rule in a given\n direction. The rules are processed in ascending order by rule number.

" + "aws.protocols#ec2QueryName": "ResourceId", + "smithy.api#documentation": "

The resource ID.

", + "smithy.api#xmlName": "resourceId" } }, - "RuleAction": { - "target": "com.amazonaws.ec2#TrafficMirrorRuleAction", + "ResourceOwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The action to assign to the rule.

" + "aws.protocols#ec2QueryName": "ResourceOwnerId", + "smithy.api#documentation": "

The resource owner ID.

", + "smithy.api#xmlName": "resourceOwnerId" } }, - "DestinationPortRange": { - "target": "com.amazonaws.ec2#TrafficMirrorPortRangeRequest", + "ResourceCidr": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The destination ports that are associated with the Traffic Mirror rule.

" + "aws.protocols#ec2QueryName": "ResourceCidr", + "smithy.api#documentation": "

The resource CIDR.

", + "smithy.api#xmlName": "resourceCidr" } }, - "SourcePortRange": { - "target": "com.amazonaws.ec2#TrafficMirrorPortRangeRequest", + "IpSource": { + "target": "com.amazonaws.ec2#IpamResourceCidrIpSource", "traits": { - "smithy.api#documentation": "

The port range to assign to the Traffic Mirror rule.

" + "aws.protocols#ec2QueryName": "IpSource", + "smithy.api#documentation": "

The source that allocated the IP address space. byoip or amazon indicates public IP address space allocated by Amazon or space that you have allocated with Bring your own IP (BYOIP). none indicates private space.

", + "smithy.api#xmlName": "ipSource" } }, - "Protocol": { - "target": "com.amazonaws.ec2#Integer", + "ResourceType": { + "target": "com.amazonaws.ec2#IpamResourceType", "traits": { - "smithy.api#documentation": "

The protocol, for example TCP, to assign to the Traffic Mirror rule.

" + "aws.protocols#ec2QueryName": "ResourceType", + "smithy.api#documentation": "

The resource type.

", + "smithy.api#xmlName": "resourceType" } }, - "DestinationCidrBlock": { - "target": "com.amazonaws.ec2#String", + "ResourceTags": { + "target": "com.amazonaws.ec2#IpamResourceTagList", "traits": { - "smithy.api#documentation": "

The destination CIDR block to assign to the Traffic Mirror rule.

" + "aws.protocols#ec2QueryName": "ResourceTagSet", + "smithy.api#documentation": "

The resource tags.

", + "smithy.api#xmlName": "resourceTagSet" } }, - "SourceCidrBlock": { + "IpUsage": { + "target": "com.amazonaws.ec2#BoxedDouble", + "traits": { + "aws.protocols#ec2QueryName": "IpUsage", + "smithy.api#documentation": "

The percentage of IP address space in use. To convert the decimal to a percentage, multiply the decimal by 100. Note the following:

\n ", + "smithy.api#xmlName": "ipUsage" + } + }, + "VpcId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The source CIDR block to assign to the Traffic Mirror rule.

" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The VPC ID.

", + "smithy.api#xmlName": "vpcId" } }, - "Description": { + "SubnetId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The description to assign to the Traffic Mirror rule.

" + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The subnet ID.

", + "smithy.api#xmlName": "subnetId" } }, - "RemoveFields": { - "target": "com.amazonaws.ec2#TrafficMirrorFilterRuleFieldList", + "NetworkInterfaceAttachmentStatus": { + "target": "com.amazonaws.ec2#IpamNetworkInterfaceAttachmentStatus", "traits": { - "smithy.api#documentation": "

The properties that you want to remove from the Traffic Mirror filter rule.

\n

When you remove a property from a Traffic Mirror filter rule, the property is set to the default.

", - "smithy.api#xmlName": "RemoveField" + "aws.protocols#ec2QueryName": "NetworkInterfaceAttachmentStatus", + "smithy.api#documentation": "

For elastic network interfaces, this is the status of whether or not the elastic network interface is attached.

", + "smithy.api#xmlName": "networkInterfaceAttachmentStatus" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "SampleTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "SampleTime", + "smithy.api#documentation": "

The last successful resource discovery time.

", + "smithy.api#xmlName": "sampleTime" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyTrafficMirrorFilterRuleResult": { - "type": "structure", - "members": { - "TrafficMirrorFilterRule": { - "target": "com.amazonaws.ec2#TrafficMirrorFilterRule", + }, + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TrafficMirrorFilterRule", - "smithy.api#documentation": "

Modifies a Traffic Mirror rule.

", - "smithy.api#xmlName": "trafficMirrorFilterRule" + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The Availability Zone ID.

", + "smithy.api#xmlName": "availabilityZoneId" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

An IPAM discovered resource CIDR. A discovered resource is a resource CIDR monitored under a resource discovery. The following resources can be discovered: VPCs, Public IPv4 pools, VPC subnets, and Elastic IP addresses. The discovered resource CIDR is the IP address range in CIDR notation that is associated with the resource.

" } }, - "com.amazonaws.ec2#ModifyTrafficMirrorSession": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyTrafficMirrorSessionRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyTrafficMirrorSessionResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies a Traffic Mirror session.

" + "com.amazonaws.ec2#IpamDiscoveredResourceCidrSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamDiscoveredResourceCidr", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#ModifyTrafficMirrorSessionRequest": { - "type": "structure", + "com.amazonaws.ec2#IpamDiscoveryFailureCode": { + "type": "enum", "members": { - "TrafficMirrorSessionId": { - "target": "com.amazonaws.ec2#TrafficMirrorSessionId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Traffic Mirror session.

", - "smithy.api#required": {} - } - }, - "TrafficMirrorTargetId": { - "target": "com.amazonaws.ec2#TrafficMirrorTargetId", - "traits": { - "smithy.api#documentation": "

The Traffic Mirror target. The target must be in the same VPC as the source, or have a VPC peering connection with the source.

" - } - }, - "TrafficMirrorFilterId": { - "target": "com.amazonaws.ec2#TrafficMirrorFilterId", - "traits": { - "smithy.api#documentation": "

The ID of the Traffic Mirror filter.

" - } - }, - "PacketLength": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

The number of bytes in each packet to mirror. These are bytes after the VXLAN header. To mirror a subset, set this to the length (in bytes) to mirror. For example, if you set this value to 100, then the first 100 bytes that meet the filter criteria are copied to the target. Do not specify this parameter when you want to mirror the entire packet.

\n

For sessions with Network Load Balancer (NLB) traffic mirror targets, the default PacketLength will be set to 8500. Valid values are 1-8500. Setting a PacketLength greater than 8500 will result in an error response.

" - } - }, - "SessionNumber": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

The session number determines the order in which sessions are evaluated when an interface is used by multiple sessions. The first session with a matching filter is the one that mirrors the packets.

\n

Valid values are 1-32766.

" - } - }, - "VirtualNetworkId": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

The virtual network ID of the Traffic Mirror session.

" - } - }, - "Description": { - "target": "com.amazonaws.ec2#String", + "assume_role_failure": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The description to assign to the Traffic Mirror session.

" + "smithy.api#enumValue": "assume-role-failure" } }, - "RemoveFields": { - "target": "com.amazonaws.ec2#TrafficMirrorSessionFieldList", + "throttling_failure": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The properties that you want to remove from the Traffic Mirror session.

\n

When you remove a property from a Traffic Mirror session, the property is set to the default.

", - "smithy.api#xmlName": "RemoveField" + "smithy.api#enumValue": "throttling-failure" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "unauthorized_failure": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "unauthorized-failure" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#ModifyTrafficMirrorSessionResult": { + "com.amazonaws.ec2#IpamDiscoveryFailureReason": { "type": "structure", "members": { - "TrafficMirrorSession": { - "target": "com.amazonaws.ec2#TrafficMirrorSession", + "Code": { + "target": "com.amazonaws.ec2#IpamDiscoveryFailureCode", "traits": { - "aws.protocols#ec2QueryName": "TrafficMirrorSession", - "smithy.api#documentation": "

Information about the Traffic Mirror session.

", - "smithy.api#xmlName": "trafficMirrorSession" + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The discovery failure code.

\n ", + "smithy.api#xmlName": "code" + } + }, + "Message": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Message", + "smithy.api#documentation": "

The discovery failure message.

", + "smithy.api#xmlName": "message" } } }, "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyTransitGateway": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyTransitGatewayRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyTransitGatewayResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the specified transit gateway. When you modify a transit gateway, the modified options are applied to new transit gateway attachments only. Your existing transit gateway attachments are not modified.

" + "smithy.api#documentation": "

The discovery failure reason.

" } }, - "com.amazonaws.ec2#ModifyTransitGatewayOptions": { + "com.amazonaws.ec2#IpamExternalResourceVerificationToken": { "type": "structure", "members": { - "AddTransitGatewayCidrBlocks": { - "target": "com.amazonaws.ec2#TransitGatewayCidrBlockStringList", + "IpamExternalResourceVerificationTokenId": { + "target": "com.amazonaws.ec2#IpamExternalResourceVerificationTokenId", "traits": { - "smithy.api#documentation": "

Adds IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size /24 CIDR block or larger for IPv4, or a size /64 CIDR block or larger for IPv6.

" + "aws.protocols#ec2QueryName": "IpamExternalResourceVerificationTokenId", + "smithy.api#documentation": "

The ID of the token.

", + "smithy.api#xmlName": "ipamExternalResourceVerificationTokenId" } }, - "RemoveTransitGatewayCidrBlocks": { - "target": "com.amazonaws.ec2#TransitGatewayCidrBlockStringList", + "IpamExternalResourceVerificationTokenArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "smithy.api#documentation": "

Removes CIDR blocks for the transit gateway.

" + "aws.protocols#ec2QueryName": "IpamExternalResourceVerificationTokenArn", + "smithy.api#documentation": "

Token ARN.

", + "smithy.api#xmlName": "ipamExternalResourceVerificationTokenArn" } }, - "VpnEcmpSupport": { - "target": "com.amazonaws.ec2#VpnEcmpSupportValue", + "IpamId": { + "target": "com.amazonaws.ec2#IpamId", "traits": { - "smithy.api#documentation": "

Enable or disable Equal Cost Multipath Protocol support.

" + "aws.protocols#ec2QueryName": "IpamId", + "smithy.api#documentation": "

The ID of the IPAM that created the token.

", + "smithy.api#xmlName": "ipamId" } }, - "DnsSupport": { - "target": "com.amazonaws.ec2#DnsSupportValue", + "IpamArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "smithy.api#documentation": "

Enable or disable DNS support.

" + "aws.protocols#ec2QueryName": "IpamArn", + "smithy.api#documentation": "

ARN of the IPAM that created the token.

", + "smithy.api#xmlName": "ipamArn" } }, - "SecurityGroupReferencingSupport": { - "target": "com.amazonaws.ec2#SecurityGroupReferencingSupportValue", + "IpamRegion": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "\n

This parameter is in preview and may not be available for your account.

\n
\n

Enables you to reference a security group across VPCs attached to a transit gateway. Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.

" + "aws.protocols#ec2QueryName": "IpamRegion", + "smithy.api#documentation": "

Region of the IPAM that created the token.

", + "smithy.api#xmlName": "ipamRegion" } }, - "AutoAcceptSharedAttachments": { - "target": "com.amazonaws.ec2#AutoAcceptSharedAttachmentsValue", + "TokenValue": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Enable or disable automatic acceptance of attachment requests.

" + "aws.protocols#ec2QueryName": "TokenValue", + "smithy.api#documentation": "

Token value.

", + "smithy.api#xmlName": "tokenValue" } }, - "DefaultRouteTableAssociation": { - "target": "com.amazonaws.ec2#DefaultRouteTableAssociationValue", + "TokenName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Enable or disable automatic association with the default association route table.

" + "aws.protocols#ec2QueryName": "TokenName", + "smithy.api#documentation": "

Token name.

", + "smithy.api#xmlName": "tokenName" } }, - "AssociationDefaultRouteTableId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "NotAfter": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#documentation": "

The ID of the default association route table.

" + "aws.protocols#ec2QueryName": "NotAfter", + "smithy.api#documentation": "

Token expiration.

", + "smithy.api#xmlName": "notAfter" } }, - "DefaultRouteTablePropagation": { - "target": "com.amazonaws.ec2#DefaultRouteTablePropagationValue", + "Status": { + "target": "com.amazonaws.ec2#TokenState", "traits": { - "smithy.api#documentation": "

Enable or disable automatic propagation of routes to the default propagation route table.

" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

Token status.

", + "smithy.api#xmlName": "status" } }, - "PropagationDefaultRouteTableId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#documentation": "

The ID of the default propagation route table.

" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Token tags.

", + "smithy.api#xmlName": "tagSet" } }, - "AmazonSideAsn": { - "target": "com.amazonaws.ec2#Long", + "State": { + "target": "com.amazonaws.ec2#IpamExternalResourceVerificationTokenState", "traits": { - "smithy.api#documentation": "

A private Autonomous System Number (ASN) for the Amazon side of a BGP session. \n The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to 4294967294 for 32-bit ASNs.

\n

The modify ASN operation is not allowed on a transit gateway with active BGP sessions. You must first delete all transit gateway attachments that have BGP configured prior to modifying the ASN on the transit gateway.

" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

Token state.

", + "smithy.api#xmlName": "state" } } }, "traits": { - "smithy.api#documentation": "

The transit gateway options.

" + "smithy.api#documentation": "

A verification token is an Amazon Web Services-generated random value that you can use to prove ownership of an external resource. For example, you can use a verification token to validate that you control a public IP address range when you bring an IP address range to Amazon Web Services (BYOIP).\n

" } }, - "com.amazonaws.ec2#ModifyTransitGatewayPrefixListReference": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyTransitGatewayPrefixListReferenceRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyTransitGatewayPrefixListReferenceResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies a reference (route) to a prefix list in a specified transit gateway route table.

" + "com.amazonaws.ec2#IpamExternalResourceVerificationTokenId": { + "type": "string" + }, + "com.amazonaws.ec2#IpamExternalResourceVerificationTokenSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamExternalResourceVerificationToken", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#ModifyTransitGatewayPrefixListReferenceRequest": { - "type": "structure", + "com.amazonaws.ec2#IpamExternalResourceVerificationTokenState": { + "type": "enum", "members": { - "TransitGatewayRouteTableId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "CREATE_IN_PROGRESS": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway route table.

", - "smithy.api#required": {} + "smithy.api#enumValue": "create-in-progress" } }, - "PrefixListId": { - "target": "com.amazonaws.ec2#PrefixListResourceId", + "CREATE_COMPLETE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the prefix list.

", - "smithy.api#required": {} + "smithy.api#enumValue": "create-complete" } }, - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "CREATE_FAILED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ID of the attachment to which traffic is routed.

" + "smithy.api#enumValue": "create-failed" } }, - "Blackhole": { - "target": "com.amazonaws.ec2#Boolean", + "DELETE_IN_PROGRESS": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether to drop traffic that matches this route.

" + "smithy.api#enumValue": "delete-in-progress" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "DELETE_COMPLETE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "delete-complete" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyTransitGatewayPrefixListReferenceResult": { - "type": "structure", - "members": { - "TransitGatewayPrefixListReference": { - "target": "com.amazonaws.ec2#TransitGatewayPrefixListReference", + }, + "DELETE_FAILED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayPrefixListReference", - "smithy.api#documentation": "

Information about the prefix list reference.

", - "smithy.api#xmlName": "transitGatewayPrefixListReference" + "smithy.api#enumValue": "delete-failed" } } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#ModifyTransitGatewayRequest": { - "type": "structure", + "com.amazonaws.ec2#IpamId": { + "type": "string" + }, + "com.amazonaws.ec2#IpamManagementState": { + "type": "enum", "members": { - "TransitGatewayId": { - "target": "com.amazonaws.ec2#TransitGatewayId", + "managed": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway.

", - "smithy.api#required": {} + "smithy.api#enumValue": "managed" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "unmanaged": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The description for the transit gateway.

" + "smithy.api#enumValue": "unmanaged" } }, - "Options": { - "target": "com.amazonaws.ec2#ModifyTransitGatewayOptions", - "traits": { - "smithy.api#documentation": "

The options to modify.

" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyTransitGatewayResult": { - "type": "structure", - "members": { - "TransitGateway": { - "target": "com.amazonaws.ec2#TransitGateway", + "ignored": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TransitGateway", - "smithy.api#documentation": "

Information about the transit gateway.

", - "smithy.api#xmlName": "transitGateway" + "smithy.api#enumValue": "ignored" } } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#ModifyTransitGatewayVpcAttachment": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyTransitGatewayVpcAttachmentRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyTransitGatewayVpcAttachmentResult" - }, + "com.amazonaws.ec2#IpamMaxResults": { + "type": "integer", "traits": { - "smithy.api#documentation": "

Modifies the specified VPC attachment.

" + "smithy.api#range": { + "min": 5, + "max": 1000 + } } }, - "com.amazonaws.ec2#ModifyTransitGatewayVpcAttachmentRequest": { - "type": "structure", + "com.amazonaws.ec2#IpamMeteredAccount": { + "type": "enum", "members": { - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the attachment.

", - "smithy.api#required": {} - } - }, - "AddSubnetIds": { - "target": "com.amazonaws.ec2#TransitGatewaySubnetIdList", - "traits": { - "smithy.api#documentation": "

The IDs of one or more subnets to add. You can specify at most one subnet per Availability Zone.

" - } - }, - "RemoveSubnetIds": { - "target": "com.amazonaws.ec2#TransitGatewaySubnetIdList", - "traits": { - "smithy.api#documentation": "

The IDs of one or more subnets to remove.

" - } - }, - "Options": { - "target": "com.amazonaws.ec2#ModifyTransitGatewayVpcAttachmentRequestOptions", + "ipam_owner": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The new VPC attachment options.

" + "smithy.api#enumValue": "ipam-owner" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "resource_owner": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "resource-owner" } } - }, + } + }, + "com.amazonaws.ec2#IpamNetmaskLength": { + "type": "integer", "traits": { - "smithy.api#input": {} + "smithy.api#range": { + "min": 0, + "max": 128 + } } }, - "com.amazonaws.ec2#ModifyTransitGatewayVpcAttachmentRequestOptions": { - "type": "structure", + "com.amazonaws.ec2#IpamNetworkInterfaceAttachmentStatus": { + "type": "enum", "members": { - "DnsSupport": { - "target": "com.amazonaws.ec2#DnsSupportValue", - "traits": { - "smithy.api#documentation": "

Enable or disable DNS support. The default is enable.

" - } - }, - "SecurityGroupReferencingSupport": { - "target": "com.amazonaws.ec2#SecurityGroupReferencingSupportValue", - "traits": { - "smithy.api#documentation": "\n

This parameter is in preview and may not be available for your account.

\n
\n

Enables you to reference a security group across VPCs attached to a transit gateway. Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.

" - } - }, - "Ipv6Support": { - "target": "com.amazonaws.ec2#Ipv6SupportValue", + "available": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Enable or disable IPv6 support. The default is enable.

" + "smithy.api#enumValue": "available" } }, - "ApplianceModeSupport": { - "target": "com.amazonaws.ec2#ApplianceModeSupportValue", + "in_use": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Enable or disable support for appliance mode. If enabled, a traffic flow between a source and destination uses the same Availability Zone for the VPC attachment for the lifetime of that flow. The default is disable.

" + "smithy.api#enumValue": "in-use" } } - }, - "traits": { - "smithy.api#documentation": "

Describes the options for a VPC attachment.

" } }, - "com.amazonaws.ec2#ModifyTransitGatewayVpcAttachmentResult": { + "com.amazonaws.ec2#IpamOperatingRegion": { "type": "structure", "members": { - "TransitGatewayVpcAttachment": { - "target": "com.amazonaws.ec2#TransitGatewayVpcAttachment", + "RegionName": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayVpcAttachment", - "smithy.api#documentation": "

Information about the modified attachment.

", - "smithy.api#xmlName": "transitGatewayVpcAttachment" + "aws.protocols#ec2QueryName": "RegionName", + "smithy.api#documentation": "

The name of the operating Region.

", + "smithy.api#xmlName": "regionName" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

The operating Regions for an IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

\n

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide.

" } }, - "com.amazonaws.ec2#ModifyVerifiedAccessEndpoint": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the configuration of the specified Amazon Web Services Verified Access endpoint.

" + "com.amazonaws.ec2#IpamOperatingRegionSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamOperatingRegion", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#ModifyVerifiedAccessEndpointEniOptions": { + "com.amazonaws.ec2#IpamOrganizationalUnitExclusion": { "type": "structure", "members": { - "Protocol": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpointProtocol", - "traits": { - "smithy.api#documentation": "

The IP protocol.

" - } - }, - "Port": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortNumber", + "OrganizationsEntityPath": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IP port number.

" + "aws.protocols#ec2QueryName": "OrganizationsEntityPath", + "smithy.api#documentation": "

An Amazon Web Services Organizations entity path. For more information on the entity path, see Understand the Amazon Web Services Organizations entity path in the Amazon Web Services Identity and Access Management User Guide.

", + "smithy.api#xmlName": "organizationsEntityPath" } } }, "traits": { - "smithy.api#documentation": "

Describes the options when modifying a Verified Access endpoint with the\n network-interface type.

" + "smithy.api#documentation": "

If your IPAM is integrated with Amazon Web Services Organizations and you add an organizational unit (OU) exclusion, IPAM will not manage the IP addresses in accounts in that OU exclusion.

" } }, - "com.amazonaws.ec2#ModifyVerifiedAccessEndpointLoadBalancerOptions": { - "type": "structure", + "com.amazonaws.ec2#IpamOrganizationalUnitExclusionSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamOrganizationalUnitExclusion", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpamOverlapStatus": { + "type": "enum", "members": { - "SubnetIds": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointSubnetIdList", + "overlapping": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The IDs of the subnets.

", - "smithy.api#xmlName": "SubnetId" + "smithy.api#enumValue": "overlapping" } }, - "Protocol": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpointProtocol", + "nonoverlapping": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The IP protocol.

" + "smithy.api#enumValue": "nonoverlapping" } }, - "Port": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortNumber", + "ignored": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The IP port number.

" + "smithy.api#enumValue": "ignored" } } - }, - "traits": { - "smithy.api#documentation": "

Describes a load balancer when creating an Amazon Web Services Verified Access endpoint using the\n load-balancer type.

" - } - }, - "com.amazonaws.ec2#ModifyVerifiedAccessEndpointPolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointPolicyRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointPolicyResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the specified Amazon Web Services Verified Access endpoint policy.

" } }, - "com.amazonaws.ec2#ModifyVerifiedAccessEndpointPolicyRequest": { + "com.amazonaws.ec2#IpamPool": { "type": "structure", "members": { - "VerifiedAccessEndpointId": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpointId", + "OwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Verified Access endpoint.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the IPAM pool.

", + "smithy.api#xmlName": "ownerId" } }, - "PolicyEnabled": { - "target": "com.amazonaws.ec2#Boolean", + "IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", "traits": { - "smithy.api#documentation": "

The status of the Verified Access policy.

" + "aws.protocols#ec2QueryName": "IpamPoolId", + "smithy.api#documentation": "

The ID of the IPAM pool.

", + "smithy.api#xmlName": "ipamPoolId" } }, - "PolicyDocument": { - "target": "com.amazonaws.ec2#String", + "SourceIpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", "traits": { - "smithy.api#documentation": "

The Verified Access policy document.

" + "aws.protocols#ec2QueryName": "SourceIpamPoolId", + "smithy.api#documentation": "

The ID of the source IPAM pool. You can use this option to create an IPAM pool within an existing source pool.

", + "smithy.api#xmlName": "sourceIpamPoolId" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "IpamPoolArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "aws.protocols#ec2QueryName": "IpamPoolArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IPAM pool.

", + "smithy.api#xmlName": "ipamPoolArn" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "IpamScopeArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "IpamScopeArn", + "smithy.api#documentation": "

The ARN of the scope of the IPAM pool.

", + "smithy.api#xmlName": "ipamScopeArn" } }, - "SseSpecification": { - "target": "com.amazonaws.ec2#VerifiedAccessSseSpecificationRequest", + "IpamScopeType": { + "target": "com.amazonaws.ec2#IpamScopeType", "traits": { - "smithy.api#documentation": "

The options for server side encryption.

" + "aws.protocols#ec2QueryName": "IpamScopeType", + "smithy.api#documentation": "

In IPAM, a scope is the highest-level container within IPAM. An IPAM contains two default scopes. Each scope represents the IP space for a single network. The private scope is intended for all private IP address space. The public scope is intended for all public IP address space. Scopes enable you to reuse IP addresses across multiple unconnected networks without causing IP address overlap or conflict.

", + "smithy.api#xmlName": "ipamScopeType" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyVerifiedAccessEndpointPolicyResult": { - "type": "structure", - "members": { - "PolicyEnabled": { - "target": "com.amazonaws.ec2#Boolean", + }, + "IpamArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "aws.protocols#ec2QueryName": "PolicyEnabled", - "smithy.api#documentation": "

The status of the Verified Access policy.

", - "smithy.api#xmlName": "policyEnabled" + "aws.protocols#ec2QueryName": "IpamArn", + "smithy.api#documentation": "

The ARN of the IPAM.

", + "smithy.api#xmlName": "ipamArn" } }, - "PolicyDocument": { + "IpamRegion": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PolicyDocument", - "smithy.api#documentation": "

The Verified Access policy document.

", - "smithy.api#xmlName": "policyDocument" + "aws.protocols#ec2QueryName": "IpamRegion", + "smithy.api#documentation": "

The Amazon Web Services Region of the IPAM pool.

", + "smithy.api#xmlName": "ipamRegion" } }, - "SseSpecification": { - "target": "com.amazonaws.ec2#VerifiedAccessSseSpecificationResponse", - "traits": { - "aws.protocols#ec2QueryName": "SseSpecification", - "smithy.api#documentation": "

The options in use for server side encryption.

", - "smithy.api#xmlName": "sseSpecification" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyVerifiedAccessEndpointRequest": { - "type": "structure", - "members": { - "VerifiedAccessEndpointId": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpointId", + "Locale": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Verified Access endpoint.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Locale", + "smithy.api#documentation": "

The locale of the IPAM pool.

\n

The locale for the pool should be one of the following:

\n \n

If you choose an Amazon Web Services Region for locale that has not been configured as an operating Region for the IPAM, you'll get an error.

", + "smithy.api#xmlName": "locale" } }, - "VerifiedAccessGroupId": { - "target": "com.amazonaws.ec2#VerifiedAccessGroupId", + "PoolDepth": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The ID of the Verified Access group.

" + "aws.protocols#ec2QueryName": "PoolDepth", + "smithy.api#documentation": "

The depth of pools in your IPAM pool. The pool depth quota is 10. For more information, see Quotas in IPAM in the Amazon VPC IPAM User Guide.\n

", + "smithy.api#xmlName": "poolDepth" } }, - "LoadBalancerOptions": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointLoadBalancerOptions", + "State": { + "target": "com.amazonaws.ec2#IpamPoolState", "traits": { - "smithy.api#documentation": "

The load balancer details if creating the Verified Access endpoint as\n load-balancertype.

" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the IPAM pool.

", + "smithy.api#xmlName": "state" } }, - "NetworkInterfaceOptions": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointEniOptions", + "StateMessage": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The network interface options.

" + "aws.protocols#ec2QueryName": "StateMessage", + "smithy.api#documentation": "

The state message.

", + "smithy.api#xmlName": "stateMessage" } }, "Description": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

A description for the Verified Access endpoint.

" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The description of the IPAM pool.

", + "smithy.api#xmlName": "description" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "AutoImport": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "aws.protocols#ec2QueryName": "AutoImport", + "smithy.api#documentation": "

If selected, IPAM will continuously look for resources within the CIDR range of this pool \n and automatically import them as allocations into your IPAM. The CIDRs that will be allocated for\n these resources must not already be allocated to other resources in order for the import to succeed. IPAM will import \n a CIDR regardless of its compliance with the pool's allocation rules, so a resource might be imported and subsequently \n marked as noncompliant. If IPAM discovers multiple CIDRs that overlap, IPAM will import the largest CIDR only. If IPAM \n discovers multiple CIDRs with matching CIDRs, IPAM will randomly import one of them only.\n

\n

A locale must be set on the pool for this feature to work.

", + "smithy.api#xmlName": "autoImport" } }, - "DryRun": { + "PubliclyAdvertisable": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyVerifiedAccessEndpointResult": { - "type": "structure", - "members": { - "VerifiedAccessEndpoint": { - "target": "com.amazonaws.ec2#VerifiedAccessEndpoint", - "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessEndpoint", - "smithy.api#documentation": "

Details about the Verified Access endpoint.

", - "smithy.api#xmlName": "verifiedAccessEndpoint" + "aws.protocols#ec2QueryName": "PubliclyAdvertisable", + "smithy.api#documentation": "

Determines if a pool is publicly advertisable. This option is not available for pools with AddressFamily set to ipv4.

", + "smithy.api#xmlName": "publiclyAdvertisable" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyVerifiedAccessEndpointSubnetIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#SubnetId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ModifyVerifiedAccessGroup": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessGroupRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessGroupResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the specified Amazon Web Services Verified Access group configuration.

" - } - }, - "com.amazonaws.ec2#ModifyVerifiedAccessGroupPolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessGroupPolicyRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessGroupPolicyResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the specified Amazon Web Services Verified Access group policy.

" - } - }, - "com.amazonaws.ec2#ModifyVerifiedAccessGroupPolicyRequest": { - "type": "structure", - "members": { - "VerifiedAccessGroupId": { - "target": "com.amazonaws.ec2#VerifiedAccessGroupId", + }, + "AddressFamily": { + "target": "com.amazonaws.ec2#AddressFamily", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Verified Access group.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "AddressFamily", + "smithy.api#documentation": "

The address family of the pool.

", + "smithy.api#xmlName": "addressFamily" } }, - "PolicyEnabled": { - "target": "com.amazonaws.ec2#Boolean", + "AllocationMinNetmaskLength": { + "target": "com.amazonaws.ec2#IpamNetmaskLength", "traits": { - "smithy.api#documentation": "

The status of the Verified Access policy.

" + "aws.protocols#ec2QueryName": "AllocationMinNetmaskLength", + "smithy.api#documentation": "

The minimum netmask length required for CIDR allocations in this IPAM pool to be compliant. The minimum netmask length must be less than the maximum netmask length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.

", + "smithy.api#xmlName": "allocationMinNetmaskLength" } }, - "PolicyDocument": { - "target": "com.amazonaws.ec2#String", + "AllocationMaxNetmaskLength": { + "target": "com.amazonaws.ec2#IpamNetmaskLength", "traits": { - "smithy.api#documentation": "

The Verified Access policy document.

" + "aws.protocols#ec2QueryName": "AllocationMaxNetmaskLength", + "smithy.api#documentation": "

The maximum netmask length possible for CIDR allocations in this IPAM pool to be compliant. The maximum netmask length must be greater than the minimum netmask length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.

", + "smithy.api#xmlName": "allocationMaxNetmaskLength" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "AllocationDefaultNetmaskLength": { + "target": "com.amazonaws.ec2#IpamNetmaskLength", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "aws.protocols#ec2QueryName": "AllocationDefaultNetmaskLength", + "smithy.api#documentation": "

The default netmask length for allocations added to this pool. If, for example, the CIDR assigned to this pool is 10.0.0.0/8 and \n you enter 16 here, new allocations will default to 10.0.0.0/16.

", + "smithy.api#xmlName": "allocationDefaultNetmaskLength" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "AllocationResourceTags": { + "target": "com.amazonaws.ec2#IpamResourceTagList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "AllocationResourceTagSet", + "smithy.api#documentation": "

Tags that are required for resources that use CIDRs from this IPAM pool. Resources that do not have these tags will not be allowed to allocate space from the pool. If the resources have their tags changed after they have allocated space or if the allocation tagging requirements are changed on the pool, the resource may be marked as noncompliant.

", + "smithy.api#xmlName": "allocationResourceTagSet" } }, - "SseSpecification": { - "target": "com.amazonaws.ec2#VerifiedAccessSseSpecificationRequest", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#documentation": "

The options for server side encryption.

" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

", + "smithy.api#xmlName": "tagSet" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyVerifiedAccessGroupPolicyResult": { - "type": "structure", - "members": { - "PolicyEnabled": { - "target": "com.amazonaws.ec2#Boolean", + }, + "AwsService": { + "target": "com.amazonaws.ec2#IpamPoolAwsService", "traits": { - "aws.protocols#ec2QueryName": "PolicyEnabled", - "smithy.api#documentation": "

The status of the Verified Access policy.

", - "smithy.api#xmlName": "policyEnabled" + "aws.protocols#ec2QueryName": "AwsService", + "smithy.api#documentation": "

Limits which service in Amazon Web Services that the pool can be used in. \"ec2\", for example, allows users to use space for Elastic IP addresses and VPCs.

", + "smithy.api#xmlName": "awsService" } }, - "PolicyDocument": { - "target": "com.amazonaws.ec2#String", + "PublicIpSource": { + "target": "com.amazonaws.ec2#IpamPoolPublicIpSource", "traits": { - "aws.protocols#ec2QueryName": "PolicyDocument", - "smithy.api#documentation": "

The Verified Access policy document.

", - "smithy.api#xmlName": "policyDocument" + "aws.protocols#ec2QueryName": "PublicIpSource", + "smithy.api#documentation": "

The IP address source for pools in the public scope. Only used for provisioning IP address CIDRs to pools in the public scope. Default is BYOIP. For more information, see Create IPv6 pools in the Amazon VPC IPAM User Guide. \n By default, you can add only one Amazon-provided IPv6 CIDR block to a top-level IPv6 pool. For information on increasing the default limit, see Quotas for your IPAM in the Amazon VPC IPAM User Guide.

", + "smithy.api#xmlName": "publicIpSource" } }, - "SseSpecification": { - "target": "com.amazonaws.ec2#VerifiedAccessSseSpecificationResponse", + "SourceResource": { + "target": "com.amazonaws.ec2#IpamPoolSourceResource", "traits": { - "aws.protocols#ec2QueryName": "SseSpecification", - "smithy.api#documentation": "

The options in use for server side encryption.

", - "smithy.api#xmlName": "sseSpecification" + "aws.protocols#ec2QueryName": "SourceResource", + "smithy.api#documentation": "

The resource used to provision CIDRs to a resource planning pool.

", + "smithy.api#xmlName": "sourceResource" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

In IPAM, a pool is a collection of contiguous IP addresses CIDRs. Pools enable you to organize your IP addresses according to your routing and security needs. For example, if you have separate routing and security needs for development and production applications, you can create a pool for each.

" } }, - "com.amazonaws.ec2#ModifyVerifiedAccessGroupRequest": { + "com.amazonaws.ec2#IpamPoolAllocation": { "type": "structure", "members": { - "VerifiedAccessGroupId": { - "target": "com.amazonaws.ec2#VerifiedAccessGroupId", + "Cidr": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Verified Access group.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Cidr", + "smithy.api#documentation": "

The CIDR for the allocation. A CIDR is a representation of an IP address and its associated network mask (or netmask) and \n refers to a range of IP addresses. An IPv4 CIDR example is 10.24.34.0/23. An IPv6 CIDR example is 2001:DB8::/32.

", + "smithy.api#xmlName": "cidr" } }, - "VerifiedAccessInstanceId": { - "target": "com.amazonaws.ec2#VerifiedAccessInstanceId", + "IpamPoolAllocationId": { + "target": "com.amazonaws.ec2#IpamPoolAllocationId", "traits": { - "smithy.api#documentation": "

The ID of the Verified Access instance.

" + "aws.protocols#ec2QueryName": "IpamPoolAllocationId", + "smithy.api#documentation": "

The ID of an allocation.

", + "smithy.api#xmlName": "ipamPoolAllocationId" } }, "Description": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

A description for the Verified Access group.

" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description of the pool allocation.

", + "smithy.api#xmlName": "description" } }, - "ClientToken": { + "ResourceId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "aws.protocols#ec2QueryName": "ResourceId", + "smithy.api#documentation": "

The ID of the resource.

", + "smithy.api#xmlName": "resourceId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ResourceType": { + "target": "com.amazonaws.ec2#IpamPoolAllocationResourceType", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "ResourceType", + "smithy.api#documentation": "

The type of the resource.

", + "smithy.api#xmlName": "resourceType" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyVerifiedAccessGroupResult": { - "type": "structure", - "members": { - "VerifiedAccessGroup": { - "target": "com.amazonaws.ec2#VerifiedAccessGroup", + }, + "ResourceRegion": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessGroup", - "smithy.api#documentation": "

Details about the Verified Access group.

", - "smithy.api#xmlName": "verifiedAccessGroup" + "aws.protocols#ec2QueryName": "ResourceRegion", + "smithy.api#documentation": "

The Amazon Web Services Region of the resource.

", + "smithy.api#xmlName": "resourceRegion" + } + }, + "ResourceOwner": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ResourceOwner", + "smithy.api#documentation": "

The owner of the resource.

", + "smithy.api#xmlName": "resourceOwner" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

In IPAM, an allocation is a CIDR assignment from an IPAM pool to another IPAM pool or to a resource.

" } }, - "com.amazonaws.ec2#ModifyVerifiedAccessInstance": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessInstanceRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessInstanceResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the configuration of the specified Amazon Web Services Verified Access instance.

" + "com.amazonaws.ec2#IpamPoolAllocationAllowedCidrs": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#ModifyVerifiedAccessInstanceLoggingConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessInstanceLoggingConfigurationRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessInstanceLoggingConfigurationResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the logging configuration for the specified Amazon Web Services Verified Access instance.

" + "com.amazonaws.ec2#IpamPoolAllocationDisallowedCidrs": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#ModifyVerifiedAccessInstanceLoggingConfigurationRequest": { - "type": "structure", + "com.amazonaws.ec2#IpamPoolAllocationId": { + "type": "string" + }, + "com.amazonaws.ec2#IpamPoolAllocationResourceType": { + "type": "enum", "members": { - "VerifiedAccessInstanceId": { - "target": "com.amazonaws.ec2#VerifiedAccessInstanceId", + "ipam_pool": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Verified Access instance.

", - "smithy.api#required": {} + "smithy.api#enumValue": "ipam-pool" } }, - "AccessLogs": { - "target": "com.amazonaws.ec2#VerifiedAccessLogOptions", + "vpc": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The configuration options for Verified Access instances.

", - "smithy.api#required": {} + "smithy.api#enumValue": "vpc" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ec2_public_ipv4_pool": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "ec2-public-ipv4-pool" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "custom": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "smithy.api#enumValue": "custom" + } + }, + "subnet": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "subnet" + } + }, + "eip": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "eip" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#ModifyVerifiedAccessInstanceLoggingConfigurationResult": { - "type": "structure", + "com.amazonaws.ec2#IpamPoolAllocationSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamPoolAllocation", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpamPoolAwsService": { + "type": "enum", "members": { - "LoggingConfiguration": { - "target": "com.amazonaws.ec2#VerifiedAccessInstanceLoggingConfiguration", + "ec2": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LoggingConfiguration", - "smithy.api#documentation": "

The logging configuration for the Verified Access instance.

", - "smithy.api#xmlName": "loggingConfiguration" + "smithy.api#enumValue": "ec2" } } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#ModifyVerifiedAccessInstanceRequest": { + "com.amazonaws.ec2#IpamPoolCidr": { "type": "structure", "members": { - "VerifiedAccessInstanceId": { - "target": "com.amazonaws.ec2#VerifiedAccessInstanceId", + "Cidr": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Verified Access instance.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Cidr", + "smithy.api#documentation": "

The CIDR provisioned to the IPAM pool. A CIDR is a representation of an IP address and its associated network mask (or netmask) \n and refers to a range of IP addresses. An IPv4 CIDR example is 10.24.34.0/23. An IPv6 CIDR example is 2001:DB8::/32.

", + "smithy.api#xmlName": "cidr" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "State": { + "target": "com.amazonaws.ec2#IpamPoolCidrState", "traits": { - "smithy.api#documentation": "

A description for the Verified Access instance.

" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the CIDR.

", + "smithy.api#xmlName": "state" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "FailureReason": { + "target": "com.amazonaws.ec2#IpamPoolCidrFailureReason", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "FailureReason", + "smithy.api#documentation": "

Details related to why an IPAM pool CIDR failed to be provisioned.

", + "smithy.api#xmlName": "failureReason" } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "IpamPoolCidrId": { + "target": "com.amazonaws.ec2#IpamPoolCidrId", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "aws.protocols#ec2QueryName": "IpamPoolCidrId", + "smithy.api#documentation": "

The IPAM pool CIDR ID.

", + "smithy.api#xmlName": "ipamPoolCidrId" + } + }, + "NetmaskLength": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "NetmaskLength", + "smithy.api#documentation": "

The netmask length of the CIDR you'd like to provision to a pool. Can be used for provisioning Amazon-provided IPv6 CIDRs to top-level pools and for provisioning CIDRs to pools with source pools. Cannot be used to provision BYOIP CIDRs to top-level pools. \"NetmaskLength\" or \"Cidr\" is required.

", + "smithy.api#xmlName": "netmaskLength" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

A CIDR provisioned to an IPAM pool.

" } }, - "com.amazonaws.ec2#ModifyVerifiedAccessInstanceResult": { - "type": "structure", + "com.amazonaws.ec2#IpamPoolCidrFailureCode": { + "type": "enum", "members": { - "VerifiedAccessInstance": { - "target": "com.amazonaws.ec2#VerifiedAccessInstance", + "cidr_not_available": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessInstance", - "smithy.api#documentation": "

Details about the Verified Access instance.

", - "smithy.api#xmlName": "verifiedAccessInstance" + "smithy.api#enumValue": "cidr-not-available" + } + }, + "limit_exceeded": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "limit-exceeded" } } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyVerifiedAccessTrustProvider": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessTrustProviderRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessTrustProviderResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the configuration of the specified Amazon Web Services Verified Access trust provider.

" } }, - "com.amazonaws.ec2#ModifyVerifiedAccessTrustProviderDeviceOptions": { + "com.amazonaws.ec2#IpamPoolCidrFailureReason": { "type": "structure", "members": { - "PublicSigningKeyUrl": { + "Code": { + "target": "com.amazonaws.ec2#IpamPoolCidrFailureCode", + "traits": { + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

An error code related to why an IPAM pool CIDR failed to be provisioned.

", + "smithy.api#xmlName": "code" + } + }, + "Message": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The URL Amazon Web Services Verified Access will use to verify the authenticity of the device tokens.

" + "aws.protocols#ec2QueryName": "Message", + "smithy.api#documentation": "

A message related to why an IPAM pool CIDR failed to be provisioned.

", + "smithy.api#xmlName": "message" } } }, "traits": { - "smithy.api#documentation": "

Modifies the configuration of the specified device-based Amazon Web Services Verified Access trust provider.

" + "smithy.api#documentation": "

Details related to why an IPAM pool CIDR failed to be provisioned.

" } }, - "com.amazonaws.ec2#ModifyVerifiedAccessTrustProviderOidcOptions": { - "type": "structure", + "com.amazonaws.ec2#IpamPoolCidrId": { + "type": "string" + }, + "com.amazonaws.ec2#IpamPoolCidrSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamPoolCidr", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpamPoolCidrState": { + "type": "enum", "members": { - "Issuer": { - "target": "com.amazonaws.ec2#String", + "pending_provision": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The OIDC issuer.

" + "smithy.api#enumValue": "pending-provision" } }, - "AuthorizationEndpoint": { - "target": "com.amazonaws.ec2#String", + "provisioned": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The OIDC authorization endpoint.

" + "smithy.api#enumValue": "provisioned" } }, - "TokenEndpoint": { - "target": "com.amazonaws.ec2#String", + "failed_provision": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The OIDC token endpoint.

" + "smithy.api#enumValue": "failed-provision" } }, - "UserInfoEndpoint": { - "target": "com.amazonaws.ec2#String", + "pending_deprovision": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The OIDC user info endpoint.

" + "smithy.api#enumValue": "pending-deprovision" } }, - "ClientId": { - "target": "com.amazonaws.ec2#String", + "deprovisioned": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The client identifier.

" + "smithy.api#enumValue": "deprovisioned" } }, - "ClientSecret": { - "target": "com.amazonaws.ec2#ClientSecretType", + "failed_deprovision": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The client secret.

" + "smithy.api#enumValue": "failed-deprovision" } }, - "Scope": { - "target": "com.amazonaws.ec2#String", + "pending_import": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

OpenID Connect (OIDC) scopes are used by an application during authentication to authorize access to a user's details. Each scope returns a specific set of user attributes.

" + "smithy.api#enumValue": "pending-import" + } + }, + "failed_import": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "failed-import" } } - }, - "traits": { - "smithy.api#documentation": "

Options for an OpenID Connect-compatible user-identity trust provider.

" } }, - "com.amazonaws.ec2#ModifyVerifiedAccessTrustProviderRequest": { - "type": "structure", + "com.amazonaws.ec2#IpamPoolId": { + "type": "string" + }, + "com.amazonaws.ec2#IpamPoolPublicIpSource": { + "type": "enum", "members": { - "VerifiedAccessTrustProviderId": { - "target": "com.amazonaws.ec2#VerifiedAccessTrustProviderId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Verified Access trust provider.

", - "smithy.api#required": {} - } - }, - "OidcOptions": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessTrustProviderOidcOptions", + "amazon": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The options for an OpenID Connect-compatible user-identity trust provider.

" + "smithy.api#enumValue": "amazon" } }, - "DeviceOptions": { - "target": "com.amazonaws.ec2#ModifyVerifiedAccessTrustProviderDeviceOptions", + "byoip": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The options for a device-based trust provider. This parameter is required when the\n provider type is device.

" + "smithy.api#enumValue": "byoip" } - }, - "Description": { + } + } + }, + "com.amazonaws.ec2#IpamPoolSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamPool", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpamPoolSourceResource": { + "type": "structure", + "members": { + "ResourceId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

A description for the Verified Access trust provider.

" + "aws.protocols#ec2QueryName": "ResourceId", + "smithy.api#documentation": "

The source resource ID.

", + "smithy.api#xmlName": "resourceId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ResourceType": { + "target": "com.amazonaws.ec2#IpamPoolSourceResourceType", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "ResourceType", + "smithy.api#documentation": "

The source resource type.

", + "smithy.api#xmlName": "resourceType" } }, - "ClientToken": { + "ResourceRegion": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "aws.protocols#ec2QueryName": "ResourceRegion", + "smithy.api#documentation": "

The source resource Region.

", + "smithy.api#xmlName": "resourceRegion" } }, - "SseSpecification": { - "target": "com.amazonaws.ec2#VerifiedAccessSseSpecificationRequest", + "ResourceOwner": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The options for server side encryption.

" + "aws.protocols#ec2QueryName": "ResourceOwner", + "smithy.api#documentation": "

The source resource owner.

", + "smithy.api#xmlName": "resourceOwner" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

The resource used to provision CIDRs to a resource planning pool.

" } }, - "com.amazonaws.ec2#ModifyVerifiedAccessTrustProviderResult": { + "com.amazonaws.ec2#IpamPoolSourceResourceRequest": { "type": "structure", "members": { - "VerifiedAccessTrustProvider": { - "target": "com.amazonaws.ec2#VerifiedAccessTrustProvider", + "ResourceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "VerifiedAccessTrustProvider", - "smithy.api#documentation": "

Details about the Verified Access trust provider.

", - "smithy.api#xmlName": "verifiedAccessTrustProvider" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyVolume": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVolumeRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVolumeResult" - }, - "traits": { - "smithy.api#documentation": "

You can modify several parameters of an existing EBS volume, including volume size, volume\n type, and IOPS capacity. If your EBS volume is attached to a current-generation EC2 instance\n type, you might be able to apply these changes without stopping the instance or detaching the\n volume from it. For more information about modifying EBS volumes, see Amazon EBS Elastic Volumes \n in the Amazon EBS User Guide.

\n

When you complete a resize operation on your volume, you need to extend the volume's\n file-system size to take advantage of the new storage capacity. For more information, see Extend the file system.

\n

You can use CloudWatch Events to check the status of a modification to an EBS volume. For\n information about CloudWatch Events, see the Amazon CloudWatch Events User Guide. You can also track the status of a\n modification using DescribeVolumesModifications. For information\n about tracking status changes using either method, see Monitor the progress of volume modifications.

\n

With previous-generation instance types, resizing an EBS volume might require detaching and\n reattaching the volume or stopping and restarting the instance.

\n

After modifying a volume, you must wait at least six hours and ensure that the volume \n is in the in-use or available state before you can modify the same \n volume. This is sometimes referred to as a cooldown period.

" - } - }, - "com.amazonaws.ec2#ModifyVolumeAttribute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVolumeAttributeRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Modifies a volume attribute.

\n

By default, all I/O operations for the volume are suspended when the data on the volume is\n determined to be potentially inconsistent, to prevent undetectable, latent data corruption.\n The I/O access to the volume can be resumed by first enabling I/O access and then checking the\n data consistency on your volume.

\n

You can change the default behavior to resume I/O operations. We recommend that you change\n this only for boot volumes or for volumes that are stateless or disposable.

", - "smithy.api#examples": [ - { - "title": "To modify a volume attribute", - "documentation": "This example sets the ``autoEnableIo`` attribute of the volume with the ID ``vol-1234567890abcdef0`` to ``true``. If the command succeeds, no output is returned.", - "input": { - "DryRun": true, - "VolumeId": "vol-1234567890abcdef0", - "AutoEnableIO": { - "Value": true - } - }, - "output": {} + "smithy.api#documentation": "

The source resource ID.

" } - ] - } - }, - "com.amazonaws.ec2#ModifyVolumeAttributeRequest": { - "type": "structure", - "members": { - "AutoEnableIO": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + }, + "ResourceType": { + "target": "com.amazonaws.ec2#IpamPoolSourceResourceType", "traits": { - "smithy.api#documentation": "

Indicates whether the volume should be auto-enabled for I/O operations.

" + "smithy.api#documentation": "

The source resource type.

" } }, - "VolumeId": { - "target": "com.amazonaws.ec2#VolumeId", + "ResourceRegion": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the volume.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The source resource Region.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ResourceOwner": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The source resource owner.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

The resource used to provision CIDRs to a resource planning pool.

" } }, - "com.amazonaws.ec2#ModifyVolumeRequest": { - "type": "structure", + "com.amazonaws.ec2#IpamPoolSourceResourceType": { + "type": "enum", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "vpc": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "vpc" } - }, - "VolumeId": { - "target": "com.amazonaws.ec2#VolumeId", + } + } + }, + "com.amazonaws.ec2#IpamPoolState": { + "type": "enum", + "members": { + "create_in_progress": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the volume.

", - "smithy.api#required": {} + "smithy.api#enumValue": "create-in-progress" } }, - "Size": { - "target": "com.amazonaws.ec2#Integer", + "create_complete": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The target size of the volume, in GiB. The target volume size must be greater than or\n equal to the existing size of the volume.

\n

The following are the supported volumes sizes for each volume type:

\n \n

Default: The existing size is retained.

" + "smithy.api#enumValue": "create-complete" } }, - "VolumeType": { - "target": "com.amazonaws.ec2#VolumeType", - "traits": { - "smithy.api#documentation": "

The target EBS volume type of the volume. For more information, see Amazon EBS volume types in the Amazon EBS User Guide.

\n

Default: The existing type is retained.

" + "create_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "create-failed" } }, - "Iops": { - "target": "com.amazonaws.ec2#Integer", + "modify_in_progress": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The target IOPS rate of the volume. This parameter is valid only for gp3, io1, and io2 volumes.

\n

The following are the supported values for each volume type:

\n \n

For io2 volumes, you can achieve up to 256,000 IOPS on \ninstances \nbuilt on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS.

\n

Default: The existing value is retained if you keep the same volume type. If you change\n the volume type to io1, io2, or gp3, the default is 3,000.

" + "smithy.api#enumValue": "modify-in-progress" } }, - "Throughput": { - "target": "com.amazonaws.ec2#Integer", + "modify_complete": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The target throughput of the volume, in MiB/s. This parameter is valid only for gp3 volumes. \n The maximum value is 1,000.

\n

Default: The existing value is retained if the source and target volume type is gp3.\n Otherwise, the default value is 125.

\n

Valid Range: Minimum value of 125. Maximum value of 1000.

" + "smithy.api#enumValue": "modify-complete" } }, - "MultiAttachEnabled": { - "target": "com.amazonaws.ec2#Boolean", + "modify_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "modify-failed" + } + }, + "delete_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-in-progress" + } + }, + "delete_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-complete" + } + }, + "delete_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-failed" + } + }, + "isolate_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "isolate-in-progress" + } + }, + "isolate_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "isolate-complete" + } + }, + "restore_in_progress": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Specifies whether to enable Amazon EBS Multi-Attach. If you enable Multi-Attach, you can attach the \n\t\tvolume to up to 16 \n\t\t\tNitro-based instances in the same Availability Zone. This parameter is \n\t\tsupported with io1 and io2 volumes only. For more information, see \n\t \n\t\t\tAmazon EBS Multi-Attach in the Amazon EBS User Guide.

" + "smithy.api#enumValue": "restore-in-progress" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#ModifyVolumeResult": { - "type": "structure", + "com.amazonaws.ec2#IpamPublicAddressAssociationStatus": { + "type": "enum", "members": { - "VolumeModification": { - "target": "com.amazonaws.ec2#VolumeModification", + "ASSOCIATED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VolumeModification", - "smithy.api#documentation": "

Information about the volume modification.

", - "smithy.api#xmlName": "volumeModification" + "smithy.api#enumValue": "associated" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyVpcAttribute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVpcAttributeRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Modifies the specified attribute of the specified VPC.

", - "smithy.api#examples": [ - { - "title": "To modify the enableDnsSupport attribute", - "documentation": "This example modifies the enableDnsSupport attribute. This attribute indicates whether DNS resolution is enabled for the VPC. If this attribute is true, the Amazon DNS server resolves DNS hostnames for instances in the VPC to their corresponding IP addresses; otherwise, it does not.", - "input": { - "VpcId": "vpc-a01106c2", - "EnableDnsSupport": { - "Value": false - } - } - }, - { - "title": "To modify the enableDnsHostnames attribute", - "documentation": "This example modifies the enableDnsHostnames attribute. This attribute indicates whether instances launched in the VPC get DNS hostnames. If this attribute is true, instances in the VPC get DNS hostnames; otherwise, they do not.", - "input": { - "VpcId": "vpc-a01106c2", - "EnableDnsHostnames": { - "Value": false - } - } + }, + "DISASSOCIATED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disassociated" } - ] + } } }, - "com.amazonaws.ec2#ModifyVpcAttributeRequest": { - "type": "structure", + "com.amazonaws.ec2#IpamPublicAddressAwsService": { + "type": "enum", "members": { - "EnableDnsHostnames": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "NAT_GATEWAY": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether the instances launched in the VPC get DNS hostnames. If enabled, instances in the VPC get DNS hostnames; otherwise, they do not.

\n

You cannot modify the DNS resolution and DNS hostnames attributes in the same request. Use separate requests for each attribute. You can only enable DNS hostnames if you've enabled DNS support.

" + "smithy.api#enumValue": "nat-gateway" } }, - "EnableDnsSupport": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "DMS": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether the DNS resolution is supported for the VPC. If enabled, queries to\n\t\t\tthe Amazon provided DNS server at the 169.254.169.253 IP address, or the reserved IP\n\t\t\taddress at the base of the VPC network range \"plus two\" succeed. If disabled, the Amazon\n\t\t\tprovided DNS service in the VPC that resolves public DNS hostnames to IP addresses is\n\t\t\tnot enabled.

\n

You cannot modify the DNS resolution and DNS hostnames attributes in the same request. Use separate requests for each attribute.

" + "smithy.api#enumValue": "database-migration-service" } }, - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "REDSHIFT": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "vpcId" + "smithy.api#enumValue": "redshift" } }, - "EnableNetworkAddressUsageMetrics": { - "target": "com.amazonaws.ec2#AttributeBooleanValue", + "ECS": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether Network Address Usage metrics are enabled for your VPC.

" + "smithy.api#enumValue": "elastic-container-service" + } + }, + "RDS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "relational-database-service" + } + }, + "S2S_VPN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "site-to-site-vpn" + } + }, + "EC2_LB": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "load-balancer" + } + }, + "AGA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "global-accelerator" + } + }, + "OTHER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "other" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#ModifyVpcEndpoint": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVpcEndpointRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVpcEndpointResult" + "com.amazonaws.ec2#IpamPublicAddressSecurityGroup": { + "type": "structure", + "members": { + "GroupName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "GroupName", + "smithy.api#documentation": "

The security group's name.

", + "smithy.api#xmlName": "groupName" + } + }, + "GroupId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "GroupId", + "smithy.api#documentation": "

The security group's ID.

", + "smithy.api#xmlName": "groupId" + } + } }, "traits": { - "smithy.api#documentation": "

Modifies attributes of a specified VPC endpoint. The attributes that you can modify\n depend on the type of VPC endpoint (interface, gateway, or Gateway Load Balancer). For more information, \n see the Amazon Web Services PrivateLink \n Guide.

" + "smithy.api#documentation": "

The security group that the resource with the public IP address is in.

" } }, - "com.amazonaws.ec2#ModifyVpcEndpointConnectionNotification": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVpcEndpointConnectionNotificationRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVpcEndpointConnectionNotificationResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies a connection notification for VPC endpoint or VPC endpoint service. You\n can change the SNS topic for the notification, or the events for which to be notified.

" + "com.amazonaws.ec2#IpamPublicAddressSecurityGroupList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamPublicAddressSecurityGroup", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#ModifyVpcEndpointConnectionNotificationRequest": { + "com.amazonaws.ec2#IpamPublicAddressTag": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "ConnectionNotificationId": { - "target": "com.amazonaws.ec2#ConnectionNotificationId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the notification.

", - "smithy.api#required": {} - } - }, - "ConnectionNotificationArn": { + "Key": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The ARN for the SNS topic for the notification.

" + "aws.protocols#ec2QueryName": "Key", + "smithy.api#documentation": "

The tag's key.

", + "smithy.api#xmlName": "key" } }, - "ConnectionEvents": { - "target": "com.amazonaws.ec2#ValueStringList", + "Value": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The events for the endpoint. Valid values are Accept,\n Connect, Delete, and Reject.

" + "aws.protocols#ec2QueryName": "Value", + "smithy.api#documentation": "

The tag's value.

", + "smithy.api#xmlName": "value" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

A tag for a public IP address discovered by IPAM.

" } }, - "com.amazonaws.ec2#ModifyVpcEndpointConnectionNotificationResult": { + "com.amazonaws.ec2#IpamPublicAddressTagList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamPublicAddressTag", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpamPublicAddressTags": { "type": "structure", "members": { - "ReturnValue": { - "target": "com.amazonaws.ec2#Boolean", + "EipTags": { + "target": "com.amazonaws.ec2#IpamPublicAddressTagList", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "EipTagSet", + "smithy.api#documentation": "

Tags for an Elastic IP address.

", + "smithy.api#xmlName": "eipTagSet" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Tags for a public IP address discovered by IPAM.

" } }, - "com.amazonaws.ec2#ModifyVpcEndpointRequest": { - "type": "structure", + "com.amazonaws.ec2#IpamPublicAddressType": { + "type": "enum", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - }, - "VpcEndpointId": { - "target": "com.amazonaws.ec2#VpcEndpointId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the endpoint.

", - "smithy.api#required": {} - } - }, - "ResetPolicy": { - "target": "com.amazonaws.ec2#Boolean", + "SERVICE_MANAGED_IP": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

(Gateway endpoint) Specify true to reset the policy document to the\n default policy. The default policy allows full access to the service.

" + "smithy.api#enumValue": "service-managed-ip" } }, - "PolicyDocument": { - "target": "com.amazonaws.ec2#String", + "SERVICE_MANAGED_BYOIP": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

(Interface and gateway endpoints) A policy to attach to the endpoint that controls access to the service. The policy must\n be in valid JSON format.

" + "smithy.api#enumValue": "service-managed-byoip" } }, - "AddRouteTableIds": { - "target": "com.amazonaws.ec2#VpcEndpointRouteTableIdList", + "AMAZON_OWNED_EIP": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

(Gateway endpoint) The IDs of the route tables to associate with the endpoint.

", - "smithy.api#xmlName": "AddRouteTableId" + "smithy.api#enumValue": "amazon-owned-eip" } }, - "RemoveRouteTableIds": { - "target": "com.amazonaws.ec2#VpcEndpointRouteTableIdList", + "AMAZON_OWNED_CONTIG": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

(Gateway endpoint) The IDs of the route tables to disassociate from the endpoint.

", - "smithy.api#xmlName": "RemoveRouteTableId" + "smithy.api#enumValue": "amazon-owned-contig" } }, - "AddSubnetIds": { - "target": "com.amazonaws.ec2#VpcEndpointSubnetIdList", + "BYOIP": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

(Interface and Gateway Load Balancer endpoints) The IDs of the subnets in which to serve the endpoint. \n For a Gateway Load Balancer endpoint, you can specify only one subnet.

", - "smithy.api#xmlName": "AddSubnetId" + "smithy.api#enumValue": "byoip" } }, - "RemoveSubnetIds": { - "target": "com.amazonaws.ec2#VpcEndpointSubnetIdList", + "EC2_PUBLIC_IP": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

(Interface endpoint) The IDs of the subnets from which to remove the endpoint.

", - "smithy.api#xmlName": "RemoveSubnetId" + "smithy.api#enumValue": "ec2-public-ip" } - }, - "AddSecurityGroupIds": { - "target": "com.amazonaws.ec2#VpcEndpointSecurityGroupIdList", + } + } + }, + "com.amazonaws.ec2#IpamResourceCidr": { + "type": "structure", + "members": { + "IpamId": { + "target": "com.amazonaws.ec2#IpamId", "traits": { - "smithy.api#documentation": "

(Interface endpoint) The IDs of the security groups to associate with the endpoint network interfaces.

", - "smithy.api#xmlName": "AddSecurityGroupId" + "aws.protocols#ec2QueryName": "IpamId", + "smithy.api#documentation": "

The IPAM ID for an IPAM resource.

", + "smithy.api#xmlName": "ipamId" } }, - "RemoveSecurityGroupIds": { - "target": "com.amazonaws.ec2#VpcEndpointSecurityGroupIdList", + "IpamScopeId": { + "target": "com.amazonaws.ec2#IpamScopeId", "traits": { - "smithy.api#documentation": "

(Interface endpoint) The IDs of the security groups to disassociate from the endpoint network interfaces.

", - "smithy.api#xmlName": "RemoveSecurityGroupId" + "aws.protocols#ec2QueryName": "IpamScopeId", + "smithy.api#documentation": "

The scope ID for an IPAM resource.

", + "smithy.api#xmlName": "ipamScopeId" } }, - "IpAddressType": { - "target": "com.amazonaws.ec2#IpAddressType", + "IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", "traits": { - "smithy.api#documentation": "

The IP address type for the endpoint.

" + "aws.protocols#ec2QueryName": "IpamPoolId", + "smithy.api#documentation": "

The pool ID for an IPAM resource.

", + "smithy.api#xmlName": "ipamPoolId" } }, - "DnsOptions": { - "target": "com.amazonaws.ec2#DnsOptionsSpecification", + "ResourceRegion": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The DNS options for the endpoint.

" + "aws.protocols#ec2QueryName": "ResourceRegion", + "smithy.api#documentation": "

The Amazon Web Services Region for an IPAM resource.

", + "smithy.api#xmlName": "resourceRegion" } }, - "PrivateDnsEnabled": { - "target": "com.amazonaws.ec2#Boolean", + "ResourceOwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

(Interface endpoint) Indicates whether a private hosted zone is associated with the VPC.

" + "aws.protocols#ec2QueryName": "ResourceOwnerId", + "smithy.api#documentation": "

The Amazon Web Services account number of the owner of an IPAM resource.

", + "smithy.api#xmlName": "resourceOwnerId" } }, - "SubnetConfigurations": { - "target": "com.amazonaws.ec2#SubnetConfigurationsList", - "traits": { - "smithy.api#documentation": "

The subnet configurations for the endpoint.

", - "smithy.api#xmlName": "SubnetConfiguration" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyVpcEndpointResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyVpcEndpointServiceConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVpcEndpointServiceConfigurationRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVpcEndpointServiceConfigurationResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the attributes of your VPC endpoint service configuration. You can change the\n Network Load Balancers or Gateway Load Balancers for your service, and you can specify whether acceptance is\n required for requests to connect to your endpoint service through an interface VPC\n endpoint.

\n

If you set or modify the private DNS name, you must prove that you own the private DNS\n domain name.

" - } - }, - "com.amazonaws.ec2#ModifyVpcEndpointServiceConfigurationRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "ResourceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "ResourceId", + "smithy.api#documentation": "

The ID of an IPAM resource.

", + "smithy.api#xmlName": "resourceId" } }, - "ServiceId": { - "target": "com.amazonaws.ec2#VpcEndpointServiceId", + "ResourceName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the service.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "ResourceName", + "smithy.api#documentation": "

The name of an IPAM resource.

", + "smithy.api#xmlName": "resourceName" } }, - "PrivateDnsName": { + "ResourceCidr": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

(Interface endpoint configuration) The private DNS name to assign to the endpoint service.

" + "aws.protocols#ec2QueryName": "ResourceCidr", + "smithy.api#documentation": "

The CIDR for an IPAM resource.

", + "smithy.api#xmlName": "resourceCidr" } }, - "RemovePrivateDnsName": { - "target": "com.amazonaws.ec2#Boolean", + "ResourceType": { + "target": "com.amazonaws.ec2#IpamResourceType", "traits": { - "smithy.api#documentation": "

(Interface endpoint configuration) Removes the private DNS name of the endpoint service.

" + "aws.protocols#ec2QueryName": "ResourceType", + "smithy.api#documentation": "

The type of IPAM resource.

", + "smithy.api#xmlName": "resourceType" } }, - "AcceptanceRequired": { - "target": "com.amazonaws.ec2#Boolean", + "ResourceTags": { + "target": "com.amazonaws.ec2#IpamResourceTagList", "traits": { - "smithy.api#documentation": "

Indicates whether requests to create an endpoint to your service must be accepted.

" + "aws.protocols#ec2QueryName": "ResourceTagSet", + "smithy.api#documentation": "

The tags for an IPAM resource.

", + "smithy.api#xmlName": "resourceTagSet" } }, - "AddNetworkLoadBalancerArns": { - "target": "com.amazonaws.ec2#ValueStringList", + "IpUsage": { + "target": "com.amazonaws.ec2#BoxedDouble", "traits": { - "smithy.api#documentation": "

The Amazon Resource Names (ARNs) of Network Load Balancers to add to your service\n configuration.

", - "smithy.api#xmlName": "AddNetworkLoadBalancerArn" + "aws.protocols#ec2QueryName": "IpUsage", + "smithy.api#documentation": "

The percentage of IP address space in use. To convert the decimal to a percentage, multiply the decimal by 100. Note the following:

\n ", + "smithy.api#xmlName": "ipUsage" } }, - "RemoveNetworkLoadBalancerArns": { - "target": "com.amazonaws.ec2#ValueStringList", + "ComplianceStatus": { + "target": "com.amazonaws.ec2#IpamComplianceStatus", "traits": { - "smithy.api#documentation": "

The Amazon Resource Names (ARNs) of Network Load Balancers to remove from your service\n configuration.

", - "smithy.api#xmlName": "RemoveNetworkLoadBalancerArn" + "aws.protocols#ec2QueryName": "ComplianceStatus", + "smithy.api#documentation": "

The compliance status of the IPAM resource. For more information on compliance statuses, see Monitor CIDR usage by resource in the Amazon VPC IPAM User Guide.

", + "smithy.api#xmlName": "complianceStatus" } }, - "AddGatewayLoadBalancerArns": { - "target": "com.amazonaws.ec2#ValueStringList", + "ManagementState": { + "target": "com.amazonaws.ec2#IpamManagementState", "traits": { - "smithy.api#documentation": "

The Amazon Resource Names (ARNs) of Gateway Load Balancers to add to your service\n configuration.

", - "smithy.api#xmlName": "AddGatewayLoadBalancerArn" + "aws.protocols#ec2QueryName": "ManagementState", + "smithy.api#documentation": "

The management state of the resource. For more information about management states, see Monitor CIDR usage by resource in the Amazon VPC IPAM User Guide.

", + "smithy.api#xmlName": "managementState" } }, - "RemoveGatewayLoadBalancerArns": { - "target": "com.amazonaws.ec2#ValueStringList", + "OverlapStatus": { + "target": "com.amazonaws.ec2#IpamOverlapStatus", "traits": { - "smithy.api#documentation": "

The Amazon Resource Names (ARNs) of Gateway Load Balancers to remove from your service\n configuration.

", - "smithy.api#xmlName": "RemoveGatewayLoadBalancerArn" + "aws.protocols#ec2QueryName": "OverlapStatus", + "smithy.api#documentation": "

The overlap status of an IPAM resource. The overlap status tells you if the CIDR for a resource overlaps with another CIDR in the scope. For more information on overlap statuses, see Monitor CIDR usage by resource in the Amazon VPC IPAM User Guide.

", + "smithy.api#xmlName": "overlapStatus" } }, - "AddSupportedIpAddressTypes": { - "target": "com.amazonaws.ec2#ValueStringList", + "VpcId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IP address types to add to your service configuration.

", - "smithy.api#xmlName": "AddSupportedIpAddressType" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of a VPC.

", + "smithy.api#xmlName": "vpcId" } }, - "RemoveSupportedIpAddressTypes": { - "target": "com.amazonaws.ec2#ValueStringList", + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IP address types to remove from your service configuration.

", - "smithy.api#xmlName": "RemoveSupportedIpAddressType" + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The Availability Zone ID.

", + "smithy.api#xmlName": "availabilityZoneId" } } }, "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyVpcEndpointServiceConfigurationResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyVpcEndpointServicePayerResponsibility": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVpcEndpointServicePayerResponsibilityRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVpcEndpointServicePayerResponsibilityResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the payer responsibility for your VPC endpoint service.

" + "smithy.api#documentation": "

The CIDR for an IPAM resource.

" } }, - "com.amazonaws.ec2#ModifyVpcEndpointServicePayerResponsibilityRequest": { - "type": "structure", + "com.amazonaws.ec2#IpamResourceCidrIpSource": { + "type": "enum", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "amazon": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "amazon" } }, - "ServiceId": { - "target": "com.amazonaws.ec2#VpcEndpointServiceId", + "byoip": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the service.

", - "smithy.api#required": {} + "smithy.api#enumValue": "byoip" } }, - "PayerResponsibility": { - "target": "com.amazonaws.ec2#PayerResponsibility", + "none": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The entity that is responsible for the endpoint costs. The default is the endpoint owner.\n If you set the payer responsibility to the service owner, you cannot set it back to the\n endpoint owner.

", - "smithy.api#required": {} + "smithy.api#enumValue": "none" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#ModifyVpcEndpointServicePayerResponsibilityResult": { - "type": "structure", - "members": { - "ReturnValue": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" - } + "com.amazonaws.ec2#IpamResourceCidrSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamResourceCidr", + "traits": { + "smithy.api#xmlName": "item" } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyVpcEndpointServicePermissions": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVpcEndpointServicePermissionsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVpcEndpointServicePermissionsResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the permissions for your VPC endpoint service. You can add or remove permissions\n for service consumers (Amazon Web Services accounts, users, and IAM roles) to connect to\n your endpoint service.

\n

If you grant permissions to all principals, the service is public. Any users who know the name of a\n\t public service can send a request to attach an endpoint. If the service does not require manual approval,\n\t attachments are automatically approved.

" } }, - "com.amazonaws.ec2#ModifyVpcEndpointServicePermissionsRequest": { + "com.amazonaws.ec2#IpamResourceDiscovery": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "OwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the owner.

", + "smithy.api#xmlName": "ownerId" } }, - "ServiceId": { - "target": "com.amazonaws.ec2#VpcEndpointServiceId", + "IpamResourceDiscoveryId": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the service.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "IpamResourceDiscoveryId", + "smithy.api#documentation": "

The resource discovery ID.

", + "smithy.api#xmlName": "ipamResourceDiscoveryId" } }, - "AddAllowedPrincipals": { - "target": "com.amazonaws.ec2#ValueStringList", + "IpamResourceDiscoveryArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The Amazon Resource Names (ARN) of the principals.\n\t Permissions are granted to the principals in this list.\n\t To grant permissions to all principals, specify an asterisk (*).

" + "aws.protocols#ec2QueryName": "IpamResourceDiscoveryArn", + "smithy.api#documentation": "

The resource discovery Amazon Resource Name (ARN).

", + "smithy.api#xmlName": "ipamResourceDiscoveryArn" } }, - "RemoveAllowedPrincipals": { - "target": "com.amazonaws.ec2#ValueStringList", + "IpamResourceDiscoveryRegion": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The Amazon Resource Names (ARN) of the principals.\n\t Permissions are revoked for principals in this list.

" + "aws.protocols#ec2QueryName": "IpamResourceDiscoveryRegion", + "smithy.api#documentation": "

The resource discovery Region.

", + "smithy.api#xmlName": "ipamResourceDiscoveryRegion" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyVpcEndpointServicePermissionsResult": { - "type": "structure", - "members": { - "AddedPrincipals": { - "target": "com.amazonaws.ec2#AddedPrincipalSet", + }, + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AddedPrincipalSet", - "smithy.api#documentation": "

Information about the added principals.

", - "smithy.api#xmlName": "addedPrincipalSet" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The resource discovery description.

", + "smithy.api#xmlName": "description" } }, - "ReturnValue": { - "target": "com.amazonaws.ec2#Boolean", + "OperatingRegions": { + "target": "com.amazonaws.ec2#IpamOperatingRegionSet", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "OperatingRegionSet", + "smithy.api#documentation": "

The operating Regions for the resource discovery. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

", + "smithy.api#xmlName": "operatingRegionSet" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyVpcPeeringConnectionOptions": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVpcPeeringConnectionOptionsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVpcPeeringConnectionOptionsResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the VPC peering connection options on one side of a VPC peering connection.

\n

If the peered VPCs are in the same Amazon Web Services account, you can enable DNS\n resolution for queries from the local VPC. This ensures that queries from the local VPC\n resolve to private IP addresses in the peer VPC. This option is not available if the\n peered VPCs are in different Amazon Web Services accounts or different Regions. For\n peered VPCs in different Amazon Web Services accounts, each Amazon Web Services account\n owner must initiate a separate request to modify the peering connection options. For\n inter-region peering connections, you must use the Region for the requester VPC to\n modify the requester VPC peering options and the Region for the accepter VPC to modify\n the accepter VPC peering options. To verify which VPCs are the accepter and the\n requester for a VPC peering connection, use the DescribeVpcPeeringConnections command.

" - } - }, - "com.amazonaws.ec2#ModifyVpcPeeringConnectionOptionsRequest": { - "type": "structure", - "members": { - "AccepterPeeringConnectionOptions": { - "target": "com.amazonaws.ec2#PeeringConnectionOptionsRequest", + }, + "IsDefault": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The VPC peering connection options for the accepter VPC.

" + "aws.protocols#ec2QueryName": "IsDefault", + "smithy.api#documentation": "

Defines if the resource discovery is the default. The default resource discovery is the resource discovery automatically created when you create an IPAM.

", + "smithy.api#xmlName": "isDefault" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "State": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryState", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The lifecycle state of the resource discovery.

\n ", + "smithy.api#xmlName": "state" } }, - "RequesterPeeringConnectionOptions": { - "target": "com.amazonaws.ec2#PeeringConnectionOptionsRequest", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#documentation": "

The VPC peering connection options for the requester VPC.

" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key and an optional value. You can use tags to search and filter your resources or track your Amazon Web Services costs.

", + "smithy.api#xmlName": "tagSet" } }, - "VpcPeeringConnectionId": { - "target": "com.amazonaws.ec2#VpcPeeringConnectionId", + "OrganizationalUnitExclusions": { + "target": "com.amazonaws.ec2#IpamOrganizationalUnitExclusionSet", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC peering connection.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "OrganizationalUnitExclusionSet", + "smithy.api#documentation": "

If your IPAM is integrated with Amazon Web Services Organizations and you add an organizational unit (OU) exclusion, IPAM will not manage the IP addresses in accounts in that OU exclusion.

", + "smithy.api#xmlName": "organizationalUnitExclusionSet" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

" } }, - "com.amazonaws.ec2#ModifyVpcPeeringConnectionOptionsResult": { + "com.amazonaws.ec2#IpamResourceDiscoveryAssociation": { "type": "structure", "members": { - "AccepterPeeringConnectionOptions": { - "target": "com.amazonaws.ec2#PeeringConnectionOptions", + "OwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AccepterPeeringConnectionOptions", - "smithy.api#documentation": "

Information about the VPC peering connection options for the accepter VPC.

", - "smithy.api#xmlName": "accepterPeeringConnectionOptions" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The Amazon Web Services account ID of the resource discovery owner.

", + "smithy.api#xmlName": "ownerId" } }, - "RequesterPeeringConnectionOptions": { - "target": "com.amazonaws.ec2#PeeringConnectionOptions", - "traits": { - "aws.protocols#ec2QueryName": "RequesterPeeringConnectionOptions", - "smithy.api#documentation": "

Information about the VPC peering connection options for the requester VPC.

", - "smithy.api#xmlName": "requesterPeeringConnectionOptions" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyVpcTenancy": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVpcTenancyRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVpcTenancyResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the instance tenancy attribute of the specified VPC. You can change the\n instance tenancy attribute of a VPC to default only. You cannot change the\n instance tenancy attribute to dedicated.

\n

After you modify the tenancy of the VPC, any new instances that you launch into the\n VPC have a tenancy of default, unless you specify otherwise during launch.\n The tenancy of any existing instances in the VPC is not affected.

\n

For more information, see Dedicated Instances in the\n\t\t\t\tAmazon EC2 User Guide.

" - } - }, - "com.amazonaws.ec2#ModifyVpcTenancyRequest": { - "type": "structure", - "members": { - "VpcId": { - "target": "com.amazonaws.ec2#VpcId", + "IpamResourceDiscoveryAssociationId": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryAssociationId", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "IpamResourceDiscoveryAssociationId", + "smithy.api#documentation": "

The resource discovery association ID.

", + "smithy.api#xmlName": "ipamResourceDiscoveryAssociationId" } }, - "InstanceTenancy": { - "target": "com.amazonaws.ec2#VpcTenancy", + "IpamResourceDiscoveryAssociationArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The instance tenancy attribute for the VPC.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "IpamResourceDiscoveryAssociationArn", + "smithy.api#documentation": "

The resource discovery association Amazon Resource Name (ARN).

", + "smithy.api#xmlName": "ipamResourceDiscoveryAssociationArn" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "IpamResourceDiscoveryId": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "IpamResourceDiscoveryId", + "smithy.api#documentation": "

The resource discovery ID.

", + "smithy.api#xmlName": "ipamResourceDiscoveryId" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyVpcTenancyResult": { - "type": "structure", - "members": { - "ReturnValue": { - "target": "com.amazonaws.ec2#Boolean", + }, + "IpamId": { + "target": "com.amazonaws.ec2#IpamId", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, returns an\n error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "IpamId", + "smithy.api#documentation": "

The IPAM ID.

", + "smithy.api#xmlName": "ipamId" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyVpnConnection": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVpnConnectionRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVpnConnectionResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the customer gateway or the target gateway of an Amazon Web Services Site-to-Site VPN connection. To\n modify the target gateway, the following migration options are available:

\n \n

Before you perform the migration to the new gateway, you must configure the new\n gateway. Use CreateVpnGateway to create a virtual private gateway, or\n CreateTransitGateway to create a transit gateway.

\n

This step is required when you migrate from a virtual private gateway with static\n routes to a transit gateway.

\n

You must delete the static routes before you migrate to the new gateway.

\n

Keep a copy of the static route before you delete it. You will need to add back these\n routes to the transit gateway after the VPN connection migration is complete.

\n

After you migrate to the new gateway, you might need to modify your VPC route table.\n Use CreateRoute and DeleteRoute to make the changes\n described in Update VPC route\n tables in the Amazon Web Services Site-to-Site VPN User Guide.

\n

When the new gateway is a transit gateway, modify the transit gateway route table to\n allow traffic between the VPC and the Amazon Web Services Site-to-Site VPN connection.\n Use CreateTransitGatewayRoute to add the routes.

\n

If you deleted VPN static routes, you must add the static routes to the transit\n gateway route table.

\n

After you perform this operation, the VPN endpoint's IP addresses on the Amazon Web Services side and the tunnel options remain intact. Your Amazon Web Services Site-to-Site VPN connection will\n be temporarily unavailable for a brief period while we provision the new\n endpoints.

" - } - }, - "com.amazonaws.ec2#ModifyVpnConnectionOptions": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVpnConnectionOptionsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVpnConnectionOptionsResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the connection options for your Site-to-Site VPN connection.

\n

When you modify the VPN connection options, the VPN endpoint IP addresses on the\n Amazon Web Services side do not change, and the tunnel options do not change. Your\n VPN connection will be temporarily unavailable for a brief period while the VPN\n connection is updated.

" - } - }, - "com.amazonaws.ec2#ModifyVpnConnectionOptionsRequest": { - "type": "structure", - "members": { - "VpnConnectionId": { - "target": "com.amazonaws.ec2#VpnConnectionId", + }, + "IpamArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Site-to-Site VPN connection.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "IpamArn", + "smithy.api#documentation": "

The IPAM ARN.

", + "smithy.api#xmlName": "ipamArn" } }, - "LocalIpv4NetworkCidr": { + "IpamRegion": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.

\n

Default: 0.0.0.0/0\n

" + "aws.protocols#ec2QueryName": "IpamRegion", + "smithy.api#documentation": "

The IPAM home Region.

", + "smithy.api#xmlName": "ipamRegion" } }, - "RemoteIpv4NetworkCidr": { - "target": "com.amazonaws.ec2#String", + "IsDefault": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The IPv4 CIDR on the Amazon Web Services side of the VPN connection.

\n

Default: 0.0.0.0/0\n

" + "aws.protocols#ec2QueryName": "IsDefault", + "smithy.api#documentation": "

Defines if the resource discovery is the default. When you create an IPAM, a default resource discovery is created for your IPAM and it's associated with your IPAM.

", + "smithy.api#xmlName": "isDefault" } }, - "LocalIpv6NetworkCidr": { - "target": "com.amazonaws.ec2#String", + "ResourceDiscoveryStatus": { + "target": "com.amazonaws.ec2#IpamAssociatedResourceDiscoveryStatus", "traits": { - "smithy.api#documentation": "

The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.

\n

Default: ::/0\n

" + "aws.protocols#ec2QueryName": "ResourceDiscoveryStatus", + "smithy.api#documentation": "

The resource discovery status.

\n ", + "smithy.api#xmlName": "resourceDiscoveryStatus" } }, - "RemoteIpv6NetworkCidr": { - "target": "com.amazonaws.ec2#String", + "State": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryAssociationState", "traits": { - "smithy.api#documentation": "

The IPv6 CIDR on the Amazon Web Services side of the VPN connection.

\n

Default: ::/0\n

" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The lifecycle state of the association when you associate or disassociate a resource discovery.

\n ", + "smithy.api#xmlName": "state" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key and an optional value. You can use tags to search and filter your resources or track your Amazon Web Services costs.

", + "smithy.api#xmlName": "tagSet" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

An IPAM resource discovery association. An associated resource discovery is a resource discovery that has been associated with an IPAM. IPAM aggregates the resource CIDRs discovered by the associated resource discovery.

" } }, - "com.amazonaws.ec2#ModifyVpnConnectionOptionsResult": { - "type": "structure", - "members": { - "VpnConnection": { - "target": "com.amazonaws.ec2#VpnConnection", - "traits": { - "aws.protocols#ec2QueryName": "VpnConnection", - "smithy.api#documentation": "

Information about the VPN connection.

", - "smithy.api#xmlName": "vpnConnection" - } + "com.amazonaws.ec2#IpamResourceDiscoveryAssociationId": { + "type": "string" + }, + "com.amazonaws.ec2#IpamResourceDiscoveryAssociationSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryAssociation", + "traits": { + "smithy.api#xmlName": "item" } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#ModifyVpnConnectionRequest": { - "type": "structure", + "com.amazonaws.ec2#IpamResourceDiscoveryAssociationState": { + "type": "enum", "members": { - "VpnConnectionId": { - "target": "com.amazonaws.ec2#VpnConnectionId", + "ASSOCIATE_IN_PROGRESS": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPN connection.

", - "smithy.api#required": {} + "smithy.api#enumValue": "associate-in-progress" } }, - "TransitGatewayId": { - "target": "com.amazonaws.ec2#TransitGatewayId", + "ASSOCIATE_COMPLETE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ID of the transit gateway.

" + "smithy.api#enumValue": "associate-complete" } }, - "CustomerGatewayId": { - "target": "com.amazonaws.ec2#CustomerGatewayId", + "ASSOCIATE_FAILED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ID of the customer gateway at your end of the VPN connection.

" + "smithy.api#enumValue": "associate-failed" } }, - "VpnGatewayId": { - "target": "com.amazonaws.ec2#VpnGatewayId", + "DISASSOCIATE_IN_PROGRESS": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ID of the virtual private gateway at the Amazon Web Services side of the VPN\n connection.

" + "smithy.api#enumValue": "disassociate-in-progress" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "DISASSOCIATE_COMPLETE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + "smithy.api#enumValue": "disassociate-complete" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyVpnConnectionResult": { - "type": "structure", - "members": { - "VpnConnection": { - "target": "com.amazonaws.ec2#VpnConnection", + }, + "DISASSOCIATE_FAILED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VpnConnection", - "smithy.api#documentation": "

Information about the VPN connection.

", - "smithy.api#xmlName": "vpnConnection" + "smithy.api#enumValue": "disassociate-failed" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ModifyVpnTunnelCertificate": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVpnTunnelCertificateRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVpnTunnelCertificateResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the VPN tunnel endpoint certificate.

" - } - }, - "com.amazonaws.ec2#ModifyVpnTunnelCertificateRequest": { - "type": "structure", - "members": { - "VpnConnectionId": { - "target": "com.amazonaws.ec2#VpnConnectionId", + }, + "ISOLATE_IN_PROGRESS": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Amazon Web Services Site-to-Site VPN connection.

", - "smithy.api#required": {} + "smithy.api#enumValue": "isolate-in-progress" } }, - "VpnTunnelOutsideIpAddress": { - "target": "com.amazonaws.ec2#String", + "ISOLATE_COMPLETE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The external IP address of the VPN tunnel.

", - "smithy.api#required": {} + "smithy.api#enumValue": "isolate-complete" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "RESTORE_IN_PROGRESS": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + "smithy.api#enumValue": "restore-in-progress" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#ModifyVpnTunnelCertificateResult": { - "type": "structure", - "members": { - "VpnConnection": { - "target": "com.amazonaws.ec2#VpnConnection", - "traits": { - "aws.protocols#ec2QueryName": "VpnConnection", - "smithy.api#documentation": "

Information about the VPN connection.

", - "smithy.api#xmlName": "vpnConnection" - } - } - }, - "traits": { - "smithy.api#output": {} - } + "com.amazonaws.ec2#IpamResourceDiscoveryId": { + "type": "string" }, - "com.amazonaws.ec2#ModifyVpnTunnelOptions": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ModifyVpnTunnelOptionsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ModifyVpnTunnelOptionsResult" - }, - "traits": { - "smithy.api#documentation": "

Modifies the options for a VPN tunnel in an Amazon Web Services Site-to-Site VPN connection. You can modify\n multiple options for a tunnel in a single request, but you can only modify one tunnel at\n a time. For more information, see Site-to-Site VPN tunnel options for your Site-to-Site VPN\n connection in the Amazon Web Services Site-to-Site VPN User Guide.

" + "com.amazonaws.ec2#IpamResourceDiscoverySet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamResourceDiscovery", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#ModifyVpnTunnelOptionsRequest": { - "type": "structure", + "com.amazonaws.ec2#IpamResourceDiscoveryState": { + "type": "enum", "members": { - "VpnConnectionId": { - "target": "com.amazonaws.ec2#VpnConnectionId", + "CREATE_IN_PROGRESS": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Amazon Web Services Site-to-Site VPN connection.

", - "smithy.api#required": {} + "smithy.api#enumValue": "create-in-progress" } }, - "VpnTunnelOutsideIpAddress": { - "target": "com.amazonaws.ec2#String", + "CREATE_COMPLETE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The external IP address of the VPN tunnel.

", - "smithy.api#required": {} + "smithy.api#enumValue": "create-complete" } }, - "TunnelOptions": { - "target": "com.amazonaws.ec2#ModifyVpnTunnelOptionsSpecification", + "CREATE_FAILED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The tunnel options to modify.

", - "smithy.api#required": {} + "smithy.api#enumValue": "create-failed" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "MODIFY_IN_PROGRESS": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + "smithy.api#enumValue": "modify-in-progress" } }, - "SkipTunnelReplacement": { - "target": "com.amazonaws.ec2#Boolean", + "MODIFY_COMPLETE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Choose whether or not to trigger immediate tunnel replacement. This is only applicable when turning on or off EnableTunnelLifecycleControl.

\n

Valid values: True | False\n

" + "smithy.api#enumValue": "modify-complete" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ModifyVpnTunnelOptionsResult": { - "type": "structure", - "members": { - "VpnConnection": { - "target": "com.amazonaws.ec2#VpnConnection", + }, + "MODIFY_FAILED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VpnConnection", - "smithy.api#documentation": "

Information about the VPN connection.

", - "smithy.api#xmlName": "vpnConnection" + "smithy.api#enumValue": "modify-failed" + } + }, + "DELETE_IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-in-progress" + } + }, + "DELETE_COMPLETE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-complete" + } + }, + "DELETE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-failed" + } + }, + "ISOLATE_IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "isolate-in-progress" + } + }, + "ISOLATE_COMPLETE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "isolate-complete" + } + }, + "RESTORE_IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "restore-in-progress" } } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#ModifyVpnTunnelOptionsSpecification": { + "com.amazonaws.ec2#IpamResourceTag": { "type": "structure", "members": { - "TunnelInsideCidr": { + "Key": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The range of inside IPv4 addresses for the tunnel. Any specified CIDR blocks must be\n unique across all VPN connections that use the same virtual private gateway.

\n

Constraints: A size /30 CIDR block from the 169.254.0.0/16 range. The\n following CIDR blocks are reserved and cannot be used:

\n " + "aws.protocols#ec2QueryName": "Key", + "smithy.api#documentation": "

The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

", + "smithy.api#xmlName": "key" } }, - "TunnelInsideIpv6Cidr": { + "Value": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The range of inside IPv6 addresses for the tunnel. Any specified CIDR blocks must be\n unique across all VPN connections that use the same transit gateway.

\n

Constraints: A size /126 CIDR block from the local fd00::/8 range.

" - } - }, - "PreSharedKey": { - "target": "com.amazonaws.ec2#preSharedKey", - "traits": { - "smithy.api#documentation": "

The pre-shared key (PSK) to establish initial authentication between the virtual\n private gateway and the customer gateway.

\n

Constraints: Allowed characters are alphanumeric characters, periods (.), and\n underscores (_). Must be between 8 and 64 characters in length and cannot start with\n zero (0).

" + "aws.protocols#ec2QueryName": "Value", + "smithy.api#documentation": "

The value of the tag.

", + "smithy.api#xmlName": "value" } - }, - "Phase1LifetimeSeconds": { - "target": "com.amazonaws.ec2#Integer", + } + }, + "traits": { + "smithy.api#documentation": "

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

" + } + }, + "com.amazonaws.ec2#IpamResourceTagList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamResourceTag", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#IpamResourceType": { + "type": "enum", + "members": { + "vpc": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The lifetime for phase 1 of the IKE negotiation, in seconds.

\n

Constraints: A value between 900 and 28,800.

\n

Default: 28800\n

" + "smithy.api#enumValue": "vpc" } }, - "Phase2LifetimeSeconds": { - "target": "com.amazonaws.ec2#Integer", + "subnet": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The lifetime for phase 2 of the IKE negotiation, in seconds.

\n

Constraints: A value between 900 and 3,600. The value must be less than the value for\n Phase1LifetimeSeconds.

\n

Default: 3600\n

" + "smithy.api#enumValue": "subnet" } }, - "RekeyMarginTimeSeconds": { - "target": "com.amazonaws.ec2#Integer", + "eip": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The margin time, in seconds, before the phase 2 lifetime expires, during which the\n Amazon Web Services side of the VPN connection performs an IKE rekey. The exact time\n of the rekey is randomly selected based on the value for\n RekeyFuzzPercentage.

\n

Constraints: A value between 60 and half of Phase2LifetimeSeconds.

\n

Default: 270\n

" + "smithy.api#enumValue": "eip" } }, - "RekeyFuzzPercentage": { - "target": "com.amazonaws.ec2#Integer", + "public_ipv4_pool": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The percentage of the rekey window (determined by RekeyMarginTimeSeconds)\n during which the rekey time is randomly selected.

\n

Constraints: A value between 0 and 100.

\n

Default: 100\n

" + "smithy.api#enumValue": "public-ipv4-pool" } }, - "ReplayWindowSize": { - "target": "com.amazonaws.ec2#Integer", + "ipv6_pool": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The number of packets in an IKE replay window.

\n

Constraints: A value between 64 and 2048.

\n

Default: 1024\n

" + "smithy.api#enumValue": "ipv6-pool" } }, - "DPDTimeoutSeconds": { - "target": "com.amazonaws.ec2#Integer", + "eni": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The number of seconds after which a DPD timeout occurs. A DPD timeout of 40 seconds means that the VPN endpoint will consider the peer dead 30 seconds after the first failed keep-alive.

\n

Constraints: A value greater than or equal to 30.

\n

Default: 40\n

" + "smithy.api#enumValue": "eni" } - }, - "DPDTimeoutAction": { + } + } + }, + "com.amazonaws.ec2#IpamScope": { + "type": "structure", + "members": { + "OwnerId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The action to take after DPD timeout occurs. Specify restart to restart\n the IKE initiation. Specify clear to end the IKE session.

\n

Valid Values: clear | none | restart\n

\n

Default: clear\n

" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the scope.

", + "smithy.api#xmlName": "ownerId" } }, - "Phase1EncryptionAlgorithms": { - "target": "com.amazonaws.ec2#Phase1EncryptionAlgorithmsRequestList", + "IpamScopeId": { + "target": "com.amazonaws.ec2#IpamScopeId", "traits": { - "smithy.api#documentation": "

One or more encryption algorithms that are permitted for the VPN tunnel for phase 1\n IKE negotiations.

\n

Valid values: AES128 | AES256 | AES128-GCM-16 |\n AES256-GCM-16\n

", - "smithy.api#xmlName": "Phase1EncryptionAlgorithm" + "aws.protocols#ec2QueryName": "IpamScopeId", + "smithy.api#documentation": "

The ID of the scope.

", + "smithy.api#xmlName": "ipamScopeId" } }, - "Phase2EncryptionAlgorithms": { - "target": "com.amazonaws.ec2#Phase2EncryptionAlgorithmsRequestList", + "IpamScopeArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "smithy.api#documentation": "

One or more encryption algorithms that are permitted for the VPN tunnel for phase 2\n IKE negotiations.

\n

Valid values: AES128 | AES256 | AES128-GCM-16 |\n AES256-GCM-16\n

", - "smithy.api#xmlName": "Phase2EncryptionAlgorithm" + "aws.protocols#ec2QueryName": "IpamScopeArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the scope.

", + "smithy.api#xmlName": "ipamScopeArn" } }, - "Phase1IntegrityAlgorithms": { - "target": "com.amazonaws.ec2#Phase1IntegrityAlgorithmsRequestList", + "IpamArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "smithy.api#documentation": "

One or more integrity algorithms that are permitted for the VPN tunnel for phase 1 IKE\n negotiations.

\n

Valid values: SHA1 | SHA2-256 | SHA2-384 |\n SHA2-512\n

", - "smithy.api#xmlName": "Phase1IntegrityAlgorithm" + "aws.protocols#ec2QueryName": "IpamArn", + "smithy.api#documentation": "

The ARN of the IPAM.

", + "smithy.api#xmlName": "ipamArn" } }, - "Phase2IntegrityAlgorithms": { - "target": "com.amazonaws.ec2#Phase2IntegrityAlgorithmsRequestList", + "IpamRegion": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

One or more integrity algorithms that are permitted for the VPN tunnel for phase 2 IKE\n negotiations.

\n

Valid values: SHA1 | SHA2-256 | SHA2-384 |\n SHA2-512\n

", - "smithy.api#xmlName": "Phase2IntegrityAlgorithm" + "aws.protocols#ec2QueryName": "IpamRegion", + "smithy.api#documentation": "

The Amazon Web Services Region of the IPAM scope.

", + "smithy.api#xmlName": "ipamRegion" } }, - "Phase1DHGroupNumbers": { - "target": "com.amazonaws.ec2#Phase1DHGroupNumbersRequestList", + "IpamScopeType": { + "target": "com.amazonaws.ec2#IpamScopeType", "traits": { - "smithy.api#documentation": "

One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for\n phase 1 IKE negotiations.

\n

Valid values: 2 | 14 | 15 | 16 |\n 17 | 18 | 19 | 20 |\n 21 | 22 | 23 | 24\n

", - "smithy.api#xmlName": "Phase1DHGroupNumber" + "aws.protocols#ec2QueryName": "IpamScopeType", + "smithy.api#documentation": "

The type of the scope.

", + "smithy.api#xmlName": "ipamScopeType" } }, - "Phase2DHGroupNumbers": { - "target": "com.amazonaws.ec2#Phase2DHGroupNumbersRequestList", + "IsDefault": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for\n phase 2 IKE negotiations.

\n

Valid values: 2 | 5 | 14 | 15 |\n 16 | 17 | 18 | 19 |\n 20 | 21 | 22 | 23 |\n 24\n

", - "smithy.api#xmlName": "Phase2DHGroupNumber" + "aws.protocols#ec2QueryName": "IsDefault", + "smithy.api#documentation": "

Defines if the scope is the default scope or not.

", + "smithy.api#xmlName": "isDefault" } }, - "IKEVersions": { - "target": "com.amazonaws.ec2#IKEVersionsRequestList", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The IKE versions that are permitted for the VPN tunnel.

\n

Valid values: ikev1 | ikev2\n

", - "smithy.api#xmlName": "IKEVersion" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The description of the scope.

", + "smithy.api#xmlName": "description" } }, - "StartupAction": { - "target": "com.amazonaws.ec2#String", + "PoolCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The action to take when the establishing the tunnel for the VPN connection. By\n default, your customer gateway device must initiate the IKE negotiation and bring up the\n tunnel. Specify start for Amazon Web Services to initiate the IKE\n negotiation.

\n

Valid Values: add | start\n

\n

Default: add\n

" + "aws.protocols#ec2QueryName": "PoolCount", + "smithy.api#documentation": "

The number of pools in the scope.

", + "smithy.api#xmlName": "poolCount" } }, - "LogOptions": { - "target": "com.amazonaws.ec2#VpnTunnelLogOptionsSpecification", + "State": { + "target": "com.amazonaws.ec2#IpamScopeState", "traits": { - "smithy.api#documentation": "

Options for logging VPN tunnel activity.

" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the IPAM scope.

", + "smithy.api#xmlName": "state" } }, - "EnableTunnelLifecycleControl": { - "target": "com.amazonaws.ec2#Boolean", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#documentation": "

Turn on or off tunnel endpoint lifecycle control feature.

" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

", + "smithy.api#xmlName": "tagSet" } } }, "traits": { - "smithy.api#documentation": "

The Amazon Web Services Site-to-Site VPN tunnel options to modify.

", - "smithy.api#sensitive": {} + "smithy.api#documentation": "

In IPAM, a scope is the highest-level container within IPAM. An IPAM contains two default scopes. Each scope represents the IP space for a single network. The private scope is intended for all private IP address space. The public scope is intended for all public IP address space. Scopes enable you to reuse IP addresses across multiple unconnected networks without causing IP address overlap or conflict.

\n

For more information, see How IPAM works in the Amazon VPC IPAM User Guide.

" } }, - "com.amazonaws.ec2#MonitorInstances": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#MonitorInstancesRequest" - }, - "output": { - "target": "com.amazonaws.ec2#MonitorInstancesResult" - }, - "traits": { - "smithy.api#documentation": "

Enables detailed monitoring for a running instance. Otherwise, basic monitoring is\n enabled. For more information, see Monitor your instances using\n CloudWatch in the Amazon EC2 User Guide.

\n

To disable detailed monitoring, see UnmonitorInstances.

" + "com.amazonaws.ec2#IpamScopeId": { + "type": "string" + }, + "com.amazonaws.ec2#IpamScopeSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#IpamScope", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#MonitorInstancesRequest": { - "type": "structure", + "com.amazonaws.ec2#IpamScopeState": { + "type": "enum", "members": { - "InstanceIds": { - "target": "com.amazonaws.ec2#InstanceIdStringList", + "create_in_progress": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the instances.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "InstanceId" + "smithy.api#enumValue": "create-in-progress" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "create_complete": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#enumValue": "create-complete" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#MonitorInstancesResult": { - "type": "structure", - "members": { - "InstanceMonitorings": { - "target": "com.amazonaws.ec2#InstanceMonitoringList", + }, + "create_failed": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstancesSet", - "smithy.api#documentation": "

The monitoring information.

", - "smithy.api#xmlName": "instancesSet" + "smithy.api#enumValue": "create-failed" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#Monitoring": { - "type": "structure", - "members": { - "State": { - "target": "com.amazonaws.ec2#MonitoringState", + }, + "modify_in_progress": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is\n enabled.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "modify-in-progress" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the monitoring of an instance.

" - } - }, - "com.amazonaws.ec2#MonitoringState": { - "type": "enum", - "members": { - "disabled": { + }, + "modify_complete": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "disabled" + "smithy.api#enumValue": "modify-complete" } }, - "disabling": { + "modify_failed": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "disabling" + "smithy.api#enumValue": "modify-failed" } }, - "enabled": { + "delete_in_progress": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "enabled" + "smithy.api#enumValue": "delete-in-progress" } }, - "pending": { + "delete_complete": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "pending" + "smithy.api#enumValue": "delete-complete" } - } - } - }, - "com.amazonaws.ec2#MoveAddressToVpc": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#MoveAddressToVpcRequest" - }, - "output": { - "target": "com.amazonaws.ec2#MoveAddressToVpcResult" - }, - "traits": { - "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Moves an Elastic IP address from the EC2-Classic platform to the EC2-VPC platform. The\n Elastic IP address must be allocated to your account for more than 24 hours, and it must not\n be associated with an instance. After the Elastic IP address is moved, it is no longer\n available for use in the EC2-Classic platform, unless you move it back using the\n RestoreAddressToClassic request. You cannot move an Elastic IP address that was\n originally allocated for use in the EC2-VPC platform to the EC2-Classic platform.

", - "smithy.api#examples": [ - { - "title": "To move an address to EC2-VPC", - "documentation": "This example moves the specified Elastic IP address to the EC2-VPC platform.", - "input": { - "PublicIp": "54.123.4.56" - }, - "output": { - "Status": "MoveInProgress" - } + }, + "delete_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-failed" } - ] - } - }, - "com.amazonaws.ec2#MoveAddressToVpcRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "isolate_in_progress": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#enumValue": "isolate-in-progress" } }, - "PublicIp": { - "target": "com.amazonaws.ec2#String", + "isolate_complete": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PublicIp", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Elastic IP address.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "publicIp" + "smithy.api#enumValue": "isolate-complete" + } + }, + "restore_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "restore-in-progress" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#MoveAddressToVpcResult": { - "type": "structure", + "com.amazonaws.ec2#IpamScopeType": { + "type": "enum", "members": { - "AllocationId": { - "target": "com.amazonaws.ec2#String", + "public": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AllocationId", - "smithy.api#documentation": "

The allocation ID for the Elastic IP address.

", - "smithy.api#xmlName": "allocationId" + "smithy.api#enumValue": "public" } }, - "Status": { - "target": "com.amazonaws.ec2#Status", + "private": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The status of the move of the IP address.

", - "smithy.api#xmlName": "status" + "smithy.api#enumValue": "private" } } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#MoveByoipCidrToIpam": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#MoveByoipCidrToIpamRequest" - }, - "output": { - "target": "com.amazonaws.ec2#MoveByoipCidrToIpamResult" - }, - "traits": { - "smithy.api#documentation": "

Move a BYOIPv4 CIDR to IPAM from a public IPv4 pool.

\n

If you already have a BYOIPv4 CIDR with Amazon Web Services, you can move the CIDR to IPAM from a public IPv4 pool. You cannot move an IPv6 CIDR to IPAM. If you are bringing a new IP address to Amazon Web Services for the first time, complete the steps in Tutorial: BYOIP address CIDRs to IPAM.

" + "com.amazonaws.ec2#IpamSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Ipam", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#MoveByoipCidrToIpamRequest": { - "type": "structure", + "com.amazonaws.ec2#IpamState": { + "type": "enum", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "create_in_progress": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "create-in-progress" } }, - "Cidr": { - "target": "com.amazonaws.ec2#String", + "create_complete": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The BYOIP CIDR.

", - "smithy.api#required": {} + "smithy.api#enumValue": "create-complete" } }, - "IpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", + "create_failed": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IPAM pool ID.

", - "smithy.api#required": {} + "smithy.api#enumValue": "create-failed" } }, - "IpamPoolOwner": { - "target": "com.amazonaws.ec2#String", + "modify_in_progress": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the IPAM pool.

", - "smithy.api#required": {} + "smithy.api#enumValue": "modify-in-progress" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#MoveByoipCidrToIpamResult": { - "type": "structure", - "members": { - "ByoipCidr": { - "target": "com.amazonaws.ec2#ByoipCidr", + }, + "modify_complete": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ByoipCidr", - "smithy.api#documentation": "

The BYOIP CIDR.

", - "smithy.api#xmlName": "byoipCidr" + "smithy.api#enumValue": "modify-complete" + } + }, + "modify_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "modify-failed" + } + }, + "delete_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-in-progress" + } + }, + "delete_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-complete" + } + }, + "delete_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-failed" + } + }, + "isolate_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "isolate-in-progress" + } + }, + "isolate_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "isolate-complete" + } + }, + "restore_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "restore-in-progress" } } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#MoveStatus": { + "com.amazonaws.ec2#IpamTier": { "type": "enum", "members": { - "movingToVpc": { + "free": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "movingToVpc" + "smithy.api#enumValue": "free" } }, - "restoringToClassic": { + "advanced": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "restoringToClassic" + "smithy.api#enumValue": "advanced" } } } }, - "com.amazonaws.ec2#MovingAddressStatus": { + "com.amazonaws.ec2#Ipv4PoolCoipId": { + "type": "string" + }, + "com.amazonaws.ec2#Ipv4PoolEc2Id": { + "type": "string" + }, + "com.amazonaws.ec2#Ipv4PrefixList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Ipv4PrefixSpecificationRequest", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Ipv4PrefixListResponse": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Ipv4PrefixSpecificationResponse", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Ipv4PrefixSpecification": { "type": "structure", "members": { - "MoveStatus": { - "target": "com.amazonaws.ec2#MoveStatus", + "Ipv4Prefix": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "MoveStatus", - "smithy.api#documentation": "

The status of the Elastic IP address that's being moved or restored.

", - "smithy.api#xmlName": "moveStatus" + "aws.protocols#ec2QueryName": "Ipv4Prefix", + "smithy.api#documentation": "

The IPv4 prefix. For information, see \n Assigning prefixes to network interfaces in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "ipv4Prefix" } - }, - "PublicIp": { + } + }, + "traits": { + "smithy.api#documentation": "

Describes an IPv4 prefix.

" + } + }, + "com.amazonaws.ec2#Ipv4PrefixSpecificationRequest": { + "type": "structure", + "members": { + "Ipv4Prefix": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PublicIp", - "smithy.api#documentation": "

The Elastic IP address.

", - "smithy.api#xmlName": "publicIp" + "smithy.api#documentation": "

The IPv4 prefix. For information, see \n Assigning prefixes to network interfaces in the\n Amazon EC2 User Guide.

" } } }, "traits": { - "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Describes the status of a moving Elastic IP address.

" + "smithy.api#documentation": "

Describes the IPv4 prefix option for a network interface.

" } }, - "com.amazonaws.ec2#MovingAddressStatusSet": { + "com.amazonaws.ec2#Ipv4PrefixSpecificationResponse": { + "type": "structure", + "members": { + "Ipv4Prefix": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Ipv4Prefix", + "smithy.api#documentation": "

The IPv4 delegated prefixes assigned to the network interface.

", + "smithy.api#xmlName": "ipv4Prefix" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about the IPv4 delegated prefixes assigned to a network interface.

" + } + }, + "com.amazonaws.ec2#Ipv4PrefixesList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#MovingAddressStatus", + "target": "com.amazonaws.ec2#Ipv4PrefixSpecification", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#MulticastSupportValue": { + "com.amazonaws.ec2#Ipv6Address": { + "type": "string" + }, + "com.amazonaws.ec2#Ipv6AddressAttribute": { "type": "enum", "members": { - "enable": { + "public": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "enable" + "smithy.api#enumValue": "public" } }, - "disable": { + "private": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "disable" + "smithy.api#enumValue": "private" } } } }, - "com.amazonaws.ec2#NatGateway": { + "com.amazonaws.ec2#Ipv6AddressList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Ipv6CidrAssociation": { "type": "structure", "members": { - "CreateTime": { - "target": "com.amazonaws.ec2#DateTime", - "traits": { - "aws.protocols#ec2QueryName": "CreateTime", - "smithy.api#documentation": "

The date and time the NAT gateway was created.

", - "smithy.api#xmlName": "createTime" - } - }, - "DeleteTime": { - "target": "com.amazonaws.ec2#DateTime", - "traits": { - "aws.protocols#ec2QueryName": "DeleteTime", - "smithy.api#documentation": "

The date and time the NAT gateway was deleted, if applicable.

", - "smithy.api#xmlName": "deleteTime" - } - }, - "FailureCode": { + "Ipv6Cidr": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "FailureCode", - "smithy.api#documentation": "

If the NAT gateway could not be created, specifies the error code for the failure.\n (InsufficientFreeAddressesInSubnet | Gateway.NotAttached |\n InvalidAllocationID.NotFound | Resource.AlreadyAssociated |\n InternalError | InvalidSubnetID.NotFound)

", - "smithy.api#xmlName": "failureCode" + "aws.protocols#ec2QueryName": "Ipv6Cidr", + "smithy.api#documentation": "

The IPv6 CIDR block.

", + "smithy.api#xmlName": "ipv6Cidr" } }, - "FailureMessage": { + "AssociatedResource": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "FailureMessage", - "smithy.api#documentation": "

If the NAT gateway could not be created, specifies the error message for the failure, that corresponds to the error code.

\n ", - "smithy.api#xmlName": "failureMessage" - } - }, - "NatGatewayAddresses": { - "target": "com.amazonaws.ec2#NatGatewayAddressList", - "traits": { - "aws.protocols#ec2QueryName": "NatGatewayAddressSet", - "smithy.api#documentation": "

Information about the IP addresses and network interface associated with the NAT gateway.

", - "smithy.api#xmlName": "natGatewayAddressSet" + "aws.protocols#ec2QueryName": "AssociatedResource", + "smithy.api#documentation": "

The resource that's associated with the IPv6 CIDR block.

", + "smithy.api#xmlName": "associatedResource" } - }, - "NatGatewayId": { + } + }, + "traits": { + "smithy.api#documentation": "

Describes an IPv6 CIDR block association.

" + } + }, + "com.amazonaws.ec2#Ipv6CidrAssociationSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Ipv6CidrAssociation", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Ipv6CidrBlock": { + "type": "structure", + "members": { + "Ipv6CidrBlock": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NatGatewayId", - "smithy.api#documentation": "

The ID of the NAT gateway.

", - "smithy.api#xmlName": "natGatewayId" - } - }, - "ProvisionedBandwidth": { - "target": "com.amazonaws.ec2#ProvisionedBandwidth", - "traits": { - "aws.protocols#ec2QueryName": "ProvisionedBandwidth", - "smithy.api#documentation": "

Reserved. If you need to sustain traffic greater than the documented limits, contact us through \n the Support Center.

", - "smithy.api#xmlName": "provisionedBandwidth" + "aws.protocols#ec2QueryName": "Ipv6CidrBlock", + "smithy.api#documentation": "

The IPv6 CIDR block.

", + "smithy.api#xmlName": "ipv6CidrBlock" } - }, - "State": { - "target": "com.amazonaws.ec2#NatGatewayState", + } + }, + "traits": { + "smithy.api#documentation": "

Describes an IPv6 CIDR block.

" + } + }, + "com.amazonaws.ec2#Ipv6CidrBlockSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Ipv6CidrBlock", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Ipv6Flag": { + "type": "boolean" + }, + "com.amazonaws.ec2#Ipv6Pool": { + "type": "structure", + "members": { + "PoolId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the NAT gateway.

\n ", - "smithy.api#xmlName": "state" + "aws.protocols#ec2QueryName": "PoolId", + "smithy.api#documentation": "

The ID of the address pool.

", + "smithy.api#xmlName": "poolId" } }, - "SubnetId": { + "Description": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#documentation": "

The ID of the subnet in which the NAT gateway is located.

", - "smithy.api#xmlName": "subnetId" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The description for the address pool.

", + "smithy.api#xmlName": "description" } }, - "VpcId": { - "target": "com.amazonaws.ec2#String", + "PoolCidrBlocks": { + "target": "com.amazonaws.ec2#PoolCidrBlocksSet", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC in which the NAT gateway is located.

", - "smithy.api#xmlName": "vpcId" + "aws.protocols#ec2QueryName": "PoolCidrBlockSet", + "smithy.api#documentation": "

The CIDR blocks for the address pool.

", + "smithy.api#xmlName": "poolCidrBlockSet" } }, "Tags": { "target": "com.amazonaws.ec2#TagList", "traits": { "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags for the NAT gateway.

", + "smithy.api#documentation": "

Any tags for the address pool.

", "smithy.api#xmlName": "tagSet" } - }, - "ConnectivityType": { - "target": "com.amazonaws.ec2#ConnectivityType", - "traits": { - "aws.protocols#ec2QueryName": "ConnectivityType", - "smithy.api#documentation": "

Indicates whether the NAT gateway supports public or private connectivity.

", - "smithy.api#xmlName": "connectivityType" - } } }, "traits": { - "smithy.api#documentation": "

Describes a NAT gateway.

" + "smithy.api#documentation": "

Describes an IPv6 address pool.

" } }, - "com.amazonaws.ec2#NatGatewayAddress": { + "com.amazonaws.ec2#Ipv6PoolEc2Id": { + "type": "string" + }, + "com.amazonaws.ec2#Ipv6PoolIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Ipv6PoolEc2Id", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Ipv6PoolMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#Ipv6PoolSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Ipv6Pool", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Ipv6PrefixList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Ipv6PrefixSpecificationRequest", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Ipv6PrefixListResponse": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Ipv6PrefixSpecificationResponse", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Ipv6PrefixSpecification": { "type": "structure", "members": { - "AllocationId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "AllocationId", - "smithy.api#documentation": "

[Public NAT gateway only] The allocation ID of the Elastic IP address that's associated with the NAT gateway.

", - "smithy.api#xmlName": "allocationId" - } - }, - "NetworkInterfaceId": { + "Ipv6Prefix": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceId", - "smithy.api#documentation": "

The ID of the network interface associated with the NAT gateway.

", - "smithy.api#xmlName": "networkInterfaceId" + "aws.protocols#ec2QueryName": "Ipv6Prefix", + "smithy.api#documentation": "

The IPv6 prefix.

", + "smithy.api#xmlName": "ipv6Prefix" } - }, - "PrivateIp": { + } + }, + "traits": { + "smithy.api#documentation": "

Describes the IPv6 prefix.

" + } + }, + "com.amazonaws.ec2#Ipv6PrefixSpecificationRequest": { + "type": "structure", + "members": { + "Ipv6Prefix": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PrivateIp", - "smithy.api#documentation": "

The private IP address associated with the NAT gateway.

", - "smithy.api#xmlName": "privateIp" + "smithy.api#documentation": "

The IPv6 prefix.

" } - }, - "PublicIp": { + } + }, + "traits": { + "smithy.api#documentation": "

Describes the IPv6 prefix option for a network interface.

" + } + }, + "com.amazonaws.ec2#Ipv6PrefixSpecificationResponse": { + "type": "structure", + "members": { + "Ipv6Prefix": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PublicIp", - "smithy.api#documentation": "

[Public NAT gateway only] The Elastic IP address associated with the NAT gateway.

", - "smithy.api#xmlName": "publicIp" + "aws.protocols#ec2QueryName": "Ipv6Prefix", + "smithy.api#documentation": "

The IPv6 delegated prefixes assigned to the network interface.

", + "smithy.api#xmlName": "ipv6Prefix" } - }, - "AssociationId": { + } + }, + "traits": { + "smithy.api#documentation": "

Information about the IPv6 delegated prefixes assigned to a network interface.

" + } + }, + "com.amazonaws.ec2#Ipv6PrefixesList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Ipv6PrefixSpecification", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Ipv6Range": { + "type": "structure", + "members": { + "Description": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AssociationId", - "smithy.api#documentation": "

[Public NAT gateway only] The association ID of the Elastic IP address that's associated with the NAT gateway.

", - "smithy.api#xmlName": "associationId" - } - }, - "IsPrimary": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "IsPrimary", - "smithy.api#documentation": "

Defines if the IP address is the primary address.

", - "smithy.api#xmlName": "isPrimary" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description for the security group rule that references this IPv6 address range.

\n

Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9,\n spaces, and ._-:/()#,@[]+=&;{}!$*

", + "smithy.api#xmlName": "description" } }, - "FailureMessage": { + "CidrIpv6": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "FailureMessage", - "smithy.api#documentation": "

The address failure message.

", - "smithy.api#xmlName": "failureMessage" - } - }, - "Status": { - "target": "com.amazonaws.ec2#NatGatewayAddressStatus", - "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The address status.

", - "smithy.api#xmlName": "status" + "aws.protocols#ec2QueryName": "CidrIpv6", + "smithy.api#documentation": "

The IPv6 address range. You can either specify a CIDR block or a source security group,\n not both. To specify a single IPv6 address, use the /128 prefix length.

\n \n

\n Amazon Web Services canonicalizes IPv4 and IPv6 CIDRs. For example, if you specify 100.68.0.18/18 for the CIDR block, \n Amazon Web Services canonicalizes the CIDR block to 100.68.0.0/18. Any subsequent DescribeSecurityGroups and DescribeSecurityGroupRules calls will \n return the canonicalized form of the CIDR block. Additionally, if you attempt to add another rule with the \n non-canonical form of the CIDR (such as 100.68.0.18/18) and there is already a rule for the canonicalized \n form of the CIDR block (such as 100.68.0.0/18), the API throws an duplicate rule error.

\n
", + "smithy.api#xmlName": "cidrIpv6" } } }, "traits": { - "smithy.api#documentation": "

Describes the IP addresses and network interface associated with a NAT gateway.

" + "smithy.api#documentation": "

Describes an IPv6 address range.

" } }, - "com.amazonaws.ec2#NatGatewayAddressList": { + "com.amazonaws.ec2#Ipv6RangeList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#NatGatewayAddress", + "target": "com.amazonaws.ec2#Ipv6Range", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#NatGatewayAddressStatus": { + "com.amazonaws.ec2#Ipv6SupportValue": { "type": "enum", "members": { - "ASSIGNING": { + "enable": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "assigning" + "smithy.api#enumValue": "enable" } }, - "UNASSIGNING": { + "disable": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "unassigning" + "smithy.api#enumValue": "disable" } - }, - "ASSOCIATING": { + } + } + }, + "com.amazonaws.ec2#KernelId": { + "type": "string" + }, + "com.amazonaws.ec2#KeyFormat": { + "type": "enum", + "members": { + "pem": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "associating" + "smithy.api#enumValue": "pem" } }, - "DISASSOCIATING": { + "ppk": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "disassociating" + "smithy.api#enumValue": "ppk" } - }, - "SUCCEEDED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "succeeded" - } - }, - "FAILED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "failed" - } - } - } - }, - "com.amazonaws.ec2#NatGatewayId": { - "type": "string" - }, - "com.amazonaws.ec2#NatGatewayIdStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#NatGatewayId", - "traits": { - "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#NatGatewayList": { + "com.amazonaws.ec2#KeyNameStringList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#NatGateway", + "target": "com.amazonaws.ec2#KeyPairName", "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#NatGatewayState": { - "type": "enum", - "members": { - "PENDING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "pending" - } - }, - "FAILED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "failed" - } - }, - "AVAILABLE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "available" - } - }, - "DELETING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "deleting" - } - }, - "DELETED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "deleted" - } + "smithy.api#xmlName": "KeyName" } } }, - "com.amazonaws.ec2#NetmaskLength": { - "type": "integer" - }, - "com.amazonaws.ec2#NetworkAcl": { + "com.amazonaws.ec2#KeyPair": { "type": "structure", "members": { - "Associations": { - "target": "com.amazonaws.ec2#NetworkAclAssociationList", - "traits": { - "aws.protocols#ec2QueryName": "AssociationSet", - "smithy.api#documentation": "

Any associations between the network ACL and one or more subnets

", - "smithy.api#xmlName": "associationSet" - } - }, - "Entries": { - "target": "com.amazonaws.ec2#NetworkAclEntryList", - "traits": { - "aws.protocols#ec2QueryName": "EntrySet", - "smithy.api#documentation": "

The entries (rules) in the network ACL.

", - "smithy.api#xmlName": "entrySet" - } - }, - "IsDefault": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "Default", - "smithy.api#documentation": "

Indicates whether this is the default network ACL for the VPC.

", - "smithy.api#xmlName": "default" - } - }, - "NetworkAclId": { + "KeyPairId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NetworkAclId", - "smithy.api#documentation": "

The ID of the network ACL.

", - "smithy.api#xmlName": "networkAclId" + "aws.protocols#ec2QueryName": "KeyPairId", + "smithy.api#documentation": "

The ID of the key pair.

", + "smithy.api#xmlName": "keyPairId" } }, "Tags": { "target": "com.amazonaws.ec2#TagList", "traits": { "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the network ACL.

", + "smithy.api#documentation": "

Any tags applied to the key pair.

", "smithy.api#xmlName": "tagSet" } }, - "VpcId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC for the network ACL.

", - "smithy.api#xmlName": "vpcId" - } - }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the network ACL.

", - "smithy.api#xmlName": "ownerId" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a network ACL.

" - } - }, - "com.amazonaws.ec2#NetworkAclAssociation": { - "type": "structure", - "members": { - "NetworkAclAssociationId": { + "KeyName": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NetworkAclAssociationId", - "smithy.api#documentation": "

The ID of the association between a network ACL and a subnet.

", - "smithy.api#xmlName": "networkAclAssociationId" + "aws.protocols#ec2QueryName": "KeyName", + "smithy.api#documentation": "

The name of the key pair.

", + "smithy.api#xmlName": "keyName" } }, - "NetworkAclId": { + "KeyFingerprint": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NetworkAclId", - "smithy.api#documentation": "

The ID of the network ACL.

", - "smithy.api#xmlName": "networkAclId" + "aws.protocols#ec2QueryName": "KeyFingerprint", + "smithy.api#documentation": "", + "smithy.api#xmlName": "keyFingerprint" } }, - "SubnetId": { - "target": "com.amazonaws.ec2#String", + "KeyMaterial": { + "target": "com.amazonaws.ec2#SensitiveUserData", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#documentation": "

The ID of the subnet.

", - "smithy.api#xmlName": "subnetId" + "aws.protocols#ec2QueryName": "KeyMaterial", + "smithy.api#documentation": "

An unencrypted PEM encoded RSA or ED25519 private key.

", + "smithy.api#xmlName": "keyMaterial" } } }, "traits": { - "smithy.api#documentation": "

Describes an association between a network ACL and a subnet.

" + "smithy.api#documentation": "

Describes a key pair.

" } }, - "com.amazonaws.ec2#NetworkAclAssociationId": { + "com.amazonaws.ec2#KeyPairId": { "type": "string" }, - "com.amazonaws.ec2#NetworkAclAssociationList": { + "com.amazonaws.ec2#KeyPairIdStringList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#NetworkAclAssociation", + "target": "com.amazonaws.ec2#KeyPairId", "traits": { - "smithy.api#xmlName": "item" + "smithy.api#xmlName": "KeyPairId" } } }, - "com.amazonaws.ec2#NetworkAclEntry": { + "com.amazonaws.ec2#KeyPairInfo": { "type": "structure", "members": { - "CidrBlock": { + "KeyPairId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "CidrBlock", - "smithy.api#documentation": "

The IPv4 network range to allow or deny, in CIDR notation.

", - "smithy.api#xmlName": "cidrBlock" + "aws.protocols#ec2QueryName": "KeyPairId", + "smithy.api#documentation": "

The ID of the key pair.

", + "smithy.api#xmlName": "keyPairId" } }, - "Egress": { - "target": "com.amazonaws.ec2#Boolean", + "KeyType": { + "target": "com.amazonaws.ec2#KeyType", "traits": { - "aws.protocols#ec2QueryName": "Egress", - "smithy.api#documentation": "

Indicates whether the rule is an egress rule (applied to traffic leaving the subnet).

", - "smithy.api#xmlName": "egress" + "aws.protocols#ec2QueryName": "KeyType", + "smithy.api#documentation": "

The type of key pair.

", + "smithy.api#xmlName": "keyType" } }, - "IcmpTypeCode": { - "target": "com.amazonaws.ec2#IcmpTypeCode", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "aws.protocols#ec2QueryName": "IcmpTypeCode", - "smithy.api#documentation": "

ICMP protocol: The ICMP type and code.

", - "smithy.api#xmlName": "icmpTypeCode" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags applied to the key pair.

", + "smithy.api#xmlName": "tagSet" } }, - "Ipv6CidrBlock": { + "PublicKey": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Ipv6CidrBlock", - "smithy.api#documentation": "

The IPv6 network range to allow or deny, in CIDR notation.

", - "smithy.api#xmlName": "ipv6CidrBlock" + "aws.protocols#ec2QueryName": "PublicKey", + "smithy.api#documentation": "

The public key material.

", + "smithy.api#xmlName": "publicKey" } }, - "PortRange": { - "target": "com.amazonaws.ec2#PortRange", + "CreateTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "PortRange", - "smithy.api#documentation": "

TCP or UDP protocols: The range of ports the rule applies to.

", - "smithy.api#xmlName": "portRange" + "aws.protocols#ec2QueryName": "CreateTime", + "smithy.api#documentation": "

If you used Amazon EC2 to create the key pair, this is the date and time when the key\n was created, in ISO\n 8601 date-time format, in the UTC time zone.

\n

If you imported an existing key pair to Amazon EC2, this is the date and time the key\n was imported, in ISO\n 8601 date-time format, in the UTC time zone.

", + "smithy.api#xmlName": "createTime" } }, - "Protocol": { + "KeyName": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Protocol", - "smithy.api#documentation": "

The protocol number. A value of \"-1\" means all protocols.

", - "smithy.api#xmlName": "protocol" - } - }, - "RuleAction": { - "target": "com.amazonaws.ec2#RuleAction", - "traits": { - "aws.protocols#ec2QueryName": "RuleAction", - "smithy.api#documentation": "

Indicates whether to allow or deny the traffic that matches the rule.

", - "smithy.api#xmlName": "ruleAction" + "aws.protocols#ec2QueryName": "KeyName", + "smithy.api#documentation": "

The name of the key pair.

", + "smithy.api#xmlName": "keyName" } }, - "RuleNumber": { - "target": "com.amazonaws.ec2#Integer", + "KeyFingerprint": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "RuleNumber", - "smithy.api#documentation": "

The rule number for the entry. ACL entries are processed in ascending order by rule number.

", - "smithy.api#xmlName": "ruleNumber" + "aws.protocols#ec2QueryName": "KeyFingerprint", + "smithy.api#documentation": "

If you used CreateKeyPair to create the key pair:

\n \n

If you used ImportKeyPair to provide Amazon Web Services the public key:

\n ", + "smithy.api#xmlName": "keyFingerprint" } } }, "traits": { - "smithy.api#documentation": "

Describes an entry in a network ACL.

" + "smithy.api#documentation": "

Describes a key pair.

" } }, - "com.amazonaws.ec2#NetworkAclEntryList": { + "com.amazonaws.ec2#KeyPairList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#NetworkAclEntry", + "target": "com.amazonaws.ec2#KeyPairInfo", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#NetworkAclId": { + "com.amazonaws.ec2#KeyPairName": { "type": "string" }, - "com.amazonaws.ec2#NetworkAclIdStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#NetworkAclId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#NetworkAclList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#NetworkAcl", - "traits": { - "smithy.api#xmlName": "item" - } - } + "com.amazonaws.ec2#KeyPairNameWithResolver": { + "type": "string" }, - "com.amazonaws.ec2#NetworkBandwidthGbps": { - "type": "structure", + "com.amazonaws.ec2#KeyType": { + "type": "enum", "members": { - "Min": { - "target": "com.amazonaws.ec2#Double", + "rsa": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Min", - "smithy.api#documentation": "

The minimum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no minimum\n limit.

", - "smithy.api#xmlName": "min" + "smithy.api#enumValue": "rsa" } }, - "Max": { - "target": "com.amazonaws.ec2#Double", + "ed25519": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Max", - "smithy.api#documentation": "

The maximum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no\n maximum limit.

", - "smithy.api#xmlName": "max" + "smithy.api#enumValue": "ed25519" } } - }, - "traits": { - "smithy.api#documentation": "

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

\n \n

Setting the minimum bandwidth does not guarantee that your instance will achieve the \n minimum bandwidth. Amazon EC2 will identify instance types that support the specified minimum \n bandwidth, but the actual bandwidth of your instance might go below the specified minimum \n at times. For more information, see Available instance bandwidth in the\n Amazon EC2 User Guide.

\n
" } }, - "com.amazonaws.ec2#NetworkBandwidthGbpsRequest": { + "com.amazonaws.ec2#KmsKeyArn": { + "type": "string" + }, + "com.amazonaws.ec2#KmsKeyId": { + "type": "string" + }, + "com.amazonaws.ec2#LastError": { "type": "structure", "members": { - "Min": { - "target": "com.amazonaws.ec2#Double", + "Message": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The minimum amount of network bandwidth, in Gbps. To specify no minimum limit, omit this\n parameter.

" + "aws.protocols#ec2QueryName": "Message", + "smithy.api#documentation": "

The error message for the VPC endpoint error.

", + "smithy.api#xmlName": "message" } }, - "Max": { - "target": "com.amazonaws.ec2#Double", + "Code": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The maximum amount of network bandwidth, in Gbps. To specify no maximum limit, omit this\n parameter.

" + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The error code for the VPC endpoint error.

", + "smithy.api#xmlName": "code" } } }, "traits": { - "smithy.api#documentation": "

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

\n \n

Setting the minimum bandwidth does not guarantee that your instance will achieve the \n minimum bandwidth. Amazon EC2 will identify instance types that support the specified minimum \n bandwidth, but the actual bandwidth of your instance might go below the specified minimum \n at times. For more information, see Available instance bandwidth in the\n Amazon EC2 User Guide.

\n
" + "smithy.api#documentation": "

The last error that occurred for a VPC endpoint.

" } }, - "com.amazonaws.ec2#NetworkCardIndex": { - "type": "integer" - }, - "com.amazonaws.ec2#NetworkCardInfo": { + "com.amazonaws.ec2#LaunchPermission": { "type": "structure", "members": { - "NetworkCardIndex": { - "target": "com.amazonaws.ec2#NetworkCardIndex", - "traits": { - "aws.protocols#ec2QueryName": "NetworkCardIndex", - "smithy.api#documentation": "

The index of the network card.

", - "smithy.api#xmlName": "networkCardIndex" - } - }, - "NetworkPerformance": { - "target": "com.amazonaws.ec2#NetworkPerformance", + "OrganizationArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NetworkPerformance", - "smithy.api#documentation": "

The network performance of the network card.

", - "smithy.api#xmlName": "networkPerformance" + "aws.protocols#ec2QueryName": "OrganizationArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an organization.

", + "smithy.api#xmlName": "organizationArn" } }, - "MaximumNetworkInterfaces": { - "target": "com.amazonaws.ec2#MaxNetworkInterfaces", + "OrganizationalUnitArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "MaximumNetworkInterfaces", - "smithy.api#documentation": "

The maximum number of network interfaces for the network card.

", - "smithy.api#xmlName": "maximumNetworkInterfaces" + "aws.protocols#ec2QueryName": "OrganizationalUnitArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an organizational unit (OU).

", + "smithy.api#xmlName": "organizationalUnitArn" } }, - "BaselineBandwidthInGbps": { - "target": "com.amazonaws.ec2#BaselineBandwidthInGbps", + "UserId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "BaselineBandwidthInGbps", - "smithy.api#documentation": "

The baseline network performance of the network card, in Gbps.

", - "smithy.api#xmlName": "baselineBandwidthInGbps" + "aws.protocols#ec2QueryName": "UserId", + "smithy.api#documentation": "

The Amazon Web Services account ID.

\n

Constraints: Up to 10 000 account IDs can be specified in a single request.

", + "smithy.api#xmlName": "userId" } }, - "PeakBandwidthInGbps": { - "target": "com.amazonaws.ec2#PeakBandwidthInGbps", + "Group": { + "target": "com.amazonaws.ec2#PermissionGroup", "traits": { - "aws.protocols#ec2QueryName": "PeakBandwidthInGbps", - "smithy.api#documentation": "

The peak (burst) network performance of the network card, in Gbps.

", - "smithy.api#xmlName": "peakBandwidthInGbps" + "aws.protocols#ec2QueryName": "Group", + "smithy.api#documentation": "

The name of the group.

", + "smithy.api#xmlName": "group" } } }, "traits": { - "smithy.api#documentation": "

Describes the network card support of the instance type.

" + "smithy.api#documentation": "

Describes a launch permission.

" } }, - "com.amazonaws.ec2#NetworkCardInfoList": { + "com.amazonaws.ec2#LaunchPermissionList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#NetworkCardInfo", + "target": "com.amazonaws.ec2#LaunchPermission", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#NetworkInfo": { + "com.amazonaws.ec2#LaunchPermissionModifications": { "type": "structure", "members": { - "NetworkPerformance": { - "target": "com.amazonaws.ec2#NetworkPerformance", + "Add": { + "target": "com.amazonaws.ec2#LaunchPermissionList", "traits": { - "aws.protocols#ec2QueryName": "NetworkPerformance", - "smithy.api#documentation": "

The network performance.

", - "smithy.api#xmlName": "networkPerformance" + "smithy.api#documentation": "

The Amazon Web Services account ID, organization ARN, or OU ARN to add to the list of\n launch permissions for the AMI.

" } }, - "MaximumNetworkInterfaces": { - "target": "com.amazonaws.ec2#MaxNetworkInterfaces", + "Remove": { + "target": "com.amazonaws.ec2#LaunchPermissionList", "traits": { - "aws.protocols#ec2QueryName": "MaximumNetworkInterfaces", - "smithy.api#documentation": "

The maximum number of network interfaces for the instance type.

", - "smithy.api#xmlName": "maximumNetworkInterfaces" + "smithy.api#documentation": "

The Amazon Web Services account ID, organization ARN, or OU ARN to remove from the list of\n launch permissions for the AMI.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a launch permission modification.

" + } + }, + "com.amazonaws.ec2#LaunchSpecification": { + "type": "structure", + "members": { + "UserData": { + "target": "com.amazonaws.ec2#SensitiveUserData", + "traits": { + "aws.protocols#ec2QueryName": "UserData", + "smithy.api#documentation": "

The base64-encoded user data that instances use when starting up. User data is limited to 16 KB.

", + "smithy.api#xmlName": "userData" } }, - "MaximumNetworkCards": { - "target": "com.amazonaws.ec2#MaximumNetworkCards", + "AddressingType": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "MaximumNetworkCards", - "smithy.api#documentation": "

The maximum number of physical network cards that can be allocated to the instance.

", - "smithy.api#xmlName": "maximumNetworkCards" + "aws.protocols#ec2QueryName": "AddressingType", + "smithy.api#documentation": "

Deprecated.

", + "smithy.api#xmlName": "addressingType" } }, - "DefaultNetworkCardIndex": { - "target": "com.amazonaws.ec2#DefaultNetworkCardIndex", + "BlockDeviceMappings": { + "target": "com.amazonaws.ec2#BlockDeviceMappingList", "traits": { - "aws.protocols#ec2QueryName": "DefaultNetworkCardIndex", - "smithy.api#documentation": "

The index of the default network card, starting at 0.

", - "smithy.api#xmlName": "defaultNetworkCardIndex" + "aws.protocols#ec2QueryName": "BlockDeviceMapping", + "smithy.api#documentation": "

The block device mapping entries.

", + "smithy.api#xmlName": "blockDeviceMapping" } }, - "NetworkCards": { - "target": "com.amazonaws.ec2#NetworkCardInfoList", + "EbsOptimized": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "NetworkCards", - "smithy.api#documentation": "

Describes the network cards for the instance type.

", - "smithy.api#xmlName": "networkCards" + "aws.protocols#ec2QueryName": "EbsOptimized", + "smithy.api#documentation": "

Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

\n

Default: false\n

", + "smithy.api#xmlName": "ebsOptimized" } }, - "Ipv4AddressesPerInterface": { - "target": "com.amazonaws.ec2#MaxIpv4AddrPerInterface", + "IamInstanceProfile": { + "target": "com.amazonaws.ec2#IamInstanceProfileSpecification", "traits": { - "aws.protocols#ec2QueryName": "Ipv4AddressesPerInterface", - "smithy.api#documentation": "

The maximum number of IPv4 addresses per network interface.

", - "smithy.api#xmlName": "ipv4AddressesPerInterface" + "aws.protocols#ec2QueryName": "IamInstanceProfile", + "smithy.api#documentation": "

The IAM instance profile.

", + "smithy.api#xmlName": "iamInstanceProfile" } }, - "Ipv6AddressesPerInterface": { - "target": "com.amazonaws.ec2#MaxIpv6AddrPerInterface", + "ImageId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Ipv6AddressesPerInterface", - "smithy.api#documentation": "

The maximum number of IPv6 addresses per network interface.

", - "smithy.api#xmlName": "ipv6AddressesPerInterface" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the AMI.

", + "smithy.api#xmlName": "imageId" } }, - "Ipv6Supported": { - "target": "com.amazonaws.ec2#Ipv6Flag", + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", "traits": { - "aws.protocols#ec2QueryName": "Ipv6Supported", - "smithy.api#documentation": "

Indicates whether IPv6 is supported.

", - "smithy.api#xmlName": "ipv6Supported" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type. Only one instance type can be specified.

", + "smithy.api#xmlName": "instanceType" } }, - "EnaSupport": { - "target": "com.amazonaws.ec2#EnaSupport", + "KernelId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "EnaSupport", - "smithy.api#documentation": "

Indicates whether Elastic Network Adapter (ENA) is supported.

", - "smithy.api#xmlName": "enaSupport" + "aws.protocols#ec2QueryName": "KernelId", + "smithy.api#documentation": "

The ID of the kernel.

", + "smithy.api#xmlName": "kernelId" } }, - "EfaSupported": { - "target": "com.amazonaws.ec2#EfaSupportedFlag", + "KeyName": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "EfaSupported", - "smithy.api#documentation": "

Indicates whether Elastic Fabric Adapter (EFA) is supported.

", - "smithy.api#xmlName": "efaSupported" + "aws.protocols#ec2QueryName": "KeyName", + "smithy.api#documentation": "

The name of the key pair.

", + "smithy.api#xmlName": "keyName" } }, - "EfaInfo": { - "target": "com.amazonaws.ec2#EfaInfo", + "NetworkInterfaces": { + "target": "com.amazonaws.ec2#InstanceNetworkInterfaceSpecificationList", "traits": { - "aws.protocols#ec2QueryName": "EfaInfo", - "smithy.api#documentation": "

Describes the Elastic Fabric Adapters for the instance type.

", - "smithy.api#xmlName": "efaInfo" + "aws.protocols#ec2QueryName": "NetworkInterfaceSet", + "smithy.api#documentation": "

The network interfaces. If you specify a network interface, you must specify \n subnet IDs and security group IDs using the network interface.

", + "smithy.api#xmlName": "networkInterfaceSet" } }, - "EncryptionInTransitSupported": { - "target": "com.amazonaws.ec2#EncryptionInTransitSupported", + "Placement": { + "target": "com.amazonaws.ec2#SpotPlacement", "traits": { - "aws.protocols#ec2QueryName": "EncryptionInTransitSupported", - "smithy.api#documentation": "

Indicates whether the instance type automatically encrypts in-transit traffic between instances.

", - "smithy.api#xmlName": "encryptionInTransitSupported" + "aws.protocols#ec2QueryName": "Placement", + "smithy.api#documentation": "

The placement information for the instance.

", + "smithy.api#xmlName": "placement" } }, - "EnaSrdSupported": { - "target": "com.amazonaws.ec2#EnaSrdSupported", + "RamdiskId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "EnaSrdSupported", - "smithy.api#documentation": "

Indicates whether the instance type supports ENA Express. ENA Express uses Amazon Web Services Scalable \n Reliable Datagram (SRD) technology to increase the maximum bandwidth used per stream and \n minimize tail latency of network traffic between EC2 instances.

", - "smithy.api#xmlName": "enaSrdSupported" + "aws.protocols#ec2QueryName": "RamdiskId", + "smithy.api#documentation": "

The ID of the RAM disk.

", + "smithy.api#xmlName": "ramdiskId" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the networking features of the instance type.

" + }, + "SubnetId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet in which to launch the instance.

", + "smithy.api#xmlName": "subnetId" + } + }, + "SecurityGroups": { + "target": "com.amazonaws.ec2#GroupIdentifierList", + "traits": { + "aws.protocols#ec2QueryName": "GroupSet", + "smithy.api#documentation": "

The IDs of the security groups.

", + "smithy.api#xmlName": "groupSet" + } + }, + "Monitoring": { + "target": "com.amazonaws.ec2#RunInstancesMonitoringEnabled", + "traits": { + "aws.protocols#ec2QueryName": "Monitoring", + "smithy.api#xmlName": "monitoring" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the launch specification for an instance.

" } }, - "com.amazonaws.ec2#NetworkInsightsAccessScope": { + "com.amazonaws.ec2#LaunchSpecsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#SpotFleetLaunchSpecification", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#LaunchTemplate": { "type": "structure", "members": { - "NetworkInsightsAccessScopeId": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeId", + "LaunchTemplateId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeId", - "smithy.api#documentation": "

The ID of the Network Access Scope.

", - "smithy.api#xmlName": "networkInsightsAccessScopeId" + "aws.protocols#ec2QueryName": "LaunchTemplateId", + "smithy.api#documentation": "

The ID of the launch template.

", + "smithy.api#xmlName": "launchTemplateId" } }, - "NetworkInsightsAccessScopeArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "LaunchTemplateName": { + "target": "com.amazonaws.ec2#LaunchTemplateName", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Network Access Scope.

", - "smithy.api#xmlName": "networkInsightsAccessScopeArn" + "aws.protocols#ec2QueryName": "LaunchTemplateName", + "smithy.api#documentation": "

The name of the launch template.

", + "smithy.api#xmlName": "launchTemplateName" } }, - "CreatedDate": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "CreateTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "CreatedDate", - "smithy.api#documentation": "

The creation date.

", - "smithy.api#xmlName": "createdDate" + "aws.protocols#ec2QueryName": "CreateTime", + "smithy.api#documentation": "

The time launch template was created.

", + "smithy.api#xmlName": "createTime" } }, - "UpdatedDate": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "CreatedBy": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "UpdatedDate", - "smithy.api#documentation": "

The last updated date.

", - "smithy.api#xmlName": "updatedDate" + "aws.protocols#ec2QueryName": "CreatedBy", + "smithy.api#documentation": "

The principal that created the launch template.

", + "smithy.api#xmlName": "createdBy" + } + }, + "DefaultVersionNumber": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "aws.protocols#ec2QueryName": "DefaultVersionNumber", + "smithy.api#documentation": "

The version number of the default version of the launch template.

", + "smithy.api#xmlName": "defaultVersionNumber" + } + }, + "LatestVersionNumber": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "aws.protocols#ec2QueryName": "LatestVersionNumber", + "smithy.api#documentation": "

The version number of the latest version of the launch template.

", + "smithy.api#xmlName": "latestVersionNumber" } }, "Tags": { "target": "com.amazonaws.ec2#TagList", "traits": { "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags.

", + "smithy.api#documentation": "

The tags for the launch template.

", "smithy.api#xmlName": "tagSet" } + }, + "Operator": { + "target": "com.amazonaws.ec2#OperatorResponse", + "traits": { + "aws.protocols#ec2QueryName": "Operator", + "smithy.api#documentation": "

The entity that manages the launch template.

", + "smithy.api#xmlName": "operator" + } } }, "traits": { - "smithy.api#documentation": "

Describes a Network Access Scope.

" + "smithy.api#documentation": "

Describes a launch template.

" } }, - "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysis": { + "com.amazonaws.ec2#LaunchTemplateAndOverridesResponse": { "type": "structure", "members": { - "NetworkInsightsAccessScopeAnalysisId": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisId", + "LaunchTemplateSpecification": { + "target": "com.amazonaws.ec2#FleetLaunchTemplateSpecification", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeAnalysisId", - "smithy.api#documentation": "

The ID of the Network Access Scope analysis.

", - "smithy.api#xmlName": "networkInsightsAccessScopeAnalysisId" + "aws.protocols#ec2QueryName": "LaunchTemplateSpecification", + "smithy.api#documentation": "

The launch template.

", + "smithy.api#xmlName": "launchTemplateSpecification" } }, - "NetworkInsightsAccessScopeAnalysisArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "Overrides": { + "target": "com.amazonaws.ec2#FleetLaunchTemplateOverrides", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeAnalysisArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Network Access Scope analysis.

", - "smithy.api#xmlName": "networkInsightsAccessScopeAnalysisArn" + "aws.protocols#ec2QueryName": "Overrides", + "smithy.api#documentation": "

Any parameters that you specify override the same parameters in the launch\n template.

", + "smithy.api#xmlName": "overrides" } - }, - "NetworkInsightsAccessScopeId": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeId", + } + }, + "traits": { + "smithy.api#documentation": "

Describes a launch template and overrides.

" + } + }, + "com.amazonaws.ec2#LaunchTemplateAutoRecoveryState": { + "type": "enum", + "members": { + "default": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeId", - "smithy.api#documentation": "

The ID of the Network Access Scope.

", - "smithy.api#xmlName": "networkInsightsAccessScopeId" + "smithy.api#enumValue": "default" } }, - "Status": { - "target": "com.amazonaws.ec2#AnalysisStatus", + "disabled": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The status.

", - "smithy.api#xmlName": "status" + "smithy.api#enumValue": "disabled" } - }, - "StatusMessage": { + } + } + }, + "com.amazonaws.ec2#LaunchTemplateBlockDeviceMapping": { + "type": "structure", + "members": { + "DeviceName": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "StatusMessage", - "smithy.api#documentation": "

The status message.

", - "smithy.api#xmlName": "statusMessage" + "aws.protocols#ec2QueryName": "DeviceName", + "smithy.api#documentation": "

The device name.

", + "smithy.api#xmlName": "deviceName" } }, - "WarningMessage": { + "VirtualName": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "WarningMessage", - "smithy.api#documentation": "

The warning message.

", - "smithy.api#xmlName": "warningMessage" + "aws.protocols#ec2QueryName": "VirtualName", + "smithy.api#documentation": "

The virtual device name (ephemeralN).

", + "smithy.api#xmlName": "virtualName" } }, - "StartDate": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "Ebs": { + "target": "com.amazonaws.ec2#LaunchTemplateEbsBlockDevice", "traits": { - "aws.protocols#ec2QueryName": "StartDate", - "smithy.api#documentation": "

The analysis start date.

", - "smithy.api#xmlName": "startDate" + "aws.protocols#ec2QueryName": "Ebs", + "smithy.api#documentation": "

Information about the block device for an EBS volume.

", + "smithy.api#xmlName": "ebs" } }, - "EndDate": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "NoDevice": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "EndDate", - "smithy.api#documentation": "

The analysis end date.

", - "smithy.api#xmlName": "endDate" + "aws.protocols#ec2QueryName": "NoDevice", + "smithy.api#documentation": "

To omit the device from the block device mapping, specify an empty string.

", + "smithy.api#xmlName": "noDevice" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a block device mapping.

" + } + }, + "com.amazonaws.ec2#LaunchTemplateBlockDeviceMappingList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#LaunchTemplateBlockDeviceMapping", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#LaunchTemplateBlockDeviceMappingRequest": { + "type": "structure", + "members": { + "DeviceName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The device name (for example, /dev/sdh or xvdh).

" } }, - "FindingsFound": { - "target": "com.amazonaws.ec2#FindingsFound", + "VirtualName": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "FindingsFound", - "smithy.api#documentation": "

Indicates whether there are findings.

", - "smithy.api#xmlName": "findingsFound" + "smithy.api#documentation": "

The virtual device name (ephemeralN). Instance store volumes are numbered starting\n from 0. An instance type with 2 available instance store volumes can specify mappings\n for ephemeral0 and ephemeral1. The number of available instance store volumes depends on\n the instance type. After you connect to the instance, you must mount the volume.

" } }, - "AnalyzedEniCount": { - "target": "com.amazonaws.ec2#Integer", + "Ebs": { + "target": "com.amazonaws.ec2#LaunchTemplateEbsBlockDeviceRequest", "traits": { - "aws.protocols#ec2QueryName": "AnalyzedEniCount", - "smithy.api#documentation": "

The number of network interfaces analyzed.

", - "smithy.api#xmlName": "analyzedEniCount" + "smithy.api#documentation": "

Parameters used to automatically set up EBS volumes when the instance is\n launched.

" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "NoDevice": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#documentation": "

To omit the device from the block device mapping, specify an empty string.

" } } }, "traits": { - "smithy.api#documentation": "

Describes a Network Access Scope analysis.

" - } - }, - "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisId": { - "type": "string" - }, - "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisId", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

Describes a block device mapping.

" } }, - "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisList": { + "com.amazonaws.ec2#LaunchTemplateBlockDeviceMappingRequestList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysis", + "target": "com.amazonaws.ec2#LaunchTemplateBlockDeviceMappingRequest", "traits": { - "smithy.api#xmlName": "item" + "smithy.api#xmlName": "BlockDeviceMapping" } } }, - "com.amazonaws.ec2#NetworkInsightsAccessScopeContent": { + "com.amazonaws.ec2#LaunchTemplateCapacityReservationSpecificationRequest": { "type": "structure", "members": { - "NetworkInsightsAccessScopeId": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeId", + "CapacityReservationPreference": { + "target": "com.amazonaws.ec2#CapacityReservationPreference", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeId", - "smithy.api#documentation": "

The ID of the Network Access Scope.

", - "smithy.api#xmlName": "networkInsightsAccessScopeId" + "smithy.api#documentation": "

Indicates the instance's Capacity Reservation preferences. Possible preferences\n include:

\n " } }, - "MatchPaths": { - "target": "com.amazonaws.ec2#AccessScopePathList", + "CapacityReservationTarget": { + "target": "com.amazonaws.ec2#CapacityReservationTarget", "traits": { - "aws.protocols#ec2QueryName": "MatchPathSet", - "smithy.api#documentation": "

The paths to match.

", - "smithy.api#xmlName": "matchPathSet" + "smithy.api#documentation": "

Information about the target Capacity Reservation or Capacity Reservation\n group.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes an instance's Capacity Reservation targeting option. You can specify only\n one option at a time. Use the CapacityReservationPreference parameter to\n configure the instance to run in On-Demand capacity or to run in any open\n Capacity Reservation that has matching attributes (instance type, platform, Availability\n Zone). Use the CapacityReservationTarget parameter to explicitly target a\n specific Capacity Reservation or a Capacity Reservation group.

" + } + }, + "com.amazonaws.ec2#LaunchTemplateCapacityReservationSpecificationResponse": { + "type": "structure", + "members": { + "CapacityReservationPreference": { + "target": "com.amazonaws.ec2#CapacityReservationPreference", + "traits": { + "aws.protocols#ec2QueryName": "CapacityReservationPreference", + "smithy.api#documentation": "

Indicates the instance's Capacity Reservation preferences. Possible preferences\n include:

\n ", + "smithy.api#xmlName": "capacityReservationPreference" } }, - "ExcludePaths": { - "target": "com.amazonaws.ec2#AccessScopePathList", + "CapacityReservationTarget": { + "target": "com.amazonaws.ec2#CapacityReservationTargetResponse", "traits": { - "aws.protocols#ec2QueryName": "ExcludePathSet", - "smithy.api#documentation": "

The paths to exclude.

", - "smithy.api#xmlName": "excludePathSet" + "aws.protocols#ec2QueryName": "CapacityReservationTarget", + "smithy.api#documentation": "

Information about the target Capacity Reservation or Capacity Reservation\n group.

", + "smithy.api#xmlName": "capacityReservationTarget" } } }, "traits": { - "smithy.api#documentation": "

Describes the Network Access Scope content.

" + "smithy.api#documentation": "

Information about the Capacity Reservation targeting option.

" } }, - "com.amazonaws.ec2#NetworkInsightsAccessScopeId": { - "type": "string" - }, - "com.amazonaws.ec2#NetworkInsightsAccessScopeIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeId", - "traits": { - "smithy.api#xmlName": "item" + "com.amazonaws.ec2#LaunchTemplateConfig": { + "type": "structure", + "members": { + "LaunchTemplateSpecification": { + "target": "com.amazonaws.ec2#FleetLaunchTemplateSpecification", + "traits": { + "aws.protocols#ec2QueryName": "LaunchTemplateSpecification", + "smithy.api#documentation": "

The launch template to use. Make sure that the launch template does not contain the\n NetworkInterfaceId parameter because you can't specify a network interface\n ID in a Spot Fleet.

", + "smithy.api#xmlName": "launchTemplateSpecification" + } + }, + "Overrides": { + "target": "com.amazonaws.ec2#LaunchTemplateOverridesList", + "traits": { + "aws.protocols#ec2QueryName": "Overrides", + "smithy.api#documentation": "

Any parameters that you specify override the same parameters in the launch\n template.

", + "smithy.api#xmlName": "overrides" + } } + }, + "traits": { + "smithy.api#documentation": "

Describes a launch template and overrides.

" } }, - "com.amazonaws.ec2#NetworkInsightsAccessScopeList": { + "com.amazonaws.ec2#LaunchTemplateConfigList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#NetworkInsightsAccessScope", + "target": "com.amazonaws.ec2#LaunchTemplateConfig", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#NetworkInsightsAnalysis": { + "com.amazonaws.ec2#LaunchTemplateCpuOptions": { "type": "structure", "members": { - "NetworkInsightsAnalysisId": { - "target": "com.amazonaws.ec2#NetworkInsightsAnalysisId", - "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAnalysisId", - "smithy.api#documentation": "

The ID of the network insights analysis.

", - "smithy.api#xmlName": "networkInsightsAnalysisId" - } - }, - "NetworkInsightsAnalysisArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "CoreCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsAnalysisArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the network insights analysis.

", - "smithy.api#xmlName": "networkInsightsAnalysisArn" + "aws.protocols#ec2QueryName": "CoreCount", + "smithy.api#documentation": "

The number of CPU cores for the instance.

", + "smithy.api#xmlName": "coreCount" } }, - "NetworkInsightsPathId": { - "target": "com.amazonaws.ec2#NetworkInsightsPathId", + "ThreadsPerCore": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsPathId", - "smithy.api#documentation": "

The ID of the path.

", - "smithy.api#xmlName": "networkInsightsPathId" + "aws.protocols#ec2QueryName": "ThreadsPerCore", + "smithy.api#documentation": "

The number of threads per CPU core.

", + "smithy.api#xmlName": "threadsPerCore" } }, - "AdditionalAccounts": { - "target": "com.amazonaws.ec2#ValueStringList", + "AmdSevSnp": { + "target": "com.amazonaws.ec2#AmdSevSnpSpecification", "traits": { - "aws.protocols#ec2QueryName": "AdditionalAccountSet", - "smithy.api#documentation": "

The member accounts that contain resources that the path can traverse.

", - "smithy.api#xmlName": "additionalAccountSet" + "aws.protocols#ec2QueryName": "AmdSevSnp", + "smithy.api#documentation": "

Indicates whether the instance is enabled for AMD SEV-SNP. For more information, see\n AMD SEV-SNP\n for Amazon EC2 instances.

", + "smithy.api#xmlName": "amdSevSnp" } - }, - "FilterInArns": { - "target": "com.amazonaws.ec2#ArnList", + } + }, + "traits": { + "smithy.api#documentation": "

The CPU options for the instance.

" + } + }, + "com.amazonaws.ec2#LaunchTemplateCpuOptionsRequest": { + "type": "structure", + "members": { + "CoreCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "FilterInArnSet", - "smithy.api#documentation": "

The Amazon Resource Names (ARN) of the resources that the path must traverse.

", - "smithy.api#xmlName": "filterInArnSet" + "smithy.api#documentation": "

The number of CPU cores for the instance.

" } }, - "StartDate": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "ThreadsPerCore": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "StartDate", - "smithy.api#documentation": "

The time the analysis started.

", - "smithy.api#xmlName": "startDate" + "smithy.api#documentation": "

The number of threads per CPU core. To disable multithreading for the instance,\n specify a value of 1. Otherwise, specify the default value of\n 2.

" } }, - "Status": { - "target": "com.amazonaws.ec2#AnalysisStatus", + "AmdSevSnp": { + "target": "com.amazonaws.ec2#AmdSevSnpSpecification", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The status of the network insights analysis.

", - "smithy.api#xmlName": "status" + "smithy.api#documentation": "

Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported\n with M6a, R6a, and C6a instance types only. For more information, see AMD SEV-SNP for\n Amazon EC2 instances.

" } - }, - "StatusMessage": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#documentation": "

The CPU options for the instance. Both the core count and threads per core must be\n specified in the request.

" + } + }, + "com.amazonaws.ec2#LaunchTemplateEbsBlockDevice": { + "type": "structure", + "members": { + "Encrypted": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "StatusMessage", - "smithy.api#documentation": "

The status message, if the status is failed.

", - "smithy.api#xmlName": "statusMessage" + "aws.protocols#ec2QueryName": "Encrypted", + "smithy.api#documentation": "

Indicates whether the EBS volume is encrypted.

", + "smithy.api#xmlName": "encrypted" } }, - "WarningMessage": { - "target": "com.amazonaws.ec2#String", + "DeleteOnTermination": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "WarningMessage", - "smithy.api#documentation": "

The warning message.

", - "smithy.api#xmlName": "warningMessage" + "aws.protocols#ec2QueryName": "DeleteOnTermination", + "smithy.api#documentation": "

Indicates whether the EBS volume is deleted on instance termination.

", + "smithy.api#xmlName": "deleteOnTermination" } }, - "NetworkPathFound": { - "target": "com.amazonaws.ec2#Boolean", + "Iops": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "NetworkPathFound", - "smithy.api#documentation": "

Indicates whether the destination is reachable from the source.

", - "smithy.api#xmlName": "networkPathFound" + "aws.protocols#ec2QueryName": "Iops", + "smithy.api#documentation": "

The number of I/O operations per second (IOPS) that the volume supports.

", + "smithy.api#xmlName": "iops" } }, - "ForwardPathComponents": { - "target": "com.amazonaws.ec2#PathComponentList", + "KmsKeyId": { + "target": "com.amazonaws.ec2#KmsKeyId", "traits": { - "aws.protocols#ec2QueryName": "ForwardPathComponentSet", - "smithy.api#documentation": "

The components in the path from source to destination.

", - "smithy.api#xmlName": "forwardPathComponentSet" + "aws.protocols#ec2QueryName": "KmsKeyId", + "smithy.api#documentation": "

Identifier (key ID, key alias, key ARN, or alias ARN) of the customer managed KMS key to use for EBS encryption.

", + "smithy.api#xmlName": "kmsKeyId" } }, - "ReturnPathComponents": { - "target": "com.amazonaws.ec2#PathComponentList", + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", "traits": { - "aws.protocols#ec2QueryName": "ReturnPathComponentSet", - "smithy.api#documentation": "

The components in the path from destination to source.

", - "smithy.api#xmlName": "returnPathComponentSet" + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The ID of the snapshot.

", + "smithy.api#xmlName": "snapshotId" } }, - "Explanations": { - "target": "com.amazonaws.ec2#ExplanationList", + "VolumeSize": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "ExplanationSet", - "smithy.api#documentation": "

The explanations. For more information, see Reachability Analyzer explanation codes.

", - "smithy.api#xmlName": "explanationSet" + "aws.protocols#ec2QueryName": "VolumeSize", + "smithy.api#documentation": "

The size of the volume, in GiB.

", + "smithy.api#xmlName": "volumeSize" } }, - "AlternatePathHints": { - "target": "com.amazonaws.ec2#AlternatePathHintList", + "VolumeType": { + "target": "com.amazonaws.ec2#VolumeType", "traits": { - "aws.protocols#ec2QueryName": "AlternatePathHintSet", - "smithy.api#documentation": "

Potential intermediate components.

", - "smithy.api#xmlName": "alternatePathHintSet" + "aws.protocols#ec2QueryName": "VolumeType", + "smithy.api#documentation": "

The volume type.

", + "smithy.api#xmlName": "volumeType" } }, - "SuggestedAccounts": { - "target": "com.amazonaws.ec2#ValueStringList", + "Throughput": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "SuggestedAccountSet", - "smithy.api#documentation": "

Potential intermediate accounts.

", - "smithy.api#xmlName": "suggestedAccountSet" + "aws.protocols#ec2QueryName": "Throughput", + "smithy.api#documentation": "

The throughput that the volume supports, in MiB/s.

", + "smithy.api#xmlName": "throughput" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "VolumeInitializationRate": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags.

", - "smithy.api#xmlName": "tagSet" + "aws.protocols#ec2QueryName": "VolumeInitializationRate", + "smithy.api#documentation": "

The Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate) specified for the volume, in MiB/s. \n If no volume initialization rate was specified, the value is null.

", + "smithy.api#xmlName": "volumeInitializationRate" } } }, "traits": { - "smithy.api#documentation": "

Describes a network insights analysis.

" + "smithy.api#documentation": "

Describes a block device for an EBS volume.

" } }, - "com.amazonaws.ec2#NetworkInsightsAnalysisId": { - "type": "string" - }, - "com.amazonaws.ec2#NetworkInsightsAnalysisIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#NetworkInsightsAnalysisId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#NetworkInsightsAnalysisList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#NetworkInsightsAnalysis", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#NetworkInsightsMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 100 - } - } - }, - "com.amazonaws.ec2#NetworkInsightsPath": { + "com.amazonaws.ec2#LaunchTemplateEbsBlockDeviceRequest": { "type": "structure", "members": { - "NetworkInsightsPathId": { - "target": "com.amazonaws.ec2#NetworkInsightsPathId", - "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsPathId", - "smithy.api#documentation": "

The ID of the path.

", - "smithy.api#xmlName": "networkInsightsPathId" - } - }, - "NetworkInsightsPathArn": { - "target": "com.amazonaws.ec2#ResourceArn", - "traits": { - "aws.protocols#ec2QueryName": "NetworkInsightsPathArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the path.

", - "smithy.api#xmlName": "networkInsightsPathArn" - } - }, - "CreatedDate": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "aws.protocols#ec2QueryName": "CreatedDate", - "smithy.api#documentation": "

The time stamp when the path was created.

", - "smithy.api#xmlName": "createdDate" - } - }, - "Source": { - "target": "com.amazonaws.ec2#String", + "Encrypted": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Source", - "smithy.api#documentation": "

The ID of the source.

", - "smithy.api#xmlName": "source" + "smithy.api#documentation": "

Indicates whether the EBS volume is encrypted. Encrypted volumes can only be attached\n to instances that support Amazon EBS encryption. If you are creating a volume from a\n snapshot, you can't specify an encryption value.

" } }, - "Destination": { - "target": "com.amazonaws.ec2#String", + "DeleteOnTermination": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Destination", - "smithy.api#documentation": "

The ID of the destination.

", - "smithy.api#xmlName": "destination" + "smithy.api#documentation": "

Indicates whether the EBS volume is deleted on instance termination.

" } }, - "SourceArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "Iops": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "SourceArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the source.

", - "smithy.api#xmlName": "sourceArn" + "smithy.api#documentation": "

The number of I/O operations per second (IOPS). For gp3,\n io1, and io2 volumes, this represents the number of IOPS that\n are provisioned for the volume. For gp2 volumes, this represents the\n baseline performance of the volume and the rate at which the volume accumulates I/O\n credits for bursting.

\n

The following are the supported values for each volume type:

\n \n

For io2 volumes, you can achieve up to 256,000 IOPS on \ninstances \nbuilt on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS.

\n

This parameter is supported for io1, io2, and gp3 volumes only.

" } }, - "DestinationArn": { - "target": "com.amazonaws.ec2#ResourceArn", + "KmsKeyId": { + "target": "com.amazonaws.ec2#KmsKeyId", "traits": { - "aws.protocols#ec2QueryName": "DestinationArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the destination.

", - "smithy.api#xmlName": "destinationArn" + "smithy.api#documentation": "

Identifier (key ID, key alias, key ARN, or alias ARN) of the customer managed KMS key to use for EBS encryption.

" } }, - "SourceIp": { - "target": "com.amazonaws.ec2#IpAddress", + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", "traits": { - "aws.protocols#ec2QueryName": "SourceIp", - "smithy.api#documentation": "

The IP address of the source.

", - "smithy.api#xmlName": "sourceIp" + "smithy.api#documentation": "

The ID of the snapshot.

" } }, - "DestinationIp": { - "target": "com.amazonaws.ec2#IpAddress", + "VolumeSize": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "DestinationIp", - "smithy.api#documentation": "

The IP address of the destination.

", - "smithy.api#xmlName": "destinationIp" + "smithy.api#documentation": "

The size of the volume, in GiBs. You must specify either a snapshot ID or a volume\n size. The following are the supported volumes sizes for each volume type:

\n " } }, - "Protocol": { - "target": "com.amazonaws.ec2#Protocol", + "VolumeType": { + "target": "com.amazonaws.ec2#VolumeType", "traits": { - "aws.protocols#ec2QueryName": "Protocol", - "smithy.api#documentation": "

The protocol.

", - "smithy.api#xmlName": "protocol" + "smithy.api#documentation": "

The volume type. For more information, see Amazon EBS volume types in the\n Amazon EBS User Guide.

" } }, - "DestinationPort": { + "Throughput": { "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "DestinationPort", - "smithy.api#documentation": "

The destination port.

", - "smithy.api#xmlName": "destinationPort" + "smithy.api#documentation": "

The throughput to provision for a gp3 volume, with a maximum of 2,000\n MiB/s.

\n

Valid Range: Minimum value of 125. Maximum value of 2,000.

" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "VolumeInitializationRate": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags associated with the path.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#documentation": "

Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), in MiB/s, at which to download \n the snapshot blocks from Amazon S3 to the volume. This is also known as volume \n initialization. Specifying a volume initialization rate ensures that the volume is \n initialized at a predictable and consistent rate after creation.

\n

This parameter is supported only for volumes created from snapshots. Omit this parameter \n if:

\n \n

For more information, see \n Initialize Amazon EBS volumes in the Amazon EC2 User Guide.

\n

Valid range: 100 - 300 MiB/s

" } - }, - "FilterAtSource": { - "target": "com.amazonaws.ec2#PathFilter", + } + }, + "traits": { + "smithy.api#documentation": "

The parameters for a block device for an EBS volume.

" + } + }, + "com.amazonaws.ec2#LaunchTemplateElasticInferenceAccelerator": { + "type": "structure", + "members": { + "Type": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "FilterAtSource", - "smithy.api#documentation": "

Scopes the analysis to network paths that match specific filters at the source.

", - "smithy.api#xmlName": "filterAtSource" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The type of elastic inference accelerator. The possible values are eia1.medium,\n eia1.large, and eia1.xlarge.

", + "smithy.api#required": {} } }, - "FilterAtDestination": { - "target": "com.amazonaws.ec2#PathFilter", + "Count": { + "target": "com.amazonaws.ec2#LaunchTemplateElasticInferenceAcceleratorCount", "traits": { - "aws.protocols#ec2QueryName": "FilterAtDestination", - "smithy.api#documentation": "

Scopes the analysis to network paths that match specific filters at the destination.

", - "smithy.api#xmlName": "filterAtDestination" + "smithy.api#documentation": "

The number of elastic inference accelerators to attach to the instance.

" } } }, "traits": { - "smithy.api#documentation": "

Describes a path.

" + "smithy.api#documentation": "\n

Amazon Elastic Inference is no longer available.

\n
\n

Describes an elastic inference accelerator.

" } }, - "com.amazonaws.ec2#NetworkInsightsPathId": { - "type": "string" - }, - "com.amazonaws.ec2#NetworkInsightsPathIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#NetworkInsightsPathId", - "traits": { - "smithy.api#xmlName": "item" + "com.amazonaws.ec2#LaunchTemplateElasticInferenceAcceleratorCount": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1 } } }, - "com.amazonaws.ec2#NetworkInsightsPathList": { + "com.amazonaws.ec2#LaunchTemplateElasticInferenceAcceleratorList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#NetworkInsightsPath", + "target": "com.amazonaws.ec2#LaunchTemplateElasticInferenceAccelerator", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#NetworkInsightsResourceId": { - "type": "string" - }, - "com.amazonaws.ec2#NetworkInterface": { + "com.amazonaws.ec2#LaunchTemplateElasticInferenceAcceleratorResponse": { "type": "structure", "members": { - "Association": { - "target": "com.amazonaws.ec2#NetworkInterfaceAssociation", - "traits": { - "aws.protocols#ec2QueryName": "Association", - "smithy.api#documentation": "

The association information for an Elastic IP address (IPv4) associated with the network interface.

", - "smithy.api#xmlName": "association" - } - }, - "Attachment": { - "target": "com.amazonaws.ec2#NetworkInterfaceAttachment", - "traits": { - "aws.protocols#ec2QueryName": "Attachment", - "smithy.api#documentation": "

The network interface attachment.

", - "smithy.api#xmlName": "attachment" - } - }, - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone.

", - "smithy.api#xmlName": "availabilityZone" - } - }, - "ConnectionTrackingConfiguration": { - "target": "com.amazonaws.ec2#ConnectionTrackingConfiguration", - "traits": { - "aws.protocols#ec2QueryName": "ConnectionTrackingConfiguration", - "smithy.api#documentation": "

A security group connection tracking configuration that enables you to set the timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeouts in the Amazon Elastic Compute Cloud User Guide.

", - "smithy.api#xmlName": "connectionTrackingConfiguration" - } - }, - "Description": { + "Type": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description.

", - "smithy.api#xmlName": "description" - } - }, - "Groups": { - "target": "com.amazonaws.ec2#GroupIdentifierList", - "traits": { - "aws.protocols#ec2QueryName": "GroupSet", - "smithy.api#documentation": "

Any security groups for the network interface.

", - "smithy.api#xmlName": "groupSet" + "aws.protocols#ec2QueryName": "Type", + "smithy.api#documentation": "

The type of elastic inference accelerator. The possible values are eia1.medium,\n eia1.large, and eia1.xlarge.

", + "smithy.api#xmlName": "type" } }, - "InterfaceType": { - "target": "com.amazonaws.ec2#NetworkInterfaceType", + "Count": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "InterfaceType", - "smithy.api#documentation": "

The type of network interface.

", - "smithy.api#xmlName": "interfaceType" + "aws.protocols#ec2QueryName": "Count", + "smithy.api#documentation": "

The number of elastic inference accelerators to attach to the instance.

", + "smithy.api#xmlName": "count" } - }, - "Ipv6Addresses": { - "target": "com.amazonaws.ec2#NetworkInterfaceIpv6AddressesList", + } + }, + "traits": { + "smithy.api#documentation": "\n

Amazon Elastic Inference is no longer available.

\n
\n

Describes an elastic inference accelerator.

" + } + }, + "com.amazonaws.ec2#LaunchTemplateElasticInferenceAcceleratorResponseList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#LaunchTemplateElasticInferenceAcceleratorResponse", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#LaunchTemplateEnaSrdSpecification": { + "type": "structure", + "members": { + "EnaSrdEnabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Ipv6AddressesSet", - "smithy.api#documentation": "

The IPv6 addresses associated with the network interface.

", - "smithy.api#xmlName": "ipv6AddressesSet" + "aws.protocols#ec2QueryName": "EnaSrdEnabled", + "smithy.api#documentation": "

Indicates whether ENA Express is enabled for the network interface.

", + "smithy.api#xmlName": "enaSrdEnabled" } }, - "MacAddress": { - "target": "com.amazonaws.ec2#String", + "EnaSrdUdpSpecification": { + "target": "com.amazonaws.ec2#LaunchTemplateEnaSrdUdpSpecification", "traits": { - "aws.protocols#ec2QueryName": "MacAddress", - "smithy.api#documentation": "

The MAC address.

", - "smithy.api#xmlName": "macAddress" + "aws.protocols#ec2QueryName": "EnaSrdUdpSpecification", + "smithy.api#documentation": "

Configures ENA Express for UDP network traffic.

", + "smithy.api#xmlName": "enaSrdUdpSpecification" } - }, - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#documentation": "

ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology to increase the \n\t\t\tmaximum bandwidth used per stream and minimize tail latency of network traffic between EC2 instances. \n\t\t\tWith ENA Express, you can communicate between two EC2 instances in the same subnet within the same \n\t\t\taccount, or in different accounts. Both sending and receiving instances must have ENA Express enabled.

\n

To improve the reliability of network packet delivery, ENA Express reorders network packets on the \n\t\t\treceiving end by default. However, some UDP-based applications are designed to handle network packets \n\t\t\tthat are out of order to reduce the overhead for packet delivery at the network layer. When ENA Express \n\t\t\tis enabled, you can specify whether UDP network traffic uses it.

" + } + }, + "com.amazonaws.ec2#LaunchTemplateEnaSrdUdpSpecification": { + "type": "structure", + "members": { + "EnaSrdUdpEnabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceId", - "smithy.api#documentation": "

The ID of the network interface.

", - "smithy.api#xmlName": "networkInterfaceId" + "aws.protocols#ec2QueryName": "EnaSrdUdpEnabled", + "smithy.api#documentation": "

Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, \n\t\t\tyou must first enable ENA Express.

", + "smithy.api#xmlName": "enaSrdUdpEnabled" } - }, - "OutpostArn": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#documentation": "

ENA Express is compatible with both TCP and UDP transport protocols. When it's enabled, TCP traffic \n\t\t\tautomatically uses it. However, some UDP-based applications are designed to handle network packets that are \n\t\t\tout of order, without a need for retransmission, such as live video broadcasting or other near-real-time \n\t\t\tapplications. For UDP traffic, you can specify whether to use ENA Express, based on your application \n\t\t\tenvironment needs.

" + } + }, + "com.amazonaws.ec2#LaunchTemplateEnclaveOptions": { + "type": "structure", + "members": { + "Enabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "OutpostArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost.

", - "smithy.api#xmlName": "outpostArn" + "aws.protocols#ec2QueryName": "Enabled", + "smithy.api#documentation": "

If this parameter is set to true, the instance is enabled for Amazon Web Services Nitro\n Enclaves; otherwise, it is not enabled for Amazon Web Services Nitro Enclaves.

", + "smithy.api#xmlName": "enabled" } - }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#documentation": "

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.

" + } + }, + "com.amazonaws.ec2#LaunchTemplateEnclaveOptionsRequest": { + "type": "structure", + "members": { + "Enabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the network interface.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#documentation": "

To enable the instance for Amazon Web Services Nitro Enclaves, set this parameter to\n true.

" } - }, - "PrivateDnsName": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#documentation": "

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For more\n information, see What is Nitro Enclaves? in the\n Amazon Web Services Nitro Enclaves User Guide.

" + } + }, + "com.amazonaws.ec2#LaunchTemplateErrorCode": { + "type": "enum", + "members": { + "LAUNCH_TEMPLATE_ID_DOES_NOT_EXIST": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PrivateDnsName", - "smithy.api#documentation": "

The private DNS name.

", - "smithy.api#xmlName": "privateDnsName" + "smithy.api#enumValue": "launchTemplateIdDoesNotExist" } }, - "PrivateIpAddress": { - "target": "com.amazonaws.ec2#String", + "LAUNCH_TEMPLATE_ID_MALFORMED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PrivateIpAddress", - "smithy.api#documentation": "

The IPv4 address of the network interface within the subnet.

", - "smithy.api#xmlName": "privateIpAddress" + "smithy.api#enumValue": "launchTemplateIdMalformed" } }, - "PrivateIpAddresses": { - "target": "com.amazonaws.ec2#NetworkInterfacePrivateIpAddressList", + "LAUNCH_TEMPLATE_NAME_DOES_NOT_EXIST": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PrivateIpAddressesSet", - "smithy.api#documentation": "

The private IPv4 addresses associated with the network interface.

", - "smithy.api#xmlName": "privateIpAddressesSet" + "smithy.api#enumValue": "launchTemplateNameDoesNotExist" } }, - "Ipv4Prefixes": { - "target": "com.amazonaws.ec2#Ipv4PrefixesList", + "LAUNCH_TEMPLATE_NAME_MALFORMED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Ipv4PrefixSet", - "smithy.api#documentation": "

The IPv4 prefixes that are assigned to the network interface.

", - "smithy.api#xmlName": "ipv4PrefixSet" + "smithy.api#enumValue": "launchTemplateNameMalformed" } }, - "Ipv6Prefixes": { - "target": "com.amazonaws.ec2#Ipv6PrefixesList", + "LAUNCH_TEMPLATE_VERSION_DOES_NOT_EXIST": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Ipv6PrefixSet", - "smithy.api#documentation": "

The IPv6 prefixes that are assigned to the network interface.

", - "smithy.api#xmlName": "ipv6PrefixSet" + "smithy.api#enumValue": "launchTemplateVersionDoesNotExist" } }, - "RequesterId": { - "target": "com.amazonaws.ec2#String", + "UNEXPECTED_ERROR": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "RequesterId", - "smithy.api#documentation": "

The alias or Amazon Web Services account ID of the principal or service that created the network interface.

", - "smithy.api#xmlName": "requesterId" + "smithy.api#enumValue": "unexpectedError" } - }, - "RequesterManaged": { + } + } + }, + "com.amazonaws.ec2#LaunchTemplateHibernationOptions": { + "type": "structure", + "members": { + "Configured": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "RequesterManaged", - "smithy.api#documentation": "

Indicates whether the network interface is being managed by Amazon Web Services.

", - "smithy.api#xmlName": "requesterManaged" + "aws.protocols#ec2QueryName": "Configured", + "smithy.api#documentation": "

If this parameter is set to true, the instance is enabled for\n hibernation; otherwise, it is not enabled for hibernation.

", + "smithy.api#xmlName": "configured" } - }, - "SourceDestCheck": { + } + }, + "traits": { + "smithy.api#documentation": "

Indicates whether an instance is configured for hibernation.

" + } + }, + "com.amazonaws.ec2#LaunchTemplateHibernationOptionsRequest": { + "type": "structure", + "members": { + "Configured": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "SourceDestCheck", - "smithy.api#documentation": "

Indicates whether source/destination checking is enabled.

", - "smithy.api#xmlName": "sourceDestCheck" - } - }, - "Status": { - "target": "com.amazonaws.ec2#NetworkInterfaceStatus", - "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The status of the network interface.

", - "smithy.api#xmlName": "status" + "smithy.api#documentation": "

If you set this parameter to true, the instance is enabled for\n hibernation.

\n

Default: false\n

" } - }, - "SubnetId": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#documentation": "

Indicates whether the instance is configured for hibernation. This parameter is valid\n only if the instance meets the hibernation\n prerequisites.

" + } + }, + "com.amazonaws.ec2#LaunchTemplateHttpTokensState": { + "type": "enum", + "members": { + "optional": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#documentation": "

The ID of the subnet.

", - "smithy.api#xmlName": "subnetId" + "smithy.api#enumValue": "optional" } }, - "TagSet": { - "target": "com.amazonaws.ec2#TagList", + "required": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the network interface.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "required" } - }, - "VpcId": { + } + } + }, + "com.amazonaws.ec2#LaunchTemplateIamInstanceProfileSpecification": { + "type": "structure", + "members": { + "Arn": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#xmlName": "vpcId" - } - }, - "DenyAllIgwTraffic": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DenyAllIgwTraffic", - "smithy.api#documentation": "

Indicates whether a network interface with an IPv6 address is unreachable from the \n public internet. If the value is true, inbound traffic from the internet \n is dropped and you cannot assign an elastic IP address to the network interface. The \n network interface is reachable from peered VPCs and resources connected through a \n transit gateway, including on-premises networks.

", - "smithy.api#xmlName": "denyAllIgwTraffic" - } - }, - "Ipv6Native": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "Ipv6Native", - "smithy.api#documentation": "

Indicates whether this is an IPv6 only network interface.

", - "smithy.api#xmlName": "ipv6Native" + "aws.protocols#ec2QueryName": "Arn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the instance profile.

", + "smithy.api#xmlName": "arn" } }, - "Ipv6Address": { + "Name": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Ipv6Address", - "smithy.api#documentation": "

The IPv6 globally unique address associated with the network interface.

", - "smithy.api#xmlName": "ipv6Address" + "aws.protocols#ec2QueryName": "Name", + "smithy.api#documentation": "

The name of the instance profile.

", + "smithy.api#xmlName": "name" } } }, "traits": { - "smithy.api#documentation": "

Describes a network interface.

" + "smithy.api#documentation": "

Describes an IAM instance profile.

" } }, - "com.amazonaws.ec2#NetworkInterfaceAssociation": { + "com.amazonaws.ec2#LaunchTemplateIamInstanceProfileSpecificationRequest": { "type": "structure", "members": { - "AllocationId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "AllocationId", - "smithy.api#documentation": "

The allocation ID.

", - "smithy.api#xmlName": "allocationId" - } - }, - "AssociationId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "AssociationId", - "smithy.api#documentation": "

The association ID.

", - "smithy.api#xmlName": "associationId" - } - }, - "IpOwnerId": { + "Arn": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "IpOwnerId", - "smithy.api#documentation": "

The ID of the Elastic IP address owner.

", - "smithy.api#xmlName": "ipOwnerId" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the instance profile.

" } }, - "PublicDnsName": { + "Name": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PublicDnsName", - "smithy.api#documentation": "

The public DNS name.

", - "smithy.api#xmlName": "publicDnsName" - } - }, - "PublicIp": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "PublicIp", - "smithy.api#documentation": "

The address of the Elastic IP address bound to the network\n interface.

", - "smithy.api#xmlName": "publicIp" - } - }, - "CustomerOwnedIp": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "CustomerOwnedIp", - "smithy.api#documentation": "

The customer-owned IP address associated with the network interface.

", - "smithy.api#xmlName": "customerOwnedIp" - } - }, - "CarrierIp": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "CarrierIp", - "smithy.api#documentation": "

The carrier IP address associated with the network interface.

\n

This option is only available when the network interface is in a subnet which is associated with a Wavelength Zone.

", - "smithy.api#xmlName": "carrierIp" + "smithy.api#documentation": "

The name of the instance profile.

" } } }, "traits": { - "smithy.api#documentation": "

Describes association information for an Elastic IP address (IPv4 only), or a Carrier\n IP address (for a network interface which resides in a subnet in a Wavelength\n Zone).

" + "smithy.api#documentation": "

An IAM instance profile.

" } }, - "com.amazonaws.ec2#NetworkInterfaceAttachment": { + "com.amazonaws.ec2#LaunchTemplateId": { + "type": "string" + }, + "com.amazonaws.ec2#LaunchTemplateIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#LaunchTemplateId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#LaunchTemplateInstanceMaintenanceOptions": { "type": "structure", "members": { - "AttachTime": { - "target": "com.amazonaws.ec2#DateTime", - "traits": { - "aws.protocols#ec2QueryName": "AttachTime", - "smithy.api#documentation": "

The timestamp indicating when the attachment initiated.

", - "smithy.api#xmlName": "attachTime" - } - }, - "AttachmentId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "AttachmentId", - "smithy.api#documentation": "

The ID of the network interface attachment.

", - "smithy.api#xmlName": "attachmentId" - } - }, - "DeleteOnTermination": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DeleteOnTermination", - "smithy.api#documentation": "

Indicates whether the network interface is deleted when the instance is terminated.

", - "smithy.api#xmlName": "deleteOnTermination" - } - }, - "DeviceIndex": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "DeviceIndex", - "smithy.api#documentation": "

The device index of the network interface attachment on the instance.

", - "smithy.api#xmlName": "deviceIndex" - } - }, - "NetworkCardIndex": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "NetworkCardIndex", - "smithy.api#documentation": "

The index of the network card.

", - "smithy.api#xmlName": "networkCardIndex" - } - }, - "InstanceId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#xmlName": "instanceId" - } - }, - "InstanceOwnerId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "InstanceOwnerId", - "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the instance.

", - "smithy.api#xmlName": "instanceOwnerId" - } - }, - "Status": { - "target": "com.amazonaws.ec2#AttachmentStatus", - "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The attachment state.

", - "smithy.api#xmlName": "status" - } - }, - "EnaSrdSpecification": { - "target": "com.amazonaws.ec2#AttachmentEnaSrdSpecification", + "AutoRecovery": { + "target": "com.amazonaws.ec2#LaunchTemplateAutoRecoveryState", "traits": { - "aws.protocols#ec2QueryName": "EnaSrdSpecification", - "smithy.api#documentation": "

Configures ENA Express for the network interface that this action attaches to the instance.

", - "smithy.api#xmlName": "enaSrdSpecification" + "aws.protocols#ec2QueryName": "AutoRecovery", + "smithy.api#documentation": "

Disables the automatic recovery behavior of your instance or sets it to\n default.

", + "smithy.api#xmlName": "autoRecovery" } } }, "traits": { - "smithy.api#documentation": "

Describes a network interface attachment.

" + "smithy.api#documentation": "

The maintenance options of your instance.

" } }, - "com.amazonaws.ec2#NetworkInterfaceAttachmentChanges": { + "com.amazonaws.ec2#LaunchTemplateInstanceMaintenanceOptionsRequest": { "type": "structure", "members": { - "AttachmentId": { - "target": "com.amazonaws.ec2#NetworkInterfaceAttachmentId", - "traits": { - "aws.protocols#ec2QueryName": "AttachmentId", - "smithy.api#documentation": "

The ID of the network interface attachment.

", - "smithy.api#xmlName": "attachmentId" - } - }, - "DeleteOnTermination": { - "target": "com.amazonaws.ec2#Boolean", + "AutoRecovery": { + "target": "com.amazonaws.ec2#LaunchTemplateAutoRecoveryState", "traits": { - "aws.protocols#ec2QueryName": "DeleteOnTermination", - "smithy.api#documentation": "

Indicates whether the network interface is deleted when the instance is terminated.

", - "smithy.api#xmlName": "deleteOnTermination" + "smithy.api#documentation": "

Disables the automatic recovery behavior of your instance or sets it to default. For\n more information, see Simplified automatic recovery.

" } } }, "traits": { - "smithy.api#documentation": "

Describes an attachment change.

" + "smithy.api#documentation": "

The maintenance options of your instance.

" } }, - "com.amazonaws.ec2#NetworkInterfaceAttachmentId": { - "type": "string" - }, - "com.amazonaws.ec2#NetworkInterfaceAttribute": { - "type": "enum", + "com.amazonaws.ec2#LaunchTemplateInstanceMarketOptions": { + "type": "structure", "members": { - "description": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "description" - } - }, - "groupSet": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "groupSet" - } - }, - "sourceDestCheck": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "sourceDestCheck" - } - }, - "attachment": { - "target": "smithy.api#Unit", + "MarketType": { + "target": "com.amazonaws.ec2#MarketType", "traits": { - "smithy.api#enumValue": "attachment" + "aws.protocols#ec2QueryName": "MarketType", + "smithy.api#documentation": "

The market type.

", + "smithy.api#xmlName": "marketType" } }, - "associatePublicIpAddress": { - "target": "smithy.api#Unit", + "SpotOptions": { + "target": "com.amazonaws.ec2#LaunchTemplateSpotMarketOptions", "traits": { - "smithy.api#enumValue": "associatePublicIpAddress" + "aws.protocols#ec2QueryName": "SpotOptions", + "smithy.api#documentation": "

The options for Spot Instances.

", + "smithy.api#xmlName": "spotOptions" } } + }, + "traits": { + "smithy.api#documentation": "

The market (purchasing) option for the instances.

" } }, - "com.amazonaws.ec2#NetworkInterfaceCount": { + "com.amazonaws.ec2#LaunchTemplateInstanceMarketOptionsRequest": { "type": "structure", "members": { - "Min": { - "target": "com.amazonaws.ec2#Integer", + "MarketType": { + "target": "com.amazonaws.ec2#MarketType", "traits": { - "aws.protocols#ec2QueryName": "Min", - "smithy.api#documentation": "

The minimum number of network interfaces. If this parameter is not specified, there is no\n minimum limit.

", - "smithy.api#xmlName": "min" + "smithy.api#documentation": "

The market type.

" } }, - "Max": { - "target": "com.amazonaws.ec2#Integer", + "SpotOptions": { + "target": "com.amazonaws.ec2#LaunchTemplateSpotMarketOptionsRequest", "traits": { - "aws.protocols#ec2QueryName": "Max", - "smithy.api#documentation": "

The maximum number of network interfaces. If this parameter is not specified, there is no\n maximum limit.

", - "smithy.api#xmlName": "max" + "smithy.api#documentation": "

The options for Spot Instances.

" } } }, "traits": { - "smithy.api#documentation": "

The minimum and maximum number of network interfaces.

" + "smithy.api#documentation": "

The market (purchasing) option for the instances.

" } }, - "com.amazonaws.ec2#NetworkInterfaceCountRequest": { - "type": "structure", + "com.amazonaws.ec2#LaunchTemplateInstanceMetadataEndpointState": { + "type": "enum", "members": { - "Min": { - "target": "com.amazonaws.ec2#Integer", + "disabled": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The minimum number of network interfaces. To specify no minimum limit, omit this\n parameter.

" + "smithy.api#enumValue": "disabled" } }, - "Max": { - "target": "com.amazonaws.ec2#Integer", + "enabled": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The maximum number of network interfaces. To specify no maximum limit, omit this\n parameter.

" + "smithy.api#enumValue": "enabled" } } - }, - "traits": { - "smithy.api#documentation": "

The minimum and maximum number of network interfaces.

" } }, - "com.amazonaws.ec2#NetworkInterfaceCreationType": { - "type": "enum", + "com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptions": { + "type": "structure", "members": { - "efa": { - "target": "smithy.api#Unit", + "State": { + "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptionsState", "traits": { - "smithy.api#enumValue": "efa" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the metadata option changes.

\n

\n pending - The metadata options are being updated and the instance is not\n ready to process metadata traffic with the new selection.

\n

\n applied - The metadata options have been successfully applied on the\n instance.

", + "smithy.api#xmlName": "state" } }, - "branch": { - "target": "smithy.api#Unit", + "HttpTokens": { + "target": "com.amazonaws.ec2#LaunchTemplateHttpTokensState", "traits": { - "smithy.api#enumValue": "branch" + "aws.protocols#ec2QueryName": "HttpTokens", + "smithy.api#documentation": "

Indicates whether IMDSv2 is required.

\n ", + "smithy.api#xmlName": "httpTokens" } }, - "trunk": { - "target": "smithy.api#Unit", + "HttpPutResponseHopLimit": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "trunk" + "aws.protocols#ec2QueryName": "HttpPutResponseHopLimit", + "smithy.api#documentation": "

The desired HTTP PUT response hop limit for instance metadata requests. The larger the\n number, the further instance metadata requests can travel.

\n

Possible values: Integers from 1 to 64

", + "smithy.api#xmlName": "httpPutResponseHopLimit" } - } - } - }, - "com.amazonaws.ec2#NetworkInterfaceId": { - "type": "string" - }, - "com.amazonaws.ec2#NetworkInterfaceIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#NetworkInterfaceId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#NetworkInterfaceIdSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#NetworkInterfaceIpv6Address": { - "type": "structure", - "members": { - "Ipv6Address": { - "target": "com.amazonaws.ec2#String", + }, + "HttpEndpoint": { + "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataEndpointState", "traits": { - "aws.protocols#ec2QueryName": "Ipv6Address", - "smithy.api#documentation": "

The IPv6 address.

", - "smithy.api#xmlName": "ipv6Address" + "aws.protocols#ec2QueryName": "HttpEndpoint", + "smithy.api#documentation": "

Enables or disables the HTTP metadata endpoint on your instances. If the parameter is\n not specified, the default state is enabled.

\n \n

If you specify a value of disabled, you will not be able to access\n your instance metadata.

\n
", + "smithy.api#xmlName": "httpEndpoint" } }, - "IsPrimaryIpv6": { - "target": "com.amazonaws.ec2#Boolean", + "HttpProtocolIpv6": { + "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataProtocolIpv6", "traits": { - "aws.protocols#ec2QueryName": "IsPrimaryIpv6", - "smithy.api#documentation": "

Determines if an IPv6 address associated with a network interface is the primary IPv6 address. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. For more information, see ModifyNetworkInterfaceAttribute.

", - "smithy.api#xmlName": "isPrimaryIpv6" + "aws.protocols#ec2QueryName": "HttpProtocolIpv6", + "smithy.api#documentation": "

Enables or disables the IPv6 endpoint for the instance metadata service.

\n

Default: disabled\n

", + "smithy.api#xmlName": "httpProtocolIpv6" + } + }, + "InstanceMetadataTags": { + "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataTagsState", + "traits": { + "aws.protocols#ec2QueryName": "InstanceMetadataTags", + "smithy.api#documentation": "

Set to enabled to allow access to instance tags from the instance\n metadata. Set to disabled to turn off access to instance tags from the\n instance metadata. For more information, see View tags for your EC2\n instances using instance metadata.

\n

Default: disabled\n

", + "smithy.api#xmlName": "instanceMetadataTags" } } }, "traits": { - "smithy.api#documentation": "

Describes an IPv6 address associated with a network interface.

" - } - }, - "com.amazonaws.ec2#NetworkInterfaceIpv6AddressesList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#NetworkInterfaceIpv6Address", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#NetworkInterfaceList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#NetworkInterface", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

The metadata options for the instance. For more information, see Use\n instance metadata to manage your EC2 instance in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#NetworkInterfacePermission": { + "com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptionsRequest": { "type": "structure", "members": { - "NetworkInterfacePermissionId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfacePermissionId", - "smithy.api#documentation": "

The ID of the network interface permission.

", - "smithy.api#xmlName": "networkInterfacePermissionId" - } - }, - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#String", + "HttpTokens": { + "target": "com.amazonaws.ec2#LaunchTemplateHttpTokensState", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceId", - "smithy.api#documentation": "

The ID of the network interface.

", - "smithy.api#xmlName": "networkInterfaceId" + "smithy.api#documentation": "

Indicates whether IMDSv2 is required.

\n \n

Default: If the value of ImdsSupport for the Amazon Machine Image (AMI)\n for your instance is v2.0, the default is required.

" } }, - "AwsAccountId": { - "target": "com.amazonaws.ec2#String", + "HttpPutResponseHopLimit": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "AwsAccountId", - "smithy.api#documentation": "

The Amazon Web Services account ID.

", - "smithy.api#xmlName": "awsAccountId" + "smithy.api#documentation": "

The desired HTTP PUT response hop limit for instance metadata requests. The larger the\n number, the further instance metadata requests can travel.

\n

Default: 1\n

\n

Possible values: Integers from 1 to 64

" } }, - "AwsService": { - "target": "com.amazonaws.ec2#String", + "HttpEndpoint": { + "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataEndpointState", "traits": { - "aws.protocols#ec2QueryName": "AwsService", - "smithy.api#documentation": "

The Amazon Web Service.

", - "smithy.api#xmlName": "awsService" + "smithy.api#documentation": "

Enables or disables the HTTP metadata endpoint on your instances. If the parameter is\n not specified, the default state is enabled.

\n \n

If you specify a value of disabled, you will not be able to access\n your instance metadata.

\n
" } }, - "Permission": { - "target": "com.amazonaws.ec2#InterfacePermissionType", + "HttpProtocolIpv6": { + "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataProtocolIpv6", "traits": { - "aws.protocols#ec2QueryName": "Permission", - "smithy.api#documentation": "

The type of permission.

", - "smithy.api#xmlName": "permission" + "smithy.api#documentation": "

Enables or disables the IPv6 endpoint for the instance metadata service.

\n

Default: disabled\n

" } }, - "PermissionState": { - "target": "com.amazonaws.ec2#NetworkInterfacePermissionState", + "InstanceMetadataTags": { + "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataTagsState", "traits": { - "aws.protocols#ec2QueryName": "PermissionState", - "smithy.api#documentation": "

Information about the state of the permission.

", - "smithy.api#xmlName": "permissionState" + "smithy.api#documentation": "

Set to enabled to allow access to instance tags from the instance\n metadata. Set to disabled to turn off access to instance tags from the\n instance metadata. For more information, see View tags for your EC2\n instances using instance metadata.

\n

Default: disabled\n

" } } }, "traits": { - "smithy.api#documentation": "

Describes a permission for a network interface.

" - } - }, - "com.amazonaws.ec2#NetworkInterfacePermissionId": { - "type": "string" - }, - "com.amazonaws.ec2#NetworkInterfacePermissionIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#NetworkInterfacePermissionId" - } - }, - "com.amazonaws.ec2#NetworkInterfacePermissionList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#NetworkInterfacePermission", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

The metadata options for the instance. For more information, see Use\n instance metadata to manage your EC2 instance in the\n Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#NetworkInterfacePermissionState": { - "type": "structure", + "com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptionsState": { + "type": "enum", "members": { - "State": { - "target": "com.amazonaws.ec2#NetworkInterfacePermissionStateCode", + "pending": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the permission.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "pending" } }, - "StatusMessage": { - "target": "com.amazonaws.ec2#String", + "applied": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "StatusMessage", - "smithy.api#documentation": "

A status message, if applicable.

", - "smithy.api#xmlName": "statusMessage" + "smithy.api#enumValue": "applied" } } - }, - "traits": { - "smithy.api#documentation": "

Describes the state of a network interface permission.

" } }, - "com.amazonaws.ec2#NetworkInterfacePermissionStateCode": { + "com.amazonaws.ec2#LaunchTemplateInstanceMetadataProtocolIpv6": { "type": "enum", "members": { - "pending": { + "disabled": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "pending" + "smithy.api#enumValue": "disabled" } }, - "granted": { + "enabled": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "granted" + "smithy.api#enumValue": "enabled" } - }, - "revoking": { + } + } + }, + "com.amazonaws.ec2#LaunchTemplateInstanceMetadataTagsState": { + "type": "enum", + "members": { + "disabled": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "revoking" + "smithy.api#enumValue": "disabled" } }, - "revoked": { + "enabled": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "revoked" + "smithy.api#enumValue": "enabled" } } } }, - "com.amazonaws.ec2#NetworkInterfacePrivateIpAddress": { + "com.amazonaws.ec2#LaunchTemplateInstanceNetworkInterfaceSpecification": { "type": "structure", "members": { - "Association": { - "target": "com.amazonaws.ec2#NetworkInterfaceAssociation", + "AssociateCarrierIpAddress": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Association", - "smithy.api#documentation": "

The association information for an Elastic IP address (IPv4) associated with the network interface.

", - "smithy.api#xmlName": "association" + "aws.protocols#ec2QueryName": "AssociateCarrierIpAddress", + "smithy.api#documentation": "

Indicates whether to associate a Carrier IP address with eth0 for a new network\n interface.

\n

Use this option when you launch an instance in a Wavelength Zone and want to associate\n a Carrier IP address with the network interface. For more information about Carrier IP\n addresses, see Carrier IP address in the Wavelength Developer\n Guide.

", + "smithy.api#xmlName": "associateCarrierIpAddress" } }, - "Primary": { + "AssociatePublicIpAddress": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Primary", - "smithy.api#documentation": "

Indicates whether this IPv4 address is the primary private IPv4 address of the network interface.

", - "smithy.api#xmlName": "primary" + "aws.protocols#ec2QueryName": "AssociatePublicIpAddress", + "smithy.api#documentation": "

Indicates whether to associate a public IPv4 address with eth0 for a new network\n interface.

\n

Amazon Web Services charges for all public IPv4 addresses, including public IPv4 addresses \nassociated with running instances and Elastic IP addresses. For more information, see the Public IPv4 Address tab on the Amazon VPC pricing page.

", + "smithy.api#xmlName": "associatePublicIpAddress" } }, - "PrivateDnsName": { - "target": "com.amazonaws.ec2#String", + "DeleteOnTermination": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "PrivateDnsName", - "smithy.api#documentation": "

The private DNS name.

", - "smithy.api#xmlName": "privateDnsName" + "aws.protocols#ec2QueryName": "DeleteOnTermination", + "smithy.api#documentation": "

Indicates whether the network interface is deleted when the instance is\n terminated.

", + "smithy.api#xmlName": "deleteOnTermination" } }, - "PrivateIpAddress": { + "Description": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PrivateIpAddress", - "smithy.api#documentation": "

The private IPv4 address.

", - "smithy.api#xmlName": "privateIpAddress" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description for the network interface.

", + "smithy.api#xmlName": "description" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the private IPv4 address of a network interface.

" - } - }, - "com.amazonaws.ec2#NetworkInterfacePrivateIpAddressList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#NetworkInterfacePrivateIpAddress", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#NetworkInterfaceStatus": { - "type": "enum", - "members": { - "available": { - "target": "smithy.api#Unit", + }, + "DeviceIndex": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "available" + "aws.protocols#ec2QueryName": "DeviceIndex", + "smithy.api#documentation": "

The device index for the network interface attachment.

", + "smithy.api#xmlName": "deviceIndex" } }, - "associated": { - "target": "smithy.api#Unit", + "Groups": { + "target": "com.amazonaws.ec2#GroupIdStringList", "traits": { - "smithy.api#enumValue": "associated" + "aws.protocols#ec2QueryName": "GroupSet", + "smithy.api#documentation": "

The IDs of one or more security groups.

", + "smithy.api#xmlName": "groupSet" } }, - "attaching": { - "target": "smithy.api#Unit", + "InterfaceType": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "attaching" + "aws.protocols#ec2QueryName": "InterfaceType", + "smithy.api#documentation": "

The type of network interface.

", + "smithy.api#xmlName": "interfaceType" } }, - "in_use": { - "target": "smithy.api#Unit", + "Ipv6AddressCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "in-use" + "aws.protocols#ec2QueryName": "Ipv6AddressCount", + "smithy.api#documentation": "

The number of IPv6 addresses for the network interface.

", + "smithy.api#xmlName": "ipv6AddressCount" } }, - "detaching": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "detaching" - } - } - } - }, - "com.amazonaws.ec2#NetworkInterfaceType": { - "type": "enum", - "members": { - "interface": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "interface" - } - }, - "natGateway": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "natGateway" - } - }, - "efa": { - "target": "smithy.api#Unit", + "Ipv6Addresses": { + "target": "com.amazonaws.ec2#InstanceIpv6AddressList", "traits": { - "smithy.api#enumValue": "efa" + "aws.protocols#ec2QueryName": "Ipv6AddressesSet", + "smithy.api#documentation": "

The IPv6 addresses for the network interface.

", + "smithy.api#xmlName": "ipv6AddressesSet" } }, - "trunk": { - "target": "smithy.api#Unit", + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", "traits": { - "smithy.api#enumValue": "trunk" + "aws.protocols#ec2QueryName": "NetworkInterfaceId", + "smithy.api#documentation": "

The ID of the network interface.

", + "smithy.api#xmlName": "networkInterfaceId" } }, - "load_balancer": { - "target": "smithy.api#Unit", + "PrivateIpAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "load_balancer" + "aws.protocols#ec2QueryName": "PrivateIpAddress", + "smithy.api#documentation": "

The primary private IPv4 address of the network interface.

", + "smithy.api#xmlName": "privateIpAddress" } }, - "network_load_balancer": { - "target": "smithy.api#Unit", + "PrivateIpAddresses": { + "target": "com.amazonaws.ec2#PrivateIpAddressSpecificationList", "traits": { - "smithy.api#enumValue": "network_load_balancer" + "aws.protocols#ec2QueryName": "PrivateIpAddressesSet", + "smithy.api#documentation": "

One or more private IPv4 addresses.

", + "smithy.api#xmlName": "privateIpAddressesSet" } }, - "vpc_endpoint": { - "target": "smithy.api#Unit", + "SecondaryPrivateIpAddressCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "vpc_endpoint" + "aws.protocols#ec2QueryName": "SecondaryPrivateIpAddressCount", + "smithy.api#documentation": "

The number of secondary private IPv4 addresses for the network interface.

", + "smithy.api#xmlName": "secondaryPrivateIpAddressCount" } }, - "branch": { - "target": "smithy.api#Unit", + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", "traits": { - "smithy.api#enumValue": "branch" + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet for the network interface.

", + "smithy.api#xmlName": "subnetId" } }, - "transit_gateway": { - "target": "smithy.api#Unit", + "NetworkCardIndex": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "transit_gateway" + "aws.protocols#ec2QueryName": "NetworkCardIndex", + "smithy.api#documentation": "

The index of the network card.

", + "smithy.api#xmlName": "networkCardIndex" } }, - "lambda": { - "target": "smithy.api#Unit", + "Ipv4Prefixes": { + "target": "com.amazonaws.ec2#Ipv4PrefixListResponse", "traits": { - "smithy.api#enumValue": "lambda" + "aws.protocols#ec2QueryName": "Ipv4PrefixSet", + "smithy.api#documentation": "

One or more IPv4 prefixes assigned to the network interface.

", + "smithy.api#xmlName": "ipv4PrefixSet" } }, - "quicksight": { - "target": "smithy.api#Unit", + "Ipv4PrefixCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "quicksight" + "aws.protocols#ec2QueryName": "Ipv4PrefixCount", + "smithy.api#documentation": "

The number of IPv4 prefixes that Amazon Web Services automatically assigned to the network\n interface.

", + "smithy.api#xmlName": "ipv4PrefixCount" } }, - "global_accelerator_managed": { - "target": "smithy.api#Unit", + "Ipv6Prefixes": { + "target": "com.amazonaws.ec2#Ipv6PrefixListResponse", "traits": { - "smithy.api#enumValue": "global_accelerator_managed" + "aws.protocols#ec2QueryName": "Ipv6PrefixSet", + "smithy.api#documentation": "

One or more IPv6 prefixes assigned to the network interface.

", + "smithy.api#xmlName": "ipv6PrefixSet" } }, - "api_gateway_managed": { - "target": "smithy.api#Unit", + "Ipv6PrefixCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "api_gateway_managed" + "aws.protocols#ec2QueryName": "Ipv6PrefixCount", + "smithy.api#documentation": "

The number of IPv6 prefixes that Amazon Web Services automatically assigned to the network\n interface.

", + "smithy.api#xmlName": "ipv6PrefixCount" } }, - "gateway_load_balancer": { - "target": "smithy.api#Unit", + "PrimaryIpv6": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "gateway_load_balancer" + "aws.protocols#ec2QueryName": "PrimaryIpv6", + "smithy.api#documentation": "

The primary IPv6 address of the network interface. When you enable an IPv6 GUA address\n to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the\n instance is terminated or the network interface is detached. For more information about\n primary IPv6 addresses, see RunInstances.

", + "smithy.api#xmlName": "primaryIpv6" } }, - "gateway_load_balancer_endpoint": { - "target": "smithy.api#Unit", + "EnaSrdSpecification": { + "target": "com.amazonaws.ec2#LaunchTemplateEnaSrdSpecification", "traits": { - "smithy.api#enumValue": "gateway_load_balancer_endpoint" + "aws.protocols#ec2QueryName": "EnaSrdSpecification", + "smithy.api#documentation": "

Contains the ENA Express settings for instances launched from your launch\n template.

", + "smithy.api#xmlName": "enaSrdSpecification" } }, - "iot_rules_managed": { - "target": "smithy.api#Unit", + "ConnectionTrackingSpecification": { + "target": "com.amazonaws.ec2#ConnectionTrackingSpecification", "traits": { - "smithy.api#enumValue": "iot_rules_managed" + "aws.protocols#ec2QueryName": "ConnectionTrackingSpecification", + "smithy.api#documentation": "

A security group connection tracking specification that enables you to set the timeout\n for connection tracking on an Elastic network interface. For more information, see\n Idle connection tracking timeout in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "connectionTrackingSpecification" } }, - "aws_codestar_connections_managed": { - "target": "smithy.api#Unit", + "EnaQueueCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "aws_codestar_connections_managed" + "aws.protocols#ec2QueryName": "EnaQueueCount", + "smithy.api#documentation": "

The number of ENA queues created with the instance.

", + "smithy.api#xmlName": "enaQueueCount" } } + }, + "traits": { + "smithy.api#documentation": "

Describes a network interface.

" } }, - "com.amazonaws.ec2#NetworkNodesList": { + "com.amazonaws.ec2#LaunchTemplateInstanceNetworkInterfaceSpecificationList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#LaunchTemplateInstanceNetworkInterfaceSpecification", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#NetworkPerformance": { - "type": "string" - }, - "com.amazonaws.ec2#NeuronDeviceCoreCount": { - "type": "integer" - }, - "com.amazonaws.ec2#NeuronDeviceCoreInfo": { + "com.amazonaws.ec2#LaunchTemplateInstanceNetworkInterfaceSpecificationRequest": { "type": "structure", "members": { - "Count": { - "target": "com.amazonaws.ec2#NeuronDeviceCoreCount", + "AssociateCarrierIpAddress": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Count", - "smithy.api#documentation": "

The number of cores available to the neuron accelerator.

", - "smithy.api#xmlName": "count" + "smithy.api#documentation": "

Associates a Carrier IP address with eth0 for a new network interface.

\n

Use this option when you launch an instance in a Wavelength Zone and want to associate\n a Carrier IP address with the network interface. For more information about Carrier IP\n addresses, see Carrier IP addresses in the Wavelength Developer\n Guide.

" } }, - "Version": { - "target": "com.amazonaws.ec2#NeuronDeviceCoreVersion", + "AssociatePublicIpAddress": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Version", - "smithy.api#documentation": "

The version of the neuron accelerator.

", - "smithy.api#xmlName": "version" + "smithy.api#documentation": "

Associates a public IPv4 address with eth0 for a new network interface.

\n

Amazon Web Services charges for all public IPv4 addresses, including public IPv4 addresses \nassociated with running instances and Elastic IP addresses. For more information, see the Public IPv4 Address tab on the Amazon VPC pricing page.

" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the cores available to the neuron accelerator.

" - } - }, - "com.amazonaws.ec2#NeuronDeviceCoreVersion": { - "type": "integer" - }, - "com.amazonaws.ec2#NeuronDeviceCount": { - "type": "integer" - }, - "com.amazonaws.ec2#NeuronDeviceInfo": { - "type": "structure", - "members": { - "Count": { - "target": "com.amazonaws.ec2#NeuronDeviceCount", + }, + "DeleteOnTermination": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "Count", - "smithy.api#documentation": "

The number of neuron accelerators for the instance type.

", - "smithy.api#xmlName": "count" + "smithy.api#documentation": "

Indicates whether the network interface is deleted when the instance is\n terminated.

" } }, - "Name": { - "target": "com.amazonaws.ec2#NeuronDeviceName", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Name", - "smithy.api#documentation": "

The name of the neuron accelerator.

", - "smithy.api#xmlName": "name" + "smithy.api#documentation": "

A description for the network interface.

" } }, - "CoreInfo": { - "target": "com.amazonaws.ec2#NeuronDeviceCoreInfo", + "DeviceIndex": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "CoreInfo", - "smithy.api#documentation": "

Describes the cores available to each neuron accelerator.

", - "smithy.api#xmlName": "coreInfo" + "smithy.api#documentation": "

The device index for the network interface attachment. The primary network interface\n has a device index of 0. Each network interface is of type interface, you\n must specify a device index. If you create a launch template that includes secondary\n network interfaces but not a primary network interface, then you must add a primary\n network interface as a launch parameter when you launch an instance from the\n template.

" } }, - "MemoryInfo": { - "target": "com.amazonaws.ec2#NeuronDeviceMemoryInfo", + "Groups": { + "target": "com.amazonaws.ec2#SecurityGroupIdStringList", "traits": { - "aws.protocols#ec2QueryName": "MemoryInfo", - "smithy.api#documentation": "

Describes the memory available to each neuron accelerator.

", - "smithy.api#xmlName": "memoryInfo" + "smithy.api#documentation": "

The IDs of one or more security groups.

", + "smithy.api#xmlName": "SecurityGroupId" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the neuron accelerators for the instance type.

" - } - }, - "com.amazonaws.ec2#NeuronDeviceInfoList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#NeuronDeviceInfo", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#NeuronDeviceMemoryInfo": { - "type": "structure", - "members": { - "SizeInMiB": { - "target": "com.amazonaws.ec2#NeuronDeviceMemorySize", + }, + "InterfaceType": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SizeInMiB", - "smithy.api#documentation": "

The size of the memory available to the neuron accelerator, in MiB.

", - "smithy.api#xmlName": "sizeInMiB" + "smithy.api#documentation": "

The type of network interface. To create an Elastic Fabric Adapter (EFA), specify\n efa or efa. For more information, see Elastic Fabric Adapter for AI/ML\n and HPC workloads on Amazon EC2 in the\n Amazon EC2 User Guide.

\n

If you are not creating an EFA, specify interface or omit this\n parameter.

\n

If you specify efa-only, do not assign any IP addresses to the network\n interface. EFA-only network interfaces do not support IP addresses.

\n

Valid values: interface | efa | efa-only\n

" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the memory available to the neuron accelerator.

" - } - }, - "com.amazonaws.ec2#NeuronDeviceMemorySize": { - "type": "integer" - }, - "com.amazonaws.ec2#NeuronDeviceName": { - "type": "string" - }, - "com.amazonaws.ec2#NeuronInfo": { - "type": "structure", - "members": { - "NeuronDevices": { - "target": "com.amazonaws.ec2#NeuronDeviceInfoList", + }, + "Ipv6AddressCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "NeuronDevices", - "smithy.api#documentation": "

Describes the neuron accelerators for the instance type.

", - "smithy.api#xmlName": "neuronDevices" + "smithy.api#documentation": "

The number of IPv6 addresses to assign to a network interface. Amazon EC2\n automatically selects the IPv6 addresses from the subnet range. You can't use this\n option if specifying specific IPv6 addresses.

" } }, - "TotalNeuronDeviceMemoryInMiB": { - "target": "com.amazonaws.ec2#TotalNeuronMemory", + "Ipv6Addresses": { + "target": "com.amazonaws.ec2#InstanceIpv6AddressListRequest", "traits": { - "aws.protocols#ec2QueryName": "TotalNeuronDeviceMemoryInMiB", - "smithy.api#documentation": "

The total size of the memory for the neuron accelerators for the instance type, in MiB.

", - "smithy.api#xmlName": "totalNeuronDeviceMemoryInMiB" + "smithy.api#documentation": "

One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You\n can't use this option if you're specifying a number of IPv6 addresses.

" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the neuron accelerators for the instance type.

" - } - }, - "com.amazonaws.ec2#NewDhcpConfiguration": { - "type": "structure", - "members": { - "Key": { + }, + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", + "traits": { + "smithy.api#documentation": "

The ID of the network interface.

" + } + }, + "PrivateIpAddress": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Key", - "smithy.api#documentation": "

The name of a DHCP option.

", - "smithy.api#xmlName": "key" + "smithy.api#documentation": "

The primary private IPv4 address of the network interface.

" } }, - "Values": { - "target": "com.amazonaws.ec2#ValueStringList", + "PrivateIpAddresses": { + "target": "com.amazonaws.ec2#PrivateIpAddressSpecificationList", "traits": { - "smithy.api#documentation": "

The values for the DHCP option.

", - "smithy.api#xmlName": "Value" + "smithy.api#documentation": "

One or more private IPv4 addresses.

" + } + }, + "SecondaryPrivateIpAddressCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The number of secondary private IPv4 addresses to assign to a network\n interface.

" + } + }, + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", + "traits": { + "smithy.api#documentation": "

The ID of the subnet for the network interface.

" + } + }, + "NetworkCardIndex": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The index of the network card. Some instance types support multiple network cards. The\n primary network interface must be assigned to network card index 0. The default is\n network card index 0.

" + } + }, + "Ipv4Prefixes": { + "target": "com.amazonaws.ec2#Ipv4PrefixList", + "traits": { + "smithy.api#documentation": "

One or more IPv4 prefixes to be assigned to the network interface. You cannot use this\n option if you use the Ipv4PrefixCount option.

", + "smithy.api#xmlName": "Ipv4Prefix" + } + }, + "Ipv4PrefixCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The number of IPv4 prefixes to be automatically assigned to the network interface. You\n cannot use this option if you use the Ipv4Prefix option.

" + } + }, + "Ipv6Prefixes": { + "target": "com.amazonaws.ec2#Ipv6PrefixList", + "traits": { + "smithy.api#documentation": "

One or more IPv6 prefixes to be assigned to the network interface. You cannot use this\n option if you use the Ipv6PrefixCount option.

", + "smithy.api#xmlName": "Ipv6Prefix" + } + }, + "Ipv6PrefixCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The number of IPv6 prefixes to be automatically assigned to the network interface. You\n cannot use this option if you use the Ipv6Prefix option.

" + } + }, + "PrimaryIpv6": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

The primary IPv6 address of the network interface. When you enable an IPv6 GUA address\n to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the\n instance is terminated or the network interface is detached. For more information about\n primary IPv6 addresses, see RunInstances.

" + } + }, + "EnaSrdSpecification": { + "target": "com.amazonaws.ec2#EnaSrdSpecificationRequest", + "traits": { + "smithy.api#documentation": "

Configure ENA Express settings for your launch template.

" + } + }, + "ConnectionTrackingSpecification": { + "target": "com.amazonaws.ec2#ConnectionTrackingSpecificationRequest", + "traits": { + "smithy.api#documentation": "

A security group connection tracking specification that enables you to set the timeout\n for connection tracking on an Elastic network interface. For more information, see\n Idle connection tracking timeout in the\n Amazon EC2 User Guide.

" + } + }, + "EnaQueueCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The number of ENA queues to be created with the instance.

" } } }, "traits": { - "smithy.api#documentation": "

Describes a DHCP configuration option.

" + "smithy.api#documentation": "

The parameters for a network interface.

" } }, - "com.amazonaws.ec2#NewDhcpConfigurationList": { + "com.amazonaws.ec2#LaunchTemplateInstanceNetworkInterfaceSpecificationRequestList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#NewDhcpConfiguration", + "target": "com.amazonaws.ec2#LaunchTemplateInstanceNetworkInterfaceSpecificationRequest", "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#NextToken": { - "type": "string" - }, - "com.amazonaws.ec2#NitroEnclavesSupport": { - "type": "enum", - "members": { - "UNSUPPORTED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "unsupported" - } - }, - "SUPPORTED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "supported" - } + "smithy.api#xmlName": "InstanceNetworkInterfaceSpecification" } } }, - "com.amazonaws.ec2#NitroTpmInfo": { + "com.amazonaws.ec2#LaunchTemplateLicenseConfiguration": { "type": "structure", "members": { - "SupportedVersions": { - "target": "com.amazonaws.ec2#NitroTpmSupportedVersionsList", + "LicenseConfigurationArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SupportedVersions", - "smithy.api#documentation": "

Indicates the supported NitroTPM versions.

", - "smithy.api#xmlName": "supportedVersions" + "aws.protocols#ec2QueryName": "LicenseConfigurationArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the license configuration.

", + "smithy.api#xmlName": "licenseConfigurationArn" } } }, "traits": { - "smithy.api#documentation": "

Describes the supported NitroTPM versions for the instance type.

" + "smithy.api#documentation": "

Describes a license configuration.

" } }, - "com.amazonaws.ec2#NitroTpmSupport": { - "type": "enum", + "com.amazonaws.ec2#LaunchTemplateLicenseConfigurationRequest": { + "type": "structure", "members": { - "UNSUPPORTED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "unsupported" - } - }, - "SUPPORTED": { - "target": "smithy.api#Unit", + "LicenseConfigurationArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "supported" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the license configuration.

" } } + }, + "traits": { + "smithy.api#documentation": "

Describes a license configuration.

" } }, - "com.amazonaws.ec2#NitroTpmSupportedVersionType": { - "type": "string" - }, - "com.amazonaws.ec2#NitroTpmSupportedVersionsList": { + "com.amazonaws.ec2#LaunchTemplateLicenseList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#NitroTpmSupportedVersionType", + "target": "com.amazonaws.ec2#LaunchTemplateLicenseConfiguration", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#OccurrenceDayRequestSet": { + "com.amazonaws.ec2#LaunchTemplateLicenseSpecificationListRequest": { "type": "list", "member": { - "target": "com.amazonaws.ec2#Integer", + "target": "com.amazonaws.ec2#LaunchTemplateLicenseConfigurationRequest", "traits": { - "smithy.api#xmlName": "OccurenceDay" + "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#OccurrenceDaySet": { + "com.amazonaws.ec2#LaunchTemplateName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 3, + "max": 128 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\(\\)\\.\\-/_]+$" + } + }, + "com.amazonaws.ec2#LaunchTemplateNameStringList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#Integer", + "target": "com.amazonaws.ec2#LaunchTemplateName", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#OfferingClassType": { - "type": "enum", + "com.amazonaws.ec2#LaunchTemplateNetworkPerformanceOptions": { + "type": "structure", "members": { - "STANDARD": { - "target": "smithy.api#Unit", + "BandwidthWeighting": { + "target": "com.amazonaws.ec2#InstanceBandwidthWeighting", "traits": { - "smithy.api#enumValue": "standard" + "aws.protocols#ec2QueryName": "BandwidthWeighting", + "smithy.api#documentation": "

When you configure network bandwidth weighting, you can boost baseline bandwidth for\n either networking or EBS by up to 25%. The total available baseline bandwidth for your\n instance remains the same. The default option uses the standard bandwidth configuration\n for your instance type.

", + "smithy.api#xmlName": "bandwidthWeighting" } - }, - "CONVERTIBLE": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

With network performance options, you can adjust your bandwidth preferences to meet\n the needs of the workload that runs on your instance at launch.

" + } + }, + "com.amazonaws.ec2#LaunchTemplateNetworkPerformanceOptionsRequest": { + "type": "structure", + "members": { + "BandwidthWeighting": { + "target": "com.amazonaws.ec2#InstanceBandwidthWeighting", "traits": { - "smithy.api#enumValue": "convertible" + "smithy.api#documentation": "

Specify the bandwidth weighting option to boost the associated type of baseline\n bandwidth, as follows:

\n
\n
default
\n
\n

This option uses the standard bandwidth configuration for your instance\n type.

\n
\n
vpc-1
\n
\n

This option boosts your networking baseline bandwidth and reduces your EBS\n baseline bandwidth.

\n
\n
ebs-1
\n
\n

This option boosts your EBS baseline bandwidth and reduces your networking\n baseline bandwidth.

\n
\n
" } } + }, + "traits": { + "smithy.api#documentation": "

When you configure network performance options in your launch template, your instance\n is geared for performance improvements based on the workload that it runs as soon as\n it's available.

" } }, - "com.amazonaws.ec2#OfferingId": { - "type": "string" - }, - "com.amazonaws.ec2#OfferingTypeValues": { - "type": "enum", + "com.amazonaws.ec2#LaunchTemplateOverrides": { + "type": "structure", "members": { - "Heavy_Utilization": { - "target": "smithy.api#Unit", + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", "traits": { - "smithy.api#enumValue": "Heavy Utilization" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type.

", + "smithy.api#xmlName": "instanceType" } }, - "Medium_Utilization": { - "target": "smithy.api#Unit", + "SpotPrice": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "Medium Utilization" + "aws.protocols#ec2QueryName": "SpotPrice", + "smithy.api#documentation": "

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to \n increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

\n \n

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

\n
", + "smithy.api#xmlName": "spotPrice" } }, - "Light_Utilization": { - "target": "smithy.api#Unit", + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", "traits": { - "smithy.api#enumValue": "Light Utilization" + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet in which to launch the instances.

", + "smithy.api#xmlName": "subnetId" } }, - "No_Upfront": { - "target": "smithy.api#Unit", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "No Upfront" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone in which to launch the instances.

", + "smithy.api#xmlName": "availabilityZone" } }, - "Partial_Upfront": { - "target": "smithy.api#Unit", + "WeightedCapacity": { + "target": "com.amazonaws.ec2#Double", "traits": { - "smithy.api#enumValue": "Partial Upfront" + "aws.protocols#ec2QueryName": "WeightedCapacity", + "smithy.api#documentation": "

The number of units provided by the specified instance type. These are the same units\n that you chose to set the target capacity in terms of instances, or a performance\n characteristic such as vCPUs, memory, or I/O.

\n

If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the\n number of instances to the next whole number. If this value is not specified, the default\n is 1.

\n \n

When specifying weights, the price used in the lowestPrice and\n priceCapacityOptimized allocation strategies is per\n unit hour (where the instance price is divided by the specified\n weight). However, if all the specified weights are above the requested\n TargetCapacity, resulting in only 1 instance being launched, the price\n used is per instance hour.

\n
", + "smithy.api#xmlName": "weightedCapacity" } }, - "All_Upfront": { - "target": "smithy.api#Unit", + "Priority": { + "target": "com.amazonaws.ec2#Double", "traits": { - "smithy.api#enumValue": "All Upfront" + "aws.protocols#ec2QueryName": "Priority", + "smithy.api#documentation": "

The priority for the launch template override. The highest priority is launched\n first.

\n

If OnDemandAllocationStrategy is set to prioritized, Spot Fleet\n uses priority to determine which launch template override to use first in fulfilling\n On-Demand capacity.

\n

If the Spot AllocationStrategy is set to\n capacityOptimizedPrioritized, Spot Fleet uses priority on a best-effort basis\n to determine which launch template override to use in fulfilling Spot capacity, but\n optimizes for capacity first.

\n

Valid values are whole numbers starting at 0. The lower the number, the\n higher the priority. If no number is set, the launch template override has the lowest\n priority. You can set the same priority for different launch template overrides.

", + "smithy.api#xmlName": "priority" + } + }, + "InstanceRequirements": { + "target": "com.amazonaws.ec2#InstanceRequirements", + "traits": { + "aws.protocols#ec2QueryName": "InstanceRequirements", + "smithy.api#documentation": "

The instance requirements. When you specify instance requirements, Amazon EC2 will identify\n instance types with the provided requirements, and then use your On-Demand and Spot\n allocation strategies to launch instances from these instance types, in the same way as\n when you specify a list of instance types.

\n \n

If you specify InstanceRequirements, you can't specify\n InstanceType.

\n
", + "smithy.api#xmlName": "instanceRequirements" } } + }, + "traits": { + "smithy.api#documentation": "

Describes overrides for a launch template.

" } }, - "com.amazonaws.ec2#OidcOptions": { + "com.amazonaws.ec2#LaunchTemplateOverridesList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#LaunchTemplateOverrides", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#LaunchTemplatePlacement": { "type": "structure", "members": { - "Issuer": { + "AvailabilityZone": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Issuer", - "smithy.api#documentation": "

The OIDC issuer.

", - "smithy.api#xmlName": "issuer" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone of the instance.

", + "smithy.api#xmlName": "availabilityZone" } }, - "AuthorizationEndpoint": { - "target": "com.amazonaws.ec2#String", + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#AvailabilityZoneId", "traits": { - "aws.protocols#ec2QueryName": "AuthorizationEndpoint", - "smithy.api#documentation": "

The OIDC authorization endpoint.

", - "smithy.api#xmlName": "authorizationEndpoint" + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone of the instance.

", + "smithy.api#xmlName": "availabilityZoneId" } }, - "TokenEndpoint": { + "Affinity": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TokenEndpoint", - "smithy.api#documentation": "

The OIDC token endpoint.

", - "smithy.api#xmlName": "tokenEndpoint" + "aws.protocols#ec2QueryName": "Affinity", + "smithy.api#documentation": "

The affinity setting for the instance on the Dedicated Host.

", + "smithy.api#xmlName": "affinity" } }, - "UserInfoEndpoint": { + "GroupName": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "UserInfoEndpoint", - "smithy.api#documentation": "

The OIDC user info endpoint.

", - "smithy.api#xmlName": "userInfoEndpoint" + "aws.protocols#ec2QueryName": "GroupName", + "smithy.api#documentation": "

The name of the placement group for the instance.

", + "smithy.api#xmlName": "groupName" } }, - "ClientId": { + "HostId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ClientId", - "smithy.api#documentation": "

The client identifier.

", - "smithy.api#xmlName": "clientId" + "aws.protocols#ec2QueryName": "HostId", + "smithy.api#documentation": "

The ID of the Dedicated Host for the instance.

", + "smithy.api#xmlName": "hostId" } }, - "ClientSecret": { - "target": "com.amazonaws.ec2#ClientSecretType", + "Tenancy": { + "target": "com.amazonaws.ec2#Tenancy", "traits": { - "aws.protocols#ec2QueryName": "ClientSecret", - "smithy.api#documentation": "

The client secret.

", - "smithy.api#xmlName": "clientSecret" + "aws.protocols#ec2QueryName": "Tenancy", + "smithy.api#documentation": "

The tenancy of the instance. An instance with a tenancy of dedicated runs\n on single-tenant hardware.

", + "smithy.api#xmlName": "tenancy" } }, - "Scope": { + "SpreadDomain": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Scope", - "smithy.api#documentation": "

The OpenID Connect (OIDC) scope specified.

", - "smithy.api#xmlName": "scope" + "aws.protocols#ec2QueryName": "SpreadDomain", + "smithy.api#documentation": "

Reserved for future use.

", + "smithy.api#xmlName": "spreadDomain" + } + }, + "HostResourceGroupArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "HostResourceGroupArn", + "smithy.api#documentation": "

The ARN of the host resource group in which to launch the instances.

", + "smithy.api#xmlName": "hostResourceGroupArn" + } + }, + "PartitionNumber": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "PartitionNumber", + "smithy.api#documentation": "

The number of the partition the instance should launch in. Valid only if the placement\n group strategy is set to partition.

", + "smithy.api#xmlName": "partitionNumber" + } + }, + "GroupId": { + "target": "com.amazonaws.ec2#PlacementGroupId", + "traits": { + "aws.protocols#ec2QueryName": "GroupId", + "smithy.api#documentation": "

The Group ID of the placement group. You must specify the Placement Group Group ID to launch an instance in a shared placement\n group.

", + "smithy.api#xmlName": "groupId" } } }, "traits": { - "smithy.api#documentation": "

Describes the options for an OpenID Connect-compatible user-identity trust\n provider.

" + "smithy.api#documentation": "

Describes the placement of an instance.

" } }, - "com.amazonaws.ec2#OnDemandAllocationStrategy": { - "type": "enum", + "com.amazonaws.ec2#LaunchTemplatePlacementRequest": { + "type": "structure", "members": { - "LOWEST_PRICE": { - "target": "smithy.api#Unit", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "lowestPrice" + "smithy.api#documentation": "

The Availability Zone for the instance.

\n

Either AvailabilityZone or AvailabilityZoneId can be specified, but not both

" } }, - "PRIORITIZED": { - "target": "smithy.api#Unit", + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#AvailabilityZoneId", "traits": { - "smithy.api#enumValue": "prioritized" + "smithy.api#documentation": "

The ID of the Availability Zone for the instance.

\n

Either AvailabilityZone or AvailabilityZoneId can be specified, but not both

" } - } - } - }, - "com.amazonaws.ec2#OnDemandOptions": { - "type": "structure", - "members": { - "AllocationStrategy": { - "target": "com.amazonaws.ec2#FleetOnDemandAllocationStrategy", + }, + "Affinity": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AllocationStrategy", - "smithy.api#documentation": "

The strategy that determines the order of the launch template overrides to use in\n fulfilling On-Demand capacity.

\n

\n lowest-price - EC2 Fleet uses price to determine the order, launching the lowest\n price first.

\n

\n prioritized - EC2 Fleet uses the priority that you assigned to each launch\n template override, launching the highest priority first.

\n

Default: lowest-price\n

", - "smithy.api#xmlName": "allocationStrategy" + "smithy.api#documentation": "

The affinity setting for an instance on a Dedicated Host.

" } }, - "CapacityReservationOptions": { - "target": "com.amazonaws.ec2#CapacityReservationOptions", + "GroupName": { + "target": "com.amazonaws.ec2#PlacementGroupName", "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationOptions", - "smithy.api#documentation": "

The strategy for using unused Capacity Reservations for fulfilling On-Demand\n capacity.

\n

Supported only for fleets of type instant.

", - "smithy.api#xmlName": "capacityReservationOptions" + "smithy.api#documentation": "

The name of the placement group for the instance.

" } }, - "SingleInstanceType": { - "target": "com.amazonaws.ec2#Boolean", + "HostId": { + "target": "com.amazonaws.ec2#DedicatedHostId", "traits": { - "aws.protocols#ec2QueryName": "SingleInstanceType", - "smithy.api#documentation": "

Indicates that the fleet uses a single instance type to launch all On-Demand Instances in the\n fleet.

\n

Supported only for fleets of type instant.

", - "smithy.api#xmlName": "singleInstanceType" + "smithy.api#documentation": "

The ID of the Dedicated Host for the instance.

" } }, - "SingleAvailabilityZone": { - "target": "com.amazonaws.ec2#Boolean", + "Tenancy": { + "target": "com.amazonaws.ec2#Tenancy", "traits": { - "aws.protocols#ec2QueryName": "SingleAvailabilityZone", - "smithy.api#documentation": "

Indicates that the fleet launches all On-Demand Instances into a single Availability Zone.

\n

Supported only for fleets of type instant.

", - "smithy.api#xmlName": "singleAvailabilityZone" + "smithy.api#documentation": "

The tenancy of the instance. An instance with a tenancy of dedicated runs on\n single-tenant hardware.

" } }, - "MinTargetCapacity": { - "target": "com.amazonaws.ec2#Integer", + "SpreadDomain": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "MinTargetCapacity", - "smithy.api#documentation": "

The minimum target capacity for On-Demand Instances in the fleet. If the minimum target capacity is\n not reached, the fleet launches no instances.

\n

Supported only for fleets of type instant.

\n

At least one of the following must be specified: SingleAvailabilityZone |\n SingleInstanceType\n

", - "smithy.api#xmlName": "minTargetCapacity" + "smithy.api#documentation": "

Reserved for future use.

" } }, - "MaxTotalPrice": { + "HostResourceGroupArn": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "MaxTotalPrice", - "smithy.api#documentation": "

The maximum amount per hour for On-Demand Instances that you're willing to pay.

\n \n

If your fleet includes T instances that are configured as unlimited,\n and if their average CPU usage exceeds the baseline utilization, you will incur a charge\n for surplus credits. The maxTotalPrice does not account for surplus\n credits, and, if you use surplus credits, your final cost might be higher than what you\n specified for maxTotalPrice. For more information, see Surplus credits can incur charges in the EC2 User\n Guide.

\n
", - "smithy.api#xmlName": "maxTotalPrice" + "smithy.api#documentation": "

The ARN of the host resource group in which to launch the instances. If you specify a\n host resource group ARN, omit the Tenancy parameter or\n set it to host.

" + } + }, + "PartitionNumber": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The number of the partition the instance should launch in. Valid only if the placement\n group strategy is set to partition.

" + } + }, + "GroupId": { + "target": "com.amazonaws.ec2#PlacementGroupId", + "traits": { + "smithy.api#documentation": "

The Group Id of a placement group. You must specify the Placement Group Group Id to launch an instance in a shared placement\n group.

" } } }, "traits": { - "smithy.api#documentation": "

Describes the configuration of On-Demand Instances in an EC2 Fleet.

" + "smithy.api#documentation": "

Describes the placement of an instance.

" } }, - "com.amazonaws.ec2#OnDemandOptionsRequest": { + "com.amazonaws.ec2#LaunchTemplatePrivateDnsNameOptions": { "type": "structure", "members": { - "AllocationStrategy": { - "target": "com.amazonaws.ec2#FleetOnDemandAllocationStrategy", - "traits": { - "smithy.api#documentation": "

The strategy that determines the order of the launch template overrides to use in\n fulfilling On-Demand capacity.

\n

\n lowest-price - EC2 Fleet uses price to determine the order, launching the lowest\n price first.

\n

\n prioritized - EC2 Fleet uses the priority that you assigned to each launch\n template override, launching the highest priority first.

\n

Default: lowest-price\n

" - } - }, - "CapacityReservationOptions": { - "target": "com.amazonaws.ec2#CapacityReservationOptionsRequest", + "HostnameType": { + "target": "com.amazonaws.ec2#HostnameType", "traits": { - "smithy.api#documentation": "

The strategy for using unused Capacity Reservations for fulfilling On-Demand\n capacity.

\n

Supported only for fleets of type instant.

" + "aws.protocols#ec2QueryName": "HostnameType", + "smithy.api#documentation": "

The type of hostname to assign to an instance.

", + "smithy.api#xmlName": "hostnameType" } }, - "SingleInstanceType": { + "EnableResourceNameDnsARecord": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Indicates that the fleet uses a single instance type to launch all On-Demand Instances in the\n fleet.

\n

Supported only for fleets of type instant.

" + "aws.protocols#ec2QueryName": "EnableResourceNameDnsARecord", + "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS A\n records.

", + "smithy.api#xmlName": "enableResourceNameDnsARecord" } }, - "SingleAvailabilityZone": { + "EnableResourceNameDnsAAAARecord": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Indicates that the fleet launches all On-Demand Instances into a single Availability Zone.

\n

Supported only for fleets of type instant.

" - } - }, - "MinTargetCapacity": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

The minimum target capacity for On-Demand Instances in the fleet. If the minimum target capacity is\n not reached, the fleet launches no instances.

\n

Supported only for fleets of type instant.

\n

At least one of the following must be specified: SingleAvailabilityZone |\n SingleInstanceType\n

" - } - }, - "MaxTotalPrice": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The maximum amount per hour for On-Demand Instances that you're willing to pay.

\n \n

If your fleet includes T instances that are configured as unlimited,\n and if their average CPU usage exceeds the baseline utilization, you will incur a charge\n for surplus credits. The MaxTotalPrice does not account for surplus\n credits, and, if you use surplus credits, your final cost might be higher than what you\n specified for MaxTotalPrice. For more information, see Surplus credits can incur charges in the EC2 User\n Guide.

\n
" + "aws.protocols#ec2QueryName": "EnableResourceNameDnsAAAARecord", + "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA\n records.

", + "smithy.api#xmlName": "enableResourceNameDnsAAAARecord" } } }, "traits": { - "smithy.api#documentation": "

Describes the configuration of On-Demand Instances in an EC2 Fleet.

" + "smithy.api#documentation": "

Describes the options for instance hostnames.

" } }, - "com.amazonaws.ec2#OperationType": { - "type": "enum", + "com.amazonaws.ec2#LaunchTemplatePrivateDnsNameOptionsRequest": { + "type": "structure", "members": { - "add": { - "target": "smithy.api#Unit", + "HostnameType": { + "target": "com.amazonaws.ec2#HostnameType", "traits": { - "smithy.api#enumValue": "add" + "smithy.api#documentation": "

The type of hostname for Amazon EC2 instances. For IPv4 only subnets, an instance DNS name\n must be based on the instance IPv4 address. For IPv6 native subnets, an instance DNS\n name must be based on the instance ID. For dual-stack subnets, you can specify whether\n DNS names use the instance IPv4 address or the instance ID.

" } }, - "remove": { - "target": "smithy.api#Unit", + "EnableResourceNameDnsARecord": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "remove" + "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS A\n records.

" + } + }, + "EnableResourceNameDnsAAAARecord": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA\n records.

" } } - } - }, - "com.amazonaws.ec2#OrganizationArnStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#xmlName": "OrganizationArn" - } - } - }, - "com.amazonaws.ec2#OrganizationalUnitArnStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#xmlName": "OrganizationalUnitArn" - } - } - }, - "com.amazonaws.ec2#OutpostArn": { - "type": "string", + }, "traits": { - "smithy.api#pattern": "^arn:aws([a-z-]+)?:outposts:[a-z\\d-]+:\\d{12}:outpost/op-[a-f0-9]{17}$" + "smithy.api#documentation": "

Describes the options for instance hostnames.

" } }, - "com.amazonaws.ec2#OwnerStringList": { + "com.amazonaws.ec2#LaunchTemplateSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#LaunchTemplate", "traits": { - "smithy.api#xmlName": "Owner" + "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#PacketHeaderStatement": { + "com.amazonaws.ec2#LaunchTemplateSpecification": { "type": "structure", "members": { - "SourceAddresses": { - "target": "com.amazonaws.ec2#ValueStringList", + "LaunchTemplateId": { + "target": "com.amazonaws.ec2#LaunchTemplateId", "traits": { - "aws.protocols#ec2QueryName": "SourceAddressSet", - "smithy.api#documentation": "

The source addresses.

", - "smithy.api#xmlName": "sourceAddressSet" + "smithy.api#documentation": "

The ID of the launch template.

\n

You must specify either the launch template ID or the\n launch template name, but not both.

" } }, - "DestinationAddresses": { - "target": "com.amazonaws.ec2#ValueStringList", + "LaunchTemplateName": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DestinationAddressSet", - "smithy.api#documentation": "

The destination addresses.

", - "smithy.api#xmlName": "destinationAddressSet" + "smithy.api#documentation": "

The name of the launch template.

\n

You must specify either the launch template ID or the\n launch template name, but not both.

" } }, - "SourcePorts": { - "target": "com.amazonaws.ec2#ValueStringList", + "Version": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SourcePortSet", - "smithy.api#documentation": "

The source ports.

", - "smithy.api#xmlName": "sourcePortSet" + "smithy.api#documentation": "

The launch template version number, $Latest, or\n $Default.

\n

A value of $Latest uses the latest version of the launch template.

\n

A value of $Default uses the default version of the launch template.

\n

Default: The default version of the launch template.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the launch template to use.

" + } + }, + "com.amazonaws.ec2#LaunchTemplateSpotMarketOptions": { + "type": "structure", + "members": { + "MaxPrice": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "MaxPrice", + "smithy.api#documentation": "

The maximum hourly price you're willing to pay for a Spot Instance. We do not\n recommend using this parameter because it can lead to increased interruptions. If you do\n not specify this parameter, you will pay the current Spot price. If you do specify this\n parameter, it must be more than USD $0.001. Specifying a value below USD $0.001 will\n result in an InvalidParameterValue error message when the launch template\n is used to launch an instance.

", + "smithy.api#xmlName": "maxPrice" } }, - "DestinationPorts": { - "target": "com.amazonaws.ec2#ValueStringList", + "SpotInstanceType": { + "target": "com.amazonaws.ec2#SpotInstanceType", "traits": { - "aws.protocols#ec2QueryName": "DestinationPortSet", - "smithy.api#documentation": "

The destination ports.

", - "smithy.api#xmlName": "destinationPortSet" + "aws.protocols#ec2QueryName": "SpotInstanceType", + "smithy.api#documentation": "

The Spot Instance request type.

", + "smithy.api#xmlName": "spotInstanceType" } }, - "SourcePrefixLists": { - "target": "com.amazonaws.ec2#ValueStringList", + "BlockDurationMinutes": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "SourcePrefixListSet", - "smithy.api#documentation": "

The source prefix lists.

", - "smithy.api#xmlName": "sourcePrefixListSet" + "aws.protocols#ec2QueryName": "BlockDurationMinutes", + "smithy.api#documentation": "

The required duration for the Spot Instances (also known as Spot blocks), in minutes.\n This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360).

", + "smithy.api#xmlName": "blockDurationMinutes" } }, - "DestinationPrefixLists": { - "target": "com.amazonaws.ec2#ValueStringList", + "ValidUntil": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "DestinationPrefixListSet", - "smithy.api#documentation": "

The destination prefix lists.

", - "smithy.api#xmlName": "destinationPrefixListSet" + "aws.protocols#ec2QueryName": "ValidUntil", + "smithy.api#documentation": "

The end date of the request. For a one-time request, the request remains active until\n all instances launch, the request is canceled, or this date is reached. If the request\n is persistent, it remains active until it is canceled or this date and time is\n reached.

", + "smithy.api#xmlName": "validUntil" } }, - "Protocols": { - "target": "com.amazonaws.ec2#ProtocolList", + "InstanceInterruptionBehavior": { + "target": "com.amazonaws.ec2#InstanceInterruptionBehavior", "traits": { - "aws.protocols#ec2QueryName": "ProtocolSet", - "smithy.api#documentation": "

The protocols.

", - "smithy.api#xmlName": "protocolSet" + "aws.protocols#ec2QueryName": "InstanceInterruptionBehavior", + "smithy.api#documentation": "

The behavior when a Spot Instance is interrupted.

", + "smithy.api#xmlName": "instanceInterruptionBehavior" } } }, "traits": { - "smithy.api#documentation": "

Describes a packet header statement.

" + "smithy.api#documentation": "

The options for Spot Instances.

" } }, - "com.amazonaws.ec2#PacketHeaderStatementRequest": { + "com.amazonaws.ec2#LaunchTemplateSpotMarketOptionsRequest": { "type": "structure", "members": { - "SourceAddresses": { - "target": "com.amazonaws.ec2#ValueStringList", - "traits": { - "smithy.api#documentation": "

The source addresses.

", - "smithy.api#xmlName": "SourceAddress" - } - }, - "DestinationAddresses": { - "target": "com.amazonaws.ec2#ValueStringList", - "traits": { - "smithy.api#documentation": "

The destination addresses.

", - "smithy.api#xmlName": "DestinationAddress" - } - }, - "SourcePorts": { - "target": "com.amazonaws.ec2#ValueStringList", + "MaxPrice": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The source ports.

", - "smithy.api#xmlName": "SourcePort" + "smithy.api#documentation": "

The maximum hourly price you're willing to pay for a Spot Instance. We do not\n recommend using this parameter because it can lead to increased interruptions. If you do\n not specify this parameter, you will pay the current Spot price. If you do specify this\n parameter, it must be more than USD $0.001. Specifying a value below USD $0.001 will\n result in an InvalidParameterValue error message when the launch template\n is used to launch an instance.

\n \n

If you specify a maximum price, your Spot Instances will be interrupted more\n frequently than if you do not specify this parameter.

\n
" } }, - "DestinationPorts": { - "target": "com.amazonaws.ec2#ValueStringList", + "SpotInstanceType": { + "target": "com.amazonaws.ec2#SpotInstanceType", "traits": { - "smithy.api#documentation": "

The destination ports.

", - "smithy.api#xmlName": "DestinationPort" + "smithy.api#documentation": "

The Spot Instance request type.

" } }, - "SourcePrefixLists": { - "target": "com.amazonaws.ec2#ValueStringList", + "BlockDurationMinutes": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The source prefix lists.

", - "smithy.api#xmlName": "SourcePrefixList" + "smithy.api#documentation": "

Deprecated.

" } }, - "DestinationPrefixLists": { - "target": "com.amazonaws.ec2#ValueStringList", + "ValidUntil": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#documentation": "

The destination prefix lists.

", - "smithy.api#xmlName": "DestinationPrefixList" + "smithy.api#documentation": "

The end date of the request, in UTC format\n (YYYY-MM-DDTHH:MM:SSZ). Supported only for\n persistent requests.

\n \n

Default: 7 days from the current date

" } }, - "Protocols": { - "target": "com.amazonaws.ec2#ProtocolList", + "InstanceInterruptionBehavior": { + "target": "com.amazonaws.ec2#InstanceInterruptionBehavior", "traits": { - "smithy.api#documentation": "

The protocols.

", - "smithy.api#xmlName": "Protocol" + "smithy.api#documentation": "

The behavior when a Spot Instance is interrupted. The default is\n terminate.

" } } }, "traits": { - "smithy.api#documentation": "

Describes a packet header statement.

" + "smithy.api#documentation": "

The options for Spot Instances.

" } }, - "com.amazonaws.ec2#PartitionLoadFrequency": { - "type": "enum", + "com.amazonaws.ec2#LaunchTemplateTagSpecification": { + "type": "structure", "members": { - "NONE": { - "target": "smithy.api#Unit", + "ResourceType": { + "target": "com.amazonaws.ec2#ResourceType", "traits": { - "smithy.api#enumValue": "none" + "aws.protocols#ec2QueryName": "ResourceType", + "smithy.api#documentation": "

The type of resource to tag.

", + "smithy.api#xmlName": "resourceType" } }, - "DAILY": { - "target": "smithy.api#Unit", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "daily" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags for the resource.

", + "smithy.api#xmlName": "tagSet" } - }, - "WEEKLY": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#documentation": "

The tags specification for the launch template.

" + } + }, + "com.amazonaws.ec2#LaunchTemplateTagSpecificationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#LaunchTemplateTagSpecification", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#LaunchTemplateTagSpecificationRequest": { + "type": "structure", + "members": { + "ResourceType": { + "target": "com.amazonaws.ec2#ResourceType", "traits": { - "smithy.api#enumValue": "weekly" + "smithy.api#documentation": "

The type of resource to tag.

\n

Valid Values lists all resource types for Amazon EC2 that can be tagged. When you\n create a launch template, you can specify tags for the following resource types only:\n instance | volume |\n network-interface | spot-instances-request. If the instance\n does not include the resource type that you specify, the instance launch fails. For\n example, not all instance types include a volume.

\n

To tag a resource after it has been created, see CreateTags.

" } }, - "MONTHLY": { - "target": "smithy.api#Unit", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "monthly" + "smithy.api#documentation": "

The tags to apply to the resource.

", + "smithy.api#xmlName": "Tag" } } + }, + "traits": { + "smithy.api#documentation": "

The tags specification for the resources that are created during instance\n launch.

" } }, - "com.amazonaws.ec2#PasswordData": { - "type": "string", - "traits": { - "smithy.api#sensitive": {} + "com.amazonaws.ec2#LaunchTemplateTagSpecificationRequestList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#LaunchTemplateTagSpecificationRequest", + "traits": { + "smithy.api#xmlName": "LaunchTemplateTagSpecificationRequest" + } } }, - "com.amazonaws.ec2#PathComponent": { + "com.amazonaws.ec2#LaunchTemplateVersion": { "type": "structure", "members": { - "SequenceNumber": { - "target": "com.amazonaws.ec2#Integer", + "LaunchTemplateId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SequenceNumber", - "smithy.api#documentation": "

The sequence number.

", - "smithy.api#xmlName": "sequenceNumber" + "aws.protocols#ec2QueryName": "LaunchTemplateId", + "smithy.api#documentation": "

The ID of the launch template.

", + "smithy.api#xmlName": "launchTemplateId" } }, - "AclRule": { - "target": "com.amazonaws.ec2#AnalysisAclRule", + "LaunchTemplateName": { + "target": "com.amazonaws.ec2#LaunchTemplateName", "traits": { - "aws.protocols#ec2QueryName": "AclRule", - "smithy.api#documentation": "

The network ACL rule.

", - "smithy.api#xmlName": "aclRule" + "aws.protocols#ec2QueryName": "LaunchTemplateName", + "smithy.api#documentation": "

The name of the launch template.

", + "smithy.api#xmlName": "launchTemplateName" } }, - "AttachedTo": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "AttachedTo", - "smithy.api#documentation": "

The resource to which the path component is attached.

", - "smithy.api#xmlName": "attachedTo" - } - }, - "Component": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "Component", - "smithy.api#documentation": "

The component.

", - "smithy.api#xmlName": "component" - } - }, - "DestinationVpc": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "DestinationVpc", - "smithy.api#documentation": "

The destination VPC.

", - "smithy.api#xmlName": "destinationVpc" - } - }, - "OutboundHeader": { - "target": "com.amazonaws.ec2#AnalysisPacketHeader", - "traits": { - "aws.protocols#ec2QueryName": "OutboundHeader", - "smithy.api#documentation": "

The outbound header.

", - "smithy.api#xmlName": "outboundHeader" - } - }, - "InboundHeader": { - "target": "com.amazonaws.ec2#AnalysisPacketHeader", - "traits": { - "aws.protocols#ec2QueryName": "InboundHeader", - "smithy.api#documentation": "

The inbound header.

", - "smithy.api#xmlName": "inboundHeader" - } - }, - "RouteTableRoute": { - "target": "com.amazonaws.ec2#AnalysisRouteTableRoute", - "traits": { - "aws.protocols#ec2QueryName": "RouteTableRoute", - "smithy.api#documentation": "

The route table route.

", - "smithy.api#xmlName": "routeTableRoute" - } - }, - "SecurityGroupRule": { - "target": "com.amazonaws.ec2#AnalysisSecurityGroupRule", - "traits": { - "aws.protocols#ec2QueryName": "SecurityGroupRule", - "smithy.api#documentation": "

The security group rule.

", - "smithy.api#xmlName": "securityGroupRule" - } - }, - "SourceVpc": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "SourceVpc", - "smithy.api#documentation": "

The source VPC.

", - "smithy.api#xmlName": "sourceVpc" - } - }, - "Subnet": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "Subnet", - "smithy.api#documentation": "

The subnet.

", - "smithy.api#xmlName": "subnet" - } - }, - "Vpc": { - "target": "com.amazonaws.ec2#AnalysisComponent", - "traits": { - "aws.protocols#ec2QueryName": "Vpc", - "smithy.api#documentation": "

The component VPC.

", - "smithy.api#xmlName": "vpc" - } - }, - "AdditionalDetails": { - "target": "com.amazonaws.ec2#AdditionalDetailList", - "traits": { - "aws.protocols#ec2QueryName": "AdditionalDetailSet", - "smithy.api#documentation": "

The additional details.

", - "smithy.api#xmlName": "additionalDetailSet" - } - }, - "TransitGateway": { - "target": "com.amazonaws.ec2#AnalysisComponent", + "VersionNumber": { + "target": "com.amazonaws.ec2#Long", "traits": { - "aws.protocols#ec2QueryName": "TransitGateway", - "smithy.api#documentation": "

The transit gateway.

", - "smithy.api#xmlName": "transitGateway" + "aws.protocols#ec2QueryName": "VersionNumber", + "smithy.api#documentation": "

The version number.

", + "smithy.api#xmlName": "versionNumber" } }, - "TransitGatewayRouteTableRoute": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableRoute", + "VersionDescription": { + "target": "com.amazonaws.ec2#VersionDescription", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayRouteTableRoute", - "smithy.api#documentation": "

The route in a transit gateway route table.

", - "smithy.api#xmlName": "transitGatewayRouteTableRoute" + "aws.protocols#ec2QueryName": "VersionDescription", + "smithy.api#documentation": "

The description for the version.

", + "smithy.api#xmlName": "versionDescription" } }, - "Explanations": { - "target": "com.amazonaws.ec2#ExplanationList", + "CreateTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "ExplanationSet", - "smithy.api#documentation": "

The explanation codes.

", - "smithy.api#xmlName": "explanationSet" + "aws.protocols#ec2QueryName": "CreateTime", + "smithy.api#documentation": "

The time the version was created.

", + "smithy.api#xmlName": "createTime" } }, - "ElasticLoadBalancerListener": { - "target": "com.amazonaws.ec2#AnalysisComponent", + "CreatedBy": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ElasticLoadBalancerListener", - "smithy.api#documentation": "

The load balancer listener.

", - "smithy.api#xmlName": "elasticLoadBalancerListener" + "aws.protocols#ec2QueryName": "CreatedBy", + "smithy.api#documentation": "

The principal that created the version.

", + "smithy.api#xmlName": "createdBy" } }, - "FirewallStatelessRule": { - "target": "com.amazonaws.ec2#FirewallStatelessRule", + "DefaultVersion": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "FirewallStatelessRule", - "smithy.api#documentation": "

The Network Firewall stateless rule.

", - "smithy.api#xmlName": "firewallStatelessRule" + "aws.protocols#ec2QueryName": "DefaultVersion", + "smithy.api#documentation": "

Indicates whether the version is the default version.

", + "smithy.api#xmlName": "defaultVersion" } }, - "FirewallStatefulRule": { - "target": "com.amazonaws.ec2#FirewallStatefulRule", + "LaunchTemplateData": { + "target": "com.amazonaws.ec2#ResponseLaunchTemplateData", "traits": { - "aws.protocols#ec2QueryName": "FirewallStatefulRule", - "smithy.api#documentation": "

The Network Firewall stateful rule.

", - "smithy.api#xmlName": "firewallStatefulRule" + "aws.protocols#ec2QueryName": "LaunchTemplateData", + "smithy.api#documentation": "

Information about the launch template.

", + "smithy.api#xmlName": "launchTemplateData" } }, - "ServiceName": { - "target": "com.amazonaws.ec2#String", + "Operator": { + "target": "com.amazonaws.ec2#OperatorResponse", "traits": { - "aws.protocols#ec2QueryName": "ServiceName", - "smithy.api#documentation": "

The name of the VPC endpoint service.

", - "smithy.api#xmlName": "serviceName" + "aws.protocols#ec2QueryName": "Operator", + "smithy.api#documentation": "

The entity that manages the launch template.

", + "smithy.api#xmlName": "operator" } } }, "traits": { - "smithy.api#documentation": "

Describes a path component.

" + "smithy.api#documentation": "

Describes a launch template version.

" } }, - "com.amazonaws.ec2#PathComponentList": { + "com.amazonaws.ec2#LaunchTemplateVersionSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#PathComponent", + "target": "com.amazonaws.ec2#LaunchTemplateVersion", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#PathFilter": { + "com.amazonaws.ec2#LaunchTemplatesMonitoring": { "type": "structure", "members": { - "SourceAddress": { - "target": "com.amazonaws.ec2#IpAddress", - "traits": { - "aws.protocols#ec2QueryName": "SourceAddress", - "smithy.api#documentation": "

The source IPv4 address.

", - "smithy.api#xmlName": "sourceAddress" - } - }, - "SourcePortRange": { - "target": "com.amazonaws.ec2#FilterPortRange", - "traits": { - "aws.protocols#ec2QueryName": "SourcePortRange", - "smithy.api#documentation": "

The source port range.

", - "smithy.api#xmlName": "sourcePortRange" - } - }, - "DestinationAddress": { - "target": "com.amazonaws.ec2#IpAddress", - "traits": { - "aws.protocols#ec2QueryName": "DestinationAddress", - "smithy.api#documentation": "

The destination IPv4 address.

", - "smithy.api#xmlName": "destinationAddress" - } - }, - "DestinationPortRange": { - "target": "com.amazonaws.ec2#FilterPortRange", + "Enabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DestinationPortRange", - "smithy.api#documentation": "

The destination port range.

", - "smithy.api#xmlName": "destinationPortRange" + "aws.protocols#ec2QueryName": "Enabled", + "smithy.api#documentation": "

Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is\n enabled.

", + "smithy.api#xmlName": "enabled" } } }, "traits": { - "smithy.api#documentation": "

Describes a set of filters for a path analysis. Use path filters to scope the analysis when\n there can be multiple resulting paths.

" + "smithy.api#documentation": "

Describes the monitoring for the instance.

" } }, - "com.amazonaws.ec2#PathRequestFilter": { + "com.amazonaws.ec2#LaunchTemplatesMonitoringRequest": { "type": "structure", "members": { - "SourceAddress": { - "target": "com.amazonaws.ec2#IpAddress", - "traits": { - "smithy.api#documentation": "

The source IPv4 address.

" - } - }, - "SourcePortRange": { - "target": "com.amazonaws.ec2#RequestFilterPortRange", - "traits": { - "smithy.api#documentation": "

The source port range.

" - } - }, - "DestinationAddress": { - "target": "com.amazonaws.ec2#IpAddress", - "traits": { - "smithy.api#documentation": "

The destination IPv4 address.

" - } - }, - "DestinationPortRange": { - "target": "com.amazonaws.ec2#RequestFilterPortRange", + "Enabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The destination port range.

" + "smithy.api#documentation": "

Specify true to enable detailed monitoring. Otherwise, basic monitoring\n is enabled.

" } } }, "traits": { - "smithy.api#documentation": "

Describes a set of filters for a path analysis. Use path filters to scope the analysis when\n there can be multiple resulting paths.

" + "smithy.api#documentation": "

Describes the monitoring for the instance.

" } }, - "com.amazonaws.ec2#PathStatement": { + "com.amazonaws.ec2#LicenseConfiguration": { "type": "structure", "members": { - "PacketHeaderStatement": { - "target": "com.amazonaws.ec2#PacketHeaderStatement", - "traits": { - "aws.protocols#ec2QueryName": "PacketHeaderStatement", - "smithy.api#documentation": "

The packet header statement.

", - "smithy.api#xmlName": "packetHeaderStatement" - } - }, - "ResourceStatement": { - "target": "com.amazonaws.ec2#ResourceStatement", + "LicenseConfigurationArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ResourceStatement", - "smithy.api#documentation": "

The resource statement.

", - "smithy.api#xmlName": "resourceStatement" + "aws.protocols#ec2QueryName": "LicenseConfigurationArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the license configuration.

", + "smithy.api#xmlName": "licenseConfigurationArn" } } }, "traits": { - "smithy.api#documentation": "

Describes a path statement.

" + "smithy.api#documentation": "

Describes a license configuration.

" } }, - "com.amazonaws.ec2#PathStatementRequest": { + "com.amazonaws.ec2#LicenseConfigurationRequest": { "type": "structure", "members": { - "PacketHeaderStatement": { - "target": "com.amazonaws.ec2#PacketHeaderStatementRequest", - "traits": { - "smithy.api#documentation": "

The packet header statement.

" - } - }, - "ResourceStatement": { - "target": "com.amazonaws.ec2#ResourceStatementRequest", + "LicenseConfigurationArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The resource statement.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the license configuration.

" } } }, "traits": { - "smithy.api#documentation": "

Describes a path statement.

" + "smithy.api#documentation": "

Describes a license configuration.

" } }, - "com.amazonaws.ec2#PayerResponsibility": { - "type": "enum", - "members": { - "ServiceOwner": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ServiceOwner" - } + "com.amazonaws.ec2#LicenseList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#LicenseConfiguration", + "traits": { + "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#PaymentOption": { - "type": "enum", - "members": { - "ALL_UPFRONT": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "AllUpfront" - } - }, - "PARTIAL_UPFRONT": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "PartialUpfront" - } - }, - "NO_UPFRONT": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "NoUpfront" - } + "com.amazonaws.ec2#LicenseSpecificationListRequest": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#LicenseConfigurationRequest", + "traits": { + "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#PciId": { + "com.amazonaws.ec2#ListImagesInRecycleBin": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ListImagesInRecycleBinRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ListImagesInRecycleBinResult" + }, + "traits": { + "smithy.api#documentation": "

Lists one or more AMIs that are currently in the Recycle Bin. For more information, see\n Recycle\n Bin in the Amazon EC2 User Guide.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "Images", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#ListImagesInRecycleBinMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#ListImagesInRecycleBinRequest": { "type": "structure", "members": { - "DeviceId": { - "target": "com.amazonaws.ec2#String", + "ImageIds": { + "target": "com.amazonaws.ec2#ImageIdStringList", "traits": { - "smithy.api#documentation": "

The ID of the device.

" + "smithy.api#documentation": "

The IDs of the AMIs to list. Omit this parameter to list all of the AMIs that are in the\n Recycle Bin. You can specify up to 20 IDs in a single request.

", + "smithy.api#xmlName": "ImageId" } }, - "VendorId": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The ID of the vendor.

" + "smithy.api#documentation": "

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

" } }, - "SubsystemId": { - "target": "com.amazonaws.ec2#String", + "MaxResults": { + "target": "com.amazonaws.ec2#ListImagesInRecycleBinMaxResults", "traits": { - "smithy.api#documentation": "

The ID of the subsystem.

" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n To get the next page of items, make another request with the token returned in the output.\n\t For more information, see Pagination.

" } }, - "SubsystemVendorId": { - "target": "com.amazonaws.ec2#String", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The ID of the vendor for the subsystem.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Describes the data that identifies an Amazon FPGA image (AFI) on the PCI bus.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#PeakBandwidthInGbps": { - "type": "double" - }, - "com.amazonaws.ec2#PeeringAttachmentStatus": { + "com.amazonaws.ec2#ListImagesInRecycleBinResult": { "type": "structure", "members": { - "Code": { - "target": "com.amazonaws.ec2#String", + "Images": { + "target": "com.amazonaws.ec2#ImageRecycleBinInfoList", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The status code.

", - "smithy.api#xmlName": "code" + "aws.protocols#ec2QueryName": "ImageSet", + "smithy.api#documentation": "

Information about the AMIs.

", + "smithy.api#xmlName": "imageSet" } }, - "Message": { + "NextToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Message", - "smithy.api#documentation": "

The status message, if applicable.

", - "smithy.api#xmlName": "message" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. This value is null when there\n are no more items to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

The status of the transit gateway peering attachment.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#PeeringConnectionOptions": { + "com.amazonaws.ec2#ListSnapshotsInRecycleBin": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ListSnapshotsInRecycleBinRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ListSnapshotsInRecycleBinResult" + }, + "traits": { + "smithy.api#documentation": "

Lists one or more snapshots that are currently in the Recycle Bin.

", + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "Snapshots", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.ec2#ListSnapshotsInRecycleBinMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#ListSnapshotsInRecycleBinRequest": { "type": "structure", "members": { - "AllowDnsResolutionFromRemoteVpc": { - "target": "com.amazonaws.ec2#Boolean", + "MaxResults": { + "target": "com.amazonaws.ec2#ListSnapshotsInRecycleBinMaxResults", "traits": { - "aws.protocols#ec2QueryName": "AllowDnsResolutionFromRemoteVpc", - "smithy.api#documentation": "

If true, the public DNS hostnames of instances in the specified VPC resolve to private\n IP addresses when queried from instances in the peer VPC.

", - "smithy.api#xmlName": "allowDnsResolutionFromRemoteVpc" + "smithy.api#documentation": "

The maximum number of items to return for this request.\n\tTo get the next page of items, make another request with the token returned in the output. \n\tFor more information, see Pagination.

" } }, - "AllowEgressFromLocalClassicLinkToRemoteVpc": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AllowEgressFromLocalClassicLinkToRemoteVpc", - "smithy.api#documentation": "

Deprecated.

", - "smithy.api#xmlName": "allowEgressFromLocalClassicLinkToRemoteVpc" + "smithy.api#documentation": "

The token returned from a previous paginated request.\n Pagination continues from the end of the items returned by the previous request.

" } }, - "AllowEgressFromLocalVpcToRemoteClassicLink": { + "SnapshotIds": { + "target": "com.amazonaws.ec2#SnapshotIdStringList", + "traits": { + "smithy.api#documentation": "

The IDs of the snapshots to list. Omit this parameter to list all of the \n snapshots that are in the Recycle Bin.

", + "smithy.api#xmlName": "SnapshotId" + } + }, + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "AllowEgressFromLocalVpcToRemoteClassicLink", - "smithy.api#documentation": "

Deprecated.

", - "smithy.api#xmlName": "allowEgressFromLocalVpcToRemoteClassicLink" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, "traits": { - "smithy.api#documentation": "

Describes the VPC peering connection options.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#PeeringConnectionOptionsRequest": { + "com.amazonaws.ec2#ListSnapshotsInRecycleBinResult": { "type": "structure", "members": { - "AllowDnsResolutionFromRemoteVpc": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

If true, enables a local VPC to resolve public DNS hostnames to private IP addresses \n when queried from instances in the peer VPC.

" - } - }, - "AllowEgressFromLocalClassicLinkToRemoteVpc": { - "target": "com.amazonaws.ec2#Boolean", + "Snapshots": { + "target": "com.amazonaws.ec2#SnapshotRecycleBinInfoList", "traits": { - "smithy.api#documentation": "

Deprecated.

" + "aws.protocols#ec2QueryName": "SnapshotSet", + "smithy.api#documentation": "

Information about the snapshots.

", + "smithy.api#xmlName": "snapshotSet" } }, - "AllowEgressFromLocalVpcToRemoteClassicLink": { - "target": "com.amazonaws.ec2#Boolean", + "NextToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Deprecated.

" + "aws.protocols#ec2QueryName": "NextToken", + "smithy.api#documentation": "

The token to include in another request to get the next page of items. \n This value is null when there are no more items to return.

", + "smithy.api#xmlName": "nextToken" } } }, "traits": { - "smithy.api#documentation": "

The VPC peering connection options.

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#PeeringTgwInfo": { - "type": "structure", + "com.amazonaws.ec2#ListingState": { + "type": "enum", "members": { - "TransitGatewayId": { - "target": "com.amazonaws.ec2#String", + "available": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayId", - "smithy.api#documentation": "

The ID of the transit gateway.

", - "smithy.api#xmlName": "transitGatewayId" + "smithy.api#enumValue": "available" } }, - "CoreNetworkId": { - "target": "com.amazonaws.ec2#String", + "sold": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CoreNetworkId", - "smithy.api#documentation": "

The ID of the core network where the transit gateway peer is located.

", - "smithy.api#xmlName": "coreNetworkId" + "smithy.api#enumValue": "sold" } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "cancelled": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the transit gateway.

", - "smithy.api#xmlName": "ownerId" + "smithy.api#enumValue": "cancelled" } }, - "Region": { - "target": "com.amazonaws.ec2#String", + "pending": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Region", - "smithy.api#documentation": "

The Region of the transit gateway.

", - "smithy.api#xmlName": "region" + "smithy.api#enumValue": "pending" } } - }, - "traits": { - "smithy.api#documentation": "

Information about the transit gateway in the peering attachment.

" } }, - "com.amazonaws.ec2#PeriodType": { + "com.amazonaws.ec2#ListingStatus": { "type": "enum", "members": { - "five_minutes": { + "active": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "five-minutes" + "smithy.api#enumValue": "active" } }, - "fifteen_minutes": { + "pending": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "fifteen-minutes" - } - }, - "one_hour": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "one-hour" - } - }, - "three_hours": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "three-hours" + "smithy.api#enumValue": "pending" } }, - "one_day": { + "cancelled": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "one-day" + "smithy.api#enumValue": "cancelled" } }, - "one_week": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "one-week" - } - } - } - }, - "com.amazonaws.ec2#PermissionGroup": { - "type": "enum", - "members": { - "all": { + "closed": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "all" + "smithy.api#enumValue": "closed" } } } }, - "com.amazonaws.ec2#Phase1DHGroupNumbersList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Phase1DHGroupNumbersListValue", - "traits": { - "smithy.api#xmlName": "item" - } - } + "com.amazonaws.ec2#LoadBalancerArn": { + "type": "string" }, - "com.amazonaws.ec2#Phase1DHGroupNumbersListValue": { + "com.amazonaws.ec2#LoadBalancersConfig": { "type": "structure", "members": { - "Value": { - "target": "com.amazonaws.ec2#Integer", + "ClassicLoadBalancersConfig": { + "target": "com.amazonaws.ec2#ClassicLoadBalancersConfig", "traits": { - "aws.protocols#ec2QueryName": "Value", - "smithy.api#documentation": "

The Diffie-Hellmann group number.

", - "smithy.api#xmlName": "value" + "aws.protocols#ec2QueryName": "ClassicLoadBalancersConfig", + "smithy.api#documentation": "

The Classic Load Balancers.

", + "smithy.api#xmlName": "classicLoadBalancersConfig" } - } - }, - "traits": { - "smithy.api#documentation": "

The Diffie-Hellmann group number for phase 1 IKE negotiations.

" - } - }, - "com.amazonaws.ec2#Phase1DHGroupNumbersRequestList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Phase1DHGroupNumbersRequestListValue", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Phase1DHGroupNumbersRequestListValue": { - "type": "structure", - "members": { - "Value": { - "target": "com.amazonaws.ec2#Integer", + }, + "TargetGroupsConfig": { + "target": "com.amazonaws.ec2#TargetGroupsConfig", "traits": { - "smithy.api#documentation": "

The Diffie-Hellmann group number.

" + "aws.protocols#ec2QueryName": "TargetGroupsConfig", + "smithy.api#documentation": "

The target groups.

", + "smithy.api#xmlName": "targetGroupsConfig" } } }, "traits": { - "smithy.api#documentation": "

Specifies a Diffie-Hellman group number for the VPN tunnel for phase 1 IKE\n negotiations.

" - } - }, - "com.amazonaws.ec2#Phase1EncryptionAlgorithmsList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Phase1EncryptionAlgorithmsListValue", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

Describes the Classic Load Balancers and target groups to attach to a Spot Fleet\n request.

" } }, - "com.amazonaws.ec2#Phase1EncryptionAlgorithmsListValue": { + "com.amazonaws.ec2#LoadPermission": { "type": "structure", "members": { - "Value": { + "UserId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Value", - "smithy.api#documentation": "

The value for the encryption algorithm.

", - "smithy.api#xmlName": "value" + "aws.protocols#ec2QueryName": "UserId", + "smithy.api#documentation": "

The Amazon Web Services account ID.

", + "smithy.api#xmlName": "userId" + } + }, + "Group": { + "target": "com.amazonaws.ec2#PermissionGroup", + "traits": { + "aws.protocols#ec2QueryName": "Group", + "smithy.api#documentation": "

The name of the group.

", + "smithy.api#xmlName": "group" } } }, "traits": { - "smithy.api#documentation": "

The encryption algorithm for phase 1 IKE negotiations.

" + "smithy.api#documentation": "

Describes a load permission.

" } }, - "com.amazonaws.ec2#Phase1EncryptionAlgorithmsRequestList": { + "com.amazonaws.ec2#LoadPermissionList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#Phase1EncryptionAlgorithmsRequestListValue", + "target": "com.amazonaws.ec2#LoadPermission", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#Phase1EncryptionAlgorithmsRequestListValue": { - "type": "structure", - "members": { - "Value": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The value for the encryption algorithm.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the encryption algorithm for the VPN tunnel for phase 1 IKE\n negotiations.

" - } - }, - "com.amazonaws.ec2#Phase1IntegrityAlgorithmsList": { + "com.amazonaws.ec2#LoadPermissionListRequest": { "type": "list", "member": { - "target": "com.amazonaws.ec2#Phase1IntegrityAlgorithmsListValue", + "target": "com.amazonaws.ec2#LoadPermissionRequest", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#Phase1IntegrityAlgorithmsListValue": { + "com.amazonaws.ec2#LoadPermissionModifications": { "type": "structure", "members": { - "Value": { - "target": "com.amazonaws.ec2#String", + "Add": { + "target": "com.amazonaws.ec2#LoadPermissionListRequest", "traits": { - "aws.protocols#ec2QueryName": "Value", - "smithy.api#documentation": "

The value for the integrity algorithm.

", - "smithy.api#xmlName": "value" + "smithy.api#documentation": "

The load permissions to add.

" + } + }, + "Remove": { + "target": "com.amazonaws.ec2#LoadPermissionListRequest", + "traits": { + "smithy.api#documentation": "

The load permissions to remove.

" } } }, "traits": { - "smithy.api#documentation": "

The integrity algorithm for phase 1 IKE negotiations.

" - } - }, - "com.amazonaws.ec2#Phase1IntegrityAlgorithmsRequestList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Phase1IntegrityAlgorithmsRequestListValue", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

Describes modifications to the load permissions of an Amazon FPGA image (AFI).

" } }, - "com.amazonaws.ec2#Phase1IntegrityAlgorithmsRequestListValue": { + "com.amazonaws.ec2#LoadPermissionRequest": { "type": "structure", "members": { - "Value": { + "Group": { + "target": "com.amazonaws.ec2#PermissionGroup", + "traits": { + "smithy.api#documentation": "

The name of the group.

" + } + }, + "UserId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The value for the integrity algorithm.

" + "smithy.api#documentation": "

The Amazon Web Services account ID.

" } } }, "traits": { - "smithy.api#documentation": "

Specifies the integrity algorithm for the VPN tunnel for phase 1 IKE\n negotiations.

" - } - }, - "com.amazonaws.ec2#Phase2DHGroupNumbersList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Phase2DHGroupNumbersListValue", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

Describes a load permission.

" } }, - "com.amazonaws.ec2#Phase2DHGroupNumbersListValue": { + "com.amazonaws.ec2#LocalGateway": { "type": "structure", "members": { - "Value": { - "target": "com.amazonaws.ec2#Integer", + "LocalGatewayId": { + "target": "com.amazonaws.ec2#LocalGatewayId", "traits": { - "aws.protocols#ec2QueryName": "Value", - "smithy.api#documentation": "

The Diffie-Hellmann group number.

", - "smithy.api#xmlName": "value" + "aws.protocols#ec2QueryName": "LocalGatewayId", + "smithy.api#documentation": "

The ID of the local gateway.

", + "smithy.api#xmlName": "localGatewayId" } - } - }, - "traits": { - "smithy.api#documentation": "

The Diffie-Hellmann group number for phase 2 IKE negotiations.

" - } - }, - "com.amazonaws.ec2#Phase2DHGroupNumbersRequestList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Phase2DHGroupNumbersRequestListValue", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Phase2DHGroupNumbersRequestListValue": { - "type": "structure", - "members": { - "Value": { - "target": "com.amazonaws.ec2#Integer", + }, + "OutpostArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The Diffie-Hellmann group number.

" + "aws.protocols#ec2QueryName": "OutpostArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost.

", + "smithy.api#xmlName": "outpostArn" } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies a Diffie-Hellman group number for the VPN tunnel for phase 2 IKE\n negotiations.

" - } - }, - "com.amazonaws.ec2#Phase2EncryptionAlgorithmsList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Phase2EncryptionAlgorithmsListValue", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Phase2EncryptionAlgorithmsListValue": { - "type": "structure", - "members": { - "Value": { + }, + "OwnerId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Value", - "smithy.api#documentation": "

The encryption algorithm.

", - "smithy.api#xmlName": "value" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the local gateway.

", + "smithy.api#xmlName": "ownerId" } - } - }, - "traits": { - "smithy.api#documentation": "

The encryption algorithm for phase 2 IKE negotiations.

" - } - }, - "com.amazonaws.ec2#Phase2EncryptionAlgorithmsRequestList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Phase2EncryptionAlgorithmsRequestListValue", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#Phase2EncryptionAlgorithmsRequestListValue": { - "type": "structure", - "members": { - "Value": { + }, + "State": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The encryption algorithm.

" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the local gateway.

", + "smithy.api#xmlName": "state" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags assigned to the local gateway.

", + "smithy.api#xmlName": "tagSet" } } }, "traits": { - "smithy.api#documentation": "

Specifies the encryption algorithm for the VPN tunnel for phase 2 IKE\n negotiations.

" + "smithy.api#documentation": "

Describes a local gateway.

" } }, - "com.amazonaws.ec2#Phase2IntegrityAlgorithmsList": { + "com.amazonaws.ec2#LocalGatewayId": { + "type": "string" + }, + "com.amazonaws.ec2#LocalGatewayIdSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#Phase2IntegrityAlgorithmsListValue", + "target": "com.amazonaws.ec2#LocalGatewayId", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#Phase2IntegrityAlgorithmsListValue": { - "type": "structure", - "members": { - "Value": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Value", - "smithy.api#documentation": "

The integrity algorithm.

", - "smithy.api#xmlName": "value" - } - } - }, + "com.amazonaws.ec2#LocalGatewayMaxResults": { + "type": "integer", "traits": { - "smithy.api#documentation": "

The integrity algorithm for phase 2 IKE negotiations.

" - } - }, - "com.amazonaws.ec2#Phase2IntegrityAlgorithmsRequestList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Phase2IntegrityAlgorithmsRequestListValue", - "traits": { - "smithy.api#xmlName": "item" + "smithy.api#range": { + "min": 5, + "max": 1000 } } }, - "com.amazonaws.ec2#Phase2IntegrityAlgorithmsRequestListValue": { + "com.amazonaws.ec2#LocalGatewayRoute": { "type": "structure", "members": { - "Value": { + "DestinationCidrBlock": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The integrity algorithm.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the integrity algorithm for the VPN tunnel for phase 2 IKE\n negotiations.

" - } - }, - "com.amazonaws.ec2#PhcSupport": { - "type": "enum", - "members": { - "UNSUPPORTED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "unsupported" + "aws.protocols#ec2QueryName": "DestinationCidrBlock", + "smithy.api#documentation": "

The CIDR block used for destination matches.

", + "smithy.api#xmlName": "destinationCidrBlock" } }, - "SUPPORTED": { - "target": "smithy.api#Unit", + "LocalGatewayVirtualInterfaceGroupId": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId", "traits": { - "smithy.api#enumValue": "supported" + "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceGroupId", + "smithy.api#documentation": "

The ID of the virtual interface group.

", + "smithy.api#xmlName": "localGatewayVirtualInterfaceGroupId" } - } - } - }, - "com.amazonaws.ec2#Placement": { - "type": "structure", - "members": { - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + }, + "Type": { + "target": "com.amazonaws.ec2#LocalGatewayRouteType", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone of the instance.

\n

If not specified, an Availability Zone will be automatically chosen for you based on\n the load balancing criteria for the Region.

\n

This parameter is not supported for CreateFleet.

", - "smithy.api#xmlName": "availabilityZone" + "aws.protocols#ec2QueryName": "Type", + "smithy.api#documentation": "

The route type.

", + "smithy.api#xmlName": "type" } }, - "Affinity": { - "target": "com.amazonaws.ec2#String", + "State": { + "target": "com.amazonaws.ec2#LocalGatewayRouteState", "traits": { - "aws.protocols#ec2QueryName": "Affinity", - "smithy.api#documentation": "

The affinity setting for the instance on the Dedicated Host.

\n

This parameter is not supported for CreateFleet or ImportInstance.

", - "smithy.api#xmlName": "affinity" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the route.

", + "smithy.api#xmlName": "state" } }, - "GroupName": { - "target": "com.amazonaws.ec2#PlacementGroupName", + "LocalGatewayRouteTableId": { + "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", "traits": { - "aws.protocols#ec2QueryName": "GroupName", - "smithy.api#documentation": "

The name of the placement group that the instance is in. If you specify\n GroupName, you can't specify GroupId.

", - "smithy.api#xmlName": "groupName" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableId", + "smithy.api#documentation": "

The ID of the local gateway route table.

", + "smithy.api#xmlName": "localGatewayRouteTableId" } }, - "PartitionNumber": { - "target": "com.amazonaws.ec2#Integer", + "LocalGatewayRouteTableArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "aws.protocols#ec2QueryName": "PartitionNumber", - "smithy.api#documentation": "

The number of the partition that the instance is in. Valid only if the placement group\n strategy is set to partition.

\n

This parameter is not supported for CreateFleet.

", - "smithy.api#xmlName": "partitionNumber" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the local gateway route table.

", + "smithy.api#xmlName": "localGatewayRouteTableArn" } }, - "HostId": { + "OwnerId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "HostId", - "smithy.api#documentation": "

The ID of the Dedicated Host on which the instance resides.

\n

This parameter is not supported for CreateFleet or ImportInstance.

", - "smithy.api#xmlName": "hostId" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the local gateway route.

", + "smithy.api#xmlName": "ownerId" } }, - "Tenancy": { - "target": "com.amazonaws.ec2#Tenancy", + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", "traits": { - "aws.protocols#ec2QueryName": "Tenancy", - "smithy.api#documentation": "

The tenancy of the instance. An instance with a\n tenancy of dedicated runs on single-tenant hardware.

\n

This parameter is not supported for CreateFleet. The\n host tenancy is not supported for ImportInstance or\n for T3 instances that are configured for the unlimited CPU credit\n option.

", - "smithy.api#xmlName": "tenancy" + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet.

", + "smithy.api#xmlName": "subnetId" } }, - "SpreadDomain": { - "target": "com.amazonaws.ec2#String", + "CoipPoolId": { + "target": "com.amazonaws.ec2#CoipPoolId", "traits": { - "aws.protocols#ec2QueryName": "SpreadDomain", - "smithy.api#documentation": "

Reserved for future use.

", - "smithy.api#xmlName": "spreadDomain" + "aws.protocols#ec2QueryName": "CoipPoolId", + "smithy.api#documentation": "

The ID of the customer-owned address pool.

", + "smithy.api#xmlName": "coipPoolId" } }, - "HostResourceGroupArn": { - "target": "com.amazonaws.ec2#String", + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", "traits": { - "aws.protocols#ec2QueryName": "HostResourceGroupArn", - "smithy.api#documentation": "

The ARN of the host resource group in which to launch the instances.

\n

If you specify this parameter, either omit the Tenancy parameter or set it to host.

\n

This parameter is not supported for CreateFleet.

", - "smithy.api#xmlName": "hostResourceGroupArn" + "aws.protocols#ec2QueryName": "NetworkInterfaceId", + "smithy.api#documentation": "

The ID of the network interface.

", + "smithy.api#xmlName": "networkInterfaceId" } }, - "GroupId": { - "target": "com.amazonaws.ec2#PlacementGroupId", + "DestinationPrefixListId": { + "target": "com.amazonaws.ec2#PrefixListResourceId", "traits": { - "aws.protocols#ec2QueryName": "GroupId", - "smithy.api#documentation": "

The ID of the placement group that the instance is in. If you specify\n GroupId, you can't specify GroupName.

", - "smithy.api#xmlName": "groupId" + "aws.protocols#ec2QueryName": "DestinationPrefixListId", + "smithy.api#documentation": "

\n The ID of the prefix list.\n

", + "smithy.api#xmlName": "destinationPrefixListId" } } }, "traits": { - "smithy.api#documentation": "

Describes the placement of an instance.

" + "smithy.api#documentation": "

Describes a route for a local gateway route table.

" } }, - "com.amazonaws.ec2#PlacementGroup": { - "type": "structure", + "com.amazonaws.ec2#LocalGatewayRouteList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#LocalGatewayRoute", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#LocalGatewayRouteState": { + "type": "enum", "members": { - "GroupName": { - "target": "com.amazonaws.ec2#String", + "pending": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "GroupName", - "smithy.api#documentation": "

The name of the placement group.

", - "smithy.api#xmlName": "groupName" + "smithy.api#enumValue": "pending" } }, - "State": { - "target": "com.amazonaws.ec2#PlacementGroupState", + "active": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the placement group.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "active" } }, - "Strategy": { - "target": "com.amazonaws.ec2#PlacementStrategy", + "blackhole": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Strategy", - "smithy.api#documentation": "

The placement strategy.

", - "smithy.api#xmlName": "strategy" + "smithy.api#enumValue": "blackhole" } }, - "PartitionCount": { - "target": "com.amazonaws.ec2#Integer", + "deleting": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PartitionCount", - "smithy.api#documentation": "

The number of partitions. Valid only if strategy is\n set to partition.

", - "smithy.api#xmlName": "partitionCount" + "smithy.api#enumValue": "deleting" } }, - "GroupId": { - "target": "com.amazonaws.ec2#String", + "deleted": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "GroupId", - "smithy.api#documentation": "

The ID of the placement group.

", - "smithy.api#xmlName": "groupId" + "smithy.api#enumValue": "deleted" } - }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + } + } + }, + "com.amazonaws.ec2#LocalGatewayRouteTable": { + "type": "structure", + "members": { + "LocalGatewayRouteTableId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags applied to the placement group.

", - "smithy.api#xmlName": "tagSet" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableId", + "smithy.api#documentation": "

The ID of the local gateway route table.

", + "smithy.api#xmlName": "localGatewayRouteTableId" } }, - "GroupArn": { - "target": "com.amazonaws.ec2#String", + "LocalGatewayRouteTableArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "aws.protocols#ec2QueryName": "GroupArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the placement group.

", - "smithy.api#xmlName": "groupArn" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the local gateway route table.

", + "smithy.api#xmlName": "localGatewayRouteTableArn" } }, - "SpreadLevel": { - "target": "com.amazonaws.ec2#SpreadLevel", + "LocalGatewayId": { + "target": "com.amazonaws.ec2#LocalGatewayId", "traits": { - "aws.protocols#ec2QueryName": "SpreadLevel", - "smithy.api#documentation": "

The spread level for the placement group. Only Outpost placement\n groups can be spread across hosts.

", - "smithy.api#xmlName": "spreadLevel" + "aws.protocols#ec2QueryName": "LocalGatewayId", + "smithy.api#documentation": "

The ID of the local gateway.

", + "smithy.api#xmlName": "localGatewayId" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a placement group.

" - } - }, - "com.amazonaws.ec2#PlacementGroupArn": { - "type": "string", - "traits": { - "smithy.api#pattern": "^arn:aws([a-z-]+)?:ec2:[a-z\\d-]+:\\d{12}:placement-group/^.{1,255}$" - } - }, - "com.amazonaws.ec2#PlacementGroupId": { - "type": "string" - }, - "com.amazonaws.ec2#PlacementGroupIdStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#PlacementGroupId", - "traits": { - "smithy.api#xmlName": "GroupId" - } - } - }, - "com.amazonaws.ec2#PlacementGroupInfo": { - "type": "structure", - "members": { - "SupportedStrategies": { - "target": "com.amazonaws.ec2#PlacementGroupStrategyList", + }, + "OutpostArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SupportedStrategies", - "smithy.api#documentation": "

The supported placement group types.

", - "smithy.api#xmlName": "supportedStrategies" + "aws.protocols#ec2QueryName": "OutpostArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost.

", + "smithy.api#xmlName": "outpostArn" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the placement group support of the instance type.

" - } - }, - "com.amazonaws.ec2#PlacementGroupList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#PlacementGroup", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#PlacementGroupName": { - "type": "string" - }, - "com.amazonaws.ec2#PlacementGroupState": { - "type": "enum", - "members": { - "pending": { - "target": "smithy.api#Unit", + }, + "OwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "pending" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the local gateway route table.

", + "smithy.api#xmlName": "ownerId" } }, - "available": { - "target": "smithy.api#Unit", + "State": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "available" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the local gateway route table.

", + "smithy.api#xmlName": "state" } }, - "deleting": { - "target": "smithy.api#Unit", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "deleting" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags assigned to the local gateway route table.

", + "smithy.api#xmlName": "tagSet" } }, - "deleted": { - "target": "smithy.api#Unit", + "Mode": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTableMode", "traits": { - "smithy.api#enumValue": "deleted" + "aws.protocols#ec2QueryName": "Mode", + "smithy.api#documentation": "

The mode of the local gateway route table.

", + "smithy.api#xmlName": "mode" + } + }, + "StateReason": { + "target": "com.amazonaws.ec2#StateReason", + "traits": { + "aws.protocols#ec2QueryName": "StateReason", + "smithy.api#documentation": "

Information about the state change.

", + "smithy.api#xmlName": "stateReason" } } + }, + "traits": { + "smithy.api#documentation": "

Describes a local gateway route table.

" } }, - "com.amazonaws.ec2#PlacementGroupStrategy": { + "com.amazonaws.ec2#LocalGatewayRouteTableIdSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#LocalGatewayRouteTableMode": { "type": "enum", "members": { - "cluster": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "cluster" - } - }, - "partition": { + "direct_vpc_routing": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "partition" + "smithy.api#enumValue": "direct-vpc-routing" } }, - "spread": { + "coip": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "spread" + "smithy.api#enumValue": "coip" } } } }, - "com.amazonaws.ec2#PlacementGroupStrategyList": { + "com.amazonaws.ec2#LocalGatewayRouteTableSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#PlacementGroupStrategy", + "target": "com.amazonaws.ec2#LocalGatewayRouteTable", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#PlacementGroupStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#PlacementGroupName" - } - }, - "com.amazonaws.ec2#PlacementResponse": { + "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociation": { "type": "structure", "members": { - "GroupName": { - "target": "com.amazonaws.ec2#PlacementGroupName", + "LocalGatewayRouteTableVirtualInterfaceGroupAssociationId": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociationId", "traits": { - "aws.protocols#ec2QueryName": "GroupName", - "smithy.api#documentation": "

The name of the placement group that the instance is in.

", - "smithy.api#xmlName": "groupName" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableVirtualInterfaceGroupAssociationId", + "smithy.api#documentation": "

The ID of the association.

", + "smithy.api#xmlName": "localGatewayRouteTableVirtualInterfaceGroupAssociationId" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the placement of an instance.

" - } - }, - "com.amazonaws.ec2#PlacementStrategy": { - "type": "enum", - "members": { - "cluster": { - "target": "smithy.api#Unit", + }, + "LocalGatewayVirtualInterfaceGroupId": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId", "traits": { - "smithy.api#enumValue": "cluster" + "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceGroupId", + "smithy.api#documentation": "

The ID of the virtual interface group.

", + "smithy.api#xmlName": "localGatewayVirtualInterfaceGroupId" } }, - "spread": { - "target": "smithy.api#Unit", + "LocalGatewayId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "spread" + "aws.protocols#ec2QueryName": "LocalGatewayId", + "smithy.api#documentation": "

The ID of the local gateway.

", + "smithy.api#xmlName": "localGatewayId" } }, - "partition": { - "target": "smithy.api#Unit", + "LocalGatewayRouteTableId": { + "target": "com.amazonaws.ec2#LocalGatewayId", "traits": { - "smithy.api#enumValue": "partition" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableId", + "smithy.api#documentation": "

The ID of the local gateway route table.

", + "smithy.api#xmlName": "localGatewayRouteTableId" } - } - } - }, - "com.amazonaws.ec2#PlatformValues": { - "type": "enum", - "members": { - "Windows": { - "target": "smithy.api#Unit", + }, + "LocalGatewayRouteTableArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "smithy.api#enumValue": "Windows" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the local gateway route table for the virtual interface group.

", + "smithy.api#xmlName": "localGatewayRouteTableArn" } - } - } - }, - "com.amazonaws.ec2#PoolCidrBlock": { - "type": "structure", - "members": { - "Cidr": { + }, + "OwnerId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PoolCidrBlock", - "smithy.api#documentation": "

The CIDR block.

", - "smithy.api#xmlName": "poolCidrBlock" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the local gateway virtual interface group association.

", + "smithy.api#xmlName": "ownerId" + } + }, + "State": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the association.

", + "smithy.api#xmlName": "state" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags assigned to the association.

", + "smithy.api#xmlName": "tagSet" } } }, "traits": { - "smithy.api#documentation": "

Describes a CIDR block for an address pool.

" + "smithy.api#documentation": "

Describes an association between a local gateway route table and a virtual interface group.

" } }, - "com.amazonaws.ec2#PoolCidrBlocksSet": { + "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociationId": { + "type": "string" + }, + "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociationIdSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#PoolCidrBlock", + "target": "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociationId", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#PoolMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 10 - } - } - }, - "com.amazonaws.ec2#Port": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 0, - "max": 65535 - } - } - }, - "com.amazonaws.ec2#PortRange": { - "type": "structure", - "members": { - "From": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "From", - "smithy.api#documentation": "

The first port in the range.

", - "smithy.api#xmlName": "from" - } - }, - "To": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "To", - "smithy.api#documentation": "

The last port in the range.

", - "smithy.api#xmlName": "to" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a range of ports.

" - } - }, - "com.amazonaws.ec2#PortRangeList": { + "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociationSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#PortRange", + "target": "com.amazonaws.ec2#LocalGatewayRouteTableVirtualInterfaceGroupAssociation", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#PrefixList": { + "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociation": { "type": "structure", "members": { - "Cidrs": { - "target": "com.amazonaws.ec2#ValueStringList", + "LocalGatewayRouteTableVpcAssociationId": { + "target": "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociationId", "traits": { - "aws.protocols#ec2QueryName": "CidrSet", - "smithy.api#documentation": "

The IP address range of the Amazon Web Service.

", - "smithy.api#xmlName": "cidrSet" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableVpcAssociationId", + "smithy.api#documentation": "

The ID of the association.

", + "smithy.api#xmlName": "localGatewayRouteTableVpcAssociationId" } }, - "PrefixListId": { + "LocalGatewayRouteTableId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PrefixListId", - "smithy.api#documentation": "

The ID of the prefix.

", - "smithy.api#xmlName": "prefixListId" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableId", + "smithy.api#documentation": "

The ID of the local gateway route table.

", + "smithy.api#xmlName": "localGatewayRouteTableId" } }, - "PrefixListName": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "PrefixListName", - "smithy.api#documentation": "

The name of the prefix.

", - "smithy.api#xmlName": "prefixListName" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes prefixes for Amazon Web Services services.

" - } - }, - "com.amazonaws.ec2#PrefixListAssociation": { - "type": "structure", - "members": { - "ResourceId": { - "target": "com.amazonaws.ec2#String", + "LocalGatewayRouteTableArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "aws.protocols#ec2QueryName": "ResourceId", - "smithy.api#documentation": "

The ID of the resource.

", - "smithy.api#xmlName": "resourceId" + "aws.protocols#ec2QueryName": "LocalGatewayRouteTableArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the local gateway route table for the association.

", + "smithy.api#xmlName": "localGatewayRouteTableArn" } }, - "ResourceOwner": { + "LocalGatewayId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ResourceOwner", - "smithy.api#documentation": "

The owner of the resource.

", - "smithy.api#xmlName": "resourceOwner" + "aws.protocols#ec2QueryName": "LocalGatewayId", + "smithy.api#documentation": "

The ID of the local gateway.

", + "smithy.api#xmlName": "localGatewayId" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the resource with which a prefix list is associated.

" - } - }, - "com.amazonaws.ec2#PrefixListAssociationSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#PrefixListAssociation", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#PrefixListEntry": { - "type": "structure", - "members": { - "Cidr": { + }, + "VpcId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Cidr", - "smithy.api#documentation": "

The CIDR block.

", - "smithy.api#xmlName": "cidr" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#xmlName": "vpcId" } }, - "Description": { + "OwnerId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

The description.

", - "smithy.api#xmlName": "description" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the local gateway route table for the association.

", + "smithy.api#xmlName": "ownerId" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a prefix list entry.

" - } - }, - "com.amazonaws.ec2#PrefixListEntrySet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#PrefixListEntry", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#PrefixListId": { - "type": "structure", - "members": { - "Description": { + }, + "State": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description for the security group rule that references this prefix list ID.

\n

Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9,\n spaces, and ._-:/()#,@[]+=;{}!$*

", - "smithy.api#xmlName": "description" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the association.

", + "smithy.api#xmlName": "state" } }, - "PrefixListId": { - "target": "com.amazonaws.ec2#String", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "aws.protocols#ec2QueryName": "PrefixListId", - "smithy.api#documentation": "

The ID of the prefix.

", - "smithy.api#xmlName": "prefixListId" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags assigned to the association.

", + "smithy.api#xmlName": "tagSet" } } }, "traits": { - "smithy.api#documentation": "

Describes a prefix list ID.

" + "smithy.api#documentation": "

Describes an association between a local gateway route table and a VPC.

" } }, - "com.amazonaws.ec2#PrefixListIdList": { + "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociationId": { + "type": "string" + }, + "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociationIdSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#PrefixListId", + "target": "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociationId", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#PrefixListIdSet": { + "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociationSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#LocalGatewayRouteTableVpcAssociation", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#PrefixListMaxResults": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 100 + "com.amazonaws.ec2#LocalGatewayRouteType": { + "type": "enum", + "members": { + "static": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "static" + } + }, + "propagated": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "propagated" + } } } }, - "com.amazonaws.ec2#PrefixListResourceId": { + "com.amazonaws.ec2#LocalGatewayRoutetableId": { "type": "string" }, - "com.amazonaws.ec2#PrefixListResourceIdStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#PrefixListResourceId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#PrefixListSet": { + "com.amazonaws.ec2#LocalGatewaySet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#PrefixList", + "target": "com.amazonaws.ec2#LocalGateway", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#PrefixListState": { - "type": "enum", + "com.amazonaws.ec2#LocalGatewayVirtualInterface": { + "type": "structure", "members": { - "create_in_progress": { - "target": "smithy.api#Unit", + "LocalGatewayVirtualInterfaceId": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceId", "traits": { - "smithy.api#enumValue": "create-in-progress" + "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceId", + "smithy.api#documentation": "

The ID of the virtual interface.

", + "smithy.api#xmlName": "localGatewayVirtualInterfaceId" } }, - "create_complete": { - "target": "smithy.api#Unit", + "LocalGatewayId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "create-complete" + "aws.protocols#ec2QueryName": "LocalGatewayId", + "smithy.api#documentation": "

The ID of the local gateway.

", + "smithy.api#xmlName": "localGatewayId" } }, - "create_failed": { - "target": "smithy.api#Unit", + "LocalGatewayVirtualInterfaceGroupId": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId", "traits": { - "smithy.api#enumValue": "create-failed" + "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceGroupId", + "smithy.api#documentation": "

The ID of the local gateway virtual interface group.

", + "smithy.api#xmlName": "localGatewayVirtualInterfaceGroupId" } }, - "modify_in_progress": { - "target": "smithy.api#Unit", + "LocalGatewayVirtualInterfaceArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "smithy.api#enumValue": "modify-in-progress" + "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceArn", + "smithy.api#documentation": "

The Amazon Resource Number (ARN) of the local gateway virtual interface.

", + "smithy.api#xmlName": "localGatewayVirtualInterfaceArn" } }, - "modify_complete": { - "target": "smithy.api#Unit", + "OutpostLagId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "modify-complete" + "aws.protocols#ec2QueryName": "OutpostLagId", + "smithy.api#documentation": "

The Outpost LAG ID.

", + "smithy.api#xmlName": "outpostLagId" } }, - "modify_failed": { - "target": "smithy.api#Unit", + "Vlan": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "modify-failed" + "aws.protocols#ec2QueryName": "Vlan", + "smithy.api#documentation": "

The ID of the VLAN.

", + "smithy.api#xmlName": "vlan" } }, - "restore_in_progress": { - "target": "smithy.api#Unit", + "LocalAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "restore-in-progress" + "aws.protocols#ec2QueryName": "LocalAddress", + "smithy.api#documentation": "

The local address.

", + "smithy.api#xmlName": "localAddress" } }, - "restore_complete": { - "target": "smithy.api#Unit", + "PeerAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "restore-complete" + "aws.protocols#ec2QueryName": "PeerAddress", + "smithy.api#documentation": "

The peer address.

", + "smithy.api#xmlName": "peerAddress" } }, - "restore_failed": { + "LocalBgpAsn": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "LocalBgpAsn", + "smithy.api#documentation": "

The Border Gateway Protocol (BGP) Autonomous System Number (ASN) of the local gateway.

", + "smithy.api#xmlName": "localBgpAsn" + } + }, + "PeerBgpAsn": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "PeerBgpAsn", + "smithy.api#documentation": "

The peer BGP ASN.

", + "smithy.api#xmlName": "peerBgpAsn" + } + }, + "PeerBgpAsnExtended": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "aws.protocols#ec2QueryName": "PeerBgpAsnExtended", + "smithy.api#documentation": "

The extended 32-bit ASN of the BGP peer for use with larger ASN values.

", + "smithy.api#xmlName": "peerBgpAsnExtended" + } + }, + "OwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the local gateway virtual interface.

", + "smithy.api#xmlName": "ownerId" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags assigned to the virtual interface.

", + "smithy.api#xmlName": "tagSet" + } + }, + "ConfigurationState": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceConfigurationState", + "traits": { + "aws.protocols#ec2QueryName": "ConfigurationState", + "smithy.api#documentation": "

The current state of the local gateway virtual interface.

", + "smithy.api#xmlName": "configurationState" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a local gateway virtual interface.

" + } + }, + "com.amazonaws.ec2#LocalGatewayVirtualInterfaceConfigurationState": { + "type": "enum", + "members": { + "pending": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "restore-failed" + "smithy.api#enumValue": "pending" } }, - "delete_in_progress": { + "available": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "delete-in-progress" + "smithy.api#enumValue": "available" } }, - "delete_complete": { + "deleting": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "delete-complete" + "smithy.api#enumValue": "deleting" } }, - "delete_failed": { + "deleted": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "delete-failed" + "smithy.api#enumValue": "deleted" } } } }, - "com.amazonaws.ec2#PriceSchedule": { + "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroup": { "type": "structure", "members": { - "Active": { - "target": "com.amazonaws.ec2#Boolean", + "LocalGatewayVirtualInterfaceGroupId": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId", "traits": { - "aws.protocols#ec2QueryName": "Active", - "smithy.api#documentation": "

The current price schedule, as determined by the term remaining for the Reserved Instance in the listing.

\n

A specific price schedule is always in effect, but only one price schedule can be active at any time. Take, for example, a Reserved Instance listing that has five months remaining in its term. When you specify price schedules for five months and two months, this means that schedule 1, covering the first three months of the remaining term, will be active during months 5, 4, and 3. Then schedule 2, covering the last two months of the term, will be active for months 2 and 1.

", - "smithy.api#xmlName": "active" + "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceGroupId", + "smithy.api#documentation": "

The ID of the virtual interface group.

", + "smithy.api#xmlName": "localGatewayVirtualInterfaceGroupId" } }, - "CurrencyCode": { - "target": "com.amazonaws.ec2#CurrencyCodeValues", + "LocalGatewayVirtualInterfaceIds": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceIdSet", "traits": { - "aws.protocols#ec2QueryName": "CurrencyCode", - "smithy.api#documentation": "

The currency for transacting the Reserved Instance resale.\n\t\t\t\tAt this time, the only supported currency is USD.

", - "smithy.api#xmlName": "currencyCode" + "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceIdSet", + "smithy.api#documentation": "

The IDs of the virtual interfaces.

", + "smithy.api#xmlName": "localGatewayVirtualInterfaceIdSet" } }, - "Price": { - "target": "com.amazonaws.ec2#Double", + "LocalGatewayId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Price", - "smithy.api#documentation": "

The fixed price for the term.

", - "smithy.api#xmlName": "price" + "aws.protocols#ec2QueryName": "LocalGatewayId", + "smithy.api#documentation": "

The ID of the local gateway.

", + "smithy.api#xmlName": "localGatewayId" } }, - "Term": { + "OwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the local gateway virtual interface group.

", + "smithy.api#xmlName": "ownerId" + } + }, + "LocalBgpAsn": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "LocalBgpAsn", + "smithy.api#documentation": "

The Autonomous System Number(ASN) for the local Border Gateway Protocol (BGP).

", + "smithy.api#xmlName": "localBgpAsn" + } + }, + "LocalBgpAsnExtended": { "target": "com.amazonaws.ec2#Long", "traits": { - "aws.protocols#ec2QueryName": "Term", - "smithy.api#documentation": "

The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.

", - "smithy.api#xmlName": "term" + "aws.protocols#ec2QueryName": "LocalBgpAsnExtended", + "smithy.api#documentation": "

The extended 32-bit ASN for the local BGP configuration.

", + "smithy.api#xmlName": "localBgpAsnExtended" + } + }, + "LocalGatewayVirtualInterfaceGroupArn": { + "target": "com.amazonaws.ec2#ResourceArn", + "traits": { + "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceGroupArn", + "smithy.api#documentation": "

The Amazon Resource Number (ARN) of the local gateway virtual interface group.

", + "smithy.api#xmlName": "localGatewayVirtualInterfaceGroupArn" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags assigned to the virtual interface group.

", + "smithy.api#xmlName": "tagSet" + } + }, + "ConfigurationState": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupConfigurationState", + "traits": { + "aws.protocols#ec2QueryName": "ConfigurationState", + "smithy.api#documentation": "

The current state of the local gateway virtual interface group.

", + "smithy.api#xmlName": "configurationState" } } }, "traits": { - "smithy.api#documentation": "

Describes the price for a Reserved Instance.

" - } - }, - "com.amazonaws.ec2#PriceScheduleList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#PriceSchedule", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

Describes a local gateway virtual interface group.

" } }, - "com.amazonaws.ec2#PriceScheduleSpecification": { - "type": "structure", + "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupConfigurationState": { + "type": "enum", "members": { - "CurrencyCode": { - "target": "com.amazonaws.ec2#CurrencyCodeValues", + "pending": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CurrencyCode", - "smithy.api#documentation": "

The currency for transacting the Reserved Instance resale.\n\t\t\t\tAt this time, the only supported currency is USD.

", - "smithy.api#xmlName": "currencyCode" + "smithy.api#enumValue": "pending" } }, - "Price": { - "target": "com.amazonaws.ec2#Double", + "incomplete": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Price", - "smithy.api#documentation": "

The fixed price for the term.

", - "smithy.api#xmlName": "price" + "smithy.api#enumValue": "incomplete" } }, - "Term": { - "target": "com.amazonaws.ec2#Long", + "available": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Term", - "smithy.api#documentation": "

The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.

", - "smithy.api#xmlName": "term" + "smithy.api#enumValue": "available" + } + }, + "deleting": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "deleting" + } + }, + "deleted": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "deleted" } } - }, - "traits": { - "smithy.api#documentation": "

Describes the price for a Reserved Instance.

" } }, - "com.amazonaws.ec2#PriceScheduleSpecificationList": { + "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId": { + "type": "string" + }, + "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupIdSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#PriceScheduleSpecification", + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#PricingDetail": { - "type": "structure", - "members": { - "Count": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "Count", - "smithy.api#documentation": "

The number of reservations available for the price.

", - "smithy.api#xmlName": "count" - } - }, - "Price": { - "target": "com.amazonaws.ec2#Double", - "traits": { - "aws.protocols#ec2QueryName": "Price", - "smithy.api#documentation": "

The price per instance.

", - "smithy.api#xmlName": "price" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a Reserved Instance offering.

" - } - }, - "com.amazonaws.ec2#PricingDetailsList": { + "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#PricingDetail", + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroup", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#PrincipalIdFormat": { - "type": "structure", - "members": { - "Arn": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Arn", - "smithy.api#documentation": "

PrincipalIdFormatARN description

", - "smithy.api#xmlName": "arn" - } - }, - "Statuses": { - "target": "com.amazonaws.ec2#IdFormatList", - "traits": { - "aws.protocols#ec2QueryName": "StatusSet", - "smithy.api#documentation": "

PrincipalIdFormatStatuses description

", - "smithy.api#xmlName": "statusSet" - } + "com.amazonaws.ec2#LocalGatewayVirtualInterfaceId": { + "type": "string" + }, + "com.amazonaws.ec2#LocalGatewayVirtualInterfaceIdSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceId", + "traits": { + "smithy.api#xmlName": "item" } - }, - "traits": { - "smithy.api#documentation": "

PrincipalIdFormat description

" } }, - "com.amazonaws.ec2#PrincipalIdFormatList": { + "com.amazonaws.ec2#LocalGatewayVirtualInterfaceSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#PrincipalIdFormat", + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterface", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#PrincipalType": { + "com.amazonaws.ec2#LocalStorage": { "type": "enum", "members": { - "All": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "All" - } - }, - "Service": { + "INCLUDED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "Service" + "smithy.api#enumValue": "included" } }, - "OrganizationUnit": { + "REQUIRED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "OrganizationUnit" + "smithy.api#enumValue": "required" } }, - "Account": { + "EXCLUDED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "Account" + "smithy.api#enumValue": "excluded" } - }, - "User": { + } + } + }, + "com.amazonaws.ec2#LocalStorageType": { + "type": "enum", + "members": { + "HDD": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "User" + "smithy.api#enumValue": "hdd" } }, - "Role": { + "SSD": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "Role" - } - } - } - }, - "com.amazonaws.ec2#Priority": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": -1, - "max": 65535 - } - } - }, - "com.amazonaws.ec2#PrivateDnsDetails": { - "type": "structure", - "members": { - "PrivateDnsName": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "PrivateDnsName", - "smithy.api#documentation": "

The private DNS name assigned to the VPC endpoint service.

", - "smithy.api#xmlName": "privateDnsName" + "smithy.api#enumValue": "ssd" } } - }, - "traits": { - "smithy.api#documentation": "

Information about the Private DNS name for interface endpoints.

" } }, - "com.amazonaws.ec2#PrivateDnsDetailsSet": { + "com.amazonaws.ec2#LocalStorageTypeSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#PrivateDnsDetails", + "target": "com.amazonaws.ec2#LocalStorageType", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#PrivateDnsNameConfiguration": { - "type": "structure", + "com.amazonaws.ec2#Location": { + "type": "string" + }, + "com.amazonaws.ec2#LocationType": { + "type": "enum", "members": { - "State": { - "target": "com.amazonaws.ec2#DnsNameState", + "region": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The verification state of the VPC endpoint service.

\n

>Consumers\n of the endpoint service can use the private name only when the state is\n verified.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "region" } }, - "Type": { - "target": "com.amazonaws.ec2#String", + "availability_zone": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Type", - "smithy.api#documentation": "

The endpoint service verification type, for example TXT.

", - "smithy.api#xmlName": "type" + "smithy.api#enumValue": "availability-zone" } }, - "Value": { - "target": "com.amazonaws.ec2#String", + "availability_zone_id": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Value", - "smithy.api#documentation": "

The value the service provider adds to the private DNS name domain record before verification.

", - "smithy.api#xmlName": "value" + "smithy.api#enumValue": "availability-zone-id" } }, - "Name": { - "target": "com.amazonaws.ec2#String", + "outpost": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Name", - "smithy.api#documentation": "

The name of the record subdomain the service provider needs to create. The service provider adds the value text to the name.

", - "smithy.api#xmlName": "name" + "smithy.api#enumValue": "outpost" } } - }, - "traits": { - "smithy.api#documentation": "

Information about the private DNS name for the service endpoint.

" } }, - "com.amazonaws.ec2#PrivateDnsNameOptionsOnLaunch": { - "type": "structure", + "com.amazonaws.ec2#LockMode": { + "type": "enum", "members": { - "HostnameType": { - "target": "com.amazonaws.ec2#HostnameType", - "traits": { - "aws.protocols#ec2QueryName": "HostnameType", - "smithy.api#documentation": "

The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name\n must be based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name\n must be based on the instance ID. For dual-stack subnets, you can specify whether DNS\n names use the instance IPv4 address or the instance ID.

", - "smithy.api#xmlName": "hostnameType" - } - }, - "EnableResourceNameDnsARecord": { - "target": "com.amazonaws.ec2#Boolean", + "compliance": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EnableResourceNameDnsARecord", - "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS A\n records.

", - "smithy.api#xmlName": "enableResourceNameDnsARecord" + "smithy.api#enumValue": "compliance" } }, - "EnableResourceNameDnsAAAARecord": { - "target": "com.amazonaws.ec2#Boolean", + "governance": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EnableResourceNameDnsAAAARecord", - "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostname with DNS AAAA\n records.

", - "smithy.api#xmlName": "enableResourceNameDnsAAAARecord" + "smithy.api#enumValue": "governance" } } + } + }, + "com.amazonaws.ec2#LockSnapshot": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#LockSnapshotRequest" + }, + "output": { + "target": "com.amazonaws.ec2#LockSnapshotResult" }, "traits": { - "smithy.api#documentation": "

Describes the options for instance hostnames.

" + "smithy.api#documentation": "

Locks an Amazon EBS snapshot in either governance or compliance \n mode to protect it against accidental or malicious deletions for a specific duration. A locked snapshot \n can't be deleted.

\n

You can also use this action to modify the lock settings for a snapshot that is already locked. The \n allowed modifications depend on the lock mode and lock state:

\n " } }, - "com.amazonaws.ec2#PrivateDnsNameOptionsRequest": { + "com.amazonaws.ec2#LockSnapshotRequest": { "type": "structure", "members": { - "HostnameType": { - "target": "com.amazonaws.ec2#HostnameType", + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", "traits": { - "smithy.api#documentation": "

The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name\n must be based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name\n must be based on the instance ID. For dual-stack subnets, you can specify whether DNS\n names use the instance IPv4 address or the instance ID.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the snapshot to lock.

", + "smithy.api#required": {} } }, - "EnableResourceNameDnsARecord": { + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS A\n records.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "EnableResourceNameDnsAAAARecord": { - "target": "com.amazonaws.ec2#Boolean", + "LockMode": { + "target": "com.amazonaws.ec2#LockMode", "traits": { - "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA\n records.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The mode in which to lock the snapshot. Specify one of the following:

\n ", + "smithy.api#required": {} } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the options for instance hostnames.

" - } - }, - "com.amazonaws.ec2#PrivateDnsNameOptionsResponse": { - "type": "structure", - "members": { - "HostnameType": { - "target": "com.amazonaws.ec2#HostnameType", + }, + "CoolOffPeriod": { + "target": "com.amazonaws.ec2#CoolOffPeriodRequestHours", "traits": { - "aws.protocols#ec2QueryName": "HostnameType", - "smithy.api#documentation": "

The type of hostname to assign to an instance.

", - "smithy.api#xmlName": "hostnameType" + "smithy.api#documentation": "

The cooling-off period during which you can unlock the snapshot or modify the lock settings after \n locking the snapshot in compliance mode, in hours. After the cooling-off period expires, you can't \n unlock or delete the snapshot, decrease the lock duration, or change the lock mode. You can increase \n the lock duration after the cooling-off period expires.

\n

The cooling-off period is optional when locking a snapshot in compliance mode. If you are locking \n the snapshot in governance mode, omit this parameter.

\n

To lock the snapshot in compliance mode immediately without a cooling-off period, omit this \n parameter.

\n

If you are extending the lock duration for a snapshot that is locked in compliance mode after \n the cooling-off period has expired, omit this parameter. If you specify a cooling-period in a such \n a request, the request fails.

\n

Allowed values: Min 1, max 72.

" } }, - "EnableResourceNameDnsARecord": { - "target": "com.amazonaws.ec2#Boolean", + "LockDuration": { + "target": "com.amazonaws.ec2#RetentionPeriodRequestDays", "traits": { - "aws.protocols#ec2QueryName": "EnableResourceNameDnsARecord", - "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS A\n records.

", - "smithy.api#xmlName": "enableResourceNameDnsARecord" + "smithy.api#documentation": "

The period of time for which to lock the snapshot, in days. The snapshot lock will automatically \n expire after this period lapses.

\n

You must specify either this parameter or ExpirationDate, but \n not both.

\n

Allowed values: Min: 1, max 36500

" } }, - "EnableResourceNameDnsAAAARecord": { - "target": "com.amazonaws.ec2#Boolean", + "ExpirationDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "EnableResourceNameDnsAAAARecord", - "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA\n records.

", - "smithy.api#xmlName": "enableResourceNameDnsAAAARecord" + "smithy.api#documentation": "

The date and time at which the snapshot lock is to automatically expire, in the UTC time zone \n (YYYY-MM-DDThh:mm:ss.sssZ).

\n

You must specify either this parameter or LockDuration, but \n not both.

" } } }, "traits": { - "smithy.api#documentation": "

Describes the options for instance hostnames.

" - } - }, - "com.amazonaws.ec2#PrivateIpAddressConfigSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ScheduledInstancesPrivateIpAddressConfig", - "traits": { - "smithy.api#xmlName": "PrivateIpAddressConfigSet" - } - } - }, - "com.amazonaws.ec2#PrivateIpAddressCount": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 31 - } + "smithy.api#input": {} } }, - "com.amazonaws.ec2#PrivateIpAddressSpecification": { + "com.amazonaws.ec2#LockSnapshotResult": { "type": "structure", "members": { - "Primary": { - "target": "com.amazonaws.ec2#Boolean", + "SnapshotId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Primary", - "smithy.api#documentation": "

Indicates whether the private IPv4 address is the primary private IPv4 address. Only\n one IPv4 address can be designated as primary.

", - "smithy.api#xmlName": "primary" + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The ID of the snapshot

", + "smithy.api#xmlName": "snapshotId" } }, - "PrivateIpAddress": { - "target": "com.amazonaws.ec2#String", + "LockState": { + "target": "com.amazonaws.ec2#LockState", "traits": { - "aws.protocols#ec2QueryName": "PrivateIpAddress", - "smithy.api#documentation": "

The private IPv4 address.

", - "smithy.api#xmlName": "privateIpAddress" + "aws.protocols#ec2QueryName": "LockState", + "smithy.api#documentation": "

The state of the snapshot lock. Valid states include:

\n ", + "smithy.api#xmlName": "lockState" + } + }, + "LockDuration": { + "target": "com.amazonaws.ec2#RetentionPeriodResponseDays", + "traits": { + "aws.protocols#ec2QueryName": "LockDuration", + "smithy.api#documentation": "

The period of time for which the snapshot is locked, in days.

", + "smithy.api#xmlName": "lockDuration" + } + }, + "CoolOffPeriod": { + "target": "com.amazonaws.ec2#CoolOffPeriodResponseHours", + "traits": { + "aws.protocols#ec2QueryName": "CoolOffPeriod", + "smithy.api#documentation": "

The compliance mode cooling-off period, in hours.

", + "smithy.api#xmlName": "coolOffPeriod" + } + }, + "CoolOffPeriodExpiresOn": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "CoolOffPeriodExpiresOn", + "smithy.api#documentation": "

The date and time at which the compliance mode cooling-off period expires, in the UTC time zone \n (YYYY-MM-DDThh:mm:ss.sssZ).

", + "smithy.api#xmlName": "coolOffPeriodExpiresOn" + } + }, + "LockCreatedOn": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "LockCreatedOn", + "smithy.api#documentation": "

The date and time at which the snapshot was locked, in the UTC time zone \n (YYYY-MM-DDThh:mm:ss.sssZ).

", + "smithy.api#xmlName": "lockCreatedOn" + } + }, + "LockExpiresOn": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "LockExpiresOn", + "smithy.api#documentation": "

The date and time at which the lock will expire, in the UTC time zone \n (YYYY-MM-DDThh:mm:ss.sssZ).

", + "smithy.api#xmlName": "lockExpiresOn" + } + }, + "LockDurationStartTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "LockDurationStartTime", + "smithy.api#documentation": "

The date and time at which the lock duration started, in the UTC time zone \n (YYYY-MM-DDThh:mm:ss.sssZ).

", + "smithy.api#xmlName": "lockDurationStartTime" } } - }, - "traits": { - "smithy.api#documentation": "

Describes a secondary private IPv4 address for a network interface.

" - } - }, - "com.amazonaws.ec2#PrivateIpAddressSpecificationList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#PrivateIpAddressSpecification", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#PrivateIpAddressStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#xmlName": "PrivateIpAddress" - } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#ProcessorInfo": { - "type": "structure", + "com.amazonaws.ec2#LockState": { + "type": "enum", "members": { - "SupportedArchitectures": { - "target": "com.amazonaws.ec2#ArchitectureTypeList", + "compliance": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SupportedArchitectures", - "smithy.api#documentation": "

The architectures supported by the instance type.

", - "smithy.api#xmlName": "supportedArchitectures" + "smithy.api#enumValue": "compliance" } }, - "SustainedClockSpeedInGhz": { - "target": "com.amazonaws.ec2#ProcessorSustainedClockSpeed", + "governance": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SustainedClockSpeedInGhz", - "smithy.api#documentation": "

The speed of the processor, in GHz.

", - "smithy.api#xmlName": "sustainedClockSpeedInGhz" + "smithy.api#enumValue": "governance" } }, - "SupportedFeatures": { - "target": "com.amazonaws.ec2#SupportedAdditionalProcessorFeatureList", + "compliance_cooloff": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "SupportedFeatures", - "smithy.api#documentation": "

Indicates whether the instance type supports AMD SEV-SNP. If the request returns \n amd-sev-snp, AMD SEV-SNP is supported. Otherwise, it is not supported. \n For more information, see \n AMD SEV-SNP.

", - "smithy.api#xmlName": "supportedFeatures" + "smithy.api#enumValue": "compliance-cooloff" } }, - "Manufacturer": { - "target": "com.amazonaws.ec2#CpuManufacturerName", + "expired": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Manufacturer", - "smithy.api#documentation": "

The manufacturer of the processor.

", - "smithy.api#xmlName": "manufacturer" + "smithy.api#enumValue": "expired" } } - }, - "traits": { - "smithy.api#documentation": "

Describes the processor used by the instance type.

" } }, - "com.amazonaws.ec2#ProcessorSustainedClockSpeed": { - "type": "double" - }, - "com.amazonaws.ec2#ProductCode": { + "com.amazonaws.ec2#LockedSnapshotsInfo": { "type": "structure", "members": { - "ProductCodeId": { + "OwnerId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ProductCode", - "smithy.api#documentation": "

The product code.

", - "smithy.api#xmlName": "productCode" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The account ID of the Amazon Web Services account that owns the snapshot.

", + "smithy.api#xmlName": "ownerId" } }, - "ProductCodeType": { - "target": "com.amazonaws.ec2#ProductCodeValues", + "SnapshotId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Type", - "smithy.api#documentation": "

The type of product code.

", - "smithy.api#xmlName": "type" + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The ID of the snapshot.

", + "smithy.api#xmlName": "snapshotId" + } + }, + "LockState": { + "target": "com.amazonaws.ec2#LockState", + "traits": { + "aws.protocols#ec2QueryName": "LockState", + "smithy.api#documentation": "

The state of the snapshot lock. Valid states include:

\n ", + "smithy.api#xmlName": "lockState" + } + }, + "LockDuration": { + "target": "com.amazonaws.ec2#RetentionPeriodResponseDays", + "traits": { + "aws.protocols#ec2QueryName": "LockDuration", + "smithy.api#documentation": "

The period of time for which the snapshot is locked, in days.

", + "smithy.api#xmlName": "lockDuration" + } + }, + "CoolOffPeriod": { + "target": "com.amazonaws.ec2#CoolOffPeriodResponseHours", + "traits": { + "aws.protocols#ec2QueryName": "CoolOffPeriod", + "smithy.api#documentation": "

The compliance mode cooling-off period, in hours.

", + "smithy.api#xmlName": "coolOffPeriod" + } + }, + "CoolOffPeriodExpiresOn": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "CoolOffPeriodExpiresOn", + "smithy.api#documentation": "

The date and time at which the compliance mode cooling-off period expires, in the UTC time zone \n (YYYY-MM-DDThh:mm:ss.sssZ).

", + "smithy.api#xmlName": "coolOffPeriodExpiresOn" + } + }, + "LockCreatedOn": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "LockCreatedOn", + "smithy.api#documentation": "

The date and time at which the snapshot was locked, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).

", + "smithy.api#xmlName": "lockCreatedOn" + } + }, + "LockDurationStartTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "LockDurationStartTime", + "smithy.api#documentation": "

The date and time at which the lock duration started, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).

\n

If you lock a snapshot that is in the pending state, the lock duration \n starts only once the snapshot enters the completed state.

", + "smithy.api#xmlName": "lockDurationStartTime" + } + }, + "LockExpiresOn": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "LockExpiresOn", + "smithy.api#documentation": "

The date and time at which the lock will expire, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).

", + "smithy.api#xmlName": "lockExpiresOn" } } }, "traits": { - "smithy.api#documentation": "

Describes a product code.

" + "smithy.api#documentation": "

Information about a locked snapshot.

" } }, - "com.amazonaws.ec2#ProductCodeList": { + "com.amazonaws.ec2#LockedSnapshotsInfoList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#ProductCode", + "target": "com.amazonaws.ec2#LockedSnapshotsInfo", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#ProductCodeStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#xmlName": "ProductCode" - } - } - }, - "com.amazonaws.ec2#ProductCodeValues": { + "com.amazonaws.ec2#LogDestinationType": { "type": "enum", "members": { - "devpay": { + "cloud_watch_logs": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "devpay" + "smithy.api#enumValue": "cloud-watch-logs" } }, - "marketplace": { + "s3": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "marketplace" + "smithy.api#enumValue": "s3" + } + }, + "kinesis_data_firehose": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "kinesis-data-firehose" } } } }, - "com.amazonaws.ec2#ProductDescriptionList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String" - } + "com.amazonaws.ec2#Long": { + "type": "long" }, - "com.amazonaws.ec2#PropagatingVgw": { + "com.amazonaws.ec2#MacHost": { "type": "structure", "members": { - "GatewayId": { - "target": "com.amazonaws.ec2#String", + "HostId": { + "target": "com.amazonaws.ec2#DedicatedHostId", "traits": { - "aws.protocols#ec2QueryName": "GatewayId", - "smithy.api#documentation": "

The ID of the virtual private gateway.

", - "smithy.api#xmlName": "gatewayId" + "aws.protocols#ec2QueryName": "HostId", + "smithy.api#documentation": "

\n The EC2 Mac Dedicated Host ID.\n

", + "smithy.api#xmlName": "hostId" + } + }, + "MacOSLatestSupportedVersions": { + "target": "com.amazonaws.ec2#MacOSVersionStringList", + "traits": { + "aws.protocols#ec2QueryName": "MacOSLatestSupportedVersionSet", + "smithy.api#documentation": "

\n The latest macOS versions that the EC2 Mac Dedicated Host can launch without being upgraded.\n

", + "smithy.api#xmlName": "macOSLatestSupportedVersionSet" } } }, "traits": { - "smithy.api#documentation": "

Describes a virtual private gateway propagating route.

" + "smithy.api#documentation": "

\n Information about the EC2 Mac Dedicated Host.\n

" } }, - "com.amazonaws.ec2#PropagatingVgwList": { + "com.amazonaws.ec2#MacHostList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#PropagatingVgw", + "target": "com.amazonaws.ec2#MacHost", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#Protocol": { - "type": "enum", + "com.amazonaws.ec2#MacModificationTask": { + "type": "structure", "members": { - "tcp": { - "target": "smithy.api#Unit", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "smithy.api#enumValue": "tcp" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the Amazon EC2 Mac instance.

", + "smithy.api#xmlName": "instanceId" } }, - "udp": { - "target": "smithy.api#Unit", + "MacModificationTaskId": { + "target": "com.amazonaws.ec2#MacModificationTaskId", "traits": { - "smithy.api#enumValue": "udp" + "aws.protocols#ec2QueryName": "MacModificationTaskId", + "smithy.api#documentation": "

The ID of task.

", + "smithy.api#xmlName": "macModificationTaskId" + } + }, + "MacSystemIntegrityProtectionConfig": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionConfiguration", + "traits": { + "aws.protocols#ec2QueryName": "MacSystemIntegrityProtectionConfig", + "smithy.api#documentation": "

[SIP modification tasks only] Information about the SIP \n configuration.

", + "smithy.api#xmlName": "macSystemIntegrityProtectionConfig" + } + }, + "StartTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "StartTime", + "smithy.api#documentation": "

The date and time the task was created, in the UTC timezone \n (YYYY-MM-DDThh:mm:ss.sssZ).

", + "smithy.api#xmlName": "startTime" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags assigned to the task.

", + "smithy.api#xmlName": "tagSet" + } + }, + "TaskState": { + "target": "com.amazonaws.ec2#MacModificationTaskState", + "traits": { + "aws.protocols#ec2QueryName": "TaskState", + "smithy.api#documentation": "

The state of the task.

", + "smithy.api#xmlName": "taskState" + } + }, + "TaskType": { + "target": "com.amazonaws.ec2#MacModificationTaskType", + "traits": { + "aws.protocols#ec2QueryName": "TaskType", + "smithy.api#documentation": "

The type of task.

", + "smithy.api#xmlName": "taskType" } } - } - }, - "com.amazonaws.ec2#ProtocolInt": { - "type": "integer", + }, "traits": { - "smithy.api#range": { - "min": 0, - "max": 255 - } + "smithy.api#documentation": "

Information about a System Integrity Protection (SIP) modification task or volume \n ownership delegation task for an Amazon EC2 Mac instance.

" } }, - "com.amazonaws.ec2#ProtocolIntList": { + "com.amazonaws.ec2#MacModificationTaskId": { + "type": "string" + }, + "com.amazonaws.ec2#MacModificationTaskIdList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#ProtocolInt", + "target": "com.amazonaws.ec2#MacModificationTaskId", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#ProtocolList": { + "com.amazonaws.ec2#MacModificationTaskList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#Protocol", + "target": "com.amazonaws.ec2#MacModificationTask", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#ProtocolValue": { + "com.amazonaws.ec2#MacModificationTaskState": { "type": "enum", "members": { - "gre": { + "successful": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "gre" + "smithy.api#enumValue": "successful" + } + }, + "failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "failed" + } + }, + "inprogress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "in-progress" + } + }, + "pending": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pending" } } } }, - "com.amazonaws.ec2#ProvisionByoipCidr": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ProvisionByoipCidrRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ProvisionByoipCidrResult" - }, - "traits": { - "smithy.api#documentation": "

Provisions an IPv4 or IPv6 address range for use with your Amazon Web Services resources through bring your own IP \n addresses (BYOIP) and creates a corresponding address pool. After the address range is\n provisioned, it is ready to be advertised using AdvertiseByoipCidr.

\n

Amazon Web Services verifies that you own the address range and are authorized to advertise it. \n You must ensure that the address range is registered to you and that you created an \n RPKI ROA to authorize Amazon ASNs 16509 and 14618 to advertise the address range. \n For more information, see Bring your own IP addresses (BYOIP) in the Amazon Elastic Compute Cloud User Guide.

\n

Provisioning an address range is an asynchronous operation, so the call returns immediately,\n but the address range is not ready to use until its status changes from pending-provision\n to provisioned. To monitor the status of an address range, use DescribeByoipCidrs. \n To allocate an Elastic IP address from your IPv4 address pool, use AllocateAddress \n with either the specific address from the address pool or the ID of the address pool.

" + "com.amazonaws.ec2#MacModificationTaskType": { + "type": "enum", + "members": { + "SIPModification": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "sip-modification" + } + }, + "VolumeOwnershipDelegation": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "volume-ownership-delegation" + } + } } }, - "com.amazonaws.ec2#ProvisionByoipCidrRequest": { + "com.amazonaws.ec2#MacOSVersionStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#MacSystemIntegrityProtectionConfiguration": { "type": "structure", "members": { - "Cidr": { - "target": "com.amazonaws.ec2#String", + "AppleInternal": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionSettingStatus", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The public IPv4 or IPv6 address range, in CIDR notation. The most specific IPv4 prefix that you can \n specify is /24. The most specific IPv6 address range that you can bring is /48 for CIDRs that are publicly advertisable and /56 for CIDRs that are not publicly advertisable. The address range cannot overlap with another address range that you've \n brought to this or another Region.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "AppleInternal", + "smithy.api#documentation": "

Indicates whether Apple Internal was enabled or disabled by the task.

", + "smithy.api#xmlName": "appleInternal" } }, - "CidrAuthorizationContext": { - "target": "com.amazonaws.ec2#CidrAuthorizationContext", + "BaseSystem": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionSettingStatus", "traits": { - "smithy.api#documentation": "

A signed document that proves that you are authorized to bring the specified IP address \n range to Amazon using BYOIP.

" + "aws.protocols#ec2QueryName": "BaseSystem", + "smithy.api#documentation": "

Indicates whether Base System was enabled or disabled by the task.

", + "smithy.api#xmlName": "baseSystem" } }, - "PubliclyAdvertisable": { - "target": "com.amazonaws.ec2#Boolean", + "DebuggingRestrictions": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionSettingStatus", "traits": { - "smithy.api#documentation": "

(IPv6 only) Indicate whether the address range will be publicly advertised to the\n internet.

\n

Default: true

" + "aws.protocols#ec2QueryName": "DebuggingRestrictions", + "smithy.api#documentation": "

Indicates whether Debugging Restrictions was enabled or disabled by the task.

", + "smithy.api#xmlName": "debuggingRestrictions" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "DTraceRestrictions": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionSettingStatus", "traits": { - "smithy.api#documentation": "

A description for the address range and the address pool.

" + "aws.protocols#ec2QueryName": "DTraceRestrictions", + "smithy.api#documentation": "

Indicates whether Dtrace Restrictions was enabled or disabled by the task.

", + "smithy.api#xmlName": "dTraceRestrictions" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "FilesystemProtections": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionSettingStatus", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "FilesystemProtections", + "smithy.api#documentation": "

Indicates whether Filesystem Protections was enabled or disabled by the task.

", + "smithy.api#xmlName": "filesystemProtections" } }, - "PoolTagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "KextSigning": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionSettingStatus", "traits": { - "smithy.api#documentation": "

The tags to apply to the address pool.

", - "smithy.api#xmlName": "PoolTagSpecification" + "aws.protocols#ec2QueryName": "KextSigning", + "smithy.api#documentation": "

Indicates whether Kext Signing was enabled or disabled by the task.

", + "smithy.api#xmlName": "kextSigning" } }, - "MultiRegion": { - "target": "com.amazonaws.ec2#Boolean", + "NvramProtections": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionSettingStatus", "traits": { - "smithy.api#documentation": "

Reserved.

" + "aws.protocols#ec2QueryName": "NvramProtections", + "smithy.api#documentation": "

Indicates whether NVRAM Protections was enabled or disabled by the task.

", + "smithy.api#xmlName": "nvramProtections" } }, - "NetworkBorderGroup": { - "target": "com.amazonaws.ec2#String", + "Status": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionSettingStatus", "traits": { - "smithy.api#documentation": "

If you have Local Zones enabled, you can choose a network border group for Local Zones when you provision and advertise a BYOIPv4 CIDR. Choose the network border group carefully as the EIP and the Amazon Web Services resource it is associated with must reside in the same network border group.

\n

You can provision BYOIP address ranges to and advertise them in the following Local Zone network border groups:

\n \n \n

You cannot provision or advertise BYOIPv6 address ranges in Local Zones at this time.

\n
" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

Indicates SIP was enabled or disabled by the task.

", + "smithy.api#xmlName": "status" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes the configuration for a System Integrity Protection (SIP) modification task.

" } }, - "com.amazonaws.ec2#ProvisionByoipCidrResult": { + "com.amazonaws.ec2#MacSystemIntegrityProtectionConfigurationRequest": { "type": "structure", "members": { - "ByoipCidr": { - "target": "com.amazonaws.ec2#ByoipCidr", + "AppleInternal": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionSettingStatus", "traits": { - "aws.protocols#ec2QueryName": "ByoipCidr", - "smithy.api#documentation": "

Information about the address range.

", - "smithy.api#xmlName": "byoipCidr" + "smithy.api#documentation": "

Enables or disables Apple Internal.

" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ProvisionIpamByoasn": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ProvisionIpamByoasnRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ProvisionIpamByoasnResult" - }, - "traits": { - "smithy.api#documentation": "

Provisions your Autonomous System Number (ASN) for use in your Amazon Web Services account. This action requires authorization context for Amazon to bring the ASN to an Amazon Web Services account. For more information, see Tutorial: Bring your ASN to IPAM in the Amazon VPC IPAM guide.

" - } - }, - "com.amazonaws.ec2#ProvisionIpamByoasnRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "BaseSystem": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionSettingStatus", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Enables or disables Base System.

" } }, - "IpamId": { - "target": "com.amazonaws.ec2#IpamId", + "DebuggingRestrictions": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionSettingStatus", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

An IPAM ID.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Enables or disables Debugging Restrictions.

" } }, - "Asn": { - "target": "com.amazonaws.ec2#String", + "DTraceRestrictions": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionSettingStatus", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A public 2-byte or 4-byte ASN.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Enables or disables Dtrace Restrictions.

" } }, - "AsnAuthorizationContext": { - "target": "com.amazonaws.ec2#AsnAuthorizationContext", + "FilesystemProtections": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionSettingStatus", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

An ASN authorization context.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Enables or disables Filesystem Protections.

" + } + }, + "KextSigning": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionSettingStatus", + "traits": { + "smithy.api#documentation": "

Enables or disables Kext Signing.

" + } + }, + "NvramProtections": { + "target": "com.amazonaws.ec2#MacSystemIntegrityProtectionSettingStatus", + "traits": { + "smithy.api#documentation": "

Enables or disables Nvram Protections.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes a custom configuration for a System Integrity Protection (SIP) modification task.

" } }, - "com.amazonaws.ec2#ProvisionIpamByoasnResult": { - "type": "structure", + "com.amazonaws.ec2#MacSystemIntegrityProtectionSettingStatus": { + "type": "enum", "members": { - "Byoasn": { - "target": "com.amazonaws.ec2#Byoasn", + "enabled": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Byoasn", - "smithy.api#documentation": "

An ASN and BYOIP CIDR association.

", - "smithy.api#xmlName": "byoasn" + "smithy.api#enumValue": "enabled" + } + }, + "disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disabled" } } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ProvisionIpamPoolCidr": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ProvisionIpamPoolCidrRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ProvisionIpamPoolCidrResult" - }, - "traits": { - "smithy.api#documentation": "

Provision a CIDR to an IPAM pool. You can use this action to provision new CIDRs to a top-level pool or to transfer a CIDR from a top-level pool to a pool within it.

\n

For more information, see Provision CIDRs to pools in the Amazon VPC IPAM User Guide.\n

" } }, - "com.amazonaws.ec2#ProvisionIpamPoolCidrRequest": { + "com.amazonaws.ec2#MaintenanceDetails": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "PendingMaintenance": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "PendingMaintenance", + "smithy.api#documentation": "

Verify existence of a pending maintenance.

", + "smithy.api#xmlName": "pendingMaintenance" } }, - "IpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", + "MaintenanceAutoAppliedAfter": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the IPAM pool to which you want to assign a CIDR.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "MaintenanceAutoAppliedAfter", + "smithy.api#documentation": "

The timestamp after which Amazon Web Services will automatically apply maintenance.

", + "smithy.api#xmlName": "maintenanceAutoAppliedAfter" } }, - "Cidr": { - "target": "com.amazonaws.ec2#String", + "LastMaintenanceApplied": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#documentation": "

The CIDR you want to assign to the IPAM pool. Either \"NetmaskLength\" or \"Cidr\" is required. This value will be null if you specify \"NetmaskLength\" and will be filled in during the provisioning process.

" + "aws.protocols#ec2QueryName": "LastMaintenanceApplied", + "smithy.api#documentation": "

Timestamp of last applied maintenance.

", + "smithy.api#xmlName": "lastMaintenanceApplied" } - }, - "CidrAuthorizationContext": { - "target": "com.amazonaws.ec2#IpamCidrAuthorizationContext", + } + }, + "traits": { + "smithy.api#documentation": "

Details for Site-to-Site VPN tunnel endpoint maintenance events.

" + } + }, + "com.amazonaws.ec2#ManagedBy": { + "type": "enum", + "members": { + "account": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

A signed document that proves that you are authorized to bring a specified IP address range to Amazon using BYOIP. This option applies to public pools only.

" + "smithy.api#enumValue": "account" } }, - "NetmaskLength": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#documentation": "

The netmask length of the CIDR you'd like to provision to a pool. Can be used for provisioning Amazon-provided IPv6 CIDRs to top-level pools and for provisioning CIDRs to pools with source pools. Cannot be used to provision BYOIP CIDRs to top-level pools. Either \"NetmaskLength\" or \"Cidr\" is required.

" - } - }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ProvisionIpamPoolCidrResult": { - "type": "structure", - "members": { - "IpamPoolCidr": { - "target": "com.amazonaws.ec2#IpamPoolCidr", + "declarative_policy": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "IpamPoolCidr", - "smithy.api#documentation": "

Information about the provisioned CIDR.

", - "smithy.api#xmlName": "ipamPoolCidr" + "smithy.api#enumValue": "declarative-policy" } } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ProvisionPublicIpv4PoolCidr": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ProvisionPublicIpv4PoolCidrRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ProvisionPublicIpv4PoolCidrResult" - }, - "traits": { - "smithy.api#documentation": "

Provision a CIDR to a public IPv4 pool.

\n

For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide.

" } }, - "com.amazonaws.ec2#ProvisionPublicIpv4PoolCidrRequest": { + "com.amazonaws.ec2#ManagedPrefixList": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "PrefixListId": { + "target": "com.amazonaws.ec2#PrefixListResourceId", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "PrefixListId", + "smithy.api#documentation": "

The ID of the prefix list.

", + "smithy.api#xmlName": "prefixListId" } }, - "IpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", + "AddressFamily": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the IPAM pool you would like to use to allocate this CIDR.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "AddressFamily", + "smithy.api#documentation": "

The IP address version.

", + "smithy.api#xmlName": "addressFamily" } }, - "PoolId": { - "target": "com.amazonaws.ec2#Ipv4PoolEc2Id", + "State": { + "target": "com.amazonaws.ec2#PrefixListState", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the public IPv4 pool you would like to use for this CIDR.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the prefix list.

", + "smithy.api#xmlName": "state" } }, - "NetmaskLength": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The netmask length of the CIDR you would like to allocate to the public IPv4 pool.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ProvisionPublicIpv4PoolCidrResult": { - "type": "structure", - "members": { - "PoolId": { - "target": "com.amazonaws.ec2#Ipv4PoolEc2Id", + "StateMessage": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "PoolId", - "smithy.api#documentation": "

The ID of the pool that you want to provision the CIDR to.

", - "smithy.api#xmlName": "poolId" + "aws.protocols#ec2QueryName": "StateMessage", + "smithy.api#documentation": "

The state message.

", + "smithy.api#xmlName": "stateMessage" } }, - "PoolAddressRange": { - "target": "com.amazonaws.ec2#PublicIpv4PoolRange", + "PrefixListArn": { + "target": "com.amazonaws.ec2#ResourceArn", "traits": { - "aws.protocols#ec2QueryName": "PoolAddressRange", - "smithy.api#documentation": "

Information about the address range of the public IPv4 pool.

", - "smithy.api#xmlName": "poolAddressRange" + "aws.protocols#ec2QueryName": "PrefixListArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the prefix list.

", + "smithy.api#xmlName": "prefixListArn" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ProvisionedBandwidth": { - "type": "structure", - "members": { - "ProvisionTime": { - "target": "com.amazonaws.ec2#DateTime", + }, + "PrefixListName": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ProvisionTime", - "smithy.api#documentation": "

Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

", - "smithy.api#xmlName": "provisionTime" + "aws.protocols#ec2QueryName": "PrefixListName", + "smithy.api#documentation": "

The name of the prefix list.

", + "smithy.api#xmlName": "prefixListName" } }, - "Provisioned": { - "target": "com.amazonaws.ec2#String", + "MaxEntries": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "Provisioned", - "smithy.api#documentation": "

Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

", - "smithy.api#xmlName": "provisioned" + "aws.protocols#ec2QueryName": "MaxEntries", + "smithy.api#documentation": "

The maximum number of entries for the prefix list.

", + "smithy.api#xmlName": "maxEntries" } }, - "RequestTime": { - "target": "com.amazonaws.ec2#DateTime", + "Version": { + "target": "com.amazonaws.ec2#Long", "traits": { - "aws.protocols#ec2QueryName": "RequestTime", - "smithy.api#documentation": "

Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

", - "smithy.api#xmlName": "requestTime" + "aws.protocols#ec2QueryName": "Version", + "smithy.api#documentation": "

The version of the prefix list.

", + "smithy.api#xmlName": "version" } }, - "Requested": { - "target": "com.amazonaws.ec2#String", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "aws.protocols#ec2QueryName": "Requested", - "smithy.api#documentation": "

Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

", - "smithy.api#xmlName": "requested" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags for the prefix list.

", + "smithy.api#xmlName": "tagSet" } }, - "Status": { + "OwnerId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

", - "smithy.api#xmlName": "status" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the owner of the prefix list.

", + "smithy.api#xmlName": "ownerId" } } }, "traits": { - "smithy.api#documentation": "

Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

" + "smithy.api#documentation": "

Describes a managed prefix list.

" } }, - "com.amazonaws.ec2#PtrUpdateStatus": { - "type": "structure", + "com.amazonaws.ec2#ManagedPrefixListSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ManagedPrefixList", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#MarketType": { + "type": "enum", "members": { - "Value": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Value", - "smithy.api#documentation": "

The value for the PTR record update.

", - "smithy.api#xmlName": "value" - } - }, - "Status": { - "target": "com.amazonaws.ec2#String", + "spot": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The status of the PTR record update.

", - "smithy.api#xmlName": "status" + "smithy.api#enumValue": "spot" } }, - "Reason": { - "target": "com.amazonaws.ec2#String", + "capacity_block": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Reason", - "smithy.api#documentation": "

The reason for the PTR record update.

", - "smithy.api#xmlName": "reason" + "smithy.api#enumValue": "capacity-block" } } - }, - "traits": { - "smithy.api#documentation": "

The status of an updated pointer (PTR) record for an Elastic IP address.

" } }, - "com.amazonaws.ec2#PublicIpAddress": { + "com.amazonaws.ec2#MarketplaceProductCode": { "type": "string" }, - "com.amazonaws.ec2#PublicIpStringList": { + "com.amazonaws.ec2#MarketplaceProductCodeList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#MarketplaceProductCode", "traits": { - "smithy.api#xmlName": "PublicIp" + "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#PublicIpv4Pool": { + "com.amazonaws.ec2#MarketplaceProductCodeRequest": { + "type": "string" + }, + "com.amazonaws.ec2#MarketplaceProductCodeRequestList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#MarketplaceProductCodeRequest", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#MaxIpv4AddrPerInterface": { + "type": "integer" + }, + "com.amazonaws.ec2#MaxIpv6AddrPerInterface": { + "type": "integer" + }, + "com.amazonaws.ec2#MaxNetworkInterfaces": { + "type": "integer" + }, + "com.amazonaws.ec2#MaxResults": { + "type": "integer" + }, + "com.amazonaws.ec2#MaxResults2": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.ec2#MaxResultsParam": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 100 + } + } + }, + "com.amazonaws.ec2#MaximumBandwidthInMbps": { + "type": "integer" + }, + "com.amazonaws.ec2#MaximumDaysSinceCreatedValue": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 2147483647 + } + } + }, + "com.amazonaws.ec2#MaximumDaysSinceDeprecatedValue": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 2147483647 + } + } + }, + "com.amazonaws.ec2#MaximumEbsAttachments": { + "type": "integer" + }, + "com.amazonaws.ec2#MaximumEfaInterfaces": { + "type": "integer" + }, + "com.amazonaws.ec2#MaximumEnaQueueCount": { + "type": "integer" + }, + "com.amazonaws.ec2#MaximumEnaQueueCountPerInterface": { + "type": "integer" + }, + "com.amazonaws.ec2#MaximumIops": { + "type": "integer" + }, + "com.amazonaws.ec2#MaximumNetworkCards": { + "type": "integer" + }, + "com.amazonaws.ec2#MaximumThroughputInMBps": { + "type": "double" + }, + "com.amazonaws.ec2#MediaAcceleratorInfo": { "type": "structure", "members": { - "PoolId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "PoolId", - "smithy.api#documentation": "

The ID of the address pool.

", - "smithy.api#xmlName": "poolId" - } - }, - "Description": { - "target": "com.amazonaws.ec2#String", + "Accelerators": { + "target": "com.amazonaws.ec2#MediaDeviceInfoList", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description of the address pool.

", - "smithy.api#xmlName": "description" + "aws.protocols#ec2QueryName": "Accelerators", + "smithy.api#documentation": "

Describes the media accelerators for the instance type.

", + "smithy.api#xmlName": "accelerators" } }, - "PoolAddressRanges": { - "target": "com.amazonaws.ec2#PublicIpv4PoolRangeSet", + "TotalMediaMemoryInMiB": { + "target": "com.amazonaws.ec2#TotalMediaMemory", "traits": { - "aws.protocols#ec2QueryName": "PoolAddressRangeSet", - "smithy.api#documentation": "

The address ranges.

", - "smithy.api#xmlName": "poolAddressRangeSet" + "aws.protocols#ec2QueryName": "TotalMediaMemoryInMiB", + "smithy.api#documentation": "

The total size of the memory for the media accelerators for the instance type, in\n MiB.

", + "smithy.api#xmlName": "totalMediaMemoryInMiB" } - }, - "TotalAddressCount": { - "target": "com.amazonaws.ec2#Integer", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the media accelerators for the instance type.

" + } + }, + "com.amazonaws.ec2#MediaDeviceCount": { + "type": "integer" + }, + "com.amazonaws.ec2#MediaDeviceInfo": { + "type": "structure", + "members": { + "Count": { + "target": "com.amazonaws.ec2#MediaDeviceCount", "traits": { - "aws.protocols#ec2QueryName": "TotalAddressCount", - "smithy.api#documentation": "

The total number of addresses.

", - "smithy.api#xmlName": "totalAddressCount" + "aws.protocols#ec2QueryName": "Count", + "smithy.api#documentation": "

The number of media accelerators for the instance type.

", + "smithy.api#xmlName": "count" } }, - "TotalAvailableAddressCount": { - "target": "com.amazonaws.ec2#Integer", + "Name": { + "target": "com.amazonaws.ec2#MediaDeviceName", "traits": { - "aws.protocols#ec2QueryName": "TotalAvailableAddressCount", - "smithy.api#documentation": "

The total number of available addresses.

", - "smithy.api#xmlName": "totalAvailableAddressCount" + "aws.protocols#ec2QueryName": "Name", + "smithy.api#documentation": "

The name of the media accelerator.

", + "smithy.api#xmlName": "name" } }, - "NetworkBorderGroup": { - "target": "com.amazonaws.ec2#String", + "Manufacturer": { + "target": "com.amazonaws.ec2#MediaDeviceManufacturerName", "traits": { - "aws.protocols#ec2QueryName": "NetworkBorderGroup", - "smithy.api#documentation": "

The name of the location from which the address pool is advertised. \n A network border group is a unique set of Availability Zones or Local Zones \n from where Amazon Web Services advertises public IP addresses.

", - "smithy.api#xmlName": "networkBorderGroup" + "aws.protocols#ec2QueryName": "Manufacturer", + "smithy.api#documentation": "

The manufacturer of the media accelerator.

", + "smithy.api#xmlName": "manufacturer" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "MemoryInfo": { + "target": "com.amazonaws.ec2#MediaDeviceMemoryInfo", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags for the address pool.

", - "smithy.api#xmlName": "tagSet" + "aws.protocols#ec2QueryName": "MemoryInfo", + "smithy.api#documentation": "

Describes the memory available to the media accelerator.

", + "smithy.api#xmlName": "memoryInfo" } } }, "traits": { - "smithy.api#documentation": "

Describes an IPv4 address pool.

" + "smithy.api#documentation": "

Describes the media accelerators for the instance type.

" } }, - "com.amazonaws.ec2#PublicIpv4PoolIdStringList": { + "com.amazonaws.ec2#MediaDeviceInfoList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#Ipv4PoolEc2Id", + "target": "com.amazonaws.ec2#MediaDeviceInfo", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#PublicIpv4PoolRange": { + "com.amazonaws.ec2#MediaDeviceManufacturerName": { + "type": "string" + }, + "com.amazonaws.ec2#MediaDeviceMemoryInfo": { "type": "structure", "members": { - "FirstAddress": { - "target": "com.amazonaws.ec2#String", + "SizeInMiB": { + "target": "com.amazonaws.ec2#MediaDeviceMemorySize", "traits": { - "aws.protocols#ec2QueryName": "FirstAddress", - "smithy.api#documentation": "

The first IP address in the range.

", - "smithy.api#xmlName": "firstAddress" + "aws.protocols#ec2QueryName": "SizeInMiB", + "smithy.api#documentation": "

The size of the memory available to each media accelerator, in MiB.

", + "smithy.api#xmlName": "sizeInMiB" } - }, - "LastAddress": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the memory available to the media accelerator.

" + } + }, + "com.amazonaws.ec2#MediaDeviceMemorySize": { + "type": "integer" + }, + "com.amazonaws.ec2#MediaDeviceName": { + "type": "string" + }, + "com.amazonaws.ec2#MembershipType": { + "type": "enum", + "members": { + "static": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "LastAddress", - "smithy.api#documentation": "

The last IP address in the range.

", - "smithy.api#xmlName": "lastAddress" + "smithy.api#enumValue": "static" } }, - "AddressCount": { - "target": "com.amazonaws.ec2#Integer", + "igmp": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AddressCount", - "smithy.api#documentation": "

The number of addresses in the range.

", - "smithy.api#xmlName": "addressCount" + "smithy.api#enumValue": "igmp" + } + } + } + }, + "com.amazonaws.ec2#MemoryGiBPerVCpu": { + "type": "structure", + "members": { + "Min": { + "target": "com.amazonaws.ec2#Double", + "traits": { + "aws.protocols#ec2QueryName": "Min", + "smithy.api#documentation": "

The minimum amount of memory per vCPU, in GiB. If this parameter is not specified, there is\n no minimum limit.

", + "smithy.api#xmlName": "min" } }, - "AvailableAddressCount": { - "target": "com.amazonaws.ec2#Integer", + "Max": { + "target": "com.amazonaws.ec2#Double", "traits": { - "aws.protocols#ec2QueryName": "AvailableAddressCount", - "smithy.api#documentation": "

The number of available addresses in the range.

", - "smithy.api#xmlName": "availableAddressCount" + "aws.protocols#ec2QueryName": "Max", + "smithy.api#documentation": "

The maximum amount of memory per vCPU, in GiB. If this parameter is not specified, there is\n no maximum limit.

", + "smithy.api#xmlName": "max" } } }, "traits": { - "smithy.api#documentation": "

Describes an address range of an IPv4 address pool.

" + "smithy.api#documentation": "

The minimum and maximum amount of memory per vCPU, in GiB.

\n

" } }, - "com.amazonaws.ec2#PublicIpv4PoolRangeSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#PublicIpv4PoolRange", - "traits": { - "smithy.api#xmlName": "item" + "com.amazonaws.ec2#MemoryGiBPerVCpuRequest": { + "type": "structure", + "members": { + "Min": { + "target": "com.amazonaws.ec2#Double", + "traits": { + "smithy.api#documentation": "

The minimum amount of memory per vCPU, in GiB. To specify no minimum limit, omit this\n parameter.

" + } + }, + "Max": { + "target": "com.amazonaws.ec2#Double", + "traits": { + "smithy.api#documentation": "

The maximum amount of memory per vCPU, in GiB. To specify no maximum limit, omit this\n parameter.

" + } } + }, + "traits": { + "smithy.api#documentation": "

The minimum and maximum amount of memory per vCPU, in GiB.

" } }, - "com.amazonaws.ec2#PublicIpv4PoolSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#PublicIpv4Pool", - "traits": { - "smithy.api#xmlName": "item" + "com.amazonaws.ec2#MemoryInfo": { + "type": "structure", + "members": { + "SizeInMiB": { + "target": "com.amazonaws.ec2#MemorySize", + "traits": { + "aws.protocols#ec2QueryName": "SizeInMiB", + "smithy.api#documentation": "

The size of the memory, in MiB.

", + "smithy.api#xmlName": "sizeInMiB" + } } + }, + "traits": { + "smithy.api#documentation": "

Describes the memory for the instance type.

" } }, - "com.amazonaws.ec2#Purchase": { + "com.amazonaws.ec2#MemoryMiB": { "type": "structure", "members": { - "CurrencyCode": { - "target": "com.amazonaws.ec2#CurrencyCodeValues", - "traits": { - "aws.protocols#ec2QueryName": "CurrencyCode", - "smithy.api#documentation": "

The currency in which the UpfrontPrice and HourlyPrice\n amounts are specified. At this time, the only supported currency is\n USD.

", - "smithy.api#xmlName": "currencyCode" - } - }, - "Duration": { + "Min": { "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "Duration", - "smithy.api#documentation": "

The duration of the reservation's term in seconds.

", - "smithy.api#xmlName": "duration" + "aws.protocols#ec2QueryName": "Min", + "smithy.api#documentation": "

The minimum amount of memory, in MiB. If this parameter is not specified, there is no minimum\n limit.

", + "smithy.api#xmlName": "min" } }, - "HostIdSet": { - "target": "com.amazonaws.ec2#ResponseHostIdSet", + "Max": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "HostIdSet", - "smithy.api#documentation": "

The IDs of the Dedicated Hosts associated with the reservation.

", - "smithy.api#xmlName": "hostIdSet" + "aws.protocols#ec2QueryName": "Max", + "smithy.api#documentation": "

The maximum amount of memory, in MiB. If this parameter is not specified, there is no\n maximum limit.

", + "smithy.api#xmlName": "max" } - }, - "HostReservationId": { - "target": "com.amazonaws.ec2#HostReservationId", - "traits": { - "aws.protocols#ec2QueryName": "HostReservationId", - "smithy.api#documentation": "

The ID of the reservation.

", - "smithy.api#xmlName": "hostReservationId" + } + }, + "traits": { + "smithy.api#documentation": "

The minimum and maximum amount of memory, in MiB.

" + } + }, + "com.amazonaws.ec2#MemoryMiBRequest": { + "type": "structure", + "members": { + "Min": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The minimum amount of memory, in MiB. To specify no minimum limit, specify\n 0.

", + "smithy.api#required": {} } }, - "HourlyPrice": { - "target": "com.amazonaws.ec2#String", + "Max": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "HourlyPrice", - "smithy.api#documentation": "

The hourly price of the reservation per hour.

", - "smithy.api#xmlName": "hourlyPrice" + "smithy.api#documentation": "

The maximum amount of memory, in MiB. To specify no maximum limit, omit this\n parameter.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The minimum and maximum amount of memory, in MiB.

" + } + }, + "com.amazonaws.ec2#MemorySize": { + "type": "long" + }, + "com.amazonaws.ec2#MetadataDefaultHttpTokensState": { + "type": "enum", + "members": { + "optional": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "optional" } }, - "InstanceFamily": { - "target": "com.amazonaws.ec2#String", + "required": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceFamily", - "smithy.api#documentation": "

The instance family on the Dedicated Host that the reservation can be associated\n with.

", - "smithy.api#xmlName": "instanceFamily" + "smithy.api#enumValue": "required" } }, - "PaymentOption": { - "target": "com.amazonaws.ec2#PaymentOption", + "no_preference": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PaymentOption", - "smithy.api#documentation": "

The payment option for the reservation.

", - "smithy.api#xmlName": "paymentOption" + "smithy.api#enumValue": "no-preference" + } + } + } + }, + "com.amazonaws.ec2#MetricPoint": { + "type": "structure", + "members": { + "StartDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "StartDate", + "smithy.api#documentation": "

The start date for the metric point. The starting date for the metric point. The starting time must be formatted\n as yyyy-mm-ddThh:mm:ss. For example, 2022-06-10T12:00:00.000Z.

", + "smithy.api#xmlName": "startDate" } }, - "UpfrontPrice": { + "EndDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "EndDate", + "smithy.api#documentation": "

The end date for the metric point. The ending time must be formatted as yyyy-mm-ddThh:mm:ss. For example, 2022-06-12T12:00:00.000Z.

", + "smithy.api#xmlName": "endDate" + } + }, + "Value": { + "target": "com.amazonaws.ec2#Float", + "traits": { + "aws.protocols#ec2QueryName": "Value", + "smithy.api#xmlName": "value" + } + }, + "Status": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "UpfrontPrice", - "smithy.api#documentation": "

The upfront price of the reservation.

", - "smithy.api#xmlName": "upfrontPrice" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The status of the metric point.

", + "smithy.api#xmlName": "status" } } }, "traits": { - "smithy.api#documentation": "

Describes the result of the purchase.

" + "smithy.api#documentation": "

Indicates whether the network was healthy or degraded at a particular point. The value is aggregated from the startDate to the endDate. Currently only five_minutes is supported.

" } }, - "com.amazonaws.ec2#PurchaseCapacityBlock": { + "com.amazonaws.ec2#MetricPoints": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#MetricPoint", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#MetricType": { + "type": "enum", + "members": { + "aggregate_latency": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "aggregate-latency" + } + } + } + }, + "com.amazonaws.ec2#MillisecondDateTime": { + "type": "timestamp" + }, + "com.amazonaws.ec2#ModifyAddressAttribute": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#PurchaseCapacityBlockRequest" + "target": "com.amazonaws.ec2#ModifyAddressAttributeRequest" }, "output": { - "target": "com.amazonaws.ec2#PurchaseCapacityBlockResult" + "target": "com.amazonaws.ec2#ModifyAddressAttributeResult" }, "traits": { - "smithy.api#documentation": "

Purchase the Capacity Block for use with your account. \n\t\t With Capacity Blocks you ensure GPU capacity is available for machine learning (ML) workloads. You must specify the ID of the Capacity Block offering you are purchasing.

" + "smithy.api#documentation": "

Modifies an attribute of the specified Elastic IP address. For requirements, see Using reverse DNS for email applications.

" } }, - "com.amazonaws.ec2#PurchaseCapacityBlockRequest": { + "com.amazonaws.ec2#ModifyAddressAttributeRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" - } - }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "AllocationId": { + "target": "com.amazonaws.ec2#AllocationId", "traits": { - "smithy.api#documentation": "

The tags to apply to the Capacity Block during launch.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

[EC2-VPC] The allocation ID.

", + "smithy.api#required": {} } }, - "CapacityBlockOfferingId": { - "target": "com.amazonaws.ec2#OfferingId", + "DomainName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Capacity Block offering.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The domain name to modify for the IP address.

" } }, - "InstancePlatform": { - "target": "com.amazonaws.ec2#CapacityReservationInstancePlatform", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The type of operating system for which to reserve capacity.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -85422,15 +84742,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#PurchaseCapacityBlockResult": { + "com.amazonaws.ec2#ModifyAddressAttributeResult": { "type": "structure", "members": { - "CapacityReservation": { - "target": "com.amazonaws.ec2#CapacityReservation", + "Address": { + "target": "com.amazonaws.ec2#AddressAttribute", "traits": { - "aws.protocols#ec2QueryName": "CapacityReservation", - "smithy.api#documentation": "

The Capacity Reservation.

", - "smithy.api#xmlName": "capacityReservation" + "aws.protocols#ec2QueryName": "Address", + "smithy.api#documentation": "

Information about the Elastic IP address.

", + "smithy.api#xmlName": "address" } } }, @@ -85438,60 +84758,41 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#PurchaseHostReservation": { + "com.amazonaws.ec2#ModifyAvailabilityZoneGroup": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#PurchaseHostReservationRequest" + "target": "com.amazonaws.ec2#ModifyAvailabilityZoneGroupRequest" }, "output": { - "target": "com.amazonaws.ec2#PurchaseHostReservationResult" + "target": "com.amazonaws.ec2#ModifyAvailabilityZoneGroupResult" }, "traits": { - "smithy.api#documentation": "

Purchase a reservation with configurations that match those of your Dedicated Host.\n You must have active Dedicated Hosts in your account before you purchase a reservation.\n This action results in the specified reservation being purchased and charged to your\n account.

" + "smithy.api#documentation": "

Changes the opt-in status of the specified zone group for your account.

" } }, - "com.amazonaws.ec2#PurchaseHostReservationRequest": { + "com.amazonaws.ec2#ModifyAvailabilityZoneGroupRequest": { "type": "structure", "members": { - "ClientToken": { + "GroupName": { "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

" - } - }, - "CurrencyCode": { - "target": "com.amazonaws.ec2#CurrencyCodeValues", - "traits": { - "smithy.api#documentation": "

The currency in which the totalUpfrontPrice, LimitPrice, and\n totalHourlyPrice amounts are specified. At this time, the only\n supported currency is USD.

" - } - }, - "HostIdSet": { - "target": "com.amazonaws.ec2#RequestHostIdSet", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the Dedicated Hosts with which the reservation will be associated.

", + "smithy.api#documentation": "

The name of the Availability Zone group, Local Zone group, or Wavelength Zone\n group.

", "smithy.api#required": {} } }, - "LimitPrice": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The specified limit is checked against the total upfront cost of the reservation\n (calculated as the offering's upfront cost multiplied by the host count). If the total\n upfront cost is greater than the specified price limit, the request fails. This is used\n to ensure that the purchase does not exceed the expected upfront cost of the purchase.\n At this time, the only supported currency is USD. For example, to indicate\n a limit price of USD 100, specify 100.00.

" - } - }, - "OfferingId": { - "target": "com.amazonaws.ec2#OfferingId", + "OptInStatus": { + "target": "com.amazonaws.ec2#ModifyAvailabilityZoneOptInStatus", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the offering.

", + "smithy.api#documentation": "

Indicates whether to opt in to the zone group. The only valid value is opted-in. \n You must contact Amazon Web Services Support to opt out of a Local Zone or Wavelength Zone group.

", "smithy.api#required": {} } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The tags to apply to the Dedicated Host Reservation during purchase.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } } }, @@ -85499,47 +84800,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#PurchaseHostReservationResult": { + "com.amazonaws.ec2#ModifyAvailabilityZoneGroupResult": { "type": "structure", "members": { - "ClientToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

", - "smithy.api#xmlName": "clientToken" - } - }, - "CurrencyCode": { - "target": "com.amazonaws.ec2#CurrencyCodeValues", - "traits": { - "aws.protocols#ec2QueryName": "CurrencyCode", - "smithy.api#documentation": "

The currency in which the totalUpfrontPrice and\n totalHourlyPrice amounts are specified. At this time, the only\n supported currency is USD.

", - "smithy.api#xmlName": "currencyCode" - } - }, - "Purchase": { - "target": "com.amazonaws.ec2#PurchaseSet", - "traits": { - "aws.protocols#ec2QueryName": "Purchase", - "smithy.api#documentation": "

Describes the details of the purchase.

", - "smithy.api#xmlName": "purchase" - } - }, - "TotalHourlyPrice": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "TotalHourlyPrice", - "smithy.api#documentation": "

The total hourly price of the reservation calculated per hour.

", - "smithy.api#xmlName": "totalHourlyPrice" - } - }, - "TotalUpfrontPrice": { - "target": "com.amazonaws.ec2#String", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "TotalUpfrontPrice", - "smithy.api#documentation": "

The total amount charged to your account when you purchase the reservation.

", - "smithy.api#xmlName": "totalUpfrontPrice" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Is true if the request succeeds, and an error otherwise.

", + "smithy.api#xmlName": "return" } } }, @@ -85547,718 +84816,390 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#PurchaseRequest": { - "type": "structure", + "com.amazonaws.ec2#ModifyAvailabilityZoneOptInStatus": { + "type": "enum", "members": { - "InstanceCount": { - "target": "com.amazonaws.ec2#Integer", + "opted_in": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The number of instances.

", - "smithy.api#required": {} + "smithy.api#enumValue": "opted-in" } }, - "PurchaseToken": { - "target": "com.amazonaws.ec2#String", + "not_opted_in": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The purchase token.

", - "smithy.api#required": {} + "smithy.api#enumValue": "not-opted-in" } } - }, - "traits": { - "smithy.api#documentation": "

Describes a request to purchase Scheduled Instances.

" } }, - "com.amazonaws.ec2#PurchaseRequestSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#PurchaseRequest", - "traits": { - "smithy.api#xmlName": "PurchaseRequest" - } + "com.amazonaws.ec2#ModifyCapacityReservation": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyCapacityReservationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyCapacityReservationResult" }, "traits": { - "smithy.api#length": { - "min": 1 - } + "smithy.api#documentation": "

Modifies a Capacity Reservation's capacity, instance eligibility, and the conditions\n\t\t\tunder which it is to be released. You can't modify a Capacity Reservation's instance\n\t\t\ttype, EBS optimization, platform, instance store settings, Availability Zone, or\n\t\t\ttenancy. If you need to modify any of these attributes, we recommend that you cancel the\n\t\t\tCapacity Reservation, and then create a new one with the required attributes. For more\n\t\t\tinformation, see Modify an active\n\t\t\t\tCapacity Reservation.

\n

The allowed modifications depend on the state of the Capacity Reservation:

\n " } }, - "com.amazonaws.ec2#PurchaseReservedInstancesOffering": { + "com.amazonaws.ec2#ModifyCapacityReservationFleet": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#PurchaseReservedInstancesOfferingRequest" + "target": "com.amazonaws.ec2#ModifyCapacityReservationFleetRequest" }, "output": { - "target": "com.amazonaws.ec2#PurchaseReservedInstancesOfferingResult" + "target": "com.amazonaws.ec2#ModifyCapacityReservationFleetResult" }, "traits": { - "smithy.api#documentation": "

Purchases a Reserved Instance for use with your account. With Reserved Instances, you pay a lower \n hourly rate compared to On-Demand instance pricing.

\n

Use DescribeReservedInstancesOfferings to get a list of Reserved Instance offerings \n\t\t\tthat match your specifications. After you've purchased a Reserved Instance, you can check for your\n\t\t\tnew Reserved Instance with DescribeReservedInstances.

\n

To queue a purchase for a future date and time, specify a purchase time. If you do not specify a\n purchase time, the default is the current time.

\n

For more information, see Reserved Instances and \n \t Reserved Instance Marketplace \n \t in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Modifies a Capacity Reservation Fleet.

\n

When you modify the total target capacity of a Capacity Reservation Fleet, the Fleet\n\t\t\tautomatically creates new Capacity Reservations, or modifies or cancels existing\n\t\t\tCapacity Reservations in the Fleet to meet the new total target capacity. When you\n\t\t\tmodify the end date for the Fleet, the end dates for all of the individual Capacity\n\t\t\tReservations in the Fleet are updated accordingly.

" } }, - "com.amazonaws.ec2#PurchaseReservedInstancesOfferingRequest": { + "com.amazonaws.ec2#ModifyCapacityReservationFleetRequest": { "type": "structure", "members": { - "InstanceCount": { - "target": "com.amazonaws.ec2#Integer", + "CapacityReservationFleetId": { + "target": "com.amazonaws.ec2#CapacityReservationFleetId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The number of Reserved Instances to purchase.

", + "smithy.api#documentation": "

The ID of the Capacity Reservation Fleet to modify.

", "smithy.api#required": {} } }, - "ReservedInstancesOfferingId": { - "target": "com.amazonaws.ec2#ReservedInstancesOfferingId", + "TotalTargetCapacity": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Reserved Instance offering to purchase.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The total number of capacity units to be reserved by the Capacity Reservation Fleet.\n\t\t\tThis value, together with the instance type weights that you assign to each instance\n\t\t\ttype used by the Fleet determine the number of instances for which the Fleet reserves\n\t\t\tcapacity. Both values are based on units that make sense for your workload. For more\n\t\t\tinformation, see Total target\n\t\t\t\tcapacity in the Amazon EC2 User Guide.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "EndDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The date and time at which the Capacity Reservation Fleet expires. When the Capacity\n\t\t\tReservation Fleet expires, its state changes to expired and all of the\n\t\t\tCapacity Reservations in the Fleet expire.

\n

The Capacity Reservation Fleet expires within an hour after the specified time. For\n\t\t\texample, if you specify 5/31/2019, 13:30:55, the Capacity\n\t\t\tReservation Fleet is guaranteed to expire between 13:30:55 and\n\t\t\t\t14:30:55 on 5/31/2019.

\n

You can't specify EndDate and \n\t\t\t\tRemoveEndDate in the same request.

" } }, - "LimitPrice": { - "target": "com.amazonaws.ec2#ReservedInstanceLimitPrice", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "LimitPrice", - "smithy.api#documentation": "

Specified for Reserved Instance Marketplace offerings to limit the total order and ensure that the Reserved Instances are not purchased at unexpected prices.

", - "smithy.api#xmlName": "limitPrice" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } }, - "PurchaseTime": { - "target": "com.amazonaws.ec2#DateTime", + "RemoveEndDate": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The time at which to purchase the Reserved Instance, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

" + "smithy.api#documentation": "

Indicates whether to remove the end date from the Capacity Reservation Fleet. If you\n\t\t\tremove the end date, the Capacity Reservation Fleet does not expire and it remains\n\t\t\tactive until you explicitly cancel it using the CancelCapacityReservationFleet action.

\n

You can't specify RemoveEndDate and EndDate in the same request.

" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for PurchaseReservedInstancesOffering.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#PurchaseReservedInstancesOfferingResult": { + "com.amazonaws.ec2#ModifyCapacityReservationFleetResult": { "type": "structure", "members": { - "ReservedInstancesId": { - "target": "com.amazonaws.ec2#String", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesId", - "smithy.api#documentation": "

The IDs of the purchased Reserved Instances. If your purchase crosses into a discounted\n pricing tier, the final Reserved Instances IDs might change. For more information, see Crossing\n pricing tiers in the Amazon Elastic Compute Cloud User Guide.

", - "smithy.api#xmlName": "reservedInstancesId" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of PurchaseReservedInstancesOffering.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#PurchaseScheduledInstances": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#PurchaseScheduledInstancesRequest" - }, - "output": { - "target": "com.amazonaws.ec2#PurchaseScheduledInstancesResult" - }, - "traits": { - "smithy.api#documentation": "\n

You can no longer purchase Scheduled Instances.

\n
\n

Purchases the Scheduled Instances with the specified schedule.

\n

Scheduled Instances enable you to purchase Amazon EC2 compute capacity by the hour for a one-year term.\n Before you can purchase a Scheduled Instance, you must call DescribeScheduledInstanceAvailability\n to check for available schedules and obtain a purchase token. After you purchase a Scheduled Instance,\n you must call RunScheduledInstances during each scheduled time period.

\n

After you purchase a Scheduled Instance, you can't cancel, modify, or resell your purchase.

" - } - }, - "com.amazonaws.ec2#PurchaseScheduledInstancesRequest": { + "com.amazonaws.ec2#ModifyCapacityReservationRequest": { "type": "structure", "members": { - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "CapacityReservationId": { + "target": "com.amazonaws.ec2#CapacityReservationId", "traits": { - "smithy.api#documentation": "

Unique, case-sensitive identifier that ensures the idempotency of the request. \n For more information, see Ensuring Idempotency.

", - "smithy.api#idempotencyToken": {} + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Capacity Reservation.

", + "smithy.api#required": {} } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The number of instances for which to reserve capacity. The number of instances can't\n\t\t\tbe increased or decreased by more than 1000 in a single request.

" } }, - "PurchaseRequests": { - "target": "com.amazonaws.ec2#PurchaseRequestSet", + "EndDate": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The purchase requests.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "PurchaseRequest" + "smithy.api#documentation": "

The date and time at which the Capacity Reservation expires. When a Capacity\n\t\t\tReservation expires, the reserved capacity is released and you can no longer launch\n\t\t\tinstances into it. The Capacity Reservation's state changes to expired when\n\t\t\tit reaches its end date and time.

\n

The Capacity Reservation is cancelled within an hour from the specified time. For\n\t\t\texample, if you specify 5/31/2019, 13:30:55, the Capacity Reservation is guaranteed to\n\t\t\tend between 13:30:55 and 14:30:55 on 5/31/2019.

\n

You must provide an EndDate value if EndDateType is\n\t\t\t\tlimited. Omit EndDate if EndDateType is\n\t\t\t\tunlimited.

" } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the parameters for PurchaseScheduledInstances.

", - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#PurchaseScheduledInstancesResult": { - "type": "structure", - "members": { - "ScheduledInstanceSet": { - "target": "com.amazonaws.ec2#PurchasedScheduledInstanceSet", + }, + "EndDateType": { + "target": "com.amazonaws.ec2#EndDateType", "traits": { - "aws.protocols#ec2QueryName": "ScheduledInstanceSet", - "smithy.api#documentation": "

Information about the Scheduled Instances.

", - "smithy.api#xmlName": "scheduledInstanceSet" + "smithy.api#documentation": "

Indicates the way in which the Capacity Reservation ends. A Capacity Reservation can\n\t\t\thave one of the following end types:

\n " } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the output of PurchaseScheduledInstances.

", - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#PurchaseSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Purchase", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#PurchasedScheduledInstanceSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ScheduledInstance", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#RIProductDescription": { - "type": "enum", - "members": { - "Linux_UNIX": { - "target": "smithy.api#Unit", + }, + "Accept": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "Linux/UNIX" + "smithy.api#documentation": "

Reserved. Capacity Reservations you have created are accepted by default.

" } }, - "Linux_UNIX_Amazon_VPC_": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "Linux/UNIX (Amazon VPC)" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } }, - "Windows": { - "target": "smithy.api#Unit", + "AdditionalInfo": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "Windows" + "smithy.api#documentation": "

Reserved for future use.

" } }, - "Windows_Amazon_VPC_": { - "target": "smithy.api#Unit", + "InstanceMatchCriteria": { + "target": "com.amazonaws.ec2#InstanceMatchCriteria", "traits": { - "smithy.api#enumValue": "Windows (Amazon VPC)" + "smithy.api#documentation": "

The matching criteria (instance eligibility) that you want to use in the modified\n\t\t\tCapacity Reservation. If you change the instance eligibility of an existing Capacity\n\t\t\tReservation from targeted to open, any running instances that\n\t\t\tmatch the attributes of the Capacity Reservation, have the\n\t\t\t\tCapacityReservationPreference set to open, and are not yet\n\t\t\trunning in the Capacity Reservation, will automatically use the modified Capacity\n\t\t\tReservation.

\n

To modify the instance eligibility, the Capacity Reservation must be completely idle\n\t\t\t(zero usage).

" } } + }, + "traits": { + "smithy.api#input": {} } }, - "com.amazonaws.ec2#RamdiskId": { - "type": "string" - }, - "com.amazonaws.ec2#ReasonCodesList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ReportInstanceReasonCodes", - "traits": { - "smithy.api#xmlName": "item" + "com.amazonaws.ec2#ModifyCapacityReservationResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" + } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.ec2#RebootInstances": { + "com.amazonaws.ec2#ModifyClientVpnEndpoint": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#RebootInstancesRequest" + "target": "com.amazonaws.ec2#ModifyClientVpnEndpointRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.ec2#ModifyClientVpnEndpointResult" }, "traits": { - "smithy.api#documentation": "

Requests a reboot of the specified instances. This operation is asynchronous; it only\n queues a request to reboot the specified instances. The operation succeeds if the\n instances are valid and belong to you. Requests to reboot terminated instances are\n ignored.

\n

If an instance does not cleanly shut down within a few minutes, Amazon EC2 performs a\n hard reboot.

\n

For more information about troubleshooting, see Troubleshoot an unreachable\n instance in the Amazon EC2 User Guide.

", - "smithy.api#examples": [ - { - "title": "To reboot an EC2 instance", - "documentation": "This example reboots the specified EC2 instance.", - "input": { - "InstanceIds": [ - "i-1234567890abcdef5" - ] - }, - "output": {} - } - ] + "smithy.api#documentation": "

Modifies the specified Client VPN endpoint. Modifying the DNS server resets existing client connections.

" } }, - "com.amazonaws.ec2#RebootInstancesRequest": { + "com.amazonaws.ec2#ModifyClientVpnEndpointRequest": { "type": "structure", "members": { - "InstanceIds": { - "target": "com.amazonaws.ec2#InstanceIdStringList", + "ClientVpnEndpointId": { + "target": "com.amazonaws.ec2#ClientVpnEndpointId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The instance IDs.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "InstanceId" + "smithy.api#documentation": "

The ID of the Client VPN endpoint to modify.

", + "smithy.api#required": {} } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#RecurringCharge": { - "type": "structure", - "members": { - "Amount": { - "target": "com.amazonaws.ec2#Double", - "traits": { - "aws.protocols#ec2QueryName": "Amount", - "smithy.api#documentation": "

The amount of the recurring charge.

", - "smithy.api#xmlName": "amount" - } - }, - "Frequency": { - "target": "com.amazonaws.ec2#RecurringChargeFrequency", - "traits": { - "aws.protocols#ec2QueryName": "Frequency", - "smithy.api#documentation": "

The frequency of the recurring charge.

", - "smithy.api#xmlName": "frequency" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a recurring charge.

" - } - }, - "com.amazonaws.ec2#RecurringChargeFrequency": { - "type": "enum", - "members": { - "Hourly": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Hourly" - } - } - } - }, - "com.amazonaws.ec2#RecurringChargesList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#RecurringCharge", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ReferencedSecurityGroup": { - "type": "structure", - "members": { - "GroupId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "GroupId", - "smithy.api#documentation": "

The ID of the security group.

", - "smithy.api#xmlName": "groupId" - } - }, - "PeeringStatus": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "PeeringStatus", - "smithy.api#documentation": "

The status of a VPC peering connection, if applicable.

", - "smithy.api#xmlName": "peeringStatus" - } - }, - "UserId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "UserId", - "smithy.api#documentation": "

The Amazon Web Services account ID.

", - "smithy.api#xmlName": "userId" - } - }, - "VpcId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#xmlName": "vpcId" - } - }, - "VpcPeeringConnectionId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "VpcPeeringConnectionId", - "smithy.api#documentation": "

The ID of the VPC peering connection (if applicable).

", - "smithy.api#xmlName": "vpcPeeringConnectionId" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the security group that is referenced in the security group rule.

" - } - }, - "com.amazonaws.ec2#Region": { - "type": "structure", - "members": { - "Endpoint": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "RegionEndpoint", - "smithy.api#documentation": "

The Region service endpoint.

", - "smithy.api#xmlName": "regionEndpoint" - } - }, - "RegionName": { + "ServerCertificateArn": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "RegionName", - "smithy.api#documentation": "

The name of the Region.

", - "smithy.api#xmlName": "regionName" + "smithy.api#documentation": "

The ARN of the server certificate to be used. The server certificate must be provisioned in \n\t\t\tCertificate Manager (ACM).

" } }, - "OptInStatus": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "OptInStatus", - "smithy.api#documentation": "

The Region opt-in status. The possible values are opt-in-not-required, opted-in, and \n not-opted-in.

", - "smithy.api#xmlName": "optInStatus" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a Region.

" - } - }, - "com.amazonaws.ec2#RegionList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Region", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#RegionNameStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#xmlName": "RegionName" - } - } - }, - "com.amazonaws.ec2#RegionNames": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String" - }, - "traits": { - "smithy.api#length": { - "min": 0, - "max": 10 - } - } - }, - "com.amazonaws.ec2#RegisterImage": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#RegisterImageRequest" - }, - "output": { - "target": "com.amazonaws.ec2#RegisterImageResult" - }, - "traits": { - "smithy.api#documentation": "

Registers an AMI. When you're creating an instance-store backed AMI, registering the AMI\n is the final step in the creation process. For more information about creating AMIs, see\n Create your\n own AMI in the Amazon Elastic Compute Cloud User Guide.

\n \n

For Amazon EBS-backed instances, CreateImage creates and registers the AMI\n in a single request, so you don't have to register the AMI yourself. We recommend that you\n always use CreateImage unless you have a specific reason to use\n RegisterImage.

\n
\n

If needed, you can deregister an AMI at any time. Any modifications you make to an AMI backed by an instance store volume invalidates its registration. \n If you make changes to an image, deregister the previous image and register the new image.

\n

\n Register a snapshot of a root device volume\n

\n

You can use RegisterImage to create an Amazon EBS-backed Linux AMI from\n a snapshot of a root device volume. You specify the snapshot using a block device mapping.\n You can't set the encryption state of the volume using the block device mapping. If the \n snapshot is encrypted, or encryption by default is enabled, the root volume of an instance \n launched from the AMI is encrypted.

\n

For more information, see Create a Linux AMI from a snapshot and Use encryption with Amazon EBS-backed AMIs\n in the Amazon Elastic Compute Cloud User Guide.

\n

\n Amazon Web Services Marketplace product codes\n

\n

If any snapshots have Amazon Web Services Marketplace product codes, they are copied to the new\n AMI.

\n

Windows and some Linux distributions, such as Red Hat Enterprise Linux (RHEL) and SUSE\n Linux Enterprise Server (SLES), use the Amazon EC2 billing product code associated with an AMI to\n verify the subscription status for package updates. To create a new AMI for operating systems\n that require a billing product code, instead of registering the AMI, do the following to\n preserve the billing product code association:

\n
    \n
  1. \n

    Launch an instance from an existing AMI with that billing product code.

    \n
  2. \n
  3. \n

    Customize the instance.

    \n
  4. \n
  5. \n

    Create an AMI from the instance using CreateImage.

    \n
  6. \n
\n

If you purchase a Reserved Instance to apply to an On-Demand Instance that was launched\n from an AMI with a billing product code, make sure that the Reserved Instance has the matching\n billing product code. If you purchase a Reserved Instance without the matching billing product\n code, the Reserved Instance will not be applied to the On-Demand Instance. For information\n about how to obtain the platform details and billing information of an AMI, see Understand AMI\n billing information in the Amazon EC2 User Guide.

" - } - }, - "com.amazonaws.ec2#RegisterImageRequest": { - "type": "structure", - "members": { - "ImageLocation": { - "target": "com.amazonaws.ec2#String", + "ConnectionLogOptions": { + "target": "com.amazonaws.ec2#ConnectionLogOptions", "traits": { - "smithy.api#documentation": "

The full path to your AMI manifest in Amazon S3 storage. The specified bucket must have the \n \t\taws-exec-read canned access control list (ACL) to ensure that it can be accessed \n \t\tby Amazon EC2. For more information, see Canned ACLs in the \n \t\tAmazon S3 Service Developer Guide.

" + "smithy.api#documentation": "

Information about the client connection logging options.

\n

If you enable client connection logging, data about client connections is sent to a\n\t\t\tCloudwatch Logs log stream. The following information is logged:

\n " } }, - "Architecture": { - "target": "com.amazonaws.ec2#ArchitectureValues", + "DnsServers": { + "target": "com.amazonaws.ec2#DnsServersOptionsModifyStructure", "traits": { - "aws.protocols#ec2QueryName": "Architecture", - "smithy.api#documentation": "

The architecture of the AMI.

\n

Default: For Amazon EBS-backed AMIs, i386.\n For instance store-backed AMIs, the architecture specified in the manifest file.

", - "smithy.api#xmlName": "architecture" + "smithy.api#documentation": "

Information about the DNS servers to be used by Client VPN connections. A Client VPN endpoint can have \n\t\t\tup to two DNS servers.

" } }, - "BlockDeviceMappings": { - "target": "com.amazonaws.ec2#BlockDeviceMappingRequestList", + "VpnPort": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The block device mapping entries.

\n

If you specify an Amazon EBS volume using the ID of an Amazon EBS snapshot, you can't specify the encryption state of the volume.

\n

If you create an AMI on an Outpost, then all backing snapshots must be on the same\n Outpost or in the Region of that Outpost. AMIs on an Outpost that include local snapshots can\n be used to launch instances on the same Outpost only. For more information, Amazon EBS local\n snapshots on Outposts in the Amazon EBS User Guide.

", - "smithy.api#xmlName": "BlockDeviceMapping" + "smithy.api#documentation": "

The port number to assign to the Client VPN endpoint for TCP and UDP traffic.

\n

Valid Values: 443 | 1194\n

\n

Default Value: 443\n

" } }, "Description": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

A description for your AMI.

", - "smithy.api#xmlName": "description" + "smithy.api#documentation": "

A brief description of the Client VPN endpoint.

" } }, - "DryRun": { + "SplitTunnel": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Indicates whether the VPN is split-tunnel.

\n

For information about split-tunnel VPN endpoints, see Split-tunnel Client VPN endpoint in the \n \tClient VPN Administrator Guide.

" } }, - "EnaSupport": { + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "EnaSupport", - "smithy.api#documentation": "

Set to true to enable enhanced networking with ENA for the AMI and any instances that you launch from the AMI.

\n

This option is supported only for HVM AMIs. Specifying this option with a PV AMI can make instances launched from the AMI unreachable.

", - "smithy.api#xmlName": "enaSupport" - } - }, - "KernelId": { - "target": "com.amazonaws.ec2#KernelId", - "traits": { - "aws.protocols#ec2QueryName": "KernelId", - "smithy.api#documentation": "

The ID of the kernel.

", - "smithy.api#xmlName": "kernelId" - } - }, - "Name": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Name", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

A name for your AMI.

\n

Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)

", - "smithy.api#required": {}, - "smithy.api#xmlName": "name" - } - }, - "BillingProducts": { - "target": "com.amazonaws.ec2#BillingProductList", - "traits": { - "smithy.api#documentation": "

The billing product codes. Your account must be authorized to specify billing product codes.

\n

If your account is not authorized to specify billing product codes, you can publish AMIs\n that include billable software and list them on the Amazon Web Services Marketplace. You must first register as a seller\n on the Amazon Web Services Marketplace. For more information, see Getting started as a\n seller and AMI-based\n products in the Amazon Web Services Marketplace Seller Guide.

", - "smithy.api#xmlName": "BillingProduct" - } - }, - "RamdiskId": { - "target": "com.amazonaws.ec2#RamdiskId", - "traits": { - "aws.protocols#ec2QueryName": "RamdiskId", - "smithy.api#documentation": "

The ID of the RAM disk.

", - "smithy.api#xmlName": "ramdiskId" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } }, - "RootDeviceName": { - "target": "com.amazonaws.ec2#String", + "SecurityGroupIds": { + "target": "com.amazonaws.ec2#ClientVpnSecurityGroupIdSet", "traits": { - "aws.protocols#ec2QueryName": "RootDeviceName", - "smithy.api#documentation": "

The device name of the root device volume (for example, /dev/sda1).

", - "smithy.api#xmlName": "rootDeviceName" + "smithy.api#documentation": "

The IDs of one or more security groups to apply to the target network.

", + "smithy.api#xmlName": "SecurityGroupId" } }, - "SriovNetSupport": { - "target": "com.amazonaws.ec2#String", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "aws.protocols#ec2QueryName": "SriovNetSupport", - "smithy.api#documentation": "

Set to simple to enable enhanced networking with the Intel 82599 Virtual Function interface for the AMI and any instances that you launch from the AMI.

\n

There is no way to disable sriovNetSupport at this time.

\n

This option is supported only for HVM AMIs. Specifying this option with a PV AMI can make instances launched from the AMI unreachable.

", - "smithy.api#xmlName": "sriovNetSupport" + "smithy.api#documentation": "

The ID of the VPC to associate with the Client VPN endpoint.

" } }, - "VirtualizationType": { - "target": "com.amazonaws.ec2#String", + "SelfServicePortal": { + "target": "com.amazonaws.ec2#SelfServicePortal", "traits": { - "aws.protocols#ec2QueryName": "VirtualizationType", - "smithy.api#documentation": "

The type of virtualization (hvm | paravirtual).

\n

Default: paravirtual\n

", - "smithy.api#xmlName": "virtualizationType" + "smithy.api#documentation": "

Specify whether to enable the self-service portal for the Client VPN endpoint.

" } }, - "BootMode": { - "target": "com.amazonaws.ec2#BootModeValues", + "ClientConnectOptions": { + "target": "com.amazonaws.ec2#ClientConnectOptions", "traits": { - "smithy.api#documentation": "

The boot mode of the AMI. A value of uefi-preferred indicates that the AMI supports both UEFI and Legacy BIOS.

\n \n

The operating system contained in the AMI must be configured to support the specified boot mode.

\n
\n

For more information, see Boot modes in the\n Amazon EC2 User Guide.

" + "smithy.api#documentation": "

The options for managing connection authorization for new client connections.

" } }, - "TpmSupport": { - "target": "com.amazonaws.ec2#TpmSupportValues", + "SessionTimeoutHours": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

Set to v2.0 to enable Trusted Platform Module (TPM) support. For more\n information, see NitroTPM in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

The maximum VPN session duration time in hours.

\n

Valid values: 8 | 10 | 12 | 24\n

\n

Default value: 24\n

" } }, - "UefiData": { - "target": "com.amazonaws.ec2#StringType", + "ClientLoginBannerOptions": { + "target": "com.amazonaws.ec2#ClientLoginBannerOptions", "traits": { - "smithy.api#documentation": "

Base64 representation of the non-volatile UEFI variable store. To retrieve the UEFI data,\n use the GetInstanceUefiData command. You can inspect and modify the UEFI data by using the\n python-uefivars tool on\n GitHub. For more information, see UEFI Secure Boot in the\n Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Options for enabling a customizable text banner that will be displayed on\n\t\t\tAmazon Web Services provided clients when a VPN session is established.

" } }, - "ImdsSupport": { - "target": "com.amazonaws.ec2#ImdsSupportValues", + "ClientRouteEnforcementOptions": { + "target": "com.amazonaws.ec2#ClientRouteEnforcementOptions", "traits": { - "smithy.api#documentation": "

Set to v2.0 to indicate that IMDSv2 is specified in the AMI. Instances\n launched from this AMI will have HttpTokens automatically set to\n required so that, by default, the instance requires that IMDSv2 is used when\n requesting instance metadata. In addition, HttpPutResponseHopLimit is set to\n 2. For more information, see Configure\n the AMI in the Amazon EC2 User Guide.

\n \n

If you set the value to v2.0, make sure that your AMI software can support IMDSv2.

\n
" + "smithy.api#documentation": "

Client route enforcement is a feature of the Client VPN service that helps enforce administrator defined routes on devices connected through the VPN. T\n\t\this feature helps improve your security posture by ensuring that network traffic originating from a connected client is not inadvertently sent outside the VPN tunnel.

\n

Client route enforcement works by monitoring the route table of a connected device for routing policy changes to the VPN connection. If the feature detects any VPN routing policy modifications, it will automatically force an update to the route table, \n\t\t\treverting it back to the expected route configurations.

" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "DisconnectOnSessionTimeout": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The tags to apply to the AMI.

\n

To tag the AMI, the value for ResourceType must be image. If you\n specify another value for ResourceType, the request fails.

\n

To tag an AMI after it has been registered, see CreateTags.

", - "smithy.api#xmlName": "TagSpecification" + "smithy.api#documentation": "

Indicates whether the client VPN session is disconnected after the maximum timeout specified in sessionTimeoutHours is reached. If true, users are prompted to reconnect client VPN. If false, client VPN attempts to reconnect automatically. The default value is true.

" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for RegisterImage.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#RegisterImageResult": { + "com.amazonaws.ec2#ModifyClientVpnEndpointResult": { "type": "structure", "members": { - "ImageId": { - "target": "com.amazonaws.ec2#String", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The ID of the newly registered AMI.

", - "smithy.api#xmlName": "imageId" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of RegisterImage.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#RegisterInstanceEventNotificationAttributes": { + "com.amazonaws.ec2#ModifyDefaultCreditSpecification": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#RegisterInstanceEventNotificationAttributesRequest" + "target": "com.amazonaws.ec2#ModifyDefaultCreditSpecificationRequest" }, "output": { - "target": "com.amazonaws.ec2#RegisterInstanceEventNotificationAttributesResult" + "target": "com.amazonaws.ec2#ModifyDefaultCreditSpecificationResult" }, "traits": { - "smithy.api#documentation": "

Registers a set of tag keys to include in scheduled event notifications for your resources. \n \t\t

\n

To remove tags, use DeregisterInstanceEventNotificationAttributes.

" + "smithy.api#documentation": "

Modifies the default credit option for CPU usage of burstable performance instances.\n The default credit option is set at the account level per Amazon Web Services Region, and\n is specified per instance family. All new burstable performance instances in the account\n launch using the default credit option.

\n

\n ModifyDefaultCreditSpecification is an asynchronous operation, which\n works at an Amazon Web Services Region level and modifies the credit option for each\n Availability Zone. All zones in a Region are updated within five minutes. But if\n instances are launched during this operation, they might not get the new credit option\n until the zone is updated. To verify whether the update has occurred, you can call\n GetDefaultCreditSpecification and check\n DefaultCreditSpecification for updates.

\n

For more information, see Burstable\n performance instances in the Amazon EC2 User Guide.

" } }, - "com.amazonaws.ec2#RegisterInstanceEventNotificationAttributesRequest": { + "com.amazonaws.ec2#ModifyDefaultCreditSpecificationRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } }, - "InstanceTagAttribute": { - "target": "com.amazonaws.ec2#RegisterInstanceTagAttributeRequest", + "InstanceFamily": { + "target": "com.amazonaws.ec2#UnlimitedSupportedInstanceFamily", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Information about the tag keys to register.

", + "smithy.api#documentation": "

The instance family.

", "smithy.api#required": {} } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#RegisterInstanceEventNotificationAttributesResult": { - "type": "structure", - "members": { - "InstanceTagAttribute": { - "target": "com.amazonaws.ec2#InstanceTagNotificationAttribute", + }, + "CpuCredits": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "InstanceTagAttribute", - "smithy.api#documentation": "

The resulting set of tag keys.

", - "smithy.api#xmlName": "instanceTagAttribute" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The credit option for CPU usage of the instance family.

\n

Valid Values: standard | unlimited\n

", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.ec2#RegisterInstanceTagAttributeRequest": { + "com.amazonaws.ec2#ModifyDefaultCreditSpecificationResult": { "type": "structure", "members": { - "IncludeAllTagsOfInstance": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Indicates whether to register all tag keys in the current Region. Specify true \n \tto register all tag keys.

" - } - }, - "InstanceTagKeys": { - "target": "com.amazonaws.ec2#InstanceTagKeySet", + "InstanceFamilyCreditSpecification": { + "target": "com.amazonaws.ec2#InstanceFamilyCreditSpecification", "traits": { - "smithy.api#documentation": "

The tag keys to register.

", - "smithy.api#xmlName": "InstanceTagKey" + "aws.protocols#ec2QueryName": "InstanceFamilyCreditSpecification", + "smithy.api#documentation": "

The default credit option for CPU usage of the instance family.

", + "smithy.api#xmlName": "instanceFamilyCreditSpecification" } } }, "traits": { - "smithy.api#documentation": "

Information about the tag keys to register for the current Region. You can either specify \n \tindividual tag keys or register all tag keys in the current Region. You must specify either\n \tIncludeAllTagsOfInstance or InstanceTagKeys in the request

" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupMembers": { + "com.amazonaws.ec2#ModifyEbsDefaultKmsKeyId": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupMembersRequest" + "target": "com.amazonaws.ec2#ModifyEbsDefaultKmsKeyIdRequest" }, "output": { - "target": "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupMembersResult" + "target": "com.amazonaws.ec2#ModifyEbsDefaultKmsKeyIdResult" }, "traits": { - "smithy.api#documentation": "

Registers members (network interfaces) with the transit gateway multicast group. A member is a network interface associated\n with a supported EC2 instance that receives multicast traffic. For information about\n supported instances, see Multicast\n Consideration in Amazon VPC Transit Gateways.

\n

After you add the members, use SearchTransitGatewayMulticastGroups to verify that the members were added\n to the transit gateway multicast group.

" + "smithy.api#documentation": "

Changes the default KMS key for EBS encryption by default for your account in this Region.

\n

Amazon Web Services creates a unique Amazon Web Services managed KMS key in each Region for use with encryption by default. If\n you change the default KMS key to a symmetric customer managed KMS key, it is used instead of the Amazon Web Services\n managed KMS key. Amazon EBS does not support asymmetric KMS keys.

\n

If you delete or disable the customer managed KMS key that you specified for use with\n encryption by default, your instances will fail to launch.

\n

For more information, see Amazon EBS encryption\n in the Amazon EBS User Guide.

" } }, - "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupMembersRequest": { + "com.amazonaws.ec2#ModifyEbsDefaultKmsKeyIdRequest": { "type": "structure", "members": { - "TransitGatewayMulticastDomainId": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

", - "smithy.api#required": {} - } - }, - "GroupIpAddress": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The IP address assigned to the transit gateway multicast group.

" - } - }, - "NetworkInterfaceIds": { - "target": "com.amazonaws.ec2#TransitGatewayNetworkInterfaceIdList", + "KmsKeyId": { + "target": "com.amazonaws.ec2#KmsKeyId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The group members' network interface IDs to register with the transit gateway multicast group.

", + "smithy.api#documentation": "

The identifier of the KMS key to use for Amazon EBS encryption.\n If this parameter is not specified, your KMS key for Amazon EBS is used. If KmsKeyId is\n specified, the encrypted state must be true.

\n

You can specify the KMS key using any of the following:

\n \n

Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an ID, alias, or ARN that is not valid, \n the action can appear to complete, but eventually fails.

\n

Amazon EBS does not support asymmetric KMS keys.

", "smithy.api#required": {} } }, @@ -86273,15 +85214,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupMembersResult": { + "com.amazonaws.ec2#ModifyEbsDefaultKmsKeyIdResult": { "type": "structure", "members": { - "RegisteredMulticastGroupMembers": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastRegisteredGroupMembers", + "KmsKeyId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "RegisteredMulticastGroupMembers", - "smithy.api#documentation": "

Information about the registered transit gateway multicast group members.

", - "smithy.api#xmlName": "registeredMulticastGroupMembers" + "aws.protocols#ec2QueryName": "KmsKeyId", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the default KMS key for encryption by default.

", + "smithy.api#xmlName": "kmsKeyId" } } }, @@ -86289,47 +85230,58 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupSources": { + "com.amazonaws.ec2#ModifyFleet": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupSourcesRequest" + "target": "com.amazonaws.ec2#ModifyFleetRequest" }, "output": { - "target": "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupSourcesResult" + "target": "com.amazonaws.ec2#ModifyFleetResult" }, "traits": { - "smithy.api#documentation": "

Registers sources (network interfaces) with the specified transit gateway multicast group.

\n

A multicast source is a network interface attached to a supported instance that sends\n multicast traffic. For information about supported instances, see Multicast\n Considerations in Amazon VPC Transit Gateways.

\n

After you add the source, use SearchTransitGatewayMulticastGroups to verify that the source was added to the multicast\n group.

" + "smithy.api#documentation": "

Modifies the specified EC2 Fleet.

\n

You can only modify an EC2 Fleet request of type maintain.

\n

While the EC2 Fleet is being modified, it is in the modifying state.

\n

To scale up your EC2 Fleet, increase its target capacity. The EC2 Fleet launches the additional\n Spot Instances according to the allocation strategy for the EC2 Fleet request. If the allocation\n strategy is lowest-price, the EC2 Fleet launches instances using the Spot Instance\n pool with the lowest price. If the allocation strategy is diversified, the\n EC2 Fleet distributes the instances across the Spot Instance pools. If the allocation strategy\n is capacity-optimized, EC2 Fleet launches instances from Spot Instance pools with optimal\n capacity for the number of instances that are launching.

\n

To scale down your EC2 Fleet, decrease its target capacity. First, the EC2 Fleet cancels any open\n requests that exceed the new target capacity. You can request that the EC2 Fleet terminate Spot\n Instances until the size of the fleet no longer exceeds the new target capacity. If the\n allocation strategy is lowest-price, the EC2 Fleet terminates the instances with\n the highest price per unit. If the allocation strategy is capacity-optimized,\n the EC2 Fleet terminates the instances in the Spot Instance pools that have the least available\n Spot Instance capacity. If the allocation strategy is diversified, the EC2 Fleet terminates\n instances across the Spot Instance pools. Alternatively, you can request that the EC2 Fleet keep\n the fleet at its current size, but not replace any Spot Instances that are interrupted or\n that you terminate manually.

\n

If you are finished with your EC2 Fleet for now, but will use it again later, you can set the\n target capacity to 0.

" } }, - "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupSourcesRequest": { + "com.amazonaws.ec2#ModifyFleetRequest": { "type": "structure", "members": { - "TransitGatewayMulticastDomainId": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

", - "smithy.api#required": {} + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "GroupIpAddress": { - "target": "com.amazonaws.ec2#String", + "ExcessCapacityTerminationPolicy": { + "target": "com.amazonaws.ec2#FleetExcessCapacityTerminationPolicy", "traits": { - "smithy.api#documentation": "

The IP address assigned to the transit gateway multicast group.

" + "smithy.api#documentation": "

Indicates whether running instances should be terminated if the total target capacity of\n the EC2 Fleet is decreased below the current size of the EC2 Fleet.

\n

Supported only for fleets of type maintain.

" } }, - "NetworkInterfaceIds": { - "target": "com.amazonaws.ec2#TransitGatewayNetworkInterfaceIdList", + "LaunchTemplateConfigs": { + "target": "com.amazonaws.ec2#FleetLaunchTemplateConfigListRequest", + "traits": { + "smithy.api#documentation": "

The launch template and overrides.

", + "smithy.api#xmlName": "LaunchTemplateConfig" + } + }, + "FleetId": { + "target": "com.amazonaws.ec2#FleetId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The group sources' network interface IDs to register with the transit gateway multicast group.

", + "smithy.api#documentation": "

The ID of the EC2 Fleet.

", "smithy.api#required": {} } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "TargetCapacitySpecification": { + "target": "com.amazonaws.ec2#TargetCapacitySpecificationRequest", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The size of the EC2 Fleet.

" + } + }, + "Context": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Reserved.

" } } }, @@ -86337,15 +85289,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupSourcesResult": { + "com.amazonaws.ec2#ModifyFleetResult": { "type": "structure", "members": { - "RegisteredMulticastGroupSources": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastRegisteredGroupSources", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "RegisteredMulticastGroupSources", - "smithy.api#documentation": "

Information about the transit gateway multicast group sources.

", - "smithy.api#xmlName": "registeredMulticastGroupSources" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

If the request succeeds, the response returns true. If the request fails,\n no response is returned, and instead an error message is returned.

", + "smithy.api#xmlName": "return" } } }, @@ -86353,93 +85305,162 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#RejectTransitGatewayMulticastDomainAssociations": { + "com.amazonaws.ec2#ModifyFpgaImageAttribute": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#RejectTransitGatewayMulticastDomainAssociationsRequest" + "target": "com.amazonaws.ec2#ModifyFpgaImageAttributeRequest" }, "output": { - "target": "com.amazonaws.ec2#RejectTransitGatewayMulticastDomainAssociationsResult" + "target": "com.amazonaws.ec2#ModifyFpgaImageAttributeResult" }, "traits": { - "smithy.api#documentation": "

Rejects a request to associate cross-account subnets with a transit gateway multicast domain.

" + "smithy.api#documentation": "

Modifies the specified attribute of the specified Amazon FPGA Image (AFI).

" } }, - "com.amazonaws.ec2#RejectTransitGatewayMulticastDomainAssociationsRequest": { + "com.amazonaws.ec2#ModifyFpgaImageAttributeRequest": { "type": "structure", "members": { - "TransitGatewayMulticastDomainId": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainId", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "FpgaImageId": { + "target": "com.amazonaws.ec2#FpgaImageId", "traits": { - "smithy.api#documentation": "

The ID of the transit gateway attachment.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the AFI.

", + "smithy.api#required": {} } }, - "SubnetIds": { - "target": "com.amazonaws.ec2#ValueStringList", + "Attribute": { + "target": "com.amazonaws.ec2#FpgaImageAttributeName", "traits": { - "smithy.api#documentation": "

The IDs of the subnets to associate with the transit gateway multicast domain.

" + "smithy.api#documentation": "

The name of the attribute.

" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "OperationType": { + "target": "com.amazonaws.ec2#OperationType", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The operation type.

" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#RejectTransitGatewayMulticastDomainAssociationsResult": { - "type": "structure", - "members": { - "Associations": { - "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainAssociations", + }, + "UserIds": { + "target": "com.amazonaws.ec2#UserIdStringList", "traits": { - "aws.protocols#ec2QueryName": "Associations", - "smithy.api#documentation": "

Information about the multicast domain associations.

", - "smithy.api#xmlName": "associations" - } + "smithy.api#documentation": "

The Amazon Web Services account IDs. This parameter is valid only when modifying the loadPermission attribute.

", + "smithy.api#xmlName": "UserId" + } + }, + "UserGroups": { + "target": "com.amazonaws.ec2#UserGroupStringList", + "traits": { + "smithy.api#documentation": "

The user groups. This parameter is valid only when modifying the loadPermission attribute.

", + "smithy.api#xmlName": "UserGroup" + } + }, + "ProductCodes": { + "target": "com.amazonaws.ec2#ProductCodeStringList", + "traits": { + "smithy.api#documentation": "

The product codes. After you add a product code to an AFI, it can't be removed.\n\t\t This parameter is valid only when modifying the productCodes attribute.

", + "smithy.api#xmlName": "ProductCode" + } + }, + "LoadPermission": { + "target": "com.amazonaws.ec2#LoadPermissionModifications", + "traits": { + "smithy.api#documentation": "

The load permission for the AFI.

" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A description for the AFI.

" + } + }, + "Name": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A name for the AFI.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyFpgaImageAttributeResult": { + "type": "structure", + "members": { + "FpgaImageAttribute": { + "target": "com.amazonaws.ec2#FpgaImageAttribute", + "traits": { + "aws.protocols#ec2QueryName": "FpgaImageAttribute", + "smithy.api#documentation": "

Information about the attribute.

", + "smithy.api#xmlName": "fpgaImageAttribute" + } } }, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.ec2#RejectTransitGatewayPeeringAttachment": { + "com.amazonaws.ec2#ModifyHosts": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#RejectTransitGatewayPeeringAttachmentRequest" + "target": "com.amazonaws.ec2#ModifyHostsRequest" }, "output": { - "target": "com.amazonaws.ec2#RejectTransitGatewayPeeringAttachmentResult" + "target": "com.amazonaws.ec2#ModifyHostsResult" }, "traits": { - "smithy.api#documentation": "

Rejects a transit gateway peering attachment request.

" + "smithy.api#documentation": "

Modify the auto-placement setting of a Dedicated Host. When auto-placement is enabled,\n any instances that you launch with a tenancy of host but without a specific\n host ID are placed onto any available Dedicated Host in your account that has\n auto-placement enabled. When auto-placement is disabled, you need to provide a host ID\n to have the instance launch onto a specific host. If no host ID is provided, the\n instance is launched onto a suitable host with auto-placement enabled.

\n

You can also use this API action to modify a Dedicated Host to support either multiple\n instance types in an instance family, or to support a specific instance type\n only.

" } }, - "com.amazonaws.ec2#RejectTransitGatewayPeeringAttachmentRequest": { + "com.amazonaws.ec2#ModifyHostsRequest": { "type": "structure", "members": { - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "HostRecovery": { + "target": "com.amazonaws.ec2#HostRecovery", + "traits": { + "smithy.api#documentation": "

Indicates whether to enable or disable host recovery for the Dedicated Host. For more\n information, see Host recovery in\n the Amazon EC2 User Guide.

" + } + }, + "InstanceType": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Specifies the instance type to be supported by the Dedicated Host. Specify this\n parameter to modify a Dedicated Host to support only a specific instance type.

\n

If you want to modify a Dedicated Host to support multiple instance types in its\n current instance family, omit this parameter and specify InstanceFamily instead. You cannot specify InstanceType and InstanceFamily in the\n same request.

" + } + }, + "InstanceFamily": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Specifies the instance family to be supported by the Dedicated Host. Specify this\n parameter to modify a Dedicated Host to support multiple instance types within its\n current instance family.

\n

If you want to modify a Dedicated Host to support a specific instance type only, omit\n this parameter and specify InstanceType instead. You\n cannot specify InstanceFamily and InstanceType in the same request.

" + } + }, + "HostMaintenance": { + "target": "com.amazonaws.ec2#HostMaintenance", + "traits": { + "smithy.api#documentation": "

Indicates whether to enable or disable host maintenance for the Dedicated Host. For\n more information, see Host\n maintenance in the Amazon EC2 User Guide.

" + } + }, + "HostIds": { + "target": "com.amazonaws.ec2#RequestHostIdList", "traits": { + "aws.protocols#ec2QueryName": "HostId", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the transit gateway peering attachment.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The IDs of the Dedicated Hosts to modify.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "hostId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "AutoPlacement": { + "target": "com.amazonaws.ec2#AutoPlacement", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "AutoPlacement", + "smithy.api#documentation": "

Specify whether to enable or disable auto-placement.

", + "smithy.api#xmlName": "autoPlacement" } } }, @@ -86447,15 +85468,23 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#RejectTransitGatewayPeeringAttachmentResult": { + "com.amazonaws.ec2#ModifyHostsResult": { "type": "structure", "members": { - "TransitGatewayPeeringAttachment": { - "target": "com.amazonaws.ec2#TransitGatewayPeeringAttachment", + "Successful": { + "target": "com.amazonaws.ec2#ResponseHostIdList", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayPeeringAttachment", - "smithy.api#documentation": "

The transit gateway peering attachment.

", - "smithy.api#xmlName": "transitGatewayPeeringAttachment" + "aws.protocols#ec2QueryName": "Successful", + "smithy.api#documentation": "

The IDs of the Dedicated Hosts that were successfully modified.

", + "smithy.api#xmlName": "successful" + } + }, + "Unsuccessful": { + "target": "com.amazonaws.ec2#UnsuccessfulItemList", + "traits": { + "aws.protocols#ec2QueryName": "Unsuccessful", + "smithy.api#documentation": "

The IDs of the Dedicated Hosts that could not be modified. Check whether the setting\n you requested can be used.

", + "smithy.api#xmlName": "unsuccessful" } } }, @@ -86463,33 +85492,35 @@ "smithy.api#output": {} } }, - "com.amazonaws.ec2#RejectTransitGatewayVpcAttachment": { + "com.amazonaws.ec2#ModifyIdFormat": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#RejectTransitGatewayVpcAttachmentRequest" + "target": "com.amazonaws.ec2#ModifyIdFormatRequest" }, "output": { - "target": "com.amazonaws.ec2#RejectTransitGatewayVpcAttachmentResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Rejects a request to attach a VPC to a transit gateway.

\n

The VPC attachment must be in the pendingAcceptance state.\n Use DescribeTransitGatewayVpcAttachments to view your pending VPC attachment requests.\n Use AcceptTransitGatewayVpcAttachment to accept a VPC attachment request.

" + "smithy.api#documentation": "

Modifies the ID format for the specified resource on a per-Region basis. You can\n specify that resources should receive longer IDs (17-character IDs) when they are\n created.

\n

This request can only be used to modify longer ID settings for resource types that\n are within the opt-in period. Resources currently in their opt-in period include:\n bundle | conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | internet-gateway | network-acl\n | network-acl-association | network-interface |\n network-interface-attachment | prefix-list |\n route-table | route-table-association |\n security-group | subnet |\n subnet-cidr-block-association | vpc |\n vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway.

\n

This setting applies to the IAM user who makes the request; it does not apply to the\n entire Amazon Web Services account. By default, an IAM user defaults to the same settings as the root user. If\n you're using this action as the root user, then these settings apply to the entire account,\n unless an IAM user explicitly overrides these settings for themselves. For more information,\n see Resource IDs \n in the Amazon Elastic Compute Cloud User Guide.

\n

Resources created with longer IDs are visible to all IAM roles and users, regardless\n of these settings and provided that they have permission to use the relevant\n Describe command for the resource type.

" } }, - "com.amazonaws.ec2#RejectTransitGatewayVpcAttachmentRequest": { + "com.amazonaws.ec2#ModifyIdFormatRequest": { "type": "structure", "members": { - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "Resource": { + "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the attachment.

", + "smithy.api#documentation": "

The type of resource: bundle | conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | internet-gateway | network-acl\n | network-acl-association | network-interface |\n network-interface-attachment | prefix-list |\n route-table | route-table-association |\n security-group | subnet |\n subnet-cidr-block-association | vpc |\n vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway.

\n

Alternatively, use the all-current option to include all resource types that are\n currently within their opt-in period for longer IDs.

", "smithy.api#required": {} } }, - "DryRun": { + "UseLongIds": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Indicate whether the resource should use longer IDs (17-character IDs).

", + "smithy.api#required": {} } } }, @@ -86497,58 +85528,366 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#RejectTransitGatewayVpcAttachmentResult": { + "com.amazonaws.ec2#ModifyIdentityIdFormat": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyIdentityIdFormatRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Modifies the ID format of a resource for a specified IAM user, IAM role, or the root\n user for an account; or all IAM users, IAM roles, and the root user for an account. You can\n specify that resources should receive longer IDs (17-character IDs) when they are created.

\n

This request can only be used to modify longer ID settings for resource types that are\n within the opt-in period. Resources currently in their opt-in period include:\n bundle | conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | internet-gateway | network-acl\n | network-acl-association | network-interface |\n network-interface-attachment | prefix-list |\n route-table | route-table-association |\n security-group | subnet |\n subnet-cidr-block-association | vpc |\n vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway.

\n

For more information, see Resource IDs in the\n Amazon Elastic Compute Cloud User Guide.

\n

This setting applies to the principal specified in the request; it does not apply to the\n principal that makes the request.

\n

Resources created with longer IDs are visible to all IAM roles and users, regardless of these\n settings and provided that they have permission to use the relevant Describe\n command for the resource type.

" + } + }, + "com.amazonaws.ec2#ModifyIdentityIdFormatRequest": { "type": "structure", "members": { - "TransitGatewayVpcAttachment": { - "target": "com.amazonaws.ec2#TransitGatewayVpcAttachment", + "Resource": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayVpcAttachment", - "smithy.api#documentation": "

Information about the attachment.

", - "smithy.api#xmlName": "transitGatewayVpcAttachment" + "aws.protocols#ec2QueryName": "Resource", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The type of resource: bundle | conversion-task | customer-gateway | dhcp-options |\n elastic-ip-allocation | elastic-ip-association |\n export-task | flow-log | image |\n import-task | internet-gateway | network-acl\n | network-acl-association | network-interface |\n network-interface-attachment | prefix-list |\n route-table | route-table-association |\n security-group | subnet |\n subnet-cidr-block-association | vpc |\n vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway.

\n

Alternatively, use the all-current option to include all resource types that are\n currently within their opt-in period for longer IDs.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "resource" + } + }, + "UseLongIds": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "UseLongIds", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Indicates whether the resource should use longer IDs (17-character IDs)

", + "smithy.api#required": {}, + "smithy.api#xmlName": "useLongIds" + } + }, + "PrincipalArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PrincipalArn", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ARN of the principal, which can be an IAM user, IAM role, or the root user. Specify\n all to modify the ID format for all IAM users, IAM roles, and the root user of\n the account.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "principalArn" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#input": {} } }, - "com.amazonaws.ec2#RejectVpcEndpointConnections": { + "com.amazonaws.ec2#ModifyImageAttribute": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#RejectVpcEndpointConnectionsRequest" + "target": "com.amazonaws.ec2#ModifyImageAttributeRequest" }, "output": { - "target": "com.amazonaws.ec2#RejectVpcEndpointConnectionsResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Rejects VPC endpoint connection requests to your VPC endpoint service.

" + "smithy.api#documentation": "

Modifies the specified attribute of the specified AMI. You can specify only one attribute\n at a time.

\n

To specify the attribute, you can use the Attribute parameter, or one of the\n following parameters: Description, ImdsSupport, or\n LaunchPermission.

\n

Images with an Amazon Web Services Marketplace product code cannot be made public.

\n

To enable the SriovNetSupport enhanced networking attribute of an image, enable\n SriovNetSupport on an instance and create an AMI from the instance.

", + "smithy.api#examples": [ + { + "title": "To grant launch permissions", + "documentation": "This example grants launch permissions for the specified AMI to the specified AWS account.", + "input": { + "ImageId": "ami-5731123e", + "LaunchPermission": { + "Add": [ + { + "UserId": "123456789012" + } + ] + } + }, + "output": {} + }, + { + "title": "To make an AMI public", + "documentation": "This example makes the specified AMI public.", + "input": { + "ImageId": "ami-5731123e", + "LaunchPermission": { + "Add": [ + { + "Group": "all" + } + ] + } + }, + "output": {} + } + ] } }, - "com.amazonaws.ec2#RejectVpcEndpointConnectionsRequest": { + "com.amazonaws.ec2#ModifyImageAttributeRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Attribute": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

The name of the attribute to modify.

\n

Valid values: description | imdsSupport |\n launchPermission\n

" } }, - "ServiceId": { - "target": "com.amazonaws.ec2#VpcEndpointServiceId", + "Description": { + "target": "com.amazonaws.ec2#AttributeValue", + "traits": { + "smithy.api#documentation": "

A new description for the AMI.

" + } + }, + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the service.

", + "smithy.api#documentation": "

The ID of the AMI.

", "smithy.api#required": {} } }, - "VpcEndpointIds": { - "target": "com.amazonaws.ec2#VpcEndpointIdList", + "LaunchPermission": { + "target": "com.amazonaws.ec2#LaunchPermissionModifications", + "traits": { + "smithy.api#documentation": "

A new launch permission for the AMI.

" + } + }, + "OperationType": { + "target": "com.amazonaws.ec2#OperationType", + "traits": { + "smithy.api#documentation": "

The operation type. This parameter can be used only when the Attribute\n parameter is launchPermission.

" + } + }, + "ProductCodes": { + "target": "com.amazonaws.ec2#ProductCodeStringList", + "traits": { + "smithy.api#documentation": "

Not supported.

", + "smithy.api#xmlName": "ProductCode" + } + }, + "UserGroups": { + "target": "com.amazonaws.ec2#UserGroupStringList", + "traits": { + "smithy.api#documentation": "

The user groups. This parameter can be used only when the Attribute parameter\n is launchPermission.

", + "smithy.api#xmlName": "UserGroup" + } + }, + "UserIds": { + "target": "com.amazonaws.ec2#UserIdStringList", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account IDs. This parameter can be used only when the\n Attribute parameter is launchPermission.

", + "smithy.api#xmlName": "UserId" + } + }, + "Value": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The value of the attribute being modified. This parameter can be used only when the\n Attribute parameter is description or\n imdsSupport.

" + } + }, + "OrganizationArns": { + "target": "com.amazonaws.ec2#OrganizationArnStringList", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an organization. This parameter can be used only when\n the Attribute parameter is launchPermission.

", + "smithy.api#xmlName": "OrganizationArn" + } + }, + "OrganizationalUnitArns": { + "target": "com.amazonaws.ec2#OrganizationalUnitArnStringList", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an organizational unit (OU). This parameter can be used\n only when the Attribute parameter is launchPermission.

", + "smithy.api#xmlName": "OrganizationalUnitArn" + } + }, + "ImdsSupport": { + "target": "com.amazonaws.ec2#AttributeValue", + "traits": { + "smithy.api#documentation": "

Set to v2.0 to indicate that IMDSv2 is specified in the AMI. Instances\n launched from this AMI will have HttpTokens automatically set to\n required so that, by default, the instance requires that IMDSv2 is used when\n requesting instance metadata. In addition, HttpPutResponseHopLimit is set to\n 2. For more information, see Configure the AMI in the Amazon EC2 User Guide.

\n \n

Do not use this parameter unless your AMI software supports IMDSv2. After you set the\n value to v2.0, you can't undo it. The only way to “reset” your AMI is to create\n a new AMI from the underlying snapshot.

\n
" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the parameters for ModifyImageAttribute.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceAttribute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyInstanceAttributeRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Modifies the specified attribute of the specified instance. You can specify only one\n attribute at a time.

\n

\n Note: Using this action to change the security groups\n associated with an elastic network interface (ENI) attached to an instance can\n result in an error if the instance has more than one ENI. To change the security groups\n associated with an ENI attached to an instance that has multiple ENIs, we recommend that\n you use the ModifyNetworkInterfaceAttribute action.

\n

To modify some attributes, the instance must be stopped. For more information, see\n Modify a stopped instance in the\n Amazon EC2 User Guide.

", + "smithy.api#examples": [ + { + "title": "To enable enhanced networking", + "documentation": "This example enables enhanced networking for the specified stopped instance.", + "input": { + "InstanceId": "i-1234567890abcdef0", + "EnaSupport": { + "Value": true + } + }, + "output": {} + }, + { + "title": "To modify the instance type", + "documentation": "This example modifies the instance type of the specified stopped instance.", + "input": { + "InstanceId": "i-1234567890abcdef0", + "InstanceType": { + "Value": "m5.large" + } + }, + "output": {} + } + ] + } + }, + "com.amazonaws.ec2#ModifyInstanceAttributeRequest": { + "type": "structure", + "members": { + "SourceDestCheck": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "smithy.api#documentation": "

Enable or disable source/destination checks, which ensure that the instance is either\n the source or the destination of any traffic that it receives. If the value is\n true, source/destination checks are enabled; otherwise, they are\n disabled. The default value is true. You must disable source/destination\n checks if the instance runs services such as network address translation, routing, or\n firewalls.

" + } + }, + "DisableApiStop": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "smithy.api#documentation": "

Indicates whether an instance is enabled for stop protection. For more information,\n see Enable stop\n protection for your instance.

\n

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { + "aws.protocols#ec2QueryName": "InstanceId", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the VPC endpoints.

", + "smithy.api#documentation": "

The ID of the instance.

", "smithy.api#required": {}, - "smithy.api#xmlName": "VpcEndpointId" + "smithy.api#xmlName": "instanceId" + } + }, + "Attribute": { + "target": "com.amazonaws.ec2#InstanceAttributeName", + "traits": { + "aws.protocols#ec2QueryName": "Attribute", + "smithy.api#documentation": "

The name of the attribute to modify.

\n \n

When changing the instance type: If the original instance type is configured for\n configurable bandwidth, and the desired instance type doesn't support configurable\n bandwidth, first set the existing bandwidth configuration to default\n using the ModifyInstanceNetworkPerformanceOptions\n operation.

\n
\n \n

You can modify the following attributes only: disableApiTermination |\n instanceType | kernel | ramdisk |\n instanceInitiatedShutdownBehavior | blockDeviceMapping\n | userData | sourceDestCheck | groupSet |\n ebsOptimized | sriovNetSupport |\n enaSupport | nvmeSupport | disableApiStop\n | enclaveOptions\n

\n
", + "smithy.api#xmlName": "attribute" + } + }, + "Value": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Value", + "smithy.api#documentation": "

A new value for the attribute. Use only with the kernel,\n ramdisk, userData, disableApiTermination, or\n instanceInitiatedShutdownBehavior attribute.

", + "smithy.api#xmlName": "value" + } + }, + "BlockDeviceMappings": { + "target": "com.amazonaws.ec2#InstanceBlockDeviceMappingSpecificationList", + "traits": { + "aws.protocols#ec2QueryName": "BlockDeviceMapping", + "smithy.api#documentation": "

Modifies the DeleteOnTermination attribute for volumes that are currently\n attached. The volume must be owned by the caller. If no value is specified for\n DeleteOnTermination, the default is true and the volume is\n deleted when the instance is terminated. You can't modify the DeleteOnTermination \n attribute for volumes that are attached to Amazon Web Services-managed resources.

\n

To add instance store volumes to an Amazon EBS-backed instance, you must add them when\n you launch the instance. For more information, see Update the block device mapping when launching an instance in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "blockDeviceMapping" + } + }, + "DisableApiTermination": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "aws.protocols#ec2QueryName": "DisableApiTermination", + "smithy.api#documentation": "

Enable or disable termination protection for the instance. If the value is true, \n you can't terminate the instance using the Amazon EC2 console, command line interface, or API. \n You can't enable termination protection for Spot Instances.

", + "smithy.api#xmlName": "disableApiTermination" + } + }, + "InstanceType": { + "target": "com.amazonaws.ec2#AttributeValue", + "traits": { + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

Changes the instance type to the specified value. For more information, see Instance\n types in the Amazon EC2 User Guide. If the instance type is\n not valid, the error returned is InvalidInstanceAttributeValue.

", + "smithy.api#xmlName": "instanceType" + } + }, + "Kernel": { + "target": "com.amazonaws.ec2#AttributeValue", + "traits": { + "aws.protocols#ec2QueryName": "Kernel", + "smithy.api#documentation": "

Changes the instance's kernel to the specified value. We recommend that you use\n PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.

", + "smithy.api#xmlName": "kernel" + } + }, + "Ramdisk": { + "target": "com.amazonaws.ec2#AttributeValue", + "traits": { + "aws.protocols#ec2QueryName": "Ramdisk", + "smithy.api#documentation": "

Changes the instance's RAM disk to the specified value. We recommend that you use\n PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.

", + "smithy.api#xmlName": "ramdisk" + } + }, + "UserData": { + "target": "com.amazonaws.ec2#BlobAttributeValue", + "traits": { + "aws.protocols#ec2QueryName": "UserData", + "smithy.api#documentation": "

Changes the instance's user data to the specified value. User data must be base64-encoded.\n Depending on the tool or SDK that you're using, the base64-encoding might be performed for you.\n For more information, see Work with instance user data.

", + "smithy.api#xmlName": "userData" + } + }, + "InstanceInitiatedShutdownBehavior": { + "target": "com.amazonaws.ec2#AttributeValue", + "traits": { + "aws.protocols#ec2QueryName": "InstanceInitiatedShutdownBehavior", + "smithy.api#documentation": "

Specifies whether an instance stops or terminates when you initiate shutdown from the\n instance (using the operating system command for system shutdown).

", + "smithy.api#xmlName": "instanceInitiatedShutdownBehavior" + } + }, + "Groups": { + "target": "com.amazonaws.ec2#GroupIdStringList", + "traits": { + "smithy.api#documentation": "

Replaces the security groups of the instance with the specified security groups.\n You must specify the ID of at least one security group, even if it's just the default\n security group for the VPC.

", + "smithy.api#xmlName": "GroupId" + } + }, + "EbsOptimized": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "aws.protocols#ec2QueryName": "EbsOptimized", + "smithy.api#documentation": "

Specifies whether the instance is optimized for Amazon EBS I/O. This optimization\n provides dedicated throughput to Amazon EBS and an optimized configuration stack to\n provide optimal EBS I/O performance. This optimization isn't available with all instance\n types. Additional usage charges apply when using an EBS Optimized instance.

", + "smithy.api#xmlName": "ebsOptimized" + } + }, + "SriovNetSupport": { + "target": "com.amazonaws.ec2#AttributeValue", + "traits": { + "aws.protocols#ec2QueryName": "SriovNetSupport", + "smithy.api#documentation": "

Set to simple to enable enhanced networking with the Intel 82599 Virtual\n Function interface for the instance.

\n

There is no way to disable enhanced networking with the Intel 82599 Virtual Function\n interface at this time.

\n

This option is supported only for HVM instances. Specifying this option with a PV\n instance can make it unreachable.

", + "smithy.api#xmlName": "sriovNetSupport" + } + }, + "EnaSupport": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "aws.protocols#ec2QueryName": "EnaSupport", + "smithy.api#documentation": "

Set to true to enable enhanced networking with ENA for the\n instance.

\n

This option is supported only for HVM instances. Specifying this option with a PV\n instance can make it unreachable.

", + "smithy.api#xmlName": "enaSupport" } } }, @@ -86556,2044 +85895,16246 @@ "smithy.api#input": {} } }, - "com.amazonaws.ec2#RejectVpcEndpointConnectionsResult": { + "com.amazonaws.ec2#ModifyInstanceCapacityReservationAttributes": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyInstanceCapacityReservationAttributesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyInstanceCapacityReservationAttributesResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the Capacity Reservation settings for a stopped instance. Use this action to\n\t\t\tconfigure an instance to target a specific Capacity Reservation, run in any\n\t\t\t\topen Capacity Reservation with matching attributes, run in On-Demand\n\t\t\tInstance capacity, or only run in a Capacity Reservation.

" + } + }, + "com.amazonaws.ec2#ModifyInstanceCapacityReservationAttributesRequest": { "type": "structure", "members": { - "Unsuccessful": { - "target": "com.amazonaws.ec2#UnsuccessfulItemSet", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "aws.protocols#ec2QueryName": "Unsuccessful", - "smithy.api#documentation": "

Information about the endpoints that were not rejected, if applicable.

", - "smithy.api#xmlName": "unsuccessful" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance to be modified.

", + "smithy.api#required": {} + } + }, + "CapacityReservationSpecification": { + "target": "com.amazonaws.ec2#CapacityReservationSpecification", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Information about the Capacity Reservation targeting option.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceCapacityReservationAttributesResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceConnectEndpoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyInstanceConnectEndpointRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyInstanceConnectEndpointResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the specified EC2 Instance Connect Endpoint.

\n

For more information, see Modify an\n EC2 Instance Connect Endpoint in the\n Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#ModifyInstanceConnectEndpointRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "InstanceConnectEndpointId": { + "target": "com.amazonaws.ec2#InstanceConnectEndpointId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the EC2 Instance Connect Endpoint to modify.

", + "smithy.api#required": {} + } + }, + "IpAddressType": { + "target": "com.amazonaws.ec2#IpAddressType", + "traits": { + "smithy.api#documentation": "

The new IP address type for the EC2 Instance Connect Endpoint.

\n \n

\n PreserveClientIp is only supported on IPv4 EC2 Instance Connect\n Endpoints. To use PreserveClientIp, the value for\n IpAddressType must be ipv4.

\n
" + } + }, + "SecurityGroupIds": { + "target": "com.amazonaws.ec2#SecurityGroupIdStringListRequest", + "traits": { + "smithy.api#documentation": "

Changes the security groups for the EC2 Instance Connect Endpoint. The new set of\n groups you specify replaces the current set. You must specify at least one group, even\n if it's just the default security group in the VPC. You must specify the ID of the\n security group, not the name.

", + "smithy.api#xmlName": "SecurityGroupId" + } + }, + "PreserveClientIp": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether the client IP address is preserved as the source. The following are the possible values.

\n \n \n

\n PreserveClientIp=true is only supported on IPv4 EC2 Instance Connect\n Endpoints. If modifying PreserveClientIp to true, either\n the endpoint's existing IpAddressType must be ipv4, or if\n modifying IpAddressType in the same request, the new value must be\n ipv4.

\n
\n

Default: false\n

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceConnectEndpointResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

The return value of the request. Returns true if the specified product\n code is owned by the requester and associated with the specified instance.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceCpuOptions": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyInstanceCpuOptionsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyInstanceCpuOptionsResult" + }, + "traits": { + "smithy.api#documentation": "

By default, all vCPUs for the instance type are active when you launch an instance. When you \n\t\t\tconfigure the number of active vCPUs for the instance, it can help you save on licensing costs and \n\t\t\toptimize performance. The base cost of the instance remains unchanged.

\n

The number of active vCPUs equals the number of threads per CPU core multiplied by the number \n\t\t\tof cores. The instance must be in a Stopped state before you make changes.

\n \n

Some instance type options do not support this capability. For more information, see \n\t\t\t\tSupported CPU \n\t\t\t\t\toptions in the Amazon EC2 User Guide.

\n
" + } + }, + "com.amazonaws.ec2#ModifyInstanceCpuOptionsRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance to update.

", + "smithy.api#required": {} + } + }, + "CoreCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The number of CPU cores to activate for the specified instance.

", + "smithy.api#required": {} + } + }, + "ThreadsPerCore": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The number of threads to run for each CPU core.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceCpuOptionsResult": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", + "traits": { + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance that was updated.

", + "smithy.api#xmlName": "instanceId" + } + }, + "CoreCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "CoreCount", + "smithy.api#documentation": "

The number of CPU cores that are running for the specified instance after the \n\t\t\tupdate.

", + "smithy.api#xmlName": "coreCount" + } + }, + "ThreadsPerCore": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "ThreadsPerCore", + "smithy.api#documentation": "

The number of threads that are running per CPU core for the specified \n\t\t\tinstance after the update.

", + "smithy.api#xmlName": "threadsPerCore" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceCreditSpecification": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyInstanceCreditSpecificationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyInstanceCreditSpecificationResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the credit option for CPU usage on a running or stopped burstable performance\n instance. The credit options are standard and\n unlimited.

\n

For more information, see Burstable\n performance instances in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#ModifyInstanceCreditSpecificationRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring\n Idempotency.

" + } + }, + "InstanceCreditSpecifications": { + "target": "com.amazonaws.ec2#InstanceCreditSpecificationListRequest", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Information about the credit option for CPU usage.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "InstanceCreditSpecification" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceCreditSpecificationResult": { + "type": "structure", + "members": { + "SuccessfulInstanceCreditSpecifications": { + "target": "com.amazonaws.ec2#SuccessfulInstanceCreditSpecificationSet", + "traits": { + "aws.protocols#ec2QueryName": "SuccessfulInstanceCreditSpecificationSet", + "smithy.api#documentation": "

Information about the instances whose credit option for CPU usage was successfully\n modified.

", + "smithy.api#xmlName": "successfulInstanceCreditSpecificationSet" + } + }, + "UnsuccessfulInstanceCreditSpecifications": { + "target": "com.amazonaws.ec2#UnsuccessfulInstanceCreditSpecificationSet", + "traits": { + "aws.protocols#ec2QueryName": "UnsuccessfulInstanceCreditSpecificationSet", + "smithy.api#documentation": "

Information about the instances whose credit option for CPU usage was not\n modified.

", + "smithy.api#xmlName": "unsuccessfulInstanceCreditSpecificationSet" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceEventStartTime": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyInstanceEventStartTimeRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyInstanceEventStartTimeResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the start time for a scheduled Amazon EC2 instance event.

" + } + }, + "com.amazonaws.ec2#ModifyInstanceEventStartTimeRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance with the scheduled event.

", + "smithy.api#required": {} + } + }, + "InstanceEventId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the event whose date and time you are modifying.

", + "smithy.api#required": {} + } + }, + "NotBefore": { + "target": "com.amazonaws.ec2#DateTime", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The new date and time when the event will take place.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceEventStartTimeResult": { + "type": "structure", + "members": { + "Event": { + "target": "com.amazonaws.ec2#InstanceStatusEvent", + "traits": { + "aws.protocols#ec2QueryName": "Event", + "smithy.api#documentation": "

Information about the event.

", + "smithy.api#xmlName": "event" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceEventWindow": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyInstanceEventWindowRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyInstanceEventWindowResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the specified event window.

\n

You can define either a set of time ranges or a cron expression when modifying the event\n window, but not both.

\n

To modify the targets associated with the event window, use the AssociateInstanceEventWindow and DisassociateInstanceEventWindow API.

\n

If Amazon Web Services has already scheduled an event, modifying an event window won't change the time\n of the scheduled event.

\n

For more information, see Define event windows for scheduled\n events in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#ModifyInstanceEventWindowRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "Name": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The name of the event window.

" + } + }, + "InstanceEventWindowId": { + "target": "com.amazonaws.ec2#InstanceEventWindowId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the event window.

", + "smithy.api#required": {} + } + }, + "TimeRanges": { + "target": "com.amazonaws.ec2#InstanceEventWindowTimeRangeRequestSet", + "traits": { + "smithy.api#documentation": "

The time ranges of the event window.

", + "smithy.api#xmlName": "TimeRange" + } + }, + "CronExpression": { + "target": "com.amazonaws.ec2#InstanceEventWindowCronExpression", + "traits": { + "smithy.api#documentation": "

The cron expression of the event window, for example, * 0-4,20-23 * *\n 1,5.

\n

Constraints:

\n \n

For more information about cron expressions, see cron on the Wikipedia\n website.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceEventWindowResult": { + "type": "structure", + "members": { + "InstanceEventWindow": { + "target": "com.amazonaws.ec2#InstanceEventWindow", + "traits": { + "aws.protocols#ec2QueryName": "InstanceEventWindow", + "smithy.api#documentation": "

Information about the event window.

", + "smithy.api#xmlName": "instanceEventWindow" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceMaintenanceOptions": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyInstanceMaintenanceOptionsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyInstanceMaintenanceOptionsResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the recovery behavior of your instance to disable simplified automatic\n recovery or set the recovery behavior to default. The default configuration will not\n enable simplified automatic recovery for an unsupported instance type. For more\n information, see Simplified automatic recovery.

\n

Modifies the reboot migration behavior during a user-initiated reboot of an instance\n that has a pending system-reboot event. For more information, see Enable or disable reboot migration.

" + } + }, + "com.amazonaws.ec2#ModifyInstanceMaintenanceOptionsRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#required": {} + } + }, + "AutoRecovery": { + "target": "com.amazonaws.ec2#InstanceAutoRecoveryState", + "traits": { + "smithy.api#documentation": "

Disables the automatic recovery behavior of your instance or sets it to\n default.

" + } + }, + "RebootMigration": { + "target": "com.amazonaws.ec2#InstanceRebootMigrationState", + "traits": { + "smithy.api#documentation": "

Specifies whether to attempt reboot migration during a user-initiated reboot of an\n instance that has a scheduled system-reboot event:

\n \n

This setting only applies to supported instances that have a scheduled reboot event.\n For more information, see Enable or disable reboot migration in the\n Amazon EC2 User Guide.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceMaintenanceOptionsResult": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#xmlName": "instanceId" + } + }, + "AutoRecovery": { + "target": "com.amazonaws.ec2#InstanceAutoRecoveryState", + "traits": { + "aws.protocols#ec2QueryName": "AutoRecovery", + "smithy.api#documentation": "

Provides information on the current automatic recovery behavior of your\n instance.

", + "smithy.api#xmlName": "autoRecovery" + } + }, + "RebootMigration": { + "target": "com.amazonaws.ec2#InstanceRebootMigrationState", + "traits": { + "aws.protocols#ec2QueryName": "RebootMigration", + "smithy.api#documentation": "

Specifies whether to attempt reboot migration during a user-initiated reboot of an\n instance that has a scheduled system-reboot event:

\n \n

This setting only applies to supported instances that have a scheduled reboot event.\n For more information, see Enable or disable reboot migration in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "rebootMigration" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceMetadataDefaults": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyInstanceMetadataDefaultsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyInstanceMetadataDefaultsResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the default instance metadata service (IMDS) settings at the account level in\n the specified Amazon Web Services\u2028 Region.

\n \n

To remove a parameter's account-level default setting, specify\n no-preference. If an account-level setting is cleared with\n no-preference, then the instance launch considers the other\n instance metadata settings. For more information, see Order of precedence for instance metadata options in the\n Amazon EC2 User Guide.

\n
" + } + }, + "com.amazonaws.ec2#ModifyInstanceMetadataDefaultsRequest": { + "type": "structure", + "members": { + "HttpTokens": { + "target": "com.amazonaws.ec2#MetadataDefaultHttpTokensState", + "traits": { + "smithy.api#documentation": "

Indicates whether IMDSv2 is required.

\n " + } + }, + "HttpPutResponseHopLimit": { + "target": "com.amazonaws.ec2#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The maximum number of hops that the metadata token can travel. To indicate no\n preference, specify -1.

\n

Possible values: Integers from 1 to 64, and -1\n to indicate no preference

" + } + }, + "HttpEndpoint": { + "target": "com.amazonaws.ec2#DefaultInstanceMetadataEndpointState", + "traits": { + "smithy.api#documentation": "

Enables or disables the IMDS endpoint on an instance. When disabled, the instance\n metadata can't be accessed.

" + } + }, + "InstanceMetadataTags": { + "target": "com.amazonaws.ec2#DefaultInstanceMetadataTagsState", + "traits": { + "smithy.api#documentation": "

Enables or disables access to an instance's tags from the instance metadata. For more\n information, see Work with\n instance tags using the instance metadata in the\n Amazon EC2 User Guide.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceMetadataDefaultsResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

If the request succeeds, the response returns true. If the request fails,\n no response is returned, and instead an error message is returned.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceMetadataOptions": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyInstanceMetadataOptionsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyInstanceMetadataOptionsResult" + }, + "traits": { + "smithy.api#documentation": "

Modify the instance metadata parameters on a running or stopped instance. When you\n modify the parameters on a stopped instance, they are applied when the instance is\n started. When you modify the parameters on a running instance, the API responds with a\n state of “pending”. After the parameter modifications are successfully applied to the\n instance, the state of the modifications changes from “pending” to “applied” in\n subsequent describe-instances API calls. For more information, see Instance metadata and user data in the\n Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#ModifyInstanceMetadataOptionsRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#required": {} + } + }, + "HttpTokens": { + "target": "com.amazonaws.ec2#HttpTokensState", + "traits": { + "smithy.api#documentation": "

Indicates whether IMDSv2 is required.

\n \n

Default:

\n \n

The default value can also be affected by other combinations of parameters. For more\n information, see Order of precedence for instance metadata options in the\n Amazon EC2 User Guide.

" + } + }, + "HttpPutResponseHopLimit": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The desired HTTP PUT response hop limit for instance metadata requests. The larger the\n number, the further instance metadata requests can travel. If no parameter is specified,\n the existing state is maintained.

\n

Possible values: Integers from 1 to 64

" + } + }, + "HttpEndpoint": { + "target": "com.amazonaws.ec2#InstanceMetadataEndpointState", + "traits": { + "smithy.api#documentation": "

Enables or disables the HTTP metadata endpoint on your instances. If this parameter is\n not specified, the existing state is maintained.

\n

If you specify a value of disabled, you cannot access your instance\n metadata.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + } + }, + "HttpProtocolIpv6": { + "target": "com.amazonaws.ec2#InstanceMetadataProtocolState", + "traits": { + "smithy.api#documentation": "

Enables or disables the IPv6 endpoint for the instance metadata service. \n Applies only if you enabled the HTTP metadata endpoint.

" + } + }, + "InstanceMetadataTags": { + "target": "com.amazonaws.ec2#InstanceMetadataTagsState", + "traits": { + "smithy.api#documentation": "

Set to enabled to allow access to instance tags from the instance\n metadata. Set to disabled to turn off access to instance tags from the\n instance metadata. For more information, see Work with\n instance tags using the instance metadata.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceMetadataOptionsResult": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#xmlName": "instanceId" + } + }, + "InstanceMetadataOptions": { + "target": "com.amazonaws.ec2#InstanceMetadataOptionsResponse", + "traits": { + "aws.protocols#ec2QueryName": "InstanceMetadataOptions", + "smithy.api#documentation": "

The metadata options for the instance.

", + "smithy.api#xmlName": "instanceMetadataOptions" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceNetworkPerformanceOptions": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyInstanceNetworkPerformanceRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyInstanceNetworkPerformanceResult" + }, + "traits": { + "smithy.api#documentation": "

Change the configuration of the network performance options for an existing \n instance.

" + } + }, + "com.amazonaws.ec2#ModifyInstanceNetworkPerformanceRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance to update.

", + "smithy.api#required": {} + } + }, + "BandwidthWeighting": { + "target": "com.amazonaws.ec2#InstanceBandwidthWeighting", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Specify the bandwidth weighting option to boost the associated type of baseline bandwidth, as follows:

\n
\n
default
\n
\n

This option uses the standard bandwidth configuration for your instance type.

\n
\n
vpc-1
\n
\n

This option boosts your networking baseline bandwidth and reduces your EBS \n baseline bandwidth.

\n
\n
ebs-1
\n
\n

This option boosts your EBS baseline bandwidth and reduces your networking \n baseline bandwidth.

\n
\n
", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyInstanceNetworkPerformanceResult": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", + "traits": { + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The instance ID that was updated.

", + "smithy.api#xmlName": "instanceId" + } + }, + "BandwidthWeighting": { + "target": "com.amazonaws.ec2#InstanceBandwidthWeighting", + "traits": { + "aws.protocols#ec2QueryName": "BandwidthWeighting", + "smithy.api#documentation": "

Contains the updated configuration for bandwidth weighting on the specified instance.

", + "smithy.api#xmlName": "bandwidthWeighting" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyInstancePlacement": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyInstancePlacementRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyInstancePlacementResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the placement attributes for a specified instance. You can do the\n following:

\n \n

At least one attribute for affinity, host ID, tenancy, or placement group name must be\n specified in the request. Affinity and tenancy can be modified in the same\n request.

\n

To modify the host ID, tenancy, placement group, or partition for an instance, the\n instance must be in the stopped state.

" + } + }, + "com.amazonaws.ec2#ModifyInstancePlacementRequest": { + "type": "structure", + "members": { + "GroupName": { + "target": "com.amazonaws.ec2#PlacementGroupName", + "traits": { + "smithy.api#documentation": "

The name of the placement group in which to place the instance. For spread placement\n groups, the instance must have a tenancy of default. For cluster and\n partition placement groups, the instance must have a tenancy of default or\n dedicated.

\n

To remove an instance from a placement group, specify an empty string (\"\").

" + } + }, + "PartitionNumber": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The number of the partition in which to place the instance. Valid only if the\n placement group strategy is set to partition.

" + } + }, + "HostResourceGroupArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The ARN of the host resource group in which to place the instance. The instance must\n have a tenancy of host to specify this parameter.

" + } + }, + "GroupId": { + "target": "com.amazonaws.ec2#PlacementGroupId", + "traits": { + "smithy.api#documentation": "

The Group Id of a placement group. You must specify the Placement Group Group Id to launch an instance in a shared placement\n group.

" + } + }, + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", + "traits": { + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance that you are modifying.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "instanceId" + } + }, + "Tenancy": { + "target": "com.amazonaws.ec2#HostTenancy", + "traits": { + "aws.protocols#ec2QueryName": "Tenancy", + "smithy.api#documentation": "

The tenancy for the instance.

\n \n

For T3 instances, you must launch the instance on a Dedicated Host to use a\n tenancy of host. You can't change the tenancy from\n host to dedicated or default.\n Attempting to make one of these unsupported tenancy changes results in an\n InvalidRequest error code.

\n
", + "smithy.api#xmlName": "tenancy" + } + }, + "Affinity": { + "target": "com.amazonaws.ec2#Affinity", + "traits": { + "aws.protocols#ec2QueryName": "Affinity", + "smithy.api#documentation": "

The affinity setting for the instance. For more information, see Host affinity in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "affinity" + } + }, + "HostId": { + "target": "com.amazonaws.ec2#DedicatedHostId", + "traits": { + "aws.protocols#ec2QueryName": "HostId", + "smithy.api#documentation": "

The ID of the Dedicated Host with which to associate the instance.

", + "smithy.api#xmlName": "hostId" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyInstancePlacementResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Is true if the request succeeds, and an error otherwise.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyIpam": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyIpamRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyIpamResult" + }, + "traits": { + "smithy.api#documentation": "

Modify the configurations of an IPAM.\n

" + } + }, + "com.amazonaws.ec2#ModifyIpamPool": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyIpamPoolRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyIpamPoolResult" + }, + "traits": { + "smithy.api#documentation": "

Modify the configurations of an IPAM pool.

\n

For more information, see Modify a pool in the Amazon VPC IPAM User Guide.\n

" + } + }, + "com.amazonaws.ec2#ModifyIpamPoolRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM pool you want to modify.

", + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The description of the IPAM pool you want to modify.

" + } + }, + "AutoImport": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

If true, IPAM will continuously look for resources within the CIDR range of this pool \n and automatically import them as allocations into your IPAM. The CIDRs that will be allocated for\n these resources must not already be allocated to other resources in order for the import to succeed. IPAM will import \n a CIDR regardless of its compliance with the pool's allocation rules, so a resource might be imported and subsequently \n marked as noncompliant. If IPAM discovers multiple CIDRs that overlap, IPAM will import the largest CIDR only. If IPAM \n discovers multiple CIDRs with matching CIDRs, IPAM will randomly import one of them only.\n

\n

A locale must be set on the pool for this feature to work.

" + } + }, + "AllocationMinNetmaskLength": { + "target": "com.amazonaws.ec2#IpamNetmaskLength", + "traits": { + "smithy.api#documentation": "

The minimum netmask length required for CIDR allocations in this IPAM pool to be compliant. Possible \n netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128. The minimum netmask \n length must be less than the maximum netmask length.

" + } + }, + "AllocationMaxNetmaskLength": { + "target": "com.amazonaws.ec2#IpamNetmaskLength", + "traits": { + "smithy.api#documentation": "

The maximum netmask length possible for CIDR allocations in this IPAM pool to be compliant. Possible \n netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.The maximum netmask \n length must be greater than the minimum netmask length.

" + } + }, + "AllocationDefaultNetmaskLength": { + "target": "com.amazonaws.ec2#IpamNetmaskLength", + "traits": { + "smithy.api#documentation": "

The default netmask length for allocations added to this pool. If, for example, the CIDR assigned to this pool is 10.0.0.0/8 and you enter 16 here, new allocations will default to 10.0.0.0/16.

" + } + }, + "ClearAllocationDefaultNetmaskLength": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Clear the default netmask length allocation rule for this pool.

" + } + }, + "AddAllocationResourceTags": { + "target": "com.amazonaws.ec2#RequestIpamResourceTagList", + "traits": { + "smithy.api#documentation": "

Add tag allocation rules to a pool. For more information about allocation rules, see Create a top-level pool in the Amazon VPC IPAM User Guide.

", + "smithy.api#xmlName": "AddAllocationResourceTag" + } + }, + "RemoveAllocationResourceTags": { + "target": "com.amazonaws.ec2#RequestIpamResourceTagList", + "traits": { + "smithy.api#documentation": "

Remove tag allocation rules from a pool.

", + "smithy.api#xmlName": "RemoveAllocationResourceTag" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyIpamPoolResult": { + "type": "structure", + "members": { + "IpamPool": { + "target": "com.amazonaws.ec2#IpamPool", + "traits": { + "aws.protocols#ec2QueryName": "IpamPool", + "smithy.api#documentation": "

The results of the modification.

", + "smithy.api#xmlName": "ipamPool" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyIpamRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamId": { + "target": "com.amazonaws.ec2#IpamId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM you want to modify.

", + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The description of the IPAM you want to modify.

" + } + }, + "AddOperatingRegions": { + "target": "com.amazonaws.ec2#AddIpamOperatingRegionSet", + "traits": { + "smithy.api#documentation": "

Choose the operating Regions for the IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

\n

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide.

", + "smithy.api#xmlName": "AddOperatingRegion" + } + }, + "RemoveOperatingRegions": { + "target": "com.amazonaws.ec2#RemoveIpamOperatingRegionSet", + "traits": { + "smithy.api#documentation": "

The operating Regions to remove.

", + "smithy.api#xmlName": "RemoveOperatingRegion" + } + }, + "Tier": { + "target": "com.amazonaws.ec2#IpamTier", + "traits": { + "smithy.api#documentation": "

IPAM is offered in a Free Tier and an Advanced Tier. For more information about the features available in each tier and the costs associated with the tiers, see Amazon VPC pricing > IPAM tab.

" + } + }, + "EnablePrivateGua": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Enable this option to use your own GUA ranges as private IPv6 addresses. This option is disabled by default.

" + } + }, + "MeteredAccount": { + "target": "com.amazonaws.ec2#IpamMeteredAccount", + "traits": { + "smithy.api#documentation": "

A metered account is an Amazon Web Services account that is charged for active IP addresses managed in IPAM. For more information, see Enable cost distribution in the Amazon VPC IPAM User Guide.

\n

Possible values:

\n " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyIpamResourceCidr": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyIpamResourceCidrRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyIpamResourceCidrResult" + }, + "traits": { + "smithy.api#documentation": "

Modify a resource CIDR. You can use this action to transfer resource CIDRs between scopes and ignore resource CIDRs that you do not want to manage. If set to false, the resource will not be tracked for overlap, it cannot be auto-imported into a pool, and it will be removed from any pool it has an allocation in.

\n

For more information, see Move resource CIDRs between scopes and Change the monitoring state of resource CIDRs in the Amazon VPC IPAM User Guide.

" + } + }, + "com.amazonaws.ec2#ModifyIpamResourceCidrRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "ResourceId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the resource you want to modify.

", + "smithy.api#required": {} + } + }, + "ResourceCidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The CIDR of the resource you want to modify.

", + "smithy.api#required": {} + } + }, + "ResourceRegion": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The Amazon Web Services Region of the resource you want to modify.

", + "smithy.api#required": {} + } + }, + "CurrentIpamScopeId": { + "target": "com.amazonaws.ec2#IpamScopeId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the current scope that the resource CIDR is in.

", + "smithy.api#required": {} + } + }, + "DestinationIpamScopeId": { + "target": "com.amazonaws.ec2#IpamScopeId", + "traits": { + "smithy.api#documentation": "

The ID of the scope you want to transfer the resource CIDR to.

" + } + }, + "Monitored": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Determines if the resource is monitored by IPAM. If a resource is monitored, the resource is discovered by IPAM and you can view details about the resource’s CIDR.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyIpamResourceCidrResult": { + "type": "structure", + "members": { + "IpamResourceCidr": { + "target": "com.amazonaws.ec2#IpamResourceCidr", + "traits": { + "aws.protocols#ec2QueryName": "IpamResourceCidr", + "smithy.api#documentation": "

The CIDR of the resource.

", + "smithy.api#xmlName": "ipamResourceCidr" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyIpamResourceDiscovery": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyIpamResourceDiscoveryRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyIpamResourceDiscoveryResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies a resource discovery. A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

" + } + }, + "com.amazonaws.ec2#ModifyIpamResourceDiscoveryRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamResourceDiscoveryId": { + "target": "com.amazonaws.ec2#IpamResourceDiscoveryId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A resource discovery ID.

", + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A resource discovery description.

" + } + }, + "AddOperatingRegions": { + "target": "com.amazonaws.ec2#AddIpamOperatingRegionSet", + "traits": { + "smithy.api#documentation": "

Add operating Regions to the resource discovery. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

", + "smithy.api#xmlName": "AddOperatingRegion" + } + }, + "RemoveOperatingRegions": { + "target": "com.amazonaws.ec2#RemoveIpamOperatingRegionSet", + "traits": { + "smithy.api#documentation": "

Remove operating Regions.

", + "smithy.api#xmlName": "RemoveOperatingRegion" + } + }, + "AddOrganizationalUnitExclusions": { + "target": "com.amazonaws.ec2#AddIpamOrganizationalUnitExclusionSet", + "traits": { + "smithy.api#documentation": "

Add an Organizational Unit (OU) exclusion to your IPAM. If your IPAM is integrated with Amazon Web Services Organizations and you add an organizational unit (OU) exclusion, IPAM will not manage the IP addresses in accounts in that OU exclusion. There is a limit on the number of exclusions you can create. For more information, see Quotas for your IPAM in the Amazon VPC IPAM User Guide.

\n \n

The resulting set of exclusions must not result in \"overlap\", meaning two or more OU\n exclusions must not exclude the same OU. For more information and examples, see the Amazon Web Services CLI request process in Add or remove OU exclusions\n in the Amazon VPC User Guide.

\n
", + "smithy.api#xmlName": "AddOrganizationalUnitExclusion" + } + }, + "RemoveOrganizationalUnitExclusions": { + "target": "com.amazonaws.ec2#RemoveIpamOrganizationalUnitExclusionSet", + "traits": { + "smithy.api#documentation": "

Remove an Organizational Unit (OU) exclusion to your IPAM. If your IPAM is integrated with Amazon Web Services Organizations and you add an organizational unit (OU) exclusion, IPAM will not manage the IP addresses in accounts in that OU exclusion. There is a limit on the number of exclusions you can create. For more information, see Quotas for your IPAM in the Amazon VPC IPAM User Guide.

\n \n

The resulting set of exclusions must not result in \"overlap\", meaning two or more OU\n exclusions must not exclude the same OU. For more information and examples, see the Amazon Web Services CLI request process in Add or remove OU exclusions\n in the Amazon VPC User Guide.

\n
", + "smithy.api#xmlName": "RemoveOrganizationalUnitExclusion" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyIpamResourceDiscoveryResult": { + "type": "structure", + "members": { + "IpamResourceDiscovery": { + "target": "com.amazonaws.ec2#IpamResourceDiscovery", + "traits": { + "aws.protocols#ec2QueryName": "IpamResourceDiscovery", + "smithy.api#documentation": "

A resource discovery.

", + "smithy.api#xmlName": "ipamResourceDiscovery" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyIpamResult": { + "type": "structure", + "members": { + "Ipam": { + "target": "com.amazonaws.ec2#Ipam", + "traits": { + "aws.protocols#ec2QueryName": "Ipam", + "smithy.api#documentation": "

The results of the modification.

", + "smithy.api#xmlName": "ipam" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyIpamScope": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyIpamScopeRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyIpamScopeResult" + }, + "traits": { + "smithy.api#documentation": "

Modify an IPAM scope.

" + } + }, + "com.amazonaws.ec2#ModifyIpamScopeRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamScopeId": { + "target": "com.amazonaws.ec2#IpamScopeId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the scope you want to modify.

", + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The description of the scope you want to modify.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyIpamScopeResult": { + "type": "structure", + "members": { + "IpamScope": { + "target": "com.amazonaws.ec2#IpamScope", + "traits": { + "aws.protocols#ec2QueryName": "IpamScope", + "smithy.api#documentation": "

The results of the modification.

", + "smithy.api#xmlName": "ipamScope" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyLaunchTemplate": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyLaunchTemplateRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyLaunchTemplateResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies a launch template. You can specify which version of the launch template to\n set as the default version. When launching an instance, the default version applies when\n a launch template version is not specified.

", + "smithy.api#examples": [ + { + "title": "To change the default version of a launch template", + "documentation": "This example specifies version 2 as the default version of the specified launch template.", + "input": { + "LaunchTemplateId": "lt-0abcd290751193123", + "DefaultVersion": "2" + }, + "output": { + "LaunchTemplate": { + "LatestVersionNumber": 2, + "LaunchTemplateId": "lt-0abcd290751193123", + "LaunchTemplateName": "WebServers", + "DefaultVersionNumber": 2, + "CreatedBy": "arn:aws:iam::123456789012:root", + "CreateTime": "2017-12-01T13:35:46.000Z" + } + } + } + ] + } + }, + "com.amazonaws.ec2#ModifyLaunchTemplateRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Unique, case-sensitive identifier you provide to ensure the idempotency of the\n request. If a client token isn't specified, a randomly generated token is used in the\n request to ensure idempotency.

\n

For more information, see Ensuring\n idempotency.

\n

Constraint: Maximum 128 ASCII characters.

", + "smithy.api#idempotencyToken": {} + } + }, + "LaunchTemplateId": { + "target": "com.amazonaws.ec2#LaunchTemplateId", + "traits": { + "smithy.api#documentation": "

The ID of the launch template.

\n

You must specify either the launch template ID or the launch template name, but not\n both.

" + } + }, + "LaunchTemplateName": { + "target": "com.amazonaws.ec2#LaunchTemplateName", + "traits": { + "smithy.api#documentation": "

The name of the launch template.

\n

You must specify either the launch template ID or the launch template name, but not\n both.

" + } + }, + "DefaultVersion": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The version number of the launch template to set as the default version.

", + "smithy.api#xmlName": "SetDefaultVersion" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyLaunchTemplateResult": { + "type": "structure", + "members": { + "LaunchTemplate": { + "target": "com.amazonaws.ec2#LaunchTemplate", + "traits": { + "aws.protocols#ec2QueryName": "LaunchTemplate", + "smithy.api#documentation": "

Information about the launch template.

", + "smithy.api#xmlName": "launchTemplate" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyLocalGatewayRoute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyLocalGatewayRouteRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyLocalGatewayRouteResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the specified local gateway route.

" + } + }, + "com.amazonaws.ec2#ModifyLocalGatewayRouteRequest": { + "type": "structure", + "members": { + "DestinationCidrBlock": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The CIDR block used for destination matches. The value that you provide must match the CIDR of an existing route in the table.

" + } + }, + "LocalGatewayRouteTableId": { + "target": "com.amazonaws.ec2#LocalGatewayRoutetableId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the local gateway route table.

", + "smithy.api#required": {} + } + }, + "LocalGatewayVirtualInterfaceGroupId": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId", + "traits": { + "smithy.api#documentation": "

\n The ID of the virtual interface group.\n

" + } + }, + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", + "traits": { + "smithy.api#documentation": "

The ID of the network interface.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "DestinationPrefixListId": { + "target": "com.amazonaws.ec2#PrefixListResourceId", + "traits": { + "smithy.api#documentation": "

\n The ID of the prefix list. Use a prefix list in place of DestinationCidrBlock. You \n cannot use DestinationPrefixListId and DestinationCidrBlock in the same request.\n

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyLocalGatewayRouteResult": { + "type": "structure", + "members": { + "Route": { + "target": "com.amazonaws.ec2#LocalGatewayRoute", + "traits": { + "aws.protocols#ec2QueryName": "Route", + "smithy.api#documentation": "

Information about the local gateway route table.

", + "smithy.api#xmlName": "route" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyManagedPrefixList": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyManagedPrefixListRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyManagedPrefixListResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the specified managed prefix list.

\n

Adding or removing entries in a prefix list creates a new version of the prefix list.\n Changing the name of the prefix list does not affect the version.

\n

If you specify a current version number that does not match the true current version\n number, the request fails.

" + } + }, + "com.amazonaws.ec2#ModifyManagedPrefixListRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "PrefixListId": { + "target": "com.amazonaws.ec2#PrefixListResourceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the prefix list.

", + "smithy.api#required": {} + } + }, + "CurrentVersion": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "smithy.api#documentation": "

The current version of the prefix list.

" + } + }, + "PrefixListName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A name for the prefix list.

" + } + }, + "AddEntries": { + "target": "com.amazonaws.ec2#AddPrefixListEntries", + "traits": { + "smithy.api#documentation": "

One or more entries to add to the prefix list.

", + "smithy.api#xmlName": "AddEntry" + } + }, + "RemoveEntries": { + "target": "com.amazonaws.ec2#RemovePrefixListEntries", + "traits": { + "smithy.api#documentation": "

One or more entries to remove from the prefix list.

", + "smithy.api#xmlName": "RemoveEntry" + } + }, + "MaxEntries": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The maximum number of entries for the prefix list. You cannot modify the entries \n of a prefix list and modify the size of a prefix list at the same time.

\n

If any of the resources that reference the prefix list cannot support the new\n maximum size, the modify operation fails. Check the state message for the IDs of \n the first ten resources that do not support the new maximum size.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyManagedPrefixListResult": { + "type": "structure", + "members": { + "PrefixList": { + "target": "com.amazonaws.ec2#ManagedPrefixList", + "traits": { + "aws.protocols#ec2QueryName": "PrefixList", + "smithy.api#documentation": "

Information about the prefix list.

", + "smithy.api#xmlName": "prefixList" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyNetworkInterfaceAttribute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyNetworkInterfaceAttributeRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Modifies the specified network interface attribute. You can specify only one attribute\n at a time. You can use this action to attach and detach security groups from an existing\n EC2 instance.

", + "smithy.api#examples": [ + { + "title": "To modify the attachment attribute of a network interface", + "documentation": "This example modifies the attachment attribute of the specified network interface.", + "input": { + "NetworkInterfaceId": "eni-686ea200", + "Attachment": { + "AttachmentId": "eni-attach-43348162", + "DeleteOnTermination": false + } + } + }, + { + "title": "To modify the description attribute of a network interface", + "documentation": "This example modifies the description attribute of the specified network interface.", + "input": { + "NetworkInterfaceId": "eni-686ea200", + "Description": { + "Value": "My description" + } + } + }, + { + "title": "To modify the groupSet attribute of a network interface", + "documentation": "This example command modifies the groupSet attribute of the specified network interface.", + "input": { + "NetworkInterfaceId": "eni-686ea200", + "Groups": [ + "sg-903004f8", + "sg-1a2b3c4d" + ] + } + }, + { + "title": "To modify the sourceDestCheck attribute of a network interface", + "documentation": "This example command modifies the sourceDestCheck attribute of the specified network interface.", + "input": { + "NetworkInterfaceId": "eni-686ea200", + "SourceDestCheck": { + "Value": false + } + } + } + ] + } + }, + "com.amazonaws.ec2#ModifyNetworkInterfaceAttributeRequest": { + "type": "structure", + "members": { + "EnaSrdSpecification": { + "target": "com.amazonaws.ec2#EnaSrdSpecification", + "traits": { + "smithy.api#documentation": "

Updates the ENA Express configuration for the network interface that’s attached to the\n instance.

" + } + }, + "EnablePrimaryIpv6": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

If you’re modifying a network interface in a dual-stack or IPv6-only subnet, you have\n the option to assign a primary IPv6 IP address. A primary IPv6 address is an IPv6 GUA\n address associated with an ENI that you have enabled to use a primary IPv6 address. Use\n this option if the instance that this ENI will be attached to relies on its IPv6 address\n not changing. Amazon Web Services will automatically assign an IPv6 address associated\n with the ENI attached to your instance to be the primary IPv6 address. Once you enable\n an IPv6 GUA address to be a primary IPv6, you cannot disable it. When you enable an IPv6\n GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6\n address until the instance is terminated or the network interface is detached. If you\n have multiple IPv6 addresses associated with an ENI attached to your instance and you\n enable a primary IPv6 address, the first IPv6 GUA address associated with the ENI\n becomes the primary IPv6 address.

" + } + }, + "ConnectionTrackingSpecification": { + "target": "com.amazonaws.ec2#ConnectionTrackingSpecificationRequest", + "traits": { + "smithy.api#documentation": "

A connection tracking specification.

" + } + }, + "AssociatePublicIpAddress": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether to assign a public IPv4 address to a network interface. This option\n can be enabled for any network interface but will only apply to the primary network\n interface (eth0).

" + } + }, + "AssociatedSubnetIds": { + "target": "com.amazonaws.ec2#SubnetIdList", + "traits": { + "smithy.api#documentation": "

A list of subnet IDs to associate with the network interface.

", + "smithy.api#xmlName": "AssociatedSubnetId" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInterfaceId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the network interface.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "networkInterfaceId" + } + }, + "Description": { + "target": "com.amazonaws.ec2#AttributeValue", + "traits": { + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description for the network interface.

", + "smithy.api#xmlName": "description" + } + }, + "SourceDestCheck": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "aws.protocols#ec2QueryName": "SourceDestCheck", + "smithy.api#documentation": "

Enable or disable source/destination checks, which ensure that the instance is either\n the source or the destination of any traffic that it receives. If the value is\n true, source/destination checks are enabled; otherwise, they are\n disabled. The default value is true. You must disable source/destination\n checks if the instance runs services such as network address translation, routing, or\n firewalls.

", + "smithy.api#xmlName": "sourceDestCheck" + } + }, + "Groups": { + "target": "com.amazonaws.ec2#SecurityGroupIdStringList", + "traits": { + "smithy.api#documentation": "

Changes the security groups for the network interface. The new set of groups you\n specify replaces the current set. You must specify at least one group, even if it's just\n the default security group in the VPC. You must specify the ID of the security group,\n not the name.

", + "smithy.api#xmlName": "SecurityGroupId" + } + }, + "Attachment": { + "target": "com.amazonaws.ec2#NetworkInterfaceAttachmentChanges", + "traits": { + "aws.protocols#ec2QueryName": "Attachment", + "smithy.api#documentation": "

Information about the interface attachment. If modifying the delete on\n termination attribute, you must specify the ID of the interface\n attachment.

", + "smithy.api#xmlName": "attachment" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the parameters for ModifyNetworkInterfaceAttribute.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyPrivateDnsNameOptions": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyPrivateDnsNameOptionsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyPrivateDnsNameOptionsResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the options for instance hostnames for the specified instance.

" + } + }, + "com.amazonaws.ec2#ModifyPrivateDnsNameOptionsRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + } + }, + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#required": {} + } + }, + "PrivateDnsHostnameType": { + "target": "com.amazonaws.ec2#HostnameType", + "traits": { + "smithy.api#documentation": "

The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name\n must be based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name\n must be based on the instance ID. For dual-stack subnets, you can specify whether DNS\n names use the instance IPv4 address or the instance ID.

" + } + }, + "EnableResourceNameDnsARecord": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS A\n records.

" + } + }, + "EnableResourceNameDnsAAAARecord": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA\n records.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyPrivateDnsNameOptionsResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an\n error.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyPublicIpDnsNameOptions": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyPublicIpDnsNameOptionsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyPublicIpDnsNameOptionsResult" + }, + "traits": { + "smithy.api#documentation": "

Modify public hostname options for a network interface. For more information, see EC2 instance hostnames, DNS names, and domains in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#ModifyPublicIpDnsNameOptionsRequest": { + "type": "structure", + "members": { + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A network interface ID.

", + "smithy.api#required": {} + } + }, + "HostnameType": { + "target": "com.amazonaws.ec2#PublicIpDnsOption", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The public hostname type. For more information, see EC2 instance hostnames, DNS names, and domains in the Amazon EC2 User Guide.

\n ", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyPublicIpDnsNameOptionsResult": { + "type": "structure", + "members": { + "Successful": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Successful", + "smithy.api#documentation": "

Whether or not the request was successful.

", + "smithy.api#xmlName": "successful" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyReservedInstances": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyReservedInstancesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyReservedInstancesResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the configuration of your Reserved Instances, such as the Availability Zone,\n instance count, or instance type. The Reserved Instances to be modified must be identical,\n except for Availability Zone, network platform, and instance type.

\n

For more information, see Modify Reserved Instances in the\n Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#ModifyReservedInstancesRequest": { + "type": "structure", + "members": { + "ReservedInstancesIds": { + "target": "com.amazonaws.ec2#ReservedInstancesIdStringList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of the Reserved Instances to modify.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "ReservedInstancesId" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

A unique, case-sensitive token you provide to ensure idempotency of your modification\n request. For more information, see Ensuring\n Idempotency.

", + "smithy.api#xmlName": "clientToken" + } + }, + "TargetConfigurations": { + "target": "com.amazonaws.ec2#ReservedInstancesConfigurationList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The configuration settings for the Reserved Instances to modify.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "ReservedInstancesConfigurationSetItemType" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the parameters for ModifyReservedInstances.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyReservedInstancesResult": { + "type": "structure", + "members": { + "ReservedInstancesModificationId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ReservedInstancesModificationId", + "smithy.api#documentation": "

The ID for the modification.

", + "smithy.api#xmlName": "reservedInstancesModificationId" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the output of ModifyReservedInstances.

", + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyRouteServer": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyRouteServerRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyRouteServerResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the configuration of an existing route server.

\n

Amazon VPC Route Server simplifies routing for traffic between workloads that are deployed within a VPC and its internet gateways. With this feature, \nVPC Route Server dynamically updates VPC and internet gateway route tables with your preferred IPv4 or IPv6 routes to achieve routing fault tolerance for those workloads. This enables you to automatically reroute traffic within a VPC, which increases the manageability of VPC routing and interoperability with third-party workloads.

\n

Route server supports the follow route table types:

\n \n

Route server does not support route tables associated with virtual private gateways. To propagate routes into a transit gateway route table, use Transit Gateway Connect.

\n

For more information see Dynamic routing in your VPC with VPC Route Server in the Amazon VPC User Guide.

" + } + }, + "com.amazonaws.ec2#ModifyRouteServerRequest": { + "type": "structure", + "members": { + "RouteServerId": { + "target": "com.amazonaws.ec2#RouteServerId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the route server to modify.

", + "smithy.api#required": {} + } + }, + "PersistRoutes": { + "target": "com.amazonaws.ec2#RouteServerPersistRoutesAction", + "traits": { + "smithy.api#documentation": "

Specifies whether to persist routes after all BGP sessions are terminated.

\n " + } + }, + "PersistRoutesDuration": { + "target": "com.amazonaws.ec2#BoxedLong", + "traits": { + "smithy.api#documentation": "

The number of minutes a route server will wait after BGP is re-established to unpersist the routes in the FIB and RIB. Value must be in the range of 1-5. Required if PersistRoutes is enabled.

\n

If you set the duration to 1 minute, then when your network appliance re-establishes BGP with route server, it has 1 minute to relearn it's adjacent network and advertise those routes to route server before route server resumes normal functionality. In most cases, 1 minute is probably sufficient. If, however, you have concerns that your BGP network may not be capable of fully re-establishing and re-learning everything in 1 minute, you can increase the duration up to 5 minutes.

" + } + }, + "SnsNotificationsEnabled": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Specifies whether to enable SNS notifications for route server events. Enabling SNS notifications persists BGP status changes to an SNS topic provisioned by Amazon Web Services.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyRouteServerResult": { + "type": "structure", + "members": { + "RouteServer": { + "target": "com.amazonaws.ec2#RouteServer", + "traits": { + "aws.protocols#ec2QueryName": "RouteServer", + "smithy.api#documentation": "

Information about the modified route server.

", + "smithy.api#xmlName": "routeServer" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifySecurityGroupRules": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifySecurityGroupRulesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifySecurityGroupRulesResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the rules of a security group.

" + } + }, + "com.amazonaws.ec2#ModifySecurityGroupRulesRequest": { + "type": "structure", + "members": { + "GroupId": { + "target": "com.amazonaws.ec2#SecurityGroupId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the security group.

", + "smithy.api#required": {} + } + }, + "SecurityGroupRules": { + "target": "com.amazonaws.ec2#SecurityGroupRuleUpdateList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Information about the security group properties to update.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "SecurityGroupRule" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifySecurityGroupRulesResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, returns an error.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifySnapshotAttribute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifySnapshotAttributeRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Adds or removes permission settings for the specified snapshot. You may add or remove\n specified Amazon Web Services account IDs from a snapshot's list of create volume permissions, but you cannot\n do both in a single operation. If you need to both add and remove account IDs for a snapshot,\n you must use multiple operations. You can make up to 500 modifications to a snapshot in a single operation.

\n

Encrypted snapshots and snapshots with Amazon Web Services Marketplace product codes cannot be made\n public. Snapshots encrypted with your default KMS key cannot be shared with other accounts.

\n

For more information about modifying snapshot permissions, see Share a snapshot in the\n Amazon EBS User Guide.

", + "smithy.api#examples": [ + { + "title": "To make a snapshot public", + "documentation": "This example makes the snapshot ``snap-1234567890abcdef0`` public.", + "input": { + "SnapshotId": "snap-1234567890abcdef0", + "Attribute": "createVolumePermission", + "OperationType": "add", + "GroupNames": [ + "all" + ] + }, + "output": {} + }, + { + "title": "To modify a snapshot attribute", + "documentation": "This example modifies snapshot ``snap-1234567890abcdef0`` to remove the create volume permission for a user with the account ID ``123456789012``. If the command succeeds, no output is returned.", + "input": { + "SnapshotId": "snap-1234567890abcdef0", + "Attribute": "createVolumePermission", + "OperationType": "remove", + "UserIds": [ + "123456789012" + ] + }, + "output": {} + } + ] + } + }, + "com.amazonaws.ec2#ModifySnapshotAttributeRequest": { + "type": "structure", + "members": { + "Attribute": { + "target": "com.amazonaws.ec2#SnapshotAttributeName", + "traits": { + "smithy.api#documentation": "

The snapshot attribute to modify. Only volume creation permissions can be modified.

" + } + }, + "CreateVolumePermission": { + "target": "com.amazonaws.ec2#CreateVolumePermissionModifications", + "traits": { + "smithy.api#documentation": "

A JSON representation of the snapshot attribute modification.

" + } + }, + "GroupNames": { + "target": "com.amazonaws.ec2#GroupNameStringList", + "traits": { + "smithy.api#documentation": "

The group to modify for the snapshot.

", + "smithy.api#xmlName": "UserGroup" + } + }, + "OperationType": { + "target": "com.amazonaws.ec2#OperationType", + "traits": { + "smithy.api#documentation": "

The type of operation to perform to the attribute.

" + } + }, + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the snapshot.

", + "smithy.api#required": {} + } + }, + "UserIds": { + "target": "com.amazonaws.ec2#UserIdStringList", + "traits": { + "smithy.api#documentation": "

The account ID to modify for the snapshot.

", + "smithy.api#xmlName": "UserId" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifySnapshotTier": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifySnapshotTierRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifySnapshotTierResult" + }, + "traits": { + "smithy.api#documentation": "

Archives an Amazon EBS snapshot. When you archive a snapshot, it is converted to a full \n snapshot that includes all of the blocks of data that were written to the volume at the \n time the snapshot was created, and moved from the standard tier to the archive \n tier. For more information, see Archive Amazon EBS snapshots \n in the Amazon EBS User Guide.

" + } + }, + "com.amazonaws.ec2#ModifySnapshotTierRequest": { + "type": "structure", + "members": { + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the snapshot.

", + "smithy.api#required": {} + } + }, + "StorageTier": { + "target": "com.amazonaws.ec2#TargetStorageTier", + "traits": { + "smithy.api#documentation": "

The name of the storage tier. You must specify archive.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifySnapshotTierResult": { + "type": "structure", + "members": { + "SnapshotId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The ID of the snapshot.

", + "smithy.api#xmlName": "snapshotId" + } + }, + "TieringStartTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "TieringStartTime", + "smithy.api#documentation": "

The date and time when the archive process was started.

", + "smithy.api#xmlName": "tieringStartTime" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifySpotFleetRequest": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifySpotFleetRequestRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifySpotFleetRequestResponse" + }, + "traits": { + "smithy.api#documentation": "

Modifies the specified Spot Fleet request.

\n

You can only modify a Spot Fleet request of type maintain.

\n

While the Spot Fleet request is being modified, it is in the modifying\n state.

\n

To scale up your Spot Fleet, increase its target capacity. The Spot Fleet launches the\n additional Spot Instances according to the allocation strategy for the Spot Fleet\n request. If the allocation strategy is lowestPrice, the Spot Fleet launches\n instances using the Spot Instance pool with the lowest price. If the allocation strategy\n is diversified, the Spot Fleet distributes the instances across the Spot\n Instance pools. If the allocation strategy is capacityOptimized, Spot Fleet\n launches instances from Spot Instance pools with optimal capacity for the number of instances\n that are launching.

\n

To scale down your Spot Fleet, decrease its target capacity. First, the Spot Fleet\n cancels any open requests that exceed the new target capacity. You can request that the\n Spot Fleet terminate Spot Instances until the size of the fleet no longer exceeds the\n new target capacity. If the allocation strategy is lowestPrice, the Spot\n Fleet terminates the instances with the highest price per unit. If the allocation\n strategy is capacityOptimized, the Spot Fleet terminates the instances in\n the Spot Instance pools that have the least available Spot Instance capacity. If the allocation\n strategy is diversified, the Spot Fleet terminates instances across the\n Spot Instance pools. Alternatively, you can request that the Spot Fleet keep the fleet\n at its current size, but not replace any Spot Instances that are interrupted or that you\n terminate manually.

\n

If you are finished with your Spot Fleet for now, but will use it again later, you can\n set the target capacity to 0.

", + "smithy.api#examples": [ + { + "title": "To increase the target capacity of a Spot fleet request", + "documentation": "This example increases the target capacity of the specified Spot fleet request.", + "input": { + "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE", + "TargetCapacity": 20 + }, + "output": { + "Return": true + } + } + ] + } + }, + "com.amazonaws.ec2#ModifySpotFleetRequestRequest": { + "type": "structure", + "members": { + "LaunchTemplateConfigs": { + "target": "com.amazonaws.ec2#LaunchTemplateConfigList", + "traits": { + "smithy.api#documentation": "

The launch template and overrides. You can only use this parameter if you specified a\n launch template (LaunchTemplateConfigs) in your Spot Fleet request. If you\n specified LaunchSpecifications in your Spot Fleet request, then omit this\n parameter.

", + "smithy.api#xmlName": "LaunchTemplateConfig" + } + }, + "OnDemandTargetCapacity": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The number of On-Demand Instances in the fleet.

" + } + }, + "Context": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Reserved.

" + } + }, + "SpotFleetRequestId": { + "target": "com.amazonaws.ec2#SpotFleetRequestId", + "traits": { + "aws.protocols#ec2QueryName": "SpotFleetRequestId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Spot Fleet request.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "spotFleetRequestId" + } + }, + "TargetCapacity": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "TargetCapacity", + "smithy.api#documentation": "

The size of the fleet.

", + "smithy.api#xmlName": "targetCapacity" + } + }, + "ExcessCapacityTerminationPolicy": { + "target": "com.amazonaws.ec2#ExcessCapacityTerminationPolicy", + "traits": { + "aws.protocols#ec2QueryName": "ExcessCapacityTerminationPolicy", + "smithy.api#documentation": "

Indicates whether running instances should be terminated if the target capacity\n of the Spot Fleet request is decreased below the current size of the Spot Fleet.

\n

Supported only for fleets of type maintain.

", + "smithy.api#xmlName": "excessCapacityTerminationPolicy" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the parameters for ModifySpotFleetRequest.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifySpotFleetRequestResponse": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

If the request succeeds, the response returns true. If the request fails,\n no response is returned, and instead an error message is returned.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the output of ModifySpotFleetRequest.

", + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifySubnetAttribute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifySubnetAttributeRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Modifies a subnet attribute. You can only modify one attribute at a time.

\n

Use this action to modify subnets on Amazon Web Services Outposts.

\n \n

For more information about Amazon Web Services Outposts, see the following:

\n ", + "smithy.api#examples": [ + { + "title": "To change a subnet's public IP addressing behavior", + "documentation": "This example modifies the specified subnet so that all instances launched into this subnet are assigned a public IP address.", + "input": { + "SubnetId": "subnet-1a2b3c4d", + "MapPublicIpOnLaunch": { + "Value": true + } + } + } + ] + } + }, + "com.amazonaws.ec2#ModifySubnetAttributeRequest": { + "type": "structure", + "members": { + "AssignIpv6AddressOnCreation": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "smithy.api#documentation": "

Specify true to indicate that network interfaces created in the\n specified subnet should be assigned an IPv6 address. This includes a network interface\n that's created when launching an instance into the subnet (the instance therefore\n receives an IPv6 address).

\n

If you enable the IPv6 addressing feature for your subnet, your network interface\n or instance only receives an IPv6 address if it's created using version\n 2016-11-15 or later of the Amazon EC2 API.

" + } + }, + "MapPublicIpOnLaunch": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "smithy.api#documentation": "

Specify true to indicate that network interfaces attached to instances created in the\n specified subnet should be assigned a public IPv4 address.

\n

Amazon Web Services charges for all public IPv4 addresses, including public IPv4 addresses \nassociated with running instances and Elastic IP addresses. For more information, see the Public IPv4 Address tab on the Amazon VPC pricing page.

" + } + }, + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", + "traits": { + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the subnet.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "subnetId" + } + }, + "MapCustomerOwnedIpOnLaunch": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "smithy.api#documentation": "

Specify true to indicate that network interfaces attached to instances created in the\n specified subnet should be assigned a customer-owned IPv4 address.

\n

When this value is true, you must specify the customer-owned IP pool using CustomerOwnedIpv4Pool.

" + } + }, + "CustomerOwnedIpv4Pool": { + "target": "com.amazonaws.ec2#CoipPoolId", + "traits": { + "smithy.api#documentation": "

The customer-owned IPv4 address pool associated with the subnet.

\n

You must set this value when you specify true for MapCustomerOwnedIpOnLaunch.

" + } + }, + "EnableDns64": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "smithy.api#documentation": "

Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this subnet \n should return synthetic IPv6 addresses for IPv4-only destinations.

\n

You must first configure a NAT gateway in a public subnet (separate from the subnet \n containing the IPv6-only workloads). For example, the subnet containing the NAT gateway \n should have a 0.0.0.0/0 route pointing to the internet gateway. For more \n information, see Configure DNS64 and NAT64 in the Amazon VPC User Guide.

" + } + }, + "PrivateDnsHostnameTypeOnLaunch": { + "target": "com.amazonaws.ec2#HostnameType", + "traits": { + "smithy.api#documentation": "

The type of hostname to assign to instances in the subnet at launch. For IPv4-only and dual-stack (IPv4 and IPv6) subnets, an\n instance DNS name can be based on the instance IPv4 address (ip-name) or the instance ID (resource-name). For IPv6 only subnets, an instance\n DNS name must be based on the instance ID (resource-name).

" + } + }, + "EnableResourceNameDnsARecordOnLaunch": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS A records.

" + } + }, + "EnableResourceNameDnsAAAARecordOnLaunch": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.

" + } + }, + "EnableLniAtDeviceIndex": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

\n Indicates the device position for local network interfaces in this subnet. For example, \n 1 indicates local network interfaces in this subnet are the secondary \n network interface (eth1). A local network interface cannot be the primary network\n interface (eth0).\n

" + } + }, + "DisableLniAtDeviceIndex": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "smithy.api#documentation": "

\n Specify true to indicate that local network interfaces at the current \n position should be disabled. \n

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyTrafficMirrorFilterNetworkServices": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyTrafficMirrorFilterNetworkServicesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyTrafficMirrorFilterNetworkServicesResult" + }, + "traits": { + "smithy.api#documentation": "

Allows or restricts mirroring network services.

\n

By default, Amazon DNS network services are not eligible for Traffic Mirror. Use AddNetworkServices to add network services to a Traffic Mirror filter. When a network service is added to the Traffic Mirror filter, all traffic related to that network service will be mirrored.\n When you no longer want to mirror network services, use RemoveNetworkServices to remove the network services from the Traffic Mirror filter.\n

" + } + }, + "com.amazonaws.ec2#ModifyTrafficMirrorFilterNetworkServicesRequest": { + "type": "structure", + "members": { + "TrafficMirrorFilterId": { + "target": "com.amazonaws.ec2#TrafficMirrorFilterId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Traffic Mirror filter.

", + "smithy.api#required": {} + } + }, + "AddNetworkServices": { + "target": "com.amazonaws.ec2#TrafficMirrorNetworkServiceList", + "traits": { + "smithy.api#documentation": "

The network service, for example Amazon DNS, that you want to mirror.

", + "smithy.api#xmlName": "AddNetworkService" + } + }, + "RemoveNetworkServices": { + "target": "com.amazonaws.ec2#TrafficMirrorNetworkServiceList", + "traits": { + "smithy.api#documentation": "

The network service, for example Amazon DNS, that you no longer want to mirror.

", + "smithy.api#xmlName": "RemoveNetworkService" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyTrafficMirrorFilterNetworkServicesResult": { + "type": "structure", + "members": { + "TrafficMirrorFilter": { + "target": "com.amazonaws.ec2#TrafficMirrorFilter", + "traits": { + "aws.protocols#ec2QueryName": "TrafficMirrorFilter", + "smithy.api#documentation": "

The Traffic Mirror filter that the network service is associated with.

", + "smithy.api#xmlName": "trafficMirrorFilter" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyTrafficMirrorFilterRule": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyTrafficMirrorFilterRuleRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyTrafficMirrorFilterRuleResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the specified Traffic Mirror rule.

\n

\n DestinationCidrBlock and SourceCidrBlock must both be an IPv4\n range or an IPv6 range.

" + } + }, + "com.amazonaws.ec2#ModifyTrafficMirrorFilterRuleRequest": { + "type": "structure", + "members": { + "TrafficMirrorFilterRuleId": { + "target": "com.amazonaws.ec2#TrafficMirrorFilterRuleIdWithResolver", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Traffic Mirror rule.

", + "smithy.api#required": {} + } + }, + "TrafficDirection": { + "target": "com.amazonaws.ec2#TrafficDirection", + "traits": { + "smithy.api#documentation": "

The type of traffic to assign to the rule.

" + } + }, + "RuleNumber": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The number of the Traffic Mirror rule. This number must be unique for each Traffic Mirror rule in a given\n direction. The rules are processed in ascending order by rule number.

" + } + }, + "RuleAction": { + "target": "com.amazonaws.ec2#TrafficMirrorRuleAction", + "traits": { + "smithy.api#documentation": "

The action to assign to the rule.

" + } + }, + "DestinationPortRange": { + "target": "com.amazonaws.ec2#TrafficMirrorPortRangeRequest", + "traits": { + "smithy.api#documentation": "

The destination ports that are associated with the Traffic Mirror rule.

" + } + }, + "SourcePortRange": { + "target": "com.amazonaws.ec2#TrafficMirrorPortRangeRequest", + "traits": { + "smithy.api#documentation": "

The port range to assign to the Traffic Mirror rule.

" + } + }, + "Protocol": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The protocol, for example TCP, to assign to the Traffic Mirror rule.

" + } + }, + "DestinationCidrBlock": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The destination CIDR block to assign to the Traffic Mirror rule.

" + } + }, + "SourceCidrBlock": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The source CIDR block to assign to the Traffic Mirror rule.

" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The description to assign to the Traffic Mirror rule.

" + } + }, + "RemoveFields": { + "target": "com.amazonaws.ec2#TrafficMirrorFilterRuleFieldList", + "traits": { + "smithy.api#documentation": "

The properties that you want to remove from the Traffic Mirror filter rule.

\n

When you remove a property from a Traffic Mirror filter rule, the property is set to the default.

", + "smithy.api#xmlName": "RemoveField" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyTrafficMirrorFilterRuleResult": { + "type": "structure", + "members": { + "TrafficMirrorFilterRule": { + "target": "com.amazonaws.ec2#TrafficMirrorFilterRule", + "traits": { + "aws.protocols#ec2QueryName": "TrafficMirrorFilterRule", + "smithy.api#documentation": "\n

Tags are not returned for ModifyTrafficMirrorFilterRule.

\n
\n

A Traffic Mirror rule.

", + "smithy.api#xmlName": "trafficMirrorFilterRule" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyTrafficMirrorSession": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyTrafficMirrorSessionRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyTrafficMirrorSessionResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies a Traffic Mirror session.

" + } + }, + "com.amazonaws.ec2#ModifyTrafficMirrorSessionRequest": { + "type": "structure", + "members": { + "TrafficMirrorSessionId": { + "target": "com.amazonaws.ec2#TrafficMirrorSessionId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Traffic Mirror session.

", + "smithy.api#required": {} + } + }, + "TrafficMirrorTargetId": { + "target": "com.amazonaws.ec2#TrafficMirrorTargetId", + "traits": { + "smithy.api#documentation": "

The Traffic Mirror target. The target must be in the same VPC as the source, or have a VPC peering connection with the source.

" + } + }, + "TrafficMirrorFilterId": { + "target": "com.amazonaws.ec2#TrafficMirrorFilterId", + "traits": { + "smithy.api#documentation": "

The ID of the Traffic Mirror filter.

" + } + }, + "PacketLength": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The number of bytes in each packet to mirror. These are bytes after the VXLAN header. To mirror a subset, set this to the length (in bytes) to mirror. For example, if you set this value to 100, then the first 100 bytes that meet the filter criteria are copied to the target. Do not specify this parameter when you want to mirror the entire packet.

\n

For sessions with Network Load Balancer (NLB) traffic mirror targets, the default PacketLength will be set to 8500. Valid values are 1-8500. Setting a PacketLength greater than 8500 will result in an error response.

" + } + }, + "SessionNumber": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The session number determines the order in which sessions are evaluated when an interface is used by multiple sessions. The first session with a matching filter is the one that mirrors the packets.

\n

Valid values are 1-32766.

" + } + }, + "VirtualNetworkId": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The virtual network ID of the Traffic Mirror session.

" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The description to assign to the Traffic Mirror session.

" + } + }, + "RemoveFields": { + "target": "com.amazonaws.ec2#TrafficMirrorSessionFieldList", + "traits": { + "smithy.api#documentation": "

The properties that you want to remove from the Traffic Mirror session.

\n

When you remove a property from a Traffic Mirror session, the property is set to the default.

", + "smithy.api#xmlName": "RemoveField" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyTrafficMirrorSessionResult": { + "type": "structure", + "members": { + "TrafficMirrorSession": { + "target": "com.amazonaws.ec2#TrafficMirrorSession", + "traits": { + "aws.protocols#ec2QueryName": "TrafficMirrorSession", + "smithy.api#documentation": "

Information about the Traffic Mirror session.

", + "smithy.api#xmlName": "trafficMirrorSession" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyTransitGateway": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyTransitGatewayRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyTransitGatewayResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the specified transit gateway. When you modify a transit gateway, the modified options are applied to new transit gateway attachments only. Your existing transit gateway attachments are not modified.

" + } + }, + "com.amazonaws.ec2#ModifyTransitGatewayOptions": { + "type": "structure", + "members": { + "AddTransitGatewayCidrBlocks": { + "target": "com.amazonaws.ec2#TransitGatewayCidrBlockStringList", + "traits": { + "smithy.api#documentation": "

Adds IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size /24 CIDR block or larger for IPv4, or a size /64 CIDR block or larger for IPv6.

" + } + }, + "RemoveTransitGatewayCidrBlocks": { + "target": "com.amazonaws.ec2#TransitGatewayCidrBlockStringList", + "traits": { + "smithy.api#documentation": "

Removes CIDR blocks for the transit gateway.

" + } + }, + "VpnEcmpSupport": { + "target": "com.amazonaws.ec2#VpnEcmpSupportValue", + "traits": { + "smithy.api#documentation": "

Enable or disable Equal Cost Multipath Protocol support.

" + } + }, + "DnsSupport": { + "target": "com.amazonaws.ec2#DnsSupportValue", + "traits": { + "smithy.api#documentation": "

Enable or disable DNS support.

" + } + }, + "SecurityGroupReferencingSupport": { + "target": "com.amazonaws.ec2#SecurityGroupReferencingSupportValue", + "traits": { + "smithy.api#documentation": "

Enables you to reference a security group across VPCs attached to a transit gateway to simplify security group management.\n\n

\n

This option is disabled by default.

\n

For more information about security group referencing, see Security group referencing in the Amazon Web Services Transit Gateways Guide.

" + } + }, + "AutoAcceptSharedAttachments": { + "target": "com.amazonaws.ec2#AutoAcceptSharedAttachmentsValue", + "traits": { + "smithy.api#documentation": "

Enable or disable automatic acceptance of attachment requests.

" + } + }, + "DefaultRouteTableAssociation": { + "target": "com.amazonaws.ec2#DefaultRouteTableAssociationValue", + "traits": { + "smithy.api#documentation": "

Enable or disable automatic association with the default association route table.

" + } + }, + "AssociationDefaultRouteTableId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "traits": { + "smithy.api#documentation": "

The ID of the default association route table.

" + } + }, + "DefaultRouteTablePropagation": { + "target": "com.amazonaws.ec2#DefaultRouteTablePropagationValue", + "traits": { + "smithy.api#documentation": "

Indicates whether resource attachments automatically propagate routes to the default\n propagation route table. Enabled by default. If defaultRouteTablePropagation\n is set to enable,\n Amazon Web Services Transit Gateway will create the default transit gateway route\n table.

" + } + }, + "PropagationDefaultRouteTableId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "traits": { + "smithy.api#documentation": "

The ID of the default propagation route table.

" + } + }, + "AmazonSideAsn": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "smithy.api#documentation": "

A private Autonomous System Number (ASN) for the Amazon side of a BGP session. \n The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to 4294967294 for 32-bit ASNs.

\n

The modify ASN operation is not allowed on a transit gateway if it has the following attachments:

\n \n

You must first delete all transit gateway attachments configured prior to modifying the ASN on\n the transit gateway.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The transit gateway options.

" + } + }, + "com.amazonaws.ec2#ModifyTransitGatewayPrefixListReference": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyTransitGatewayPrefixListReferenceRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyTransitGatewayPrefixListReferenceResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies a reference (route) to a prefix list in a specified transit gateway route table.

" + } + }, + "com.amazonaws.ec2#ModifyTransitGatewayPrefixListReferenceRequest": { + "type": "structure", + "members": { + "TransitGatewayRouteTableId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway route table.

", + "smithy.api#required": {} + } + }, + "PrefixListId": { + "target": "com.amazonaws.ec2#PrefixListResourceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the prefix list.

", + "smithy.api#required": {} + } + }, + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "traits": { + "smithy.api#documentation": "

The ID of the attachment to which traffic is routed.

" + } + }, + "Blackhole": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether to drop traffic that matches this route.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyTransitGatewayPrefixListReferenceResult": { + "type": "structure", + "members": { + "TransitGatewayPrefixListReference": { + "target": "com.amazonaws.ec2#TransitGatewayPrefixListReference", + "traits": { + "aws.protocols#ec2QueryName": "TransitGatewayPrefixListReference", + "smithy.api#documentation": "

Information about the prefix list reference.

", + "smithy.api#xmlName": "transitGatewayPrefixListReference" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyTransitGatewayRequest": { + "type": "structure", + "members": { + "TransitGatewayId": { + "target": "com.amazonaws.ec2#TransitGatewayId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway.

", + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The description for the transit gateway.

" + } + }, + "Options": { + "target": "com.amazonaws.ec2#ModifyTransitGatewayOptions", + "traits": { + "smithy.api#documentation": "

The options to modify.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyTransitGatewayResult": { + "type": "structure", + "members": { + "TransitGateway": { + "target": "com.amazonaws.ec2#TransitGateway", + "traits": { + "aws.protocols#ec2QueryName": "TransitGateway", + "smithy.api#documentation": "

Information about the transit gateway.

", + "smithy.api#xmlName": "transitGateway" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyTransitGatewayVpcAttachment": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyTransitGatewayVpcAttachmentRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyTransitGatewayVpcAttachmentResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the specified VPC attachment.

" + } + }, + "com.amazonaws.ec2#ModifyTransitGatewayVpcAttachmentRequest": { + "type": "structure", + "members": { + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the attachment.

", + "smithy.api#required": {} + } + }, + "AddSubnetIds": { + "target": "com.amazonaws.ec2#TransitGatewaySubnetIdList", + "traits": { + "smithy.api#documentation": "

The IDs of one or more subnets to add. You can specify at most one subnet per Availability Zone.

" + } + }, + "RemoveSubnetIds": { + "target": "com.amazonaws.ec2#TransitGatewaySubnetIdList", + "traits": { + "smithy.api#documentation": "

The IDs of one or more subnets to remove.

" + } + }, + "Options": { + "target": "com.amazonaws.ec2#ModifyTransitGatewayVpcAttachmentRequestOptions", + "traits": { + "smithy.api#documentation": "

The new VPC attachment options.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyTransitGatewayVpcAttachmentRequestOptions": { + "type": "structure", + "members": { + "DnsSupport": { + "target": "com.amazonaws.ec2#DnsSupportValue", + "traits": { + "smithy.api#documentation": "

Enable or disable DNS support. The default is enable.

" + } + }, + "SecurityGroupReferencingSupport": { + "target": "com.amazonaws.ec2#SecurityGroupReferencingSupportValue", + "traits": { + "smithy.api#documentation": "

Enables you to reference a security group across VPCs attached to a transit gateway to simplify security group management.\n\n

\n

This option is disabled by default.

\n

For more information about security group referencing, see Security group referencing in the Amazon Web Services Transit Gateways Guide.

" + } + }, + "Ipv6Support": { + "target": "com.amazonaws.ec2#Ipv6SupportValue", + "traits": { + "smithy.api#documentation": "

Enable or disable IPv6 support. The default is enable.

" + } + }, + "ApplianceModeSupport": { + "target": "com.amazonaws.ec2#ApplianceModeSupportValue", + "traits": { + "smithy.api#documentation": "

Enable or disable support for appliance mode. If enabled, a traffic flow between a source and destination uses the same Availability Zone for the VPC attachment for the lifetime of that flow. The default is disable.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the options for a VPC attachment.

" + } + }, + "com.amazonaws.ec2#ModifyTransitGatewayVpcAttachmentResult": { + "type": "structure", + "members": { + "TransitGatewayVpcAttachment": { + "target": "com.amazonaws.ec2#TransitGatewayVpcAttachment", + "traits": { + "aws.protocols#ec2QueryName": "TransitGatewayVpcAttachment", + "smithy.api#documentation": "

Information about the modified attachment.

", + "smithy.api#xmlName": "transitGatewayVpcAttachment" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessEndpoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the configuration of the specified Amazon Web Services Verified Access endpoint.

" + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessEndpointCidrOptions": { + "type": "structure", + "members": { + "PortRanges": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointPortRangeList", + "traits": { + "smithy.api#documentation": "

The port ranges.

", + "smithy.api#xmlName": "PortRange" + } + } + }, + "traits": { + "smithy.api#documentation": "

The CIDR options for a Verified Access endpoint.

" + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessEndpointEniOptions": { + "type": "structure", + "members": { + "Protocol": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointProtocol", + "traits": { + "smithy.api#documentation": "

The IP protocol.

" + } + }, + "Port": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortNumber", + "traits": { + "smithy.api#documentation": "

The IP port number.

" + } + }, + "PortRanges": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointPortRangeList", + "traits": { + "smithy.api#documentation": "

The port ranges.

", + "smithy.api#xmlName": "PortRange" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the options when modifying a Verified Access endpoint with the\n network-interface type.

" + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessEndpointLoadBalancerOptions": { + "type": "structure", + "members": { + "SubnetIds": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointSubnetIdList", + "traits": { + "smithy.api#documentation": "

The IDs of the subnets.

", + "smithy.api#xmlName": "SubnetId" + } + }, + "Protocol": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointProtocol", + "traits": { + "smithy.api#documentation": "

The IP protocol.

" + } + }, + "Port": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortNumber", + "traits": { + "smithy.api#documentation": "

The IP port number.

" + } + }, + "PortRanges": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointPortRangeList", + "traits": { + "smithy.api#documentation": "

The port ranges.

", + "smithy.api#xmlName": "PortRange" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a load balancer when creating an Amazon Web Services Verified Access endpoint using the\n load-balancer type.

" + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessEndpointPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointPolicyRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointPolicyResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the specified Amazon Web Services Verified Access endpoint policy.

" + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessEndpointPolicyRequest": { + "type": "structure", + "members": { + "VerifiedAccessEndpointId": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Verified Access endpoint.

", + "smithy.api#required": {} + } + }, + "PolicyEnabled": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

The status of the Verified Access policy.

" + } + }, + "PolicyDocument": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The Verified Access policy document.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "SseSpecification": { + "target": "com.amazonaws.ec2#VerifiedAccessSseSpecificationRequest", + "traits": { + "smithy.api#documentation": "

The options for server side encryption.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessEndpointPolicyResult": { + "type": "structure", + "members": { + "PolicyEnabled": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "PolicyEnabled", + "smithy.api#documentation": "

The status of the Verified Access policy.

", + "smithy.api#xmlName": "policyEnabled" + } + }, + "PolicyDocument": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PolicyDocument", + "smithy.api#documentation": "

The Verified Access policy document.

", + "smithy.api#xmlName": "policyDocument" + } + }, + "SseSpecification": { + "target": "com.amazonaws.ec2#VerifiedAccessSseSpecificationResponse", + "traits": { + "aws.protocols#ec2QueryName": "SseSpecification", + "smithy.api#documentation": "

The options in use for server side encryption.

", + "smithy.api#xmlName": "sseSpecification" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessEndpointPortRange": { + "type": "structure", + "members": { + "FromPort": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortNumber", + "traits": { + "smithy.api#documentation": "

The start of the port range.

" + } + }, + "ToPort": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortNumber", + "traits": { + "smithy.api#documentation": "

The end of the port range.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the port range for a Verified Access endpoint.

" + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessEndpointPortRangeList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointPortRange", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessEndpointRdsOptions": { + "type": "structure", + "members": { + "SubnetIds": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointSubnetIdList", + "traits": { + "smithy.api#documentation": "

The IDs of the subnets.

", + "smithy.api#xmlName": "SubnetId" + } + }, + "Port": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortNumber", + "traits": { + "smithy.api#documentation": "

The port.

" + } + }, + "RdsEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The RDS endpoint.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The RDS options for a Verified Access endpoint.

" + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessEndpointRequest": { + "type": "structure", + "members": { + "VerifiedAccessEndpointId": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Verified Access endpoint.

", + "smithy.api#required": {} + } + }, + "VerifiedAccessGroupId": { + "target": "com.amazonaws.ec2#VerifiedAccessGroupId", + "traits": { + "smithy.api#documentation": "

The ID of the Verified Access group.

" + } + }, + "LoadBalancerOptions": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointLoadBalancerOptions", + "traits": { + "smithy.api#documentation": "

The load balancer details if creating the Verified Access endpoint as\n load-balancertype.

" + } + }, + "NetworkInterfaceOptions": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointEniOptions", + "traits": { + "smithy.api#documentation": "

The network interface options.

" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A description for the Verified Access endpoint.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "RdsOptions": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointRdsOptions", + "traits": { + "smithy.api#documentation": "

The RDS options.

" + } + }, + "CidrOptions": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessEndpointCidrOptions", + "traits": { + "smithy.api#documentation": "

The CIDR options.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessEndpointResult": { + "type": "structure", + "members": { + "VerifiedAccessEndpoint": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpoint", + "traits": { + "aws.protocols#ec2QueryName": "VerifiedAccessEndpoint", + "smithy.api#documentation": "

Details about the Verified Access endpoint.

", + "smithy.api#xmlName": "verifiedAccessEndpoint" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessEndpointSubnetIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#SubnetId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessGroup": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessGroupRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessGroupResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the specified Amazon Web Services Verified Access group configuration.

" + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessGroupPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessGroupPolicyRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessGroupPolicyResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the specified Amazon Web Services Verified Access group policy.

" + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessGroupPolicyRequest": { + "type": "structure", + "members": { + "VerifiedAccessGroupId": { + "target": "com.amazonaws.ec2#VerifiedAccessGroupId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Verified Access group.

", + "smithy.api#required": {} + } + }, + "PolicyEnabled": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

The status of the Verified Access policy.

" + } + }, + "PolicyDocument": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The Verified Access policy document.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "SseSpecification": { + "target": "com.amazonaws.ec2#VerifiedAccessSseSpecificationRequest", + "traits": { + "smithy.api#documentation": "

The options for server side encryption.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessGroupPolicyResult": { + "type": "structure", + "members": { + "PolicyEnabled": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "PolicyEnabled", + "smithy.api#documentation": "

The status of the Verified Access policy.

", + "smithy.api#xmlName": "policyEnabled" + } + }, + "PolicyDocument": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PolicyDocument", + "smithy.api#documentation": "

The Verified Access policy document.

", + "smithy.api#xmlName": "policyDocument" + } + }, + "SseSpecification": { + "target": "com.amazonaws.ec2#VerifiedAccessSseSpecificationResponse", + "traits": { + "aws.protocols#ec2QueryName": "SseSpecification", + "smithy.api#documentation": "

The options in use for server side encryption.

", + "smithy.api#xmlName": "sseSpecification" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessGroupRequest": { + "type": "structure", + "members": { + "VerifiedAccessGroupId": { + "target": "com.amazonaws.ec2#VerifiedAccessGroupId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Verified Access group.

", + "smithy.api#required": {} + } + }, + "VerifiedAccessInstanceId": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceId", + "traits": { + "smithy.api#documentation": "

The ID of the Verified Access instance.

" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A description for the Verified Access group.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessGroupResult": { + "type": "structure", + "members": { + "VerifiedAccessGroup": { + "target": "com.amazonaws.ec2#VerifiedAccessGroup", + "traits": { + "aws.protocols#ec2QueryName": "VerifiedAccessGroup", + "smithy.api#documentation": "

Details about the Verified Access group.

", + "smithy.api#xmlName": "verifiedAccessGroup" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessInstance": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessInstanceRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessInstanceResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the configuration of the specified Amazon Web Services Verified Access instance.

" + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessInstanceLoggingConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessInstanceLoggingConfigurationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessInstanceLoggingConfigurationResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the logging configuration for the specified Amazon Web Services Verified Access instance.

" + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessInstanceLoggingConfigurationRequest": { + "type": "structure", + "members": { + "VerifiedAccessInstanceId": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Verified Access instance.

", + "smithy.api#required": {} + } + }, + "AccessLogs": { + "target": "com.amazonaws.ec2#VerifiedAccessLogOptions", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The configuration options for Verified Access instances.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessInstanceLoggingConfigurationResult": { + "type": "structure", + "members": { + "LoggingConfiguration": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceLoggingConfiguration", + "traits": { + "aws.protocols#ec2QueryName": "LoggingConfiguration", + "smithy.api#documentation": "

The logging configuration for the Verified Access instance.

", + "smithy.api#xmlName": "loggingConfiguration" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessInstanceRequest": { + "type": "structure", + "members": { + "VerifiedAccessInstanceId": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Verified Access instance.

", + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A description for the Verified Access instance.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, + "CidrEndpointsCustomSubDomain": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The custom subdomain.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessInstanceResult": { + "type": "structure", + "members": { + "VerifiedAccessInstance": { + "target": "com.amazonaws.ec2#VerifiedAccessInstance", + "traits": { + "aws.protocols#ec2QueryName": "VerifiedAccessInstance", + "smithy.api#documentation": "

Details about the Verified Access instance.

", + "smithy.api#xmlName": "verifiedAccessInstance" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessNativeApplicationOidcOptions": { + "type": "structure", + "members": { + "PublicSigningKeyEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The public signing key endpoint.

" + } + }, + "Issuer": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The OIDC issuer identifier of the IdP.

" + } + }, + "AuthorizationEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The authorization endpoint of the IdP.

" + } + }, + "TokenEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The token endpoint of the IdP.

" + } + }, + "UserInfoEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The user info endpoint of the IdP.

" + } + }, + "ClientId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The OAuth 2.0 client identifier.

" + } + }, + "ClientSecret": { + "target": "com.amazonaws.ec2#ClientSecretType", + "traits": { + "smithy.api#documentation": "

The OAuth 2.0 client secret.

" + } + }, + "Scope": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The set of user claims to be requested from the IdP.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the OpenID Connect (OIDC) options.

" + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessTrustProvider": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessTrustProviderRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessTrustProviderResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the configuration of the specified Amazon Web Services Verified Access trust provider.

" + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessTrustProviderDeviceOptions": { + "type": "structure", + "members": { + "PublicSigningKeyUrl": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The URL Amazon Web Services Verified Access will use to verify the authenticity of the device tokens.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Modifies the configuration of the specified device-based Amazon Web Services Verified Access trust provider.

" + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessTrustProviderOidcOptions": { + "type": "structure", + "members": { + "Issuer": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The OIDC issuer.

" + } + }, + "AuthorizationEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The OIDC authorization endpoint.

" + } + }, + "TokenEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The OIDC token endpoint.

" + } + }, + "UserInfoEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The OIDC user info endpoint.

" + } + }, + "ClientId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The client identifier.

" + } + }, + "ClientSecret": { + "target": "com.amazonaws.ec2#ClientSecretType", + "traits": { + "smithy.api#documentation": "

The client secret.

" + } + }, + "Scope": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

OpenID Connect (OIDC) scopes are used by an application during authentication to authorize access to a user's details. Each scope returns a specific set of user attributes.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Options for an OpenID Connect-compatible user-identity trust provider.

" + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessTrustProviderRequest": { + "type": "structure", + "members": { + "VerifiedAccessTrustProviderId": { + "target": "com.amazonaws.ec2#VerifiedAccessTrustProviderId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Verified Access trust provider.

", + "smithy.api#required": {} + } + }, + "OidcOptions": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessTrustProviderOidcOptions", + "traits": { + "smithy.api#documentation": "

The options for an OpenID Connect-compatible user-identity trust provider.

" + } + }, + "DeviceOptions": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessTrustProviderDeviceOptions", + "traits": { + "smithy.api#documentation": "

The options for a device-based trust provider. This parameter is required when the\n provider type is device.

" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A description for the Verified Access trust provider.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive token that you provide to ensure idempotency of your\n modification request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, + "SseSpecification": { + "target": "com.amazonaws.ec2#VerifiedAccessSseSpecificationRequest", + "traits": { + "smithy.api#documentation": "

The options for server side encryption.

" + } + }, + "NativeApplicationOidcOptions": { + "target": "com.amazonaws.ec2#ModifyVerifiedAccessNativeApplicationOidcOptions", + "traits": { + "smithy.api#documentation": "

The OpenID Connect (OIDC) options.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVerifiedAccessTrustProviderResult": { + "type": "structure", + "members": { + "VerifiedAccessTrustProvider": { + "target": "com.amazonaws.ec2#VerifiedAccessTrustProvider", + "traits": { + "aws.protocols#ec2QueryName": "VerifiedAccessTrustProvider", + "smithy.api#documentation": "

Details about the Verified Access trust provider.

", + "smithy.api#xmlName": "verifiedAccessTrustProvider" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVolume": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVolumeRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVolumeResult" + }, + "traits": { + "smithy.api#documentation": "

You can modify several parameters of an existing EBS volume, including volume size, volume\n type, and IOPS capacity. If your EBS volume is attached to a current-generation EC2 instance\n type, you might be able to apply these changes without stopping the instance or detaching the\n volume from it. For more information about modifying EBS volumes, see Amazon EBS Elastic Volumes \n in the Amazon EBS User Guide.

\n

When you complete a resize operation on your volume, you need to extend the volume's\n file-system size to take advantage of the new storage capacity. For more information, see Extend the file system.

\n

For more information, see Monitor the progress of volume modifications in the Amazon EBS User Guide.

\n

With previous-generation instance types, resizing an EBS volume might require detaching and\n reattaching the volume or stopping and restarting the instance.

\n

After modifying a volume, you must wait at least six hours and ensure that the volume \n is in the in-use or available state before you can modify the same \n volume. This is sometimes referred to as a cooldown period.

" + } + }, + "com.amazonaws.ec2#ModifyVolumeAttribute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVolumeAttributeRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Modifies a volume attribute.

\n

By default, all I/O operations for the volume are suspended when the data on the volume is\n determined to be potentially inconsistent, to prevent undetectable, latent data corruption.\n The I/O access to the volume can be resumed by first enabling I/O access and then checking the\n data consistency on your volume.

\n

You can change the default behavior to resume I/O operations. We recommend that you change\n this only for boot volumes or for volumes that are stateless or disposable.

", + "smithy.api#examples": [ + { + "title": "To modify a volume attribute", + "documentation": "This example sets the ``autoEnableIo`` attribute of the volume with the ID ``vol-1234567890abcdef0`` to ``true``. If the command succeeds, no output is returned.", + "input": { + "DryRun": true, + "VolumeId": "vol-1234567890abcdef0", + "AutoEnableIO": { + "Value": true + } + }, + "output": {} + } + ] + } + }, + "com.amazonaws.ec2#ModifyVolumeAttributeRequest": { + "type": "structure", + "members": { + "AutoEnableIO": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "smithy.api#documentation": "

Indicates whether the volume should be auto-enabled for I/O operations.

" + } + }, + "VolumeId": { + "target": "com.amazonaws.ec2#VolumeId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the volume.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVolumeRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "VolumeId": { + "target": "com.amazonaws.ec2#VolumeId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the volume.

", + "smithy.api#required": {} + } + }, + "Size": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The target size of the volume, in GiB. The target volume size must be greater than or\n equal to the existing size of the volume.

\n

The following are the supported volumes sizes for each volume type:

\n \n

Default: The existing size is retained.

" + } + }, + "VolumeType": { + "target": "com.amazonaws.ec2#VolumeType", + "traits": { + "smithy.api#documentation": "

The target EBS volume type of the volume. For more information, see Amazon EBS volume types in the Amazon EBS User Guide.

\n

Default: The existing type is retained.

" + } + }, + "Iops": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The target IOPS rate of the volume. This parameter is valid only for gp3, io1, and io2 volumes.

\n

The following are the supported values for each volume type:

\n \n

For io2 volumes, you can achieve up to 256,000 IOPS on \ninstances \nbuilt on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS.

\n

Default: The existing value is retained if you keep the same volume type. If you change\n the volume type to io1, io2, or gp3, the default is 3,000.

" + } + }, + "Throughput": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The target throughput of the volume, in MiB/s. This parameter is valid only for gp3 volumes. \n The maximum value is 2,000.

\n

Default: The existing value is retained if the source and target volume type is gp3.\n Otherwise, the default value is 125.

\n

Valid Range: Minimum value of 125. Maximum value of 2,000.

" + } + }, + "MultiAttachEnabled": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Specifies whether to enable Amazon EBS Multi-Attach. If you enable Multi-Attach, you can attach the \n\t volume to up to 16 \n\t\t\tNitro-based instances in the same Availability Zone. This parameter is \n\t\tsupported with io1 and io2 volumes only. For more information, see \n\t \n\t\t\tAmazon EBS Multi-Attach in the Amazon EBS User Guide.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVolumeResult": { + "type": "structure", + "members": { + "VolumeModification": { + "target": "com.amazonaws.ec2#VolumeModification", + "traits": { + "aws.protocols#ec2QueryName": "VolumeModification", + "smithy.api#documentation": "

Information about the volume modification.

", + "smithy.api#xmlName": "volumeModification" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVpcAttribute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVpcAttributeRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Modifies the specified attribute of the specified VPC.

", + "smithy.api#examples": [ + { + "title": "To modify the enableDnsSupport attribute", + "documentation": "This example modifies the enableDnsSupport attribute. This attribute indicates whether DNS resolution is enabled for the VPC. If this attribute is true, the Amazon DNS server resolves DNS hostnames for instances in the VPC to their corresponding IP addresses; otherwise, it does not.", + "input": { + "VpcId": "vpc-a01106c2", + "EnableDnsSupport": { + "Value": false + } + } + }, + { + "title": "To modify the enableDnsHostnames attribute", + "documentation": "This example modifies the enableDnsHostnames attribute. This attribute indicates whether instances launched in the VPC get DNS hostnames. If this attribute is true, instances in the VPC get DNS hostnames; otherwise, they do not.", + "input": { + "VpcId": "vpc-a01106c2", + "EnableDnsHostnames": { + "Value": false + } + } + } + ] + } + }, + "com.amazonaws.ec2#ModifyVpcAttributeRequest": { + "type": "structure", + "members": { + "EnableDnsHostnames": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "smithy.api#documentation": "

Indicates whether the instances launched in the VPC get DNS hostnames. If enabled, instances in the VPC get DNS hostnames; otherwise, they do not.

\n

You cannot modify the DNS resolution and DNS hostnames attributes in the same request. Use separate requests for each attribute. You can only enable DNS hostnames if you've enabled DNS support.

" + } + }, + "EnableDnsSupport": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "smithy.api#documentation": "

Indicates whether the DNS resolution is supported for the VPC. If enabled, queries to\n\t\t\tthe Amazon provided DNS server at the 169.254.169.253 IP address, or the reserved IP\n\t\t\taddress at the base of the VPC network range \"plus two\" succeed. If disabled, the Amazon\n\t\t\tprovided DNS service in the VPC that resolves public DNS hostnames to IP addresses is\n\t\t\tnot enabled.

\n

You cannot modify the DNS resolution and DNS hostnames attributes in the same request. Use separate requests for each attribute.

" + } + }, + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", + "traits": { + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "vpcId" + } + }, + "EnableNetworkAddressUsageMetrics": { + "target": "com.amazonaws.ec2#AttributeBooleanValue", + "traits": { + "smithy.api#documentation": "

Indicates whether Network Address Usage metrics are enabled for your VPC.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVpcBlockPublicAccessExclusion": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVpcBlockPublicAccessExclusionRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVpcBlockPublicAccessExclusionResult" + }, + "traits": { + "smithy.api#documentation": "

Modify VPC Block Public Access (BPA) exclusions. A VPC BPA exclusion is a mode that can be applied to a single VPC or subnet that exempts it from the account’s BPA mode and will allow bidirectional or egress-only access. You can create BPA exclusions for VPCs and subnets even when BPA is not enabled on the account to ensure that there is no traffic disruption to the exclusions when VPC BPA is turned on.

" + } + }, + "com.amazonaws.ec2#ModifyVpcBlockPublicAccessExclusionRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "ExclusionId": { + "target": "com.amazonaws.ec2#VpcBlockPublicAccessExclusionId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of an exclusion.

", + "smithy.api#required": {} + } + }, + "InternetGatewayExclusionMode": { + "target": "com.amazonaws.ec2#InternetGatewayExclusionMode", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The exclusion mode for internet gateway traffic.

\n ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVpcBlockPublicAccessExclusionResult": { + "type": "structure", + "members": { + "VpcBlockPublicAccessExclusion": { + "target": "com.amazonaws.ec2#VpcBlockPublicAccessExclusion", + "traits": { + "aws.protocols#ec2QueryName": "VpcBlockPublicAccessExclusion", + "smithy.api#documentation": "

Details related to the exclusion.

", + "smithy.api#xmlName": "vpcBlockPublicAccessExclusion" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVpcBlockPublicAccessOptions": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVpcBlockPublicAccessOptionsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVpcBlockPublicAccessOptionsResult" + }, + "traits": { + "smithy.api#documentation": "

Modify VPC Block Public Access (BPA) options. VPC Block Public Access (BPA) enables you to block resources in VPCs and subnets that you own in a Region from reaching or being reached from the internet through internet gateways and egress-only internet gateways. To learn more about VPC BPA, see Block public access to VPCs and subnets in the Amazon VPC User Guide.

" + } + }, + "com.amazonaws.ec2#ModifyVpcBlockPublicAccessOptionsRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "InternetGatewayBlockMode": { + "target": "com.amazonaws.ec2#InternetGatewayBlockMode", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The mode of VPC BPA.

\n ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVpcBlockPublicAccessOptionsResult": { + "type": "structure", + "members": { + "VpcBlockPublicAccessOptions": { + "target": "com.amazonaws.ec2#VpcBlockPublicAccessOptions", + "traits": { + "aws.protocols#ec2QueryName": "VpcBlockPublicAccessOptions", + "smithy.api#documentation": "

Details related to the VPC Block Public Access (BPA) options.

", + "smithy.api#xmlName": "vpcBlockPublicAccessOptions" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVpcEndpoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVpcEndpointRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVpcEndpointResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies attributes of a specified VPC endpoint. The attributes that you can modify\n depend on the type of VPC endpoint (interface, gateway, or Gateway Load Balancer). For more information, \n see the Amazon Web Services PrivateLink \n Guide.

" + } + }, + "com.amazonaws.ec2#ModifyVpcEndpointConnectionNotification": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVpcEndpointConnectionNotificationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVpcEndpointConnectionNotificationResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies a connection notification for VPC endpoint or VPC endpoint service. You\n can change the SNS topic for the notification, or the events for which to be notified.

" + } + }, + "com.amazonaws.ec2#ModifyVpcEndpointConnectionNotificationRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "ConnectionNotificationId": { + "target": "com.amazonaws.ec2#ConnectionNotificationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the notification.

", + "smithy.api#required": {} + } + }, + "ConnectionNotificationArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The ARN for the SNS topic for the notification.

" + } + }, + "ConnectionEvents": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The events for the endpoint. Valid values are Accept,\n Connect, Delete, and Reject.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVpcEndpointConnectionNotificationResult": { + "type": "structure", + "members": { + "ReturnValue": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVpcEndpointRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "VpcEndpointId": { + "target": "com.amazonaws.ec2#VpcEndpointId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the endpoint.

", + "smithy.api#required": {} + } + }, + "ResetPolicy": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

(Gateway endpoint) Specify true to reset the policy document to the\n default policy. The default policy allows full access to the service.

" + } + }, + "PolicyDocument": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

(Interface and gateway endpoints) A policy to attach to the endpoint that controls access to the service. The policy must\n be in valid JSON format.

" + } + }, + "AddRouteTableIds": { + "target": "com.amazonaws.ec2#VpcEndpointRouteTableIdList", + "traits": { + "smithy.api#documentation": "

(Gateway endpoint) The IDs of the route tables to associate with the endpoint.

", + "smithy.api#xmlName": "AddRouteTableId" + } + }, + "RemoveRouteTableIds": { + "target": "com.amazonaws.ec2#VpcEndpointRouteTableIdList", + "traits": { + "smithy.api#documentation": "

(Gateway endpoint) The IDs of the route tables to disassociate from the endpoint.

", + "smithy.api#xmlName": "RemoveRouteTableId" + } + }, + "AddSubnetIds": { + "target": "com.amazonaws.ec2#VpcEndpointSubnetIdList", + "traits": { + "smithy.api#documentation": "

(Interface and Gateway Load Balancer endpoints) The IDs of the subnets in which to serve the endpoint. \n For a Gateway Load Balancer endpoint, you can specify only one subnet.

", + "smithy.api#xmlName": "AddSubnetId" + } + }, + "RemoveSubnetIds": { + "target": "com.amazonaws.ec2#VpcEndpointSubnetIdList", + "traits": { + "smithy.api#documentation": "

(Interface endpoint) The IDs of the subnets from which to remove the endpoint.

", + "smithy.api#xmlName": "RemoveSubnetId" + } + }, + "AddSecurityGroupIds": { + "target": "com.amazonaws.ec2#VpcEndpointSecurityGroupIdList", + "traits": { + "smithy.api#documentation": "

(Interface endpoint) The IDs of the security groups to associate with the endpoint network interfaces.

", + "smithy.api#xmlName": "AddSecurityGroupId" + } + }, + "RemoveSecurityGroupIds": { + "target": "com.amazonaws.ec2#VpcEndpointSecurityGroupIdList", + "traits": { + "smithy.api#documentation": "

(Interface endpoint) The IDs of the security groups to disassociate from the endpoint network interfaces.

", + "smithy.api#xmlName": "RemoveSecurityGroupId" + } + }, + "IpAddressType": { + "target": "com.amazonaws.ec2#IpAddressType", + "traits": { + "smithy.api#documentation": "

The IP address type for the endpoint.

" + } + }, + "DnsOptions": { + "target": "com.amazonaws.ec2#DnsOptionsSpecification", + "traits": { + "smithy.api#documentation": "

The DNS options for the endpoint.

" + } + }, + "PrivateDnsEnabled": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

(Interface endpoint) Indicates whether a private hosted zone is associated with the VPC.

" + } + }, + "SubnetConfigurations": { + "target": "com.amazonaws.ec2#SubnetConfigurationsList", + "traits": { + "smithy.api#documentation": "

The subnet configurations for the endpoint.

", + "smithy.api#xmlName": "SubnetConfiguration" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVpcEndpointResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVpcEndpointServiceConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVpcEndpointServiceConfigurationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVpcEndpointServiceConfigurationResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the attributes of the specified VPC endpoint service configuration.

\n

If you set or modify the private DNS name, you must prove that you own the private DNS\n domain name.

" + } + }, + "com.amazonaws.ec2#ModifyVpcEndpointServiceConfigurationRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "ServiceId": { + "target": "com.amazonaws.ec2#VpcEndpointServiceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the service.

", + "smithy.api#required": {} + } + }, + "PrivateDnsName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

(Interface endpoint configuration) The private DNS name to assign to the endpoint service.

" + } + }, + "RemovePrivateDnsName": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

(Interface endpoint configuration) Removes the private DNS name of the endpoint service.

" + } + }, + "AcceptanceRequired": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether requests to create an endpoint to the service must be accepted.

" + } + }, + "AddNetworkLoadBalancerArns": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Names (ARNs) of Network Load Balancers to add to the service\n configuration.

", + "smithy.api#xmlName": "AddNetworkLoadBalancerArn" + } + }, + "RemoveNetworkLoadBalancerArns": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Names (ARNs) of Network Load Balancers to remove from the service\n configuration.

", + "smithy.api#xmlName": "RemoveNetworkLoadBalancerArn" + } + }, + "AddGatewayLoadBalancerArns": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Names (ARNs) of Gateway Load Balancers to add to the service configuration.

", + "smithy.api#xmlName": "AddGatewayLoadBalancerArn" + } + }, + "RemoveGatewayLoadBalancerArns": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Names (ARNs) of Gateway Load Balancers to remove from the service configuration.

", + "smithy.api#xmlName": "RemoveGatewayLoadBalancerArn" + } + }, + "AddSupportedIpAddressTypes": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The IP address types to add to the service configuration.

", + "smithy.api#xmlName": "AddSupportedIpAddressType" + } + }, + "RemoveSupportedIpAddressTypes": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The IP address types to remove from the service configuration.

", + "smithy.api#xmlName": "RemoveSupportedIpAddressType" + } + }, + "AddSupportedRegions": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The supported Regions to add to the service configuration.

", + "smithy.api#xmlName": "AddSupportedRegion" + } + }, + "RemoveSupportedRegions": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The supported Regions to remove from the service configuration.

", + "smithy.api#xmlName": "RemoveSupportedRegion" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVpcEndpointServiceConfigurationResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVpcEndpointServicePayerResponsibility": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVpcEndpointServicePayerResponsibilityRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVpcEndpointServicePayerResponsibilityResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the payer responsibility for your VPC endpoint service.

" + } + }, + "com.amazonaws.ec2#ModifyVpcEndpointServicePayerResponsibilityRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "ServiceId": { + "target": "com.amazonaws.ec2#VpcEndpointServiceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the service.

", + "smithy.api#required": {} + } + }, + "PayerResponsibility": { + "target": "com.amazonaws.ec2#PayerResponsibility", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The entity that is responsible for the endpoint costs. The default is the endpoint owner.\n If you set the payer responsibility to the service owner, you cannot set it back to the\n endpoint owner.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVpcEndpointServicePayerResponsibilityResult": { + "type": "structure", + "members": { + "ReturnValue": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVpcEndpointServicePermissions": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVpcEndpointServicePermissionsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVpcEndpointServicePermissionsResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the permissions for your VPC endpoint service. You can add or remove permissions\n for service consumers (Amazon Web Services accounts, users, and IAM roles) to connect to\n your endpoint service. Principal ARNs with path components aren't supported.

\n

If you grant permissions to all principals, the service is public. Any users who know the name of a\n\t public service can send a request to attach an endpoint. If the service does not require manual approval,\n\t attachments are automatically approved.

" + } + }, + "com.amazonaws.ec2#ModifyVpcEndpointServicePermissionsRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "ServiceId": { + "target": "com.amazonaws.ec2#VpcEndpointServiceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the service.

", + "smithy.api#required": {} + } + }, + "AddAllowedPrincipals": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Names (ARN) of the principals.\n\t Permissions are granted to the principals in this list.\n\t To grant permissions to all principals, specify an asterisk (*).

" + } + }, + "RemoveAllowedPrincipals": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Names (ARN) of the principals.\n\t Permissions are revoked for principals in this list.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVpcEndpointServicePermissionsResult": { + "type": "structure", + "members": { + "AddedPrincipals": { + "target": "com.amazonaws.ec2#AddedPrincipalSet", + "traits": { + "aws.protocols#ec2QueryName": "AddedPrincipalSet", + "smithy.api#documentation": "

Information about the added principals.

", + "smithy.api#xmlName": "addedPrincipalSet" + } + }, + "ReturnValue": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVpcPeeringConnectionOptions": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVpcPeeringConnectionOptionsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVpcPeeringConnectionOptionsResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the VPC peering connection options on one side of a VPC peering connection.

\n

If the peered VPCs are in the same Amazon Web Services account, you can enable DNS\n resolution for queries from the local VPC. This ensures that queries from the local VPC\n resolve to private IP addresses in the peer VPC. This option is not available if the\n peered VPCs are in different Amazon Web Services accounts or different Regions. For\n peered VPCs in different Amazon Web Services accounts, each Amazon Web Services account\n owner must initiate a separate request to modify the peering connection options. For\n inter-region peering connections, you must use the Region for the requester VPC to\n modify the requester VPC peering options and the Region for the accepter VPC to modify\n the accepter VPC peering options. To verify which VPCs are the accepter and the\n requester for a VPC peering connection, use the DescribeVpcPeeringConnections command.

" + } + }, + "com.amazonaws.ec2#ModifyVpcPeeringConnectionOptionsRequest": { + "type": "structure", + "members": { + "AccepterPeeringConnectionOptions": { + "target": "com.amazonaws.ec2#PeeringConnectionOptionsRequest", + "traits": { + "smithy.api#documentation": "

The VPC peering connection options for the accepter VPC.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "RequesterPeeringConnectionOptions": { + "target": "com.amazonaws.ec2#PeeringConnectionOptionsRequest", + "traits": { + "smithy.api#documentation": "

The VPC peering connection options for the requester VPC.

" + } + }, + "VpcPeeringConnectionId": { + "target": "com.amazonaws.ec2#VpcPeeringConnectionId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC peering connection.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVpcPeeringConnectionOptionsResult": { + "type": "structure", + "members": { + "AccepterPeeringConnectionOptions": { + "target": "com.amazonaws.ec2#PeeringConnectionOptions", + "traits": { + "aws.protocols#ec2QueryName": "AccepterPeeringConnectionOptions", + "smithy.api#documentation": "

Information about the VPC peering connection options for the accepter VPC.

", + "smithy.api#xmlName": "accepterPeeringConnectionOptions" + } + }, + "RequesterPeeringConnectionOptions": { + "target": "com.amazonaws.ec2#PeeringConnectionOptions", + "traits": { + "aws.protocols#ec2QueryName": "RequesterPeeringConnectionOptions", + "smithy.api#documentation": "

Information about the VPC peering connection options for the requester VPC.

", + "smithy.api#xmlName": "requesterPeeringConnectionOptions" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVpcTenancy": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVpcTenancyRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVpcTenancyResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the instance tenancy attribute of the specified VPC. You can change the\n instance tenancy attribute of a VPC to default only. You cannot change the\n instance tenancy attribute to dedicated.

\n

After you modify the tenancy of the VPC, any new instances that you launch into the\n VPC have a tenancy of default, unless you specify otherwise during launch.\n The tenancy of any existing instances in the VPC is not affected.

\n

For more information, see Dedicated Instances in the\n\t\t\t\tAmazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#ModifyVpcTenancyRequest": { + "type": "structure", + "members": { + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#required": {} + } + }, + "InstanceTenancy": { + "target": "com.amazonaws.ec2#VpcTenancy", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The instance tenancy attribute for the VPC.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVpcTenancyResult": { + "type": "structure", + "members": { + "ReturnValue": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, returns an\n error.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVpnConnection": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVpnConnectionRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVpnConnectionResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the customer gateway or the target gateway of an Amazon Web Services Site-to-Site VPN connection. To\n modify the target gateway, the following migration options are available:

\n \n

Before you perform the migration to the new gateway, you must configure the new\n gateway. Use CreateVpnGateway to create a virtual private gateway, or\n CreateTransitGateway to create a transit gateway.

\n

This step is required when you migrate from a virtual private gateway with static\n routes to a transit gateway.

\n

You must delete the static routes before you migrate to the new gateway.

\n

Keep a copy of the static route before you delete it. You will need to add back these\n routes to the transit gateway after the VPN connection migration is complete.

\n

After you migrate to the new gateway, you might need to modify your VPC route table.\n Use CreateRoute and DeleteRoute to make the changes\n described in Update VPC route\n tables in the Amazon Web Services Site-to-Site VPN User Guide.

\n

When the new gateway is a transit gateway, modify the transit gateway route table to\n allow traffic between the VPC and the Amazon Web Services Site-to-Site VPN connection.\n Use CreateTransitGatewayRoute to add the routes.

\n

If you deleted VPN static routes, you must add the static routes to the transit\n gateway route table.

\n

After you perform this operation, the VPN endpoint's IP addresses on the Amazon Web Services side and the tunnel options remain intact. Your Amazon Web Services Site-to-Site VPN connection will\n be temporarily unavailable for a brief period while we provision the new\n endpoints.

" + } + }, + "com.amazonaws.ec2#ModifyVpnConnectionOptions": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVpnConnectionOptionsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVpnConnectionOptionsResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the connection options for your Site-to-Site VPN connection.

\n

When you modify the VPN connection options, the VPN endpoint IP addresses on the\n Amazon Web Services side do not change, and the tunnel options do not change. Your\n VPN connection will be temporarily unavailable for a brief period while the VPN\n connection is updated.

" + } + }, + "com.amazonaws.ec2#ModifyVpnConnectionOptionsRequest": { + "type": "structure", + "members": { + "VpnConnectionId": { + "target": "com.amazonaws.ec2#VpnConnectionId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Site-to-Site VPN connection.

", + "smithy.api#required": {} + } + }, + "LocalIpv4NetworkCidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.

\n

Default: 0.0.0.0/0\n

" + } + }, + "RemoteIpv4NetworkCidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The IPv4 CIDR on the Amazon Web Services side of the VPN connection.

\n

Default: 0.0.0.0/0\n

" + } + }, + "LocalIpv6NetworkCidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.

\n

Default: ::/0\n

" + } + }, + "RemoteIpv6NetworkCidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The IPv6 CIDR on the Amazon Web Services side of the VPN connection.

\n

Default: ::/0\n

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVpnConnectionOptionsResult": { + "type": "structure", + "members": { + "VpnConnection": { + "target": "com.amazonaws.ec2#VpnConnection", + "traits": { + "aws.protocols#ec2QueryName": "VpnConnection", + "smithy.api#documentation": "

Information about the VPN connection.

", + "smithy.api#xmlName": "vpnConnection" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVpnConnectionRequest": { + "type": "structure", + "members": { + "VpnConnectionId": { + "target": "com.amazonaws.ec2#VpnConnectionId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPN connection.

", + "smithy.api#required": {} + } + }, + "TransitGatewayId": { + "target": "com.amazonaws.ec2#TransitGatewayId", + "traits": { + "smithy.api#documentation": "

The ID of the transit gateway.

" + } + }, + "CustomerGatewayId": { + "target": "com.amazonaws.ec2#CustomerGatewayId", + "traits": { + "smithy.api#documentation": "

The ID of the customer gateway at your end of the VPN connection.

" + } + }, + "VpnGatewayId": { + "target": "com.amazonaws.ec2#VpnGatewayId", + "traits": { + "smithy.api#documentation": "

The ID of the virtual private gateway at the Amazon Web Services side of the VPN\n connection.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVpnConnectionResult": { + "type": "structure", + "members": { + "VpnConnection": { + "target": "com.amazonaws.ec2#VpnConnection", + "traits": { + "aws.protocols#ec2QueryName": "VpnConnection", + "smithy.api#documentation": "

Information about the VPN connection.

", + "smithy.api#xmlName": "vpnConnection" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVpnTunnelCertificate": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVpnTunnelCertificateRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVpnTunnelCertificateResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the VPN tunnel endpoint certificate.

" + } + }, + "com.amazonaws.ec2#ModifyVpnTunnelCertificateRequest": { + "type": "structure", + "members": { + "VpnConnectionId": { + "target": "com.amazonaws.ec2#VpnConnectionId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Amazon Web Services Site-to-Site VPN connection.

", + "smithy.api#required": {} + } + }, + "VpnTunnelOutsideIpAddress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The external IP address of the VPN tunnel.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVpnTunnelCertificateResult": { + "type": "structure", + "members": { + "VpnConnection": { + "target": "com.amazonaws.ec2#VpnConnection", + "traits": { + "aws.protocols#ec2QueryName": "VpnConnection", + "smithy.api#documentation": "

Information about the VPN connection.

", + "smithy.api#xmlName": "vpnConnection" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVpnTunnelOptions": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ModifyVpnTunnelOptionsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ModifyVpnTunnelOptionsResult" + }, + "traits": { + "smithy.api#documentation": "

Modifies the options for a VPN tunnel in an Amazon Web Services Site-to-Site VPN connection. You can modify\n multiple options for a tunnel in a single request, but you can only modify one tunnel at\n a time. For more information, see Site-to-Site VPN tunnel options for your Site-to-Site VPN\n connection in the Amazon Web Services Site-to-Site VPN User Guide.

" + } + }, + "com.amazonaws.ec2#ModifyVpnTunnelOptionsRequest": { + "type": "structure", + "members": { + "VpnConnectionId": { + "target": "com.amazonaws.ec2#VpnConnectionId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Amazon Web Services Site-to-Site VPN connection.

", + "smithy.api#required": {} + } + }, + "VpnTunnelOutsideIpAddress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The external IP address of the VPN tunnel.

", + "smithy.api#required": {} + } + }, + "TunnelOptions": { + "target": "com.amazonaws.ec2#ModifyVpnTunnelOptionsSpecification", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The tunnel options to modify.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

" + } + }, + "SkipTunnelReplacement": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Choose whether or not to trigger immediate tunnel replacement. This is only applicable when turning on or off EnableTunnelLifecycleControl.

\n

Valid values: True | False\n

" + } + }, + "PreSharedKeyStorage": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Specifies the storage mode for the pre-shared key (PSK). Valid values are Standard (stored in Site-to-Site VPN service) or SecretsManager (stored in Amazon Web Services Secrets Manager).

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ModifyVpnTunnelOptionsResult": { + "type": "structure", + "members": { + "VpnConnection": { + "target": "com.amazonaws.ec2#VpnConnection", + "traits": { + "aws.protocols#ec2QueryName": "VpnConnection", + "smithy.api#documentation": "

Information about the VPN connection.

", + "smithy.api#xmlName": "vpnConnection" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ModifyVpnTunnelOptionsSpecification": { + "type": "structure", + "members": { + "TunnelInsideCidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The range of inside IPv4 addresses for the tunnel. Any specified CIDR blocks must be\n unique across all VPN connections that use the same virtual private gateway.

\n

Constraints: A size /30 CIDR block from the 169.254.0.0/16 range. The\n following CIDR blocks are reserved and cannot be used:

\n " + } + }, + "TunnelInsideIpv6Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The range of inside IPv6 addresses for the tunnel. Any specified CIDR blocks must be\n unique across all VPN connections that use the same transit gateway.

\n

Constraints: A size /126 CIDR block from the local fd00::/8 range.

" + } + }, + "PreSharedKey": { + "target": "com.amazonaws.ec2#preSharedKey", + "traits": { + "smithy.api#documentation": "

The pre-shared key (PSK) to establish initial authentication between the virtual\n private gateway and the customer gateway.

\n

Constraints: Allowed characters are alphanumeric characters, periods (.), and\n underscores (_). Must be between 8 and 64 characters in length and cannot start with\n zero (0).

" + } + }, + "Phase1LifetimeSeconds": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The lifetime for phase 1 of the IKE negotiation, in seconds.

\n

Constraints: A value between 900 and 28,800.

\n

Default: 28800\n

" + } + }, + "Phase2LifetimeSeconds": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The lifetime for phase 2 of the IKE negotiation, in seconds.

\n

Constraints: A value between 900 and 3,600. The value must be less than the value for\n Phase1LifetimeSeconds.

\n

Default: 3600\n

" + } + }, + "RekeyMarginTimeSeconds": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The margin time, in seconds, before the phase 2 lifetime expires, during which the\n Amazon Web Services side of the VPN connection performs an IKE rekey. The exact time\n of the rekey is randomly selected based on the value for\n RekeyFuzzPercentage.

\n

Constraints: A value between 60 and half of Phase2LifetimeSeconds.

\n

Default: 270\n

" + } + }, + "RekeyFuzzPercentage": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The percentage of the rekey window (determined by RekeyMarginTimeSeconds)\n during which the rekey time is randomly selected.

\n

Constraints: A value between 0 and 100.

\n

Default: 100\n

" + } + }, + "ReplayWindowSize": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The number of packets in an IKE replay window.

\n

Constraints: A value between 64 and 2048.

\n

Default: 1024\n

" + } + }, + "DPDTimeoutSeconds": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The number of seconds after which a DPD timeout occurs. A DPD timeout of 40 seconds means that the VPN endpoint will consider the peer dead 30 seconds after the first failed keep-alive.

\n

Constraints: A value greater than or equal to 30.

\n

Default: 40\n

" + } + }, + "DPDTimeoutAction": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The action to take after DPD timeout occurs. Specify restart to restart\n the IKE initiation. Specify clear to end the IKE session.

\n

Valid Values: clear | none | restart\n

\n

Default: clear\n

" + } + }, + "Phase1EncryptionAlgorithms": { + "target": "com.amazonaws.ec2#Phase1EncryptionAlgorithmsRequestList", + "traits": { + "smithy.api#documentation": "

One or more encryption algorithms that are permitted for the VPN tunnel for phase 1\n IKE negotiations.

\n

Valid values: AES128 | AES256 | AES128-GCM-16 |\n AES256-GCM-16\n

", + "smithy.api#xmlName": "Phase1EncryptionAlgorithm" + } + }, + "Phase2EncryptionAlgorithms": { + "target": "com.amazonaws.ec2#Phase2EncryptionAlgorithmsRequestList", + "traits": { + "smithy.api#documentation": "

One or more encryption algorithms that are permitted for the VPN tunnel for phase 2\n IKE negotiations.

\n

Valid values: AES128 | AES256 | AES128-GCM-16 |\n AES256-GCM-16\n

", + "smithy.api#xmlName": "Phase2EncryptionAlgorithm" + } + }, + "Phase1IntegrityAlgorithms": { + "target": "com.amazonaws.ec2#Phase1IntegrityAlgorithmsRequestList", + "traits": { + "smithy.api#documentation": "

One or more integrity algorithms that are permitted for the VPN tunnel for phase 1 IKE\n negotiations.

\n

Valid values: SHA1 | SHA2-256 | SHA2-384 |\n SHA2-512\n

", + "smithy.api#xmlName": "Phase1IntegrityAlgorithm" + } + }, + "Phase2IntegrityAlgorithms": { + "target": "com.amazonaws.ec2#Phase2IntegrityAlgorithmsRequestList", + "traits": { + "smithy.api#documentation": "

One or more integrity algorithms that are permitted for the VPN tunnel for phase 2 IKE\n negotiations.

\n

Valid values: SHA1 | SHA2-256 | SHA2-384 |\n SHA2-512\n

", + "smithy.api#xmlName": "Phase2IntegrityAlgorithm" + } + }, + "Phase1DHGroupNumbers": { + "target": "com.amazonaws.ec2#Phase1DHGroupNumbersRequestList", + "traits": { + "smithy.api#documentation": "

One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for\n phase 1 IKE negotiations.

\n

Valid values: 2 | 14 | 15 | 16 |\n 17 | 18 | 19 | 20 |\n 21 | 22 | 23 | 24\n

", + "smithy.api#xmlName": "Phase1DHGroupNumber" + } + }, + "Phase2DHGroupNumbers": { + "target": "com.amazonaws.ec2#Phase2DHGroupNumbersRequestList", + "traits": { + "smithy.api#documentation": "

One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for\n phase 2 IKE negotiations.

\n

Valid values: 2 | 5 | 14 | 15 |\n 16 | 17 | 18 | 19 |\n 20 | 21 | 22 | 23 |\n 24\n

", + "smithy.api#xmlName": "Phase2DHGroupNumber" + } + }, + "IKEVersions": { + "target": "com.amazonaws.ec2#IKEVersionsRequestList", + "traits": { + "smithy.api#documentation": "

The IKE versions that are permitted for the VPN tunnel.

\n

Valid values: ikev1 | ikev2\n

", + "smithy.api#xmlName": "IKEVersion" + } + }, + "StartupAction": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The action to take when the establishing the tunnel for the VPN connection. By\n default, your customer gateway device must initiate the IKE negotiation and bring up the\n tunnel. Specify start for Amazon Web Services to initiate the IKE\n negotiation.

\n

Valid Values: add | start\n

\n

Default: add\n

" + } + }, + "LogOptions": { + "target": "com.amazonaws.ec2#VpnTunnelLogOptionsSpecification", + "traits": { + "smithy.api#documentation": "

Options for logging VPN tunnel activity.

" + } + }, + "EnableTunnelLifecycleControl": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Turn on or off tunnel endpoint lifecycle control feature.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The Amazon Web Services Site-to-Site VPN tunnel options to modify.

", + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.ec2#MonitorInstances": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#MonitorInstancesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#MonitorInstancesResult" + }, + "traits": { + "smithy.api#documentation": "

Enables detailed monitoring for a running instance. Otherwise, basic monitoring is\n enabled. For more information, see Monitor your instances using\n CloudWatch in the Amazon EC2 User Guide.

\n

To disable detailed monitoring, see UnmonitorInstances.

" + } + }, + "com.amazonaws.ec2#MonitorInstancesRequest": { + "type": "structure", + "members": { + "InstanceIds": { + "target": "com.amazonaws.ec2#InstanceIdStringList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of the instances.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "InstanceId" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#MonitorInstancesResult": { + "type": "structure", + "members": { + "InstanceMonitorings": { + "target": "com.amazonaws.ec2#InstanceMonitoringList", + "traits": { + "aws.protocols#ec2QueryName": "InstancesSet", + "smithy.api#documentation": "

The monitoring information.

", + "smithy.api#xmlName": "instancesSet" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#Monitoring": { + "type": "structure", + "members": { + "State": { + "target": "com.amazonaws.ec2#MonitoringState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is\n enabled.

", + "smithy.api#xmlName": "state" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the monitoring of an instance.

" + } + }, + "com.amazonaws.ec2#MonitoringState": { + "type": "enum", + "members": { + "disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disabled" + } + }, + "disabling": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disabling" + } + }, + "enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enabled" + } + }, + "pending": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pending" + } + } + } + }, + "com.amazonaws.ec2#MoveAddressToVpc": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#MoveAddressToVpcRequest" + }, + "output": { + "target": "com.amazonaws.ec2#MoveAddressToVpcResult" + }, + "traits": { + "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Moves an Elastic IP address from the EC2-Classic platform to the EC2-VPC platform. The\n Elastic IP address must be allocated to your account for more than 24 hours, and it must not\n be associated with an instance. After the Elastic IP address is moved, it is no longer\n available for use in the EC2-Classic platform. You cannot move an Elastic IP address that was\n originally allocated for use in the EC2-VPC platform to the EC2-Classic platform.

", + "smithy.api#examples": [ + { + "title": "To move an address to EC2-VPC", + "documentation": "This example moves the specified Elastic IP address to the EC2-VPC platform.", + "input": { + "PublicIp": "54.123.4.56" + }, + "output": { + "Status": "MoveInProgress" + } + } + ] + } + }, + "com.amazonaws.ec2#MoveAddressToVpcRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "PublicIp": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PublicIp", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The Elastic IP address.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "publicIp" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#MoveAddressToVpcResult": { + "type": "structure", + "members": { + "AllocationId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AllocationId", + "smithy.api#documentation": "

The allocation ID for the Elastic IP address.

", + "smithy.api#xmlName": "allocationId" + } + }, + "Status": { + "target": "com.amazonaws.ec2#Status", + "traits": { + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The status of the move of the IP address.

", + "smithy.api#xmlName": "status" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#MoveByoipCidrToIpam": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#MoveByoipCidrToIpamRequest" + }, + "output": { + "target": "com.amazonaws.ec2#MoveByoipCidrToIpamResult" + }, + "traits": { + "smithy.api#documentation": "

Move a BYOIPv4 CIDR to IPAM from a public IPv4 pool.

\n

If you already have a BYOIPv4 CIDR with Amazon Web Services, you can move the CIDR to IPAM from a public IPv4 pool. You cannot move an IPv6 CIDR to IPAM. If you are bringing a new IP address to Amazon Web Services for the first time, complete the steps in Tutorial: BYOIP address CIDRs to IPAM.

" + } + }, + "com.amazonaws.ec2#MoveByoipCidrToIpamRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The BYOIP CIDR.

", + "smithy.api#required": {} + } + }, + "IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IPAM pool ID.

", + "smithy.api#required": {} + } + }, + "IpamPoolOwner": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the IPAM pool.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#MoveByoipCidrToIpamResult": { + "type": "structure", + "members": { + "ByoipCidr": { + "target": "com.amazonaws.ec2#ByoipCidr", + "traits": { + "aws.protocols#ec2QueryName": "ByoipCidr", + "smithy.api#documentation": "

The BYOIP CIDR.

", + "smithy.api#xmlName": "byoipCidr" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#MoveCapacityReservationInstances": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#MoveCapacityReservationInstancesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#MoveCapacityReservationInstancesResult" + }, + "traits": { + "smithy.api#documentation": "

Move available capacity from a source Capacity Reservation to a destination Capacity\n\t\t\tReservation. The source Capacity Reservation and the destination Capacity Reservation\n\t\t\tmust be active, owned by your Amazon Web Services account, and share the following:

\n " + } + }, + "com.amazonaws.ec2#MoveCapacityReservationInstancesRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, + "SourceCapacityReservationId": { + "target": "com.amazonaws.ec2#CapacityReservationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Capacity Reservation from which you want to move capacity.

", + "smithy.api#required": {} + } + }, + "DestinationCapacityReservationId": { + "target": "com.amazonaws.ec2#CapacityReservationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Capacity Reservation that you want to move capacity into.

", + "smithy.api#required": {} + } + }, + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The number of instances that you want to move from the source Capacity Reservation.\n\t\t

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#MoveCapacityReservationInstancesResult": { + "type": "structure", + "members": { + "SourceCapacityReservation": { + "target": "com.amazonaws.ec2#CapacityReservation", + "traits": { + "aws.protocols#ec2QueryName": "SourceCapacityReservation", + "smithy.api#documentation": "

Information about the source Capacity Reservation.

", + "smithy.api#xmlName": "sourceCapacityReservation" + } + }, + "DestinationCapacityReservation": { + "target": "com.amazonaws.ec2#CapacityReservation", + "traits": { + "aws.protocols#ec2QueryName": "DestinationCapacityReservation", + "smithy.api#documentation": "

Information about the destination Capacity Reservation.

", + "smithy.api#xmlName": "destinationCapacityReservation" + } + }, + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "InstanceCount", + "smithy.api#documentation": "

The number of instances that were moved from the source Capacity Reservation to the\n\t\t\tdestination Capacity Reservation.

", + "smithy.api#xmlName": "instanceCount" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#MoveStatus": { + "type": "enum", + "members": { + "movingToVpc": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "movingToVpc" + } + }, + "restoringToClassic": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "restoringToClassic" + } + } + } + }, + "com.amazonaws.ec2#MovingAddressStatus": { + "type": "structure", + "members": { + "MoveStatus": { + "target": "com.amazonaws.ec2#MoveStatus", + "traits": { + "aws.protocols#ec2QueryName": "MoveStatus", + "smithy.api#documentation": "

The status of the Elastic IP address that's being moved or restored.

", + "smithy.api#xmlName": "moveStatus" + } + }, + "PublicIp": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PublicIp", + "smithy.api#documentation": "

The Elastic IP address.

", + "smithy.api#xmlName": "publicIp" + } + } + }, + "traits": { + "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Describes the status of a moving Elastic IP address.

" + } + }, + "com.amazonaws.ec2#MovingAddressStatusSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#MovingAddressStatus", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#MulticastSupportValue": { + "type": "enum", + "members": { + "enable": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enable" + } + }, + "disable": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disable" + } + } + } + }, + "com.amazonaws.ec2#NatGateway": { + "type": "structure", + "members": { + "CreateTime": { + "target": "com.amazonaws.ec2#DateTime", + "traits": { + "aws.protocols#ec2QueryName": "CreateTime", + "smithy.api#documentation": "

The date and time the NAT gateway was created.

", + "smithy.api#xmlName": "createTime" + } + }, + "DeleteTime": { + "target": "com.amazonaws.ec2#DateTime", + "traits": { + "aws.protocols#ec2QueryName": "DeleteTime", + "smithy.api#documentation": "

The date and time the NAT gateway was deleted, if applicable.

", + "smithy.api#xmlName": "deleteTime" + } + }, + "FailureCode": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "FailureCode", + "smithy.api#documentation": "

If the NAT gateway could not be created, specifies the error code for the failure.\n (InsufficientFreeAddressesInSubnet | Gateway.NotAttached |\n InvalidAllocationID.NotFound | Resource.AlreadyAssociated |\n InternalError | InvalidSubnetID.NotFound)

", + "smithy.api#xmlName": "failureCode" + } + }, + "FailureMessage": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "FailureMessage", + "smithy.api#documentation": "

If the NAT gateway could not be created, specifies the error message for the failure, that corresponds to the error code.

\n ", + "smithy.api#xmlName": "failureMessage" + } + }, + "NatGatewayAddresses": { + "target": "com.amazonaws.ec2#NatGatewayAddressList", + "traits": { + "aws.protocols#ec2QueryName": "NatGatewayAddressSet", + "smithy.api#documentation": "

Information about the IP addresses and network interface associated with the NAT gateway.

", + "smithy.api#xmlName": "natGatewayAddressSet" + } + }, + "NatGatewayId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NatGatewayId", + "smithy.api#documentation": "

The ID of the NAT gateway.

", + "smithy.api#xmlName": "natGatewayId" + } + }, + "ProvisionedBandwidth": { + "target": "com.amazonaws.ec2#ProvisionedBandwidth", + "traits": { + "aws.protocols#ec2QueryName": "ProvisionedBandwidth", + "smithy.api#documentation": "

Reserved. If you need to sustain traffic greater than the documented limits, \n contact Amazon Web Services Support.

", + "smithy.api#xmlName": "provisionedBandwidth" + } + }, + "State": { + "target": "com.amazonaws.ec2#NatGatewayState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the NAT gateway.

\n ", + "smithy.api#xmlName": "state" + } + }, + "SubnetId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet in which the NAT gateway is located.

", + "smithy.api#xmlName": "subnetId" + } + }, + "VpcId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC in which the NAT gateway is located.

", + "smithy.api#xmlName": "vpcId" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags for the NAT gateway.

", + "smithy.api#xmlName": "tagSet" + } + }, + "ConnectivityType": { + "target": "com.amazonaws.ec2#ConnectivityType", + "traits": { + "aws.protocols#ec2QueryName": "ConnectivityType", + "smithy.api#documentation": "

Indicates whether the NAT gateway supports public or private connectivity.

", + "smithy.api#xmlName": "connectivityType" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a NAT gateway.

" + } + }, + "com.amazonaws.ec2#NatGatewayAddress": { + "type": "structure", + "members": { + "AllocationId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AllocationId", + "smithy.api#documentation": "

[Public NAT gateway only] The allocation ID of the Elastic IP address that's associated with the NAT gateway.

", + "smithy.api#xmlName": "allocationId" + } + }, + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInterfaceId", + "smithy.api#documentation": "

The ID of the network interface associated with the NAT gateway.

", + "smithy.api#xmlName": "networkInterfaceId" + } + }, + "PrivateIp": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PrivateIp", + "smithy.api#documentation": "

The private IP address associated with the NAT gateway.

", + "smithy.api#xmlName": "privateIp" + } + }, + "PublicIp": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PublicIp", + "smithy.api#documentation": "

[Public NAT gateway only] The Elastic IP address associated with the NAT gateway.

", + "smithy.api#xmlName": "publicIp" + } + }, + "AssociationId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AssociationId", + "smithy.api#documentation": "

[Public NAT gateway only] The association ID of the Elastic IP address that's associated with the NAT gateway.

", + "smithy.api#xmlName": "associationId" + } + }, + "IsPrimary": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "IsPrimary", + "smithy.api#documentation": "

Defines if the IP address is the primary address.

", + "smithy.api#xmlName": "isPrimary" + } + }, + "FailureMessage": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "FailureMessage", + "smithy.api#documentation": "

The address failure message.

", + "smithy.api#xmlName": "failureMessage" + } + }, + "Status": { + "target": "com.amazonaws.ec2#NatGatewayAddressStatus", + "traits": { + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The address status.

", + "smithy.api#xmlName": "status" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the IP addresses and network interface associated with a NAT gateway.

" + } + }, + "com.amazonaws.ec2#NatGatewayAddressList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NatGatewayAddress", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NatGatewayAddressStatus": { + "type": "enum", + "members": { + "ASSIGNING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "assigning" + } + }, + "UNASSIGNING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "unassigning" + } + }, + "ASSOCIATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "associating" + } + }, + "DISASSOCIATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disassociating" + } + }, + "SUCCEEDED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "succeeded" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "failed" + } + } + } + }, + "com.amazonaws.ec2#NatGatewayId": { + "type": "string" + }, + "com.amazonaws.ec2#NatGatewayIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NatGatewayId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NatGatewayList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NatGateway", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NatGatewayState": { + "type": "enum", + "members": { + "PENDING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pending" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "failed" + } + }, + "AVAILABLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "available" + } + }, + "DELETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "deleting" + } + }, + "DELETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "deleted" + } + } + } + }, + "com.amazonaws.ec2#NativeApplicationOidcOptions": { + "type": "structure", + "members": { + "PublicSigningKeyEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PublicSigningKeyEndpoint", + "smithy.api#documentation": "

The public signing key endpoint.

", + "smithy.api#xmlName": "publicSigningKeyEndpoint" + } + }, + "Issuer": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Issuer", + "smithy.api#documentation": "

The OIDC issuer identifier of the IdP.

", + "smithy.api#xmlName": "issuer" + } + }, + "AuthorizationEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AuthorizationEndpoint", + "smithy.api#documentation": "

The authorization endpoint of the IdP.

", + "smithy.api#xmlName": "authorizationEndpoint" + } + }, + "TokenEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "TokenEndpoint", + "smithy.api#documentation": "

The token endpoint of the IdP.

", + "smithy.api#xmlName": "tokenEndpoint" + } + }, + "UserInfoEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "UserInfoEndpoint", + "smithy.api#documentation": "

The user info endpoint of the IdP.

", + "smithy.api#xmlName": "userInfoEndpoint" + } + }, + "ClientId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ClientId", + "smithy.api#documentation": "

The OAuth 2.0 client identifier.

", + "smithy.api#xmlName": "clientId" + } + }, + "Scope": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Scope", + "smithy.api#documentation": "

The set of user claims to be requested from the IdP.

", + "smithy.api#xmlName": "scope" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the OpenID Connect (OIDC) options.

" + } + }, + "com.amazonaws.ec2#NetmaskLength": { + "type": "integer" + }, + "com.amazonaws.ec2#NetworkAcl": { + "type": "structure", + "members": { + "Associations": { + "target": "com.amazonaws.ec2#NetworkAclAssociationList", + "traits": { + "aws.protocols#ec2QueryName": "AssociationSet", + "smithy.api#documentation": "

Any associations between the network ACL and your subnets

", + "smithy.api#xmlName": "associationSet" + } + }, + "Entries": { + "target": "com.amazonaws.ec2#NetworkAclEntryList", + "traits": { + "aws.protocols#ec2QueryName": "EntrySet", + "smithy.api#documentation": "

The entries (rules) in the network ACL.

", + "smithy.api#xmlName": "entrySet" + } + }, + "IsDefault": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Default", + "smithy.api#documentation": "

Indicates whether this is the default network ACL for the VPC.

", + "smithy.api#xmlName": "default" + } + }, + "NetworkAclId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NetworkAclId", + "smithy.api#documentation": "

The ID of the network ACL.

", + "smithy.api#xmlName": "networkAclId" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the network ACL.

", + "smithy.api#xmlName": "tagSet" + } + }, + "VpcId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC for the network ACL.

", + "smithy.api#xmlName": "vpcId" + } + }, + "OwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the network ACL.

", + "smithy.api#xmlName": "ownerId" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a network ACL.

" + } + }, + "com.amazonaws.ec2#NetworkAclAssociation": { + "type": "structure", + "members": { + "NetworkAclAssociationId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NetworkAclAssociationId", + "smithy.api#documentation": "

The ID of the association between a network ACL and a subnet.

", + "smithy.api#xmlName": "networkAclAssociationId" + } + }, + "NetworkAclId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NetworkAclId", + "smithy.api#documentation": "

The ID of the network ACL.

", + "smithy.api#xmlName": "networkAclId" + } + }, + "SubnetId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet.

", + "smithy.api#xmlName": "subnetId" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes an association between a network ACL and a subnet.

" + } + }, + "com.amazonaws.ec2#NetworkAclAssociationId": { + "type": "string" + }, + "com.amazonaws.ec2#NetworkAclAssociationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkAclAssociation", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkAclEntry": { + "type": "structure", + "members": { + "CidrBlock": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "CidrBlock", + "smithy.api#documentation": "

The IPv4 network range to allow or deny, in CIDR notation.

", + "smithy.api#xmlName": "cidrBlock" + } + }, + "Egress": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Egress", + "smithy.api#documentation": "

Indicates whether the rule is an egress rule (applied to traffic leaving the subnet).

", + "smithy.api#xmlName": "egress" + } + }, + "IcmpTypeCode": { + "target": "com.amazonaws.ec2#IcmpTypeCode", + "traits": { + "aws.protocols#ec2QueryName": "IcmpTypeCode", + "smithy.api#documentation": "

ICMP protocol: The ICMP type and code.

", + "smithy.api#xmlName": "icmpTypeCode" + } + }, + "Ipv6CidrBlock": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Ipv6CidrBlock", + "smithy.api#documentation": "

The IPv6 network range to allow or deny, in CIDR notation.

", + "smithy.api#xmlName": "ipv6CidrBlock" + } + }, + "PortRange": { + "target": "com.amazonaws.ec2#PortRange", + "traits": { + "aws.protocols#ec2QueryName": "PortRange", + "smithy.api#documentation": "

TCP or UDP protocols: The range of ports the rule applies to.

", + "smithy.api#xmlName": "portRange" + } + }, + "Protocol": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Protocol", + "smithy.api#documentation": "

The protocol number. A value of \"-1\" means all protocols.

", + "smithy.api#xmlName": "protocol" + } + }, + "RuleAction": { + "target": "com.amazonaws.ec2#RuleAction", + "traits": { + "aws.protocols#ec2QueryName": "RuleAction", + "smithy.api#documentation": "

Indicates whether to allow or deny the traffic that matches the rule.

", + "smithy.api#xmlName": "ruleAction" + } + }, + "RuleNumber": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "RuleNumber", + "smithy.api#documentation": "

The rule number for the entry. ACL entries are processed in ascending order by rule number.

", + "smithy.api#xmlName": "ruleNumber" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes an entry in a network ACL.

" + } + }, + "com.amazonaws.ec2#NetworkAclEntryList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkAclEntry", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkAclId": { + "type": "string" + }, + "com.amazonaws.ec2#NetworkAclIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkAclId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkAclList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkAcl", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkBandwidthGbps": { + "type": "structure", + "members": { + "Min": { + "target": "com.amazonaws.ec2#Double", + "traits": { + "aws.protocols#ec2QueryName": "Min", + "smithy.api#documentation": "

The minimum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no minimum\n limit.

", + "smithy.api#xmlName": "min" + } + }, + "Max": { + "target": "com.amazonaws.ec2#Double", + "traits": { + "aws.protocols#ec2QueryName": "Max", + "smithy.api#documentation": "

The maximum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no\n maximum limit.

", + "smithy.api#xmlName": "max" + } + } + }, + "traits": { + "smithy.api#documentation": "

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

\n \n

Setting the minimum bandwidth does not guarantee that your instance will achieve the \n minimum bandwidth. Amazon EC2 will identify instance types that support the specified minimum \n bandwidth, but the actual bandwidth of your instance might go below the specified minimum \n at times. For more information, see Available instance bandwidth in the\n Amazon EC2 User Guide.

\n
" + } + }, + "com.amazonaws.ec2#NetworkBandwidthGbpsRequest": { + "type": "structure", + "members": { + "Min": { + "target": "com.amazonaws.ec2#Double", + "traits": { + "smithy.api#documentation": "

The minimum amount of network bandwidth, in Gbps. To specify no minimum limit, omit this\n parameter.

" + } + }, + "Max": { + "target": "com.amazonaws.ec2#Double", + "traits": { + "smithy.api#documentation": "

The maximum amount of network bandwidth, in Gbps. To specify no maximum limit, omit this\n parameter.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

\n \n

Setting the minimum bandwidth does not guarantee that your instance will achieve the \n minimum bandwidth. Amazon EC2 will identify instance types that support the specified minimum \n bandwidth, but the actual bandwidth of your instance might go below the specified minimum \n at times. For more information, see Available instance bandwidth in the\n Amazon EC2 User Guide.

\n
" + } + }, + "com.amazonaws.ec2#NetworkCardIndex": { + "type": "integer" + }, + "com.amazonaws.ec2#NetworkCardInfo": { + "type": "structure", + "members": { + "NetworkCardIndex": { + "target": "com.amazonaws.ec2#NetworkCardIndex", + "traits": { + "aws.protocols#ec2QueryName": "NetworkCardIndex", + "smithy.api#documentation": "

The index of the network card.

", + "smithy.api#xmlName": "networkCardIndex" + } + }, + "NetworkPerformance": { + "target": "com.amazonaws.ec2#NetworkPerformance", + "traits": { + "aws.protocols#ec2QueryName": "NetworkPerformance", + "smithy.api#documentation": "

The network performance of the network card.

", + "smithy.api#xmlName": "networkPerformance" + } + }, + "MaximumNetworkInterfaces": { + "target": "com.amazonaws.ec2#MaxNetworkInterfaces", + "traits": { + "aws.protocols#ec2QueryName": "MaximumNetworkInterfaces", + "smithy.api#documentation": "

The maximum number of network interfaces for the network card.

", + "smithy.api#xmlName": "maximumNetworkInterfaces" + } + }, + "BaselineBandwidthInGbps": { + "target": "com.amazonaws.ec2#BaselineBandwidthInGbps", + "traits": { + "aws.protocols#ec2QueryName": "BaselineBandwidthInGbps", + "smithy.api#documentation": "

The baseline network performance of the network card, in Gbps.

", + "smithy.api#xmlName": "baselineBandwidthInGbps" + } + }, + "PeakBandwidthInGbps": { + "target": "com.amazonaws.ec2#PeakBandwidthInGbps", + "traits": { + "aws.protocols#ec2QueryName": "PeakBandwidthInGbps", + "smithy.api#documentation": "

The peak (burst) network performance of the network card, in Gbps.

", + "smithy.api#xmlName": "peakBandwidthInGbps" + } + }, + "DefaultEnaQueueCountPerInterface": { + "target": "com.amazonaws.ec2#DefaultEnaQueueCountPerInterface", + "traits": { + "aws.protocols#ec2QueryName": "DefaultEnaQueueCountPerInterface", + "smithy.api#documentation": "

The default number of the ENA queues for each interface.

", + "smithy.api#xmlName": "defaultEnaQueueCountPerInterface" + } + }, + "MaximumEnaQueueCount": { + "target": "com.amazonaws.ec2#MaximumEnaQueueCount", + "traits": { + "aws.protocols#ec2QueryName": "MaximumEnaQueueCount", + "smithy.api#documentation": "

The maximum number of the ENA queues.

", + "smithy.api#xmlName": "maximumEnaQueueCount" + } + }, + "MaximumEnaQueueCountPerInterface": { + "target": "com.amazonaws.ec2#MaximumEnaQueueCountPerInterface", + "traits": { + "aws.protocols#ec2QueryName": "MaximumEnaQueueCountPerInterface", + "smithy.api#documentation": "

The maximum number of the ENA queues for each interface.

", + "smithy.api#xmlName": "maximumEnaQueueCountPerInterface" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the network card support of the instance type.

" + } + }, + "com.amazonaws.ec2#NetworkCardInfoList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkCardInfo", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkInfo": { + "type": "structure", + "members": { + "NetworkPerformance": { + "target": "com.amazonaws.ec2#NetworkPerformance", + "traits": { + "aws.protocols#ec2QueryName": "NetworkPerformance", + "smithy.api#documentation": "

The network performance.

", + "smithy.api#xmlName": "networkPerformance" + } + }, + "MaximumNetworkInterfaces": { + "target": "com.amazonaws.ec2#MaxNetworkInterfaces", + "traits": { + "aws.protocols#ec2QueryName": "MaximumNetworkInterfaces", + "smithy.api#documentation": "

The maximum number of network interfaces for the instance type.

", + "smithy.api#xmlName": "maximumNetworkInterfaces" + } + }, + "MaximumNetworkCards": { + "target": "com.amazonaws.ec2#MaximumNetworkCards", + "traits": { + "aws.protocols#ec2QueryName": "MaximumNetworkCards", + "smithy.api#documentation": "

The maximum number of physical network cards that can be allocated to the instance.

", + "smithy.api#xmlName": "maximumNetworkCards" + } + }, + "DefaultNetworkCardIndex": { + "target": "com.amazonaws.ec2#DefaultNetworkCardIndex", + "traits": { + "aws.protocols#ec2QueryName": "DefaultNetworkCardIndex", + "smithy.api#documentation": "

The index of the default network card, starting at 0.

", + "smithy.api#xmlName": "defaultNetworkCardIndex" + } + }, + "NetworkCards": { + "target": "com.amazonaws.ec2#NetworkCardInfoList", + "traits": { + "aws.protocols#ec2QueryName": "NetworkCards", + "smithy.api#documentation": "

Describes the network cards for the instance type.

", + "smithy.api#xmlName": "networkCards" + } + }, + "Ipv4AddressesPerInterface": { + "target": "com.amazonaws.ec2#MaxIpv4AddrPerInterface", + "traits": { + "aws.protocols#ec2QueryName": "Ipv4AddressesPerInterface", + "smithy.api#documentation": "

The maximum number of IPv4 addresses per network interface.

", + "smithy.api#xmlName": "ipv4AddressesPerInterface" + } + }, + "Ipv6AddressesPerInterface": { + "target": "com.amazonaws.ec2#MaxIpv6AddrPerInterface", + "traits": { + "aws.protocols#ec2QueryName": "Ipv6AddressesPerInterface", + "smithy.api#documentation": "

The maximum number of IPv6 addresses per network interface.

", + "smithy.api#xmlName": "ipv6AddressesPerInterface" + } + }, + "Ipv6Supported": { + "target": "com.amazonaws.ec2#Ipv6Flag", + "traits": { + "aws.protocols#ec2QueryName": "Ipv6Supported", + "smithy.api#documentation": "

Indicates whether IPv6 is supported.

", + "smithy.api#xmlName": "ipv6Supported" + } + }, + "EnaSupport": { + "target": "com.amazonaws.ec2#EnaSupport", + "traits": { + "aws.protocols#ec2QueryName": "EnaSupport", + "smithy.api#documentation": "

Indicates whether Elastic Network Adapter (ENA) is supported.

", + "smithy.api#xmlName": "enaSupport" + } + }, + "EfaSupported": { + "target": "com.amazonaws.ec2#EfaSupportedFlag", + "traits": { + "aws.protocols#ec2QueryName": "EfaSupported", + "smithy.api#documentation": "

Indicates whether Elastic Fabric Adapter (EFA) is supported.

", + "smithy.api#xmlName": "efaSupported" + } + }, + "EfaInfo": { + "target": "com.amazonaws.ec2#EfaInfo", + "traits": { + "aws.protocols#ec2QueryName": "EfaInfo", + "smithy.api#documentation": "

Describes the Elastic Fabric Adapters for the instance type.

", + "smithy.api#xmlName": "efaInfo" + } + }, + "EncryptionInTransitSupported": { + "target": "com.amazonaws.ec2#EncryptionInTransitSupported", + "traits": { + "aws.protocols#ec2QueryName": "EncryptionInTransitSupported", + "smithy.api#documentation": "

Indicates whether the instance type automatically encrypts in-transit traffic between\n instances.

", + "smithy.api#xmlName": "encryptionInTransitSupported" + } + }, + "EnaSrdSupported": { + "target": "com.amazonaws.ec2#EnaSrdSupported", + "traits": { + "aws.protocols#ec2QueryName": "EnaSrdSupported", + "smithy.api#documentation": "

Indicates whether the instance type supports ENA Express. ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology to increase the maximum bandwidth used per stream\n and minimize tail latency of network traffic between EC2 instances.

", + "smithy.api#xmlName": "enaSrdSupported" + } + }, + "BandwidthWeightings": { + "target": "com.amazonaws.ec2#BandwidthWeightingTypeList", + "traits": { + "aws.protocols#ec2QueryName": "BandwidthWeightings", + "smithy.api#documentation": "

A list of valid settings for configurable bandwidth weighting for the instance type, if\n supported.

", + "smithy.api#xmlName": "bandwidthWeightings" + } + }, + "FlexibleEnaQueuesSupport": { + "target": "com.amazonaws.ec2#FlexibleEnaQueuesSupport", + "traits": { + "aws.protocols#ec2QueryName": "FlexibleEnaQueuesSupport", + "smithy.api#documentation": "

Indicates whether changing the number of ENA queues is supported.

", + "smithy.api#xmlName": "flexibleEnaQueuesSupport" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the networking features of the instance type.

" + } + }, + "com.amazonaws.ec2#NetworkInsightsAccessScope": { + "type": "structure", + "members": { + "NetworkInsightsAccessScopeId": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeId", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeId", + "smithy.api#documentation": "

The ID of the Network Access Scope.

", + "smithy.api#xmlName": "networkInsightsAccessScopeId" + } + }, + "NetworkInsightsAccessScopeArn": { + "target": "com.amazonaws.ec2#ResourceArn", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Network Access Scope.

", + "smithy.api#xmlName": "networkInsightsAccessScopeArn" + } + }, + "CreatedDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "CreatedDate", + "smithy.api#documentation": "

The creation date.

", + "smithy.api#xmlName": "createdDate" + } + }, + "UpdatedDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "UpdatedDate", + "smithy.api#documentation": "

The last updated date.

", + "smithy.api#xmlName": "updatedDate" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags.

", + "smithy.api#xmlName": "tagSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a Network Access Scope.

" + } + }, + "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysis": { + "type": "structure", + "members": { + "NetworkInsightsAccessScopeAnalysisId": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisId", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeAnalysisId", + "smithy.api#documentation": "

The ID of the Network Access Scope analysis.

", + "smithy.api#xmlName": "networkInsightsAccessScopeAnalysisId" + } + }, + "NetworkInsightsAccessScopeAnalysisArn": { + "target": "com.amazonaws.ec2#ResourceArn", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeAnalysisArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Network Access Scope analysis.

", + "smithy.api#xmlName": "networkInsightsAccessScopeAnalysisArn" + } + }, + "NetworkInsightsAccessScopeId": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeId", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeId", + "smithy.api#documentation": "

The ID of the Network Access Scope.

", + "smithy.api#xmlName": "networkInsightsAccessScopeId" + } + }, + "Status": { + "target": "com.amazonaws.ec2#AnalysisStatus", + "traits": { + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The status.

", + "smithy.api#xmlName": "status" + } + }, + "StatusMessage": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "StatusMessage", + "smithy.api#documentation": "

The status message.

", + "smithy.api#xmlName": "statusMessage" + } + }, + "WarningMessage": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "WarningMessage", + "smithy.api#documentation": "

The warning message.

", + "smithy.api#xmlName": "warningMessage" + } + }, + "StartDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "StartDate", + "smithy.api#documentation": "

The analysis start date.

", + "smithy.api#xmlName": "startDate" + } + }, + "EndDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "EndDate", + "smithy.api#documentation": "

The analysis end date.

", + "smithy.api#xmlName": "endDate" + } + }, + "FindingsFound": { + "target": "com.amazonaws.ec2#FindingsFound", + "traits": { + "aws.protocols#ec2QueryName": "FindingsFound", + "smithy.api#documentation": "

Indicates whether there are findings.

", + "smithy.api#xmlName": "findingsFound" + } + }, + "AnalyzedEniCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "AnalyzedEniCount", + "smithy.api#documentation": "

The number of network interfaces analyzed.

", + "smithy.api#xmlName": "analyzedEniCount" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags.

", + "smithy.api#xmlName": "tagSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a Network Access Scope analysis.

" + } + }, + "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisId": { + "type": "string" + }, + "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysisList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeAnalysis", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkInsightsAccessScopeContent": { + "type": "structure", + "members": { + "NetworkInsightsAccessScopeId": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeId", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInsightsAccessScopeId", + "smithy.api#documentation": "

The ID of the Network Access Scope.

", + "smithy.api#xmlName": "networkInsightsAccessScopeId" + } + }, + "MatchPaths": { + "target": "com.amazonaws.ec2#AccessScopePathList", + "traits": { + "aws.protocols#ec2QueryName": "MatchPathSet", + "smithy.api#documentation": "

The paths to match.

", + "smithy.api#xmlName": "matchPathSet" + } + }, + "ExcludePaths": { + "target": "com.amazonaws.ec2#AccessScopePathList", + "traits": { + "aws.protocols#ec2QueryName": "ExcludePathSet", + "smithy.api#documentation": "

The paths to exclude.

", + "smithy.api#xmlName": "excludePathSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the Network Access Scope content.

" + } + }, + "com.amazonaws.ec2#NetworkInsightsAccessScopeId": { + "type": "string" + }, + "com.amazonaws.ec2#NetworkInsightsAccessScopeIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScopeId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkInsightsAccessScopeList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkInsightsAccessScope", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkInsightsAnalysis": { + "type": "structure", + "members": { + "NetworkInsightsAnalysisId": { + "target": "com.amazonaws.ec2#NetworkInsightsAnalysisId", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInsightsAnalysisId", + "smithy.api#documentation": "

The ID of the network insights analysis.

", + "smithy.api#xmlName": "networkInsightsAnalysisId" + } + }, + "NetworkInsightsAnalysisArn": { + "target": "com.amazonaws.ec2#ResourceArn", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInsightsAnalysisArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the network insights analysis.

", + "smithy.api#xmlName": "networkInsightsAnalysisArn" + } + }, + "NetworkInsightsPathId": { + "target": "com.amazonaws.ec2#NetworkInsightsPathId", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInsightsPathId", + "smithy.api#documentation": "

The ID of the path.

", + "smithy.api#xmlName": "networkInsightsPathId" + } + }, + "AdditionalAccounts": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "aws.protocols#ec2QueryName": "AdditionalAccountSet", + "smithy.api#documentation": "

The member accounts that contain resources that the path can traverse.

", + "smithy.api#xmlName": "additionalAccountSet" + } + }, + "FilterInArns": { + "target": "com.amazonaws.ec2#ArnList", + "traits": { + "aws.protocols#ec2QueryName": "FilterInArnSet", + "smithy.api#documentation": "

The Amazon Resource Names (ARN) of the resources that the path must traverse.

", + "smithy.api#xmlName": "filterInArnSet" + } + }, + "FilterOutArns": { + "target": "com.amazonaws.ec2#ArnList", + "traits": { + "aws.protocols#ec2QueryName": "FilterOutArnSet", + "smithy.api#documentation": "

The Amazon Resource Names (ARN) of the resources that the path must ignore.

", + "smithy.api#xmlName": "filterOutArnSet" + } + }, + "StartDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "StartDate", + "smithy.api#documentation": "

The time the analysis started.

", + "smithy.api#xmlName": "startDate" + } + }, + "Status": { + "target": "com.amazonaws.ec2#AnalysisStatus", + "traits": { + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The status of the network insights analysis.

", + "smithy.api#xmlName": "status" + } + }, + "StatusMessage": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "StatusMessage", + "smithy.api#documentation": "

The status message, if the status is failed.

", + "smithy.api#xmlName": "statusMessage" + } + }, + "WarningMessage": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "WarningMessage", + "smithy.api#documentation": "

The warning message.

", + "smithy.api#xmlName": "warningMessage" + } + }, + "NetworkPathFound": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "NetworkPathFound", + "smithy.api#documentation": "

Indicates whether the destination is reachable from the source.

", + "smithy.api#xmlName": "networkPathFound" + } + }, + "ForwardPathComponents": { + "target": "com.amazonaws.ec2#PathComponentList", + "traits": { + "aws.protocols#ec2QueryName": "ForwardPathComponentSet", + "smithy.api#documentation": "

The components in the path from source to destination.

", + "smithy.api#xmlName": "forwardPathComponentSet" + } + }, + "ReturnPathComponents": { + "target": "com.amazonaws.ec2#PathComponentList", + "traits": { + "aws.protocols#ec2QueryName": "ReturnPathComponentSet", + "smithy.api#documentation": "

The components in the path from destination to source.

", + "smithy.api#xmlName": "returnPathComponentSet" + } + }, + "Explanations": { + "target": "com.amazonaws.ec2#ExplanationList", + "traits": { + "aws.protocols#ec2QueryName": "ExplanationSet", + "smithy.api#documentation": "

The explanations. For more information, see Reachability Analyzer explanation codes.

", + "smithy.api#xmlName": "explanationSet" + } + }, + "AlternatePathHints": { + "target": "com.amazonaws.ec2#AlternatePathHintList", + "traits": { + "aws.protocols#ec2QueryName": "AlternatePathHintSet", + "smithy.api#documentation": "

Potential intermediate components.

", + "smithy.api#xmlName": "alternatePathHintSet" + } + }, + "SuggestedAccounts": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "aws.protocols#ec2QueryName": "SuggestedAccountSet", + "smithy.api#documentation": "

Potential intermediate accounts.

", + "smithy.api#xmlName": "suggestedAccountSet" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags.

", + "smithy.api#xmlName": "tagSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a network insights analysis.

" + } + }, + "com.amazonaws.ec2#NetworkInsightsAnalysisId": { + "type": "string" + }, + "com.amazonaws.ec2#NetworkInsightsAnalysisIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkInsightsAnalysisId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkInsightsAnalysisList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkInsightsAnalysis", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkInsightsMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.ec2#NetworkInsightsPath": { + "type": "structure", + "members": { + "NetworkInsightsPathId": { + "target": "com.amazonaws.ec2#NetworkInsightsPathId", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInsightsPathId", + "smithy.api#documentation": "

The ID of the path.

", + "smithy.api#xmlName": "networkInsightsPathId" + } + }, + "NetworkInsightsPathArn": { + "target": "com.amazonaws.ec2#ResourceArn", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInsightsPathArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the path.

", + "smithy.api#xmlName": "networkInsightsPathArn" + } + }, + "CreatedDate": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "CreatedDate", + "smithy.api#documentation": "

The time stamp when the path was created.

", + "smithy.api#xmlName": "createdDate" + } + }, + "Source": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Source", + "smithy.api#documentation": "

The ID of the source.

", + "smithy.api#xmlName": "source" + } + }, + "Destination": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Destination", + "smithy.api#documentation": "

The ID of the destination.

", + "smithy.api#xmlName": "destination" + } + }, + "SourceArn": { + "target": "com.amazonaws.ec2#ResourceArn", + "traits": { + "aws.protocols#ec2QueryName": "SourceArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the source.

", + "smithy.api#xmlName": "sourceArn" + } + }, + "DestinationArn": { + "target": "com.amazonaws.ec2#ResourceArn", + "traits": { + "aws.protocols#ec2QueryName": "DestinationArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the destination.

", + "smithy.api#xmlName": "destinationArn" + } + }, + "SourceIp": { + "target": "com.amazonaws.ec2#IpAddress", + "traits": { + "aws.protocols#ec2QueryName": "SourceIp", + "smithy.api#documentation": "

The IP address of the source.

", + "smithy.api#xmlName": "sourceIp" + } + }, + "DestinationIp": { + "target": "com.amazonaws.ec2#IpAddress", + "traits": { + "aws.protocols#ec2QueryName": "DestinationIp", + "smithy.api#documentation": "

The IP address of the destination.

", + "smithy.api#xmlName": "destinationIp" + } + }, + "Protocol": { + "target": "com.amazonaws.ec2#Protocol", + "traits": { + "aws.protocols#ec2QueryName": "Protocol", + "smithy.api#documentation": "

The protocol.

", + "smithy.api#xmlName": "protocol" + } + }, + "DestinationPort": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "DestinationPort", + "smithy.api#documentation": "

The destination port.

", + "smithy.api#xmlName": "destinationPort" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags associated with the path.

", + "smithy.api#xmlName": "tagSet" + } + }, + "FilterAtSource": { + "target": "com.amazonaws.ec2#PathFilter", + "traits": { + "aws.protocols#ec2QueryName": "FilterAtSource", + "smithy.api#documentation": "

Scopes the analysis to network paths that match specific filters at the source.

", + "smithy.api#xmlName": "filterAtSource" + } + }, + "FilterAtDestination": { + "target": "com.amazonaws.ec2#PathFilter", + "traits": { + "aws.protocols#ec2QueryName": "FilterAtDestination", + "smithy.api#documentation": "

Scopes the analysis to network paths that match specific filters at the destination.

", + "smithy.api#xmlName": "filterAtDestination" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a path.

" + } + }, + "com.amazonaws.ec2#NetworkInsightsPathId": { + "type": "string" + }, + "com.amazonaws.ec2#NetworkInsightsPathIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkInsightsPathId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkInsightsPathList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkInsightsPath", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkInsightsResourceId": { + "type": "string" + }, + "com.amazonaws.ec2#NetworkInterface": { + "type": "structure", + "members": { + "Association": { + "target": "com.amazonaws.ec2#NetworkInterfaceAssociation", + "traits": { + "aws.protocols#ec2QueryName": "Association", + "smithy.api#documentation": "

The association information for an Elastic IP address (IPv4) associated with the\n network interface.

", + "smithy.api#xmlName": "association" + } + }, + "Attachment": { + "target": "com.amazonaws.ec2#NetworkInterfaceAttachment", + "traits": { + "aws.protocols#ec2QueryName": "Attachment", + "smithy.api#documentation": "

The network interface attachment.

", + "smithy.api#xmlName": "attachment" + } + }, + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone.

", + "smithy.api#xmlName": "availabilityZone" + } + }, + "ConnectionTrackingConfiguration": { + "target": "com.amazonaws.ec2#ConnectionTrackingConfiguration", + "traits": { + "aws.protocols#ec2QueryName": "ConnectionTrackingConfiguration", + "smithy.api#documentation": "

A security group connection tracking configuration that enables you to set the timeout\n for connection tracking on an Elastic network interface. For more information, see\n Connection tracking timeouts in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "connectionTrackingConfiguration" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description.

", + "smithy.api#xmlName": "description" + } + }, + "Groups": { + "target": "com.amazonaws.ec2#GroupIdentifierList", + "traits": { + "aws.protocols#ec2QueryName": "GroupSet", + "smithy.api#documentation": "

Any security groups for the network interface.

", + "smithy.api#xmlName": "groupSet" + } + }, + "InterfaceType": { + "target": "com.amazonaws.ec2#NetworkInterfaceType", + "traits": { + "aws.protocols#ec2QueryName": "InterfaceType", + "smithy.api#documentation": "

The type of network interface.

", + "smithy.api#xmlName": "interfaceType" + } + }, + "Ipv6Addresses": { + "target": "com.amazonaws.ec2#NetworkInterfaceIpv6AddressesList", + "traits": { + "aws.protocols#ec2QueryName": "Ipv6AddressesSet", + "smithy.api#documentation": "

The IPv6 addresses associated with the network interface.

", + "smithy.api#xmlName": "ipv6AddressesSet" + } + }, + "MacAddress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "MacAddress", + "smithy.api#documentation": "

The MAC address.

", + "smithy.api#xmlName": "macAddress" + } + }, + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInterfaceId", + "smithy.api#documentation": "

The ID of the network interface.

", + "smithy.api#xmlName": "networkInterfaceId" + } + }, + "OutpostArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OutpostArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost.

", + "smithy.api#xmlName": "outpostArn" + } + }, + "OwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the network interface.

", + "smithy.api#xmlName": "ownerId" + } + }, + "PrivateDnsName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PrivateDnsName", + "smithy.api#documentation": "

The private hostname. For more information, see EC2 instance hostnames, DNS names, and domains in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "privateDnsName" + } + }, + "PublicDnsName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PublicDnsName", + "smithy.api#documentation": "

A public hostname. For more information, see EC2 instance hostnames, DNS names, and domains in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "publicDnsName" + } + }, + "PublicIpDnsNameOptions": { + "target": "com.amazonaws.ec2#PublicIpDnsNameOptions", + "traits": { + "aws.protocols#ec2QueryName": "PublicIpDnsNameOptions", + "smithy.api#documentation": "

Public hostname type options. For more information, see EC2 instance hostnames, DNS names, and domains in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "publicIpDnsNameOptions" + } + }, + "PrivateIpAddress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PrivateIpAddress", + "smithy.api#documentation": "

The IPv4 address of the network interface within the subnet.

", + "smithy.api#xmlName": "privateIpAddress" + } + }, + "PrivateIpAddresses": { + "target": "com.amazonaws.ec2#NetworkInterfacePrivateIpAddressList", + "traits": { + "aws.protocols#ec2QueryName": "PrivateIpAddressesSet", + "smithy.api#documentation": "

The private IPv4 addresses associated with the network interface.

", + "smithy.api#xmlName": "privateIpAddressesSet" + } + }, + "Ipv4Prefixes": { + "target": "com.amazonaws.ec2#Ipv4PrefixesList", + "traits": { + "aws.protocols#ec2QueryName": "Ipv4PrefixSet", + "smithy.api#documentation": "

The IPv4 prefixes that are assigned to the network interface.

", + "smithy.api#xmlName": "ipv4PrefixSet" + } + }, + "Ipv6Prefixes": { + "target": "com.amazonaws.ec2#Ipv6PrefixesList", + "traits": { + "aws.protocols#ec2QueryName": "Ipv6PrefixSet", + "smithy.api#documentation": "

The IPv6 prefixes that are assigned to the network interface.

", + "smithy.api#xmlName": "ipv6PrefixSet" + } + }, + "RequesterId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "RequesterId", + "smithy.api#documentation": "

The alias or Amazon Web Services account ID of the principal or service that created\n the network interface.

", + "smithy.api#xmlName": "requesterId" + } + }, + "RequesterManaged": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "RequesterManaged", + "smithy.api#documentation": "

Indicates whether the network interface is being managed by Amazon Web Services.

", + "smithy.api#xmlName": "requesterManaged" + } + }, + "SourceDestCheck": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "SourceDestCheck", + "smithy.api#documentation": "

Indicates whether source/destination checking is enabled.

", + "smithy.api#xmlName": "sourceDestCheck" + } + }, + "Status": { + "target": "com.amazonaws.ec2#NetworkInterfaceStatus", + "traits": { + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The status of the network interface.

", + "smithy.api#xmlName": "status" + } + }, + "SubnetId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet.

", + "smithy.api#xmlName": "subnetId" + } + }, + "TagSet": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the network interface.

", + "smithy.api#xmlName": "tagSet" + } + }, + "VpcId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#xmlName": "vpcId" + } + }, + "DenyAllIgwTraffic": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DenyAllIgwTraffic", + "smithy.api#documentation": "

Indicates whether a network interface with an IPv6 address is unreachable from the\n public internet. If the value is true, inbound traffic from the internet is\n dropped and you cannot assign an elastic IP address to the network interface. The\n network interface is reachable from peered VPCs and resources connected through a\n transit gateway, including on-premises networks.

", + "smithy.api#xmlName": "denyAllIgwTraffic" + } + }, + "Ipv6Native": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Ipv6Native", + "smithy.api#documentation": "

Indicates whether this is an IPv6 only network interface.

", + "smithy.api#xmlName": "ipv6Native" + } + }, + "Ipv6Address": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Ipv6Address", + "smithy.api#documentation": "

The IPv6 globally unique address associated with the network interface.

", + "smithy.api#xmlName": "ipv6Address" + } + }, + "Operator": { + "target": "com.amazonaws.ec2#OperatorResponse", + "traits": { + "aws.protocols#ec2QueryName": "Operator", + "smithy.api#documentation": "

The service provider that manages the network interface.

", + "smithy.api#xmlName": "operator" + } + }, + "AssociatedSubnets": { + "target": "com.amazonaws.ec2#AssociatedSubnetList", + "traits": { + "aws.protocols#ec2QueryName": "AssociatedSubnetSet", + "smithy.api#documentation": "

The subnets associated with this network interface.

", + "smithy.api#xmlName": "associatedSubnetSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a network interface.

" + } + }, + "com.amazonaws.ec2#NetworkInterfaceAssociation": { + "type": "structure", + "members": { + "AllocationId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AllocationId", + "smithy.api#documentation": "

The allocation ID.

", + "smithy.api#xmlName": "allocationId" + } + }, + "AssociationId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AssociationId", + "smithy.api#documentation": "

The association ID.

", + "smithy.api#xmlName": "associationId" + } + }, + "IpOwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "IpOwnerId", + "smithy.api#documentation": "

The ID of the Elastic IP address owner.

", + "smithy.api#xmlName": "ipOwnerId" + } + }, + "PublicDnsName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PublicDnsName", + "smithy.api#documentation": "

The public DNS name.

", + "smithy.api#xmlName": "publicDnsName" + } + }, + "PublicIp": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PublicIp", + "smithy.api#documentation": "

The address of the Elastic IP address bound to the network interface.

", + "smithy.api#xmlName": "publicIp" + } + }, + "CustomerOwnedIp": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "CustomerOwnedIp", + "smithy.api#documentation": "

The customer-owned IP address associated with the network interface.

", + "smithy.api#xmlName": "customerOwnedIp" + } + }, + "CarrierIp": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "CarrierIp", + "smithy.api#documentation": "

The carrier IP address associated with the network interface.

\n

This option is only available when the network interface is in a subnet which is\n associated with a Wavelength Zone.

", + "smithy.api#xmlName": "carrierIp" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes association information for an Elastic IP address (IPv4 only), or a Carrier\n IP address (for a network interface which resides in a subnet in a Wavelength\n Zone).

" + } + }, + "com.amazonaws.ec2#NetworkInterfaceAttachment": { + "type": "structure", + "members": { + "AttachTime": { + "target": "com.amazonaws.ec2#DateTime", + "traits": { + "aws.protocols#ec2QueryName": "AttachTime", + "smithy.api#documentation": "

The timestamp indicating when the attachment initiated.

", + "smithy.api#xmlName": "attachTime" + } + }, + "AttachmentId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AttachmentId", + "smithy.api#documentation": "

The ID of the network interface attachment.

", + "smithy.api#xmlName": "attachmentId" + } + }, + "DeleteOnTermination": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DeleteOnTermination", + "smithy.api#documentation": "

Indicates whether the network interface is deleted when the instance is\n terminated.

", + "smithy.api#xmlName": "deleteOnTermination" + } + }, + "DeviceIndex": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "DeviceIndex", + "smithy.api#documentation": "

The device index of the network interface attachment on the instance.

", + "smithy.api#xmlName": "deviceIndex" + } + }, + "NetworkCardIndex": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "NetworkCardIndex", + "smithy.api#documentation": "

The index of the network card.

", + "smithy.api#xmlName": "networkCardIndex" + } + }, + "InstanceId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#xmlName": "instanceId" + } + }, + "InstanceOwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "InstanceOwnerId", + "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the instance.

", + "smithy.api#xmlName": "instanceOwnerId" + } + }, + "Status": { + "target": "com.amazonaws.ec2#AttachmentStatus", + "traits": { + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The attachment state.

", + "smithy.api#xmlName": "status" + } + }, + "EnaSrdSpecification": { + "target": "com.amazonaws.ec2#AttachmentEnaSrdSpecification", + "traits": { + "aws.protocols#ec2QueryName": "EnaSrdSpecification", + "smithy.api#documentation": "

Configures ENA Express for the network interface that this action attaches to the\n instance.

", + "smithy.api#xmlName": "enaSrdSpecification" + } + }, + "EnaQueueCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "EnaQueueCount", + "smithy.api#documentation": "

The number of ENA queues created with the instance.

", + "smithy.api#xmlName": "enaQueueCount" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a network interface attachment.

" + } + }, + "com.amazonaws.ec2#NetworkInterfaceAttachmentChanges": { + "type": "structure", + "members": { + "DefaultEnaQueueCount": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

The default number of the ENA queues.

" + } + }, + "EnaQueueCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The number of ENA queues to be created with the instance.

" + } + }, + "AttachmentId": { + "target": "com.amazonaws.ec2#NetworkInterfaceAttachmentId", + "traits": { + "aws.protocols#ec2QueryName": "AttachmentId", + "smithy.api#documentation": "

The ID of the network interface attachment.

", + "smithy.api#xmlName": "attachmentId" + } + }, + "DeleteOnTermination": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DeleteOnTermination", + "smithy.api#documentation": "

Indicates whether the network interface is deleted when the instance is\n terminated.

", + "smithy.api#xmlName": "deleteOnTermination" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes an attachment change.

" + } + }, + "com.amazonaws.ec2#NetworkInterfaceAttachmentId": { + "type": "string" + }, + "com.amazonaws.ec2#NetworkInterfaceAttribute": { + "type": "enum", + "members": { + "description": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "description" + } + }, + "groupSet": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "groupSet" + } + }, + "sourceDestCheck": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "sourceDestCheck" + } + }, + "attachment": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "attachment" + } + }, + "associatePublicIpAddress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "associatePublicIpAddress" + } + } + } + }, + "com.amazonaws.ec2#NetworkInterfaceCount": { + "type": "structure", + "members": { + "Min": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "Min", + "smithy.api#documentation": "

The minimum number of network interfaces. If this parameter is not specified, there is no\n minimum limit.

", + "smithy.api#xmlName": "min" + } + }, + "Max": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "Max", + "smithy.api#documentation": "

The maximum number of network interfaces. If this parameter is not specified, there is no\n maximum limit.

", + "smithy.api#xmlName": "max" + } + } + }, + "traits": { + "smithy.api#documentation": "

The minimum and maximum number of network interfaces.

" + } + }, + "com.amazonaws.ec2#NetworkInterfaceCountRequest": { + "type": "structure", + "members": { + "Min": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The minimum number of network interfaces. To specify no minimum limit, omit this\n parameter.

" + } + }, + "Max": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The maximum number of network interfaces. To specify no maximum limit, omit this\n parameter.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The minimum and maximum number of network interfaces.

" + } + }, + "com.amazonaws.ec2#NetworkInterfaceCreationType": { + "type": "enum", + "members": { + "efa": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "efa" + } + }, + "efa_only": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "efa-only" + } + }, + "branch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "branch" + } + }, + "trunk": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "trunk" + } + } + } + }, + "com.amazonaws.ec2#NetworkInterfaceId": { + "type": "string" + }, + "com.amazonaws.ec2#NetworkInterfaceIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkInterfaceIdSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkInterfaceIpv6Address": { + "type": "structure", + "members": { + "Ipv6Address": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Ipv6Address", + "smithy.api#documentation": "

The IPv6 address.

", + "smithy.api#xmlName": "ipv6Address" + } + }, + "PublicIpv6DnsName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PublicIpv6DnsName", + "smithy.api#documentation": "

An IPv6-enabled public hostname for a network interface. Requests from within the VPC or from the internet resolve to the IPv6 GUA of the network interface. For more information, see EC2 instance hostnames, DNS names, and domains in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "publicIpv6DnsName" + } + }, + "IsPrimaryIpv6": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "IsPrimaryIpv6", + "smithy.api#documentation": "

Determines if an IPv6 address associated with a network interface is the primary IPv6\n address. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA\n will be made the primary IPv6 address until the instance is terminated or the network\n interface is detached. For more information, see ModifyNetworkInterfaceAttribute.

", + "smithy.api#xmlName": "isPrimaryIpv6" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes an IPv6 address associated with a network interface.

" + } + }, + "com.amazonaws.ec2#NetworkInterfaceIpv6AddressesList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkInterfaceIpv6Address", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkInterfaceList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkInterface", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkInterfacePermission": { + "type": "structure", + "members": { + "NetworkInterfacePermissionId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInterfacePermissionId", + "smithy.api#documentation": "

The ID of the network interface permission.

", + "smithy.api#xmlName": "networkInterfacePermissionId" + } + }, + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInterfaceId", + "smithy.api#documentation": "

The ID of the network interface.

", + "smithy.api#xmlName": "networkInterfaceId" + } + }, + "AwsAccountId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AwsAccountId", + "smithy.api#documentation": "

The Amazon Web Services account ID.

", + "smithy.api#xmlName": "awsAccountId" + } + }, + "AwsService": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AwsService", + "smithy.api#documentation": "

The Amazon Web Services service.

", + "smithy.api#xmlName": "awsService" + } + }, + "Permission": { + "target": "com.amazonaws.ec2#InterfacePermissionType", + "traits": { + "aws.protocols#ec2QueryName": "Permission", + "smithy.api#documentation": "

The type of permission.

", + "smithy.api#xmlName": "permission" + } + }, + "PermissionState": { + "target": "com.amazonaws.ec2#NetworkInterfacePermissionState", + "traits": { + "aws.protocols#ec2QueryName": "PermissionState", + "smithy.api#documentation": "

Information about the state of the permission.

", + "smithy.api#xmlName": "permissionState" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a permission for a network interface.

" + } + }, + "com.amazonaws.ec2#NetworkInterfacePermissionId": { + "type": "string" + }, + "com.amazonaws.ec2#NetworkInterfacePermissionIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkInterfacePermissionId" + } + }, + "com.amazonaws.ec2#NetworkInterfacePermissionList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkInterfacePermission", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkInterfacePermissionState": { + "type": "structure", + "members": { + "State": { + "target": "com.amazonaws.ec2#NetworkInterfacePermissionStateCode", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the permission.

", + "smithy.api#xmlName": "state" + } + }, + "StatusMessage": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "StatusMessage", + "smithy.api#documentation": "

A status message, if applicable.

", + "smithy.api#xmlName": "statusMessage" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the state of a network interface permission.

" + } + }, + "com.amazonaws.ec2#NetworkInterfacePermissionStateCode": { + "type": "enum", + "members": { + "pending": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pending" + } + }, + "granted": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "granted" + } + }, + "revoking": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "revoking" + } + }, + "revoked": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "revoked" + } + } + } + }, + "com.amazonaws.ec2#NetworkInterfacePrivateIpAddress": { + "type": "structure", + "members": { + "Association": { + "target": "com.amazonaws.ec2#NetworkInterfaceAssociation", + "traits": { + "aws.protocols#ec2QueryName": "Association", + "smithy.api#documentation": "

The association information for an Elastic IP address (IPv4) associated with the\n network interface.

", + "smithy.api#xmlName": "association" + } + }, + "Primary": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Primary", + "smithy.api#documentation": "

Indicates whether this IPv4 address is the primary private IPv4 address of the network\n interface.

", + "smithy.api#xmlName": "primary" + } + }, + "PrivateDnsName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PrivateDnsName", + "smithy.api#documentation": "

The private DNS name.

", + "smithy.api#xmlName": "privateDnsName" + } + }, + "PrivateIpAddress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PrivateIpAddress", + "smithy.api#documentation": "

The private IPv4 address.

", + "smithy.api#xmlName": "privateIpAddress" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the private IPv4 address of a network interface.

" + } + }, + "com.amazonaws.ec2#NetworkInterfacePrivateIpAddressList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NetworkInterfacePrivateIpAddress", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkInterfaceStatus": { + "type": "enum", + "members": { + "available": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "available" + } + }, + "associated": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "associated" + } + }, + "attaching": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "attaching" + } + }, + "in_use": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "in-use" + } + }, + "detaching": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "detaching" + } + } + } + }, + "com.amazonaws.ec2#NetworkInterfaceType": { + "type": "enum", + "members": { + "interface": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "interface" + } + }, + "natGateway": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "natGateway" + } + }, + "efa": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "efa" + } + }, + "efa_only": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "efa-only" + } + }, + "trunk": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "trunk" + } + }, + "load_balancer": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "load_balancer" + } + }, + "network_load_balancer": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "network_load_balancer" + } + }, + "vpc_endpoint": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "vpc_endpoint" + } + }, + "branch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "branch" + } + }, + "transit_gateway": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "transit_gateway" + } + }, + "lambda": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "lambda" + } + }, + "quicksight": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "quicksight" + } + }, + "global_accelerator_managed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "global_accelerator_managed" + } + }, + "api_gateway_managed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "api_gateway_managed" + } + }, + "gateway_load_balancer": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "gateway_load_balancer" + } + }, + "gateway_load_balancer_endpoint": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "gateway_load_balancer_endpoint" + } + }, + "iot_rules_managed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "iot_rules_managed" + } + }, + "aws_codestar_connections_managed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "aws_codestar_connections_managed" + } + } + } + }, + "com.amazonaws.ec2#NetworkNodesList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NetworkPerformance": { + "type": "string" + }, + "com.amazonaws.ec2#NeuronDeviceCoreCount": { + "type": "integer" + }, + "com.amazonaws.ec2#NeuronDeviceCoreInfo": { + "type": "structure", + "members": { + "Count": { + "target": "com.amazonaws.ec2#NeuronDeviceCoreCount", + "traits": { + "aws.protocols#ec2QueryName": "Count", + "smithy.api#documentation": "

The number of cores available to the neuron accelerator.

", + "smithy.api#xmlName": "count" + } + }, + "Version": { + "target": "com.amazonaws.ec2#NeuronDeviceCoreVersion", + "traits": { + "aws.protocols#ec2QueryName": "Version", + "smithy.api#documentation": "

The version of the neuron accelerator.

", + "smithy.api#xmlName": "version" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the cores available to the neuron accelerator.

" + } + }, + "com.amazonaws.ec2#NeuronDeviceCoreVersion": { + "type": "integer" + }, + "com.amazonaws.ec2#NeuronDeviceCount": { + "type": "integer" + }, + "com.amazonaws.ec2#NeuronDeviceInfo": { + "type": "structure", + "members": { + "Count": { + "target": "com.amazonaws.ec2#NeuronDeviceCount", + "traits": { + "aws.protocols#ec2QueryName": "Count", + "smithy.api#documentation": "

The number of neuron accelerators for the instance type.

", + "smithy.api#xmlName": "count" + } + }, + "Name": { + "target": "com.amazonaws.ec2#NeuronDeviceName", + "traits": { + "aws.protocols#ec2QueryName": "Name", + "smithy.api#documentation": "

The name of the neuron accelerator.

", + "smithy.api#xmlName": "name" + } + }, + "CoreInfo": { + "target": "com.amazonaws.ec2#NeuronDeviceCoreInfo", + "traits": { + "aws.protocols#ec2QueryName": "CoreInfo", + "smithy.api#documentation": "

Describes the cores available to each neuron accelerator.

", + "smithy.api#xmlName": "coreInfo" + } + }, + "MemoryInfo": { + "target": "com.amazonaws.ec2#NeuronDeviceMemoryInfo", + "traits": { + "aws.protocols#ec2QueryName": "MemoryInfo", + "smithy.api#documentation": "

Describes the memory available to each neuron accelerator.

", + "smithy.api#xmlName": "memoryInfo" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the neuron accelerators for the instance type.

" + } + }, + "com.amazonaws.ec2#NeuronDeviceInfoList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NeuronDeviceInfo", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NeuronDeviceMemoryInfo": { + "type": "structure", + "members": { + "SizeInMiB": { + "target": "com.amazonaws.ec2#NeuronDeviceMemorySize", + "traits": { + "aws.protocols#ec2QueryName": "SizeInMiB", + "smithy.api#documentation": "

The size of the memory available to the neuron accelerator, in MiB.

", + "smithy.api#xmlName": "sizeInMiB" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the memory available to the neuron accelerator.

" + } + }, + "com.amazonaws.ec2#NeuronDeviceMemorySize": { + "type": "integer" + }, + "com.amazonaws.ec2#NeuronDeviceName": { + "type": "string" + }, + "com.amazonaws.ec2#NeuronInfo": { + "type": "structure", + "members": { + "NeuronDevices": { + "target": "com.amazonaws.ec2#NeuronDeviceInfoList", + "traits": { + "aws.protocols#ec2QueryName": "NeuronDevices", + "smithy.api#documentation": "

Describes the neuron accelerators for the instance type.

", + "smithy.api#xmlName": "neuronDevices" + } + }, + "TotalNeuronDeviceMemoryInMiB": { + "target": "com.amazonaws.ec2#TotalNeuronMemory", + "traits": { + "aws.protocols#ec2QueryName": "TotalNeuronDeviceMemoryInMiB", + "smithy.api#documentation": "

The total size of the memory for the neuron accelerators for the instance type, in\n MiB.

", + "smithy.api#xmlName": "totalNeuronDeviceMemoryInMiB" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the neuron accelerators for the instance type.

" + } + }, + "com.amazonaws.ec2#NewDhcpConfiguration": { + "type": "structure", + "members": { + "Key": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Key", + "smithy.api#documentation": "

The name of a DHCP option.

", + "smithy.api#xmlName": "key" + } + }, + "Values": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The values for the DHCP option.

", + "smithy.api#xmlName": "Value" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a DHCP configuration option.

" + } + }, + "com.amazonaws.ec2#NewDhcpConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NewDhcpConfiguration", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#NextToken": { + "type": "string" + }, + "com.amazonaws.ec2#NitroEnclavesSupport": { + "type": "enum", + "members": { + "UNSUPPORTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "unsupported" + } + }, + "SUPPORTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "supported" + } + } + } + }, + "com.amazonaws.ec2#NitroTpmInfo": { + "type": "structure", + "members": { + "SupportedVersions": { + "target": "com.amazonaws.ec2#NitroTpmSupportedVersionsList", + "traits": { + "aws.protocols#ec2QueryName": "SupportedVersions", + "smithy.api#documentation": "

Indicates the supported NitroTPM versions.

", + "smithy.api#xmlName": "supportedVersions" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the supported NitroTPM versions for the instance type.

" + } + }, + "com.amazonaws.ec2#NitroTpmSupport": { + "type": "enum", + "members": { + "UNSUPPORTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "unsupported" + } + }, + "SUPPORTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "supported" + } + } + } + }, + "com.amazonaws.ec2#NitroTpmSupportedVersionType": { + "type": "string" + }, + "com.amazonaws.ec2#NitroTpmSupportedVersionsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#NitroTpmSupportedVersionType", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#OccurrenceDayRequestSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#xmlName": "OccurenceDay" + } + } + }, + "com.amazonaws.ec2#OccurrenceDaySet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#OdbNetworkArn": { + "type": "string" + }, + "com.amazonaws.ec2#OfferingClassType": { + "type": "enum", + "members": { + "STANDARD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "standard" + } + }, + "CONVERTIBLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "convertible" + } + } + } + }, + "com.amazonaws.ec2#OfferingId": { + "type": "string" + }, + "com.amazonaws.ec2#OfferingTypeValues": { + "type": "enum", + "members": { + "Heavy_Utilization": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Heavy Utilization" + } + }, + "Medium_Utilization": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Medium Utilization" + } + }, + "Light_Utilization": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Light Utilization" + } + }, + "No_Upfront": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "No Upfront" + } + }, + "Partial_Upfront": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Partial Upfront" + } + }, + "All_Upfront": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "All Upfront" + } + } + } + }, + "com.amazonaws.ec2#OidcOptions": { + "type": "structure", + "members": { + "Issuer": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Issuer", + "smithy.api#documentation": "

The OIDC issuer.

", + "smithy.api#xmlName": "issuer" + } + }, + "AuthorizationEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AuthorizationEndpoint", + "smithy.api#documentation": "

The OIDC authorization endpoint.

", + "smithy.api#xmlName": "authorizationEndpoint" + } + }, + "TokenEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "TokenEndpoint", + "smithy.api#documentation": "

The OIDC token endpoint.

", + "smithy.api#xmlName": "tokenEndpoint" + } + }, + "UserInfoEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "UserInfoEndpoint", + "smithy.api#documentation": "

The OIDC user info endpoint.

", + "smithy.api#xmlName": "userInfoEndpoint" + } + }, + "ClientId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ClientId", + "smithy.api#documentation": "

The client identifier.

", + "smithy.api#xmlName": "clientId" + } + }, + "ClientSecret": { + "target": "com.amazonaws.ec2#ClientSecretType", + "traits": { + "aws.protocols#ec2QueryName": "ClientSecret", + "smithy.api#documentation": "

The client secret.

", + "smithy.api#xmlName": "clientSecret" + } + }, + "Scope": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Scope", + "smithy.api#documentation": "

The OpenID Connect (OIDC) scope specified.

", + "smithy.api#xmlName": "scope" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the options for an OpenID Connect-compatible user-identity trust\n provider.

" + } + }, + "com.amazonaws.ec2#OnDemandAllocationStrategy": { + "type": "enum", + "members": { + "LOWEST_PRICE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "lowestPrice" + } + }, + "PRIORITIZED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "prioritized" + } + } + } + }, + "com.amazonaws.ec2#OnDemandOptions": { + "type": "structure", + "members": { + "AllocationStrategy": { + "target": "com.amazonaws.ec2#FleetOnDemandAllocationStrategy", + "traits": { + "aws.protocols#ec2QueryName": "AllocationStrategy", + "smithy.api#documentation": "

The strategy that determines the order of the launch template overrides to use in\n fulfilling On-Demand capacity.

\n

\n lowest-price - EC2 Fleet uses price to determine the order, launching the lowest\n price first.

\n

\n prioritized - EC2 Fleet uses the priority that you assigned to each launch\n template override, launching the highest priority first.

\n

Default: lowest-price\n

", + "smithy.api#xmlName": "allocationStrategy" + } + }, + "CapacityReservationOptions": { + "target": "com.amazonaws.ec2#CapacityReservationOptions", + "traits": { + "aws.protocols#ec2QueryName": "CapacityReservationOptions", + "smithy.api#documentation": "

The strategy for using unused Capacity Reservations for fulfilling On-Demand\n capacity.

\n

Supported only for fleets of type instant.

", + "smithy.api#xmlName": "capacityReservationOptions" + } + }, + "SingleInstanceType": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "SingleInstanceType", + "smithy.api#documentation": "

Indicates that the fleet uses a single instance type to launch all On-Demand Instances in the\n fleet.

\n

Supported only for fleets of type instant.

", + "smithy.api#xmlName": "singleInstanceType" + } + }, + "SingleAvailabilityZone": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "SingleAvailabilityZone", + "smithy.api#documentation": "

Indicates that the fleet launches all On-Demand Instances into a single Availability Zone.

\n

Supported only for fleets of type instant.

", + "smithy.api#xmlName": "singleAvailabilityZone" + } + }, + "MinTargetCapacity": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "MinTargetCapacity", + "smithy.api#documentation": "

The minimum target capacity for On-Demand Instances in the fleet. If this minimum capacity isn't\n reached, no instances are launched.

\n

Constraints: Maximum value of 1000. Supported only for fleets of type\n instant.

\n

At least one of the following must be specified: SingleAvailabilityZone |\n SingleInstanceType\n

", + "smithy.api#xmlName": "minTargetCapacity" + } + }, + "MaxTotalPrice": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "MaxTotalPrice", + "smithy.api#documentation": "

The maximum amount per hour for On-Demand Instances that you're willing to pay.

\n \n

If your fleet includes T instances that are configured as unlimited, and\n if their average CPU usage exceeds the baseline utilization, you will incur a charge for\n surplus credits. The maxTotalPrice does not account for surplus credits,\n and, if you use surplus credits, your final cost might be higher than what you specified\n for maxTotalPrice. For more information, see Surplus credits can incur charges in the\n Amazon EC2 User Guide.

\n
", + "smithy.api#xmlName": "maxTotalPrice" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the configuration of On-Demand Instances in an EC2 Fleet.

" + } + }, + "com.amazonaws.ec2#OnDemandOptionsRequest": { + "type": "structure", + "members": { + "AllocationStrategy": { + "target": "com.amazonaws.ec2#FleetOnDemandAllocationStrategy", + "traits": { + "smithy.api#documentation": "

The strategy that determines the order of the launch template overrides to use in\n fulfilling On-Demand capacity.

\n

\n lowest-price - EC2 Fleet uses price to determine the order, launching the lowest\n price first.

\n

\n prioritized - EC2 Fleet uses the priority that you assigned to each launch\n template override, launching the highest priority first.

\n

Default: lowest-price\n

" + } + }, + "CapacityReservationOptions": { + "target": "com.amazonaws.ec2#CapacityReservationOptionsRequest", + "traits": { + "smithy.api#documentation": "

The strategy for using unused Capacity Reservations for fulfilling On-Demand\n capacity.

\n

Supported only for fleets of type instant.

" + } + }, + "SingleInstanceType": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates that the fleet uses a single instance type to launch all On-Demand Instances in the\n fleet.

\n

Supported only for fleets of type instant.

" + } + }, + "SingleAvailabilityZone": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates that the fleet launches all On-Demand Instances into a single Availability Zone.

\n

Supported only for fleets of type instant.

" + } + }, + "MinTargetCapacity": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The minimum target capacity for On-Demand Instances in the fleet. If this minimum capacity isn't\n reached, no instances are launched.

\n

Constraints: Maximum value of 1000. Supported only for fleets of type\n instant.

\n

At least one of the following must be specified: SingleAvailabilityZone |\n SingleInstanceType\n

" + } + }, + "MaxTotalPrice": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The maximum amount per hour for On-Demand Instances that you're willing to pay.

\n \n

If your fleet includes T instances that are configured as unlimited,\n and if their average CPU usage exceeds the baseline utilization, you will incur a charge\n for surplus credits. The MaxTotalPrice does not account for surplus\n credits, and, if you use surplus credits, your final cost might be higher than what you\n specified for MaxTotalPrice. For more information, see Surplus credits can incur charges in the Amazon EC2 User Guide.

\n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the configuration of On-Demand Instances in an EC2 Fleet.

" + } + }, + "com.amazonaws.ec2#OperationType": { + "type": "enum", + "members": { + "add": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "add" + } + }, + "remove": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "remove" + } + } + } + }, + "com.amazonaws.ec2#OperatorRequest": { + "type": "structure", + "members": { + "Principal": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The service provider that manages the resource.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The service provider that manages the resource.

" + } + }, + "com.amazonaws.ec2#OperatorResponse": { + "type": "structure", + "members": { + "Managed": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Managed", + "smithy.api#documentation": "

If true, the resource is managed by a service provider.

", + "smithy.api#xmlName": "managed" + } + }, + "Principal": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Principal", + "smithy.api#documentation": "

If managed is true, then the principal is returned. The\n principal is the service provider that manages the resource.

", + "smithy.api#xmlName": "principal" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes whether the resource is managed by a service provider and, if so, describes\n the service provider that manages it.

" + } + }, + "com.amazonaws.ec2#OrganizationArnStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "OrganizationArn" + } + } + }, + "com.amazonaws.ec2#OrganizationalUnitArnStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "OrganizationalUnitArn" + } + } + }, + "com.amazonaws.ec2#OutpostArn": { + "type": "string", + "traits": { + "smithy.api#pattern": "^arn:aws([a-z-]+)?:outposts:[a-z\\d-]+:\\d{12}:outpost/op-[a-f0-9]{17}$" + } + }, + "com.amazonaws.ec2#OutpostLag": { + "type": "structure", + "members": { + "OutpostArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OutpostArn", + "smithy.api#documentation": "

The Amazon Resource Number (ARN) of the Outpost LAG.

", + "smithy.api#xmlName": "outpostArn" + } + }, + "OwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Outpost LAG owner.

", + "smithy.api#xmlName": "ownerId" + } + }, + "State": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the Outpost LAG.

", + "smithy.api#xmlName": "state" + } + }, + "OutpostLagId": { + "target": "com.amazonaws.ec2#OutpostLagId", + "traits": { + "aws.protocols#ec2QueryName": "OutpostLagId", + "smithy.api#documentation": "

The ID of the Outpost LAG.

", + "smithy.api#xmlName": "outpostLagId" + } + }, + "LocalGatewayVirtualInterfaceIds": { + "target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceIdSet", + "traits": { + "aws.protocols#ec2QueryName": "LocalGatewayVirtualInterfaceIdSet", + "smithy.api#documentation": "

The IDs of the local gateway virtual interfaces associated with the Outpost LAG.

", + "smithy.api#xmlName": "localGatewayVirtualInterfaceIdSet" + } + }, + "ServiceLinkVirtualInterfaceIds": { + "target": "com.amazonaws.ec2#ServiceLinkVirtualInterfaceIdSet", + "traits": { + "aws.protocols#ec2QueryName": "ServiceLinkVirtualInterfaceIdSet", + "smithy.api#documentation": "

The service link virtual interface IDs associated with the Outpost LAG.

", + "smithy.api#xmlName": "serviceLinkVirtualInterfaceIdSet" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags associated with the Outpost LAG.

", + "smithy.api#xmlName": "tagSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes an Outpost link aggregation group (LAG).

" + } + }, + "com.amazonaws.ec2#OutpostLagId": { + "type": "string" + }, + "com.amazonaws.ec2#OutpostLagIdSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#OutpostLagId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#OutpostLagMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#OutpostLagSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#OutpostLag", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#OwnerStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "Owner" + } + } + }, + "com.amazonaws.ec2#PacketHeaderStatement": { + "type": "structure", + "members": { + "SourceAddresses": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "aws.protocols#ec2QueryName": "SourceAddressSet", + "smithy.api#documentation": "

The source addresses.

", + "smithy.api#xmlName": "sourceAddressSet" + } + }, + "DestinationAddresses": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "aws.protocols#ec2QueryName": "DestinationAddressSet", + "smithy.api#documentation": "

The destination addresses.

", + "smithy.api#xmlName": "destinationAddressSet" + } + }, + "SourcePorts": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "aws.protocols#ec2QueryName": "SourcePortSet", + "smithy.api#documentation": "

The source ports.

", + "smithy.api#xmlName": "sourcePortSet" + } + }, + "DestinationPorts": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "aws.protocols#ec2QueryName": "DestinationPortSet", + "smithy.api#documentation": "

The destination ports.

", + "smithy.api#xmlName": "destinationPortSet" + } + }, + "SourcePrefixLists": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "aws.protocols#ec2QueryName": "SourcePrefixListSet", + "smithy.api#documentation": "

The source prefix lists.

", + "smithy.api#xmlName": "sourcePrefixListSet" + } + }, + "DestinationPrefixLists": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "aws.protocols#ec2QueryName": "DestinationPrefixListSet", + "smithy.api#documentation": "

The destination prefix lists.

", + "smithy.api#xmlName": "destinationPrefixListSet" + } + }, + "Protocols": { + "target": "com.amazonaws.ec2#ProtocolList", + "traits": { + "aws.protocols#ec2QueryName": "ProtocolSet", + "smithy.api#documentation": "

The protocols.

", + "smithy.api#xmlName": "protocolSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a packet header statement.

" + } + }, + "com.amazonaws.ec2#PacketHeaderStatementRequest": { + "type": "structure", + "members": { + "SourceAddresses": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The source addresses.

", + "smithy.api#xmlName": "SourceAddress" + } + }, + "DestinationAddresses": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The destination addresses.

", + "smithy.api#xmlName": "DestinationAddress" + } + }, + "SourcePorts": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The source ports.

", + "smithy.api#xmlName": "SourcePort" + } + }, + "DestinationPorts": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The destination ports.

", + "smithy.api#xmlName": "DestinationPort" + } + }, + "SourcePrefixLists": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The source prefix lists.

", + "smithy.api#xmlName": "SourcePrefixList" + } + }, + "DestinationPrefixLists": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The destination prefix lists.

", + "smithy.api#xmlName": "DestinationPrefixList" + } + }, + "Protocols": { + "target": "com.amazonaws.ec2#ProtocolList", + "traits": { + "smithy.api#documentation": "

The protocols.

", + "smithy.api#xmlName": "Protocol" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a packet header statement.

" + } + }, + "com.amazonaws.ec2#PartitionLoadFrequency": { + "type": "enum", + "members": { + "NONE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "none" + } + }, + "DAILY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "daily" + } + }, + "WEEKLY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "weekly" + } + }, + "MONTHLY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "monthly" + } + } + } + }, + "com.amazonaws.ec2#PasswordData": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.ec2#PathComponent": { + "type": "structure", + "members": { + "SequenceNumber": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "SequenceNumber", + "smithy.api#documentation": "

The sequence number.

", + "smithy.api#xmlName": "sequenceNumber" + } + }, + "AclRule": { + "target": "com.amazonaws.ec2#AnalysisAclRule", + "traits": { + "aws.protocols#ec2QueryName": "AclRule", + "smithy.api#documentation": "

The network ACL rule.

", + "smithy.api#xmlName": "aclRule" + } + }, + "AttachedTo": { + "target": "com.amazonaws.ec2#AnalysisComponent", + "traits": { + "aws.protocols#ec2QueryName": "AttachedTo", + "smithy.api#documentation": "

The resource to which the path component is attached.

", + "smithy.api#xmlName": "attachedTo" + } + }, + "Component": { + "target": "com.amazonaws.ec2#AnalysisComponent", + "traits": { + "aws.protocols#ec2QueryName": "Component", + "smithy.api#documentation": "

The component.

", + "smithy.api#xmlName": "component" + } + }, + "DestinationVpc": { + "target": "com.amazonaws.ec2#AnalysisComponent", + "traits": { + "aws.protocols#ec2QueryName": "DestinationVpc", + "smithy.api#documentation": "

The destination VPC.

", + "smithy.api#xmlName": "destinationVpc" + } + }, + "OutboundHeader": { + "target": "com.amazonaws.ec2#AnalysisPacketHeader", + "traits": { + "aws.protocols#ec2QueryName": "OutboundHeader", + "smithy.api#documentation": "

The outbound header.

", + "smithy.api#xmlName": "outboundHeader" + } + }, + "InboundHeader": { + "target": "com.amazonaws.ec2#AnalysisPacketHeader", + "traits": { + "aws.protocols#ec2QueryName": "InboundHeader", + "smithy.api#documentation": "

The inbound header.

", + "smithy.api#xmlName": "inboundHeader" + } + }, + "RouteTableRoute": { + "target": "com.amazonaws.ec2#AnalysisRouteTableRoute", + "traits": { + "aws.protocols#ec2QueryName": "RouteTableRoute", + "smithy.api#documentation": "

The route table route.

", + "smithy.api#xmlName": "routeTableRoute" + } + }, + "SecurityGroupRule": { + "target": "com.amazonaws.ec2#AnalysisSecurityGroupRule", + "traits": { + "aws.protocols#ec2QueryName": "SecurityGroupRule", + "smithy.api#documentation": "

The security group rule.

", + "smithy.api#xmlName": "securityGroupRule" + } + }, + "SourceVpc": { + "target": "com.amazonaws.ec2#AnalysisComponent", + "traits": { + "aws.protocols#ec2QueryName": "SourceVpc", + "smithy.api#documentation": "

The source VPC.

", + "smithy.api#xmlName": "sourceVpc" + } + }, + "Subnet": { + "target": "com.amazonaws.ec2#AnalysisComponent", + "traits": { + "aws.protocols#ec2QueryName": "Subnet", + "smithy.api#documentation": "

The subnet.

", + "smithy.api#xmlName": "subnet" + } + }, + "Vpc": { + "target": "com.amazonaws.ec2#AnalysisComponent", + "traits": { + "aws.protocols#ec2QueryName": "Vpc", + "smithy.api#documentation": "

The component VPC.

", + "smithy.api#xmlName": "vpc" + } + }, + "AdditionalDetails": { + "target": "com.amazonaws.ec2#AdditionalDetailList", + "traits": { + "aws.protocols#ec2QueryName": "AdditionalDetailSet", + "smithy.api#documentation": "

The additional details.

", + "smithy.api#xmlName": "additionalDetailSet" + } + }, + "TransitGateway": { + "target": "com.amazonaws.ec2#AnalysisComponent", + "traits": { + "aws.protocols#ec2QueryName": "TransitGateway", + "smithy.api#documentation": "

The transit gateway.

", + "smithy.api#xmlName": "transitGateway" + } + }, + "TransitGatewayRouteTableRoute": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableRoute", + "traits": { + "aws.protocols#ec2QueryName": "TransitGatewayRouteTableRoute", + "smithy.api#documentation": "

The route in a transit gateway route table.

", + "smithy.api#xmlName": "transitGatewayRouteTableRoute" + } + }, + "Explanations": { + "target": "com.amazonaws.ec2#ExplanationList", + "traits": { + "aws.protocols#ec2QueryName": "ExplanationSet", + "smithy.api#documentation": "

The explanation codes.

", + "smithy.api#xmlName": "explanationSet" + } + }, + "ElasticLoadBalancerListener": { + "target": "com.amazonaws.ec2#AnalysisComponent", + "traits": { + "aws.protocols#ec2QueryName": "ElasticLoadBalancerListener", + "smithy.api#documentation": "

The load balancer listener.

", + "smithy.api#xmlName": "elasticLoadBalancerListener" + } + }, + "FirewallStatelessRule": { + "target": "com.amazonaws.ec2#FirewallStatelessRule", + "traits": { + "aws.protocols#ec2QueryName": "FirewallStatelessRule", + "smithy.api#documentation": "

The Network Firewall stateless rule.

", + "smithy.api#xmlName": "firewallStatelessRule" + } + }, + "FirewallStatefulRule": { + "target": "com.amazonaws.ec2#FirewallStatefulRule", + "traits": { + "aws.protocols#ec2QueryName": "FirewallStatefulRule", + "smithy.api#documentation": "

The Network Firewall stateful rule.

", + "smithy.api#xmlName": "firewallStatefulRule" + } + }, + "ServiceName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ServiceName", + "smithy.api#documentation": "

The name of the VPC endpoint service.

", + "smithy.api#xmlName": "serviceName" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a path component.

" + } + }, + "com.amazonaws.ec2#PathComponentList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PathComponent", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PathFilter": { + "type": "structure", + "members": { + "SourceAddress": { + "target": "com.amazonaws.ec2#IpAddress", + "traits": { + "aws.protocols#ec2QueryName": "SourceAddress", + "smithy.api#documentation": "

The source IPv4 address.

", + "smithy.api#xmlName": "sourceAddress" + } + }, + "SourcePortRange": { + "target": "com.amazonaws.ec2#FilterPortRange", + "traits": { + "aws.protocols#ec2QueryName": "SourcePortRange", + "smithy.api#documentation": "

The source port range.

", + "smithy.api#xmlName": "sourcePortRange" + } + }, + "DestinationAddress": { + "target": "com.amazonaws.ec2#IpAddress", + "traits": { + "aws.protocols#ec2QueryName": "DestinationAddress", + "smithy.api#documentation": "

The destination IPv4 address.

", + "smithy.api#xmlName": "destinationAddress" + } + }, + "DestinationPortRange": { + "target": "com.amazonaws.ec2#FilterPortRange", + "traits": { + "aws.protocols#ec2QueryName": "DestinationPortRange", + "smithy.api#documentation": "

The destination port range.

", + "smithy.api#xmlName": "destinationPortRange" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a set of filters for a path analysis. Use path filters to scope the analysis when\n there can be multiple resulting paths.

" + } + }, + "com.amazonaws.ec2#PathRequestFilter": { + "type": "structure", + "members": { + "SourceAddress": { + "target": "com.amazonaws.ec2#IpAddress", + "traits": { + "smithy.api#documentation": "

The source IPv4 address.

" + } + }, + "SourcePortRange": { + "target": "com.amazonaws.ec2#RequestFilterPortRange", + "traits": { + "smithy.api#documentation": "

The source port range.

" + } + }, + "DestinationAddress": { + "target": "com.amazonaws.ec2#IpAddress", + "traits": { + "smithy.api#documentation": "

The destination IPv4 address.

" + } + }, + "DestinationPortRange": { + "target": "com.amazonaws.ec2#RequestFilterPortRange", + "traits": { + "smithy.api#documentation": "

The destination port range.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a set of filters for a path analysis. Use path filters to scope the analysis when\n there can be multiple resulting paths.

" + } + }, + "com.amazonaws.ec2#PathStatement": { + "type": "structure", + "members": { + "PacketHeaderStatement": { + "target": "com.amazonaws.ec2#PacketHeaderStatement", + "traits": { + "aws.protocols#ec2QueryName": "PacketHeaderStatement", + "smithy.api#documentation": "

The packet header statement.

", + "smithy.api#xmlName": "packetHeaderStatement" + } + }, + "ResourceStatement": { + "target": "com.amazonaws.ec2#ResourceStatement", + "traits": { + "aws.protocols#ec2QueryName": "ResourceStatement", + "smithy.api#documentation": "

The resource statement.

", + "smithy.api#xmlName": "resourceStatement" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a path statement.

" + } + }, + "com.amazonaws.ec2#PathStatementRequest": { + "type": "structure", + "members": { + "PacketHeaderStatement": { + "target": "com.amazonaws.ec2#PacketHeaderStatementRequest", + "traits": { + "smithy.api#documentation": "

The packet header statement.

" + } + }, + "ResourceStatement": { + "target": "com.amazonaws.ec2#ResourceStatementRequest", + "traits": { + "smithy.api#documentation": "

The resource statement.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a path statement.

" + } + }, + "com.amazonaws.ec2#PayerResponsibility": { + "type": "enum", + "members": { + "ServiceOwner": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ServiceOwner" + } + } + } + }, + "com.amazonaws.ec2#PaymentOption": { + "type": "enum", + "members": { + "ALL_UPFRONT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AllUpfront" + } + }, + "PARTIAL_UPFRONT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PartialUpfront" + } + }, + "NO_UPFRONT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NoUpfront" + } + } + } + }, + "com.amazonaws.ec2#PciId": { + "type": "structure", + "members": { + "DeviceId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The ID of the device.

" + } + }, + "VendorId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The ID of the vendor.

" + } + }, + "SubsystemId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The ID of the subsystem.

" + } + }, + "SubsystemVendorId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The ID of the vendor for the subsystem.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the data that identifies an Amazon FPGA image (AFI) on the PCI bus.

" + } + }, + "com.amazonaws.ec2#PeakBandwidthInGbps": { + "type": "double" + }, + "com.amazonaws.ec2#PeeringAttachmentStatus": { + "type": "structure", + "members": { + "Code": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The status code.

", + "smithy.api#xmlName": "code" + } + }, + "Message": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Message", + "smithy.api#documentation": "

The status message, if applicable.

", + "smithy.api#xmlName": "message" + } + } + }, + "traits": { + "smithy.api#documentation": "

The status of the transit gateway peering attachment.

" + } + }, + "com.amazonaws.ec2#PeeringConnectionOptions": { + "type": "structure", + "members": { + "AllowDnsResolutionFromRemoteVpc": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "AllowDnsResolutionFromRemoteVpc", + "smithy.api#documentation": "

If true, the public DNS hostnames of instances in the specified VPC resolve to private\n IP addresses when queried from instances in the peer VPC.

", + "smithy.api#xmlName": "allowDnsResolutionFromRemoteVpc" + } + }, + "AllowEgressFromLocalClassicLinkToRemoteVpc": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "AllowEgressFromLocalClassicLinkToRemoteVpc", + "smithy.api#documentation": "

Deprecated.

", + "smithy.api#xmlName": "allowEgressFromLocalClassicLinkToRemoteVpc" + } + }, + "AllowEgressFromLocalVpcToRemoteClassicLink": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "AllowEgressFromLocalVpcToRemoteClassicLink", + "smithy.api#documentation": "

Deprecated.

", + "smithy.api#xmlName": "allowEgressFromLocalVpcToRemoteClassicLink" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the VPC peering connection options.

" + } + }, + "com.amazonaws.ec2#PeeringConnectionOptionsRequest": { + "type": "structure", + "members": { + "AllowDnsResolutionFromRemoteVpc": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

If true, enables a local VPC to resolve public DNS hostnames to private IP addresses \n when queried from instances in the peer VPC.

" + } + }, + "AllowEgressFromLocalClassicLinkToRemoteVpc": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Deprecated.

" + } + }, + "AllowEgressFromLocalVpcToRemoteClassicLink": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Deprecated.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The VPC peering connection options.

" + } + }, + "com.amazonaws.ec2#PeeringTgwInfo": { + "type": "structure", + "members": { + "TransitGatewayId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "TransitGatewayId", + "smithy.api#documentation": "

The ID of the transit gateway.

", + "smithy.api#xmlName": "transitGatewayId" + } + }, + "CoreNetworkId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "CoreNetworkId", + "smithy.api#documentation": "

The ID of the core network where the transit gateway peer is located.

", + "smithy.api#xmlName": "coreNetworkId" + } + }, + "OwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the transit gateway.

", + "smithy.api#xmlName": "ownerId" + } + }, + "Region": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Region", + "smithy.api#documentation": "

The Region of the transit gateway.

", + "smithy.api#xmlName": "region" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about the transit gateway in the peering attachment.

" + } + }, + "com.amazonaws.ec2#PerformanceFactorReference": { + "type": "structure", + "members": { + "InstanceFamily": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "InstanceFamily", + "smithy.api#documentation": "

The instance family to use as a baseline reference.

\n \n

Ensure that you specify the correct value for the instance family. The instance\n family is everything before the period (.) in the instance type name. For\n example, in the instance type c6i.large, the instance family is\n c6i, not c6. For more information, see Amazon EC2\n instance type naming conventions in Amazon EC2 Instance\n Types.

\n
\n

The following instance families are not supported for performance\n protection:

\n \n

If you enable performance protection by specifying a supported instance family, the\n returned instance types will exclude the above unsupported instance families.

\n

If you specify an unsupported instance family as a value for baseline performance, the\n API returns an empty response for GetInstanceTypesFromInstanceRequirements and an exception for CreateFleet, RequestSpotFleet, ModifyFleet, and ModifySpotFleetRequest.

", + "smithy.api#xmlName": "instanceFamily" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specify an instance family to use as the baseline reference for CPU performance. All\n instance types that match your specified attributes will be compared against the CPU\n performance of the referenced instance family, regardless of CPU manufacturer or\n architecture.

\n \n

Currently, only one instance family can be specified in the list.

\n
" + } + }, + "com.amazonaws.ec2#PerformanceFactorReferenceRequest": { + "type": "structure", + "members": { + "InstanceFamily": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The instance family to use as a baseline reference.

\n \n

Ensure that you specify the correct value for the instance family. The instance\n family is everything before the period (.) in the instance type name. For\n example, in the instance type c6i.large, the instance family is\n c6i, not c6. For more information, see Amazon EC2\n instance type naming conventions in Amazon EC2 Instance\n Types.

\n
\n

The following instance families are not supported for performance\n protection:

\n \n

If you enable performance protection by specifying a supported instance family, the\n returned instance types will exclude the above unsupported instance families.

\n

If you specify an unsupported instance family as a value for baseline performance, the\n API returns an empty response for GetInstanceTypesFromInstanceRequirements and an exception for CreateFleet, RequestSpotFleet, ModifyFleet, and ModifySpotFleetRequest.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specify an instance family to use as the baseline reference for CPU performance. All\n instance types that match your specified attributes will be compared against the CPU\n performance of the referenced instance family, regardless of CPU manufacturer or\n architecture.

\n \n

Currently, only one instance family can be specified in the list.

\n
" + } + }, + "com.amazonaws.ec2#PerformanceFactorReferenceSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PerformanceFactorReference", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PerformanceFactorReferenceSetRequest": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PerformanceFactorReferenceRequest", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PeriodType": { + "type": "enum", + "members": { + "five_minutes": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "five-minutes" + } + }, + "fifteen_minutes": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "fifteen-minutes" + } + }, + "one_hour": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "one-hour" + } + }, + "three_hours": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "three-hours" + } + }, + "one_day": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "one-day" + } + }, + "one_week": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "one-week" + } + } + } + }, + "com.amazonaws.ec2#PermissionGroup": { + "type": "enum", + "members": { + "all": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "all" + } + } + } + }, + "com.amazonaws.ec2#Phase1DHGroupNumbersList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Phase1DHGroupNumbersListValue", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Phase1DHGroupNumbersListValue": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "Value", + "smithy.api#documentation": "

The Diffie-Hellmann group number.

", + "smithy.api#xmlName": "value" + } + } + }, + "traits": { + "smithy.api#documentation": "

The Diffie-Hellmann group number for phase 1 IKE negotiations.

" + } + }, + "com.amazonaws.ec2#Phase1DHGroupNumbersRequestList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Phase1DHGroupNumbersRequestListValue", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Phase1DHGroupNumbersRequestListValue": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The Diffie-Hellmann group number.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies a Diffie-Hellman group number for the VPN tunnel for phase 1 IKE\n negotiations.

" + } + }, + "com.amazonaws.ec2#Phase1EncryptionAlgorithmsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Phase1EncryptionAlgorithmsListValue", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Phase1EncryptionAlgorithmsListValue": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Value", + "smithy.api#documentation": "

The value for the encryption algorithm.

", + "smithy.api#xmlName": "value" + } + } + }, + "traits": { + "smithy.api#documentation": "

The encryption algorithm for phase 1 IKE negotiations.

" + } + }, + "com.amazonaws.ec2#Phase1EncryptionAlgorithmsRequestList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Phase1EncryptionAlgorithmsRequestListValue", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Phase1EncryptionAlgorithmsRequestListValue": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The value for the encryption algorithm.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the encryption algorithm for the VPN tunnel for phase 1 IKE\n negotiations.

" + } + }, + "com.amazonaws.ec2#Phase1IntegrityAlgorithmsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Phase1IntegrityAlgorithmsListValue", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Phase1IntegrityAlgorithmsListValue": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Value", + "smithy.api#documentation": "

The value for the integrity algorithm.

", + "smithy.api#xmlName": "value" + } + } + }, + "traits": { + "smithy.api#documentation": "

The integrity algorithm for phase 1 IKE negotiations.

" + } + }, + "com.amazonaws.ec2#Phase1IntegrityAlgorithmsRequestList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Phase1IntegrityAlgorithmsRequestListValue", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Phase1IntegrityAlgorithmsRequestListValue": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The value for the integrity algorithm.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the integrity algorithm for the VPN tunnel for phase 1 IKE\n negotiations.

" + } + }, + "com.amazonaws.ec2#Phase2DHGroupNumbersList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Phase2DHGroupNumbersListValue", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Phase2DHGroupNumbersListValue": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "Value", + "smithy.api#documentation": "

The Diffie-Hellmann group number.

", + "smithy.api#xmlName": "value" + } + } + }, + "traits": { + "smithy.api#documentation": "

The Diffie-Hellmann group number for phase 2 IKE negotiations.

" + } + }, + "com.amazonaws.ec2#Phase2DHGroupNumbersRequestList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Phase2DHGroupNumbersRequestListValue", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Phase2DHGroupNumbersRequestListValue": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The Diffie-Hellmann group number.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies a Diffie-Hellman group number for the VPN tunnel for phase 2 IKE\n negotiations.

" + } + }, + "com.amazonaws.ec2#Phase2EncryptionAlgorithmsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Phase2EncryptionAlgorithmsListValue", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Phase2EncryptionAlgorithmsListValue": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Value", + "smithy.api#documentation": "

The encryption algorithm.

", + "smithy.api#xmlName": "value" + } + } + }, + "traits": { + "smithy.api#documentation": "

The encryption algorithm for phase 2 IKE negotiations.

" + } + }, + "com.amazonaws.ec2#Phase2EncryptionAlgorithmsRequestList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Phase2EncryptionAlgorithmsRequestListValue", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Phase2EncryptionAlgorithmsRequestListValue": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The encryption algorithm.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the encryption algorithm for the VPN tunnel for phase 2 IKE\n negotiations.

" + } + }, + "com.amazonaws.ec2#Phase2IntegrityAlgorithmsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Phase2IntegrityAlgorithmsListValue", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Phase2IntegrityAlgorithmsListValue": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Value", + "smithy.api#documentation": "

The integrity algorithm.

", + "smithy.api#xmlName": "value" + } + } + }, + "traits": { + "smithy.api#documentation": "

The integrity algorithm for phase 2 IKE negotiations.

" + } + }, + "com.amazonaws.ec2#Phase2IntegrityAlgorithmsRequestList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Phase2IntegrityAlgorithmsRequestListValue", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Phase2IntegrityAlgorithmsRequestListValue": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The integrity algorithm.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the integrity algorithm for the VPN tunnel for phase 2 IKE\n negotiations.

" + } + }, + "com.amazonaws.ec2#PhcSupport": { + "type": "enum", + "members": { + "UNSUPPORTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "unsupported" + } + }, + "SUPPORTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "supported" + } + } + } + }, + "com.amazonaws.ec2#Placement": { + "type": "structure", + "members": { + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#AvailabilityZoneId", + "traits": { + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone of the instance.

\n

On input, you can specify AvailabilityZone or AvailabilityZoneId, \n but not both. If you specify neither one, Amazon EC2 automatically selects an Availability Zone\n for you.

\n

This parameter is not supported for CreateFleet.

", + "smithy.api#xmlName": "availabilityZoneId" + } + }, + "Affinity": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Affinity", + "smithy.api#documentation": "

The affinity setting for the instance on the Dedicated Host.

\n

This parameter is not supported for CreateFleet or ImportInstance.

", + "smithy.api#xmlName": "affinity" + } + }, + "GroupName": { + "target": "com.amazonaws.ec2#PlacementGroupName", + "traits": { + "aws.protocols#ec2QueryName": "GroupName", + "smithy.api#documentation": "

The name of the placement group that the instance is in.

\n

On input, you can specify GroupId or GroupName,\n but not both.

", + "smithy.api#xmlName": "groupName" + } + }, + "PartitionNumber": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "PartitionNumber", + "smithy.api#documentation": "

The number of the partition that the instance is in. Valid only if the placement group\n strategy is set to partition.

\n

This parameter is not supported for CreateFleet.

", + "smithy.api#xmlName": "partitionNumber" + } + }, + "HostId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "HostId", + "smithy.api#documentation": "

The ID of the Dedicated Host on which the instance resides.

\n

This parameter is not supported for CreateFleet or ImportInstance.

", + "smithy.api#xmlName": "hostId" + } + }, + "Tenancy": { + "target": "com.amazonaws.ec2#Tenancy", + "traits": { + "aws.protocols#ec2QueryName": "Tenancy", + "smithy.api#documentation": "

The tenancy of the instance. An instance with a\n tenancy of dedicated runs on single-tenant hardware.

\n

This parameter is not supported for CreateFleet. The\n host tenancy is not supported for ImportInstance or\n for T3 instances that are configured for the unlimited CPU credit\n option.

", + "smithy.api#xmlName": "tenancy" + } + }, + "SpreadDomain": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "SpreadDomain", + "smithy.api#documentation": "

Reserved for future use.

", + "smithy.api#xmlName": "spreadDomain" + } + }, + "HostResourceGroupArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "HostResourceGroupArn", + "smithy.api#documentation": "

The ARN of the host resource group in which to launch the instances.

\n

On input, if you specify this parameter, either omit the Tenancy parameter or set it to host.

\n

This parameter is not supported for CreateFleet.

", + "smithy.api#xmlName": "hostResourceGroupArn" + } + }, + "GroupId": { + "target": "com.amazonaws.ec2#PlacementGroupId", + "traits": { + "aws.protocols#ec2QueryName": "GroupId", + "smithy.api#documentation": "

The ID of the placement group that the instance is in.

\n

On input, you can specify GroupId or GroupName,\n but not both.

", + "smithy.api#xmlName": "groupId" + } + }, + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone of the instance.

\n

On input, you can specify AvailabilityZone or AvailabilityZoneId, \n but not both. If you specify neither one, Amazon EC2 automatically selects an Availability Zone\n for you.

\n

This parameter is not supported for CreateFleet.

", + "smithy.api#xmlName": "availabilityZone" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the placement of an instance.

" + } + }, + "com.amazonaws.ec2#PlacementGroup": { + "type": "structure", + "members": { + "GroupName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "GroupName", + "smithy.api#documentation": "

The name of the placement group.

", + "smithy.api#xmlName": "groupName" + } + }, + "State": { + "target": "com.amazonaws.ec2#PlacementGroupState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the placement group.

", + "smithy.api#xmlName": "state" + } + }, + "Strategy": { + "target": "com.amazonaws.ec2#PlacementStrategy", + "traits": { + "aws.protocols#ec2QueryName": "Strategy", + "smithy.api#documentation": "

The placement strategy.

", + "smithy.api#xmlName": "strategy" + } + }, + "PartitionCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "PartitionCount", + "smithy.api#documentation": "

The number of partitions. Valid only if strategy is\n set to partition.

", + "smithy.api#xmlName": "partitionCount" + } + }, + "GroupId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "GroupId", + "smithy.api#documentation": "

The ID of the placement group.

", + "smithy.api#xmlName": "groupId" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags applied to the placement group.

", + "smithy.api#xmlName": "tagSet" + } + }, + "GroupArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "GroupArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the placement group.

", + "smithy.api#xmlName": "groupArn" + } + }, + "SpreadLevel": { + "target": "com.amazonaws.ec2#SpreadLevel", + "traits": { + "aws.protocols#ec2QueryName": "SpreadLevel", + "smithy.api#documentation": "

The spread level for the placement group. Only Outpost placement\n groups can be spread across hosts.

", + "smithy.api#xmlName": "spreadLevel" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a placement group.

" + } + }, + "com.amazonaws.ec2#PlacementGroupArn": { + "type": "string", + "traits": { + "smithy.api#pattern": "^arn:aws([a-z-]+)?:ec2:[a-z\\d-]+:\\d{12}:placement-group/^.{1,255}$" + } + }, + "com.amazonaws.ec2#PlacementGroupId": { + "type": "string" + }, + "com.amazonaws.ec2#PlacementGroupIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PlacementGroupId", + "traits": { + "smithy.api#xmlName": "GroupId" + } + } + }, + "com.amazonaws.ec2#PlacementGroupInfo": { + "type": "structure", + "members": { + "SupportedStrategies": { + "target": "com.amazonaws.ec2#PlacementGroupStrategyList", + "traits": { + "aws.protocols#ec2QueryName": "SupportedStrategies", + "smithy.api#documentation": "

The supported placement group types.

", + "smithy.api#xmlName": "supportedStrategies" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the placement group support of the instance type.

" + } + }, + "com.amazonaws.ec2#PlacementGroupList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PlacementGroup", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PlacementGroupName": { + "type": "string" + }, + "com.amazonaws.ec2#PlacementGroupState": { + "type": "enum", + "members": { + "pending": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pending" + } + }, + "available": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "available" + } + }, + "deleting": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "deleting" + } + }, + "deleted": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "deleted" + } + } + } + }, + "com.amazonaws.ec2#PlacementGroupStrategy": { + "type": "enum", + "members": { + "cluster": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "cluster" + } + }, + "partition": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "partition" + } + }, + "spread": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "spread" + } + } + } + }, + "com.amazonaws.ec2#PlacementGroupStrategyList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PlacementGroupStrategy", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PlacementGroupStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PlacementGroupName" + } + }, + "com.amazonaws.ec2#PlacementResponse": { + "type": "structure", + "members": { + "GroupName": { + "target": "com.amazonaws.ec2#PlacementGroupName", + "traits": { + "aws.protocols#ec2QueryName": "GroupName", + "smithy.api#documentation": "

The name of the placement group that the instance is in.

", + "smithy.api#xmlName": "groupName" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the placement of an instance.

" + } + }, + "com.amazonaws.ec2#PlacementStrategy": { + "type": "enum", + "members": { + "cluster": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "cluster" + } + }, + "spread": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "spread" + } + }, + "partition": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "partition" + } + } + } + }, + "com.amazonaws.ec2#PlatformValues": { + "type": "enum", + "members": { + "Windows": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Windows" + } + } + } + }, + "com.amazonaws.ec2#PoolCidrBlock": { + "type": "structure", + "members": { + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PoolCidrBlock", + "smithy.api#documentation": "

The CIDR block.

", + "smithy.api#xmlName": "poolCidrBlock" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a CIDR block for an address pool.

" + } + }, + "com.amazonaws.ec2#PoolCidrBlocksSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PoolCidrBlock", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PoolMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 10 + } + } + }, + "com.amazonaws.ec2#Port": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 65535 + } + } + }, + "com.amazonaws.ec2#PortRange": { + "type": "structure", + "members": { + "From": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "From", + "smithy.api#documentation": "

The first port in the range.

", + "smithy.api#xmlName": "from" + } + }, + "To": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "To", + "smithy.api#documentation": "

The last port in the range.

", + "smithy.api#xmlName": "to" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a range of ports.

" + } + }, + "com.amazonaws.ec2#PortRangeList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PortRange", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PrefixList": { + "type": "structure", + "members": { + "Cidrs": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "aws.protocols#ec2QueryName": "CidrSet", + "smithy.api#documentation": "

The IP address range of the Amazon Web Services service.

", + "smithy.api#xmlName": "cidrSet" + } + }, + "PrefixListId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PrefixListId", + "smithy.api#documentation": "

The ID of the prefix.

", + "smithy.api#xmlName": "prefixListId" + } + }, + "PrefixListName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PrefixListName", + "smithy.api#documentation": "

The name of the prefix.

", + "smithy.api#xmlName": "prefixListName" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes prefixes for Amazon Web Services services.

" + } + }, + "com.amazonaws.ec2#PrefixListAssociation": { + "type": "structure", + "members": { + "ResourceId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ResourceId", + "smithy.api#documentation": "

The ID of the resource.

", + "smithy.api#xmlName": "resourceId" + } + }, + "ResourceOwner": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ResourceOwner", + "smithy.api#documentation": "

The owner of the resource.

", + "smithy.api#xmlName": "resourceOwner" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the resource with which a prefix list is associated.

" + } + }, + "com.amazonaws.ec2#PrefixListAssociationSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PrefixListAssociation", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PrefixListEntry": { + "type": "structure", + "members": { + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Cidr", + "smithy.api#documentation": "

The CIDR block.

", + "smithy.api#xmlName": "cidr" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The description.

", + "smithy.api#xmlName": "description" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a prefix list entry.

" + } + }, + "com.amazonaws.ec2#PrefixListEntrySet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PrefixListEntry", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PrefixListId": { + "type": "structure", + "members": { + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description for the security group rule that references this prefix list ID.

\n

Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9,\n spaces, and ._-:/()#,@[]+=;{}!$*

", + "smithy.api#xmlName": "description" + } + }, + "PrefixListId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PrefixListId", + "smithy.api#documentation": "

The ID of the prefix.

", + "smithy.api#xmlName": "prefixListId" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a prefix list ID.

" + } + }, + "com.amazonaws.ec2#PrefixListIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PrefixListId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PrefixListIdSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PrefixListMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.ec2#PrefixListResourceId": { + "type": "string" + }, + "com.amazonaws.ec2#PrefixListResourceIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PrefixListResourceId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PrefixListSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PrefixList", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PrefixListState": { + "type": "enum", + "members": { + "create_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "create-in-progress" + } + }, + "create_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "create-complete" + } + }, + "create_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "create-failed" + } + }, + "modify_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "modify-in-progress" + } + }, + "modify_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "modify-complete" + } + }, + "modify_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "modify-failed" + } + }, + "restore_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "restore-in-progress" + } + }, + "restore_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "restore-complete" + } + }, + "restore_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "restore-failed" + } + }, + "delete_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-in-progress" + } + }, + "delete_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-complete" + } + }, + "delete_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-failed" + } + } + } + }, + "com.amazonaws.ec2#PriceSchedule": { + "type": "structure", + "members": { + "Active": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Active", + "smithy.api#documentation": "

The current price schedule, as determined by the term remaining for the Reserved Instance\n in the listing.

\n

A specific price schedule is always in effect, but only one price schedule can be active\n at any time. Take, for example, a Reserved Instance listing that has five months remaining in\n its term. When you specify price schedules for five months and two months, this means that\n schedule 1, covering the first three months of the remaining term, will be active during\n months 5, 4, and 3. Then schedule 2, covering the last two months of the term, will be active\n for months 2 and 1.

", + "smithy.api#xmlName": "active" + } + }, + "CurrencyCode": { + "target": "com.amazonaws.ec2#CurrencyCodeValues", + "traits": { + "aws.protocols#ec2QueryName": "CurrencyCode", + "smithy.api#documentation": "

The currency for transacting the Reserved Instance resale. At this time, the only\n supported currency is USD.

", + "smithy.api#xmlName": "currencyCode" + } + }, + "Price": { + "target": "com.amazonaws.ec2#Double", + "traits": { + "aws.protocols#ec2QueryName": "Price", + "smithy.api#documentation": "

The fixed price for the term.

", + "smithy.api#xmlName": "price" + } + }, + "Term": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "aws.protocols#ec2QueryName": "Term", + "smithy.api#documentation": "

The number of months remaining in the reservation. For example, 2 is the second to the\n last month before the capacity reservation expires.

", + "smithy.api#xmlName": "term" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the price for a Reserved Instance.

" + } + }, + "com.amazonaws.ec2#PriceScheduleList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PriceSchedule", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PriceScheduleSpecification": { + "type": "structure", + "members": { + "Term": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "aws.protocols#ec2QueryName": "Term", + "smithy.api#documentation": "

The number of months remaining in the reservation. For example, 2 is the second to the\n last month before the capacity reservation expires.

", + "smithy.api#xmlName": "term" + } + }, + "Price": { + "target": "com.amazonaws.ec2#Double", + "traits": { + "aws.protocols#ec2QueryName": "Price", + "smithy.api#documentation": "

The fixed price for the term.

", + "smithy.api#xmlName": "price" + } + }, + "CurrencyCode": { + "target": "com.amazonaws.ec2#CurrencyCodeValues", + "traits": { + "aws.protocols#ec2QueryName": "CurrencyCode", + "smithy.api#documentation": "

The currency for transacting the Reserved Instance resale. At this time, the only\n supported currency is USD.

", + "smithy.api#xmlName": "currencyCode" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the price for a Reserved Instance.

" + } + }, + "com.amazonaws.ec2#PriceScheduleSpecificationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PriceScheduleSpecification", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PricingDetail": { + "type": "structure", + "members": { + "Count": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "Count", + "smithy.api#documentation": "

The number of reservations available for the price.

", + "smithy.api#xmlName": "count" + } + }, + "Price": { + "target": "com.amazonaws.ec2#Double", + "traits": { + "aws.protocols#ec2QueryName": "Price", + "smithy.api#documentation": "

The price per instance.

", + "smithy.api#xmlName": "price" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a Reserved Instance offering.

" + } + }, + "com.amazonaws.ec2#PricingDetailsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PricingDetail", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PrincipalIdFormat": { + "type": "structure", + "members": { + "Arn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Arn", + "smithy.api#documentation": "

PrincipalIdFormatARN description

", + "smithy.api#xmlName": "arn" + } + }, + "Statuses": { + "target": "com.amazonaws.ec2#IdFormatList", + "traits": { + "aws.protocols#ec2QueryName": "StatusSet", + "smithy.api#documentation": "

PrincipalIdFormatStatuses description

", + "smithy.api#xmlName": "statusSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

PrincipalIdFormat description

" + } + }, + "com.amazonaws.ec2#PrincipalIdFormatList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PrincipalIdFormat", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PrincipalType": { + "type": "enum", + "members": { + "All": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "All" + } + }, + "Service": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Service" + } + }, + "OrganizationUnit": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OrganizationUnit" + } + }, + "Account": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Account" + } + }, + "User": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "User" + } + }, + "Role": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Role" + } + } + } + }, + "com.amazonaws.ec2#Priority": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": -1, + "max": 65535 + } + } + }, + "com.amazonaws.ec2#PrivateDnsDetails": { + "type": "structure", + "members": { + "PrivateDnsName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PrivateDnsName", + "smithy.api#documentation": "

The private DNS name assigned to the VPC endpoint service.

", + "smithy.api#xmlName": "privateDnsName" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about the Private DNS name for interface endpoints.

" + } + }, + "com.amazonaws.ec2#PrivateDnsDetailsSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PrivateDnsDetails", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PrivateDnsNameConfiguration": { + "type": "structure", + "members": { + "State": { + "target": "com.amazonaws.ec2#DnsNameState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The verification state of the VPC endpoint service.

\n

>Consumers\n of the endpoint service can use the private name only when the state is\n verified.

", + "smithy.api#xmlName": "state" + } + }, + "Type": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Type", + "smithy.api#documentation": "

The endpoint service verification type, for example TXT.

", + "smithy.api#xmlName": "type" + } + }, + "Value": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Value", + "smithy.api#documentation": "

The value the service provider adds to the private DNS name domain record before verification.

", + "smithy.api#xmlName": "value" + } + }, + "Name": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Name", + "smithy.api#documentation": "

The name of the record subdomain the service provider needs to create. The service provider adds the value text to the name.

", + "smithy.api#xmlName": "name" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about the private DNS name for the service endpoint.

" + } + }, + "com.amazonaws.ec2#PrivateDnsNameOptionsOnLaunch": { + "type": "structure", + "members": { + "HostnameType": { + "target": "com.amazonaws.ec2#HostnameType", + "traits": { + "aws.protocols#ec2QueryName": "HostnameType", + "smithy.api#documentation": "

The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name\n must be based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name\n must be based on the instance ID. For dual-stack subnets, you can specify whether DNS\n names use the instance IPv4 address or the instance ID.

", + "smithy.api#xmlName": "hostnameType" + } + }, + "EnableResourceNameDnsARecord": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "EnableResourceNameDnsARecord", + "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS A\n records.

", + "smithy.api#xmlName": "enableResourceNameDnsARecord" + } + }, + "EnableResourceNameDnsAAAARecord": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "EnableResourceNameDnsAAAARecord", + "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostname with DNS AAAA\n records.

", + "smithy.api#xmlName": "enableResourceNameDnsAAAARecord" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the options for instance hostnames.

" + } + }, + "com.amazonaws.ec2#PrivateDnsNameOptionsRequest": { + "type": "structure", + "members": { + "HostnameType": { + "target": "com.amazonaws.ec2#HostnameType", + "traits": { + "smithy.api#documentation": "

The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name\n must be based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name\n must be based on the instance ID. For dual-stack subnets, you can specify whether DNS\n names use the instance IPv4 address or the instance ID.

" + } + }, + "EnableResourceNameDnsARecord": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS A\n records.

" + } + }, + "EnableResourceNameDnsAAAARecord": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA\n records.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the options for instance hostnames.

" + } + }, + "com.amazonaws.ec2#PrivateDnsNameOptionsResponse": { + "type": "structure", + "members": { + "HostnameType": { + "target": "com.amazonaws.ec2#HostnameType", + "traits": { + "aws.protocols#ec2QueryName": "HostnameType", + "smithy.api#documentation": "

The type of hostname to assign to an instance.

", + "smithy.api#xmlName": "hostnameType" + } + }, + "EnableResourceNameDnsARecord": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "EnableResourceNameDnsARecord", + "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS A\n records.

", + "smithy.api#xmlName": "enableResourceNameDnsARecord" + } + }, + "EnableResourceNameDnsAAAARecord": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "EnableResourceNameDnsAAAARecord", + "smithy.api#documentation": "

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA\n records.

", + "smithy.api#xmlName": "enableResourceNameDnsAAAARecord" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the options for instance hostnames.

" + } + }, + "com.amazonaws.ec2#PrivateIpAddressConfigSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ScheduledInstancesPrivateIpAddressConfig", + "traits": { + "smithy.api#xmlName": "PrivateIpAddressConfigSet" + } + } + }, + "com.amazonaws.ec2#PrivateIpAddressCount": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 31 + } + } + }, + "com.amazonaws.ec2#PrivateIpAddressSpecification": { + "type": "structure", + "members": { + "Primary": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Primary", + "smithy.api#documentation": "

Indicates whether the private IPv4 address is the primary private IPv4 address. Only\n one IPv4 address can be designated as primary.

", + "smithy.api#xmlName": "primary" + } + }, + "PrivateIpAddress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PrivateIpAddress", + "smithy.api#documentation": "

The private IPv4 address.

", + "smithy.api#xmlName": "privateIpAddress" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a secondary private IPv4 address for a network interface.

" + } + }, + "com.amazonaws.ec2#PrivateIpAddressSpecificationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PrivateIpAddressSpecification", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PrivateIpAddressStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "PrivateIpAddress" + } + } + }, + "com.amazonaws.ec2#ProcessorInfo": { + "type": "structure", + "members": { + "SupportedArchitectures": { + "target": "com.amazonaws.ec2#ArchitectureTypeList", + "traits": { + "aws.protocols#ec2QueryName": "SupportedArchitectures", + "smithy.api#documentation": "

The architectures supported by the instance type.

", + "smithy.api#xmlName": "supportedArchitectures" + } + }, + "SustainedClockSpeedInGhz": { + "target": "com.amazonaws.ec2#ProcessorSustainedClockSpeed", + "traits": { + "aws.protocols#ec2QueryName": "SustainedClockSpeedInGhz", + "smithy.api#documentation": "

The speed of the processor, in GHz.

", + "smithy.api#xmlName": "sustainedClockSpeedInGhz" + } + }, + "SupportedFeatures": { + "target": "com.amazonaws.ec2#SupportedAdditionalProcessorFeatureList", + "traits": { + "aws.protocols#ec2QueryName": "SupportedFeatures", + "smithy.api#documentation": "

Indicates whether the instance type supports AMD SEV-SNP. If the request returns\n amd-sev-snp, AMD SEV-SNP is supported. Otherwise, it is not supported. For more\n information, see AMD\n SEV-SNP.

", + "smithy.api#xmlName": "supportedFeatures" + } + }, + "Manufacturer": { + "target": "com.amazonaws.ec2#CpuManufacturerName", + "traits": { + "aws.protocols#ec2QueryName": "Manufacturer", + "smithy.api#documentation": "

The manufacturer of the processor.

", + "smithy.api#xmlName": "manufacturer" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the processor used by the instance type.

" + } + }, + "com.amazonaws.ec2#ProcessorSustainedClockSpeed": { + "type": "double" + }, + "com.amazonaws.ec2#ProductCode": { + "type": "structure", + "members": { + "ProductCodeId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ProductCode", + "smithy.api#documentation": "

The product code.

", + "smithy.api#xmlName": "productCode" + } + }, + "ProductCodeType": { + "target": "com.amazonaws.ec2#ProductCodeValues", + "traits": { + "aws.protocols#ec2QueryName": "Type", + "smithy.api#documentation": "

The type of product code.

", + "smithy.api#xmlName": "type" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a product code.

" + } + }, + "com.amazonaws.ec2#ProductCodeList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ProductCode", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ProductCodeStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "ProductCode" + } + } + }, + "com.amazonaws.ec2#ProductCodeValues": { + "type": "enum", + "members": { + "devpay": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "devpay" + } + }, + "marketplace": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "marketplace" + } + } + } + }, + "com.amazonaws.ec2#ProductDescriptionList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String" + } + }, + "com.amazonaws.ec2#PropagatingVgw": { + "type": "structure", + "members": { + "GatewayId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "GatewayId", + "smithy.api#documentation": "

The ID of the virtual private gateway.

", + "smithy.api#xmlName": "gatewayId" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a virtual private gateway propagating route.

" + } + }, + "com.amazonaws.ec2#PropagatingVgwList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PropagatingVgw", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Protocol": { + "type": "enum", + "members": { + "tcp": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "tcp" + } + }, + "udp": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "udp" + } + } + } + }, + "com.amazonaws.ec2#ProtocolInt": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 255 + } + } + }, + "com.amazonaws.ec2#ProtocolIntList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ProtocolInt", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ProtocolList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Protocol", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ProtocolValue": { + "type": "enum", + "members": { + "gre": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "gre" + } + } + } + }, + "com.amazonaws.ec2#ProvisionByoipCidr": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ProvisionByoipCidrRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ProvisionByoipCidrResult" + }, + "traits": { + "smithy.api#documentation": "

Provisions an IPv4 or IPv6 address range for use with your Amazon Web Services resources through bring your own IP \n addresses (BYOIP) and creates a corresponding address pool. After the address range is\n provisioned, it is ready to be advertised.

\n

Amazon Web Services verifies that you own the address range and are authorized to advertise it. \n You must ensure that the address range is registered to you and that you created an \n RPKI ROA to authorize Amazon ASNs 16509 and 14618 to advertise the address range. \n For more information, see Bring your own IP addresses (BYOIP) in the Amazon EC2 User Guide.

\n

Provisioning an address range is an asynchronous operation, so the call returns immediately,\n but the address range is not ready to use until its status changes from pending-provision\n to provisioned. For more information, see Onboard your address range.

" + } + }, + "com.amazonaws.ec2#ProvisionByoipCidrRequest": { + "type": "structure", + "members": { + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The public IPv4 or IPv6 address range, in CIDR notation. The most specific IPv4 prefix that you can \n specify is /24. The most specific IPv6 address range that you can bring is /48 for CIDRs that are publicly advertisable and /56 for CIDRs that are not publicly advertisable. The address range cannot overlap with another address range that you've \n brought to this or another Region.

", + "smithy.api#required": {} + } + }, + "CidrAuthorizationContext": { + "target": "com.amazonaws.ec2#CidrAuthorizationContext", + "traits": { + "smithy.api#documentation": "

A signed document that proves that you are authorized to bring the specified IP address \n range to Amazon using BYOIP.

" + } + }, + "PubliclyAdvertisable": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

(IPv6 only) Indicate whether the address range will be publicly advertised to the\n internet.

\n

Default: true

" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A description for the address range and the address pool.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "PoolTagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags to apply to the address pool.

", + "smithy.api#xmlName": "PoolTagSpecification" + } + }, + "MultiRegion": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Reserved.

" + } + }, + "NetworkBorderGroup": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

If you have Local Zones enabled, you can choose a network border group for Local Zones when you provision and advertise a BYOIPv4 CIDR. Choose the network border group carefully as the EIP and the Amazon Web Services resource it is associated with must reside in the same network border group.

\n

You can provision BYOIP address ranges to and advertise them in the following Local Zone network border groups:

\n \n \n

You cannot provision or advertise BYOIPv6 address ranges in Local Zones at this time.

\n
" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ProvisionByoipCidrResult": { + "type": "structure", + "members": { + "ByoipCidr": { + "target": "com.amazonaws.ec2#ByoipCidr", + "traits": { + "aws.protocols#ec2QueryName": "ByoipCidr", + "smithy.api#documentation": "

Information about the address range.

", + "smithy.api#xmlName": "byoipCidr" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ProvisionIpamByoasn": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ProvisionIpamByoasnRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ProvisionIpamByoasnResult" + }, + "traits": { + "smithy.api#documentation": "

Provisions your Autonomous System Number (ASN) for use in your Amazon Web Services account. This action requires authorization context for Amazon to bring the ASN to an Amazon Web Services account. For more information, see Tutorial: Bring your ASN to IPAM in the Amazon VPC IPAM guide.

" + } + }, + "com.amazonaws.ec2#ProvisionIpamByoasnRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamId": { + "target": "com.amazonaws.ec2#IpamId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

An IPAM ID.

", + "smithy.api#required": {} + } + }, + "Asn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A public 2-byte or 4-byte ASN.

", + "smithy.api#required": {} + } + }, + "AsnAuthorizationContext": { + "target": "com.amazonaws.ec2#AsnAuthorizationContext", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

An ASN authorization context.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ProvisionIpamByoasnResult": { + "type": "structure", + "members": { + "Byoasn": { + "target": "com.amazonaws.ec2#Byoasn", + "traits": { + "aws.protocols#ec2QueryName": "Byoasn", + "smithy.api#documentation": "

An ASN and BYOIP CIDR association.

", + "smithy.api#xmlName": "byoasn" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ProvisionIpamPoolCidr": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ProvisionIpamPoolCidrRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ProvisionIpamPoolCidrResult" + }, + "traits": { + "smithy.api#documentation": "

Provision a CIDR to an IPAM pool. You can use this action to provision new CIDRs to a top-level pool or to transfer a CIDR from a top-level pool to a pool within it.

\n

For more information, see Provision CIDRs to pools in the Amazon VPC IPAM User Guide.\n

" + } + }, + "com.amazonaws.ec2#ProvisionIpamPoolCidrRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM pool to which you want to assign a CIDR.

", + "smithy.api#required": {} + } + }, + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The CIDR you want to assign to the IPAM pool. Either \"NetmaskLength\" or \"Cidr\" is required. This value will be null if you specify \"NetmaskLength\" and will be filled in during the provisioning process.

" + } + }, + "CidrAuthorizationContext": { + "target": "com.amazonaws.ec2#IpamCidrAuthorizationContext", + "traits": { + "smithy.api#documentation": "

A signed document that proves that you are authorized to bring a specified IP address range to Amazon using BYOIP. This option only applies to IPv4 and IPv6 pools in the public scope.

" + } + }, + "NetmaskLength": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#documentation": "

The netmask length of the CIDR you'd like to provision to a pool. Can be used for provisioning Amazon-provided IPv6 CIDRs to top-level pools and for provisioning CIDRs to pools with source pools. Cannot be used to provision BYOIP CIDRs to top-level pools. Either \"NetmaskLength\" or \"Cidr\" is required.

" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, + "VerificationMethod": { + "target": "com.amazonaws.ec2#VerificationMethod", + "traits": { + "smithy.api#documentation": "

The method for verifying control of a public IP address range. Defaults to remarks-x509 if not specified. This option only applies to IPv4 and IPv6 pools in the public scope.

" + } + }, + "IpamExternalResourceVerificationTokenId": { + "target": "com.amazonaws.ec2#IpamExternalResourceVerificationTokenId", + "traits": { + "smithy.api#documentation": "

Verification token ID. This option only applies to IPv4 and IPv6 pools in the public scope.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ProvisionIpamPoolCidrResult": { + "type": "structure", + "members": { + "IpamPoolCidr": { + "target": "com.amazonaws.ec2#IpamPoolCidr", + "traits": { + "aws.protocols#ec2QueryName": "IpamPoolCidr", + "smithy.api#documentation": "

Information about the provisioned CIDR.

", + "smithy.api#xmlName": "ipamPoolCidr" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ProvisionPublicIpv4PoolCidr": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ProvisionPublicIpv4PoolCidrRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ProvisionPublicIpv4PoolCidrResult" + }, + "traits": { + "smithy.api#documentation": "

Provision a CIDR to a public IPv4 pool.

\n

For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide.

" + } + }, + "com.amazonaws.ec2#ProvisionPublicIpv4PoolCidrRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM pool you would like to use to allocate this CIDR.

", + "smithy.api#required": {} + } + }, + "PoolId": { + "target": "com.amazonaws.ec2#Ipv4PoolEc2Id", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the public IPv4 pool you would like to use for this CIDR.

", + "smithy.api#required": {} + } + }, + "NetmaskLength": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The netmask length of the CIDR you would like to allocate to the public IPv4 pool. The least specific netmask length you can define is 24.

", + "smithy.api#required": {} + } + }, + "NetworkBorderGroup": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The Availability Zone (AZ) or Local Zone (LZ) network border group that the resource that the IP address is assigned to is in. Defaults to an AZ network border group. For more information on available Local Zones, see Local Zone availability in the Amazon EC2 User Guide.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ProvisionPublicIpv4PoolCidrResult": { + "type": "structure", + "members": { + "PoolId": { + "target": "com.amazonaws.ec2#Ipv4PoolEc2Id", + "traits": { + "aws.protocols#ec2QueryName": "PoolId", + "smithy.api#documentation": "

The ID of the pool that you want to provision the CIDR to.

", + "smithy.api#xmlName": "poolId" + } + }, + "PoolAddressRange": { + "target": "com.amazonaws.ec2#PublicIpv4PoolRange", + "traits": { + "aws.protocols#ec2QueryName": "PoolAddressRange", + "smithy.api#documentation": "

Information about the address range of the public IPv4 pool.

", + "smithy.api#xmlName": "poolAddressRange" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ProvisionedBandwidth": { + "type": "structure", + "members": { + "ProvisionTime": { + "target": "com.amazonaws.ec2#DateTime", + "traits": { + "aws.protocols#ec2QueryName": "ProvisionTime", + "smithy.api#documentation": "

Reserved.

", + "smithy.api#xmlName": "provisionTime" + } + }, + "Provisioned": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Provisioned", + "smithy.api#documentation": "

Reserved.

", + "smithy.api#xmlName": "provisioned" + } + }, + "RequestTime": { + "target": "com.amazonaws.ec2#DateTime", + "traits": { + "aws.protocols#ec2QueryName": "RequestTime", + "smithy.api#documentation": "

Reserved.

", + "smithy.api#xmlName": "requestTime" + } + }, + "Requested": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Requested", + "smithy.api#documentation": "

Reserved.

", + "smithy.api#xmlName": "requested" + } + }, + "Status": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

Reserved.

", + "smithy.api#xmlName": "status" + } + } + }, + "traits": { + "smithy.api#documentation": "

Reserved. If you need to sustain traffic greater than the documented limits, \n contact Amazon Web Services Support.

" + } + }, + "com.amazonaws.ec2#PtrUpdateStatus": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Value", + "smithy.api#documentation": "

The value for the PTR record update.

", + "smithy.api#xmlName": "value" + } + }, + "Status": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The status of the PTR record update.

", + "smithy.api#xmlName": "status" + } + }, + "Reason": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Reason", + "smithy.api#documentation": "

The reason for the PTR record update.

", + "smithy.api#xmlName": "reason" + } + } + }, + "traits": { + "smithy.api#documentation": "

The status of an updated pointer (PTR) record for an Elastic IP address.

" + } + }, + "com.amazonaws.ec2#PublicIpAddress": { + "type": "string" + }, + "com.amazonaws.ec2#PublicIpDnsNameOptions": { + "type": "structure", + "members": { + "DnsHostnameType": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "DnsHostnameType", + "smithy.api#documentation": "

The public hostname type. For more information, see EC2 instance hostnames, DNS names, and domains in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "dnsHostnameType" + } + }, + "PublicIpv4DnsName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PublicIpv4DnsName", + "smithy.api#documentation": "

An IPv4-enabled public hostname for a network interface. Requests from within the VPC resolve to the private primary IPv4 address of the network interface. Requests from the internet resolve to the public IPv4 address of the network interface.

", + "smithy.api#xmlName": "publicIpv4DnsName" + } + }, + "PublicIpv6DnsName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PublicIpv6DnsName", + "smithy.api#documentation": "

An IPv6-enabled public hostname for a network interface. Requests from within the VPC or from the internet resolve to the IPv6 GUA of the network interface.

", + "smithy.api#xmlName": "publicIpv6DnsName" + } + }, + "PublicDualStackDnsName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PublicDualStackDnsName", + "smithy.api#documentation": "

A dual-stack public hostname for a network interface. Requests from within the VPC resolve to both the private IPv4 address and the IPv6 Global Unicast Address of the network interface. Requests from the internet resolve to both the public IPv4 and the IPv6 GUA address of the network interface.

", + "smithy.api#xmlName": "publicDualStackDnsName" + } + } + }, + "traits": { + "smithy.api#documentation": "

Public hostname type options. For more information, see EC2 instance hostnames, DNS names, and domains in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#PublicIpDnsOption": { + "type": "enum", + "members": { + "public_dual_stack_dns_name": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "public-dual-stack-dns-name" + } + }, + "public_ipv4_dns_name": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "public-ipv4-dns-name" + } + }, + "public_ipv6_dns_name": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "public-ipv6-dns-name" + } + } + } + }, + "com.amazonaws.ec2#PublicIpStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "PublicIp" + } + } + }, + "com.amazonaws.ec2#PublicIpv4Pool": { + "type": "structure", + "members": { + "PoolId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PoolId", + "smithy.api#documentation": "

The ID of the address pool.

", + "smithy.api#xmlName": "poolId" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description of the address pool.

", + "smithy.api#xmlName": "description" + } + }, + "PoolAddressRanges": { + "target": "com.amazonaws.ec2#PublicIpv4PoolRangeSet", + "traits": { + "aws.protocols#ec2QueryName": "PoolAddressRangeSet", + "smithy.api#documentation": "

The address ranges.

", + "smithy.api#xmlName": "poolAddressRangeSet" + } + }, + "TotalAddressCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "TotalAddressCount", + "smithy.api#documentation": "

The total number of addresses.

", + "smithy.api#xmlName": "totalAddressCount" + } + }, + "TotalAvailableAddressCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "TotalAvailableAddressCount", + "smithy.api#documentation": "

The total number of available addresses.

", + "smithy.api#xmlName": "totalAvailableAddressCount" + } + }, + "NetworkBorderGroup": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NetworkBorderGroup", + "smithy.api#documentation": "

The name of the location from which the address pool is advertised. \n A network border group is a unique set of Availability Zones or Local Zones \n from where Amazon Web Services advertises public IP addresses.

", + "smithy.api#xmlName": "networkBorderGroup" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags for the address pool.

", + "smithy.api#xmlName": "tagSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes an IPv4 address pool.

" + } + }, + "com.amazonaws.ec2#PublicIpv4PoolIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Ipv4PoolEc2Id", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PublicIpv4PoolRange": { + "type": "structure", + "members": { + "FirstAddress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "FirstAddress", + "smithy.api#documentation": "

The first IP address in the range.

", + "smithy.api#xmlName": "firstAddress" + } + }, + "LastAddress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "LastAddress", + "smithy.api#documentation": "

The last IP address in the range.

", + "smithy.api#xmlName": "lastAddress" + } + }, + "AddressCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "AddressCount", + "smithy.api#documentation": "

The number of addresses in the range.

", + "smithy.api#xmlName": "addressCount" + } + }, + "AvailableAddressCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "AvailableAddressCount", + "smithy.api#documentation": "

The number of available addresses in the range.

", + "smithy.api#xmlName": "availableAddressCount" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes an address range of an IPv4 address pool.

" + } + }, + "com.amazonaws.ec2#PublicIpv4PoolRangeSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PublicIpv4PoolRange", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PublicIpv4PoolSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PublicIpv4Pool", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Purchase": { + "type": "structure", + "members": { + "CurrencyCode": { + "target": "com.amazonaws.ec2#CurrencyCodeValues", + "traits": { + "aws.protocols#ec2QueryName": "CurrencyCode", + "smithy.api#documentation": "

The currency in which the UpfrontPrice and HourlyPrice\n amounts are specified. At this time, the only supported currency is\n USD.

", + "smithy.api#xmlName": "currencyCode" + } + }, + "Duration": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "Duration", + "smithy.api#documentation": "

The duration of the reservation's term in seconds.

", + "smithy.api#xmlName": "duration" + } + }, + "HostIdSet": { + "target": "com.amazonaws.ec2#ResponseHostIdSet", + "traits": { + "aws.protocols#ec2QueryName": "HostIdSet", + "smithy.api#documentation": "

The IDs of the Dedicated Hosts associated with the reservation.

", + "smithy.api#xmlName": "hostIdSet" + } + }, + "HostReservationId": { + "target": "com.amazonaws.ec2#HostReservationId", + "traits": { + "aws.protocols#ec2QueryName": "HostReservationId", + "smithy.api#documentation": "

The ID of the reservation.

", + "smithy.api#xmlName": "hostReservationId" + } + }, + "HourlyPrice": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "HourlyPrice", + "smithy.api#documentation": "

The hourly price of the reservation per hour.

", + "smithy.api#xmlName": "hourlyPrice" + } + }, + "InstanceFamily": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "InstanceFamily", + "smithy.api#documentation": "

The instance family on the Dedicated Host that the reservation can be associated\n with.

", + "smithy.api#xmlName": "instanceFamily" + } + }, + "PaymentOption": { + "target": "com.amazonaws.ec2#PaymentOption", + "traits": { + "aws.protocols#ec2QueryName": "PaymentOption", + "smithy.api#documentation": "

The payment option for the reservation.

", + "smithy.api#xmlName": "paymentOption" + } + }, + "UpfrontPrice": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "UpfrontPrice", + "smithy.api#documentation": "

The upfront price of the reservation.

", + "smithy.api#xmlName": "upfrontPrice" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the result of the purchase.

" + } + }, + "com.amazonaws.ec2#PurchaseCapacityBlock": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#PurchaseCapacityBlockRequest" + }, + "output": { + "target": "com.amazonaws.ec2#PurchaseCapacityBlockResult" + }, + "traits": { + "smithy.api#documentation": "

Purchase the Capacity Block for use with your account. With Capacity Blocks you ensure\n\t\t\tGPU capacity is available for machine learning (ML) workloads. You must specify the ID\n\t\t\tof the Capacity Block offering you are purchasing.

" + } + }, + "com.amazonaws.ec2#PurchaseCapacityBlockExtension": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#PurchaseCapacityBlockExtensionRequest" + }, + "output": { + "target": "com.amazonaws.ec2#PurchaseCapacityBlockExtensionResult" + }, + "traits": { + "smithy.api#documentation": "

Purchase the Capacity Block extension for use with your account. You must specify the\n\t\t\tID of the Capacity Block extension offering you are purchasing.

" + } + }, + "com.amazonaws.ec2#PurchaseCapacityBlockExtensionRequest": { + "type": "structure", + "members": { + "CapacityBlockExtensionOfferingId": { + "target": "com.amazonaws.ec2#OfferingId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Capacity Block extension offering to purchase.

", + "smithy.api#required": {} + } + }, + "CapacityReservationId": { + "target": "com.amazonaws.ec2#CapacityReservationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Capacity reservation to be extended.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#PurchaseCapacityBlockExtensionResult": { + "type": "structure", + "members": { + "CapacityBlockExtensions": { + "target": "com.amazonaws.ec2#CapacityBlockExtensionSet", + "traits": { + "aws.protocols#ec2QueryName": "CapacityBlockExtensionSet", + "smithy.api#documentation": "

The purchased Capacity Block extensions.

", + "smithy.api#xmlName": "capacityBlockExtensionSet" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#PurchaseCapacityBlockRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags to apply to the Capacity Block during launch.

", + "smithy.api#xmlName": "TagSpecification" + } + }, + "CapacityBlockOfferingId": { + "target": "com.amazonaws.ec2#OfferingId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Capacity Block offering.

", + "smithy.api#required": {} + } + }, + "InstancePlatform": { + "target": "com.amazonaws.ec2#CapacityReservationInstancePlatform", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The type of operating system for which to reserve capacity.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#PurchaseCapacityBlockResult": { + "type": "structure", + "members": { + "CapacityReservation": { + "target": "com.amazonaws.ec2#CapacityReservation", + "traits": { + "aws.protocols#ec2QueryName": "CapacityReservation", + "smithy.api#documentation": "

The Capacity Reservation.

", + "smithy.api#xmlName": "capacityReservation" + } + }, + "CapacityBlocks": { + "target": "com.amazonaws.ec2#CapacityBlockSet", + "traits": { + "aws.protocols#ec2QueryName": "CapacityBlockSet", + "smithy.api#documentation": "

The Capacity Block.

", + "smithy.api#xmlName": "capacityBlockSet" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#PurchaseHostReservation": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#PurchaseHostReservationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#PurchaseHostReservationResult" + }, + "traits": { + "smithy.api#documentation": "

Purchase a reservation with configurations that match those of your Dedicated Host.\n You must have active Dedicated Hosts in your account before you purchase a reservation.\n This action results in the specified reservation being purchased and charged to your\n account.

" + } + }, + "com.amazonaws.ec2#PurchaseHostReservationRequest": { + "type": "structure", + "members": { + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

" + } + }, + "CurrencyCode": { + "target": "com.amazonaws.ec2#CurrencyCodeValues", + "traits": { + "smithy.api#documentation": "

The currency in which the totalUpfrontPrice, LimitPrice, and\n totalHourlyPrice amounts are specified. At this time, the only\n supported currency is USD.

" + } + }, + "HostIdSet": { + "target": "com.amazonaws.ec2#RequestHostIdSet", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of the Dedicated Hosts with which the reservation will be associated.

", + "smithy.api#required": {} + } + }, + "LimitPrice": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The specified limit is checked against the total upfront cost of the reservation\n (calculated as the offering's upfront cost multiplied by the host count). If the total\n upfront cost is greater than the specified price limit, the request fails. This is used\n to ensure that the purchase does not exceed the expected upfront cost of the purchase.\n At this time, the only supported currency is USD. For example, to indicate\n a limit price of USD 100, specify 100.00.

" + } + }, + "OfferingId": { + "target": "com.amazonaws.ec2#OfferingId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the offering.

", + "smithy.api#required": {} + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags to apply to the Dedicated Host Reservation during purchase.

", + "smithy.api#xmlName": "TagSpecification" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#PurchaseHostReservationResult": { + "type": "structure", + "members": { + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

", + "smithy.api#xmlName": "clientToken" + } + }, + "CurrencyCode": { + "target": "com.amazonaws.ec2#CurrencyCodeValues", + "traits": { + "aws.protocols#ec2QueryName": "CurrencyCode", + "smithy.api#documentation": "

The currency in which the totalUpfrontPrice and\n totalHourlyPrice amounts are specified. At this time, the only\n supported currency is USD.

", + "smithy.api#xmlName": "currencyCode" + } + }, + "Purchase": { + "target": "com.amazonaws.ec2#PurchaseSet", + "traits": { + "aws.protocols#ec2QueryName": "Purchase", + "smithy.api#documentation": "

Describes the details of the purchase.

", + "smithy.api#xmlName": "purchase" + } + }, + "TotalHourlyPrice": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "TotalHourlyPrice", + "smithy.api#documentation": "

The total hourly price of the reservation calculated per hour.

", + "smithy.api#xmlName": "totalHourlyPrice" + } + }, + "TotalUpfrontPrice": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "TotalUpfrontPrice", + "smithy.api#documentation": "

The total amount charged to your account when you purchase the reservation.

", + "smithy.api#xmlName": "totalUpfrontPrice" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#PurchaseRequest": { + "type": "structure", + "members": { + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The number of instances.

", + "smithy.api#required": {} + } + }, + "PurchaseToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The purchase token.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a request to purchase Scheduled Instances.

" + } + }, + "com.amazonaws.ec2#PurchaseRequestSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#PurchaseRequest", + "traits": { + "smithy.api#xmlName": "PurchaseRequest" + } + }, + "traits": { + "smithy.api#length": { + "min": 1 + } + } + }, + "com.amazonaws.ec2#PurchaseReservedInstancesOffering": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#PurchaseReservedInstancesOfferingRequest" + }, + "output": { + "target": "com.amazonaws.ec2#PurchaseReservedInstancesOfferingResult" + }, + "traits": { + "smithy.api#documentation": "

Purchases a Reserved Instance for use with your account. With Reserved Instances, you pay\n a lower hourly rate compared to On-Demand instance pricing.

\n

Use DescribeReservedInstancesOfferings to get a list of Reserved\n Instance offerings that match your specifications. After you've purchased a Reserved Instance,\n you can check for your new Reserved Instance with DescribeReservedInstances.

\n

To queue a purchase for a future date and time, specify a purchase time. If you do not\n specify a purchase time, the default is the current time.

\n

For more information, see Reserved\n Instances and Sell in the Reserved Instance\n Marketplace in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#PurchaseReservedInstancesOfferingRequest": { + "type": "structure", + "members": { + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The number of Reserved Instances to purchase.

", + "smithy.api#required": {} + } + }, + "ReservedInstancesOfferingId": { + "target": "com.amazonaws.ec2#ReservedInstancesOfferingId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Reserved Instance offering to purchase.

", + "smithy.api#required": {} + } + }, + "PurchaseTime": { + "target": "com.amazonaws.ec2#DateTime", + "traits": { + "smithy.api#documentation": "

The time at which to purchase the Reserved Instance, in UTC format (for example,\n YYYY-MM-DDTHH:MM:SSZ).

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making\n the request, and provides an error response. If you have the required permissions, the error\n response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "LimitPrice": { + "target": "com.amazonaws.ec2#ReservedInstanceLimitPrice", + "traits": { + "aws.protocols#ec2QueryName": "LimitPrice", + "smithy.api#documentation": "

Specified for Reserved Instance Marketplace offerings to limit the total order and ensure\n that the Reserved Instances are not purchased at unexpected prices.

", + "smithy.api#xmlName": "limitPrice" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the parameters for PurchaseReservedInstancesOffering.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#PurchaseReservedInstancesOfferingResult": { + "type": "structure", + "members": { + "ReservedInstancesId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ReservedInstancesId", + "smithy.api#documentation": "

The IDs of the purchased Reserved Instances. If your purchase crosses into a discounted\n pricing tier, the final Reserved Instances IDs might change. For more information, see Crossing pricing tiers in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "reservedInstancesId" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the output of PurchaseReservedInstancesOffering.

", + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#PurchaseScheduledInstances": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#PurchaseScheduledInstancesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#PurchaseScheduledInstancesResult" + }, + "traits": { + "smithy.api#documentation": "\n

You can no longer purchase Scheduled Instances.

\n
\n

Purchases the Scheduled Instances with the specified schedule.

\n

Scheduled Instances enable you to purchase Amazon EC2 compute capacity by the hour for a one-year term.\n Before you can purchase a Scheduled Instance, you must call DescribeScheduledInstanceAvailability\n to check for available schedules and obtain a purchase token. After you purchase a Scheduled Instance,\n you must call RunScheduledInstances during each scheduled time period.

\n

After you purchase a Scheduled Instance, you can't cancel, modify, or resell your purchase.

" + } + }, + "com.amazonaws.ec2#PurchaseScheduledInstancesRequest": { + "type": "structure", + "members": { + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Unique, case-sensitive identifier that ensures the idempotency of the request. \n For more information, see Ensuring Idempotency.

", + "smithy.api#idempotencyToken": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "PurchaseRequests": { + "target": "com.amazonaws.ec2#PurchaseRequestSet", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The purchase requests.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "PurchaseRequest" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the parameters for PurchaseScheduledInstances.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#PurchaseScheduledInstancesResult": { + "type": "structure", + "members": { + "ScheduledInstanceSet": { + "target": "com.amazonaws.ec2#PurchasedScheduledInstanceSet", + "traits": { + "aws.protocols#ec2QueryName": "ScheduledInstanceSet", + "smithy.api#documentation": "

Information about the Scheduled Instances.

", + "smithy.api#xmlName": "scheduledInstanceSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the output of PurchaseScheduledInstances.

", + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#PurchaseSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Purchase", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#PurchasedScheduledInstanceSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ScheduledInstance", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#RIProductDescription": { + "type": "enum", + "members": { + "Linux_UNIX": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Linux/UNIX" + } + }, + "Linux_UNIX_Amazon_VPC_": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Linux/UNIX (Amazon VPC)" + } + }, + "Windows": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Windows" + } + }, + "Windows_Amazon_VPC_": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Windows (Amazon VPC)" + } + } + } + }, + "com.amazonaws.ec2#RamdiskId": { + "type": "string" + }, + "com.amazonaws.ec2#RdsDbClusterArn": { + "type": "string" + }, + "com.amazonaws.ec2#RdsDbInstanceArn": { + "type": "string" + }, + "com.amazonaws.ec2#RdsDbProxyArn": { + "type": "string" + }, + "com.amazonaws.ec2#ReasonCodesList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ReportInstanceReasonCodes", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#RebootInstances": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RebootInstancesRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Requests a reboot of the specified instances. This operation is asynchronous; it only\n queues a request to reboot the specified instances. The operation succeeds if the\n instances are valid and belong to you. Requests to reboot terminated instances are\n ignored.

\n

If an instance does not cleanly shut down within a few minutes, Amazon EC2 performs a\n hard reboot.

\n

For more information about troubleshooting, see Troubleshoot an unreachable\n instance in the Amazon EC2 User Guide.

", + "smithy.api#examples": [ + { + "title": "To reboot an EC2 instance", + "documentation": "This example reboots the specified EC2 instance.", + "input": { + "InstanceIds": [ + "i-1234567890abcdef5" + ] + }, + "output": {} + } + ] + } + }, + "com.amazonaws.ec2#RebootInstancesRequest": { + "type": "structure", + "members": { + "InstanceIds": { + "target": "com.amazonaws.ec2#InstanceIdStringList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The instance IDs.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "InstanceId" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RebootMigrationSupport": { + "type": "enum", + "members": { + "UNSUPPORTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "unsupported" + } + }, + "SUPPORTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "supported" + } + } + } + }, + "com.amazonaws.ec2#RecurringCharge": { + "type": "structure", + "members": { + "Amount": { + "target": "com.amazonaws.ec2#Double", + "traits": { + "aws.protocols#ec2QueryName": "Amount", + "smithy.api#documentation": "

The amount of the recurring charge.

", + "smithy.api#xmlName": "amount" + } + }, + "Frequency": { + "target": "com.amazonaws.ec2#RecurringChargeFrequency", + "traits": { + "aws.protocols#ec2QueryName": "Frequency", + "smithy.api#documentation": "

The frequency of the recurring charge.

", + "smithy.api#xmlName": "frequency" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a recurring charge.

" + } + }, + "com.amazonaws.ec2#RecurringChargeFrequency": { + "type": "enum", + "members": { + "Hourly": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Hourly" + } + } + } + }, + "com.amazonaws.ec2#RecurringChargesList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#RecurringCharge", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ReferencedSecurityGroup": { + "type": "structure", + "members": { + "GroupId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "GroupId", + "smithy.api#documentation": "

The ID of the security group.

", + "smithy.api#xmlName": "groupId" + } + }, + "PeeringStatus": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PeeringStatus", + "smithy.api#documentation": "

The status of a VPC peering connection, if applicable.

", + "smithy.api#xmlName": "peeringStatus" + } + }, + "UserId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "UserId", + "smithy.api#documentation": "

The Amazon Web Services account ID.

", + "smithy.api#xmlName": "userId" + } + }, + "VpcId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#xmlName": "vpcId" + } + }, + "VpcPeeringConnectionId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VpcPeeringConnectionId", + "smithy.api#documentation": "

The ID of the VPC peering connection (if applicable).

", + "smithy.api#xmlName": "vpcPeeringConnectionId" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the security group that is referenced in the security group rule.

" + } + }, + "com.amazonaws.ec2#Region": { + "type": "structure", + "members": { + "OptInStatus": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OptInStatus", + "smithy.api#documentation": "

The Region opt-in status. The possible values are opt-in-not-required, opted-in, and \n not-opted-in.

", + "smithy.api#xmlName": "optInStatus" + } + }, + "RegionName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "RegionName", + "smithy.api#documentation": "

The name of the Region.

", + "smithy.api#xmlName": "regionName" + } + }, + "Endpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "RegionEndpoint", + "smithy.api#documentation": "

The Region service endpoint.

", + "smithy.api#xmlName": "regionEndpoint" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a Region.

" + } + }, + "com.amazonaws.ec2#RegionList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Region", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#RegionNameStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "RegionName" + } + } + }, + "com.amazonaws.ec2#RegionNames": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 10 + } + } + }, + "com.amazonaws.ec2#RegionalSummary": { + "type": "structure", + "members": { + "RegionName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "RegionName", + "smithy.api#documentation": "

The Amazon Web Services Region.

", + "smithy.api#xmlName": "regionName" + } + }, + "NumberOfMatchedAccounts": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "NumberOfMatchedAccounts", + "smithy.api#documentation": "

The number of accounts in the Region with the same configuration value for the\n attribute that is most frequently observed.

", + "smithy.api#xmlName": "numberOfMatchedAccounts" + } + }, + "NumberOfUnmatchedAccounts": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "NumberOfUnmatchedAccounts", + "smithy.api#documentation": "

The number of accounts in the Region with a configuration value different from the\n most frequently observed value for the attribute.

", + "smithy.api#xmlName": "numberOfUnmatchedAccounts" + } + } + }, + "traits": { + "smithy.api#documentation": "

A summary report for the attribute for a Region.

" + } + }, + "com.amazonaws.ec2#RegionalSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#RegionalSummary", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#RegisterImage": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RegisterImageRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RegisterImageResult" + }, + "traits": { + "smithy.api#documentation": "

Registers an AMI. When you're creating an instance-store backed AMI, registering the AMI\n is the final step in the creation process. For more information about creating AMIs, see\n Create an AMI from a snapshot and Create an instance-store\n backed AMI in the Amazon EC2 User Guide.

\n

If needed, you can deregister an AMI at any time. Any modifications you make to an AMI\n backed by an instance store volume invalidates its registration. If you make changes to an\n image, deregister the previous image and register the new image.

\n

\n Register a snapshot of a root device volume\n

\n

You can use RegisterImage to create an Amazon EBS-backed Linux AMI from a snapshot\n of a root device volume. You specify the snapshot using a block device mapping. You can't set\n the encryption state of the volume using the block device mapping. If the snapshot is\n encrypted, or encryption by default is enabled, the root volume of an instance launched from\n the AMI is encrypted.

\n

For more information, see Create an AMI from a snapshot and Use encryption with EBS-backed AMIs\n in the Amazon EC2 User Guide.

\n

\n Amazon Web Services Marketplace product codes\n

\n

If any snapshots have Amazon Web Services Marketplace product codes, they are copied to the new AMI.

\n

In most cases, AMIs for Windows, RedHat, SUSE, and SQL Server require correct licensing\n information to be present on the AMI. For more information, see Understand AMI billing\n information in the Amazon EC2 User Guide. When creating an AMI from\n a snapshot, the RegisterImage operation derives the correct billing information\n from the snapshot's metadata, but this requires the appropriate metadata to be present. To\n verify if the correct billing information was applied, check the PlatformDetails\n field on the new AMI. If the field is empty or doesn't match the expected operating system\n code (for example, Windows, RedHat, SUSE, or SQL), the AMI creation was unsuccessful, and you\n should discard the AMI and instead create the AMI from an instance. \n For more information, see Create an AMI\n from an instance in the Amazon EC2 User Guide.

\n

If you purchase a Reserved Instance to apply to an On-Demand Instance that was launched\n from an AMI with a billing product code, make sure that the Reserved Instance has the matching\n billing product code. If you purchase a Reserved Instance without the matching billing product\n code, the Reserved Instance is not applied to the On-Demand Instance. For information\n about how to obtain the platform details and billing information of an AMI, see Understand AMI\n billing information in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#RegisterImageRequest": { + "type": "structure", + "members": { + "ImageLocation": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The full path to your AMI manifest in Amazon S3 storage. The specified bucket must have the\n aws-exec-read canned access control list (ACL) to ensure that it can be\n accessed by Amazon EC2. For more information, see Canned ACL in the\n Amazon S3 Service Developer Guide.

" + } + }, + "BillingProducts": { + "target": "com.amazonaws.ec2#BillingProductList", + "traits": { + "smithy.api#documentation": "

The billing product codes. Your account must be authorized to specify billing product\n codes.

\n

If your account is not authorized to specify billing product codes, you can publish AMIs\n that include billable software and list them on the Amazon Web Services Marketplace. You must first register as a seller\n on the Amazon Web Services Marketplace. For more information, see Getting started as an Amazon Web Services Marketplace seller and AMI-based products in Amazon Web Services Marketplace in the Amazon Web Services Marketplace Seller Guide.

", + "smithy.api#xmlName": "BillingProduct" + } + }, + "BootMode": { + "target": "com.amazonaws.ec2#BootModeValues", + "traits": { + "smithy.api#documentation": "

The boot mode of the AMI. A value of uefi-preferred indicates that the AMI\n supports both UEFI and Legacy BIOS.

\n \n

The operating system contained in the AMI must be configured to support the specified\n boot mode.

\n
\n

For more information, see Instance launch behavior with Amazon EC2\n boot modes in the Amazon EC2 User Guide.

" + } + }, + "TpmSupport": { + "target": "com.amazonaws.ec2#TpmSupportValues", + "traits": { + "smithy.api#documentation": "

Set to v2.0 to enable Trusted Platform Module (TPM) support. For more\n information, see NitroTPM in the Amazon EC2 User Guide.

" + } + }, + "UefiData": { + "target": "com.amazonaws.ec2#StringType", + "traits": { + "smithy.api#documentation": "

Base64 representation of the non-volatile UEFI variable store. To retrieve the UEFI data,\n use the GetInstanceUefiData command. You can inspect and modify the UEFI data by using the\n python-uefivars tool on\n GitHub. For more information, see UEFI Secure Boot for Amazon EC2\n instances in the Amazon EC2 User Guide.

" + } + }, + "ImdsSupport": { + "target": "com.amazonaws.ec2#ImdsSupportValues", + "traits": { + "smithy.api#documentation": "

Set to v2.0 to indicate that IMDSv2 is specified in the AMI. Instances\n launched from this AMI will have HttpTokens automatically set to\n required so that, by default, the instance requires that IMDSv2 is used when\n requesting instance metadata. In addition, HttpPutResponseHopLimit is set to\n 2. For more information, see Configure the AMI in the Amazon EC2 User Guide.

\n \n

If you set the value to v2.0, make sure that your AMI software can support\n IMDSv2.

\n
" + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags to apply to the AMI.

\n

To tag the AMI, the value for ResourceType must be image. If you\n specify another value for ResourceType, the request fails.

\n

To tag an AMI after it has been registered, see CreateTags.

", + "smithy.api#xmlName": "TagSpecification" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "Name": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Name", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

A name for your AMI.

\n

Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces\n ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or\n underscores(_)

", + "smithy.api#required": {}, + "smithy.api#xmlName": "name" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description for your AMI.

", + "smithy.api#xmlName": "description" + } + }, + "Architecture": { + "target": "com.amazonaws.ec2#ArchitectureValues", + "traits": { + "aws.protocols#ec2QueryName": "Architecture", + "smithy.api#documentation": "

The architecture of the AMI.

\n

Default: For Amazon EBS-backed AMIs, i386. For instance store-backed AMIs, the\n architecture specified in the manifest file.

", + "smithy.api#xmlName": "architecture" + } + }, + "KernelId": { + "target": "com.amazonaws.ec2#KernelId", + "traits": { + "aws.protocols#ec2QueryName": "KernelId", + "smithy.api#documentation": "

The ID of the kernel.

", + "smithy.api#xmlName": "kernelId" + } + }, + "RamdiskId": { + "target": "com.amazonaws.ec2#RamdiskId", + "traits": { + "aws.protocols#ec2QueryName": "RamdiskId", + "smithy.api#documentation": "

The ID of the RAM disk.

", + "smithy.api#xmlName": "ramdiskId" + } + }, + "RootDeviceName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "RootDeviceName", + "smithy.api#documentation": "

The device name of the root device volume (for example, /dev/sda1).

", + "smithy.api#xmlName": "rootDeviceName" + } + }, + "BlockDeviceMappings": { + "target": "com.amazonaws.ec2#BlockDeviceMappingRequestList", + "traits": { + "smithy.api#documentation": "

The block device mapping entries.

\n

If you specify an Amazon EBS volume using the ID of an Amazon EBS snapshot, you can't specify the\n encryption state of the volume.

\n

If you create an AMI on an Outpost, then all backing snapshots must be on the same Outpost\n or in the Region of that Outpost. AMIs on an Outpost that include local snapshots can be used\n to launch instances on the same Outpost only. For more information, Create AMIs from\n local snapshots in the Amazon EBS User Guide.

", + "smithy.api#xmlName": "BlockDeviceMapping" + } + }, + "VirtualizationType": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VirtualizationType", + "smithy.api#documentation": "

The type of virtualization (hvm | paravirtual).

\n

Default: paravirtual\n

", + "smithy.api#xmlName": "virtualizationType" + } + }, + "SriovNetSupport": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "SriovNetSupport", + "smithy.api#documentation": "

Set to simple to enable enhanced networking with the Intel 82599 Virtual\n Function interface for the AMI and any instances that you launch from the AMI.

\n

There is no way to disable sriovNetSupport at this time.

\n

This option is supported only for HVM AMIs. Specifying this option with a PV AMI can make\n instances launched from the AMI unreachable.

", + "smithy.api#xmlName": "sriovNetSupport" + } + }, + "EnaSupport": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "EnaSupport", + "smithy.api#documentation": "

Set to true to enable enhanced networking with ENA for the AMI and any\n instances that you launch from the AMI.

\n

This option is supported only for HVM AMIs. Specifying this option with a PV AMI can make\n instances launched from the AMI unreachable.

", + "smithy.api#xmlName": "enaSupport" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the parameters for RegisterImage.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RegisterImageResult": { + "type": "structure", + "members": { + "ImageId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the newly registered AMI.

", + "smithy.api#xmlName": "imageId" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the output of RegisterImage.

", + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#RegisterInstanceEventNotificationAttributes": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RegisterInstanceEventNotificationAttributesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RegisterInstanceEventNotificationAttributesResult" + }, + "traits": { + "smithy.api#documentation": "

Registers a set of tag keys to include in scheduled event notifications for your\n resources.\n

\n

To remove tags, use DeregisterInstanceEventNotificationAttributes.

" + } + }, + "com.amazonaws.ec2#RegisterInstanceEventNotificationAttributesRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "InstanceTagAttribute": { + "target": "com.amazonaws.ec2#RegisterInstanceTagAttributeRequest", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Information about the tag keys to register.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RegisterInstanceEventNotificationAttributesResult": { + "type": "structure", + "members": { + "InstanceTagAttribute": { + "target": "com.amazonaws.ec2#InstanceTagNotificationAttribute", + "traits": { + "aws.protocols#ec2QueryName": "InstanceTagAttribute", + "smithy.api#documentation": "

The resulting set of tag keys.

", + "smithy.api#xmlName": "instanceTagAttribute" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#RegisterInstanceTagAttributeRequest": { + "type": "structure", + "members": { + "IncludeAllTagsOfInstance": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether to register all tag keys in the current Region. Specify\n true to register all tag keys.

" + } + }, + "InstanceTagKeys": { + "target": "com.amazonaws.ec2#InstanceTagKeySet", + "traits": { + "smithy.api#documentation": "

The tag keys to register.

", + "smithy.api#xmlName": "InstanceTagKey" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about the tag keys to register for the current Region. You can either\n specify individual tag keys or register all tag keys in the current Region. You must\n specify either IncludeAllTagsOfInstance or InstanceTagKeys in the\n request

" + } + }, + "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupMembers": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupMembersRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupMembersResult" + }, + "traits": { + "smithy.api#documentation": "

Registers members (network interfaces) with the transit gateway multicast group. A member is a network interface associated\n with a supported EC2 instance that receives multicast traffic. For more information, see\n Multicast\n on transit gateways in the Amazon Web Services Transit Gateways Guide.

\n

After you add the members, use SearchTransitGatewayMulticastGroups to verify that the members were added\n to the transit gateway multicast group.

" + } + }, + "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupMembersRequest": { + "type": "structure", + "members": { + "TransitGatewayMulticastDomainId": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

", + "smithy.api#required": {} + } + }, + "GroupIpAddress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The IP address assigned to the transit gateway multicast group.

" + } + }, + "NetworkInterfaceIds": { + "target": "com.amazonaws.ec2#TransitGatewayNetworkInterfaceIdList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The group members' network interface IDs to register with the transit gateway multicast group.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupMembersResult": { + "type": "structure", + "members": { + "RegisteredMulticastGroupMembers": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastRegisteredGroupMembers", + "traits": { + "aws.protocols#ec2QueryName": "RegisteredMulticastGroupMembers", + "smithy.api#documentation": "

Information about the registered transit gateway multicast group members.

", + "smithy.api#xmlName": "registeredMulticastGroupMembers" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupSources": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupSourcesRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupSourcesResult" + }, + "traits": { + "smithy.api#documentation": "

Registers sources (network interfaces) with the specified transit gateway multicast group.

\n

A multicast source is a network interface attached to a supported instance that sends\n multicast traffic. For more information about supported instances, see Multicast\n on transit gateways in the Amazon Web Services Transit Gateways Guide.

\n

After you add the source, use SearchTransitGatewayMulticastGroups to verify that the source was added to the multicast\n group.

" + } + }, + "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupSourcesRequest": { + "type": "structure", + "members": { + "TransitGatewayMulticastDomainId": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

", + "smithy.api#required": {} + } + }, + "GroupIpAddress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The IP address assigned to the transit gateway multicast group.

" + } + }, + "NetworkInterfaceIds": { + "target": "com.amazonaws.ec2#TransitGatewayNetworkInterfaceIdList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The group sources' network interface IDs to register with the transit gateway multicast group.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RegisterTransitGatewayMulticastGroupSourcesResult": { + "type": "structure", + "members": { + "RegisteredMulticastGroupSources": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastRegisteredGroupSources", + "traits": { + "aws.protocols#ec2QueryName": "RegisteredMulticastGroupSources", + "smithy.api#documentation": "

Information about the transit gateway multicast group sources.

", + "smithy.api#xmlName": "registeredMulticastGroupSources" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#RejectCapacityReservationBillingOwnership": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RejectCapacityReservationBillingOwnershipRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RejectCapacityReservationBillingOwnershipResult" + }, + "traits": { + "smithy.api#documentation": "

Rejects a request to assign billing of the available capacity of a shared Capacity\n\t\t\tReservation to your account. For more information, see Billing assignment for shared\n\t\t\t\t\tAmazon EC2 Capacity Reservations.

" + } + }, + "com.amazonaws.ec2#RejectCapacityReservationBillingOwnershipRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + }, + "CapacityReservationId": { + "target": "com.amazonaws.ec2#CapacityReservationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Capacity Reservation for which to reject the request.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RejectCapacityReservationBillingOwnershipResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#RejectTransitGatewayMulticastDomainAssociations": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RejectTransitGatewayMulticastDomainAssociationsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RejectTransitGatewayMulticastDomainAssociationsResult" + }, + "traits": { + "smithy.api#documentation": "

Rejects a request to associate cross-account subnets with a transit gateway multicast domain.

" + } + }, + "com.amazonaws.ec2#RejectTransitGatewayMulticastDomainAssociationsRequest": { + "type": "structure", + "members": { + "TransitGatewayMulticastDomainId": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainId", + "traits": { + "smithy.api#documentation": "

The ID of the transit gateway multicast domain.

" + } + }, + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "traits": { + "smithy.api#documentation": "

The ID of the transit gateway attachment.

" + } + }, + "SubnetIds": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "smithy.api#documentation": "

The IDs of the subnets to associate with the transit gateway multicast domain.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RejectTransitGatewayMulticastDomainAssociationsResult": { + "type": "structure", + "members": { + "Associations": { + "target": "com.amazonaws.ec2#TransitGatewayMulticastDomainAssociations", + "traits": { + "aws.protocols#ec2QueryName": "Associations", + "smithy.api#documentation": "

Information about the multicast domain associations.

", + "smithy.api#xmlName": "associations" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#RejectTransitGatewayPeeringAttachment": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RejectTransitGatewayPeeringAttachmentRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RejectTransitGatewayPeeringAttachmentResult" + }, + "traits": { + "smithy.api#documentation": "

Rejects a transit gateway peering attachment request.

" + } + }, + "com.amazonaws.ec2#RejectTransitGatewayPeeringAttachmentRequest": { + "type": "structure", + "members": { + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the transit gateway peering attachment.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RejectTransitGatewayPeeringAttachmentResult": { + "type": "structure", + "members": { + "TransitGatewayPeeringAttachment": { + "target": "com.amazonaws.ec2#TransitGatewayPeeringAttachment", + "traits": { + "aws.protocols#ec2QueryName": "TransitGatewayPeeringAttachment", + "smithy.api#documentation": "

The transit gateway peering attachment.

", + "smithy.api#xmlName": "transitGatewayPeeringAttachment" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#RejectTransitGatewayVpcAttachment": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RejectTransitGatewayVpcAttachmentRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RejectTransitGatewayVpcAttachmentResult" + }, + "traits": { + "smithy.api#documentation": "

Rejects a request to attach a VPC to a transit gateway.

\n

The VPC attachment must be in the pendingAcceptance state.\n Use DescribeTransitGatewayVpcAttachments to view your pending VPC attachment requests.\n Use AcceptTransitGatewayVpcAttachment to accept a VPC attachment request.

" + } + }, + "com.amazonaws.ec2#RejectTransitGatewayVpcAttachmentRequest": { + "type": "structure", + "members": { + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the attachment.

", + "smithy.api#required": {} + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RejectTransitGatewayVpcAttachmentResult": { + "type": "structure", + "members": { + "TransitGatewayVpcAttachment": { + "target": "com.amazonaws.ec2#TransitGatewayVpcAttachment", + "traits": { + "aws.protocols#ec2QueryName": "TransitGatewayVpcAttachment", + "smithy.api#documentation": "

Information about the attachment.

", + "smithy.api#xmlName": "transitGatewayVpcAttachment" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#RejectVpcEndpointConnections": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RejectVpcEndpointConnectionsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RejectVpcEndpointConnectionsResult" + }, + "traits": { + "smithy.api#documentation": "

Rejects VPC endpoint connection requests to your VPC endpoint service.

" + } + }, + "com.amazonaws.ec2#RejectVpcEndpointConnectionsRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "ServiceId": { + "target": "com.amazonaws.ec2#VpcEndpointServiceId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the service.

", + "smithy.api#required": {} + } + }, + "VpcEndpointIds": { + "target": "com.amazonaws.ec2#VpcEndpointIdList", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of the VPC endpoints.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "VpcEndpointId" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RejectVpcEndpointConnectionsResult": { + "type": "structure", + "members": { + "Unsuccessful": { + "target": "com.amazonaws.ec2#UnsuccessfulItemSet", + "traits": { + "aws.protocols#ec2QueryName": "Unsuccessful", + "smithy.api#documentation": "

Information about the endpoints that were not rejected, if applicable.

", + "smithy.api#xmlName": "unsuccessful" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#RejectVpcPeeringConnection": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RejectVpcPeeringConnectionRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RejectVpcPeeringConnectionResult" + }, + "traits": { + "smithy.api#documentation": "

Rejects a VPC peering connection request. The VPC peering connection must be in the\n\t\t\t\tpending-acceptance state. Use the DescribeVpcPeeringConnections request\n\t\t\tto view your outstanding VPC peering connection requests. To delete an active VPC peering\n\t\t\tconnection, or to delete a VPC peering connection request that you initiated, use\tDeleteVpcPeeringConnection.

" + } + }, + "com.amazonaws.ec2#RejectVpcPeeringConnectionRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "VpcPeeringConnectionId": { + "target": "com.amazonaws.ec2#VpcPeeringConnectionId", + "traits": { + "aws.protocols#ec2QueryName": "VpcPeeringConnectionId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the VPC peering connection.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "vpcPeeringConnectionId" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RejectVpcPeeringConnectionResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ReleaseAddress": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ReleaseAddressRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Releases the specified Elastic IP address.

\n

[Default VPC] Releasing an Elastic IP address automatically disassociates it\n\t\t\t\tfrom any instance that it's associated with. Alternatively, you can disassociate an Elastic IP address without\n\t\t\t\treleasing it.

\n

[Nondefault VPC] You must disassociate the Elastic IP address\n\t\t\t before you can release it. Otherwise, Amazon EC2 returns an error (InvalidIPAddress.InUse).

\n

After releasing an Elastic IP address, it is released to the IP address pool. \n Be sure to update your DNS records and any servers or devices that communicate with the address. \n If you attempt to release an Elastic IP address that you already released, you'll get an\n AuthFailure error if the address is already allocated to another Amazon Web Services account.

\n

After you release an Elastic IP address, you might be able to recover it.\n For more information, see Release an Elastic IP address.

", + "smithy.api#examples": [ + { + "title": "To release an Elastic IP address", + "documentation": "This example releases the specified Elastic IP address.", + "input": { + "AllocationId": "eipalloc-64d5890a" + } + } + ] + } + }, + "com.amazonaws.ec2#ReleaseAddressRequest": { + "type": "structure", + "members": { + "AllocationId": { + "target": "com.amazonaws.ec2#AllocationId", + "traits": { + "smithy.api#documentation": "

The allocation ID. This parameter is required.

" + } + }, + "PublicIp": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

Deprecated.

" + } + }, + "NetworkBorderGroup": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services advertises\n IP addresses.

\n

If you provide an incorrect network border group, you receive an InvalidAddress.NotFound error.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ReleaseHosts": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ReleaseHostsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ReleaseHostsResult" + }, + "traits": { + "smithy.api#documentation": "

When you no longer want to use an On-Demand Dedicated Host it can be released.\n On-Demand billing is stopped and the host goes into released state. The\n host ID of Dedicated Hosts that have been released can no longer be specified in another\n request, for example, to modify the host. You must stop or terminate all instances on a\n host before it can be released.

\n

When Dedicated Hosts are released, it may take some time for them to stop counting\n toward your limit and you may receive capacity errors when trying to allocate new\n Dedicated Hosts. Wait a few minutes and then try again.

\n

Released hosts still appear in a DescribeHosts response.

" + } + }, + "com.amazonaws.ec2#ReleaseHostsRequest": { + "type": "structure", + "members": { + "HostIds": { + "target": "com.amazonaws.ec2#RequestHostIdList", + "traits": { + "aws.protocols#ec2QueryName": "HostId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IDs of the Dedicated Hosts to release.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "hostId" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ReleaseHostsResult": { + "type": "structure", + "members": { + "Successful": { + "target": "com.amazonaws.ec2#ResponseHostIdList", + "traits": { + "aws.protocols#ec2QueryName": "Successful", + "smithy.api#documentation": "

The IDs of the Dedicated Hosts that were successfully released.

", + "smithy.api#xmlName": "successful" + } + }, + "Unsuccessful": { + "target": "com.amazonaws.ec2#UnsuccessfulItemList", + "traits": { + "aws.protocols#ec2QueryName": "Unsuccessful", + "smithy.api#documentation": "

The IDs of the Dedicated Hosts that could not be released, including an error\n message.

", + "smithy.api#xmlName": "unsuccessful" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ReleaseIpamPoolAllocation": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ReleaseIpamPoolAllocationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ReleaseIpamPoolAllocationResult" + }, + "traits": { + "smithy.api#documentation": "

Release an allocation within an IPAM pool. The Region you use should be the IPAM pool locale. The locale is the Amazon Web Services Region where this IPAM pool is available for allocations. You can only use this action to release manual allocations. To remove an allocation for a resource without deleting the resource, set its monitored state to false using ModifyIpamResourceCidr. For more information, see Release an allocation in the Amazon VPC IPAM User Guide.\n

\n \n

All EC2 API actions follow an eventual consistency model.

\n
" + } + }, + "com.amazonaws.ec2#ReleaseIpamPoolAllocationRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "IpamPoolId": { + "target": "com.amazonaws.ec2#IpamPoolId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the IPAM pool which contains the allocation you want to release.

", + "smithy.api#required": {} + } + }, + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The CIDR of the allocation you want to release.

", + "smithy.api#required": {} + } + }, + "IpamPoolAllocationId": { + "target": "com.amazonaws.ec2#IpamPoolAllocationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the allocation.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ReleaseIpamPoolAllocationResult": { + "type": "structure", + "members": { + "Success": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Success", + "smithy.api#documentation": "

Indicates if the release was successful.

", + "smithy.api#xmlName": "success" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#RemoveIpamOperatingRegion": { + "type": "structure", + "members": { + "RegionName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The name of the operating Region you want to remove.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Remove an operating Region from an IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

\n

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide\n

" + } + }, + "com.amazonaws.ec2#RemoveIpamOperatingRegionSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#RemoveIpamOperatingRegion" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 50 + } + } + }, + "com.amazonaws.ec2#RemoveIpamOrganizationalUnitExclusion": { + "type": "structure", + "members": { + "OrganizationsEntityPath": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

An Amazon Web Services Organizations entity path. Build the path for the OU(s) using Amazon Web Services Organizations IDs separated by a /. Include all child OUs by ending the path with /*.

\n \n

For more information on how to construct an entity path, see Understand the Amazon Web Services Organizations entity path in the Amazon Web Services Identity and Access Management User Guide.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Remove an Organizational Unit (OU) exclusion to your IPAM. If your IPAM is integrated with Amazon Web Services Organizations and you add an organizational unit (OU) exclusion, IPAM will not manage the IP addresses in accounts in that OU exclusion. There is a limit on the number of exclusions you can create. For more information, see Quotas for your IPAM in the Amazon VPC IPAM User Guide.

" + } + }, + "com.amazonaws.ec2#RemoveIpamOrganizationalUnitExclusionSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#RemoveIpamOrganizationalUnitExclusion" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 10 + } + } + }, + "com.amazonaws.ec2#RemovePrefixListEntries": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#RemovePrefixListEntry" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 100 + } + } + }, + "com.amazonaws.ec2#RemovePrefixListEntry": { + "type": "structure", + "members": { + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The CIDR block.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

An entry for a prefix list.

" + } + }, + "com.amazonaws.ec2#ReplaceIamInstanceProfileAssociation": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ReplaceIamInstanceProfileAssociationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ReplaceIamInstanceProfileAssociationResult" + }, + "traits": { + "smithy.api#documentation": "

Replaces an IAM instance profile for the specified running instance. You can use\n this action to change the IAM instance profile that's associated with an instance\n without having to disassociate the existing IAM instance profile first.

\n

Use DescribeIamInstanceProfileAssociations to get the association\n ID.

" + } + }, + "com.amazonaws.ec2#ReplaceIamInstanceProfileAssociationRequest": { + "type": "structure", + "members": { + "IamInstanceProfile": { + "target": "com.amazonaws.ec2#IamInstanceProfileSpecification", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IAM instance profile.

", + "smithy.api#required": {} + } + }, + "AssociationId": { + "target": "com.amazonaws.ec2#IamInstanceProfileAssociationId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the existing IAM instance profile association.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ReplaceIamInstanceProfileAssociationResult": { + "type": "structure", + "members": { + "IamInstanceProfileAssociation": { + "target": "com.amazonaws.ec2#IamInstanceProfileAssociation", + "traits": { + "aws.protocols#ec2QueryName": "IamInstanceProfileAssociation", + "smithy.api#documentation": "

Information about the IAM instance profile association.

", + "smithy.api#xmlName": "iamInstanceProfileAssociation" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ReplaceImageCriteriaInAllowedImagesSettings": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ReplaceImageCriteriaInAllowedImagesSettingsRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ReplaceImageCriteriaInAllowedImagesSettingsResult" + }, + "traits": { + "smithy.api#documentation": "

Sets or replaces the criteria for Allowed AMIs.

\n \n

The Allowed AMIs feature does not restrict the AMIs owned by your account. Regardless of\n the criteria you set, the AMIs created by your account will always be discoverable and\n usable by users in your account.

\n
\n

For more information, see Control the discovery and use of AMIs in\n Amazon EC2 with Allowed AMIs in\n Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#ReplaceImageCriteriaInAllowedImagesSettingsRequest": { + "type": "structure", + "members": { + "ImageCriteria": { + "target": "com.amazonaws.ec2#ImageCriterionRequestList", + "traits": { + "smithy.api#documentation": "

The list of criteria that are evaluated to determine whether AMIs are discoverable and\n usable in the account in the specified Amazon Web Services Region.

", + "smithy.api#xmlName": "ImageCriterion" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ReplaceImageCriteriaInAllowedImagesSettingsResult": { + "type": "structure", + "members": { + "ReturnValue": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ReplaceNetworkAclAssociation": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ReplaceNetworkAclAssociationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ReplaceNetworkAclAssociationResult" + }, + "traits": { + "smithy.api#documentation": "

Changes which network ACL a subnet is associated with. By default when you create a\n\t\t\tsubnet, it's automatically associated with the default network ACL. For more\n\t\t\tinformation, see Network ACLs in the Amazon VPC User Guide.

\n

This is an idempotent operation.

", + "smithy.api#examples": [ + { + "title": "To replace the network ACL associated with a subnet", + "documentation": "This example associates the specified network ACL with the subnet for the specified network ACL association.", + "input": { + "AssociationId": "aclassoc-e5b95c8c", + "NetworkAclId": "acl-5fb85d36" + }, + "output": { + "NewAssociationId": "aclassoc-3999875b" + } + } + ] + } + }, + "com.amazonaws.ec2#ReplaceNetworkAclAssociationRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "AssociationId": { + "target": "com.amazonaws.ec2#NetworkAclAssociationId", + "traits": { + "aws.protocols#ec2QueryName": "AssociationId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the current association between the original network ACL and the subnet.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "associationId" + } + }, + "NetworkAclId": { + "target": "com.amazonaws.ec2#NetworkAclId", + "traits": { + "aws.protocols#ec2QueryName": "NetworkAclId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the new network ACL to associate with the subnet.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "networkAclId" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ReplaceNetworkAclAssociationResult": { + "type": "structure", + "members": { + "NewAssociationId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NewAssociationId", + "smithy.api#documentation": "

The ID of the new association.

", + "smithy.api#xmlName": "newAssociationId" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ReplaceNetworkAclEntry": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ReplaceNetworkAclEntryRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Replaces an entry (rule) in a network ACL. For more information, see Network ACLs in the\n\t\t\t\tAmazon VPC User Guide.

", + "smithy.api#examples": [ + { + "title": "To replace a network ACL entry", + "documentation": "This example replaces an entry for the specified network ACL. The new rule 100 allows ingress traffic from 203.0.113.12/24 on UDP port 53 (DNS) into any associated subnet.", + "input": { + "NetworkAclId": "acl-5fb85d36", + "RuleNumber": 100, + "Protocol": "17", + "RuleAction": "allow", + "Egress": false, + "CidrBlock": "203.0.113.12/24", + "PortRange": { + "From": 53, + "To": 53 + } + } + } + ] + } + }, + "com.amazonaws.ec2#ReplaceNetworkAclEntryRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "NetworkAclId": { + "target": "com.amazonaws.ec2#NetworkAclId", + "traits": { + "aws.protocols#ec2QueryName": "NetworkAclId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the ACL.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "networkAclId" + } + }, + "RuleNumber": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "RuleNumber", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The rule number of the entry to replace.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "ruleNumber" + } + }, + "Protocol": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Protocol", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The protocol number. A value of \"-1\" means all protocols. If you specify \"-1\" or a\n protocol number other than \"6\" (TCP), \"17\" (UDP), or \"1\" (ICMP), traffic on all ports is \n allowed, regardless of any ports or ICMP types or codes that you specify. If you specify \n protocol \"58\" (ICMPv6) and specify an IPv4 CIDR block, traffic for all ICMP types and \n codes allowed, regardless of any that you specify. If you specify protocol \"58\" (ICMPv6) \n and specify an IPv6 CIDR block, you must specify an ICMP type and code.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "protocol" + } + }, + "RuleAction": { + "target": "com.amazonaws.ec2#RuleAction", + "traits": { + "aws.protocols#ec2QueryName": "RuleAction", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Indicates whether to allow or deny the traffic that matches the rule.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "ruleAction" + } + }, + "Egress": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Egress", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Indicates whether to replace the egress rule.

\n

Default: If no value is specified, we replace the ingress rule.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "egress" + } + }, + "CidrBlock": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "CidrBlock", + "smithy.api#documentation": "

The IPv4 network range to allow or deny, in CIDR notation (for example\n 172.16.0.0/24).

", + "smithy.api#xmlName": "cidrBlock" + } + }, + "Ipv6CidrBlock": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Ipv6CidrBlock", + "smithy.api#documentation": "

The IPv6 network range to allow or deny, in CIDR notation (for example\n 2001:bd8:1234:1a00::/64).

", + "smithy.api#xmlName": "ipv6CidrBlock" + } + }, + "IcmpTypeCode": { + "target": "com.amazonaws.ec2#IcmpTypeCode", + "traits": { + "smithy.api#documentation": "

ICMP protocol: The ICMP or ICMPv6 type and code. Required if specifying protocol\n\t\t 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR block.

", + "smithy.api#xmlName": "Icmp" + } + }, + "PortRange": { + "target": "com.amazonaws.ec2#PortRange", + "traits": { + "aws.protocols#ec2QueryName": "PortRange", + "smithy.api#documentation": "

TCP or UDP protocols: The range of ports the rule applies to. \n\t\t Required if specifying protocol 6 (TCP) or 17 (UDP).

", + "smithy.api#xmlName": "portRange" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ReplaceRootVolumeTask": { + "type": "structure", + "members": { + "ReplaceRootVolumeTaskId": { + "target": "com.amazonaws.ec2#ReplaceRootVolumeTaskId", + "traits": { + "aws.protocols#ec2QueryName": "ReplaceRootVolumeTaskId", + "smithy.api#documentation": "

The ID of the root volume replacement task.

", + "smithy.api#xmlName": "replaceRootVolumeTaskId" + } + }, + "InstanceId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance for which the root volume replacement task was created.

", + "smithy.api#xmlName": "instanceId" + } + }, + "TaskState": { + "target": "com.amazonaws.ec2#ReplaceRootVolumeTaskState", + "traits": { + "aws.protocols#ec2QueryName": "TaskState", + "smithy.api#documentation": "

The state of the task. The task can be in one of the following states:

\n ", + "smithy.api#xmlName": "taskState" + } + }, + "StartTime": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "StartTime", + "smithy.api#documentation": "

The time the task was started.

", + "smithy.api#xmlName": "startTime" + } + }, + "CompleteTime": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "CompleteTime", + "smithy.api#documentation": "

The time the task completed.

", + "smithy.api#xmlName": "completeTime" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags assigned to the task.

", + "smithy.api#xmlName": "tagSet" + } + }, + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", + "traits": { + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the AMI used to create the replacement root volume.

", + "smithy.api#xmlName": "imageId" + } + }, + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", + "traits": { + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The ID of the snapshot used to create the replacement root volume.

", + "smithy.api#xmlName": "snapshotId" + } + }, + "DeleteReplacedRootVolume": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DeleteReplacedRootVolume", + "smithy.api#documentation": "

Indicates whether the original root volume is to be deleted after the root volume \n replacement task completes.

", + "smithy.api#xmlName": "deleteReplacedRootVolume" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about a root volume replacement task.

" + } + }, + "com.amazonaws.ec2#ReplaceRootVolumeTaskId": { + "type": "string" + }, + "com.amazonaws.ec2#ReplaceRootVolumeTaskIds": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ReplaceRootVolumeTaskId", + "traits": { + "smithy.api#xmlName": "ReplaceRootVolumeTaskId" + } + } + }, + "com.amazonaws.ec2#ReplaceRootVolumeTaskState": { + "type": "enum", + "members": { + "pending": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pending" + } + }, + "in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "in-progress" + } + }, + "failing": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "failing" + } + }, + "succeeded": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "succeeded" + } + }, + "failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "failed" + } + }, + "failed_detached": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "failed-detached" + } + } + } + }, + "com.amazonaws.ec2#ReplaceRootVolumeTasks": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ReplaceRootVolumeTask", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ReplaceRoute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ReplaceRouteRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Replaces an existing route within a route table in a VPC.

\n

You must specify either a destination CIDR block or a prefix list ID. You must also specify \n exactly one of the resources from the parameter list, or reset the local route to its default \n target.

\n

For more information, see Route tables in the\n Amazon VPC User Guide.

", + "smithy.api#examples": [ + { + "title": "To replace a route", + "documentation": "This example replaces the specified route in the specified table table. The new route matches the specified CIDR and sends the traffic to the specified virtual private gateway.", + "input": { + "RouteTableId": "rtb-22574640", + "DestinationCidrBlock": "10.0.0.0/16", + "GatewayId": "vgw-9a4cacf3" + } + } + ] + } + }, + "com.amazonaws.ec2#ReplaceRouteRequest": { + "type": "structure", + "members": { + "DestinationPrefixListId": { + "target": "com.amazonaws.ec2#PrefixListResourceId", + "traits": { + "smithy.api#documentation": "

The ID of the prefix list for the route.

" + } + }, + "VpcEndpointId": { + "target": "com.amazonaws.ec2#VpcEndpointId", + "traits": { + "smithy.api#documentation": "

The ID of a VPC endpoint. Supported for Gateway Load Balancer endpoints only.

" + } + }, + "LocalTarget": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Specifies whether to reset the local route to its default target (local).

" + } + }, + "TransitGatewayId": { + "target": "com.amazonaws.ec2#TransitGatewayId", + "traits": { + "smithy.api#documentation": "

The ID of a transit gateway.

" + } + }, + "LocalGatewayId": { + "target": "com.amazonaws.ec2#LocalGatewayId", + "traits": { + "smithy.api#documentation": "

The ID of the local gateway.

" + } + }, + "CarrierGatewayId": { + "target": "com.amazonaws.ec2#CarrierGatewayId", + "traits": { + "smithy.api#documentation": "

[IPv4 traffic only] The ID of a carrier gateway.

" + } + }, + "CoreNetworkArn": { + "target": "com.amazonaws.ec2#CoreNetworkArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the core network.

" + } + }, + "OdbNetworkArn": { + "target": "com.amazonaws.ec2#OdbNetworkArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the ODB network.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "RouteTableId": { + "target": "com.amazonaws.ec2#RouteTableId", + "traits": { + "aws.protocols#ec2QueryName": "RouteTableId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the route table.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "routeTableId" + } + }, + "DestinationCidrBlock": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "DestinationCidrBlock", + "smithy.api#documentation": "

The IPv4 CIDR address block used for the destination match. The value that you\n\t\t\tprovide must match the CIDR of an existing route in the table.

", + "smithy.api#xmlName": "destinationCidrBlock" + } + }, + "GatewayId": { + "target": "com.amazonaws.ec2#RouteGatewayId", + "traits": { + "aws.protocols#ec2QueryName": "GatewayId", + "smithy.api#documentation": "

The ID of an internet gateway or virtual private gateway.

", + "smithy.api#xmlName": "gatewayId" + } + }, + "DestinationIpv6CidrBlock": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "DestinationIpv6CidrBlock", + "smithy.api#documentation": "

The IPv6 CIDR address block used for the destination match. The value that you\n\t\t\tprovide must match the CIDR of an existing route in the table.

", + "smithy.api#xmlName": "destinationIpv6CidrBlock" + } + }, + "EgressOnlyInternetGatewayId": { + "target": "com.amazonaws.ec2#EgressOnlyInternetGatewayId", + "traits": { + "aws.protocols#ec2QueryName": "EgressOnlyInternetGatewayId", + "smithy.api#documentation": "

[IPv6 traffic only] The ID of an egress-only internet gateway.

", + "smithy.api#xmlName": "egressOnlyInternetGatewayId" + } + }, + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", + "traits": { + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of a NAT instance in your VPC.

", + "smithy.api#xmlName": "instanceId" + } + }, + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInterfaceId", + "smithy.api#documentation": "

The ID of a network interface.

", + "smithy.api#xmlName": "networkInterfaceId" + } + }, + "VpcPeeringConnectionId": { + "target": "com.amazonaws.ec2#VpcPeeringConnectionId", + "traits": { + "aws.protocols#ec2QueryName": "VpcPeeringConnectionId", + "smithy.api#documentation": "

The ID of a VPC peering connection.

", + "smithy.api#xmlName": "vpcPeeringConnectionId" + } + }, + "NatGatewayId": { + "target": "com.amazonaws.ec2#NatGatewayId", + "traits": { + "aws.protocols#ec2QueryName": "NatGatewayId", + "smithy.api#documentation": "

[IPv4 traffic only] The ID of a NAT gateway.

", + "smithy.api#xmlName": "natGatewayId" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ReplaceRouteTableAssociation": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ReplaceRouteTableAssociationRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ReplaceRouteTableAssociationResult" + }, + "traits": { + "smithy.api#documentation": "

Changes the route table associated with a given subnet, internet gateway, or virtual private gateway in a VPC. After the operation\n completes, the subnet or gateway uses the routes in the new route table. For more\n information about route tables, see Route\n tables in the Amazon VPC User Guide.

\n

You can also use this operation to change which table is the main route table in the VPC. Specify the main route table's association ID and the route table ID of the new main route table.

", + "smithy.api#examples": [ + { + "title": "To replace the route table associated with a subnet", + "documentation": "This example associates the specified route table with the subnet for the specified route table association.", + "input": { + "AssociationId": "rtbassoc-781d0d1a", + "RouteTableId": "rtb-22574640" + }, + "output": { + "NewAssociationId": "rtbassoc-3a1f0f58" + } + } + ] + } + }, + "com.amazonaws.ec2#ReplaceRouteTableAssociationRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "AssociationId": { + "target": "com.amazonaws.ec2#RouteTableAssociationId", + "traits": { + "aws.protocols#ec2QueryName": "AssociationId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The association ID.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "associationId" + } + }, + "RouteTableId": { + "target": "com.amazonaws.ec2#RouteTableId", + "traits": { + "aws.protocols#ec2QueryName": "RouteTableId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the new route table to associate with the subnet.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "routeTableId" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ReplaceRouteTableAssociationResult": { + "type": "structure", + "members": { + "NewAssociationId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "NewAssociationId", + "smithy.api#documentation": "

The ID of the new association.

", + "smithy.api#xmlName": "newAssociationId" + } + }, + "AssociationState": { + "target": "com.amazonaws.ec2#RouteTableAssociationState", + "traits": { + "aws.protocols#ec2QueryName": "AssociationState", + "smithy.api#documentation": "

The state of the association.

", + "smithy.api#xmlName": "associationState" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ReplaceTransitGatewayRoute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ReplaceTransitGatewayRouteRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ReplaceTransitGatewayRouteResult" + }, + "traits": { + "smithy.api#documentation": "

Replaces the specified route in the specified transit gateway route table.

" + } + }, + "com.amazonaws.ec2#ReplaceTransitGatewayRouteRequest": { + "type": "structure", + "members": { + "DestinationCidrBlock": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The CIDR range used for the destination match. Routing decisions are based on the most specific match.

", + "smithy.api#required": {} + } + }, + "TransitGatewayRouteTableId": { + "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the route table.

", + "smithy.api#required": {} + } + }, + "TransitGatewayAttachmentId": { + "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "traits": { + "smithy.api#documentation": "

The ID of the attachment.

" + } + }, + "Blackhole": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether traffic matching this route is to be dropped.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ReplaceTransitGatewayRouteResult": { + "type": "structure", + "members": { + "Route": { + "target": "com.amazonaws.ec2#TransitGatewayRoute", + "traits": { + "aws.protocols#ec2QueryName": "Route", + "smithy.api#documentation": "

Information about the modified route.

", + "smithy.api#xmlName": "route" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ReplaceVpnTunnel": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ReplaceVpnTunnelRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ReplaceVpnTunnelResult" + }, + "traits": { + "smithy.api#documentation": "

Trigger replacement of specified VPN tunnel.

" + } + }, + "com.amazonaws.ec2#ReplaceVpnTunnelRequest": { + "type": "structure", + "members": { + "VpnConnectionId": { + "target": "com.amazonaws.ec2#VpnConnectionId", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Site-to-Site VPN connection.

", + "smithy.api#required": {} + } + }, + "VpnTunnelOutsideIpAddress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The external IP address of the VPN tunnel.

", + "smithy.api#required": {} + } + }, + "ApplyPendingMaintenance": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Trigger pending tunnel endpoint maintenance.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ReplaceVpnTunnelResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Confirmation of replace tunnel operation.

", + "smithy.api#xmlName": "return" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ReplacementStrategy": { + "type": "enum", + "members": { + "LAUNCH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "launch" + } + }, + "LAUNCH_BEFORE_TERMINATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "launch-before-terminate" + } + } + } + }, + "com.amazonaws.ec2#ReportInstanceReasonCodes": { + "type": "enum", + "members": { + "instance_stuck_in_state": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "instance-stuck-in-state" + } + }, + "unresponsive": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "unresponsive" + } + }, + "not_accepting_credentials": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "not-accepting-credentials" + } + }, + "password_not_available": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "password-not-available" + } + }, + "performance_network": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "performance-network" + } + }, + "performance_instance_store": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "performance-instance-store" + } + }, + "performance_ebs_volume": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "performance-ebs-volume" + } + }, + "performance_other": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "performance-other" + } + }, + "other": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "other" + } + } + } + }, + "com.amazonaws.ec2#ReportInstanceStatus": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ReportInstanceStatusRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Submits feedback about the status of an instance. The instance must be in the\n running state. If your experience with the instance differs from the\n instance status returned by DescribeInstanceStatus, use ReportInstanceStatus to report your experience with the instance. Amazon\n EC2 collects this information to improve the accuracy of status checks.

\n

Use of this action does not change the value returned by DescribeInstanceStatus.

" + } + }, + "com.amazonaws.ec2#ReportInstanceStatusRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "Instances": { + "target": "com.amazonaws.ec2#InstanceIdStringList", + "traits": { + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The instances.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "instanceId" + } + }, + "Status": { + "target": "com.amazonaws.ec2#ReportStatusType", + "traits": { + "aws.protocols#ec2QueryName": "Status", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The status of all instances listed.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "status" + } + }, + "StartTime": { + "target": "com.amazonaws.ec2#DateTime", + "traits": { + "aws.protocols#ec2QueryName": "StartTime", + "smithy.api#documentation": "

The time at which the reported instance health state began.

", + "smithy.api#xmlName": "startTime" + } + }, + "EndTime": { + "target": "com.amazonaws.ec2#DateTime", + "traits": { + "aws.protocols#ec2QueryName": "EndTime", + "smithy.api#documentation": "

The time at which the reported instance health state ended.

", + "smithy.api#xmlName": "endTime" + } + }, + "ReasonCodes": { + "target": "com.amazonaws.ec2#ReasonCodesList", + "traits": { + "aws.protocols#ec2QueryName": "ReasonCode", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The reason codes that describe the health state of your instance.

\n ", + "smithy.api#required": {}, + "smithy.api#xmlName": "reasonCode" + } + }, + "Description": { + "target": "com.amazonaws.ec2#ReportInstanceStatusRequestDescription", + "traits": { + "aws.protocols#ec2QueryName": "Description", + "smithy.api#deprecated": { + "message": "This member has been deprecated" + }, + "smithy.api#documentation": "

Descriptive text about the health state of your instance.

", + "smithy.api#xmlName": "description" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ReportInstanceStatusRequestDescription": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.ec2#ReportState": { + "type": "enum", + "members": { + "running": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "running" + } + }, + "cancelled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "cancelled" + } + }, + "complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "complete" + } + }, + "error": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "error" + } + } + } + }, + "com.amazonaws.ec2#ReportStatusType": { + "type": "enum", + "members": { + "ok": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ok" + } + }, + "impaired": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "impaired" + } + } + } + }, + "com.amazonaws.ec2#RequestFilterPortRange": { + "type": "structure", + "members": { + "FromPort": { + "target": "com.amazonaws.ec2#Port", + "traits": { + "smithy.api#documentation": "

The first port in the range.

" + } + }, + "ToPort": { + "target": "com.amazonaws.ec2#Port", + "traits": { + "smithy.api#documentation": "

The last port in the range.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a port range.

" + } + }, + "com.amazonaws.ec2#RequestHostIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DedicatedHostId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#RequestHostIdSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#DedicatedHostId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#RequestInstanceTypeList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#InstanceType" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 100 + } + } + }, + "com.amazonaws.ec2#RequestIpamResourceTag": { + "type": "structure", + "members": { + "Key": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

" + } + }, + "Value": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The value for the tag.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A tag on an IPAM resource.

" + } + }, + "com.amazonaws.ec2#RequestIpamResourceTagList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#RequestIpamResourceTag", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#RequestLaunchTemplateData": { + "type": "structure", + "members": { + "KernelId": { + "target": "com.amazonaws.ec2#KernelId", + "traits": { + "smithy.api#documentation": "

The ID of the kernel.

\n \n

We recommend that you use PV-GRUB instead of kernels and RAM disks. For more\n information, see User provided kernels in the\n Amazon Linux 2 User Guide.

\n
" + } + }, + "EbsOptimized": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether the instance is optimized for Amazon EBS I/O. This optimization\n provides dedicated throughput to Amazon EBS and an optimized configuration stack to\n provide optimal Amazon EBS I/O performance. This optimization isn't available with all\n instance types. Additional usage charges apply when using an EBS-optimized\n instance.

" + } + }, + "IamInstanceProfile": { + "target": "com.amazonaws.ec2#LaunchTemplateIamInstanceProfileSpecificationRequest", + "traits": { + "smithy.api#documentation": "

The name or Amazon Resource Name (ARN) of an IAM instance profile.

" + } + }, + "BlockDeviceMappings": { + "target": "com.amazonaws.ec2#LaunchTemplateBlockDeviceMappingRequestList", + "traits": { + "smithy.api#documentation": "

The block device mapping.

", + "smithy.api#xmlName": "BlockDeviceMapping" + } + }, + "NetworkInterfaces": { + "target": "com.amazonaws.ec2#LaunchTemplateInstanceNetworkInterfaceSpecificationRequestList", + "traits": { + "smithy.api#documentation": "

The network interfaces for the instance.

", + "smithy.api#xmlName": "NetworkInterface" + } + }, + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", + "traits": { + "smithy.api#documentation": "

The ID of the AMI in the format ami-0ac394d6a3example.

\n

Alternatively, you can specify a Systems Manager parameter, using one of the following\n formats. The Systems Manager parameter will resolve to an AMI ID on launch.

\n

To reference a public parameter:

\n \n

To reference a parameter stored in the same account:

\n \n

To reference a parameter shared from another Amazon Web Services account:

\n \n

For more information, see Use a Systems Manager parameter instead of an AMI ID in the\n Amazon EC2 User Guide.

\n \n

If the launch template will be used for an EC2 Fleet or Spot Fleet, note the\n following:

\n \n
" + } + }, + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", + "traits": { + "smithy.api#documentation": "

The instance type. For more information, see Amazon EC2 instance types in\n the Amazon EC2 User Guide.

\n

If you specify InstanceType, you can't specify\n InstanceRequirements.

" + } + }, + "KeyName": { + "target": "com.amazonaws.ec2#KeyPairName", + "traits": { + "smithy.api#documentation": "

The name of the key pair. You can create a key pair using CreateKeyPair or\n ImportKeyPair.

\n \n

If you do not specify a key pair, you can't connect to the instance unless you\n choose an AMI that is configured to allow users another way to log in.

\n
" + } + }, + "Monitoring": { + "target": "com.amazonaws.ec2#LaunchTemplatesMonitoringRequest", + "traits": { + "smithy.api#documentation": "

The monitoring for the instance.

" + } + }, + "Placement": { + "target": "com.amazonaws.ec2#LaunchTemplatePlacementRequest", + "traits": { + "smithy.api#documentation": "

The placement for the instance.

" + } + }, + "RamDiskId": { + "target": "com.amazonaws.ec2#RamdiskId", + "traits": { + "smithy.api#documentation": "

The ID of the RAM disk.

\n \n

We recommend that you use PV-GRUB instead of kernels and RAM disks. For more\n information, see User provided\n kernels in the Amazon EC2 User Guide.

\n
" + } + }, + "DisableApiTermination": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether termination protection is enabled for the instance. The default is\n false, which means that you can terminate the instance using the Amazon EC2\n console, command line tools, or API. You can enable termination protection when you\n launch an instance, while the instance is running, or while the instance is\n stopped.

" + } + }, + "InstanceInitiatedShutdownBehavior": { + "target": "com.amazonaws.ec2#ShutdownBehavior", + "traits": { + "smithy.api#documentation": "

Indicates whether an instance stops or terminates when you initiate shutdown from the\n instance (using the operating system command for system shutdown).

\n

Default: stop\n

" + } + }, + "UserData": { + "target": "com.amazonaws.ec2#SensitiveUserData", + "traits": { + "smithy.api#documentation": "

The user data to make available to the instance. You must provide base64-encoded text.\n User data is limited to 16 KB. For more information, see Run commands when you launch an EC2\n instance with user data input in the\n Amazon EC2 User Guide.

\n

If you are creating the launch template for use with Batch, the user\n data must be provided in the MIME multi-part archive format. For more information, see Amazon EC2 user data in launch templates in the\n Batch User Guide.

" + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#LaunchTemplateTagSpecificationRequestList", + "traits": { + "smithy.api#documentation": "

The tags to apply to the resources that are created during instance launch. These tags\n are not applied to the launch template.

", + "smithy.api#xmlName": "TagSpecification" + } + }, + "ElasticGpuSpecifications": { + "target": "com.amazonaws.ec2#ElasticGpuSpecificationList", + "traits": { + "smithy.api#deprecated": { + "since": "2024-01-08", + "message": "Specifying Elastic Graphics accelerators is no longer supported on the RunInstances API." + }, + "smithy.api#documentation": "

Deprecated.

\n \n

Amazon Elastic Graphics reached end of life on January 8, 2024.

\n
", + "smithy.api#xmlName": "ElasticGpuSpecification" + } + }, + "ElasticInferenceAccelerators": { + "target": "com.amazonaws.ec2#LaunchTemplateElasticInferenceAcceleratorList", + "traits": { + "smithy.api#deprecated": { + "since": "2024-01-08", + "message": "Specifying Elastic Inference accelerators is no longer supported on the RunInstances API." + }, + "smithy.api#documentation": "\n

Amazon Elastic Inference is no longer available.

\n
\n

An elastic inference accelerator to associate with the instance. Elastic inference\n accelerators are a resource you can attach to your Amazon EC2 instances to accelerate\n your Deep Learning (DL) inference workloads.

\n

You cannot specify accelerators from different generations in the same request.

", + "smithy.api#xmlName": "ElasticInferenceAccelerator" + } + }, + "SecurityGroupIds": { + "target": "com.amazonaws.ec2#SecurityGroupIdStringList", + "traits": { + "smithy.api#documentation": "

The IDs of the security groups.

\n

If you specify a network interface, you must specify any security groups as part of\n the network interface instead of using this parameter.

", + "smithy.api#xmlName": "SecurityGroupId" + } + }, + "SecurityGroups": { + "target": "com.amazonaws.ec2#SecurityGroupStringList", + "traits": { + "smithy.api#documentation": "

The names of the security groups. For a nondefault VPC, you must use security group\n IDs instead.

\n

If you specify a network interface, you must specify any security groups as part of\n the network interface instead of using this parameter.

", + "smithy.api#xmlName": "SecurityGroup" + } + }, + "InstanceMarketOptions": { + "target": "com.amazonaws.ec2#LaunchTemplateInstanceMarketOptionsRequest", + "traits": { + "smithy.api#documentation": "

The market (purchasing) option for the instances.

" + } + }, + "CreditSpecification": { + "target": "com.amazonaws.ec2#CreditSpecificationRequest", + "traits": { + "smithy.api#documentation": "

The credit option for CPU usage of the instance. Valid only for T instances.

" + } + }, + "CpuOptions": { + "target": "com.amazonaws.ec2#LaunchTemplateCpuOptionsRequest", + "traits": { + "smithy.api#documentation": "

The CPU options for the instance. For more information, see CPU\n options for Amazon EC2 instances in the\n Amazon EC2 User Guide.

" + } + }, + "CapacityReservationSpecification": { + "target": "com.amazonaws.ec2#LaunchTemplateCapacityReservationSpecificationRequest", + "traits": { + "smithy.api#documentation": "

The Capacity Reservation targeting option. If you do not specify this parameter, the\n instance's Capacity Reservation preference defaults to open, which enables\n it to run in any open Capacity Reservation that has matching attributes (instance type,\n platform, Availability Zone).

" + } + }, + "LicenseSpecifications": { + "target": "com.amazonaws.ec2#LaunchTemplateLicenseSpecificationListRequest", + "traits": { + "smithy.api#documentation": "

The license configurations.

", + "smithy.api#xmlName": "LicenseSpecification" + } + }, + "HibernationOptions": { + "target": "com.amazonaws.ec2#LaunchTemplateHibernationOptionsRequest", + "traits": { + "smithy.api#documentation": "

Indicates whether an instance is enabled for hibernation. This parameter is valid only\n if the instance meets the hibernation\n prerequisites. For more information, see Hibernate your Amazon EC2 instance\n in the Amazon EC2 User Guide.

" + } + }, + "MetadataOptions": { + "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptionsRequest", + "traits": { + "smithy.api#documentation": "

The metadata options for the instance. For more information, see Configure\n the Instance Metadata Service options in the\n Amazon EC2 User Guide.

" + } + }, + "EnclaveOptions": { + "target": "com.amazonaws.ec2#LaunchTemplateEnclaveOptionsRequest", + "traits": { + "smithy.api#documentation": "

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For more\n information, see What is Nitro Enclaves? in the\n Amazon Web Services Nitro Enclaves User Guide.

\n

You can't enable Amazon Web Services Nitro Enclaves and hibernation on the same instance.

" + } + }, + "InstanceRequirements": { + "target": "com.amazonaws.ec2#InstanceRequirementsRequest", + "traits": { + "smithy.api#documentation": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will\n identify instance types with these attributes.

\n

You must specify VCpuCount and MemoryMiB. All other attributes\n are optional. Any unspecified optional attribute is set to its default.

\n

When you specify multiple attributes, you get instance types that satisfy all of the\n specified attributes. If you specify multiple values for an attribute, you get instance\n types that satisfy any of the specified values.

\n

To limit the list of instance types from which Amazon EC2 can identify matching instance types, \n you can use one of the following parameters, but not both in the same request:

\n \n \n

If you specify InstanceRequirements, you can't specify\n InstanceType.

\n

Attribute-based instance type selection is only supported when using Auto Scaling\n groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in\n the launch instance\n wizard, or with the RunInstances API or\n AWS::EC2::Instance Amazon Web Services CloudFormation resource, you can't specify InstanceRequirements.

\n
\n

For more information, see Specify attributes for instance type selection for EC2 Fleet or Spot Fleet and Spot\n placement score in the Amazon EC2 User Guide.

" + } + }, + "PrivateDnsNameOptions": { + "target": "com.amazonaws.ec2#LaunchTemplatePrivateDnsNameOptionsRequest", + "traits": { + "smithy.api#documentation": "

The options for the instance hostname. The default values are inherited from the\n subnet.

" + } + }, + "MaintenanceOptions": { + "target": "com.amazonaws.ec2#LaunchTemplateInstanceMaintenanceOptionsRequest", + "traits": { + "smithy.api#documentation": "

The maintenance options for the instance.

" + } + }, + "DisableApiStop": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Indicates whether to enable the instance for stop protection. For more information,\n see Enable stop protection for your EC2 instances in the\n Amazon EC2 User Guide.

" + } + }, + "Operator": { + "target": "com.amazonaws.ec2#OperatorRequest", + "traits": { + "smithy.api#documentation": "

The entity that manages the launch template.

" + } + }, + "NetworkPerformanceOptions": { + "target": "com.amazonaws.ec2#LaunchTemplateNetworkPerformanceOptionsRequest", + "traits": { + "smithy.api#documentation": "

Contains launch template settings to boost network performance for the type of\n workload that runs on your instance.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The information to include in the launch template.

\n \n

You must specify at least one parameter for the launch template data.

\n
" + } + }, + "com.amazonaws.ec2#RequestSpotFleet": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RequestSpotFleetRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RequestSpotFleetResponse" + }, + "traits": { + "smithy.api#documentation": "

Creates a Spot Fleet request.

\n

The Spot Fleet request specifies the total target capacity and the On-Demand target\n capacity. Amazon EC2 calculates the difference between the total capacity and On-Demand\n capacity, and launches the difference as Spot capacity.

\n

You can submit a single request that includes multiple launch specifications that vary\n by instance type, AMI, Availability Zone, or subnet.

\n

By default, the Spot Fleet requests Spot Instances in the Spot Instance pool where the\n price per unit is the lowest. Each launch specification can include its own instance\n weighting that reflects the value of the instance type to your application\n workload.

\n

Alternatively, you can specify that the Spot Fleet distribute the target capacity\n across the Spot pools included in its launch specifications. By ensuring that the Spot\n Instances in your Spot Fleet are in different Spot pools, you can improve the\n availability of your fleet.

\n

You can specify tags for the Spot Fleet request and instances launched by the fleet.\n You cannot tag other resource types in a Spot Fleet request because only the\n spot-fleet-request and instance resource types are\n supported.

\n

For more information, see Spot Fleet requests\n in the Amazon EC2 User Guide.

\n \n

We strongly discourage using the RequestSpotFleet API because it is a legacy\n API with no planned investment. For options for requesting Spot Instances, see\n Which\n is the best Spot request method to use? in the\n Amazon EC2 User Guide.

\n
", + "smithy.api#examples": [ + { + "title": "To request a Spot fleet in the subnet with the lowest price", + "documentation": "This example creates a Spot fleet request with two launch specifications that differ only by subnet. The Spot fleet launches the instances in the specified subnet with the lowest price. If the instances are launched in a default VPC, they receive a public IP address by default. If the instances are launched in a nondefault VPC, they do not receive a public IP address by default. Note that you can't specify different subnets from the same Availability Zone in a Spot fleet request.", + "input": { + "SpotFleetRequestConfig": { + "SpotPrice": "0.04", + "TargetCapacity": 2, + "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", + "LaunchSpecifications": [ + { + "ImageId": "ami-1a2b3c4d", + "KeyName": "my-key-pair", + "SecurityGroups": [ + { + "GroupId": "sg-1a2b3c4d" + } + ], + "InstanceType": "m3.medium", + "SubnetId": "subnet-1a2b3c4d, subnet-3c4d5e6f", + "IamInstanceProfile": { + "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" + } + } + ] + } + }, + "output": { + "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" + } + }, + { + "title": "To request a Spot fleet in the Availability Zone with the lowest price", + "documentation": "This example creates a Spot fleet request with two launch specifications that differ only by Availability Zone. The Spot fleet launches the instances in the specified Availability Zone with the lowest price. If your account supports EC2-VPC only, Amazon EC2 launches the Spot instances in the default subnet of the Availability Zone.", + "input": { + "SpotFleetRequestConfig": { + "SpotPrice": "0.04", + "TargetCapacity": 2, + "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", + "LaunchSpecifications": [ + { + "ImageId": "ami-1a2b3c4d", + "KeyName": "my-key-pair", + "SecurityGroups": [ + { + "GroupId": "sg-1a2b3c4d" + } + ], + "InstanceType": "m3.medium", + "Placement": { + "AvailabilityZone": "us-west-2a, us-west-2b" + }, + "IamInstanceProfile": { + "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" + } + } + ] + } + }, + "output": { + "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" + } + }, + { + "title": "To launch Spot instances in a subnet and assign them public IP addresses", + "documentation": "This example assigns public addresses to instances launched in a nondefault VPC. Note that when you specify a network interface, you must include the subnet ID and security group ID using the network interface.", + "input": { + "SpotFleetRequestConfig": { + "SpotPrice": "0.04", + "TargetCapacity": 2, + "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", + "LaunchSpecifications": [ + { + "ImageId": "ami-1a2b3c4d", + "KeyName": "my-key-pair", + "InstanceType": "m3.medium", + "NetworkInterfaces": [ + { + "DeviceIndex": 0, + "SubnetId": "subnet-1a2b3c4d", + "Groups": [ + "sg-1a2b3c4d" + ], + "AssociatePublicIpAddress": true + } + ], + "IamInstanceProfile": { + "Arn": "arn:aws:iam::880185128111:instance-profile/my-iam-role" + } + } + ] + } + }, + "output": { + "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" + } + }, + { + "title": "To request a Spot fleet using the diversified allocation strategy", + "documentation": "This example creates a Spot fleet request that launches 30 instances using the diversified allocation strategy. The launch specifications differ by instance type. The Spot fleet distributes the instances across the launch specifications such that there are 10 instances of each type.", + "input": { + "SpotFleetRequestConfig": { + "SpotPrice": "0.70", + "TargetCapacity": 30, + "AllocationStrategy": "diversified", + "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", + "LaunchSpecifications": [ + { + "ImageId": "ami-1a2b3c4d", + "InstanceType": "c4.2xlarge", + "SubnetId": "subnet-1a2b3c4d" + }, + { + "ImageId": "ami-1a2b3c4d", + "InstanceType": "m3.2xlarge", + "SubnetId": "subnet-1a2b3c4d" + }, + { + "ImageId": "ami-1a2b3c4d", + "InstanceType": "r3.2xlarge", + "SubnetId": "subnet-1a2b3c4d" + } + ] + } + }, + "output": { + "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" + } } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#RejectVpcPeeringConnection": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#RejectVpcPeeringConnectionRequest" - }, - "output": { - "target": "com.amazonaws.ec2#RejectVpcPeeringConnectionResult" - }, - "traits": { - "smithy.api#documentation": "

Rejects a VPC peering connection request. The VPC peering connection must be in the\n\t\t\t\tpending-acceptance state. Use the DescribeVpcPeeringConnections request\n\t\t\tto view your outstanding VPC peering connection requests. To delete an active VPC peering\n\t\t\tconnection, or to delete a VPC peering connection request that you initiated, use\tDeleteVpcPeeringConnection.

" + ] } }, - "com.amazonaws.ec2#RejectVpcPeeringConnectionRequest": { + "com.amazonaws.ec2#RequestSpotFleetRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } }, - "VpcPeeringConnectionId": { - "target": "com.amazonaws.ec2#VpcPeeringConnectionId", + "SpotFleetRequestConfig": { + "target": "com.amazonaws.ec2#SpotFleetRequestConfigData", "traits": { - "aws.protocols#ec2QueryName": "VpcPeeringConnectionId", + "aws.protocols#ec2QueryName": "SpotFleetRequestConfig", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the VPC peering connection.

", + "smithy.api#documentation": "

The configuration for the Spot Fleet request.

", "smithy.api#required": {}, - "smithy.api#xmlName": "vpcPeeringConnectionId" + "smithy.api#xmlName": "spotFleetRequestConfig" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for RequestSpotFleet.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#RejectVpcPeeringConnectionResult": { + "com.amazonaws.ec2#RequestSpotFleetResponse": { "type": "structure", "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + "SpotFleetRequestId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "SpotFleetRequestId", + "smithy.api#documentation": "

The ID of the Spot Fleet request.

", + "smithy.api#xmlName": "spotFleetRequestId" } } }, "traits": { + "smithy.api#documentation": "

Contains the output of RequestSpotFleet.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#ReleaseAddress": { + "com.amazonaws.ec2#RequestSpotInstances": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#ReleaseAddressRequest" + "target": "com.amazonaws.ec2#RequestSpotInstancesRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.ec2#RequestSpotInstancesResult" }, "traits": { - "smithy.api#documentation": "

Releases the specified Elastic IP address.

\n

[Default VPC] Releasing an Elastic IP address automatically disassociates it\n\t\t\t\tfrom any instance that it's associated with. To disassociate an Elastic IP address without\n\t\t\t\treleasing it, use DisassociateAddress.

\n

[Nondefault VPC] You must use DisassociateAddress to disassociate the Elastic IP address\n\t\t\t before you can release it. Otherwise, Amazon EC2 returns an error (InvalidIPAddress.InUse).

\n

After releasing an Elastic IP address, it is released to the IP address pool. \n Be sure to update your DNS records and any servers or devices that communicate with the address. \n If you attempt to release an Elastic IP address that you already released, you'll get an\n AuthFailure error if the address is already allocated to another Amazon Web Services account.

\n

After you release an Elastic IP address, you might be able to recover it.\n For more information, see AllocateAddress.

", + "smithy.api#documentation": "

Creates a Spot Instance request.

\n

For more information, see Work with Spot Instance in\n the Amazon EC2 User Guide.

\n \n

We strongly discourage using the RequestSpotInstances API because it is a legacy\n API with no planned investment. For options for requesting Spot Instances, see\n Which\n is the best Spot request method to use? in the\n Amazon EC2 User Guide.

\n
", "smithy.api#examples": [ { - "title": "To release an Elastic IP address", - "documentation": "This example releases the specified Elastic IP address.", + "title": "To create a one-time Spot Instance request", + "documentation": "This example creates a one-time Spot Instance request for five instances in the specified Availability Zone. If your account supports EC2-VPC only, Amazon EC2 launches the instances in the default subnet of the specified Availability Zone.", "input": { - "AllocationId": "eipalloc-64d5890a" + "SpotPrice": "0.03", + "InstanceCount": 5, + "Type": "one-time", + "LaunchSpecification": { + "ImageId": "ami-1a2b3c4d", + "KeyName": "my-key-pair", + "SecurityGroupIds": [ + "sg-1a2b3c4d" + ], + "InstanceType": "m3.medium", + "Placement": { + "AvailabilityZone": "us-west-2a" + }, + "IamInstanceProfile": { + "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" + } + } + } + }, + { + "title": "To create a one-time Spot Instance request", + "documentation": "This example command creates a one-time Spot Instance request for five instances in the specified subnet. Amazon EC2 launches the instances in the specified subnet. If the VPC is a nondefault VPC, the instances do not receive a public IP address by default.", + "input": { + "SpotPrice": "0.050", + "InstanceCount": 5, + "Type": "one-time", + "LaunchSpecification": { + "ImageId": "ami-1a2b3c4d", + "SecurityGroupIds": [ + "sg-1a2b3c4d" + ], + "InstanceType": "m3.medium", + "SubnetId": "subnet-1a2b3c4d", + "IamInstanceProfile": { + "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" + } + } } } ] } }, - "com.amazonaws.ec2#ReleaseAddressRequest": { + "com.amazonaws.ec2#RequestSpotInstancesRequest": { "type": "structure", "members": { - "AllocationId": { - "target": "com.amazonaws.ec2#AllocationId", + "LaunchSpecification": { + "target": "com.amazonaws.ec2#RequestSpotLaunchSpecification", "traits": { - "smithy.api#documentation": "

The allocation ID. This parameter is required.

" + "smithy.api#documentation": "

The launch specification.

" } }, - "PublicIp": { - "target": "com.amazonaws.ec2#String", + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", "traits": { - "smithy.api#documentation": "

Deprecated.

" + "smithy.api#documentation": "

The key-value pair for tagging the Spot Instance request on creation. The value for\n ResourceType must be spot-instances-request, otherwise the\n Spot Instance request fails. To tag the Spot Instance request after it has been created,\n see CreateTags.

", + "smithy.api#xmlName": "TagSpecification" } }, - "NetworkBorderGroup": { - "target": "com.amazonaws.ec2#String", + "InstanceInterruptionBehavior": { + "target": "com.amazonaws.ec2#InstanceInterruptionBehavior", "traits": { - "smithy.api#documentation": "

The set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services advertises\n IP addresses.

\n

If you provide an incorrect network border group, you receive an InvalidAddress.NotFound error.

" + "smithy.api#documentation": "

The behavior when a Spot Instance is interrupted. The default is terminate.

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ReleaseHosts": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ReleaseHostsRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ReleaseHostsResult" - }, - "traits": { - "smithy.api#documentation": "

When you no longer want to use an On-Demand Dedicated Host it can be released.\n On-Demand billing is stopped and the host goes into released state. The\n host ID of Dedicated Hosts that have been released can no longer be specified in another\n request, for example, to modify the host. You must stop or terminate all instances on a\n host before it can be released.

\n

When Dedicated Hosts are released, it may take some time for them to stop counting\n toward your limit and you may receive capacity errors when trying to allocate new\n Dedicated Hosts. Wait a few minutes and then try again.

\n

Released hosts still appear in a DescribeHosts response.

" - } - }, - "com.amazonaws.ec2#ReleaseHostsRequest": { - "type": "structure", - "members": { - "HostIds": { - "target": "com.amazonaws.ec2#RequestHostIdList", - "traits": { - "aws.protocols#ec2QueryName": "HostId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IDs of the Dedicated Hosts to release.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "hostId" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ReleaseHostsResult": { - "type": "structure", - "members": { - "Successful": { - "target": "com.amazonaws.ec2#ResponseHostIdList", - "traits": { - "aws.protocols#ec2QueryName": "Successful", - "smithy.api#documentation": "

The IDs of the Dedicated Hosts that were successfully released.

", - "smithy.api#xmlName": "successful" - } }, - "Unsuccessful": { - "target": "com.amazonaws.ec2#UnsuccessfulItemList", + "SpotPrice": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Unsuccessful", - "smithy.api#documentation": "

The IDs of the Dedicated Hosts that could not be released, including an error\n message.

", - "smithy.api#xmlName": "unsuccessful" + "aws.protocols#ec2QueryName": "SpotPrice", + "smithy.api#documentation": "

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend \n using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

\n \n

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

\n
", + "smithy.api#xmlName": "spotPrice" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ReleaseIpamPoolAllocation": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ReleaseIpamPoolAllocationRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ReleaseIpamPoolAllocationResult" - }, - "traits": { - "smithy.api#documentation": "

Release an allocation within an IPAM pool. The Region you use should be the IPAM pool locale. The locale is the Amazon Web Services Region where this IPAM pool is available for allocations. You can only use this action to release manual allocations. To remove an allocation for a resource without deleting the resource, set its monitored state to false using ModifyIpamResourceCidr. For more information, see Release an allocation in the Amazon VPC IPAM User Guide.\n

\n \n

All EC2 API actions follow an eventual consistency model.

\n
" - } - }, - "com.amazonaws.ec2#ReleaseIpamPoolAllocationRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

A check for whether you have the required permissions for the action without actually making the request \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see Ensuring idempotency in\n Amazon EC2 API requests in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "clientToken" } }, - "IpamPoolId": { - "target": "com.amazonaws.ec2#IpamPoolId", + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the IPAM pool which contains the allocation you want to release.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "InstanceCount", + "smithy.api#documentation": "

The maximum number of Spot Instances to launch.

\n

Default: 1

", + "smithy.api#xmlName": "instanceCount" } }, - "Cidr": { - "target": "com.amazonaws.ec2#String", + "Type": { + "target": "com.amazonaws.ec2#SpotInstanceType", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The CIDR of the allocation you want to release.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Type", + "smithy.api#documentation": "

The Spot Instance request type.

\n

Default: one-time\n

", + "smithy.api#xmlName": "type" } }, - "IpamPoolAllocationId": { - "target": "com.amazonaws.ec2#IpamPoolAllocationId", + "ValidFrom": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the allocation.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "ValidFrom", + "smithy.api#documentation": "

The start date of the request. If this is a one-time request, the request becomes\n active at this date and time and remains active until all instances launch, the request\n expires, or the request is canceled. If the request is persistent, the request becomes\n active at this date and time and remains active until it expires or is canceled.

\n

The specified start date and time cannot be equal to the current date and time. You\n must specify a start date and time that occurs after the current date and time.

", + "smithy.api#xmlName": "validFrom" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ReleaseIpamPoolAllocationResult": { - "type": "structure", - "members": { - "Success": { - "target": "com.amazonaws.ec2#Boolean", + }, + "ValidUntil": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "Success", - "smithy.api#documentation": "

Indicates if the release was successful.

", - "smithy.api#xmlName": "success" + "aws.protocols#ec2QueryName": "ValidUntil", + "smithy.api#documentation": "

The end date of the request, in UTC format\n (YYYY-MM-DDTHH:MM:SSZ).

\n ", + "smithy.api#xmlName": "validUntil" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#RemoveIpamOperatingRegion": { - "type": "structure", - "members": { - "RegionName": { + }, + "LaunchGroup": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The name of the operating Region you want to remove.

" + "aws.protocols#ec2QueryName": "LaunchGroup", + "smithy.api#documentation": "

The instance launch group. Launch groups are Spot Instances that launch together and\n terminate together.

\n

Default: Instances are launched and terminated individually

", + "smithy.api#xmlName": "launchGroup" } - } - }, - "traits": { - "smithy.api#documentation": "

Remove an operating Region from an IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

\n

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide\n

" - } - }, - "com.amazonaws.ec2#RemoveIpamOperatingRegionSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#RemoveIpamOperatingRegion" - }, - "traits": { - "smithy.api#length": { - "min": 0, - "max": 50 - } - } - }, - "com.amazonaws.ec2#RemovePrefixListEntries": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#RemovePrefixListEntry" - }, - "traits": { - "smithy.api#length": { - "min": 0, - "max": 100 - } - } - }, - "com.amazonaws.ec2#RemovePrefixListEntry": { - "type": "structure", - "members": { - "Cidr": { + }, + "AvailabilityZoneGroup": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The CIDR block.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

An entry for a prefix list.

" - } - }, - "com.amazonaws.ec2#ReplaceIamInstanceProfileAssociation": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ReplaceIamInstanceProfileAssociationRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ReplaceIamInstanceProfileAssociationResult" - }, - "traits": { - "smithy.api#documentation": "

Replaces an IAM instance profile for the specified running instance. You can use\n this action to change the IAM instance profile that's associated with an instance\n without having to disassociate the existing IAM instance profile first.

\n

Use DescribeIamInstanceProfileAssociations to get the association\n ID.

" - } - }, - "com.amazonaws.ec2#ReplaceIamInstanceProfileAssociationRequest": { - "type": "structure", - "members": { - "IamInstanceProfile": { - "target": "com.amazonaws.ec2#IamInstanceProfileSpecification", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IAM instance profile.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "AvailabilityZoneGroup", + "smithy.api#documentation": "

The user-specified name for a logical grouping of requests.

\n

When you specify an Availability Zone group in a Spot Instance request, all Spot\n Instances in the request are launched in the same Availability Zone. Instance proximity\n is maintained with this parameter, but the choice of Availability Zone is not. The group\n applies only to requests for Spot Instances of the same instance type. Any additional\n Spot Instance requests that are specified with the same Availability Zone group name are\n launched in that same Availability Zone, as long as at least one instance from the group\n is still active.

\n

If there is no active instance running in the Availability Zone group that you specify\n for a new Spot Instance request (all instances are terminated, the request is expired,\n or the maximum price you specified falls below current Spot price), then Amazon EC2 launches\n the instance in any Availability Zone where the constraint can be met. Consequently, the\n subsequent set of Spot Instances could be placed in a different zone from the original\n request, even if you specified the same Availability Zone group.

\n

Default: Instances are launched in any available Availability Zone.

", + "smithy.api#xmlName": "availabilityZoneGroup" } }, - "AssociationId": { - "target": "com.amazonaws.ec2#IamInstanceProfileAssociationId", + "BlockDurationMinutes": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the existing IAM instance profile association.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "BlockDurationMinutes", + "smithy.api#documentation": "

Deprecated.

", + "smithy.api#xmlName": "blockDurationMinutes" } } }, "traits": { + "smithy.api#documentation": "

Contains the parameters for RequestSpotInstances.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#ReplaceIamInstanceProfileAssociationResult": { + "com.amazonaws.ec2#RequestSpotInstancesResult": { "type": "structure", "members": { - "IamInstanceProfileAssociation": { - "target": "com.amazonaws.ec2#IamInstanceProfileAssociation", + "SpotInstanceRequests": { + "target": "com.amazonaws.ec2#SpotInstanceRequestList", "traits": { - "aws.protocols#ec2QueryName": "IamInstanceProfileAssociation", - "smithy.api#documentation": "

Information about the IAM instance profile association.

", - "smithy.api#xmlName": "iamInstanceProfileAssociation" + "aws.protocols#ec2QueryName": "SpotInstanceRequestSet", + "smithy.api#documentation": "

The Spot Instance requests.

", + "smithy.api#xmlName": "spotInstanceRequestSet" } } }, "traits": { + "smithy.api#documentation": "

Contains the output of RequestSpotInstances.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#ReplaceNetworkAclAssociation": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ReplaceNetworkAclAssociationRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ReplaceNetworkAclAssociationResult" - }, - "traits": { - "smithy.api#documentation": "

Changes which network ACL a subnet is associated with. By default when you create a\n\t\t\tsubnet, it's automatically associated with the default network ACL. For more\n\t\t\tinformation, see Network ACLs in the Amazon VPC User Guide.

\n

This is an idempotent operation.

", - "smithy.api#examples": [ - { - "title": "To replace the network ACL associated with a subnet", - "documentation": "This example associates the specified network ACL with the subnet for the specified network ACL association.", - "input": { - "AssociationId": "aclassoc-e5b95c8c", - "NetworkAclId": "acl-5fb85d36" - }, - "output": { - "NewAssociationId": "aclassoc-3999875b" - } - } - ] - } - }, - "com.amazonaws.ec2#ReplaceNetworkAclAssociationRequest": { + "com.amazonaws.ec2#RequestSpotLaunchSpecification": { "type": "structure", "members": { - "AssociationId": { - "target": "com.amazonaws.ec2#NetworkAclAssociationId", + "SecurityGroupIds": { + "target": "com.amazonaws.ec2#RequestSpotLaunchSpecificationSecurityGroupIdList", "traits": { - "aws.protocols#ec2QueryName": "AssociationId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the current association between the original network ACL and the subnet.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "associationId" + "smithy.api#documentation": "

The IDs of the security groups.

", + "smithy.api#xmlName": "SecurityGroupId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "SecurityGroups": { + "target": "com.amazonaws.ec2#RequestSpotLaunchSpecificationSecurityGroupList", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Not supported.

", + "smithy.api#xmlName": "SecurityGroup" } }, - "NetworkAclId": { - "target": "com.amazonaws.ec2#NetworkAclId", + "AddressingType": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NetworkAclId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the new network ACL to associate with the subnet.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "networkAclId" + "aws.protocols#ec2QueryName": "AddressingType", + "smithy.api#documentation": "

Deprecated.

", + "smithy.api#xmlName": "addressingType" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ReplaceNetworkAclAssociationResult": { - "type": "structure", - "members": { - "NewAssociationId": { - "target": "com.amazonaws.ec2#String", + }, + "BlockDeviceMappings": { + "target": "com.amazonaws.ec2#BlockDeviceMappingList", "traits": { - "aws.protocols#ec2QueryName": "NewAssociationId", - "smithy.api#documentation": "

The ID of the new association.

", - "smithy.api#xmlName": "newAssociationId" + "aws.protocols#ec2QueryName": "BlockDeviceMapping", + "smithy.api#documentation": "

The block device mapping entries. You can't specify both a snapshot ID and an encryption value. \n This is because only blank volumes can be encrypted on creation. If a snapshot is the basis for a volume, \n it is not blank and its encryption status is used for the volume encryption status.

", + "smithy.api#xmlName": "blockDeviceMapping" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ReplaceNetworkAclEntry": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ReplaceNetworkAclEntryRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Replaces an entry (rule) in a network ACL. For more information, see Network ACLs in the\n\t\t\t\tAmazon VPC User Guide.

", - "smithy.api#examples": [ - { - "title": "To replace a network ACL entry", - "documentation": "This example replaces an entry for the specified network ACL. The new rule 100 allows ingress traffic from 203.0.113.12/24 on UDP port 53 (DNS) into any associated subnet.", - "input": { - "NetworkAclId": "acl-5fb85d36", - "RuleNumber": 100, - "Protocol": "17", - "RuleAction": "allow", - "Egress": false, - "CidrBlock": "203.0.113.12/24", - "PortRange": { - "From": 53, - "To": 53 - } - } + }, + "EbsOptimized": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "EbsOptimized", + "smithy.api#documentation": "

Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

\n

Default: false\n

", + "smithy.api#xmlName": "ebsOptimized" } - ] - } - }, - "com.amazonaws.ec2#ReplaceNetworkAclEntryRequest": { - "type": "structure", - "members": { - "CidrBlock": { - "target": "com.amazonaws.ec2#String", + }, + "IamInstanceProfile": { + "target": "com.amazonaws.ec2#IamInstanceProfileSpecification", + "traits": { + "aws.protocols#ec2QueryName": "IamInstanceProfile", + "smithy.api#documentation": "

The IAM instance profile.

", + "smithy.api#xmlName": "iamInstanceProfile" + } + }, + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { - "aws.protocols#ec2QueryName": "CidrBlock", - "smithy.api#documentation": "

The IPv4 network range to allow or deny, in CIDR notation (for example\n 172.16.0.0/24).

", - "smithy.api#xmlName": "cidrBlock" + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the AMI.

", + "smithy.api#xmlName": "imageId" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type. Only one instance type can be specified.

", + "smithy.api#xmlName": "instanceType" } }, - "Egress": { - "target": "com.amazonaws.ec2#Boolean", + "KernelId": { + "target": "com.amazonaws.ec2#KernelId", "traits": { - "aws.protocols#ec2QueryName": "Egress", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Indicates whether to replace the egress rule.

\n

Default: If no value is specified, we replace the ingress rule.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "egress" + "aws.protocols#ec2QueryName": "KernelId", + "smithy.api#documentation": "

The ID of the kernel.

", + "smithy.api#xmlName": "kernelId" } }, - "IcmpTypeCode": { - "target": "com.amazonaws.ec2#IcmpTypeCode", + "KeyName": { + "target": "com.amazonaws.ec2#KeyPairNameWithResolver", "traits": { - "smithy.api#documentation": "

ICMP protocol: The ICMP or ICMPv6 type and code. Required if specifying protocol\n\t\t 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR block.

", - "smithy.api#xmlName": "Icmp" + "aws.protocols#ec2QueryName": "KeyName", + "smithy.api#documentation": "

The name of the key pair.

", + "smithy.api#xmlName": "keyName" } }, - "Ipv6CidrBlock": { - "target": "com.amazonaws.ec2#String", + "Monitoring": { + "target": "com.amazonaws.ec2#RunInstancesMonitoringEnabled", "traits": { - "aws.protocols#ec2QueryName": "Ipv6CidrBlock", - "smithy.api#documentation": "

The IPv6 network range to allow or deny, in CIDR notation (for example\n 2001:bd8:1234:1a00::/64).

", - "smithy.api#xmlName": "ipv6CidrBlock" + "aws.protocols#ec2QueryName": "Monitoring", + "smithy.api#documentation": "

Indicates whether basic or detailed monitoring is enabled for the instance.

\n

Default: Disabled

", + "smithy.api#xmlName": "monitoring" } }, - "NetworkAclId": { - "target": "com.amazonaws.ec2#NetworkAclId", + "NetworkInterfaces": { + "target": "com.amazonaws.ec2#InstanceNetworkInterfaceSpecificationList", "traits": { - "aws.protocols#ec2QueryName": "NetworkAclId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the ACL.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "networkAclId" + "smithy.api#documentation": "

The network interfaces. If you specify a network interface, you must specify \n subnet IDs and security group IDs using the network interface.

", + "smithy.api#xmlName": "NetworkInterface" } }, - "PortRange": { - "target": "com.amazonaws.ec2#PortRange", + "Placement": { + "target": "com.amazonaws.ec2#SpotPlacement", "traits": { - "aws.protocols#ec2QueryName": "PortRange", - "smithy.api#documentation": "

TCP or UDP protocols: The range of ports the rule applies to. \n\t\t Required if specifying protocol 6 (TCP) or 17 (UDP).

", - "smithy.api#xmlName": "portRange" + "aws.protocols#ec2QueryName": "Placement", + "smithy.api#documentation": "

The placement information for the instance.

", + "smithy.api#xmlName": "placement" } }, - "Protocol": { - "target": "com.amazonaws.ec2#String", + "RamdiskId": { + "target": "com.amazonaws.ec2#RamdiskId", "traits": { - "aws.protocols#ec2QueryName": "Protocol", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The protocol number. A value of \"-1\" means all protocols. If you specify \"-1\" or a\n protocol number other than \"6\" (TCP), \"17\" (UDP), or \"1\" (ICMP), traffic on all ports is \n allowed, regardless of any ports or ICMP types or codes that you specify. If you specify \n protocol \"58\" (ICMPv6) and specify an IPv4 CIDR block, traffic for all ICMP types and \n codes allowed, regardless of any that you specify. If you specify protocol \"58\" (ICMPv6) \n and specify an IPv6 CIDR block, you must specify an ICMP type and code.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "protocol" + "aws.protocols#ec2QueryName": "RamdiskId", + "smithy.api#documentation": "

The ID of the RAM disk.

", + "smithy.api#xmlName": "ramdiskId" } }, - "RuleAction": { - "target": "com.amazonaws.ec2#RuleAction", + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", "traits": { - "aws.protocols#ec2QueryName": "RuleAction", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Indicates whether to allow or deny the traffic that matches the rule.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "ruleAction" + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet in which to launch the instance.

", + "smithy.api#xmlName": "subnetId" } }, - "RuleNumber": { - "target": "com.amazonaws.ec2#Integer", + "UserData": { + "target": "com.amazonaws.ec2#SensitiveUserData", "traits": { - "aws.protocols#ec2QueryName": "RuleNumber", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The rule number of the entry to replace.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "ruleNumber" + "aws.protocols#ec2QueryName": "UserData", + "smithy.api#documentation": "

The base64-encoded user data that instances use when starting up. User data is limited to 16 KB.

", + "smithy.api#xmlName": "userData" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes the launch specification for an instance.

" } }, - "com.amazonaws.ec2#ReplaceRootVolumeTask": { + "com.amazonaws.ec2#RequestSpotLaunchSpecificationSecurityGroupIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#SecurityGroupId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#RequestSpotLaunchSpecificationSecurityGroupList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#Reservation": { "type": "structure", "members": { - "ReplaceRootVolumeTaskId": { - "target": "com.amazonaws.ec2#ReplaceRootVolumeTaskId", + "ReservationId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ReplaceRootVolumeTaskId", - "smithy.api#documentation": "

The ID of the root volume replacement task.

", - "smithy.api#xmlName": "replaceRootVolumeTaskId" + "aws.protocols#ec2QueryName": "ReservationId", + "smithy.api#documentation": "

The ID of the reservation.

", + "smithy.api#xmlName": "reservationId" } }, - "InstanceId": { + "OwnerId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance for which the root volume replacement task was created.

", - "smithy.api#xmlName": "instanceId" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the reservation.

", + "smithy.api#xmlName": "ownerId" } }, - "TaskState": { - "target": "com.amazonaws.ec2#ReplaceRootVolumeTaskState", + "RequesterId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TaskState", - "smithy.api#documentation": "

The state of the task. The task can be in one of the following states:

\n ", - "smithy.api#xmlName": "taskState" + "aws.protocols#ec2QueryName": "RequesterId", + "smithy.api#documentation": "

The ID of the requester that launched the instances on your behalf (for example,\n Amazon Web Services Management Console or Auto Scaling).

", + "smithy.api#xmlName": "requesterId" } }, - "StartTime": { - "target": "com.amazonaws.ec2#String", + "Groups": { + "target": "com.amazonaws.ec2#GroupIdentifierList", "traits": { - "aws.protocols#ec2QueryName": "StartTime", - "smithy.api#documentation": "

The time the task was started.

", - "smithy.api#xmlName": "startTime" + "aws.protocols#ec2QueryName": "GroupSet", + "smithy.api#documentation": "

Not supported.

", + "smithy.api#xmlName": "groupSet" } }, - "CompleteTime": { - "target": "com.amazonaws.ec2#String", + "Instances": { + "target": "com.amazonaws.ec2#InstanceList", "traits": { - "aws.protocols#ec2QueryName": "CompleteTime", - "smithy.api#documentation": "

The time the task completed.

", - "smithy.api#xmlName": "completeTime" + "aws.protocols#ec2QueryName": "InstancesSet", + "smithy.api#documentation": "

The instances.

", + "smithy.api#xmlName": "instancesSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a launch request for one or more instances, and includes owner, requester,\n and security group information that applies to all instances in the launch\n request.

" + } + }, + "com.amazonaws.ec2#ReservationFleetInstanceSpecification": { + "type": "structure", + "members": { + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", + "traits": { + "smithy.api#documentation": "

The instance type for which the Capacity Reservation Fleet reserves capacity.

" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "InstancePlatform": { + "target": "com.amazonaws.ec2#CapacityReservationInstancePlatform", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

The tags assigned to the task.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#documentation": "

The type of operating system for which the Capacity Reservation Fleet reserves\n\t\t\tcapacity.

" } }, - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", + "Weight": { + "target": "com.amazonaws.ec2#DoubleWithConstraints", "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The ID of the AMI used to create the replacement root volume.

", - "smithy.api#xmlName": "imageId" + "smithy.api#documentation": "

The number of capacity units provided by the specified instance type. This value,\n\t\t\ttogether with the total target capacity that you specify for the Fleet determine the\n\t\t\tnumber of instances for which the Fleet reserves capacity. Both values are based on\n\t\t\tunits that make sense for your workload. For more information, see Total target\n\t\t\t\tcapacity in the Amazon EC2 User Guide.

" } }, - "SnapshotId": { - "target": "com.amazonaws.ec2#SnapshotId", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SnapshotId", - "smithy.api#documentation": "

The ID of the snapshot used to create the replacement root volume.

", - "smithy.api#xmlName": "snapshotId" + "smithy.api#documentation": "

The Availability Zone in which the Capacity Reservation Fleet reserves the capacity. A\n\t\t\tCapacity Reservation Fleet can't span Availability Zones. All instance type\n\t\t\tspecifications that you specify for the Fleet must use the same Availability\n\t\t\tZone.

" } }, - "DeleteReplacedRootVolume": { + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The ID of the Availability Zone in which the Capacity Reservation Fleet reserves the\n\t\t\tcapacity. A Capacity Reservation Fleet can't span Availability Zones. All instance type\n\t\t\tspecifications that you specify for the Fleet must use the same Availability\n\t\t\tZone.

" + } + }, + "EbsOptimized": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DeleteReplacedRootVolume", - "smithy.api#documentation": "

Indicates whether the original root volume is to be deleted after the root volume \n replacement task completes.

", - "smithy.api#xmlName": "deleteReplacedRootVolume" + "smithy.api#documentation": "

Indicates whether the Capacity Reservation Fleet supports EBS-optimized instances\n\t\t\ttypes. This optimization provides dedicated throughput to Amazon EBS and an\n\t\t\toptimized configuration stack to provide optimal I/O performance. This optimization\n\t\t\tisn't available with all instance types. Additional usage charges apply when using\n\t\t\tEBS-optimized instance types.

" + } + }, + "Priority": { + "target": "com.amazonaws.ec2#IntegerWithConstraints", + "traits": { + "smithy.api#documentation": "

The priority to assign to the instance type. This value is used to determine which of\n\t\t\tthe instance types specified for the Fleet should be prioritized for use. A lower value\n\t\t\tindicates a high priority. For more information, see Instance type\n\t\t\t\tpriority in the Amazon EC2 User Guide.

" } } }, "traits": { - "smithy.api#documentation": "

Information about a root volume replacement task.

" + "smithy.api#documentation": "

Information about an instance type to use in a Capacity Reservation Fleet.

" } }, - "com.amazonaws.ec2#ReplaceRootVolumeTaskId": { + "com.amazonaws.ec2#ReservationFleetInstanceSpecificationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ReservationFleetInstanceSpecification" + } + }, + "com.amazonaws.ec2#ReservationId": { "type": "string" }, - "com.amazonaws.ec2#ReplaceRootVolumeTaskIds": { + "com.amazonaws.ec2#ReservationList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#ReplaceRootVolumeTaskId", + "target": "com.amazonaws.ec2#Reservation", "traits": { - "smithy.api#xmlName": "ReplaceRootVolumeTaskId" + "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#ReplaceRootVolumeTaskState": { + "com.amazonaws.ec2#ReservationState": { "type": "enum", "members": { - "pending": { + "PAYMENT_PENDING": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "pending" + "smithy.api#enumValue": "payment-pending" } }, - "in_progress": { + "PAYMENT_FAILED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "in-progress" + "smithy.api#enumValue": "payment-failed" } }, - "failing": { + "ACTIVE": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "failing" + "smithy.api#enumValue": "active" } }, - "succeeded": { + "RETIRED": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "succeeded" + "smithy.api#enumValue": "retired" + } + } + } + }, + "com.amazonaws.ec2#ReservationValue": { + "type": "structure", + "members": { + "HourlyPrice": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "HourlyPrice", + "smithy.api#documentation": "

The hourly rate of the reservation.

", + "smithy.api#xmlName": "hourlyPrice" } }, - "failed": { - "target": "smithy.api#Unit", + "RemainingTotalValue": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "failed" + "aws.protocols#ec2QueryName": "RemainingTotalValue", + "smithy.api#documentation": "

The balance of the total value (the sum of remainingUpfrontValue + hourlyPrice * number of\n hours remaining).

", + "smithy.api#xmlName": "remainingTotalValue" } }, - "failed_detached": { - "target": "smithy.api#Unit", + "RemainingUpfrontValue": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "failed-detached" + "aws.protocols#ec2QueryName": "RemainingUpfrontValue", + "smithy.api#documentation": "

The remaining upfront cost of the reservation.

", + "smithy.api#xmlName": "remainingUpfrontValue" } } + }, + "traits": { + "smithy.api#documentation": "

The cost associated with the Reserved Instance.

" } }, - "com.amazonaws.ec2#ReplaceRootVolumeTasks": { + "com.amazonaws.ec2#ReservedInstanceIdSet": { "type": "list", "member": { - "target": "com.amazonaws.ec2#ReplaceRootVolumeTask", + "target": "com.amazonaws.ec2#ReservationId", "traits": { - "smithy.api#xmlName": "item" + "smithy.api#xmlName": "ReservedInstanceId" } } }, - "com.amazonaws.ec2#ReplaceRoute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ReplaceRouteRequest" - }, - "output": { - "target": "smithy.api#Unit" + "com.amazonaws.ec2#ReservedInstanceLimitPrice": { + "type": "structure", + "members": { + "Amount": { + "target": "com.amazonaws.ec2#Double", + "traits": { + "aws.protocols#ec2QueryName": "Amount", + "smithy.api#documentation": "

Used for Reserved Instance Marketplace offerings. Specifies the limit price on the total\n order (instanceCount * price).

", + "smithy.api#xmlName": "amount" + } + }, + "CurrencyCode": { + "target": "com.amazonaws.ec2#CurrencyCodeValues", + "traits": { + "aws.protocols#ec2QueryName": "CurrencyCode", + "smithy.api#documentation": "

The currency in which the limitPrice amount is specified. At this time, the\n only supported currency is USD.

", + "smithy.api#xmlName": "currencyCode" + } + } }, "traits": { - "smithy.api#documentation": "

Replaces an existing route within a route table in a VPC.

\n

You must specify either a destination CIDR block or a prefix list ID. You must also specify \n exactly one of the resources from the parameter list, or reset the local route to its default \n target.

\n

For more information, see Route tables in the\n Amazon VPC User Guide.

", - "smithy.api#examples": [ - { - "title": "To replace a route", - "documentation": "This example replaces the specified route in the specified table table. The new route matches the specified CIDR and sends the traffic to the specified virtual private gateway.", - "input": { - "RouteTableId": "rtb-22574640", - "DestinationCidrBlock": "10.0.0.0/16", - "GatewayId": "vgw-9a4cacf3" - } - } - ] + "smithy.api#documentation": "

Describes the limit price of a Reserved Instance offering.

" } }, - "com.amazonaws.ec2#ReplaceRouteRequest": { + "com.amazonaws.ec2#ReservedInstanceReservationValue": { "type": "structure", "members": { - "DestinationCidrBlock": { - "target": "com.amazonaws.ec2#String", + "ReservationValue": { + "target": "com.amazonaws.ec2#ReservationValue", "traits": { - "aws.protocols#ec2QueryName": "DestinationCidrBlock", - "smithy.api#documentation": "

The IPv4 CIDR address block used for the destination match. The value that you\n\t\t\tprovide must match the CIDR of an existing route in the table.

", - "smithy.api#xmlName": "destinationCidrBlock" + "aws.protocols#ec2QueryName": "ReservationValue", + "smithy.api#documentation": "

The total value of the Convertible Reserved Instance that you are exchanging.

", + "smithy.api#xmlName": "reservationValue" } }, - "DestinationIpv6CidrBlock": { + "ReservedInstanceId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DestinationIpv6CidrBlock", - "smithy.api#documentation": "

The IPv6 CIDR address block used for the destination match. The value that you\n\t\t\tprovide must match the CIDR of an existing route in the table.

", - "smithy.api#xmlName": "destinationIpv6CidrBlock" + "aws.protocols#ec2QueryName": "ReservedInstanceId", + "smithy.api#documentation": "

The ID of the Convertible Reserved Instance that you are exchanging.

", + "smithy.api#xmlName": "reservedInstanceId" + } + } + }, + "traits": { + "smithy.api#documentation": "

The total value of the Convertible Reserved Instance.

" + } + }, + "com.amazonaws.ec2#ReservedInstanceReservationValueSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ReservedInstanceReservationValue", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ReservedInstanceState": { + "type": "enum", + "members": { + "payment_pending": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "payment-pending" } }, - "DestinationPrefixListId": { - "target": "com.amazonaws.ec2#PrefixListResourceId", + "active": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ID of the prefix list for the route.

" + "smithy.api#enumValue": "active" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "payment_failed": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#enumValue": "payment-failed" } }, - "VpcEndpointId": { - "target": "com.amazonaws.ec2#VpcEndpointId", + "retired": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ID of a VPC endpoint. Supported for Gateway Load Balancer endpoints only.

" + "smithy.api#enumValue": "retired" } }, - "EgressOnlyInternetGatewayId": { - "target": "com.amazonaws.ec2#EgressOnlyInternetGatewayId", + "queued": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EgressOnlyInternetGatewayId", - "smithy.api#documentation": "

[IPv6 traffic only] The ID of an egress-only internet gateway.

", - "smithy.api#xmlName": "egressOnlyInternetGatewayId" + "smithy.api#enumValue": "queued" } }, - "GatewayId": { - "target": "com.amazonaws.ec2#RouteGatewayId", + "queued_deleted": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "GatewayId", - "smithy.api#documentation": "

The ID of an internet gateway or virtual private gateway.

", - "smithy.api#xmlName": "gatewayId" + "smithy.api#enumValue": "queued-deleted" + } + } + } + }, + "com.amazonaws.ec2#ReservedInstances": { + "type": "structure", + "members": { + "CurrencyCode": { + "target": "com.amazonaws.ec2#CurrencyCodeValues", + "traits": { + "aws.protocols#ec2QueryName": "CurrencyCode", + "smithy.api#documentation": "

The currency of the Reserved Instance. It's specified using ISO 4217 standard currency\n codes. At this time, the only supported currency is USD.

", + "smithy.api#xmlName": "currencyCode" } }, - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", + "InstanceTenancy": { + "target": "com.amazonaws.ec2#Tenancy", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of a NAT instance in your VPC.

", - "smithy.api#xmlName": "instanceId" + "aws.protocols#ec2QueryName": "InstanceTenancy", + "smithy.api#documentation": "

The tenancy of the instance.

", + "smithy.api#xmlName": "instanceTenancy" } }, - "LocalTarget": { - "target": "com.amazonaws.ec2#Boolean", + "OfferingClass": { + "target": "com.amazonaws.ec2#OfferingClassType", "traits": { - "smithy.api#documentation": "

Specifies whether to reset the local route to its default target (local).

" + "aws.protocols#ec2QueryName": "OfferingClass", + "smithy.api#documentation": "

The offering class of the Reserved Instance.

", + "smithy.api#xmlName": "offeringClass" } }, - "NatGatewayId": { - "target": "com.amazonaws.ec2#NatGatewayId", + "OfferingType": { + "target": "com.amazonaws.ec2#OfferingTypeValues", "traits": { - "aws.protocols#ec2QueryName": "NatGatewayId", - "smithy.api#documentation": "

[IPv4 traffic only] The ID of a NAT gateway.

", - "smithy.api#xmlName": "natGatewayId" + "aws.protocols#ec2QueryName": "OfferingType", + "smithy.api#documentation": "

The Reserved Instance offering type.

", + "smithy.api#xmlName": "offeringType" } }, - "TransitGatewayId": { - "target": "com.amazonaws.ec2#TransitGatewayId", + "RecurringCharges": { + "target": "com.amazonaws.ec2#RecurringChargesList", "traits": { - "smithy.api#documentation": "

The ID of a transit gateway.

" + "aws.protocols#ec2QueryName": "RecurringCharges", + "smithy.api#documentation": "

The recurring charge tag assigned to the resource.

", + "smithy.api#xmlName": "recurringCharges" } }, - "LocalGatewayId": { - "target": "com.amazonaws.ec2#LocalGatewayId", + "Scope": { + "target": "com.amazonaws.ec2#scope", "traits": { - "smithy.api#documentation": "

The ID of the local gateway.

" + "aws.protocols#ec2QueryName": "Scope", + "smithy.api#documentation": "

The scope of the Reserved Instance.

", + "smithy.api#xmlName": "scope" } }, - "CarrierGatewayId": { - "target": "com.amazonaws.ec2#CarrierGatewayId", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#documentation": "

[IPv4 traffic only] The ID of a carrier gateway.

" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the resource.

", + "smithy.api#xmlName": "tagSet" } }, - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#NetworkInterfaceId", + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceId", - "smithy.api#documentation": "

The ID of a network interface.

", - "smithy.api#xmlName": "networkInterfaceId" + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone.

", + "smithy.api#xmlName": "availabilityZoneId" } }, - "RouteTableId": { - "target": "com.amazonaws.ec2#RouteTableId", + "ReservedInstancesId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "RouteTableId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the route table.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "routeTableId" + "aws.protocols#ec2QueryName": "ReservedInstancesId", + "smithy.api#documentation": "

The ID of the Reserved Instance.

", + "smithy.api#xmlName": "reservedInstancesId" + } + }, + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", + "traits": { + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type on which the Reserved Instance can be used.

", + "smithy.api#xmlName": "instanceType" + } + }, + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone in which the Reserved Instance can be used.

", + "smithy.api#xmlName": "availabilityZone" } }, - "VpcPeeringConnectionId": { - "target": "com.amazonaws.ec2#VpcPeeringConnectionId", + "Start": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "VpcPeeringConnectionId", - "smithy.api#documentation": "

The ID of a VPC peering connection.

", - "smithy.api#xmlName": "vpcPeeringConnectionId" + "aws.protocols#ec2QueryName": "Start", + "smithy.api#documentation": "

The date and time the Reserved Instance started.

", + "smithy.api#xmlName": "start" } }, - "CoreNetworkArn": { - "target": "com.amazonaws.ec2#CoreNetworkArn", + "End": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the core network.

" + "aws.protocols#ec2QueryName": "End", + "smithy.api#documentation": "

The time when the Reserved Instance expires.

", + "smithy.api#xmlName": "end" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ReplaceRouteTableAssociation": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ReplaceRouteTableAssociationRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ReplaceRouteTableAssociationResult" - }, - "traits": { - "smithy.api#documentation": "

Changes the route table associated with a given subnet, internet gateway, or virtual private gateway in a VPC. After the operation\n completes, the subnet or gateway uses the routes in the new route table. For more\n information about route tables, see Route\n tables in the Amazon VPC User Guide.

\n

You can also use this operation to change which table is the main route table in the VPC. Specify the main route table's association ID and the route table ID of the new main route table.

", - "smithy.api#examples": [ - { - "title": "To replace the route table associated with a subnet", - "documentation": "This example associates the specified route table with the subnet for the specified route table association.", - "input": { - "AssociationId": "rtbassoc-781d0d1a", - "RouteTableId": "rtb-22574640" - }, - "output": { - "NewAssociationId": "rtbassoc-3a1f0f58" - } + }, + "Duration": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "aws.protocols#ec2QueryName": "Duration", + "smithy.api#documentation": "

The duration of the Reserved Instance, in seconds.

", + "smithy.api#xmlName": "duration" } - ] - } - }, - "com.amazonaws.ec2#ReplaceRouteTableAssociationRequest": { - "type": "structure", - "members": { - "AssociationId": { - "target": "com.amazonaws.ec2#RouteTableAssociationId", + }, + "UsagePrice": { + "target": "com.amazonaws.ec2#Float", "traits": { - "aws.protocols#ec2QueryName": "AssociationId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The association ID.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "associationId" + "aws.protocols#ec2QueryName": "UsagePrice", + "smithy.api#documentation": "

The usage price of the Reserved Instance, per hour.

", + "smithy.api#xmlName": "usagePrice" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "FixedPrice": { + "target": "com.amazonaws.ec2#Float", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "FixedPrice", + "smithy.api#documentation": "

The purchase price of the Reserved Instance.

", + "smithy.api#xmlName": "fixedPrice" } }, - "RouteTableId": { - "target": "com.amazonaws.ec2#RouteTableId", + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "RouteTableId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the new route table to associate with the subnet.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "routeTableId" + "aws.protocols#ec2QueryName": "InstanceCount", + "smithy.api#documentation": "

The number of reservations purchased.

", + "smithy.api#xmlName": "instanceCount" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ReplaceRouteTableAssociationResult": { - "type": "structure", - "members": { - "NewAssociationId": { - "target": "com.amazonaws.ec2#String", + }, + "ProductDescription": { + "target": "com.amazonaws.ec2#RIProductDescription", "traits": { - "aws.protocols#ec2QueryName": "NewAssociationId", - "smithy.api#documentation": "

The ID of the new association.

", - "smithy.api#xmlName": "newAssociationId" + "aws.protocols#ec2QueryName": "ProductDescription", + "smithy.api#documentation": "

The Reserved Instance product platform description.

", + "smithy.api#xmlName": "productDescription" } }, - "AssociationState": { - "target": "com.amazonaws.ec2#RouteTableAssociationState", + "State": { + "target": "com.amazonaws.ec2#ReservedInstanceState", "traits": { - "aws.protocols#ec2QueryName": "AssociationState", - "smithy.api#documentation": "

The state of the association.

", - "smithy.api#xmlName": "associationState" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the Reserved Instance purchase.

", + "smithy.api#xmlName": "state" } } }, "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ReplaceTransitGatewayRoute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ReplaceTransitGatewayRouteRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ReplaceTransitGatewayRouteResult" - }, - "traits": { - "smithy.api#documentation": "

Replaces the specified route in the specified transit gateway route table.

" + "smithy.api#documentation": "

Describes a Reserved Instance.

" } }, - "com.amazonaws.ec2#ReplaceTransitGatewayRouteRequest": { + "com.amazonaws.ec2#ReservedInstancesConfiguration": { "type": "structure", "members": { - "DestinationCidrBlock": { + "AvailabilityZone": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The CIDR range used for the destination match. Routing decisions are based on the most specific match.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone for the modified Reserved Instances.

", + "smithy.api#xmlName": "availabilityZone" } }, - "TransitGatewayRouteTableId": { - "target": "com.amazonaws.ec2#TransitGatewayRouteTableId", + "InstanceCount": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the route table.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "InstanceCount", + "smithy.api#documentation": "

The number of modified Reserved Instances.

\n \n

This is a required field for a request.

\n
", + "smithy.api#xmlName": "instanceCount" } }, - "TransitGatewayAttachmentId": { - "target": "com.amazonaws.ec2#TransitGatewayAttachmentId", + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", "traits": { - "smithy.api#documentation": "

The ID of the attachment.

" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type for the modified Reserved Instances.

", + "smithy.api#xmlName": "instanceType" } }, - "Blackhole": { - "target": "com.amazonaws.ec2#Boolean", + "Platform": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Indicates whether traffic matching this route is to be dropped.

" + "aws.protocols#ec2QueryName": "Platform", + "smithy.api#documentation": "

The network platform of the modified Reserved Instances.

", + "smithy.api#xmlName": "platform" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Scope": { + "target": "com.amazonaws.ec2#scope", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "Scope", + "smithy.api#documentation": "

Whether the Reserved Instance is applied to instances in a Region or instances in a\n specific Availability Zone.

", + "smithy.api#xmlName": "scope" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ReplaceTransitGatewayRouteResult": { - "type": "structure", - "members": { - "Route": { - "target": "com.amazonaws.ec2#TransitGatewayRoute", + }, + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Route", - "smithy.api#documentation": "

Information about the modified route.

", - "smithy.api#xmlName": "route" + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone.

", + "smithy.api#xmlName": "availabilityZoneId" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes the configuration settings for the modified Reserved Instances.

" } }, - "com.amazonaws.ec2#ReplaceVpnTunnel": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ReplaceVpnTunnelRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ReplaceVpnTunnelResult" - }, - "traits": { - "smithy.api#documentation": "

Trigger replacement of specified VPN tunnel.

" + "com.amazonaws.ec2#ReservedInstancesConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ReservedInstancesConfiguration", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#ReplaceVpnTunnelRequest": { + "com.amazonaws.ec2#ReservedInstancesId": { "type": "structure", "members": { - "VpnConnectionId": { - "target": "com.amazonaws.ec2#VpnConnectionId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Site-to-Site VPN connection.

", - "smithy.api#required": {} - } - }, - "VpnTunnelOutsideIpAddress": { + "ReservedInstancesId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The external IP address of the VPN tunnel.

", - "smithy.api#required": {} - } - }, - "ApplyPendingMaintenance": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Trigger pending tunnel endpoint maintenance.

" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "ReservedInstancesId", + "smithy.api#documentation": "

The ID of the Reserved Instance.

", + "smithy.api#xmlName": "reservedInstancesId" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes the ID of a Reserved Instance.

" } }, - "com.amazonaws.ec2#ReplaceVpnTunnelResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Confirmation of replace tunnel operation.

", - "smithy.api#xmlName": "return" - } + "com.amazonaws.ec2#ReservedInstancesIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ReservationId", + "traits": { + "smithy.api#xmlName": "ReservedInstancesId" } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#ReplacementStrategy": { - "type": "enum", - "members": { - "LAUNCH": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "launch" - } - }, - "LAUNCH_BEFORE_TERMINATE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "launch-before-terminate" - } + "com.amazonaws.ec2#ReservedInstancesList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ReservedInstances", + "traits": { + "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#ReportInstanceReasonCodes": { - "type": "enum", + "com.amazonaws.ec2#ReservedInstancesListing": { + "type": "structure", "members": { - "instance_stuck_in_state": { - "target": "smithy.api#Unit", + "ClientToken": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "instance-stuck-in-state" + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

A unique, case-sensitive key supplied by the client to ensure that the request is\n idempotent. For more information, see Ensuring\n Idempotency.

", + "smithy.api#xmlName": "clientToken" } }, - "unresponsive": { - "target": "smithy.api#Unit", + "CreateDate": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#enumValue": "unresponsive" + "aws.protocols#ec2QueryName": "CreateDate", + "smithy.api#documentation": "

The time the listing was created.

", + "smithy.api#xmlName": "createDate" } }, - "not_accepting_credentials": { - "target": "smithy.api#Unit", + "InstanceCounts": { + "target": "com.amazonaws.ec2#InstanceCountList", "traits": { - "smithy.api#enumValue": "not-accepting-credentials" + "aws.protocols#ec2QueryName": "InstanceCounts", + "smithy.api#documentation": "

The number of instances in this state.

", + "smithy.api#xmlName": "instanceCounts" } }, - "password_not_available": { - "target": "smithy.api#Unit", + "PriceSchedules": { + "target": "com.amazonaws.ec2#PriceScheduleList", "traits": { - "smithy.api#enumValue": "password-not-available" + "aws.protocols#ec2QueryName": "PriceSchedules", + "smithy.api#documentation": "

The price of the Reserved Instance listing.

", + "smithy.api#xmlName": "priceSchedules" } }, - "performance_network": { - "target": "smithy.api#Unit", + "ReservedInstancesId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "performance-network" + "aws.protocols#ec2QueryName": "ReservedInstancesId", + "smithy.api#documentation": "

The ID of the Reserved Instance.

", + "smithy.api#xmlName": "reservedInstancesId" } }, - "performance_instance_store": { - "target": "smithy.api#Unit", + "ReservedInstancesListingId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "performance-instance-store" + "aws.protocols#ec2QueryName": "ReservedInstancesListingId", + "smithy.api#documentation": "

The ID of the Reserved Instance listing.

", + "smithy.api#xmlName": "reservedInstancesListingId" } }, - "performance_ebs_volume": { - "target": "smithy.api#Unit", + "Status": { + "target": "com.amazonaws.ec2#ListingStatus", "traits": { - "smithy.api#enumValue": "performance-ebs-volume" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The status of the Reserved Instance listing.

", + "smithy.api#xmlName": "status" } }, - "performance_other": { - "target": "smithy.api#Unit", + "StatusMessage": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "performance-other" + "aws.protocols#ec2QueryName": "StatusMessage", + "smithy.api#documentation": "

The reason for the current status of the Reserved Instance listing. The response can be\n blank.

", + "smithy.api#xmlName": "statusMessage" } }, - "other": { - "target": "smithy.api#Unit", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "smithy.api#enumValue": "other" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the resource.

", + "smithy.api#xmlName": "tagSet" + } + }, + "UpdateDate": { + "target": "com.amazonaws.ec2#DateTime", + "traits": { + "aws.protocols#ec2QueryName": "UpdateDate", + "smithy.api#documentation": "

The last modified timestamp of the listing.

", + "smithy.api#xmlName": "updateDate" } } - } - }, - "com.amazonaws.ec2#ReportInstanceStatus": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ReportInstanceStatusRequest" - }, - "output": { - "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Submits feedback about the status of an instance. The instance must be in the\n running state. If your experience with the instance differs from the\n instance status returned by DescribeInstanceStatus, use ReportInstanceStatus to report your experience with the instance. Amazon\n EC2 collects this information to improve the accuracy of status checks.

\n

Use of this action does not change the value returned by DescribeInstanceStatus.

" + "smithy.api#documentation": "

Describes a Reserved Instance listing.

" } }, - "com.amazonaws.ec2#ReportInstanceStatusRequest": { + "com.amazonaws.ec2#ReservedInstancesListingId": { + "type": "string" + }, + "com.amazonaws.ec2#ReservedInstancesListingList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ReservedInstancesListing", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ReservedInstancesModification": { "type": "structure", "members": { - "Description": { + "ClientToken": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

Descriptive text about the health state of your instance.

", - "smithy.api#xmlName": "description" + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

A unique, case-sensitive key supplied by the client to ensure that the request is\n idempotent. For more information, see Ensuring\n Idempotency.

", + "smithy.api#xmlName": "clientToken" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "CreateDate": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "CreateDate", + "smithy.api#documentation": "

The time when the modification request was created.

", + "smithy.api#xmlName": "createDate" } }, - "EndTime": { + "EffectiveDate": { "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "EndTime", - "smithy.api#documentation": "

The time at which the reported instance health state ended.

", - "smithy.api#xmlName": "endTime" + "aws.protocols#ec2QueryName": "EffectiveDate", + "smithy.api#documentation": "

The time for the modification to become effective.

", + "smithy.api#xmlName": "effectiveDate" } }, - "Instances": { - "target": "com.amazonaws.ec2#InstanceIdStringList", + "ModificationResults": { + "target": "com.amazonaws.ec2#ReservedInstancesModificationResultList", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The instances.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "instanceId" + "aws.protocols#ec2QueryName": "ModificationResultSet", + "smithy.api#documentation": "

Contains target configurations along with their corresponding new Reserved Instance\n IDs.

", + "smithy.api#xmlName": "modificationResultSet" } }, - "ReasonCodes": { - "target": "com.amazonaws.ec2#ReasonCodesList", + "ReservedInstancesIds": { + "target": "com.amazonaws.ec2#ReservedIntancesIds", "traits": { - "aws.protocols#ec2QueryName": "ReasonCode", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The reason codes that describe the health state of your instance.

\n ", - "smithy.api#required": {}, - "smithy.api#xmlName": "reasonCode" + "aws.protocols#ec2QueryName": "ReservedInstancesSet", + "smithy.api#documentation": "

The IDs of one or more Reserved Instances.

", + "smithy.api#xmlName": "reservedInstancesSet" } }, - "StartTime": { - "target": "com.amazonaws.ec2#DateTime", + "ReservedInstancesModificationId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "StartTime", - "smithy.api#documentation": "

The time at which the reported instance health state began.

", - "smithy.api#xmlName": "startTime" + "aws.protocols#ec2QueryName": "ReservedInstancesModificationId", + "smithy.api#documentation": "

A unique ID for the Reserved Instance modification.

", + "smithy.api#xmlName": "reservedInstancesModificationId" } }, "Status": { - "target": "com.amazonaws.ec2#ReportStatusType", + "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "Status", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The status of all instances listed.

", - "smithy.api#required": {}, + "smithy.api#documentation": "

The status of the Reserved Instances modification request.

", "smithy.api#xmlName": "status" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ReportStatusType": { - "type": "enum", - "members": { - "ok": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ok" - } }, - "impaired": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "impaired" - } - } - } - }, - "com.amazonaws.ec2#RequestFilterPortRange": { - "type": "structure", - "members": { - "FromPort": { - "target": "com.amazonaws.ec2#Port", + "StatusMessage": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The first port in the range.

" + "aws.protocols#ec2QueryName": "StatusMessage", + "smithy.api#documentation": "

The reason for the status.

", + "smithy.api#xmlName": "statusMessage" } }, - "ToPort": { - "target": "com.amazonaws.ec2#Port", + "UpdateDate": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "smithy.api#documentation": "

The last port in the range.

" + "aws.protocols#ec2QueryName": "UpdateDate", + "smithy.api#documentation": "

The time when the modification request was last updated.

", + "smithy.api#xmlName": "updateDate" } } }, "traits": { - "smithy.api#documentation": "

Describes a port range.

" + "smithy.api#documentation": "

Describes a Reserved Instance modification.

" } }, - "com.amazonaws.ec2#RequestHostIdList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#DedicatedHostId", - "traits": { - "smithy.api#xmlName": "item" - } - } + "com.amazonaws.ec2#ReservedInstancesModificationId": { + "type": "string" }, - "com.amazonaws.ec2#RequestHostIdSet": { + "com.amazonaws.ec2#ReservedInstancesModificationIdStringList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#DedicatedHostId", + "target": "com.amazonaws.ec2#ReservedInstancesModificationId", "traits": { - "smithy.api#xmlName": "item" + "smithy.api#xmlName": "ReservedInstancesModificationId" } } }, - "com.amazonaws.ec2#RequestInstanceTypeList": { + "com.amazonaws.ec2#ReservedInstancesModificationList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#InstanceType" - }, - "traits": { - "smithy.api#length": { - "min": 0, - "max": 100 + "target": "com.amazonaws.ec2#ReservedInstancesModification", + "traits": { + "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#RequestIpamResourceTag": { + "com.amazonaws.ec2#ReservedInstancesModificationResult": { "type": "structure", "members": { - "Key": { + "ReservedInstancesId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

" + "aws.protocols#ec2QueryName": "ReservedInstancesId", + "smithy.api#documentation": "

The ID for the Reserved Instances that were created as part of the modification request.\n This field is only available when the modification is fulfilled.

", + "smithy.api#xmlName": "reservedInstancesId" } }, - "Value": { - "target": "com.amazonaws.ec2#String", + "TargetConfiguration": { + "target": "com.amazonaws.ec2#ReservedInstancesConfiguration", "traits": { - "smithy.api#documentation": "

The value for the tag.

" + "aws.protocols#ec2QueryName": "TargetConfiguration", + "smithy.api#documentation": "

The target Reserved Instances configurations supplied as part of the modification\n request.

", + "smithy.api#xmlName": "targetConfiguration" } } }, "traits": { - "smithy.api#documentation": "

A tag on an IPAM resource.

" + "smithy.api#documentation": "

Describes the modification request/s.

" } }, - "com.amazonaws.ec2#RequestIpamResourceTagList": { + "com.amazonaws.ec2#ReservedInstancesModificationResultList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#RequestIpamResourceTag", + "target": "com.amazonaws.ec2#ReservedInstancesModificationResult", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#RequestLaunchTemplateData": { + "com.amazonaws.ec2#ReservedInstancesOffering": { "type": "structure", "members": { - "KernelId": { - "target": "com.amazonaws.ec2#KernelId", - "traits": { - "smithy.api#documentation": "

The ID of the kernel.

\n \n

We recommend that you use PV-GRUB instead of kernels and RAM disks. For more\n information, see User provided\n kernels in the Amazon Elastic Compute Cloud User Guide.

\n
" - } - }, - "EbsOptimized": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Indicates whether the instance is optimized for Amazon EBS I/O. This optimization\n provides dedicated throughput to Amazon EBS and an optimized configuration stack to\n provide optimal Amazon EBS I/O performance. This optimization isn't available with all\n instance types. Additional usage charges apply when using an EBS-optimized\n instance.

" - } - }, - "IamInstanceProfile": { - "target": "com.amazonaws.ec2#LaunchTemplateIamInstanceProfileSpecificationRequest", - "traits": { - "smithy.api#documentation": "

The name or Amazon Resource Name (ARN) of an IAM instance profile.

" - } - }, - "BlockDeviceMappings": { - "target": "com.amazonaws.ec2#LaunchTemplateBlockDeviceMappingRequestList", - "traits": { - "smithy.api#documentation": "

The block device mapping.

", - "smithy.api#xmlName": "BlockDeviceMapping" - } - }, - "NetworkInterfaces": { - "target": "com.amazonaws.ec2#LaunchTemplateInstanceNetworkInterfaceSpecificationRequestList", - "traits": { - "smithy.api#documentation": "

The network interfaces for the instance.

", - "smithy.api#xmlName": "NetworkInterface" - } - }, - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", - "traits": { - "smithy.api#documentation": "

The ID of the AMI. Alternatively, you can specify a Systems Manager parameter, which\n will resolve to an AMI ID on launch.

\n

Valid formats:

\n \n \n

Currently, EC2 Fleet and Spot Fleet do not support specifying a Systems Manager parameter. \n If the launch template will be used by an EC2 Fleet or Spot Fleet, you must specify the AMI ID.

\n
\n

For more information, see Use a Systems Manager parameter instead of an AMI ID in the Amazon Elastic Compute Cloud User Guide.

" - } - }, - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", - "traits": { - "smithy.api#documentation": "

The instance type. For more information, see Instance types in the\n Amazon Elastic Compute Cloud User Guide.

\n

If you specify InstanceType, you can't specify\n InstanceRequirements.

" - } - }, - "KeyName": { - "target": "com.amazonaws.ec2#KeyPairName", - "traits": { - "smithy.api#documentation": "

The name of the key pair. You can create a key pair using CreateKeyPair or\n ImportKeyPair.

\n \n

If you do not specify a key pair, you can't connect to the instance unless you\n choose an AMI that is configured to allow users another way to log in.

\n
" - } - }, - "Monitoring": { - "target": "com.amazonaws.ec2#LaunchTemplatesMonitoringRequest", - "traits": { - "smithy.api#documentation": "

The monitoring for the instance.

" - } - }, - "Placement": { - "target": "com.amazonaws.ec2#LaunchTemplatePlacementRequest", + "CurrencyCode": { + "target": "com.amazonaws.ec2#CurrencyCodeValues", "traits": { - "smithy.api#documentation": "

The placement for the instance.

" + "aws.protocols#ec2QueryName": "CurrencyCode", + "smithy.api#documentation": "

The currency of the Reserved Instance offering you are purchasing. It's specified using\n ISO 4217 standard currency codes. At this time, the only supported currency is\n USD.

", + "smithy.api#xmlName": "currencyCode" } }, - "RamDiskId": { - "target": "com.amazonaws.ec2#RamdiskId", + "InstanceTenancy": { + "target": "com.amazonaws.ec2#Tenancy", "traits": { - "smithy.api#documentation": "

The ID of the RAM disk.

\n \n

We recommend that you use PV-GRUB instead of kernels and RAM disks. For more\n information, see User provided\n kernels in the Amazon Elastic Compute Cloud User Guide.

\n
" + "aws.protocols#ec2QueryName": "InstanceTenancy", + "smithy.api#documentation": "

The tenancy of the instance.

", + "smithy.api#xmlName": "instanceTenancy" } }, - "DisableApiTermination": { + "Marketplace": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

If you set this parameter to true, you can't terminate the instance using\n the Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute after\n launch, use ModifyInstanceAttribute. Alternatively, if you set\n InstanceInitiatedShutdownBehavior to terminate, you can\n terminate the instance by running the shutdown command from the instance.

" + "aws.protocols#ec2QueryName": "Marketplace", + "smithy.api#documentation": "

Indicates whether the offering is available through the Reserved Instance Marketplace\n (resale) or Amazon Web Services. If it's a Reserved Instance Marketplace offering, this is\n true.

", + "smithy.api#xmlName": "marketplace" } }, - "InstanceInitiatedShutdownBehavior": { - "target": "com.amazonaws.ec2#ShutdownBehavior", + "OfferingClass": { + "target": "com.amazonaws.ec2#OfferingClassType", "traits": { - "smithy.api#documentation": "

Indicates whether an instance stops or terminates when you initiate shutdown from the\n instance (using the operating system command for system shutdown).

\n

Default: stop\n

" + "aws.protocols#ec2QueryName": "OfferingClass", + "smithy.api#documentation": "

If convertible it can be exchanged for Reserved Instances of the same or\n higher monetary value, with different configurations. If standard, it is not\n possible to perform an exchange.

", + "smithy.api#xmlName": "offeringClass" } }, - "UserData": { - "target": "com.amazonaws.ec2#SensitiveUserData", + "OfferingType": { + "target": "com.amazonaws.ec2#OfferingTypeValues", "traits": { - "smithy.api#documentation": "

The user data to make available to the instance. You must provide base64-encoded text.\n User data is limited to 16 KB. For more information, see Run commands on your Linux instance at\n launch (Linux) or Work with instance\n user data (Windows) in the Amazon Elastic Compute Cloud User Guide.

\n

If you are creating the launch template for use with Batch, the user\n data must be provided in the MIME multi-part archive format. For more information, see Amazon EC2 user data in launch templates in the Batch User Guide.

" + "aws.protocols#ec2QueryName": "OfferingType", + "smithy.api#documentation": "

The Reserved Instance offering type.

", + "smithy.api#xmlName": "offeringType" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#LaunchTemplateTagSpecificationRequestList", + "PricingDetails": { + "target": "com.amazonaws.ec2#PricingDetailsList", "traits": { - "smithy.api#documentation": "

The tags to apply to the resources that are created during instance launch. These\n tags are not applied to the launch template.

", - "smithy.api#xmlName": "TagSpecification" + "aws.protocols#ec2QueryName": "PricingDetailsSet", + "smithy.api#documentation": "

The pricing details of the Reserved Instance offering.

", + "smithy.api#xmlName": "pricingDetailsSet" } }, - "ElasticGpuSpecifications": { - "target": "com.amazonaws.ec2#ElasticGpuSpecificationList", + "RecurringCharges": { + "target": "com.amazonaws.ec2#RecurringChargesList", "traits": { - "smithy.api#documentation": "

Deprecated.

\n \n

Amazon Elastic Graphics reached end of life on January 8, 2024. For \n workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, \n G4dn, or G5 instances.

\n
", - "smithy.api#xmlName": "ElasticGpuSpecification" + "aws.protocols#ec2QueryName": "RecurringCharges", + "smithy.api#documentation": "

The recurring charge tag assigned to the resource.

", + "smithy.api#xmlName": "recurringCharges" } }, - "ElasticInferenceAccelerators": { - "target": "com.amazonaws.ec2#LaunchTemplateElasticInferenceAcceleratorList", + "Scope": { + "target": "com.amazonaws.ec2#scope", "traits": { - "smithy.api#documentation": "

An elastic inference accelerator to associate with the instance. Elastic inference\n accelerators are a resource you can attach to your Amazon EC2 instances to accelerate\n your Deep Learning (DL) inference workloads.

\n

You cannot specify accelerators from different generations in the same request.

\n \n

Starting April 15, 2023, Amazon Web Services will not onboard new customers to Amazon\n Elastic Inference (EI), and will help current customers migrate their workloads to\n options that offer better price and performance. After April 15, 2023, new customers\n will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker,\n Amazon ECS, or Amazon EC2. However, customers who have used Amazon EI at least once during\n the past 30-day period are considered current customers and will be able to continue\n using the service.

\n
", - "smithy.api#xmlName": "ElasticInferenceAccelerator" + "aws.protocols#ec2QueryName": "Scope", + "smithy.api#documentation": "

Whether the Reserved Instance is applied to instances in a Region or an Availability\n Zone.

", + "smithy.api#xmlName": "scope" } }, - "SecurityGroupIds": { - "target": "com.amazonaws.ec2#SecurityGroupIdStringList", + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#AvailabilityZoneId", "traits": { - "smithy.api#documentation": "

The IDs of the security groups.

\n

If you specify a network interface, you must specify any security groups as part of \n the network interface instead of using this parameter.

", - "smithy.api#xmlName": "SecurityGroupId" + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone.

", + "smithy.api#xmlName": "availabilityZoneId" } }, - "SecurityGroups": { - "target": "com.amazonaws.ec2#SecurityGroupStringList", + "ReservedInstancesOfferingId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The names of the security groups. For a nondefault VPC, you must use security group\n IDs instead.

\n

If you specify a network interface, you must specify any security groups as part of \n the network interface instead of using this parameter.

", - "smithy.api#xmlName": "SecurityGroup" + "aws.protocols#ec2QueryName": "ReservedInstancesOfferingId", + "smithy.api#documentation": "

The ID of the Reserved Instance offering. This is the offering ID used in GetReservedInstancesExchangeQuote to confirm that an exchange can be\n made.

", + "smithy.api#xmlName": "reservedInstancesOfferingId" } }, - "InstanceMarketOptions": { - "target": "com.amazonaws.ec2#LaunchTemplateInstanceMarketOptionsRequest", + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", "traits": { - "smithy.api#documentation": "

The market (purchasing) option for the instances.

" + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type on which the Reserved Instance can be used.

", + "smithy.api#xmlName": "instanceType" } }, - "CreditSpecification": { - "target": "com.amazonaws.ec2#CreditSpecificationRequest", + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The credit option for CPU usage of the instance. Valid only for T instances.

" + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone in which the Reserved Instance can be used.

", + "smithy.api#xmlName": "availabilityZone" } }, - "CpuOptions": { - "target": "com.amazonaws.ec2#LaunchTemplateCpuOptionsRequest", + "Duration": { + "target": "com.amazonaws.ec2#Long", "traits": { - "smithy.api#documentation": "

The CPU options for the instance. For more information, see Optimizing CPU Options in the Amazon Elastic Compute Cloud User\n Guide.

" + "aws.protocols#ec2QueryName": "Duration", + "smithy.api#documentation": "

The duration of the Reserved Instance, in seconds.

", + "smithy.api#xmlName": "duration" } }, - "CapacityReservationSpecification": { - "target": "com.amazonaws.ec2#LaunchTemplateCapacityReservationSpecificationRequest", + "UsagePrice": { + "target": "com.amazonaws.ec2#Float", "traits": { - "smithy.api#documentation": "

The Capacity Reservation targeting option. If you do not specify this parameter, the\n instance's Capacity Reservation preference defaults to open, which enables\n it to run in any open Capacity Reservation that has matching attributes (instance type,\n platform, Availability Zone).

" + "aws.protocols#ec2QueryName": "UsagePrice", + "smithy.api#documentation": "

The usage price of the Reserved Instance, per hour.

", + "smithy.api#xmlName": "usagePrice" } }, - "LicenseSpecifications": { - "target": "com.amazonaws.ec2#LaunchTemplateLicenseSpecificationListRequest", + "FixedPrice": { + "target": "com.amazonaws.ec2#Float", "traits": { - "smithy.api#documentation": "

The license configurations.

", - "smithy.api#xmlName": "LicenseSpecification" + "aws.protocols#ec2QueryName": "FixedPrice", + "smithy.api#documentation": "

The purchase price of the Reserved Instance.

", + "smithy.api#xmlName": "fixedPrice" } }, - "HibernationOptions": { - "target": "com.amazonaws.ec2#LaunchTemplateHibernationOptionsRequest", + "ProductDescription": { + "target": "com.amazonaws.ec2#RIProductDescription", "traits": { - "smithy.api#documentation": "

Indicates whether an instance is enabled for hibernation. This parameter is valid only\n if the instance meets the hibernation\n prerequisites. For more information, see Hibernate your instance in the\n Amazon Elastic Compute Cloud User Guide.

" + "aws.protocols#ec2QueryName": "ProductDescription", + "smithy.api#documentation": "

The Reserved Instance product platform description.

", + "smithy.api#xmlName": "productDescription" } - }, - "MetadataOptions": { - "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptionsRequest", + } + }, + "traits": { + "smithy.api#documentation": "

Describes a Reserved Instance offering.

" + } + }, + "com.amazonaws.ec2#ReservedInstancesOfferingId": { + "type": "string" + }, + "com.amazonaws.ec2#ReservedInstancesOfferingIdStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ReservedInstancesOfferingId" + } + }, + "com.amazonaws.ec2#ReservedInstancesOfferingList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ReservedInstancesOffering", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ReservedIntancesIds": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ReservedInstancesId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ResetAddressAttribute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ResetAddressAttributeRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ResetAddressAttributeResult" + }, + "traits": { + "smithy.api#documentation": "

Resets the attribute of the specified IP address. For requirements, see Using reverse DNS for email applications.

" + } + }, + "com.amazonaws.ec2#ResetAddressAttributeRequest": { + "type": "structure", + "members": { + "AllocationId": { + "target": "com.amazonaws.ec2#AllocationId", "traits": { - "smithy.api#documentation": "

The metadata options for the instance. For more information, see Instance metadata and user data in the\n Amazon Elastic Compute Cloud User Guide.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

[EC2-VPC] The allocation ID.

", + "smithy.api#required": {} } }, - "EnclaveOptions": { - "target": "com.amazonaws.ec2#LaunchTemplateEnclaveOptionsRequest", + "Attribute": { + "target": "com.amazonaws.ec2#AddressAttributeName", "traits": { - "smithy.api#documentation": "

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For more\n information, see What is Amazon Web Services Nitro Enclaves?\n in the Amazon Web Services Nitro Enclaves User Guide.

\n

You can't enable Amazon Web Services Nitro Enclaves and hibernation on the same instance.

" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The attribute of the IP address.

", + "smithy.api#required": {} } }, - "InstanceRequirements": { - "target": "com.amazonaws.ec2#InstanceRequirementsRequest", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will\n identify instance types with these attributes.

\n

You must specify VCpuCount and MemoryMiB. All other attributes\n are optional. Any unspecified optional attribute is set to its default.

\n

When you specify multiple attributes, you get instance types that satisfy all of the\n specified attributes. If you specify multiple values for an attribute, you get instance\n types that satisfy any of the specified values.

\n

To limit the list of instance types from which Amazon EC2 can identify matching instance types, \n you can use one of the following parameters, but not both in the same request:

\n \n \n

If you specify InstanceRequirements, you can't specify\n InstanceType.

\n

Attribute-based instance type selection is only supported when using Auto Scaling\n groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in\n the launch instance\n wizard, or with the RunInstances API or\n AWS::EC2::Instance Amazon Web Services CloudFormation resource, you can't specify InstanceRequirements.

\n
\n

For more information, see Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot\n placement score in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "PrivateDnsNameOptions": { - "target": "com.amazonaws.ec2#LaunchTemplatePrivateDnsNameOptionsRequest", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ResetAddressAttributeResult": { + "type": "structure", + "members": { + "Address": { + "target": "com.amazonaws.ec2#AddressAttribute", "traits": { - "smithy.api#documentation": "

The options for the instance hostname. The default values are inherited from the\n subnet.

" + "aws.protocols#ec2QueryName": "Address", + "smithy.api#documentation": "

Information about the IP address.

", + "smithy.api#xmlName": "address" } - }, - "MaintenanceOptions": { - "target": "com.amazonaws.ec2#LaunchTemplateInstanceMaintenanceOptionsRequest", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ResetEbsDefaultKmsKeyId": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ResetEbsDefaultKmsKeyIdRequest" + }, + "output": { + "target": "com.amazonaws.ec2#ResetEbsDefaultKmsKeyIdResult" + }, + "traits": { + "smithy.api#documentation": "

Resets the default KMS key for EBS encryption for your account in this Region \n to the Amazon Web Services managed KMS key for EBS.

\n

After resetting the default KMS key to the Amazon Web Services managed KMS key, you can continue to encrypt by a \n customer managed KMS key by specifying it when you create the volume. For more information, see\n Amazon EBS encryption\n in the Amazon EBS User Guide.

" + } + }, + "com.amazonaws.ec2#ResetEbsDefaultKmsKeyIdRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

The maintenance options for the instance.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "DisableApiStop": { - "target": "com.amazonaws.ec2#Boolean", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ResetEbsDefaultKmsKeyIdResult": { + "type": "structure", + "members": { + "KmsKeyId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

Indicates whether to enable the instance for stop protection. For more information,\n see Stop\n protection in the Amazon Elastic Compute Cloud User Guide.

" + "aws.protocols#ec2QueryName": "KmsKeyId", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the default KMS key for EBS encryption by default.

", + "smithy.api#xmlName": "kmsKeyId" } } }, "traits": { - "smithy.api#documentation": "

The information to include in the launch template.

\n \n

You must specify at least one parameter for the launch template data.

\n
" + "smithy.api#output": {} } }, - "com.amazonaws.ec2#RequestSpotFleet": { + "com.amazonaws.ec2#ResetFpgaImageAttribute": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#RequestSpotFleetRequest" + "target": "com.amazonaws.ec2#ResetFpgaImageAttributeRequest" }, "output": { - "target": "com.amazonaws.ec2#RequestSpotFleetResponse" + "target": "com.amazonaws.ec2#ResetFpgaImageAttributeResult" }, "traits": { - "smithy.api#documentation": "

Creates a Spot Fleet request.

\n

The Spot Fleet request specifies the total target capacity and the On-Demand target\n capacity. Amazon EC2 calculates the difference between the total capacity and On-Demand\n capacity, and launches the difference as Spot capacity.

\n

You can submit a single request that includes multiple launch specifications that vary\n by instance type, AMI, Availability Zone, or subnet.

\n

By default, the Spot Fleet requests Spot Instances in the Spot Instance pool where the\n price per unit is the lowest. Each launch specification can include its own instance\n weighting that reflects the value of the instance type to your application\n workload.

\n

Alternatively, you can specify that the Spot Fleet distribute the target capacity\n across the Spot pools included in its launch specifications. By ensuring that the Spot\n Instances in your Spot Fleet are in different Spot pools, you can improve the\n availability of your fleet.

\n

You can specify tags for the Spot Fleet request and instances launched by the fleet.\n You cannot tag other resource types in a Spot Fleet request because only the\n spot-fleet-request and instance resource types are\n supported.

\n

For more information, see Spot Fleet requests\n in the Amazon EC2 User Guide.

\n \n

We strongly discourage using the RequestSpotFleet API because it is a legacy\n API with no planned investment. For options for requesting Spot Instances, see\n Which\n is the best Spot request method to use? in the\n Amazon EC2 User Guide.

\n
", - "smithy.api#examples": [ - { - "title": "To request a Spot fleet in the subnet with the lowest price", - "documentation": "This example creates a Spot fleet request with two launch specifications that differ only by subnet. The Spot fleet launches the instances in the specified subnet with the lowest price. If the instances are launched in a default VPC, they receive a public IP address by default. If the instances are launched in a nondefault VPC, they do not receive a public IP address by default. Note that you can't specify different subnets from the same Availability Zone in a Spot fleet request.", - "input": { - "SpotFleetRequestConfig": { - "SpotPrice": "0.04", - "TargetCapacity": 2, - "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", - "LaunchSpecifications": [ - { - "ImageId": "ami-1a2b3c4d", - "KeyName": "my-key-pair", - "SecurityGroups": [ - { - "GroupId": "sg-1a2b3c4d" - } - ], - "InstanceType": "m3.medium", - "SubnetId": "subnet-1a2b3c4d, subnet-3c4d5e6f", - "IamInstanceProfile": { - "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" - } - } - ] - } - }, - "output": { - "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" - } - }, - { - "title": "To request a Spot fleet in the Availability Zone with the lowest price", - "documentation": "This example creates a Spot fleet request with two launch specifications that differ only by Availability Zone. The Spot fleet launches the instances in the specified Availability Zone with the lowest price. If your account supports EC2-VPC only, Amazon EC2 launches the Spot instances in the default subnet of the Availability Zone.", - "input": { - "SpotFleetRequestConfig": { - "SpotPrice": "0.04", - "TargetCapacity": 2, - "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", - "LaunchSpecifications": [ - { - "ImageId": "ami-1a2b3c4d", - "KeyName": "my-key-pair", - "SecurityGroups": [ - { - "GroupId": "sg-1a2b3c4d" - } - ], - "InstanceType": "m3.medium", - "Placement": { - "AvailabilityZone": "us-west-2a, us-west-2b" - }, - "IamInstanceProfile": { - "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" - } - } - ] - } - }, - "output": { - "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" - } - }, - { - "title": "To launch Spot instances in a subnet and assign them public IP addresses", - "documentation": "This example assigns public addresses to instances launched in a nondefault VPC. Note that when you specify a network interface, you must include the subnet ID and security group ID using the network interface.", - "input": { - "SpotFleetRequestConfig": { - "SpotPrice": "0.04", - "TargetCapacity": 2, - "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", - "LaunchSpecifications": [ - { - "ImageId": "ami-1a2b3c4d", - "KeyName": "my-key-pair", - "InstanceType": "m3.medium", - "NetworkInterfaces": [ - { - "DeviceIndex": 0, - "SubnetId": "subnet-1a2b3c4d", - "Groups": [ - "sg-1a2b3c4d" - ], - "AssociatePublicIpAddress": true - } - ], - "IamInstanceProfile": { - "Arn": "arn:aws:iam::880185128111:instance-profile/my-iam-role" - } - } - ] - } - }, - "output": { - "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" - } - }, - { - "title": "To request a Spot fleet using the diversified allocation strategy", - "documentation": "This example creates a Spot fleet request that launches 30 instances using the diversified allocation strategy. The launch specifications differ by instance type. The Spot fleet distributes the instances across the launch specifications such that there are 10 instances of each type.", - "input": { - "SpotFleetRequestConfig": { - "SpotPrice": "0.70", - "TargetCapacity": 30, - "AllocationStrategy": "diversified", - "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", - "LaunchSpecifications": [ - { - "ImageId": "ami-1a2b3c4d", - "InstanceType": "c4.2xlarge", - "SubnetId": "subnet-1a2b3c4d" - }, - { - "ImageId": "ami-1a2b3c4d", - "InstanceType": "m3.2xlarge", - "SubnetId": "subnet-1a2b3c4d" - }, - { - "ImageId": "ami-1a2b3c4d", - "InstanceType": "r3.2xlarge", - "SubnetId": "subnet-1a2b3c4d" - } - ] - } - }, - "output": { - "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" - } + "smithy.api#documentation": "

Resets the specified attribute of the specified Amazon FPGA Image (AFI) to its default value.\n\t\t You can only reset the load permission attribute.

" + } + }, + "com.amazonaws.ec2#ResetFpgaImageAttributeName": { + "type": "enum", + "members": { + "loadPermission": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "loadPermission" } - ] + } } }, - "com.amazonaws.ec2#RequestSpotFleetRequest": { + "com.amazonaws.ec2#ResetFpgaImageAttributeRequest": { "type": "structure", "members": { "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "SpotFleetRequestConfig": { - "target": "com.amazonaws.ec2#SpotFleetRequestConfigData", + "FpgaImageId": { + "target": "com.amazonaws.ec2#FpgaImageId", "traits": { - "aws.protocols#ec2QueryName": "SpotFleetRequestConfig", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The configuration for the Spot Fleet request.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "spotFleetRequestConfig" + "smithy.api#documentation": "

The ID of the AFI.

", + "smithy.api#required": {} + } + }, + "Attribute": { + "target": "com.amazonaws.ec2#ResetFpgaImageAttributeName", + "traits": { + "smithy.api#documentation": "

The attribute.

" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for RequestSpotFleet.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#RequestSpotFleetResponse": { + "com.amazonaws.ec2#ResetFpgaImageAttributeResult": { "type": "structure", "members": { - "SpotFleetRequestId": { - "target": "com.amazonaws.ec2#String", + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "SpotFleetRequestId", - "smithy.api#documentation": "

The ID of the Spot Fleet request.

", - "smithy.api#xmlName": "spotFleetRequestId" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Is true if the request succeeds, and an error otherwise.

", + "smithy.api#xmlName": "return" } } }, "traits": { - "smithy.api#documentation": "

Contains the output of RequestSpotFleet.

", "smithy.api#output": {} } }, - "com.amazonaws.ec2#RequestSpotInstances": { + "com.amazonaws.ec2#ResetImageAttribute": { "type": "operation", "input": { - "target": "com.amazonaws.ec2#RequestSpotInstancesRequest" + "target": "com.amazonaws.ec2#ResetImageAttributeRequest" }, "output": { - "target": "com.amazonaws.ec2#RequestSpotInstancesResult" + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Creates a Spot Instance request.

\n

For more information, see Spot Instance requests in\n the Amazon EC2 User Guide for Linux Instances.

\n \n

We strongly discourage using the RequestSpotInstances API because it is a legacy\n API with no planned investment. For options for requesting Spot Instances, see\n Which\n is the best Spot request method to use? in the\n Amazon EC2 User Guide for Linux Instances.

\n
", + "smithy.api#documentation": "

Resets an attribute of an AMI to its default value.

", "smithy.api#examples": [ { - "title": "To create a one-time Spot Instance request", - "documentation": "This example creates a one-time Spot Instance request for five instances in the specified Availability Zone. If your account supports EC2-VPC only, Amazon EC2 launches the instances in the default subnet of the specified Availability Zone.", - "input": { - "SpotPrice": "0.03", - "InstanceCount": 5, - "Type": "one-time", - "LaunchSpecification": { - "ImageId": "ami-1a2b3c4d", - "KeyName": "my-key-pair", - "SecurityGroupIds": [ - "sg-1a2b3c4d" - ], - "InstanceType": "m3.medium", - "Placement": { - "AvailabilityZone": "us-west-2a" - }, - "IamInstanceProfile": { - "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" - } - } - } - }, - { - "title": "To create a one-time Spot Instance request", - "documentation": "This example command creates a one-time Spot Instance request for five instances in the specified subnet. Amazon EC2 launches the instances in the specified subnet. If the VPC is a nondefault VPC, the instances do not receive a public IP address by default.", + "title": "To reset the launchPermission attribute", + "documentation": "This example resets the launchPermission attribute for the specified AMI. By default, AMIs are private.", "input": { - "SpotPrice": "0.050", - "InstanceCount": 5, - "Type": "one-time", - "LaunchSpecification": { - "ImageId": "ami-1a2b3c4d", - "SecurityGroupIds": [ - "sg-1a2b3c4d" - ], - "InstanceType": "m3.medium", - "SubnetId": "subnet-1a2b3c4d", - "IamInstanceProfile": { - "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" - } - } - } + "Attribute": "launchPermission", + "ImageId": "ami-5731123e" + }, + "output": {} } ] } }, - "com.amazonaws.ec2#RequestSpotInstancesRequest": { - "type": "structure", + "com.amazonaws.ec2#ResetImageAttributeName": { + "type": "enum", "members": { - "AvailabilityZoneGroup": { - "target": "com.amazonaws.ec2#String", + "launchPermission": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZoneGroup", - "smithy.api#documentation": "

The user-specified name for a logical grouping of requests.

\n

When you specify an Availability Zone group in a Spot Instance request, all Spot\n Instances in the request are launched in the same Availability Zone. Instance proximity\n is maintained with this parameter, but the choice of Availability Zone is not. The group\n applies only to requests for Spot Instances of the same instance type. Any additional\n Spot Instance requests that are specified with the same Availability Zone group name are\n launched in that same Availability Zone, as long as at least one instance from the group\n is still active.

\n

If there is no active instance running in the Availability Zone group that you specify\n for a new Spot Instance request (all instances are terminated, the request is expired,\n or the maximum price you specified falls below current Spot price), then Amazon EC2 launches\n the instance in any Availability Zone where the constraint can be met. Consequently, the\n subsequent set of Spot Instances could be placed in a different zone from the original\n request, even if you specified the same Availability Zone group.

\n

Default: Instances are launched in any available Availability Zone.

", - "smithy.api#xmlName": "availabilityZoneGroup" + "smithy.api#enumValue": "launchPermission" } - }, - "BlockDurationMinutes": { - "target": "com.amazonaws.ec2#Integer", + } + } + }, + "com.amazonaws.ec2#ResetImageAttributeRequest": { + "type": "structure", + "members": { + "Attribute": { + "target": "com.amazonaws.ec2#ResetImageAttributeName", "traits": { - "aws.protocols#ec2QueryName": "BlockDurationMinutes", - "smithy.api#documentation": "

Deprecated.

", - "smithy.api#xmlName": "blockDurationMinutes" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The attribute to reset (currently you can only reset the launch permission\n attribute).

", + "smithy.api#required": {} } }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the\n request. For more information, see How to Ensure\n Idempotency in the Amazon EC2 User Guide for Linux Instances.

", - "smithy.api#xmlName": "clientToken" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the AMI.

", + "smithy.api#required": {} } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } - }, - "InstanceCount": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "InstanceCount", - "smithy.api#documentation": "

The maximum number of Spot Instances to launch.

\n

Default: 1

", - "smithy.api#xmlName": "instanceCount" - } - }, - "LaunchGroup": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "LaunchGroup", - "smithy.api#documentation": "

The instance launch group. Launch groups are Spot Instances that launch together and\n terminate together.

\n

Default: Instances are launched and terminated individually

", - "smithy.api#xmlName": "launchGroup" - } - }, - "LaunchSpecification": { - "target": "com.amazonaws.ec2#RequestSpotLaunchSpecification", - "traits": { - "smithy.api#documentation": "

The launch specification.

" - } - }, - "SpotPrice": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "SpotPrice", - "smithy.api#documentation": "

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend \n using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

\n \n

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

\n
", - "smithy.api#xmlName": "spotPrice" - } - }, - "Type": { - "target": "com.amazonaws.ec2#SpotInstanceType", - "traits": { - "aws.protocols#ec2QueryName": "Type", - "smithy.api#documentation": "

The Spot Instance request type.

\n

Default: one-time\n

", - "smithy.api#xmlName": "type" - } - }, - "ValidFrom": { - "target": "com.amazonaws.ec2#DateTime", - "traits": { - "aws.protocols#ec2QueryName": "ValidFrom", - "smithy.api#documentation": "

The start date of the request. If this is a one-time request, the request becomes\n active at this date and time and remains active until all instances launch, the request\n expires, or the request is canceled. If the request is persistent, the request becomes\n active at this date and time and remains active until it expires or is canceled.

\n

The specified start date and time cannot be equal to the current date and time. You\n must specify a start date and time that occurs after the current date and time.

", - "smithy.api#xmlName": "validFrom" + } + }, + "traits": { + "smithy.api#documentation": "

Contains the parameters for ResetImageAttribute.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ResetInstanceAttribute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ResetInstanceAttributeRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Resets an attribute of an instance to its default value. To reset the\n kernel or ramdisk, the instance must be in a stopped\n state. To reset the sourceDestCheck, the instance can be either running or\n stopped.

\n

The sourceDestCheck attribute controls whether source/destination\n checking is enabled. The default value is true, which means checking is\n enabled. This value must be false for a NAT instance to perform NAT. For\n more information, see NAT instances in the\n Amazon VPC User Guide.

", + "smithy.api#examples": [ + { + "title": "To reset the sourceDestCheck attribute", + "documentation": "This example resets the sourceDestCheck attribute for the specified instance.", + "input": { + "Attribute": "sourceDestCheck", + "InstanceId": "i-1234567890abcdef0" + }, + "output": {} } - }, - "ValidUntil": { - "target": "com.amazonaws.ec2#DateTime", + ] + } + }, + "com.amazonaws.ec2#ResetInstanceAttributeRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "ValidUntil", - "smithy.api#documentation": "

The end date of the request, in UTC format\n (YYYY-MM-DDTHH:MM:SSZ).

\n ", - "smithy.api#xmlName": "validUntil" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#TagSpecificationList", + "InstanceId": { + "target": "com.amazonaws.ec2#InstanceId", "traits": { - "smithy.api#documentation": "

The key-value pair for tagging the Spot Instance request on creation. The value for\n ResourceType must be spot-instances-request, otherwise the\n Spot Instance request fails. To tag the Spot Instance request after it has been created,\n see CreateTags.

", - "smithy.api#xmlName": "TagSpecification" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the instance.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "instanceId" } }, - "InstanceInterruptionBehavior": { - "target": "com.amazonaws.ec2#InstanceInterruptionBehavior", + "Attribute": { + "target": "com.amazonaws.ec2#InstanceAttributeName", "traits": { - "smithy.api#documentation": "

The behavior when a Spot Instance is interrupted. The default is terminate.

" + "aws.protocols#ec2QueryName": "Attribute", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The attribute to reset.

\n \n

You can only reset the following attributes: kernel |\n ramdisk | sourceDestCheck.

\n
", + "smithy.api#required": {}, + "smithy.api#xmlName": "attribute" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for RequestSpotInstances.

", "smithy.api#input": {} } }, - "com.amazonaws.ec2#RequestSpotInstancesResult": { - "type": "structure", - "members": { - "SpotInstanceRequests": { - "target": "com.amazonaws.ec2#SpotInstanceRequestList", - "traits": { - "aws.protocols#ec2QueryName": "SpotInstanceRequestSet", - "smithy.api#documentation": "

The Spot Instance requests.

", - "smithy.api#xmlName": "spotInstanceRequestSet" - } - } + "com.amazonaws.ec2#ResetNetworkInterfaceAttribute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ResetNetworkInterfaceAttributeRequest" + }, + "output": { + "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Contains the output of RequestSpotInstances.

", - "smithy.api#output": {} + "smithy.api#documentation": "

Resets a network interface attribute. You can specify only one attribute at a\n time.

" } }, - "com.amazonaws.ec2#RequestSpotLaunchSpecification": { + "com.amazonaws.ec2#ResetNetworkInterfaceAttributeRequest": { "type": "structure", "members": { - "SecurityGroupIds": { - "target": "com.amazonaws.ec2#RequestSpotLaunchSpecificationSecurityGroupIdList", - "traits": { - "smithy.api#documentation": "

The IDs of the security groups.

", - "smithy.api#xmlName": "SecurityGroupId" - } - }, - "SecurityGroups": { - "target": "com.amazonaws.ec2#RequestSpotLaunchSpecificationSecurityGroupList", - "traits": { - "smithy.api#documentation": "

Not supported.

", - "smithy.api#xmlName": "SecurityGroup" - } - }, - "AddressingType": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "AddressingType", - "smithy.api#documentation": "

Deprecated.

", - "smithy.api#xmlName": "addressingType" - } - }, - "BlockDeviceMappings": { - "target": "com.amazonaws.ec2#BlockDeviceMappingList", - "traits": { - "aws.protocols#ec2QueryName": "BlockDeviceMapping", - "smithy.api#documentation": "

The block device mapping entries. You can't specify both a snapshot ID and an encryption value. \n This is because only blank volumes can be encrypted on creation. If a snapshot is the basis for a volume, \n it is not blank and its encryption status is used for the volume encryption status.

", - "smithy.api#xmlName": "blockDeviceMapping" - } - }, - "EbsOptimized": { + "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "EbsOptimized", - "smithy.api#documentation": "

Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

\n

Default: false\n

", - "smithy.api#xmlName": "ebsOptimized" - } - }, - "IamInstanceProfile": { - "target": "com.amazonaws.ec2#IamInstanceProfileSpecification", - "traits": { - "aws.protocols#ec2QueryName": "IamInstanceProfile", - "smithy.api#documentation": "

The IAM instance profile.

", - "smithy.api#xmlName": "iamInstanceProfile" - } - }, - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", - "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The ID of the AMI.

", - "smithy.api#xmlName": "imageId" - } - }, - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", - "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type. Only one instance type can be specified.

", - "smithy.api#xmlName": "instanceType" - } - }, - "KernelId": { - "target": "com.amazonaws.ec2#KernelId", - "traits": { - "aws.protocols#ec2QueryName": "KernelId", - "smithy.api#documentation": "

The ID of the kernel.

", - "smithy.api#xmlName": "kernelId" - } - }, - "KeyName": { - "target": "com.amazonaws.ec2#KeyPairName", - "traits": { - "aws.protocols#ec2QueryName": "KeyName", - "smithy.api#documentation": "

The name of the key pair.

", - "smithy.api#xmlName": "keyName" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually\n making the request, and provides an error response. If you have the required\n permissions, the error response is DryRunOperation. Otherwise, it is\n UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "Monitoring": { - "target": "com.amazonaws.ec2#RunInstancesMonitoringEnabled", + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", "traits": { - "aws.protocols#ec2QueryName": "Monitoring", - "smithy.api#documentation": "

Indicates whether basic or detailed monitoring is enabled for the instance.

\n

Default: Disabled

", - "smithy.api#xmlName": "monitoring" + "aws.protocols#ec2QueryName": "NetworkInterfaceId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the network interface.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "networkInterfaceId" } }, - "NetworkInterfaces": { - "target": "com.amazonaws.ec2#InstanceNetworkInterfaceSpecificationList", + "SourceDestCheck": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The network interfaces. If you specify a network interface, you must specify \n subnet IDs and security group IDs using the network interface.

", - "smithy.api#xmlName": "NetworkInterface" + "aws.protocols#ec2QueryName": "SourceDestCheck", + "smithy.api#documentation": "

The source/destination checking attribute. Resets the value to\n true.

", + "smithy.api#xmlName": "sourceDestCheck" } - }, - "Placement": { - "target": "com.amazonaws.ec2#SpotPlacement", - "traits": { - "aws.protocols#ec2QueryName": "Placement", - "smithy.api#documentation": "

The placement information for the instance.

", - "smithy.api#xmlName": "placement" + } + }, + "traits": { + "smithy.api#documentation": "

Contains the parameters for ResetNetworkInterfaceAttribute.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#ResetSnapshotAttribute": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#ResetSnapshotAttributeRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Resets permission settings for the specified snapshot.

\n

For more information about modifying snapshot permissions, see Share a snapshot in the\n Amazon EBS User Guide.

", + "smithy.api#examples": [ + { + "title": "To reset a snapshot attribute", + "documentation": "This example resets the create volume permissions for snapshot ``snap-1234567890abcdef0``. If the command succeeds, no output is returned.", + "input": { + "SnapshotId": "snap-1234567890abcdef0", + "Attribute": "createVolumePermission" + }, + "output": {} } - }, - "RamdiskId": { - "target": "com.amazonaws.ec2#RamdiskId", + ] + } + }, + "com.amazonaws.ec2#ResetSnapshotAttributeRequest": { + "type": "structure", + "members": { + "Attribute": { + "target": "com.amazonaws.ec2#SnapshotAttributeName", "traits": { - "aws.protocols#ec2QueryName": "RamdiskId", - "smithy.api#documentation": "

The ID of the RAM disk.

", - "smithy.api#xmlName": "ramdiskId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The attribute to reset. Currently, only the attribute for permission to create volumes can\n be reset.

", + "smithy.api#required": {} } }, - "SubnetId": { - "target": "com.amazonaws.ec2#SubnetId", + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#documentation": "

The ID of the subnet in which to launch the instance.

", - "smithy.api#xmlName": "subnetId" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the snapshot.

", + "smithy.api#required": {} } }, - "UserData": { - "target": "com.amazonaws.ec2#SensitiveUserData", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "UserData", - "smithy.api#documentation": "

The base64-encoded user data that instances use when starting up. User data is limited to 16 KB.

", - "smithy.api#xmlName": "userData" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } } }, "traits": { - "smithy.api#documentation": "

Describes the launch specification for an instance.

" + "smithy.api#input": {} } }, - "com.amazonaws.ec2#RequestSpotLaunchSpecificationSecurityGroupIdList": { + "com.amazonaws.ec2#ResourceArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1283 + } + } + }, + "com.amazonaws.ec2#ResourceConfigurationArn": { + "type": "string" + }, + "com.amazonaws.ec2#ResourceIdList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#SecurityGroupId", - "traits": { - "smithy.api#xmlName": "item" - } + "target": "com.amazonaws.ec2#TaggableResourceId" } }, - "com.amazonaws.ec2#RequestSpotLaunchSpecificationSecurityGroupList": { + "com.amazonaws.ec2#ResourceList": { "type": "list", "member": { "target": "com.amazonaws.ec2#String", @@ -88602,1333 +102143,736 @@ } } }, - "com.amazonaws.ec2#Reservation": { + "com.amazonaws.ec2#ResourceStatement": { "type": "structure", "members": { - "Groups": { - "target": "com.amazonaws.ec2#GroupIdentifierList", - "traits": { - "aws.protocols#ec2QueryName": "GroupSet", - "smithy.api#documentation": "

Not supported.

", - "smithy.api#xmlName": "groupSet" - } - }, - "Instances": { - "target": "com.amazonaws.ec2#InstanceList", - "traits": { - "aws.protocols#ec2QueryName": "InstancesSet", - "smithy.api#documentation": "

The instances.

", - "smithy.api#xmlName": "instancesSet" - } - }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the reservation.

", - "smithy.api#xmlName": "ownerId" - } - }, - "RequesterId": { - "target": "com.amazonaws.ec2#String", + "Resources": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "aws.protocols#ec2QueryName": "RequesterId", - "smithy.api#documentation": "

The ID of the requester that launched the instances on your behalf (for example,\n Amazon Web Services Management Console or Auto Scaling).

", - "smithy.api#xmlName": "requesterId" + "aws.protocols#ec2QueryName": "ResourceSet", + "smithy.api#documentation": "

The resources.

", + "smithy.api#xmlName": "resourceSet" } }, - "ReservationId": { - "target": "com.amazonaws.ec2#String", + "ResourceTypes": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "aws.protocols#ec2QueryName": "ReservationId", - "smithy.api#documentation": "

The ID of the reservation.

", - "smithy.api#xmlName": "reservationId" + "aws.protocols#ec2QueryName": "ResourceTypeSet", + "smithy.api#documentation": "

The resource types.

", + "smithy.api#xmlName": "resourceTypeSet" } } }, "traits": { - "smithy.api#documentation": "

Describes a launch request for one or more instances, and includes owner, requester,\n and security group information that applies to all instances in the launch\n request.

" + "smithy.api#documentation": "

Describes a resource statement.

" } }, - "com.amazonaws.ec2#ReservationFleetInstanceSpecification": { + "com.amazonaws.ec2#ResourceStatementRequest": { "type": "structure", "members": { - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", - "traits": { - "smithy.api#documentation": "

The instance type for which the Capacity Reservation Fleet reserves capacity.

" - } - }, - "InstancePlatform": { - "target": "com.amazonaws.ec2#CapacityReservationInstancePlatform", - "traits": { - "smithy.api#documentation": "

The type of operating system for which the Capacity Reservation Fleet reserves capacity.

" - } - }, - "Weight": { - "target": "com.amazonaws.ec2#DoubleWithConstraints", - "traits": { - "smithy.api#documentation": "

The number of capacity units provided by the specified instance type. This value, together with the \n\t\t\ttotal target capacity that you specify for the Fleet determine the number of instances for which the \n\t\t\tFleet reserves capacity. Both values are based on units that make sense for your workload. For more \n\t\t\tinformation, see Total target capacity \n\t\t\tin the Amazon EC2 User Guide.

" - } - }, - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The Availability Zone in which the Capacity Reservation Fleet reserves the capacity. A Capacity \n\t\t\tReservation Fleet can't span Availability Zones. All instance type specifications that you specify \n\t\t\tfor the Fleet must use the same Availability Zone.

" - } - }, - "AvailabilityZoneId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "smithy.api#documentation": "

The ID of the Availability Zone in which the Capacity Reservation Fleet reserves the capacity. A \n\t\t\tCapacity Reservation Fleet can't span Availability Zones. All instance type specifications that you \n\t\t\tspecify for the Fleet must use the same Availability Zone.

" - } - }, - "EbsOptimized": { - "target": "com.amazonaws.ec2#Boolean", + "Resources": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

Indicates whether the Capacity Reservation Fleet supports EBS-optimized instances types. This \n\t\t\toptimization provides dedicated throughput to Amazon EBS and an optimized configuration stack \n\t\t\tto provide optimal I/O performance. This optimization isn't available with all instance types. Additional \n\t\t\tusage charges apply when using EBS-optimized instance types.

" + "smithy.api#documentation": "

The resources.

", + "smithy.api#xmlName": "Resource" } }, - "Priority": { - "target": "com.amazonaws.ec2#IntegerWithConstraints", + "ResourceTypes": { + "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

The priority to assign to the instance type. This value is used to determine which of the instance types \n\t\t\tspecified for the Fleet should be prioritized for use. A lower value indicates a high priority. For more \n\t\t\tinformation, see Instance type priority \n\t\t\tin the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

The resource types.

", + "smithy.api#xmlName": "ResourceType" } } }, "traits": { - "smithy.api#documentation": "

Information about an instance type to use in a Capacity Reservation Fleet.

" - } - }, - "com.amazonaws.ec2#ReservationFleetInstanceSpecificationList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ReservationFleetInstanceSpecification" - } - }, - "com.amazonaws.ec2#ReservationId": { - "type": "string" - }, - "com.amazonaws.ec2#ReservationList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#Reservation", - "traits": { - "smithy.api#xmlName": "item" - } + "smithy.api#documentation": "

Describes a resource statement.

" } }, - "com.amazonaws.ec2#ReservationState": { + "com.amazonaws.ec2#ResourceType": { "type": "enum", "members": { - "PAYMENT_PENDING": { + "capacity_reservation": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "payment-pending" + "smithy.api#enumValue": "capacity-reservation" } }, - "PAYMENT_FAILED": { + "client_vpn_endpoint": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "payment-failed" + "smithy.api#enumValue": "client-vpn-endpoint" } }, - "ACTIVE": { + "customer_gateway": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "active" + "smithy.api#enumValue": "customer-gateway" } }, - "RETIRED": { + "carrier_gateway": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "retired" + "smithy.api#enumValue": "carrier-gateway" } - } - } - }, - "com.amazonaws.ec2#ReservationValue": { - "type": "structure", - "members": { - "HourlyPrice": { - "target": "com.amazonaws.ec2#String", + }, + "coip_pool": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "HourlyPrice", - "smithy.api#documentation": "

The hourly rate of the reservation.

", - "smithy.api#xmlName": "hourlyPrice" + "smithy.api#enumValue": "coip-pool" } }, - "RemainingTotalValue": { - "target": "com.amazonaws.ec2#String", + "declarative_policies_report": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "RemainingTotalValue", - "smithy.api#documentation": "

The balance of the total value (the sum of remainingUpfrontValue + hourlyPrice * number of hours remaining).

", - "smithy.api#xmlName": "remainingTotalValue" + "smithy.api#enumValue": "declarative-policies-report" } }, - "RemainingUpfrontValue": { - "target": "com.amazonaws.ec2#String", + "dedicated_host": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "RemainingUpfrontValue", - "smithy.api#documentation": "

The remaining upfront cost of the reservation.

", - "smithy.api#xmlName": "remainingUpfrontValue" + "smithy.api#enumValue": "dedicated-host" } - } - }, - "traits": { - "smithy.api#documentation": "

The cost associated with the Reserved Instance.

" - } - }, - "com.amazonaws.ec2#ReservedInstanceIdSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ReservationId", - "traits": { - "smithy.api#xmlName": "ReservedInstanceId" - } - } - }, - "com.amazonaws.ec2#ReservedInstanceLimitPrice": { - "type": "structure", - "members": { - "Amount": { - "target": "com.amazonaws.ec2#Double", + }, + "dhcp_options": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Amount", - "smithy.api#documentation": "

Used for Reserved Instance Marketplace offerings. Specifies the limit price on the total order (instanceCount * price).

", - "smithy.api#xmlName": "amount" + "smithy.api#enumValue": "dhcp-options" } }, - "CurrencyCode": { - "target": "com.amazonaws.ec2#CurrencyCodeValues", + "egress_only_internet_gateway": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CurrencyCode", - "smithy.api#documentation": "

The currency in which the limitPrice amount is specified.\n\t\t\t\tAt this time, the only supported currency is USD.

", - "smithy.api#xmlName": "currencyCode" + "smithy.api#enumValue": "egress-only-internet-gateway" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the limit price of a Reserved Instance offering.

" - } - }, - "com.amazonaws.ec2#ReservedInstanceReservationValue": { - "type": "structure", - "members": { - "ReservationValue": { - "target": "com.amazonaws.ec2#ReservationValue", + }, + "elastic_ip": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ReservationValue", - "smithy.api#documentation": "

The total value of the Convertible Reserved Instance that you are exchanging.

", - "smithy.api#xmlName": "reservationValue" + "smithy.api#enumValue": "elastic-ip" } }, - "ReservedInstanceId": { - "target": "com.amazonaws.ec2#String", + "elastic_gpu": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstanceId", - "smithy.api#documentation": "

The ID of the Convertible Reserved Instance that you are exchanging.

", - "smithy.api#xmlName": "reservedInstanceId" + "smithy.api#enumValue": "elastic-gpu" } - } - }, - "traits": { - "smithy.api#documentation": "

The total value of the Convertible Reserved Instance.

" - } - }, - "com.amazonaws.ec2#ReservedInstanceReservationValueSet": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ReservedInstanceReservationValue", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ReservedInstanceState": { - "type": "enum", - "members": { - "payment_pending": { + }, + "export_image_task": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "payment-pending" + "smithy.api#enumValue": "export-image-task" } }, - "active": { + "export_instance_task": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "active" + "smithy.api#enumValue": "export-instance-task" } }, - "payment_failed": { + "fleet": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "payment-failed" + "smithy.api#enumValue": "fleet" } }, - "retired": { + "fpga_image": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "retired" + "smithy.api#enumValue": "fpga-image" } }, - "queued": { + "host_reservation": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "queued" + "smithy.api#enumValue": "host-reservation" } }, - "queued_deleted": { + "image": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "queued-deleted" + "smithy.api#enumValue": "image" } - } - } - }, - "com.amazonaws.ec2#ReservedInstances": { - "type": "structure", - "members": { - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + }, + "image_usage_report": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone in which the Reserved Instance can be used.

", - "smithy.api#xmlName": "availabilityZone" + "smithy.api#enumValue": "image-usage-report" } }, - "Duration": { - "target": "com.amazonaws.ec2#Long", + "import_image_task": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Duration", - "smithy.api#documentation": "

The duration of the Reserved Instance, in seconds.

", - "smithy.api#xmlName": "duration" + "smithy.api#enumValue": "import-image-task" } }, - "End": { - "target": "com.amazonaws.ec2#DateTime", + "import_snapshot_task": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "End", - "smithy.api#documentation": "

The time when the Reserved Instance expires.

", - "smithy.api#xmlName": "end" + "smithy.api#enumValue": "import-snapshot-task" } }, - "FixedPrice": { - "target": "com.amazonaws.ec2#Float", + "instance": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "FixedPrice", - "smithy.api#documentation": "

The purchase price of the Reserved Instance.

", - "smithy.api#xmlName": "fixedPrice" + "smithy.api#enumValue": "instance" } }, - "InstanceCount": { - "target": "com.amazonaws.ec2#Integer", + "instance_event_window": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceCount", - "smithy.api#documentation": "

The number of reservations purchased.

", - "smithy.api#xmlName": "instanceCount" + "smithy.api#enumValue": "instance-event-window" } }, - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", + "internet_gateway": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type on which the Reserved Instance can be used.

", - "smithy.api#xmlName": "instanceType" + "smithy.api#enumValue": "internet-gateway" } }, - "ProductDescription": { - "target": "com.amazonaws.ec2#RIProductDescription", + "ipam": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ProductDescription", - "smithy.api#documentation": "

The Reserved Instance product platform description.

", - "smithy.api#xmlName": "productDescription" + "smithy.api#enumValue": "ipam" } }, - "ReservedInstancesId": { - "target": "com.amazonaws.ec2#String", + "ipam_pool": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesId", - "smithy.api#documentation": "

The ID of the Reserved Instance.

", - "smithy.api#xmlName": "reservedInstancesId" + "smithy.api#enumValue": "ipam-pool" } }, - "Start": { - "target": "com.amazonaws.ec2#DateTime", + "ipam_scope": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Start", - "smithy.api#documentation": "

The date and time the Reserved Instance started.

", - "smithy.api#xmlName": "start" + "smithy.api#enumValue": "ipam-scope" } }, - "State": { - "target": "com.amazonaws.ec2#ReservedInstanceState", + "ipv4pool_ec2": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the Reserved Instance purchase.

", - "smithy.api#xmlName": "state" + "smithy.api#enumValue": "ipv4pool-ec2" } }, - "UsagePrice": { - "target": "com.amazonaws.ec2#Float", + "ipv6pool_ec2": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "UsagePrice", - "smithy.api#documentation": "

The usage price of the Reserved Instance, per hour.

", - "smithy.api#xmlName": "usagePrice" + "smithy.api#enumValue": "ipv6pool-ec2" } }, - "CurrencyCode": { - "target": "com.amazonaws.ec2#CurrencyCodeValues", + "key_pair": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CurrencyCode", - "smithy.api#documentation": "

The currency of the Reserved Instance. It's specified using ISO 4217 standard currency codes.\n\t\t\t\tAt this time, the only supported currency is USD.

", - "smithy.api#xmlName": "currencyCode" + "smithy.api#enumValue": "key-pair" } }, - "InstanceTenancy": { - "target": "com.amazonaws.ec2#Tenancy", + "launch_template": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceTenancy", - "smithy.api#documentation": "

The tenancy of the instance.

", - "smithy.api#xmlName": "instanceTenancy" + "smithy.api#enumValue": "launch-template" } }, - "OfferingClass": { - "target": "com.amazonaws.ec2#OfferingClassType", + "local_gateway": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OfferingClass", - "smithy.api#documentation": "

The offering class of the Reserved Instance.

", - "smithy.api#xmlName": "offeringClass" + "smithy.api#enumValue": "local-gateway" } }, - "OfferingType": { - "target": "com.amazonaws.ec2#OfferingTypeValues", + "local_gateway_route_table": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OfferingType", - "smithy.api#documentation": "

The Reserved Instance offering type.

", - "smithy.api#xmlName": "offeringType" + "smithy.api#enumValue": "local-gateway-route-table" } }, - "RecurringCharges": { - "target": "com.amazonaws.ec2#RecurringChargesList", + "local_gateway_virtual_interface": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "RecurringCharges", - "smithy.api#documentation": "

The recurring charge tag assigned to the resource.

", - "smithy.api#xmlName": "recurringCharges" + "smithy.api#enumValue": "local-gateway-virtual-interface" } }, - "Scope": { - "target": "com.amazonaws.ec2#scope", + "local_gateway_virtual_interface_group": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Scope", - "smithy.api#documentation": "

The scope of the Reserved Instance.

", - "smithy.api#xmlName": "scope" + "smithy.api#enumValue": "local-gateway-virtual-interface-group" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "local_gateway_route_table_vpc_association": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the resource.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "local-gateway-route-table-vpc-association" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a Reserved Instance.

" - } - }, - "com.amazonaws.ec2#ReservedInstancesConfiguration": { - "type": "structure", - "members": { - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + }, + "local_gateway_route_table_virtual_interface_group_association": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone for the modified Reserved Instances.

", - "smithy.api#xmlName": "availabilityZone" + "smithy.api#enumValue": "local-gateway-route-table-virtual-interface-group-association" } }, - "InstanceCount": { - "target": "com.amazonaws.ec2#Integer", + "natgateway": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceCount", - "smithy.api#documentation": "

The number of modified Reserved Instances.

\n \n

This is a required field for a request.

\n
", - "smithy.api#xmlName": "instanceCount" + "smithy.api#enumValue": "natgateway" } }, - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", + "network_acl": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type for the modified Reserved Instances.

", - "smithy.api#xmlName": "instanceType" + "smithy.api#enumValue": "network-acl" } }, - "Platform": { - "target": "com.amazonaws.ec2#String", + "network_interface": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Platform", - "smithy.api#documentation": "

The network platform of the modified Reserved Instances.

", - "smithy.api#xmlName": "platform" + "smithy.api#enumValue": "network-interface" } }, - "Scope": { - "target": "com.amazonaws.ec2#scope", + "network_insights_analysis": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Scope", - "smithy.api#documentation": "

Whether the Reserved Instance is applied to instances in a Region or instances in a specific Availability Zone.

", - "smithy.api#xmlName": "scope" + "smithy.api#enumValue": "network-insights-analysis" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the configuration settings for the modified Reserved Instances.

" - } - }, - "com.amazonaws.ec2#ReservedInstancesConfigurationList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ReservedInstancesConfiguration", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ReservedInstancesId": { - "type": "structure", - "members": { - "ReservedInstancesId": { - "target": "com.amazonaws.ec2#String", + }, + "network_insights_path": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesId", - "smithy.api#documentation": "

The ID of the Reserved Instance.

", - "smithy.api#xmlName": "reservedInstancesId" + "smithy.api#enumValue": "network-insights-path" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the ID of a Reserved Instance.

" - } - }, - "com.amazonaws.ec2#ReservedInstancesIdStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ReservationId", - "traits": { - "smithy.api#xmlName": "ReservedInstancesId" - } - } - }, - "com.amazonaws.ec2#ReservedInstancesList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ReservedInstances", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ReservedInstancesListing": { - "type": "structure", - "members": { - "ClientToken": { - "target": "com.amazonaws.ec2#String", + }, + "network_insights_access_scope": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

A unique, case-sensitive key supplied by the client to ensure that the request is\n\t\t\tidempotent. For more information, see Ensuring Idempotency.

", - "smithy.api#xmlName": "clientToken" + "smithy.api#enumValue": "network-insights-access-scope" } }, - "CreateDate": { - "target": "com.amazonaws.ec2#DateTime", + "network_insights_access_scope_analysis": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CreateDate", - "smithy.api#documentation": "

The time the listing was created.

", - "smithy.api#xmlName": "createDate" + "smithy.api#enumValue": "network-insights-access-scope-analysis" } }, - "InstanceCounts": { - "target": "com.amazonaws.ec2#InstanceCountList", + "outpost_lag": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceCounts", - "smithy.api#documentation": "

The number of instances in this state.

", - "smithy.api#xmlName": "instanceCounts" + "smithy.api#enumValue": "outpost-lag" } }, - "PriceSchedules": { - "target": "com.amazonaws.ec2#PriceScheduleList", + "placement_group": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PriceSchedules", - "smithy.api#documentation": "

The price of the Reserved Instance listing.

", - "smithy.api#xmlName": "priceSchedules" + "smithy.api#enumValue": "placement-group" } }, - "ReservedInstancesId": { - "target": "com.amazonaws.ec2#String", + "prefix_list": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesId", - "smithy.api#documentation": "

The ID of the Reserved Instance.

", - "smithy.api#xmlName": "reservedInstancesId" + "smithy.api#enumValue": "prefix-list" } }, - "ReservedInstancesListingId": { - "target": "com.amazonaws.ec2#String", + "replace_root_volume_task": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesListingId", - "smithy.api#documentation": "

The ID of the Reserved Instance listing.

", - "smithy.api#xmlName": "reservedInstancesListingId" + "smithy.api#enumValue": "replace-root-volume-task" } }, - "Status": { - "target": "com.amazonaws.ec2#ListingStatus", + "reserved_instances": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The status of the Reserved Instance listing.

", - "smithy.api#xmlName": "status" + "smithy.api#enumValue": "reserved-instances" } }, - "StatusMessage": { - "target": "com.amazonaws.ec2#String", + "route_table": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "StatusMessage", - "smithy.api#documentation": "

The reason for the current status of the Reserved Instance listing. The response can be blank.

", - "smithy.api#xmlName": "statusMessage" + "smithy.api#enumValue": "route-table" } }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", + "security_group": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the resource.

", - "smithy.api#xmlName": "tagSet" + "smithy.api#enumValue": "security-group" } }, - "UpdateDate": { - "target": "com.amazonaws.ec2#DateTime", + "security_group_rule": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "UpdateDate", - "smithy.api#documentation": "

The last modified timestamp of the listing.

", - "smithy.api#xmlName": "updateDate" + "smithy.api#enumValue": "security-group-rule" + } + }, + "service_link_virtual_interface": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "service-link-virtual-interface" + } + }, + "snapshot": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "snapshot" + } + }, + "spot_fleet_request": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "spot-fleet-request" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a Reserved Instance listing.

" - } - }, - "com.amazonaws.ec2#ReservedInstancesListingId": { - "type": "string" - }, - "com.amazonaws.ec2#ReservedInstancesListingList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ReservedInstancesListing", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ReservedInstancesModification": { - "type": "structure", - "members": { - "ClientToken": { - "target": "com.amazonaws.ec2#String", + }, + "spot_instances_request": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

A unique, case-sensitive key supplied by the client to ensure that the request is idempotent.\n\t\t\tFor more information, see Ensuring\n\t\t\t\tIdempotency.

", - "smithy.api#xmlName": "clientToken" + "smithy.api#enumValue": "spot-instances-request" } }, - "CreateDate": { - "target": "com.amazonaws.ec2#DateTime", + "subnet": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CreateDate", - "smithy.api#documentation": "

The time when the modification request was created.

", - "smithy.api#xmlName": "createDate" + "smithy.api#enumValue": "subnet" } }, - "EffectiveDate": { - "target": "com.amazonaws.ec2#DateTime", + "subnet_cidr_reservation": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "EffectiveDate", - "smithy.api#documentation": "

The time for the modification to become effective.

", - "smithy.api#xmlName": "effectiveDate" + "smithy.api#enumValue": "subnet-cidr-reservation" } }, - "ModificationResults": { - "target": "com.amazonaws.ec2#ReservedInstancesModificationResultList", + "traffic_mirror_filter": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ModificationResultSet", - "smithy.api#documentation": "

Contains target configurations along with their corresponding new Reserved Instance IDs.

", - "smithy.api#xmlName": "modificationResultSet" + "smithy.api#enumValue": "traffic-mirror-filter" } }, - "ReservedInstancesIds": { - "target": "com.amazonaws.ec2#ReservedIntancesIds", + "traffic_mirror_session": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesSet", - "smithy.api#documentation": "

The IDs of one or more Reserved Instances.

", - "smithy.api#xmlName": "reservedInstancesSet" + "smithy.api#enumValue": "traffic-mirror-session" } }, - "ReservedInstancesModificationId": { - "target": "com.amazonaws.ec2#String", + "traffic_mirror_target": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesModificationId", - "smithy.api#documentation": "

A unique ID for the Reserved Instance modification.

", - "smithy.api#xmlName": "reservedInstancesModificationId" + "smithy.api#enumValue": "traffic-mirror-target" } }, - "Status": { - "target": "com.amazonaws.ec2#String", + "transit_gateway": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The status of the Reserved Instances modification request.

", - "smithy.api#xmlName": "status" + "smithy.api#enumValue": "transit-gateway" } }, - "StatusMessage": { - "target": "com.amazonaws.ec2#String", + "transit_gateway_attachment": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "StatusMessage", - "smithy.api#documentation": "

The reason for the status.

", - "smithy.api#xmlName": "statusMessage" + "smithy.api#enumValue": "transit-gateway-attachment" } }, - "UpdateDate": { - "target": "com.amazonaws.ec2#DateTime", + "transit_gateway_connect_peer": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "UpdateDate", - "smithy.api#documentation": "

The time when the modification request was last updated.

", - "smithy.api#xmlName": "updateDate" + "smithy.api#enumValue": "transit-gateway-connect-peer" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a Reserved Instance modification.

" - } - }, - "com.amazonaws.ec2#ReservedInstancesModificationId": { - "type": "string" - }, - "com.amazonaws.ec2#ReservedInstancesModificationIdStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ReservedInstancesModificationId", - "traits": { - "smithy.api#xmlName": "ReservedInstancesModificationId" - } - } - }, - "com.amazonaws.ec2#ReservedInstancesModificationList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ReservedInstancesModification", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ReservedInstancesModificationResult": { - "type": "structure", - "members": { - "ReservedInstancesId": { - "target": "com.amazonaws.ec2#String", + }, + "transit_gateway_multicast_domain": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesId", - "smithy.api#documentation": "

The ID for the Reserved Instances that were created as part of the modification request. This field is only available when the modification is fulfilled.

", - "smithy.api#xmlName": "reservedInstancesId" + "smithy.api#enumValue": "transit-gateway-multicast-domain" } }, - "TargetConfiguration": { - "target": "com.amazonaws.ec2#ReservedInstancesConfiguration", + "transit_gateway_policy_table": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "TargetConfiguration", - "smithy.api#documentation": "

The target Reserved Instances configurations supplied as part of the modification request.

", - "smithy.api#xmlName": "targetConfiguration" + "smithy.api#enumValue": "transit-gateway-policy-table" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the modification request/s.

" - } - }, - "com.amazonaws.ec2#ReservedInstancesModificationResultList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ReservedInstancesModificationResult", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ReservedInstancesOffering": { - "type": "structure", - "members": { - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", + }, + "transit_gateway_route_table": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone in which the Reserved Instance can be used.

", - "smithy.api#xmlName": "availabilityZone" + "smithy.api#enumValue": "transit-gateway-route-table" } }, - "Duration": { - "target": "com.amazonaws.ec2#Long", + "transit_gateway_route_table_announcement": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Duration", - "smithy.api#documentation": "

The duration of the Reserved Instance, in seconds.

", - "smithy.api#xmlName": "duration" + "smithy.api#enumValue": "transit-gateway-route-table-announcement" } }, - "FixedPrice": { - "target": "com.amazonaws.ec2#Float", + "volume": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "FixedPrice", - "smithy.api#documentation": "

The purchase price of the Reserved Instance.

", - "smithy.api#xmlName": "fixedPrice" + "smithy.api#enumValue": "volume" } }, - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", + "vpc": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type on which the Reserved Instance can be used.

", - "smithy.api#xmlName": "instanceType" + "smithy.api#enumValue": "vpc" } }, - "ProductDescription": { - "target": "com.amazonaws.ec2#RIProductDescription", + "vpc_endpoint": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ProductDescription", - "smithy.api#documentation": "

The Reserved Instance product platform description.

", - "smithy.api#xmlName": "productDescription" + "smithy.api#enumValue": "vpc-endpoint" } }, - "ReservedInstancesOfferingId": { - "target": "com.amazonaws.ec2#String", + "vpc_endpoint_connection": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "ReservedInstancesOfferingId", - "smithy.api#documentation": "

The ID of the Reserved Instance offering. This is the offering ID used in GetReservedInstancesExchangeQuote \n to confirm that an exchange can be made.

", - "smithy.api#xmlName": "reservedInstancesOfferingId" + "smithy.api#enumValue": "vpc-endpoint-connection" } }, - "UsagePrice": { - "target": "com.amazonaws.ec2#Float", + "vpc_endpoint_service": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "UsagePrice", - "smithy.api#documentation": "

The usage price of the Reserved Instance, per hour.

", - "smithy.api#xmlName": "usagePrice" + "smithy.api#enumValue": "vpc-endpoint-service" } }, - "CurrencyCode": { - "target": "com.amazonaws.ec2#CurrencyCodeValues", + "vpc_endpoint_service_permission": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CurrencyCode", - "smithy.api#documentation": "

The currency of the Reserved Instance offering you are purchasing. It's \n\t\t\t\tspecified using ISO 4217 standard currency codes. At this time, \n\t\t\t\tthe only supported currency is USD.

", - "smithy.api#xmlName": "currencyCode" + "smithy.api#enumValue": "vpc-endpoint-service-permission" } }, - "InstanceTenancy": { - "target": "com.amazonaws.ec2#Tenancy", + "vpc_peering_connection": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceTenancy", - "smithy.api#documentation": "

The tenancy of the instance.

", - "smithy.api#xmlName": "instanceTenancy" + "smithy.api#enumValue": "vpc-peering-connection" } }, - "Marketplace": { - "target": "com.amazonaws.ec2#Boolean", + "vpn_connection": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Marketplace", - "smithy.api#documentation": "

Indicates whether the offering is available through the Reserved Instance Marketplace (resale) or Amazon Web Services. \n If it's a Reserved Instance Marketplace offering, this is true.

", - "smithy.api#xmlName": "marketplace" + "smithy.api#enumValue": "vpn-connection" } }, - "OfferingClass": { - "target": "com.amazonaws.ec2#OfferingClassType", + "vpn_gateway": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OfferingClass", - "smithy.api#documentation": "

If convertible it can be exchanged for Reserved Instances of\n the same or higher monetary value, with different configurations. If standard, it is not \n possible to perform an exchange.

", - "smithy.api#xmlName": "offeringClass" + "smithy.api#enumValue": "vpn-gateway" } }, - "OfferingType": { - "target": "com.amazonaws.ec2#OfferingTypeValues", + "vpc_flow_log": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "OfferingType", - "smithy.api#documentation": "

The Reserved Instance offering type.

", - "smithy.api#xmlName": "offeringType" + "smithy.api#enumValue": "vpc-flow-log" } }, - "PricingDetails": { - "target": "com.amazonaws.ec2#PricingDetailsList", + "capacity_reservation_fleet": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PricingDetailsSet", - "smithy.api#documentation": "

The pricing details of the Reserved Instance offering.

", - "smithy.api#xmlName": "pricingDetailsSet" + "smithy.api#enumValue": "capacity-reservation-fleet" } }, - "RecurringCharges": { - "target": "com.amazonaws.ec2#RecurringChargesList", + "traffic_mirror_filter_rule": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "RecurringCharges", - "smithy.api#documentation": "

The recurring charge tag assigned to the resource.

", - "smithy.api#xmlName": "recurringCharges" + "smithy.api#enumValue": "traffic-mirror-filter-rule" } }, - "Scope": { - "target": "com.amazonaws.ec2#scope", + "vpc_endpoint_connection_device_type": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Scope", - "smithy.api#documentation": "

Whether the Reserved Instance is applied to instances in a Region or an Availability Zone.

", - "smithy.api#xmlName": "scope" + "smithy.api#enumValue": "vpc-endpoint-connection-device-type" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a Reserved Instance offering.

" - } - }, - "com.amazonaws.ec2#ReservedInstancesOfferingId": { - "type": "string" - }, - "com.amazonaws.ec2#ReservedInstancesOfferingIdStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ReservedInstancesOfferingId" - } - }, - "com.amazonaws.ec2#ReservedInstancesOfferingList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ReservedInstancesOffering", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ReservedIntancesIds": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#ReservedInstancesId", - "traits": { - "smithy.api#xmlName": "item" - } - } - }, - "com.amazonaws.ec2#ResetAddressAttribute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ResetAddressAttributeRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ResetAddressAttributeResult" - }, - "traits": { - "smithy.api#documentation": "

Resets the attribute of the specified IP address. For requirements, see Using reverse DNS for email applications.

" - } - }, - "com.amazonaws.ec2#ResetAddressAttributeRequest": { - "type": "structure", - "members": { - "AllocationId": { - "target": "com.amazonaws.ec2#AllocationId", + }, + "verified_access_instance": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

[EC2-VPC] The allocation ID.

", - "smithy.api#required": {} + "smithy.api#enumValue": "verified-access-instance" } }, - "Attribute": { - "target": "com.amazonaws.ec2#AddressAttributeName", + "verified_access_group": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The attribute of the IP address.

", - "smithy.api#required": {} + "smithy.api#enumValue": "verified-access-group" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "verified_access_endpoint": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "verified-access-endpoint" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ResetAddressAttributeResult": { - "type": "structure", - "members": { - "Address": { - "target": "com.amazonaws.ec2#AddressAttribute", + }, + "verified_access_policy": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Address", - "smithy.api#documentation": "

Information about the IP address.

", - "smithy.api#xmlName": "address" + "smithy.api#enumValue": "verified-access-policy" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ResetEbsDefaultKmsKeyId": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ResetEbsDefaultKmsKeyIdRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ResetEbsDefaultKmsKeyIdResult" - }, - "traits": { - "smithy.api#documentation": "

Resets the default KMS key for EBS encryption for your account in this Region \n to the Amazon Web Services managed KMS key for EBS.

\n

After resetting the default KMS key to the Amazon Web Services managed KMS key, you can continue to encrypt by a \n customer managed KMS key by specifying it when you create the volume. For more information, see\n Amazon EBS encryption\n in the Amazon EBS User Guide.

" - } - }, - "com.amazonaws.ec2#ResetEbsDefaultKmsKeyIdRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "verified_access_trust_provider": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "verified-access-trust-provider" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ResetEbsDefaultKmsKeyIdResult": { - "type": "structure", - "members": { - "KmsKeyId": { - "target": "com.amazonaws.ec2#String", + }, + "vpn_connection_device_type": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "KmsKeyId", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the default KMS key for EBS encryption by default.

", - "smithy.api#xmlName": "kmsKeyId" + "smithy.api#enumValue": "vpn-connection-device-type" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ResetFpgaImageAttribute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ResetFpgaImageAttributeRequest" - }, - "output": { - "target": "com.amazonaws.ec2#ResetFpgaImageAttributeResult" - }, - "traits": { - "smithy.api#documentation": "

Resets the specified attribute of the specified Amazon FPGA Image (AFI) to its default value.\n\t\t You can only reset the load permission attribute.

" - } - }, - "com.amazonaws.ec2#ResetFpgaImageAttributeName": { - "type": "enum", - "members": { - "loadPermission": { + }, + "vpc_block_public_access_exclusion": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "loadPermission" + "smithy.api#enumValue": "vpc-block-public-access-exclusion" } - } - } - }, - "com.amazonaws.ec2#ResetFpgaImageAttributeRequest": { - "type": "structure", - "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + }, + "route_server": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "route-server" } }, - "FpgaImageId": { - "target": "com.amazonaws.ec2#FpgaImageId", + "route_server_endpoint": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the AFI.

", - "smithy.api#required": {} + "smithy.api#enumValue": "route-server-endpoint" } }, - "Attribute": { - "target": "com.amazonaws.ec2#ResetFpgaImageAttributeName", + "route_server_peer": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The attribute.

" + "smithy.api#enumValue": "route-server-peer" } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ResetFpgaImageAttributeResult": { - "type": "structure", - "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + }, + "ipam_resource_discovery": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Is true if the request succeeds, and an error otherwise.

", - "smithy.api#xmlName": "return" + "smithy.api#enumValue": "ipam-resource-discovery" } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ResetImageAttribute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ResetImageAttributeRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Resets an attribute of an AMI to its default value.

", - "smithy.api#examples": [ - { - "title": "To reset the launchPermission attribute", - "documentation": "This example resets the launchPermission attribute for the specified AMI. By default, AMIs are private.", - "input": { - "Attribute": "launchPermission", - "ImageId": "ami-5731123e" - }, - "output": {} + }, + "ipam_resource_discovery_association": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ipam-resource-discovery-association" } - ] - } - }, - "com.amazonaws.ec2#ResetImageAttributeName": { - "type": "enum", - "members": { - "launchPermission": { + }, + "instance_connect_endpoint": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "launchPermission" + "smithy.api#enumValue": "instance-connect-endpoint" } - } - } - }, - "com.amazonaws.ec2#ResetImageAttributeRequest": { - "type": "structure", - "members": { - "Attribute": { - "target": "com.amazonaws.ec2#ResetImageAttributeName", + }, + "verified_access_endpoint_target": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The attribute to reset (currently you can only reset the launch permission attribute).

", - "smithy.api#required": {} + "smithy.api#enumValue": "verified-access-endpoint-target" } }, - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", + "ipam_external_resource_verification_token": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the AMI.

", - "smithy.api#required": {} + "smithy.api#enumValue": "ipam-external-resource-verification-token" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "capacity_block": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#enumValue": "capacity-block" } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the parameters for ResetImageAttribute.

", - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ResetInstanceAttribute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ResetInstanceAttributeRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Resets an attribute of an instance to its default value. To reset the\n kernel or ramdisk, the instance must be in a stopped\n state. To reset the sourceDestCheck, the instance can be either running or\n stopped.

\n

The sourceDestCheck attribute controls whether source/destination\n checking is enabled. The default value is true, which means checking is\n enabled. This value must be false for a NAT instance to perform NAT. For\n more information, see NAT Instances in the\n Amazon VPC User Guide.

", - "smithy.api#examples": [ - { - "title": "To reset the sourceDestCheck attribute", - "documentation": "This example resets the sourceDestCheck attribute for the specified instance.", - "input": { - "Attribute": "sourceDestCheck", - "InstanceId": "i-1234567890abcdef0" - }, - "output": {} + }, + "mac_modification_task": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "mac-modification-task" } - ] + } } }, - "com.amazonaws.ec2#ResetInstanceAttributeRequest": { + "com.amazonaws.ec2#ResourceTypeOption": { "type": "structure", "members": { - "Attribute": { - "target": "com.amazonaws.ec2#InstanceAttributeName", - "traits": { - "aws.protocols#ec2QueryName": "Attribute", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The attribute to reset.

\n \n

You can only reset the following attributes: kernel |\n ramdisk | sourceDestCheck.

\n
", - "smithy.api#required": {}, - "smithy.api#xmlName": "attribute" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "OptionName": { + "target": "com.amazonaws.ec2#ImageReferenceOptionName", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#documentation": "

The name of the option.

\n " } }, - "InstanceId": { - "target": "com.amazonaws.ec2#InstanceId", + "OptionValues": { + "target": "com.amazonaws.ec2#ResourceTypeOptionValuesList", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the instance.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "instanceId" + "smithy.api#documentation": "

A value for the specified option.

\n ", + "smithy.api#xmlName": "OptionValue" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

The options that affect the scope of the response.

" } }, - "com.amazonaws.ec2#ResetNetworkInterfaceAttribute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ResetNetworkInterfaceAttributeRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Resets a network interface attribute. You can specify only one attribute at a time.

" + "com.amazonaws.ec2#ResourceTypeOptionList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ResourceTypeOption" } }, - "com.amazonaws.ec2#ResetNetworkInterfaceAttributeRequest": { + "com.amazonaws.ec2#ResourceTypeOptionValue": { + "type": "string" + }, + "com.amazonaws.ec2#ResourceTypeOptionValuesList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ResourceTypeOptionValue" + } + }, + "com.amazonaws.ec2#ResourceTypeRequest": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" - } - }, - "NetworkInterfaceId": { - "target": "com.amazonaws.ec2#NetworkInterfaceId", + "ResourceType": { + "target": "com.amazonaws.ec2#ImageReferenceResourceType", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the network interface.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "networkInterfaceId" + "smithy.api#documentation": "

The resource type.

" } }, - "SourceDestCheck": { - "target": "com.amazonaws.ec2#String", + "ResourceTypeOptions": { + "target": "com.amazonaws.ec2#ResourceTypeOptionList", "traits": { - "aws.protocols#ec2QueryName": "SourceDestCheck", - "smithy.api#documentation": "

The source/destination checking attribute. Resets the value to true.

", - "smithy.api#xmlName": "sourceDestCheck" + "smithy.api#documentation": "

The options that affect the scope of the response. Valid only when\n ResourceType is ec2:Instance or\n ec2:LaunchTemplate.

", + "smithy.api#xmlName": "ResourceTypeOption" } } }, "traits": { - "smithy.api#documentation": "

Contains the parameters for ResetNetworkInterfaceAttribute.

", - "smithy.api#input": {} + "smithy.api#documentation": "

A resource type to check for image references. Associated options can also be specified if the\n resource type is an EC2 instance or launch template.

" } }, - "com.amazonaws.ec2#ResetSnapshotAttribute": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#ResetSnapshotAttributeRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Resets permission settings for the specified snapshot.

\n

For more information about modifying snapshot permissions, see Share a snapshot in the\n Amazon EBS User Guide.

", - "smithy.api#examples": [ - { - "title": "To reset a snapshot attribute", - "documentation": "This example resets the create volume permissions for snapshot ``snap-1234567890abcdef0``. If the command succeeds, no output is returned.", - "input": { - "SnapshotId": "snap-1234567890abcdef0", - "Attribute": "createVolumePermission" - }, - "output": {} - } - ] + "com.amazonaws.ec2#ResourceTypeRequestList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ResourceTypeRequest" } }, - "com.amazonaws.ec2#ResetSnapshotAttributeRequest": { + "com.amazonaws.ec2#ResponseError": { "type": "structure", "members": { - "Attribute": { - "target": "com.amazonaws.ec2#SnapshotAttributeName", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The attribute to reset. Currently, only the attribute for permission to create volumes can\n be reset.

", - "smithy.api#required": {} - } - }, - "SnapshotId": { - "target": "com.amazonaws.ec2#SnapshotId", + "Code": { + "target": "com.amazonaws.ec2#LaunchTemplateErrorCode", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the snapshot.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "Code", + "smithy.api#documentation": "

The error code.

", + "smithy.api#xmlName": "code" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Message": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "Message", + "smithy.api#documentation": "

The error message, if applicable.

", + "smithy.api#xmlName": "message" } } }, "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.ec2#ResourceArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1283 - } + "smithy.api#documentation": "

Describes the error that's returned when you cannot delete a launch template\n version.

" } }, - "com.amazonaws.ec2#ResourceIdList": { + "com.amazonaws.ec2#ResponseHostIdList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#TaggableResourceId" + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#ResourceList": { + "com.amazonaws.ec2#ResponseHostIdSet": { "type": "list", "member": { "target": "com.amazonaws.ec2#String", @@ -89937,1803 +102881,2288 @@ } } }, - "com.amazonaws.ec2#ResourceStatement": { + "com.amazonaws.ec2#ResponseLaunchTemplateData": { "type": "structure", "members": { - "Resources": { - "target": "com.amazonaws.ec2#ValueStringList", + "KernelId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ResourceSet", - "smithy.api#documentation": "

The resources.

", - "smithy.api#xmlName": "resourceSet" + "aws.protocols#ec2QueryName": "KernelId", + "smithy.api#documentation": "

The ID of the kernel, if applicable.

", + "smithy.api#xmlName": "kernelId" } }, - "ResourceTypes": { - "target": "com.amazonaws.ec2#ValueStringList", + "EbsOptimized": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "ResourceTypeSet", - "smithy.api#documentation": "

The resource types.

", - "smithy.api#xmlName": "resourceTypeSet" + "aws.protocols#ec2QueryName": "EbsOptimized", + "smithy.api#documentation": "

Indicates whether the instance is optimized for Amazon EBS I/O.

", + "smithy.api#xmlName": "ebsOptimized" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a resource statement.

" - } - }, - "com.amazonaws.ec2#ResourceStatementRequest": { - "type": "structure", - "members": { - "Resources": { + }, + "IamInstanceProfile": { + "target": "com.amazonaws.ec2#LaunchTemplateIamInstanceProfileSpecification", + "traits": { + "aws.protocols#ec2QueryName": "IamInstanceProfile", + "smithy.api#documentation": "

The IAM instance profile.

", + "smithy.api#xmlName": "iamInstanceProfile" + } + }, + "BlockDeviceMappings": { + "target": "com.amazonaws.ec2#LaunchTemplateBlockDeviceMappingList", + "traits": { + "aws.protocols#ec2QueryName": "BlockDeviceMappingSet", + "smithy.api#documentation": "

The block device mappings.

", + "smithy.api#xmlName": "blockDeviceMappingSet" + } + }, + "NetworkInterfaces": { + "target": "com.amazonaws.ec2#LaunchTemplateInstanceNetworkInterfaceSpecificationList", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInterfaceSet", + "smithy.api#documentation": "

The network interfaces.

", + "smithy.api#xmlName": "networkInterfaceSet" + } + }, + "ImageId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ImageId", + "smithy.api#documentation": "

The ID of the AMI or a Systems Manager parameter. The Systems Manager parameter will\n resolve to the ID of the AMI at instance launch.

\n

The value depends on what you specified in the request. The possible values\n are:

\n \n

For more information, see Use a Systems Manager parameter instead of an AMI ID in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "imageId" + } + }, + "InstanceType": { + "target": "com.amazonaws.ec2#InstanceType", + "traits": { + "aws.protocols#ec2QueryName": "InstanceType", + "smithy.api#documentation": "

The instance type.

", + "smithy.api#xmlName": "instanceType" + } + }, + "KeyName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "KeyName", + "smithy.api#documentation": "

The name of the key pair.

", + "smithy.api#xmlName": "keyName" + } + }, + "Monitoring": { + "target": "com.amazonaws.ec2#LaunchTemplatesMonitoring", + "traits": { + "aws.protocols#ec2QueryName": "Monitoring", + "smithy.api#documentation": "

The monitoring for the instance.

", + "smithy.api#xmlName": "monitoring" + } + }, + "Placement": { + "target": "com.amazonaws.ec2#LaunchTemplatePlacement", + "traits": { + "aws.protocols#ec2QueryName": "Placement", + "smithy.api#documentation": "

The placement of the instance.

", + "smithy.api#xmlName": "placement" + } + }, + "RamDiskId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "RamDiskId", + "smithy.api#documentation": "

The ID of the RAM disk, if applicable.

", + "smithy.api#xmlName": "ramDiskId" + } + }, + "DisableApiTermination": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DisableApiTermination", + "smithy.api#documentation": "

If set to true, indicates that the instance cannot be terminated using\n the Amazon EC2 console, command line tool, or API.

", + "smithy.api#xmlName": "disableApiTermination" + } + }, + "InstanceInitiatedShutdownBehavior": { + "target": "com.amazonaws.ec2#ShutdownBehavior", + "traits": { + "aws.protocols#ec2QueryName": "InstanceInitiatedShutdownBehavior", + "smithy.api#documentation": "

Indicates whether an instance stops or terminates when you initiate shutdown from the\n instance (using the operating system command for system shutdown).

", + "smithy.api#xmlName": "instanceInitiatedShutdownBehavior" + } + }, + "UserData": { + "target": "com.amazonaws.ec2#SensitiveUserData", + "traits": { + "aws.protocols#ec2QueryName": "UserData", + "smithy.api#documentation": "

The user data for the instance.

", + "smithy.api#xmlName": "userData" + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#LaunchTemplateTagSpecificationList", + "traits": { + "aws.protocols#ec2QueryName": "TagSpecificationSet", + "smithy.api#documentation": "

The tags that are applied to the resources that are created during instance\n launch.

", + "smithy.api#xmlName": "tagSpecificationSet" + } + }, + "ElasticGpuSpecifications": { + "target": "com.amazonaws.ec2#ElasticGpuSpecificationResponseList", + "traits": { + "aws.protocols#ec2QueryName": "ElasticGpuSpecificationSet", + "smithy.api#documentation": "

Deprecated.

\n \n

Amazon Elastic Graphics reached end of life on January 8, 2024.

\n
", + "smithy.api#xmlName": "elasticGpuSpecificationSet" + } + }, + "ElasticInferenceAccelerators": { + "target": "com.amazonaws.ec2#LaunchTemplateElasticInferenceAcceleratorResponseList", + "traits": { + "aws.protocols#ec2QueryName": "ElasticInferenceAcceleratorSet", + "smithy.api#documentation": "\n

Amazon Elastic Inference is no longer available.

\n
\n

An elastic inference accelerator to associate with the instance. Elastic inference\n accelerators are a resource you can attach to your Amazon EC2 instances to accelerate\n your Deep Learning (DL) inference workloads.

\n

You cannot specify accelerators from different generations in the same request.

", + "smithy.api#xmlName": "elasticInferenceAcceleratorSet" + } + }, + "SecurityGroupIds": { "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

The resources.

", - "smithy.api#xmlName": "Resource" + "aws.protocols#ec2QueryName": "SecurityGroupIdSet", + "smithy.api#documentation": "

The security group IDs.

", + "smithy.api#xmlName": "securityGroupIdSet" } }, - "ResourceTypes": { + "SecurityGroups": { "target": "com.amazonaws.ec2#ValueStringList", "traits": { - "smithy.api#documentation": "

The resource types.

", - "smithy.api#xmlName": "ResourceType" + "aws.protocols#ec2QueryName": "SecurityGroupSet", + "smithy.api#documentation": "

The security group names.

", + "smithy.api#xmlName": "securityGroupSet" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a resource statement.

" - } - }, - "com.amazonaws.ec2#ResourceType": { - "type": "enum", - "members": { - "capacity_reservation": { - "target": "smithy.api#Unit", + }, + "InstanceMarketOptions": { + "target": "com.amazonaws.ec2#LaunchTemplateInstanceMarketOptions", "traits": { - "smithy.api#enumValue": "capacity-reservation" + "aws.protocols#ec2QueryName": "InstanceMarketOptions", + "smithy.api#documentation": "

The market (purchasing) option for the instances.

", + "smithy.api#xmlName": "instanceMarketOptions" } }, - "client_vpn_endpoint": { - "target": "smithy.api#Unit", + "CreditSpecification": { + "target": "com.amazonaws.ec2#CreditSpecification", "traits": { - "smithy.api#enumValue": "client-vpn-endpoint" + "aws.protocols#ec2QueryName": "CreditSpecification", + "smithy.api#documentation": "

The credit option for CPU usage of the instance.

", + "smithy.api#xmlName": "creditSpecification" } }, - "customer_gateway": { - "target": "smithy.api#Unit", + "CpuOptions": { + "target": "com.amazonaws.ec2#LaunchTemplateCpuOptions", "traits": { - "smithy.api#enumValue": "customer-gateway" + "aws.protocols#ec2QueryName": "CpuOptions", + "smithy.api#documentation": "

The CPU options for the instance. For more information, see CPU\n options for Amazon EC2 instances in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "cpuOptions" } }, - "carrier_gateway": { - "target": "smithy.api#Unit", + "CapacityReservationSpecification": { + "target": "com.amazonaws.ec2#LaunchTemplateCapacityReservationSpecificationResponse", "traits": { - "smithy.api#enumValue": "carrier-gateway" + "aws.protocols#ec2QueryName": "CapacityReservationSpecification", + "smithy.api#documentation": "

Information about the Capacity Reservation targeting option.

", + "smithy.api#xmlName": "capacityReservationSpecification" } }, - "coip_pool": { - "target": "smithy.api#Unit", + "LicenseSpecifications": { + "target": "com.amazonaws.ec2#LaunchTemplateLicenseList", "traits": { - "smithy.api#enumValue": "coip-pool" + "aws.protocols#ec2QueryName": "LicenseSet", + "smithy.api#documentation": "

The license configurations.

", + "smithy.api#xmlName": "licenseSet" } }, - "dedicated_host": { - "target": "smithy.api#Unit", + "HibernationOptions": { + "target": "com.amazonaws.ec2#LaunchTemplateHibernationOptions", "traits": { - "smithy.api#enumValue": "dedicated-host" + "aws.protocols#ec2QueryName": "HibernationOptions", + "smithy.api#documentation": "

Indicates whether an instance is configured for hibernation. For more information, see\n Hibernate\n your Amazon EC2 instance in the Amazon EC2 User Guide.

", + "smithy.api#xmlName": "hibernationOptions" } }, - "dhcp_options": { - "target": "smithy.api#Unit", + "MetadataOptions": { + "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptions", "traits": { - "smithy.api#enumValue": "dhcp-options" + "aws.protocols#ec2QueryName": "MetadataOptions", + "smithy.api#documentation": "

The metadata options for the instance. For more information, see Configure\n the Instance Metadata Service options in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "metadataOptions" } }, - "egress_only_internet_gateway": { - "target": "smithy.api#Unit", + "EnclaveOptions": { + "target": "com.amazonaws.ec2#LaunchTemplateEnclaveOptions", "traits": { - "smithy.api#enumValue": "egress-only-internet-gateway" + "aws.protocols#ec2QueryName": "EnclaveOptions", + "smithy.api#documentation": "

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.

", + "smithy.api#xmlName": "enclaveOptions" } }, - "elastic_ip": { - "target": "smithy.api#Unit", + "InstanceRequirements": { + "target": "com.amazonaws.ec2#InstanceRequirements", "traits": { - "smithy.api#enumValue": "elastic-ip" + "aws.protocols#ec2QueryName": "InstanceRequirements", + "smithy.api#documentation": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will\n identify instance types with these attributes.

\n

If you specify InstanceRequirements, you can't specify\n InstanceTypes.

", + "smithy.api#xmlName": "instanceRequirements" } }, - "elastic_gpu": { - "target": "smithy.api#Unit", + "PrivateDnsNameOptions": { + "target": "com.amazonaws.ec2#LaunchTemplatePrivateDnsNameOptions", "traits": { - "smithy.api#enumValue": "elastic-gpu" + "aws.protocols#ec2QueryName": "PrivateDnsNameOptions", + "smithy.api#documentation": "

The options for the instance hostname.

", + "smithy.api#xmlName": "privateDnsNameOptions" } }, - "export_image_task": { - "target": "smithy.api#Unit", + "MaintenanceOptions": { + "target": "com.amazonaws.ec2#LaunchTemplateInstanceMaintenanceOptions", "traits": { - "smithy.api#enumValue": "export-image-task" + "aws.protocols#ec2QueryName": "MaintenanceOptions", + "smithy.api#documentation": "

The maintenance options for your instance.

", + "smithy.api#xmlName": "maintenanceOptions" } }, - "export_instance_task": { - "target": "smithy.api#Unit", + "DisableApiStop": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "export-instance-task" + "aws.protocols#ec2QueryName": "DisableApiStop", + "smithy.api#documentation": "

Indicates whether the instance is enabled for stop protection. For more information,\n see Enable stop protection for your EC2 instances in the\n Amazon EC2 User Guide.

", + "smithy.api#xmlName": "disableApiStop" } }, - "fleet": { - "target": "smithy.api#Unit", + "Operator": { + "target": "com.amazonaws.ec2#OperatorResponse", "traits": { - "smithy.api#enumValue": "fleet" + "aws.protocols#ec2QueryName": "Operator", + "smithy.api#documentation": "

The entity that manages the launch template.

", + "smithy.api#xmlName": "operator" } }, - "fpga_image": { - "target": "smithy.api#Unit", + "NetworkPerformanceOptions": { + "target": "com.amazonaws.ec2#LaunchTemplateNetworkPerformanceOptions", + "traits": { + "aws.protocols#ec2QueryName": "NetworkPerformanceOptions", + "smithy.api#documentation": "

Contains the launch template settings for network performance options for your\n instance.

", + "smithy.api#xmlName": "networkPerformanceOptions" + } + } + }, + "traits": { + "smithy.api#documentation": "

The information for a launch template.

" + } + }, + "com.amazonaws.ec2#RestorableByStringList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String" + } + }, + "com.amazonaws.ec2#RestoreAddressToClassic": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RestoreAddressToClassicRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RestoreAddressToClassicResult" + }, + "traits": { + "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Restores an Elastic IP address that was previously moved to the EC2-VPC platform back to the EC2-Classic platform. You cannot move an Elastic IP address that was originally allocated for use in EC2-VPC. The Elastic IP address must not be associated with an instance or network interface.

" + } + }, + "com.amazonaws.ec2#RestoreAddressToClassicRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "PublicIp": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PublicIp", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The Elastic IP address.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "publicIp" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RestoreAddressToClassicResult": { + "type": "structure", + "members": { + "PublicIp": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "fpga-image" + "aws.protocols#ec2QueryName": "PublicIp", + "smithy.api#documentation": "

The Elastic IP address.

", + "smithy.api#xmlName": "publicIp" } }, - "host_reservation": { - "target": "smithy.api#Unit", + "Status": { + "target": "com.amazonaws.ec2#Status", "traits": { - "smithy.api#enumValue": "host-reservation" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The move status for the IP address.

", + "smithy.api#xmlName": "status" } - }, - "image": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#RestoreImageFromRecycleBin": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RestoreImageFromRecycleBinRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RestoreImageFromRecycleBinResult" + }, + "traits": { + "smithy.api#documentation": "

Restores an AMI from the Recycle Bin. For more information, see Recover deleted Amazon EBS\n snapshots and EBS-back AMIs with Recycle Bin in the\n Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ec2#RestoreImageFromRecycleBinRequest": { + "type": "structure", + "members": { + "ImageId": { + "target": "com.amazonaws.ec2#ImageId", "traits": { - "smithy.api#enumValue": "image" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the AMI to restore.

", + "smithy.api#required": {} } }, - "import_image_task": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "import-image-task" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" } - }, - "import_snapshot_task": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RestoreImageFromRecycleBinResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "import-snapshot-task" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", + "smithy.api#xmlName": "return" } - }, - "instance": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#RestoreManagedPrefixListVersion": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RestoreManagedPrefixListVersionRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RestoreManagedPrefixListVersionResult" + }, + "traits": { + "smithy.api#documentation": "

Restores the entries from a previous version of a managed prefix list to a new version of the prefix list.

" + } + }, + "com.amazonaws.ec2#RestoreManagedPrefixListVersionRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "instance" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } }, - "instance_event_window": { - "target": "smithy.api#Unit", + "PrefixListId": { + "target": "com.amazonaws.ec2#PrefixListResourceId", "traits": { - "smithy.api#enumValue": "instance-event-window" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the prefix list.

", + "smithy.api#required": {} } }, - "internet_gateway": { - "target": "smithy.api#Unit", + "PreviousVersion": { + "target": "com.amazonaws.ec2#Long", "traits": { - "smithy.api#enumValue": "internet-gateway" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The version to restore.

", + "smithy.api#required": {} } }, - "ipam": { - "target": "smithy.api#Unit", + "CurrentVersion": { + "target": "com.amazonaws.ec2#Long", "traits": { - "smithy.api#enumValue": "ipam" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The current version number for the prefix list.

", + "smithy.api#required": {} } - }, - "ipam_pool": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RestoreManagedPrefixListVersionResult": { + "type": "structure", + "members": { + "PrefixList": { + "target": "com.amazonaws.ec2#ManagedPrefixList", "traits": { - "smithy.api#enumValue": "ipam-pool" + "aws.protocols#ec2QueryName": "PrefixList", + "smithy.api#documentation": "

Information about the prefix list.

", + "smithy.api#xmlName": "prefixList" } - }, - "ipam_scope": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#RestoreSnapshotFromRecycleBin": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RestoreSnapshotFromRecycleBinRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RestoreSnapshotFromRecycleBinResult" + }, + "traits": { + "smithy.api#documentation": "

Restores a snapshot from the Recycle Bin. For more information, see Restore \n snapshots from the Recycle Bin in the Amazon EBS User Guide.

" + } + }, + "com.amazonaws.ec2#RestoreSnapshotFromRecycleBinRequest": { + "type": "structure", + "members": { + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", "traits": { - "smithy.api#enumValue": "ipam-scope" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the snapshot to restore.

", + "smithy.api#required": {} } }, - "ipv4pool_ec2": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "ipv4pool-ec2" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "ipv6pool_ec2": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RestoreSnapshotFromRecycleBinResult": { + "type": "structure", + "members": { + "SnapshotId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "ipv6pool-ec2" + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The ID of the snapshot.

", + "smithy.api#xmlName": "snapshotId" } }, - "key_pair": { - "target": "smithy.api#Unit", + "OutpostArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "key-pair" + "aws.protocols#ec2QueryName": "OutpostArn", + "smithy.api#documentation": "

The ARN of the Outpost on which the snapshot is stored. For more information, see Amazon EBS local snapshots on Outposts in the \n Amazon EBS User Guide.

", + "smithy.api#xmlName": "outpostArn" } }, - "launch_template": { - "target": "smithy.api#Unit", + "Description": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "launch-template" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The description for the snapshot.

", + "smithy.api#xmlName": "description" } }, - "local_gateway": { - "target": "smithy.api#Unit", + "Encrypted": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "local-gateway" + "aws.protocols#ec2QueryName": "Encrypted", + "smithy.api#documentation": "

Indicates whether the snapshot is encrypted.

", + "smithy.api#xmlName": "encrypted" } }, - "local_gateway_route_table": { - "target": "smithy.api#Unit", + "OwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "local-gateway-route-table" + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the EBS snapshot.

", + "smithy.api#xmlName": "ownerId" } }, - "local_gateway_virtual_interface": { - "target": "smithy.api#Unit", + "Progress": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "local-gateway-virtual-interface" + "aws.protocols#ec2QueryName": "Progress", + "smithy.api#documentation": "

The progress of the snapshot, as a percentage.

", + "smithy.api#xmlName": "progress" } }, - "local_gateway_virtual_interface_group": { - "target": "smithy.api#Unit", + "StartTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#enumValue": "local-gateway-virtual-interface-group" + "aws.protocols#ec2QueryName": "StartTime", + "smithy.api#documentation": "

The time stamp when the snapshot was initiated.

", + "smithy.api#xmlName": "startTime" } }, - "local_gateway_route_table_vpc_association": { - "target": "smithy.api#Unit", + "State": { + "target": "com.amazonaws.ec2#SnapshotState", "traits": { - "smithy.api#enumValue": "local-gateway-route-table-vpc-association" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The state of the snapshot.

", + "smithy.api#xmlName": "status" } }, - "local_gateway_route_table_virtual_interface_group_association": { - "target": "smithy.api#Unit", + "VolumeId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "local-gateway-route-table-virtual-interface-group-association" + "aws.protocols#ec2QueryName": "VolumeId", + "smithy.api#documentation": "

The ID of the volume that was used to create the snapshot.

", + "smithy.api#xmlName": "volumeId" } }, - "natgateway": { - "target": "smithy.api#Unit", + "VolumeSize": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "natgateway" + "aws.protocols#ec2QueryName": "VolumeSize", + "smithy.api#documentation": "

The size of the volume, in GiB.

", + "smithy.api#xmlName": "volumeSize" } }, - "network_acl": { - "target": "smithy.api#Unit", + "SseType": { + "target": "com.amazonaws.ec2#SSEType", "traits": { - "smithy.api#enumValue": "network-acl" + "aws.protocols#ec2QueryName": "SseType", + "smithy.api#documentation": "

Reserved for future use.

", + "smithy.api#xmlName": "sseType" } - }, - "network_interface": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#RestoreSnapshotTier": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RestoreSnapshotTierRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RestoreSnapshotTierResult" + }, + "traits": { + "smithy.api#documentation": "

Restores an archived Amazon EBS snapshot for use temporarily or permanently, or modifies the restore \n period or restore type for a snapshot that was previously temporarily restored.

\n

For more information see \n Restore an archived snapshot and \n modify the restore period or restore type for a temporarily restored snapshot in the Amazon EBS User Guide.

" + } + }, + "com.amazonaws.ec2#RestoreSnapshotTierRequest": { + "type": "structure", + "members": { + "SnapshotId": { + "target": "com.amazonaws.ec2#SnapshotId", "traits": { - "smithy.api#enumValue": "network-interface" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the snapshot to restore.

", + "smithy.api#required": {} } }, - "network_insights_analysis": { - "target": "smithy.api#Unit", + "TemporaryRestoreDays": { + "target": "com.amazonaws.ec2#RestoreSnapshotTierRequestTemporaryRestoreDays", "traits": { - "smithy.api#enumValue": "network-insights-analysis" + "smithy.api#documentation": "

Specifies the number of days for which to temporarily restore an archived snapshot. \n Required for temporary restores only. The snapshot will be automatically re-archived \n after this period.

\n

To temporarily restore an archived snapshot, specify the number of days and omit \n the PermanentRestore parameter or set it to \n false.

" } }, - "network_insights_path": { - "target": "smithy.api#Unit", + "PermanentRestore": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "network-insights-path" + "smithy.api#documentation": "

Indicates whether to permanently restore an archived snapshot. To permanently restore \n an archived snapshot, specify true and omit the \n RestoreSnapshotTierRequest$TemporaryRestoreDays parameter.

" } }, - "network_insights_access_scope": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "network-insights-access-scope" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" } - }, - "network_insights_access_scope_analysis": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RestoreSnapshotTierRequestTemporaryRestoreDays": { + "type": "integer" + }, + "com.amazonaws.ec2#RestoreSnapshotTierResult": { + "type": "structure", + "members": { + "SnapshotId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "network-insights-access-scope-analysis" + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The ID of the snapshot.

", + "smithy.api#xmlName": "snapshotId" } }, - "placement_group": { - "target": "smithy.api#Unit", + "RestoreStartTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { - "smithy.api#enumValue": "placement-group" + "aws.protocols#ec2QueryName": "RestoreStartTime", + "smithy.api#documentation": "

The date and time when the snapshot restore process started.

", + "smithy.api#xmlName": "restoreStartTime" } }, - "prefix_list": { - "target": "smithy.api#Unit", + "RestoreDuration": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "prefix-list" + "aws.protocols#ec2QueryName": "RestoreDuration", + "smithy.api#documentation": "

For temporary restores only. The number of days for which the archived snapshot \n is temporarily restored.

", + "smithy.api#xmlName": "restoreDuration" } }, - "replace_root_volume_task": { - "target": "smithy.api#Unit", + "IsPermanentRestore": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "replace-root-volume-task" + "aws.protocols#ec2QueryName": "IsPermanentRestore", + "smithy.api#documentation": "

Indicates whether the snapshot is permanently restored. true indicates a permanent \n restore. false indicates a temporary restore.

", + "smithy.api#xmlName": "isPermanentRestore" } - }, - "reserved_instances": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#ResultRange": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 20, + "max": 500 + } + } + }, + "com.amazonaws.ec2#RetentionPeriodRequestDays": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 36500 + } + } + }, + "com.amazonaws.ec2#RetentionPeriodResponseDays": { + "type": "integer" + }, + "com.amazonaws.ec2#RevokeClientVpnIngress": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RevokeClientVpnIngressRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RevokeClientVpnIngressResult" + }, + "traits": { + "smithy.api#documentation": "

Removes an ingress authorization rule from a Client VPN endpoint.

" + } + }, + "com.amazonaws.ec2#RevokeClientVpnIngressRequest": { + "type": "structure", + "members": { + "ClientVpnEndpointId": { + "target": "com.amazonaws.ec2#ClientVpnEndpointId", "traits": { - "smithy.api#enumValue": "reserved-instances" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the Client VPN endpoint with which the authorization rule is associated.

", + "smithy.api#required": {} } }, - "route_table": { - "target": "smithy.api#Unit", + "TargetNetworkCidr": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "route-table" + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The IPv4 address range, in CIDR notation, of the network for which access is being removed.

", + "smithy.api#required": {} } }, - "security_group": { - "target": "smithy.api#Unit", + "AccessGroupId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "security-group" + "smithy.api#documentation": "

The ID of the Active Directory group for which to revoke access.

" } }, - "security_group_rule": { - "target": "smithy.api#Unit", + "RevokeAllGroups": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "security-group-rule" + "smithy.api#documentation": "

Indicates whether access should be revoked for all groups for a single TargetNetworkCidr that earlier authorized ingress for all groups using AuthorizeAllGroups.\n\t\t\tThis does not impact other authorization rules that allowed ingress to the same TargetNetworkCidr with a specific AccessGroupId.

" } }, - "snapshot": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "snapshot" + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } - }, - "spot_fleet_request": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RevokeClientVpnIngressResult": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.ec2#ClientVpnAuthorizationRuleStatus", "traits": { - "smithy.api#enumValue": "spot-fleet-request" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The current state of the authorization rule.

", + "smithy.api#xmlName": "status" } - }, - "spot_instances_request": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#RevokeSecurityGroupEgress": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RevokeSecurityGroupEgressRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RevokeSecurityGroupEgressResult" + }, + "traits": { + "smithy.api#documentation": "

Removes the specified outbound (egress) rules from the specified security group.

\n

You can specify rules using either rule IDs or security group rule properties. If you use\n rule properties, the values that you specify (for example, ports) must match the existing rule's \n values exactly. Each rule has a protocol, from and to ports, and destination (CIDR range, \n security group, or prefix list). For the TCP and UDP protocols, you must also specify the \n destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type \n and code. If the security group rule has a description, you do not need to specify the description \n to revoke the rule.

\n

For a default VPC, if the values you specify do not match the existing rule's values, no error is\n returned, and the output describes the security group rules that were not revoked.

\n

Amazon Web Services recommends that you describe the security group to verify that the rules were removed.

\n

Rule changes are propagated to instances within the security group as quickly as possible. However, \n a small delay might occur.

" + } + }, + "com.amazonaws.ec2#RevokeSecurityGroupEgressRequest": { + "type": "structure", + "members": { + "SecurityGroupRuleIds": { + "target": "com.amazonaws.ec2#SecurityGroupRuleIdList", "traits": { - "smithy.api#enumValue": "spot-instances-request" + "smithy.api#documentation": "

The IDs of the security group rules.

", + "smithy.api#xmlName": "SecurityGroupRuleId" } }, - "subnet": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "subnet" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } }, - "subnet_cidr_reservation": { - "target": "smithy.api#Unit", + "GroupId": { + "target": "com.amazonaws.ec2#SecurityGroupId", "traits": { - "smithy.api#enumValue": "subnet-cidr-reservation" + "aws.protocols#ec2QueryName": "GroupId", + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The ID of the security group.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "groupId" } }, - "traffic_mirror_filter": { - "target": "smithy.api#Unit", + "SourceSecurityGroupName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "traffic-mirror-filter" + "aws.protocols#ec2QueryName": "SourceSecurityGroupName", + "smithy.api#documentation": "

Not supported. Use a set of IP permissions to specify a\n destination security group.

", + "smithy.api#xmlName": "sourceSecurityGroupName" } }, - "traffic_mirror_session": { - "target": "smithy.api#Unit", + "SourceSecurityGroupOwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "traffic-mirror-session" + "aws.protocols#ec2QueryName": "SourceSecurityGroupOwnerId", + "smithy.api#documentation": "

Not supported. Use a set of IP permissions to specify a destination security\n group.

", + "smithy.api#xmlName": "sourceSecurityGroupOwnerId" } }, - "traffic_mirror_target": { - "target": "smithy.api#Unit", + "IpProtocol": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "traffic-mirror-target" + "aws.protocols#ec2QueryName": "IpProtocol", + "smithy.api#documentation": "

Not supported. Use a set of IP permissions to specify the protocol name or\n number.

", + "smithy.api#xmlName": "ipProtocol" } }, - "transit_gateway": { - "target": "smithy.api#Unit", + "FromPort": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "transit-gateway" + "aws.protocols#ec2QueryName": "FromPort", + "smithy.api#documentation": "

Not supported. Use a set of IP permissions to specify the port.

", + "smithy.api#xmlName": "fromPort" } }, - "transit_gateway_attachment": { - "target": "smithy.api#Unit", + "ToPort": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "transit-gateway-attachment" + "aws.protocols#ec2QueryName": "ToPort", + "smithy.api#documentation": "

Not supported. Use a set of IP permissions to specify the port.

", + "smithy.api#xmlName": "toPort" } }, - "transit_gateway_connect_peer": { - "target": "smithy.api#Unit", + "CidrIp": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "transit-gateway-connect-peer" + "aws.protocols#ec2QueryName": "CidrIp", + "smithy.api#documentation": "

Not supported. Use a set of IP permissions to specify the CIDR.

", + "smithy.api#xmlName": "cidrIp" } }, - "transit_gateway_multicast_domain": { - "target": "smithy.api#Unit", + "IpPermissions": { + "target": "com.amazonaws.ec2#IpPermissionList", "traits": { - "smithy.api#enumValue": "transit-gateway-multicast-domain" + "aws.protocols#ec2QueryName": "IpPermissions", + "smithy.api#documentation": "

The sets of IP permissions. You can't specify a destination security group and a CIDR IP address range in the same set of permissions.

", + "smithy.api#xmlName": "ipPermissions" } - }, - "transit_gateway_policy_table": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RevokeSecurityGroupEgressResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "transit-gateway-policy-table" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, returns an error.

", + "smithy.api#xmlName": "return" } }, - "transit_gateway_route_table": { - "target": "smithy.api#Unit", + "UnknownIpPermissions": { + "target": "com.amazonaws.ec2#IpPermissionList", "traits": { - "smithy.api#enumValue": "transit-gateway-route-table" + "aws.protocols#ec2QueryName": "UnknownIpPermissionSet", + "smithy.api#documentation": "

The outbound rules that were unknown to the service. In some cases,\n unknownIpPermissionSet might be in a different format from the request\n parameter.

", + "smithy.api#xmlName": "unknownIpPermissionSet" } }, - "transit_gateway_route_table_announcement": { - "target": "smithy.api#Unit", + "RevokedSecurityGroupRules": { + "target": "com.amazonaws.ec2#RevokedSecurityGroupRuleList", "traits": { - "smithy.api#enumValue": "transit-gateway-route-table-announcement" + "aws.protocols#ec2QueryName": "RevokedSecurityGroupRuleSet", + "smithy.api#documentation": "

Details about the revoked security group rules.

", + "smithy.api#xmlName": "revokedSecurityGroupRuleSet" } - }, - "volume": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#RevokeSecurityGroupIngress": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#RevokeSecurityGroupIngressRequest" + }, + "output": { + "target": "com.amazonaws.ec2#RevokeSecurityGroupIngressResult" + }, + "traits": { + "smithy.api#documentation": "

Removes the specified inbound (ingress) rules from a security group.

\n

You can specify rules using either rule IDs or security group rule properties. If you use\n rule properties, the values that you specify (for example, ports) must match the existing rule's \n values exactly. Each rule has a protocol, from and to ports, and source (CIDR range, \n security group, or prefix list). For the TCP and UDP protocols, you must also specify the \n destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type \n and code. If the security group rule has a description, you do not need to specify the description \n to revoke the rule.

\n

For a default VPC, if the values you specify do not match the existing rule's values,\n no error is returned, and the output describes the security group rules that were not\n revoked.

\n

For a non-default VPC, if the values you specify do not match the existing rule's\n values, an InvalidPermission.NotFound client error is returned, and no\n rules are revoked.

\n

Amazon Web Services recommends that you describe the security group to verify that the rules were removed.

\n

Rule changes are propagated to instances within the security group as quickly as possible. \n However, a small delay might occur.

" + } + }, + "com.amazonaws.ec2#RevokeSecurityGroupIngressRequest": { + "type": "structure", + "members": { + "CidrIp": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "volume" + "smithy.api#documentation": "

The CIDR IP address range. You can't specify this parameter when specifying a source security group.

" } }, - "vpc": { - "target": "smithy.api#Unit", + "FromPort": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "vpc" + "smithy.api#documentation": "

If the protocol is TCP or UDP, this is the start of the port range.\n If the protocol is ICMP, this is the ICMP type or -1 (all ICMP types).

" } }, - "vpc_endpoint": { - "target": "smithy.api#Unit", + "GroupId": { + "target": "com.amazonaws.ec2#SecurityGroupId", "traits": { - "smithy.api#enumValue": "vpc-endpoint" + "smithy.api#documentation": "

The ID of the security group.

" } }, - "vpc_endpoint_connection": { - "target": "smithy.api#Unit", + "GroupName": { + "target": "com.amazonaws.ec2#SecurityGroupName", "traits": { - "smithy.api#enumValue": "vpc-endpoint-connection" + "smithy.api#documentation": "

[Default VPC] The name of the security group. You must specify either the\n security group ID or the security group name in the request. For security groups in a\n nondefault VPC, you must specify the security group ID.

" } }, - "vpc_endpoint_service": { - "target": "smithy.api#Unit", + "IpPermissions": { + "target": "com.amazonaws.ec2#IpPermissionList", "traits": { - "smithy.api#enumValue": "vpc-endpoint-service" + "smithy.api#documentation": "

The sets of IP permissions. You can't specify a source security group and a CIDR IP address range in the same set of permissions.

" } }, - "vpc_endpoint_service_permission": { - "target": "smithy.api#Unit", + "IpProtocol": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "vpc-endpoint-service-permission" + "smithy.api#documentation": "

The IP protocol name (tcp, udp, icmp) or number \n (see Protocol Numbers). \n Use -1 to specify all.

" } }, - "vpc_peering_connection": { - "target": "smithy.api#Unit", + "SourceSecurityGroupName": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "vpc-peering-connection" + "smithy.api#documentation": "

[Default VPC] The name of the source security group. You can't specify this parameter \n in combination with the following parameters: the CIDR IP address range, the start of the port range, \n the IP protocol, and the end of the port range. The source security group must be in the same VPC. \n To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.

" } }, - "vpn_connection": { - "target": "smithy.api#Unit", + "SourceSecurityGroupOwnerId": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "vpn-connection" + "smithy.api#documentation": "

Not supported.

" } }, - "vpn_gateway": { - "target": "smithy.api#Unit", + "ToPort": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "vpn-gateway" + "smithy.api#documentation": "

If the protocol is TCP or UDP, this is the end of the port range.\n If the protocol is ICMP, this is the ICMP code or -1 (all ICMP codes).

" } }, - "vpc_flow_log": { - "target": "smithy.api#Unit", + "SecurityGroupRuleIds": { + "target": "com.amazonaws.ec2#SecurityGroupRuleIdList", "traits": { - "smithy.api#enumValue": "vpc-flow-log" + "smithy.api#documentation": "

The IDs of the security group rules.

", + "smithy.api#xmlName": "SecurityGroupRuleId" } }, - "capacity_reservation_fleet": { - "target": "smithy.api#Unit", + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "capacity-reservation-fleet" + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" } - }, - "traffic_mirror_filter_rule": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#RevokeSecurityGroupIngressResult": { + "type": "structure", + "members": { + "Return": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "traffic-mirror-filter-rule" + "aws.protocols#ec2QueryName": "Return", + "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, returns an error.

", + "smithy.api#xmlName": "return" } }, - "vpc_endpoint_connection_device_type": { - "target": "smithy.api#Unit", + "UnknownIpPermissions": { + "target": "com.amazonaws.ec2#IpPermissionList", "traits": { - "smithy.api#enumValue": "vpc-endpoint-connection-device-type" + "aws.protocols#ec2QueryName": "UnknownIpPermissionSet", + "smithy.api#documentation": "

The inbound rules that were unknown to the service. In some cases,\n unknownIpPermissionSet might be in a different format from the request\n parameter.

", + "smithy.api#xmlName": "unknownIpPermissionSet" } }, - "verified_access_instance": { - "target": "smithy.api#Unit", + "RevokedSecurityGroupRules": { + "target": "com.amazonaws.ec2#RevokedSecurityGroupRuleList", "traits": { - "smithy.api#enumValue": "verified-access-instance" + "aws.protocols#ec2QueryName": "RevokedSecurityGroupRuleSet", + "smithy.api#documentation": "

Details about the revoked security group rules.

", + "smithy.api#xmlName": "revokedSecurityGroupRuleSet" } - }, - "verified_access_group": { - "target": "smithy.api#Unit", + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ec2#RevokedSecurityGroupRule": { + "type": "structure", + "members": { + "SecurityGroupRuleId": { + "target": "com.amazonaws.ec2#SecurityGroupRuleId", "traits": { - "smithy.api#enumValue": "verified-access-group" + "aws.protocols#ec2QueryName": "SecurityGroupRuleId", + "smithy.api#documentation": "

A security group rule ID.

", + "smithy.api#xmlName": "securityGroupRuleId" } }, - "verified_access_endpoint": { - "target": "smithy.api#Unit", + "GroupId": { + "target": "com.amazonaws.ec2#SecurityGroupId", "traits": { - "smithy.api#enumValue": "verified-access-endpoint" + "aws.protocols#ec2QueryName": "GroupId", + "smithy.api#documentation": "

A security group ID.

", + "smithy.api#xmlName": "groupId" } }, - "verified_access_policy": { - "target": "smithy.api#Unit", + "IsEgress": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#enumValue": "verified-access-policy" + "aws.protocols#ec2QueryName": "IsEgress", + "smithy.api#documentation": "

Defines if a security group rule is an outbound rule.

", + "smithy.api#xmlName": "isEgress" } }, - "verified_access_trust_provider": { - "target": "smithy.api#Unit", + "IpProtocol": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "verified-access-trust-provider" + "aws.protocols#ec2QueryName": "IpProtocol", + "smithy.api#documentation": "

The security group rule's protocol.

", + "smithy.api#xmlName": "ipProtocol" } }, - "vpn_connection_device_type": { - "target": "smithy.api#Unit", + "FromPort": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "vpn-connection-device-type" + "aws.protocols#ec2QueryName": "FromPort", + "smithy.api#documentation": "

The 'from' port number of the security group rule.

", + "smithy.api#xmlName": "fromPort" } }, - "vpc_block_public_access_exclusion": { - "target": "smithy.api#Unit", + "ToPort": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#enumValue": "vpc-block-public-access-exclusion" + "aws.protocols#ec2QueryName": "ToPort", + "smithy.api#documentation": "

The 'to' port number of the security group rule.

", + "smithy.api#xmlName": "toPort" } }, - "ipam_resource_discovery": { - "target": "smithy.api#Unit", + "CidrIpv4": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "ipam-resource-discovery" + "aws.protocols#ec2QueryName": "CidrIpv4", + "smithy.api#documentation": "

The IPv4 CIDR of the traffic source.

", + "smithy.api#xmlName": "cidrIpv4" } }, - "ipam_resource_discovery_association": { - "target": "smithy.api#Unit", + "CidrIpv6": { + "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#enumValue": "ipam-resource-discovery-association" + "aws.protocols#ec2QueryName": "CidrIpv6", + "smithy.api#documentation": "

The IPv6 CIDR of the traffic source.

", + "smithy.api#xmlName": "cidrIpv6" } }, - "instance_connect_endpoint": { - "target": "smithy.api#Unit", + "PrefixListId": { + "target": "com.amazonaws.ec2#PrefixListResourceId", "traits": { - "smithy.api#enumValue": "instance-connect-endpoint" + "aws.protocols#ec2QueryName": "PrefixListId", + "smithy.api#documentation": "

The ID of a prefix list that's the traffic source.

", + "smithy.api#xmlName": "prefixListId" } - } - } - }, - "com.amazonaws.ec2#ResponseError": { - "type": "structure", - "members": { - "Code": { - "target": "com.amazonaws.ec2#LaunchTemplateErrorCode", + }, + "ReferencedGroupId": { + "target": "com.amazonaws.ec2#SecurityGroupId", "traits": { - "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The error code.

", - "smithy.api#xmlName": "code" + "aws.protocols#ec2QueryName": "ReferencedGroupId", + "smithy.api#documentation": "

The ID of a referenced security group.

", + "smithy.api#xmlName": "referencedGroupId" } }, - "Message": { + "Description": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Message", - "smithy.api#documentation": "

The error message, if applicable.

", - "smithy.api#xmlName": "message" + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

A description of the revoked security group rule.

", + "smithy.api#xmlName": "description" } } }, "traits": { - "smithy.api#documentation": "

Describes the error that's returned when you cannot delete a launch template\n version.

" + "smithy.api#documentation": "

A security group rule removed with RevokeSecurityGroupEgress or RevokeSecurityGroupIngress.

" } }, - "com.amazonaws.ec2#ResponseHostIdList": { + "com.amazonaws.ec2#RevokedSecurityGroupRuleList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#RevokedSecurityGroupRule", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#ResponseHostIdSet": { + "com.amazonaws.ec2#RoleId": { + "type": "string" + }, + "com.amazonaws.ec2#RootDeviceType": { + "type": "enum", + "members": { + "ebs": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ebs" + } + }, + "instance_store": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "instance-store" + } + } + } + }, + "com.amazonaws.ec2#RootDeviceTypeList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#String", + "target": "com.amazonaws.ec2#RootDeviceType", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#ResponseLaunchTemplateData": { + "com.amazonaws.ec2#Route": { "type": "structure", "members": { - "KernelId": { + "DestinationCidrBlock": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "KernelId", - "smithy.api#documentation": "

The ID of the kernel, if applicable.

", - "smithy.api#xmlName": "kernelId" - } - }, - "EbsOptimized": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "EbsOptimized", - "smithy.api#documentation": "

Indicates whether the instance is optimized for Amazon EBS I/O.

", - "smithy.api#xmlName": "ebsOptimized" + "aws.protocols#ec2QueryName": "DestinationCidrBlock", + "smithy.api#documentation": "

The IPv4 CIDR block used for the destination match.

", + "smithy.api#xmlName": "destinationCidrBlock" } }, - "IamInstanceProfile": { - "target": "com.amazonaws.ec2#LaunchTemplateIamInstanceProfileSpecification", + "DestinationIpv6CidrBlock": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "IamInstanceProfile", - "smithy.api#documentation": "

The IAM instance profile.

", - "smithy.api#xmlName": "iamInstanceProfile" + "aws.protocols#ec2QueryName": "DestinationIpv6CidrBlock", + "smithy.api#documentation": "

The IPv6 CIDR block used for the destination match.

", + "smithy.api#xmlName": "destinationIpv6CidrBlock" } }, - "BlockDeviceMappings": { - "target": "com.amazonaws.ec2#LaunchTemplateBlockDeviceMappingList", + "DestinationPrefixListId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "BlockDeviceMappingSet", - "smithy.api#documentation": "

The block device mappings.

", - "smithy.api#xmlName": "blockDeviceMappingSet" + "aws.protocols#ec2QueryName": "DestinationPrefixListId", + "smithy.api#documentation": "

The prefix of the Amazon Web Services service.

", + "smithy.api#xmlName": "destinationPrefixListId" } }, - "NetworkInterfaces": { - "target": "com.amazonaws.ec2#LaunchTemplateInstanceNetworkInterfaceSpecificationList", + "EgressOnlyInternetGatewayId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceSet", - "smithy.api#documentation": "

The network interfaces.

", - "smithy.api#xmlName": "networkInterfaceSet" + "aws.protocols#ec2QueryName": "EgressOnlyInternetGatewayId", + "smithy.api#documentation": "

The ID of the egress-only internet gateway.

", + "smithy.api#xmlName": "egressOnlyInternetGatewayId" } }, - "ImageId": { + "GatewayId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ImageId", - "smithy.api#documentation": "

The ID of the AMI or a Systems Manager parameter. The Systems Manager parameter will\n resolve to the ID of the AMI at instance launch.

\n

The value depends on what you specified in the request. The possible values are:

\n \n

For more information, see Use a Systems \n Manager parameter instead of an AMI ID in the Amazon Elastic Compute Cloud User Guide.

", - "smithy.api#xmlName": "imageId" + "aws.protocols#ec2QueryName": "GatewayId", + "smithy.api#documentation": "

The ID of a gateway attached to your VPC.

", + "smithy.api#xmlName": "gatewayId" } }, - "InstanceType": { - "target": "com.amazonaws.ec2#InstanceType", + "InstanceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "InstanceType", - "smithy.api#documentation": "

The instance type.

", - "smithy.api#xmlName": "instanceType" + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of a NAT instance in your VPC.

", + "smithy.api#xmlName": "instanceId" } }, - "KeyName": { + "InstanceOwnerId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "KeyName", - "smithy.api#documentation": "

The name of the key pair.

", - "smithy.api#xmlName": "keyName" + "aws.protocols#ec2QueryName": "InstanceOwnerId", + "smithy.api#documentation": "

The ID of Amazon Web Services account that owns the instance.

", + "smithy.api#xmlName": "instanceOwnerId" } }, - "Monitoring": { - "target": "com.amazonaws.ec2#LaunchTemplatesMonitoring", + "NatGatewayId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Monitoring", - "smithy.api#documentation": "

The monitoring for the instance.

", - "smithy.api#xmlName": "monitoring" + "aws.protocols#ec2QueryName": "NatGatewayId", + "smithy.api#documentation": "

The ID of a NAT gateway.

", + "smithy.api#xmlName": "natGatewayId" } }, - "Placement": { - "target": "com.amazonaws.ec2#LaunchTemplatePlacement", + "TransitGatewayId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Placement", - "smithy.api#documentation": "

The placement of the instance.

", - "smithy.api#xmlName": "placement" + "aws.protocols#ec2QueryName": "TransitGatewayId", + "smithy.api#documentation": "

The ID of a transit gateway.

", + "smithy.api#xmlName": "transitGatewayId" } }, - "RamDiskId": { + "LocalGatewayId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "RamDiskId", - "smithy.api#documentation": "

The ID of the RAM disk, if applicable.

", - "smithy.api#xmlName": "ramDiskId" + "aws.protocols#ec2QueryName": "LocalGatewayId", + "smithy.api#documentation": "

The ID of the local gateway.

", + "smithy.api#xmlName": "localGatewayId" } }, - "DisableApiTermination": { - "target": "com.amazonaws.ec2#Boolean", + "CarrierGatewayId": { + "target": "com.amazonaws.ec2#CarrierGatewayId", "traits": { - "aws.protocols#ec2QueryName": "DisableApiTermination", - "smithy.api#documentation": "

If set to true, indicates that the instance cannot be terminated using\n the Amazon EC2 console, command line tool, or API.

", - "smithy.api#xmlName": "disableApiTermination" + "aws.protocols#ec2QueryName": "CarrierGatewayId", + "smithy.api#documentation": "

The ID of the carrier gateway.

", + "smithy.api#xmlName": "carrierGatewayId" } }, - "InstanceInitiatedShutdownBehavior": { - "target": "com.amazonaws.ec2#ShutdownBehavior", + "NetworkInterfaceId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "InstanceInitiatedShutdownBehavior", - "smithy.api#documentation": "

Indicates whether an instance stops or terminates when you initiate shutdown from the\n instance (using the operating system command for system shutdown).

", - "smithy.api#xmlName": "instanceInitiatedShutdownBehavior" + "aws.protocols#ec2QueryName": "NetworkInterfaceId", + "smithy.api#documentation": "

The ID of the network interface.

", + "smithy.api#xmlName": "networkInterfaceId" } }, - "UserData": { - "target": "com.amazonaws.ec2#SensitiveUserData", + "Origin": { + "target": "com.amazonaws.ec2#RouteOrigin", "traits": { - "aws.protocols#ec2QueryName": "UserData", - "smithy.api#documentation": "

The user data for the instance.

", - "smithy.api#xmlName": "userData" + "aws.protocols#ec2QueryName": "Origin", + "smithy.api#documentation": "

Describes how the route was created.

\n ", + "smithy.api#xmlName": "origin" } }, - "TagSpecifications": { - "target": "com.amazonaws.ec2#LaunchTemplateTagSpecificationList", + "State": { + "target": "com.amazonaws.ec2#RouteState", "traits": { - "aws.protocols#ec2QueryName": "TagSpecificationSet", - "smithy.api#documentation": "

The tags that are applied to the resources that are created during instance\n launch.

", - "smithy.api#xmlName": "tagSpecificationSet" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the route. The blackhole state indicates that the\n\t\t\t\troute's target isn't available (for example, the specified gateway isn't attached to the\n\t\t\t\tVPC, or the specified NAT instance has been terminated).

", + "smithy.api#xmlName": "state" } }, - "ElasticGpuSpecifications": { - "target": "com.amazonaws.ec2#ElasticGpuSpecificationResponseList", + "VpcPeeringConnectionId": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "ElasticGpuSpecificationSet", - "smithy.api#documentation": "

Deprecated.

\n \n

Amazon Elastic Graphics reached end of life on January 8, 2024. For \n workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, \n G4dn, or G5 instances.

\n
", - "smithy.api#xmlName": "elasticGpuSpecificationSet" + "aws.protocols#ec2QueryName": "VpcPeeringConnectionId", + "smithy.api#documentation": "

The ID of a VPC peering connection.

", + "smithy.api#xmlName": "vpcPeeringConnectionId" } }, - "ElasticInferenceAccelerators": { - "target": "com.amazonaws.ec2#LaunchTemplateElasticInferenceAcceleratorResponseList", + "CoreNetworkArn": { + "target": "com.amazonaws.ec2#CoreNetworkArn", "traits": { - "aws.protocols#ec2QueryName": "ElasticInferenceAcceleratorSet", - "smithy.api#documentation": "

An elastic inference accelerator to associate with the instance. Elastic inference\n accelerators are a resource you can attach to your Amazon EC2 instances to accelerate\n your Deep Learning (DL) inference workloads.

\n

You cannot specify accelerators from different generations in the same request.

\n \n

Starting April 15, 2023, Amazon Web Services will not onboard new customers to Amazon\n Elastic Inference (EI), and will help current customers migrate their workloads to\n options that offer better price and performance. After April 15, 2023, new customers\n will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker,\n Amazon ECS, or Amazon EC2. However, customers who have used Amazon EI at least once during\n the past 30-day period are considered current customers and will be able to continue\n using the service.

\n
", - "smithy.api#xmlName": "elasticInferenceAcceleratorSet" + "aws.protocols#ec2QueryName": "CoreNetworkArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the core network.

", + "smithy.api#xmlName": "coreNetworkArn" } }, - "SecurityGroupIds": { - "target": "com.amazonaws.ec2#ValueStringList", + "OdbNetworkArn": { + "target": "com.amazonaws.ec2#OdbNetworkArn", "traits": { - "aws.protocols#ec2QueryName": "SecurityGroupIdSet", - "smithy.api#documentation": "

The security group IDs.

", - "smithy.api#xmlName": "securityGroupIdSet" + "aws.protocols#ec2QueryName": "OdbNetworkArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the ODB network.

", + "smithy.api#xmlName": "odbNetworkArn" } }, - "SecurityGroups": { - "target": "com.amazonaws.ec2#ValueStringList", + "IpAddress": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SecurityGroupSet", - "smithy.api#documentation": "

The security group names.

", - "smithy.api#xmlName": "securityGroupSet" + "aws.protocols#ec2QueryName": "IpAddress", + "smithy.api#documentation": "

The next hop IP address for routes propagated by VPC Route \n Server into VPC route tables.

", + "smithy.api#xmlName": "ipAddress" } - }, - "InstanceMarketOptions": { - "target": "com.amazonaws.ec2#LaunchTemplateInstanceMarketOptions", + } + }, + "traits": { + "smithy.api#documentation": "

Describes a route in a route table.

" + } + }, + "com.amazonaws.ec2#RouteGatewayId": { + "type": "string" + }, + "com.amazonaws.ec2#RouteList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#Route", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#RouteOrigin": { + "type": "enum", + "members": { + "CreateRouteTable": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "InstanceMarketOptions", - "smithy.api#documentation": "

The market (purchasing) option for the instances.

", - "smithy.api#xmlName": "instanceMarketOptions" + "smithy.api#enumValue": "CreateRouteTable" } }, - "CreditSpecification": { - "target": "com.amazonaws.ec2#CreditSpecification", + "CreateRoute": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CreditSpecification", - "smithy.api#documentation": "

The credit option for CPU usage of the instance.

", - "smithy.api#xmlName": "creditSpecification" + "smithy.api#enumValue": "CreateRoute" } }, - "CpuOptions": { - "target": "com.amazonaws.ec2#LaunchTemplateCpuOptions", + "EnableVgwRoutePropagation": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CpuOptions", - "smithy.api#documentation": "

The CPU options for the instance. For more information, see Optimizing CPU options in the Amazon Elastic Compute Cloud User\n Guide.

", - "smithy.api#xmlName": "cpuOptions" + "smithy.api#enumValue": "EnableVgwRoutePropagation" } }, - "CapacityReservationSpecification": { - "target": "com.amazonaws.ec2#LaunchTemplateCapacityReservationSpecificationResponse", + "Advertisement": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CapacityReservationSpecification", - "smithy.api#documentation": "

Information about the Capacity Reservation targeting option.

", - "smithy.api#xmlName": "capacityReservationSpecification" + "smithy.api#enumValue": "Advertisement" } - }, - "LicenseSpecifications": { - "target": "com.amazonaws.ec2#LaunchTemplateLicenseList", + } + } + }, + "com.amazonaws.ec2#RouteServer": { + "type": "structure", + "members": { + "RouteServerId": { + "target": "com.amazonaws.ec2#RouteServerId", "traits": { - "aws.protocols#ec2QueryName": "LicenseSet", - "smithy.api#documentation": "

The license configurations.

", - "smithy.api#xmlName": "licenseSet" + "aws.protocols#ec2QueryName": "RouteServerId", + "smithy.api#documentation": "

The unique identifier of the route server.

", + "smithy.api#xmlName": "routeServerId" } }, - "HibernationOptions": { - "target": "com.amazonaws.ec2#LaunchTemplateHibernationOptions", + "AmazonSideAsn": { + "target": "com.amazonaws.ec2#Long", "traits": { - "aws.protocols#ec2QueryName": "HibernationOptions", - "smithy.api#documentation": "

Indicates whether an instance is configured for hibernation. For more information, see\n Hibernate\n your instance in the Amazon Elastic Compute Cloud User Guide.

", - "smithy.api#xmlName": "hibernationOptions" + "aws.protocols#ec2QueryName": "AmazonSideAsn", + "smithy.api#documentation": "

The Border Gateway Protocol (BGP) Autonomous System Number (ASN) for the appliance. Valid values are from 1 to 4294967295. We recommend using a private ASN in the 64512–65534 (16-bit ASN) or 4200000000–4294967294 (32-bit ASN) range.

", + "smithy.api#xmlName": "amazonSideAsn" } }, - "MetadataOptions": { - "target": "com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptions", + "State": { + "target": "com.amazonaws.ec2#RouteServerState", "traits": { - "aws.protocols#ec2QueryName": "MetadataOptions", - "smithy.api#documentation": "

The metadata options for the instance. For more information, see Instance metadata and user data in the\n Amazon Elastic Compute Cloud User Guide.

", - "smithy.api#xmlName": "metadataOptions" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the route server.

", + "smithy.api#xmlName": "state" } }, - "EnclaveOptions": { - "target": "com.amazonaws.ec2#LaunchTemplateEnclaveOptions", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "aws.protocols#ec2QueryName": "EnclaveOptions", - "smithy.api#documentation": "

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.

", - "smithy.api#xmlName": "enclaveOptions" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the route server.

", + "smithy.api#xmlName": "tagSet" } }, - "InstanceRequirements": { - "target": "com.amazonaws.ec2#InstanceRequirements", + "PersistRoutesState": { + "target": "com.amazonaws.ec2#RouteServerPersistRoutesState", "traits": { - "aws.protocols#ec2QueryName": "InstanceRequirements", - "smithy.api#documentation": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will\n identify instance types with these attributes.

\n

If you specify InstanceRequirements, you can't specify\n InstanceTypes.

", - "smithy.api#xmlName": "instanceRequirements" + "aws.protocols#ec2QueryName": "PersistRoutesState", + "smithy.api#documentation": "

The current state of route persistence for the route server.

", + "smithy.api#xmlName": "persistRoutesState" } }, - "PrivateDnsNameOptions": { - "target": "com.amazonaws.ec2#LaunchTemplatePrivateDnsNameOptions", + "PersistRoutesDuration": { + "target": "com.amazonaws.ec2#BoxedLong", "traits": { - "aws.protocols#ec2QueryName": "PrivateDnsNameOptions", - "smithy.api#documentation": "

The options for the instance hostname.

", - "smithy.api#xmlName": "privateDnsNameOptions" + "aws.protocols#ec2QueryName": "PersistRoutesDuration", + "smithy.api#documentation": "

The number of minutes a route server will wait after BGP is re-established to unpersist the routes in the FIB and RIB. Value must be in the range of 1-5. The default value is 1. Only valid if persistRoutesState is 'enabled'.

\n

If you set the duration to 1 minute, then when your network appliance re-establishes BGP with route server, it has 1 minute to relearn it's adjacent network and advertise those routes to route server before route server resumes normal functionality. In most cases, 1 minute is probably sufficient. If, however, you have concerns that your BGP network may not be capable of fully re-establishing and re-learning everything in 1 minute, you can increase the duration up to 5 minutes.

", + "smithy.api#xmlName": "persistRoutesDuration" } }, - "MaintenanceOptions": { - "target": "com.amazonaws.ec2#LaunchTemplateInstanceMaintenanceOptions", + "SnsNotificationsEnabled": { + "target": "com.amazonaws.ec2#Boolean", "traits": { - "aws.protocols#ec2QueryName": "MaintenanceOptions", - "smithy.api#documentation": "

The maintenance options for your instance.

", - "smithy.api#xmlName": "maintenanceOptions" + "aws.protocols#ec2QueryName": "SnsNotificationsEnabled", + "smithy.api#documentation": "

Indicates whether SNS notifications are enabled for the route server. Enabling SNS notifications persists BGP status changes to an SNS topic provisioned by Amazon Web Services.

", + "smithy.api#xmlName": "snsNotificationsEnabled" } }, - "DisableApiStop": { - "target": "com.amazonaws.ec2#Boolean", + "SnsTopicArn": { + "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "DisableApiStop", - "smithy.api#documentation": "

Indicates whether the instance is enabled for stop protection. For more information,\n see Stop\n protection in the Amazon Elastic Compute Cloud User Guide.

", - "smithy.api#xmlName": "disableApiStop" + "aws.protocols#ec2QueryName": "SnsTopicArn", + "smithy.api#documentation": "

The ARN of the SNS topic where notifications are published.

", + "smithy.api#xmlName": "snsTopicArn" } } }, "traits": { - "smithy.api#documentation": "

The information for a launch template.

" - } - }, - "com.amazonaws.ec2#RestorableByStringList": { - "type": "list", - "member": { - "target": "com.amazonaws.ec2#String" - } - }, - "com.amazonaws.ec2#RestoreAddressToClassic": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#RestoreAddressToClassicRequest" - }, - "output": { - "target": "com.amazonaws.ec2#RestoreAddressToClassicResult" - }, - "traits": { - "smithy.api#documentation": "\n

This action is deprecated.

\n
\n

Restores an Elastic IP address that was previously moved to the EC2-VPC platform back to the EC2-Classic platform. You cannot move an Elastic IP address that was originally allocated for use in EC2-VPC. The Elastic IP address must not be associated with an instance or network interface.

" + "smithy.api#documentation": "

Describes a route server and its configuration.

\n

Amazon VPC Route Server simplifies routing for traffic between workloads that are deployed within a VPC and its internet gateways. With this feature, \nVPC Route Server dynamically updates VPC and internet gateway route tables with your preferred IPv4 or IPv6 routes to achieve routing fault tolerance for those workloads. This enables you to automatically reroute traffic within a VPC, which increases the manageability of VPC routing and interoperability with third-party workloads.

\n

Route server supports the follow route table types:

\n \n

Route server does not support route tables associated with virtual private gateways. To propagate routes into a transit gateway route table, use Transit Gateway Connect.

" } }, - "com.amazonaws.ec2#RestoreAddressToClassicRequest": { + "com.amazonaws.ec2#RouteServerAssociation": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "RouteServerId": { + "target": "com.amazonaws.ec2#RouteServerId", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "RouteServerId", + "smithy.api#documentation": "

The ID of the associated route server.

", + "smithy.api#xmlName": "routeServerId" } }, - "PublicIp": { - "target": "com.amazonaws.ec2#String", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "aws.protocols#ec2QueryName": "PublicIp", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Elastic IP address.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "publicIp" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the associated VPC.

", + "smithy.api#xmlName": "vpcId" + } + }, + "State": { + "target": "com.amazonaws.ec2#RouteServerAssociationState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the association.

", + "smithy.api#xmlName": "state" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes the association between a route server and a VPC.

\n

A route server association is the connection established between a route server and a VPC.

" } }, - "com.amazonaws.ec2#RestoreAddressToClassicResult": { - "type": "structure", + "com.amazonaws.ec2#RouteServerAssociationState": { + "type": "enum", "members": { - "PublicIp": { - "target": "com.amazonaws.ec2#String", + "ASSOCIATING": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PublicIp", - "smithy.api#documentation": "

The Elastic IP address.

", - "smithy.api#xmlName": "publicIp" + "smithy.api#enumValue": "associating" } }, - "Status": { - "target": "com.amazonaws.ec2#Status", + "ASSOCIATED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The move status for the IP address.

", - "smithy.api#xmlName": "status" + "smithy.api#enumValue": "associated" + } + }, + "DISASSOCIATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disassociating" } } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#RestoreImageFromRecycleBin": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#RestoreImageFromRecycleBinRequest" - }, - "output": { - "target": "com.amazonaws.ec2#RestoreImageFromRecycleBinResult" - }, - "traits": { - "smithy.api#documentation": "

Restores an AMI from the Recycle Bin. For more information, see Recycle Bin in the Amazon EC2 User Guide.

" + "com.amazonaws.ec2#RouteServerAssociationsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#RouteServerAssociation", + "traits": { + "smithy.api#xmlName": "item" + } } }, - "com.amazonaws.ec2#RestoreImageFromRecycleBinRequest": { - "type": "structure", + "com.amazonaws.ec2#RouteServerBfdState": { + "type": "enum", "members": { - "ImageId": { - "target": "com.amazonaws.ec2#ImageId", + "UP": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the AMI to restore.

", - "smithy.api#required": {} + "smithy.api#enumValue": "up" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "DOWN": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n\t\t\tand provides an error response. If you have the required permissions, the error response is \n\t\t\tDryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "down" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#RestoreImageFromRecycleBinResult": { + "com.amazonaws.ec2#RouteServerBfdStatus": { "type": "structure", "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + "Status": { + "target": "com.amazonaws.ec2#RouteServerBfdState", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, it returns an error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The operational status of the BFD session.

", + "smithy.api#xmlName": "status" } } }, "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#RestoreManagedPrefixListVersion": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#RestoreManagedPrefixListVersionRequest" - }, - "output": { - "target": "com.amazonaws.ec2#RestoreManagedPrefixListVersionResult" - }, - "traits": { - "smithy.api#documentation": "

Restores the entries from a previous version of a managed prefix list to a new version of the prefix list.

" + "smithy.api#documentation": "

The current status of Bidirectional Forwarding Detection (BFD) for a BGP session.

" } }, - "com.amazonaws.ec2#RestoreManagedPrefixListVersionRequest": { + "com.amazonaws.ec2#RouteServerBgpOptions": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "PeerAsn": { + "target": "com.amazonaws.ec2#Long", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "PeerAsn", + "smithy.api#documentation": "

The Border Gateway Protocol (BGP) Autonomous System Number (ASN) for the appliance. Valid values are from 1 to 4294967295. We recommend using a private ASN in the 64512–65534 (16-bit ASN) or 4200000000–4294967294 (32-bit ASN) range.

", + "smithy.api#xmlName": "peerAsn" } }, - "PrefixListId": { - "target": "com.amazonaws.ec2#PrefixListResourceId", + "PeerLivenessDetection": { + "target": "com.amazonaws.ec2#RouteServerPeerLivenessMode", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the prefix list.

", - "smithy.api#required": {} + "aws.protocols#ec2QueryName": "PeerLivenessDetection", + "smithy.api#documentation": "

The liveness detection protocol used for the BGP peer.

\n

The requested liveness detection protocol for the BGP peer.

\n \n

Defaults to bgp-keepalive.

", + "smithy.api#xmlName": "peerLivenessDetection" } - }, - "PreviousVersion": { + } + }, + "traits": { + "smithy.api#documentation": "

The BGP configuration options for a route server peer.

" + } + }, + "com.amazonaws.ec2#RouteServerBgpOptionsRequest": { + "type": "structure", + "members": { + "PeerAsn": { "target": "com.amazonaws.ec2#Long", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The version to restore.

", + "smithy.api#documentation": "

The Border Gateway Protocol (BGP) Autonomous System Number (ASN) for the appliance. Valid values are from 1 to 4294967295. We recommend using a private ASN in the 64512–65534 (16-bit ASN) or 4200000000–4294967294 (32-bit ASN) range.

", "smithy.api#required": {} } }, - "CurrentVersion": { - "target": "com.amazonaws.ec2#Long", + "PeerLivenessDetection": { + "target": "com.amazonaws.ec2#RouteServerPeerLivenessMode", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The current version number for the prefix list.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The requested liveness detection protocol for the BGP peer.

\n \n

Defaults to bgp-keepalive.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

The BGP configuration options requested for a route server peer.

" } }, - "com.amazonaws.ec2#RestoreManagedPrefixListVersionResult": { - "type": "structure", + "com.amazonaws.ec2#RouteServerBgpState": { + "type": "enum", "members": { - "PrefixList": { - "target": "com.amazonaws.ec2#ManagedPrefixList", + "UP": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "PrefixList", - "smithy.api#documentation": "

Information about the prefix list.

", - "smithy.api#xmlName": "prefixList" + "smithy.api#enumValue": "up" + } + }, + "DOWN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "down" } } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#RestoreSnapshotFromRecycleBin": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#RestoreSnapshotFromRecycleBinRequest" - }, - "output": { - "target": "com.amazonaws.ec2#RestoreSnapshotFromRecycleBinResult" - }, - "traits": { - "smithy.api#documentation": "

Restores a snapshot from the Recycle Bin. For more information, see Restore \n snapshots from the Recycle Bin in the Amazon EBS User Guide.

" } }, - "com.amazonaws.ec2#RestoreSnapshotFromRecycleBinRequest": { + "com.amazonaws.ec2#RouteServerBgpStatus": { "type": "structure", "members": { - "SnapshotId": { - "target": "com.amazonaws.ec2#SnapshotId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the snapshot to restore.

", - "smithy.api#required": {} - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "Status": { + "target": "com.amazonaws.ec2#RouteServerBgpState", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The operational status of the BGP session. The status enables you to monitor session liveness if you lack monitoring on your router/appliance.

", + "smithy.api#xmlName": "status" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

The current status of a BGP session.

" } }, - "com.amazonaws.ec2#RestoreSnapshotFromRecycleBinResult": { + "com.amazonaws.ec2#RouteServerEndpoint": { "type": "structure", "members": { - "SnapshotId": { - "target": "com.amazonaws.ec2#String", + "RouteServerId": { + "target": "com.amazonaws.ec2#RouteServerId", "traits": { - "aws.protocols#ec2QueryName": "SnapshotId", - "smithy.api#documentation": "

The ID of the snapshot.

", - "smithy.api#xmlName": "snapshotId" + "aws.protocols#ec2QueryName": "RouteServerId", + "smithy.api#documentation": "

The ID of the route server associated with this endpoint.

", + "smithy.api#xmlName": "routeServerId" } }, - "OutpostArn": { - "target": "com.amazonaws.ec2#String", + "RouteServerEndpointId": { + "target": "com.amazonaws.ec2#RouteServerEndpointId", "traits": { - "aws.protocols#ec2QueryName": "OutpostArn", - "smithy.api#documentation": "

The ARN of the Outpost on which the snapshot is stored. For more information, see Amazon EBS local snapshots on Outposts in the \n Amazon EBS User Guide.

", - "smithy.api#xmlName": "outpostArn" + "aws.protocols#ec2QueryName": "RouteServerEndpointId", + "smithy.api#documentation": "

The unique identifier of the route server endpoint.

", + "smithy.api#xmlName": "routeServerEndpointId" } }, - "Description": { - "target": "com.amazonaws.ec2#String", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

The description for the snapshot.

", - "smithy.api#xmlName": "description" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC containing the endpoint.

", + "smithy.api#xmlName": "vpcId" } }, - "Encrypted": { - "target": "com.amazonaws.ec2#Boolean", + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", "traits": { - "aws.protocols#ec2QueryName": "Encrypted", - "smithy.api#documentation": "

Indicates whether the snapshot is encrypted.

", - "smithy.api#xmlName": "encrypted" + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet to place the route server endpoint into.

", + "smithy.api#xmlName": "subnetId" } }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", + "EniId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the EBS snapshot.

", - "smithy.api#xmlName": "ownerId" + "aws.protocols#ec2QueryName": "EniId", + "smithy.api#documentation": "

The ID of the Elastic network interface for the endpoint.

", + "smithy.api#xmlName": "eniId" } }, - "Progress": { + "EniAddress": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Progress", - "smithy.api#documentation": "

The progress of the snapshot, as a percentage.

", - "smithy.api#xmlName": "progress" - } - }, - "StartTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", - "traits": { - "aws.protocols#ec2QueryName": "StartTime", - "smithy.api#documentation": "

The time stamp when the snapshot was initiated.

", - "smithy.api#xmlName": "startTime" + "aws.protocols#ec2QueryName": "EniAddress", + "smithy.api#documentation": "

The IP address of the Elastic network interface for the endpoint.

", + "smithy.api#xmlName": "eniAddress" } }, "State": { - "target": "com.amazonaws.ec2#SnapshotState", + "target": "com.amazonaws.ec2#RouteServerEndpointState", "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The state of the snapshot.

", - "smithy.api#xmlName": "status" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the route server endpoint.

", + "smithy.api#xmlName": "state" } }, - "VolumeId": { + "FailureReason": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "VolumeId", - "smithy.api#documentation": "

The ID of the volume that was used to create the snapshot.

", - "smithy.api#xmlName": "volumeId" - } - }, - "VolumeSize": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "VolumeSize", - "smithy.api#documentation": "

The size of the volume, in GiB.

", - "smithy.api#xmlName": "volumeSize" + "aws.protocols#ec2QueryName": "FailureReason", + "smithy.api#documentation": "

The reason for any failure in endpoint creation or operation.

", + "smithy.api#xmlName": "failureReason" } }, - "SseType": { - "target": "com.amazonaws.ec2#SSEType", + "Tags": { + "target": "com.amazonaws.ec2#TagList", "traits": { - "aws.protocols#ec2QueryName": "SseType", - "smithy.api#documentation": "

Reserved for future use.

", - "smithy.api#xmlName": "sseType" + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the route server endpoint.

", + "smithy.api#xmlName": "tagSet" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes a route server endpoint and its properties.

\n

A route server endpoint is an Amazon Web Services-managed component inside a subnet that facilitates BGP (Border Gateway Protocol) connections between your route server and your BGP peers.

" } }, - "com.amazonaws.ec2#RestoreSnapshotTier": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#RestoreSnapshotTierRequest" - }, - "output": { - "target": "com.amazonaws.ec2#RestoreSnapshotTierResult" - }, - "traits": { - "smithy.api#documentation": "

Restores an archived Amazon EBS snapshot for use temporarily or permanently, or modifies the restore \n period or restore type for a snapshot that was previously temporarily restored.

\n

For more information see \n Restore an archived snapshot and \n modify the restore period or restore type for a temporarily restored snapshot in the Amazon EBS User Guide.

" - } + "com.amazonaws.ec2#RouteServerEndpointId": { + "type": "string" }, - "com.amazonaws.ec2#RestoreSnapshotTierRequest": { - "type": "structure", - "members": { - "SnapshotId": { - "target": "com.amazonaws.ec2#SnapshotId", - "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the snapshot to restore.

", - "smithy.api#required": {} - } - }, - "TemporaryRestoreDays": { - "target": "com.amazonaws.ec2#RestoreSnapshotTierRequestTemporaryRestoreDays", - "traits": { - "smithy.api#documentation": "

Specifies the number of days for which to temporarily restore an archived snapshot. \n Required for temporary restores only. The snapshot will be automatically re-archived \n after this period.

\n

To temporarily restore an archived snapshot, specify the number of days and omit \n the PermanentRestore parameter or set it to \n false.

" - } - }, - "PermanentRestore": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Indicates whether to permanently restore an archived snapshot. To permanently restore \n an archived snapshot, specify true and omit the \n RestoreSnapshotTierRequest$TemporaryRestoreDays parameter.

" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" - } - } - }, - "traits": { - "smithy.api#input": {} + "com.amazonaws.ec2#RouteServerEndpointIdsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#RouteServerEndpointId" } }, - "com.amazonaws.ec2#RestoreSnapshotTierRequestTemporaryRestoreDays": { - "type": "integer" - }, - "com.amazonaws.ec2#RestoreSnapshotTierResult": { - "type": "structure", + "com.amazonaws.ec2#RouteServerEndpointState": { + "type": "enum", "members": { - "SnapshotId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "SnapshotId", - "smithy.api#documentation": "

The ID of the snapshot.

", - "smithy.api#xmlName": "snapshotId" - } - }, - "RestoreStartTime": { - "target": "com.amazonaws.ec2#MillisecondDateTime", + "PENDING": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "RestoreStartTime", - "smithy.api#documentation": "

The date and time when the snapshot restore process started.

", - "smithy.api#xmlName": "restoreStartTime" + "smithy.api#enumValue": "pending" } }, - "RestoreDuration": { - "target": "com.amazonaws.ec2#Integer", + "AVAILABLE": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "RestoreDuration", - "smithy.api#documentation": "

For temporary restores only. The number of days for which the archived snapshot \n is temporarily restored.

", - "smithy.api#xmlName": "restoreDuration" + "smithy.api#enumValue": "available" } }, - "IsPermanentRestore": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "IsPermanentRestore", - "smithy.api#documentation": "

Indicates whether the snapshot is permanently restored. true indicates a permanent \n restore. false indicates a temporary restore.

", - "smithy.api#xmlName": "isPermanentRestore" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#ResultRange": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 20, - "max": 500 - } - } - }, - "com.amazonaws.ec2#RetentionPeriodRequestDays": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 36500 - } - } - }, - "com.amazonaws.ec2#RetentionPeriodResponseDays": { - "type": "integer" - }, - "com.amazonaws.ec2#RevokeClientVpnIngress": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#RevokeClientVpnIngressRequest" - }, - "output": { - "target": "com.amazonaws.ec2#RevokeClientVpnIngressResult" - }, - "traits": { - "smithy.api#documentation": "

Removes an ingress authorization rule from a Client VPN endpoint.

" - } - }, - "com.amazonaws.ec2#RevokeClientVpnIngressRequest": { - "type": "structure", - "members": { - "ClientVpnEndpointId": { - "target": "com.amazonaws.ec2#ClientVpnEndpointId", + "DELETING": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the Client VPN endpoint with which the authorization rule is associated.

", - "smithy.api#required": {} + "smithy.api#enumValue": "deleting" } }, - "TargetNetworkCidr": { - "target": "com.amazonaws.ec2#String", + "DELETED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The IPv4 address range, in CIDR notation, of the network for which access is being removed.

", - "smithy.api#required": {} + "smithy.api#enumValue": "deleted" } }, - "AccessGroupId": { - "target": "com.amazonaws.ec2#String", + "FAILING": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ID of the Active Directory group for which to revoke access.

" + "smithy.api#enumValue": "failing" } }, - "RevokeAllGroups": { - "target": "com.amazonaws.ec2#Boolean", + "FAILED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Indicates whether access should be revoked for all clients.

" + "smithy.api#enumValue": "failed" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "DELETE_FAILED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

" + "smithy.api#enumValue": "delete-failed" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#RevokeClientVpnIngressResult": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.ec2#ClientVpnAuthorizationRuleStatus", - "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The current state of the authorization rule.

", - "smithy.api#xmlName": "status" - } + "com.amazonaws.ec2#RouteServerEndpointsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#RouteServerEndpoint", + "traits": { + "smithy.api#xmlName": "item" } - }, - "traits": { - "smithy.api#output": {} } }, - "com.amazonaws.ec2#RevokeSecurityGroupEgress": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#RevokeSecurityGroupEgressRequest" - }, - "output": { - "target": "com.amazonaws.ec2#RevokeSecurityGroupEgressResult" - }, + "com.amazonaws.ec2#RouteServerId": { + "type": "string" + }, + "com.amazonaws.ec2#RouteServerIdsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#RouteServerId" + } + }, + "com.amazonaws.ec2#RouteServerMaxResults": { + "type": "integer", "traits": { - "smithy.api#documentation": "

Removes the specified outbound (egress) rules from the specified security group.

\n

You can specify rules using either rule IDs or security group rule properties. If you use\n rule properties, the values that you specify (for example, ports) must match the existing rule's \n values exactly. Each rule has a protocol, from and to ports, and destination (CIDR range, \n security group, or prefix list). For the TCP and UDP protocols, you must also specify the \n destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type \n and code. If the security group rule has a description, you do not need to specify the description \n to revoke the rule.

\n

For a default VPC, if the values you specify do not match the existing rule's values, no error is\n returned, and the output describes the security group rules that were not revoked.

\n

Amazon Web Services recommends that you describe the security group to verify that the rules were removed.

\n

Rule changes are propagated to instances within the security group as quickly as possible. However, \n a small delay might occur.

" + "smithy.api#range": { + "min": 5, + "max": 1000 + } } }, - "com.amazonaws.ec2#RevokeSecurityGroupEgressRequest": { + "com.amazonaws.ec2#RouteServerPeer": { "type": "structure", "members": { - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "RouteServerPeerId": { + "target": "com.amazonaws.ec2#RouteServerPeerId", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "aws.protocols#ec2QueryName": "RouteServerPeerId", + "smithy.api#documentation": "

The unique identifier of the route server peer.

", + "smithy.api#xmlName": "routeServerPeerId" } }, - "GroupId": { - "target": "com.amazonaws.ec2#SecurityGroupId", + "RouteServerEndpointId": { + "target": "com.amazonaws.ec2#RouteServerEndpointId", "traits": { - "aws.protocols#ec2QueryName": "GroupId", - "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The ID of the security group.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "groupId" + "aws.protocols#ec2QueryName": "RouteServerEndpointId", + "smithy.api#documentation": "

The ID of the route server endpoint associated with this peer.

", + "smithy.api#xmlName": "routeServerEndpointId" } }, - "IpPermissions": { - "target": "com.amazonaws.ec2#IpPermissionList", + "RouteServerId": { + "target": "com.amazonaws.ec2#RouteServerId", "traits": { - "aws.protocols#ec2QueryName": "IpPermissions", - "smithy.api#documentation": "

The sets of IP permissions. You can't specify a destination security group and a CIDR IP address range in the same set of permissions.

", - "smithy.api#xmlName": "ipPermissions" + "aws.protocols#ec2QueryName": "RouteServerId", + "smithy.api#documentation": "

The ID of the route server associated with this peer.

", + "smithy.api#xmlName": "routeServerId" } }, - "SecurityGroupRuleIds": { - "target": "com.amazonaws.ec2#SecurityGroupRuleIdList", + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", "traits": { - "smithy.api#documentation": "

The IDs of the security group rules.

", - "smithy.api#xmlName": "SecurityGroupRuleId" + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC containing the route server peer.

", + "smithy.api#xmlName": "vpcId" } }, - "CidrIp": { - "target": "com.amazonaws.ec2#String", + "SubnetId": { + "target": "com.amazonaws.ec2#SubnetId", "traits": { - "aws.protocols#ec2QueryName": "CidrIp", - "smithy.api#documentation": "

Not supported. Use a set of IP permissions to specify the CIDR.

", - "smithy.api#xmlName": "cidrIp" + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet containing the route server peer.

", + "smithy.api#xmlName": "subnetId" } }, - "FromPort": { - "target": "com.amazonaws.ec2#Integer", + "State": { + "target": "com.amazonaws.ec2#RouteServerPeerState", "traits": { - "aws.protocols#ec2QueryName": "FromPort", - "smithy.api#documentation": "

Not supported. Use a set of IP permissions to specify the port.

", - "smithy.api#xmlName": "fromPort" + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the route server peer.

", + "smithy.api#xmlName": "state" } }, - "IpProtocol": { + "FailureReason": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "IpProtocol", - "smithy.api#documentation": "

Not supported. Use a set of IP permissions to specify the protocol name or\n number.

", - "smithy.api#xmlName": "ipProtocol" + "aws.protocols#ec2QueryName": "FailureReason", + "smithy.api#documentation": "

The reason for any failure in peer creation or operation.

", + "smithy.api#xmlName": "failureReason" } }, - "ToPort": { - "target": "com.amazonaws.ec2#Integer", + "EndpointEniId": { + "target": "com.amazonaws.ec2#NetworkInterfaceId", "traits": { - "aws.protocols#ec2QueryName": "ToPort", - "smithy.api#documentation": "

Not supported. Use a set of IP permissions to specify the port.

", - "smithy.api#xmlName": "toPort" + "aws.protocols#ec2QueryName": "EndpointEniId", + "smithy.api#documentation": "

The ID of the Elastic network interface for the route server endpoint.

", + "smithy.api#xmlName": "endpointEniId" } }, - "SourceSecurityGroupName": { + "EndpointEniAddress": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SourceSecurityGroupName", - "smithy.api#documentation": "

Not supported. Use a set of IP permissions to specify a\n destination security group.

", - "smithy.api#xmlName": "sourceSecurityGroupName" + "aws.protocols#ec2QueryName": "EndpointEniAddress", + "smithy.api#documentation": "

The IP address of the Elastic network interface for the route server endpoint.

", + "smithy.api#xmlName": "endpointEniAddress" } }, - "SourceSecurityGroupOwnerId": { + "PeerAddress": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "SourceSecurityGroupOwnerId", - "smithy.api#documentation": "

Not supported. Use a set of IP permissions to specify a destination security\n group.

", - "smithy.api#xmlName": "sourceSecurityGroupOwnerId" + "aws.protocols#ec2QueryName": "PeerAddress", + "smithy.api#documentation": "

The IPv4 address of the peer device.

", + "smithy.api#xmlName": "peerAddress" + } + }, + "BgpOptions": { + "target": "com.amazonaws.ec2#RouteServerBgpOptions", + "traits": { + "aws.protocols#ec2QueryName": "BgpOptions", + "smithy.api#documentation": "

The BGP configuration options for this peer, including ASN (Autonomous System Number) and BFD (Bidrectional Forwarding Detection) settings.

", + "smithy.api#xmlName": "bgpOptions" + } + }, + "BgpStatus": { + "target": "com.amazonaws.ec2#RouteServerBgpStatus", + "traits": { + "aws.protocols#ec2QueryName": "BgpStatus", + "smithy.api#documentation": "

The current status of the BGP session with this peer.

", + "smithy.api#xmlName": "bgpStatus" + } + }, + "BfdStatus": { + "target": "com.amazonaws.ec2#RouteServerBfdStatus", + "traits": { + "aws.protocols#ec2QueryName": "BfdStatus", + "smithy.api#documentation": "

The current status of the BFD session with this peer.

", + "smithy.api#xmlName": "bfdStatus" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the route server peer.

", + "smithy.api#xmlName": "tagSet" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#documentation": "

Describes a BGP peer configuration for a route server endpoint.

\n

A route server peer is a session between a route server endpoint and the device deployed in Amazon Web Services (such as a firewall appliance or other network security function running on an EC2 instance). The device must meet these requirements:

\n " } }, - "com.amazonaws.ec2#RevokeSecurityGroupEgressResult": { - "type": "structure", + "com.amazonaws.ec2#RouteServerPeerId": { + "type": "string" + }, + "com.amazonaws.ec2#RouteServerPeerIdsList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#RouteServerPeerId" + } + }, + "com.amazonaws.ec2#RouteServerPeerLivenessMode": { + "type": "enum", "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + "BFD": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, returns an error.

", - "smithy.api#xmlName": "return" + "smithy.api#enumValue": "bfd" } }, - "UnknownIpPermissions": { - "target": "com.amazonaws.ec2#IpPermissionList", + "BGP_KEEPALIVE": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "UnknownIpPermissionSet", - "smithy.api#documentation": "

The outbound rules that were unknown to the service. In some cases,\n unknownIpPermissionSet might be in a different format from the request\n parameter.

", - "smithy.api#xmlName": "unknownIpPermissionSet" + "smithy.api#enumValue": "bgp-keepalive" } } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.ec2#RevokeSecurityGroupIngress": { - "type": "operation", - "input": { - "target": "com.amazonaws.ec2#RevokeSecurityGroupIngressRequest" - }, - "output": { - "target": "com.amazonaws.ec2#RevokeSecurityGroupIngressResult" - }, - "traits": { - "smithy.api#documentation": "

Removes the specified inbound (ingress) rules from a security group.

\n

You can specify rules using either rule IDs or security group rule properties. If you use\n rule properties, the values that you specify (for example, ports) must match the existing rule's \n values exactly. Each rule has a protocol, from and to ports, and source (CIDR range, \n security group, or prefix list). For the TCP and UDP protocols, you must also specify the \n destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type \n and code. If the security group rule has a description, you do not need to specify the description \n to revoke the rule.

\n

For a default VPC, if the values you specify do not match the existing rule's values,\n no error is returned, and the output describes the security group rules that were not\n revoked.

\n

For a non-default VPC, if the values you specify do not match the existing rule's\n values, an InvalidPermission.NotFound client error is returned, and no\n rules are revoked.

\n

Amazon Web Services recommends that you describe the security group to verify that the rules were removed.

\n

Rule changes are propagated to instances within the security group as quickly as possible. \n However, a small delay might occur.

" } }, - "com.amazonaws.ec2#RevokeSecurityGroupIngressRequest": { - "type": "structure", + "com.amazonaws.ec2#RouteServerPeerState": { + "type": "enum", "members": { - "CidrIp": { - "target": "com.amazonaws.ec2#String", + "PENDING": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The CIDR IP address range. You can't specify this parameter when specifying a source security group.

" + "smithy.api#enumValue": "pending" } }, - "FromPort": { - "target": "com.amazonaws.ec2#Integer", + "AVAILABLE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

If the protocol is TCP or UDP, this is the start of the port range.\n If the protocol is ICMP, this is the ICMP type or -1 (all ICMP types).

" + "smithy.api#enumValue": "available" } }, - "GroupId": { - "target": "com.amazonaws.ec2#SecurityGroupId", + "DELETING": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The ID of the security group.

" + "smithy.api#enumValue": "deleting" } }, - "GroupName": { - "target": "com.amazonaws.ec2#SecurityGroupName", + "DELETED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

[Default VPC] The name of the security group. You must specify either the\n security group ID or the security group name in the request. For security groups in a\n nondefault VPC, you must specify the security group ID.

" + "smithy.api#enumValue": "deleted" } }, - "IpPermissions": { - "target": "com.amazonaws.ec2#IpPermissionList", + "FAILING": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The sets of IP permissions. You can't specify a source security group and a CIDR IP address range in the same set of permissions.

" + "smithy.api#enumValue": "failing" } }, - "IpProtocol": { - "target": "com.amazonaws.ec2#String", + "FAILED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The IP protocol name (tcp, udp, icmp) or number \n (see Protocol Numbers). \n Use -1 to specify all.

" + "smithy.api#enumValue": "failed" + } + } + } + }, + "com.amazonaws.ec2#RouteServerPeersList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#RouteServerPeer", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#RouteServerPersistRoutesAction": { + "type": "enum", + "members": { + "ENABLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enable" } }, - "SourceSecurityGroupName": { - "target": "com.amazonaws.ec2#String", + "DISABLE": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

[Default VPC] The name of the source security group. You can't specify this parameter \n in combination with the following parameters: the CIDR IP address range, the start of the port range, \n the IP protocol, and the end of the port range. The source security group must be in the same VPC. \n To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.

" + "smithy.api#enumValue": "disable" } }, - "SourceSecurityGroupOwnerId": { - "target": "com.amazonaws.ec2#String", + "RESET": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Not supported.

" + "smithy.api#enumValue": "reset" + } + } + } + }, + "com.amazonaws.ec2#RouteServerPersistRoutesState": { + "type": "enum", + "members": { + "ENABLING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enabling" } }, - "ToPort": { - "target": "com.amazonaws.ec2#Integer", + "ENABLED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

If the protocol is TCP or UDP, this is the end of the port range.\n If the protocol is ICMP, this is the ICMP code or -1 (all ICMP codes).

" + "smithy.api#enumValue": "enabled" } }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", + "RESETTING": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" + "smithy.api#enumValue": "resetting" } }, - "SecurityGroupRuleIds": { - "target": "com.amazonaws.ec2#SecurityGroupRuleIdList", + "DISABLING": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The IDs of the security group rules.

", - "smithy.api#xmlName": "SecurityGroupRuleId" + "smithy.api#enumValue": "disabling" + } + }, + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disabled" + } + }, + "MODIFYING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "modifying" } } - }, - "traits": { - "smithy.api#input": {} } }, - "com.amazonaws.ec2#RevokeSecurityGroupIngressResult": { + "com.amazonaws.ec2#RouteServerPropagation": { "type": "structure", "members": { - "Return": { - "target": "com.amazonaws.ec2#Boolean", + "RouteServerId": { + "target": "com.amazonaws.ec2#RouteServerId", "traits": { - "aws.protocols#ec2QueryName": "Return", - "smithy.api#documentation": "

Returns true if the request succeeds; otherwise, returns an error.

", - "smithy.api#xmlName": "return" + "aws.protocols#ec2QueryName": "RouteServerId", + "smithy.api#documentation": "

The ID of the route server configured for route propagation.

", + "smithy.api#xmlName": "routeServerId" } }, - "UnknownIpPermissions": { - "target": "com.amazonaws.ec2#IpPermissionList", + "RouteTableId": { + "target": "com.amazonaws.ec2#RouteTableId", "traits": { - "aws.protocols#ec2QueryName": "UnknownIpPermissionSet", - "smithy.api#documentation": "

The inbound rules that were unknown to the service. In some cases,\n unknownIpPermissionSet might be in a different format from the request\n parameter.

", - "smithy.api#xmlName": "unknownIpPermissionSet" + "aws.protocols#ec2QueryName": "RouteTableId", + "smithy.api#documentation": "

The ID of the route table configured for route server propagation.

", + "smithy.api#xmlName": "routeTableId" + } + }, + "State": { + "target": "com.amazonaws.ec2#RouteServerPropagationState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of route propagation.

", + "smithy.api#xmlName": "state" } } }, "traits": { - "smithy.api#output": {} + "smithy.api#documentation": "

Describes the route propagation configuration between a route server and a route table.

\n

When enabled, route server propagation installs the routes in the FIB on the route table you've specified. Route server supports IPv4 and IPv6 route propagation.

" } }, - "com.amazonaws.ec2#RoleId": { - "type": "string" - }, - "com.amazonaws.ec2#RootDeviceType": { + "com.amazonaws.ec2#RouteServerPropagationState": { "type": "enum", "members": { - "ebs": { + "PENDING": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ebs" + "smithy.api#enumValue": "pending" } }, - "instance_store": { + "AVAILABLE": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "instance-store" + "smithy.api#enumValue": "available" + } + }, + "DELETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "deleting" } } } }, - "com.amazonaws.ec2#RootDeviceTypeList": { + "com.amazonaws.ec2#RouteServerPropagationsList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#RootDeviceType", + "target": "com.amazonaws.ec2#RouteServerPropagation", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#Route": { + "com.amazonaws.ec2#RouteServerRoute": { "type": "structure", "members": { - "DestinationCidrBlock": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "DestinationCidrBlock", - "smithy.api#documentation": "

The IPv4 CIDR block used for the destination match.

", - "smithy.api#xmlName": "destinationCidrBlock" - } - }, - "DestinationIpv6CidrBlock": { - "target": "com.amazonaws.ec2#String", + "RouteServerEndpointId": { + "target": "com.amazonaws.ec2#RouteServerEndpointId", "traits": { - "aws.protocols#ec2QueryName": "DestinationIpv6CidrBlock", - "smithy.api#documentation": "

The IPv6 CIDR block used for the destination match.

", - "smithy.api#xmlName": "destinationIpv6CidrBlock" + "aws.protocols#ec2QueryName": "RouteServerEndpointId", + "smithy.api#documentation": "

The ID of the route server endpoint that received this route.

", + "smithy.api#xmlName": "routeServerEndpointId" } }, - "DestinationPrefixListId": { - "target": "com.amazonaws.ec2#String", + "RouteServerPeerId": { + "target": "com.amazonaws.ec2#RouteServerPeerId", "traits": { - "aws.protocols#ec2QueryName": "DestinationPrefixListId", - "smithy.api#documentation": "

The prefix of the Amazon Web Service.

", - "smithy.api#xmlName": "destinationPrefixListId" + "aws.protocols#ec2QueryName": "RouteServerPeerId", + "smithy.api#documentation": "

The ID of the route server peer that advertised this route.

", + "smithy.api#xmlName": "routeServerPeerId" } }, - "EgressOnlyInternetGatewayId": { - "target": "com.amazonaws.ec2#String", + "RouteInstallationDetails": { + "target": "com.amazonaws.ec2#RouteServerRouteInstallationDetails", "traits": { - "aws.protocols#ec2QueryName": "EgressOnlyInternetGatewayId", - "smithy.api#documentation": "

The ID of the egress-only internet gateway.

", - "smithy.api#xmlName": "egressOnlyInternetGatewayId" + "aws.protocols#ec2QueryName": "RouteInstallationDetailSet", + "smithy.api#documentation": "

Details about the installation status of this route in route tables.

", + "smithy.api#xmlName": "routeInstallationDetailSet" } }, - "GatewayId": { - "target": "com.amazonaws.ec2#String", + "RouteStatus": { + "target": "com.amazonaws.ec2#RouteServerRouteStatus", "traits": { - "aws.protocols#ec2QueryName": "GatewayId", - "smithy.api#documentation": "

The ID of a gateway attached to your VPC.

", - "smithy.api#xmlName": "gatewayId" + "aws.protocols#ec2QueryName": "RouteStatus", + "smithy.api#documentation": "

The current status of the route in the routing database. Values are in-rib or in-fib depending on if the routes are in the RIB or the FIB database.

\n

The Routing Information Base (RIB) serves as a database that stores all the routing information and network topology data collected by a router or routing system, such as routes learned from BGP peers. The RIB is constantly updated as new routing information is received or existing routes change. This ensures that the route server always has the most current view of the network topology and can make optimal routing decisions.

\n

The Forwarding Information Base (FIB) serves as a forwarding table for what route server has determined are the best-path routes in the RIB after evaluating all available routing information and policies. The FIB routes are installed on the route tables. The FIB is recomputed whenever there are changes to the RIB.

", + "smithy.api#xmlName": "routeStatus" } }, - "InstanceId": { + "Prefix": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of a NAT instance in your VPC.

", - "smithy.api#xmlName": "instanceId" + "aws.protocols#ec2QueryName": "Prefix", + "smithy.api#documentation": "

The destination CIDR block of the route.

", + "smithy.api#xmlName": "prefix" } }, - "InstanceOwnerId": { - "target": "com.amazonaws.ec2#String", + "AsPaths": { + "target": "com.amazonaws.ec2#AsPath", "traits": { - "aws.protocols#ec2QueryName": "InstanceOwnerId", - "smithy.api#documentation": "

The ID of Amazon Web Services account that owns the instance.

", - "smithy.api#xmlName": "instanceOwnerId" + "aws.protocols#ec2QueryName": "AsPathSet", + "smithy.api#documentation": "

The AS path attributes of the BGP route.

", + "smithy.api#xmlName": "asPathSet" } }, - "NatGatewayId": { - "target": "com.amazonaws.ec2#String", + "Med": { + "target": "com.amazonaws.ec2#Integer", "traits": { - "aws.protocols#ec2QueryName": "NatGatewayId", - "smithy.api#documentation": "

The ID of a NAT gateway.

", - "smithy.api#xmlName": "natGatewayId" + "aws.protocols#ec2QueryName": "Med", + "smithy.api#documentation": "

The Multi-Exit Discriminator (MED) value of the BGP route.

", + "smithy.api#xmlName": "med" } }, - "TransitGatewayId": { + "NextHopIp": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "TransitGatewayId", - "smithy.api#documentation": "

The ID of a transit gateway.

", - "smithy.api#xmlName": "transitGatewayId" + "aws.protocols#ec2QueryName": "NextHopIp", + "smithy.api#documentation": "

The IP address for the next hop.

", + "smithy.api#xmlName": "nextHopIp" } - }, - "LocalGatewayId": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#documentation": "

Describes a route in the route server's routing database.

" + } + }, + "com.amazonaws.ec2#RouteServerRouteInstallationDetail": { + "type": "structure", + "members": { + "RouteTableId": { + "target": "com.amazonaws.ec2#RouteTableId", "traits": { - "aws.protocols#ec2QueryName": "LocalGatewayId", - "smithy.api#documentation": "

The ID of the local gateway.

", - "smithy.api#xmlName": "localGatewayId" + "aws.protocols#ec2QueryName": "RouteTableId", + "smithy.api#documentation": "

The ID of the route table where the route is being installed.

", + "smithy.api#xmlName": "routeTableId" } }, - "CarrierGatewayId": { - "target": "com.amazonaws.ec2#CarrierGatewayId", + "RouteInstallationStatus": { + "target": "com.amazonaws.ec2#RouteServerRouteInstallationStatus", "traits": { - "aws.protocols#ec2QueryName": "CarrierGatewayId", - "smithy.api#documentation": "

The ID of the carrier gateway.

", - "smithy.api#xmlName": "carrierGatewayId" + "aws.protocols#ec2QueryName": "RouteInstallationStatus", + "smithy.api#documentation": "

The current installation status of the route in the route table.

", + "smithy.api#xmlName": "routeInstallationStatus" } }, - "NetworkInterfaceId": { + "RouteInstallationStatusReason": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "NetworkInterfaceId", - "smithy.api#documentation": "

The ID of the network interface.

", - "smithy.api#xmlName": "networkInterfaceId" - } - }, - "Origin": { - "target": "com.amazonaws.ec2#RouteOrigin", - "traits": { - "aws.protocols#ec2QueryName": "Origin", - "smithy.api#documentation": "

Describes how the route was created.

\n ", - "smithy.api#xmlName": "origin" - } - }, - "State": { - "target": "com.amazonaws.ec2#RouteState", - "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the route. The blackhole state indicates that the\n\t\t\t\troute's target isn't available (for example, the specified gateway isn't attached to the\n\t\t\t\tVPC, or the specified NAT instance has been terminated).

", - "smithy.api#xmlName": "state" + "aws.protocols#ec2QueryName": "RouteInstallationStatusReason", + "smithy.api#documentation": "

The reason for the current installation status of the route.

", + "smithy.api#xmlName": "routeInstallationStatusReason" } - }, - "VpcPeeringConnectionId": { - "target": "com.amazonaws.ec2#String", + } + }, + "traits": { + "smithy.api#documentation": "

Describes the installation status of a route in a route table.

" + } + }, + "com.amazonaws.ec2#RouteServerRouteInstallationDetails": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#RouteServerRouteInstallationDetail", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#RouteServerRouteInstallationStatus": { + "type": "enum", + "members": { + "INSTALLED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "VpcPeeringConnectionId", - "smithy.api#documentation": "

The ID of a VPC peering connection.

", - "smithy.api#xmlName": "vpcPeeringConnectionId" + "smithy.api#enumValue": "installed" } }, - "CoreNetworkArn": { - "target": "com.amazonaws.ec2#CoreNetworkArn", + "REJECTED": { + "target": "smithy.api#Unit", "traits": { - "aws.protocols#ec2QueryName": "CoreNetworkArn", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the core network.

", - "smithy.api#xmlName": "coreNetworkArn" + "smithy.api#enumValue": "rejected" } } - }, - "traits": { - "smithy.api#documentation": "

Describes a route in a route table.

" } }, - "com.amazonaws.ec2#RouteGatewayId": { - "type": "string" - }, - "com.amazonaws.ec2#RouteList": { + "com.amazonaws.ec2#RouteServerRouteList": { "type": "list", "member": { - "target": "com.amazonaws.ec2#Route", + "target": "com.amazonaws.ec2#RouteServerRoute", "traits": { "smithy.api#xmlName": "item" } } }, - "com.amazonaws.ec2#RouteOrigin": { + "com.amazonaws.ec2#RouteServerRouteStatus": { "type": "enum", "members": { - "CreateRouteTable": { + "IN_RIB": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "CreateRouteTable" + "smithy.api#enumValue": "in-rib" } }, - "CreateRoute": { + "IN_FIB": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "CreateRoute" + "smithy.api#enumValue": "in-fib" + } + } + } + }, + "com.amazonaws.ec2#RouteServerState": { + "type": "enum", + "members": { + "PENDING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pending" } }, - "EnableVgwRoutePropagation": { + "AVAILABLE": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "EnableVgwRoutePropagation" + "smithy.api#enumValue": "available" + } + }, + "MODIFYING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "modifying" + } + }, + "DELETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "deleting" + } + }, + "DELETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "deleted" } } } }, + "com.amazonaws.ec2#RouteServersList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#RouteServer", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ec2#RouteState": { "type": "enum", "members": { @@ -91748,6 +105177,12 @@ "traits": { "smithy.api#enumValue": "blackhole" } + }, + "filtered": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "filtered" + } } } }, @@ -91758,7 +105193,7 @@ "target": "com.amazonaws.ec2#RouteTableAssociationList", "traits": { "aws.protocols#ec2QueryName": "AssociationSet", - "smithy.api#documentation": "

The associations between the route table and one or more subnets or a gateway.

", + "smithy.api#documentation": "

The associations between the route table and your subnets or gateways.

", "smithy.api#xmlName": "associationSet" } }, @@ -91858,6 +105293,14 @@ "smithy.api#xmlName": "gatewayId" } }, + "PublicIpv4Pool": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PublicIpv4Pool", + "smithy.api#documentation": "

The ID of a public IPv4 pool. A public IPv4 pool is a pool of IPv4 addresses that you've brought to Amazon Web Services with BYOIP.

", + "smithy.api#xmlName": "publicIpv4Pool" + } + }, "AssociationState": { "target": "com.amazonaws.ec2#RouteTableAssociationState", "traits": { @@ -92088,7 +105531,7 @@ "target": "com.amazonaws.ec2#Reservation" }, "traits": { - "smithy.api#documentation": "

Launches the specified number of instances using an AMI for which you have\n permissions.

\n

You can specify a number of options, or leave the default options. The following rules\n apply:

\n \n

You can create a launch template,\n which is a resource that contains the parameters to launch an instance. When you launch\n an instance using RunInstances, you can specify the launch template\n instead of specifying the launch parameters.

\n

To ensure faster instance launches, break up large requests into smaller batches. For\n example, create five separate launch requests for 100 instances each instead of one\n launch request for 500 instances.

\n

An instance is ready for you to use when it's in the running state. You\n can check the state of your instance using DescribeInstances. You can\n tag instances and EBS volumes during launch, after launch, or both. For more\n information, see CreateTags and Tagging your Amazon EC2\n resources.

\n

Linux instances have access to the public key of the key pair at boot. You can use\n this key to provide secure access to the instance. Amazon EC2 public images use this\n feature to provide secure access without passwords. For more information, see Key\n pairs.

\n

For troubleshooting, see What to do if\n an instance immediately terminates, and Troubleshooting connecting to your instance.

", + "smithy.api#documentation": "

Launches the specified number of instances using an AMI for which you have\n permissions.

\n

You can specify a number of options, or leave the default options. The following rules\n apply:

\n \n

You can create a launch template,\n which is a resource that contains the parameters to launch an instance. When you launch\n an instance using RunInstances, you can specify the launch template\n instead of specifying the launch parameters.

\n

To ensure faster instance launches, break up large requests into smaller batches. For\n example, create five separate launch requests for 100 instances each instead of one\n launch request for 500 instances.

\n

\n RunInstances is subject to both request rate limiting and resource rate\n limiting. For more information, see Request throttling.

\n

An instance is ready for you to use when it's in the running state. You\n can check the state of your instance using DescribeInstances. You can\n tag instances and EBS volumes during launch, after launch, or both. For more\n information, see CreateTags and Tagging your Amazon EC2\n resources.

\n

Linux instances have access to the public key of the key pair at boot. You can use\n this key to provide secure access to the instance. Amazon EC2 public images use this\n feature to provide secure access without passwords. For more information, see Key\n pairs.

\n

For troubleshooting, see What to do if\n an instance immediately terminates, and Troubleshooting connecting to your instance.

", "smithy.api#examples": [ { "title": "To launch an instance", @@ -92165,7 +105608,7 @@ "InstanceType": { "target": "com.amazonaws.ec2#InstanceType", "traits": { - "smithy.api#documentation": "

The instance type. For more information, see Instance types in the\n Amazon EC2 User Guide.

" + "smithy.api#documentation": "

The instance type. For more information, see Amazon EC2 Instance\n Types Guide.

" } }, "Ipv6AddressCount": { @@ -92190,14 +105633,14 @@ "KeyName": { "target": "com.amazonaws.ec2#KeyPairName", "traits": { - "smithy.api#documentation": "

The name of the key pair. You can create a key pair using CreateKeyPair or\n ImportKeyPair.

\n \n

If you do not specify a key pair, you can't connect to the instance unless you\n choose an AMI that is configured to allow users another way to log in.

\n
" + "smithy.api#documentation": "

The name of the key pair. For more information, see Create a key pair for your EC2 instance.

\n \n

If you do not specify a key pair, you can't connect to the instance unless you\n choose an AMI that is configured to allow users another way to log in.

\n
" } }, "MaxCount": { "target": "com.amazonaws.ec2#Integer", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The maximum number of instances to launch. If you specify more instances than Amazon\n EC2 can launch in the target Availability Zone, Amazon EC2 launches the largest possible\n number of instances above MinCount.

\n

Constraints: Between 1 and the maximum number you're allowed for the specified\n instance type. For more information about the default limits, and how to request an\n increase, see How many instances can I\n run in Amazon EC2 in the Amazon EC2 FAQ.

", + "smithy.api#documentation": "

The maximum number of instances to launch. If you specify a value that is more\n capacity than Amazon EC2 can launch in the target Availability Zone, Amazon EC2 \n launches the largest possible number of instances above the specified minimum\n count.

\n

Constraints: Between 1 and the quota for the specified instance type for your account for this Region. \n For more information, see Amazon EC2 instance type quotas.

", "smithy.api#required": {} } }, @@ -92205,7 +105648,7 @@ "target": "com.amazonaws.ec2#Integer", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The minimum number of instances to launch. If you specify a minimum that is more\n instances than Amazon EC2 can launch in the target Availability Zone, Amazon EC2\n launches no instances.

\n

Constraints: Between 1 and the maximum number you're allowed for the specified\n instance type. For more information about the default limits, and how to request an\n increase, see How many instances can I\n run in Amazon EC2 in the Amazon EC2 General FAQ.

", + "smithy.api#documentation": "

The minimum number of instances to launch. If you specify a value that is more\n capacity than Amazon EC2 can provide in the target Availability Zone, Amazon EC2 does\n not launch any instances.

\n

Constraints: Between 1 and the quota for the specified instance type for your account for this Region.\n For more information, see Amazon EC2 instance type quotas.

", "smithy.api#required": {} } }, @@ -92230,7 +105673,7 @@ "SecurityGroupIds": { "target": "com.amazonaws.ec2#SecurityGroupIdStringList", "traits": { - "smithy.api#documentation": "

The IDs of the security groups. You can create a security group using CreateSecurityGroup.

\n

If you specify a network interface, you must specify any security groups as part of\n the network interface instead of using this parameter.

", + "smithy.api#documentation": "

The IDs of the security groups.

\n

If you specify a network interface, you must specify any security groups as part of\n the network interface instead of using this parameter.

", "smithy.api#xmlName": "SecurityGroupId" } }, @@ -92250,92 +105693,27 @@ "UserData": { "target": "com.amazonaws.ec2#RunInstancesUserData", "traits": { - "smithy.api#documentation": "

The user data script to make available to the instance. For more information, see\n Run\n commands on your Linux instance at launch and Run commands on your\n Windows instance at launch. If you are using a command line tool,\n base64-encoding is performed for you, and you can load the text from a file. Otherwise,\n you must provide base64-encoded text. User data is limited to 16 KB.

" - } - }, - "AdditionalInfo": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "AdditionalInfo", - "smithy.api#documentation": "

Reserved.

", - "smithy.api#xmlName": "additionalInfo" - } - }, - "ClientToken": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "ClientToken", - "smithy.api#documentation": "

Unique, case-sensitive identifier you provide to ensure the idempotency of the\n request. If you do not specify a client token, a randomly generated token is used for\n the request to ensure idempotency.

\n

For more information, see Ensuring\n Idempotency.

\n

Constraints: Maximum 64 ASCII characters

", - "smithy.api#idempotencyToken": {}, - "smithy.api#xmlName": "clientToken" - } - }, - "DisableApiTermination": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DisableApiTermination", - "smithy.api#documentation": "

If you set this parameter to true, you can't terminate the instance using\n the Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute after\n launch, use ModifyInstanceAttribute. Alternatively, if you set\n InstanceInitiatedShutdownBehavior to terminate, you can\n terminate the instance by running the shutdown command from the instance.

\n

Default: false\n

", - "smithy.api#xmlName": "disableApiTermination" - } - }, - "DryRun": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", - "smithy.api#xmlName": "dryRun" - } - }, - "EbsOptimized": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "EbsOptimized", - "smithy.api#documentation": "

Indicates whether the instance is optimized for Amazon EBS I/O. This optimization\n provides dedicated throughput to Amazon EBS and an optimized configuration stack to\n provide optimal Amazon EBS I/O performance. This optimization isn't available with all\n instance types. Additional usage charges apply when using an EBS-optimized\n instance.

\n

Default: false\n

", - "smithy.api#xmlName": "ebsOptimized" - } - }, - "IamInstanceProfile": { - "target": "com.amazonaws.ec2#IamInstanceProfileSpecification", - "traits": { - "aws.protocols#ec2QueryName": "IamInstanceProfile", - "smithy.api#documentation": "

The name or Amazon Resource Name (ARN) of an IAM instance\n profile.

", - "smithy.api#xmlName": "iamInstanceProfile" - } - }, - "InstanceInitiatedShutdownBehavior": { - "target": "com.amazonaws.ec2#ShutdownBehavior", - "traits": { - "aws.protocols#ec2QueryName": "InstanceInitiatedShutdownBehavior", - "smithy.api#documentation": "

Indicates whether an instance stops or terminates when you initiate shutdown from the\n instance (using the operating system command for system shutdown).

\n

Default: stop\n

", - "smithy.api#xmlName": "instanceInitiatedShutdownBehavior" - } - }, - "NetworkInterfaces": { - "target": "com.amazonaws.ec2#InstanceNetworkInterfaceSpecificationList", - "traits": { - "aws.protocols#ec2QueryName": "NetworkInterface", - "smithy.api#documentation": "

The network interfaces to associate with the instance.

", - "smithy.api#xmlName": "networkInterface" - } - }, - "PrivateIpAddress": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "PrivateIpAddress", - "smithy.api#documentation": "

The primary IPv4 address. You must specify a value from the IPv4 address\n range of the subnet.

\n

Only one private IP address can be designated as primary. You can't specify this\n option if you've specified the option to designate a private IP address as the primary\n IP address in a network interface specification. You cannot specify this option if\n you're launching more than one instance in the request.

\n

You cannot specify this option and the network interfaces option in the same\n request.

", - "smithy.api#xmlName": "privateIpAddress" + "smithy.api#documentation": "

The user data to make available to the instance. User data must be base64-encoded.\n Depending on the tool or SDK that you're using, the base64-encoding might be performed for you.\n For more information, see Run commands at launch using instance user data.

" } }, "ElasticGpuSpecification": { "target": "com.amazonaws.ec2#ElasticGpuSpecifications", "traits": { + "smithy.api#deprecated": { + "since": "2024-01-08", + "message": "Specifying Elastic Graphics accelerators is no longer supported on the RunInstances API." + }, "smithy.api#documentation": "

An elastic GPU to associate with the instance.

\n \n

Amazon Elastic Graphics reached end of life on January 8, 2024.

\n
" } }, "ElasticInferenceAccelerators": { "target": "com.amazonaws.ec2#ElasticInferenceAccelerators", "traits": { - "smithy.api#documentation": "

An elastic inference accelerator to associate with the instance.

\n \n

Amazon Elastic Inference (EI) is no longer available to new customers. For more\n information, see Amazon Elastic Inference FAQs.

\n
", + "smithy.api#deprecated": { + "since": "2024-01-08", + "message": "Specifying Elastic Inference accelerators is no longer supported on the RunInstances API." + }, + "smithy.api#documentation": "

An elastic inference accelerator to associate with the instance.

\n \n

Amazon Elastic Inference is no longer available.

\n
", "smithy.api#xmlName": "ElasticInferenceAccelerator" } }, @@ -92373,13 +105751,13 @@ "CapacityReservationSpecification": { "target": "com.amazonaws.ec2#CapacityReservationSpecification", "traits": { - "smithy.api#documentation": "

Information about the Capacity Reservation targeting option. If you do not specify this parameter, the\n instance's Capacity Reservation preference defaults to open, which enables\n it to run in any open Capacity Reservation that has matching attributes (instance type,\n platform, Availability Zone).

" + "smithy.api#documentation": "

Information about the Capacity Reservation targeting option. If you do not specify this parameter, the\n instance's Capacity Reservation preference defaults to open, which enables\n it to run in any open Capacity Reservation that has matching attributes (instance type,\n platform, Availability Zone, and tenancy).

" } }, "HibernationOptions": { "target": "com.amazonaws.ec2#HibernationOptionsRequest", "traits": { - "smithy.api#documentation": "

Indicates whether an instance is enabled for hibernation. This parameter is valid only\n if the instance meets the hibernation\n prerequisites. For more information, see Hibernate your instance in the\n Amazon EC2 User Guide.

\n

You can't enable hibernation and Amazon Web Services Nitro Enclaves on the same\n instance.

" + "smithy.api#documentation": "

Indicates whether an instance is enabled for hibernation. This parameter is valid only\n if the instance meets the hibernation\n prerequisites. For more information, see Hibernate your Amazon EC2\n instance in the Amazon EC2 User Guide.

\n

You can't enable hibernation and Amazon Web Services Nitro Enclaves on the same\n instance.

" } }, "LicenseSpecifications": { @@ -92392,13 +105770,13 @@ "MetadataOptions": { "target": "com.amazonaws.ec2#InstanceMetadataOptionsRequest", "traits": { - "smithy.api#documentation": "

The metadata options for the instance. For more information, see Instance metadata and user data.

" + "smithy.api#documentation": "

The metadata options for the instance. For more information, see Configure the Instance Metadata Service options.

" } }, "EnclaveOptions": { "target": "com.amazonaws.ec2#EnclaveOptionsRequest", "traits": { - "smithy.api#documentation": "

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For\n more information, see What is Amazon Web Services Nitro\n Enclaves? in the Amazon Web Services Nitro Enclaves User\n Guide.

\n

You can't enable Amazon Web Services Nitro Enclaves and hibernation on the same\n instance.

" + "smithy.api#documentation": "

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For\n more information, see Amazon Web Services Nitro\n Enclaves User Guide.

\n

You can't enable Amazon Web Services Nitro Enclaves and hibernation on the same\n instance.

" } }, "PrivateDnsNameOptions": { @@ -92416,7 +105794,7 @@ "DisableApiStop": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Indicates whether an instance is enabled for stop protection. For more information,\n see Stop\n protection.

" + "smithy.api#documentation": "

Indicates whether an instance is enabled for stop protection. For more information,\n see Enable stop protection for your EC2 instances.

" } }, "EnablePrimaryIpv6": { @@ -92424,6 +105802,91 @@ "traits": { "smithy.api#documentation": "

If you’re launching an instance into a dual-stack or IPv6-only subnet, you can enable\n assigning a primary IPv6 address. A primary IPv6 address is an IPv6 GUA address\n associated with an ENI that you have enabled to use a primary IPv6 address. Use this\n option if an instance relies on its IPv6 address not changing. When you launch the\n instance, Amazon Web Services will automatically assign an IPv6 address associated with\n the ENI attached to your instance to be the primary IPv6 address. Once you enable an\n IPv6 GUA address to be a primary IPv6, you cannot disable it. When you enable an IPv6\n GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6\n address until the instance is terminated or the network interface is detached. If you\n have multiple IPv6 addresses associated with an ENI attached to your instance and you\n enable a primary IPv6 address, the first IPv6 GUA address associated with the ENI\n becomes the primary IPv6 address.

" } + }, + "NetworkPerformanceOptions": { + "target": "com.amazonaws.ec2#InstanceNetworkPerformanceOptionsRequest", + "traits": { + "smithy.api#documentation": "

Contains settings for the network performance options for the instance.

" + } + }, + "Operator": { + "target": "com.amazonaws.ec2#OperatorRequest", + "traits": { + "smithy.api#documentation": "

Reserved for internal use.

" + } + }, + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DryRun", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", + "smithy.api#xmlName": "dryRun" + } + }, + "DisableApiTermination": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DisableApiTermination", + "smithy.api#documentation": "

Indicates whether termination protection is enabled for the instance. The default\n is false, which means that you can terminate the instance using\n the Amazon EC2 console, command line tools, or API. You can enable termination protection\n when you launch an instance, while the instance is running, or while the instance\n is stopped.

", + "smithy.api#xmlName": "disableApiTermination" + } + }, + "InstanceInitiatedShutdownBehavior": { + "target": "com.amazonaws.ec2#ShutdownBehavior", + "traits": { + "aws.protocols#ec2QueryName": "InstanceInitiatedShutdownBehavior", + "smithy.api#documentation": "

Indicates whether an instance stops or terminates when you initiate shutdown from the\n instance (using the operating system command for system shutdown).

\n

Default: stop\n

", + "smithy.api#xmlName": "instanceInitiatedShutdownBehavior" + } + }, + "PrivateIpAddress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PrivateIpAddress", + "smithy.api#documentation": "

The primary IPv4 address. You must specify a value from the IPv4 address\n range of the subnet.

\n

Only one private IP address can be designated as primary. You can't specify this\n option if you've specified the option to designate a private IP address as the primary\n IP address in a network interface specification. You cannot specify this option if\n you're launching more than one instance in the request.

\n

You cannot specify this option and the network interfaces option in the same\n request.

", + "smithy.api#xmlName": "privateIpAddress" + } + }, + "ClientToken": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ClientToken", + "smithy.api#documentation": "

Unique, case-sensitive identifier you provide to ensure the idempotency of the\n request. If you do not specify a client token, a randomly generated token is used for\n the request to ensure idempotency.

\n

For more information, see Ensuring idempotency in Amazon EC2 API requests.

\n

Constraints: Maximum 64 ASCII characters

", + "smithy.api#idempotencyToken": {}, + "smithy.api#xmlName": "clientToken" + } + }, + "AdditionalInfo": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AdditionalInfo", + "smithy.api#documentation": "

Reserved.

", + "smithy.api#xmlName": "additionalInfo" + } + }, + "NetworkInterfaces": { + "target": "com.amazonaws.ec2#InstanceNetworkInterfaceSpecificationList", + "traits": { + "aws.protocols#ec2QueryName": "NetworkInterface", + "smithy.api#documentation": "

The network interfaces to associate with the instance.

", + "smithy.api#xmlName": "networkInterface" + } + }, + "IamInstanceProfile": { + "target": "com.amazonaws.ec2#IamInstanceProfileSpecification", + "traits": { + "aws.protocols#ec2QueryName": "IamInstanceProfile", + "smithy.api#documentation": "

The name or Amazon Resource Name (ARN) of an IAM instance\n profile.

", + "smithy.api#xmlName": "iamInstanceProfile" + } + }, + "EbsOptimized": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "EbsOptimized", + "smithy.api#documentation": "

Indicates whether the instance is optimized for Amazon EBS I/O. This optimization\n provides dedicated throughput to Amazon EBS and an optimized configuration stack to\n provide optimal Amazon EBS I/O performance. This optimization isn't available with all\n instance types. Additional usage charges apply when using an EBS-optimized\n instance.

\n

Default: false\n

", + "smithy.api#xmlName": "ebsOptimized" + } } }, "traits": { @@ -92445,7 +105908,7 @@ "target": "com.amazonaws.ec2#RunScheduledInstancesResult" }, "traits": { - "smithy.api#documentation": "

Launches the specified Scheduled Instances.

\n

Before you can launch a Scheduled Instance, you must purchase it and obtain an identifier using PurchaseScheduledInstances.

\n

You must launch a Scheduled Instance during its scheduled time period. You can't stop or reboot a Scheduled Instance, \n but you can terminate it as needed. If you terminate a Scheduled Instance before the current scheduled time period ends, \n you can launch it again after a few minutes. For more information, see Scheduled Instances\n in the Amazon EC2 User Guide.

" + "smithy.api#documentation": "

Launches the specified Scheduled Instances.

\n

Before you can launch a Scheduled Instance, you must purchase it and obtain an identifier using PurchaseScheduledInstances.

\n

You must launch a Scheduled Instance during its scheduled time period. You can't stop or\n reboot a Scheduled Instance, but you can terminate it as needed. If you terminate a\n Scheduled Instance before the current scheduled time period ends, you can launch it again\n after a few minutes.

" } }, "com.amazonaws.ec2#RunScheduledInstancesRequest": { @@ -92544,14 +106007,14 @@ "AWSAccessKeyId": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The access key ID of the owner of the bucket. Before you specify a value for your access\n key ID, review and follow the guidance in Best\n Practices for Amazon Web Services accounts in the Account ManagementReference\n Guide.

" + "smithy.api#documentation": "

The access key ID of the owner of the bucket. Before you specify a value for your access\n key ID, review and follow the guidance in Best Practices for Amazon Web Services\n accounts in the Account ManagementReference Guide.

" } }, "Bucket": { "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "Bucket", - "smithy.api#documentation": "

The bucket in which to store the AMI. You can specify a bucket that you already own or a new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone else, Amazon EC2 returns an error.

", + "smithy.api#documentation": "

The bucket in which to store the AMI. You can specify a bucket that you already own or a\n new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone\n else, Amazon EC2 returns an error.

", "smithy.api#xmlName": "bucket" } }, @@ -92567,7 +106030,7 @@ "target": "com.amazonaws.ec2#Blob", "traits": { "aws.protocols#ec2QueryName": "UploadPolicy", - "smithy.api#documentation": "

An Amazon S3 upload policy that gives Amazon EC2 permission to upload items into Amazon S3 on your behalf.

", + "smithy.api#documentation": "

An Amazon S3 upload policy that gives Amazon EC2 permission to upload items into Amazon S3 on your\n behalf.

", "smithy.api#xmlName": "uploadPolicy" } }, @@ -92581,7 +106044,7 @@ } }, "traits": { - "smithy.api#documentation": "

Describes the storage parameters for Amazon S3 and Amazon S3 buckets for an instance store-backed AMI.

" + "smithy.api#documentation": "

Describes the storage parameters for Amazon S3 and Amazon S3 buckets for an instance store-backed\n AMI.

" } }, "com.amazonaws.ec2#S3StorageUploadPolicySignature": { @@ -93593,38 +107056,6 @@ "com.amazonaws.ec2#SecurityGroup": { "type": "structure", "members": { - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "GroupDescription", - "smithy.api#documentation": "

A description of the security group.

", - "smithy.api#xmlName": "groupDescription" - } - }, - "GroupName": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "GroupName", - "smithy.api#documentation": "

The name of the security group.

", - "smithy.api#xmlName": "groupName" - } - }, - "IpPermissions": { - "target": "com.amazonaws.ec2#IpPermissionList", - "traits": { - "aws.protocols#ec2QueryName": "IpPermissions", - "smithy.api#documentation": "

The inbound rules associated with the security group.

", - "smithy.api#xmlName": "ipPermissions" - } - }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the security group.

", - "smithy.api#xmlName": "ownerId" - } - }, "GroupId": { "target": "com.amazonaws.ec2#String", "traits": { @@ -93656,6 +107087,46 @@ "smithy.api#documentation": "

The ID of the VPC for the security group.

", "smithy.api#xmlName": "vpcId" } + }, + "SecurityGroupArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "SecurityGroupArn", + "smithy.api#documentation": "

The ARN of the security group.

", + "smithy.api#xmlName": "securityGroupArn" + } + }, + "OwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the security group.

", + "smithy.api#xmlName": "ownerId" + } + }, + "GroupName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "GroupName", + "smithy.api#documentation": "

The name of the security group.

", + "smithy.api#xmlName": "groupName" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "GroupDescription", + "smithy.api#documentation": "

A description of the security group.

", + "smithy.api#xmlName": "groupDescription" + } + }, + "IpPermissions": { + "target": "com.amazonaws.ec2#IpPermissionList", + "traits": { + "aws.protocols#ec2QueryName": "IpPermissions", + "smithy.api#documentation": "

The inbound rules associated with the security group.

", + "smithy.api#xmlName": "ipPermissions" + } } }, "traits": { @@ -93831,7 +107302,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "VpcPeeringConnectionId", - "smithy.api#documentation": "

The ID of the VPC peering connection (if applicable). For more information about security group referencing for peering connections, see Update your security groups to reference peer security groups in the VPC Peering Guide.

", + "smithy.api#documentation": "

The ID of the VPC peering connection (if applicable). For more information about security group referencing for peering connections, see \n Update your security groups to reference peer security groups \n in the VPC Peering Guide.

", "smithy.api#xmlName": "vpcPeeringConnectionId" } }, @@ -93839,7 +107310,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "TransitGatewayId", - "smithy.api#documentation": "\n

This parameter is in preview and may not be available for your account.

\n
\n

The ID of the transit gateway (if applicable).

", + "smithy.api#documentation": "

The ID of the transit gateway (if applicable).

", "smithy.api#xmlName": "transitGatewayId" } } @@ -93980,6 +107451,14 @@ "smithy.api#documentation": "

The tags applied to the security group rule.

", "smithy.api#xmlName": "tagSet" } + }, + "SecurityGroupRuleArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "SecurityGroupRuleArn", + "smithy.api#documentation": "

The ARN of the security group rule.

", + "smithy.api#xmlName": "securityGroupRuleArn" + } } }, "traits": { @@ -94089,7 +107568,7 @@ } }, "traits": { - "smithy.api#documentation": "

Describes a security group rule.

\n

You must specify exactly one of the following parameters, based on the rule type:

\n \n

When you modify a rule, you cannot change the rule type. For example, if the rule \n uses an IPv4 address range, you must use CidrIpv4 to specify a new IPv4 \n address range.

" + "smithy.api#documentation": "

Describes a security group rule.

\n

You must specify exactly one of the following parameters, based on the rule type:

\n \n \n

\n Amazon Web Services canonicalizes IPv4 and IPv6 CIDRs. For example, if you specify 100.68.0.18/18 for the CIDR block, \n Amazon Web Services canonicalizes the CIDR block to 100.68.0.0/18. Any subsequent DescribeSecurityGroups and DescribeSecurityGroupRules calls will \n return the canonicalized form of the CIDR block. Additionally, if you attempt to add another rule with the \n non-canonical form of the CIDR (such as 100.68.0.18/18) and there is already a rule for the canonicalized \n form of the CIDR block (such as 100.68.0.0/18), the API throws an duplicate rule error.

\n
\n

When you modify a rule, you cannot change the rule type. For example, if the rule \n uses an IPv4 address range, you must use CidrIpv4 to specify a new IPv4 \n address range.

" } }, "com.amazonaws.ec2#SecurityGroupRuleUpdate": { @@ -94132,6 +107611,112 @@ } } }, + "com.amazonaws.ec2#SecurityGroupVpcAssociation": { + "type": "structure", + "members": { + "GroupId": { + "target": "com.amazonaws.ec2#SecurityGroupId", + "traits": { + "aws.protocols#ec2QueryName": "GroupId", + "smithy.api#documentation": "

The association's security group ID.

", + "smithy.api#xmlName": "groupId" + } + }, + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", + "traits": { + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The association's VPC ID.

", + "smithy.api#xmlName": "vpcId" + } + }, + "VpcOwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VpcOwnerId", + "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the VPC.

", + "smithy.api#xmlName": "vpcOwnerId" + } + }, + "State": { + "target": "com.amazonaws.ec2#SecurityGroupVpcAssociationState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The association's state.

", + "smithy.api#xmlName": "state" + } + }, + "StateReason": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "StateReason", + "smithy.api#documentation": "

The association's state reason.

", + "smithy.api#xmlName": "stateReason" + } + }, + "GroupOwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "GroupOwnerId", + "smithy.api#documentation": "

The Amazon Web Services account ID of the owner of the security group.

", + "smithy.api#xmlName": "groupOwnerId" + } + } + }, + "traits": { + "smithy.api#documentation": "

A security group association with a VPC that you made with AssociateSecurityGroupVpc.

" + } + }, + "com.amazonaws.ec2#SecurityGroupVpcAssociationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#SecurityGroupVpcAssociation", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#SecurityGroupVpcAssociationState": { + "type": "enum", + "members": { + "associating": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "associating" + } + }, + "associated": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "associated" + } + }, + "association_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "association-failed" + } + }, + "disassociating": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disassociating" + } + }, + "disassociated": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disassociated" + } + }, + "disassociation_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disassociation-failed" + } + } + } + }, "com.amazonaws.ec2#SelfServicePortal": { "type": "enum", "members": { @@ -94158,7 +107743,7 @@ "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Sends a diagnostic interrupt to the specified Amazon EC2 instance to trigger a\n kernel panic (on Linux instances), or a blue\n screen/stop error (on Windows instances). For\n instances based on Intel and AMD processors, the interrupt is received as a\n non-maskable interrupt (NMI).

\n

In general, the operating system crashes and reboots when a kernel panic or stop error\n is triggered. The operating system can also be configured to perform diagnostic tasks,\n such as generating a memory dump file, loading a secondary kernel, or obtaining a call\n trace.

\n

Before sending a diagnostic interrupt to your instance, ensure that its operating\n system is configured to perform the required diagnostic tasks.

\n

For more information about configuring your operating system to generate a crash dump\n when a kernel panic or stop error occurs, see Send a diagnostic interrupt\n (for advanced users) (Linux instances) or Send a diagnostic\n interrupt (for advanced users) (Windows instances).

" + "smithy.api#documentation": "

Sends a diagnostic interrupt to the specified Amazon EC2 instance to trigger a\n kernel panic (on Linux instances), or a blue\n screen/stop error (on Windows instances). For\n instances based on Intel and AMD processors, the interrupt is received as a\n non-maskable interrupt (NMI).

\n

In general, the operating system crashes and reboots when a kernel panic or stop error\n is triggered. The operating system can also be configured to perform diagnostic tasks,\n such as generating a memory dump file, loading a secondary kernel, or obtaining a call\n trace.

\n

Before sending a diagnostic interrupt to your instance, ensure that its operating\n system is configured to perform the required diagnostic tasks.

\n

For more information about configuring your operating system to generate a crash dump\n when a kernel panic or stop error occurs, see Send a diagnostic interrupt\n (for advanced users) in the Amazon EC2 User Guide.

" } }, "com.amazonaws.ec2#SendDiagnosticInterruptRequest": { @@ -94175,7 +107760,7 @@ "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

" } } }, @@ -94183,6 +107768,12 @@ "smithy.api#input": {} } }, + "com.amazonaws.ec2#SensitiveMacCredentials": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, "com.amazonaws.ec2#SensitiveUrl": { "type": "string", "traits": { @@ -94230,11 +107821,19 @@ "smithy.api#xmlName": "serviceState" } }, + "AvailabilityZoneIds": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "aws.protocols#ec2QueryName": "AvailabilityZoneIdSet", + "smithy.api#documentation": "

The IDs of the Availability Zones in which the service is available.

\n

Either AvailabilityZone or AvailabilityZoneId can be specified, but not both

", + "smithy.api#xmlName": "availabilityZoneIdSet" + } + }, "AvailabilityZones": { "target": "com.amazonaws.ec2#ValueStringList", "traits": { "aws.protocols#ec2QueryName": "AvailabilityZoneSet", - "smithy.api#documentation": "

The Availability Zones in which the service is available.

", + "smithy.api#documentation": "

The Availability Zones in which the service is available.

\n

Either AvailabilityZone or AvailabilityZoneId can be specified, but not both

", "smithy.api#xmlName": "availabilityZoneSet" } }, @@ -94317,6 +107916,22 @@ "smithy.api#documentation": "

The tags assigned to the service.

", "smithy.api#xmlName": "tagSet" } + }, + "SupportedRegions": { + "target": "com.amazonaws.ec2#SupportedRegionSet", + "traits": { + "aws.protocols#ec2QueryName": "SupportedRegionSet", + "smithy.api#documentation": "

The supported Regions.

", + "smithy.api#xmlName": "supportedRegionSet" + } + }, + "RemoteAccessEnabled": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "RemoteAccessEnabled", + "smithy.api#documentation": "

Indicates whether consumers can access the service from a Region other than the \n Region where the service is hosted.

", + "smithy.api#xmlName": "remoteAccessEnabled" + } } }, "traits": { @@ -94376,11 +107991,27 @@ "smithy.api#xmlName": "serviceType" } }, + "ServiceRegion": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ServiceRegion", + "smithy.api#documentation": "

The Region where the service is hosted.

", + "smithy.api#xmlName": "serviceRegion" + } + }, + "AvailabilityZoneIds": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "aws.protocols#ec2QueryName": "AvailabilityZoneIdSet", + "smithy.api#documentation": "

The IDs of the Availability Zones in which the service is available.

\n

Either AvailabilityZone or AvailabilityZoneId can be specified, but not both

", + "smithy.api#xmlName": "availabilityZoneIdSet" + } + }, "AvailabilityZones": { "target": "com.amazonaws.ec2#ValueStringList", "traits": { "aws.protocols#ec2QueryName": "AvailabilityZoneSet", - "smithy.api#documentation": "

The Availability Zones in which the service is available.

", + "smithy.api#documentation": "

The Availability Zones in which the service is available.

\n

Either AvailabilityZone or AvailabilityZoneId can be specified, but not both

", "smithy.api#xmlName": "availabilityZoneSet" } }, @@ -94486,6 +108117,195 @@ } } }, + "com.amazonaws.ec2#ServiceLinkMaxResults": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 5, + "max": 1000 + } + } + }, + "com.amazonaws.ec2#ServiceLinkVirtualInterface": { + "type": "structure", + "members": { + "ServiceLinkVirtualInterfaceId": { + "target": "com.amazonaws.ec2#ServiceLinkVirtualInterfaceId", + "traits": { + "aws.protocols#ec2QueryName": "ServiceLinkVirtualInterfaceId", + "smithy.api#documentation": "

The ID of the service link virtual interface.

", + "smithy.api#xmlName": "serviceLinkVirtualInterfaceId" + } + }, + "ServiceLinkVirtualInterfaceArn": { + "target": "com.amazonaws.ec2#ResourceArn", + "traits": { + "aws.protocols#ec2QueryName": "ServiceLinkVirtualInterfaceArn", + "smithy.api#documentation": "

The Amazon Resource Number (ARN) for the service link virtual interface.

", + "smithy.api#xmlName": "serviceLinkVirtualInterfaceArn" + } + }, + "OutpostId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OutpostId", + "smithy.api#documentation": "

The Outpost ID for the service link virtual interface.

", + "smithy.api#xmlName": "outpostId" + } + }, + "OutpostArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OutpostArn", + "smithy.api#documentation": "

The Outpost Amazon Resource Number (ARN) for the service link virtual interface.

", + "smithy.api#xmlName": "outpostArn" + } + }, + "OwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the service link virtual interface..

", + "smithy.api#xmlName": "ownerId" + } + }, + "LocalAddress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "LocalAddress", + "smithy.api#documentation": "

The IPv4 address assigned to the local gateway virtual interface on the Outpost side.

", + "smithy.api#xmlName": "localAddress" + } + }, + "PeerAddress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PeerAddress", + "smithy.api#documentation": "

The IPv4 peer address for the service link virtual interface.

", + "smithy.api#xmlName": "peerAddress" + } + }, + "PeerBgpAsn": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "aws.protocols#ec2QueryName": "PeerBgpAsn", + "smithy.api#documentation": "

The ASN for the Border Gateway Protocol (BGP) associated with the service link virtual interface.

", + "smithy.api#xmlName": "peerBgpAsn" + } + }, + "Vlan": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "Vlan", + "smithy.api#documentation": "

The virtual local area network for the service link virtual interface.

", + "smithy.api#xmlName": "vlan" + } + }, + "OutpostLagId": { + "target": "com.amazonaws.ec2#OutpostLagId", + "traits": { + "aws.protocols#ec2QueryName": "OutpostLagId", + "smithy.api#documentation": "

The link aggregation group (LAG) ID for the service link virtual interface.

", + "smithy.api#xmlName": "outpostLagId" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags associated with the service link virtual interface.

", + "smithy.api#xmlName": "tagSet" + } + }, + "ConfigurationState": { + "target": "com.amazonaws.ec2#ServiceLinkVirtualInterfaceConfigurationState", + "traits": { + "aws.protocols#ec2QueryName": "ConfigurationState", + "smithy.api#documentation": "

The current state of the service link virtual interface.

", + "smithy.api#xmlName": "configurationState" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the service link virtual interfaces that establish connectivity between Amazon Web Services Outpost and on-premises networks.

" + } + }, + "com.amazonaws.ec2#ServiceLinkVirtualInterfaceConfigurationState": { + "type": "enum", + "members": { + "pending": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pending" + } + }, + "available": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "available" + } + }, + "deleting": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "deleting" + } + }, + "deleted": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "deleted" + } + } + } + }, + "com.amazonaws.ec2#ServiceLinkVirtualInterfaceId": { + "type": "string" + }, + "com.amazonaws.ec2#ServiceLinkVirtualInterfaceIdSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ServiceLinkVirtualInterfaceId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ServiceLinkVirtualInterfaceSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#ServiceLinkVirtualInterface", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#ServiceManaged": { + "type": "enum", + "members": { + "alb": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "alb" + } + }, + "nlb": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "nlb" + } + }, + "rnat": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "rnat" + } + } + } + }, + "com.amazonaws.ec2#ServiceNetworkArn": { + "type": "string" + }, "com.amazonaws.ec2#ServiceState": { "type": "enum", "members": { @@ -94633,102 +108453,6 @@ "com.amazonaws.ec2#Snapshot": { "type": "structure", "members": { - "DataEncryptionKeyId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "DataEncryptionKeyId", - "smithy.api#documentation": "

The data encryption key identifier for the snapshot. This value is a unique identifier\n that corresponds to the data encryption key that was used to encrypt the original volume or\n snapshot copy. Because data encryption keys are inherited by volumes created from snapshots,\n and vice versa, if snapshots share the same data encryption key identifier, then they belong\n to the same volume/snapshot lineage. This parameter is only returned by DescribeSnapshots.

", - "smithy.api#xmlName": "dataEncryptionKeyId" - } - }, - "Description": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

The description for the snapshot.

", - "smithy.api#xmlName": "description" - } - }, - "Encrypted": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "Encrypted", - "smithy.api#documentation": "

Indicates whether the snapshot is encrypted.

", - "smithy.api#xmlName": "encrypted" - } - }, - "KmsKeyId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "KmsKeyId", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Key Management Service (KMS) KMS key that was used to protect the\n volume encryption key for the parent volume.

", - "smithy.api#xmlName": "kmsKeyId" - } - }, - "OwnerId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "OwnerId", - "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the EBS snapshot.

", - "smithy.api#xmlName": "ownerId" - } - }, - "Progress": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "Progress", - "smithy.api#documentation": "

The progress of the snapshot, as a percentage.

", - "smithy.api#xmlName": "progress" - } - }, - "SnapshotId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "SnapshotId", - "smithy.api#documentation": "

The ID of the snapshot. Each snapshot receives a unique identifier when it is\n created.

", - "smithy.api#xmlName": "snapshotId" - } - }, - "StartTime": { - "target": "com.amazonaws.ec2#DateTime", - "traits": { - "aws.protocols#ec2QueryName": "StartTime", - "smithy.api#documentation": "

The time stamp when the snapshot was initiated.

", - "smithy.api#xmlName": "startTime" - } - }, - "State": { - "target": "com.amazonaws.ec2#SnapshotState", - "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The snapshot state.

", - "smithy.api#xmlName": "status" - } - }, - "StateMessage": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "StatusMessage", - "smithy.api#documentation": "

Encrypted Amazon EBS snapshots are copied asynchronously. If a snapshot copy operation fails\n (for example, if the proper Key Management Service (KMS) permissions are not obtained) this field displays error\n state details to help you diagnose why the error occurred. This parameter is only returned by\n DescribeSnapshots.

", - "smithy.api#xmlName": "statusMessage" - } - }, - "VolumeId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "VolumeId", - "smithy.api#documentation": "

The ID of the volume that was used to create the snapshot. Snapshots created by the CopySnapshot action have an arbitrary volume ID that should not be used for any\n purpose.

", - "smithy.api#xmlName": "volumeId" - } - }, - "VolumeSize": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "VolumeSize", - "smithy.api#documentation": "

The size of the volume, in GiB.

", - "smithy.api#xmlName": "volumeSize" - } - }, "OwnerAlias": { "target": "com.amazonaws.ec2#String", "traits": { @@ -94776,6 +108500,142 @@ "smithy.api#documentation": "

Reserved for future use.

", "smithy.api#xmlName": "sseType" } + }, + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone or Local Zone of the snapshot. For example, us-west-1a \n (Availability Zone) or us-west-2-lax-1a (Local Zone).

", + "smithy.api#xmlName": "availabilityZone" + } + }, + "TransferType": { + "target": "com.amazonaws.ec2#TransferType", + "traits": { + "aws.protocols#ec2QueryName": "TransferType", + "smithy.api#documentation": "\n

Only for snapshot copies.

\n
\n

Indicates whether the snapshot copy was created with a standard or time-based \n snapshot copy operation. Time-based snapshot copy operations complete within the \n completion duration specified in the request. Standard snapshot copy operations \n are completed on a best-effort basis.

\n ", + "smithy.api#xmlName": "transferType" + } + }, + "CompletionDurationMinutes": { + "target": "com.amazonaws.ec2#SnapshotCompletionDurationMinutesResponse", + "traits": { + "aws.protocols#ec2QueryName": "CompletionDurationMinutes", + "smithy.api#documentation": "\n

Only for snapshot copies created with time-based snapshot copy operations.

\n
\n

The completion duration requested for the time-based snapshot copy operation.

", + "smithy.api#xmlName": "completionDurationMinutes" + } + }, + "CompletionTime": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "CompletionTime", + "smithy.api#documentation": "

The time stamp when the snapshot was completed.

", + "smithy.api#xmlName": "completionTime" + } + }, + "FullSnapshotSizeInBytes": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "aws.protocols#ec2QueryName": "FullSnapshotSizeInBytes", + "smithy.api#documentation": "

The full size of the snapshot, in bytes.

\n \n

This is not the incremental size of the snapshot. \n This is the full snapshot size and represents the size of all the blocks that were \n written to the source volume at the time the snapshot was created.

\n
", + "smithy.api#xmlName": "fullSnapshotSizeInBytes" + } + }, + "SnapshotId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The ID of the snapshot. Each snapshot receives a unique identifier when it is\n created.

", + "smithy.api#xmlName": "snapshotId" + } + }, + "VolumeId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VolumeId", + "smithy.api#documentation": "

The ID of the volume that was used to create the snapshot. Snapshots created by a copy\n snapshot operation have an arbitrary volume ID that you should not use for any purpose.

", + "smithy.api#xmlName": "volumeId" + } + }, + "State": { + "target": "com.amazonaws.ec2#SnapshotState", + "traits": { + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The snapshot state.

", + "smithy.api#xmlName": "status" + } + }, + "StateMessage": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "StatusMessage", + "smithy.api#documentation": "

Encrypted Amazon EBS snapshots are copied asynchronously. If a snapshot copy operation fails\n (for example, if the proper KMS permissions are not obtained) this field displays error\n state details to help you diagnose why the error occurred. This parameter is only returned by\n DescribeSnapshots.

", + "smithy.api#xmlName": "statusMessage" + } + }, + "StartTime": { + "target": "com.amazonaws.ec2#DateTime", + "traits": { + "aws.protocols#ec2QueryName": "StartTime", + "smithy.api#documentation": "

The time stamp when the snapshot was initiated.

", + "smithy.api#xmlName": "startTime" + } + }, + "Progress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Progress", + "smithy.api#documentation": "

The progress of the snapshot, as a percentage.

", + "smithy.api#xmlName": "progress" + } + }, + "OwnerId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "OwnerId", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the EBS snapshot.

", + "smithy.api#xmlName": "ownerId" + } + }, + "Description": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Description", + "smithy.api#documentation": "

The description for the snapshot.

", + "smithy.api#xmlName": "description" + } + }, + "VolumeSize": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "VolumeSize", + "smithy.api#documentation": "

The size of the volume, in GiB.

", + "smithy.api#xmlName": "volumeSize" + } + }, + "Encrypted": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Encrypted", + "smithy.api#documentation": "

Indicates whether the snapshot is encrypted.

", + "smithy.api#xmlName": "encrypted" + } + }, + "KmsKeyId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "KmsKeyId", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the KMS key that was used to protect the\n volume encryption key for the parent volume.

", + "smithy.api#xmlName": "kmsKeyId" + } + }, + "DataEncryptionKeyId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "DataEncryptionKeyId", + "smithy.api#documentation": "

The data encryption key identifier for the snapshot. This value is a unique identifier\n that corresponds to the data encryption key that was used to encrypt the original volume or\n snapshot copy. Because data encryption keys are inherited by volumes created from snapshots,\n and vice versa, if snapshots share the same data encryption key identifier, then they belong\n to the same volume/snapshot lineage. This parameter is only returned by DescribeSnapshots.

", + "smithy.api#xmlName": "dataEncryptionKeyId" + } } }, "traits": { @@ -94822,6 +108682,18 @@ } } }, + "com.amazonaws.ec2#SnapshotCompletionDurationMinutesRequest": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 2880 + } + } + }, + "com.amazonaws.ec2#SnapshotCompletionDurationMinutesResponse": { + "type": "integer" + }, "com.amazonaws.ec2#SnapshotDetail": { "type": "structure", "members": { @@ -95061,6 +108933,14 @@ "smithy.api#documentation": "

Reserved for future use.

", "smithy.api#xmlName": "sseType" } + }, + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone or Local Zone of the snapshots. For example, us-west-1a \n (Availability Zone) or us-west-2-lax-1a (Local Zone).

", + "smithy.api#xmlName": "availabilityZone" + } } }, "traits": { @@ -95076,6 +108956,23 @@ } } }, + "com.amazonaws.ec2#SnapshotLocationEnum": { + "type": "enum", + "members": { + "REGIONAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "regional" + } + }, + "LOCAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "local" + } + } + } + }, "com.amazonaws.ec2#SnapshotRecycleBinInfo": { "type": "structure", "members": { @@ -95091,7 +108988,7 @@ "target": "com.amazonaws.ec2#MillisecondDateTime", "traits": { "aws.protocols#ec2QueryName": "RecycleBinEnterTime", - "smithy.api#documentation": "

The date and time when the snaphsot entered the Recycle Bin.

", + "smithy.api#documentation": "

The date and time when the snapshot entered the Recycle Bin.

", "smithy.api#xmlName": "recycleBinEnterTime" } }, @@ -95133,6 +109030,41 @@ } } }, + "com.amazonaws.ec2#SnapshotReturnCodes": { + "type": "enum", + "members": { + "SUCCESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "success" + } + }, + "WARN_SKIPPED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "skipped" + } + }, + "ERROR_MISSING_PERMISSIONS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "missing-permissions" + } + }, + "ERROR_CODE_INTERNAL_ERROR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "internal-error" + } + }, + "ERROR_CODE_CLIENT_ERROR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "client-error" + } + } + } + }, "com.amazonaws.ec2#SnapshotSet": { "type": "list", "member": { @@ -95184,7 +109116,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "Description", - "smithy.api#documentation": "

The description of the snapshot.

", + "smithy.api#documentation": "

The description of the disk image being imported.

", "smithy.api#xmlName": "description" } }, @@ -95433,7 +109365,7 @@ } }, "traits": { - "smithy.api#documentation": "

The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your\n Spot Instance is at an elevated risk of being interrupted. For more information, see\n Capacity rebalancing in the Amazon EC2 User Guide for Linux Instances.

" + "smithy.api#documentation": "

The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your\n Spot Instance is at an elevated risk of being interrupted. For more information, see\n Capacity\n rebalancing in the Amazon EC2 User Guide.

" } }, "com.amazonaws.ec2#SpotDatafeedSubscription": { @@ -95487,14 +109419,6 @@ "com.amazonaws.ec2#SpotFleetLaunchSpecification": { "type": "structure", "members": { - "SecurityGroups": { - "target": "com.amazonaws.ec2#GroupIdentifierList", - "traits": { - "aws.protocols#ec2QueryName": "GroupSet", - "smithy.api#documentation": "

The security groups.

\n

If you specify a network interface, you must specify any security groups as part of\n the network interface instead of using this parameter.

", - "smithy.api#xmlName": "groupSet" - } - }, "AddressingType": { "target": "com.amazonaws.ec2#String", "traits": { @@ -95619,7 +109543,7 @@ "target": "com.amazonaws.ec2#Double", "traits": { "aws.protocols#ec2QueryName": "WeightedCapacity", - "smithy.api#documentation": "

The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms of instances, or a performance characteristic such as vCPUs, memory, or I/O.

\n

If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the number of instances to the next whole number. If this value is not specified, the default is 1.

", + "smithy.api#documentation": "

The number of units provided by the specified instance type. These are the same units\n that you chose to set the target capacity in terms of instances, or a performance\n characteristic such as vCPUs, memory, or I/O.

\n

If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the\n number of instances to the next whole number. If this value is not specified, the default\n is 1.

\n \n

When specifying weights, the price used in the lowestPrice and\n priceCapacityOptimized allocation strategies is per\n unit hour (where the instance price is divided by the specified\n weight). However, if all the specified weights are above the requested\n TargetCapacity, resulting in only 1 instance being launched, the price\n used is per instance hour.

\n
", "smithy.api#xmlName": "weightedCapacity" } }, @@ -95638,6 +109562,14 @@ "smithy.api#documentation": "

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will\n identify instance types with those attributes.

\n \n

If you specify InstanceRequirements, you can't specify\n InstanceType.

\n
", "smithy.api#xmlName": "instanceRequirements" } + }, + "SecurityGroups": { + "target": "com.amazonaws.ec2#GroupIdentifierList", + "traits": { + "aws.protocols#ec2QueryName": "GroupSet", + "smithy.api#documentation": "

The security groups.

\n

If you specify a network interface, you must specify any security groups as part of\n the network interface instead of using this parameter.

", + "smithy.api#xmlName": "groupSet" + } } }, "traits": { @@ -95723,7 +109655,7 @@ "target": "com.amazonaws.ec2#AllocationStrategy", "traits": { "aws.protocols#ec2QueryName": "AllocationStrategy", - "smithy.api#documentation": "

The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance\n pools specified by the Spot Fleet launch configuration. For more information, see Allocation\n strategies for Spot Instances in the Amazon EC2 User Guide.

\n
\n
priceCapacityOptimized (recommended)
\n
\n

Spot Fleet identifies the pools with \n the highest capacity availability for the number of instances that are launching. This means \n that we will request Spot Instances from the pools that we believe have the lowest chance of interruption \n in the near term. Spot Fleet then requests Spot Instances from the lowest priced of these pools.

\n
\n
capacityOptimized
\n
\n

Spot Fleet identifies the pools with \n the highest capacity availability for the number of instances that are launching. This means \n that we will request Spot Instances from the pools that we believe have the lowest chance of interruption \n in the near term. To give certain\n instance types a higher chance of launching first, use\n capacityOptimizedPrioritized. Set a priority for each instance type by\n using the Priority parameter for LaunchTemplateOverrides. You can\n assign the same priority to different LaunchTemplateOverrides. EC2 implements\n the priorities on a best-effort basis, but optimizes for capacity first.\n capacityOptimizedPrioritized is supported only if your Spot Fleet uses a\n launch template. Note that if the OnDemandAllocationStrategy is set to\n prioritized, the same priority is applied when fulfilling On-Demand\n capacity.

\n
\n
diversified
\n
\n

Spot Fleet requests instances from all of the Spot Instance pools that you\n specify.

\n
\n
lowestPrice
\n
\n

Spot Fleet requests instances from the lowest priced Spot Instance pool that\n has available capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances\n come from the next lowest priced pool that has available capacity. If a pool runs out of\n capacity before fulfilling your desired capacity, Spot Fleet will continue to fulfill your\n request by drawing from the next lowest priced pool. To ensure that your desired capacity is\n met, you might receive Spot Instances from several pools. Because this strategy only considers instance \n price and not capacity availability, it might lead to high interruption rates.

\n
\n
\n

Default: lowestPrice\n

", + "smithy.api#documentation": "

The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance\n pools specified by the Spot Fleet launch configuration. For more information, see Allocation\n strategies for Spot Instances in the Amazon EC2 User Guide.

\n
\n
priceCapacityOptimized (recommended)
\n
\n

Spot Fleet identifies the pools with \n the highest capacity availability for the number of instances that are launching. This means \n that we will request Spot Instances from the pools that we believe have the lowest chance of interruption \n in the near term. Spot Fleet then requests Spot Instances from the lowest priced of these pools.

\n
\n
capacityOptimized
\n
\n

Spot Fleet identifies the pools with \n the highest capacity availability for the number of instances that are launching. This means \n that we will request Spot Instances from the pools that we believe have the lowest chance of interruption \n in the near term. To give certain\n instance types a higher chance of launching first, use\n capacityOptimizedPrioritized. Set a priority for each instance type by\n using the Priority parameter for LaunchTemplateOverrides. You can\n assign the same priority to different LaunchTemplateOverrides. EC2 implements\n the priorities on a best-effort basis, but optimizes for capacity first.\n capacityOptimizedPrioritized is supported only if your Spot Fleet uses a\n launch template. Note that if the OnDemandAllocationStrategy is set to\n prioritized, the same priority is applied when fulfilling On-Demand\n capacity.

\n
\n
diversified
\n
\n

Spot Fleet requests instances from all of the Spot Instance pools that you\n specify.

\n
\n
lowestPrice (not recommended)
\n
\n \n

We don't recommend the lowestPrice allocation strategy because\n it has the highest risk of interruption for your Spot Instances.

\n
\n

Spot Fleet requests instances from the lowest priced Spot Instance pool that has available\n capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances\n come from the next lowest priced pool that has available capacity. If a pool runs\n out of capacity before fulfilling your desired capacity, Spot Fleet will continue to\n fulfill your request by drawing from the next lowest priced pool. To ensure that\n your desired capacity is met, you might receive Spot Instances from several pools. Because\n this strategy only considers instance price and not capacity availability, it\n might lead to high interruption rates.

\n
\n
\n

Default: lowestPrice\n

", "smithy.api#xmlName": "allocationStrategy" } }, @@ -95780,7 +109712,7 @@ "traits": { "aws.protocols#ec2QueryName": "IamFleetRole", "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Identity and Access Management (IAM) role that\n grants the Spot Fleet the permission to request, launch, terminate, and tag instances on\n your behalf. For more information, see Spot\n Fleet prerequisites in the Amazon EC2 User Guide. Spot Fleet\n can terminate Spot Instances on your behalf when you cancel its Spot Fleet request using\n CancelSpotFleetRequests or when the Spot Fleet request expires, if you set\n TerminateInstancesWithExpiration.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Identity and Access Management (IAM) role\n that grants the Spot Fleet the permission to request, launch, terminate, and tag instances\n on your behalf. For more information, see Spot\n Fleet prerequisites in the Amazon EC2 User Guide. Spot Fleet can\n terminate Spot Instances on your behalf when you cancel its Spot Fleet request using CancelSpotFleetRequests or when the Spot Fleet request expires, if you set\n TerminateInstancesWithExpiration.

", "smithy.api#required": {}, "smithy.api#xmlName": "iamFleetRole" } @@ -95831,7 +109763,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "OnDemandMaxTotalPrice", - "smithy.api#documentation": "

The maximum amount per hour for On-Demand Instances that you're willing to pay. You\n can use the onDemandMaxTotalPrice parameter, the\n spotMaxTotalPrice parameter, or both parameters to ensure that your\n fleet cost does not exceed your budget. If you set a maximum price per hour for the\n On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the\n maximum amount you're willing to pay. When the maximum amount you're willing to pay is\n reached, the fleet stops launching instances even if it hasn’t met the target\n capacity.

\n \n

If your fleet includes T instances that are configured as unlimited,\n and if their average CPU usage exceeds the baseline utilization, you will incur a charge\n for surplus credits. The onDemandMaxTotalPrice does not account for surplus\n credits, and, if you use surplus credits, your final cost might be higher than what you\n specified for onDemandMaxTotalPrice. For more information, see Surplus credits can incur charges in the EC2 User\n Guide.

\n
", + "smithy.api#documentation": "

The maximum amount per hour for On-Demand Instances that you're willing to pay. You\n can use the onDemandMaxTotalPrice parameter, the\n spotMaxTotalPrice parameter, or both parameters to ensure that your\n fleet cost does not exceed your budget. If you set a maximum price per hour for the\n On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the\n maximum amount you're willing to pay. When the maximum amount you're willing to pay is\n reached, the fleet stops launching instances even if it hasn’t met the target\n capacity.

\n \n

If your fleet includes T instances that are configured as unlimited,\n and if their average CPU usage exceeds the baseline utilization, you will incur a charge\n for surplus credits. The onDemandMaxTotalPrice does not account for surplus\n credits, and, if you use surplus credits, your final cost might be higher than what you\n specified for onDemandMaxTotalPrice. For more information, see Surplus credits can incur charges in the\n Amazon EC2 User Guide.

\n
", "smithy.api#xmlName": "onDemandMaxTotalPrice" } }, @@ -95839,7 +109771,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "SpotMaxTotalPrice", - "smithy.api#documentation": "

The maximum amount per hour for Spot Instances that you're willing to pay. You can use\n the spotMaxTotalPrice parameter, the onDemandMaxTotalPrice\n parameter, or both parameters to ensure that your fleet cost does not exceed your budget.\n If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will\n launch instances until it reaches the maximum amount you're willing to pay. When the\n maximum amount you're willing to pay is reached, the fleet stops launching instances even\n if it hasn’t met the target capacity.

\n \n

If your fleet includes T instances that are configured as unlimited,\n and if their average CPU usage exceeds the baseline utilization, you will incur a charge\n for surplus credits. The spotMaxTotalPrice does not account for surplus\n credits, and, if you use surplus credits, your final cost might be higher than what you\n specified for spotMaxTotalPrice. For more information, see Surplus credits can incur charges in the EC2 User\n Guide.

\n
", + "smithy.api#documentation": "

The maximum amount per hour for Spot Instances that you're willing to pay. You can use\n the spotMaxTotalPrice parameter, the onDemandMaxTotalPrice\n parameter, or both parameters to ensure that your fleet cost does not exceed your budget.\n If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will\n launch instances until it reaches the maximum amount you're willing to pay. When the\n maximum amount you're willing to pay is reached, the fleet stops launching instances even\n if it hasn’t met the target capacity.

\n \n

If your fleet includes T instances that are configured as unlimited,\n and if their average CPU usage exceeds the baseline utilization, you will incur a charge\n for surplus credits. The spotMaxTotalPrice does not account for surplus\n credits, and, if you use surplus credits, your final cost might be higher than what you\n specified for spotMaxTotalPrice. For more information, see Surplus credits can incur charges in the\n Amazon EC2 User Guide.

\n
", "smithy.api#xmlName": "spotMaxTotalPrice" } }, @@ -96083,10 +110015,18 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "LaunchedAvailabilityZone", - "smithy.api#documentation": "

The Availability Zone in which the request is launched.

", + "smithy.api#documentation": "

The Availability Zone in which the request is launched.

\n

Either launchedAvailabilityZone or launchedAvailabilityZoneId can be specified, but not both

", "smithy.api#xmlName": "launchedAvailabilityZone" } }, + "LaunchedAvailabilityZoneId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "LaunchedAvailabilityZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone in which the request is launched.

\n

Either launchedAvailabilityZone or launchedAvailabilityZoneId can be specified, but not both

", + "smithy.api#xmlName": "launchedAvailabilityZoneId" + } + }, "ProductDescription": { "target": "com.amazonaws.ec2#RIProductDescription", "traits": { @@ -96115,7 +110055,7 @@ "target": "com.amazonaws.ec2#SpotInstanceState", "traits": { "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The state of the Spot Instance request. Spot request status information helps track your Spot\n Instance requests. For more information, see Spot request status in the\n Amazon EC2 User Guide for Linux Instances.

", + "smithy.api#documentation": "

The state of the Spot Instance request. Spot request status information helps track your Spot\n Instance requests. For more information, see Spot request status in the\n Amazon EC2 User Guide.

", "smithy.api#xmlName": "state" } }, @@ -96265,7 +110205,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "Code", - "smithy.api#documentation": "

The status code. For a list of status codes, see Spot request status codes in the Amazon EC2 User Guide for Linux Instances.

", + "smithy.api#documentation": "

The status code. For a list of status codes, see Spot request status codes in the Amazon EC2 User Guide.

", "smithy.api#xmlName": "code" } }, @@ -96314,7 +110254,7 @@ "target": "com.amazonaws.ec2#SpotCapacityRebalance", "traits": { "aws.protocols#ec2QueryName": "CapacityRebalance", - "smithy.api#documentation": "

The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your\n Spot Instance is at an elevated risk of being interrupted. For more information, see\n Capacity rebalancing in the Amazon EC2 User Guide for Linux Instances.

", + "smithy.api#documentation": "

The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your\n Spot Instance is at an elevated risk of being interrupted. For more information, see\n Capacity\n rebalancing in the Amazon EC2 User Guide.

", "smithy.api#xmlName": "capacityRebalance" } } @@ -96329,7 +110269,7 @@ "MaxPrice": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The maximum hourly price that you're willing to pay for a Spot Instance. We do not\n recommend using this parameter because it can lead to increased interruptions. If you do\n not specify this parameter, you will pay the current Spot price.

\n \n

If you specify a maximum price, your Spot Instances will be interrupted more\n frequently than if you do not specify this parameter.

\n
" + "smithy.api#documentation": "

The maximum hourly price that you're willing to pay for a Spot Instance. We do not\n recommend using this parameter because it can lead to increased interruptions. If you do\n not specify this parameter, you will pay the current Spot price.

\n \n

If you specify a maximum price, your Spot Instances will be interrupted more\n frequently than if you do not specify this parameter.

\n

If you specify a maximum price, it must be more than USD $0.001. Specifying a value\n below USD $0.001 will result in an InvalidParameterValue error\n message.

\n
" } }, "SpotInstanceType": { @@ -96368,7 +110308,7 @@ "target": "com.amazonaws.ec2#SpotAllocationStrategy", "traits": { "aws.protocols#ec2QueryName": "AllocationStrategy", - "smithy.api#documentation": "

The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance\n pools specified by the EC2 Fleet launch configuration. For more information, see Allocation strategies for Spot Instances in the\n Amazon EC2 User Guide.

\n
\n
price-capacity-optimized (recommended)
\n
\n

EC2 Fleet identifies the pools with \n the highest capacity availability for the number of instances that are launching. This means \n that we will request Spot Instances from the pools that we believe have the lowest chance of interruption \n in the near term. EC2 Fleet then requests Spot Instances from the lowest priced of these pools.

\n
\n
capacity-optimized
\n
\n

EC2 Fleet identifies the pools with \n the highest capacity availability for the number of instances that are launching. This means \n that we will request Spot Instances from the pools that we believe have the lowest chance of interruption \n in the near term. To give certain\n instance types a higher chance of launching first, use\n capacity-optimized-prioritized. Set a priority for each instance type by\n using the Priority parameter for LaunchTemplateOverrides. You can\n assign the same priority to different LaunchTemplateOverrides. EC2 implements\n the priorities on a best-effort basis, but optimizes for capacity first.\n capacity-optimized-prioritized is supported only if your EC2 Fleet uses a\n launch template. Note that if the On-Demand AllocationStrategy is set to\n prioritized, the same priority is applied when fulfilling On-Demand\n capacity.

\n
\n
diversified
\n
\n

EC2 Fleet requests instances from all of the Spot Instance pools that you\n specify.

\n
\n
lowest-price
\n
\n

EC2 Fleet requests instances from the lowest priced Spot Instance pool that\n has available capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances\n come from the next lowest priced pool that has available capacity. If a pool runs out of\n capacity before fulfilling your desired capacity, EC2 Fleet will continue to fulfill your\n request by drawing from the next lowest priced pool. To ensure that your desired capacity is\n met, you might receive Spot Instances from several pools. Because this strategy only considers instance \n price and not capacity availability, it might lead to high interruption rates.

\n
\n
\n

Default: lowest-price\n

", + "smithy.api#documentation": "

The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance\n pools specified by the EC2 Fleet launch configuration. For more information, see Allocation strategies for Spot Instances in the\n Amazon EC2 User Guide.

\n
\n
price-capacity-optimized (recommended)
\n
\n

EC2 Fleet identifies the pools with \n the highest capacity availability for the number of instances that are launching. This means \n that we will request Spot Instances from the pools that we believe have the lowest chance of interruption \n in the near term. EC2 Fleet then requests Spot Instances from the lowest priced of these pools.

\n
\n
capacity-optimized
\n
\n

EC2 Fleet identifies the pools with \n the highest capacity availability for the number of instances that are launching. This means \n that we will request Spot Instances from the pools that we believe have the lowest chance of interruption \n in the near term. To give certain\n instance types a higher chance of launching first, use\n capacity-optimized-prioritized. Set a priority for each instance type by\n using the Priority parameter for LaunchTemplateOverrides. You can\n assign the same priority to different LaunchTemplateOverrides. EC2 implements\n the priorities on a best-effort basis, but optimizes for capacity first.\n capacity-optimized-prioritized is supported only if your EC2 Fleet uses a\n launch template. Note that if the On-Demand AllocationStrategy is set to\n prioritized, the same priority is applied when fulfilling On-Demand\n capacity.

\n
\n
diversified
\n
\n

EC2 Fleet requests instances from all of the Spot Instance pools that you\n specify.

\n
\n
lowest-price (not recommended)
\n
\n \n

We don't recommend the lowest-price allocation strategy because\n it has the highest risk of interruption for your Spot Instances.

\n
\n

EC2 Fleet requests instances from the lowest priced Spot Instance pool that has available\n capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances\n come from the next lowest priced pool that has available capacity. If a pool runs\n out of capacity before fulfilling your desired capacity, EC2 Fleet will continue to\n fulfill your request by drawing from the next lowest priced pool. To ensure that\n your desired capacity is met, you might receive Spot Instances from several pools. Because\n this strategy only considers instance price and not capacity availability, it\n might lead to high interruption rates.

\n
\n
\n

Default: lowest-price\n

", "smithy.api#xmlName": "allocationStrategy" } }, @@ -96416,7 +110356,7 @@ "target": "com.amazonaws.ec2#Integer", "traits": { "aws.protocols#ec2QueryName": "MinTargetCapacity", - "smithy.api#documentation": "

The minimum target capacity for Spot Instances in the fleet. If the minimum target capacity is\n not reached, the fleet launches no instances.

\n

Supported only for fleets of type instant.

\n

At least one of the following must be specified: SingleAvailabilityZone |\n SingleInstanceType\n

", + "smithy.api#documentation": "

The minimum target capacity for Spot Instances in the fleet. If this minimum capacity isn't\n reached, no instances are launched.

\n

Constraints: Maximum value of 1000. Supported only for fleets of type\n instant.

\n

At least one of the following must be specified: SingleAvailabilityZone |\n SingleInstanceType\n

", "smithy.api#xmlName": "minTargetCapacity" } }, @@ -96424,7 +110364,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "MaxTotalPrice", - "smithy.api#documentation": "

The maximum amount per hour for Spot Instances that you're willing to pay. We do not recommend\n using this parameter because it can lead to increased interruptions. If you do not specify\n this parameter, you will pay the current Spot price.

\n \n

If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.

\n
\n \n

If your fleet includes T instances that are configured as unlimited,\n and if their average CPU usage exceeds the baseline utilization, you will incur a charge\n for surplus credits. The maxTotalPrice does not account for surplus\n credits, and, if you use surplus credits, your final cost might be higher than what you\n specified for maxTotalPrice. For more information, see Surplus credits can incur charges in the EC2 User\n Guide.

\n
", + "smithy.api#documentation": "

The maximum amount per hour for Spot Instances that you're willing to pay. We do not recommend\n using this parameter because it can lead to increased interruptions. If you do not specify\n this parameter, you will pay the current Spot price.

\n \n

If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.

\n
\n \n

If your fleet includes T instances that are configured as unlimited, and\n if their average CPU usage exceeds the baseline utilization, you will incur a charge for\n surplus credits. The maxTotalPrice does not account for surplus credits,\n and, if you use surplus credits, your final cost might be higher than what you specified\n for maxTotalPrice. For more information, see Surplus credits can incur charges in the\n Amazon EC2 User Guide.

\n
", "smithy.api#xmlName": "maxTotalPrice" } } @@ -96439,7 +110379,7 @@ "AllocationStrategy": { "target": "com.amazonaws.ec2#SpotAllocationStrategy", "traits": { - "smithy.api#documentation": "

The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance\n pools specified by the EC2 Fleet launch configuration. For more information, see Allocation strategies for Spot Instances in the\n Amazon EC2 User Guide.

\n
\n
price-capacity-optimized (recommended)
\n
\n

EC2 Fleet identifies the pools with \n the highest capacity availability for the number of instances that are launching. This means \n that we will request Spot Instances from the pools that we believe have the lowest chance of interruption \n in the near term. EC2 Fleet then requests Spot Instances from the lowest priced of these pools.

\n
\n
capacity-optimized
\n
\n

EC2 Fleet identifies the pools with \n the highest capacity availability for the number of instances that are launching. This means \n that we will request Spot Instances from the pools that we believe have the lowest chance of interruption \n in the near term. To give certain\n instance types a higher chance of launching first, use\n capacity-optimized-prioritized. Set a priority for each instance type by\n using the Priority parameter for LaunchTemplateOverrides. You can\n assign the same priority to different LaunchTemplateOverrides. EC2 implements\n the priorities on a best-effort basis, but optimizes for capacity first.\n capacity-optimized-prioritized is supported only if your EC2 Fleet uses a\n launch template. Note that if the On-Demand AllocationStrategy is set to\n prioritized, the same priority is applied when fulfilling On-Demand\n capacity.

\n
\n
diversified
\n
\n

EC2 Fleet requests instances from all of the Spot Instance pools that you\n specify.

\n
\n
lowest-price
\n
\n

EC2 Fleet requests instances from the lowest priced Spot Instance pool that\n has available capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances\n come from the next lowest priced pool that has available capacity. If a pool runs out of\n capacity before fulfilling your desired capacity, EC2 Fleet will continue to fulfill your\n request by drawing from the next lowest priced pool. To ensure that your desired capacity is\n met, you might receive Spot Instances from several pools. Because this strategy only considers instance \n price and not capacity availability, it might lead to high interruption rates.

\n
\n
\n

Default: lowest-price\n

" + "smithy.api#documentation": "

The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance\n pools specified by the EC2 Fleet launch configuration. For more information, see Allocation strategies for Spot Instances in the\n Amazon EC2 User Guide.

\n
\n
price-capacity-optimized (recommended)
\n
\n

EC2 Fleet identifies the pools with \n the highest capacity availability for the number of instances that are launching. This means \n that we will request Spot Instances from the pools that we believe have the lowest chance of interruption \n in the near term. EC2 Fleet then requests Spot Instances from the lowest priced of these pools.

\n
\n
capacity-optimized
\n
\n

EC2 Fleet identifies the pools with \n the highest capacity availability for the number of instances that are launching. This means \n that we will request Spot Instances from the pools that we believe have the lowest chance of interruption \n in the near term. To give certain\n instance types a higher chance of launching first, use\n capacity-optimized-prioritized. Set a priority for each instance type by\n using the Priority parameter for LaunchTemplateOverrides. You can\n assign the same priority to different LaunchTemplateOverrides. EC2 implements\n the priorities on a best-effort basis, but optimizes for capacity first.\n capacity-optimized-prioritized is supported only if your EC2 Fleet uses a\n launch template. Note that if the On-Demand AllocationStrategy is set to\n prioritized, the same priority is applied when fulfilling On-Demand\n capacity.

\n
\n
diversified
\n
\n

EC2 Fleet requests instances from all of the Spot Instance pools that you\n specify.

\n
\n
lowest-price (not recommended)
\n
\n \n

We don't recommend the lowest-price allocation strategy because\n it has the highest risk of interruption for your Spot Instances.

\n
\n

EC2 Fleet requests instances from the lowest priced Spot Instance pool that\n has available capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances\n come from the next lowest priced pool that has available capacity. If a pool runs out of\n capacity before fulfilling your desired capacity, EC2 Fleet will continue to fulfill your\n request by drawing from the next lowest priced pool. To ensure that your desired capacity is\n met, you might receive Spot Instances from several pools. Because this strategy only considers instance \n price and not capacity availability, it might lead to high interruption rates.

\n
\n
\n

Default: lowest-price\n

" } }, "MaintenanceStrategies": { @@ -96475,13 +110415,13 @@ "MinTargetCapacity": { "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The minimum target capacity for Spot Instances in the fleet. If the minimum target capacity is\n not reached, the fleet launches no instances.

\n

Supported only for fleets of type instant.

\n

At least one of the following must be specified: SingleAvailabilityZone |\n SingleInstanceType\n

" + "smithy.api#documentation": "

The minimum target capacity for Spot Instances in the fleet. If this minimum capacity isn't\n reached, no instances are launched.

\n

Constraints: Maximum value of 1000. Supported only for fleets of type\n instant.

\n

At least one of the following must be specified: SingleAvailabilityZone |\n SingleInstanceType\n

" } }, "MaxTotalPrice": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The maximum amount per hour for Spot Instances that you're willing to pay. We do not recommend\n using this parameter because it can lead to increased interruptions. If you do not specify\n this parameter, you will pay the current Spot price.

\n \n

If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.

\n
\n \n

If your fleet includes T instances that are configured as unlimited,\n and if their average CPU usage exceeds the baseline utilization, you will incur a charge\n for surplus credits. The MaxTotalPrice does not account for surplus\n credits, and, if you use surplus credits, your final cost might be higher than what you\n specified for MaxTotalPrice. For more information, see Surplus credits can incur charges in the EC2 User\n Guide.

\n
" + "smithy.api#documentation": "

The maximum amount per hour for Spot Instances that you're willing to pay. We do not recommend\n using this parameter because it can lead to increased interruptions. If you do not specify\n this parameter, you will pay the current Spot price.

\n \n

If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.

\n
\n \n

If your fleet includes T instances that are configured as unlimited, and\n if their average CPU usage exceeds the baseline utilization, you will incur a charge for\n surplus credits. The MaxTotalPrice does not account for surplus credits,\n and, if you use surplus credits, your final cost might be higher than what you specified\n for MaxTotalPrice. For more information, see Surplus credits can incur charges in the\n Amazon EC2 User Guide.

\n
" } } }, @@ -96591,6 +110531,14 @@ "smithy.api#xmlName": "availabilityZone" } }, + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone.

", + "smithy.api#xmlName": "availabilityZoneId" + } + }, "InstanceType": { "target": "com.amazonaws.ec2#InstanceType", "traits": { @@ -96784,6 +110732,77 @@ } } }, + "com.amazonaws.ec2#StartDeclarativePoliciesReport": { + "type": "operation", + "input": { + "target": "com.amazonaws.ec2#StartDeclarativePoliciesReportRequest" + }, + "output": { + "target": "com.amazonaws.ec2#StartDeclarativePoliciesReportResult" + }, + "traits": { + "smithy.api#documentation": "

Generates an account status report. The report is generated asynchronously, and can\n take several hours to complete.

\n

The report provides the current status of all attributes supported by declarative\n policies for the accounts within the specified scope. The scope is determined by the\n specified TargetId, which can represent an individual account, or all the\n accounts that fall under the specified organizational unit (OU) or root (the entire\n Amazon Web Services Organization).

\n

The report is saved to your specified S3 bucket, using the following path structure\n (with the capitalized placeholders representing your specific values):

\n

\n s3://AMZN-S3-DEMO-BUCKET/YOUR-OPTIONAL-S3-PREFIX/ec2_TARGETID_REPORTID_YYYYMMDDTHHMMZ.csv\n

\n

\n Prerequisites for generating a report\n

\n \n

For more information, including the required IAM permissions to run this API, see\n Generating the account status report for declarative policies in the\n Amazon Web Services Organizations User Guide.

" + } + }, + "com.amazonaws.ec2#StartDeclarativePoliciesReportRequest": { + "type": "structure", + "members": { + "DryRun": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

" + } + }, + "S3Bucket": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The name of the S3 bucket where the report will be saved. The bucket must be in the\n same Region where the report generation request is made.

", + "smithy.api#required": {} + } + }, + "S3Prefix": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#documentation": "

The prefix for your S3 object.

" + } + }, + "TargetId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

The root ID, organizational unit ID, or account ID.

\n

Format:

\n ", + "smithy.api#required": {} + } + }, + "TagSpecifications": { + "target": "com.amazonaws.ec2#TagSpecificationList", + "traits": { + "smithy.api#documentation": "

The tags to apply.

", + "smithy.api#xmlName": "TagSpecification" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ec2#StartDeclarativePoliciesReportResult": { + "type": "structure", + "members": { + "ReportId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ReportId", + "smithy.api#documentation": "

The ID of the report.

", + "smithy.api#xmlName": "reportId" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ec2#StartInstances": { "type": "operation", "input": { @@ -96793,7 +110812,7 @@ "target": "com.amazonaws.ec2#StartInstancesResult" }, "traits": { - "smithy.api#documentation": "

Starts an Amazon EBS-backed instance that you've previously stopped.

\n

Instances that use Amazon EBS volumes as their root devices can be quickly stopped and\n started. When an instance is stopped, the compute resources are released and you are not\n billed for instance usage. However, your root partition Amazon EBS volume remains and\n continues to persist your data, and you are charged for Amazon EBS volume usage. You can\n restart your instance at any time. Every time you start your instance, Amazon EC2\n charges a one-minute minimum for instance usage, and thereafter charges per second for\n instance usage.

\n

Before stopping an instance, make sure it is in a state from which it can be\n restarted. Stopping an instance does not preserve data stored in RAM.

\n

Performing this operation on an instance that uses an instance store as its root\n device returns an error.

\n

If you attempt to start a T3 instance with host tenancy and the\n unlimited CPU credit option, the request fails. The\n unlimited CPU credit option is not supported on Dedicated Hosts. Before\n you start the instance, either change its CPU credit option to standard, or\n change its tenancy to default or dedicated.

\n

For more information, see Stop and start your instance\n in the Amazon EC2 User Guide.

", + "smithy.api#documentation": "

Starts an Amazon EBS-backed instance that you've previously stopped.

\n

Instances that use Amazon EBS volumes as their root devices can be quickly stopped and\n started. When an instance is stopped, the compute resources are released and you are not\n billed for instance usage. However, your root partition Amazon EBS volume remains and\n continues to persist your data, and you are charged for Amazon EBS volume usage. You can\n restart your instance at any time. Every time you start your instance, Amazon EC2\n charges a one-minute minimum for instance usage, and thereafter charges per second for\n instance usage.

\n

Before stopping an instance, make sure it is in a state from which it can be\n restarted. Stopping an instance does not preserve data stored in RAM.

\n

Performing this operation on an instance that uses an instance store as its root\n device returns an error.

\n

If you attempt to start a T3 instance with host tenancy and the\n unlimited CPU credit option, the request fails. The\n unlimited CPU credit option is not supported on Dedicated Hosts. Before\n you start the instance, either change its CPU credit option to standard, or\n change its tenancy to default or dedicated.

\n

For more information, see Stop and start Amazon EC2\n instances in the Amazon EC2 User Guide.

", "smithy.api#examples": [ { "title": "To start a stopped EC2 instance", @@ -96846,7 +110865,7 @@ "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } } @@ -96911,7 +110930,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, \n see How to ensure idempotency.

", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, \n see How to ensure idempotency.

", "smithy.api#idempotencyToken": {}, "smithy.api#required": {} } @@ -96974,6 +110993,13 @@ "smithy.api#xmlName": "FilterInArn" } }, + "FilterOutArns": { + "target": "com.amazonaws.ec2#ArnList", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Names (ARN) of the resources that the path will ignore.

", + "smithy.api#xmlName": "FilterOutArn" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { @@ -96991,7 +111017,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "smithy.api#clientOptional": {}, - "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, \n see How to ensure idempotency.

", + "smithy.api#documentation": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, \n see How to ensure idempotency.

", "smithy.api#idempotencyToken": {}, "smithy.api#required": {} } @@ -97117,6 +111143,12 @@ "traits": { "smithy.api#enumValue": "Expired" } + }, + "Partial": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Partial" + } } } }, @@ -97244,7 +111276,7 @@ "target": "com.amazonaws.ec2#StopInstancesResult" }, "traits": { - "smithy.api#documentation": "

Stops an Amazon EBS-backed instance. For more information, see Stop and start\n your instance in the Amazon EC2 User Guide.

\n

You can use the Stop action to hibernate an instance if the instance is enabled for\n hibernation and it meets the hibernation\n prerequisites. For more information, see Hibernate your instance in the\n Amazon EC2 User Guide.

\n

We don't charge usage for a stopped instance, or data transfer fees; however, your\n root partition Amazon EBS volume remains and continues to persist your data, and you are\n charged for Amazon EBS volume usage. Every time you start your instance, Amazon EC2\n charges a one-minute minimum for instance usage, and thereafter charges per second for\n instance usage.

\n

You can't stop or hibernate instance store-backed instances. You can't use the Stop\n action to hibernate Spot Instances, but you can specify that Amazon EC2 should hibernate\n Spot Instances when they are interrupted. For more information, see Hibernating interrupted Spot Instances in the\n Amazon EC2 User Guide.

\n

When you stop or hibernate an instance, we shut it down. You can restart your instance\n at any time. Before stopping or hibernating an instance, make sure it is in a state from\n which it can be restarted. Stopping an instance does not preserve data stored in RAM,\n but hibernating an instance does preserve data stored in RAM. If an instance cannot\n hibernate successfully, a normal shutdown occurs.

\n

Stopping and hibernating an instance is different to rebooting or terminating it. For\n example, when you stop or hibernate an instance, the root device and any other devices\n attached to the instance persist. When you terminate an instance, the root device and\n any other devices attached during the instance launch are automatically deleted. For\n more information about the differences between rebooting, stopping, hibernating, and\n terminating instances, see Instance lifecycle\n in the Amazon EC2 User Guide.

\n

When you stop an instance, we attempt to shut it down forcibly after a short while. If\n your instance appears stuck in the stopping state after a period of time, there may be\n an issue with the underlying host computer. For more information, see Troubleshoot\n stopping your instance in the Amazon EC2 User Guide.

", + "smithy.api#documentation": "

Stops an Amazon EBS-backed instance. You can restart your instance at any time using\n the StartInstances API. For more information, see Stop and start Amazon EC2\n instances in the Amazon EC2 User Guide.

\n

When you stop or hibernate an instance, we shut it down. By default, this includes a\n graceful operating system (OS) shutdown. To bypass the graceful shutdown, use the\n skipOsShutdown parameter; however, this might risk data\n integrity.

\n

You can use the StopInstances operation together with the Hibernate\n parameter to hibernate an instance if the instance is enabled for\n hibernation and meets the hibernation\n prerequisites. Stopping an instance doesn't preserve data stored in RAM,\n while hibernation does. If hibernation fails, a normal shutdown occurs. For more\n information, see Hibernate your Amazon EC2\n instance in the Amazon EC2 User Guide.

\n

If your instance appears stuck in the stopping state, there might be an\n issue with the underlying host computer. You can use the StopInstances operation\n together with the Force parameter to force stop your instance. For more information, see\n Troubleshoot\n Amazon EC2 instance stop issues in the\n Amazon EC2 User Guide.

\n

Stopping and hibernating an instance differs from rebooting or terminating it. For\n example, a stopped or hibernated instance retains its root volume and any data volumes,\n unlike terminated instances where these volumes are automatically deleted. For more\n information about the differences between stopping, hibernating, rebooting, and\n terminating instances, see Amazon EC2\n instance state changes in the Amazon EC2 User Guide.

\n

We don't charge for instance usage or data transfer fees when an instance is stopped.\n However, the root volume and any data volumes remain and continue to persist your data,\n and you're charged for volume usage. Every time you start your instance, Amazon EC2 charges a one-minute minimum for instance usage, followed by per-second\n billing.

\n

You can't stop or hibernate instance store-backed instances.

", "smithy.api#examples": [ { "title": "To stop a running EC2 instance", @@ -97288,14 +111320,20 @@ "Hibernate": { "target": "com.amazonaws.ec2#Boolean", "traits": { - "smithy.api#documentation": "

Hibernates the instance if the instance was enabled for hibernation at launch. If the\n instance cannot hibernate successfully, a normal shutdown occurs. For more information,\n see Hibernate\n your instance in the Amazon EC2 User Guide.

\n

Default: false\n

" + "smithy.api#documentation": "

Hibernates the instance if the instance was enabled for hibernation at launch. If the\n instance cannot hibernate successfully, a normal shutdown occurs. For more information,\n see Hibernate\n your Amazon EC2 instance in the\n Amazon EC2 User Guide.

\n

Default: false\n

" + } + }, + "SkipOsShutdown": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Specifies whether to bypass the graceful OS shutdown process when the instance is\n stopped.

\n \n

Bypassing the graceful OS shutdown might result in data loss or corruption (for\n example, memory contents not flushed to disk or loss of in-flight IOs) or skipped\n shutdown scripts.

\n
\n

Default: false\n

" } }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } }, @@ -97303,7 +111341,7 @@ "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "Force", - "smithy.api#documentation": "

Forces the instances to stop. The instances do not have an opportunity to flush file\n system caches or file system metadata. If you use this option, you must perform file\n system check and repair procedures. This option is not recommended for Windows\n instances.

\n

Default: false\n

", + "smithy.api#documentation": "

Forces the instance to stop. The instance will first attempt a graceful shutdown,\n which includes flushing file system caches and metadata. If the graceful shutdown fails\n to complete within the timeout period, the instance shuts down forcibly without flushing\n the file system caches and metadata.

\n

After using this option, you must perform file system check and repair procedures.\n This option is not recommended for Windows instances. For more information, see Troubleshoot\n Amazon EC2 instance stop issues in the\n Amazon EC2 User Guide.

\n

Default: false\n

", "smithy.api#xmlName": "force" } } @@ -97427,7 +111465,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "StoreTaskState", - "smithy.api#documentation": "

The state of the store task (InProgress, Completed, or\n Failed).

", + "smithy.api#documentation": "

The state of the store task (InProgress, Completed, or\n Failed).

", "smithy.api#xmlName": "storeTaskState" } }, @@ -97435,7 +111473,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "StoreTaskFailureReason", - "smithy.api#documentation": "

If the tasks fails, the reason for the failure is returned. If the task succeeds,\n null is returned.

", + "smithy.api#documentation": "

If the tasks fails, the reason for the failure is returned. If the task succeeds,\n null is returned.

", "smithy.api#xmlName": "storeTaskFailureReason" } } @@ -97477,14 +111515,6 @@ "com.amazonaws.ec2#Subnet": { "type": "structure", "members": { - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone of the subnet.

", - "smithy.api#xmlName": "availabilityZone" - } - }, "AvailabilityZoneId": { "target": "com.amazonaws.ec2#String", "traits": { @@ -97493,30 +111523,6 @@ "smithy.api#xmlName": "availabilityZoneId" } }, - "AvailableIpAddressCount": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "AvailableIpAddressCount", - "smithy.api#documentation": "

The number of unused private IPv4 addresses in the subnet. The IPv4 addresses for any\n\t\t\tstopped instances are considered unavailable.

", - "smithy.api#xmlName": "availableIpAddressCount" - } - }, - "CidrBlock": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "CidrBlock", - "smithy.api#documentation": "

The IPv4 CIDR block assigned to the subnet.

", - "smithy.api#xmlName": "cidrBlock" - } - }, - "DefaultForAz": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "DefaultForAz", - "smithy.api#documentation": "

Indicates whether this is the default subnet for the Availability Zone.

", - "smithy.api#xmlName": "defaultForAz" - } - }, "EnableLniAtDeviceIndex": { "target": "com.amazonaws.ec2#Integer", "traits": { @@ -97525,14 +111531,6 @@ "smithy.api#xmlName": "enableLniAtDeviceIndex" } }, - "MapPublicIpOnLaunch": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "MapPublicIpOnLaunch", - "smithy.api#documentation": "

Indicates whether instances launched in this subnet receive a public IPv4 address.

\n

Amazon Web Services charges for all public IPv4 addresses, including public IPv4 addresses \nassociated with running instances and Elastic IP addresses. For more information, see the Public IPv4 Address tab on the Amazon VPC pricing page.

", - "smithy.api#xmlName": "mapPublicIpOnLaunch" - } - }, "MapCustomerOwnedIpOnLaunch": { "target": "com.amazonaws.ec2#Boolean", "traits": { @@ -97549,30 +111547,6 @@ "smithy.api#xmlName": "customerOwnedIpv4Pool" } }, - "State": { - "target": "com.amazonaws.ec2#SubnetState", - "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The current state of the subnet.

", - "smithy.api#xmlName": "state" - } - }, - "SubnetId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "SubnetId", - "smithy.api#documentation": "

The ID of the subnet.

", - "smithy.api#xmlName": "subnetId" - } - }, - "VpcId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC the subnet is in.

", - "smithy.api#xmlName": "vpcId" - } - }, "OwnerId": { "target": "com.amazonaws.ec2#String", "traits": { @@ -97644,6 +111618,86 @@ "smithy.api#documentation": "

The type of hostnames to assign to instances in the subnet at launch. An instance hostname\n is based on the IPv4 address or ID of the instance.

", "smithy.api#xmlName": "privateDnsNameOptionsOnLaunch" } + }, + "BlockPublicAccessStates": { + "target": "com.amazonaws.ec2#BlockPublicAccessStates", + "traits": { + "aws.protocols#ec2QueryName": "BlockPublicAccessStates", + "smithy.api#documentation": "

The state of VPC Block Public Access (BPA).

", + "smithy.api#xmlName": "blockPublicAccessStates" + } + }, + "Type": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Type", + "smithy.api#documentation": "

Indicates if this is a subnet used with Amazon Elastic VMware Service (EVS).\n Possible values are Elastic VMware Service or no value. For more\n information about Amazon EVS, see \n Amazon Elastic VMware Service\n API Reference\n .

", + "smithy.api#xmlName": "type" + } + }, + "SubnetId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

The ID of the subnet.

", + "smithy.api#xmlName": "subnetId" + } + }, + "State": { + "target": "com.amazonaws.ec2#SubnetState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the subnet.

\n ", + "smithy.api#xmlName": "state" + } + }, + "VpcId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC the subnet is in.

", + "smithy.api#xmlName": "vpcId" + } + }, + "CidrBlock": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "CidrBlock", + "smithy.api#documentation": "

The IPv4 CIDR block assigned to the subnet.

", + "smithy.api#xmlName": "cidrBlock" + } + }, + "AvailableIpAddressCount": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "AvailableIpAddressCount", + "smithy.api#documentation": "

The number of unused private IPv4 addresses in the subnet. The IPv4 addresses for any\n\t\t\tstopped instances are considered unavailable.

", + "smithy.api#xmlName": "availableIpAddressCount" + } + }, + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone of the subnet.

", + "smithy.api#xmlName": "availabilityZone" + } + }, + "DefaultForAz": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "DefaultForAz", + "smithy.api#documentation": "

Indicates whether this is the default subnet for the Availability Zone.

", + "smithy.api#xmlName": "defaultForAz" + } + }, + "MapPublicIpOnLaunch": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "MapPublicIpOnLaunch", + "smithy.api#documentation": "

Indicates whether instances launched in this subnet receive a public IPv4 address.

\n

Amazon Web Services charges for all public IPv4 addresses, including public IPv4 addresses \nassociated with running instances and Elastic IP addresses. For more information, see the Public IPv4 Address tab on the Amazon VPC pricing page.

", + "smithy.api#xmlName": "mapPublicIpOnLaunch" + } } }, "traits": { @@ -97882,6 +111936,15 @@ "com.amazonaws.ec2#SubnetId": { "type": "string" }, + "com.amazonaws.ec2#SubnetIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#SubnetId", + "traits": { + "smithy.api#xmlName": "AssociatedSubnetId" + } + } + }, "com.amazonaws.ec2#SubnetIdStringList": { "type": "list", "member": { @@ -97891,6 +111954,39 @@ } } }, + "com.amazonaws.ec2#SubnetIpPrefixes": { + "type": "structure", + "members": { + "SubnetId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "SubnetId", + "smithy.api#documentation": "

ID of the subnet.

", + "smithy.api#xmlName": "subnetId" + } + }, + "IpPrefixes": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "aws.protocols#ec2QueryName": "IpPrefixSet", + "smithy.api#documentation": "

Array of SubnetIpPrefixes objects.

", + "smithy.api#xmlName": "ipPrefixSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

Prefixes of the subnet IP.

" + } + }, + "com.amazonaws.ec2#SubnetIpPrefixesList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#SubnetIpPrefixes", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ec2#SubnetIpv6CidrBlockAssociation": { "type": "structure", "members": { @@ -97917,6 +112013,22 @@ "smithy.api#documentation": "

The state of the CIDR block.

", "smithy.api#xmlName": "ipv6CidrBlockState" } + }, + "Ipv6AddressAttribute": { + "target": "com.amazonaws.ec2#Ipv6AddressAttribute", + "traits": { + "aws.protocols#ec2QueryName": "Ipv6AddressAttribute", + "smithy.api#documentation": "

Public IPv6 addresses are those advertised on the internet from Amazon Web Services. Private IP addresses are not and cannot be advertised on the internet from Amazon Web Services.

", + "smithy.api#xmlName": "ipv6AddressAttribute" + } + }, + "IpSource": { + "target": "com.amazonaws.ec2#IpSource", + "traits": { + "aws.protocols#ec2QueryName": "IpSource", + "smithy.api#documentation": "

The source that allocated the IP address space. byoip or amazon indicates public IP address space allocated by Amazon or space that you have allocated with Bring your own IP (BYOIP). none indicates private space.

", + "smithy.api#xmlName": "ipSource" + } } }, "traits": { @@ -97961,6 +112073,18 @@ "traits": { "smithy.api#enumValue": "unavailable" } + }, + "failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "failed" + } + }, + "failed_insufficient_capacity": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "failed-insufficient-capacity" + } } } }, @@ -98141,6 +112265,39 @@ } } }, + "com.amazonaws.ec2#SupportedRegionDetail": { + "type": "structure", + "members": { + "Region": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Region", + "smithy.api#documentation": "

The Region code.

", + "smithy.api#xmlName": "region" + } + }, + "ServiceState": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ServiceState", + "smithy.api#documentation": "

The service state. The possible values are Pending, Available, \n Deleting, Deleted, Failed, and Closed.

", + "smithy.api#xmlName": "serviceState" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a supported Region.

" + } + }, + "com.amazonaws.ec2#SupportedRegionSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#SupportedRegionDetail", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ec2#Tag": { "type": "structure", "members": { @@ -98376,7 +112533,7 @@ "target": "com.amazonaws.ec2#Integer", "traits": { "aws.protocols#ec2QueryName": "InstanceCount", - "smithy.api#documentation": "

The number of instances the Convertible Reserved Instance offering can be applied to. This parameter is \n reserved and cannot be specified in a request

", + "smithy.api#documentation": "

The number of instances the Convertible Reserved Instance offering can be applied to. This\n parameter is reserved and cannot be specified in a request

", "smithy.api#xmlName": "instanceCount" } }, @@ -98399,7 +112556,7 @@ "InstanceCount": { "target": "com.amazonaws.ec2#Integer", "traits": { - "smithy.api#documentation": "

The number of instances the Convertible Reserved Instance offering can be applied to. This parameter is reserved and cannot \n be specified in a request

" + "smithy.api#documentation": "

The number of instances the Convertible Reserved Instance offering can be applied to. This\n parameter is reserved and cannot be specified in a request

" } }, "OfferingId": { @@ -98543,7 +112700,7 @@ "target": "com.amazonaws.ec2#ReservationValue", "traits": { "aws.protocols#ec2QueryName": "ReservationValue", - "smithy.api#documentation": "

The total value of the Convertible Reserved Instances that make up the exchange. This is the sum of\n the list value, remaining upfront price, and additional upfront cost of the exchange.

", + "smithy.api#documentation": "

The total value of the Convertible Reserved Instances that make up the exchange. This is\n the sum of the list value, remaining upfront price, and additional upfront cost of the\n exchange.

", "smithy.api#xmlName": "reservationValue" } }, @@ -98748,7 +112905,7 @@ "target": "com.amazonaws.ec2#TerminateInstancesResult" }, "traits": { - "smithy.api#documentation": "

Shuts down the specified instances. This operation is idempotent; if you terminate an\n instance more than once, each call succeeds.

\n

If you specify multiple instances and the request fails (for example, because of a\n single incorrect instance ID), none of the instances are terminated.

\n

If you terminate multiple instances across multiple Availability Zones, and one or\n more of the specified instances are enabled for termination protection, the request\n fails with the following results:

\n \n

For example, say you have the following instances:

\n \n

If you attempt to terminate all of these instances in the same request, the request\n reports failure with the following results:

\n \n

Terminated instances remain visible after termination (for approximately one\n hour).

\n

By default, Amazon EC2 deletes all EBS volumes that were attached when the instance\n launched. Volumes attached after instance launch continue running.

\n

You can stop, start, and terminate EBS-backed instances. You can only terminate\n instance store-backed instances. What happens to an instance differs if you stop it or\n terminate it. For example, when you stop an instance, the root device and any other\n devices attached to the instance persist. When you terminate an instance, any attached\n EBS volumes with the DeleteOnTermination block device mapping parameter set\n to true are automatically deleted. For more information about the\n differences between stopping and terminating instances, see Instance lifecycle\n in the Amazon EC2 User Guide.

\n

For more information about troubleshooting, see Troubleshooting terminating your instance in the\n Amazon EC2 User Guide.

", + "smithy.api#documentation": "

Shuts down the specified instances. This operation is idempotent; if you\n terminate an instance more than once, each call succeeds.

\n

If you specify multiple instances and the request fails (for example, because of a\n single incorrect instance ID), none of the instances are terminated.

\n

If you terminate multiple instances across multiple Availability Zones, and one or\n more of the specified instances are enabled for termination protection, the request\n fails with the following results:

\n \n

For example, say you have the following instances:

\n \n

If you attempt to terminate all of these instances in the same request, the request\n reports failure with the following results:

\n \n

Terminated instances remain visible after termination (for approximately one\n hour).

\n

By default, Amazon EC2 deletes all EBS volumes that were attached when the instance\n launched. Volumes attached after instance launch continue running.

\n

By default, the TerminateInstances operation includes a graceful operating system (OS)\n shutdown. To bypass the graceful shutdown, use the skipOsShutdown\n parameter; however, this might risk data integrity.

\n

You can stop, start, and terminate EBS-backed instances. You can only terminate\n instance store-backed instances. What happens to an instance differs if you stop or\n terminate it. For example, when you stop an instance, the root device and any other\n devices attached to the instance persist. When you terminate an instance, any attached\n EBS volumes with the DeleteOnTermination block device mapping parameter set\n to true are automatically deleted. For more information about the\n differences between stopping and terminating instances, see Amazon EC2\n instance state changes in the Amazon EC2 User Guide.

\n

When you terminate an instance, we attempt to terminate it forcibly after a short\n while. If your instance appears stuck in the shutting-down state after a period of time,\n there might be an issue with the underlying host computer. For more information about\n terminating and troubleshooting terminating your instances, see Terminate Amazon EC2 instances and\n Troubleshooting terminating your instance in the\n Amazon EC2 User Guide.

", "smithy.api#examples": [ { "title": "To terminate an EC2 instance", @@ -98789,11 +112946,23 @@ "smithy.api#xmlName": "InstanceId" } }, + "Force": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Forces the instances to terminate. The instance will first attempt a graceful\n shutdown, which includes flushing file system caches and metadata. If the graceful\n shutdown fails to complete within the timeout period, the instance shuts down forcibly\n without flushing the file system caches and metadata.

" + } + }, + "SkipOsShutdown": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "smithy.api#documentation": "

Specifies whether to bypass the graceful OS shutdown process when the instance is\n terminated.

\n

Default: false\n

" + } + }, "DryRun": { "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } } @@ -98937,6 +113106,23 @@ } } }, + "com.amazonaws.ec2#TokenState": { + "type": "enum", + "members": { + "valid": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "valid" + } + }, + "expired": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "expired" + } + } + } + }, "com.amazonaws.ec2#TotalLocalStorageGB": { "type": "structure", "members": { @@ -99015,6 +113201,29 @@ } } }, + "com.amazonaws.ec2#TrafficIpAddressType": { + "type": "enum", + "members": { + "ipv4": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ipv4" + } + }, + "ipv6": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ipv6" + } + }, + "dual_stack": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "dual-stack" + } + } + } + }, "com.amazonaws.ec2#TrafficMirrorFilter": { "type": "structure", "members": { @@ -99173,6 +113382,14 @@ "smithy.api#documentation": "

The description of the Traffic Mirror rule.

", "smithy.api#xmlName": "description" } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Tags on Traffic Mirroring filter rules.

", + "smithy.api#xmlName": "tagSet" + } } }, "traits": { @@ -99214,6 +113431,15 @@ "target": "com.amazonaws.ec2#TrafficMirrorFilterRuleField" } }, + "com.amazonaws.ec2#TrafficMirrorFilterRuleIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#TrafficMirrorFilterRuleIdWithResolver", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ec2#TrafficMirrorFilterRuleIdWithResolver": { "type": "string" }, @@ -99226,6 +113452,15 @@ } } }, + "com.amazonaws.ec2#TrafficMirrorFilterRuleSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#TrafficMirrorFilterRule", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ec2#TrafficMirrorFilterSet": { "type": "list", "member": { @@ -99602,6 +113837,23 @@ } } }, + "com.amazonaws.ec2#TransferType": { + "type": "enum", + "members": { + "time_based": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "time-based" + } + }, + "standard": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "standard" + } + } + } + }, "com.amazonaws.ec2#TransitAssociationGatewayId": { "type": "string" }, @@ -100012,6 +114264,12 @@ "traits": { "smithy.api#enumValue": "tgw-peering" } + }, + "network_function": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "network-function" + } } } }, @@ -100981,7 +115239,7 @@ "target": "com.amazonaws.ec2#DefaultRouteTableAssociationValue", "traits": { "aws.protocols#ec2QueryName": "DefaultRouteTableAssociation", - "smithy.api#documentation": "

Indicates whether resource attachments are automatically associated with the default association route table.

", + "smithy.api#documentation": "

Indicates whether resource attachments are automatically associated with the default\n association route table. Enabled by default. Either defaultRouteTableAssociation or defaultRouteTablePropagation must be set to enable for Amazon Web Services Transit Gateway to create the default transit gateway route table.

", "smithy.api#xmlName": "defaultRouteTableAssociation" } }, @@ -100997,7 +115255,7 @@ "target": "com.amazonaws.ec2#DefaultRouteTablePropagationValue", "traits": { "aws.protocols#ec2QueryName": "DefaultRouteTablePropagation", - "smithy.api#documentation": "

Indicates whether resource attachments automatically propagate routes to the default propagation route table.

", + "smithy.api#documentation": "

Indicates whether resource attachments automatically propagate routes to the default\n propagation route table. Enabled by default. If defaultRouteTablePropagation\n is set to enable,\n Amazon Web Services Transit Gateway creates the default transit gateway route\n table.

", "smithy.api#xmlName": "defaultRouteTablePropagation" } }, @@ -101029,7 +115287,7 @@ "target": "com.amazonaws.ec2#SecurityGroupReferencingSupportValue", "traits": { "aws.protocols#ec2QueryName": "SecurityGroupReferencingSupport", - "smithy.api#documentation": "\n

This parameter is in preview and may not be available for your account.

\n
\n

Enables you to reference a security group across VPCs attached to a transit gateway. Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.

", + "smithy.api#documentation": "

Enables you to reference a security group across VPCs attached to a transit gateway to simplify security group management.\n\n

\n

This option is disabled by default.

", "smithy.api#xmlName": "securityGroupReferencingSupport" } }, @@ -101680,7 +115938,7 @@ "SecurityGroupReferencingSupport": { "target": "com.amazonaws.ec2#SecurityGroupReferencingSupportValue", "traits": { - "smithy.api#documentation": "\n

This parameter is in preview and may not be available for your account.

\n
\n

Enables you to reference a security group across VPCs attached to a transit gateway. Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.

" + "smithy.api#documentation": "

Enables you to reference a security group across VPCs attached to a transit gateway to simplify security group management.\n\n

\n

This option is disabled by default.

\n

For more information about security group referencing, see Security group referencing in the Amazon Web Services Transit Gateways Guide.

" } }, "MulticastSupport": { @@ -102465,7 +116723,7 @@ "target": "com.amazonaws.ec2#SecurityGroupReferencingSupportValue", "traits": { "aws.protocols#ec2QueryName": "SecurityGroupReferencingSupport", - "smithy.api#documentation": "\n

This parameter is in preview and may not be available for your account.

\n
\n

Enables you to reference a security group across VPCs attached to a transit gateway. Use this option to simplify security group management and control of instance-to-instance traffic across VPCs that are connected by transit gateway. You can also use this option to migrate from VPC peering (which was the only option that supported security group referencing) to transit gateways (which now also support security group referencing). This option is disabled by default and there are no additional costs to use this feature.

", + "smithy.api#documentation": "

Enables you to reference a security group across VPCs attached to a transit gateway to simplify security group management.

\n

This option is enabled by default.

\n

For more information about security group referencing, see Security group referencing in the Amazon Web Services Transit Gateways Guide.

", "smithy.api#xmlName": "securityGroupReferencingSupport" } }, @@ -102820,20 +117078,12 @@ "target": "com.amazonaws.ec2#UnassignIpv6AddressesResult" }, "traits": { - "smithy.api#documentation": "

Unassigns one or more IPv6 addresses IPv4 Prefix Delegation prefixes from a network interface.

" + "smithy.api#documentation": "

Unassigns the specified IPv6 addresses or Prefix Delegation prefixes from a network\n interface.

" } }, "com.amazonaws.ec2#UnassignIpv6AddressesRequest": { "type": "structure", "members": { - "Ipv6Addresses": { - "target": "com.amazonaws.ec2#Ipv6AddressList", - "traits": { - "aws.protocols#ec2QueryName": "Ipv6Addresses", - "smithy.api#documentation": "

The IPv6 addresses to unassign from the network interface.

", - "smithy.api#xmlName": "ipv6Addresses" - } - }, "Ipv6Prefixes": { "target": "com.amazonaws.ec2#IpPrefixList", "traits": { @@ -102850,6 +117100,14 @@ "smithy.api#required": {}, "smithy.api#xmlName": "networkInterfaceId" } + }, + "Ipv6Addresses": { + "target": "com.amazonaws.ec2#Ipv6AddressList", + "traits": { + "aws.protocols#ec2QueryName": "Ipv6Addresses", + "smithy.api#documentation": "

The IPv6 addresses to unassign from the network interface.

", + "smithy.api#xmlName": "ipv6Addresses" + } } }, "traits": { @@ -102879,7 +117137,7 @@ "target": "com.amazonaws.ec2#IpPrefixList", "traits": { "aws.protocols#ec2QueryName": "UnassignedIpv6PrefixSet", - "smithy.api#documentation": "

The IPv4 prefixes that have been unassigned from the network interface.

", + "smithy.api#documentation": "

The IPv6 prefixes that have been unassigned from the network interface.

", "smithy.api#xmlName": "unassignedIpv6PrefixSet" } } @@ -102897,7 +117155,7 @@ "target": "smithy.api#Unit" }, "traits": { - "smithy.api#documentation": "

Unassigns one or more secondary private IP addresses, or IPv4 Prefix Delegation prefixes from a \n \tnetwork interface.

", + "smithy.api#documentation": "

Unassigns the specified secondary private IP addresses or IPv4 Prefix Delegation\n prefixes from a network interface.

", "smithy.api#examples": [ { "title": "To unassign a secondary private IP address from a network interface", @@ -102915,6 +117173,13 @@ "com.amazonaws.ec2#UnassignPrivateIpAddressesRequest": { "type": "structure", "members": { + "Ipv4Prefixes": { + "target": "com.amazonaws.ec2#IpPrefixList", + "traits": { + "smithy.api#documentation": "

The IPv4 prefixes to unassign from the network interface.

", + "smithy.api#xmlName": "Ipv4Prefix" + } + }, "NetworkInterfaceId": { "target": "com.amazonaws.ec2#NetworkInterfaceId", "traits": { @@ -102929,16 +117194,9 @@ "target": "com.amazonaws.ec2#PrivateIpAddressStringList", "traits": { "aws.protocols#ec2QueryName": "PrivateIpAddress", - "smithy.api#documentation": "

The secondary private IP addresses to unassign from the network interface. You can specify this \n \toption multiple times to unassign more than one IP address.

", + "smithy.api#documentation": "

The secondary private IP addresses to unassign from the network interface. You can\n specify this option multiple times to unassign more than one IP address.

", "smithy.api#xmlName": "privateIpAddress" } - }, - "Ipv4Prefixes": { - "target": "com.amazonaws.ec2#IpPrefixList", - "traits": { - "smithy.api#documentation": "

The IPv4 prefixes to unassign from the network interface.

", - "smithy.api#xmlName": "Ipv4Prefix" - } } }, "traits": { @@ -102955,7 +117213,7 @@ "target": "com.amazonaws.ec2#UnassignPrivateNatGatewayAddressResult" }, "traits": { - "smithy.api#documentation": "

Unassigns secondary private IPv4 addresses from a private NAT gateway. You cannot unassign your primary private IP. For more information, see Edit secondary IP address associations in the Amazon VPC User Guide.

\n

While unassigning is in progress, you cannot assign/unassign additional IP addresses while the connections are being drained. You are, however, allowed to delete the NAT gateway.

\n

A private IP address will only be released at the end of MaxDrainDurationSeconds. The\n private IP addresses stay associated and support the existing connections, but do not\n support any new connections (new connections are distributed across the remaining\n assigned private IP address). After the existing connections drain out, the private IP\n addresses are released.

\n

\n

" + "smithy.api#documentation": "

Unassigns secondary private IPv4 addresses from a private NAT gateway. You cannot unassign your primary private IP. For more information, \n see Edit secondary IP address associations \n in the Amazon VPC User Guide.

\n

While unassigning is in progress, you cannot assign/unassign additional IP addresses while the connections are being drained. You are, however, allowed to delete the NAT gateway.

\n

A private IP address will only be released at the end of MaxDrainDurationSeconds. The\n private IP addresses stay associated and support the existing connections, but do not\n support any new connections (new connections are distributed across the remaining\n assigned private IP address). After the existing connections drain out, the private IP\n addresses are released.

\n

\n

" } }, "com.amazonaws.ec2#UnassignPrivateNatGatewayAddressRequest": { @@ -103126,7 +117384,7 @@ "target": "com.amazonaws.ec2#Boolean", "traits": { "aws.protocols#ec2QueryName": "DryRun", - "smithy.api#documentation": "

Checks whether you have the required permissions for the action, without actually making the request, \n and provides an error response. If you have the required permissions, the error response is DryRunOperation. \n Otherwise, it is UnauthorizedOperation.

", + "smithy.api#documentation": "

Checks whether you have the required permissions for the operation, without actually making the \n request, and provides an error response. If you have the required permissions, the error response is \n DryRunOperation. Otherwise, it is UnauthorizedOperation.

", "smithy.api#xmlName": "dryRun" } } @@ -103596,12 +117854,12 @@ "smithy.api#xmlName": "description" } }, - "GroupId": { + "UserId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "GroupId", - "smithy.api#documentation": "

The ID of the security group.

", - "smithy.api#xmlName": "groupId" + "aws.protocols#ec2QueryName": "UserId", + "smithy.api#documentation": "

The ID of an Amazon Web Services account.

\n

For a referenced security group in another VPC, the account ID of the referenced\n security group is returned in the response. If the referenced security group is deleted,\n this value is not returned.

", + "smithy.api#xmlName": "userId" } }, "GroupName": { @@ -103612,20 +117870,12 @@ "smithy.api#xmlName": "groupName" } }, - "PeeringStatus": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "PeeringStatus", - "smithy.api#documentation": "

The status of a VPC peering connection, if applicable.

", - "smithy.api#xmlName": "peeringStatus" - } - }, - "UserId": { + "GroupId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "UserId", - "smithy.api#documentation": "

The ID of an Amazon Web Services account.

\n

For a referenced security group in another VPC, the account ID of the referenced\n security group is returned in the response. If the referenced security group is deleted,\n this value is not returned.

", - "smithy.api#xmlName": "userId" + "aws.protocols#ec2QueryName": "GroupId", + "smithy.api#documentation": "

The ID of the security group.

", + "smithy.api#xmlName": "groupId" } }, "VpcId": { @@ -103643,6 +117893,14 @@ "smithy.api#documentation": "

The ID of the VPC peering connection, if applicable.

", "smithy.api#xmlName": "vpcPeeringConnectionId" } + }, + "PeeringStatus": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PeeringStatus", + "smithy.api#documentation": "

The status of a VPC peering connection, if applicable.

", + "smithy.api#xmlName": "peeringStatus" + } } }, "traits": { @@ -103667,6 +117925,15 @@ } } }, + "com.amazonaws.ec2#UserIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#String", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ec2#UserIdStringList": { "type": "list", "member": { @@ -103839,6 +118106,23 @@ } } }, + "com.amazonaws.ec2#VerificationMethod": { + "type": "enum", + "members": { + "remarks_x509": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "remarks-x509" + } + }, + "dns_token": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "dns-token" + } + } + } + }, "com.amazonaws.ec2#VerifiedAccessEndpoint": { "type": "structure", "members": { @@ -103993,6 +118277,22 @@ "smithy.api#documentation": "

The options in use for server side encryption.

", "smithy.api#xmlName": "sseSpecification" } + }, + "RdsOptions": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointRdsOptions", + "traits": { + "aws.protocols#ec2QueryName": "RdsOptions", + "smithy.api#documentation": "

The options for an RDS endpoint.

", + "smithy.api#xmlName": "rdsOptions" + } + }, + "CidrOptions": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointCidrOptions", + "traits": { + "aws.protocols#ec2QueryName": "CidrOptions", + "smithy.api#documentation": "

The options for a CIDR endpoint.

", + "smithy.api#xmlName": "cidrOptions" + } } }, "traits": { @@ -104010,6 +118310,46 @@ } } }, + "com.amazonaws.ec2#VerifiedAccessEndpointCidrOptions": { + "type": "structure", + "members": { + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Cidr", + "smithy.api#documentation": "

The CIDR.

", + "smithy.api#xmlName": "cidr" + } + }, + "PortRanges": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortRangeList", + "traits": { + "aws.protocols#ec2QueryName": "PortRangeSet", + "smithy.api#documentation": "

The port ranges.

", + "smithy.api#xmlName": "portRangeSet" + } + }, + "Protocol": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointProtocol", + "traits": { + "aws.protocols#ec2QueryName": "Protocol", + "smithy.api#documentation": "

The protocol.

", + "smithy.api#xmlName": "protocol" + } + }, + "SubnetIds": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointSubnetIdList", + "traits": { + "aws.protocols#ec2QueryName": "SubnetIdSet", + "smithy.api#documentation": "

The IDs of the subnets.

", + "smithy.api#xmlName": "subnetIdSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the CIDR options for a Verified Access endpoint.

" + } + }, "com.amazonaws.ec2#VerifiedAccessEndpointEniOptions": { "type": "structure", "members": { @@ -104036,6 +118376,14 @@ "smithy.api#documentation": "

The IP port number.

", "smithy.api#xmlName": "port" } + }, + "PortRanges": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortRangeList", + "traits": { + "aws.protocols#ec2QueryName": "PortRangeSet", + "smithy.api#documentation": "

The port ranges.

", + "smithy.api#xmlName": "portRangeSet" + } } }, "traits": { @@ -104097,6 +118445,14 @@ "smithy.api#documentation": "

The IDs of the subnets.

", "smithy.api#xmlName": "subnetIdSet" } + }, + "PortRanges": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortRangeList", + "traits": { + "aws.protocols#ec2QueryName": "PortRangeSet", + "smithy.api#documentation": "

The port ranges.

", + "smithy.api#xmlName": "portRangeSet" + } } }, "traits": { @@ -104112,6 +118468,39 @@ } } }, + "com.amazonaws.ec2#VerifiedAccessEndpointPortRange": { + "type": "structure", + "members": { + "FromPort": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortNumber", + "traits": { + "aws.protocols#ec2QueryName": "FromPort", + "smithy.api#documentation": "

The start of the port range.

", + "smithy.api#xmlName": "fromPort" + } + }, + "ToPort": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortNumber", + "traits": { + "aws.protocols#ec2QueryName": "ToPort", + "smithy.api#documentation": "

The end of the port range.

", + "smithy.api#xmlName": "toPort" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a port range.

" + } + }, + "com.amazonaws.ec2#VerifiedAccessEndpointPortRangeList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortRange", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ec2#VerifiedAccessEndpointProtocol": { "type": "enum", "members": { @@ -104126,7 +118515,77 @@ "traits": { "smithy.api#enumValue": "https" } + }, + "tcp": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "tcp" + } + } + } + }, + "com.amazonaws.ec2#VerifiedAccessEndpointRdsOptions": { + "type": "structure", + "members": { + "Protocol": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointProtocol", + "traits": { + "aws.protocols#ec2QueryName": "Protocol", + "smithy.api#documentation": "

The protocol.

", + "smithy.api#xmlName": "protocol" + } + }, + "Port": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointPortNumber", + "traits": { + "aws.protocols#ec2QueryName": "Port", + "smithy.api#documentation": "

The port.

", + "smithy.api#xmlName": "port" + } + }, + "RdsDbInstanceArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "RdsDbInstanceArn", + "smithy.api#documentation": "

The ARN of the RDS instance.

", + "smithy.api#xmlName": "rdsDbInstanceArn" + } + }, + "RdsDbClusterArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "RdsDbClusterArn", + "smithy.api#documentation": "

The ARN of the DB cluster.

", + "smithy.api#xmlName": "rdsDbClusterArn" + } + }, + "RdsDbProxyArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "RdsDbProxyArn", + "smithy.api#documentation": "

The ARN of the RDS proxy.

", + "smithy.api#xmlName": "rdsDbProxyArn" + } + }, + "RdsEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "RdsEndpoint", + "smithy.api#documentation": "

The RDS endpoint.

", + "smithy.api#xmlName": "rdsEndpoint" + } + }, + "SubnetIds": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointSubnetIdList", + "traits": { + "aws.protocols#ec2QueryName": "SubnetIdSet", + "smithy.api#documentation": "

The IDs of the subnets.

", + "smithy.api#xmlName": "subnetIdSet" + } } + }, + "traits": { + "smithy.api#documentation": "

Describes the RDS options for a Verified Access endpoint.

" } }, "com.amazonaws.ec2#VerifiedAccessEndpointStatus": { @@ -104197,6 +118656,47 @@ } } }, + "com.amazonaws.ec2#VerifiedAccessEndpointTarget": { + "type": "structure", + "members": { + "VerifiedAccessEndpointId": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointId", + "traits": { + "aws.protocols#ec2QueryName": "VerifiedAccessEndpointId", + "smithy.api#documentation": "

The ID of the Verified Access endpoint.

", + "smithy.api#xmlName": "verifiedAccessEndpointId" + } + }, + "VerifiedAccessEndpointTargetIpAddress": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VerifiedAccessEndpointTargetIpAddress", + "smithy.api#documentation": "

The IP address of the target.

", + "smithy.api#xmlName": "verifiedAccessEndpointTargetIpAddress" + } + }, + "VerifiedAccessEndpointTargetDns": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VerifiedAccessEndpointTargetDns", + "smithy.api#documentation": "

The DNS name of the target.

", + "smithy.api#xmlName": "verifiedAccessEndpointTargetDns" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the targets for the specified Verified Access endpoint.

" + } + }, + "com.amazonaws.ec2#VerifiedAccessEndpointTargetList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#VerifiedAccessEndpointTarget", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ec2#VerifiedAccessEndpointType": { "type": "enum", "members": { @@ -104211,6 +118711,18 @@ "traits": { "smithy.api#enumValue": "network-interface" } + }, + "rds": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "rds" + } + }, + "cidr": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "cidr" + } } } }, @@ -104381,12 +118893,44 @@ "smithy.api#documentation": "

Indicates whether support for Federal Information Processing Standards (FIPS) is enabled on the instance.

", "smithy.api#xmlName": "fipsEnabled" } + }, + "CidrEndpointsCustomSubDomain": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceCustomSubDomain", + "traits": { + "aws.protocols#ec2QueryName": "CidrEndpointsCustomSubDomain", + "smithy.api#documentation": "

The custom subdomain.

", + "smithy.api#xmlName": "cidrEndpointsCustomSubDomain" + } } }, "traits": { "smithy.api#documentation": "

Describes a Verified Access instance.

" } }, + "com.amazonaws.ec2#VerifiedAccessInstanceCustomSubDomain": { + "type": "structure", + "members": { + "SubDomain": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "SubDomain", + "smithy.api#documentation": "

The subdomain.

", + "smithy.api#xmlName": "subDomain" + } + }, + "Nameservers": { + "target": "com.amazonaws.ec2#ValueStringList", + "traits": { + "aws.protocols#ec2QueryName": "NameserverSet", + "smithy.api#documentation": "

The name servers.

", + "smithy.api#xmlName": "nameserverSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a custom subdomain for a network CIDR endpoint for Verified Access.

" + } + }, "com.amazonaws.ec2#VerifiedAccessInstanceId": { "type": "string" }, @@ -104441,6 +118985,152 @@ } } }, + "com.amazonaws.ec2#VerifiedAccessInstanceOpenVpnClientConfiguration": { + "type": "structure", + "members": { + "Config": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Config", + "smithy.api#documentation": "

The base64-encoded Open VPN client configuration.

", + "smithy.api#xmlName": "config" + } + }, + "Routes": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceOpenVpnClientConfigurationRouteList", + "traits": { + "aws.protocols#ec2QueryName": "RouteSet", + "smithy.api#documentation": "

The routes.

", + "smithy.api#xmlName": "routeSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a set of routes.

" + } + }, + "com.amazonaws.ec2#VerifiedAccessInstanceOpenVpnClientConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceOpenVpnClientConfiguration", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#VerifiedAccessInstanceOpenVpnClientConfigurationRoute": { + "type": "structure", + "members": { + "Cidr": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Cidr", + "smithy.api#documentation": "

The CIDR block.

", + "smithy.api#xmlName": "cidr" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a route.

" + } + }, + "com.amazonaws.ec2#VerifiedAccessInstanceOpenVpnClientConfigurationRouteList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#VerifiedAccessInstanceOpenVpnClientConfigurationRoute", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#VerifiedAccessInstanceUserTrustProviderClientConfiguration": { + "type": "structure", + "members": { + "Type": { + "target": "com.amazonaws.ec2#UserTrustProviderType", + "traits": { + "aws.protocols#ec2QueryName": "Type", + "smithy.api#documentation": "

The trust provider type.

", + "smithy.api#xmlName": "type" + } + }, + "Scopes": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Scopes", + "smithy.api#documentation": "

The set of user claims to be requested from the IdP.

", + "smithy.api#xmlName": "scopes" + } + }, + "Issuer": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Issuer", + "smithy.api#documentation": "

The OIDC issuer identifier of the IdP.

", + "smithy.api#xmlName": "issuer" + } + }, + "AuthorizationEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AuthorizationEndpoint", + "smithy.api#documentation": "

The authorization endpoint of the IdP.

", + "smithy.api#xmlName": "authorizationEndpoint" + } + }, + "PublicSigningKeyEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PublicSigningKeyEndpoint", + "smithy.api#documentation": "

The public signing key endpoint.

", + "smithy.api#xmlName": "publicSigningKeyEndpoint" + } + }, + "TokenEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "TokenEndpoint", + "smithy.api#documentation": "

The token endpoint of the IdP.

", + "smithy.api#xmlName": "tokenEndpoint" + } + }, + "UserInfoEndpoint": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "UserInfoEndpoint", + "smithy.api#documentation": "

The user info endpoint of the IdP.

", + "smithy.api#xmlName": "userInfoEndpoint" + } + }, + "ClientId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ClientId", + "smithy.api#documentation": "

The OAuth 2.0 client identifier.

", + "smithy.api#xmlName": "clientId" + } + }, + "ClientSecret": { + "target": "com.amazonaws.ec2#ClientSecretType", + "traits": { + "aws.protocols#ec2QueryName": "ClientSecret", + "smithy.api#documentation": "

The OAuth 2.0 client secret.

", + "smithy.api#xmlName": "clientSecret" + } + }, + "PkceEnabled": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "PkceEnabled", + "smithy.api#documentation": "

Indicates whether Proof of Key Code Exchange (PKCE) is enabled.

", + "smithy.api#xmlName": "pkceEnabled" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the trust provider.

" + } + }, "com.amazonaws.ec2#VerifiedAccessLogCloudWatchLogsDestination": { "type": "structure", "members": { @@ -104900,6 +119590,14 @@ "smithy.api#documentation": "

The options in use for server side encryption.

", "smithy.api#xmlName": "sseSpecification" } + }, + "NativeApplicationOidcOptions": { + "target": "com.amazonaws.ec2#NativeApplicationOidcOptions", + "traits": { + "aws.protocols#ec2QueryName": "NativeApplicationOidcOptions", + "smithy.api#documentation": "

The OpenID Connect (OIDC) options.

", + "smithy.api#xmlName": "nativeApplicationOidcOptions" + } } }, "traits": { @@ -105111,44 +119809,12 @@ "com.amazonaws.ec2#Volume": { "type": "structure", "members": { - "Attachments": { - "target": "com.amazonaws.ec2#VolumeAttachmentList", - "traits": { - "aws.protocols#ec2QueryName": "AttachmentSet", - "smithy.api#documentation": "\n

This parameter is not returned by CreateVolume.

\n
\n

Information about the volume attachments.

", - "smithy.api#xmlName": "attachmentSet" - } - }, - "AvailabilityZone": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone for the volume.

", - "smithy.api#xmlName": "availabilityZone" - } - }, - "CreateTime": { - "target": "com.amazonaws.ec2#DateTime", - "traits": { - "aws.protocols#ec2QueryName": "CreateTime", - "smithy.api#documentation": "

The time stamp when volume creation was initiated.

", - "smithy.api#xmlName": "createTime" - } - }, - "Encrypted": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "Encrypted", - "smithy.api#documentation": "

Indicates whether the volume is encrypted.

", - "smithy.api#xmlName": "encrypted" - } - }, - "KmsKeyId": { + "AvailabilityZoneId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "KmsKeyId", - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Key Management Service (KMS) KMS key that was used to protect the\n volume encryption key for the volume.

", - "smithy.api#xmlName": "kmsKeyId" + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone for the volume.

", + "smithy.api#xmlName": "availabilityZoneId" } }, "OutpostArn": { @@ -105159,38 +119825,6 @@ "smithy.api#xmlName": "outpostArn" } }, - "Size": { - "target": "com.amazonaws.ec2#Integer", - "traits": { - "aws.protocols#ec2QueryName": "Size", - "smithy.api#documentation": "

The size of the volume, in GiBs.

", - "smithy.api#xmlName": "size" - } - }, - "SnapshotId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "SnapshotId", - "smithy.api#documentation": "

The snapshot from which the volume was created, if applicable.

", - "smithy.api#xmlName": "snapshotId" - } - }, - "State": { - "target": "com.amazonaws.ec2#VolumeState", - "traits": { - "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The volume state.

", - "smithy.api#xmlName": "status" - } - }, - "VolumeId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "VolumeId", - "smithy.api#documentation": "

The ID of the volume.

", - "smithy.api#xmlName": "volumeId" - } - }, "Iops": { "target": "com.amazonaws.ec2#Integer", "traits": { @@ -105246,55 +119880,103 @@ "smithy.api#documentation": "\n

This parameter is not returned by CreateVolume.

\n
\n

Reserved for future use.

", "smithy.api#xmlName": "sseType" } - } - }, - "traits": { - "smithy.api#documentation": "

Describes a volume.

" - } - }, - "com.amazonaws.ec2#VolumeAttachment": { - "type": "structure", - "members": { - "AttachTime": { - "target": "com.amazonaws.ec2#DateTime", + }, + "Operator": { + "target": "com.amazonaws.ec2#OperatorResponse", "traits": { - "aws.protocols#ec2QueryName": "AttachTime", - "smithy.api#documentation": "

The time stamp when the attachment initiated.

", - "smithy.api#xmlName": "attachTime" + "aws.protocols#ec2QueryName": "Operator", + "smithy.api#documentation": "

The service provider that manages the volume.

", + "smithy.api#xmlName": "operator" } }, - "Device": { + "VolumeInitializationRate": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "VolumeInitializationRate", + "smithy.api#documentation": "

The Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate) specified for the volume during creation, \n in MiB/s. If no volume initialization rate was specified, the value is null.

", + "smithy.api#xmlName": "volumeInitializationRate" + } + }, + "VolumeId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "Device", - "smithy.api#documentation": "

The device name.

\n

If the volume is attached to a Fargate task, this parameter \n returns null.

", - "smithy.api#xmlName": "device" + "aws.protocols#ec2QueryName": "VolumeId", + "smithy.api#documentation": "

The ID of the volume.

", + "smithy.api#xmlName": "volumeId" } }, - "InstanceId": { + "Size": { + "target": "com.amazonaws.ec2#Integer", + "traits": { + "aws.protocols#ec2QueryName": "Size", + "smithy.api#documentation": "

The size of the volume, in GiBs.

", + "smithy.api#xmlName": "size" + } + }, + "SnapshotId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "InstanceId", - "smithy.api#documentation": "

The ID of the instance.

\n

If the volume is attached to a Fargate task, this parameter \n returns null.

", - "smithy.api#xmlName": "instanceId" + "aws.protocols#ec2QueryName": "SnapshotId", + "smithy.api#documentation": "

The snapshot from which the volume was created, if applicable.

", + "smithy.api#xmlName": "snapshotId" + } + }, + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone for the volume.

", + "smithy.api#xmlName": "availabilityZone" } }, "State": { - "target": "com.amazonaws.ec2#VolumeAttachmentState", + "target": "com.amazonaws.ec2#VolumeState", "traits": { "aws.protocols#ec2QueryName": "Status", - "smithy.api#documentation": "

The attachment state of the volume.

", + "smithy.api#documentation": "

The volume state.

", "smithy.api#xmlName": "status" } }, - "VolumeId": { - "target": "com.amazonaws.ec2#String", + "CreateTime": { + "target": "com.amazonaws.ec2#DateTime", "traits": { - "aws.protocols#ec2QueryName": "VolumeId", - "smithy.api#documentation": "

The ID of the volume.

", - "smithy.api#xmlName": "volumeId" + "aws.protocols#ec2QueryName": "CreateTime", + "smithy.api#documentation": "

The time stamp when volume creation was initiated.

", + "smithy.api#xmlName": "createTime" + } + }, + "Attachments": { + "target": "com.amazonaws.ec2#VolumeAttachmentList", + "traits": { + "aws.protocols#ec2QueryName": "AttachmentSet", + "smithy.api#documentation": "\n

This parameter is not returned by CreateVolume.

\n
\n

Information about the volume attachments.

", + "smithy.api#xmlName": "attachmentSet" + } + }, + "Encrypted": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "Encrypted", + "smithy.api#documentation": "

Indicates whether the volume is encrypted.

", + "smithy.api#xmlName": "encrypted" } }, + "KmsKeyId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "KmsKeyId", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the KMS key that was used to protect the\n volume encryption key for the volume.

", + "smithy.api#xmlName": "kmsKeyId" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes a volume.

" + } + }, + "com.amazonaws.ec2#VolumeAttachment": { + "type": "structure", + "members": { "DeleteOnTermination": { "target": "com.amazonaws.ec2#Boolean", "traits": { @@ -105307,7 +119989,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "AssociatedResource", - "smithy.api#documentation": "

The ARN of the Amazon ECS or Fargate task \n to which the volume is attached.

", + "smithy.api#documentation": "

The ARN of the Amazon Web Services-managed resource \n to which the volume is attached.

", "smithy.api#xmlName": "associatedResource" } }, @@ -105315,9 +119997,49 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "InstanceOwningService", - "smithy.api#documentation": "

The service principal of Amazon Web Services service that owns the underlying \n instance to which the volume is attached.

\n

This parameter is returned only for volumes that are attached to \n Fargate tasks.

", + "smithy.api#documentation": "

The service principal of the Amazon Web Services service that owns the underlying \n resource to which the volume is attached.

\n

This parameter is returned only for volumes that are attached to \n Amazon Web Services-managed resources.

", "smithy.api#xmlName": "instanceOwningService" } + }, + "VolumeId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VolumeId", + "smithy.api#documentation": "

The ID of the volume.

", + "smithy.api#xmlName": "volumeId" + } + }, + "InstanceId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "InstanceId", + "smithy.api#documentation": "

The ID of the instance.

\n

If the volume is attached to an Amazon Web Services-managed resource, this parameter \n returns null.

", + "smithy.api#xmlName": "instanceId" + } + }, + "Device": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Device", + "smithy.api#documentation": "

The device name.

\n

If the volume is attached to an Amazon Web Services-managed resource, this parameter \n returns null.

", + "smithy.api#xmlName": "device" + } + }, + "State": { + "target": "com.amazonaws.ec2#VolumeAttachmentState", + "traits": { + "aws.protocols#ec2QueryName": "Status", + "smithy.api#documentation": "

The attachment state of the volume.

", + "smithy.api#xmlName": "status" + } + }, + "AttachTime": { + "target": "com.amazonaws.ec2#DateTime", + "traits": { + "aws.protocols#ec2QueryName": "AttachTime", + "smithy.api#documentation": "

The time stamp when the attachment initiated.

", + "smithy.api#xmlName": "attachTime" + } } }, "traits": { @@ -105442,7 +120164,7 @@ "target": "com.amazonaws.ec2#VolumeModificationState", "traits": { "aws.protocols#ec2QueryName": "ModificationState", - "smithy.api#documentation": "

The current modification state. The modification state is null for unmodified\n volumes.

", + "smithy.api#documentation": "

The current modification state.

", "smithy.api#xmlName": "modificationState" } }, @@ -105560,7 +120282,7 @@ } }, "traits": { - "smithy.api#documentation": "

Describes the modification status of an EBS volume.

\n

If the volume has never been modified, some element values will be null.

" + "smithy.api#documentation": "

Describes the modification status of an EBS volume.

" } }, "com.amazonaws.ec2#VolumeModificationList": { @@ -105731,7 +120453,7 @@ "target": "com.amazonaws.ec2#VolumeStatusName", "traits": { "aws.protocols#ec2QueryName": "Name", - "smithy.api#documentation": "

The name of the volume status.

", + "smithy.api#documentation": "

The name of the volume status.

\n ", "smithy.api#xmlName": "name" } }, @@ -105866,6 +120588,12 @@ "traits": { "smithy.api#enumValue": "insufficient-data" } + }, + "warning": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "warning" + } } } }, @@ -105927,6 +120655,22 @@ "smithy.api#documentation": "

Information about the instances to which the volume is attached.

", "smithy.api#xmlName": "attachmentStatuses" } + }, + "InitializationStatusDetails": { + "target": "com.amazonaws.ec2#InitializationStatusDetails", + "traits": { + "aws.protocols#ec2QueryName": "InitializationStatusDetails", + "smithy.api#documentation": "

Information about the volume initialization. It can take up to 5 minutes \n for the volume initialization information to be updated.

\n

Only available for volumes created from snapshots. Not available for empty \n volumes created without a snapshot.

\n

For more information, see \n \n Initialize Amazon EBS volumes.

", + "smithy.api#xmlName": "initializationStatusDetails" + } + }, + "AvailabilityZoneId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AvailabilityZoneId", + "smithy.api#documentation": "

The ID of the Availability Zone.

", + "smithy.api#xmlName": "availabilityZoneId" + } } }, "traits": { @@ -105956,6 +120700,12 @@ "traits": { "smithy.api#enumValue": "io-performance" } + }, + "initialization_state": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "initialization-state" + } } } }, @@ -106009,38 +120759,6 @@ "com.amazonaws.ec2#Vpc": { "type": "structure", "members": { - "CidrBlock": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "CidrBlock", - "smithy.api#documentation": "

The primary IPv4 CIDR block for the VPC.

", - "smithy.api#xmlName": "cidrBlock" - } - }, - "DhcpOptionsId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "DhcpOptionsId", - "smithy.api#documentation": "

The ID of the set of DHCP options you've associated with the VPC.

", - "smithy.api#xmlName": "dhcpOptionsId" - } - }, - "State": { - "target": "com.amazonaws.ec2#VpcState", - "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The current state of the VPC.

", - "smithy.api#xmlName": "state" - } - }, - "VpcId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "VpcId", - "smithy.api#documentation": "

The ID of the VPC.

", - "smithy.api#xmlName": "vpcId" - } - }, "OwnerId": { "target": "com.amazonaws.ec2#String", "traits": { @@ -106081,6 +120799,13 @@ "smithy.api#xmlName": "isDefault" } }, + "EncryptionControl": { + "target": "com.amazonaws.ec2#VpcEncryptionControl", + "traits": { + "aws.protocols#ec2QueryName": "EncryptionControl", + "smithy.api#xmlName": "encryptionControl" + } + }, "Tags": { "target": "com.amazonaws.ec2#TagList", "traits": { @@ -106088,6 +120813,46 @@ "smithy.api#documentation": "

Any tags assigned to the VPC.

", "smithy.api#xmlName": "tagSet" } + }, + "BlockPublicAccessStates": { + "target": "com.amazonaws.ec2#BlockPublicAccessStates", + "traits": { + "aws.protocols#ec2QueryName": "BlockPublicAccessStates", + "smithy.api#documentation": "

The state of VPC Block Public Access (BPA).

", + "smithy.api#xmlName": "blockPublicAccessStates" + } + }, + "VpcId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#documentation": "

The ID of the VPC.

", + "smithy.api#xmlName": "vpcId" + } + }, + "State": { + "target": "com.amazonaws.ec2#VpcState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the VPC.

", + "smithy.api#xmlName": "state" + } + }, + "CidrBlock": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "CidrBlock", + "smithy.api#documentation": "

The primary IPv4 CIDR block for the VPC.

", + "smithy.api#xmlName": "cidrBlock" + } + }, + "DhcpOptionsId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "DhcpOptionsId", + "smithy.api#documentation": "

The ID of the set of DHCP options you've associated with the VPC.

", + "smithy.api#xmlName": "dhcpOptionsId" + } } }, "traits": { @@ -106097,14 +120862,6 @@ "com.amazonaws.ec2#VpcAttachment": { "type": "structure", "members": { - "State": { - "target": "com.amazonaws.ec2#AttachmentStatus", - "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The current state of the attachment.

", - "smithy.api#xmlName": "state" - } - }, "VpcId": { "target": "com.amazonaws.ec2#String", "traits": { @@ -106112,6 +120869,14 @@ "smithy.api#documentation": "

The ID of the VPC.

", "smithy.api#xmlName": "vpcId" } + }, + "State": { + "target": "com.amazonaws.ec2#AttachmentStatus", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the attachment.

", + "smithy.api#xmlName": "state" + } } }, "traits": { @@ -106150,6 +120915,284 @@ } } }, + "com.amazonaws.ec2#VpcBlockPublicAccessExclusion": { + "type": "structure", + "members": { + "ExclusionId": { + "target": "com.amazonaws.ec2#VpcBlockPublicAccessExclusionId", + "traits": { + "aws.protocols#ec2QueryName": "ExclusionId", + "smithy.api#documentation": "

The ID of the exclusion.

", + "smithy.api#xmlName": "exclusionId" + } + }, + "InternetGatewayExclusionMode": { + "target": "com.amazonaws.ec2#InternetGatewayExclusionMode", + "traits": { + "aws.protocols#ec2QueryName": "InternetGatewayExclusionMode", + "smithy.api#documentation": "

The exclusion mode for internet gateway traffic.

\n ", + "smithy.api#xmlName": "internetGatewayExclusionMode" + } + }, + "ResourceArn": { + "target": "com.amazonaws.ec2#ResourceArn", + "traits": { + "aws.protocols#ec2QueryName": "ResourceArn", + "smithy.api#documentation": "

The ARN of the exclusion.

", + "smithy.api#xmlName": "resourceArn" + } + }, + "State": { + "target": "com.amazonaws.ec2#VpcBlockPublicAccessExclusionState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The state of the exclusion.

", + "smithy.api#xmlName": "state" + } + }, + "Reason": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Reason", + "smithy.api#documentation": "

The reason for the current exclusion state.

", + "smithy.api#xmlName": "reason" + } + }, + "CreationTimestamp": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "CreationTimestamp", + "smithy.api#documentation": "

When the exclusion was created.

", + "smithy.api#xmlName": "creationTimestamp" + } + }, + "LastUpdateTimestamp": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "LastUpdateTimestamp", + "smithy.api#documentation": "

When the exclusion was last updated.

", + "smithy.api#xmlName": "lastUpdateTimestamp" + } + }, + "DeletionTimestamp": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "DeletionTimestamp", + "smithy.api#documentation": "

When the exclusion was deleted.

", + "smithy.api#xmlName": "deletionTimestamp" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

\n tag - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value.\n For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

", + "smithy.api#xmlName": "tagSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

A VPC BPA exclusion is a mode that can be applied to a single VPC or subnet that exempts it from the account’s BPA mode and will allow bidirectional or egress-only access. You can create BPA exclusions for VPCs and subnets even when BPA is not enabled on the account to ensure that there is no traffic disruption to the exclusions when VPC BPA is turned on. To learn more about VPC BPA, see Block public access to VPCs and subnets in the Amazon VPC User Guide.

" + } + }, + "com.amazonaws.ec2#VpcBlockPublicAccessExclusionId": { + "type": "string" + }, + "com.amazonaws.ec2#VpcBlockPublicAccessExclusionIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#VpcBlockPublicAccessExclusionId", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#VpcBlockPublicAccessExclusionList": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#VpcBlockPublicAccessExclusion", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ec2#VpcBlockPublicAccessExclusionState": { + "type": "enum", + "members": { + "create_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "create-in-progress" + } + }, + "create_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "create-complete" + } + }, + "create_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "create-failed" + } + }, + "update_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "update-in-progress" + } + }, + "update_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "update-complete" + } + }, + "update_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "update-failed" + } + }, + "delete_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-in-progress" + } + }, + "delete_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-complete" + } + }, + "disable_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disable-in-progress" + } + }, + "disable_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disable-complete" + } + } + } + }, + "com.amazonaws.ec2#VpcBlockPublicAccessExclusionsAllowed": { + "type": "enum", + "members": { + "allowed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "allowed" + } + }, + "not_allowed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "not-allowed" + } + } + } + }, + "com.amazonaws.ec2#VpcBlockPublicAccessOptions": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AwsAccountId", + "smithy.api#documentation": "

An Amazon Web Services account ID.

", + "smithy.api#xmlName": "awsAccountId" + } + }, + "AwsRegion": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AwsRegion", + "smithy.api#documentation": "

An Amazon Web Services Region.

", + "smithy.api#xmlName": "awsRegion" + } + }, + "State": { + "target": "com.amazonaws.ec2#VpcBlockPublicAccessState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of VPC BPA.

", + "smithy.api#xmlName": "state" + } + }, + "InternetGatewayBlockMode": { + "target": "com.amazonaws.ec2#InternetGatewayBlockMode", + "traits": { + "aws.protocols#ec2QueryName": "InternetGatewayBlockMode", + "smithy.api#documentation": "

The current mode of VPC BPA.

\n ", + "smithy.api#xmlName": "internetGatewayBlockMode" + } + }, + "Reason": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Reason", + "smithy.api#documentation": "

The reason for the current state.

", + "smithy.api#xmlName": "reason" + } + }, + "LastUpdateTimestamp": { + "target": "com.amazonaws.ec2#MillisecondDateTime", + "traits": { + "aws.protocols#ec2QueryName": "LastUpdateTimestamp", + "smithy.api#documentation": "

The last time the VPC BPA mode was updated.

", + "smithy.api#xmlName": "lastUpdateTimestamp" + } + }, + "ManagedBy": { + "target": "com.amazonaws.ec2#ManagedBy", + "traits": { + "aws.protocols#ec2QueryName": "ManagedBy", + "smithy.api#documentation": "

The entity that manages the state of VPC BPA. Possible values include:

\n ", + "smithy.api#xmlName": "managedBy" + } + }, + "ExclusionsAllowed": { + "target": "com.amazonaws.ec2#VpcBlockPublicAccessExclusionsAllowed", + "traits": { + "aws.protocols#ec2QueryName": "ExclusionsAllowed", + "smithy.api#documentation": "

Determines if exclusions are allowed. If you have enabled VPC BPA at the Organization level, exclusions may be\n not-allowed. Otherwise, they are allowed.

", + "smithy.api#xmlName": "exclusionsAllowed" + } + } + }, + "traits": { + "smithy.api#documentation": "

VPC Block Public Access (BPA) enables you to block resources in VPCs and subnets that you own in a Region from reaching or being reached from the internet through internet gateways and egress-only internet gateways. To learn more about VPC BPA, see Block public access to VPCs and subnets in the Amazon VPC User Guide.

" + } + }, + "com.amazonaws.ec2#VpcBlockPublicAccessState": { + "type": "enum", + "members": { + "default_state": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "default-state" + } + }, + "update_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "update-in-progress" + } + }, + "update_complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "update-complete" + } + } + } + }, "com.amazonaws.ec2#VpcCidrAssociationId": { "type": "string" }, @@ -106309,6 +121352,227 @@ } } }, + "com.amazonaws.ec2#VpcEncryptionControl": { + "type": "structure", + "members": { + "VpcId": { + "target": "com.amazonaws.ec2#VpcId", + "traits": { + "aws.protocols#ec2QueryName": "VpcId", + "smithy.api#xmlName": "vpcId" + } + }, + "VpcEncryptionControlId": { + "target": "com.amazonaws.ec2#VpcEncryptionControlId", + "traits": { + "aws.protocols#ec2QueryName": "VpcEncryptionControlId", + "smithy.api#xmlName": "vpcEncryptionControlId" + } + }, + "Mode": { + "target": "com.amazonaws.ec2#VpcEncryptionControlMode", + "traits": { + "aws.protocols#ec2QueryName": "Mode", + "smithy.api#xmlName": "mode" + } + }, + "State": { + "target": "com.amazonaws.ec2#VpcEncryptionControlState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#xmlName": "state" + } + }, + "StateMessage": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "StateMessage", + "smithy.api#xmlName": "stateMessage" + } + }, + "ResourceExclusions": { + "target": "com.amazonaws.ec2#VpcEncryptionControlExclusions", + "traits": { + "aws.protocols#ec2QueryName": "ResourceExclusions", + "smithy.api#xmlName": "resourceExclusions" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#xmlName": "tagSet" + } + } + } + }, + "com.amazonaws.ec2#VpcEncryptionControlExclusion": { + "type": "structure", + "members": { + "State": { + "target": "com.amazonaws.ec2#VpcEncryptionControlExclusionState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#xmlName": "state" + } + }, + "StateMessage": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "StateMessage", + "smithy.api#xmlName": "stateMessage" + } + } + } + }, + "com.amazonaws.ec2#VpcEncryptionControlExclusionState": { + "type": "enum", + "members": { + "enabling": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enabling" + } + }, + "enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enabled" + } + }, + "disabling": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disabling" + } + }, + "disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disabled" + } + } + } + }, + "com.amazonaws.ec2#VpcEncryptionControlExclusions": { + "type": "structure", + "members": { + "InternetGateway": { + "target": "com.amazonaws.ec2#VpcEncryptionControlExclusion", + "traits": { + "aws.protocols#ec2QueryName": "InternetGateway", + "smithy.api#xmlName": "internetGateway" + } + }, + "EgressOnlyInternetGateway": { + "target": "com.amazonaws.ec2#VpcEncryptionControlExclusion", + "traits": { + "aws.protocols#ec2QueryName": "EgressOnlyInternetGateway", + "smithy.api#xmlName": "egressOnlyInternetGateway" + } + }, + "NatGateway": { + "target": "com.amazonaws.ec2#VpcEncryptionControlExclusion", + "traits": { + "aws.protocols#ec2QueryName": "NatGateway", + "smithy.api#xmlName": "natGateway" + } + }, + "VirtualPrivateGateway": { + "target": "com.amazonaws.ec2#VpcEncryptionControlExclusion", + "traits": { + "aws.protocols#ec2QueryName": "VirtualPrivateGateway", + "smithy.api#xmlName": "virtualPrivateGateway" + } + }, + "VpcPeering": { + "target": "com.amazonaws.ec2#VpcEncryptionControlExclusion", + "traits": { + "aws.protocols#ec2QueryName": "VpcPeering", + "smithy.api#xmlName": "vpcPeering" + } + } + } + }, + "com.amazonaws.ec2#VpcEncryptionControlId": { + "type": "string" + }, + "com.amazonaws.ec2#VpcEncryptionControlMode": { + "type": "enum", + "members": { + "monitor": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "monitor" + } + }, + "enforce": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enforce" + } + } + } + }, + "com.amazonaws.ec2#VpcEncryptionControlState": { + "type": "enum", + "members": { + "enforce_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enforce-in-progress" + } + }, + "monitor_in_progress": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "monitor-in-progress" + } + }, + "enforce_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enforce-failed" + } + }, + "monitor_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "monitor-failed" + } + }, + "deleting": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "deleting" + } + }, + "deleted": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "deleted" + } + }, + "available": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "available" + } + }, + "creating": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "creating" + } + }, + "delete_failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "delete-failed" + } + } + } + }, "com.amazonaws.ec2#VpcEndpoint": { "type": "structure", "members": { @@ -106463,12 +121727,173 @@ "smithy.api#documentation": "

The last error that occurred for endpoint.

", "smithy.api#xmlName": "lastError" } + }, + "Ipv4Prefixes": { + "target": "com.amazonaws.ec2#SubnetIpPrefixesList", + "traits": { + "aws.protocols#ec2QueryName": "Ipv4PrefixSet", + "smithy.api#documentation": "

Array of IPv4 prefixes.

", + "smithy.api#xmlName": "ipv4PrefixSet" + } + }, + "Ipv6Prefixes": { + "target": "com.amazonaws.ec2#SubnetIpPrefixesList", + "traits": { + "aws.protocols#ec2QueryName": "Ipv6PrefixSet", + "smithy.api#documentation": "

Array of IPv6 prefixes.

", + "smithy.api#xmlName": "ipv6PrefixSet" + } + }, + "FailureReason": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "FailureReason", + "smithy.api#documentation": "

Reason for the failure.

", + "smithy.api#xmlName": "failureReason" + } + }, + "ServiceNetworkArn": { + "target": "com.amazonaws.ec2#ServiceNetworkArn", + "traits": { + "aws.protocols#ec2QueryName": "ServiceNetworkArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the service network.

", + "smithy.api#xmlName": "serviceNetworkArn" + } + }, + "ResourceConfigurationArn": { + "target": "com.amazonaws.ec2#ResourceConfigurationArn", + "traits": { + "aws.protocols#ec2QueryName": "ResourceConfigurationArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the resource configuration.

", + "smithy.api#xmlName": "resourceConfigurationArn" + } + }, + "ServiceRegion": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ServiceRegion", + "smithy.api#documentation": "

The Region where the service is hosted.

", + "smithy.api#xmlName": "serviceRegion" + } } }, "traits": { "smithy.api#documentation": "

Describes a VPC endpoint.

" } }, + "com.amazonaws.ec2#VpcEndpointAssociation": { + "type": "structure", + "members": { + "Id": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "Id", + "smithy.api#documentation": "

The ID of the VPC endpoint association.

", + "smithy.api#xmlName": "id" + } + }, + "VpcEndpointId": { + "target": "com.amazonaws.ec2#VpcEndpointId", + "traits": { + "aws.protocols#ec2QueryName": "VpcEndpointId", + "smithy.api#documentation": "

The ID of the VPC endpoint.

", + "smithy.api#xmlName": "vpcEndpointId" + } + }, + "ServiceNetworkArn": { + "target": "com.amazonaws.ec2#ServiceNetworkArn", + "traits": { + "aws.protocols#ec2QueryName": "ServiceNetworkArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the service network.

", + "smithy.api#xmlName": "serviceNetworkArn" + } + }, + "ServiceNetworkName": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ServiceNetworkName", + "smithy.api#documentation": "

The name of the service network.

", + "smithy.api#xmlName": "serviceNetworkName" + } + }, + "AssociatedResourceAccessibility": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AssociatedResourceAccessibility", + "smithy.api#documentation": "

The connectivity status of the resources associated to a VPC endpoint. The resource is\n accessible if the associated resource configuration is AVAILABLE, otherwise\n the resource is inaccessible.

", + "smithy.api#xmlName": "associatedResourceAccessibility" + } + }, + "FailureReason": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "FailureReason", + "smithy.api#documentation": "

A message related to why an VPC endpoint association failed.

", + "smithy.api#xmlName": "failureReason" + } + }, + "FailureCode": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "FailureCode", + "smithy.api#documentation": "

An error code related to why an VPC endpoint association failed.

", + "smithy.api#xmlName": "failureCode" + } + }, + "DnsEntry": { + "target": "com.amazonaws.ec2#DnsEntry", + "traits": { + "aws.protocols#ec2QueryName": "DnsEntry", + "smithy.api#documentation": "

The DNS entry of the VPC endpoint association.

", + "smithy.api#xmlName": "dnsEntry" + } + }, + "PrivateDnsEntry": { + "target": "com.amazonaws.ec2#DnsEntry", + "traits": { + "aws.protocols#ec2QueryName": "PrivateDnsEntry", + "smithy.api#documentation": "

The private DNS entry of the VPC endpoint association.

", + "smithy.api#xmlName": "privateDnsEntry" + } + }, + "AssociatedResourceArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AssociatedResourceArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the associated resource.

", + "smithy.api#xmlName": "associatedResourceArn" + } + }, + "ResourceConfigurationGroupArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "ResourceConfigurationGroupArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the resource configuration group.

", + "smithy.api#xmlName": "resourceConfigurationGroupArn" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

The tags to apply to the VPC endpoint association.

", + "smithy.api#xmlName": "tagSet" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the VPC resources, VPC endpoint services, Lattice services, or service\n networks associated with the VPC endpoint.

" + } + }, + "com.amazonaws.ec2#VpcEndpointAssociationSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ec2#VpcEndpointAssociation", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ec2#VpcEndpointConnection": { "type": "structure", "members": { @@ -106559,6 +121984,14 @@ "smithy.api#documentation": "

The tags.

", "smithy.api#xmlName": "tagSet" } + }, + "VpcEndpointRegion": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VpcEndpointRegion", + "smithy.api#documentation": "

The Region of the endpoint.

", + "smithy.api#xmlName": "vpcEndpointRegion" + } } }, "traits": { @@ -106654,6 +122087,18 @@ "traits": { "smithy.api#enumValue": "GatewayLoadBalancer" } + }, + "Resource": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Resource" + } + }, + "ServiceNetwork": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ServiceNetwork" + } } } }, @@ -106714,6 +122159,22 @@ "smithy.api#documentation": "

The ID of the IPv6 address pool from which the IPv6 CIDR block is allocated.

", "smithy.api#xmlName": "ipv6Pool" } + }, + "Ipv6AddressAttribute": { + "target": "com.amazonaws.ec2#Ipv6AddressAttribute", + "traits": { + "aws.protocols#ec2QueryName": "Ipv6AddressAttribute", + "smithy.api#documentation": "

Public IPv6 addresses are those advertised on the internet from Amazon Web Services. Private IP addresses are not and cannot be advertised on the internet from Amazon Web Services.

", + "smithy.api#xmlName": "ipv6AddressAttribute" + } + }, + "IpSource": { + "target": "com.amazonaws.ec2#IpSource", + "traits": { + "aws.protocols#ec2QueryName": "IpSource", + "smithy.api#documentation": "

The source that allocated the IP address space. byoip or amazon indicates public IP address space allocated by Amazon or space that you have allocated with Bring your own IP (BYOIP). none indicates private space.

", + "smithy.api#xmlName": "ipSource" + } } }, "traits": { @@ -107028,22 +122489,6 @@ "com.amazonaws.ec2#VpnConnection": { "type": "structure", "members": { - "CustomerGatewayConfiguration": { - "target": "com.amazonaws.ec2#customerGatewayConfiguration", - "traits": { - "aws.protocols#ec2QueryName": "CustomerGatewayConfiguration", - "smithy.api#documentation": "

The configuration information for the VPN connection's customer gateway (in the native\n XML format). This element is always present in the CreateVpnConnection\n response; however, it's present in the DescribeVpnConnections response\n only if the VPN connection is in the pending or available\n state.

", - "smithy.api#xmlName": "customerGatewayConfiguration" - } - }, - "CustomerGatewayId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "CustomerGatewayId", - "smithy.api#documentation": "

The ID of the customer gateway at your end of the VPN connection.

", - "smithy.api#xmlName": "customerGatewayId" - } - }, "Category": { "target": "com.amazonaws.ec2#String", "traits": { @@ -107052,38 +122497,6 @@ "smithy.api#xmlName": "category" } }, - "State": { - "target": "com.amazonaws.ec2#VpnState", - "traits": { - "aws.protocols#ec2QueryName": "State", - "smithy.api#documentation": "

The current state of the VPN connection.

", - "smithy.api#xmlName": "state" - } - }, - "Type": { - "target": "com.amazonaws.ec2#GatewayType", - "traits": { - "aws.protocols#ec2QueryName": "Type", - "smithy.api#documentation": "

The type of VPN connection.

", - "smithy.api#xmlName": "type" - } - }, - "VpnConnectionId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "VpnConnectionId", - "smithy.api#documentation": "

The ID of the VPN connection.

", - "smithy.api#xmlName": "vpnConnectionId" - } - }, - "VpnGatewayId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "VpnGatewayId", - "smithy.api#documentation": "

The ID of the virtual private gateway at the Amazon Web Services side of the VPN\n connection.

", - "smithy.api#xmlName": "vpnGatewayId" - } - }, "TransitGatewayId": { "target": "com.amazonaws.ec2#String", "traits": { @@ -107147,6 +122560,62 @@ "smithy.api#documentation": "

Information about the VPN tunnel.

", "smithy.api#xmlName": "vgwTelemetry" } + }, + "PreSharedKeyArn": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "PreSharedKeyArn", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Secrets Manager secret storing the pre-shared key(s) for the VPN connection.

", + "smithy.api#xmlName": "preSharedKeyArn" + } + }, + "VpnConnectionId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VpnConnectionId", + "smithy.api#documentation": "

The ID of the VPN connection.

", + "smithy.api#xmlName": "vpnConnectionId" + } + }, + "State": { + "target": "com.amazonaws.ec2#VpnState", + "traits": { + "aws.protocols#ec2QueryName": "State", + "smithy.api#documentation": "

The current state of the VPN connection.

", + "smithy.api#xmlName": "state" + } + }, + "CustomerGatewayConfiguration": { + "target": "com.amazonaws.ec2#customerGatewayConfiguration", + "traits": { + "aws.protocols#ec2QueryName": "CustomerGatewayConfiguration", + "smithy.api#documentation": "

The configuration information for the VPN connection's customer gateway (in the native\n XML format). This element is always present in the CreateVpnConnection\n response; however, it's present in the DescribeVpnConnections response\n only if the VPN connection is in the pending or available\n state.

", + "smithy.api#xmlName": "customerGatewayConfiguration" + } + }, + "Type": { + "target": "com.amazonaws.ec2#GatewayType", + "traits": { + "aws.protocols#ec2QueryName": "Type", + "smithy.api#documentation": "

The type of VPN connection.

", + "smithy.api#xmlName": "type" + } + }, + "CustomerGatewayId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "CustomerGatewayId", + "smithy.api#documentation": "

The ID of the customer gateway at your end of the VPN connection.

", + "smithy.api#xmlName": "customerGatewayId" + } + }, + "VpnGatewayId": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "VpnGatewayId", + "smithy.api#documentation": "

The ID of the virtual private gateway at the Amazon Web Services side of the VPN\n connection.

", + "smithy.api#xmlName": "vpnGatewayId" + } } }, "traits": { @@ -107287,7 +122756,7 @@ "target": "com.amazonaws.ec2#String", "traits": { "aws.protocols#ec2QueryName": "OutsideIpAddressType", - "smithy.api#documentation": "

The type of IPv4 address assigned to the outside interface of the customer gateway.

\n

Valid values: PrivateIpv4 | PublicIpv4\n

\n

Default: PublicIpv4\n

", + "smithy.api#documentation": "

The type of IPv4 address assigned to the outside interface of the customer gateway.

\n

Valid values: PrivateIpv4 | PublicIpv4 | Ipv6\n

\n

Default: PublicIpv4\n

", "smithy.api#xmlName": "outsideIpAddressType" } }, @@ -107329,14 +122798,6 @@ "smithy.api#documentation": "

Indicate whether to enable acceleration for the VPN connection.

\n

Default: false\n

" } }, - "StaticRoutesOnly": { - "target": "com.amazonaws.ec2#Boolean", - "traits": { - "aws.protocols#ec2QueryName": "StaticRoutesOnly", - "smithy.api#documentation": "

Indicate whether the VPN connection uses static routes only. If you are creating a VPN\n connection for a device that does not support BGP, you must specify true.\n Use CreateVpnConnectionRoute to create a static route.

\n

Default: false\n

", - "smithy.api#xmlName": "staticRoutesOnly" - } - }, "TunnelInsideIpVersion": { "target": "com.amazonaws.ec2#TunnelInsideIpVersion", "traits": { @@ -107376,7 +122837,7 @@ "OutsideIpAddressType": { "target": "com.amazonaws.ec2#String", "traits": { - "smithy.api#documentation": "

The type of IPv4 address assigned to the outside interface of the customer gateway device.

\n

Valid values: PrivateIpv4 | PublicIpv4\n

\n

Default: PublicIpv4\n

" + "smithy.api#documentation": "

The type of IP address assigned to the outside interface of the customer gateway device.

\n

Valid values: PrivateIpv4 | PublicIpv4 | Ipv6\n

\n

Default: PublicIpv4\n

" } }, "TransportTransitGatewayAttachmentId": { @@ -107384,6 +122845,14 @@ "traits": { "smithy.api#documentation": "

The transit gateway attachment ID to use for the VPN tunnel.

\n

Required if OutsideIpAddressType is set to PrivateIpv4.

" } + }, + "StaticRoutesOnly": { + "target": "com.amazonaws.ec2#Boolean", + "traits": { + "aws.protocols#ec2QueryName": "StaticRoutesOnly", + "smithy.api#documentation": "

Indicate whether the VPN connection uses static routes only. If you are creating a VPN\n connection for a device that does not support BGP, you must specify true.\n Use CreateVpnConnectionRoute to create a static route.

\n

Default: false\n

", + "smithy.api#xmlName": "staticRoutesOnly" + } } }, "traits": { @@ -107410,12 +122879,28 @@ "com.amazonaws.ec2#VpnGateway": { "type": "structure", "members": { - "AvailabilityZone": { + "AmazonSideAsn": { + "target": "com.amazonaws.ec2#Long", + "traits": { + "aws.protocols#ec2QueryName": "AmazonSideAsn", + "smithy.api#documentation": "

The private Autonomous System Number (ASN) for the Amazon side of a BGP\n session.

", + "smithy.api#xmlName": "amazonSideAsn" + } + }, + "Tags": { + "target": "com.amazonaws.ec2#TagList", + "traits": { + "aws.protocols#ec2QueryName": "TagSet", + "smithy.api#documentation": "

Any tags assigned to the virtual private gateway.

", + "smithy.api#xmlName": "tagSet" + } + }, + "VpnGatewayId": { "target": "com.amazonaws.ec2#String", "traits": { - "aws.protocols#ec2QueryName": "AvailabilityZone", - "smithy.api#documentation": "

The Availability Zone where the virtual private gateway was created, if applicable.\n This field may be empty or not returned.

", - "smithy.api#xmlName": "availabilityZone" + "aws.protocols#ec2QueryName": "VpnGatewayId", + "smithy.api#documentation": "

The ID of the virtual private gateway.

", + "smithy.api#xmlName": "vpnGatewayId" } }, "State": { @@ -107434,6 +122919,14 @@ "smithy.api#xmlName": "type" } }, + "AvailabilityZone": { + "target": "com.amazonaws.ec2#String", + "traits": { + "aws.protocols#ec2QueryName": "AvailabilityZone", + "smithy.api#documentation": "

The Availability Zone where the virtual private gateway was created, if applicable.\n This field may be empty or not returned.

", + "smithy.api#xmlName": "availabilityZone" + } + }, "VpcAttachments": { "target": "com.amazonaws.ec2#VpcAttachmentList", "traits": { @@ -107441,30 +122934,6 @@ "smithy.api#documentation": "

Any VPCs attached to the virtual private gateway.

", "smithy.api#xmlName": "attachments" } - }, - "VpnGatewayId": { - "target": "com.amazonaws.ec2#String", - "traits": { - "aws.protocols#ec2QueryName": "VpnGatewayId", - "smithy.api#documentation": "

The ID of the virtual private gateway.

", - "smithy.api#xmlName": "vpnGatewayId" - } - }, - "AmazonSideAsn": { - "target": "com.amazonaws.ec2#Long", - "traits": { - "aws.protocols#ec2QueryName": "AmazonSideAsn", - "smithy.api#documentation": "

The private Autonomous System Number (ASN) for the Amazon side of a BGP\n session.

", - "smithy.api#xmlName": "amazonSideAsn" - } - }, - "Tags": { - "target": "com.amazonaws.ec2#TagList", - "traits": { - "aws.protocols#ec2QueryName": "TagSet", - "smithy.api#documentation": "

Any tags assigned to the virtual private gateway.

", - "smithy.api#xmlName": "tagSet" - } } }, "traits": { @@ -107755,6 +123224,29 @@ "target": "com.amazonaws.ec2#VpnTunnelOptionsSpecification" } }, + "com.amazonaws.ec2#VpnTunnelProvisioningStatus": { + "type": "enum", + "members": { + "available": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "available" + } + }, + "pending": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pending" + } + }, + "failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "failed" + } + } + } + }, "com.amazonaws.ec2#WeekDay": { "type": "enum", "members": { diff --git a/aws/sdk/aws-models/ecs.json b/aws/sdk/aws-models/ecs.json index c9ef466b671..19641da23ef 100644 --- a/aws/sdk/aws-models/ecs.json +++ b/aws/sdk/aws-models/ecs.json @@ -29,6 +29,208 @@ ] }, "shapes": { + "com.amazonaws.ecs#AcceleratorCountRequest": { + "type": "structure", + "members": { + "min": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The minimum number of accelerators. Instance types with fewer accelerators are excluded from selection.

" + } + }, + "max": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The maximum number of accelerators. Instance types with more accelerators are excluded from selection.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The minimum and maximum number of accelerators (such as GPUs) for instance type selection. This is used for workloads that require specific numbers of accelerators.

" + } + }, + "com.amazonaws.ecs#AcceleratorManufacturer": { + "type": "enum", + "members": { + "AMAZON_WEB_SERVICES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "amazon-web-services" + } + }, + "AMD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "amd" + } + }, + "NVIDIA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "nvidia" + } + }, + "XILINX": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "xilinx" + } + }, + "HABANA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "habana" + } + } + } + }, + "com.amazonaws.ecs#AcceleratorManufacturerSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#AcceleratorManufacturer", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ecs#AcceleratorName": { + "type": "enum", + "members": { + "A100": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "a100" + } + }, + "INFERENTIA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "inferentia" + } + }, + "K520": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "k520" + } + }, + "K80": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "k80" + } + }, + "M60": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m60" + } + }, + "RADEON_PRO_V520": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "radeon-pro-v520" + } + }, + "T4": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "t4" + } + }, + "VU9P": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "vu9p" + } + }, + "V100": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "v100" + } + }, + "A10G": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "a10g" + } + }, + "H100": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "h100" + } + }, + "T4G": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "t4g" + } + } + } + }, + "com.amazonaws.ecs#AcceleratorNameSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#AcceleratorName", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, + "com.amazonaws.ecs#AcceleratorTotalMemoryMiBRequest": { + "type": "structure", + "members": { + "min": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The minimum total accelerator memory in MiB. Instance types with less accelerator memory are excluded from selection.

" + } + }, + "max": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The maximum total accelerator memory in MiB. Instance types with more accelerator memory are excluded from selection.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The minimum and maximum total accelerator memory in mebibytes (MiB) for instance type selection. This is important for GPU workloads that require specific amounts of video memory.

" + } + }, + "com.amazonaws.ecs#AcceleratorType": { + "type": "enum", + "members": { + "GPU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "gpu" + } + }, + "FPGA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "fpga" + } + }, + "INFERENCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "inference" + } + } + } + }, + "com.amazonaws.ecs#AcceleratorTypeSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#AcceleratorType", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ecs#AccessDeniedException": { "type": "structure", "members": { @@ -44,6 +246,38 @@ "smithy.api#error": "client" } }, + "com.amazonaws.ecs#AdvancedConfiguration": { + "type": "structure", + "members": { + "alternateTargetGroupArn": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the alternate target group for Amazon ECS blue/green deployments.

" + } + }, + "productionListenerRule": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) that that identifies the production listener rule (in the case of an Application Load Balancer) or\n listener (in the case for an Network Load Balancer) for routing production traffic.

" + } + }, + "testListenerRule": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) that identifies ) that identifies the test listener rule (in the case of an Application Load Balancer) or\n listener (in the case for an Network Load Balancer) for routing test traffic.

" + } + }, + "roleArn": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role that grants Amazon ECS permission to call the Elastic Load Balancing APIs for you.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The advanced settings for a load balancer used in blue/green deployments. Specify the\n alternate target group, listener rules, and IAM role required for traffic shifting during\n blue/green deployments. For more information, see Required resources for Amazon ECS\n blue/green deployments in the Amazon Elastic Container Service Developer Guide.

" + } + }, "com.amazonaws.ecs#AgentUpdateStatus": { "type": "enum", "members": { @@ -85,6 +319,31 @@ } } }, + "com.amazonaws.ecs#AllowedInstanceType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 30 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\.\\*\\-]+$" + } + }, + "com.amazonaws.ecs#AllowedInstanceTypeSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#AllowedInstanceType", + "traits": { + "smithy.api#xmlName": "item" + } + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 400 + } + } + }, "com.amazonaws.ecs#AmazonEC2ContainerServiceV20141113": { "type": "service", "version": "2014-11-13", @@ -137,6 +396,12 @@ { "target": "com.amazonaws.ecs#DescribeContainerInstances" }, + { + "target": "com.amazonaws.ecs#DescribeServiceDeployments" + }, + { + "target": "com.amazonaws.ecs#DescribeServiceRevisions" + }, { "target": "com.amazonaws.ecs#DescribeServices" }, @@ -170,6 +435,9 @@ { "target": "com.amazonaws.ecs#ListContainerInstances" }, + { + "target": "com.amazonaws.ecs#ListServiceDeployments" + }, { "target": "com.amazonaws.ecs#ListServices" }, @@ -212,6 +480,9 @@ { "target": "com.amazonaws.ecs#StartTask" }, + { + "target": "com.amazonaws.ecs#StopServiceDeployment" + }, { "target": "com.amazonaws.ecs#StopTask" }, @@ -1124,17 +1395,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -1148,17 +1408,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -1172,17 +1421,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -1196,17 +1434,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { @@ -1425,7 +1652,7 @@ } }, "traits": { - "smithy.api#documentation": "

You can apply up to 10 custom attributes for each resource. You can view the\n\t\t\tattributes of a resource with ListAttributes. You can remove existing\n\t\t\tattributes on a resource with DeleteAttributes.

", + "smithy.api#documentation": "

You can apply up to 10 custom attributes for each resource. You can view the\n\t\t\tattributes of a resource with ListAttributes.\n\t\t\tYou can remove existing attributes on a resource with DeleteAttributes.

", "smithy.api#error": "client" } }, @@ -1494,49 +1721,109 @@ "smithy.api#documentation": "

The details of the Auto Scaling group capacity provider to update.

" } }, + "com.amazonaws.ecs#AvailabilityZoneRebalancing": { + "type": "enum", + "members": { + "ENABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENABLED" + } + }, + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED" + } + } + } + }, "com.amazonaws.ecs#AwsVpcConfiguration": { "type": "structure", "members": { "subnets": { "target": "com.amazonaws.ecs#StringList", "traits": { - "smithy.api#documentation": "

The IDs of the subnets associated with the task or service. There's a limit of 16\n\t\t\tsubnets that can be specified per AwsVpcConfiguration.

\n \n

All specified subnets must be from the same VPC.

\n
", + "smithy.api#documentation": "

The IDs of the subnets associated with the task or service. There's a limit of 16\n\t\t\tsubnets that can be specified.

\n \n

All specified subnets must be from the same VPC.

\n
", "smithy.api#required": {} } }, "securityGroups": { "target": "com.amazonaws.ecs#StringList", "traits": { - "smithy.api#documentation": "

The IDs of the security groups associated with the task or service. If you don't\n\t\t\tspecify a security group, the default security group for the VPC is used. There's a\n\t\t\tlimit of 5 security groups that can be specified per\n\t\t\tAwsVpcConfiguration.

\n \n

All specified security groups must be from the same VPC.

\n
" + "smithy.api#documentation": "

The IDs of the security groups associated with the task or service. If you don't\n\t\t\tspecify a security group, the default security group for the VPC is used. There's a\n\t\t\tlimit of 5 security groups that can be specified.

\n \n

All specified security groups must be from the same VPC.

\n
" } }, "assignPublicIp": { "target": "com.amazonaws.ecs#AssignPublicIp", "traits": { - "smithy.api#documentation": "

Whether the task's elastic network interface receives a public IP address. The default\n\t\t\tvalue is DISABLED.

" + "smithy.api#documentation": "

Whether the task's elastic network interface receives a public IP address.

\n

Consider the following when you set this value:

\n " } } }, "traits": { - "smithy.api#documentation": "

An object representing the networking details for a task or service. For example\n\t\t\t\tawsvpcConfiguration={subnets=[\"subnet-12344321\"],securityGroups=[\"sg-12344321\"]}\n

" + "smithy.api#documentation": "

An object representing the networking details for a task or service. For example\n\t\t\t\tawsVpcConfiguration={subnets=[\"subnet-12344321\"],securityGroups=[\"sg-12344321\"]}.

" } }, - "com.amazonaws.ecs#BlockedException": { - "type": "structure", + "com.amazonaws.ecs#BareMetal": { + "type": "enum", "members": { - "message": { - "target": "com.amazonaws.ecs#String", + "INCLUDED": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Message that describes the cause of the exception.

" + "smithy.api#enumValue": "included" + } + }, + "REQUIRED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "required" + } + }, + "EXCLUDED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "excluded" } } - }, - "traits": { - "smithy.api#documentation": "

Your Amazon Web Services account was blocked. For more information, contact \n\t\t\t\tAmazon Web Services Support.

", - "smithy.api#error": "client" } }, - "com.amazonaws.ecs#Boolean": { + "com.amazonaws.ecs#BaselineEbsBandwidthMbpsRequest": { + "type": "structure", + "members": { + "min": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The minimum baseline Amazon EBS bandwidth in Mbps. Instance types with lower Amazon EBS bandwidth are excluded from selection.

" + } + }, + "max": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The maximum baseline Amazon EBS bandwidth in Mbps. Instance types with higher Amazon EBS bandwidth are excluded from selection.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The minimum and maximum baseline Amazon EBS bandwidth in megabits per second (Mbps) for instance type selection. This is important for workloads with high storage I/O requirements.

" + } + }, + "com.amazonaws.ecs#BlockedException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

Message that describes the cause of the exception.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Your Amazon Web Services account was blocked. For more information, contact \n\t\t\t\tAmazon Web Services Support.

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.ecs#Boolean": { "type": "boolean", "traits": { "smithy.api#default": false @@ -1545,9 +1832,35 @@ "com.amazonaws.ecs#BoxedBoolean": { "type": "boolean" }, + "com.amazonaws.ecs#BoxedDouble": { + "type": "double" + }, "com.amazonaws.ecs#BoxedInteger": { "type": "integer" }, + "com.amazonaws.ecs#BurstablePerformance": { + "type": "enum", + "members": { + "INCLUDED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "included" + } + }, + "REQUIRED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "required" + } + }, + "EXCLUDED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "excluded" + } + } + } + }, "com.amazonaws.ecs#CPUArchitecture": { "type": "enum", "members": { @@ -1580,6 +1893,12 @@ "smithy.api#documentation": "

The name of the capacity provider.

" } }, + "cluster": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The cluster that this capacity provider is associated with. Managed instances capacity providers are cluster-scoped, meaning they can only be used within their associated cluster.

" + } + }, "status": { "target": "com.amazonaws.ecs#CapacityProviderStatus", "traits": { @@ -1592,6 +1911,12 @@ "smithy.api#documentation": "

The Auto Scaling group settings for the capacity provider.

" } }, + "managedInstancesProvider": { + "target": "com.amazonaws.ecs#ManagedInstancesProvider", + "traits": { + "smithy.api#documentation": "

The configuration for the Amazon ECS Managed Instances provider. This includes the infrastructure role, the launch template configuration, and tag propagation settings.

" + } + }, "updateStatus": { "target": "com.amazonaws.ecs#CapacityProviderUpdateStatus", "traits": { @@ -1609,6 +1934,12 @@ "traits": { "smithy.api#documentation": "

The metadata that you apply to the capacity provider to help you categorize and\n\t\t\torganize it. Each tag consists of a key and an optional value. You define both.

\n

The following basic restrictions apply to tags:

\n " } + }, + "type": { + "target": "com.amazonaws.ecs#CapacityProviderType", + "traits": { + "smithy.api#documentation": "

The type of capacity provider. For Amazon ECS Managed Instances, this value is MANAGED_INSTANCES, indicating that Amazon ECS manages the underlying Amazon EC2 instances on your behalf.

" + } } }, "traits": { @@ -1635,12 +1966,24 @@ "com.amazonaws.ecs#CapacityProviderStatus": { "type": "enum", "members": { + "PROVISIONING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PROVISIONING" + } + }, "ACTIVE": { "target": "smithy.api#Unit", "traits": { "smithy.api#enumValue": "ACTIVE" } }, + "DEPROVISIONING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DEPROVISIONING" + } + }, "INACTIVE": { "target": "smithy.api#Unit", "traits": { @@ -1669,19 +2012,19 @@ "target": "com.amazonaws.ecs#CapacityProviderStrategyItemWeight", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The weight value designates the relative percentage of the total\n\t\t\tnumber of tasks launched that should use the specified capacity provider. The\n\t\t\t\tweight value is taken into consideration after the base\n\t\t\tvalue, if defined, is satisfied.

\n

If no weight value is specified, the default value of 0 is\n\t\t\tused. When multiple capacity providers are specified within a capacity provider\n\t\t\tstrategy, at least one of the capacity providers must have a weight value greater than\n\t\t\tzero and any capacity providers with a weight of 0 can't be used to place\n\t\t\ttasks. If you specify multiple capacity providers in a strategy that all have a weight\n\t\t\tof 0, any RunTask or CreateService actions using\n\t\t\tthe capacity provider strategy will fail.

\n

An example scenario for using weights is defining a strategy that contains two\n\t\t\tcapacity providers and both have a weight of 1, then when the\n\t\t\t\tbase is satisfied, the tasks will be split evenly across the two\n\t\t\tcapacity providers. Using that same logic, if you specify a weight of 1 for\n\t\t\t\tcapacityProviderA and a weight of 4 for\n\t\t\t\tcapacityProviderB, then for every one task that's run using\n\t\t\t\tcapacityProviderA, four tasks would use\n\t\t\t\tcapacityProviderB.

" + "smithy.api#documentation": "

The weight value designates the relative percentage of the total\n\t\t\tnumber of tasks launched that should use the specified capacity provider. The\n\t\t\tweight value is taken into consideration after the base\n\t\t\tvalue, if defined, is satisfied.

\n

If no weight value is specified, the default value of 0 is\n\t\t\tused. When multiple capacity providers are specified within a capacity provider\n\t\t\tstrategy, at least one of the capacity providers must have a weight value greater than\n\t\t\tzero and any capacity providers with a weight of 0 can't be used to place\n\t\t\ttasks. If you specify multiple capacity providers in a strategy that all have a weight\n\t\t\tof 0, any RunTask or CreateService actions using\n\t\t\tthe capacity provider strategy will fail.

\n

Weight value characteristics:

\n \n

Task distribution logic:

\n
    \n
  1. \n

    Base satisfaction: The minimum number of tasks specified by the base value are placed on that capacity provider

    \n
  2. \n
  3. \n

    Weight distribution: After base requirements are met, additional tasks are distributed according to weight ratios

    \n
  4. \n
\n

Examples:

\n

Equal Distribution: Two capacity providers both with weight 1 will split tasks evenly after base requirements are met.

\n

Weighted Distribution: If capacityProviderA has weight 1 and capacityProviderB has weight 4, then for every 1 task on A, 4 tasks will run on B.

" } }, "base": { "target": "com.amazonaws.ecs#CapacityProviderStrategyItemBase", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The base value designates how many tasks, at a minimum, to run on\n\t\t\tthe specified capacity provider. Only one capacity provider in a capacity provider\n\t\t\tstrategy can have a base defined. If no value is specified, the\n\t\t\tdefault value of 0 is used.

" + "smithy.api#documentation": "

The base value designates how many tasks, at a minimum, to run on\n\t\t\tthe specified capacity provider for each service. Only one capacity provider in a capacity provider\n\t\t\tstrategy can have a base defined. If no value is specified, the\n\t\t\tdefault value of 0 is used.

\n

Base value characteristics:

\n " } } }, "traits": { - "smithy.api#documentation": "

The details of a capacity provider strategy. A capacity provider strategy can be set\n\t\t\twhen using the RunTask or CreateCluster APIs or as\n\t\t\tthe default capacity provider strategy for a cluster with the CreateCluster API.

\n

Only capacity providers that are already associated with a cluster and have an\n\t\t\t\tACTIVE or UPDATING status can be used in a capacity\n\t\t\tprovider strategy. The PutClusterCapacityProviders API is used to\n\t\t\tassociate a capacity provider with a cluster.

\n

If specifying a capacity provider that uses an Auto Scaling group, the capacity\n\t\t\tprovider must already be created. New Auto Scaling group capacity providers can be\n\t\t\tcreated with the CreateCapacityProvider API operation.

\n

To use a Fargate capacity provider, specify either the FARGATE or\n\t\t\t\tFARGATE_SPOT capacity providers. The Fargate capacity providers are\n\t\t\tavailable to all accounts and only need to be associated with a cluster to be used in a\n\t\t\tcapacity provider strategy.

\n

With FARGATE_SPOT, you can run interruption\n\t\t\ttolerant tasks at a rate that's discounted compared to the FARGATE price.\n\t\t\t\tFARGATE_SPOT runs tasks on spare compute capacity. When Amazon Web Services needs the\n\t\t\tcapacity back, your tasks are interrupted with a two-minute warning.\n\t\t\t\tFARGATE_SPOT only supports Linux tasks with the X86_64 architecture on\n\t\t\tplatform version 1.3.0 or later.

\n

A capacity provider strategy may contain a maximum of 6 capacity providers.

" + "smithy.api#documentation": "

The details of a capacity provider strategy. A capacity provider strategy can be set\n\t\t\twhen using the RunTaskor CreateCluster APIs or as the default capacity provider strategy for a\n\t\t\tcluster with the CreateCluster API.

\n

Only capacity providers that are already associated with a cluster and have an\n\t\t\t\tACTIVE or UPDATING status can be used in a capacity\n\t\t\tprovider strategy. The PutClusterCapacityProviders API is used to associate a capacity provider\n\t\t\twith a cluster.

\n

If specifying a capacity provider that uses an Auto Scaling group, the capacity\n\t\t\tprovider must already be created. New Auto Scaling group capacity providers can be\n\t\t\tcreated with the CreateClusterCapacityProvider API operation.

\n

To use a Fargate capacity provider, specify either the FARGATE or\n\t\t\t\tFARGATE_SPOT capacity providers. The Fargate capacity providers are\n\t\t\tavailable to all accounts and only need to be associated with a cluster to be used in a\n\t\t\tcapacity provider strategy.

\n

With FARGATE_SPOT, you can run interruption tolerant tasks at a rate\n\t\t\tthat's discounted compared to the FARGATE price. FARGATE_SPOT\n\t\t\truns tasks on spare compute capacity. When Amazon Web Services needs the capacity back, your tasks are\n\t\t\tinterrupted with a two-minute warning. FARGATE_SPOT supports Linux tasks\n\t\t\twith the X86_64 architecture on platform version 1.3.0 or later.\n\t\t\t\tFARGATE_SPOT supports Linux tasks with the ARM64 architecture on\n\t\t\tplatform version 1.4.0 or later.

\n

A capacity provider strategy can contain a maximum of 20 capacity providers.

" } }, "com.amazonaws.ecs#CapacityProviderStrategyItemBase": { @@ -1704,9 +2047,56 @@ } } }, + "com.amazonaws.ecs#CapacityProviderType": { + "type": "enum", + "members": { + "EC2_AUTOSCALING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EC2_AUTOSCALING" + } + }, + "MANAGED_INSTANCES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MANAGED_INSTANCES" + } + }, + "FARGATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FARGATE" + } + }, + "FARGATE_SPOT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FARGATE_SPOT" + } + } + } + }, "com.amazonaws.ecs#CapacityProviderUpdateStatus": { "type": "enum", "members": { + "CREATE_IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATE_IN_PROGRESS" + } + }, + "CREATE_COMPLETE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATE_COMPLETE" + } + }, + "CREATE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATE_FAILED" + } + }, "DELETE_IN_PROGRESS": { "target": "smithy.api#Unit", "traits": { @@ -1784,7 +2174,7 @@ "configuration": { "target": "com.amazonaws.ecs#ClusterConfiguration", "traits": { - "smithy.api#documentation": "

The execute command configuration for the cluster.

" + "smithy.api#documentation": "

The execute command and managed storage configuration for the cluster.

" } }, "status": { @@ -1818,7 +2208,7 @@ "target": "com.amazonaws.ecs#Integer", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The number of services that are running on the cluster in an ACTIVE\n\t\t\tstate. You can view these services with ListServices.

" + "smithy.api#documentation": "

The number of services that are running on the cluster in an ACTIVE\n\t\t\tstate. You can view these services with ListServices.

" } }, "statistics": { @@ -1894,6 +2284,21 @@ "smithy.api#documentation": "

The execute command and managed storage configuration for the cluster.

" } }, + "com.amazonaws.ecs#ClusterContainsCapacityProviderException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

Message that describes the cause of the exception.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The cluster contains one or more capacity providers that prevent the requested operation. This exception occurs when you try to delete a cluster that still has active capacity providers, including Amazon ECS Managed Instances capacity providers. You must first delete all capacity providers from the cluster before you can delete the cluster itself.

", + "smithy.api#error": "client" + } + }, "com.amazonaws.ecs#ClusterContainsContainerInstancesException": { "type": "structure", "members": { @@ -1905,7 +2310,7 @@ } }, "traits": { - "smithy.api#documentation": "

You can't delete a cluster that has registered container instances. First, deregister\n\t\t\tthe container instances before you can delete the cluster. For more information, see\n\t\t\t\tDeregisterContainerInstance.

", + "smithy.api#documentation": "

You can't delete a cluster that has registered container instances. First, deregister\n\t\t\tthe container instances before you can delete the cluster. For more information, see\n\t\t\t\tDeregisterContainerInstance.

", "smithy.api#error": "client" } }, @@ -1920,7 +2325,7 @@ } }, "traits": { - "smithy.api#documentation": "

You can't delete a cluster that contains services. First, update the service to reduce\n\t\t\tits desired task count to 0, and then delete the service. For more information, see\n\t\t\t\tUpdateService and DeleteService.

", + "smithy.api#documentation": "

You can't delete a cluster that contains services. First, update the service to reduce\n\t\t\tits desired task count to 0, and then delete the service. For more information, see\n\t\t\t\tUpdateService and\n\t\t\t\tDeleteService.

", "smithy.api#error": "client" } }, @@ -1991,7 +2396,7 @@ } }, "traits": { - "smithy.api#documentation": "

The specified cluster wasn't found. You can view your available clusters with ListClusters. Amazon ECS clusters are Region specific.

", + "smithy.api#documentation": "

The specified cluster wasn't found. You can view your available clusters with ListClusters. Amazon ECS clusters are Region specific.

", "smithy.api#error": "client" } }, @@ -2015,7 +2420,7 @@ "namespace": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The namespace name or full Amazon Resource Name (ARN) of the Cloud Map namespace that's used when you create a service and don't specify\n\t\t\ta Service Connect configuration. The namespace name can include up to 1024 characters.\n\t\t\tThe name is case-sensitive. The name can't include hyphens (-), tilde (~), greater than\n\t\t\t(>), less than (<), or slash (/).

\n

If you enter an existing namespace name or ARN, then that namespace will be used.\n\t\t\tAny namespace type is supported. The namespace must be in this account and this Amazon Web Services\n\t\t\tRegion.

\n

If you enter a new name, a Cloud Map namespace will be created. Amazon ECS creates a\n\t\t\tCloud Map namespace with the \"API calls\" method of instance discovery only. This instance\n\t\t\tdiscovery method is the \"HTTP\" namespace type in the Command Line Interface. Other types of instance\n\t\t\tdiscovery aren't used by Service Connect.

\n

If you update the cluster with an empty string \"\" for the namespace name,\n\t\t\tthe cluster configuration for Service Connect is removed. Note that the namespace will\n\t\t\tremain in Cloud Map and must be deleted separately.

\n

For more information about Cloud Map, see Working with Services\n\t\t\tin the Cloud Map Developer Guide.

", + "smithy.api#documentation": "

The namespace name or full Amazon Resource Name (ARN) of the Cloud Map namespace that's used when you create a service and don't specify\n\t\t\ta Service Connect configuration. The namespace name can include up to 1024 characters.\n\t\t\tThe name is case-sensitive. The name can't include greater than (>), less than\n\t\t\t(<), double quotation marks (\"), or slash (/).

\n

If you enter an existing namespace name or ARN, then that namespace will be used.\n\t\t\tAny namespace type is supported. The namespace must be in this account and this Amazon Web Services\n\t\t\tRegion.

\n

If you enter a new name, a Cloud Map namespace will be created. Amazon ECS creates a\n\t\t\tCloud Map namespace with the \"API calls\" method of instance discovery only. This instance\n\t\t\tdiscovery method is the \"HTTP\" namespace type in the Command Line Interface. Other types of instance\n\t\t\tdiscovery aren't used by Service Connect.

\n

If you update the cluster with an empty string \"\" for the namespace name,\n\t\t\tthe cluster configuration for Service Connect is removed. Note that the namespace will\n\t\t\tremain in Cloud Map and must be deleted separately.

\n

For more information about Cloud Map, see Working with Services\n\t\t\tin the Cloud Map Developer Guide.

", "smithy.api#required": {} } } @@ -2030,18 +2435,18 @@ "name": { "target": "com.amazonaws.ecs#ClusterSettingName", "traits": { - "smithy.api#documentation": "

The name of the cluster setting. The value is containerInsights .

" + "smithy.api#documentation": "

The name of the cluster setting. The value is containerInsights.

" } }, "value": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The value to set for the cluster setting. The supported values are\n\t\t\t\tenabled and disabled.

\n

If you set name to containerInsights and value\n\t\t\tto enabled, CloudWatch Container Insights will be on for the cluster, otherwise\n\t\t\tit will be off unless the containerInsights account setting is turned on.\n\t\t\tIf a cluster value is specified, it will override the containerInsights\n\t\t\tvalue set with PutAccountSetting or PutAccountSettingDefault.

" + "smithy.api#documentation": "

The value to set for the cluster setting. The supported values are\n\t\t\t\tenhanced, enabled, and disabled.

\n

To use Container Insights with enhanced observability, set the\n\t\t\t\tcontainerInsights account setting to enhanced.

\n

To use Container Insights, set the containerInsights account setting to\n\t\t\t\tenabled.

\n

If a cluster value is specified, it will override the containerInsights\n\t\t\tvalue set with PutAccountSetting or PutAccountSettingDefault.

" } } }, "traits": { - "smithy.api#documentation": "

The settings to use when creating a cluster. This parameter is used to turn on CloudWatch\n\t\t\tContainer Insights for a cluster.

" + "smithy.api#documentation": "

The settings to use when creating a cluster. This parameter is used to turn on CloudWatch\n\t\t\tContainer Insights with enhanced observability or CloudWatch Container Insights for a\n\t\t\tcluster.

\n

Container Insights with enhanced observability provides all the Container Insights\n\t\t\tmetrics, plus additional task and container metrics. This version supports enhanced\n\t\t\tobservability for Amazon ECS clusters using the Amazon EC2 and Fargate launch types. After you\n\t\t\tconfigure Container Insights with enhanced observability on Amazon ECS, Container Insights\n\t\t\tauto-collects detailed infrastructure telemetry from the cluster level down to the\n\t\t\tcontainer level in your environment and displays these critical performance data in\n\t\t\tcurated dashboards removing the heavy lifting in observability set-up.

\n

For more information, see Monitor\n\t\t\t\tAmazon ECS containers using Container Insights with enhanced observability in the\n\t\t\tAmazon Elastic Container Service Developer Guide.

" } }, "com.amazonaws.ecs#ClusterSettingName": { @@ -2087,6 +2492,12 @@ "traits": { "smithy.api#enumValue": "EXTERNAL" } + }, + "MANAGED_INSTANCES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MANAGED_INSTANCES" + } } } }, @@ -2113,7 +2524,7 @@ } }, "traits": { - "smithy.api#documentation": "

The RunTask request could not be processed due to conflicts. The provided\n\t\t\t\tclientToken is already in use with a different RunTask\n\t\t\trequest. The resourceIds are the existing task ARNs which are already\n\t\t\tassociated with the clientToken.

\n

To fix this issue:

\n ", + "smithy.api#documentation": "

The request could not be processed because of conflict in the current state of the resource.

", "smithy.api#error": "client" } }, @@ -2188,7 +2599,7 @@ "reason": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

A short (255 max characters) human-readable string to provide additional details about\n\t\t\ta running or stopped container.

" + "smithy.api#documentation": "

A short (1024 max characters) human-readable string to provide additional details about a\n\t\t\trunning or stopped container.

" } }, "networkBindings": { @@ -2279,13 +2690,13 @@ "name": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The name of a container. If you're linking multiple containers together in a task\n\t\t\tdefinition, the name of one container can be entered in the\n\t\t\t\tlinks of another container to connect the containers.\n\t\t\tUp to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed. This parameter maps to name in the\n\t\t\tCreate a container section of the Docker Remote API and the\n\t\t\t\t--name option to docker\n\t\t\trun.

" + "smithy.api#documentation": "

The name of a container. If you're linking multiple containers together in a task\n\t\t\tdefinition, the name of one container can be entered in the\n\t\t\t\tlinks of another container to connect the containers.\n\t\t\tUp to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed. This parameter maps to name in the docker container\n\t\t\tcreate command and the --name option to docker run.

" } }, "image": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The image used to start a container. This string is passed directly to the Docker\n\t\t\tdaemon. By default, images in the Docker Hub registry are available. Other repositories\n\t\t\tare specified with either \n repository-url/image:tag\n or \n repository-url/image@digest\n . Up to 255 letters (uppercase and lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and number signs are allowed. This parameter maps to Image in the\n\t\t\tCreate a container section of the Docker Remote API and the\n\t\t\t\tIMAGE parameter of docker\n\t\t\t\trun.

\n " + "smithy.api#documentation": "

The image used to start a container. This string is passed directly to the Docker\n\t\t\tdaemon. By default, images in the Docker Hub registry are available. Other repositories\n\t\t\tare specified with either \n repository-url/image:tag\n or \n repository-url/image@digest\n . For images using tags (repository-url/image:tag), up to 255 characters total are allowed, including letters (uppercase and lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and number signs (#). For images using digests (repository-url/image@digest), the 255 character limit applies only to the repository URL and image name (everything before the @ sign). The only supported hash function is sha256, and the hash value after sha256: must be exactly 64 characters (only letters A-F, a-f, and numbers 0-9 are allowed). This parameter maps to Image in the docker\n\t\t\tcontainer create command and the IMAGE parameter of docker run.

\n " } }, "repositoryCredentials": { @@ -2298,31 +2709,31 @@ "target": "com.amazonaws.ecs#Integer", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The number of cpu units reserved for the container. This parameter maps\n\t\t\tto CpuShares in the Create a container section of the\n\t\t\tDocker Remote API and the --cpu-shares option to docker run.

\n

This field is optional for tasks using the Fargate launch type, and the\n\t\t\tonly requirement is that the total amount of CPU reserved for all containers within a\n\t\t\ttask be lower than the task-level cpu value.

\n \n

You can determine the number of CPU units that are available per EC2 instance type\n\t\t\t\tby multiplying the vCPUs listed for that instance type on the Amazon EC2 Instances detail page\n\t\t\t\tby 1,024.

\n
\n

Linux containers share unallocated CPU units with other containers on the container\n\t\t\tinstance with the same ratio as their allocated amount. For example, if you run a\n\t\t\tsingle-container task on a single-core instance type with 512 CPU units specified for\n\t\t\tthat container, and that's the only task running on the container instance, that\n\t\t\tcontainer could use the full 1,024 CPU unit share at any given time. However, if you\n\t\t\tlaunched another copy of the same task on that container instance, each task is\n\t\t\tguaranteed a minimum of 512 CPU units when needed. Moreover, each container could float\n\t\t\tto higher CPU usage if the other container was not using it. If both tasks were 100%\n\t\t\tactive all of the time, they would be limited to 512 CPU units.

\n

On Linux container instances, the Docker daemon on the container instance uses the CPU\n\t\t\tvalue to calculate the relative CPU share ratios for running containers. For more\n\t\t\tinformation, see CPU share\n\t\t\t\tconstraint in the Docker documentation. The minimum valid CPU share value\n\t\t\tthat the Linux kernel allows is 2. However, the CPU parameter isn't required, and you\n\t\t\tcan use CPU values below 2 in your container definitions. For CPU values below 2\n\t\t\t(including null), the behavior varies based on your Amazon ECS container agent\n\t\t\tversion:

\n \n

On Windows container instances, the CPU limit is enforced as an absolute limit, or a\n\t\t\tquota. Windows containers only have access to the specified amount of CPU that's\n\t\t\tdescribed in the task definition. A null or zero CPU value is passed to Docker as\n\t\t\t\t0, which Windows interprets as 1% of one CPU.

" + "smithy.api#documentation": "

The number of cpu units reserved for the container. This parameter maps\n\t\t\tto CpuShares in the docker container create commandand the\n\t\t\t\t--cpu-shares option to docker run.

\n

This field is optional for tasks using the Fargate launch type, and the\n\t\t\tonly requirement is that the total amount of CPU reserved for all containers within a\n\t\t\ttask be lower than the task-level cpu value.

\n \n

You can determine the number of CPU units that are available per EC2 instance type\n\t\t\t\tby multiplying the vCPUs listed for that instance type on the Amazon EC2 Instances detail page\n\t\t\t\tby 1,024.

\n
\n

Linux containers share unallocated CPU units with other containers on the container\n\t\t\tinstance with the same ratio as their allocated amount. For example, if you run a\n\t\t\tsingle-container task on a single-core instance type with 512 CPU units specified for\n\t\t\tthat container, and that's the only task running on the container instance, that\n\t\t\tcontainer could use the full 1,024 CPU unit share at any given time. However, if you\n\t\t\tlaunched another copy of the same task on that container instance, each task is\n\t\t\tguaranteed a minimum of 512 CPU units when needed. Moreover, each container could float\n\t\t\tto higher CPU usage if the other container was not using it. If both tasks were 100%\n\t\t\tactive all of the time, they would be limited to 512 CPU units.

\n

On Linux container instances, the Docker daemon on the container instance uses the CPU\n\t\t\tvalue to calculate the relative CPU share ratios for running containers. The minimum\n\t\t\tvalid CPU share value that the Linux kernel allows is 2, and the maximum valid CPU share\n\t\t\tvalue that the Linux kernel allows is 262144. However, the CPU parameter isn't required,\n\t\t\tand you can use CPU values below 2 or above 262144 in your container definitions. For\n\t\t\tCPU values below 2 (including null) or above 262144, the behavior varies based on your\n\t\t\tAmazon ECS container agent version:

\n \n

On Windows container instances, the CPU limit is enforced as an absolute limit, or a\n\t\t\tquota. Windows containers only have access to the specified amount of CPU that's\n\t\t\tdescribed in the task definition. A null or zero CPU value is passed to Docker as\n\t\t\t\t0, which Windows interprets as 1% of one CPU.

" } }, "memory": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { - "smithy.api#documentation": "

The amount (in MiB) of memory to present to the container. If your container attempts\n\t\t\tto exceed the memory specified here, the container is killed. The total amount of memory\n\t\t\treserved for all containers within a task must be lower than the task\n\t\t\t\tmemory value, if one is specified. This parameter maps to\n\t\t\t\tMemory in the Create a container section of the\n\t\t\tDocker Remote API and the --memory option to docker run.

\n

If using the Fargate launch type, this parameter is optional.

\n

If using the EC2 launch type, you must specify either a task-level\n\t\t\tmemory value or a container-level memory value. If you specify both a container-level\n\t\t\t\tmemory and memoryReservation value, memory\n\t\t\tmust be greater than memoryReservation. If you specify\n\t\t\t\tmemoryReservation, then that value is subtracted from the available\n\t\t\tmemory resources for the container instance where the container is placed. Otherwise,\n\t\t\tthe value of memory is used.

\n

The Docker 20.10.0 or later daemon reserves a minimum of 6 MiB of memory for a\n\t\t\tcontainer. So, don't specify less than 6 MiB of memory for your containers.

\n

The Docker 19.03.13-ce or earlier daemon reserves a minimum of 4 MiB of memory for a\n\t\t\tcontainer. So, don't specify less than 4 MiB of memory for your containers.

" + "smithy.api#documentation": "

The amount (in MiB) of memory to present to the container. If your container attempts\n\t\t\tto exceed the memory specified here, the container is killed. The total amount of memory\n\t\t\treserved for all containers within a task must be lower than the task\n\t\t\t\tmemory value, if one is specified. This parameter maps to\n\t\t\t\tMemory in the docker container create command and the\n\t\t\t\t--memory option to docker run.

\n

If using the Fargate launch type, this parameter is optional.

\n

If using the EC2 launch type, you must specify either a task-level\n\t\t\tmemory value or a container-level memory value. If you specify both a container-level\n\t\t\t\tmemory and memoryReservation value, memory\n\t\t\tmust be greater than memoryReservation. If you specify\n\t\t\t\tmemoryReservation, then that value is subtracted from the available\n\t\t\tmemory resources for the container instance where the container is placed. Otherwise,\n\t\t\tthe value of memory is used.

\n

The Docker 20.10.0 or later daemon reserves a minimum of 6 MiB of memory for a\n\t\t\tcontainer. So, don't specify less than 6 MiB of memory for your containers.

\n

The Docker 19.03.13-ce or earlier daemon reserves a minimum of 4 MiB of memory for a\n\t\t\tcontainer. So, don't specify less than 4 MiB of memory for your containers.

" } }, "memoryReservation": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { - "smithy.api#documentation": "

The soft limit (in MiB) of memory to reserve for the container. When system memory is\n\t\t\tunder heavy contention, Docker attempts to keep the container memory to this soft limit.\n\t\t\tHowever, your container can consume more memory when it needs to, up to either the hard\n\t\t\tlimit specified with the memory parameter (if applicable), or all of the\n\t\t\tavailable memory on the container instance, whichever comes first. This parameter maps\n\t\t\tto MemoryReservation in the Create a container section of\n\t\t\tthe Docker Remote API and the --memory-reservation option to docker run.

\n

If a task-level memory value is not specified, you must specify a non-zero integer for\n\t\t\tone or both of memory or memoryReservation in a container\n\t\t\tdefinition. If you specify both, memory must be greater than\n\t\t\t\tmemoryReservation. If you specify memoryReservation, then\n\t\t\tthat value is subtracted from the available memory resources for the container instance\n\t\t\twhere the container is placed. Otherwise, the value of memory is\n\t\t\tused.

\n

For example, if your container normally uses 128 MiB of memory, but occasionally\n\t\t\tbursts to 256 MiB of memory for short periods of time, you can set a\n\t\t\t\tmemoryReservation of 128 MiB, and a memory hard limit of\n\t\t\t300 MiB. This configuration would allow the container to only reserve 128 MiB of memory\n\t\t\tfrom the remaining resources on the container instance, but also allow the container to\n\t\t\tconsume more memory resources when needed.

\n

The Docker 20.10.0 or later daemon reserves a minimum of 6 MiB of memory for a\n\t\t\tcontainer. So, don't specify less than 6 MiB of memory for your containers.

\n

The Docker 19.03.13-ce or earlier daemon reserves a minimum of 4 MiB of memory for a\n\t\t\tcontainer. So, don't specify less than 4 MiB of memory for your containers.

" + "smithy.api#documentation": "

The soft limit (in MiB) of memory to reserve for the container. When system memory is\n\t\t\tunder heavy contention, Docker attempts to keep the container memory to this soft limit.\n\t\t\tHowever, your container can consume more memory when it needs to, up to either the hard\n\t\t\tlimit specified with the memory parameter (if applicable), or all of the\n\t\t\tavailable memory on the container instance, whichever comes first. This parameter maps\n\t\t\tto MemoryReservation in the docker container create command and the\n\t\t\t\t--memory-reservation option to docker run.

\n

If a task-level memory value is not specified, you must specify a non-zero integer for\n\t\t\tone or both of memory or memoryReservation in a container\n\t\t\tdefinition. If you specify both, memory must be greater than\n\t\t\t\tmemoryReservation. If you specify memoryReservation, then\n\t\t\tthat value is subtracted from the available memory resources for the container instance\n\t\t\twhere the container is placed. Otherwise, the value of memory is\n\t\t\tused.

\n

For example, if your container normally uses 128 MiB of memory, but occasionally\n\t\t\tbursts to 256 MiB of memory for short periods of time, you can set a\n\t\t\t\tmemoryReservation of 128 MiB, and a memory hard limit of\n\t\t\t300 MiB. This configuration would allow the container to only reserve 128 MiB of memory\n\t\t\tfrom the remaining resources on the container instance, but also allow the container to\n\t\t\tconsume more memory resources when needed.

\n

The Docker 20.10.0 or later daemon reserves a minimum of 6 MiB of memory for a\n\t\t\tcontainer. So, don't specify less than 6 MiB of memory for your containers.

\n

The Docker 19.03.13-ce or earlier daemon reserves a minimum of 4 MiB of memory for a\n\t\t\tcontainer. So, don't specify less than 4 MiB of memory for your containers.

" } }, "links": { "target": "com.amazonaws.ecs#StringList", "traits": { - "smithy.api#documentation": "

The links parameter allows containers to communicate with each other\n\t\t\twithout the need for port mappings. This parameter is only supported if the network mode\n\t\t\tof a task definition is bridge. The name:internalName\n\t\t\tconstruct is analogous to name:alias in Docker links.\n\t\t\tUp to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed. For more information about linking Docker containers, go to\n\t\t\t\tLegacy container links\n\t\t\tin the Docker documentation. This parameter maps to Links in the\n\t\t\tCreate a container section of the Docker Remote API and the\n\t\t\t\t--link option to docker\n\t\t\trun.

\n \n

This parameter is not supported for Windows containers.

\n
\n \n

Containers that are collocated on a single container instance may be able to\n\t\t\t\tcommunicate with each other without requiring links or host port mappings. Network\n\t\t\t\tisolation is achieved on the container instance using security groups and VPC\n\t\t\t\tsettings.

\n
" + "smithy.api#documentation": "

The links parameter allows containers to communicate with each other\n\t\t\twithout the need for port mappings. This parameter is only supported if the network mode\n\t\t\tof a task definition is bridge. The name:internalName\n\t\t\tconstruct is analogous to name:alias in Docker links.\n\t\t\tUp to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed.. This parameter maps to Links in the docker\n\t\t\tcontainer create command and the --link option to docker run.

\n \n

This parameter is not supported for Windows containers.

\n
\n \n

Containers that are collocated on a single container instance may be able to\n\t\t\t\tcommunicate with each other without requiring links or host port mappings. Network\n\t\t\t\tisolation is achieved on the container instance using security groups and VPC\n\t\t\t\tsettings.

\n
" } }, "portMappings": { "target": "com.amazonaws.ecs#PortMappingList", "traits": { - "smithy.api#documentation": "

The list of port mappings for the container. Port mappings allow containers to access\n\t\t\tports on the host container instance to send or receive traffic.

\n

For task definitions that use the awsvpc network mode, only specify the\n\t\t\t\tcontainerPort. The hostPort can be left blank or it must\n\t\t\tbe the same value as the containerPort.

\n

Port mappings on Windows use the NetNAT gateway address rather than\n\t\t\t\tlocalhost. There's no loopback for port mappings on Windows, so you\n\t\t\tcan't access a container's mapped port from the host itself.

\n

This parameter maps to PortBindings in the\n\t\t\tCreate a container section of the Docker Remote API and the\n\t\t\t\t--publish option to docker\n\t\t\t\trun. If the network mode of a task definition is set to none,\n\t\t\tthen you can't specify port mappings. If the network mode of a task definition is set to\n\t\t\t\thost, then host ports must either be undefined or they must match the\n\t\t\tcontainer port in the port mapping.

\n \n

After a task reaches the RUNNING status, manual and automatic host\n\t\t\t\tand container port assignments are visible in the Network\n\t\t\t\t\tBindings section of a container description for a selected task in\n\t\t\t\tthe Amazon ECS console. The assignments are also visible in the\n\t\t\t\t\tnetworkBindings section DescribeTasks\n\t\t\t\tresponses.

\n
" + "smithy.api#documentation": "

The list of port mappings for the container. Port mappings allow containers to access\n\t\t\tports on the host container instance to send or receive traffic.

\n

For task definitions that use the awsvpc network mode, only specify the\n\t\t\t\tcontainerPort. The hostPort can be left blank or it must\n\t\t\tbe the same value as the containerPort.

\n

Port mappings on Windows use the NetNAT gateway address rather than\n\t\t\t\tlocalhost. There's no loopback for port mappings on Windows, so you\n\t\t\tcan't access a container's mapped port from the host itself.

\n

This parameter maps to PortBindings in the docker container create\n\t\t\tcommand and the --publish option to docker run. If the network mode of a\n\t\t\ttask definition is set to none, then you can't specify port mappings. If\n\t\t\tthe network mode of a task definition is set to host, then host ports must\n\t\t\teither be undefined or they must match the container port in the port mapping.

\n \n

After a task reaches the RUNNING status, manual and automatic host\n\t\t\t\tand container port assignments are visible in the Network\n\t\t\t\t\tBindings section of a container description for a selected task in\n\t\t\t\tthe Amazon ECS console. The assignments are also visible in the\n\t\t\t\t\tnetworkBindings section DescribeTasks\n\t\t\t\tresponses.

\n
" } }, "essential": { @@ -2331,46 +2742,52 @@ "smithy.api#documentation": "

If the essential parameter of a container is marked as true,\n\t\t\tand that container fails or stops for any reason, all other containers that are part of\n\t\t\tthe task are stopped. If the essential parameter of a container is marked\n\t\t\tas false, its failure doesn't affect the rest of the containers in a task.\n\t\t\tIf this parameter is omitted, a container is assumed to be essential.

\n

All tasks must have at least one essential container. If you have an application\n\t\t\tthat's composed of multiple containers, group containers that are used for a common\n\t\t\tpurpose into components, and separate the different components into multiple task\n\t\t\tdefinitions. For more information, see Application\n\t\t\t\tArchitecture in the Amazon Elastic Container Service Developer Guide.

" } }, + "restartPolicy": { + "target": "com.amazonaws.ecs#ContainerRestartPolicy", + "traits": { + "smithy.api#documentation": "

The restart policy for a container. When you set up a restart policy, Amazon ECS can\n\t\t\trestart the container without needing to replace the task. For more information, see\n\t\t\t\tRestart\n\t\t\t\tindividual containers in Amazon ECS tasks with container restart policies in the\n\t\t\tAmazon Elastic Container Service Developer Guide.

" + } + }, "entryPoint": { "target": "com.amazonaws.ecs#StringList", "traits": { - "smithy.api#documentation": "\n

Early versions of the Amazon ECS container agent don't properly handle\n\t\t\t\t\tentryPoint parameters. If you have problems using\n\t\t\t\t\tentryPoint, update your container agent or enter your commands and\n\t\t\t\targuments as command array items instead.

\n
\n

The entry point that's passed to the container. This parameter maps to\n\t\t\t\tEntrypoint in the Create a container section of the\n\t\t\tDocker Remote API and the --entrypoint option to docker run. For more information, see https://docs.docker.com/engine/reference/builder/#entrypoint.

" + "smithy.api#documentation": "\n

Early versions of the Amazon ECS container agent don't properly handle\n\t\t\t\t\tentryPoint parameters. If you have problems using\n\t\t\t\t\tentryPoint, update your container agent or enter your commands and\n\t\t\t\targuments as command array items instead.

\n
\n

The entry point that's passed to the container. This parameter maps to\n\t\t\t\tEntrypoint in the docker container create command and the\n\t\t\t\t--entrypoint option to docker run.

" } }, "command": { "target": "com.amazonaws.ecs#StringList", "traits": { - "smithy.api#documentation": "

The command that's passed to the container. This parameter maps to Cmd in\n\t\t\tthe Create a container section of the Docker Remote API and the\n\t\t\t\tCOMMAND parameter to docker\n\t\t\t\trun. For more information, see https://docs.docker.com/engine/reference/builder/#cmd. If there are multiple arguments, each\n\t\t\targument is a separated string in the array.

" + "smithy.api#documentation": "

The command that's passed to the container. This parameter maps to Cmd in\n\t\t\tthe docker container create command and the COMMAND parameter to docker\n\t\t\trun. If there are multiple arguments, each argument is a separated string in the\n\t\t\tarray.

" } }, "environment": { "target": "com.amazonaws.ecs#EnvironmentVariables", "traits": { - "smithy.api#documentation": "

The environment variables to pass to a container. This parameter maps to\n\t\t\t\tEnv in the Create a container section of the\n\t\t\tDocker Remote API and the --env option to docker run.

\n \n

We don't recommend that you use plaintext environment variables for sensitive\n\t\t\t\tinformation, such as credential data.

\n
" + "smithy.api#documentation": "

The environment variables to pass to a container. This parameter maps to\n\t\t\t\tEnv in the docker container create command and the --env\n\t\t\toption to docker run.

\n \n

We don't recommend that you use plaintext environment variables for sensitive\n\t\t\t\tinformation, such as credential data.

\n
" } }, "environmentFiles": { "target": "com.amazonaws.ecs#EnvironmentFiles", "traits": { - "smithy.api#documentation": "

A list of files containing the environment variables to pass to a container. This\n\t\t\tparameter maps to the --env-file option to docker run.

\n

You can specify up to ten environment files. The file must have a .env\n\t\t\tfile extension. Each line in an environment file contains an environment variable in\n\t\t\t\tVARIABLE=VALUE format. Lines beginning with # are treated\n\t\t\tas comments and are ignored. For more information about the environment variable file\n\t\t\tsyntax, see Declare default\n\t\t\t\tenvironment variables in file.

\n

If there are environment variables specified using the environment\n\t\t\tparameter in a container definition, they take precedence over the variables contained\n\t\t\twithin an environment file. If multiple environment files are specified that contain the\n\t\t\tsame variable, they're processed from the top down. We recommend that you use unique\n\t\t\tvariable names. For more information, see Specifying Environment\n\t\t\t\tVariables in the Amazon Elastic Container Service Developer Guide.

" + "smithy.api#documentation": "

A list of files containing the environment variables to pass to a container. This\n\t\t\tparameter maps to the --env-file option to docker run.

\n

You can specify up to ten environment files. The file must have a .env\n\t\t\tfile extension. Each line in an environment file contains an environment variable in\n\t\t\t\tVARIABLE=VALUE format. Lines beginning with # are treated\n\t\t\tas comments and are ignored.

\n

If there are environment variables specified using the environment\n\t\t\tparameter in a container definition, they take precedence over the variables contained\n\t\t\twithin an environment file. If multiple environment files are specified that contain the\n\t\t\tsame variable, they're processed from the top down. We recommend that you use unique\n\t\t\tvariable names. For more information, see Specifying Environment\n\t\t\t\tVariables in the Amazon Elastic Container Service Developer Guide.

" } }, "mountPoints": { "target": "com.amazonaws.ecs#MountPointList", "traits": { - "smithy.api#documentation": "

The mount points for data volumes in your container.

\n

This parameter maps to Volumes in the Create a container\n\t\t\tsection of the Docker Remote API and the --volume option to docker run.

\n

Windows containers can mount whole directories on the same drive as\n\t\t\t\t$env:ProgramData. Windows containers can't mount directories on a\n\t\t\tdifferent drive, and mount point can't be across drives.

" + "smithy.api#documentation": "

The mount points for data volumes in your container.

\n

This parameter maps to Volumes in the docker container create command and\n\t\t\tthe --volume option to docker run.

\n

Windows containers can mount whole directories on the same drive as\n\t\t\t\t$env:ProgramData. Windows containers can't mount directories on a\n\t\t\tdifferent drive, and mount point can't be across drives.

" } }, "volumesFrom": { "target": "com.amazonaws.ecs#VolumeFromList", "traits": { - "smithy.api#documentation": "

Data volumes to mount from another container. This parameter maps to\n\t\t\t\tVolumesFrom in the Create a container section of the\n\t\t\tDocker Remote API and the --volumes-from option to docker run.

" + "smithy.api#documentation": "

Data volumes to mount from another container. This parameter maps to\n\t\t\t\tVolumesFrom in the docker container create command and the\n\t\t\t\t--volumes-from option to docker run.

" } }, "linuxParameters": { "target": "com.amazonaws.ecs#LinuxParameters", "traits": { - "smithy.api#documentation": "

Linux-specific modifications that are applied to the container, such as Linux kernel\n\t\t\tcapabilities. For more information see KernelCapabilities.

\n \n

This parameter is not supported for Windows containers.

\n
" + "smithy.api#documentation": "

Linux-specific modifications that are applied to the default Docker container\n\t\t\tconfiguration, such as Linux kernel capabilities. For more information see KernelCapabilities.

\n \n

This parameter is not supported for Windows containers.

\n
" } }, "secrets": { @@ -2388,115 +2805,121 @@ "startTimeout": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { - "smithy.api#documentation": "

Time duration (in seconds) to wait before giving up on resolving dependencies for a\n\t\t\tcontainer. For example, you specify two containers in a task definition with containerA\n\t\t\thaving a dependency on containerB reaching a COMPLETE,\n\t\t\tSUCCESS, or HEALTHY status. If a startTimeout\n\t\t\tvalue is specified for containerB and it doesn't reach the desired status within that\n\t\t\ttime then containerA gives up and not start. This results in the task transitioning to a\n\t\t\t\tSTOPPED state.

\n \n

When the ECS_CONTAINER_START_TIMEOUT container agent configuration\n\t\t\t\tvariable is used, it's enforced independently from this start timeout value.

\n
\n

For tasks using the Fargate launch type, the task or service requires\n\t\t\tthe following platforms:

\n \n

For tasks using the EC2 launch type, your container instances require at\n\t\t\tleast version 1.26.0 of the container agent to use a container start\n\t\t\ttimeout value. However, we recommend using the latest container agent version. For\n\t\t\tinformation about checking your agent version and updating to the latest version, see\n\t\t\t\tUpdating the Amazon ECS\n\t\t\t\tContainer Agent in the Amazon Elastic Container Service Developer Guide. If you're using an Amazon ECS-optimized Linux AMI,\n\t\t\tyour instance needs at least version 1.26.0-1 of the ecs-init\n\t\t\tpackage. If your container instances are launched from version 20190301 or\n\t\t\tlater, then they contain the required versions of the container agent and\n\t\t\t\tecs-init. For more information, see Amazon ECS-optimized Linux AMI\n\t\t\tin the Amazon Elastic Container Service Developer Guide.

\n

The valid values are 2-120 seconds.

" + "smithy.api#documentation": "

Time duration (in seconds) to wait before giving up on resolving dependencies for a\n\t\t\tcontainer. For example, you specify two containers in a task definition with containerA\n\t\t\thaving a dependency on containerB reaching a COMPLETE,\n\t\t\tSUCCESS, or HEALTHY status. If a startTimeout\n\t\t\tvalue is specified for containerB and it doesn't reach the desired status within that\n\t\t\ttime then containerA gives up and not start. This results in the task transitioning to a\n\t\t\t\tSTOPPED state.

\n \n

When the ECS_CONTAINER_START_TIMEOUT container agent configuration\n\t\t\t\tvariable is used, it's enforced independently from this start timeout value.

\n
\n

For tasks using the Fargate launch type, the task or service requires\n\t\t\tthe following platforms:

\n \n

For tasks using the EC2 launch type, your container instances require at\n\t\t\tleast version 1.26.0 of the container agent to use a container start\n\t\t\ttimeout value. However, we recommend using the latest container agent version. For\n\t\t\tinformation about checking your agent version and updating to the latest version, see\n\t\t\t\tUpdating the Amazon ECS\n\t\t\t\tContainer Agent in the Amazon Elastic Container Service Developer Guide. If you're using an Amazon ECS-optimized Linux AMI,\n\t\t\tyour instance needs at least version 1.26.0-1 of the ecs-init\n\t\t\tpackage. If your container instances are launched from version 20190301 or\n\t\t\tlater, then they contain the required versions of the container agent and\n\t\t\t\tecs-init. For more information, see Amazon ECS-optimized Linux AMI\n\t\t\tin the Amazon Elastic Container Service Developer Guide.

\n

The valid values for Fargate are 2-120 seconds.

" } }, "stopTimeout": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { - "smithy.api#documentation": "

Time duration (in seconds) to wait before the container is forcefully killed if it\n\t\t\tdoesn't exit normally on its own.

\n

For tasks using the Fargate launch type, the task or service requires\n\t\t\tthe following platforms:

\n \n

The max stop timeout value is 120 seconds and if the parameter is not specified, the\n\t\t\tdefault value of 30 seconds is used.

\n

For tasks that use the EC2 launch type, if the stopTimeout\n\t\t\tparameter isn't specified, the value set for the Amazon ECS container agent configuration\n\t\t\tvariable ECS_CONTAINER_STOP_TIMEOUT is used. If neither the\n\t\t\t\tstopTimeout parameter or the ECS_CONTAINER_STOP_TIMEOUT\n\t\t\tagent configuration variable are set, then the default values of 30 seconds for Linux\n\t\t\tcontainers and 30 seconds on Windows containers are used. Your container instances\n\t\t\trequire at least version 1.26.0 of the container agent to use a container stop timeout\n\t\t\tvalue. However, we recommend using the latest container agent version. For information\n\t\t\tabout checking your agent version and updating to the latest version, see Updating the Amazon ECS Container Agent in the Amazon Elastic Container Service Developer Guide. If you're using\n\t\t\tan Amazon ECS-optimized Linux AMI, your instance needs at least version 1.26.0-1 of the\n\t\t\t\tecs-init package. If your container instances are launched from version\n\t\t\t\t20190301 or later, then they contain the required versions of the\n\t\t\tcontainer agent and ecs-init. For more information, see Amazon ECS-optimized Linux AMI in the Amazon Elastic Container Service Developer Guide.

\n

The valid values are 2-120 seconds.

" + "smithy.api#documentation": "

Time duration (in seconds) to wait before the container is forcefully killed if it\n\t\t\tdoesn't exit normally on its own.

\n

For tasks using the Fargate launch type, the task or service requires\n\t\t\tthe following platforms:

\n \n

For tasks that use the Fargate launch type, the max stop timeout value is 120\n\t\t\tseconds and if the parameter is not specified, the default value of 30 seconds is\n\t\t\tused.

\n

For tasks that use the EC2 launch type, if the stopTimeout\n\t\t\tparameter isn't specified, the value set for the Amazon ECS container agent configuration\n\t\t\tvariable ECS_CONTAINER_STOP_TIMEOUT is used. If neither the\n\t\t\t\tstopTimeout parameter or the ECS_CONTAINER_STOP_TIMEOUT\n\t\t\tagent configuration variable are set, then the default values of 30 seconds for Linux\n\t\t\tcontainers and 30 seconds on Windows containers are used. Your container instances\n\t\t\trequire at least version 1.26.0 of the container agent to use a container stop timeout\n\t\t\tvalue. However, we recommend using the latest container agent version. For information\n\t\t\tabout checking your agent version and updating to the latest version, see Updating the Amazon ECS Container Agent in the Amazon Elastic Container Service Developer Guide. If you're using\n\t\t\tan Amazon ECS-optimized Linux AMI, your instance needs at least version 1.26.0-1 of the\n\t\t\t\tecs-init package. If your container instances are launched from version\n\t\t\t\t20190301 or later, then they contain the required versions of the\n\t\t\tcontainer agent and ecs-init. For more information, see Amazon ECS-optimized Linux AMI in the Amazon Elastic Container Service Developer Guide.

\n

The valid values for Fargate are 2-120 seconds.

" + } + }, + "versionConsistency": { + "target": "com.amazonaws.ecs#VersionConsistency", + "traits": { + "smithy.api#documentation": "

Specifies whether Amazon ECS will resolve the container image tag provided in the container\n\t\t\tdefinition to an image digest. By default, the value is enabled. If you set\n\t\t\tthe value for a container as disabled, Amazon ECS will not resolve the provided\n\t\t\tcontainer image tag to a digest and will use the original image URI specified in the\n\t\t\tcontainer definition for deployment. For more information about container image\n\t\t\tresolution, see Container image resolution in the Amazon ECS Developer\n\t\t\t\tGuide.

" } }, "hostname": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The hostname to use for your container. This parameter maps to Hostname\n\t\t\tin the Create a container section of the Docker Remote API and the\n\t\t\t\t--hostname option to docker\n\t\t\t\trun.

\n \n

The hostname parameter is not supported if you're using the\n\t\t\t\t\tawsvpc network mode.

\n
" + "smithy.api#documentation": "

The hostname to use for your container. This parameter maps to Hostname\n\t\t\tin the docker container create command and the --hostname option to docker\n\t\t\trun.

\n \n

The hostname parameter is not supported if you're using the\n\t\t\t\t\tawsvpc network mode.

\n
" } }, "user": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The user to use inside the container. This parameter maps to User in the\n\t\t\tCreate a container section of the Docker Remote API and the\n\t\t\t\t--user option to docker\n\t\t\trun.

\n \n

When running tasks using the host network mode, don't run containers\n\t\t\t\tusing the root user (UID 0). We recommend using a non-root user for better\n\t\t\t\tsecurity.

\n
\n

You can specify the user using the following formats. If specifying a UID\n\t\t\tor GID, you must specify it as a positive integer.

\n \n \n

This parameter is not supported for Windows containers.

\n
" + "smithy.api#documentation": "

The user to use inside the container. This parameter maps to User in the\n\t\t\tdocker container create command and the --user option to docker run.

\n \n

When running tasks using the host network mode, don't run containers\n\t\t\t\tusing the root user (UID 0). We recommend using a non-root user for better\n\t\t\t\tsecurity.

\n
\n

You can specify the user using the following formats. If specifying a UID\n\t\t\tor GID, you must specify it as a positive integer.

\n \n \n

This parameter is not supported for Windows containers.

\n
" } }, "workingDirectory": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The working directory to run commands inside the container in. This parameter maps to\n\t\t\t\tWorkingDir in the Create a container section of the\n\t\t\tDocker Remote API and the --workdir option to docker run.

" + "smithy.api#documentation": "

The working directory to run commands inside the container in. This parameter maps to\n\t\t\t\tWorkingDir in the docker container create command and the\n\t\t\t\t--workdir option to docker run.

" } }, "disableNetworking": { "target": "com.amazonaws.ecs#BoxedBoolean", "traits": { - "smithy.api#documentation": "

When this parameter is true, networking is off within the container. This parameter\n\t\t\tmaps to NetworkDisabled in the Create a container section\n\t\t\tof the Docker Remote API.

\n \n

This parameter is not supported for Windows containers.

\n
" + "smithy.api#documentation": "

When this parameter is true, networking is off within the container. This parameter\n\t\t\tmaps to NetworkDisabled in the docker container create command.

\n \n

This parameter is not supported for Windows containers.

\n
" } }, "privileged": { "target": "com.amazonaws.ecs#BoxedBoolean", "traits": { - "smithy.api#documentation": "

When this parameter is true, the container is given elevated privileges on the host\n\t\t\tcontainer instance (similar to the root user). This parameter maps to\n\t\t\t\tPrivileged in the Create a container section of the\n\t\t\tDocker Remote API and the --privileged option to docker run.

\n \n

This parameter is not supported for Windows containers or tasks run on Fargate.

\n
" + "smithy.api#documentation": "

When this parameter is true, the container is given elevated privileges on the host\n\t\t\tcontainer instance (similar to the root user). This parameter maps to\n\t\t\t\tPrivileged in the docker container create command and the\n\t\t\t\t--privileged option to docker run

\n \n

This parameter is not supported for Windows containers or tasks run on Fargate.

\n
" } }, "readonlyRootFilesystem": { "target": "com.amazonaws.ecs#BoxedBoolean", "traits": { - "smithy.api#documentation": "

When this parameter is true, the container is given read-only access to its root file\n\t\t\tsystem. This parameter maps to ReadonlyRootfs in the\n\t\t\tCreate a container section of the Docker Remote API and the\n\t\t\t\t--read-only option to docker\n\t\t\t\trun.

\n \n

This parameter is not supported for Windows containers.

\n
" + "smithy.api#documentation": "

When this parameter is true, the container is given read-only access to its root file\n\t\t\tsystem. This parameter maps to ReadonlyRootfs in the docker container\n\t\t\tcreate command and the --read-only option to docker run.

\n \n

This parameter is not supported for Windows containers.

\n
" } }, "dnsServers": { "target": "com.amazonaws.ecs#StringList", "traits": { - "smithy.api#documentation": "

A list of DNS servers that are presented to the container. This parameter maps to\n\t\t\t\tDns in the Create a container section of the\n\t\t\tDocker Remote API and the --dns option to docker run.

\n \n

This parameter is not supported for Windows containers.

\n
" + "smithy.api#documentation": "

A list of DNS servers that are presented to the container. This parameter maps to\n\t\t\t\tDns in the docker container create command and the --dns\n\t\t\toption to docker run.

\n \n

This parameter is not supported for Windows containers.

\n
" } }, "dnsSearchDomains": { "target": "com.amazonaws.ecs#StringList", "traits": { - "smithy.api#documentation": "

A list of DNS search domains that are presented to the container. This parameter maps\n\t\t\tto DnsSearch in the Create a container section of the\n\t\t\tDocker Remote API and the --dns-search option to docker run.

\n \n

This parameter is not supported for Windows containers.

\n
" + "smithy.api#documentation": "

A list of DNS search domains that are presented to the container. This parameter maps\n\t\t\tto DnsSearch in the docker container create command and the\n\t\t\t\t--dns-search option to docker run.

\n \n

This parameter is not supported for Windows containers.

\n
" } }, "extraHosts": { "target": "com.amazonaws.ecs#HostEntryList", "traits": { - "smithy.api#documentation": "

A list of hostnames and IP address mappings to append to the /etc/hosts\n\t\t\tfile on the container. This parameter maps to ExtraHosts in the\n\t\t\tCreate a container section of the Docker Remote API and the\n\t\t\t\t--add-host option to docker\n\t\t\t\trun.

\n \n

This parameter isn't supported for Windows containers or tasks that use the\n\t\t\t\t\tawsvpc network mode.

\n
" + "smithy.api#documentation": "

A list of hostnames and IP address mappings to append to the /etc/hosts\n\t\t\tfile on the container. This parameter maps to ExtraHosts in the docker\n\t\t\tcontainer create command and the --add-host option to docker run.

\n \n

This parameter isn't supported for Windows containers or tasks that use the\n\t\t\t\t\tawsvpc network mode.

\n
" } }, "dockerSecurityOptions": { "target": "com.amazonaws.ecs#StringList", "traits": { - "smithy.api#documentation": "

A list of strings to provide custom configuration for multiple security systems. For\n\t\t\tmore information about valid values, see Docker\n\t\t\t\tRun Security Configuration. This field isn't valid for containers in tasks\n\t\t\tusing the Fargate launch type.

\n

For Linux tasks on EC2, this parameter can be used to reference custom\n\t\t\tlabels for SELinux and AppArmor multi-level security systems.

\n

For any tasks on EC2, this parameter can be used to reference a\n\t\t\tcredential spec file that configures a container for Active Directory authentication.\n\t\t\tFor more information, see Using gMSAs for Windows\n\t\t\t\tContainers and Using gMSAs for Linux\n\t\t\t\tContainers in the Amazon Elastic Container Service Developer Guide.

\n

This parameter maps to SecurityOpt in the\n\t\t\tCreate a container section of the Docker Remote API and the\n\t\t\t\t--security-opt option to docker\n\t\t\t\trun.

\n \n

The Amazon ECS container agent running on a container instance must register with the\n\t\t\t\t\tECS_SELINUX_CAPABLE=true or ECS_APPARMOR_CAPABLE=true\n\t\t\t\tenvironment variables before containers placed on that instance can use these\n\t\t\t\tsecurity options. For more information, see Amazon ECS Container\n\t\t\t\t\tAgent Configuration in the Amazon Elastic Container Service Developer Guide.

\n
\n

For more information about valid values, see Docker\n\t\t\t\tRun Security Configuration.

\n

Valid values: \"no-new-privileges\" | \"apparmor:PROFILE\" | \"label:value\" |\n\t\t\t\"credentialspec:CredentialSpecFilePath\"

" + "smithy.api#documentation": "

A list of strings to provide custom configuration for multiple security systems. This\n\t\t\tfield isn't valid for containers in tasks using the Fargate launch\n\t\t\ttype.

\n

For Linux tasks on EC2, this parameter can be used to reference custom\n\t\t\tlabels for SELinux and AppArmor multi-level security systems.

\n

For any tasks on EC2, this parameter can be used to reference a\n\t\t\tcredential spec file that configures a container for Active Directory authentication.\n\t\t\tFor more information, see Using gMSAs for Windows\n\t\t\t\tContainers and Using gMSAs for Linux\n\t\t\t\tContainers in the Amazon Elastic Container Service Developer Guide.

\n

This parameter maps to SecurityOpt in the docker container create command\n\t\t\tand the --security-opt option to docker run.

\n \n

The Amazon ECS container agent running on a container instance must register with the\n\t\t\t\t\tECS_SELINUX_CAPABLE=true or ECS_APPARMOR_CAPABLE=true\n\t\t\t\tenvironment variables before containers placed on that instance can use these\n\t\t\t\tsecurity options. For more information, see Amazon ECS Container\n\t\t\t\t\tAgent Configuration in the Amazon Elastic Container Service Developer Guide.

\n
\n

Valid values: \"no-new-privileges\" | \"apparmor:PROFILE\" | \"label:value\" |\n\t\t\t\"credentialspec:CredentialSpecFilePath\"

" } }, "interactive": { "target": "com.amazonaws.ecs#BoxedBoolean", "traits": { - "smithy.api#documentation": "

When this parameter is true, you can deploy containerized applications\n\t\t\tthat require stdin or a tty to be allocated. This parameter\n\t\t\tmaps to OpenStdin in the Create a container section of the\n\t\t\tDocker Remote API and the --interactive option to docker run.

" + "smithy.api#documentation": "

When this parameter is true, you can deploy containerized applications\n\t\t\tthat require stdin or a tty to be allocated. This parameter\n\t\t\tmaps to OpenStdin in the docker container create command and the\n\t\t\t\t--interactive option to docker run.

" } }, "pseudoTerminal": { "target": "com.amazonaws.ecs#BoxedBoolean", "traits": { - "smithy.api#documentation": "

When this parameter is true, a TTY is allocated. This parameter maps to\n\t\t\t\tTty in the Create a container section of the\n\t\t\tDocker Remote API and the --tty option to docker run.

" + "smithy.api#documentation": "

When this parameter is true, a TTY is allocated. This parameter maps to\n\t\t\t\tTty in the docker container create command and the --tty\n\t\t\toption to docker run.

" } }, "dockerLabels": { "target": "com.amazonaws.ecs#DockerLabelsMap", "traits": { - "smithy.api#documentation": "

A key/value map of labels to add to the container. This parameter maps to\n\t\t\t\tLabels in the Create a container section of the\n\t\t\tDocker Remote API and the --label option to docker run. This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version --format '{{.Server.APIVersion}}'\n

" + "smithy.api#documentation": "

A key/value map of labels to add to the container. This parameter maps to\n\t\t\t\tLabels in the docker container create command and the\n\t\t\t\t--label option to docker run. This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version --format '{{.Server.APIVersion}}'\n

" } }, "ulimits": { "target": "com.amazonaws.ecs#UlimitList", "traits": { - "smithy.api#documentation": "

A list of ulimits to set in the container. If a ulimit value\n\t\t\tis specified in a task definition, it overrides the default values set by Docker. This\n\t\t\tparameter maps to Ulimits in the Create a container section\n\t\t\tof the Docker Remote API and the --ulimit option to docker run. Valid naming values are displayed\n\t\t\tin the Ulimit data type.

\n

Amazon ECS tasks hosted on Fargate use the default\n\t\t\t\t\t\t\tresource limit values set by the operating system with the exception of\n\t\t\t\t\t\t\tthe nofile resource limit parameter which Fargate\n\t\t\t\t\t\t\toverrides. The nofile resource limit sets a restriction on\n\t\t\t\t\t\t\tthe number of open files that a container can use. The default\n\t\t\t\t\t\t\t\tnofile soft limit is 1024 and the default hard limit\n\t\t\t\t\t\t\tis 65535.

\n

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version --format '{{.Server.APIVersion}}'\n

\n \n

This parameter is not supported for Windows containers.

\n
" + "smithy.api#documentation": "

A list of ulimits to set in the container. If a ulimit value\n\t\t\tis specified in a task definition, it overrides the default values set by Docker. This\n\t\t\tparameter maps to Ulimits in the docker container create command and the\n\t\t\t\t--ulimit option to docker run. Valid naming values are displayed in the\n\t\t\t\tUlimit data type.

\n

Amazon ECS tasks hosted on Fargate use the default\n\t\t\t\t\t\t\tresource limit values set by the operating system with the exception of\n\t\t\t\t\t\t\tthe nofile resource limit parameter which Fargate\n\t\t\t\t\t\t\toverrides. The nofile resource limit sets a restriction on\n\t\t\t\t\t\t\tthe number of open files that a container can use. The default\n\t\t\t\t\t\t\t\tnofile soft limit is 65535 and the default hard limit\n\t\t\t\t\t\t\tis 65535.

\n

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version --format '{{.Server.APIVersion}}'\n

\n \n

This parameter is not supported for Windows containers.

\n
" } }, "logConfiguration": { "target": "com.amazonaws.ecs#LogConfiguration", "traits": { - "smithy.api#documentation": "

The log configuration specification for the container.

\n

This parameter maps to LogConfig in the\n\t\t\tCreate a container section of the Docker Remote API and the\n\t\t\t\t--log-driver option to docker\n\t\t\t\trun. By default, containers use the same logging driver that the Docker\n\t\t\tdaemon uses. However the container can use a different logging driver than the Docker\n\t\t\tdaemon by specifying a log driver with this parameter in the container definition. To\n\t\t\tuse a different logging driver for a container, the log system must be configured\n\t\t\tproperly on the container instance (or on a different log server for remote logging\n\t\t\toptions). For more information about the options for different supported log drivers,\n\t\t\tsee Configure\n\t\t\t\tlogging drivers in the Docker documentation.

\n \n

Amazon ECS currently supports a subset of the logging drivers available to the Docker\n\t\t\t\tdaemon (shown in the LogConfiguration data type). Additional log\n\t\t\t\tdrivers may be available in future releases of the Amazon ECS container agent.

\n
\n

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version --format '{{.Server.APIVersion}}'\n

\n \n

The Amazon ECS container agent running on a container instance must register the\n\t\t\t\tlogging drivers available on that instance with the\n\t\t\t\t\tECS_AVAILABLE_LOGGING_DRIVERS environment variable before\n\t\t\t\tcontainers placed on that instance can use these log configuration options. For more\n\t\t\t\tinformation, see Amazon ECS Container\n\t\t\t\t\tAgent Configuration in the Amazon Elastic Container Service Developer Guide.

\n
" + "smithy.api#documentation": "

The log configuration specification for the container.

\n

This parameter maps to LogConfig in the docker container create command\n\t\t\tand the --log-driver option to docker run. By default, containers use the\n\t\t\tsame logging driver that the Docker daemon uses. However the container can use a\n\t\t\tdifferent logging driver than the Docker daemon by specifying a log driver with this\n\t\t\tparameter in the container definition. To use a different logging driver for a\n\t\t\tcontainer, the log system must be configured properly on the container instance (or on a\n\t\t\tdifferent log server for remote logging options).

\n \n

Amazon ECS currently supports a subset of the logging drivers available to the Docker\n\t\t\t\tdaemon (shown in the LogConfiguration data type). Additional log drivers may be available in\n\t\t\t\tfuture releases of the Amazon ECS container agent.

\n
\n

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version --format '{{.Server.APIVersion}}'\n

\n \n

The Amazon ECS container agent running on a container instance must register the\n\t\t\t\tlogging drivers available on that instance with the\n\t\t\t\t\tECS_AVAILABLE_LOGGING_DRIVERS environment variable before\n\t\t\t\tcontainers placed on that instance can use these log configuration options. For more\n\t\t\t\tinformation, see Amazon ECS Container\n\t\t\t\t\tAgent Configuration in the Amazon Elastic Container Service Developer Guide.

\n
" } }, "healthCheck": { "target": "com.amazonaws.ecs#HealthCheck", "traits": { - "smithy.api#documentation": "

The container health check command and associated configuration parameters for the\n\t\t\tcontainer. This parameter maps to HealthCheck in the\n\t\t\tCreate a container section of the Docker Remote API and the\n\t\t\t\tHEALTHCHECK parameter of docker\n\t\t\t\trun.

" + "smithy.api#documentation": "

The container health check command and associated configuration parameters for the\n\t\t\tcontainer. This parameter maps to HealthCheck in the docker container\n\t\t\tcreate command and the HEALTHCHECK parameter of docker run.

" } }, "systemControls": { "target": "com.amazonaws.ecs#SystemControls", "traits": { - "smithy.api#documentation": "

A list of namespaced kernel parameters to set in the container. This parameter maps to\n\t\t\t\tSysctls in the Create a container section of the\n\t\t\tDocker Remote API and the --sysctl option to docker run. For example, you can configure\n\t\t\t\tnet.ipv4.tcp_keepalive_time setting to maintain longer lived\n\t\t\tconnections.

" + "smithy.api#documentation": "

A list of namespaced kernel parameters to set in the container. This parameter maps to\n\t\t\t\tSysctls in the docker container create command and the\n\t\t\t\t--sysctl option to docker run. For example, you can configure\n\t\t\t\tnet.ipv4.tcp_keepalive_time setting to maintain longer lived\n\t\t\tconnections.

" } }, "resourceRequirements": { @@ -2556,6 +2979,38 @@ "smithy.api#documentation": "

The dependencies defined for container startup and shutdown. A container can contain\n\t\t\tmultiple dependencies. When a dependency is defined for container startup, for container\n\t\t\tshutdown it is reversed.

\n

Your Amazon ECS container instances require at least version 1.26.0 of the container agent\n\t\t\tto use container dependencies. However, we recommend using the latest container agent\n\t\t\tversion. For information about checking your agent version and updating to the latest\n\t\t\tversion, see Updating the Amazon ECS\n\t\t\t\tContainer Agent in the Amazon Elastic Container Service Developer Guide. If you're using an Amazon ECS-optimized Linux AMI,\n\t\t\tyour instance needs at least version 1.26.0-1 of the ecs-init package. If\n\t\t\tyour container instances are launched from version 20190301 or later, then\n\t\t\tthey contain the required versions of the container agent and ecs-init. For\n\t\t\tmore information, see Amazon ECS-optimized Linux AMI\n\t\t\tin the Amazon Elastic Container Service Developer Guide.

\n \n

For tasks that use the Fargate launch type, the task or service\n\t\t\t\trequires the following platforms:

\n \n
\n

For more information about how to create a container dependency, see Container dependency in the Amazon Elastic Container Service Developer Guide.

" } }, + "com.amazonaws.ecs#ContainerImage": { + "type": "structure", + "members": { + "containerName": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The name of the container.

" + } + }, + "imageDigest": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The container image digest.

" + } + }, + "image": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The container image.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The details about the container image a service revision uses.

\n

To ensure that all tasks in a service use the same container image, Amazon ECS\n\t\t\tresolves container image names and any image tags specified in the task definition to\n\t\t\tcontainer image digests.

\n

After the container image digest has been established, Amazon ECS uses the digest to\n\t\t\tstart any other desired tasks, and for any future service and service revision updates.\n\t\t\tThis leads to all tasks in a service always running identical container images,\n\t\t\tresulting in version consistency for your software. For more information, see Container image resolution in the Amazon ECS Developer Guide.

" + } + }, + "com.amazonaws.ecs#ContainerImages": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#ContainerImage" + } + }, "com.amazonaws.ecs#ContainerInstance": { "type": "structure", "members": { @@ -2644,7 +3099,7 @@ "attributes": { "target": "com.amazonaws.ecs#Attributes", "traits": { - "smithy.api#documentation": "

The attributes set for the container instance, either by the Amazon ECS container agent at\n\t\t\tinstance registration or manually with the PutAttributes\n\t\t\toperation.

" + "smithy.api#documentation": "

The attributes set for the container instance, either by the Amazon ECS container agent at\n\t\t\tinstance registration or manually with the PutAttributes\n\t\t\toperation.

" } }, "registeredAt": { @@ -2822,6 +3277,33 @@ "target": "com.amazonaws.ecs#ContainerOverride" } }, + "com.amazonaws.ecs#ContainerRestartPolicy": { + "type": "structure", + "members": { + "enabled": { + "target": "com.amazonaws.ecs#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

Specifies whether a restart policy is enabled for the container.

", + "smithy.api#required": {} + } + }, + "ignoredExitCodes": { + "target": "com.amazonaws.ecs#IntegerList", + "traits": { + "smithy.api#documentation": "

A list of exit codes that Amazon ECS will ignore and not attempt a restart on. You can\n\t\t\tspecify a maximum of 50 container exit codes. By default, Amazon ECS does not ignore any exit\n\t\t\tcodes.

" + } + }, + "restartAttemptPeriod": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

A period of time (in seconds) that the container must run for before a restart can be\n\t\t\tattempted. A container can be restarted only once every\n\t\t\t\trestartAttemptPeriod seconds. If a container isn't able to run for this\n\t\t\ttime period and exits early, it will not be restarted. You can set a minimum\n\t\t\t\trestartAttemptPeriod of 60 seconds and a maximum\n\t\t\t\trestartAttemptPeriod of 1800 seconds. By default, a container must run\n\t\t\tfor 300 seconds before it can be restarted.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

You can enable a restart policy for each container defined in your task definition, to\n\t\t\tovercome transient failures faster and maintain task availability. When you enable a\n\t\t\trestart policy for a container, Amazon ECS can restart the container if it exits, without\n\t\t\tneeding to replace the task. For more information, see Restart\n\t\t\t\tindividual containers in Amazon ECS tasks with container restart policies in the\n\t\t\tAmazon Elastic Container Service Developer Guide.

" + } + }, "com.amazonaws.ecs#ContainerStateChange": { "type": "structure", "members": { @@ -2884,6 +3366,38 @@ "target": "com.amazonaws.ecs#Container" } }, + "com.amazonaws.ecs#CpuManufacturer": { + "type": "enum", + "members": { + "INTEL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "intel" + } + }, + "AMD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "amd" + } + }, + "AMAZON_WEB_SERVICES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "amazon-web-services" + } + } + } + }, + "com.amazonaws.ecs#CpuManufacturerSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#CpuManufacturer", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ecs#CreateCapacityProvider": { "type": "operation", "input": { @@ -2896,6 +3410,9 @@ { "target": "com.amazonaws.ecs#ClientException" }, + { + "target": "com.amazonaws.ecs#ClusterNotFoundException" + }, { "target": "com.amazonaws.ecs#InvalidParameterException" }, @@ -2905,12 +3422,51 @@ { "target": "com.amazonaws.ecs#ServerException" }, + { + "target": "com.amazonaws.ecs#UnsupportedFeatureException" + }, { "target": "com.amazonaws.ecs#UpdateInProgressException" } ], "traits": { - "smithy.api#documentation": "

Creates a new capacity provider. Capacity providers are associated with an Amazon ECS\n\t\t\tcluster and are used in capacity provider strategies to facilitate cluster auto\n\t\t\tscaling.

\n

Only capacity providers that use an Auto Scaling group can be created. Amazon ECS tasks on\n\t\t\tFargate use the FARGATE and FARGATE_SPOT capacity providers.\n\t\t\tThese providers are available to all accounts in the Amazon Web Services Regions that Fargate\n\t\t\tsupports.

" + "smithy.api#documentation": "

Creates a capacity provider. Capacity providers are associated with a cluster and are used in capacity provider strategies to facilitate cluster auto scaling. You can create capacity providers for Amazon ECS Managed Instances and EC2 instances. Fargate has the predefined FARGATE and FARGATE_SPOT capacity providers.

", + "smithy.api#examples": [ + { + "title": "To create a capacity provider ", + "documentation": "This example creates a capacity provider that uses the specified Auto Scaling group MyASG and has managed scaling and manager termination protection enabled. ", + "input": { + "name": "MyCapacityProvider", + "autoScalingGroupProvider": { + "autoScalingGroupArn": "arn:aws:autoscaling:us-east-1:123456789012:autoScalingGroup:57ffcb94-11f0-4d6d-bf60-3bac5EXAMPLE:autoScalingGroupName/MyASG", + "managedScaling": { + "status": "ENABLED", + "targetCapacity": 100 + }, + "managedTerminationProtection": "ENABLED" + } + }, + "output": { + "capacityProvider": { + "capacityProviderArn": "arn:aws:ecs:us-east-1:123456789012:capacity-provider/MyCapacityProvider", + "name": "MyCapacityProvider", + "status": "ACTIVE", + "autoScalingGroupProvider": { + "autoScalingGroupArn": "arn:aws:autoscaling:us-east-1:132456789012:autoScalingGroup:57ffcb94-11f0-4d6d-bf60-3bac5EXAMPLE:autoScalingGroupName/MyASG", + "managedScaling": { + "status": "ENABLED", + "targetCapacity": 100, + "minimumScalingStepSize": 1, + "maximumScalingStepSize": 10000, + "instanceWarmupPeriod": 300 + }, + "managedTerminationProtection": "ENABLED" + }, + "tags": [] + } + } + } + ] } }, "com.amazonaws.ecs#CreateCapacityProviderRequest": { @@ -2923,11 +3479,22 @@ "smithy.api#required": {} } }, + "cluster": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The name of the cluster to associate with the capacity provider. When you create a capacity provider with Amazon ECS Managed Instances, it becomes available only within the specified cluster.

" + } + }, "autoScalingGroupProvider": { "target": "com.amazonaws.ecs#AutoScalingGroupProvider", "traits": { - "smithy.api#documentation": "

The details of the Auto Scaling group for the capacity provider.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The details of the Auto Scaling group for the capacity provider.

" + } + }, + "managedInstancesProvider": { + "target": "com.amazonaws.ecs#CreateManagedInstancesProviderConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration for the Amazon ECS Managed Instances provider. This configuration specifies how Amazon ECS manages Amazon EC2 instances on your behalf, including the infrastructure role, instance launch template, and tag propagation settings.

" } }, "tags": { @@ -2978,7 +3545,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a new Amazon ECS cluster. By default, your account receives a default\n\t\t\tcluster when you launch your first container instance. However, you can create your own\n\t\t\tcluster with a unique name with the CreateCluster action.

\n \n

When you call the CreateCluster API operation, Amazon ECS attempts to\n\t\t\t\tcreate the Amazon ECS service-linked role for your account. This is so that it can manage\n\t\t\t\trequired resources in other Amazon Web Services services on your behalf. However, if the user that\n\t\t\t\tmakes the call doesn't have permissions to create the service-linked role, it isn't\n\t\t\t\tcreated. For more information, see Using\n\t\t\t\t\tservice-linked roles for Amazon ECS in the Amazon Elastic Container Service Developer Guide.

\n
", + "smithy.api#documentation": "

Creates a new Amazon ECS cluster. By default, your account receives a default\n\t\t\tcluster when you launch your first container instance. However, you can create your own\n\t\t\tcluster with a unique name.

\n \n

When you call the CreateCluster\n\t\t\t\tAPI operation, Amazon ECS attempts to create the Amazon ECS service-linked role for your\n\t\t\t\taccount. This is so that it can manage required resources in other Amazon Web Services services on\n\t\t\t\tyour behalf. However, if the user that makes the call doesn't have permissions to\n\t\t\t\tcreate the service-linked role, it isn't created. For more information, see Using\n\t\t\t\t\tservice-linked roles for Amazon ECS in the Amazon Elastic Container Service Developer Guide.

\n
", "smithy.api#examples": [ { "title": "To create a new cluster", @@ -3019,7 +3586,7 @@ "settings": { "target": "com.amazonaws.ecs#ClusterSettings", "traits": { - "smithy.api#documentation": "

The setting to use when creating a cluster. This parameter is used to turn on CloudWatch\n\t\t\tContainer Insights for a cluster. If this value is specified, it overrides the\n\t\t\t\tcontainerInsights value set with PutAccountSetting or\n\t\t\t\tPutAccountSettingDefault.

" + "smithy.api#documentation": "

The setting to use when creating a cluster. This parameter is used to turn on CloudWatch\n\t\t\tContainer Insights for a cluster. If this value is specified, it overrides the\n\t\t\t\tcontainerInsights value set with PutAccountSetting or PutAccountSettingDefault.

" } }, "configuration": { @@ -3037,7 +3604,7 @@ "defaultCapacityProviderStrategy": { "target": "com.amazonaws.ecs#CapacityProviderStrategy", "traits": { - "smithy.api#documentation": "

The capacity provider strategy to set as the default for the cluster. After a default\n\t\t\tcapacity provider strategy is set for a cluster, when you call the CreateService or RunTask APIs with no\n\t\t\tcapacity provider strategy or launch type specified, the default capacity provider\n\t\t\tstrategy for the cluster is used.

\n

If a default capacity provider strategy isn't defined for a cluster when it was\n\t\t\tcreated, it can be defined later with the PutClusterCapacityProviders\n\t\t\tAPI operation.

" + "smithy.api#documentation": "

The capacity provider strategy to set as the default for the cluster. After a default\n\t\t\tcapacity provider strategy is set for a cluster, when you call the CreateService or RunTask APIs with no\n\t\t\tcapacity provider strategy or launch type specified, the default capacity provider\n\t\t\tstrategy for the cluster is used.

\n

If a default capacity provider strategy isn't defined for a cluster when it was\n\t\t\tcreated, it can be defined later with the PutClusterCapacityProviders API operation.

" } }, "serviceConnectDefaults": { @@ -3065,6 +3632,34 @@ "smithy.api#output": {} } }, + "com.amazonaws.ecs#CreateManagedInstancesProviderConfiguration": { + "type": "structure", + "members": { + "infrastructureRoleArn": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the infrastructure role that Amazon ECS uses to manage instances on your behalf. This role must have permissions to launch, terminate, and manage Amazon EC2 instances, as well as access to other Amazon Web Services services required for Amazon ECS Managed Instances functionality.

\n

For more information, see Amazon ECS infrastructure IAM role in the Amazon ECS Developer Guide.\n\t\t

", + "smithy.api#required": {} + } + }, + "instanceLaunchTemplate": { + "target": "com.amazonaws.ecs#InstanceLaunchTemplate", + "traits": { + "smithy.api#documentation": "

The launch template configuration that specifies how Amazon ECS should launch Amazon EC2 instances. This includes the instance profile, network configuration, storage settings, and instance requirements for attribute-based instance type selection.

\n

For more information, see Store instance launch parameters in Amazon EC2 launch templates in the Amazon EC2 User Guide.

", + "smithy.api#required": {} + } + }, + "propagateTags": { + "target": "com.amazonaws.ecs#PropagateMITags", + "traits": { + "smithy.api#documentation": "

Specifies whether to propagate tags from the capacity provider to the Amazon ECS Managed Instances. When enabled, tags applied to the capacity provider are automatically applied to all instances launched by this provider.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration for creating a Amazon ECS Managed Instances provider. This specifies how Amazon ECS should manage Amazon EC2 instances, including the infrastructure role, instance launch template, and whether to propagate tags from the capacity provider to the instances.

" + } + }, "com.amazonaws.ecs#CreateService": { "type": "operation", "input": { @@ -3103,7 +3698,7 @@ } ], "traits": { - "smithy.api#documentation": "

Runs and maintains your desired number of tasks from a specified task definition. If\n\t\t\tthe number of tasks running in a service drops below the desiredCount,\n\t\t\tAmazon ECS runs another copy of the task in the specified cluster. To update an existing\n\t\t\tservice, see the UpdateService action.

\n \n

On March 21, 2024, a change was made to resolve the task definition revision before authorization. When a task definition revision is not specified, authorization will occur using the latest revision of a task definition.

\n
\n

In addition to maintaining the desired count of tasks in your service, you can\n\t\t\toptionally run your service behind one or more load balancers. The load balancers\n\t\t\tdistribute traffic across the tasks that are associated with the service. For more\n\t\t\tinformation, see Service load balancing in the Amazon Elastic Container Service Developer Guide.

\n

You can attach Amazon EBS volumes to Amazon ECS tasks by configuring the volume when creating or\n\t\t\tupdating a service. volumeConfigurations is only supported for REPLICA\n\t\t\tservice and not DAEMON service. For more infomation, see Amazon EBS volumes in the Amazon Elastic Container Service Developer Guide.

\n

Tasks for services that don't use a load balancer are considered healthy if they're in\n\t\t\tthe RUNNING state. Tasks for services that use a load balancer are\n\t\t\tconsidered healthy if they're in the RUNNING state and are reported as\n\t\t\thealthy by the load balancer.

\n

There are two service scheduler strategies available:

\n \n

You can optionally specify a deployment configuration for your service. The deployment\n\t\t\tis initiated by changing properties. For example, the deployment might be initiated by\n\t\t\tthe task definition or by your desired count of a service. This is done with an UpdateService operation. The default value for a replica service for\n\t\t\t\tminimumHealthyPercent is 100%. The default value for a daemon service\n\t\t\tfor minimumHealthyPercent is 0%.

\n

If a service uses the ECS deployment controller, the minimum healthy\n\t\t\tpercent represents a lower limit on the number of tasks in a service that must remain in\n\t\t\tthe RUNNING state during a deployment. Specifically, it represents it as a\n\t\t\tpercentage of your desired number of tasks (rounded up to the nearest integer). This\n\t\t\thappens when any of your container instances are in the DRAINING state if\n\t\t\tthe service contains tasks using the EC2 launch type. Using this\n\t\t\tparameter, you can deploy without using additional cluster capacity. For example, if you\n\t\t\tset your service to have desired number of four tasks and a minimum healthy percent of\n\t\t\t50%, the scheduler might stop two existing tasks to free up cluster capacity before\n\t\t\tstarting two new tasks. If they're in the RUNNING state, tasks for services\n\t\t\tthat don't use a load balancer are considered healthy . If they're in the\n\t\t\t\tRUNNING state and reported as healthy by the load balancer, tasks for\n\t\t\tservices that do use a load balancer are considered healthy . The\n\t\t\tdefault value for minimum healthy percent is 100%.

\n

If a service uses the ECS deployment controller, the maximum percent parameter represents an upper limit on the\n\t\t\tnumber of tasks in a service that are allowed in the RUNNING or\n\t\t\t\tPENDING state during a deployment. Specifically, it represents it as a\n\t\t\tpercentage of the desired number of tasks (rounded down to the nearest integer). This\n\t\t\thappens when any of your container instances are in the DRAINING state if\n\t\t\tthe service contains tasks using the EC2 launch type. Using this\n\t\t\tparameter, you can define the deployment batch size. For example, if your service has a\n\t\t\tdesired number of four tasks and a maximum percent value of 200%, the scheduler may\n\t\t\tstart four new tasks before stopping the four older tasks (provided that the cluster\n\t\t\tresources required to do this are available). The default value for maximum percent is\n\t\t\t200%.

\n

If a service uses either the CODE_DEPLOY or EXTERNAL\n\t\t\tdeployment controller types and tasks that use the EC2 launch type, the\n\t\t\t\tminimum healthy percent and maximum percent values are used only to define the lower and upper limit\n\t\t\ton the number of the tasks in the service that remain in the RUNNING state.\n\t\t\tThis is while the container instances are in the DRAINING state. If the\n\t\t\ttasks in the service use the Fargate launch type, the minimum healthy\n\t\t\tpercent and maximum percent values aren't used. This is the case even if they're\n\t\t\tcurrently visible when describing your service.

\n

When creating a service that uses the EXTERNAL deployment controller, you\n\t\t\tcan specify only parameters that aren't controlled at the task set level. The only\n\t\t\trequired parameter is the service name. You control your services using the CreateTaskSet operation. For more information, see Amazon ECS deployment types in the Amazon Elastic Container Service Developer Guide.

\n

When the service scheduler launches new tasks, it determines task placement. For information\n\t\t\tabout task placement and task placement strategies, see Amazon ECS\n\t\t\t\ttask placement in the Amazon Elastic Container Service Developer Guide\n

\n

Starting April 15, 2023, Amazon Web Services will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS, or Amazon EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.

", + "smithy.api#documentation": "

Runs and maintains your desired number of tasks from a specified task definition. If\n\t\t\tthe number of tasks running in a service drops below the desiredCount,\n\t\t\tAmazon ECS runs another copy of the task in the specified cluster. To update an existing\n\t\t\tservice, use UpdateService.

\n \n

On March 21, 2024, a change was made to resolve the task definition revision before authorization. When a task definition revision is not specified, authorization will occur using the latest revision of a task definition.

\n
\n \n

Amazon Elastic Inference (EI) is no longer available to customers.

\n
\n

In addition to maintaining the desired count of tasks in your service, you can\n\t\t\toptionally run your service behind one or more load balancers. The load balancers\n\t\t\tdistribute traffic across the tasks that are associated with the service. For more\n\t\t\tinformation, see Service load balancing in the Amazon Elastic Container Service Developer Guide.

\n

You can attach Amazon EBS volumes to Amazon ECS tasks by configuring the volume when creating or\n\t\t\tupdating a service. volumeConfigurations is only supported for REPLICA\n\t\t\tservice and not DAEMON service. For more information, see Amazon EBS volumes in the Amazon Elastic Container Service Developer Guide.

\n

Tasks for services that don't use a load balancer are considered healthy if they're in\n\t\t\tthe RUNNING state. Tasks for services that use a load balancer are\n\t\t\tconsidered healthy if they're in the RUNNING state and are reported as\n\t\t\thealthy by the load balancer.

\n

There are two service scheduler strategies available:

\n \n

The deployment controller is the mechanism that determines how tasks are deployed for\n\t\t\tyour service. The valid options are:

\n \n

When creating a service that uses the EXTERNAL deployment controller, you\n\t\t\tcan specify only parameters that aren't controlled at the task set level. The only\n\t\t\trequired parameter is the service name. You control your services using the CreateTaskSet. For more information, see Amazon ECS deployment types in the Amazon Elastic Container Service Developer Guide.

\n

When the service scheduler launches new tasks, it determines task placement. For\n\t\t\tinformation about task placement and task placement strategies, see Amazon ECS\n\t\t\t\ttask placement in the Amazon Elastic Container Service Developer Guide\n

", "smithy.api#examples": [ { "title": "To create a new service", @@ -3235,10 +3830,16 @@ "smithy.api#documentation": "

The family and revision (family:revision) or\n\t\t\tfull ARN of the task definition to run in your service. If a revision\n\t\t\tisn't specified, the latest ACTIVE revision is used.

\n

A task definition must be specified if the service uses either the ECS or\n\t\t\t\tCODE_DEPLOY deployment controllers.

\n

For more information about deployment types, see Amazon ECS deployment\n\t\t\t\ttypes.

" } }, + "availabilityZoneRebalancing": { + "target": "com.amazonaws.ecs#AvailabilityZoneRebalancing", + "traits": { + "smithy.api#documentation": "

Indicates whether to use Availability Zone rebalancing for the service.

\n

For more information, see Balancing an Amazon ECS service across Availability Zones in\n\t\t\tthe \n Amazon Elastic Container Service Developer Guide\n .

\n

The default behavior of AvailabilityZoneRebalancing differs between create and update requests:

\n " + } + }, "loadBalancers": { "target": "com.amazonaws.ecs#LoadBalancers", "traits": { - "smithy.api#documentation": "

A load balancer object representing the load balancers to use with your service. For\n\t\t\tmore information, see Service load balancing in the Amazon Elastic Container Service Developer Guide.

\n

If the service uses the rolling update (ECS) deployment controller and\n\t\t\tusing either an Application Load Balancer or Network Load Balancer, you must specify one or more target group ARNs to attach\n\t\t\tto the service. The service-linked role is required for services that use multiple\n\t\t\ttarget groups. For more information, see Using service-linked roles for Amazon ECS in the\n\t\t\tAmazon Elastic Container Service Developer Guide.

\n

If the service uses the CODE_DEPLOY deployment controller, the service is\n\t\t\trequired to use either an Application Load Balancer or Network Load Balancer. When creating an CodeDeploy deployment group, you\n\t\t\tspecify two target groups (referred to as a targetGroupPair). During a\n\t\t\tdeployment, CodeDeploy determines which task set in your service has the status\n\t\t\t\tPRIMARY, and it associates one target group with it. Then, it also\n\t\t\tassociates the other target group with the replacement task set. The load balancer can\n\t\t\talso have up to two listeners: a required listener for production traffic and an\n\t\t\toptional listener that you can use to perform validation tests with Lambda functions\n\t\t\tbefore routing production traffic to it.

\n

If you use the CODE_DEPLOY deployment controller, these values can be\n\t\t\tchanged when updating the service.

\n

For Application Load Balancers and Network Load Balancers, this object must contain the load balancer target group ARN,\n\t\t\tthe container name, and the container port to access from the load balancer. The\n\t\t\tcontainer name must be as it appears in a container definition. The load balancer name\n\t\t\tparameter must be omitted. When a task from this service is placed on a container\n\t\t\tinstance, the container instance and port combination is registered as a target in the\n\t\t\ttarget group that's specified here.

\n

For Classic Load Balancers, this object must contain the load balancer name, the container name , and\n\t\t\tthe container port to access from the load balancer. The container name must be as it\n\t\t\tappears in a container definition. The target group ARN parameter must be omitted.\n\t\t\tWhen a task from this service is placed on a container instance, the container instance\n\t\t\tis registered with the load balancer that's specified here.

\n

Services with tasks that use the awsvpc network mode (for example, those\n\t\t\twith the Fargate launch type) only support Application Load Balancers and Network Load Balancers. Classic Load Balancers\n\t\t\taren't supported. Also, when you create any target groups for these services, you must\n\t\t\tchoose ip as the target type, not instance. This is because\n\t\t\ttasks that use the awsvpc network mode are associated with an elastic\n\t\t\tnetwork interface, not an Amazon EC2 instance.

" + "smithy.api#documentation": "

A load balancer object representing the load balancers to use with your service. For\n\t\t\tmore information, see Service load balancing in the Amazon Elastic Container Service Developer Guide.

\n

If the service uses the ECS deployment controller and\n\t\t\tusing either an Application Load Balancer or Network Load Balancer, you must specify one or more target group ARNs to attach\n\t\t\tto the service. The service-linked role is required for services that use multiple\n\t\t\ttarget groups. For more information, see Using service-linked roles for Amazon ECS in the\n\t\t\tAmazon Elastic Container Service Developer Guide.

\n

If the service uses the CODE_DEPLOY deployment controller, the service is\n\t\t\trequired to use either an Application Load Balancer or Network Load Balancer. When creating an CodeDeploy deployment group, you\n\t\t\tspecify two target groups (referred to as a targetGroupPair). During a\n\t\t\tdeployment, CodeDeploy determines which task set in your service has the status\n\t\t\t\tPRIMARY, and it associates one target group with it. Then, it also\n\t\t\tassociates the other target group with the replacement task set. The load balancer can\n\t\t\talso have up to two listeners: a required listener for production traffic and an\n\t\t\toptional listener that you can use to perform validation tests with Lambda functions\n\t\t\tbefore routing production traffic to it.

\n

If you use the CODE_DEPLOY deployment controller, these values can be\n\t\t\tchanged when updating the service.

\n

For Application Load Balancers and Network Load Balancers, this object must contain the load balancer target group ARN,\n\t\t\tthe container name, and the container port to access from the load balancer. The\n\t\t\tcontainer name must be as it appears in a container definition. The load balancer name\n\t\t\tparameter must be omitted. When a task from this service is placed on a container\n\t\t\tinstance, the container instance and port combination is registered as a target in the\n\t\t\ttarget group that's specified here.

\n

For Classic Load Balancers, this object must contain the load balancer name, the container name , and\n\t\t\tthe container port to access from the load balancer. The container name must be as it\n\t\t\tappears in a container definition. The target group ARN parameter must be omitted.\n\t\t\tWhen a task from this service is placed on a container instance, the container instance\n\t\t\tis registered with the load balancer that's specified here.

\n

Services with tasks that use the awsvpc network mode (for example, those\n\t\t\twith the Fargate launch type) only support Application Load Balancers and Network Load Balancers. Classic Load Balancers\n\t\t\taren't supported. Also, when you create any target groups for these services, you must\n\t\t\tchoose ip as the target type, not instance. This is because\n\t\t\ttasks that use the awsvpc network mode are associated with an elastic\n\t\t\tnetwork interface, not an Amazon EC2 instance.

" } }, "serviceRegistries": { @@ -3262,19 +3863,19 @@ "launchType": { "target": "com.amazonaws.ecs#LaunchType", "traits": { - "smithy.api#documentation": "

The infrastructure that you run your service on. For more information, see Amazon ECS\n\t\t\t\tlaunch types in the Amazon Elastic Container Service Developer Guide.

\n

The FARGATE launch type runs your tasks on Fargate On-Demand\n\t\t\tinfrastructure.

\n \n

Fargate Spot infrastructure is available for use but a capacity provider\n\t\t\t\tstrategy must be used. For more information, see Fargate capacity providers in the\n\t\t\t\t\tAmazon ECS Developer Guide.

\n
\n

The EC2 launch type runs your tasks on Amazon EC2 instances registered to your\n\t\t\tcluster.

\n

The EXTERNAL launch type runs your tasks on your on-premises server or\n\t\t\tvirtual machine (VM) capacity registered to your cluster.

\n

A service can use either a launch type or a capacity provider strategy. If a\n\t\t\t\tlaunchType is specified, the capacityProviderStrategy\n\t\t\tparameter must be omitted.

" + "smithy.api#documentation": "

The infrastructure that you run your service on. For more information, see Amazon ECS\n\t\t\t\tlaunch types in the Amazon Elastic Container Service Developer Guide.

\n

The FARGATE launch type runs your tasks on Fargate On-Demand\n\t\t\tinfrastructure.

\n \n

Fargate Spot infrastructure is available for use but a capacity provider\n\t\t\t\tstrategy must be used. For more information, see Fargate capacity providers in the Amazon ECS\n\t\t\t\t\tDeveloper Guide.

\n
\n

The EC2 launch type runs your tasks on Amazon EC2 instances registered to your\n\t\t\tcluster.

\n

The EXTERNAL launch type runs your tasks on your on-premises server or\n\t\t\tvirtual machine (VM) capacity registered to your cluster.

\n

A service can use either a launch type or a capacity provider strategy. If a\n\t\t\t\tlaunchType is specified, the capacityProviderStrategy\n\t\t\tparameter must be omitted.

" } }, "capacityProviderStrategy": { "target": "com.amazonaws.ecs#CapacityProviderStrategy", "traits": { - "smithy.api#documentation": "

The capacity provider strategy to use for the service.

\n

If a capacityProviderStrategy is specified, the launchType\n\t\t\tparameter must be omitted. If no capacityProviderStrategy or\n\t\t\t\tlaunchType is specified, the\n\t\t\t\tdefaultCapacityProviderStrategy for the cluster is used.

\n

A capacity provider strategy may contain a maximum of 6 capacity providers.

" + "smithy.api#documentation": "

The capacity provider strategy to use for the service.

\n

If a capacityProviderStrategy is specified, the launchType\n\t\t\tparameter must be omitted. If no capacityProviderStrategy or\n\t\t\t\tlaunchType is specified, the\n\t\t\t\tdefaultCapacityProviderStrategy for the cluster is used.

\n

A capacity provider strategy can contain a maximum of 20 capacity providers.

" } }, "platformVersion": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The platform version that your tasks in the service are running on. A platform version\n\t\t\tis specified only for tasks using the Fargate launch type. If one isn't\n\t\t\tspecified, the LATEST platform version is used. For more information, see\n\t\t\t\tFargate platform versions in the Amazon Elastic Container Service Developer Guide.

" + "smithy.api#documentation": "

The platform version that your tasks in the service are running on. A platform version\n\t\t\tis specified only for tasks using the Fargate launch type. If one isn't\n\t\t\tspecified, the LATEST platform version is used. For more information, see\n\t\t\t\tFargate platform\n\t\t\t\tversions in the Amazon Elastic Container Service Developer Guide.

" } }, "role": { @@ -3310,7 +3911,7 @@ "healthCheckGracePeriodSeconds": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { - "smithy.api#documentation": "

The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy\n\t\t\tElastic Load Balancing target health checks after a task has first started. This is only used when your\n\t\t\tservice is configured to use a load balancer. If your service has a load balancer\n\t\t\tdefined and you don't specify a health check grace period value, the default value of\n\t\t\t\t0 is used.

\n

If you do not use an Elastic Load Balancing, we recommend that you use the startPeriod in\n\t\t\tthe task definition health check parameters. For more information, see Health\n\t\t\t\tcheck.

\n

If your service's tasks take a while to start and respond to Elastic Load Balancing health checks, you can\n\t\t\tspecify a health check grace period of up to 2,147,483,647 seconds (about 69 years).\n\t\t\tDuring that time, the Amazon ECS service scheduler ignores health check status. This grace\n\t\t\tperiod can prevent the service scheduler from marking tasks as unhealthy and stopping\n\t\t\tthem before they have time to come up.

" + "smithy.api#documentation": "

The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you do not specify a health check grace period value, the default value of 0 is used. If you do not use any of the health checks, then healthCheckGracePeriodSeconds is unused.

\n

If your service has more running tasks than desired, unhealthy tasks in the grace period might be stopped to reach the desired count.

" } }, "schedulingStrategy": { @@ -3335,13 +3936,13 @@ "target": "com.amazonaws.ecs#Boolean", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Specifies whether to turn on Amazon ECS managed tags for the tasks within the service. For\n\t\t\tmore information, see Tagging your Amazon ECS\n\t\t\t\tresources in the Amazon Elastic Container Service Developer Guide.

\n

When you use Amazon ECS managed tags, you need to set the propagateTags\n\t\t\trequest parameter.

" + "smithy.api#documentation": "

Specifies whether to turn on Amazon ECS managed tags for the tasks within the service. For\n\t\t\tmore information, see Tagging your Amazon ECS\n\t\t\t\tresources in the Amazon Elastic Container Service Developer Guide.

\n

When you use Amazon ECS managed tags, you must set the propagateTags\n\t\t\trequest parameter.

" } }, "propagateTags": { "target": "com.amazonaws.ecs#PropagateTags", "traits": { - "smithy.api#documentation": "

Specifies whether to propagate the tags from the task definition to the task. If no\n\t\t\tvalue is specified, the tags aren't propagated. Tags can only be propagated to the task\n\t\t\tduring task creation. To add tags to a task after task creation, use the TagResource API action.

\n

You must set this to a value other than NONE when you use Cost Explorer. For more information, see Amazon ECS usage reports in the Amazon Elastic Container Service Developer Guide.

\n

The default is NONE.

" + "smithy.api#documentation": "

Specifies whether to propagate the tags from the task definition to the task. If no\n\t\t\tvalue is specified, the tags aren't propagated. Tags can only be propagated to the task\n\t\t\tduring task creation. To add tags to a task after task creation, use the TagResource API action.

\n

You must set this to a value other than NONE when you use Cost Explorer.\n\t\t\tFor more information, see Amazon ECS usage reports\n\t\t\tin the Amazon Elastic Container Service Developer Guide.

\n

The default is NONE.

" } }, "enableExecuteCommand": { @@ -3362,6 +3963,12 @@ "traits": { "smithy.api#documentation": "

The configuration for a volume specified in the task definition as a volume that is\n\t\t\tconfigured at launch time. Currently, the only supported volume type is an Amazon EBS\n\t\t\tvolume.

" } + }, + "vpcLatticeConfigurations": { + "target": "com.amazonaws.ecs#VpcLatticeConfigurations", + "traits": { + "smithy.api#documentation": "

The VPC Lattice configuration for the service being created.

" + } } }, "traits": { @@ -3426,18 +4033,72 @@ } ], "traits": { - "smithy.api#documentation": "

Create a task set in the specified cluster and service. This is used when a service\n\t\t\tuses the EXTERNAL deployment controller type. For more information, see\n\t\t\t\tAmazon ECS deployment\n\t\t\t\ttypes in the Amazon Elastic Container Service Developer Guide.

\n \n

On March 21, 2024, a change was made to resolve the task definition revision before authorization. When a task definition revision is not specified, authorization will occur using the latest revision of a task definition.

\n
\n

For information about the maximum number of task sets and otther quotas, see Amazon ECS\n\t\t\tservice quotas in the Amazon Elastic Container Service Developer Guide.

" - } - }, - "com.amazonaws.ecs#CreateTaskSetRequest": { - "type": "structure", - "members": { - "service": { - "target": "com.amazonaws.ecs#String", - "traits": { - "smithy.api#documentation": "

The short name or full Amazon Resource Name (ARN) of the service to create the task set in.

", - "smithy.api#required": {} - } + "smithy.api#documentation": "

Create a task set in the specified cluster and service. This is used when a service\n\t\t\tuses the EXTERNAL deployment controller type. For more information, see\n\t\t\t\tAmazon ECS deployment\n\t\t\t\ttypes in the Amazon Elastic Container Service Developer Guide.

\n \n

On March 21, 2024, a change was made to resolve the task definition revision before authorization. When a task definition revision is not specified, authorization will occur using the latest revision of a task definition.

\n
\n

For information about the maximum number of task sets and other quotas, see Amazon ECS\n\t\t\t\tservice quotas in the Amazon Elastic Container Service Developer Guide.

", + "smithy.api#examples": [ + { + "title": "To create a task set", + "documentation": "This example creates a task set in a service that uses the EXTERNAL deployment controller.", + "input": { + "service": "MyService", + "cluster": "MyCluster", + "taskDefinition": "MyTaskDefinition:2", + "networkConfiguration": { + "awsvpcConfiguration": { + "subnets": [ + "subnet-12344321" + ], + "securityGroups": [ + "sg-12344321" + ] + } + } + }, + "output": { + "taskSet": { + "id": "ecs-svc/1234567890123456789", + "taskSetArn": "arn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789", + "status": "ACTIVE", + "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/MyTaskDefinition:2", + "computedDesiredCount": 0, + "pendingCount": 0, + "runningCount": 0, + "createdAt": 1.557128360711E9, + "updatedAt": 1.557128360711E9, + "launchType": "EC2", + "networkConfiguration": { + "awsvpcConfiguration": { + "subnets": [ + "subnet-12344321" + ], + "securityGroups": [ + "sg-12344321" + ], + "assignPublicIp": "DISABLED" + } + }, + "loadBalancers": [], + "serviceRegistries": [], + "scale": { + "value": 0, + "unit": "PERCENT" + }, + "stabilityStatus": "STABILIZING", + "stabilityStatusAt": 1.557128360711E9 + } + } + } + ] + } + }, + "com.amazonaws.ecs#CreateTaskSetRequest": { + "type": "structure", + "members": { + "service": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The short name or full Amazon Resource Name (ARN) of the service to create the task set in.

", + "smithy.api#required": {} + } }, "cluster": { "target": "com.amazonaws.ecs#String", @@ -3486,7 +4147,7 @@ "capacityProviderStrategy": { "target": "com.amazonaws.ecs#CapacityProviderStrategy", "traits": { - "smithy.api#documentation": "

The capacity provider strategy to use for the task set.

\n

A capacity provider strategy consists of one or more capacity providers along with the\n\t\t\t\tbase and weight to assign to them. A capacity provider\n\t\t\tmust be associated with the cluster to be used in a capacity provider strategy. The\n\t\t\t\tPutClusterCapacityProviders API is used to associate a capacity\n\t\t\tprovider with a cluster. Only capacity providers with an ACTIVE or\n\t\t\t\tUPDATING status can be used.

\n

If a capacityProviderStrategy is specified, the launchType\n\t\t\tparameter must be omitted. If no capacityProviderStrategy or\n\t\t\t\tlaunchType is specified, the\n\t\t\t\tdefaultCapacityProviderStrategy for the cluster is used.

\n

If specifying a capacity provider that uses an Auto Scaling group, the capacity\n\t\t\tprovider must already be created. New capacity providers can be created with the CreateCapacityProvider API operation.

\n

To use a Fargate capacity provider, specify either the FARGATE or\n\t\t\t\tFARGATE_SPOT capacity providers. The Fargate capacity providers are\n\t\t\tavailable to all accounts and only need to be associated with a cluster to be\n\t\t\tused.

\n

The PutClusterCapacityProviders API operation is used to update the\n\t\t\tlist of available capacity providers for a cluster after the cluster is created.

" + "smithy.api#documentation": "

The capacity provider strategy to use for the task set.

\n

A capacity provider strategy consists of one or more capacity providers along with the\n\t\t\t\tbase and weight to assign to them. A capacity provider\n\t\t\tmust be associated with the cluster to be used in a capacity provider strategy. The\n\t\t\t\tPutClusterCapacityProviders API is used to associate a capacity provider\n\t\t\twith a cluster. Only capacity providers with an ACTIVE or\n\t\t\t\tUPDATING status can be used.

\n

If a capacityProviderStrategy is specified, the launchType\n\t\t\tparameter must be omitted. If no capacityProviderStrategy or\n\t\t\t\tlaunchType is specified, the\n\t\t\t\tdefaultCapacityProviderStrategy for the cluster is used.

\n

If specifying a capacity provider that uses an Auto Scaling group, the capacity\n\t\t\tprovider must already be created. New capacity providers can be created with the CreateCapacityProviderProviderAPI operation.

\n

To use a Fargate capacity provider, specify either the FARGATE or\n\t\t\t\tFARGATE_SPOT capacity providers. The Fargate capacity providers are\n\t\t\tavailable to all accounts and only need to be associated with a cluster to be\n\t\t\tused.

\n

The PutClusterCapacityProviders API operation is used to update the list of\n\t\t\tavailable capacity providers for a cluster after the cluster is created.

" } }, "platformVersion": { @@ -3532,6 +4193,26 @@ "smithy.api#output": {} } }, + "com.amazonaws.ecs#CreatedAt": { + "type": "structure", + "members": { + "before": { + "target": "com.amazonaws.ecs#Timestamp", + "traits": { + "smithy.api#documentation": "

Include service deployments in the result that were created before this time. The\n\t\t\tformat is yyyy-MM-dd HH:mm:ss.SSSSSS.

" + } + }, + "after": { + "target": "com.amazonaws.ecs#Timestamp", + "traits": { + "smithy.api#documentation": "

Include service deployments in the result that were created after this time. The\n\t\t\tformat is yyyy-MM-dd HH:mm:ss.SSSSSS.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The optional filter to narrow the ListServiceDeployment results.

\n

If you do not specify a value, service deployments that were created before the\n\t\t\tcurrent time are included in the result.

" + } + }, "com.amazonaws.ecs#DeleteAccountSetting": { "type": "operation", "input": { @@ -3555,29 +4236,29 @@ "smithy.api#documentation": "

Disables an account setting for a specified user, role, or the root user for an\n\t\t\taccount.

", "smithy.api#examples": [ { - "title": "To delete your account setting", - "documentation": "This example deletes the account setting for your user for the specified resource type.", + "title": "To delete the account settings for a specific IAM user or IAM role", + "documentation": "This example deletes the account setting for a specific IAM user or IAM role for the specified resource type. Only the root user can view or modify the account settings for another user.", "input": { - "name": "serviceLongArnFormat" + "name": "containerInstanceLongArnFormat", + "principalArn": "arn:aws:iam:::user/principalName" }, "output": { "setting": { - "name": "serviceLongArnFormat", + "name": "containerInstanceLongArnFormat", "value": "enabled", "principalArn": "arn:aws:iam:::user/principalName" } } }, { - "title": "To delete the account settings for a specific IAM user or IAM role", - "documentation": "This example deletes the account setting for a specific IAM user or IAM role for the specified resource type. Only the root user can view or modify the account settings for another user.", + "title": "To delete your account setting", + "documentation": "This example deletes the account setting for your user for the specified resource type.", "input": { - "name": "containerInstanceLongArnFormat", - "principalArn": "arn:aws:iam:::user/principalName" + "name": "serviceLongArnFormat" }, "output": { "setting": { - "name": "containerInstanceLongArnFormat", + "name": "serviceLongArnFormat", "value": "enabled", "principalArn": "arn:aws:iam:::user/principalName" } @@ -3599,7 +4280,7 @@ "principalArn": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the principal. It can be an user, role, or the\n\t\t\troot user. If you specify the root user, it disables the account setting for all users, roles,\n\t\t\tand the root user of the account unless a user or role explicitly overrides these settings.\n\t\t\tIf this field is omitted, the setting is changed only for the authenticated user.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the principal. It can be a user, role, or the\n\t\t\troot user. If you specify the root user, it disables the account setting for all users, roles,\n\t\t\tand the root user of the account unless a user or role explicitly overrides these settings.\n\t\t\tIf this field is omitted, the setting is changed only for the authenticated user.

\n

In order to use this parameter, you must be the root user, or the principal.

" } } }, @@ -3641,7 +4322,30 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes one or more custom attributes from an Amazon ECS resource.

" + "smithy.api#documentation": "

Deletes one or more custom attributes from an Amazon ECS resource.

", + "smithy.api#examples": [ + { + "title": "To delete a custom attribute from an Amazon ECS instance", + "documentation": "This example deletes an attribute named stack from a container instance. ", + "input": { + "attributes": [ + { + "name": "stack", + "targetId": "aws:ecs:us-west-2:130757420319:container-instance/1c3be8ed-df30-47b4-8f1e-6e68ebd01f34" + } + ] + }, + "output": { + "attributes": [ + { + "name": "stack", + "targetId": "aws:ecs:us-west-2:130757420319:container-instance/1c3be8ed-df30-47b4-8f1e-6e68ebd01f34", + "value": "production" + } + ] + } + } + ] } }, "com.amazonaws.ecs#DeleteAttributesRequest": { @@ -3691,15 +4395,49 @@ { "target": "com.amazonaws.ecs#ClientException" }, + { + "target": "com.amazonaws.ecs#ClusterNotFoundException" + }, { "target": "com.amazonaws.ecs#InvalidParameterException" }, { "target": "com.amazonaws.ecs#ServerException" + }, + { + "target": "com.amazonaws.ecs#UnsupportedFeatureException" } ], "traits": { - "smithy.api#documentation": "

Deletes the specified capacity provider.

\n \n

The FARGATE and FARGATE_SPOT capacity providers are\n\t\t\t\treserved and can't be deleted. You can disassociate them from a cluster using either\n\t\t\t\tthe PutClusterCapacityProviders API or by deleting the\n\t\t\t\tcluster.

\n
\n

Prior to a capacity provider being deleted, the capacity provider must be removed from\n\t\t\tthe capacity provider strategy from all services. The UpdateService\n\t\t\tAPI can be used to remove a capacity provider from a service's capacity provider\n\t\t\tstrategy. When updating a service, the forceNewDeployment option can be\n\t\t\tused to ensure that any tasks using the Amazon EC2 instance capacity provided by the capacity\n\t\t\tprovider are transitioned to use the capacity from the remaining capacity providers.\n\t\t\tOnly capacity providers that aren't associated with a cluster can be deleted. To remove\n\t\t\ta capacity provider from a cluster, you can either use PutClusterCapacityProviders or delete the cluster.

" + "smithy.api#documentation": "

Deletes the specified capacity provider.

\n \n

The FARGATE and FARGATE_SPOT capacity providers are\n\t\t\t\treserved and can't be deleted. You can disassociate them from a cluster using either\n\t\t\t\t\tPutClusterCapacityProviders or by deleting the cluster.

\n
\n

Prior to a capacity provider being deleted, the capacity provider must be removed from\n\t\t\tthe capacity provider strategy from all services. The UpdateService API\n\t\t\tcan be used to remove a capacity provider from a service's capacity provider strategy.\n\t\t\tWhen updating a service, the forceNewDeployment option can be used to\n\t\t\tensure that any tasks using the Amazon EC2 instance capacity provided by the capacity\n\t\t\tprovider are transitioned to use the capacity from the remaining capacity providers.\n\t\t\tOnly capacity providers that aren't associated with a cluster can be deleted. To remove\n\t\t\ta capacity provider from a cluster, you can either use PutClusterCapacityProviders or delete the cluster.

", + "smithy.api#examples": [ + { + "title": "To delete a specified capacity provider", + "documentation": "This example deletes a specified capacity provider. ", + "input": { + "capacityProvider": "arn:aws:ecs:us-west-2:123456789012:capacity-provider/ExampleCapacityProvider" + }, + "output": { + "capacityProvider": { + "capacityProviderArn": "arn:aws:ecs:us-west-2:123456789012:capacity-provider/ExampleCapacityProvider", + "name": "ExampleCapacityProvider", + "status": "ACTIVE", + "autoScalingGroupProvider": { + "autoScalingGroupArn": "arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:a1b2c3d4-5678-90ab-cdef-EXAMPLE11111:autoScalingGroupName/MyAutoScalingGroup", + "managedScaling": { + "status": "ENABLED", + "targetCapacity": 100, + "minimumScalingStepSize": 1, + "maximumScalingStepSize": 10000 + }, + "managedTerminationProtection": "DISABLED" + }, + "updateStatus": "DELETE_IN_PROGRESS", + "tags": [] + } + } + } + ] } }, "com.amazonaws.ecs#DeleteCapacityProviderRequest": { @@ -3711,6 +4449,12 @@ "smithy.api#documentation": "

The short name or full Amazon Resource Name (ARN) of the capacity provider to delete.

", "smithy.api#required": {} } + }, + "cluster": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The name of the cluster that contains the capacity provider to delete. Managed instances capacity providers are cluster-scoped and can only be deleted from their associated cluster.

" + } } }, "traits": { @@ -3743,6 +4487,9 @@ { "target": "com.amazonaws.ecs#ClientException" }, + { + "target": "com.amazonaws.ecs#ClusterContainsCapacityProviderException" + }, { "target": "com.amazonaws.ecs#ClusterContainsContainerInstancesException" }, @@ -3766,7 +4513,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the specified cluster. The cluster transitions to the INACTIVE\n\t\t\tstate. Clusters with an INACTIVE status might remain discoverable in your\n\t\t\taccount for a period of time. However, this behavior is subject to change in the future.\n\t\t\tWe don't recommend that you rely on INACTIVE clusters persisting.

\n

You must deregister all container instances from this cluster before you may delete\n\t\t\tit. You can list the container instances in a cluster with ListContainerInstances and deregister them with DeregisterContainerInstance.

", + "smithy.api#documentation": "

Deletes the specified cluster. The cluster transitions to the INACTIVE\n\t\t\tstate. Clusters with an INACTIVE status might remain discoverable in your\n\t\t\taccount for a period of time. However, this behavior is subject to change in the future.\n\t\t\tWe don't recommend that you rely on INACTIVE clusters persisting.

\n

You must deregister all container instances from this cluster before you may delete\n\t\t\tit. You can list the container instances in a cluster with ListContainerInstances and deregister them with DeregisterContainerInstance.

", "smithy.api#examples": [ { "title": "To delete an empty cluster", @@ -3844,7 +4591,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes a specified service within a cluster. You can delete a service if you have no\n\t\t\trunning tasks in it and the desired task count is zero. If the service is actively\n\t\t\tmaintaining tasks, you can't delete it, and you must update the service to a desired\n\t\t\ttask count of zero. For more information, see UpdateService.

\n \n

When you delete a service, if there are still running tasks that require cleanup,\n\t\t\t\tthe service status moves from ACTIVE to DRAINING, and the\n\t\t\t\tservice is no longer visible in the console or in the ListServices\n\t\t\t\tAPI operation. After all tasks have transitioned to either STOPPING or\n\t\t\t\t\tSTOPPED status, the service status moves from DRAINING\n\t\t\t\tto INACTIVE. Services in the DRAINING or\n\t\t\t\t\tINACTIVE status can still be viewed with the DescribeServices API operation. However, in the future,\n\t\t\t\t\tINACTIVE services may be cleaned up and purged from Amazon ECS record\n\t\t\t\tkeeping, and DescribeServices calls on those services return a\n\t\t\t\t\tServiceNotFoundException error.

\n
\n \n

If you attempt to create a new service with the same name as an existing service\n\t\t\t\tin either ACTIVE or DRAINING status, you receive an\n\t\t\t\terror.

\n
", + "smithy.api#documentation": "

Deletes a specified service within a cluster. You can delete a service if you have no\n\t\t\trunning tasks in it and the desired task count is zero. If the service is actively\n\t\t\tmaintaining tasks, you can't delete it, and you must update the service to a desired\n\t\t\ttask count of zero. For more information, see UpdateService.

\n \n

When you delete a service, if there are still running tasks that require cleanup,\n\t\t\t\tthe service status moves from ACTIVE to DRAINING, and the\n\t\t\t\tservice is no longer visible in the console or in the ListServices\n\t\t\t\tAPI operation. After all tasks have transitioned to either STOPPING or\n\t\t\t\t\tSTOPPED status, the service status moves from DRAINING\n\t\t\t\tto INACTIVE. Services in the DRAINING or\n\t\t\t\t\tINACTIVE status can still be viewed with the DescribeServices API operation. However, in the future,\n\t\t\t\t\tINACTIVE services may be cleaned up and purged from Amazon ECS record\n\t\t\t\tkeeping, and DescribeServices calls on those services return a\n\t\t\t\t\tServiceNotFoundException error.

\n
\n \n

If you attempt to create a new service with the same name as an existing service\n\t\t\t\tin either ACTIVE or DRAINING status, you receive an\n\t\t\t\terror.

\n
", "smithy.api#examples": [ { "title": "To delete a service", @@ -3921,7 +4668,50 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes one or more task definitions.

\n

You must deregister a task definition revision before you delete it. For more\n\t\t\tinformation, see DeregisterTaskDefinition.

\n

When you delete a task definition revision, it is immediately transitions from the\n\t\t\t\tINACTIVE to DELETE_IN_PROGRESS. Existing tasks and\n\t\t\tservices that reference a DELETE_IN_PROGRESS task definition revision\n\t\t\tcontinue to run without disruption. Existing services that reference a\n\t\t\t\tDELETE_IN_PROGRESS task definition revision can still scale up or down\n\t\t\tby modifying the service's desired count.

\n

You can't use a DELETE_IN_PROGRESS task definition revision to run new\n\t\t\ttasks or create new services. You also can't update an existing service to reference a\n\t\t\t\tDELETE_IN_PROGRESS task definition revision.

\n

A task definition revision will stay in DELETE_IN_PROGRESS status until\n\t\t\tall the associated tasks and services have been terminated.

\n

When you delete all INACTIVE task definition revisions, the task\n\t\t\tdefinition name is not displayed in the console and not returned in the API. If a task\n\t\t\tdefinition revisions are in the DELETE_IN_PROGRESS state, the task\n\t\t\tdefinition name is displayed in the console and returned in the API. The task definition\n\t\t\tname is retained by Amazon ECS and the revision is incremented the next time you create a\n\t\t\ttask definition with that name.

" + "smithy.api#documentation": "

Deletes one or more task definitions.

\n

You must deregister a task definition revision before you delete it. For more\n\t\t\tinformation, see DeregisterTaskDefinition.

\n

When you delete a task definition revision, it is immediately transitions from the\n\t\t\t\tINACTIVE to DELETE_IN_PROGRESS. Existing tasks and\n\t\t\tservices that reference a DELETE_IN_PROGRESS task definition revision\n\t\t\tcontinue to run without disruption. Existing services that reference a\n\t\t\t\tDELETE_IN_PROGRESS task definition revision can still scale up or down\n\t\t\tby modifying the service's desired count.

\n

You can't use a DELETE_IN_PROGRESS task definition revision to run new\n\t\t\ttasks or create new services. You also can't update an existing service to reference a\n\t\t\t\tDELETE_IN_PROGRESS task definition revision.

\n

A task definition revision will stay in DELETE_IN_PROGRESS status until\n\t\t\tall the associated tasks and services have been terminated.

\n

When you delete all INACTIVE task definition revisions, the task\n\t\t\tdefinition name is not displayed in the console and not returned in the API. If a task\n\t\t\tdefinition revisions are in the DELETE_IN_PROGRESS state, the task\n\t\t\tdefinition name is displayed in the console and returned in the API. The task definition\n\t\t\tname is retained by Amazon ECS and the revision is incremented the next time you create a\n\t\t\ttask definition with that name.

", + "smithy.api#examples": [ + { + "title": "To delete a task definition that has been deregistered", + "documentation": "This example deletes a specified deregistered task definition. ", + "input": { + "taskDefinitions": [ + "Example-task-definition:1" + ] + }, + "output": { + "failures": [], + "taskDefinitions": [ + { + "containerDefinitions": [ + { + "command": [ + "apt-get update; apt-get install stress; while true; do stress --cpu $(( RANDOM % 4 )) -t $(( RANDOM % 10 )); done" + ], + "cpu": 50, + "entryPoint": [ + "bash", + "-c" + ], + "environment": [], + "essential": true, + "image": "public.ecr.aws/docker/library/ubuntu:latest", + "memory": 100, + "mountPoints": [], + "name": "wave", + "portMappings": [], + "volumesFrom": [] + } + ], + "family": "cpu-wave", + "revision": 1, + "status": "DELETE_IN_PROGRESS", + "taskDefinitionArn": "arn:aws:ecs:us-east-1:012345678910:task-definition/Example-task-definition:1", + "volumes": [] + } + ] + } + } + ] } }, "com.amazonaws.ecs#DeleteTaskDefinitionsRequest": { @@ -3997,7 +4787,52 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes a specified task set within a service. This is used when a service uses the\n\t\t\t\tEXTERNAL deployment controller type. For more information, see Amazon ECS deployment types in the Amazon Elastic Container Service Developer Guide.

" + "smithy.api#documentation": "

Deletes a specified task set within a service. This is used when a service uses the\n\t\t\t\tEXTERNAL deployment controller type. For more information, see Amazon ECS deployment types in the Amazon Elastic Container Service Developer Guide.

", + "smithy.api#examples": [ + { + "title": "To delete a task set within a service that uses the EXTERNAL deployment controller type", + "documentation": "This example deletes a task set and uses the force flag to force deletion if it hasn't scaled to zero.", + "input": { + "cluster": "MyCluster", + "service": "MyService", + "taskSet": "arn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789", + "force": true + }, + "output": { + "taskSet": { + "id": "ecs-svc/1234567890123456789", + "taskSetArn": "arn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789", + "status": "DRAINING", + "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/sample-fargate:2", + "computedDesiredCount": 0, + "pendingCount": 0, + "runningCount": 0, + "createdAt": 1.557130260276E9, + "updatedAt": 1.557130290707E9, + "launchType": "EC2", + "networkConfiguration": { + "awsvpcConfiguration": { + "subnets": [ + "subnet-12345678" + ], + "securityGroups": [ + "sg-12345678" + ], + "assignPublicIp": "DISABLED" + } + }, + "loadBalancers": [], + "serviceRegistries": [], + "scale": { + "value": 0, + "unit": "PERCENT" + }, + "stabilityStatus": "STABILIZING", + "stabilityStatusAt": 1.557130290707E9 + } + } + } + ] } }, "com.amazonaws.ecs#DeleteTaskSetRequest": { @@ -4143,7 +4978,7 @@ "rolloutState": { "target": "com.amazonaws.ecs#DeploymentRolloutState", "traits": { - "smithy.api#documentation": "\n

The rolloutState of a service is only returned for services that use\n\t\t\t\tthe rolling update (ECS) deployment type that aren't behind a\n\t\t\t\tClassic Load Balancer.

\n
\n

The rollout state of the deployment. When a service deployment is started, it begins\n\t\t\tin an IN_PROGRESS state. When the service reaches a steady state, the\n\t\t\tdeployment transitions to a COMPLETED state. If the service fails to reach\n\t\t\ta steady state and circuit breaker is turned on, the deployment transitions to a\n\t\t\t\tFAILED state. A deployment in FAILED state doesn't launch\n\t\t\tany new tasks. For more information, see DeploymentCircuitBreaker.

" + "smithy.api#documentation": "\n

The rolloutState of a service is only returned for services that use\n\t\t\t\tthe rolling update (ECS) deployment type that aren't behind a\n\t\t\t\tClassic Load Balancer.

\n
\n

The rollout state of the deployment. When a service deployment is started, it begins\n\t\t\tin an IN_PROGRESS state. When the service reaches a steady state, the\n\t\t\tdeployment transitions to a COMPLETED state. If the service fails to reach\n\t\t\ta steady state and circuit breaker is turned on, the deployment transitions to a\n\t\t\t\tFAILED state. A deployment in FAILED state doesn't launch\n\t\t\tany new tasks. For more information, see DeploymentCircuitBreaker.

" } }, "rolloutStateReason": { @@ -4175,6 +5010,12 @@ "traits": { "smithy.api#documentation": "

The Fargate ephemeral storage settings for the deployment.

" } + }, + "vpcLatticeConfigurations": { + "target": "com.amazonaws.ecs#VpcLatticeConfigurations", + "traits": { + "smithy.api#documentation": "

The VPC Lattice configuration for the service deployment.

" + } } }, "traits": { @@ -4191,25 +5032,25 @@ "smithy.api#required": {} } }, - "enable": { + "rollback": { "target": "com.amazonaws.ecs#Boolean", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Determines whether to use the CloudWatch alarm option in the service deployment\n\t\t\tprocess.

", + "smithy.api#documentation": "

Determines whether to configure Amazon ECS to roll back the service if a service deployment\n\t\t\tfails. If rollback is used, when a service deployment fails, the service is rolled back\n\t\t\tto the last deployment that completed successfully.

", "smithy.api#required": {} } }, - "rollback": { + "enable": { "target": "com.amazonaws.ecs#Boolean", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Determines whether to configure Amazon ECS to roll back the service if a service deployment\n\t\t\tfails. If rollback is used, when a service deployment fails, the service is rolled back\n\t\t\tto the last deployment that completed successfully.

", + "smithy.api#documentation": "

Determines whether to use the CloudWatch alarm option in the service deployment\n\t\t\tprocess.

", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

One of the methods which provide a way for you to quickly identify when a deployment\n\t\t\thas failed, and then to optionally roll back the failure to the last working\n\t\t\tdeployment.

\n

When the alarms are generated, Amazon ECS sets the service deployment to failed. Set the\n\t\t\trollback parameter to have Amazon ECS to roll back your service to the last completed\n\t\t\tdeployment after a failure.

\n

You can only use the DeploymentAlarms method to detect failures when the\n\t\t\t\tDeploymentController is set to ECS (rolling\n\t\t\tupdate).

\n

For more information, see Rolling\n\t\t\t\tupdate in the \n Amazon Elastic Container Service Developer Guide\n .

" + "smithy.api#documentation": "

One of the methods which provide a way for you to quickly identify when a deployment\n\t\t\thas failed, and then to optionally roll back the failure to the last working\n\t\t\tdeployment.

\n

When the alarms are generated, Amazon ECS sets the service deployment to failed. Set the\n\t\t\trollback parameter to have Amazon ECS to roll back your service to the last completed\n\t\t\tdeployment after a failure.

\n

You can only use the DeploymentAlarms method to detect failures when the\n\t\t\t\tDeploymentController is set to ECS.

\n

For more information, see Rolling\n\t\t\t\tupdate in the \n Amazon Elastic Container Service Developer Guide\n .

" } }, "com.amazonaws.ecs#DeploymentCircuitBreaker": { @@ -4248,13 +5089,13 @@ "maximumPercent": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { - "smithy.api#documentation": "

If a service is using the rolling update (ECS) deployment type, the\n\t\t\t\tmaximumPercent parameter represents an upper limit on the number of\n\t\t\tyour service's tasks that are allowed in the RUNNING or\n\t\t\t\tPENDING state during a deployment, as a percentage of the\n\t\t\t\tdesiredCount (rounded down to the nearest integer). This parameter\n\t\t\tenables you to define the deployment batch size. For example, if your service is using\n\t\t\tthe REPLICA service scheduler and has a desiredCount of four\n\t\t\ttasks and a maximumPercent value of 200%, the scheduler may start four new\n\t\t\ttasks before stopping the four older tasks (provided that the cluster resources required\n\t\t\tto do this are available). The default maximumPercent value for a service\n\t\t\tusing the REPLICA service scheduler is 200%.

\n

If a service is using either the blue/green (CODE_DEPLOY) or\n\t\t\t\tEXTERNAL deployment types and tasks that use the EC2\n\t\t\tlaunch type, the maximum percent value is set to the\n\t\t\tdefault value and is used to define the upper limit on the number of the tasks in the\n\t\t\tservice that remain in the RUNNING state while the container instances are\n\t\t\tin the DRAINING state. If the tasks in the service use the\n\t\t\tFargate launch type, the maximum percent value is not used, although it is\n\t\t\treturned when describing your service.

" + "smithy.api#documentation": "

If a service is using the rolling update (ECS) deployment type, the\n\t\t\t\tmaximumPercent parameter represents an upper limit on the number of\n\t\t\tyour service's tasks that are allowed in the RUNNING or\n\t\t\t\tPENDING state during a deployment, as a percentage of the\n\t\t\t\tdesiredCount (rounded down to the nearest integer). This parameter\n\t\t\tenables you to define the deployment batch size. For example, if your service is using\n\t\t\tthe REPLICA service scheduler and has a desiredCount of four\n\t\t\ttasks and a maximumPercent value of 200%, the scheduler may start four new\n\t\t\ttasks before stopping the four older tasks (provided that the cluster resources required\n\t\t\tto do this are available). The default maximumPercent value for a service\n\t\t\tusing the REPLICA service scheduler is 200%.

\n

The Amazon ECS scheduler uses this parameter to replace unhealthy tasks by starting\n\t\t\treplacement tasks first and then stopping the unhealthy tasks, as long as cluster\n\t\t\tresources for starting replacement tasks are available. For more information about how\n\t\t\tthe scheduler replaces unhealthy tasks, see Amazon ECS\n\t\t\tservices.

\n

If a service is using either the blue/green (CODE_DEPLOY) or\n\t\t\t\tEXTERNAL deployment types, and tasks in the service use the\n\t\t\tEC2 launch type, the maximum percent\n\t\t\tvalue is set to the default value. The maximum percent\n\t\t\tvalue is used to define the upper limit on the number of the tasks in the service that\n\t\t\tremain in the RUNNING state while the container instances are in the\n\t\t\t\tDRAINING state.

\n \n

You can't specify a custom maximumPercent value for a service that\n\t\t\t\tuses either the blue/green (CODE_DEPLOY) or EXTERNAL\n\t\t\t\tdeployment types and has tasks that use the EC2 launch type.

\n
\n

If the service uses either the blue/green (CODE_DEPLOY) or\n\t\t\t\tEXTERNAL deployment types, and the tasks in the service use the\n\t\t\tFargate launch type, the maximum percent value is not used. The value is\n\t\t\tstill returned when describing your service.

" } }, "minimumHealthyPercent": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { - "smithy.api#documentation": "

If a service is using the rolling update (ECS) deployment type, the\n\t\t\t\tminimumHealthyPercent represents a lower limit on the number of your\n\t\t\tservice's tasks that must remain in the RUNNING state during a deployment,\n\t\t\tas a percentage of the desiredCount (rounded up to the nearest integer).\n\t\t\tThis parameter enables you to deploy without using additional cluster capacity. For\n\t\t\texample, if your service has a desiredCount of four tasks and a\n\t\t\t\tminimumHealthyPercent of 50%, the service scheduler may stop two\n\t\t\texisting tasks to free up cluster capacity before starting two new tasks.

\n

For services that do not use a load balancer, the following\n\t\t\tshould be noted:

\n
    \n
  • \n

    A service is considered healthy if all essential containers within the tasks\n\t\t\t\t\tin the service pass their health checks.

    \n
  • \n
  • \n

    If a task has no essential containers with a health check defined, the service\n\t\t\t\t\tscheduler will wait for 40 seconds after a task reaches a RUNNING\n\t\t\t\t\tstate before the task is counted towards the minimum healthy percent\n\t\t\t\t\ttotal.

    \n
  • \n
  • \n

    If a task has one or more essential containers with a health check defined,\n\t\t\t\t\tthe service scheduler will wait for the task to reach a healthy status before\n\t\t\t\t\tcounting it towards the minimum healthy percent total. A task is considered\n\t\t\t\t\thealthy when all essential containers within the task have passed their health\n\t\t\t\t\tchecks. The amount of time the service scheduler can wait for is determined by\n\t\t\t\t\tthe container health check settings.

    \n
  • \n
\n

For services that do use a load balancer, the following should be\n\t\t\tnoted:

\n
    \n
  • \n

    If a task has no essential containers with a health check defined, the service\n\t\t\t\t\tscheduler will wait for the load balancer target group health check to return a\n\t\t\t\t\thealthy status before counting the task towards the minimum healthy percent\n\t\t\t\t\ttotal.

    \n
  • \n
  • \n

    If a task has an essential container with a health check defined, the service\n\t\t\t\t\tscheduler will wait for both the task to reach a healthy status and the load\n\t\t\t\t\tbalancer target group health check to return a healthy status before counting\n\t\t\t\t\tthe task towards the minimum healthy percent total.

    \n
  • \n
\n

The default value for a replica service for\n\t\t\tminimumHealthyPercent is 100%. The default\n\t\t\tminimumHealthyPercent value for a service using\n\t\t\tthe DAEMON service schedule is 0% for the CLI,\n\t\t\tthe Amazon Web Services SDKs, and the APIs and 50% for the Amazon Web Services Management Console.

\n

The minimum number of healthy tasks during a deployment is the\n\t\t\tdesiredCount multiplied by the\n\t\t\tminimumHealthyPercent/100, rounded up to the\n\t\t\tnearest integer value.

\n

If a service is using either the blue/green (CODE_DEPLOY) or\n\t\t\t\tEXTERNAL deployment types and is running tasks that use the\n\t\t\tEC2 launch type, the minimum healthy\n\t\t\t\tpercent value is set to the default value and is used to define the lower\n\t\t\tlimit on the number of the tasks in the service that remain in the RUNNING\n\t\t\tstate while the container instances are in the DRAINING state. If a service\n\t\t\tis using either the blue/green (CODE_DEPLOY) or EXTERNAL\n\t\t\tdeployment types and is running tasks that use the Fargate launch type,\n\t\t\tthe minimum healthy percent value is not used, although it is returned when describing\n\t\t\tyour service.

" + "smithy.api#documentation": "

If a service is using the rolling update (ECS) deployment type, the\n\t\t\t\tminimumHealthyPercent represents a lower limit on the number of your\n\t\t\tservice's tasks that must remain in the RUNNING state during a deployment,\n\t\t\tas a percentage of the desiredCount (rounded up to the nearest integer).\n\t\t\tThis parameter enables you to deploy without using additional cluster capacity. For\n\t\t\texample, if your service has a desiredCount of four tasks and a\n\t\t\t\tminimumHealthyPercent of 50%, the service scheduler may stop two\n\t\t\texisting tasks to free up cluster capacity before starting two new tasks.

\n

If any tasks are unhealthy and if maximumPercent doesn't allow the Amazon ECS\n\t\t\tscheduler to start replacement tasks, the scheduler stops the unhealthy tasks one-by-one\n\t\t\t— using the minimumHealthyPercent as a constraint — to clear up capacity to\n\t\t\tlaunch replacement tasks. For more information about how the scheduler replaces\n\t\t\tunhealthy tasks, see Amazon ECS services.

\n

For services that do not use a load balancer, the following\n\t\t\tshould be noted:

\n
    \n
  • \n

    A service is considered healthy if all essential containers within the tasks\n\t\t\t\t\tin the service pass their health checks.

    \n
  • \n
  • \n

    If a task has no essential containers with a health check defined, the service\n\t\t\t\t\tscheduler will wait for 40 seconds after a task reaches a RUNNING\n\t\t\t\t\tstate before the task is counted towards the minimum healthy percent\n\t\t\t\t\ttotal.

    \n
  • \n
  • \n

    If a task has one or more essential containers with a health check defined,\n\t\t\t\t\tthe service scheduler will wait for the task to reach a healthy status before\n\t\t\t\t\tcounting it towards the minimum healthy percent total. A task is considered\n\t\t\t\t\thealthy when all essential containers within the task have passed their health\n\t\t\t\t\tchecks. The amount of time the service scheduler can wait for is determined by\n\t\t\t\t\tthe container health check settings.

    \n
  • \n
\n

For services that do use a load balancer, the following should be\n\t\t\tnoted:

\n
    \n
  • \n

    If a task has no essential containers with a health check defined, the service\n\t\t\t\t\tscheduler will wait for the load balancer target group health check to return a\n\t\t\t\t\thealthy status before counting the task towards the minimum healthy percent\n\t\t\t\t\ttotal.

    \n
  • \n
  • \n

    If a task has an essential container with a health check defined, the service\n\t\t\t\t\tscheduler will wait for both the task to reach a healthy status and the load\n\t\t\t\t\tbalancer target group health check to return a healthy status before counting\n\t\t\t\t\tthe task towards the minimum healthy percent total.

    \n
  • \n
\n

The default value for a replica service for minimumHealthyPercent is\n\t\t\t100%. The default minimumHealthyPercent value for a service using the\n\t\t\t\tDAEMON service schedule is 0% for the CLI, the Amazon Web Services SDKs, and the\n\t\t\tAPIs and 50% for the Amazon Web Services Management Console.

\n

The minimum number of healthy tasks during a deployment is the\n\t\t\t\tdesiredCount multiplied by the minimumHealthyPercent/100,\n\t\t\trounded up to the nearest integer value.

\n

If a service is using either the blue/green (CODE_DEPLOY) or\n\t\t\t\tEXTERNAL deployment types and is running tasks that use the\n\t\t\tEC2 launch type, the minimum healthy\n\t\t\t\tpercent value is set to the default value. The minimum healthy percent value is used to define the lower limit on the\n\t\t\tnumber of the tasks in the service that remain in the RUNNING state while\n\t\t\tthe container instances are in the DRAINING state.

\n \n

You can't specify a custom minimumHealthyPercent value for a service\n\t\t\t\tthat uses either the blue/green (CODE_DEPLOY) or EXTERNAL\n\t\t\t\tdeployment types and has tasks that use the EC2 launch type.

\n
\n

If a service is using either the blue/green (CODE_DEPLOY) or\n\t\t\t\tEXTERNAL deployment types and is running tasks that use the\n\t\t\tFargate launch type, the minimum healthy percent value is not used,\n\t\t\talthough it is returned when describing your service.

" } }, "alarms": { @@ -4262,6 +5103,24 @@ "traits": { "smithy.api#documentation": "

Information about the CloudWatch alarms.

" } + }, + "strategy": { + "target": "com.amazonaws.ecs#DeploymentStrategy", + "traits": { + "smithy.api#documentation": "

The deployment strategy for the service. Choose from these valid values:

\n
    \n
  • \n

    \n ROLLING - When you create a service which uses the rolling update\n (ROLLING) deployment strategy, the Amazon ECS service scheduler replaces\n the currently running tasks with new tasks. The number of tasks that Amazon ECS adds or\n removes from the service during a rolling update is controlled by the service\n deployment configuration.

    \n
  • \n
  • \n

    \n BLUE_GREEN - A blue/green deployment strategy\n (BLUE_GREEN) is a release methodology that reduces downtime and risk\n by running two identical production environments called blue and green. With Amazon ECS\n blue/green deployments, you can validate new service revisions before directing\n production traffic to them. This approach provides a safer way to deploy changes with\n the ability to quickly roll back if needed.

    \n
  • \n
" + } + }, + "bakeTimeInMinutes": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The time period when both blue and green service revisions are running simultaneously after the production traffic has shifted.

\n

You must provide this parameter when you use the BLUE_GREEN deployment\n strategy.

" + } + }, + "lifecycleHooks": { + "target": "com.amazonaws.ecs#DeploymentLifecycleHookList", + "traits": { + "smithy.api#documentation": "

An array of deployment lifecycle hook objects to run custom logic at specific stages of the deployment lifecycle.

" + } } }, "traits": { @@ -4274,13 +5133,13 @@ "type": { "target": "com.amazonaws.ecs#DeploymentControllerType", "traits": { - "smithy.api#documentation": "

The deployment controller type to use.

\n

There are three deployment controller types available:

\n
\n
ECS
\n
\n

The rolling update (ECS) deployment type involves replacing\n\t\t\t\t\t\tthe current running version of the container with the latest version. The\n\t\t\t\t\t\tnumber of containers Amazon ECS adds or removes from the service during a rolling\n\t\t\t\t\t\tupdate is controlled by adjusting the minimum and maximum number of healthy\n\t\t\t\t\t\ttasks allowed during a service deployment, as specified in the DeploymentConfiguration.

\n
\n
CODE_DEPLOY
\n
\n

The blue/green (CODE_DEPLOY) deployment type uses the\n\t\t\t\t\t\tblue/green deployment model powered by CodeDeploy, which allows you to verify a\n\t\t\t\t\t\tnew deployment of a service before sending production traffic to it.

\n
\n
EXTERNAL
\n
\n

The external (EXTERNAL) deployment type enables you to use\n\t\t\t\t\t\tany third-party deployment controller for full control over the deployment\n\t\t\t\t\t\tprocess for an Amazon ECS service.

\n
\n
", + "smithy.api#documentation": "

The deployment controller type to use.

\n

The deployment controller is the mechanism that determines how tasks are deployed for\n\t\t\tyour service. The valid options are:

\n
    \n
  • \n

    ECS

    \n

    When you create a service which uses the ECS deployment controller, you can choose between the following deployment strategies:

    \n
      \n
    • \n

      \n ROLLING: When you create a service which uses the rolling update\n\t\t\t\t\t\t\t(ROLLING) deployment strategy, the Amazon ECS service scheduler replaces the\n\t\t\t\t\t\t\tcurrently running tasks with new tasks. The number of tasks that Amazon ECS adds or\n\t\t\t\t\t\t\tremoves from the service during a rolling update is controlled by the service\n\t\t\t\t\t\t\tdeployment configuration.

      \n

      Rolling update deployments are best suited for the following scenarios:

      \n
        \n
      • \n

        Gradual service updates: You need to\n\t\t\t\t\t\t\t\t\tupdate your service incrementally without taking the entire service\n\t\t\t\t\t\t\t\t\toffline at once.

        \n
      • \n
      • \n

        Limited resource requirements: You\n\t\t\t\t\t\t\t\t\twant to avoid the additional resource costs of running two complete\n\t\t\t\t\t\t\t\t\tenvironments simultaneously (as required by blue/green\n\t\t\t\t\t\t\t\t\tdeployments).

        \n
      • \n
      • \n

        Acceptable deployment time: Your\n\t\t\t\t\t\t\t\t\tapplication can tolerate a longer deployment process, as rolling updates\n\t\t\t\t\t\t\t\t\treplace tasks one by one.

        \n
      • \n
      • \n

        No need for instant roll back: Your\n\t\t\t\t\t\t\t\t\tservice can tolerate a rollback process that takes minutes rather than\n\t\t\t\t\t\t\t\t\tseconds.

        \n
      • \n
      • \n

        Simple deployment process: You prefer\n\t\t\t\t\t\t\t\t\ta straightforward deployment approach without the complexity of managing\n\t\t\t\t\t\t\t\t\tmultiple environments, target groups, and listeners.

        \n
      • \n
      • \n

        No load balancer requirement: Your\n\t\t\t\t\t\t\t\t\tservice doesn't use or require a load balancer, Application Load Balancer, Network Load Balancer, or Service Connect (which are required\n\t\t\t\t\t\t\t\t\tfor blue/green deployments).

        \n
      • \n
      • \n

        Stateful applications: Your\n\t\t\t\t\t\t\t\t\tapplication maintains state that makes it difficult to run two parallel\n\t\t\t\t\t\t\t\t\tenvironments.

        \n
      • \n
      • \n

        Cost sensitivity: You want to\n\t\t\t\t\t\t\t\t\tminimize deployment costs by not running duplicate environments during\n\t\t\t\t\t\t\t\t\tdeployment.

        \n
      • \n
      \n

      Rolling updates are the default deployment strategy for services and provide a\n\t\t\t\t\t\t\tbalance between deployment safety and resource efficiency for many common\n\t\t\t\t\t\t\tapplication scenarios.

      \n
    • \n
    • \n

      \n BLUE_GREEN: A blue/green deployment strategy (BLUE_GREEN) is a release methodology that reduces downtime and\n\t\t\t\t\t\t\trisk by running two identical production environments called blue and green.\n\t\t\t\t\t\t\tWith Amazon ECS blue/green deployments, you can validate new service revisions before\n\t\t\t\t\t\t\tdirecting production traffic to them. This approach provides a safer way to\n\t\t\t\t\t\t\tdeploy changes with the ability to quickly roll back if needed.

      \n

      Amazon ECS blue/green deployments are best suited for the following scenarios:

      \n
        \n
      • \n

        Service validation: When you need to\n\t\t\t\t\t\t\t\t\tvalidate new service revisions before directing production traffic to\n\t\t\t\t\t\t\t\t\tthem

        \n
      • \n
      • \n

        Zero downtime: When your service\n\t\t\t\t\t\t\t\t\trequires zero-downtime deployments

        \n
      • \n
      • \n

        Instant roll back: When you\n\t\t\t\t\t\t\t\t\tneed the ability to quickly roll back if issues are detected

        \n
      • \n
      • \n

        Load balancer requirement: When your\n\t\t\t\t\t\t\t\t\tservice uses Application Load Balancer, Network Load Balancer, or Service Connect

        \n
      • \n
      \n
    • \n
    \n
  • \n
  • \n

    External

    \n

    Use a third-party deployment controller.

    \n
  • \n
  • \n

    Blue/green deployment (powered by CodeDeploy)

    \n

    CodeDeploy installs an updated version of the application as a new replacement task\n\t\t\t\t\tset and reroutes production traffic from the original application task set to\n\t\t\t\t\tthe replacement task set. The original task set is terminated after a successful\n\t\t\t\t\tdeployment. Use this deployment controller to verify a new deployment of a service\n\t\t\t\t\tbefore sending production traffic to it.

    \n
  • \n
", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

The deployment controller to use for the service. For more information, see Amazon ECS deployment types in the Amazon Elastic Container Service Developer Guide.

" + "smithy.api#documentation": "

The deployment controller to use for the service.

" } }, "com.amazonaws.ecs#DeploymentControllerType": { @@ -4312,7 +5171,7 @@ "kmsKeyId": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

Specify an Key Management Service key ID to encrypt the ephemeral storage for deployment.

" + "smithy.api#documentation": "

Specify an Key Management Service key ID to encrypt the ephemeral storage for\n\t\t\tdeployment.

" } } }, @@ -4320,6 +5179,97 @@ "smithy.api#documentation": "

The amount of ephemeral storage to allocate for the deployment.

" } }, + "com.amazonaws.ecs#DeploymentLifecycleHook": { + "type": "structure", + "members": { + "hookTargetArn": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the hook target. Currently, only Lambda function ARNs are supported.

\n

You must provide this parameter when configuring a deployment lifecycle hook.

" + } + }, + "roleArn": { + "target": "com.amazonaws.ecs#IAMRoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role that grants Amazon ECS permission to call Lambda functions on your behalf.

\n

For more information, see Permissions required\n for Lambda functions in Amazon ECS blue/green deployments in the \n Amazon Elastic Container Service Developer Guide.

" + } + }, + "lifecycleStages": { + "target": "com.amazonaws.ecs#DeploymentLifecycleHookStageList", + "traits": { + "smithy.api#documentation": "

The lifecycle stages at which to run the hook. Choose from these valid values:

\n
    \n
  • \n

    RECONCILE_SERVICE

    \n

    The reconciliation stage that only happens when you start a new service deployment with more than 1 service revision in an ACTIVE state.

    \n

    You can use a lifecycle hook for this stage.

    \n
  • \n
  • \n

    PRE_SCALE_UP

    \n

    The green service revision has not started. The blue service revision is handling 100% of the production traffic. There is no test traffic.

    \n

    You can use a lifecycle hook for this stage.

    \n
  • \n
  • \n

    POST_SCALE_UP

    \n

    The green service revision has started. The blue service revision is handling 100% of the production traffic. There is no test traffic.

    \n

    You can use a lifecycle hook for this stage.

    \n
  • \n
  • \n

    TEST_TRAFFIC_SHIFT

    \n

    The blue and green service revisions are running. The blue service revision handles 100% of the production traffic. The green service revision is migrating from 0% to 100% of test traffic.

    \n

    You can use a lifecycle hook for this stage.

    \n
  • \n
  • \n

    POST_TEST_TRAFFIC_SHIFT

    \n

    The test traffic shift is complete. The green service revision handles 100% of the test traffic.

    \n

    You can use a lifecycle hook for this stage.

    \n
  • \n
  • \n

    PRODUCTION_TRAFFIC_SHIFT

    \n

    Production traffic is shifting to the green service revision. The green service revision is migrating from 0% to 100% of production traffic.

    \n

    You can use a lifecycle hook for this stage.

    \n
  • \n
  • \n

    POST_PRODUCTION_TRAFFIC_SHIFT

    \n

    The production traffic shift is complete.

    \n

    You can use a lifecycle hook for this stage.

    \n
  • \n
\n

You must provide this parameter when configuring a deployment lifecycle hook.

" + } + }, + "hookDetails": { + "target": "com.amazonaws.ecs#HookDetails", + "traits": { + "smithy.api#documentation": "

Use this field to specify custom parameters that Amazon ECS will pass to your hook target invocations (such as a Lambda function).

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A deployment lifecycle hook runs custom logic at specific stages of the deployment process. Currently, you can use Lambda functions as hook targets.

\n

For more information, see Lifecycle hooks for Amazon ECS service deployments in the \n Amazon Elastic Container Service Developer Guide.

" + } + }, + "com.amazonaws.ecs#DeploymentLifecycleHookList": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#DeploymentLifecycleHook" + } + }, + "com.amazonaws.ecs#DeploymentLifecycleHookStage": { + "type": "enum", + "members": { + "RECONCILE_SERVICE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RECONCILE_SERVICE" + } + }, + "PRE_SCALE_UP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PRE_SCALE_UP" + } + }, + "POST_SCALE_UP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "POST_SCALE_UP" + } + }, + "TEST_TRAFFIC_SHIFT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TEST_TRAFFIC_SHIFT" + } + }, + "POST_TEST_TRAFFIC_SHIFT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "POST_TEST_TRAFFIC_SHIFT" + } + }, + "PRODUCTION_TRAFFIC_SHIFT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PRODUCTION_TRAFFIC_SHIFT" + } + }, + "POST_PRODUCTION_TRAFFIC_SHIFT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "POST_PRODUCTION_TRAFFIC_SHIFT" + } + } + } + }, + "com.amazonaws.ecs#DeploymentLifecycleHookStageList": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#DeploymentLifecycleHookStage" + } + }, "com.amazonaws.ecs#DeploymentRolloutState": { "type": "enum", "members": { @@ -4343,6 +5293,23 @@ } } }, + "com.amazonaws.ecs#DeploymentStrategy": { + "type": "enum", + "members": { + "ROLLING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ROLLING" + } + }, + "BLUE_GREEN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BLUE_GREEN" + } + } + } + }, "com.amazonaws.ecs#Deployments": { "type": "list", "member": { @@ -4448,7 +5415,40 @@ } ], "traits": { - "smithy.api#documentation": "

Deregisters the specified task definition by family and revision. Upon deregistration,\n\t\t\tthe task definition is marked as INACTIVE. Existing tasks and services that\n\t\t\treference an INACTIVE task definition continue to run without disruption.\n\t\t\tExisting services that reference an INACTIVE task definition can still\n\t\t\tscale up or down by modifying the service's desired count. If you want to delete a task\n\t\t\tdefinition revision, you must first deregister the task definition revision.

\n

You can't use an INACTIVE task definition to run new tasks or create new\n\t\t\tservices, and you can't update an existing service to reference an INACTIVE\n\t\t\ttask definition. However, there may be up to a 10-minute window following deregistration\n\t\t\twhere these restrictions have not yet taken effect.

\n \n

At this time, INACTIVE task definitions remain discoverable in your\n\t\t\t\taccount indefinitely. However, this behavior is subject to change in the future. We\n\t\t\t\tdon't recommend that you rely on INACTIVE task definitions persisting\n\t\t\t\tbeyond the lifecycle of any associated tasks and services.

\n
\n

You must deregister a task definition revision before you delete it. For more\n\t\t\tinformation, see DeleteTaskDefinitions.

" + "smithy.api#documentation": "

Deregisters the specified task definition by family and revision. Upon deregistration,\n\t\t\tthe task definition is marked as INACTIVE. Existing tasks and services that\n\t\t\treference an INACTIVE task definition continue to run without disruption.\n\t\t\tExisting services that reference an INACTIVE task definition can still\n\t\t\tscale up or down by modifying the service's desired count. If you want to delete a task\n\t\t\tdefinition revision, you must first deregister the task definition revision.

\n

You can't use an INACTIVE task definition to run new tasks or create new\n\t\t\tservices, and you can't update an existing service to reference an INACTIVE\n\t\t\ttask definition. However, there may be up to a 10-minute window following deregistration\n\t\t\twhere these restrictions have not yet taken effect.

\n \n

At this time, INACTIVE task definitions remain discoverable in your\n\t\t\t\taccount indefinitely. However, this behavior is subject to change in the future. We\n\t\t\t\tdon't recommend that you rely on INACTIVE task definitions persisting\n\t\t\t\tbeyond the lifecycle of any associated tasks and services.

\n
\n

You must deregister a task definition revision before you delete it. For more\n\t\t\tinformation, see DeleteTaskDefinitions.

", + "smithy.api#examples": [ + { + "title": "To deregister a revision of a task definition", + "documentation": "This example deregisters the first revision of the fargate-task task definition", + "input": { + "taskDefinition": "fargate-task:1" + }, + "output": { + "taskDefinition": { + "status": "INACTIVE", + "family": "fargate-task", + "volumes": [], + "taskDefinitionArn": "arn:aws:ecs:us-west-2:123456789012:task-definition/fargate-task:1", + "containerDefinitions": [ + { + "memory": 128, + "cpu": 256, + "portMappings": [ + { + "hostPort": 80, + "containerPort": 80, + "protocol": "tcp" + } + ], + "essential": true, + "name": "nginx", + "image": "public.ecr.aws/docker/library/nginx:latest" + } + ] + } + } + } + ] } }, "com.amazonaws.ecs#DeregisterTaskDefinitionRequest": { @@ -4492,15 +5492,96 @@ { "target": "com.amazonaws.ecs#ClientException" }, + { + "target": "com.amazonaws.ecs#ClusterNotFoundException" + }, { "target": "com.amazonaws.ecs#InvalidParameterException" }, { "target": "com.amazonaws.ecs#ServerException" + }, + { + "target": "com.amazonaws.ecs#UnsupportedFeatureException" } ], "traits": { - "smithy.api#documentation": "

Describes one or more of your capacity providers.

" + "smithy.api#documentation": "

Describes one or more of your capacity providers.

", + "smithy.api#examples": [ + { + "title": "To describe a specific capacity provider", + "documentation": "This example retrieves details about the capacity provider MyCapacityProvider", + "input": { + "capacityProviders": [ + "MyCapacityProvider" + ], + "include": [ + "TAGS" + ] + }, + "output": { + "capacityProviders": [ + { + "capacityProviderArn": "arn:aws:ecs:us-west-2:123456789012:capacity-provider/MyCapacityProvider", + "name": "MyCapacityProvider", + "status": "ACTIVE", + "autoScalingGroupProvider": { + "autoScalingGroupArn": "arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:a1b2c3d4-5678-90ab-cdef-EXAMPLE11111:autoScalingGroupName/MyAutoScalingGroup", + "managedScaling": { + "status": "ENABLED", + "targetCapacity": 100, + "minimumScalingStepSize": 1, + "maximumScalingStepSize": 1000 + }, + "managedTerminationProtection": "ENABLED" + }, + "tags": [ + { + "key": "environment", + "value": "production" + } + ] + } + ] + } + }, + { + "title": "To describe all capacity providers", + "documentation": "This example retrieves details about all capacity providers. ", + "output": { + "capacityProviders": [ + { + "capacityProviderArn": "arn:aws:ecs:us-west-2:123456789012:capacity-provider/MyCapacityProvider", + "name": "MyCapacityProvider", + "status": "ACTIVE", + "autoScalingGroupProvider": { + "autoScalingGroupArn": "arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:a1b2c3d4-5678-90ab-cdef-EXAMPLE11111:autoScalingGroupName/MyAutoScalingGroup", + "managedScaling": { + "status": "ENABLED", + "targetCapacity": 100, + "minimumScalingStepSize": 1, + "maximumScalingStepSize": 1000 + }, + "managedTerminationProtection": "ENABLED" + }, + "tags": [] + }, + { + "capacityProviderArn": "arn:aws:ecs:us-west-2:123456789012:capacity-provider/FARGATE", + "name": "FARGATE", + "status": "ACTIVE", + "tags": [] + }, + { + "capacityProviderArn": "arn:aws:ecs:us-west-2:123456789012:capacity-provider/FARGATE_SPOT", + "name": "FARGATE_SPOT", + "status": "ACTIVE", + "tags": [] + } + ] + } + } + ] } }, "com.amazonaws.ecs#DescribeCapacityProvidersRequest": { @@ -4512,6 +5593,12 @@ "smithy.api#documentation": "

The short name or full Amazon Resource Name (ARN) of one or more capacity providers. Up to\n\t\t\t\t100 capacity providers can be described in an action.

" } }, + "cluster": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The name of the cluster to describe capacity providers for. When specified, only capacity providers associated with this cluster are returned, including Amazon ECS Managed Instances capacity providers.

" + } + }, "include": { "target": "com.amazonaws.ecs#CapacityProviderFieldList", "traits": { @@ -4581,7 +5668,7 @@ } ], "traits": { - "smithy.api#documentation": "

Describes one or more of your clusters.

", + "smithy.api#documentation": "

Describes one or more of your clusters.

\n

For CLI examples, see describe-clusters.rst on GitHub.

", "smithy.api#examples": [ { "title": "To describe a cluster", @@ -4802,6 +5889,146 @@ "smithy.api#output": {} } }, + "com.amazonaws.ecs#DescribeServiceDeployments": { + "type": "operation", + "input": { + "target": "com.amazonaws.ecs#DescribeServiceDeploymentsRequest" + }, + "output": { + "target": "com.amazonaws.ecs#DescribeServiceDeploymentsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.ecs#AccessDeniedException" + }, + { + "target": "com.amazonaws.ecs#ClientException" + }, + { + "target": "com.amazonaws.ecs#ClusterNotFoundException" + }, + { + "target": "com.amazonaws.ecs#InvalidParameterException" + }, + { + "target": "com.amazonaws.ecs#ServerException" + }, + { + "target": "com.amazonaws.ecs#ServiceNotFoundException" + }, + { + "target": "com.amazonaws.ecs#UnsupportedFeatureException" + } + ], + "traits": { + "smithy.api#documentation": "

Describes one or more of your service deployments.

\n

A service deployment happens when you release a software update for the service. For\n\t\t\tmore information, see View service history using Amazon ECS service deployments.

" + } + }, + "com.amazonaws.ecs#DescribeServiceDeploymentsRequest": { + "type": "structure", + "members": { + "serviceDeploymentArns": { + "target": "com.amazonaws.ecs#StringList", + "traits": { + "smithy.api#documentation": "

The ARN of the service deployment.

\n

You can specify a maximum of 20 ARNs.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ecs#DescribeServiceDeploymentsResponse": { + "type": "structure", + "members": { + "serviceDeployments": { + "target": "com.amazonaws.ecs#ServiceDeployments", + "traits": { + "smithy.api#documentation": "

The list of service deployments described.

" + } + }, + "failures": { + "target": "com.amazonaws.ecs#Failures", + "traits": { + "smithy.api#documentation": "

Any failures associated with the call.

\n

If you decsribe a deployment with a service revision created before October 25, 2024,\n\t\t\tthe call fails. The failure includes the service revision ARN and the reason set to\n\t\t\t\tMISSING.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ecs#DescribeServiceRevisions": { + "type": "operation", + "input": { + "target": "com.amazonaws.ecs#DescribeServiceRevisionsRequest" + }, + "output": { + "target": "com.amazonaws.ecs#DescribeServiceRevisionsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.ecs#AccessDeniedException" + }, + { + "target": "com.amazonaws.ecs#ClientException" + }, + { + "target": "com.amazonaws.ecs#ClusterNotFoundException" + }, + { + "target": "com.amazonaws.ecs#InvalidParameterException" + }, + { + "target": "com.amazonaws.ecs#ServerException" + }, + { + "target": "com.amazonaws.ecs#ServiceNotFoundException" + }, + { + "target": "com.amazonaws.ecs#UnsupportedFeatureException" + } + ], + "traits": { + "smithy.api#documentation": "

Describes one or more service revisions.

\n

A service revision is a version of the service that includes the values for the Amazon\n\t\t\tECS resources (for example, task definition) and the environment resources (for example,\n\t\t\tload balancers, subnets, and security groups). For more information, see Amazon ECS service revisions.

\n

You can't describe a service revision that was created before October 25, 2024.

" + } + }, + "com.amazonaws.ecs#DescribeServiceRevisionsRequest": { + "type": "structure", + "members": { + "serviceRevisionArns": { + "target": "com.amazonaws.ecs#StringList", + "traits": { + "smithy.api#documentation": "

The ARN of the service revision.

\n

You can specify a maximum of 20 ARNs.

\n

You can call ListServiceDeployments to get the ARNs.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ecs#DescribeServiceRevisionsResponse": { + "type": "structure", + "members": { + "serviceRevisions": { + "target": "com.amazonaws.ecs#ServiceRevisions", + "traits": { + "smithy.api#documentation": "

The list of service revisions described.

" + } + }, + "failures": { + "target": "com.amazonaws.ecs#Failures", + "traits": { + "smithy.api#documentation": "

Any failures associated with the call.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.ecs#DescribeServices": { "type": "operation", "input": { @@ -5151,7 +6378,56 @@ } ], "traits": { - "smithy.api#documentation": "

Describes the task sets in the specified cluster and service. This is used when a\n\t\t\tservice uses the EXTERNAL deployment controller type. For more information,\n\t\t\tsee Amazon ECS Deployment\n\t\t\t\tTypes in the Amazon Elastic Container Service Developer Guide.

" + "smithy.api#documentation": "

Describes the task sets in the specified cluster and service. This is used when a\n\t\t\tservice uses the EXTERNAL deployment controller type. For more information,\n\t\t\tsee Amazon ECS Deployment\n\t\t\t\tTypes in the Amazon Elastic Container Service Developer Guide.

", + "smithy.api#examples": [ + { + "title": "To describe a task set ", + "documentation": "This example describes a task set in service MyService that uses an EXTERNAL deployment controller. ", + "input": { + "cluster": "MyCluster", + "service": "MyService", + "taskSets": [ + "arn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789" + ] + }, + "output": { + "taskSets": [ + { + "id": "ecs-svc/1234567890123456789", + "taskSetArn": "arn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789", + "status": "ACTIVE", + "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/sample-fargate:2", + "computedDesiredCount": 0, + "pendingCount": 0, + "runningCount": 0, + "createdAt": 1.557207715195E9, + "updatedAt": 1.557207740014E9, + "launchType": "EC2", + "networkConfiguration": { + "awsvpcConfiguration": { + "subnets": [ + "subnet-12344321" + ], + "securityGroups": [ + "sg-1234431" + ], + "assignPublicIp": "DISABLED" + } + }, + "loadBalancers": [], + "serviceRegistries": [], + "scale": { + "value": 0, + "unit": "PERCENT" + }, + "stabilityStatus": "STEADY_STATE", + "stabilityStatusAt": 1.557207740014E9 + } + ], + "failures": [] + } + } + ] } }, "com.amazonaws.ecs#DescribeTaskSetsRequest": { @@ -5339,7 +6615,7 @@ "cluster": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The short name or full Amazon Resource Name (ARN) of the cluster that hosts the task or tasks to\n\t\t\tdescribe. If you do not specify a cluster, the default cluster is assumed. This parameter is required if the task or tasks you\n\t\t\tare describing were launched in any cluster other than the default cluster.

" + "smithy.api#documentation": "

The short name or full Amazon Resource Name (ARN) of the cluster that hosts the task or tasks to\n\t\t\tdescribe. If you do not specify a cluster, the default cluster is assumed.

" } }, "tasks": { @@ -5558,19 +6834,19 @@ "driver": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The Docker volume driver to use. The driver value must match the driver name provided\n\t\t\tby Docker because it is used for task placement. If the driver was installed using the\n\t\t\tDocker plugin CLI, use docker plugin ls to retrieve the driver name from\n\t\t\tyour container instance. If the driver was installed using another method, use Docker\n\t\t\tplugin discovery to retrieve the driver name. For more information, see Docker\n\t\t\t\tplugin discovery. This parameter maps to Driver in the\n\t\t\tCreate a volume section of the Docker Remote API and the\n\t\t\t\txxdriver option to docker\n\t\t\t\tvolume create.

" + "smithy.api#documentation": "

The Docker volume driver to use. The driver value must match the driver name provided\n\t\t\tby Docker because it is used for task placement. If the driver was installed using the\n\t\t\tDocker plugin CLI, use docker plugin ls to retrieve the driver name from\n\t\t\tyour container instance. If the driver was installed using another method, use Docker\n\t\t\tplugin discovery to retrieve the driver name. This parameter maps to Driver\n\t\t\tin the docker container create command and the xxdriver option to docker\n\t\t\tvolume create.

" } }, "driverOpts": { "target": "com.amazonaws.ecs#StringMap", "traits": { - "smithy.api#documentation": "

A map of Docker driver-specific options passed through. This parameter maps to\n\t\t\t\tDriverOpts in the Create a volume section of the\n\t\t\tDocker Remote API and the xxopt option to docker\n\t\t\t\tvolume create.

" + "smithy.api#documentation": "

A map of Docker driver-specific options passed through. This parameter maps to\n\t\t\t\tDriverOpts in the docker create-volume command and the\n\t\t\t\txxopt option to docker volume create.

" } }, "labels": { "target": "com.amazonaws.ecs#StringMap", "traits": { - "smithy.api#documentation": "

Custom metadata to add to your Docker volume. This parameter maps to\n\t\t\t\tLabels in the Create a volume section of the\n\t\t\tDocker Remote API and the xxlabel option to docker\n\t\t\t\tvolume create.

" + "smithy.api#documentation": "

Custom metadata to add to your Docker volume. This parameter maps to\n\t\t\t\tLabels in the docker container create command and the\n\t\t\t\txxlabel option to docker volume create.

" } } }, @@ -5755,13 +7031,13 @@ "type": { "target": "com.amazonaws.ecs#EnvironmentFileType", "traits": { - "smithy.api#documentation": "

The file type to use. Environment files are objects in Amazon S3. The only supported value is\n\t\t\t\ts3.

", + "smithy.api#documentation": "

The file type to use. Environment files are objects in Amazon S3. The only supported value\n\t\t\tis s3.

", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

A list of files containing the environment variables to pass to a container. You can\n\t\t\tspecify up to ten environment files. The file must have a .env file\n\t\t\textension. Each line in an environment file should contain an environment variable in\n\t\t\t\tVARIABLE=VALUE format. Lines beginning with # are treated\n\t\t\tas comments and are ignored.

\n

If there are environment variables specified using the environment\n\t\t\tparameter in a container definition, they take precedence over the variables contained\n\t\t\twithin an environment file. If multiple environment files are specified that contain the\n\t\t\tsame variable, they're processed from the top down. We recommend that you use unique\n\t\t\tvariable names. For more information, see Use a file to pass environment variables to a container in the Amazon Elastic Container Service Developer Guide.

\n

Environment variable files are objects in Amazon S3 and all Amazon S3 security considerations apply.

\n

You must use the following platforms for the Fargate launch type:

\n
    \n
  • \n

    Linux platform version 1.4.0 or later.

    \n
  • \n
  • \n

    Windows platform version 1.0.0 or later.

    \n
  • \n
\n

Consider the following when using the Fargate launch type:

\n
    \n
  • \n

    The file is handled like a native Docker env-file.

    \n
  • \n
  • \n

    There is no support for shell escape handling.

    \n
  • \n
  • \n

    The container entry point interperts the VARIABLE values.

    \n
  • \n
" + "smithy.api#documentation": "

A list of files containing the environment variables to pass to a container. You can\n\t\t\tspecify up to ten environment files. The file must have a .env file\n\t\t\textension. Each line in an environment file should contain an environment variable in\n\t\t\t\tVARIABLE=VALUE format. Lines beginning with # are treated\n\t\t\tas comments and are ignored.

\n

If there are environment variables specified using the environment\n\t\t\tparameter in a container definition, they take precedence over the variables contained\n\t\t\twithin an environment file. If multiple environment files are specified that contain the\n\t\t\tsame variable, they're processed from the top down. We recommend that you use unique\n\t\t\tvariable names. For more information, see Use a file to pass\n\t\t\t\tenvironment variables to a container in the Amazon Elastic Container Service Developer Guide.

\n

Environment variable files are objects in Amazon S3 and all Amazon S3 security considerations\n\t\t\tapply.

\n

You must use the following platforms for the Fargate launch type:

\n
    \n
  • \n

    Linux platform version 1.4.0 or later.

    \n
  • \n
  • \n

    Windows platform version 1.0.0 or later.

    \n
  • \n
\n

Consider the following when using the Fargate launch type:

\n
    \n
  • \n

    The file is handled like a native Docker env-file.

    \n
  • \n
  • \n

    There is no support for shell escape handling.

    \n
  • \n
  • \n

    The container entry point interperts the VARIABLE values.

    \n
  • \n
" } }, "com.amazonaws.ecs#EnvironmentFileType": { @@ -5794,7 +7070,7 @@ "target": "com.amazonaws.ecs#Integer", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported\n\t\t\tvalue is 20 GiB and the maximum supported value is\n\t\t\t\t200 GiB.

", + "smithy.api#documentation": "

The total amount, in GiB, of ephemeral storage to set for the task. The minimum\n\t\t\tsupported value is 21 GiB and the maximum supported value is\n\t\t\t\t200 GiB.

", "smithy.api#required": {} } } @@ -5803,6 +7079,31 @@ "smithy.api#documentation": "

The amount of ephemeral storage to allocate for the task. This parameter is used to\n\t\t\texpand the total amount of ephemeral storage available, beyond the default amount, for\n\t\t\ttasks hosted on Fargate. For more information, see Using data volumes in\n\t\t\t\ttasks in the Amazon ECS Developer Guide;.

\n \n

For tasks using the Fargate launch type, the task requires the\n\t\t\t\tfollowing platforms:

\n
    \n
  • \n

    Linux platform version 1.4.0 or later.

    \n
  • \n
  • \n

    Windows platform version 1.0.0 or later.

    \n
  • \n
\n
" } }, + "com.amazonaws.ecs#ExcludedInstanceType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 30 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\.\\*\\-]+$" + } + }, + "com.amazonaws.ecs#ExcludedInstanceTypeSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#ExcludedInstanceType", + "traits": { + "smithy.api#xmlName": "item" + } + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 400 + } + } + }, "com.amazonaws.ecs#ExecuteCommand": { "type": "operation", "input": { @@ -5832,7 +7133,32 @@ } ], "traits": { - "smithy.api#documentation": "

Runs a command remotely on a container within a task.

\n

If you use a condition key in your IAM policy to refine the conditions for the\n\t\t\tpolicy statement, for example limit the actions to a specific cluster, you receive an\n\t\t\t\tAccessDeniedException when there is a mismatch between the condition\n\t\t\tkey value and the corresponding parameter value.

\n

For information about required permissions and considerations, see Using Amazon ECS\n\t\t\t\tExec for debugging in the Amazon ECS Developer Guide.\n\t\t

" + "smithy.api#documentation": "

Runs a command remotely on a container within a task.

\n

If you use a condition key in your IAM policy to refine the conditions for the\n\t\t\tpolicy statement, for example limit the actions to a specific cluster, you receive an\n\t\t\t\tAccessDeniedException when there is a mismatch between the condition\n\t\t\tkey value and the corresponding parameter value.

\n

For information about required permissions and considerations, see Using Amazon ECS\n\t\t\t\tExec for debugging in the Amazon ECS Developer Guide.\n\t\t

", + "smithy.api#examples": [ + { + "title": "To run a command remotely on a container in a task", + "documentation": "This example runs an interactive /bin/sh command on a container MyContainer. ", + "input": { + "cluster": "MyCluster", + "container": "MyContainer", + "command": "/bin/sh", + "interactive": true, + "task": "arn:aws:ecs:us-east-1:123456789012:task/MyCluster/d789e94343414c25b9f6bd59eEXAMPLE" + }, + "output": { + "clusterArn": "arn:aws:ecs:us-east-1:123456789012:cluster/MyCluster", + "containerArn": "arn:aws:ecs:us-east-1:123456789012:container/MyCluster/d789e94343414c25b9f6bd59eEXAMPLE/43ba4b77-37f7-4a41-b923-69d4abEXAMPLE", + "containerName": "MyContainer", + "interactive": true, + "session": { + "sessionId": "ecs-execute-command-794nnsxobsg4p2hiur6gxu9a9e", + "streamUrl": "wss://ssmmessages.us-east-1.amazonaws.com/v1/data-channel/ecs-execute-command-794nnsxobsg4p2hiur6gxu9a9e?role=publish_subscribe&cell-number=AAEAAfiZG4oybxqsYj3Zhm15s4J0W1k7d9nxVRenNO8Kl5nzAAAAAGdbWGl479/y/4IrTWPadUic3eBrMu3vmB7aPvI+s12lbpDc142y1KZy", + "tokenValue": "AAEAAcVb7ww10N9aNUI5Cl7K7DbHjbD2Ed4Mw6uaGYIc+UFNAAAAAGdbWGmMDaPbGfDkzrVIhyKEsc4CPT2hcToPU6yzlddPm7rRZvYQtpaAgsvQdjbCAd9OB6ohtDYfqZI9gzMqLKegXq0E+KbDcGPnQVODFNHmQxnR1BvC6vNcHqh6HAJuKnQD7RSYx/J5bfYNHj4hCYHuN0HNcueSDOOTRB/MBt5DBDY7Djv2uzs9FD0N1kcsGljZkZWLuPTVKHHyrU3zh0awfrFFC3RXvgaUCBnloIIvZeq2CjTesxn9JJS+3N4I0DVxfkHdWWBbBY/5+wH82JVTJpqN3yOAt74u/W7TvYBd7Xu2lQbvtpuAnEszl++bFG2ZoV3dfnmBkSnfD/qV1FJcEskbxUHKgmqe0Paouv4zwrQKNfWYfcv9xkWskqcExh07IeaxZz1tp/WegZ5D76sD6xYeuH+35TMNXMoY7oudLgxIXsA7b39ElM7orGi4Jy3W2tLyuNIvDoI2JI6ww4tYdEjYZnld9rhKwV9rDHk1Z8wjHMs++3BIkHrFQRsv7BFUWlZ9lyqO9GWlXeBe7dQtOeFNahBuJUE9z/xLHJn1x13VkdROKqUVHTJrT4sXAnI5roWiGPoQPVY7aHVYJnwjSxrPRWJBsgyHiVN3dAWTmeVMjp0VbOiJaLlpBI+AUWs8OeVRzuJSZ+1alETpK7Ukag7ma9K4lxq/N7IxYo2ub0cG/bvX42zQqdJAW+9St9sQ1QMaMvkSq1tdbLoOuY0QjN7JrkuKLFQA5bhs+o1YwItzIp7bNrzQ9Z9IN51qoGL5HDXQzi1kNFfYtAryhwt6BgtQU9Z0k+RpE+V5G+V68E0MMUvb313f0nRBYj1u5VKonWb708wADPbUU+s7nvbWuD5oLp1Z6A4iqI9Om0R4RrFASj/7fVY7r3raNXcIYA=" + }, + "taskArn": "arn:aws:ecs:us-east-1:123456789012:task/MyCluster/d789e94343414c25b9f6bd59eEXAMPLE" + } + } + ] } }, "com.amazonaws.ecs#ExecuteCommandConfiguration": { @@ -6251,37 +7577,37 @@ "command": { "target": "com.amazonaws.ecs#StringList", "traits": { - "smithy.api#documentation": "

A string array representing the command that the container runs to determine if it is\n\t\t\thealthy. The string array must start with CMD to run the command arguments\n\t\t\tdirectly, or CMD-SHELL to run the command with the container's default\n\t\t\tshell.

\n

When you use the Amazon Web Services Management Console JSON panel, the Command Line Interface, or the APIs, enclose the list\n\t\t\tof commands in double quotes and brackets.

\n

\n [ \"CMD-SHELL\", \"curl -f http://localhost/ || exit 1\" ]\n

\n

You don't include the double quotes and brackets when you use the Amazon Web Services Management Console.

\n

\n CMD-SHELL, curl -f http://localhost/ || exit 1\n

\n

An exit code of 0 indicates success, and non-zero exit code indicates failure. For\n\t\t\tmore information, see HealthCheck in the Create a container\n\t\t\tsection of the Docker Remote API.

", + "smithy.api#documentation": "

A string array representing the command that the container runs to determine if it is\n\t\t\thealthy. The string array must start with CMD to run the command arguments\n\t\t\tdirectly, or CMD-SHELL to run the command with the container's default\n\t\t\tshell.

\n

When you use the Amazon Web Services Management Console JSON panel, the Command Line Interface, or the APIs, enclose the list\n\t\t\tof commands in double quotes and brackets.

\n

\n [ \"CMD-SHELL\", \"curl -f http://localhost/ || exit 1\" ]\n

\n

You don't include the double quotes and brackets when you use the Amazon Web Services Management Console.

\n

\n CMD-SHELL, curl -f http://localhost/ || exit 1\n

\n

An exit code of 0 indicates success, and non-zero exit code indicates failure. For\n\t\t\tmore information, see HealthCheck in the docker container create\n\t\t\tcommand.

", "smithy.api#required": {} } }, "interval": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { - "smithy.api#documentation": "

The time period in seconds between each health check execution. You may specify\n\t\t\tbetween 5 and 300 seconds. The default value is 30 seconds.

" + "smithy.api#documentation": "

The time period in seconds between each health check execution. You may specify\n\t\t\tbetween 5 and 300 seconds. The default value is 30 seconds. This value applies only when\n\t\t\tyou specify a command.

" } }, "timeout": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { - "smithy.api#documentation": "

The time period in seconds to wait for a health check to succeed before it is\n\t\t\tconsidered a failure. You may specify between 2 and 60 seconds. The default value is\n\t\t\t5.

" + "smithy.api#documentation": "

The time period in seconds to wait for a health check to succeed before it is\n\t\t\tconsidered a failure. You may specify between 2 and 60 seconds. The default value is 5.\n\t\t\tThis value applies only when you specify a command.

" } }, "retries": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { - "smithy.api#documentation": "

The number of times to retry a failed health check before the container is considered\n\t\t\tunhealthy. You may specify between 1 and 10 retries. The default value is 3.

" + "smithy.api#documentation": "

The number of times to retry a failed health check before the container is considered\n\t\t\tunhealthy. You may specify between 1 and 10 retries. The default value is 3. This value\n\t\t\tapplies only when you specify a command.

" } }, "startPeriod": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { - "smithy.api#documentation": "

The optional grace period to provide containers time to bootstrap before failed health\n\t\t\tchecks count towards the maximum number of retries. You can specify between 0 and 300\n\t\t\tseconds. By default, the startPeriod is off.

\n \n

If a health check succeeds within the startPeriod, then the container\n\t\t\t\tis considered healthy and any subsequent failures count toward the maximum number of\n\t\t\t\tretries.

\n
" + "smithy.api#documentation": "

The optional grace period to provide containers time to bootstrap before failed health\n\t\t\tchecks count towards the maximum number of retries. You can specify between 0 and 300\n\t\t\tseconds. By default, the startPeriod is off. This value applies only when\n\t\t\tyou specify a command.

\n \n

If a health check succeeds within the startPeriod, then the container\n\t\t\t\tis considered healthy and any subsequent failures count toward the maximum number of\n\t\t\t\tretries.

\n
" } } }, "traits": { - "smithy.api#documentation": "

An object representing a container health check. Health check parameters that are\n\t\t\tspecified in a container definition override any Docker health checks that exist in the\n\t\t\tcontainer image (such as those specified in a parent image or from the image's\n\t\t\tDockerfile). This configuration maps to the HEALTHCHECK parameter of docker run.

\n \n

The Amazon ECS container agent only monitors and reports on the health checks specified\n\t\t\t\tin the task definition. Amazon ECS does not monitor Docker health checks that are\n\t\t\t\tembedded in a container image and not specified in the container definition. Health\n\t\t\t\tcheck parameters that are specified in a container definition override any Docker\n\t\t\t\thealth checks that exist in the container image.

\n
\n

You can view the health status of both individual containers and a task with the\n\t\t\tDescribeTasks API operation or when viewing the task details in the console.

\n

The health check is designed to make sure that your containers survive agent restarts,\n\t\t\tupgrades, or temporary unavailability.

\n

Amazon ECS performs health checks on containers with the default that launched the\n\t\t\tcontainer instance or the task.

\n

The following describes the possible healthStatus values for a\n\t\t\tcontainer:

\n
    \n
  • \n

    \n HEALTHY-The container health check has passed\n\t\t\t\t\tsuccessfully.

    \n
  • \n
  • \n

    \n UNHEALTHY-The container health check has failed.

    \n
  • \n
  • \n

    \n UNKNOWN-The container health check is being evaluated,\n\t\t\t\t\tthere's no container health check defined, or Amazon ECS doesn't have the health\n\t\t\t\t\tstatus of the container.

    \n
  • \n
\n

The following describes the possible healthStatus values based on the\n\t\t\tcontainer health checker status of essential containers in the task with the following\n\t\t\tpriority order (high to low):

\n
    \n
  • \n

    \n UNHEALTHY-One or more essential containers have failed\n\t\t\t\t\ttheir health check.

    \n
  • \n
  • \n

    \n UNKNOWN-Any essential container running within the task is\n\t\t\t\t\tin an UNKNOWN state and no other essential containers have an\n\t\t\t\t\t\tUNHEALTHY state.

    \n
  • \n
  • \n

    \n HEALTHY-All essential containers within the task have\n\t\t\t\t\tpassed their health checks.

    \n
  • \n
\n

Consider the following task health example with 2 containers.

\n
    \n
  • \n

    If Container1 is UNHEALTHY and Container2 is\n\t\t\t\t\tUNKNOWN, the task health is UNHEALTHY.

    \n
  • \n
  • \n

    If Container1 is UNHEALTHY and Container2 is\n\t\t\t\t\tHEALTHY, the task health is UNHEALTHY.

    \n
  • \n
  • \n

    If Container1 is HEALTHY and Container2 is UNKNOWN,\n\t\t\t\t\tthe task health is UNKNOWN.

    \n
  • \n
  • \n

    If Container1 is HEALTHY and Container2 is HEALTHY,\n\t\t\t\t\tthe task health is HEALTHY.

    \n
  • \n
\n

Consider the following task health example with 3 containers.

\n
    \n
  • \n

    If Container1 is UNHEALTHY and Container2 is\n\t\t\t\t\tUNKNOWN, and Container3 is UNKNOWN, the task health is\n\t\t\t\t\t\tUNHEALTHY.

    \n
  • \n
  • \n

    If Container1 is UNHEALTHY and Container2 is\n\t\t\t\t\tUNKNOWN, and Container3 is HEALTHY, the task health is\n\t\t\t\t\t\tUNHEALTHY.

    \n
  • \n
  • \n

    If Container1 is UNHEALTHY and Container2 is\n\t\t\t\t\tHEALTHY, and Container3 is HEALTHY, the task health is\n\t\t\t\t\t\tUNHEALTHY.

    \n
  • \n
  • \n

    If Container1 is HEALTHY and Container2 is UNKNOWN,\n\t\t\t\t\tand Container3 is HEALTHY, the task health is\n\t\t\t\t\tUNKNOWN.

    \n
  • \n
  • \n

    If Container1 is HEALTHY and Container2 is UNKNOWN,\n\t\t\t\t\tand Container3 is UNKNOWN, the task health is\n\t\t\t\t\tUNKNOWN.

    \n
  • \n
  • \n

    If Container1 is HEALTHY and Container2 is HEALTHY,\n\t\t\t\t\tand Container3 is HEALTHY, the task health is\n\t\t\t\t\tHEALTHY.

    \n
  • \n
\n

If a task is run manually, and not as part of a service, the task will continue its\n\t\t\tlifecycle regardless of its health status. For tasks that are part of a service, if the\n\t\t\ttask reports as unhealthy then the task will be stopped and the service scheduler will\n\t\t\treplace it.

\n

The following are notes about container health check support:

\n
    \n
  • \n

    If the Amazon ECS container agent becomes disconnected from the Amazon ECS service, this won't\n\t\t\t\t\tcause a container to transition to an UNHEALTHY status. This is by design,\n\t\t\t\t\tto ensure that containers remain running during agent restarts or temporary\n\t\t\t\t\tunavailability. The health check status is the \"last heard from\" response from the Amazon ECS\n\t\t\t\t\tagent, so if the container was considered HEALTHY prior to the disconnect,\n\t\t\t\t\tthat status will remain until the agent reconnects and another health check occurs.\n\t\t\t\t\tThere are no assumptions made about the status of the container health checks.

    \n
  • \n
  • \n

    Container health checks require version 1.17.0 or greater of the Amazon ECS\n\t\t\t\t\tcontainer agent. For more information, see Updating the\n\t\t\t\t\t\tAmazon ECS container agent.

    \n
  • \n
  • \n

    Container health checks are supported for Fargate tasks if\n\t\t\t\t\tyou're using platform version 1.1.0 or greater. For more\n\t\t\t\t\tinformation, see Fargate\n\t\t\t\t\t\tplatform versions.

    \n
  • \n
  • \n

    Container health checks aren't supported for tasks that are part of a service\n\t\t\t\t\tthat's configured to use a Classic Load Balancer.

    \n
  • \n
" + "smithy.api#documentation": "

An object representing a container health check. Health check parameters that are\n\t\t\tspecified in a container definition override any Docker health checks that exist in the\n\t\t\tcontainer image (such as those specified in a parent image or from the image's\n\t\t\tDockerfile). This configuration maps to the HEALTHCHECK parameter of docker\n\t\t\trun.

\n \n

The Amazon ECS container agent only monitors and reports on the health checks specified\n\t\t\t\tin the task definition. Amazon ECS does not monitor Docker health checks that are\n\t\t\t\tembedded in a container image and not specified in the container definition. Health\n\t\t\t\tcheck parameters that are specified in a container definition override any Docker\n\t\t\t\thealth checks that exist in the container image.

\n
\n

You can view the health status of both individual containers and a task with the\n\t\t\tDescribeTasks API operation or when viewing the task details in the console.

\n

The health check is designed to make sure that your containers survive agent restarts,\n\t\t\tupgrades, or temporary unavailability.

\n

Amazon ECS performs health checks on containers with the default that launched the\n\t\t\tcontainer instance or the task.

\n

The following describes the possible healthStatus values for a\n\t\t\tcontainer:

\n
    \n
  • \n

    \n HEALTHY-The container health check has passed\n\t\t\t\t\tsuccessfully.

    \n
  • \n
  • \n

    \n UNHEALTHY-The container health check has failed.

    \n
  • \n
  • \n

    \n UNKNOWN-The container health check is being evaluated,\n\t\t\t\t\tthere's no container health check defined, or Amazon ECS doesn't have the health\n\t\t\t\t\tstatus of the container.

    \n
  • \n
\n

The following describes the possible healthStatus values based on the\n\t\t\tcontainer health checker status of essential containers in the task with the following\n\t\t\tpriority order (high to low):

\n
    \n
  • \n

    \n UNHEALTHY-One or more essential containers have failed\n\t\t\t\t\ttheir health check.

    \n
  • \n
  • \n

    \n UNKNOWN-Any essential container running within the task is\n\t\t\t\t\tin an UNKNOWN state and no other essential containers have an\n\t\t\t\t\t\tUNHEALTHY state.

    \n
  • \n
  • \n

    \n HEALTHY-All essential containers within the task have\n\t\t\t\t\tpassed their health checks.

    \n
  • \n
\n

Consider the following task health example with 2 containers.

\n
    \n
  • \n

    If Container1 is UNHEALTHY and Container2 is\n\t\t\t\t\tUNKNOWN, the task health is UNHEALTHY.

    \n
  • \n
  • \n

    If Container1 is UNHEALTHY and Container2 is\n\t\t\t\t\tHEALTHY, the task health is UNHEALTHY.

    \n
  • \n
  • \n

    If Container1 is HEALTHY and Container2 is UNKNOWN,\n\t\t\t\t\tthe task health is UNKNOWN.

    \n
  • \n
  • \n

    If Container1 is HEALTHY and Container2 is HEALTHY,\n\t\t\t\t\tthe task health is HEALTHY.

    \n
  • \n
\n

Consider the following task health example with 3 containers.

\n
    \n
  • \n

    If Container1 is UNHEALTHY and Container2 is\n\t\t\t\t\tUNKNOWN, and Container3 is UNKNOWN, the task health is\n\t\t\t\t\t\tUNHEALTHY.

    \n
  • \n
  • \n

    If Container1 is UNHEALTHY and Container2 is\n\t\t\t\t\tUNKNOWN, and Container3 is HEALTHY, the task health is\n\t\t\t\t\t\tUNHEALTHY.

    \n
  • \n
  • \n

    If Container1 is UNHEALTHY and Container2 is\n\t\t\t\t\tHEALTHY, and Container3 is HEALTHY, the task health is\n\t\t\t\t\t\tUNHEALTHY.

    \n
  • \n
  • \n

    If Container1 is HEALTHY and Container2 is UNKNOWN,\n\t\t\t\t\tand Container3 is HEALTHY, the task health is\n\t\t\t\t\tUNKNOWN.

    \n
  • \n
  • \n

    If Container1 is HEALTHY and Container2 is UNKNOWN,\n\t\t\t\t\tand Container3 is UNKNOWN, the task health is\n\t\t\t\t\tUNKNOWN.

    \n
  • \n
  • \n

    If Container1 is HEALTHY and Container2 is HEALTHY,\n\t\t\t\t\tand Container3 is HEALTHY, the task health is\n\t\t\t\t\tHEALTHY.

    \n
  • \n
\n

If a task is run manually, and not as part of a service, the task will continue its\n\t\t\tlifecycle regardless of its health status. For tasks that are part of a service, if the\n\t\t\ttask reports as unhealthy then the task will be stopped and the service scheduler will\n\t\t\treplace it.

\n

When a container health check fails for a task that is part of a service, the following process occurs:

\n
    \n
  1. \n

    The task is marked as UNHEALTHY.

    \n
  2. \n
  3. \n

    The unhealthy task will be stopped, and during the stopping process, it will go through the following states:

    \n
      \n
    • \n

      \n DEACTIVATING - In this state, Amazon ECS performs additional steps before stopping the\n\t\t\t\t\t\t\ttask. For example, for tasks that are part of services configured to use\n\t\t\t\t\t\t\tElastic Load Balancing target groups, target groups will be deregistered\n\t\t\t\t\t\t\tin this state.

      \n
    • \n
    • \n

      \n STOPPING - The task is in the process of being stopped.

      \n
    • \n
    • \n

      \n DEPROVISIONING - Resources associated with the task are being cleaned up.

      \n
    • \n
    • \n

      \n STOPPED - The task has been completely stopped.

      \n
    • \n
    \n
  4. \n
  5. \n

    After the old task stops, a new task will be launched to ensure service operation, and the new task will go through the following lifecycle:

    \n
      \n
    • \n

      \n PROVISIONING - Resources required for the task are being provisioned.

      \n
    • \n
    • \n

      \n PENDING - The task is waiting to be placed on a container instance.

      \n
    • \n
    • \n

      \n ACTIVATING - In this state, Amazon ECS pulls container images, creates containers,\n\t\t\t\t\t\t\tconfigures task networking, registers load balancer target groups, and\n\t\t\t\t\t\t\tconfigures service discovery status.

      \n
    • \n
    • \n

      \n RUNNING - The task is running and performing its work.

      \n
    • \n
    \n
  6. \n
\n

For more detailed information about task lifecycle states, see Task lifecycle in the Amazon Elastic Container Service Developer Guide.

\n

The following are notes about container health check support:

\n
    \n
  • \n

    If the Amazon ECS container agent becomes disconnected from the Amazon ECS service, this\n\t\t\t\t\twon't cause a container to transition to an UNHEALTHY status. This\n\t\t\t\t\tis by design, to ensure that containers remain running during agent restarts or\n\t\t\t\t\ttemporary unavailability. The health check status is the \"last heard from\"\n\t\t\t\t\tresponse from the Amazon ECS agent, so if the container was considered\n\t\t\t\t\t\tHEALTHY prior to the disconnect, that status will remain until\n\t\t\t\t\tthe agent reconnects and another health check occurs. There are no assumptions\n\t\t\t\t\tmade about the status of the container health checks.

    \n
  • \n
  • \n

    Container health checks require version 1.17.0 or greater of the\n\t\t\t\t\tAmazon ECS container agent. For more information, see Updating the\n\t\t\t\t\t\tAmazon ECS container agent.

    \n
  • \n
  • \n

    Container health checks are supported for Fargate tasks if\n\t\t\t\t\tyou're using platform version 1.1.0 or greater. For more\n\t\t\t\t\tinformation, see Fargate\n\t\t\t\t\t\tplatform versions.

    \n
  • \n
  • \n

    Container health checks aren't supported for tasks that are part of a service\n\t\t\t\t\tthat's configured to use a Classic Load Balancer.

    \n
  • \n
\n

For an example of how to specify a task definition with multiple containers where\n\t\t\tcontainer dependency is specified, see Container dependency in the Amazon Elastic Container Service Developer Guide.

" } }, "com.amazonaws.ecs#HealthStatus": { @@ -6307,6 +7633,9 @@ } } }, + "com.amazonaws.ecs#HookDetails": { + "type": "document" + }, "com.amazonaws.ecs#HostEntry": { "type": "structure", "members": { @@ -6326,7 +7655,7 @@ } }, "traits": { - "smithy.api#documentation": "

Hostnames and IP address entries that are added to the /etc/hosts file of\n\t\t\ta container via the extraHosts parameter of its ContainerDefinition.

" + "smithy.api#documentation": "

Hostnames and IP address entries that are added to the /etc/hosts file of\n\t\t\ta container via the extraHosts parameter of its ContainerDefinition.

" } }, "com.amazonaws.ecs#HostEntryList": { @@ -6406,6 +7735,32 @@ "target": "com.amazonaws.ecs#InferenceAccelerator" } }, + "com.amazonaws.ecs#InstanceGeneration": { + "type": "enum", + "members": { + "CURRENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "current" + } + }, + "PREVIOUS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "previous" + } + } + } + }, + "com.amazonaws.ecs#InstanceGenerationSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#InstanceGeneration", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ecs#InstanceHealthCheckResult": { "type": "structure", "members": { @@ -6484,44 +7839,290 @@ } } }, - "com.amazonaws.ecs#Integer": { - "type": "integer", - "traits": { - "smithy.api#default": 0 - } - }, - "com.amazonaws.ecs#InvalidParameterException": { + "com.amazonaws.ecs#InstanceLaunchTemplate": { "type": "structure", "members": { - "message": { + "ec2InstanceProfileArn": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

Message that describes the cause of the exception.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the instance profile that Amazon ECS applies to Amazon ECS Managed Instances. This instance profile must include the necessary permissions for your tasks to access Amazon Web Services services and resources.

\n

For more information, see Amazon ECS instance profile for Managed Instances in the Amazon ECS Developer Guide.\n\t\t

", + "smithy.api#required": {} } - } - }, - "traits": { - "smithy.api#documentation": "

The specified parameter isn't valid. Review the available parameters for the API\n\t\t\trequest.

", - "smithy.api#error": "client" - } - }, - "com.amazonaws.ecs#IpcMode": { - "type": "enum", - "members": { - "HOST": { - "target": "smithy.api#Unit", + }, + "networkConfiguration": { + "target": "com.amazonaws.ecs#ManagedInstancesNetworkConfiguration", "traits": { - "smithy.api#enumValue": "host" + "smithy.api#documentation": "

The network configuration for Amazon ECS Managed Instances. This specifies the subnets and security groups that instances use for network connectivity.

", + "smithy.api#required": {} } }, - "TASK": { - "target": "smithy.api#Unit", + "storageConfiguration": { + "target": "com.amazonaws.ecs#ManagedInstancesStorageConfiguration", "traits": { - "smithy.api#enumValue": "task" + "smithy.api#documentation": "

The storage configuration for Amazon ECS Managed Instances. This defines the root volume size and type for the instances.

" } }, - "NONE": { - "target": "smithy.api#Unit", + "monitoring": { + "target": "com.amazonaws.ecs#ManagedInstancesMonitoringOptions", + "traits": { + "smithy.api#documentation": "

CloudWatch provides two categories of monitoring: basic monitoring and detailed monitoring. By default, your managed instance is configured for basic monitoring. You can optionally enable detailed monitoring to help you more quickly identify and act on operational issues. You can enable or turn off detailed monitoring at launch or when the managed instance is running or stopped. For more information, see Detailed monitoring for Amazon ECS Managed Instances in the Amazon ECS Developer Guide.

" + } + }, + "instanceRequirements": { + "target": "com.amazonaws.ecs#InstanceRequirementsRequest", + "traits": { + "smithy.api#documentation": "

The instance requirements. You can specify:

\n
    \n
  • \n

    The instance types

    \n
  • \n
  • \n

    Instance requirements such as vCPU count, memory, network performance, and accelerator specifications

    \n
  • \n
\n

Amazon ECS automatically selects the instances that match the specified criteria.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The launch template configuration for Amazon ECS Managed Instances. This defines how Amazon ECS launches Amazon EC2 instances, including the instance profile for your tasks, network and storage configuration, capacity options, and instance requirements for flexible instance type selection.

" + } + }, + "com.amazonaws.ecs#InstanceLaunchTemplateUpdate": { + "type": "structure", + "members": { + "ec2InstanceProfileArn": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The updated Amazon Resource Name (ARN) of the instance profile. The new instance profile must have the necessary permissions for your tasks.

\n

For more information, see Amazon ECS instance profile for Managed Instances in the Amazon ECS Developer Guide.\n\t\t

" + } + }, + "networkConfiguration": { + "target": "com.amazonaws.ecs#ManagedInstancesNetworkConfiguration", + "traits": { + "smithy.api#documentation": "

The updated network configuration for Amazon ECS Managed Instances. Changes to subnets and security groups affect new instances launched after the update.

" + } + }, + "storageConfiguration": { + "target": "com.amazonaws.ecs#ManagedInstancesStorageConfiguration", + "traits": { + "smithy.api#documentation": "

The updated storage configuration for Amazon ECS Managed Instances. Changes to storage settings apply to new instances launched after the update.

" + } + }, + "monitoring": { + "target": "com.amazonaws.ecs#ManagedInstancesMonitoringOptions", + "traits": { + "smithy.api#documentation": "

CloudWatch provides two categories of monitoring: basic monitoring and detailed monitoring. By default, your managed instance is configured for basic monitoring. You can optionally enable detailed monitoring to help you more quickly identify and act on operational issues. You can enable or turn off detailed monitoring at launch or when the managed instance is running or stopped. For more information, see Detailed monitoring for Amazon ECS Managed Instances in the Amazon ECS Developer Guide.

" + } + }, + "instanceRequirements": { + "target": "com.amazonaws.ecs#InstanceRequirementsRequest", + "traits": { + "smithy.api#documentation": "

The updated instance requirements for attribute-based instance type selection. Changes to instance requirements affect which instance types Amazon ECS selects for new instances.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The updated launch template configuration for Amazon ECS Managed Instances. You can modify the instance profile, network configuration, storage settings, and instance requirements. Changes apply to new instances launched after the update.

\n

For more information, see Store instance launch parameters in Amazon EC2 launch templates in the Amazon EC2 User Guide.

" + } + }, + "com.amazonaws.ecs#InstanceRequirementsRequest": { + "type": "structure", + "members": { + "vCpuCount": { + "target": "com.amazonaws.ecs#VCpuCountRangeRequest", + "traits": { + "smithy.api#documentation": "

The minimum and maximum number of vCPUs for the instance types. Amazon ECS selects instance types that have vCPU counts within this range.

", + "smithy.api#required": {} + } + }, + "memoryMiB": { + "target": "com.amazonaws.ecs#MemoryMiBRequest", + "traits": { + "smithy.api#documentation": "

The minimum and maximum amount of memory in mebibytes (MiB) for the instance types. Amazon ECS selects instance types that have memory within this range.

", + "smithy.api#required": {} + } + }, + "cpuManufacturers": { + "target": "com.amazonaws.ecs#CpuManufacturerSet", + "traits": { + "smithy.api#documentation": "

The CPU manufacturers to include or exclude. You can specify intel, amd, or amazon-web-services to control which CPU types are used for your workloads.

", + "smithy.api#xmlName": "CpuManufacturer" + } + }, + "memoryGiBPerVCpu": { + "target": "com.amazonaws.ecs#MemoryGiBPerVCpuRequest", + "traits": { + "smithy.api#documentation": "

The minimum and maximum amount of memory per vCPU in gibibytes (GiB). This helps ensure that instance types have the appropriate memory-to-CPU ratio for your workloads.

" + } + }, + "excludedInstanceTypes": { + "target": "com.amazonaws.ecs#ExcludedInstanceTypeSet", + "traits": { + "smithy.api#documentation": "

The instance types to exclude from selection. Use this to prevent Amazon ECS from selecting specific instance types that may not be suitable for your workloads.

", + "smithy.api#xmlName": "ExcludedInstanceType" + } + }, + "instanceGenerations": { + "target": "com.amazonaws.ecs#InstanceGenerationSet", + "traits": { + "smithy.api#documentation": "

The instance generations to include. You can specify current to use the latest generation instances, or previous to include previous generation instances for cost optimization.

", + "smithy.api#xmlName": "InstanceGeneration" + } + }, + "spotMaxPricePercentageOverLowestPrice": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The maximum price for Spot instances as a percentage over the lowest priced On-Demand instance. This helps control Spot instance costs while maintaining access to capacity.

" + } + }, + "onDemandMaxPricePercentageOverLowestPrice": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon ECS selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.

" + } + }, + "bareMetal": { + "target": "com.amazonaws.ecs#BareMetal", + "traits": { + "smithy.api#documentation": "

Indicates whether to include bare metal instance types. Set to included to allow bare metal instances, excluded to exclude them, or required to use only bare metal instances.

" + } + }, + "burstablePerformance": { + "target": "com.amazonaws.ecs#BurstablePerformance", + "traits": { + "smithy.api#documentation": "

Indicates whether to include burstable performance instance types (T2, T3, T3a, T4g). Set to included to allow burstable instances, excluded to exclude them, or required to use only burstable instances.

" + } + }, + "requireHibernateSupport": { + "target": "com.amazonaws.ecs#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

Indicates whether the instance types must support hibernation. When set to true, only instance types that support hibernation are selected.

" + } + }, + "networkInterfaceCount": { + "target": "com.amazonaws.ecs#NetworkInterfaceCountRequest", + "traits": { + "smithy.api#documentation": "

The minimum and maximum number of network interfaces for the instance types. This is useful for workloads that require multiple network interfaces.

" + } + }, + "localStorage": { + "target": "com.amazonaws.ecs#LocalStorage", + "traits": { + "smithy.api#documentation": "

Indicates whether to include instance types with local storage. Set to included to allow local storage, excluded to exclude it, or required to use only instances with local storage.

" + } + }, + "localStorageTypes": { + "target": "com.amazonaws.ecs#LocalStorageTypeSet", + "traits": { + "smithy.api#documentation": "

The local storage types to include. You can specify hdd for hard disk drives, ssd for solid state drives, or both.

", + "smithy.api#xmlName": "LocalStorageType" + } + }, + "totalLocalStorageGB": { + "target": "com.amazonaws.ecs#TotalLocalStorageGBRequest", + "traits": { + "smithy.api#documentation": "

The minimum and maximum total local storage in gigabytes (GB) for instance types with local storage.

" + } + }, + "baselineEbsBandwidthMbps": { + "target": "com.amazonaws.ecs#BaselineEbsBandwidthMbpsRequest", + "traits": { + "smithy.api#documentation": "

The minimum and maximum baseline Amazon EBS bandwidth in megabits per second (Mbps). This is important for workloads with high storage I/O requirements.

" + } + }, + "acceleratorTypes": { + "target": "com.amazonaws.ecs#AcceleratorTypeSet", + "traits": { + "smithy.api#documentation": "

The accelerator types to include. You can specify gpu for graphics processing units, fpga for field programmable gate arrays, or inference for machine learning inference accelerators.

", + "smithy.api#xmlName": "AcceleratorType" + } + }, + "acceleratorCount": { + "target": "com.amazonaws.ecs#AcceleratorCountRequest", + "traits": { + "smithy.api#documentation": "

The minimum and maximum number of accelerators for the instance types. This is used when you need instances with specific numbers of GPUs or other accelerators.

" + } + }, + "acceleratorManufacturers": { + "target": "com.amazonaws.ecs#AcceleratorManufacturerSet", + "traits": { + "smithy.api#documentation": "

The accelerator manufacturers to include. You can specify nvidia, amd, amazon-web-services, or xilinx depending on your accelerator requirements.

", + "smithy.api#xmlName": "AcceleratorManufacturer" + } + }, + "acceleratorNames": { + "target": "com.amazonaws.ecs#AcceleratorNameSet", + "traits": { + "smithy.api#documentation": "

The specific accelerator names to include. For example, you can specify a100, v100, k80, or other specific accelerator models.

", + "smithy.api#xmlName": "AcceleratorName" + } + }, + "acceleratorTotalMemoryMiB": { + "target": "com.amazonaws.ecs#AcceleratorTotalMemoryMiBRequest", + "traits": { + "smithy.api#documentation": "

The minimum and maximum total accelerator memory in mebibytes (MiB). This is important for GPU workloads that require specific amounts of video memory.

" + } + }, + "networkBandwidthGbps": { + "target": "com.amazonaws.ecs#NetworkBandwidthGbpsRequest", + "traits": { + "smithy.api#documentation": "

The minimum and maximum network bandwidth in gigabits per second (Gbps). This is crucial for network-intensive workloads that require high throughput.

" + } + }, + "allowedInstanceTypes": { + "target": "com.amazonaws.ecs#AllowedInstanceTypeSet", + "traits": { + "smithy.api#documentation": "

The instance types to include in the selection. When specified, Amazon ECS only considers these instance types, subject to the other requirements specified.

", + "smithy.api#xmlName": "AllowedInstanceType" + } + }, + "maxSpotPriceAsPercentageOfOptimalOnDemandPrice": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The maximum price for Spot instances as a percentage of the optimal On-Demand price. This provides more precise cost control for Spot instance selection.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The instance requirements for attribute-based instance type selection. Instead of specifying exact instance types, you define requirements such as vCPU count, memory size, network performance, and accelerator specifications. Amazon ECS automatically selects Amazon EC2 instance types that match these requirements, providing flexibility and helping to mitigate capacity constraints.

" + } + }, + "com.amazonaws.ecs#Integer": { + "type": "integer", + "traits": { + "smithy.api#default": 0 + } + }, + "com.amazonaws.ecs#IntegerList": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#BoxedInteger" + } + }, + "com.amazonaws.ecs#InvalidParameterException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

Message that describes the cause of the exception.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The specified parameter isn't valid. Review the available parameters for the API\n\t\t\trequest.

\n

For more information about service event errors, see Amazon ECS service\n\t\t\t\tevent messages.

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.ecs#IpcMode": { + "type": "enum", + "members": { + "HOST": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "host" + } + }, + "TASK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "task" + } + }, + "NONE": { + "target": "smithy.api#Unit", "traits": { "smithy.api#enumValue": "none" } @@ -6534,18 +8135,18 @@ "add": { "target": "com.amazonaws.ecs#StringList", "traits": { - "smithy.api#documentation": "

The Linux capabilities for the container that have been added to the default\n\t\t\tconfiguration provided by Docker. This parameter maps to CapAdd in the\n\t\t\tCreate a container section of the Docker Remote API and the\n\t\t\t\t--cap-add option to docker\n\t\t\t\trun.

\n \n

Tasks launched on Fargate only support adding the SYS_PTRACE kernel\n\t\t\t\tcapability.

\n
\n

Valid values: \"ALL\" | \"AUDIT_CONTROL\" | \"AUDIT_WRITE\" | \"BLOCK_SUSPEND\" |\n\t\t\t\t\"CHOWN\" | \"DAC_OVERRIDE\" | \"DAC_READ_SEARCH\" | \"FOWNER\" | \"FSETID\" | \"IPC_LOCK\" |\n\t\t\t\t\"IPC_OWNER\" | \"KILL\" | \"LEASE\" | \"LINUX_IMMUTABLE\" | \"MAC_ADMIN\" | \"MAC_OVERRIDE\" |\n\t\t\t\t\"MKNOD\" | \"NET_ADMIN\" | \"NET_BIND_SERVICE\" | \"NET_BROADCAST\" | \"NET_RAW\" | \"SETFCAP\"\n\t\t\t\t| \"SETGID\" | \"SETPCAP\" | \"SETUID\" | \"SYS_ADMIN\" | \"SYS_BOOT\" | \"SYS_CHROOT\" |\n\t\t\t\t\"SYS_MODULE\" | \"SYS_NICE\" | \"SYS_PACCT\" | \"SYS_PTRACE\" | \"SYS_RAWIO\" |\n\t\t\t\t\"SYS_RESOURCE\" | \"SYS_TIME\" | \"SYS_TTY_CONFIG\" | \"SYSLOG\" |\n\t\t\t\"WAKE_ALARM\"\n

" + "smithy.api#documentation": "

The Linux capabilities for the container that have been added to the default\n\t\t\tconfiguration provided by Docker. This parameter maps to CapAdd in the\n\t\t\tdocker container create command and the --cap-add option to docker\n\t\t\trun.

\n \n

Tasks launched on Fargate only support adding the SYS_PTRACE kernel\n\t\t\t\tcapability.

\n
\n

Valid values: \"ALL\" | \"AUDIT_CONTROL\" | \"AUDIT_WRITE\" | \"BLOCK_SUSPEND\" |\n\t\t\t\t\"CHOWN\" | \"DAC_OVERRIDE\" | \"DAC_READ_SEARCH\" | \"FOWNER\" | \"FSETID\" | \"IPC_LOCK\" |\n\t\t\t\t\"IPC_OWNER\" | \"KILL\" | \"LEASE\" | \"LINUX_IMMUTABLE\" | \"MAC_ADMIN\" | \"MAC_OVERRIDE\" |\n\t\t\t\t\"MKNOD\" | \"NET_ADMIN\" | \"NET_BIND_SERVICE\" | \"NET_BROADCAST\" | \"NET_RAW\" | \"SETFCAP\"\n\t\t\t\t| \"SETGID\" | \"SETPCAP\" | \"SETUID\" | \"SYS_ADMIN\" | \"SYS_BOOT\" | \"SYS_CHROOT\" |\n\t\t\t\t\"SYS_MODULE\" | \"SYS_NICE\" | \"SYS_PACCT\" | \"SYS_PTRACE\" | \"SYS_RAWIO\" |\n\t\t\t\t\"SYS_RESOURCE\" | \"SYS_TIME\" | \"SYS_TTY_CONFIG\" | \"SYSLOG\" |\n\t\t\t\"WAKE_ALARM\"\n

" } }, "drop": { "target": "com.amazonaws.ecs#StringList", "traits": { - "smithy.api#documentation": "

The Linux capabilities for the container that have been removed from the default\n\t\t\tconfiguration provided by Docker. This parameter maps to CapDrop in the\n\t\t\tCreate a container section of the Docker Remote API and the\n\t\t\t\t--cap-drop option to docker\n\t\t\t\trun.

\n

Valid values: \"ALL\" | \"AUDIT_CONTROL\" | \"AUDIT_WRITE\" | \"BLOCK_SUSPEND\" |\n\t\t\t\t\"CHOWN\" | \"DAC_OVERRIDE\" | \"DAC_READ_SEARCH\" | \"FOWNER\" | \"FSETID\" | \"IPC_LOCK\" |\n\t\t\t\t\"IPC_OWNER\" | \"KILL\" | \"LEASE\" | \"LINUX_IMMUTABLE\" | \"MAC_ADMIN\" | \"MAC_OVERRIDE\" |\n\t\t\t\t\"MKNOD\" | \"NET_ADMIN\" | \"NET_BIND_SERVICE\" | \"NET_BROADCAST\" | \"NET_RAW\" | \"SETFCAP\"\n\t\t\t\t| \"SETGID\" | \"SETPCAP\" | \"SETUID\" | \"SYS_ADMIN\" | \"SYS_BOOT\" | \"SYS_CHROOT\" |\n\t\t\t\t\"SYS_MODULE\" | \"SYS_NICE\" | \"SYS_PACCT\" | \"SYS_PTRACE\" | \"SYS_RAWIO\" |\n\t\t\t\t\"SYS_RESOURCE\" | \"SYS_TIME\" | \"SYS_TTY_CONFIG\" | \"SYSLOG\" |\n\t\t\t\"WAKE_ALARM\"\n

" + "smithy.api#documentation": "

The Linux capabilities for the container that have been removed from the default\n\t\t\tconfiguration provided by Docker. This parameter maps to CapDrop in the\n\t\t\tdocker container create command and the --cap-drop option to docker\n\t\t\trun.

\n

Valid values: \"ALL\" | \"AUDIT_CONTROL\" | \"AUDIT_WRITE\" | \"BLOCK_SUSPEND\" |\n\t\t\t\t\"CHOWN\" | \"DAC_OVERRIDE\" | \"DAC_READ_SEARCH\" | \"FOWNER\" | \"FSETID\" | \"IPC_LOCK\" |\n\t\t\t\t\"IPC_OWNER\" | \"KILL\" | \"LEASE\" | \"LINUX_IMMUTABLE\" | \"MAC_ADMIN\" | \"MAC_OVERRIDE\" |\n\t\t\t\t\"MKNOD\" | \"NET_ADMIN\" | \"NET_BIND_SERVICE\" | \"NET_BROADCAST\" | \"NET_RAW\" | \"SETFCAP\"\n\t\t\t\t| \"SETGID\" | \"SETPCAP\" | \"SETUID\" | \"SYS_ADMIN\" | \"SYS_BOOT\" | \"SYS_CHROOT\" |\n\t\t\t\t\"SYS_MODULE\" | \"SYS_NICE\" | \"SYS_PACCT\" | \"SYS_PTRACE\" | \"SYS_RAWIO\" |\n\t\t\t\t\"SYS_RESOURCE\" | \"SYS_TIME\" | \"SYS_TTY_CONFIG\" | \"SYSLOG\" |\n\t\t\t\"WAKE_ALARM\"\n

" } } }, "traits": { - "smithy.api#documentation": "

The Linux capabilities to add or remove from the default Docker configuration for a container defined in the task definition. For more information about the default capabilities\n\t\t\tand the non-default available capabilities, see Runtime privilege and Linux capabilities in the Docker run\n\t\t\t\treference. For more detailed information about these Linux capabilities,\n\t\t\tsee the capabilities(7) Linux manual page.

" + "smithy.api#documentation": "

The Linux capabilities to add or remove from the default Docker configuration for a\n\t\t\tcontainer defined in the task definition. For more detailed information about these\n\t\t\tLinux capabilities, see the capabilities(7) Linux manual page.

\n

The following describes how Docker processes the Linux capabilities specified in the\n\t\t\t\tadd and drop request parameters. For information about the\n\t\t\tlatest behavior, see Docker Compose: order of cap_drop and cap_add in the Docker Community\n\t\t\tForum.

\n
    \n
  • \n

    When the container is a privleged container, the container capabilities are\n\t\t\t\t\tall of the default Docker capabilities. The capabilities specified in the\n\t\t\t\t\t\tadd request parameter, and the drop request\n\t\t\t\t\tparameter are ignored.

    \n
  • \n
  • \n

    When the add request parameter is set to ALL, the container\n\t\t\t\t\tcapabilities are all of the default Docker capabilities, excluding those\n\t\t\t\t\tspecified in the drop request parameter.

    \n
  • \n
  • \n

    When the drop request parameter is set to ALL, the container\n\t\t\t\t\tcapabilities are the capabilities specified in the add request\n\t\t\t\t\tparameter.

    \n
  • \n
  • \n

    When the add request parameter and the drop request\n\t\t\t\t\tparameter are both empty, the capabilities the container capabilities are all of\n\t\t\t\t\tthe default Docker capabilities.

    \n
  • \n
  • \n

    The default is to first drop the capabilities specified in the\n\t\t\t\t\t\tdrop request parameter, and then add the capabilities specified\n\t\t\t\t\tin the add request parameter.

    \n
  • \n
" } }, "com.amazonaws.ecs#KeyValuePair": { @@ -6588,6 +8189,12 @@ "traits": { "smithy.api#enumValue": "EXTERNAL" } + }, + "MANAGED_INSTANCES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MANAGED_INSTANCES" + } } } }, @@ -6618,37 +8225,37 @@ "devices": { "target": "com.amazonaws.ecs#DevicesList", "traits": { - "smithy.api#documentation": "

Any host devices to expose to the container. This parameter maps to\n\t\t\t\tDevices in the Create a container section of the\n\t\t\tDocker Remote API and the --device option to docker run.

\n \n

If you're using tasks that use the Fargate launch type, the\n\t\t\t\t\tdevices parameter isn't supported.

\n
" + "smithy.api#documentation": "

Any host devices to expose to the container. This parameter maps to\n\t\t\t\tDevices in the docker container create command and the\n\t\t\t\t--device option to docker run.

\n \n

If you're using tasks that use the Fargate launch type, the\n\t\t\t\t\tdevices parameter isn't supported.

\n
" } }, "initProcessEnabled": { "target": "com.amazonaws.ecs#BoxedBoolean", "traits": { - "smithy.api#documentation": "

Run an init process inside the container that forwards signals and reaps\n\t\t\tprocesses. This parameter maps to the --init option to docker run. This parameter requires version 1.25 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version --format '{{.Server.APIVersion}}'\n

" + "smithy.api#documentation": "

Run an init process inside the container that forwards signals and reaps\n\t\t\tprocesses. This parameter maps to the --init option to docker run.\n\t\t\tThis parameter requires version 1.25 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version --format '{{.Server.APIVersion}}'\n

" } }, "sharedMemorySize": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { - "smithy.api#documentation": "

The value for the size (in MiB) of the /dev/shm volume. This parameter\n\t\t\tmaps to the --shm-size option to docker\n\t\t\t\trun.

\n \n

If you are using tasks that use the Fargate launch type, the\n\t\t\t\t\tsharedMemorySize parameter is not supported.

\n
" + "smithy.api#documentation": "

The value for the size (in MiB) of the /dev/shm volume. This parameter\n\t\t\tmaps to the --shm-size option to docker run.

\n \n

If you are using tasks that use the Fargate launch type, the\n\t\t\t\t\tsharedMemorySize parameter is not supported.

\n
" } }, "tmpfs": { "target": "com.amazonaws.ecs#TmpfsList", "traits": { - "smithy.api#documentation": "

The container path, mount options, and size (in MiB) of the tmpfs mount. This\n\t\t\tparameter maps to the --tmpfs option to docker run.

\n \n

If you're using tasks that use the Fargate launch type, the\n\t\t\t\t\ttmpfs parameter isn't supported.

\n
" + "smithy.api#documentation": "

The container path, mount options, and size (in MiB) of the tmpfs mount. This\n\t\t\tparameter maps to the --tmpfs option to docker run.

\n \n

If you're using tasks that use the Fargate launch type, the\n\t\t\t\t\ttmpfs parameter isn't supported.

\n
" } }, "maxSwap": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { - "smithy.api#documentation": "

The total amount of swap memory (in MiB) a container can use. This parameter will be\n\t\t\ttranslated to the --memory-swap option to docker run where the value would be the sum of\n\t\t\tthe container memory plus the maxSwap value.

\n

If a maxSwap value of 0 is specified, the container will not\n\t\t\tuse swap. Accepted values are 0 or any positive integer. If the\n\t\t\t\tmaxSwap parameter is omitted, the container will use the swap\n\t\t\tconfiguration for the container instance it is running on. A maxSwap value\n\t\t\tmust be set for the swappiness parameter to be used.

\n \n

If you're using tasks that use the Fargate launch type, the\n\t\t\t\t\tmaxSwap parameter isn't supported.

\n

If you're using tasks on Amazon Linux 2023 the swappiness parameter isn't\n\t\t\t\tsupported.

\n
" + "smithy.api#documentation": "

The total amount of swap memory (in MiB) a container can use. This parameter will be\n\t\t\ttranslated to the --memory-swap option to docker run where the value would\n\t\t\tbe the sum of the container memory plus the maxSwap value.

\n

If a maxSwap value of 0 is specified, the container will not\n\t\t\tuse swap. Accepted values are 0 or any positive integer. If the\n\t\t\t\tmaxSwap parameter is omitted, the container will use the swap\n\t\t\tconfiguration for the container instance it is running on. A maxSwap value\n\t\t\tmust be set for the swappiness parameter to be used.

\n \n

If you're using tasks that use the Fargate launch type, the\n\t\t\t\t\tmaxSwap parameter isn't supported.

\n

If you're using tasks on Amazon Linux 2023 the swappiness parameter isn't\n\t\t\t\tsupported.

\n
" } }, "swappiness": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { - "smithy.api#documentation": "

This allows you to tune a container's memory swappiness behavior. A\n\t\t\t\tswappiness value of 0 will cause swapping to not happen\n\t\t\tunless absolutely necessary. A swappiness value of 100 will\n\t\t\tcause pages to be swapped very aggressively. Accepted values are whole numbers between\n\t\t\t\t0 and 100. If the swappiness parameter is not\n\t\t\tspecified, a default value of 60 is used. If a value is not specified for\n\t\t\t\tmaxSwap then this parameter is ignored. This parameter maps to the\n\t\t\t\t--memory-swappiness option to docker run.

\n \n

If you're using tasks that use the Fargate launch type, the\n\t\t\t\t\tswappiness parameter isn't supported.

\n

If you're using tasks on Amazon Linux 2023 the swappiness parameter isn't\n\t\t\t\tsupported.

\n
" + "smithy.api#documentation": "

This allows you to tune a container's memory swappiness behavior. A\n\t\t\t\tswappiness value of 0 will cause swapping to not happen\n\t\t\tunless absolutely necessary. A swappiness value of 100 will\n\t\t\tcause pages to be swapped very aggressively. Accepted values are whole numbers between\n\t\t\t\t0 and 100. If the swappiness parameter is not\n\t\t\tspecified, a default value of 60 is used. If a value is not specified for\n\t\t\t\tmaxSwap then this parameter is ignored. This parameter maps to the\n\t\t\t\t--memory-swappiness option to docker run.

\n \n

If you're using tasks that use the Fargate launch type, the\n\t\t\t\t\tswappiness parameter isn't supported.

\n

If you're using tasks on Amazon Linux 2023 the swappiness parameter isn't\n\t\t\t\tsupported.

\n
" } } }, @@ -6679,10 +8286,11 @@ "smithy.api#documentation": "

Lists the account settings for a specified principal.

", "smithy.api#examples": [ { - "title": "To view your effective account settings", - "documentation": "This example displays the effective account settings for your account.", + "title": "To view the effective account settings for a specific IAM user or IAM role", + "documentation": "This example displays the effective account settings for the specified user or role.", "input": { - "effectiveSettings": true + "effectiveSettings": true, + "principalArn": "arn:aws:iam:::user/principalName" }, "output": { "settings": [ @@ -6705,11 +8313,10 @@ } }, { - "title": "To view the effective account settings for a specific IAM user or IAM role", - "documentation": "This example displays the effective account settings for the specified user or role.", + "title": "To view your effective account settings", + "documentation": "This example displays the effective account settings for your account.", "input": { - "effectiveSettings": true, - "principalArn": "arn:aws:iam:::user/principalName" + "effectiveSettings": true }, "output": { "settings": [ @@ -6758,7 +8365,7 @@ "principalArn": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The ARN of the principal, which can be a user, role, or the root user. If this field is\n\t\t\tomitted, the account settings are listed only for the authenticated user.

\n \n

Federated users assume the account setting of the root user and can't have explicit\n\t\t\t\taccount settings set for them.

\n
" + "smithy.api#documentation": "

The ARN of the principal, which can be a user, role, or the root user. If this field is\n\t\t\tomitted, the account settings are listed only for the authenticated user.

\n

In order to use this parameter, you must be the root user, or the principal.

\n \n

Federated users assume the account setting of the root user and can't have explicit\n\t\t\t\taccount settings set for them.

\n
" } }, "effectiveSettings": { @@ -6824,6 +8431,27 @@ ], "traits": { "smithy.api#documentation": "

Lists the attributes for Amazon ECS resources within a specified target type and cluster.\n\t\t\tWhen you specify a target type and cluster, ListAttributes returns a list\n\t\t\tof attribute objects, one for each attribute on each resource. You can filter the list\n\t\t\tof results to a single attribute name to only return results that have that name. You\n\t\t\tcan also filter the results by attribute name and value. You can do this, for example,\n\t\t\tto see which container instances in a cluster are running a Linux AMI\n\t\t\t\t(ecs.os-type=linux).

", + "smithy.api#examples": [ + { + "title": "To list container instances that have a specific attribute", + "documentation": "This example lists attributes for a container instance with the attribute \"stack\" equal to the value \"production\".", + "input": { + "cluster": "MyCluster", + "targetType": "container-instance", + "attributeName": "stack", + "attributeValue": "production" + }, + "output": { + "attributes": [ + { + "name": "stack", + "targetId": "arn:aws:ecs:us-west-2:123456789012:container-instance/1c3be8ed-df30-47b4-8f1e-6e68ebd01f34", + "value": "production" + } + ] + } + } + ], "smithy.api#paginated": { "inputToken": "nextToken", "outputToken": "nextToken", @@ -6935,7 +8563,20 @@ "outputToken": "nextToken", "items": "clusterArns", "pageSize": "maxResults" - } + }, + "smithy.test#smokeTests": [ + { + "id": "ListClustersSuccess", + "params": {}, + "vendorParams": { + "region": "us-west-2" + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "expect": { + "success": {} + } + } + ] } }, "com.amazonaws.ecs#ListClustersRequest": { @@ -7055,7 +8696,7 @@ "status": { "target": "com.amazonaws.ecs#ContainerInstanceStatus", "traits": { - "smithy.api#documentation": "

Filters the container instances by status. For example, if you specify the\n\t\t\t\tDRAINING status, the results include only container instances that have\n\t\t\tbeen set to DRAINING using UpdateContainerInstancesState.\n\t\t\tIf you don't specify this parameter, the default is to include container instances set\n\t\t\tto all states other than INACTIVE.

" + "smithy.api#documentation": "

Filters the container instances by status. For example, if you specify the\n\t\t\t\tDRAINING status, the results include only container instances that have\n\t\t\tbeen set to DRAINING using UpdateContainerInstancesState. If you don't specify this parameter, the\n\t\t\tdefault is to include container instances set to all states other than\n\t\t\t\tINACTIVE.

" } } }, @@ -7083,69 +8724,190 @@ "smithy.api#output": {} } }, - "com.amazonaws.ecs#ListServices": { + "com.amazonaws.ecs#ListServiceDeployments": { "type": "operation", "input": { - "target": "com.amazonaws.ecs#ListServicesRequest" + "target": "com.amazonaws.ecs#ListServiceDeploymentsRequest" }, "output": { - "target": "com.amazonaws.ecs#ListServicesResponse" + "target": "com.amazonaws.ecs#ListServiceDeploymentsResponse" }, "errors": [ { - "target": "com.amazonaws.ecs#ClientException" + "target": "com.amazonaws.ecs#AccessDeniedException" }, { - "target": "com.amazonaws.ecs#ClusterNotFoundException" + "target": "com.amazonaws.ecs#ClientException" }, { "target": "com.amazonaws.ecs#InvalidParameterException" }, { "target": "com.amazonaws.ecs#ServerException" + }, + { + "target": "com.amazonaws.ecs#ServiceNotFoundException" + }, + { + "target": "com.amazonaws.ecs#UnsupportedFeatureException" } ], "traits": { - "smithy.api#documentation": "

Returns a list of services. You can filter the results by cluster, launch type, and\n\t\t\tscheduling strategy.

", + "smithy.api#documentation": "

This operation lists all the service deployments that meet the specified filter\n\t\t\tcriteria.

\n

A service deployment happens when you release a software update for the service. You\n\t\t\troute traffic from the running service revisions to the new service revison and control\n\t\t\tthe number of running tasks.

\n

This API returns the values that you use for the request parameters in DescribeServiceRevisions.

", "smithy.api#examples": [ { - "title": "To list the services in a cluster", - "documentation": "This example lists the services running in the default cluster for an account.", + "title": "To list service deployments that meet the specified criteria", + "documentation": "This example lists all successful service deployments for the service \"sd-example\" in the cluster \"example\".", + "input": { + "service": "sd-example", + "cluster": "example", + "status": [ + "SUCCESSFUL" + ] + }, "output": { - "serviceArns": [ - "arn:aws:ecs:us-east-1:012345678910:service/default/my-http-service" + "serviceDeployments": [ + { + "serviceDeploymentArn": "arn:aws:ecs:us-west-2:123456789012:service-deployment/example/sd-example/NCWGC2ZR-taawPAYrIaU5", + "serviceArn": "arn:aws:ecs:us-west-2:123456789012:service/example/sd-example", + "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/example", + "targetServiceRevisionArn": "arn:aws:ecs:us-west-2:123456789012:service-revision/example/sd-example/4980306466373577095", + "status": "SUCCESSFUL" + } ] } } - ], - "smithy.api#paginated": { - "inputToken": "nextToken", - "outputToken": "nextToken", - "items": "serviceArns", - "pageSize": "maxResults" - } + ] } }, - "com.amazonaws.ecs#ListServicesByNamespace": { - "type": "operation", - "input": { - "target": "com.amazonaws.ecs#ListServicesByNamespaceRequest" - }, - "output": { - "target": "com.amazonaws.ecs#ListServicesByNamespaceResponse" - }, - "errors": [ - { - "target": "com.amazonaws.ecs#ClientException" + "com.amazonaws.ecs#ListServiceDeploymentsRequest": { + "type": "structure", + "members": { + "service": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The ARN or name of the service

", + "smithy.api#required": {} + } }, - { - "target": "com.amazonaws.ecs#InvalidParameterException" + "cluster": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The cluster that hosts the service. This can either be the cluster name or ARN.\n\t\t\tStarting April 15, 2023, Amazon Web Services will not onboard new customers to Amazon\n\t\t\tElastic Inference (EI), and will help current customers migrate their workloads to\n\t\t\toptions that offer better price and performance. If you don't specify a cluster,\n\t\t\t\tdefault is used.

" + } }, - { - "target": "com.amazonaws.ecs#NamespaceNotFoundException" + "status": { + "target": "com.amazonaws.ecs#ServiceDeploymentStatusList", + "traits": { + "smithy.api#documentation": "

An optional filter you can use to narrow the results. If you do not specify a status,\n\t\t\tthen all status values are included in the result.

" + } }, - { - "target": "com.amazonaws.ecs#ServerException" + "createdAt": { + "target": "com.amazonaws.ecs#CreatedAt", + "traits": { + "smithy.api#documentation": "

An optional filter you can use to narrow the results by the service creation date. If\n\t\t\tyou do not specify a value, the result includes all services created before the current\n\t\t\ttime. The format is yyyy-MM-dd HH:mm:ss.SSSSSS.

" + } + }, + "nextToken": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The nextToken value returned from a ListServiceDeployments\n\t\t\trequest indicating that more results are available to fulfill the request and further\n\t\t\tcalls are needed. If you provided maxResults, it's possible the number of\n\t\t\tresults is fewer than maxResults.

" + } + }, + "maxResults": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The maximum number of service deployment results that\n\t\t\t\tListServiceDeployments returned in paginated output. When this\n\t\t\tparameter is used, ListServiceDeployments only returns\n\t\t\t\tmaxResults results in a single page along with a nextToken\n\t\t\tresponse element. The remaining results of the initial request can be seen by sending\n\t\t\tanother ListServiceDeployments request with the returned\n\t\t\t\tnextToken value. This value can be between 1 and 100. If this parameter\n\t\t\tisn't used, then ListServiceDeployments returns up to 20 results and a\n\t\t\t\tnextToken value if applicable.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ecs#ListServiceDeploymentsResponse": { + "type": "structure", + "members": { + "serviceDeployments": { + "target": "com.amazonaws.ecs#ServiceDeploymentsBrief", + "traits": { + "smithy.api#documentation": "

An overview of the service deployment, including the following properties:

\n
    \n
  • \n

    The ARN of the service deployment.

    \n
  • \n
  • \n

    The ARN of the service being deployed.

    \n
  • \n
  • \n

    The ARN of the cluster that hosts the service in the service\n\t\t\t\t\tdeployment.

    \n
  • \n
  • \n

    The time that the service deployment started.

    \n
  • \n
  • \n

    The time that the service deployment completed.

    \n
  • \n
  • \n

    The service deployment status.

    \n
  • \n
  • \n

    Information about why the service deployment is in the current state.

    \n
  • \n
  • \n

    The ARN of the service revision that is being deployed.

    \n
  • \n
" + } + }, + "nextToken": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The nextToken value to include in a future\n\t\t\t\tListServiceDeployments request. When the results of a\n\t\t\t\tListServiceDeployments request exceed maxResults, this\n\t\t\tvalue can be used to retrieve the next page of results. This value is null when there\n\t\t\tare no more results to return.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ecs#ListServices": { + "type": "operation", + "input": { + "target": "com.amazonaws.ecs#ListServicesRequest" + }, + "output": { + "target": "com.amazonaws.ecs#ListServicesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.ecs#ClientException" + }, + { + "target": "com.amazonaws.ecs#ClusterNotFoundException" + }, + { + "target": "com.amazonaws.ecs#InvalidParameterException" + }, + { + "target": "com.amazonaws.ecs#ServerException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns a list of services. You can filter the results by cluster, launch type, and\n\t\t\tscheduling strategy.

", + "smithy.api#examples": [ + { + "title": "To list the services in a cluster", + "documentation": "This example lists the services running in the default cluster for an account.", + "output": { + "serviceArns": [ + "arn:aws:ecs:us-east-1:012345678910:service/default/my-http-service" + ] + } + } + ], + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "items": "serviceArns", + "pageSize": "maxResults" + } + } + }, + "com.amazonaws.ecs#ListServicesByNamespace": { + "type": "operation", + "input": { + "target": "com.amazonaws.ecs#ListServicesByNamespaceRequest" + }, + "output": { + "target": "com.amazonaws.ecs#ListServicesByNamespaceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.ecs#ClientException" + }, + { + "target": "com.amazonaws.ecs#InvalidParameterException" + }, + { + "target": "com.amazonaws.ecs#NamespaceNotFoundException" + }, + { + "target": "com.amazonaws.ecs#ServerException" } ], "traits": { @@ -7358,25 +9120,25 @@ "smithy.api#documentation": "

Returns a list of task definition families that are registered to your account. This\n\t\t\tlist includes task definition families that no longer have any ACTIVE task\n\t\t\tdefinition revisions.

\n

You can filter out task definition families that don't contain any ACTIVE\n\t\t\ttask definition revisions by setting the status parameter to\n\t\t\t\tACTIVE. You can also filter the results with the\n\t\t\t\tfamilyPrefix parameter.

", "smithy.api#examples": [ { - "title": "To list your registered task definition families", - "documentation": "This example lists all of your registered task definition families.", + "title": "To filter your registered task definition families", + "documentation": "This example lists the task definition revisions that start with \"hpcc\".", + "input": { + "familyPrefix": "hpcc" + }, "output": { "families": [ - "node-js-app", - "web-timer", "hpcc", "hpcc-c4-8xlarge" ] } }, { - "title": "To filter your registered task definition families", - "documentation": "This example lists the task definition revisions that start with \"hpcc\".", - "input": { - "familyPrefix": "hpcc" - }, + "title": "To list your registered task definition families", + "documentation": "This example lists all of your registered task definition families.", "output": { "families": [ + "node-js-app", + "web-timer", "hpcc", "hpcc-c4-8xlarge" ] @@ -7466,12 +9228,13 @@ "smithy.api#documentation": "

Returns a list of task definitions that are registered to your account. You can filter\n\t\t\tthe results by family name with the familyPrefix parameter or by status\n\t\t\twith the status parameter.

", "smithy.api#examples": [ { - "title": "To list your registered task definitions", - "documentation": "This example lists all of your registered task definitions.", + "title": "To list the registered task definitions in a family", + "documentation": "This example lists the task definition revisions of a specified family.", + "input": { + "familyPrefix": "wordpress" + }, "output": { "taskDefinitionArns": [ - "arn:aws:ecs:us-east-1::task-definition/sleep300:2", - "arn:aws:ecs:us-east-1::task-definition/sleep360:1", "arn:aws:ecs:us-east-1::task-definition/wordpress:3", "arn:aws:ecs:us-east-1::task-definition/wordpress:4", "arn:aws:ecs:us-east-1::task-definition/wordpress:5", @@ -7480,13 +9243,12 @@ } }, { - "title": "To list the registered task definitions in a family", - "documentation": "This example lists the task definition revisions of a specified family.", - "input": { - "familyPrefix": "wordpress" - }, + "title": "To list your registered task definitions", + "documentation": "This example lists all of your registered task definitions.", "output": { "taskDefinitionArns": [ + "arn:aws:ecs:us-east-1::task-definition/sleep300:2", + "arn:aws:ecs:us-east-1::task-definition/sleep360:1", "arn:aws:ecs:us-east-1::task-definition/wordpress:3", "arn:aws:ecs:us-east-1::task-definition/wordpress:4", "arn:aws:ecs:us-east-1::task-definition/wordpress:5", @@ -7590,28 +9352,28 @@ "smithy.api#documentation": "

Returns a list of tasks. You can filter the results by cluster, task definition\n\t\t\tfamily, container instance, launch type, what IAM principal started the task, or by\n\t\t\tthe desired status of the task.

\n

Recently stopped tasks might appear in the returned results.

", "smithy.api#examples": [ { - "title": "To list the tasks in a cluster", - "documentation": "This example lists all of the tasks in a cluster.", + "title": "To list the tasks on a particular container instance", + "documentation": "This example lists the tasks of a specified container instance. Specifying a ``containerInstance`` value limits the results to tasks that belong to that container instance.", "input": { - "cluster": "default" + "cluster": "default", + "containerInstance": "f6bbb147-5370-4ace-8c73-c7181ded911f" }, "output": { "taskArns": [ - "arn:aws:ecs:us-east-1:012345678910:task/default/0cc43cdb-3bee-4407-9c26-c0e6ea5bee84", - "arn:aws:ecs:us-east-1:012345678910:task/default/6b809ef6-c67e-4467-921f-ee261c15a0a1" + "arn:aws:ecs:us-east-1:012345678910:task/default/0cc43cdb-3bee-4407-9c26-c0e6ea5bee84" ] } }, { - "title": "To list the tasks on a particular container instance", - "documentation": "This example lists the tasks of a specified container instance. Specifying a ``containerInstance`` value limits the results to tasks that belong to that container instance.", + "title": "To list the tasks in a cluster", + "documentation": "This example lists all of the tasks in a cluster.", "input": { - "cluster": "default", - "containerInstance": "f6bbb147-5370-4ace-8c73-c7181ded911f" + "cluster": "default" }, "output": { "taskArns": [ - "arn:aws:ecs:us-east-1:012345678910:task/default/0cc43cdb-3bee-4407-9c26-c0e6ea5bee84" + "arn:aws:ecs:us-east-1:012345678910:task/default/0cc43cdb-3bee-4407-9c26-c0e6ea5bee84", + "arn:aws:ecs:us-east-1:012345678910:task/default/6b809ef6-c67e-4467-921f-ee261c15a0a1" ] } } @@ -7732,6 +9494,12 @@ "traits": { "smithy.api#documentation": "

The port on the container to associate with the load balancer. This port must\n\t\t\tcorrespond to a containerPort in the task definition the tasks in the\n\t\t\tservice are using. For tasks that use the EC2 launch type, the container\n\t\t\tinstance they're launched on must allow ingress traffic on the hostPort of\n\t\t\tthe port mapping.

" } + }, + "advancedConfiguration": { + "target": "com.amazonaws.ecs#AdvancedConfiguration", + "traits": { + "smithy.api#documentation": "

The advanced settings for the load balancer used in blue/green deployments. Specify the alternate target group, listener rules, and IAM role required for traffic shifting during blue/green deployments.

" + } } }, "traits": { @@ -7744,20 +9512,69 @@ "target": "com.amazonaws.ecs#LoadBalancer" } }, + "com.amazonaws.ecs#LocalStorage": { + "type": "enum", + "members": { + "INCLUDED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "included" + } + }, + "REQUIRED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "required" + } + }, + "EXCLUDED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "excluded" + } + } + } + }, + "com.amazonaws.ecs#LocalStorageType": { + "type": "enum", + "members": { + "HDD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "hdd" + } + }, + "SSD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ssd" + } + } + } + }, + "com.amazonaws.ecs#LocalStorageTypeSet": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#LocalStorageType", + "traits": { + "smithy.api#xmlName": "item" + } + } + }, "com.amazonaws.ecs#LogConfiguration": { "type": "structure", "members": { "logDriver": { "target": "com.amazonaws.ecs#LogDriver", "traits": { - "smithy.api#documentation": "

The log driver to use for the container.

\n

For tasks on Fargate, the supported log drivers are awslogs,\n\t\t\t\tsplunk, and awsfirelens.

\n

For tasks hosted on Amazon EC2 instances, the supported log drivers are\n\t\t\t\tawslogs, fluentd, gelf,\n\t\t\t\tjson-file, journald,\n\t\t\t\tlogentries,syslog, splunk, and\n\t\t\t\tawsfirelens.

\n

For more information about using the awslogs log driver, see Using\n\t\t\t\tthe awslogs log driver in the Amazon Elastic Container Service Developer Guide.

\n

For more information about using the awsfirelens log driver, see Custom log routing in the Amazon Elastic Container Service Developer Guide.

\n \n

If you have a custom driver that isn't listed, you can fork the Amazon ECS container\n\t\t\t\tagent project that's available\n\t\t\t\t\ton GitHub and customize it to work with that driver. We encourage you to\n\t\t\t\tsubmit pull requests for changes that you would like to have included. However, we\n\t\t\t\tdon't currently provide support for running modified copies of this software.

\n
", + "smithy.api#documentation": "

The log driver to use for the container.

\n

For tasks on Fargate, the supported log drivers are awslogs,\n\t\t\t\tsplunk, and awsfirelens.

\n

For tasks hosted on Amazon EC2 instances, the supported log drivers are\n\t\t\t\tawslogs, fluentd, gelf,\n\t\t\t\tjson-file, journald, syslog,\n\t\t\t\tsplunk, and awsfirelens.

\n

For more information about using the awslogs log driver, see Send\n\t\t\t\tAmazon ECS logs to CloudWatch in the Amazon Elastic Container Service Developer Guide.

\n

For more information about using the awsfirelens log driver, see Send\n\t\t\t\tAmazon ECS logs to an Amazon Web Services service or Amazon Web Services Partner.

\n \n

If you have a custom driver that isn't listed, you can fork the Amazon ECS container\n\t\t\t\tagent project that's available\n\t\t\t\t\ton GitHub and customize it to work with that driver. We encourage you to\n\t\t\t\tsubmit pull requests for changes that you would like to have included. However, we\n\t\t\t\tdon't currently provide support for running modified copies of this software.

\n
", "smithy.api#required": {} } }, "options": { "target": "com.amazonaws.ecs#LogConfigurationOptionsMap", "traits": { - "smithy.api#documentation": "

The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version --format '{{.Server.APIVersion}}'\n

" + "smithy.api#documentation": "

The configuration options to send to the log driver.

\n

The options you can specify depend on the log driver. Some of the options you can\n\t\t\tspecify when you use the awslogs log driver to route logs to Amazon CloudWatch\n\t\t\tinclude the following:

\n
\n
awslogs-create-group
\n
\n

Required: No

\n

Specify whether you want the log group to be created automatically. If\n\t\t\t\t\t\tthis option isn't specified, it defaults to false.

\n \n

Your IAM policy must include the logs:CreateLogGroup\n\t\t\t\t\t\t\tpermission before you attempt to use\n\t\t\t\t\t\t\tawslogs-create-group.

\n
\n
\n
awslogs-region
\n
\n

Required: Yes

\n

Specify the Amazon Web Services Region that the awslogs log driver is to\n\t\t\t\t\t\tsend your Docker logs to. You can choose to send all of your logs from\n\t\t\t\t\t\tclusters in different Regions to a single region in CloudWatch Logs. This is so that\n\t\t\t\t\t\tthey're all visible in one location. Otherwise, you can separate them by\n\t\t\t\t\t\tRegion for more granularity. Make sure that the specified log group exists\n\t\t\t\t\t\tin the Region that you specify with this option.

\n
\n
awslogs-group
\n
\n

Required: Yes

\n

Make sure to specify a log group that the awslogs log driver\n\t\t\t\t\t\tsends its log streams to.

\n
\n
awslogs-stream-prefix
\n
\n

Required: Yes, when using Fargate.Optional when using EC2.

\n

Use the awslogs-stream-prefix option to associate a log\n\t\t\t\t\t\tstream with the specified prefix, the container name, and the ID of the\n\t\t\t\t\t\tAmazon ECS task that the container belongs to. If you specify a prefix with this\n\t\t\t\t\t\toption, then the log stream takes the format\n\t\t\t\t\t\t\tprefix-name/container-name/ecs-task-id.

\n

If you don't specify a prefix with this option, then the log stream is\n\t\t\t\t\t\tnamed after the container ID that's assigned by the Docker daemon on the\n\t\t\t\t\t\tcontainer instance. Because it's difficult to trace logs back to the\n\t\t\t\t\t\tcontainer that sent them with just the Docker container ID (which is only\n\t\t\t\t\t\tavailable on the container instance), we recommend that you specify a prefix\n\t\t\t\t\t\twith this option.

\n

For Amazon ECS services, you can use the service name as the prefix. Doing so,\n\t\t\t\t\t\tyou can trace log streams to the service that the container belongs to, the\n\t\t\t\t\t\tname of the container that sent them, and the ID of the task that the\n\t\t\t\t\t\tcontainer belongs to.

\n

You must specify a stream-prefix for your logs to have your logs appear in\n\t\t\t\t\t\tthe Log pane when using the Amazon ECS console.

\n
\n
awslogs-datetime-format
\n
\n

Required: No

\n

This option defines a multiline start pattern in Python\n\t\t\t\t\t\t\tstrftime format. A log message consists of a line that\n\t\t\t\t\t\tmatches the pattern and any following lines that don’t match the pattern.\n\t\t\t\t\t\tThe matched line is the delimiter between log messages.

\n

One example of a use case for using this format is for parsing output such\n\t\t\t\t\t\tas a stack dump, which might otherwise be logged in multiple entries. The\n\t\t\t\t\t\tcorrect pattern allows it to be captured in a single entry.

\n

For more information, see awslogs-datetime-format.

\n

You cannot configure both the awslogs-datetime-format and\n\t\t\t\t\t\t\tawslogs-multiline-pattern options.

\n \n

Multiline logging performs regular expression parsing and matching of\n\t\t\t\t\t\t\tall log messages. This might have a negative impact on logging\n\t\t\t\t\t\t\tperformance.

\n
\n
\n
awslogs-multiline-pattern
\n
\n

Required: No

\n

This option defines a multiline start pattern that uses a regular\n\t\t\t\t\t\texpression. A log message consists of a line that matches the pattern and\n\t\t\t\t\t\tany following lines that don’t match the pattern. The matched line is the\n\t\t\t\t\t\tdelimiter between log messages.

\n

For more information, see awslogs-multiline-pattern.

\n

This option is ignored if awslogs-datetime-format is also\n\t\t\t\t\t\tconfigured.

\n

You cannot configure both the awslogs-datetime-format and\n\t\t\t\t\t\t\tawslogs-multiline-pattern options.

\n \n

Multiline logging performs regular expression parsing and matching of\n\t\t\t\t\t\t\tall log messages. This might have a negative impact on logging\n\t\t\t\t\t\t\tperformance.

\n
\n
\n
\n

The following options apply to all supported log drivers.

\n
\n
mode
\n
\n

Required: No

\n

Valid values: non-blocking | blocking\n

\n

This option defines the delivery mode of log messages from the container\n\t\t\t\t\t\tto the log driver specified using logDriver. The delivery mode\n\t\t\t\t\t\tyou choose affects application availability when the flow of logs from\n\t\t\t\t\t\tcontainer is interrupted.

\n

If you use the blocking mode and the flow of logs is\n\t\t\t\t\t\tinterrupted, calls from container code to write to the stdout\n\t\t\t\t\t\tand stderr streams will block. The logging thread of the\n\t\t\t\t\t\tapplication will block as a result. This may cause the application to become\n\t\t\t\t\t\tunresponsive and lead to container healthcheck failure.

\n

If you use the non-blocking mode, the container's logs are\n\t\t\t\t\t\tinstead stored in an in-memory intermediate buffer configured with the\n\t\t\t\t\t\t\tmax-buffer-size option. This prevents the application from\n\t\t\t\t\t\tbecoming unresponsive when logs cannot be sent. We recommend using this mode\n\t\t\t\t\t\tif you want to ensure service availability and are okay with some log loss.\n\t\t\t\t\t\tFor more information, see Preventing log loss with non-blocking mode in the awslogs\n\t\t\t\t\t\t\tcontainer log driver.

\n

You can set a default mode for all containers in a specific\n\t\t\t\t\t\tAmazon Web Services Region by using the defaultLogDriverMode account setting.\n\t\t\t\t\t\tIf you don't specify the mode option or\n\t\t\t\t\t\tconfigure the account setting, Amazon ECS will default to the\n\t\t\t\t\t\t\tnon-blocking mode. For more information about the account setting, see Default log driver mode in the Amazon Elastic Container Service Developer Guide.

\n \n

On June 25, 2025, Amazon ECS changed the default log driver mode from blocking to non-blocking to prioritize task availability over logging. To continue using the blocking mode after this change, do one of the following:

\n
    \n
  • \n

    Set the mode option in your container definition's logConfiguration as blocking.

    \n
  • \n
  • \n

    Set the defaultLogDriverMode account setting to blocking.

    \n
  • \n
\n
\n
\n
max-buffer-size
\n
\n

Required: No

\n

Default value: 10m\n

\n

When non-blocking mode is used, the\n\t\t\t\t\t\t\tmax-buffer-size log option controls the size of the buffer\n\t\t\t\t\t\tthat's used for intermediate message storage. Make sure to specify an\n\t\t\t\t\t\tadequate buffer size based on your application. When the buffer fills up,\n\t\t\t\t\t\tfurther logs cannot be stored. Logs that cannot be stored are lost.

\n
\n
\n

To route logs using the splunk log router, you need to specify a\n\t\t\t\tsplunk-token and a splunk-url.

\n

When you use the awsfirelens log router to route logs to an Amazon Web Services Service\n\t\t\tor Amazon Web Services Partner Network destination for log storage and analytics, you can set the\n\t\t\t\tlog-driver-buffer-limit option to limit the number of events that are\n\t\t\tbuffered in memory, before being sent to the log router container. It can help to\n\t\t\tresolve potential log loss issue because high throughput might result in memory running\n\t\t\tout for the buffer inside of Docker.

\n

Other options you can specify when using awsfirelens to route logs depend\n\t\t\ton the destination. When you export logs to Amazon Data Firehose, you can specify the Amazon Web Services Region\n\t\t\twith region and a name for the log stream with\n\t\t\tdelivery_stream.

\n

When you export logs to Amazon Kinesis Data Streams, you can specify an Amazon Web Services Region with\n\t\t\t\tregion and a data stream name with stream.

\n

When you export logs to Amazon OpenSearch Service, you can specify options like Name,\n\t\t\t\tHost (OpenSearch Service endpoint without protocol), Port,\n\t\t\t\tIndex, Type, Aws_auth,\n\t\t\t\tAws_region, Suppress_Type_Name, and tls. For\n\t\t\tmore information, see Under the hood:\n\t\t\t\tFireLens for Amazon ECS Tasks.

\n

When you export logs to Amazon S3, you can specify the bucket using the bucket\n\t\t\toption. You can also specify region, total_file_size,\n\t\t\t\tupload_timeout, and use_put_object as options.

\n

This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version --format '{{.Server.APIVersion}}'\n

" } }, "secretOptions": { @@ -7768,7 +9585,7 @@ } }, "traits": { - "smithy.api#documentation": "

The log configuration for the container. This parameter maps to LogConfig\n\t\t\tin the Create a container section of the Docker Remote API and the\n\t\t\t\t--log-driver option to \n docker\n\t\t\t\t\trun\n .

\n

By default, containers use the same logging driver that the Docker daemon uses.\n\t\t\tHowever, the container might use a different logging driver than the Docker daemon by\n\t\t\tspecifying a log driver configuration in the container definition. For more information\n\t\t\tabout the options for different supported log drivers, see Configure logging\n\t\t\t\tdrivers in the Docker documentation.

\n

Understand the following when specifying a log configuration for your\n\t\t\tcontainers.

\n
    \n
  • \n

    Amazon ECS currently supports a subset of the logging drivers available to the\n\t\t\t\t\tDocker daemon. Additional log drivers may be available in future releases of the\n\t\t\t\t\tAmazon ECS container agent.

    \n

    For tasks on Fargate, the supported log drivers are awslogs,\n\t\t\t\t\t\tsplunk, and awsfirelens.

    \n

    For tasks hosted on Amazon EC2 instances, the supported log drivers are\n\t\t\t\t\t\tawslogs, fluentd, gelf,\n\t\t\t\t\t\tjson-file, journald,\n\t\t\t\t\t\tlogentries,syslog, splunk, and\n\t\t\t\t\t\tawsfirelens.

    \n
  • \n
  • \n

    This parameter requires version 1.18 of the Docker Remote API or greater on\n\t\t\t\t\tyour container instance.

    \n
  • \n
  • \n

    For tasks that are hosted on Amazon EC2 instances, the Amazon ECS container agent must\n\t\t\t\t\tregister the available logging drivers with the\n\t\t\t\t\t\tECS_AVAILABLE_LOGGING_DRIVERS environment variable before\n\t\t\t\t\tcontainers placed on that instance can use these log configuration options. For\n\t\t\t\t\tmore information, see Amazon ECS container agent configuration in the\n\t\t\t\t\tAmazon Elastic Container Service Developer Guide.

    \n
  • \n
  • \n

    For tasks that are on Fargate, because you don't have access to the\n\t\t\t\t\tunderlying infrastructure your tasks are hosted on, any additional software\n\t\t\t\t\tneeded must be installed outside of the task. For example, the Fluentd output\n\t\t\t\t\taggregators or a remote host running Logstash to send Gelf logs to.

    \n
  • \n
" + "smithy.api#documentation": "

The log configuration for the container. This parameter maps to LogConfig\n\t\t\tin the docker container create command and the --log-driver option to\n\t\t\tdocker run.

\n

By default, containers use the same logging driver that the Docker daemon uses.\n\t\t\tHowever, the container might use a different logging driver than the Docker daemon by\n\t\t\tspecifying a log driver configuration in the container definition.

\n

Understand the following when specifying a log configuration for your\n\t\t\tcontainers.

\n
    \n
  • \n

    Amazon ECS currently supports a subset of the logging drivers available to the\n\t\t\t\t\tDocker daemon. Additional log drivers may be available in future releases of the\n\t\t\t\t\tAmazon ECS container agent.

    \n

    For tasks on Fargate, the supported log drivers are awslogs,\n\t\t\t\t\t\tsplunk, and awsfirelens.

    \n

    For tasks hosted on Amazon EC2 instances, the supported log drivers are\n\t\t\t\t\t\tawslogs, fluentd, gelf,\n\t\t\t\t\t\tjson-file, journald,syslog,\n\t\t\t\t\t\tsplunk, and awsfirelens.

    \n
  • \n
  • \n

    This parameter requires version 1.18 of the Docker Remote API or greater on\n\t\t\t\t\tyour container instance.

    \n
  • \n
  • \n

    For tasks that are hosted on Amazon EC2 instances, the Amazon ECS container agent must\n\t\t\t\t\tregister the available logging drivers with the\n\t\t\t\t\t\tECS_AVAILABLE_LOGGING_DRIVERS environment variable before\n\t\t\t\t\tcontainers placed on that instance can use these log configuration options. For\n\t\t\t\t\tmore information, see Amazon ECS container agent configuration in the\n\t\t\t\t\tAmazon Elastic Container Service Developer Guide.

    \n
  • \n
  • \n

    For tasks that are on Fargate, because you don't have access to the\n\t\t\t\t\tunderlying infrastructure your tasks are hosted on, any additional software\n\t\t\t\t\tneeded must be installed outside of the task. For example, the Fluentd output\n\t\t\t\t\taggregators or a remote host running Logstash to send Gelf logs to.

    \n
  • \n
" } }, "com.amazonaws.ecs#LogConfigurationOptionsMap": { @@ -7946,6 +9763,83 @@ } } }, + "com.amazonaws.ecs#ManagedInstancesMonitoringOptions": { + "type": "enum", + "members": { + "BASIC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BASIC" + } + }, + "DETAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DETAILED" + } + } + } + }, + "com.amazonaws.ecs#ManagedInstancesNetworkConfiguration": { + "type": "structure", + "members": { + "subnets": { + "target": "com.amazonaws.ecs#StringList", + "traits": { + "smithy.api#documentation": "

The list of subnet IDs where Amazon ECS can launch Amazon ECS Managed Instances. Instances are distributed across the specified subnets for high availability. All subnets must be in the same VPC.

" + } + }, + "securityGroups": { + "target": "com.amazonaws.ecs#StringList", + "traits": { + "smithy.api#documentation": "

The list of security group IDs to apply to Amazon ECS Managed Instances. These security groups control the network traffic allowed to and from the instances.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The network configuration for Amazon ECS Managed Instances. This specifies the VPC subnets and security groups that instances use for network connectivity. Amazon ECS Managed Instances support multiple network modes including awsvpc (instances receive ENIs for task isolation), host (instances share network namespace with tasks), and none (no external network connectivity), ensuring backward compatibility for migrating workloads from Fargate or Amazon EC2.

" + } + }, + "com.amazonaws.ecs#ManagedInstancesProvider": { + "type": "structure", + "members": { + "infrastructureRoleArn": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the infrastructure role that Amazon ECS assumes to manage instances. This role must include permissions for Amazon EC2 instance lifecycle management, networking, and any additional Amazon Web Services services required for your workloads.

\n

For more information, see Amazon ECS infrastructure IAM role in the Amazon ECS Developer Guide.

" + } + }, + "instanceLaunchTemplate": { + "target": "com.amazonaws.ecs#InstanceLaunchTemplate", + "traits": { + "smithy.api#documentation": "

The launch template that defines how Amazon ECS launches Amazon ECS Managed Instances. This includes the instance profile for your tasks, network and storage configuration, and instance requirements that determine which Amazon EC2 instance types can be used.

\n

For more information, see Store instance launch parameters in Amazon EC2 launch templates in the Amazon EC2 User Guide.

" + } + }, + "propagateTags": { + "target": "com.amazonaws.ecs#PropagateMITags", + "traits": { + "smithy.api#documentation": "

Determines whether tags from the capacity provider are automatically applied to Amazon ECS Managed Instances. This helps with cost allocation and resource management by ensuring consistent tagging across your infrastructure.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration for a Amazon ECS Managed Instances provider. Amazon ECS uses this configuration to automatically launch, manage, and terminate Amazon EC2 instances on your behalf. Managed instances provide access to the full range of Amazon EC2 instance types and features while offloading infrastructure management to Amazon Web Services.

" + } + }, + "com.amazonaws.ecs#ManagedInstancesStorageConfiguration": { + "type": "structure", + "members": { + "storageSizeGiB": { + "target": "com.amazonaws.ecs#TaskVolumeStorageGiB", + "traits": { + "smithy.api#documentation": "

The size of the tasks volume.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The storage configuration for Amazon ECS Managed Instances. This defines the root volume configuration for the instances.

" + } + }, "com.amazonaws.ecs#ManagedScaling": { "type": "structure", "members": { @@ -7964,13 +9858,13 @@ "minimumScalingStepSize": { "target": "com.amazonaws.ecs#ManagedScalingStepSize", "traits": { - "smithy.api#documentation": "

The minimum number of Amazon EC2 instances that Amazon ECS will scale out at one time. The scale\n\t\t\tin process is not affected by this parameter If this parameter is omitted, the default\n\t\t\tvalue of 1 is used.

\n

When additional capacity is required, Amazon ECS will scale up the minimum scaling step\n\t\t\tsize even if the actual demand is less than the minimum scaling step size.

\n

If you use a capacity provider with an Auto Scaling group configured with more than\n\t\t\tone Amazon EC2 instance type or Availability Zone, Amazon ECS will scale up by the exact minimum\n\t\t\tscaling step size value and will ignore both the maximum scaling step size as well as\n\t\t\tthe capacity demand.

" + "smithy.api#documentation": "

The minimum number of Amazon EC2 instances that Amazon ECS will scale out at one time. The scale\n\t\t\tin process is not affected by this parameter If this parameter is omitted, the default\n\t\t\tvalue of 1 is used.

\n

When additional capacity is required, Amazon ECS will scale up the minimum scaling step\n\t\t\tsize even if the actual demand is less than the minimum scaling step size.

" } }, "maximumScalingStepSize": { "target": "com.amazonaws.ecs#ManagedScalingStepSize", "traits": { - "smithy.api#documentation": "

The maximum number of Amazon EC2 instances that Amazon ECS will scale out at one time. The scale\n\t\t\tin process is not affected by this parameter. If this parameter is omitted, the default\n\t\t\tvalue of 10000 is used.

" + "smithy.api#documentation": "

The maximum number of Amazon EC2 instances that Amazon ECS will scale out at one time. If this\n\t\t\tparameter is omitted, the default value of 10000 is used.

" } }, "instanceWarmupPeriod": { @@ -8034,13 +9928,13 @@ "kmsKeyId": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

Specify a Key Management Service key ID to encrypt the managed storage.

" + "smithy.api#documentation": "

Specify a Key Management Service key ID to encrypt Amazon ECS managed storage.

\n

When you specify a kmsKeyId, Amazon ECS uses the key to encrypt data volumes\n\t\t\tmanaged by Amazon ECS that are attached to tasks in the cluster. The following data volumes\n\t\t\tare managed by Amazon ECS: Amazon EBS. For more information about encryption of Amazon EBS volumes\n\t\t\tattached to Amazon ECS tasks, see Encrypt data stored in Amazon EBS volumes for Amazon ECS in the\n\t\t\tAmazon Elastic Container Service Developer Guide.

\n

The key must be a single Region key.

" } }, "fargateEphemeralStorageKmsKeyId": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

Specify the Key Management Service key ID for the Fargate ephemeral storage.

" + "smithy.api#documentation": "

Specify the Key Management Service key ID for Fargate ephemeral storage.

\n

When you specify a fargateEphemeralStorageKmsKeyId, Amazon Web Services Fargate uses\n\t\t\tthe key to encrypt data at rest in ephemeral storage. For more information about\n\t\t\tFargate ephemeral storage encryption, see Customer managed keys for Amazon Web Services Fargate ephemeral storage for\n\t\t\t\tAmazon ECS in the Amazon Elastic Container Service Developer Guide.

\n

The key must be a single Region key.

" } } }, @@ -8065,26 +9959,67 @@ } } }, - "com.amazonaws.ecs#MissingVersionException": { + "com.amazonaws.ecs#MemoryGiBPerVCpuRequest": { "type": "structure", "members": { - "message": { - "target": "com.amazonaws.ecs#String", + "min": { + "target": "com.amazonaws.ecs#BoxedDouble", "traits": { - "smithy.api#documentation": "

Message that describes the cause of the exception.

" + "smithy.api#documentation": "

The minimum amount of memory per vCPU in GiB. Instance types with a lower memory-to-vCPU ratio are excluded from selection.

" + } + }, + "max": { + "target": "com.amazonaws.ecs#BoxedDouble", + "traits": { + "smithy.api#documentation": "

The maximum amount of memory per vCPU in GiB. Instance types with a higher memory-to-vCPU ratio are excluded from selection.

" } } }, "traits": { - "smithy.api#documentation": "

Amazon ECS can't determine the current version of the Amazon ECS container agent on the\n\t\t\tcontainer instance and doesn't have enough information to proceed with an update. This\n\t\t\tcould be because the agent running on the container instance is a previous or custom\n\t\t\tversion that doesn't use our version information.

", - "smithy.api#error": "client" + "smithy.api#documentation": "

The minimum and maximum amount of memory per vCPU in gibibytes (GiB). This helps ensure that instance types have the appropriate memory-to-CPU ratio for your workloads.

" } }, - "com.amazonaws.ecs#MountPoint": { + "com.amazonaws.ecs#MemoryMiBRequest": { "type": "structure", "members": { - "sourceVolume": { - "target": "com.amazonaws.ecs#String", + "min": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The minimum amount of memory in MiB. Instance types with less memory than this value are excluded from selection.

", + "smithy.api#required": {} + } + }, + "max": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The maximum amount of memory in MiB. Instance types with more memory than this value are excluded from selection.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The minimum and maximum amount of memory in mebibytes (MiB) for instance type selection. This ensures that selected instance types have adequate memory for your workloads.

" + } + }, + "com.amazonaws.ecs#MissingVersionException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

Message that describes the cause of the exception.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Amazon ECS can't determine the current version of the Amazon ECS container agent on the\n\t\t\tcontainer instance and doesn't have enough information to proceed with an update. This\n\t\t\tcould be because the agent running on the container instance is a previous or custom\n\t\t\tversion that doesn't use our version information.

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.ecs#MountPoint": { + "type": "structure", + "members": { + "sourceVolume": { + "target": "com.amazonaws.ecs#String", "traits": { "smithy.api#documentation": "

The name of the volume to mount. Must be a volume name referenced in the\n\t\t\t\tname parameter of task definition volume.

" } @@ -8127,6 +10062,26 @@ "smithy.api#error": "client" } }, + "com.amazonaws.ecs#NetworkBandwidthGbpsRequest": { + "type": "structure", + "members": { + "min": { + "target": "com.amazonaws.ecs#BoxedDouble", + "traits": { + "smithy.api#documentation": "

The minimum network bandwidth in Gbps. Instance types with lower network bandwidth are excluded from selection.

" + } + }, + "max": { + "target": "com.amazonaws.ecs#BoxedDouble", + "traits": { + "smithy.api#documentation": "

The maximum network bandwidth in Gbps. Instance types with higher network bandwidth are excluded from selection.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The minimum and maximum network bandwidth in gigabits per second (Gbps) for instance type selection. This is important for network-intensive workloads.

" + } + }, "com.amazonaws.ecs#NetworkBinding": { "type": "structure", "members": { @@ -8168,7 +10123,7 @@ } }, "traits": { - "smithy.api#documentation": "

Details on the network bindings between a container and its host container instance.\n\t\t\tAfter a task reaches the RUNNING status, manual and automatic host and\n\t\t\tcontainer port assignments are visible in the networkBindings section of\n\t\t\t\tDescribeTasks API responses.

" + "smithy.api#documentation": "

Details on the network bindings between a container and its host container instance.\n\t\t\tAfter a task reaches the RUNNING status, manual and automatic host and\n\t\t\tcontainer port assignments are visible in the networkBindings section of\n\t\t\t\tDescribeTasks API\n\t\t\tresponses.

" } }, "com.amazonaws.ecs#NetworkBindings": { @@ -8217,6 +10172,26 @@ "smithy.api#documentation": "

An object representing the elastic network interface for tasks that use the\n\t\t\t\tawsvpc network mode.

" } }, + "com.amazonaws.ecs#NetworkInterfaceCountRequest": { + "type": "structure", + "members": { + "min": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The minimum number of network interfaces. Instance types that support fewer network interfaces are excluded from selection.

" + } + }, + "max": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The maximum number of network interfaces. Instance types that support more network interfaces are excluded from selection.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The minimum and maximum number of network interfaces for instance type selection. This is useful for workloads that require multiple network interfaces.

" + } + }, "com.amazonaws.ecs#NetworkInterfaces": { "type": "list", "member": { @@ -8306,6 +10281,18 @@ "smithy.api#enumValue": "WINDOWS_SERVER_2022_FULL" } }, + "WINDOWS_SERVER_2025_CORE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WINDOWS_SERVER_2025_CORE" + } + }, + "WINDOWS_SERVER_2025_FULL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WINDOWS_SERVER_2025_FULL" + } + }, "WINDOWS_SERVER_20H2_CORE": { "target": "smithy.api#Unit", "traits": { @@ -8522,7 +10509,7 @@ "name": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The name that's used for the port mapping. This parameter only applies to\n\t\t\tService Connect. This parameter is the name that you use in the\n\t\t\t\tserviceConnectConfiguration of a service. The name can include up to 64\n\t\t\tcharacters. The characters can include lowercase letters, numbers, underscores (_), and\n\t\t\thyphens (-). The name can't start with a hyphen.

\n

For more information, see Service Connect in the Amazon Elastic Container Service Developer Guide.

" + "smithy.api#documentation": "

The name that's used for the port mapping. This parameter is the name that you use in\n\t\t\tthe serviceConnectConfiguration and the\n\t\t\t\tvpcLatticeConfigurations of a service. The name can include up to 64\n\t\t\tcharacters. The characters can include lowercase letters, numbers, underscores (_), and\n\t\t\thyphens (-). The name can't start with a hyphen.

" } }, "appProtocol": { @@ -8539,7 +10526,7 @@ } }, "traits": { - "smithy.api#documentation": "

Port mappings allow containers to access ports on the host container instance to send\n\t\t\tor receive traffic. Port mappings are specified as part of the container\n\t\t\tdefinition.

\n

If you use containers in a task with the awsvpc or host\n\t\t\tnetwork mode, specify the exposed ports using containerPort. The\n\t\t\t\thostPort can be left blank or it must be the same value as the\n\t\t\t\tcontainerPort.

\n

Most fields of this parameter (containerPort, hostPort,\n\t\t\t\tprotocol) maps to PortBindings in the\n\t\t\tCreate a container section of the Docker Remote API and the\n\t\t\t\t--publish option to \n docker\n\t\t\t\t\trun\n . If the network mode of a task definition is set to\n\t\t\t\thost, host ports must either be undefined or match the container port\n\t\t\tin the port mapping.

\n \n

You can't expose the same container port for multiple protocols. If you attempt\n\t\t\t\tthis, an error is returned.

\n
\n

After a task reaches the RUNNING status, manual and automatic host and\n\t\t\tcontainer port assignments are visible in the networkBindings section of\n\t\t\t\tDescribeTasks API responses.

" + "smithy.api#documentation": "

Port mappings allow containers to access ports on the host container instance to send\n\t\t\tor receive traffic. Port mappings are specified as part of the container\n\t\t\tdefinition.

\n

If you use containers in a task with the awsvpc or host\n\t\t\tnetwork mode, specify the exposed ports using containerPort. The\n\t\t\t\thostPort can be left blank or it must be the same value as the\n\t\t\t\tcontainerPort.

\n

Most fields of this parameter (containerPort, hostPort,\n\t\t\t\tprotocol) maps to PortBindings in the docker container\n\t\t\tcreate command and the --publish option to docker run. If the\n\t\t\tnetwork mode of a task definition is set to host, host ports must either be\n\t\t\tundefined or match the container port in the port mapping.

\n \n

You can't expose the same container port for multiple protocols. If you attempt\n\t\t\t\tthis, an error is returned.

\n
\n

After a task reaches the RUNNING status, manual and automatic host and\n\t\t\tcontainer port assignments are visible in the networkBindings section of\n\t\t\t\tDescribeTasks API\n\t\t\tresponses.

" } }, "com.amazonaws.ecs#PortMappingList": { @@ -8557,6 +10544,23 @@ } } }, + "com.amazonaws.ecs#PropagateMITags": { + "type": "enum", + "members": { + "CAPACITY_PROVIDER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CAPACITY_PROVIDER" + } + }, + "NONE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NONE" + } + } + } + }, "com.amazonaws.ecs#PropagateTags": { "type": "enum", "members": { @@ -8604,7 +10608,7 @@ } }, "traits": { - "smithy.api#documentation": "

An object representing the protection status details for a task. You can set the\n\t\t\tprotection status with the UpdateTaskProtection API and get the status\n\t\t\tof tasks with the GetTaskProtection API.

" + "smithy.api#documentation": "

An object representing the protection status details for a task. You can set the\n\t\t\tprotection status with the UpdateTaskProtection API and get the status of tasks with the GetTaskProtection API.

" } }, "com.amazonaws.ecs#ProtectedTasks": { @@ -8680,31 +10684,31 @@ "smithy.api#documentation": "

Modifies an account setting. Account settings are set on a per-Region basis.

\n

If you change the root user account setting, the default settings are reset for users and\n\t\t\troles that do not have specified individual account settings. For more information, see\n\t\t\t\tAccount\n\t\t\t\tSettings in the Amazon Elastic Container Service Developer Guide.

", "smithy.api#examples": [ { - "title": "To modify your account settings", - "documentation": "This example modifies your account settings to opt in to the new ARN and resource ID format for Amazon ECS services. If you’re using this command as the root user, then changes apply to the entire AWS account, unless an IAM user or role explicitly overrides these settings for themselves.", + "title": "To modify the account settings for a specific IAM user or IAM role", + "documentation": "This example modifies the account setting for a specific IAM user or IAM role to opt in to the new ARN and resource ID format for Amazon ECS container instances. If you’re using this command as the root user, then changes apply to the entire AWS account, unless an IAM user or role explicitly overrides these settings for themselves.", "input": { - "name": "serviceLongArnFormat", - "value": "enabled" + "name": "containerInstanceLongArnFormat", + "value": "enabled", + "principalArn": "arn:aws:iam:::user/principalName" }, "output": { "setting": { - "name": "serviceLongArnFormat", + "name": "containerInstanceLongArnFormat", "value": "enabled", "principalArn": "arn:aws:iam:::user/principalName" } } }, { - "title": "To modify the account settings for a specific IAM user or IAM role", - "documentation": "This example modifies the account setting for a specific IAM user or IAM role to opt in to the new ARN and resource ID format for Amazon ECS container instances. If you’re using this command as the root user, then changes apply to the entire AWS account, unless an IAM user or role explicitly overrides these settings for themselves.", + "title": "To modify your account settings", + "documentation": "This example modifies your account settings to opt in to the new ARN and resource ID format for Amazon ECS services. If you’re using this command as the root user, then changes apply to the entire AWS account, unless an IAM user or role explicitly overrides these settings for themselves.", "input": { - "name": "containerInstanceLongArnFormat", - "value": "enabled", - "principalArn": "arn:aws:iam:::user/principalName" + "name": "serviceLongArnFormat", + "value": "enabled" }, "output": { "setting": { - "name": "containerInstanceLongArnFormat", + "name": "serviceLongArnFormat", "value": "enabled", "principalArn": "arn:aws:iam:::user/principalName" } @@ -8759,14 +10763,14 @@ "name": { "target": "com.amazonaws.ecs#SettingName", "traits": { - "smithy.api#documentation": "

The resource name for which to modify the account setting.

\n

The following are the valid values for the account setting name.

\n
    \n
  • \n

    \n serviceLongArnFormat - When modified, the Amazon Resource Name\n\t\t\t\t\t(ARN) and resource ID format of the resource type for a specified user, role, or\n\t\t\t\t\tthe root user for an account is affected. The opt-in and opt-out account setting\n\t\t\t\t\tmust be set for each Amazon ECS resource separately. The ARN and resource ID format\n\t\t\t\t\tof a resource is defined by the opt-in status of the user or role that created\n\t\t\t\t\tthe resource. You must turn on this setting to use Amazon ECS features such as\n\t\t\t\t\tresource tagging.

    \n
  • \n
  • \n

    \n taskLongArnFormat - When modified, the Amazon Resource Name (ARN)\n\t\t\t\t\tand resource ID format of the resource type for a specified user, role, or the\n\t\t\t\t\troot user for an account is affected. The opt-in and opt-out account setting must\n\t\t\t\t\tbe set for each Amazon ECS resource separately. The ARN and resource ID format of a\n\t\t\t\t\tresource is defined by the opt-in status of the user or role that created the\n\t\t\t\t\tresource. You must turn on this setting to use Amazon ECS features such as resource\n\t\t\t\t\ttagging.

    \n
  • \n
  • \n

    \n containerInstanceLongArnFormat - When modified, the Amazon\n\t\t\t\t\tResource Name (ARN) and resource ID format of the resource type for a specified\n\t\t\t\t\tuser, role, or the root user for an account is affected. The opt-in and opt-out\n\t\t\t\t\taccount setting must be set for each Amazon ECS resource separately. The ARN and\n\t\t\t\t\tresource ID format of a resource is defined by the opt-in status of the user or\n\t\t\t\t\trole that created the resource. You must turn on this setting to use Amazon ECS\n\t\t\t\t\tfeatures such as resource tagging.

    \n
  • \n
  • \n

    \n awsvpcTrunking - When modified, the elastic network interface\n\t\t\t\t\t(ENI) limit for any new container instances that support the feature is changed.\n\t\t\t\t\tIf awsvpcTrunking is turned on, any new container instances that\n\t\t\t\t\tsupport the feature are launched have the increased ENI limits available to\n\t\t\t\t\tthem. For more information, see Elastic\n\t\t\t\t\t\tNetwork Interface Trunking in the Amazon Elastic Container Service Developer Guide.

    \n
  • \n
  • \n

    \n containerInsights - When modified, the default setting indicating\n\t\t\t\t\twhether Amazon Web Services CloudWatch Container Insights is turned on for your clusters is changed.\n\t\t\t\t\tIf containerInsights is turned on, any new clusters that are\n\t\t\t\t\tcreated will have Container Insights turned on unless you disable it during\n\t\t\t\t\tcluster creation. For more information, see CloudWatch Container Insights in the Amazon Elastic Container Service Developer Guide.

    \n
  • \n
  • \n

    \n dualStackIPv6 - When turned on, when using a VPC in dual stack\n\t\t\t\t\tmode, your tasks using the awsvpc network mode can have an IPv6\n\t\t\t\t\taddress assigned. For more information on using IPv6 with tasks launched on\n\t\t\t\t\tAmazon EC2 instances, see Using a VPC in dual-stack mode. For more information on using IPv6\n\t\t\t\t\twith tasks launched on Fargate, see Using a VPC in dual-stack mode.

    \n
  • \n
  • \n

    \n fargateFIPSMode - If you specify fargateFIPSMode,\n\t\t\t\t\tFargate FIPS 140 compliance is affected.

    \n
  • \n
  • \n

    \n fargateTaskRetirementWaitPeriod - When Amazon Web Services determines that a\n\t\t\t\t\tsecurity or infrastructure update is needed for an Amazon ECS task hosted on\n\t\t\t\t\tFargate, the tasks need to be stopped and new tasks launched to replace them.\n\t\t\t\t\tUse fargateTaskRetirementWaitPeriod to configure the wait time to\n\t\t\t\t\tretire a Fargate task. For information about the Fargate tasks maintenance,\n\t\t\t\t\tsee Amazon Web Services Fargate\n\t\t\t\t\t\ttask maintenance in the Amazon ECS Developer\n\t\t\t\t\tGuide.

    \n
  • \n
  • \n

    \n tagResourceAuthorization - Amazon ECS is introducing tagging\n\t\t\t\t\tauthorization for resource creation. Users must have permissions for actions\n\t\t\t\t\tthat create the resource, such as ecsCreateCluster. If tags are\n\t\t\t\t\tspecified when you create a resource, Amazon Web Services performs additional authorization to\n\t\t\t\t\tverify if users or roles have permissions to create tags. Therefore, you must\n\t\t\t\t\tgrant explicit permissions to use the ecs:TagResource action. For\n\t\t\t\t\tmore information, see Grant permission to tag resources on creation in the\n\t\t\t\t\t\tAmazon ECS Developer Guide.

    \n
  • \n
  • \n

    \n guardDutyActivate - The guardDutyActivate parameter is read-only in Amazon ECS and indicates whether\n\t\t\tAmazon ECS Runtime Monitoring is enabled or disabled by your security administrator in your\n\t\t\tAmazon ECS account. Amazon GuardDuty controls this account setting on your behalf. For more information, see Protecting Amazon ECS workloads with Amazon ECS Runtime Monitoring.

    \n
  • \n
", + "smithy.api#documentation": "

The resource name for which to modify the account setting.

\n

The following are the valid values for the account setting name.

\n
    \n
  • \n

    \n serviceLongArnFormat - When modified, the Amazon Resource Name\n\t\t\t\t\t(ARN) and resource ID format of the resource type for a specified user, role, or\n\t\t\t\t\tthe root user for an account is affected. The opt-in and opt-out account setting\n\t\t\t\t\tmust be set for each Amazon ECS resource separately. The ARN and resource ID format\n\t\t\t\t\tof a resource is defined by the opt-in status of the user or role that created\n\t\t\t\t\tthe resource. You must turn on this setting to use Amazon ECS features such as\n\t\t\t\t\tresource tagging.

    \n
  • \n
  • \n

    \n taskLongArnFormat - When modified, the Amazon Resource Name (ARN)\n\t\t\t\t\tand resource ID format of the resource type for a specified user, role, or the\n\t\t\t\t\troot user for an account is affected. The opt-in and opt-out account setting must\n\t\t\t\t\tbe set for each Amazon ECS resource separately. The ARN and resource ID format of a\n\t\t\t\t\tresource is defined by the opt-in status of the user or role that created the\n\t\t\t\t\tresource. You must turn on this setting to use Amazon ECS features such as resource\n\t\t\t\t\ttagging.

    \n
  • \n
  • \n

    \n containerInstanceLongArnFormat - When modified, the Amazon\n\t\t\t\t\tResource Name (ARN) and resource ID format of the resource type for a specified\n\t\t\t\t\tuser, role, or the root user for an account is affected. The opt-in and opt-out\n\t\t\t\t\taccount setting must be set for each Amazon ECS resource separately. The ARN and\n\t\t\t\t\tresource ID format of a resource is defined by the opt-in status of the user or\n\t\t\t\t\trole that created the resource. You must turn on this setting to use Amazon ECS\n\t\t\t\t\tfeatures such as resource tagging.

    \n
  • \n
  • \n

    \n awsvpcTrunking - When modified, the elastic network interface\n\t\t\t\t\t(ENI) limit for any new container instances that support the feature is changed.\n\t\t\t\t\tIf awsvpcTrunking is turned on, any new container instances that\n\t\t\t\t\tsupport the feature are launched have the increased ENI limits available to\n\t\t\t\t\tthem. For more information, see Elastic\n\t\t\t\t\t\tNetwork Interface Trunking in the Amazon Elastic Container Service Developer Guide.

    \n
  • \n
  • \n

    \n containerInsights - Container Insights with enhanced\n\t\t\t\t\tobservability provides all the Container Insights metrics, plus additional task\n\t\t\t\t\tand container metrics. This version supports enhanced observability for Amazon ECS\n\t\t\t\t\tclusters using the Amazon EC2 and Fargate launch types. After you configure\n\t\t\t\t\tContainer Insights with enhanced observability on Amazon ECS, Container Insights\n\t\t\t\t\tauto-collects detailed infrastructure telemetry from the cluster level down to\n\t\t\t\t\tthe container level in your environment and displays these critical performance\n\t\t\t\t\tdata in curated dashboards removing the heavy lifting in observability set-up.

    \n

    To use Container Insights with enhanced observability, set the\n\t\t\t\t\t\tcontainerInsights account setting to\n\t\t\t\t\tenhanced.

    \n

    To use Container Insights, set the containerInsights account\n\t\t\t\t\tsetting to enabled.

    \n

    For more information, see Monitor Amazon ECS containers using Container Insights with enhanced\n\t\t\t\t\t\tobservability in the Amazon Elastic Container Service Developer Guide.

    \n
  • \n
  • \n

    \n dualStackIPv6 - When turned on, when using a VPC in dual stack\n\t\t\t\t\tmode, your tasks using the awsvpc network mode can have an IPv6\n\t\t\t\t\taddress assigned. For more information on using IPv6 with tasks launched on\n\t\t\t\t\tAmazon EC2 instances, see Using a VPC in dual-stack mode. For more information on using IPv6\n\t\t\t\t\twith tasks launched on Fargate, see Using a VPC in dual-stack mode.

    \n
  • \n
  • \n

    \n fargateFIPSMode - If you specify fargateFIPSMode,\n\t\t\t\t\tFargate FIPS 140 compliance is affected.

    \n
  • \n
  • \n

    \n fargateTaskRetirementWaitPeriod - When Amazon Web Services determines that a\n\t\t\t\t\tsecurity or infrastructure update is needed for an Amazon ECS task hosted on\n\t\t\t\t\tFargate, the tasks need to be stopped and new tasks launched to replace them.\n\t\t\t\t\tUse fargateTaskRetirementWaitPeriod to configure the wait time to\n\t\t\t\t\tretire a Fargate task. For information about the Fargate tasks maintenance,\n\t\t\t\t\tsee Amazon Web Services Fargate\n\t\t\t\t\t\ttask maintenance in the Amazon ECS Developer\n\t\t\t\t\tGuide.

    \n
  • \n
  • \n

    \n tagResourceAuthorization - Amazon ECS is introducing tagging\n\t\t\t\t\tauthorization for resource creation. Users must have permissions for actions\n\t\t\t\t\tthat create the resource, such as ecsCreateCluster. If tags are\n\t\t\t\t\tspecified when you create a resource, Amazon Web Services performs additional authorization to\n\t\t\t\t\tverify if users or roles have permissions to create tags. Therefore, you must\n\t\t\t\t\tgrant explicit permissions to use the ecs:TagResource action. For\n\t\t\t\t\tmore information, see Grant permission to tag resources on creation in the\n\t\t\t\t\t\tAmazon ECS Developer Guide.

    \n
  • \n
  • \n

    \n defaultLogDriverMode -Amazon ECS supports setting a default delivery\n\t\t\t\t\tmode of log messages from a container to the logDriver that you specify in the container's logConfiguration. The delivery mode affects\n\t\t\t\t\tapplication stability when the flow of logs from the container to the log driver is\n\t\t\t\t\tinterrupted. The defaultLogDriverMode setting supports two values:\n\t\t\t\t\t\tblocking and non-blocking. If you don't specify a\n\t\t\t\t\tdelivery mode in your container definition's logConfiguration, the\n\t\t\t\t\tmode you specify using this account setting will be used as the default. For\n\t\t\t\t\tmore information about log delivery modes, see LogConfiguration.

    \n \n

    On June 25, 2025, Amazon ECS changed the default log driver mode from blocking to non-blocking to prioritize task availability over logging. To continue using the blocking mode after this change, do one of the following:

    \n
      \n
    • \n

      Set the mode option in your container definition's logConfiguration as blocking.

      \n
    • \n
    • \n

      Set the defaultLogDriverMode account setting to blocking.

      \n
    • \n
    \n
    \n
  • \n
  • \n

    \n guardDutyActivate - The guardDutyActivate parameter is read-only in Amazon ECS and indicates whether\n\t\t\tAmazon ECS Runtime Monitoring is enabled or disabled by your security administrator in your\n\t\t\tAmazon ECS account. Amazon GuardDuty controls this account setting on your behalf. For more information, see Protecting Amazon ECS workloads with Amazon ECS Runtime Monitoring.

    \n
  • \n
", "smithy.api#required": {} } }, "value": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The account setting value for the specified principal ARN. Accepted values are\n\t\t\t\tenabled, disabled, on, and\n\t\t\toff.

\n

When you specify fargateTaskRetirementWaitPeriod for the\n\t\t\t\tname, the following are the valid values:

\n
    \n
  • \n

    \n 0 - Amazon Web Services sends the notification, and immediately retires the\n\t\t\t\t\taffected tasks.

    \n
  • \n
  • \n

    \n 7 - Amazon Web Services sends the notification, and waits 7 calendar days to\n\t\t\t\t\tretire the tasks.

    \n
  • \n
  • \n

    \n 14 - Amazon Web Services sends the notification, and waits 14 calendar days to\n\t\t\t\t\tretire the tasks.

    \n
  • \n
", + "smithy.api#documentation": "

The account setting value for the specified principal ARN. Accepted values are\n\t\t\t\tenabled, disabled, on, enhanced,\n\t\t\tand off.

\n

When you specify fargateTaskRetirementWaitPeriod for the\n\t\t\t\tname, the following are the valid values:

\n
    \n
  • \n

    \n 0 - Amazon Web Services sends the notification, and immediately retires the\n\t\t\t\t\taffected tasks.

    \n
  • \n
  • \n

    \n 7 - Amazon Web Services sends the notification, and waits 7 calendar days to\n\t\t\t\t\tretire the tasks.

    \n
  • \n
  • \n

    \n 14 - Amazon Web Services sends the notification, and waits 14 calendar days to\n\t\t\t\t\tretire the tasks.

    \n
  • \n
", "smithy.api#required": {} } } @@ -8795,21 +10799,21 @@ "name": { "target": "com.amazonaws.ecs#SettingName", "traits": { - "smithy.api#documentation": "

The Amazon ECS account setting name to modify.

\n

The following are the valid values for the account setting name.

\n
    \n
  • \n

    \n serviceLongArnFormat - When modified, the Amazon Resource Name\n\t\t\t\t\t(ARN) and resource ID format of the resource type for a specified user, role, or\n\t\t\t\t\tthe root user for an account is affected. The opt-in and opt-out account setting\n\t\t\t\t\tmust be set for each Amazon ECS resource separately. The ARN and resource ID format\n\t\t\t\t\tof a resource is defined by the opt-in status of the user or role that created\n\t\t\t\t\tthe resource. You must turn on this setting to use Amazon ECS features such as\n\t\t\t\t\tresource tagging.

    \n
  • \n
  • \n

    \n taskLongArnFormat - When modified, the Amazon Resource Name (ARN)\n\t\t\t\t\tand resource ID format of the resource type for a specified user, role, or the\n\t\t\t\t\troot user for an account is affected. The opt-in and opt-out account setting must\n\t\t\t\t\tbe set for each Amazon ECS resource separately. The ARN and resource ID format of a\n\t\t\t\t\tresource is defined by the opt-in status of the user or role that created the\n\t\t\t\t\tresource. You must turn on this setting to use Amazon ECS features such as resource\n\t\t\t\t\ttagging.

    \n
  • \n
  • \n

    \n containerInstanceLongArnFormat - When modified, the Amazon\n\t\t\t\t\tResource Name (ARN) and resource ID format of the resource type for a specified\n\t\t\t\t\tuser, role, or the root user for an account is affected. The opt-in and opt-out\n\t\t\t\t\taccount setting must be set for each Amazon ECS resource separately. The ARN and\n\t\t\t\t\tresource ID format of a resource is defined by the opt-in status of the user or\n\t\t\t\t\trole that created the resource. You must turn on this setting to use Amazon ECS\n\t\t\t\t\tfeatures such as resource tagging.

    \n
  • \n
  • \n

    \n awsvpcTrunking - When modified, the elastic network interface\n\t\t\t\t\t(ENI) limit for any new container instances that support the feature is changed.\n\t\t\t\t\tIf awsvpcTrunking is turned on, any new container instances that\n\t\t\t\t\tsupport the feature are launched have the increased ENI limits available to\n\t\t\t\t\tthem. For more information, see Elastic\n\t\t\t\t\t\tNetwork Interface Trunking in the Amazon Elastic Container Service Developer Guide.

    \n
  • \n
  • \n

    \n containerInsights - When modified, the default setting indicating\n\t\t\t\t\twhether Amazon Web Services CloudWatch Container Insights is turned on for your clusters is changed.\n\t\t\t\t\tIf containerInsights is turned on, any new clusters that are\n\t\t\t\t\tcreated will have Container Insights turned on unless you disable it during\n\t\t\t\t\tcluster creation. For more information, see CloudWatch Container Insights in the Amazon Elastic Container Service Developer Guide.

    \n
  • \n
  • \n

    \n dualStackIPv6 - When turned on, when using a VPC in dual stack\n\t\t\t\t\tmode, your tasks using the awsvpc network mode can have an IPv6\n\t\t\t\t\taddress assigned. For more information on using IPv6 with tasks launched on\n\t\t\t\t\tAmazon EC2 instances, see Using a VPC in dual-stack mode. For more information on using IPv6\n\t\t\t\t\twith tasks launched on Fargate, see Using a VPC in dual-stack mode.

    \n
  • \n
  • \n

    \n fargateFIPSMode - If you specify fargateFIPSMode,\n\t\t\t\t\tFargate FIPS 140 compliance is affected.

    \n
  • \n
  • \n

    \n fargateTaskRetirementWaitPeriod - When Amazon Web Services determines that a\n\t\t\t\t\tsecurity or infrastructure update is needed for an Amazon ECS task hosted on\n\t\t\t\t\tFargate, the tasks need to be stopped and new tasks launched to replace them.\n\t\t\t\t\tUse fargateTaskRetirementWaitPeriod to configure the wait time to\n\t\t\t\t\tretire a Fargate task. For information about the Fargate tasks maintenance,\n\t\t\t\t\tsee Amazon Web Services Fargate\n\t\t\t\t\t\ttask maintenance in the Amazon ECS Developer\n\t\t\t\t\tGuide.

    \n
  • \n
  • \n

    \n tagResourceAuthorization - Amazon ECS is introducing tagging\n\t\t\t\t\tauthorization for resource creation. Users must have permissions for actions\n\t\t\t\t\tthat create the resource, such as ecsCreateCluster. If tags are\n\t\t\t\t\tspecified when you create a resource, Amazon Web Services performs additional authorization to\n\t\t\t\t\tverify if users or roles have permissions to create tags. Therefore, you must\n\t\t\t\t\tgrant explicit permissions to use the ecs:TagResource action. For\n\t\t\t\t\tmore information, see Grant permission to tag resources on creation in the\n\t\t\t\t\t\tAmazon ECS Developer Guide.

    \n
  • \n
  • \n

    \n guardDutyActivate - The guardDutyActivate parameter is read-only in Amazon ECS and indicates whether\n\t\t\tAmazon ECS Runtime Monitoring is enabled or disabled by your security administrator in your\n\t\t\tAmazon ECS account. Amazon GuardDuty controls this account setting on your behalf. For more information, see Protecting Amazon ECS workloads with Amazon ECS Runtime Monitoring.

    \n
  • \n
", + "smithy.api#documentation": "

The Amazon ECS account setting name to modify.

\n

The following are the valid values for the account setting name.

\n
    \n
  • \n

    \n serviceLongArnFormat - When modified, the Amazon Resource Name\n\t\t\t\t\t(ARN) and resource ID format of the resource type for a specified user, role, or\n\t\t\t\t\tthe root user for an account is affected. The opt-in and opt-out account setting\n\t\t\t\t\tmust be set for each Amazon ECS resource separately. The ARN and resource ID format\n\t\t\t\t\tof a resource is defined by the opt-in status of the user or role that created\n\t\t\t\t\tthe resource. You must turn on this setting to use Amazon ECS features such as\n\t\t\t\t\tresource tagging.

    \n
  • \n
  • \n

    \n taskLongArnFormat - When modified, the Amazon Resource Name (ARN)\n\t\t\t\t\tand resource ID format of the resource type for a specified user, role, or the\n\t\t\t\t\troot user for an account is affected. The opt-in and opt-out account setting must\n\t\t\t\t\tbe set for each Amazon ECS resource separately. The ARN and resource ID format of a\n\t\t\t\t\tresource is defined by the opt-in status of the user or role that created the\n\t\t\t\t\tresource. You must turn on this setting to use Amazon ECS features such as resource\n\t\t\t\t\ttagging.

    \n
  • \n
  • \n

    \n containerInstanceLongArnFormat - When modified, the Amazon\n\t\t\t\t\tResource Name (ARN) and resource ID format of the resource type for a specified\n\t\t\t\t\tuser, role, or the root user for an account is affected. The opt-in and opt-out\n\t\t\t\t\taccount setting must be set for each Amazon ECS resource separately. The ARN and\n\t\t\t\t\tresource ID format of a resource is defined by the opt-in status of the user or\n\t\t\t\t\trole that created the resource. You must turn on this setting to use Amazon ECS\n\t\t\t\t\tfeatures such as resource tagging.

    \n
  • \n
  • \n

    \n awsvpcTrunking - When modified, the elastic network interface\n\t\t\t\t\t(ENI) limit for any new container instances that support the feature is changed.\n\t\t\t\t\tIf awsvpcTrunking is turned on, any new container instances that\n\t\t\t\t\tsupport the feature are launched have the increased ENI limits available to\n\t\t\t\t\tthem. For more information, see Elastic\n\t\t\t\t\t\tNetwork Interface Trunking in the Amazon Elastic Container Service Developer Guide.

    \n
  • \n
  • \n

    \n containerInsights - Container Insights with enhanced\n\t\t\t\t\tobservability provides all the Container Insights metrics, plus additional task\n\t\t\t\t\tand container metrics. This version supports enhanced observability for Amazon ECS\n\t\t\t\t\tclusters using the Amazon EC2 and Fargate launch types. After you configure\n\t\t\t\t\tContainer Insights with enhanced observability on Amazon ECS, Container Insights\n\t\t\t\t\tauto-collects detailed infrastructure telemetry from the cluster level down to\n\t\t\t\t\tthe container level in your environment and displays these critical performance\n\t\t\t\t\tdata in curated dashboards removing the heavy lifting in observability set-up.

    \n

    To use Container Insights with enhanced observability, set the\n\t\t\t\t\t\tcontainerInsights account setting to\n\t\t\t\t\tenhanced.

    \n

    To use Container Insights, set the containerInsights account\n\t\t\t\t\tsetting to enabled.

    \n

    For more information, see Monitor Amazon ECS containers using Container Insights with enhanced\n\t\t\t\t\t\tobservability in the Amazon Elastic Container Service Developer Guide.

    \n
  • \n
  • \n

    \n dualStackIPv6 - When turned on, when using a VPC in dual stack\n\t\t\t\t\tmode, your tasks using the awsvpc network mode can have an IPv6\n\t\t\t\t\taddress assigned. For more information on using IPv6 with tasks launched on\n\t\t\t\t\tAmazon EC2 instances, see Using a VPC in dual-stack mode. For more information on using IPv6\n\t\t\t\t\twith tasks launched on Fargate, see Using a VPC in dual-stack mode.

    \n
  • \n
  • \n

    \n fargateTaskRetirementWaitPeriod - When Amazon Web Services determines that a\n\t\t\t\t\tsecurity or infrastructure update is needed for an Amazon ECS task hosted on\n\t\t\t\t\tFargate, the tasks need to be stopped and new tasks launched to replace them.\n\t\t\t\t\tUse fargateTaskRetirementWaitPeriod to configure the wait time to\n\t\t\t\t\tretire a Fargate task. For information about the Fargate tasks maintenance,\n\t\t\t\t\tsee Amazon Web Services Fargate\n\t\t\t\t\t\ttask maintenance in the Amazon ECS Developer\n\t\t\t\t\tGuide.

    \n
  • \n
  • \n

    \n tagResourceAuthorization - Amazon ECS is introducing tagging\n\t\t\t\t\tauthorization for resource creation. Users must have permissions for actions\n\t\t\t\t\tthat create the resource, such as ecsCreateCluster. If tags are\n\t\t\t\t\tspecified when you create a resource, Amazon Web Services performs additional authorization to\n\t\t\t\t\tverify if users or roles have permissions to create tags. Therefore, you must\n\t\t\t\t\tgrant explicit permissions to use the ecs:TagResource action. For\n\t\t\t\t\tmore information, see Grant permission to tag resources on creation in the\n\t\t\t\t\t\tAmazon ECS Developer Guide.

    \n
  • \n
  • \n

    \n defaultLogDriverMode - Amazon ECS supports setting a default delivery\n\t\t\t\t\tmode of log messages from a container to the logDriver that you specify in the container's logConfiguration. The delivery mode affects\n\t\t\t\t\tapplication stability when the flow of logs from the container to the log driver is\n\t\t\t\t\tinterrupted. The defaultLogDriverMode setting supports two values:\n\t\t\t\t\tblocking and non-blocking. If you don't specify a\n\t\t\t\t\tdelivery mode in your container definition's logConfiguration, the\n\t\t\t\t\tmode you specify using this account setting will be used as the default. For\n\t\t\t\t\tmore information about log delivery modes, see LogConfiguration.\n\t\t\t\t

    \n \n

    On June 25, 2025, Amazon ECS changed the default log driver mode from blocking to non-blocking to prioritize task availability over logging. To continue using the blocking mode after this change, do one of the following:

    \n
      \n
    • \n

      Set the mode option in your container definition's logConfiguration as blocking.

      \n
    • \n
    • \n

      Set the defaultLogDriverMode account setting to blocking.

      \n
    • \n
    \n
    \n
  • \n
  • \n

    \n guardDutyActivate - The guardDutyActivate parameter is read-only in Amazon ECS and indicates whether\n\t\t\tAmazon ECS Runtime Monitoring is enabled or disabled by your security administrator in your\n\t\t\tAmazon ECS account. Amazon GuardDuty controls this account setting on your behalf. For more information, see Protecting Amazon ECS workloads with Amazon ECS Runtime Monitoring.

    \n
  • \n
", "smithy.api#required": {} } }, "value": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The account setting value for the specified principal ARN. Accepted values are\n\t\t\t\tenabled, disabled, on, and\n\t\t\toff.

\n

When you specify fargateTaskRetirementWaitPeriod for the\n\t\t\t\tname, the following are the valid values:

\n
    \n
  • \n

    \n 0 - Amazon Web Services sends the notification, and immediately retires the\n\t\t\t\t\taffected tasks.

    \n
  • \n
  • \n

    \n 7 - Amazon Web Services sends the notification, and waits 7 calendar days to\n\t\t\t\t\tretire the tasks.

    \n
  • \n
  • \n

    \n 14 - Amazon Web Services sends the notification, and waits 14 calendar days to\n\t\t\t\t\tretire the tasks.

    \n
  • \n
", + "smithy.api#documentation": "

The account setting value for the specified principal ARN. Accepted values are\n\t\t\t\tenabled, disabled, enhanced, on,\n\t\t\tand off.

\n

When you specify fargateTaskRetirementWaitPeriod for the\n\t\t\t\tname, the following are the valid values:

\n
    \n
  • \n

    \n 0 - Amazon Web Services sends the notification, and immediately retires the\n\t\t\t\t\taffected tasks.

    \n
  • \n
  • \n

    \n 7 - Amazon Web Services sends the notification, and waits 7 calendar days to\n\t\t\t\t\tretire the tasks.

    \n
  • \n
  • \n

    \n 14 - Amazon Web Services sends the notification, and waits 14 calendar days to\n\t\t\t\t\tretire the tasks.

    \n
  • \n
", "smithy.api#required": {} } }, "principalArn": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The ARN of the principal, which can be a user, role, or the root user. If you specify\n\t\t\tthe root user, it modifies the account setting for all users, roles, and the root user of the\n\t\t\taccount unless a user or role explicitly overrides these settings. If this field is\n\t\t\tomitted, the setting is changed only for the authenticated user.

\n \n

You must use the root user when you set the Fargate wait time\n\t\t\t\t\t(fargateTaskRetirementWaitPeriod).

\n

Federated users assume the account setting of the root user and can't have explicit\n\t\t\t\taccount settings set for them.

\n
" + "smithy.api#documentation": "

The ARN of the principal, which can be a user, role, or the root user. If you specify\n\t\t\tthe root user, it modifies the account setting for all users, roles, and the root user of the\n\t\t\taccount unless a user or role explicitly overrides these settings. If this field is\n\t\t\tomitted, the setting is changed only for the authenticated user.

\n

In order to use this parameter, you must be the root user, or the principal.

\n \n

You must use the root user when you set the Fargate wait time\n\t\t\t\t\t(fargateTaskRetirementWaitPeriod).

\n

Federated users assume the account setting of the root user and can't have explicit\n\t\t\t\taccount settings set for them.

\n
" } } }, @@ -8854,7 +10858,32 @@ } ], "traits": { - "smithy.api#documentation": "

Create or update an attribute on an Amazon ECS resource. If the attribute doesn't exist,\n\t\t\tit's created. If the attribute exists, its value is replaced with the specified value.\n\t\t\tTo delete an attribute, use DeleteAttributes. For more information,\n\t\t\tsee Attributes in the Amazon Elastic Container Service Developer Guide.

" + "smithy.api#documentation": "

Create or update an attribute on an Amazon ECS resource. If the attribute doesn't exist,\n\t\t\tit's created. If the attribute exists, its value is replaced with the specified value.\n\t\t\tTo delete an attribute, use DeleteAttributes. For more information, see Attributes in the Amazon Elastic Container Service Developer Guide.

", + "smithy.api#examples": [ + { + "title": "To create or update an attribute on a resource", + "documentation": "This example adds an attribute \"stack\" with the value \"production\" to a container instance.", + "input": { + "cluster": "MyCluster", + "attributes": [ + { + "targetId": "arn:aws:ecs:us-west-2:123456789012:container-instance/1c3be8ed-df30-47b4-8f1e-6e68ebd01f34", + "name": "stack", + "value": "production" + } + ] + }, + "output": { + "attributes": [ + { + "name": "stack", + "targetId": "arn:aws:ecs:us-west-2:123456789012:container-instance/1c3be8ed-df30-47b4-8f1e-6e68ebd01f34", + "value": "production" + } + ] + } + } + ] } }, "com.amazonaws.ecs#PutAttributesRequest": { @@ -8921,7 +10950,240 @@ } ], "traits": { - "smithy.api#documentation": "

Modifies the available capacity providers and the default capacity provider strategy\n\t\t\tfor a cluster.

\n

You must specify both the available capacity providers and a default capacity provider\n\t\t\tstrategy for the cluster. If the specified cluster has existing capacity providers\n\t\t\tassociated with it, you must specify all existing capacity providers in addition to any\n\t\t\tnew ones you want to add. Any existing capacity providers that are associated with a\n\t\t\tcluster that are omitted from a PutClusterCapacityProviders API call\n\t\t\twill be disassociated with the cluster. You can only disassociate an existing capacity\n\t\t\tprovider from a cluster if it's not being used by any existing tasks.

\n

When creating a service or running a task on a cluster, if no capacity provider or\n\t\t\tlaunch type is specified, then the cluster's default capacity provider strategy is used.\n\t\t\tWe recommend that you define a default capacity provider strategy for your cluster.\n\t\t\tHowever, you must specify an empty array ([]) to bypass defining a default\n\t\t\tstrategy.

" + "smithy.api#documentation": "

Modifies the available capacity providers and the default capacity provider strategy\n\t\t\tfor a cluster.

\n

You must specify both the available capacity providers and a default capacity provider\n\t\t\tstrategy for the cluster. If the specified cluster has existing capacity providers\n\t\t\tassociated with it, you must specify all existing capacity providers in addition to any\n\t\t\tnew ones you want to add. Any existing capacity providers that are associated with a\n\t\t\tcluster that are omitted from a PutClusterCapacityProviders API call will be disassociated with the\n\t\t\tcluster. You can only disassociate an existing capacity provider from a cluster if it's\n\t\t\tnot being used by any existing tasks.

\n

When creating a service or running a task on a cluster, if no capacity provider or\n\t\t\tlaunch type is specified, then the cluster's default capacity provider strategy is used.\n\t\t\tWe recommend that you define a default capacity provider strategy for your cluster.\n\t\t\tHowever, you must specify an empty array ([]) to bypass defining a default\n\t\t\tstrategy.

\n

Amazon ECS Managed Instances doesn't support this, because when you create a capacity provider with Amazon ECS Managed Instances, it becomes available only within the specified cluster.

", + "smithy.api#examples": [ + { + "title": "To add an existing capacity provider to a cluuster", + "documentation": "This example adds an existing capacity provider \"MyCapacityProvider2\" to a cluster that already has the capacity provider \"MyCapacityProvider1\" associated with it. Both \"MyCapacityProvider2\" and \"MyCapacityProvider1\" need to be specified. ", + "input": { + "cluster": "MyCluster", + "capacityProviders": [ + "MyCapacityProvider1", + "MyCapacityProvider2" + ], + "defaultCapacityProviderStrategy": [ + { + "capacityProvider": "MyCapacityProvider1", + "weight": 1 + }, + { + "capacityProvider": "MyCapacityProvider2", + "weight": 1 + } + ] + }, + "output": { + "cluster": { + "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster", + "clusterName": "MyCluster", + "status": "ACTIVE", + "registeredContainerInstancesCount": 0, + "runningTasksCount": 0, + "pendingTasksCount": 0, + "activeServicesCount": 0, + "statistics": [], + "tags": [], + "settings": [ + { + "name": "containerInsights", + "value": "enabled" + } + ], + "capacityProviders": [ + "MyCapacityProvider1", + "MyCapacityProvider2" + ], + "defaultCapacityProviderStrategy": [ + { + "capacityProvider": "MyCapacityProvider1", + "weight": 1, + "base": 0 + }, + { + "capacityProvider": "MyCapacityProvider2", + "weight": 1, + "base": 0 + } + ], + "attachments": [ + { + "id": "0fb0c8f4-6edd-4de1-9b09-17e470ee1918", + "type": "as_policy", + "status": "ACTIVE", + "details": [ + { + "name": "capacityProviderName", + "value": "MyCapacityProvider1" + }, + { + "name": "scalingPolicyName", + "value": "ECSManagedAutoScalingPolicy-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" + } + ] + }, + { + "id": "ae592060-2382-4663-9476-b015c685593c", + "type": "as_policy", + "status": "ACTIVE", + "details": [ + { + "name": "capacityProviderName", + "value": "MyCapacityProvider2" + }, + { + "name": "scalingPolicyName", + "value": "ECSManagedAutoScalingPolicy-a1b2c3d4-5678-90ab-cdef-EXAMPLE22222" + } + ] + } + ], + "attachmentsStatus": "UPDATE_IN_PROGRESS" + } + } + }, + { + "title": "To remove a capacity provider from a cluster", + "documentation": "This example removes a capacity provider \"MyCapacityProvider2\" from a cluster that has both \"MyCapacityProvider2\" and \"MyCapacityProvider1\" associated with it. Only \"MyCapacityProvider1\" needs to be specified in this scenario. ", + "input": { + "cluster": "MyCluster", + "capacityProviders": [ + "MyCapacityProvider1" + ], + "defaultCapacityProviderStrategy": [ + { + "capacityProvider": "MyCapacityProvider1", + "weight": 1, + "base": 0 + } + ] + }, + "output": { + "cluster": { + "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster", + "clusterName": "MyCluster", + "status": "ACTIVE", + "registeredContainerInstancesCount": 0, + "runningTasksCount": 0, + "pendingTasksCount": 0, + "activeServicesCount": 0, + "statistics": [], + "tags": [], + "settings": [ + { + "name": "containerInsights", + "value": "enabled" + } + ], + "capacityProviders": [ + "MyCapacityProvider1" + ], + "defaultCapacityProviderStrategy": [ + { + "capacityProvider": "MyCapacityProvider1", + "weight": 1, + "base": 0 + } + ], + "attachments": [ + { + "id": "0fb0c8f4-6edd-4de1-9b09-17e470ee1918", + "type": "as_policy", + "status": "ACTIVE", + "details": [ + { + "name": "capacityProviderName", + "value": "MyCapacityProvider1" + }, + { + "name": "scalingPolicyName", + "value": "ECSManagedAutoScalingPolicy-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" + } + ] + }, + { + "id": "ae592060-2382-4663-9476-b015c685593c", + "type": "as_policy", + "status": "DELETING", + "details": [ + { + "name": "capacityProviderName", + "value": "MyCapacityProvider2" + }, + { + "name": "scalingPolicyName", + "value": "ECSManagedAutoScalingPolicy-a1b2c3d4-5678-90ab-cdef-EXAMPLE22222" + } + ] + } + ], + "attachmentsStatus": "UPDATE_IN_PROGRESS" + } + } + }, + { + "title": "To remove all capacity providers from a cluster", + "documentation": "This example removes all capacity providers associated with a cluster. ", + "input": { + "cluster": "MyCluster", + "capacityProviders": [], + "defaultCapacityProviderStrategy": [] + }, + "output": { + "cluster": { + "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster", + "clusterName": "MyCluster", + "status": "ACTIVE", + "registeredContainerInstancesCount": 0, + "runningTasksCount": 0, + "pendingTasksCount": 0, + "activeServicesCount": 0, + "statistics": [], + "tags": [], + "settings": [ + { + "name": "containerInsights", + "value": "enabled" + } + ], + "capacityProviders": [], + "defaultCapacityProviderStrategy": [], + "attachments": [ + { + "id": "0fb0c8f4-6edd-4de1-9b09-17e470ee1918", + "type": "as_policy", + "status": "DELETING", + "details": [ + { + "name": "capacityProviderName", + "value": "MyCapacityProvider1" + }, + { + "name": "scalingPolicyName", + "value": "ECSManagedAutoScalingPolicy-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" + } + ] + }, + { + "id": "ae592060-2382-4663-9476-b015c685593c", + "type": "as_policy", + "status": "DELETING", + "details": [ + { + "name": "capacityProviderName", + "value": "MyCapacityProvider2" + }, + { + "name": "scalingPolicyName", + "value": "ECSManagedAutoScalingPolicy-a1b2c3d4-5678-90ab-cdef-EXAMPLE22222" + } + ] + } + ], + "attachmentsStatus": "UPDATE_IN_PROGRESS" + } + } + } + ] } }, "com.amazonaws.ecs#PutClusterCapacityProvidersRequest": { @@ -8937,14 +11199,14 @@ "capacityProviders": { "target": "com.amazonaws.ecs#StringList", "traits": { - "smithy.api#documentation": "

The name of one or more capacity providers to associate with the cluster.

\n

If specifying a capacity provider that uses an Auto Scaling group, the capacity\n\t\t\tprovider must already be created. New capacity providers can be created with the CreateCapacityProvider API operation.

\n

To use a Fargate capacity provider, specify either the FARGATE or\n\t\t\t\tFARGATE_SPOT capacity providers. The Fargate capacity providers are\n\t\t\tavailable to all accounts and only need to be associated with a cluster to be\n\t\t\tused.

", + "smithy.api#documentation": "

The name of one or more capacity providers to associate with the cluster.

\n

If specifying a capacity provider that uses an Auto Scaling group, the capacity\n\t\t\tprovider must already be created. New capacity providers can be created with the CreateCapacityProvider API operation.

\n

To use a Fargate capacity provider, specify either the FARGATE or\n\t\t\t\tFARGATE_SPOT capacity providers. The Fargate capacity providers are\n\t\t\tavailable to all accounts and only need to be associated with a cluster to be\n\t\t\tused.

", "smithy.api#required": {} } }, "defaultCapacityProviderStrategy": { "target": "com.amazonaws.ecs#CapacityProviderStrategy", "traits": { - "smithy.api#documentation": "

The capacity provider strategy to use by default for the cluster.

\n

When creating a service or running a task on a cluster, if no capacity provider or\n\t\t\tlaunch type is specified then the default capacity provider strategy for the cluster is\n\t\t\tused.

\n

A capacity provider strategy consists of one or more capacity providers along with the\n\t\t\t\tbase and weight to assign to them. A capacity provider\n\t\t\tmust be associated with the cluster to be used in a capacity provider strategy. The\n\t\t\t\tPutClusterCapacityProviders API is used to associate a capacity\n\t\t\tprovider with a cluster. Only capacity providers with an ACTIVE or\n\t\t\t\tUPDATING status can be used.

\n

If specifying a capacity provider that uses an Auto Scaling group, the capacity\n\t\t\tprovider must already be created. New capacity providers can be created with the CreateCapacityProvider API operation.

\n

To use a Fargate capacity provider, specify either the FARGATE or\n\t\t\t\tFARGATE_SPOT capacity providers. The Fargate capacity providers are\n\t\t\tavailable to all accounts and only need to be associated with a cluster to be\n\t\t\tused.

", + "smithy.api#documentation": "

The capacity provider strategy to use by default for the cluster.

\n

When creating a service or running a task on a cluster, if no capacity provider or\n\t\t\tlaunch type is specified then the default capacity provider strategy for the cluster is\n\t\t\tused.

\n

A capacity provider strategy consists of one or more capacity providers along with the\n\t\t\t\tbase and weight to assign to them. A capacity provider\n\t\t\tmust be associated with the cluster to be used in a capacity provider strategy. The\n\t\t\t\tPutClusterCapacityProviders API is used to associate a capacity provider\n\t\t\twith a cluster. Only capacity providers with an ACTIVE or\n\t\t\t\tUPDATING status can be used.

\n

If specifying a capacity provider that uses an Auto Scaling group, the capacity\n\t\t\tprovider must already be created. New capacity providers can be created with the CreateCapacityProvider API operation.

\n

To use a Fargate capacity provider, specify either the FARGATE or\n\t\t\t\tFARGATE_SPOT capacity providers. The Fargate capacity providers are\n\t\t\tavailable to all accounts and only need to be associated with a cluster to be\n\t\t\tused.

", "smithy.api#required": {} } } @@ -9086,7 +11348,7 @@ } ], "traits": { - "smithy.api#documentation": "

Registers a new task definition from the supplied family and\n\t\t\t\tcontainerDefinitions. Optionally, you can add data volumes to your\n\t\t\tcontainers with the volumes parameter. For more information about task\n\t\t\tdefinition parameters and defaults, see Amazon ECS Task\n\t\t\t\tDefinitions in the Amazon Elastic Container Service Developer Guide.

\n

You can specify a role for your task with the taskRoleArn parameter. When\n\t\t\tyou specify a role for a task, its containers can then use the latest versions of the\n\t\t\tCLI or SDKs to make API requests to the Amazon Web Services services that are specified in the\n\t\t\tpolicy that's associated with the role. For more information, see IAM\n\t\t\t\tRoles for Tasks in the Amazon Elastic Container Service Developer Guide.

\n

You can specify a Docker networking mode for the containers in your task definition\n\t\t\twith the networkMode parameter. The available network modes correspond to\n\t\t\tthose described in Network\n\t\t\t\tsettings in the Docker run reference. If you specify the awsvpc\n\t\t\tnetwork mode, the task is allocated an elastic network interface, and you must specify a\n\t\t\t\tNetworkConfiguration when you create a service or run a task with\n\t\t\tthe task definition. For more information, see Task Networking\n\t\t\tin the Amazon Elastic Container Service Developer Guide.

", + "smithy.api#documentation": "

Registers a new task definition from the supplied family and\n\t\t\t\tcontainerDefinitions. Optionally, you can add data volumes to your\n\t\t\tcontainers with the volumes parameter. For more information about task\n\t\t\tdefinition parameters and defaults, see Amazon ECS Task\n\t\t\t\tDefinitions in the Amazon Elastic Container Service Developer Guide.

\n

You can specify a role for your task with the taskRoleArn parameter. When\n\t\t\tyou specify a role for a task, its containers can then use the latest versions of the\n\t\t\tCLI or SDKs to make API requests to the Amazon Web Services services that are specified in the\n\t\t\tpolicy that's associated with the role. For more information, see IAM\n\t\t\t\tRoles for Tasks in the Amazon Elastic Container Service Developer Guide.

\n

You can specify a Docker networking mode for the containers in your task definition\n\t\t\twith the networkMode parameter. If you specify the awsvpc\n\t\t\tnetwork mode, the task is allocated an elastic network interface, and you must specify a\n\t\t\t\tNetworkConfiguration when you create a service or run a task with the task\n\t\t\tdefinition. For more information, see Task Networking\n\t\t\tin the Amazon Elastic Container Service Developer Guide.

", "smithy.api#examples": [ { "title": "To register a task definition", @@ -9097,7 +11359,7 @@ "containerDefinitions": [ { "name": "sleep", - "image": "busybox", + "image": "public.ecr.aws/docker/library/busybox:latest", "cpu": 10, "command": [ "sleep", @@ -9118,7 +11380,7 @@ "environment": [], "name": "sleep", "mountPoints": [], - "image": "busybox", + "image": "public.ecr.aws/docker/library/busybox:latest", "cpu": 10, "portMappings": [], "command": [ @@ -9157,13 +11419,13 @@ "executionRoleArn": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the task execution role that grants the Amazon ECS container agent\n permission to make Amazon Web Services API calls on your behalf. The task execution IAM role is required\n depending on the requirements of your task. For more information, see Amazon ECS task\n execution IAM role in the Amazon Elastic Container Service Developer Guide.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the task execution role that grants the Amazon ECS container agent\n permission to make Amazon Web Services API calls on your behalf. For informationabout the required IAM roles for Amazon ECS, see IAM roles for Amazon ECS in the Amazon Elastic Container Service Developer Guide.

" } }, "networkMode": { "target": "com.amazonaws.ecs#NetworkMode", "traits": { - "smithy.api#documentation": "

The Docker networking mode to use for the containers in the task. The valid values are\n none, bridge, awsvpc, and host.\n If no network mode is specified, the default is bridge.

\n

For Amazon ECS tasks on Fargate, the awsvpc network mode is required. \n For Amazon ECS tasks on Amazon EC2 Linux instances, any network mode can be used. For Amazon ECS tasks on Amazon EC2 Windows instances, or awsvpc can be used. If the network\n mode is set to none, you cannot specify port mappings in your container\n definitions, and the tasks containers do not have external connectivity. The\n host and awsvpc network modes offer the highest networking\n performance for containers because they use the EC2 network stack instead of the\n virtualized network stack provided by the bridge mode.

\n

With the host and awsvpc network modes, exposed container\n ports are mapped directly to the corresponding host port (for the host\n network mode) or the attached elastic network interface port (for the\n awsvpc network mode), so you cannot take advantage of dynamic host port\n mappings.

\n \n

When using the host network mode, you should not run\n containers using the root user (UID 0). It is considered best practice\n to use a non-root user.

\n
\n

If the network mode is awsvpc, the task is allocated an elastic network\n interface, and you must specify a NetworkConfiguration value when you create\n a service or run a task with the task definition. For more information, see Task Networking in the\n Amazon Elastic Container Service Developer Guide.

\n

If the network mode is host, you cannot run multiple instantiations of the\n same task on a single container instance when port mappings are used.

\n

For more information, see Network\n settings in the Docker run reference.

" + "smithy.api#documentation": "

The Docker networking mode to use for the containers in the task. The valid values are\n none, bridge, awsvpc, and host.\n If no network mode is specified, the default is bridge.

\n

For Amazon ECS tasks on Fargate, the awsvpc network mode is required. \n For Amazon ECS tasks on Amazon EC2 Linux instances, any network mode can be used. For Amazon ECS tasks on Amazon EC2 Windows instances, or awsvpc can be used. If the network\n mode is set to none, you cannot specify port mappings in your container\n definitions, and the tasks containers do not have external connectivity. The\n host and awsvpc network modes offer the highest networking\n performance for containers because they use the EC2 network stack instead of the\n virtualized network stack provided by the bridge mode.

\n

With the host and awsvpc network modes, exposed container\n ports are mapped directly to the corresponding host port (for the host\n network mode) or the attached elastic network interface port (for the\n awsvpc network mode), so you cannot take advantage of dynamic host port\n mappings.

\n \n

When using the host network mode, you should not run\n containers using the root user (UID 0). It is considered best practice\n to use a non-root user.

\n
\n

If the network mode is awsvpc, the task is allocated an elastic network\n interface, and you must specify a NetworkConfiguration value when you create\n a service or run a task with the task definition. For more information, see Task Networking in the\n Amazon Elastic Container Service Developer Guide.

\n

If the network mode is host, you cannot run multiple instantiations of the\n same task on a single container instance when port mappings are used.

" } }, "containerDefinitions": { @@ -9194,7 +11456,7 @@ "cpu": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The number of CPU units used by the task. It can be expressed as an integer using CPU\n\t\t\tunits (for example, 1024) or as a string using vCPUs (for example, 1\n\t\t\t\tvCPU or 1 vcpu) in a task definition. String values are\n\t\t\tconverted to an integer indicating the CPU units when the task definition is\n\t\t\tregistered.

\n \n

Task-level CPU and memory parameters are ignored for Windows containers. We\n\t\t\t\trecommend specifying container-level resources for Windows containers.

\n
\n

If you're using the EC2 launch type, this field is optional. Supported\n\t\t\tvalues are between 128 CPU units (0.125 vCPUs) and\n\t\t\t\t10240 CPU units (10 vCPUs). If you do not specify a value,\n\t\t\tthe parameter is ignored.

\n

If you're using the Fargate launch type, this field is required and you\n\t\t\tmust use one of the following values, which determines your range of supported values\n\t\t\tfor the memory parameter:

\n

The CPU units cannot be less than 1 vCPU when you use Windows containers on\n\t\t\tFargate.

\n
    \n
  • \n

    256 (.25 vCPU) - Available memory values: 512 (0.5 GB), 1024 (1 GB), 2048 (2 GB)

    \n
  • \n
  • \n

    512 (.5 vCPU) - Available memory values: 1024 (1 GB), 2048 (2 GB), 3072 (3 GB), 4096 (4 GB)

    \n
  • \n
  • \n

    1024 (1 vCPU) - Available memory values: 2048 (2 GB), 3072 (3 GB), 4096 (4 GB), 5120 (5 GB), 6144 (6 GB), 7168 (7 GB), 8192 (8 GB)

    \n
  • \n
  • \n

    2048 (2 vCPU) - Available memory values: 4096 (4 GB) and 16384 (16 GB) in increments of 1024 (1 GB)

    \n
  • \n
  • \n

    4096 (4 vCPU) - Available memory values: 8192 (8 GB) and 30720 (30 GB) in increments of 1024 (1 GB)

    \n
  • \n
  • \n

    8192 (8 vCPU) - Available memory values: 16 GB and 60 GB in 4 GB increments

    \n

    This option requires Linux platform 1.4.0 or\n later.

    \n
  • \n
  • \n

    16384 (16vCPU) - Available memory values: 32GB and 120 GB in 8 GB increments

    \n

    This option requires Linux platform 1.4.0 or\n later.

    \n
  • \n
" + "smithy.api#documentation": "

The number of CPU units used by the task. It can be expressed as an integer using CPU\n\t\t\tunits (for example, 1024) or as a string using vCPUs (for example, 1\n\t\t\t\tvCPU or 1 vcpu) in a task definition. String values are\n\t\t\tconverted to an integer indicating the CPU units when the task definition is\n\t\t\tregistered.

\n \n

Task-level CPU and memory parameters are ignored for Windows containers. We\n\t\t\t\trecommend specifying container-level resources for Windows containers.

\n
\n

If you're using the EC2 launch type or external launch type, this field\n\t\t\tis optional. Supported values are between 128 CPU units (0.125\n\t\t\tvCPUs) and 196608 CPU units (192 vCPUs). If you do not specify\n\t\t\ta value, the parameter is ignored.

\n

This field is required for Fargate. For information about the valid values, see Task size in the Amazon Elastic Container Service Developer Guide.

" } }, "memory": { @@ -9212,13 +11474,13 @@ "pidMode": { "target": "com.amazonaws.ecs#PidMode", "traits": { - "smithy.api#documentation": "

The process namespace to use for the containers in the task. The valid\n values are host or task. On Fargate for\n Linux containers, the only valid value is task. For\n example, monitoring sidecars might need pidMode to access\n information about other containers running in the same task.

\n

If host is specified, all containers within the tasks\n that specified the host PID mode on the same container\n instance share the same process namespace with the host Amazon EC2\n instance.

\n

If task is specified, all containers within the specified\n task share the same process namespace.

\n

If no value is specified, the\n default is a private namespace for each container. For more information,\n see PID settings in the Docker run\n reference.

\n

If the host PID mode is used, there's a heightened risk\n of undesired process namespace exposure. For more information, see\n Docker security.

\n \n

This parameter is not supported for Windows containers.

\n
\n \n

This parameter is only supported for tasks that are hosted on\n Fargate if the tasks are using platform version 1.4.0 or later\n (Linux). This isn't supported for Windows containers on\n Fargate.

\n
" + "smithy.api#documentation": "

The process namespace to use for the containers in the task. The valid\n values are host or task. On Fargate for\n Linux containers, the only valid value is task. For\n example, monitoring sidecars might need pidMode to access\n information about other containers running in the same task.

\n

If host is specified, all containers within the tasks\n that specified the host PID mode on the same container\n instance share the same process namespace with the host Amazon EC2\n instance.

\n

If task is specified, all containers within the specified\n task share the same process namespace.

\n

If no value is specified, the\n default is a private namespace for each container.

\n

If the host PID mode is used, there's a heightened risk\n of undesired process namespace exposure.

\n \n

This parameter is not supported for Windows containers.

\n
\n \n

This parameter is only supported for tasks that are hosted on\n Fargate if the tasks are using platform version 1.4.0 or later\n (Linux). This isn't supported for Windows containers on\n Fargate.

\n
" } }, "ipcMode": { "target": "com.amazonaws.ecs#IpcMode", "traits": { - "smithy.api#documentation": "

The IPC resource namespace to use for the containers in the task. The valid values are\n host, task, or none. If host is\n specified, then all containers within the tasks that specified the host IPC\n mode on the same container instance share the same IPC resources with the host Amazon EC2\n instance. If task is specified, all containers within the specified task\n share the same IPC resources. If none is specified, then IPC resources\n within the containers of a task are private and not shared with other containers in a\n task or on the container instance. If no value is specified, then the IPC resource\n namespace sharing depends on the Docker daemon setting on the container instance. For\n more information, see IPC\n settings in the Docker run reference.

\n

If the host IPC mode is used, be aware that there is a heightened risk of\n undesired IPC namespace expose. For more information, see Docker\n security.

\n

If you are setting namespaced kernel parameters using systemControls for\n the containers in the task, the following will apply to your IPC resource namespace. For\n more information, see System\n Controls in the Amazon Elastic Container Service Developer Guide.

\n
    \n
  • \n

    For tasks that use the host IPC mode, IPC namespace related\n systemControls are not supported.

    \n
  • \n
  • \n

    For tasks that use the task IPC mode, IPC namespace related\n systemControls will apply to all containers within a\n task.

    \n
  • \n
\n \n

This parameter is not supported for Windows containers or tasks run on Fargate.

\n
" + "smithy.api#documentation": "

The IPC resource namespace to use for the containers in the task. The valid values are\n host, task, or none. If host is\n specified, then all containers within the tasks that specified the host IPC\n mode on the same container instance share the same IPC resources with the host Amazon EC2\n instance. If task is specified, all containers within the specified task\n share the same IPC resources. If none is specified, then IPC resources\n within the containers of a task are private and not shared with other containers in a\n task or on the container instance. If no value is specified, then the IPC resource\n namespace sharing depends on the Docker daemon setting on the container instance.

\n

If the host IPC mode is used, be aware that there is a heightened risk of\n undesired IPC namespace expose.

\n

If you are setting namespaced kernel parameters using systemControls for\n the containers in the task, the following will apply to your IPC resource namespace. For\n more information, see System\n Controls in the Amazon Elastic Container Service Developer Guide.

\n
    \n
  • \n

    For tasks that use the host IPC mode, IPC namespace related\n systemControls are not supported.

    \n
  • \n
  • \n

    For tasks that use the task IPC mode, IPC namespace related\n systemControls will apply to all containers within a\n task.

    \n
  • \n
\n \n

This parameter is not supported for Windows containers or tasks run on Fargate.

\n
" } }, "proxyConfiguration": { @@ -9244,6 +11506,12 @@ "traits": { "smithy.api#documentation": "

The operating system that your tasks definitions run on. A platform family is\n\t\t\tspecified only for tasks using the Fargate launch type.

" } + }, + "enableFaultInjection": { + "target": "com.amazonaws.ecs#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

Enables fault injection when you register your task definition and allows for fault\n\t\t\tinjection requests to be accepted from the task's containers. The default value is\n\t\t\t\tfalse.

" + } } }, "traits": { @@ -9291,6 +11559,20 @@ "target": "com.amazonaws.ecs#Attribute" } }, + "com.amazonaws.ecs#ResolvedConfiguration": { + "type": "structure", + "members": { + "loadBalancers": { + "target": "com.amazonaws.ecs#ServiceRevisionLoadBalancers", + "traits": { + "smithy.api#documentation": "

The resolved load balancer configuration for the service revision. This includes information about which target groups serve traffic and which listener rules direct traffic to them.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The resolved configuration for a service revision, which contains the actual resources your service revision uses, such as which target groups serve traffic.

" + } + }, "com.amazonaws.ecs#Resource": { "type": "structure", "members": { @@ -9380,7 +11662,7 @@ "value": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The value for the specified resource type.

\n

When the type is GPU, the value is the number of physical GPUs the\n\t\t\tAmazon ECS container agent reserves for the container. The number of GPUs that's reserved for\n\t\t\tall containers in a task can't exceed the number of available GPUs on the container\n\t\t\tinstance that the task is launched on.

\n

When the type is InferenceAccelerator, the value matches\n\t\t\tthe deviceName for an InferenceAccelerator specified in a task definition.

", + "smithy.api#documentation": "

The value for the specified resource type.

\n

When the type is GPU, the value is the number of physical\n\t\t\t\tGPUs the Amazon ECS container agent reserves for the container. The number\n\t\t\tof GPUs that's reserved for all containers in a task can't exceed the number of\n\t\t\tavailable GPUs on the container instance that the task is launched on.

\n

When the type is InferenceAccelerator, the value matches the\n\t\t\t\tdeviceName for an InferenceAccelerator specified in a task definition.

", "smithy.api#required": {} } }, @@ -9425,14 +11707,40 @@ "target": "com.amazonaws.ecs#Resource" } }, - "com.amazonaws.ecs#RunTask": { - "type": "operation", - "input": { - "target": "com.amazonaws.ecs#RunTaskRequest" - }, - "output": { - "target": "com.amazonaws.ecs#RunTaskResponse" - }, + "com.amazonaws.ecs#Rollback": { + "type": "structure", + "members": { + "reason": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The reason the rollback happened. For example, the circuit breaker initiated the\n\t\t\trollback operation.

" + } + }, + "startedAt": { + "target": "com.amazonaws.ecs#Timestamp", + "traits": { + "smithy.api#documentation": "

Time time that the rollback started. The format is yyyy-MM-dd HH:mm:ss.SSSSSS.

" + } + }, + "serviceRevisionArn": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The ARN of the service revision deployed as part of the rollback.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about the service deployment rollback.

" + } + }, + "com.amazonaws.ecs#RunTask": { + "type": "operation", + "input": { + "target": "com.amazonaws.ecs#RunTaskRequest" + }, + "output": { + "target": "com.amazonaws.ecs#RunTaskResponse" + }, "errors": [ { "target": "com.amazonaws.ecs#AccessDeniedException" @@ -9466,7 +11774,7 @@ } ], "traits": { - "smithy.api#documentation": "

Starts a new task using the specified task definition.

\n \n

On March 21, 2024, a change was made to resolve the task definition revision before authorization. When a task definition revision is not specified, authorization will occur using the latest revision of a task definition.

\n
\n

You can allow Amazon ECS to place tasks for you, or you can customize how Amazon ECS places\n\t\t\ttasks using placement constraints and placement strategies. For more information, see\n\t\t\t\tScheduling Tasks in the Amazon Elastic Container Service Developer Guide.

\n

Alternatively, you can use StartTask to use your own scheduler or\n\t\t\tplace tasks manually on specific container instances.

\n

Starting April 15, 2023, Amazon Web Services will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS, or Amazon EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.

\n

You can attach Amazon EBS volumes to Amazon ECS tasks by configuring the volume when creating or\n\t\t\tupdating a service. For more infomation, see Amazon EBS volumes in the Amazon Elastic Container Service Developer Guide.

\n

The Amazon ECS API follows an eventual consistency model. This is because of the\n\t\t\tdistributed nature of the system supporting the API. This means that the result of an\n\t\t\tAPI command you run that affects your Amazon ECS resources might not be immediately visible\n\t\t\tto all subsequent commands you run. Keep this in mind when you carry out an API command\n\t\t\tthat immediately follows a previous API command.

\n

To manage eventual consistency, you can do the following:

\n
    \n
  • \n

    Confirm the state of the resource before you run a command to modify it. Run\n\t\t\t\t\tthe DescribeTasks command using an exponential backoff algorithm to ensure that\n\t\t\t\t\tyou allow enough time for the previous command to propagate through the system.\n\t\t\t\t\tTo do this, run the DescribeTasks command repeatedly, starting with a couple of\n\t\t\t\t\tseconds of wait time and increasing gradually up to five minutes of wait\n\t\t\t\t\ttime.

    \n
  • \n
  • \n

    Add wait time between subsequent commands, even if the DescribeTasks command\n\t\t\t\t\treturns an accurate response. Apply an exponential backoff algorithm starting\n\t\t\t\t\twith a couple of seconds of wait time, and increase gradually up to about five\n\t\t\t\t\tminutes of wait time.

    \n
  • \n
", + "smithy.api#documentation": "

Starts a new task using the specified task definition.

\n \n

On March 21, 2024, a change was made to resolve the task definition revision before authorization. When a task definition revision is not specified, authorization will occur using the latest revision of a task definition.

\n
\n \n

Amazon Elastic Inference (EI) is no longer available to customers.

\n
\n

You can allow Amazon ECS to place tasks for you, or you can customize how Amazon ECS places\n\t\t\ttasks using placement constraints and placement strategies. For more information, see\n\t\t\t\tScheduling Tasks in the Amazon Elastic Container Service Developer Guide.

\n

Alternatively, you can use StartTask to use your own scheduler or place\n\t\t\ttasks manually on specific container instances.

\n

You can attach Amazon EBS volumes to Amazon ECS tasks by configuring the volume when creating or\n\t\t\tupdating a service. For more information, see Amazon EBS volumes in the Amazon Elastic Container Service Developer Guide.

\n

The Amazon ECS API follows an eventual consistency model. This is because of the\n\t\t\tdistributed nature of the system supporting the API. This means that the result of an\n\t\t\tAPI command you run that affects your Amazon ECS resources might not be immediately visible\n\t\t\tto all subsequent commands you run. Keep this in mind when you carry out an API command\n\t\t\tthat immediately follows a previous API command.

\n

To manage eventual consistency, you can do the following:

\n
    \n
  • \n

    Confirm the state of the resource before you run a command to modify it. Run\n\t\t\t\t\tthe DescribeTasks command using an exponential backoff algorithm to ensure that\n\t\t\t\t\tyou allow enough time for the previous command to propagate through the system.\n\t\t\t\t\tTo do this, run the DescribeTasks command repeatedly, starting with a couple of\n\t\t\t\t\tseconds of wait time and increasing gradually up to five minutes of wait\n\t\t\t\t\ttime.

    \n
  • \n
  • \n

    Add wait time between subsequent commands, even if the DescribeTasks command\n\t\t\t\t\treturns an accurate response. Apply an exponential backoff algorithm starting\n\t\t\t\t\twith a couple of seconds of wait time, and increase gradually up to about five\n\t\t\t\t\tminutes of wait time.

    \n
  • \n
\n

If you get a ConflictException error, the RunTask request could\n\t\t\tnot be processed due to conflicts. The provided clientToken is already in\n\t\t\tuse with a different RunTask request. The resourceIds are the\n\t\t\texisting task ARNs which are already associated with the clientToken.

\n

To fix this issue:

\n
    \n
  • \n

    Run RunTask with a unique clientToken.

    \n
  • \n
  • \n

    Run RunTask with the clientToken and the original\n\t\t\t\t\tset of parameters

    \n
  • \n
\n

If you get a ClientExceptionerror, the RunTask could not be processed because you use managed\n\t\t\t\t\tscaling and there is a capacity error because the quota of tasks in the\n\t\t\t\t\tPROVISIONING per cluster has been reached. For information\n\t\t\t\t\tabout the service quotas, see Amazon ECS\n\t\t\t\t\t\tservice quotas.

", "smithy.api#examples": [ { "title": "To run a task on your default cluster", @@ -9511,13 +11819,13 @@ "capacityProviderStrategy": { "target": "com.amazonaws.ecs#CapacityProviderStrategy", "traits": { - "smithy.api#documentation": "

The capacity provider strategy to use for the task.

\n

If a capacityProviderStrategy is specified, the launchType\n\t\t\tparameter must be omitted. If no capacityProviderStrategy or\n\t\t\t\tlaunchType is specified, the\n\t\t\t\tdefaultCapacityProviderStrategy for the cluster is used.

\n

When you use cluster auto scaling, you must specify\n\t\t\t\tcapacityProviderStrategy and not launchType.

\n

A capacity provider strategy may contain a maximum of 6 capacity providers.

" + "smithy.api#documentation": "

The capacity provider strategy to use for the task.

\n

If a capacityProviderStrategy is specified, the launchType\n\t\t\tparameter must be omitted. If no capacityProviderStrategy or\n\t\t\t\tlaunchType is specified, the\n\t\t\t\tdefaultCapacityProviderStrategy for the cluster is used.

\n

When you use cluster auto scaling, you must specify\n\t\t\t\tcapacityProviderStrategy and not launchType.

\n

A capacity provider strategy can contain a maximum of 20 capacity providers.

" } }, "cluster": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The short name or full Amazon Resource Name (ARN) of the cluster to run your task on.\n\t\t\tIf you do not specify a cluster, the default cluster is assumed.

" + "smithy.api#documentation": "

The short name or full Amazon Resource Name (ARN) of the cluster to run your task on.\n\t\t\tIf you do not specify a cluster, the default cluster is assumed.

\n

Each account receives a default cluster the first time you use the service, but you\n\t\t\tmay also create other clusters.

" } }, "count": { @@ -9585,19 +11893,19 @@ "propagateTags": { "target": "com.amazonaws.ecs#PropagateTags", "traits": { - "smithy.api#documentation": "

Specifies whether to propagate the tags from the task definition to the task. If no\n\t\t\tvalue is specified, the tags aren't propagated. Tags can only be propagated to the task\n\t\t\tduring task creation. To add tags to a task after task creation, use the TagResource API action.

\n \n

An error will be received if you specify the SERVICE option when\n\t\t\t\trunning a task.

\n
" + "smithy.api#documentation": "

Specifies whether to propagate the tags from the task definition to the task. If no\n\t\t\tvalue is specified, the tags aren't propagated. Tags can only be propagated to the task\n\t\t\tduring task creation. To add tags to a task after task creation, use theTagResource API action.

\n \n

An error will be received if you specify the SERVICE option when\n\t\t\t\trunning a task.

\n
" } }, "referenceId": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The reference ID to use for the task. The reference ID can have a maximum length of\n\t\t\t1024 characters.

" + "smithy.api#documentation": "

This parameter is only used by Amazon ECS. It is not intended for use by customers.

" } }, "startedBy": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

An optional tag specified when a task is started. For example, if you automatically\n\t\t\ttrigger a task to run a batch process job, you could apply a unique identifier for that\n\t\t\tjob to your task with the startedBy parameter. You can then identify which\n\t\t\ttasks belong to that job by filtering the results of a ListTasks call\n\t\t\twith the startedBy value. Up to 128 letters (uppercase and lowercase),\n\t\t\tnumbers, hyphens (-), and underscores (_) are allowed.

\n

If a task is started by an Amazon ECS service, then the startedBy parameter\n\t\t\tcontains the deployment ID of the service that starts it.

" + "smithy.api#documentation": "

An optional tag specified when a task is started. For example, if you automatically\n\t\t\ttrigger a task to run a batch process job, you could apply a unique identifier for that\n\t\t\tjob to your task with the startedBy parameter. You can then identify which\n\t\t\ttasks belong to that job by filtering the results of a ListTasks call with\n\t\t\tthe startedBy value. Up to 128 letters (uppercase and lowercase), numbers,\n\t\t\thyphens (-), forward slash (/), and underscores (_) are allowed.

\n

If a task is started by an Amazon ECS service, then the startedBy parameter\n\t\t\tcontains the deployment ID of the service that starts it.

" } }, "tags": { @@ -9609,7 +11917,7 @@ "taskDefinition": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The family and revision (family:revision) or\n\t\t\tfull ARN of the task definition to run. If a revision isn't specified,\n\t\t\tthe latest ACTIVE revision is used.

\n

The full ARN value must match the value that you specified as the\n\t\t\t\tResource of the principal's permissions policy.

\n

When you specify a task definition, you must either specify a specific revision, or\n\t\t\tall revisions in the ARN.

\n

To specify a specific revision, include the revision number in the ARN. For example,\n\t\t\tto specify revision 2, use\n\t\t\t\tarn:aws:ecs:us-east-1:111122223333:task-definition/TaskFamilyName:2.

\n

To specify all revisions, use the wildcard (*) in the ARN. For example, to specify all\n\t\t\trevisions, use\n\t\t\t\tarn:aws:ecs:us-east-1:111122223333:task-definition/TaskFamilyName:*.

\n

For more information, see Policy Resources for Amazon ECS in the Amazon Elastic Container Service Developer Guide.

", + "smithy.api#documentation": "

The family and revision (family:revision) or\n\t\t\tfull ARN of the task definition to run. If a revision isn't specified,\n\t\t\tthe latest ACTIVE revision is used.

\n

The full ARN value must match the value that you specified as the\n\t\t\t\tResource of the principal's permissions policy.

\n

When you specify a task definition, you must either specify a specific revision, or\n\t\t\tall revisions in the ARN.

\n

To specify a specific revision, include the revision number in the ARN. For example,\n\t\t\tto specify revision 2, use\n\t\t\t\tarn:aws:ecs:us-east-1:111122223333:task-definition/TaskFamilyName:2.

\n

To specify all revisions, use the wildcard (*) in the ARN. For example, to specify\n\t\t\tall revisions, use\n\t\t\t\tarn:aws:ecs:us-east-1:111122223333:task-definition/TaskFamilyName:*.

\n

For more information, see Policy Resources for Amazon ECS in the Amazon Elastic Container Service Developer Guide.

", "smithy.api#required": {} } }, @@ -9623,7 +11931,7 @@ "volumeConfigurations": { "target": "com.amazonaws.ecs#TaskVolumeConfigurations", "traits": { - "smithy.api#documentation": "

The details of the volume that was configuredAtLaunch. You can configure\n\t\t\tthe size, volumeType, IOPS, throughput, snapshot and encryption in in TaskManagedEBSVolumeConfiguration. The name of the volume must\n\t\t\tmatch the name from the task definition.

" + "smithy.api#documentation": "

The details of the volume that was configuredAtLaunch. You can configure\n\t\t\tthe size, volumeType, IOPS, throughput, snapshot and encryption in TaskManagedEBSVolumeConfiguration. The name of the volume must\n\t\t\tmatch the name from the task definition.

" } } }, @@ -9637,7 +11945,7 @@ "tasks": { "target": "com.amazonaws.ecs#Tasks", "traits": { - "smithy.api#documentation": "

A full description of the tasks that were run. The tasks that were successfully placed\n\t\t\ton your cluster are described here.

\n

" + "smithy.api#documentation": "

A full description of the tasks that were run. The tasks that were successfully placed\n\t\t\ton your cluster are described here.

" } }, "failures": { @@ -9829,7 +12137,7 @@ "target": "com.amazonaws.ecs#Integer", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The desired number of instantiations of the task definition to keep running on the\n\t\t\tservice. This value is specified when the service is created with CreateService, and it can be modified with UpdateService.

" + "smithy.api#documentation": "

The desired number of instantiations of the task definition to keep running on the\n\t\t\tservice. This value is specified when the service is created with CreateService , and it can be modified with UpdateService.

" } }, "runningCount": { @@ -9873,7 +12181,7 @@ "taskDefinition": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The task definition to use for tasks in the service. This value is specified when the\n\t\t\tservice is created with CreateService, and it can be modified with\n\t\t\t\tUpdateService.

" + "smithy.api#documentation": "

The task definition to use for tasks in the service. This value is specified when the\n\t\t\tservice is created with CreateService,\n\t\t\tand it can be modified with UpdateService.

" } }, "deploymentConfiguration": { @@ -9933,7 +12241,7 @@ "healthCheckGracePeriodSeconds": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { - "smithy.api#documentation": "

The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy\n\t\t\tElastic Load Balancing target health checks after a task has first started.

" + "smithy.api#documentation": "

The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy\n\t\t\tElastic Load Balancing, VPC Lattice, and container health checks after a task has first started.

\n

If your service has more running tasks than desired, unhealthy tasks in the grace period might be stopped to reach the desired count.

" } }, "schedulingStrategy": { @@ -9979,6 +12287,12 @@ "smithy.api#default": false, "smithy.api#documentation": "

Determines whether the execute command functionality is turned on for the service. If\n\t\t\t\ttrue, the execute command functionality is turned on for all containers\n\t\t\tin tasks as part of the service.

" } + }, + "availabilityZoneRebalancing": { + "target": "com.amazonaws.ecs#AvailabilityZoneRebalancing", + "traits": { + "smithy.api#documentation": "

Indicates whether to use Availability Zone rebalancing for the service.

\n

For more information, see Balancing an Amazon ECS service across Availability Zones in\n\t\t\tthe \n Amazon Elastic Container Service Developer Guide\n .

\n

The default behavior of AvailabilityZoneRebalancing differs between create and update requests:

\n
    \n
  • \n

    For create service requests, when no value is specified for AvailabilityZoneRebalancing, Amazon ECS defaults the value to ENABLED.

    \n
  • \n
  • \n

    For update service requests, when no value is specified for AvailabilityZoneRebalancing, Amazon ECS defaults to the existing service’s AvailabilityZoneRebalancing value. If the service never had an AvailabilityZoneRebalancing value set, Amazon ECS treats this as DISABLED.

    \n
  • \n
" + } } }, "traits": { @@ -10000,6 +12314,12 @@ "traits": { "smithy.api#documentation": "

The dnsName is the name that you use in the applications of client tasks\n\t\t\tto connect to this service. The name must be a valid DNS name but doesn't need to be\n\t\t\tfully-qualified. The name can include up to 127 characters. The name can include\n\t\t\tlowercase letters, numbers, underscores (_), hyphens (-), and periods (.). The name\n\t\t\tcan't start with a hyphen.

\n

If this parameter isn't specified, the default value of discoveryName.namespace is used. If the discoveryName isn't specified, the port mapping name from the task definition is used in portName.namespace.

\n

To avoid changing your applications in client Amazon ECS services, set this to the same\n\t\t\tname that the client application uses by default. For example, a few common names are\n\t\t\t\tdatabase, db, or the lowercase name of a database, such as\n\t\t\t\tmysql or redis. For more information, see Service Connect in the Amazon Elastic Container Service Developer Guide.

" } + }, + "testTrafficRules": { + "target": "com.amazonaws.ecs#ServiceConnectTestTrafficRules", + "traits": { + "smithy.api#documentation": "

The configuration for test traffic routing rules used during blue/green deployments with Amazon ECS Service Connect. This allows you to route a portion of traffic to the new service revision of your service for testing before shifting all production traffic.

" + } } }, "traits": { @@ -10106,7 +12426,7 @@ "discoveryArn": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the namespace in Cloud Map that matches the discovery name for this\n\t\t\tService Connect resource. You can use this ARN in other integrations with Cloud Map.\n\t\t\tHowever, Service Connect can't ensure connectivity outside of Amazon ECS.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the service in Cloud Map that matches the discovery name for this\n\t\t\tService Connect resource. You can use this ARN in other integrations with Cloud Map.\n\t\t\tHowever, Service Connect can't ensure connectivity outside of Amazon ECS.

" } } }, @@ -10120,6 +12440,57 @@ "target": "com.amazonaws.ecs#ServiceConnectServiceResource" } }, + "com.amazonaws.ecs#ServiceConnectTestTrafficHeaderMatchRules": { + "type": "structure", + "members": { + "exact": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The exact value that the HTTP header must match for the test traffic routing rule to apply. This provides precise control over which requests are routed to the new service revision during blue/green deployments.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The header matching rules for test traffic routing in Amazon ECS blue/green deployments.\n These rules determine how incoming requests are matched based on HTTP headers to route test\n traffic to the new service revision.

" + } + }, + "com.amazonaws.ecs#ServiceConnectTestTrafficHeaderRules": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The name of the HTTP header to examine for test traffic routing. Common examples include custom headers like X-Test-Version or X-Canary-Request that can be used to identify test traffic.

", + "smithy.api#required": {} + } + }, + "value": { + "target": "com.amazonaws.ecs#ServiceConnectTestTrafficHeaderMatchRules", + "traits": { + "smithy.api#documentation": "

The header value matching configuration that determines how the HTTP header value is evaluated for test traffic routing decisions.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The HTTP header rules used to identify and route test traffic during Amazon ECS blue/green\n deployments. These rules specify which HTTP headers to examine and what values to match for\n routing decisions.

\n

For more information, see Service Connect for Amazon ECS blue/green deployments in the \n Amazon Elastic Container Service Developer Guide.

" + } + }, + "com.amazonaws.ecs#ServiceConnectTestTrafficRules": { + "type": "structure", + "members": { + "header": { + "target": "com.amazonaws.ecs#ServiceConnectTestTrafficHeaderRules", + "traits": { + "smithy.api#documentation": "

The HTTP header-based routing rules that determine which requests should be routed to the new service version during blue/green deployment testing. These rules provide fine-grained control over test traffic routing based on request headers.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The test traffic routing configuration for Amazon ECS blue/green deployments. This\n configuration allows you to define rules for routing specific traffic to the new service\n revision during the deployment process, allowing for safe testing before full production\n traffic shift.

\n

For more information, see Service Connect for Amazon ECS blue/green deployments in the \n Amazon Elastic Container Service Developer Guide.

" + } + }, "com.amazonaws.ecs#ServiceConnectTlsCertificateAuthority": { "type": "structure", "members": { @@ -10161,217 +12532,819 @@ "smithy.api#documentation": "

The key that encrypts and decrypts your resources for Service Connect TLS.

" } }, - "com.amazonaws.ecs#ServiceEvent": { + "com.amazonaws.ecs#ServiceDeployment": { "type": "structure", "members": { - "id": { + "serviceDeploymentArn": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The ID string for the event.

" + "smithy.api#documentation": "

The ARN of the service deployment.

" + } + }, + "serviceArn": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The ARN of the service for this service deployment.

" + } + }, + "clusterArn": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The ARN of the cluster that hosts the service.

" } }, "createdAt": { "target": "com.amazonaws.ecs#Timestamp", "traits": { - "smithy.api#documentation": "

The Unix timestamp for the time when the event was triggered.

" + "smithy.api#documentation": "

The time the service deployment was created. The format is yyyy-MM-dd\n\t\t\tHH:mm:ss.SSSSSS.

" } }, - "message": { - "target": "com.amazonaws.ecs#String", + "startedAt": { + "target": "com.amazonaws.ecs#Timestamp", "traits": { - "smithy.api#documentation": "

The event message.

" + "smithy.api#documentation": "

The time the service deployment statred. The format is yyyy-MM-dd\n\t\t\tHH:mm:ss.SSSSSS.

" } - } - }, - "traits": { - "smithy.api#documentation": "

The details for an event that's associated with a service.

" - } - }, - "com.amazonaws.ecs#ServiceEvents": { - "type": "list", - "member": { - "target": "com.amazonaws.ecs#ServiceEvent" - } - }, - "com.amazonaws.ecs#ServiceField": { - "type": "enum", - "members": { - "TAGS": { - "target": "smithy.api#Unit", + }, + "finishedAt": { + "target": "com.amazonaws.ecs#Timestamp", "traits": { - "smithy.api#enumValue": "TAGS" + "smithy.api#documentation": "

The time the service deployment finished. The format is yyyy-MM-dd\n\t\t\tHH:mm:ss.SSSSSS.

" } - } - } - }, - "com.amazonaws.ecs#ServiceFieldList": { - "type": "list", - "member": { - "target": "com.amazonaws.ecs#ServiceField" - } - }, - "com.amazonaws.ecs#ServiceManagedEBSVolumeConfiguration": { - "type": "structure", - "members": { - "encrypted": { - "target": "com.amazonaws.ecs#BoxedBoolean", + }, + "stoppedAt": { + "target": "com.amazonaws.ecs#Timestamp", "traits": { - "smithy.api#documentation": "

Indicates whether the volume should be encrypted. If no value is specified, encryption\n\t\t\tis turned on by default. This parameter maps 1:1 with the Encrypted\n\t\t\tparameter of the CreateVolume API in\n\t\t\tthe Amazon EC2 API Reference.

" + "smithy.api#documentation": "

The time the service deployment stopped. The format is yyyy-MM-dd\n\t\t\tHH:mm:ss.SSSSSS.

\n

The service deployment stops when any of the following actions happen:

\n
    \n
  • \n

    A user manually stops the deployment

    \n
  • \n
  • \n

    The rollback option is not in use for the failure detection mechanism (the\n\t\t\t\t\tcircuit breaker or alarm-based) and the service fails.

    \n
  • \n
" } }, - "kmsKeyId": { - "target": "com.amazonaws.ecs#EBSKMSKeyId", + "updatedAt": { + "target": "com.amazonaws.ecs#Timestamp", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) identifier of the Amazon Web Services Key Management Service key to use for Amazon EBS encryption. When\n\t\t\tencryption is turned on and no Amazon Web Services Key Management Service key is specified, the default Amazon Web Services managed key\n\t\t\tfor Amazon EBS volumes is used. This parameter maps 1:1 with the KmsKeyId\n\t\t\tparameter of the CreateVolume API in\n\t\t\tthe Amazon EC2 API Reference.

\n \n

Amazon Web Services authenticates the Amazon Web Services Key Management Service key asynchronously. Therefore, if you specify an\n\t\t\t\tID, alias, or ARN that is invalid, the action can appear to complete, but\n\t\t\t\teventually fails.

\n
" + "smithy.api#documentation": "

The time that the service deployment was last updated. The format is yyyy-MM-dd\n\t\t\tHH:mm:ss.SSSSSS.

" } }, - "volumeType": { - "target": "com.amazonaws.ecs#EBSVolumeType", + "sourceServiceRevisions": { + "target": "com.amazonaws.ecs#ServiceRevisionsSummaryList", "traits": { - "smithy.api#documentation": "

The volume type. This parameter maps 1:1 with the VolumeType parameter of\n\t\t\tthe CreateVolume API in the Amazon EC2 API Reference. For more\n\t\t\tinformation, see Amazon EBS volume types in\n\t\t\tthe Amazon EC2 User Guide.

\n

The following are the supported volume types.

\n
    \n
  • \n

    General Purpose SSD: gp2|gp3\n

    \n
  • \n
  • \n

    Provisioned IOPS SSD: io1|io2\n

    \n
  • \n
  • \n

    Throughput Optimized HDD: st1\n

    \n
  • \n
  • \n

    Cold HDD: sc1\n

    \n
  • \n
  • \n

    Magnetic: standard\n

    \n \n

    The magnetic volume type is not supported on Fargate.

    \n
    \n
  • \n
" + "smithy.api#documentation": "

The currently deployed workload configuration.

" } }, - "sizeInGiB": { - "target": "com.amazonaws.ecs#BoxedInteger", + "targetServiceRevision": { + "target": "com.amazonaws.ecs#ServiceRevisionSummary", "traits": { - "smithy.api#documentation": "

The size of the volume in GiB. You must specify either a volume size or a snapshot ID.\n\t\t\tIf you specify a snapshot ID, the snapshot size is used for the volume size by default.\n\t\t\tYou can optionally specify a volume size greater than or equal to the snapshot size.\n\t\t\tThis parameter maps 1:1 with the Size parameter of the CreateVolume API in the Amazon EC2 API Reference.

\n

The following are the supported volume size values for each volume type.

\n
    \n
  • \n

    \n gp2 and gp3: 1-16,384

    \n
  • \n
  • \n

    \n io1 and io2: 4-16,384

    \n
  • \n
  • \n

    \n st1 and sc1: 125-16,384

    \n
  • \n
  • \n

    \n standard: 1-1,024

    \n
  • \n
" + "smithy.api#documentation": "

The workload configuration being deployed.

" } }, - "snapshotId": { - "target": "com.amazonaws.ecs#EBSSnapshotId", + "status": { + "target": "com.amazonaws.ecs#ServiceDeploymentStatus", "traits": { - "smithy.api#documentation": "

The snapshot that Amazon ECS uses to create the volume. You must specify either a snapshot\n\t\t\tID or a volume size. This parameter maps 1:1 with the SnapshotId parameter\n\t\t\tof the CreateVolume API in\n\t\t\tthe Amazon EC2 API Reference.

" + "smithy.api#documentation": "

The service deployment state.

" } }, - "iops": { - "target": "com.amazonaws.ecs#BoxedInteger", + "statusReason": { + "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The number of I/O operations per second (IOPS). For gp3,\n\t\t\tio1, and io2 volumes, this represents the number of IOPS that\n\t\t\tare provisioned for the volume. For gp2 volumes, this represents the\n\t\t\tbaseline performance of the volume and the rate at which the volume accumulates I/O\n\t\t\tcredits for bursting.

\n

The following are the supported values for each volume type.

\n
    \n
  • \n

    \n gp3: 3,000 - 16,000 IOPS

    \n
  • \n
  • \n

    \n io1: 100 - 64,000 IOPS

    \n
  • \n
  • \n

    \n io2: 100 - 256,000 IOPS

    \n
  • \n
\n

This parameter is required for io1 and io2 volume types. The\n\t\t\tdefault for gp3 volumes is 3,000 IOPS. This parameter is not\n\t\t\tsupported for st1, sc1, or standard volume\n\t\t\ttypes.

\n

This parameter maps 1:1 with the Iops parameter of the CreateVolume API in the Amazon EC2 API Reference.

" + "smithy.api#documentation": "

Information about why the service deployment is in the current status. For example,\n\t\t\tthe circuit breaker detected a failure.

" } }, - "throughput": { - "target": "com.amazonaws.ecs#BoxedInteger", + "lifecycleStage": { + "target": "com.amazonaws.ecs#ServiceDeploymentLifecycleStage", "traits": { - "smithy.api#documentation": "

The throughput to provision for a volume, in MiB/s, with a maximum of 1,000 MiB/s.\n\t\t\tThis parameter maps 1:1 with the Throughput parameter of the CreateVolume API in the Amazon EC2 API Reference.

\n \n

This parameter is only supported for the gp3 volume type.

\n
" + "smithy.api#documentation": "

The current lifecycle stage of the deployment. Possible values include:

\n
    \n
  • \n

    RECONCILE_SERVICE

    \n

    The reconciliation stage that only happens when you start a new service deployment with more than 1 service revision in an ACTIVE state.

    \n
  • \n
  • \n

    PRE_SCALE_UP

    \n

    The green service revision has not started. The blue service revision is handling 100% of the production traffic. There is no test traffic.

    \n
  • \n
  • \n

    SCALE_UP

    \n

    The stage when the green service revision scales up to 100% and launches new tasks. The green service revision is not serving any traffic at this point.

    \n
  • \n
  • \n

    POST_SCALE_UP

    \n

    The green service revision has started. The blue service revision is handling 100% of the production traffic. There is no test traffic.

    \n
  • \n
  • \n

    TEST_TRAFFIC_SHIFT

    \n

    The blue and green service revisions are running. The blue service revision handles 100% of the production traffic. The green service revision is migrating from 0% to 100% of test traffic.

    \n
  • \n
  • \n

    POST_TEST_TRAFFIC_SHIFT

    \n

    The test traffic shift is complete. The green service revision handles 100% of the test traffic.

    \n
  • \n
  • \n

    PRODUCTION_TRAFFIC_SHIFT

    \n

    Production traffic is shifting to the green service revision. The green service revision is migrating from 0% to 100% of production traffic.

    \n
  • \n
  • \n

    POST_PRODUCTION_TRAFFIC_SHIFT

    \n

    The production traffic shift is complete.

    \n
  • \n
  • \n

    BAKE_TIME

    \n

    The stage when both blue and green service revisions are running simultaneously after the production traffic has shifted.

    \n
  • \n
  • \n

    CLEAN_UP

    \n

    The stage when the blue service revision has completely scaled down to 0 running tasks. The green service revision is now the production service revision after this stage.

    \n
  • \n
" } }, - "tagSpecifications": { - "target": "com.amazonaws.ecs#EBSTagSpecifications", + "deploymentConfiguration": { + "target": "com.amazonaws.ecs#DeploymentConfiguration" + }, + "rollback": { + "target": "com.amazonaws.ecs#Rollback", "traits": { - "smithy.api#documentation": "

The tags to apply to the volume. Amazon ECS applies service-managed tags by default. This\n\t\t\tparameter maps 1:1 with the TagSpecifications.N parameter of the CreateVolume API in the Amazon EC2 API Reference.

" + "smithy.api#documentation": "

The rollback options the service deployment uses when the deployment fails.

" } }, - "roleArn": { - "target": "com.amazonaws.ecs#IAMRoleArn", + "deploymentCircuitBreaker": { + "target": "com.amazonaws.ecs#ServiceDeploymentCircuitBreaker", "traits": { - "smithy.api#documentation": "

The ARN of the IAM role to associate with this volume. This is the Amazon ECS\n\t\t\tinfrastructure IAM role that is used to manage your Amazon Web Services infrastructure. We recommend\n\t\t\tusing the Amazon ECS-managed AmazonECSInfrastructureRolePolicyForVolumes IAM\n\t\t\tpolicy with this role. For more information, see Amazon ECS\n\t\t\t\tinfrastructure IAM role in the Amazon ECS Developer\n\t\t\tGuide.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The circuit breaker configuration that determines a service deployment failed.

" } }, - "filesystemType": { - "target": "com.amazonaws.ecs#TaskFilesystemType", + "alarms": { + "target": "com.amazonaws.ecs#ServiceDeploymentAlarms", "traits": { - "smithy.api#documentation": "

The Linux filesystem type for the volume. For volumes created from a snapshot, you\n\t\t\tmust specify the same filesystem type that the volume was using when the snapshot was\n\t\t\tcreated. If there is a filesystem type mismatch, the task will fail to start.

\n

The available filesystem types are\u2028 ext3, ext4, and\n\t\t\t\txfs. If no value is specified, the xfs filesystem type is\n\t\t\tused by default.

" + "smithy.api#documentation": "

The CloudWatch alarms that determine when a service deployment fails.

" } } }, "traits": { - "smithy.api#documentation": "

The configuration for the Amazon EBS volume that Amazon ECS creates and manages on your behalf.\n\t\t\tThese settings are used to create each Amazon EBS volume, with one volume created for each\n\t\t\ttask in the service.

\n

Many of these parameters map 1:1 with the Amazon EBS CreateVolume API request\n\t\t\tparameters.

" + "smithy.api#documentation": "

Information about the service deployment.

\n

Service deployments provide a comprehensive view of your deployments. For information\n\t\t\tabout service deployments, see View service history using Amazon ECS service deployments in the\n\t\t\t\n Amazon Elastic Container Service Developer Guide\n .

" } }, - "com.amazonaws.ecs#ServiceNotActiveException": { + "com.amazonaws.ecs#ServiceDeploymentAlarms": { "type": "structure", "members": { - "message": { - "target": "com.amazonaws.ecs#String", + "status": { + "target": "com.amazonaws.ecs#ServiceDeploymentRollbackMonitorsStatus", "traits": { - "smithy.api#documentation": "

Message that describes the cause of the exception.

" + "smithy.api#documentation": "

The status of the alarms check. Amazon ECS is not using alarms for service deployment\n\t\t\tfailures when the status is DISABLED.

" + } + }, + "alarmNames": { + "target": "com.amazonaws.ecs#StringList", + "traits": { + "smithy.api#documentation": "

The name of the CloudWatch alarms that determine when a service deployment failed. A\n\t\t\t\",\" separates the alarms.

" + } + }, + "triggeredAlarmNames": { + "target": "com.amazonaws.ecs#StringList", + "traits": { + "smithy.api#documentation": "

One or more CloudWatch alarm names that have been triggered during the service\n\t\t\tdeployment. A \",\" separates the alarm names.

" } } }, "traits": { - "smithy.api#documentation": "

The specified service isn't active. You can't update a service that's inactive. If you\n\t\t\thave previously deleted a service, you can re-create it with CreateService.

", - "smithy.api#error": "client" + "smithy.api#documentation": "

The CloudWatch alarms used to determine a service deployment failed.

\n

Amazon ECS considers the service deployment as failed when any of the alarms move to\n\t\t\tthe ALARM state. For more information, see How CloudWatch\n\t\t\t\talarms detect Amazon ECS deployment failures in the Amazon ECS Developer\n\t\t\tGuide.

" } }, - "com.amazonaws.ecs#ServiceNotFoundException": { + "com.amazonaws.ecs#ServiceDeploymentBrief": { "type": "structure", "members": { - "message": { + "serviceDeploymentArn": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

Message that describes the cause of the exception.

" + "smithy.api#documentation": "

The ARN of the service deployment.

" } - } - }, - "traits": { - "smithy.api#documentation": "

The specified service wasn't found. You can view your available services with ListServices. Amazon ECS services are cluster specific and Region\n\t\t\tspecific.

", - "smithy.api#error": "client" - } - }, - "com.amazonaws.ecs#ServiceRegistries": { - "type": "list", - "member": { - "target": "com.amazonaws.ecs#ServiceRegistry" - } - }, - "com.amazonaws.ecs#ServiceRegistry": { - "type": "structure", - "members": { - "registryArn": { + }, + "serviceArn": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the service registry. The currently supported service registry is\n\t\t\tCloud Map. For more information, see CreateService.

" + "smithy.api#documentation": "

The ARN of the service for this service deployment.

" } }, - "port": { - "target": "com.amazonaws.ecs#BoxedInteger", + "clusterArn": { + "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The port value used if your service discovery service specified an SRV record. This\n\t\t\tfield might be used if both the awsvpc network mode and SRV records are\n\t\t\tused.

" + "smithy.api#documentation": "

The ARN of the cluster that hosts the service.

" } }, - "containerName": { + "startedAt": { + "target": "com.amazonaws.ecs#Timestamp", + "traits": { + "smithy.api#documentation": "

The time that the service deployment statred. The format is yyyy-MM-dd\n\t\t\tHH:mm:ss.SSSSSS.

" + } + }, + "createdAt": { + "target": "com.amazonaws.ecs#Timestamp", + "traits": { + "smithy.api#documentation": "

The time that the service deployment was created. The format is yyyy-MM-dd\n\t\t\tHH:mm:ss.SSSSSS.

" + } + }, + "finishedAt": { + "target": "com.amazonaws.ecs#Timestamp", + "traits": { + "smithy.api#documentation": "

The time that the service deployment completed. The format is yyyy-MM-dd\n\t\t\tHH:mm:ss.SSSSSS.

" + } + }, + "targetServiceRevisionArn": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The container name value to be used for your service discovery service. It's already\n\t\t\tspecified in the task definition. If the task definition that your service task\n\t\t\tspecifies uses the bridge or host network mode, you must\n\t\t\tspecify a containerName and containerPort combination from the\n\t\t\ttask definition. If the task definition that your service task specifies uses the\n\t\t\t\tawsvpc network mode and a type SRV DNS record is used, you must specify\n\t\t\teither a containerName and containerPort combination or a\n\t\t\t\tport value. However, you can't specify both.

" + "smithy.api#documentation": "

The ARN of the service revision being deplyed.

" } }, - "containerPort": { - "target": "com.amazonaws.ecs#BoxedInteger", + "status": { + "target": "com.amazonaws.ecs#ServiceDeploymentStatus", "traits": { - "smithy.api#documentation": "

The port value to be used for your service discovery service. It's already specified\n\t\t\tin the task definition. If the task definition your service task specifies uses the\n\t\t\t\tbridge or host network mode, you must specify a\n\t\t\t\tcontainerName and containerPort combination from the task\n\t\t\tdefinition. If the task definition your service task specifies uses the\n\t\t\t\tawsvpc network mode and a type SRV DNS record is used, you must specify\n\t\t\teither a containerName and containerPort combination or a\n\t\t\t\tport value. However, you can't specify both.

" + "smithy.api#documentation": "

The status of the service deployment

" + } + }, + "statusReason": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

Information about why the service deployment is in the current status. For example,\n\t\t\tthe circuit breaker detected a deployment failure.

" } } }, "traits": { - "smithy.api#documentation": "

The details for the service registry.

\n

Each service may be associated with one service registry. Multiple service registries\n\t\t\tfor each service are not supported.

\n

When you add, update, or remove the service registries configuration, Amazon ECS starts a\n\t\t\tnew deployment. New tasks are registered and deregistered to the updated service\n\t\t\tregistry configuration.

" + "smithy.api#documentation": "

The service deployment properties that are retured when you call\n\t\t\t\tListServiceDeployments.

\n

This provides a high-level overview of the service deployment.

" } }, - "com.amazonaws.ecs#ServiceVolumeConfiguration": { + "com.amazonaws.ecs#ServiceDeploymentCircuitBreaker": { "type": "structure", "members": { - "name": { - "target": "com.amazonaws.ecs#ECSVolumeName", + "status": { + "target": "com.amazonaws.ecs#ServiceDeploymentRollbackMonitorsStatus", "traits": { - "smithy.api#documentation": "

The name of the volume. This value must match the volume name from the\n\t\t\t\tVolume object in the task definition.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The circuit breaker status. Amazon ECS is not using the circuit breaker for service\n\t\t\tdeployment failures when the status is DISABLED.

" } }, - "managedEBSVolume": { - "target": "com.amazonaws.ecs#ServiceManagedEBSVolumeConfiguration", + "failureCount": { + "target": "com.amazonaws.ecs#Integer", "traits": { - "smithy.api#documentation": "

The configuration for the Amazon EBS volume that Amazon ECS creates and manages on your behalf.\n\t\t\tThese settings are used to create each Amazon EBS volume, with one volume created for each\n\t\t\ttask in the service. The Amazon EBS volumes are visible in your account in the Amazon EC2 console\n\t\t\tonce they are created.

" + "smithy.api#default": 0, + "smithy.api#documentation": "

The number of times the circuit breaker detected a service deploymeny failure.

" + } + }, + "threshold": { + "target": "com.amazonaws.ecs#Integer", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The threshhold which determines that the service deployment failed.

\n

The deployment circuit breaker calculates the threshold value, and then uses the value\n\t\t\tto determine when to move the deployment to a FAILED state. The deployment circuit\n\t\t\tbreaker has a minimum threshold of 3 and a maximum threshold of 200. and uses the values\n\t\t\tin the following formula to determine the deployment failure.

\n

\n 0.5 * desired task count\n

" } } }, "traits": { - "smithy.api#documentation": "

The configuration for a volume specified in the task definition as a volume that is\n\t\t\tconfigured at launch time. Currently, the only supported volume type is an Amazon EBS\n\t\t\tvolume.

" - } - }, - "com.amazonaws.ecs#ServiceVolumeConfigurations": { - "type": "list", - "member": { - "target": "com.amazonaws.ecs#ServiceVolumeConfiguration" + "smithy.api#documentation": "

Information about the circuit breaker used to determine when a service deployment has\n\t\t\tfailed.

\n

The deployment circuit breaker is the rolling update mechanism that determines if the\n\t\t\ttasks reach a steady state. The deployment circuit breaker has an option that will\n\t\t\tautomatically roll back a failed deployment to the last cpompleted service revision. For\n\t\t\tmore information, see How the Amazon\n\t\t\t\tECS deployment circuit breaker detects failures in the Amazon ECS\n\t\t\t\tDeveloper Guide.

" + } + }, + "com.amazonaws.ecs#ServiceDeploymentLifecycleStage": { + "type": "enum", + "members": { + "RECONCILE_SERVICE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RECONCILE_SERVICE" + } + }, + "PRE_SCALE_UP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PRE_SCALE_UP" + } + }, + "SCALE_UP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SCALE_UP" + } + }, + "POST_SCALE_UP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "POST_SCALE_UP" + } + }, + "TEST_TRAFFIC_SHIFT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TEST_TRAFFIC_SHIFT" + } + }, + "POST_TEST_TRAFFIC_SHIFT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "POST_TEST_TRAFFIC_SHIFT" + } + }, + "PRODUCTION_TRAFFIC_SHIFT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PRODUCTION_TRAFFIC_SHIFT" + } + }, + "POST_PRODUCTION_TRAFFIC_SHIFT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "POST_PRODUCTION_TRAFFIC_SHIFT" + } + }, + "BAKE_TIME": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BAKE_TIME" + } + }, + "CLEAN_UP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CLEAN_UP" + } + } + } + }, + "com.amazonaws.ecs#ServiceDeploymentNotFoundException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

Message that describes the cause of the exception.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The service deploy ARN that you specified in the StopServiceDeployment doesn't exist. You can use ListServiceDeployments to retrieve the service deployment ARNs.

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.ecs#ServiceDeploymentRollbackMonitorsStatus": { + "type": "enum", + "members": { + "TRIGGERED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TRIGGERED" + } + }, + "MONITORING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MONITORING" + } + }, + "MONITORING_COMPLETE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MONITORING_COMPLETE" + } + }, + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED" + } + } + } + }, + "com.amazonaws.ecs#ServiceDeploymentStatus": { + "type": "enum", + "members": { + "PENDING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PENDING" + } + }, + "SUCCESSFUL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SUCCESSFUL" + } + }, + "STOPPED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STOPPED" + } + }, + "STOP_REQUESTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STOP_REQUESTED" + } + }, + "IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IN_PROGRESS" + } + }, + "ROLLBACK_REQUESTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ROLLBACK_REQUESTED" + } + }, + "ROLLBACK_IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ROLLBACK_IN_PROGRESS" + } + }, + "ROLLBACK_SUCCESSFUL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ROLLBACK_SUCCESSFUL" + } + }, + "ROLLBACK_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ROLLBACK_FAILED" + } + } + } + }, + "com.amazonaws.ecs#ServiceDeploymentStatusList": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#ServiceDeploymentStatus" + } + }, + "com.amazonaws.ecs#ServiceDeployments": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#ServiceDeployment" + } + }, + "com.amazonaws.ecs#ServiceDeploymentsBrief": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#ServiceDeploymentBrief" + } + }, + "com.amazonaws.ecs#ServiceEvent": { + "type": "structure", + "members": { + "id": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The ID string for the event.

" + } + }, + "createdAt": { + "target": "com.amazonaws.ecs#Timestamp", + "traits": { + "smithy.api#documentation": "

The Unix timestamp for the time when the event was triggered.

" + } + }, + "message": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The event message.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The details for an event that's associated with a service.

" + } + }, + "com.amazonaws.ecs#ServiceEvents": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#ServiceEvent" + } + }, + "com.amazonaws.ecs#ServiceField": { + "type": "enum", + "members": { + "TAGS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TAGS" + } + } + } + }, + "com.amazonaws.ecs#ServiceFieldList": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#ServiceField" + } + }, + "com.amazonaws.ecs#ServiceManagedEBSVolumeConfiguration": { + "type": "structure", + "members": { + "encrypted": { + "target": "com.amazonaws.ecs#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

Indicates whether the volume should be encrypted. If you turn on Region-level Amazon EBS\n\t\t\tencryption by default but set this value as false, the setting is\n\t\t\toverridden and the volume is encrypted with the KMS key specified for Amazon EBS encryption\n\t\t\tby default. This parameter maps 1:1 with the Encrypted parameter of the\n\t\t\t\tCreateVolume API in the Amazon EC2 API Reference.

" + } + }, + "kmsKeyId": { + "target": "com.amazonaws.ecs#EBSKMSKeyId", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) identifier of the Amazon Web Services Key Management Service key to use for Amazon EBS encryption. When a key\n\t\t\tis specified using this parameter, it overrides Amazon EBS default encryption or any KMS key\n\t\t\tthat you specified for cluster-level managed storage encryption. This parameter maps 1:1\n\t\t\twith the KmsKeyId parameter of the CreateVolume API in\n\t\t\tthe Amazon EC2 API Reference. For more information about encrypting\n\t\t\tAmazon EBS volumes attached to tasks, see Encrypt data stored in Amazon EBS volumes attached to Amazon ECS tasks.

\n \n

Amazon Web Services authenticates the Amazon Web Services Key Management Service key asynchronously. Therefore, if you specify an\n\t\t\t\tID, alias, or ARN that is invalid, the action can appear to complete, but\n\t\t\t\teventually fails.

\n
" + } + }, + "volumeType": { + "target": "com.amazonaws.ecs#EBSVolumeType", + "traits": { + "smithy.api#documentation": "

The volume type. This parameter maps 1:1 with the VolumeType parameter of\n\t\t\tthe CreateVolume API in the Amazon EC2 API Reference. For more\n\t\t\tinformation, see Amazon EBS volume types in\n\t\t\tthe Amazon EC2 User Guide.

\n

The following are the supported volume types.

\n
    \n
  • \n

    General Purpose SSD: gp2|gp3\n

    \n
  • \n
  • \n

    Provisioned IOPS SSD: io1|io2\n

    \n
  • \n
  • \n

    Throughput Optimized HDD: st1\n

    \n
  • \n
  • \n

    Cold HDD: sc1\n

    \n
  • \n
  • \n

    Magnetic: standard\n

    \n \n

    The magnetic volume type is not supported on Fargate.

    \n
    \n
  • \n
" + } + }, + "sizeInGiB": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The size of the volume in GiB. You must specify either a volume size or a snapshot ID.\n\t\t\tIf you specify a snapshot ID, the snapshot size is used for the volume size by default.\n\t\t\tYou can optionally specify a volume size greater than or equal to the snapshot size.\n\t\t\tThis parameter maps 1:1 with the Size parameter of the CreateVolume API in the Amazon EC2 API Reference.

\n

The following are the supported volume size values for each volume type.

\n
    \n
  • \n

    \n gp2 and gp3: 1-16,384

    \n
  • \n
  • \n

    \n io1 and io2: 4-16,384

    \n
  • \n
  • \n

    \n st1 and sc1: 125-16,384

    \n
  • \n
  • \n

    \n standard: 1-1,024

    \n
  • \n
" + } + }, + "snapshotId": { + "target": "com.amazonaws.ecs#EBSSnapshotId", + "traits": { + "smithy.api#documentation": "

The snapshot that Amazon ECS uses to create volumes for attachment to tasks maintained by\n\t\t\tthe service. You must specify either snapshotId or sizeInGiB\n\t\t\tin your volume configuration. This parameter maps 1:1 with the SnapshotId\n\t\t\tparameter of the CreateVolume API in\n\t\t\tthe Amazon EC2 API Reference.

" + } + }, + "volumeInitializationRate": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The rate, in MiB/s, at which data is fetched from a snapshot of an existing EBS volume\n\t\t\tto create new volumes for attachment to the tasks maintained by the service. This\n\t\t\tproperty can be specified only if you specify a snapshotId. For more\n\t\t\tinformation, see Initialize Amazon EBS volumes in the Amazon EBS User\n\t\t\t\tGuide.

" + } + }, + "iops": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The number of I/O operations per second (IOPS). For gp3,\n\t\t\tio1, and io2 volumes, this represents the number of IOPS that\n\t\t\tare provisioned for the volume. For gp2 volumes, this represents the\n\t\t\tbaseline performance of the volume and the rate at which the volume accumulates I/O\n\t\t\tcredits for bursting.

\n

The following are the supported values for each volume type.

\n
    \n
  • \n

    \n gp3: 3,000 - 16,000 IOPS

    \n
  • \n
  • \n

    \n io1: 100 - 64,000 IOPS

    \n
  • \n
  • \n

    \n io2: 100 - 256,000 IOPS

    \n
  • \n
\n

This parameter is required for io1 and io2 volume types. The\n\t\t\tdefault for gp3 volumes is 3,000 IOPS. This parameter is not\n\t\t\tsupported for st1, sc1, or standard volume\n\t\t\ttypes.

\n

This parameter maps 1:1 with the Iops parameter of the CreateVolume API in the Amazon EC2 API Reference.

" + } + }, + "throughput": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The throughput to provision for a volume, in MiB/s, with a maximum of 1,000 MiB/s.\n\t\t\tThis parameter maps 1:1 with the Throughput parameter of the CreateVolume API in the Amazon EC2 API Reference.

\n \n

This parameter is only supported for the gp3 volume type.

\n
" + } + }, + "tagSpecifications": { + "target": "com.amazonaws.ecs#EBSTagSpecifications", + "traits": { + "smithy.api#documentation": "

The tags to apply to the volume. Amazon ECS applies service-managed tags by default. This\n\t\t\tparameter maps 1:1 with the TagSpecifications.N parameter of the CreateVolume API in the Amazon EC2 API Reference.

" + } + }, + "roleArn": { + "target": "com.amazonaws.ecs#IAMRoleArn", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM role to associate with this volume. This is the Amazon ECS\n\t\t\tinfrastructure IAM role that is used to manage your Amazon Web Services infrastructure. We recommend\n\t\t\tusing the Amazon ECS-managed AmazonECSInfrastructureRolePolicyForVolumes IAM\n\t\t\tpolicy with this role. For more information, see Amazon ECS\n\t\t\t\tinfrastructure IAM role in the Amazon ECS Developer\n\t\t\tGuide.

", + "smithy.api#required": {} + } + }, + "filesystemType": { + "target": "com.amazonaws.ecs#TaskFilesystemType", + "traits": { + "smithy.api#documentation": "

The filesystem type for the volume. For volumes created from a snapshot, you must\n\t\t\tspecify the same filesystem type that the volume was using when the snapshot was\n\t\t\tcreated. If there is a filesystem type mismatch, the tasks will fail to start.

\n

The available Linux filesystem types are\u2028 ext3, ext4, and\n\t\t\t\txfs. If no value is specified, the xfs filesystem type is\n\t\t\tused by default.

\n

The available Windows filesystem types are NTFS.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration for the Amazon EBS volume that Amazon ECS creates and manages on your behalf.\n\t\t\tThese settings are used to create each Amazon EBS volume, with one volume created for each\n\t\t\ttask in the service. For information about the supported launch types and operating\n\t\t\tsystems, see Supported operating systems and launch types in the Amazon Elastic Container Service\n\t\t\t\tDeveloper Guide.

\n

Many of these parameters map 1:1 with the Amazon EBS CreateVolume API request\n\t\t\tparameters.

" + } + }, + "com.amazonaws.ecs#ServiceNotActiveException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

Message that describes the cause of the exception.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The specified service isn't active. You can't update a service that's inactive. If you\n\t\t\thave previously deleted a service, you can re-create it with CreateService.

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.ecs#ServiceNotFoundException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

Message that describes the cause of the exception.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The specified service wasn't found. You can view your available services with ListServices. Amazon ECS services are cluster specific and Region\n\t\t\tspecific.

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.ecs#ServiceRegistries": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#ServiceRegistry" + } + }, + "com.amazonaws.ecs#ServiceRegistry": { + "type": "structure", + "members": { + "registryArn": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the service registry. The currently supported service registry is\n\t\t\tCloud Map. For more information, see CreateService.

" + } + }, + "port": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The port value used if your service discovery service specified an SRV record. This\n\t\t\tfield might be used if both the awsvpc network mode and SRV records are\n\t\t\tused.

" + } + }, + "containerName": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The container name value to be used for your service discovery service. It's already\n\t\t\tspecified in the task definition. If the task definition that your service task\n\t\t\tspecifies uses the bridge or host network mode, you must\n\t\t\tspecify a containerName and containerPort combination from the\n\t\t\ttask definition. If the task definition that your service task specifies uses the\n\t\t\t\tawsvpc network mode and a type SRV DNS record is used, you must specify\n\t\t\teither a containerName and containerPort combination or a\n\t\t\t\tport value. However, you can't specify both.

" + } + }, + "containerPort": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The port value to be used for your service discovery service. It's already specified\n\t\t\tin the task definition. If the task definition your service task specifies uses the\n\t\t\t\tbridge or host network mode, you must specify a\n\t\t\t\tcontainerName and containerPort combination from the task\n\t\t\tdefinition. If the task definition your service task specifies uses the\n\t\t\t\tawsvpc network mode and a type SRV DNS record is used, you must specify\n\t\t\teither a containerName and containerPort combination or a\n\t\t\t\tport value. However, you can't specify both.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The details for the service registry.

\n

Each service may be associated with one service registry. Multiple service registries\n\t\t\tfor each service are not supported.

\n

When you add, update, or remove the service registries configuration, Amazon ECS starts a\n\t\t\tnew deployment. New tasks are registered and deregistered to the updated service\n\t\t\tregistry configuration.

" + } + }, + "com.amazonaws.ecs#ServiceRevision": { + "type": "structure", + "members": { + "serviceRevisionArn": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The ARN of the service revision.

" + } + }, + "serviceArn": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The ARN of the service for the service revision.

" + } + }, + "clusterArn": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The ARN of the cluster that hosts the service.

" + } + }, + "taskDefinition": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The task definition the service revision uses.

" + } + }, + "capacityProviderStrategy": { + "target": "com.amazonaws.ecs#CapacityProviderStrategy", + "traits": { + "smithy.api#documentation": "

The capacity provider strategy the service revision uses.

" + } + }, + "launchType": { + "target": "com.amazonaws.ecs#LaunchType", + "traits": { + "smithy.api#documentation": "

The launch type the service revision uses.

" + } + }, + "platformVersion": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

For the Fargate launch type, the platform version the service revision uses.

" + } + }, + "platformFamily": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The platform family the service revision uses.

" + } + }, + "loadBalancers": { + "target": "com.amazonaws.ecs#LoadBalancers", + "traits": { + "smithy.api#documentation": "

The load balancers the service revision uses.

" + } + }, + "serviceRegistries": { + "target": "com.amazonaws.ecs#ServiceRegistries", + "traits": { + "smithy.api#documentation": "

The service registries (for Service Discovery) the service revision uses.

" + } + }, + "networkConfiguration": { + "target": "com.amazonaws.ecs#NetworkConfiguration" + }, + "containerImages": { + "target": "com.amazonaws.ecs#ContainerImages", + "traits": { + "smithy.api#documentation": "

The container images the service revision uses.

" + } + }, + "guardDutyEnabled": { + "target": "com.amazonaws.ecs#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Indicates whether Runtime Monitoring is turned on.

" + } + }, + "serviceConnectConfiguration": { + "target": "com.amazonaws.ecs#ServiceConnectConfiguration" + }, + "volumeConfigurations": { + "target": "com.amazonaws.ecs#ServiceVolumeConfigurations", + "traits": { + "smithy.api#documentation": "

The volumes that are configured at deployment that the service revision uses.

" + } + }, + "fargateEphemeralStorage": { + "target": "com.amazonaws.ecs#DeploymentEphemeralStorage" + }, + "createdAt": { + "target": "com.amazonaws.ecs#Timestamp", + "traits": { + "smithy.api#documentation": "

The time that the service revision was created. The format is yyyy-mm-dd\n\t\t\tHH:mm:ss.SSSSS.

" + } + }, + "vpcLatticeConfigurations": { + "target": "com.amazonaws.ecs#VpcLatticeConfigurations", + "traits": { + "smithy.api#documentation": "

The VPC Lattice configuration for the service revision.

" + } + }, + "resolvedConfiguration": { + "target": "com.amazonaws.ecs#ResolvedConfiguration", + "traits": { + "smithy.api#documentation": "

The resolved configuration for the service revision which contains the actual resources your service revision uses, such as which target groups serve traffic.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about the service revision.

\n

A service revision contains a record of the workload configuration Amazon ECS is attempting\n\t\t\tto deploy. Whenever you create or deploy a service, Amazon ECS automatically creates and\n\t\t\tcaptures the configuration that you're trying to deploy in the service revision. For\n\t\t\tinformation about service revisions, see Amazon ECS service\n\t\t\t\trevisions in the \n Amazon Elastic Container Service Developer Guide\n .

" + } + }, + "com.amazonaws.ecs#ServiceRevisionLoadBalancer": { + "type": "structure", + "members": { + "targetGroupArn": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the target group associated with the service revision.

" + } + }, + "productionListenerRule": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the production listener rule or listener that directs traffic to the target group associated with the service revision.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The resolved load balancer configuration for a service revision. This includes information about which target groups serve traffic and which listener rules direct traffic to them.

" + } + }, + "com.amazonaws.ecs#ServiceRevisionLoadBalancers": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#ServiceRevisionLoadBalancer" + } + }, + "com.amazonaws.ecs#ServiceRevisionSummary": { + "type": "structure", + "members": { + "arn": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The ARN of the service revision.

" + } + }, + "requestedTaskCount": { + "target": "com.amazonaws.ecs#Integer", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The number of requested tasks for the service revision.

" + } + }, + "runningTaskCount": { + "target": "com.amazonaws.ecs#Integer", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The number of running tasks for the service revision.

" + } + }, + "pendingTaskCount": { + "target": "com.amazonaws.ecs#Integer", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The number of pending tasks for the service revision.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The information about the number of requested, pending, and running tasks for a\n\t\t\tservice revision.

" + } + }, + "com.amazonaws.ecs#ServiceRevisions": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#ServiceRevision" + } + }, + "com.amazonaws.ecs#ServiceRevisionsSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#ServiceRevisionSummary" + } + }, + "com.amazonaws.ecs#ServiceVolumeConfiguration": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.ecs#ECSVolumeName", + "traits": { + "smithy.api#documentation": "

The name of the volume. This value must match the volume name from the\n\t\t\t\tVolume object in the task definition.

", + "smithy.api#required": {} + } + }, + "managedEBSVolume": { + "target": "com.amazonaws.ecs#ServiceManagedEBSVolumeConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration for the Amazon EBS volume that Amazon ECS creates and manages on your behalf.\n\t\t\tThese settings are used to create each Amazon EBS volume, with one volume created for each\n\t\t\ttask in the service. The Amazon EBS volumes are visible in your account in the Amazon EC2 console\n\t\t\tonce they are created.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration for a volume specified in the task definition as a volume that is\n\t\t\tconfigured at launch time. Currently, the only supported volume type is an Amazon EBS\n\t\t\tvolume.

" + } + }, + "com.amazonaws.ecs#ServiceVolumeConfigurations": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#ServiceVolumeConfiguration" } }, "com.amazonaws.ecs#Services": { @@ -10494,6 +13467,12 @@ "traits": { "smithy.api#enumValue": "guardDutyActivate" } + }, + "DEFAULT_LOG_DRIVER_MODE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "defaultLogDriverMode" + } } } }, @@ -10580,7 +13559,59 @@ } ], "traits": { - "smithy.api#documentation": "

Starts a new task from the specified task definition on the specified container\n\t\t\tinstance or instances.

\n \n

On March 21, 2024, a change was made to resolve the task definition revision before authorization. When a task definition revision is not specified, authorization will occur using the latest revision of a task definition.

\n
\n

Starting April 15, 2023, Amazon Web Services will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS, or Amazon EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.

\n

Alternatively, you can use RunTask to place tasks for you. For more\n\t\t\tinformation, see Scheduling Tasks in the Amazon Elastic Container Service Developer Guide.

\n

You can attach Amazon EBS volumes to Amazon ECS tasks by configuring the volume when creating or\n\t\t\tupdating a service. For more infomation, see Amazon EBS volumes in the Amazon Elastic Container Service Developer Guide.

" + "smithy.api#documentation": "

Starts a new task from the specified task definition on the specified container\n\t\t\tinstance or instances.

\n \n

On March 21, 2024, a change was made to resolve the task definition revision before authorization. When a task definition revision is not specified, authorization will occur using the latest revision of a task definition.

\n
\n \n

Amazon Elastic Inference (EI) is no longer available to customers.

\n
\n

Alternatively, you can useRunTask to place tasks for you. For more\n\t\t\tinformation, see Scheduling Tasks in the Amazon Elastic Container Service Developer Guide.

\n

You can attach Amazon EBS volumes to Amazon ECS tasks by configuring the volume when creating or\n\t\t\tupdating a service. For more information, see Amazon EBS volumes in the Amazon Elastic Container Service Developer Guide.

", + "smithy.api#examples": [ + { + "title": "To start a new task", + "documentation": "This example starts a new task in the cluster \"MyCluster\" on the specified container instance using the latest revision of the \"hello-world\" task definition.", + "input": { + "cluster": "MyCluster", + "containerInstances": [ + "4c543eed-f83f-47da-b1d8-3d23f1da4c64" + ], + "taskDefinition": "hello-world" + }, + "output": { + "tasks": [ + { + "clusterArn": "arn:aws:ecs:us-east-1:012345678910:cluster/default", + "containerInstanceArn": "arn:aws:ecs:us-east-1:012345678910:container-instance/default/4c543eed-f83f-47da-b1d8-3d23f1da4c64", + "containers": [ + { + "containerArn": "arn:aws:ecs:us-east-1:012345678910:container/e76594d4-27e1-4c74-98b5-46a6435eb769", + "lastStatus": "PENDING", + "name": "wordpress", + "taskArn": "arn:aws:ecs:us-east-1:012345678910:task/default/fdf2c302-468c-4e55-b884-5331d816e7fb" + }, + { + "containerArn": "arn:aws:ecs:us-east-1:012345678910:container/default/b19106ea-4fa8-4f1d-9767-96922c82b070", + "lastStatus": "PENDING", + "name": "mysql", + "taskArn": "arn:aws:ecs:us-east-1:012345678910:task/default/fdf2c302-468c-4e55-b884-5331d816e7fb" + } + ], + "createdAt": 1.479765460842E9, + "desiredStatus": "RUNNING", + "lastStatus": "PENDING", + "overrides": { + "containerOverrides": [ + { + "name": "wordpress" + }, + { + "name": "mysql" + } + ] + }, + "taskArn": "arn:aws:ecs:us-east-1:012345678910:task/default/fdf2c302-468c-4e55-b884-5331d816e7fb", + "taskDefinitionArn": "arn:aws:ecs:us-east-1:012345678910:task-definition/hello_world:6", + "version": 1 + } + ], + "failures": [] + } + } + ] } }, "com.amazonaws.ecs#StartTaskRequest": { @@ -10640,32 +13671,127 @@ "referenceId": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The reference ID to use for the task.

" + "smithy.api#documentation": "

This parameter is only used by Amazon ECS. It is not intended for use by customers.

" } }, "startedBy": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

An optional tag specified when a task is started. For example, if you automatically\n\t\t\ttrigger a task to run a batch process job, you could apply a unique identifier for that\n\t\t\tjob to your task with the startedBy parameter. You can then identify which\n\t\t\ttasks belong to that job by filtering the results of a ListTasks call\n\t\t\twith the startedBy value. Up to 36 letters (uppercase and lowercase),\n\t\t\tnumbers, hyphens (-), and underscores (_) are allowed.

\n

If a task is started by an Amazon ECS service, the startedBy parameter\n\t\t\tcontains the deployment ID of the service that starts it.

" + "smithy.api#documentation": "

An optional tag specified when a task is started. For example, if you automatically\n\t\t\ttrigger a task to run a batch process job, you could apply a unique identifier for that\n\t\t\tjob to your task with the startedBy parameter. You can then identify which\n\t\t\ttasks belong to that job by filtering the results of a ListTasks call with\n\t\t\tthe startedBy value. Up to 36 letters (uppercase and lowercase), numbers,\n\t\t\thyphens (-), forward slash (/), and underscores (_) are allowed.

\n

If a task is started by an Amazon ECS service, the startedBy parameter\n\t\t\tcontains the deployment ID of the service that starts it.

" + } + }, + "tags": { + "target": "com.amazonaws.ecs#Tags", + "traits": { + "smithy.api#documentation": "

The metadata that you apply to the task to help you categorize and organize them. Each\n\t\t\ttag consists of a key and an optional value, both of which you define.

\n

The following basic restrictions apply to tags:

\n
    \n
  • \n

    Maximum number of tags per resource - 50

    \n
  • \n
  • \n

    For each resource, each tag key must be unique, and each tag key can have only\n one value.

    \n
  • \n
  • \n

    Maximum key length - 128 Unicode characters in UTF-8

    \n
  • \n
  • \n

    Maximum value length - 256 Unicode characters in UTF-8

    \n
  • \n
  • \n

    If your tagging schema is used across multiple services and resources,\n remember that other services may have restrictions on allowed characters.\n Generally allowed characters are: letters, numbers, and spaces representable in\n UTF-8, and the following characters: + - = . _ : / @.

    \n
  • \n
  • \n

    Tag keys and values are case-sensitive.

    \n
  • \n
  • \n

    Do not use aws:, AWS:, or any upper or lowercase\n combination of such as a prefix for either keys or values as it is reserved for\n Amazon Web Services use. You cannot edit or delete tag keys or values with this prefix. Tags with\n this prefix do not count against your tags per resource limit.

    \n
  • \n
" + } + }, + "taskDefinition": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The family and revision (family:revision) or\n\t\t\tfull ARN of the task definition to start. If a revision isn't specified,\n\t\t\tthe latest ACTIVE revision is used.

", + "smithy.api#required": {} + } + }, + "volumeConfigurations": { + "target": "com.amazonaws.ecs#TaskVolumeConfigurations", + "traits": { + "smithy.api#documentation": "

The details of the volume that was configuredAtLaunch. You can configure\n\t\t\tthe size, volumeType, IOPS, throughput, snapshot and encryption in TaskManagedEBSVolumeConfiguration. The name of the volume must\n\t\t\tmatch the name from the task definition.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.ecs#StartTaskResponse": { + "type": "structure", + "members": { + "tasks": { + "target": "com.amazonaws.ecs#Tasks", + "traits": { + "smithy.api#documentation": "

A full description of the tasks that were started. Each task that was successfully\n\t\t\tplaced on your container instances is described.

" + } + }, + "failures": { + "target": "com.amazonaws.ecs#Failures", + "traits": { + "smithy.api#documentation": "

Any failures associated with the call.

" } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.ecs#Statistics": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#KeyValuePair" + } + }, + "com.amazonaws.ecs#StopServiceDeployment": { + "type": "operation", + "input": { + "target": "com.amazonaws.ecs#StopServiceDeploymentRequest" + }, + "output": { + "target": "com.amazonaws.ecs#StopServiceDeploymentResponse" + }, + "errors": [ + { + "target": "com.amazonaws.ecs#AccessDeniedException" + }, + { + "target": "com.amazonaws.ecs#ClientException" + }, + { + "target": "com.amazonaws.ecs#ConflictException" + }, + { + "target": "com.amazonaws.ecs#InvalidParameterException" + }, + { + "target": "com.amazonaws.ecs#ServerException" }, - "tags": { - "target": "com.amazonaws.ecs#Tags", - "traits": { - "smithy.api#documentation": "

The metadata that you apply to the task to help you categorize and organize them. Each\n\t\t\ttag consists of a key and an optional value, both of which you define.

\n

The following basic restrictions apply to tags:

\n
    \n
  • \n

    Maximum number of tags per resource - 50

    \n
  • \n
  • \n

    For each resource, each tag key must be unique, and each tag key can have only\n one value.

    \n
  • \n
  • \n

    Maximum key length - 128 Unicode characters in UTF-8

    \n
  • \n
  • \n

    Maximum value length - 256 Unicode characters in UTF-8

    \n
  • \n
  • \n

    If your tagging schema is used across multiple services and resources,\n remember that other services may have restrictions on allowed characters.\n Generally allowed characters are: letters, numbers, and spaces representable in\n UTF-8, and the following characters: + - = . _ : / @.

    \n
  • \n
  • \n

    Tag keys and values are case-sensitive.

    \n
  • \n
  • \n

    Do not use aws:, AWS:, or any upper or lowercase\n combination of such as a prefix for either keys or values as it is reserved for\n Amazon Web Services use. You cannot edit or delete tag keys or values with this prefix. Tags with\n this prefix do not count against your tags per resource limit.

    \n
  • \n
" - } + { + "target": "com.amazonaws.ecs#ServiceDeploymentNotFoundException" }, - "taskDefinition": { + { + "target": "com.amazonaws.ecs#UnsupportedFeatureException" + } + ], + "traits": { + "smithy.api#documentation": "

Stops an ongoing service deployment.

\n

The following stop types are avaiable:

\n
    \n
  • \n

    ROLLBACK - This option rolls back the service deployment to the previous\n\t\t\t\t\tservice revision.

    \n

    You can use this option even if you didn't configure the service deployment\n\t\t\t\t\tfor the rollback option.

    \n
  • \n
\n

For more information, see Stopping Amazon ECS\n\t\t\t\tservice deployments in the Amazon Elastic Container Service Developer\n\t\t\tGuide.

", + "smithy.api#examples": [ + { + "title": "To stop a service deployment", + "documentation": "This example stops the service deployment using the ROLLBACK option.", + "input": { + "serviceDeploymentArn": "arn:aws:ecs:us-east-1:123456789012:service-deployment/MyCluster/MyService/r9i43YFjvgF_xlg7m2eJ1r", + "stopType": "ROLLBACK" + }, + "output": { + "serviceDeploymentArn": "arn:aws:ecs:us-east-1:123456789012:service-deployment/MyCluster/MyService/r9i43YFjvgF_xlg7m2eJ1r" + } + } + ] + } + }, + "com.amazonaws.ecs#StopServiceDeploymentRequest": { + "type": "structure", + "members": { + "serviceDeploymentArn": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The family and revision (family:revision) or\n\t\t\tfull ARN of the task definition to start. If a revision isn't specified,\n\t\t\tthe latest ACTIVE revision is used.

", + "smithy.api#documentation": "

The ARN of the service deployment that you want to stop.

", "smithy.api#required": {} } }, - "volumeConfigurations": { - "target": "com.amazonaws.ecs#TaskVolumeConfigurations", + "stopType": { + "target": "com.amazonaws.ecs#StopServiceDeploymentStopType", "traits": { - "smithy.api#documentation": "

The details of the volume that was configuredAtLaunch. You can configure\n\t\t\tthe size, volumeType, IOPS, throughput, snapshot and encryption in TaskManagedEBSVolumeConfiguration. The name of the volume must\n\t\t\tmatch the name from the task definition.

" + "smithy.api#documentation": "

How you want Amazon ECS to stop the service.

\n

The valid values are ROLLBACK.

" } } }, @@ -10673,19 +13799,13 @@ "smithy.api#input": {} } }, - "com.amazonaws.ecs#StartTaskResponse": { + "com.amazonaws.ecs#StopServiceDeploymentResponse": { "type": "structure", "members": { - "tasks": { - "target": "com.amazonaws.ecs#Tasks", - "traits": { - "smithy.api#documentation": "

A full description of the tasks that were started. Each task that was successfully\n\t\t\tplaced on your container instances is described.

" - } - }, - "failures": { - "target": "com.amazonaws.ecs#Failures", + "serviceDeploymentArn": { + "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

Any failures associated with the call.

" + "smithy.api#documentation": "

The ARN of the stopped service deployment.

" } } }, @@ -10693,10 +13813,21 @@ "smithy.api#output": {} } }, - "com.amazonaws.ecs#Statistics": { - "type": "list", - "member": { - "target": "com.amazonaws.ecs#KeyValuePair" + "com.amazonaws.ecs#StopServiceDeploymentStopType": { + "type": "enum", + "members": { + "ABORT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ABORT" + } + }, + "ROLLBACK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ROLLBACK" + } + } } }, "com.amazonaws.ecs#StopTask": { @@ -10722,7 +13853,66 @@ } ], "traits": { - "smithy.api#documentation": "

Stops a running task. Any tags associated with the task will be deleted.

\n

When StopTask is called on a task, the equivalent of docker\n\t\t\t\tstop is issued to the containers running in the task. This results in a\n\t\t\t\tSIGTERM value and a default 30-second timeout, after which the\n\t\t\t\tSIGKILL value is sent and the containers are forcibly stopped. If the\n\t\t\tcontainer handles the SIGTERM value gracefully and exits within 30 seconds\n\t\t\tfrom receiving it, no SIGKILL value is sent.

\n

For Windows containers, POSIX signals do not work and runtime stops the container by sending\n\t\t\ta CTRL_SHUTDOWN_EVENT. For more information, see Unable to react to graceful shutdown\n\t\t\t\tof (Windows) container #25982 on GitHub.

\n \n

The default 30-second timeout can be configured on the Amazon ECS container agent with\n\t\t\t\tthe ECS_CONTAINER_STOP_TIMEOUT variable. For more information, see\n\t\t\t\t\tAmazon ECS Container Agent Configuration in the\n\t\t\t\tAmazon Elastic Container Service Developer Guide.

\n
" + "smithy.api#documentation": "

Stops a running task. Any tags associated with the task will be deleted.

\n

When you call StopTask on a task, the equivalent of docker\n\t\t\t\tstop is issued to the containers running in the task. This results in a\n\t\t\t\tSIGTERM value and a default 30-second timeout, after which the\n\t\t\t\tSIGKILL value is sent and the containers are forcibly stopped. If the\n\t\t\tcontainer handles the SIGTERM value gracefully and exits within 30 seconds\n\t\t\tfrom receiving it, no SIGKILL value is sent.

\n

For Windows containers, POSIX signals do not work and runtime stops the container by\n\t\t\tsending a CTRL_SHUTDOWN_EVENT. For more information, see Unable to react to graceful shutdown\n\t\t\t\tof (Windows) container #25982 on GitHub.

\n \n

The default 30-second timeout can be configured on the Amazon ECS container agent with\n\t\t\t\tthe ECS_CONTAINER_STOP_TIMEOUT variable. For more information, see\n\t\t\t\t\tAmazon ECS Container Agent Configuration in the\n\t\t\t\tAmazon Elastic Container Service Developer Guide.

\n
", + "smithy.api#examples": [ + { + "title": "To stop a task", + "documentation": "This example stops a task with ID \"1dc5c17a-422b-4dc4-b493-371970c6c4d6\" in cluster \"MyCluster\".", + "input": { + "cluster": "MyCluster", + "task": "1dc5c17a-422b-4dc4-b493-371970c6c4d6", + "reason": "testing stop task." + }, + "output": { + "task": { + "clusterArn": "arn:aws:ecs:us-east-1:012345678910:cluster/MyCluster", + "containerInstanceArn": "arn:aws:ecs:us-east-1:012345678910:container-instance/MyCluster/5991d8da-1d59-49d2-a31f-4230f9e73140", + "containers": [ + { + "containerArn": "arn:aws:ecs:us-east-1:012345678910:container/4df26bb4-f057-467b-a079-961675296e64", + "lastStatus": "RUNNING", + "name": "simple-app", + "networkBindings": [ + { + "bindIP": "0.0.0.0", + "containerPort": 80, + "hostPort": 32774, + "protocol": "tcp" + } + ], + "taskArn": "arn:aws:ecs:us-east-1:012345678910:task/MyCluster/1dc5c17a-422b-4dc4-b493-371970c6c4d6" + }, + { + "containerArn": "arn:aws:ecs:us-east-1:012345678910:container/e09064f7-7361-4c87-8ab9-8d073bbdbcb9", + "lastStatus": "RUNNING", + "name": "busybox", + "networkBindings": [], + "taskArn": "arn:aws:ecs:us-east-1:012345678910:task/MyCluster/1dc5c17a-422b-4dc4-b493-371970c6c4d6" + } + ], + "createdAt": 1.476822811295E9, + "desiredStatus": "STOPPED", + "lastStatus": "RUNNING", + "overrides": { + "containerOverrides": [ + { + "name": "simple-app" + }, + { + "name": "busybox" + } + ] + }, + "startedAt": 1.476822833998E9, + "startedBy": "ecs-svc/9223370560032507596", + "stoppedReason": "testing stop task.", + "taskArn": "arn:aws:ecs:us-east-1:012345678910:task/1dc5c17a-422b-4dc4-b493-371970c6c4d6", + "taskDefinitionArn": "arn:aws:ecs:us-east-1:012345678910:task-definition/console-sample-app-dynamic-ports:1", + "version": 0 + } + } + } + ] } }, "com.amazonaws.ecs#StopTaskRequest": { @@ -10737,14 +13927,14 @@ "task": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The task ID of the task to stop.

", + "smithy.api#documentation": "

Thefull Amazon Resource Name (ARN) of the task.

", "smithy.api#required": {} } }, "reason": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

An optional message specified when a task is stopped. For example, if you're using a\n\t\t\tcustom scheduler, you can use this parameter to specify the reason for stopping the task\n\t\t\there, and the message appears in subsequent DescribeTasks API\n\t\t\toperations on this task.

" + "smithy.api#documentation": "

An optional message specified when a task is stopped. For example, if you're using a\n\t\t\tcustom scheduler, you can use this parameter to specify the reason for stopping the task\n\t\t\there, and the message appears in subsequent DescribeTasks>\n\t\t\tAPI operations on this task.

" } } }, @@ -11058,12 +14248,12 @@ "value": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The namespaced kernel parameter to set a value for.

\n

Valid IPC namespace values: \"kernel.msgmax\" | \"kernel.msgmnb\" | \"kernel.msgmni\"\n\t\t\t\t| \"kernel.sem\" | \"kernel.shmall\" | \"kernel.shmmax\" | \"kernel.shmmni\" |\n\t\t\t\t\"kernel.shm_rmid_forced\", and Sysctls that start with\n\t\t\t\t\"fs.mqueue.*\"\n

\n

Valid network namespace values: Sysctls that start with\n\t\t\t\t\"net.*\"\n

\n

All of these values are supported by Fargate.

" + "smithy.api#documentation": "

The namespaced kernel parameter to set a value for.

\n

Valid IPC namespace values: \"kernel.msgmax\" | \"kernel.msgmnb\" | \"kernel.msgmni\"\n\t\t\t\t| \"kernel.sem\" | \"kernel.shmall\" | \"kernel.shmmax\" | \"kernel.shmmni\" |\n\t\t\t\t\"kernel.shm_rmid_forced\", and Sysctls that start with\n\t\t\t\t\"fs.mqueue.*\"\n

\n

Valid network namespace values: Sysctls that start with\n\t\t\t\t\"net.*\". Only namespaced Sysctls that exist within the\n\t\t\tcontainer starting with \"net.* are accepted.

\n

All of these values are supported by Fargate.

" } } }, "traits": { - "smithy.api#documentation": "

A list of namespaced kernel parameters to set in the container. This parameter maps to\n\t\t\t\tSysctls in the Create a container section of the\n\t\t\tDocker Remote API and the --sysctl option to docker run. For example, you can configure\n\t\t\t\tnet.ipv4.tcp_keepalive_time setting to maintain longer lived\n\t\t\tconnections.

\n

We don't recommend that you specify network-related systemControls\n\t\t\tparameters for multiple containers in a single task that also uses either the\n\t\t\t\tawsvpc or host network mode. Doing this has the following\n\t\t\tdisadvantages:

\n
    \n
  • \n

    For tasks that use the awsvpc network mode including Fargate,\n\t\t\t\t\tif you set systemControls for any container, it applies to all\n\t\t\t\t\tcontainers in the task. If you set different systemControls for\n\t\t\t\t\tmultiple containers in a single task, the container that's started last\n\t\t\t\t\tdetermines which systemControls take effect.

    \n
  • \n
  • \n

    For tasks that use the host network mode, the network namespace\n\t\t\t\t\t\tsystemControls aren't supported.

    \n
  • \n
\n

If you're setting an IPC resource namespace to use for the containers in the task, the\n\t\t\tfollowing conditions apply to your system controls. For more information, see IPC mode.

\n
    \n
  • \n

    For tasks that use the host IPC mode, IPC namespace\n\t\t\t\t\t\tsystemControls aren't supported.

    \n
  • \n
  • \n

    For tasks that use the task IPC mode, IPC namespace\n\t\t\t\t\t\tsystemControls values apply to all containers within a\n\t\t\t\t\ttask.

    \n
  • \n
\n \n

This parameter is not supported for Windows containers.

\n
\n \n

This parameter is only supported for tasks that are hosted on\n Fargate if the tasks are using platform version 1.4.0 or later\n (Linux). This isn't supported for Windows containers on\n Fargate.

\n
" + "smithy.api#documentation": "

A list of namespaced kernel parameters to set in the container. This parameter maps to\n\t\t\t\tSysctls in the docker container create command and the\n\t\t\t\t--sysctl option to docker run. For example, you can configure\n\t\t\t\tnet.ipv4.tcp_keepalive_time setting to maintain longer lived\n\t\t\tconnections.

\n

We don't recommend that you specify network-related systemControls\n\t\t\tparameters for multiple containers in a single task that also uses either the\n\t\t\t\tawsvpc or host network mode. Doing this has the following\n\t\t\tdisadvantages:

\n
    \n
  • \n

    For tasks that use the awsvpc network mode including Fargate,\n\t\t\t\t\tif you set systemControls for any container, it applies to all\n\t\t\t\t\tcontainers in the task. If you set different systemControls for\n\t\t\t\t\tmultiple containers in a single task, the container that's started last\n\t\t\t\t\tdetermines which systemControls take effect.

    \n
  • \n
  • \n

    For tasks that use the host network mode, the network namespace\n\t\t\t\t\t\tsystemControls aren't supported.

    \n
  • \n
\n

If you're setting an IPC resource namespace to use for the containers in the task, the\n\t\t\tfollowing conditions apply to your system controls. For more information, see IPC mode.

\n
    \n
  • \n

    For tasks that use the host IPC mode, IPC namespace\n\t\t\t\t\t\tsystemControls aren't supported.

    \n
  • \n
  • \n

    For tasks that use the task IPC mode, IPC namespace\n\t\t\t\t\t\tsystemControls values apply to all containers within a\n\t\t\t\t\ttask.

    \n
  • \n
\n \n

This parameter is not supported for Windows containers.

\n
\n \n

This parameter is only supported for tasks that are hosted on\n Fargate if the tasks are using platform version 1.4.0 or later\n (Linux). This isn't supported for Windows containers on\n Fargate.

\n
" } }, "com.amazonaws.ecs#SystemControls": { @@ -11159,7 +14349,7 @@ "resourceArn": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the resource to add tags to. Currently, the supported resources are\n\t\t\tAmazon ECS capacity providers, tasks, services, task definitions, clusters, and container\n\t\t\tinstances.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the resource to add tags to. Currently, the supported resources are\n\t\t\tAmazon ECS capacity providers, tasks, services, task definitions, clusters, and container\n\t\t\tinstances.

\n

In order to tag a service that has the following ARN format, you need to migrate the\n\t\t\tservice to the long ARN. For more information, see Migrate an Amazon ECS short service ARN to a long ARN in the Amazon Elastic Container Service\n\t\t\t\tDeveloper Guide.

\n

\n arn:aws:ecs:region:aws_account_id:service/service-name\n

\n

After the migration is complete, the service has the long ARN format, as shown below. Use this ARN to tag the service.

\n

\n arn:aws:ecs:region:aws_account_id:service/cluster-name/service-name\n

\n

If you try to tag a service with a short ARN, you receive an\n\t\t\t\tInvalidParameterException error.

", "smithy.api#required": {} } }, @@ -11230,7 +14420,7 @@ } }, "traits": { - "smithy.api#documentation": "

The specified target wasn't found. You can view your available container instances\n\t\t\twith ListContainerInstances. Amazon ECS container instances are\n\t\t\tcluster-specific and Region-specific.

", + "smithy.api#documentation": "

The specified target wasn't found. You can view your available container instances\n\t\t\twith ListContainerInstances. Amazon ECS container instances are cluster-specific and\n\t\t\tRegion-specific.

", "smithy.api#error": "client" } }, @@ -11305,7 +14495,7 @@ "cpu": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The number of CPU units used by the task as expressed in a task definition. It can be\n\t\t\texpressed as an integer using CPU units (for example, 1024). It can also be\n\t\t\texpressed as a string using vCPUs (for example, 1 vCPU or 1\n\t\t\t\tvcpu). String values are converted to an integer that indicates the CPU units\n\t\t\twhen the task definition is registered.

\n

If you use the EC2 launch type, this field is optional. Supported values\n\t\t\tare between 128 CPU units (0.125 vCPUs) and 10240\n\t\t\tCPU units (10 vCPUs).

\n

If you use the Fargate launch type, this field is required. You must use\n\t\t\tone of the following values. These values determine the range of supported values for\n\t\t\tthe memory parameter:

\n

The CPU units cannot be less than 1 vCPU when you use Windows containers on\n\t\t\tFargate.

\n
    \n
  • \n

    256 (.25 vCPU) - Available memory values: 512 (0.5 GB), 1024 (1 GB), 2048 (2 GB)

    \n
  • \n
  • \n

    512 (.5 vCPU) - Available memory values: 1024 (1 GB), 2048 (2 GB), 3072 (3 GB), 4096 (4 GB)

    \n
  • \n
  • \n

    1024 (1 vCPU) - Available memory values: 2048 (2 GB), 3072 (3 GB), 4096 (4 GB), 5120 (5 GB), 6144 (6 GB), 7168 (7 GB), 8192 (8 GB)

    \n
  • \n
  • \n

    2048 (2 vCPU) - Available memory values: 4096 (4 GB) and 16384 (16 GB) in increments of 1024 (1 GB)

    \n
  • \n
  • \n

    4096 (4 vCPU) - Available memory values: 8192 (8 GB) and 30720 (30 GB) in increments of 1024 (1 GB)

    \n
  • \n
  • \n

    8192 (8 vCPU) - Available memory values: 16 GB and 60 GB in 4 GB increments

    \n

    This option requires Linux platform 1.4.0 or\n later.

    \n
  • \n
  • \n

    16384 (16vCPU) - Available memory values: 32GB and 120 GB in 8 GB increments

    \n

    This option requires Linux platform 1.4.0 or\n later.

    \n
  • \n
" + "smithy.api#documentation": "

The number of CPU units used by the task as expressed in a task definition. It can be\n\t\t\texpressed as an integer using CPU units (for example, 1024). It can also be\n\t\t\texpressed as a string using vCPUs (for example, 1 vCPU or 1\n\t\t\t\tvcpu). String values are converted to an integer that indicates the CPU units\n\t\t\twhen the task definition is registered.

\n

If you're using the EC2 launch type or the external launch type, this field is\n\t\t\toptional. Supported values are between 128 CPU units (0.125\n\t\t\tvCPUs) and 196608 CPU units (192 vCPUs). If you do not specify\n\t\t\ta value, the parameter is ignored.

\n

This field is required for Fargate. For information about the valid values, see Task size in the Amazon Elastic Container Service Developer Guide.

" } }, "createdAt": { @@ -11501,19 +14691,19 @@ "taskRoleArn": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The short name or full Amazon Resource Name (ARN) of the Identity and Access Management role that grants containers in the\n\t\t\ttask permission to call Amazon Web Services APIs on your behalf. For more information, see Amazon ECS\n\t\t\t\tTask Role in the Amazon Elastic Container Service Developer Guide.

\n

IAM roles for tasks on Windows require that the -EnableTaskIAMRole\n\t\t\toption is set when you launch the Amazon ECS-optimized Windows AMI. Your containers must also run some\n\t\t\tconfiguration code to use the feature. For more information, see Windows IAM roles\n\t\t\t\tfor tasks in the Amazon Elastic Container Service Developer Guide.

" + "smithy.api#documentation": "

The short name or full Amazon Resource Name (ARN) of the Identity and Access Management role that grants containers in the\n\t\t\ttask permission to call Amazon Web Services APIs on your behalf. For informationabout the required\n\t\t\tIAM roles for Amazon ECS, see IAM\n\t\t\t\troles for Amazon ECS in the Amazon Elastic Container Service Developer Guide.

" } }, "executionRoleArn": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the task execution role that grants the Amazon ECS container agent\n permission to make Amazon Web Services API calls on your behalf. The task execution IAM role is required\n depending on the requirements of your task. For more information, see Amazon ECS task\n execution IAM role in the Amazon Elastic Container Service Developer Guide.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the task execution role that grants the Amazon ECS container agent\n permission to make Amazon Web Services API calls on your behalf. For informationabout the required IAM roles for Amazon ECS, see IAM roles for Amazon ECS in the Amazon Elastic Container Service Developer Guide.

" } }, "networkMode": { "target": "com.amazonaws.ecs#NetworkMode", "traits": { - "smithy.api#documentation": "

The Docker networking mode to use for the containers in the task. The valid values are\n none, bridge, awsvpc, and host.\n If no network mode is specified, the default is bridge.

\n

For Amazon ECS tasks on Fargate, the awsvpc network mode is required. \n For Amazon ECS tasks on Amazon EC2 Linux instances, any network mode can be used. For Amazon ECS tasks on Amazon EC2 Windows instances, or awsvpc can be used. If the network\n mode is set to none, you cannot specify port mappings in your container\n definitions, and the tasks containers do not have external connectivity. The\n host and awsvpc network modes offer the highest networking\n performance for containers because they use the EC2 network stack instead of the\n virtualized network stack provided by the bridge mode.

\n

With the host and awsvpc network modes, exposed container\n ports are mapped directly to the corresponding host port (for the host\n network mode) or the attached elastic network interface port (for the\n awsvpc network mode), so you cannot take advantage of dynamic host port\n mappings.

\n \n

When using the host network mode, you should not run\n containers using the root user (UID 0). It is considered best practice\n to use a non-root user.

\n
\n

If the network mode is awsvpc, the task is allocated an elastic network\n interface, and you must specify a NetworkConfiguration value when you create\n a service or run a task with the task definition. For more information, see Task Networking in the\n Amazon Elastic Container Service Developer Guide.

\n

If the network mode is host, you cannot run multiple instantiations of the\n same task on a single container instance when port mappings are used.

\n

For more information, see Network\n settings in the Docker run reference.

" + "smithy.api#documentation": "

The Docker networking mode to use for the containers in the task. The valid values are\n none, bridge, awsvpc, and host.\n If no network mode is specified, the default is bridge.

\n

For Amazon ECS tasks on Fargate, the awsvpc network mode is required. \n For Amazon ECS tasks on Amazon EC2 Linux instances, any network mode can be used. For Amazon ECS tasks on Amazon EC2 Windows instances, or awsvpc can be used. If the network\n mode is set to none, you cannot specify port mappings in your container\n definitions, and the tasks containers do not have external connectivity. The\n host and awsvpc network modes offer the highest networking\n performance for containers because they use the EC2 network stack instead of the\n virtualized network stack provided by the bridge mode.

\n

With the host and awsvpc network modes, exposed container\n ports are mapped directly to the corresponding host port (for the host\n network mode) or the attached elastic network interface port (for the\n awsvpc network mode), so you cannot take advantage of dynamic host port\n mappings.

\n \n

When using the host network mode, you should not run\n containers using the root user (UID 0). It is considered best practice\n to use a non-root user.

\n
\n

If the network mode is awsvpc, the task is allocated an elastic network\n interface, and you must specify a NetworkConfiguration value when you create\n a service or run a task with the task definition. For more information, see Task Networking in the\n Amazon Elastic Container Service Developer Guide.

\n

If the network mode is host, you cannot run multiple instantiations of the\n same task on a single container instance when port mappings are used.

" } }, "revision": { @@ -11538,7 +14728,7 @@ "requiresAttributes": { "target": "com.amazonaws.ecs#RequiresAttributes", "traits": { - "smithy.api#documentation": "

The container instance attributes required by your task. When an Amazon EC2 instance is\n\t\t\tregistered to your cluster, the Amazon ECS container agent assigns some standard attributes\n\t\t\tto the instance. You can apply custom attributes. These are specified as key-value pairs\n\t\t\tusing the Amazon ECS console or the PutAttributes API. These attributes are\n\t\t\tused when determining task placement for tasks hosted on Amazon EC2 instances. For more\n\t\t\tinformation, see Attributes in the Amazon Elastic Container Service Developer Guide.

\n \n

This parameter isn't supported for tasks run on Fargate.

\n
" + "smithy.api#documentation": "

The container instance attributes required by your task. When an Amazon EC2 instance is\n\t\t\tregistered to your cluster, the Amazon ECS container agent assigns some standard attributes\n\t\t\tto the instance. You can apply custom attributes. These are specified as key-value pairs\n\t\t\tusing the Amazon ECS console or the PutAttributes\n\t\t\tAPI. These attributes are used when determining task placement for tasks hosted on Amazon EC2\n\t\t\tinstances. For more information, see Attributes in the Amazon Elastic Container Service Developer Guide.

\n \n

This parameter isn't supported for tasks run on Fargate.

\n
" } }, "placementConstraints": { @@ -11550,7 +14740,7 @@ "compatibilities": { "target": "com.amazonaws.ecs#CompatibilityList", "traits": { - "smithy.api#documentation": "

The task launch types the task definition validated against during task definition\n\t\t\tregistration. For more information, see Amazon ECS launch types\n\t\t\tin the Amazon Elastic Container Service Developer Guide.

" + "smithy.api#documentation": "

Amazon ECS validates the task definition parameters with those supported by the launch\n\t\t\ttype. For more information, see Amazon ECS launch types\n\t\t\tin the Amazon Elastic Container Service Developer Guide.

" } }, "runtimePlatform": { @@ -11568,7 +14758,7 @@ "cpu": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The number of cpu units used by the task. If you use the EC2 launch type,\n\t\t\tthis field is optional. Any value can be used. If you use the Fargate launch type, this\n\t\t\tfield is required. You must use one of the following values. The value that you choose\n\t\t\tdetermines your range of valid values for the memory parameter.

\n

The CPU units cannot be less than 1 vCPU when you use Windows containers on\n\t\t\tFargate.

\n
    \n
  • \n

    256 (.25 vCPU) - Available memory values: 512 (0.5 GB), 1024 (1 GB), 2048 (2 GB)

    \n
  • \n
  • \n

    512 (.5 vCPU) - Available memory values: 1024 (1 GB), 2048 (2 GB), 3072 (3 GB), 4096 (4 GB)

    \n
  • \n
  • \n

    1024 (1 vCPU) - Available memory values: 2048 (2 GB), 3072 (3 GB), 4096 (4 GB), 5120 (5 GB), 6144 (6 GB), 7168 (7 GB), 8192 (8 GB)

    \n
  • \n
  • \n

    2048 (2 vCPU) - Available memory values: 4096 (4 GB) and 16384 (16 GB) in increments of 1024 (1 GB)

    \n
  • \n
  • \n

    4096 (4 vCPU) - Available memory values: 8192 (8 GB) and 30720 (30 GB) in increments of 1024 (1 GB)

    \n
  • \n
  • \n

    8192 (8 vCPU) - Available memory values: 16 GB and 60 GB in 4 GB increments

    \n

    This option requires Linux platform 1.4.0 or\n later.

    \n
  • \n
  • \n

    16384 (16vCPU) - Available memory values: 32GB and 120 GB in 8 GB increments

    \n

    This option requires Linux platform 1.4.0 or\n later.

    \n
  • \n
" + "smithy.api#documentation": "

The number of cpu units used by the task. If you use the EC2 launch type,\n\t\t\tthis field is optional. Any value can be used. If you use the Fargate launch type, this\n\t\t\tfield is required. You must use one of the following values. The value that you choose\n\t\t\tdetermines your range of valid values for the memory parameter.

\n

If you're using the EC2 launch type or the external launch type, this\n\t\t\tfield is optional. Supported values are between 128 CPU units\n\t\t\t\t(0.125 vCPUs) and 196608 CPU units (192\n\t\t\tvCPUs).

\n

This field is required for Fargate. For information about the valid values, see Task size in the Amazon Elastic Container Service Developer Guide.

" } }, "memory": { @@ -11586,13 +14776,13 @@ "pidMode": { "target": "com.amazonaws.ecs#PidMode", "traits": { - "smithy.api#documentation": "

The process namespace to use for the containers in the task. The valid\n values are host or task. On Fargate for\n Linux containers, the only valid value is task. For\n example, monitoring sidecars might need pidMode to access\n information about other containers running in the same task.

\n

If host is specified, all containers within the tasks\n that specified the host PID mode on the same container\n instance share the same process namespace with the host Amazon EC2\n instance.

\n

If task is specified, all containers within the specified\n task share the same process namespace.

\n

If no value is specified, the\n default is a private namespace for each container. For more information,\n see PID settings in the Docker run\n reference.

\n

If the host PID mode is used, there's a heightened risk\n of undesired process namespace exposure. For more information, see\n Docker security.

\n \n

This parameter is not supported for Windows containers.

\n
\n \n

This parameter is only supported for tasks that are hosted on\n Fargate if the tasks are using platform version 1.4.0 or later\n (Linux). This isn't supported for Windows containers on\n Fargate.

\n
" + "smithy.api#documentation": "

The process namespace to use for the containers in the task. The valid\n values are host or task. On Fargate for\n Linux containers, the only valid value is task. For\n example, monitoring sidecars might need pidMode to access\n information about other containers running in the same task.

\n

If host is specified, all containers within the tasks\n that specified the host PID mode on the same container\n instance share the same process namespace with the host Amazon EC2\n instance.

\n

If task is specified, all containers within the specified\n task share the same process namespace.

\n

If no value is specified, the\n default is a private namespace for each container.

\n

If the host PID mode is used, there's a heightened risk\n of undesired process namespace exposure.

\n \n

This parameter is not supported for Windows containers.

\n
\n \n

This parameter is only supported for tasks that are hosted on\n Fargate if the tasks are using platform version 1.4.0 or later\n (Linux). This isn't supported for Windows containers on\n Fargate.

\n
" } }, "ipcMode": { "target": "com.amazonaws.ecs#IpcMode", "traits": { - "smithy.api#documentation": "

The IPC resource namespace to use for the containers in the task. The valid values are\n host, task, or none. If host is\n specified, then all containers within the tasks that specified the host IPC\n mode on the same container instance share the same IPC resources with the host Amazon EC2\n instance. If task is specified, all containers within the specified task\n share the same IPC resources. If none is specified, then IPC resources\n within the containers of a task are private and not shared with other containers in a\n task or on the container instance. If no value is specified, then the IPC resource\n namespace sharing depends on the Docker daemon setting on the container instance. For\n more information, see IPC\n settings in the Docker run reference.

\n

If the host IPC mode is used, be aware that there is a heightened risk of\n undesired IPC namespace expose. For more information, see Docker\n security.

\n

If you are setting namespaced kernel parameters using systemControls for\n the containers in the task, the following will apply to your IPC resource namespace. For\n more information, see System\n Controls in the Amazon Elastic Container Service Developer Guide.

\n
    \n
  • \n

    For tasks that use the host IPC mode, IPC namespace related\n systemControls are not supported.

    \n
  • \n
  • \n

    For tasks that use the task IPC mode, IPC namespace related\n systemControls will apply to all containers within a\n task.

    \n
  • \n
\n \n

This parameter is not supported for Windows containers or tasks run on Fargate.

\n
" + "smithy.api#documentation": "

The IPC resource namespace to use for the containers in the task. The valid values are\n host, task, or none. If host is\n specified, then all containers within the tasks that specified the host IPC\n mode on the same container instance share the same IPC resources with the host Amazon EC2\n instance. If task is specified, all containers within the specified task\n share the same IPC resources. If none is specified, then IPC resources\n within the containers of a task are private and not shared with other containers in a\n task or on the container instance. If no value is specified, then the IPC resource\n namespace sharing depends on the Docker daemon setting on the container instance.

\n

If the host IPC mode is used, be aware that there is a heightened risk of\n undesired IPC namespace expose.

\n

If you are setting namespaced kernel parameters using systemControls for\n the containers in the task, the following will apply to your IPC resource namespace. For\n more information, see System\n Controls in the Amazon Elastic Container Service Developer Guide.

\n
    \n
  • \n

    For tasks that use the host IPC mode, IPC namespace related\n systemControls are not supported.

    \n
  • \n
  • \n

    For tasks that use the task IPC mode, IPC namespace related\n systemControls will apply to all containers within a\n task.

    \n
  • \n
\n \n

This parameter is not supported for Windows containers or tasks run on Fargate.

\n
" } }, "proxyConfiguration": { @@ -11624,6 +14814,12 @@ "traits": { "smithy.api#documentation": "

The ephemeral storage settings to use for tasks run with the task definition.

" } + }, + "enableFaultInjection": { + "target": "com.amazonaws.ecs#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

Enables fault injection and allows for fault injection requests to be accepted from\n\t\t\tthe task's containers. The default value is false.

" + } } }, "traits": { @@ -11743,13 +14939,13 @@ "target": "com.amazonaws.ecs#Integer", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The total amount, in GiB, of the ephemeral storage to set for the task. The minimum \t\t\n\t\t\tsupported value is 20 GiB and the maximum supported value is\u2028 200 \n\t\t\tGiB.

" + "smithy.api#documentation": "

The total amount, in GiB, of the ephemeral storage to set for the task. The minimum\n\t\t\tsupported value is 20 GiB and the maximum supported value is\u2028\n\t\t\t\t200 GiB.

" } }, "kmsKeyId": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

Specify an Key Management Service key ID to encrypt the ephemeral storage for the task.

" + "smithy.api#documentation": "

Specify an Key Management Service key ID to encrypt the ephemeral storage for the\n\t\t\ttask.

" } } }, @@ -11794,6 +14990,12 @@ "traits": { "smithy.api#enumValue": "xfs" } + }, + "NTFS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ntfs" + } } } }, @@ -11803,13 +15005,13 @@ "encrypted": { "target": "com.amazonaws.ecs#BoxedBoolean", "traits": { - "smithy.api#documentation": "

Indicates whether the volume should be encrypted. If no value is specified, encryption\n\t\t\tis turned on by default. This parameter maps 1:1 with the Encrypted\n\t\t\tparameter of the CreateVolume API in\n\t\t\tthe Amazon EC2 API Reference.

" + "smithy.api#documentation": "

Indicates whether the volume should be encrypted. If you turn on Region-level Amazon EBS\n\t\t\tencryption by default but set this value as false, the setting is\n\t\t\toverridden and the volume is encrypted with the KMS key specified for Amazon EBS encryption\n\t\t\tby default. This parameter maps 1:1 with the Encrypted parameter of the\n\t\t\t\tCreateVolume API in the Amazon EC2 API Reference.

" } }, "kmsKeyId": { "target": "com.amazonaws.ecs#EBSKMSKeyId", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) identifier of the Amazon Web Services Key Management Service key to use for Amazon EBS encryption. When\n\t\t\tencryption is turned on and no Amazon Web Services Key Management Service key is specified, the default Amazon Web Services managed key\n\t\t\tfor Amazon EBS volumes is used. This parameter maps 1:1 with the KmsKeyId\n\t\t\tparameter of the CreateVolume API in\n\t\t\tthe Amazon EC2 API Reference.

\n \n

Amazon Web Services authenticates the Amazon Web Services Key Management Service key asynchronously. Therefore, if you specify an\n\t\t\t\tID, alias, or ARN that is invalid, the action can appear to complete, but\n\t\t\t\teventually fails.

\n
" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) identifier of the Amazon Web Services Key Management Service key to use for Amazon EBS encryption. When a key\n\t\t\tis specified using this parameter, it overrides Amazon EBS default encryption or any KMS key\n\t\t\tthat you specified for cluster-level managed storage encryption. This parameter maps 1:1\n\t\t\twith the KmsKeyId parameter of the CreateVolume API in\n\t\t\tthe Amazon EC2 API Reference. For more information about encrypting\n\t\t\tAmazon EBS volumes attached to a task, see Encrypt data stored in Amazon EBS volumes attached to Amazon ECS tasks.

\n \n

Amazon Web Services authenticates the Amazon Web Services Key Management Service key asynchronously. Therefore, if you specify an\n\t\t\t\tID, alias, or ARN that is invalid, the action can appear to complete, but\n\t\t\t\teventually fails.

\n
" } }, "volumeType": { @@ -11830,6 +15032,12 @@ "smithy.api#documentation": "

The snapshot that Amazon ECS uses to create the volume. You must specify either a snapshot\n\t\t\tID or a volume size. This parameter maps 1:1 with the SnapshotId parameter\n\t\t\tof the CreateVolume API in\n\t\t\tthe Amazon EC2 API Reference.

" } }, + "volumeInitializationRate": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The rate, in MiB/s, at which data is fetched from a snapshot of an existing Amazon EBS\n\t\t\tvolume to create a new volume for attachment to the task. This property can be specified\n\t\t\tonly if you specify a snapshotId. For more information, see Initialize Amazon EBS volumes in the Amazon EBS User\n\t\t\t\tGuide.

" + } + }, "iops": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { @@ -12126,7 +15334,7 @@ } }, "traits": { - "smithy.api#documentation": "

The specified task set wasn't found. You can view your available task sets with DescribeTaskSets. Task sets are specific to each cluster, service and\n\t\t\tRegion.

", + "smithy.api#documentation": "

The specified task set wasn't found. You can view your available task sets with DescribeTaskSets. Task sets are specific to each cluster, service and\n\t\t\tRegion.

", "smithy.api#error": "client" } }, @@ -12204,6 +15412,14 @@ "target": "com.amazonaws.ecs#TaskVolumeConfiguration" } }, + "com.amazonaws.ecs#TaskVolumeStorageGiB": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1 + } + } + }, "com.amazonaws.ecs#Tasks": { "type": "list", "member": { @@ -12268,6 +15484,26 @@ "target": "com.amazonaws.ecs#Tmpfs" } }, + "com.amazonaws.ecs#TotalLocalStorageGBRequest": { + "type": "structure", + "members": { + "min": { + "target": "com.amazonaws.ecs#BoxedDouble", + "traits": { + "smithy.api#documentation": "

The minimum total local storage in GB. Instance types with less local storage are excluded from selection.

" + } + }, + "max": { + "target": "com.amazonaws.ecs#BoxedDouble", + "traits": { + "smithy.api#documentation": "

The maximum total local storage in GB. Instance types with more local storage are excluded from selection.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The minimum and maximum total local storage in gigabytes (GB) for instance types with local storage. This is useful for workloads that require local storage for temporary data or caching.

" + } + }, "com.amazonaws.ecs#TransportProtocol": { "type": "enum", "members": { @@ -12299,7 +15535,7 @@ "target": "com.amazonaws.ecs#Integer", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The soft limit for the ulimit type.

", + "smithy.api#documentation": "

The soft limit for the ulimit type. The value can be specified in bytes,\n\t\t\tseconds, or as a count, depending on the type of the\n\t\t\tulimit.

", "smithy.api#required": {} } }, @@ -12307,13 +15543,13 @@ "target": "com.amazonaws.ecs#Integer", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The hard limit for the ulimit type.

", + "smithy.api#documentation": "

The hard limit for the ulimit type. The value can be specified in bytes,\n\t\t\tseconds, or as a count, depending on the type of the\n\t\t\tulimit.

", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

The ulimit settings to pass to the container.

\n

Amazon ECS tasks hosted on Fargate use the default\n\t\t\t\t\t\t\tresource limit values set by the operating system with the exception of\n\t\t\t\t\t\t\tthe nofile resource limit parameter which Fargate\n\t\t\t\t\t\t\toverrides. The nofile resource limit sets a restriction on\n\t\t\t\t\t\t\tthe number of open files that a container can use. The default\n\t\t\t\t\t\t\t\tnofile soft limit is 1024 and the default hard limit\n\t\t\t\t\t\t\tis 65535.

\n

You can specify the ulimit settings for a container in a task\n\t\t\tdefinition.

" + "smithy.api#documentation": "

The ulimit settings to pass to the container.

\n

Amazon ECS tasks hosted on Fargate use the default\n\t\t\t\t\t\t\tresource limit values set by the operating system with the exception of\n\t\t\t\t\t\t\tthe nofile resource limit parameter which Fargate\n\t\t\t\t\t\t\toverrides. The nofile resource limit sets a restriction on\n\t\t\t\t\t\t\tthe number of open files that a container can use. The default\n\t\t\t\t\t\t\t\tnofile soft limit is 65535 and the default hard limit\n\t\t\t\t\t\t\tis 65535.

\n

You can specify the ulimit settings for a container in a task\n\t\t\tdefinition.

" } }, "com.amazonaws.ecs#UlimitList": { @@ -12515,15 +15751,57 @@ { "target": "com.amazonaws.ecs#ClientException" }, + { + "target": "com.amazonaws.ecs#ClusterNotFoundException" + }, { "target": "com.amazonaws.ecs#InvalidParameterException" }, { "target": "com.amazonaws.ecs#ServerException" + }, + { + "target": "com.amazonaws.ecs#UnsupportedFeatureException" } ], "traits": { - "smithy.api#documentation": "

Modifies the parameters for a capacity provider.

" + "smithy.api#documentation": "

Modifies the parameters for a capacity provider.

\n

These changes only apply to new Amazon ECS Managed Instances, or EC2 instances, not existing ones.

", + "smithy.api#examples": [ + { + "title": "To update a capacity provider's parameters", + "documentation": "This example updates the targetCapacity and instanceWarmupPeriod parameters for the capacity provider MyCapacityProvider to 90 and 150 respectively.", + "input": { + "name": "MyCapacityProvider", + "autoScalingGroupProvider": { + "managedScaling": { + "status": "ENABLED", + "targetCapacity": 90, + "instanceWarmupPeriod": 150 + } + } + }, + "output": { + "capacityProvider": { + "capacityProviderArn": "arn:aws:ecs:us-east-1:123456789012:capacity-provider/MyCapacityProvider", + "name": "MyCapacityProvider", + "status": "ACTIVE", + "autoScalingGroupProvider": { + "autoScalingGroupArn": "arn:aws:autoscaling:us-east-1:132456789012:autoScalingGroup:57ffcb94-11f0-4d6d-bf60-3bac5EXAMPLE:autoScalingGroupName/MyASG", + "managedScaling": { + "status": "ENABLED", + "targetCapacity": 90, + "minimumScalingStepSize": 1, + "maximumScalingStepSize": 10000, + "instanceWarmupPeriod": 150 + }, + "managedTerminationProtection": "ENABLED" + }, + "updateStatus": "UPDATE_COMPLETE", + "tags": [] + } + } + } + ] } }, "com.amazonaws.ecs#UpdateCapacityProviderRequest": { @@ -12536,11 +15814,22 @@ "smithy.api#required": {} } }, + "cluster": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The name of the cluster that contains the capacity provider to update. Managed instances capacity providers are cluster-scoped and can only be updated within their associated cluster.

" + } + }, "autoScalingGroupProvider": { "target": "com.amazonaws.ecs#AutoScalingGroupProviderUpdate", "traits": { - "smithy.api#documentation": "

An object that represent the parameters to update for the Auto Scaling group capacity\n\t\t\tprovider.

", - "smithy.api#required": {} + "smithy.api#documentation": "

An object that represent the parameters to update for the Auto Scaling group capacity\n\t\t\tprovider.

" + } + }, + "managedInstancesProvider": { + "target": "com.amazonaws.ecs#UpdateManagedInstancesProviderConfiguration", + "traits": { + "smithy.api#documentation": "

The updated configuration for the Amazon ECS Managed Instances provider. You can modify the infrastructure role, instance launch template, and tag propagation settings. Changes take effect for new instances launched after the update.

" } } }, @@ -12588,7 +15877,186 @@ } ], "traits": { - "smithy.api#documentation": "

Updates the cluster.

" + "smithy.api#documentation": "

Updates the cluster.

", + "smithy.api#examples": [ + { + "title": "To update a cluster's observability settings.", + "documentation": "This example turns on enhanced containerInsights in an existing cluster. ", + "input": { + "cluster": "ECS-project-update-cluster", + "settings": [ + { + "name": "containerInsights", + "value": "enhanced" + } + ] + }, + "output": { + "cluster": { + "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/ECS-project-update-cluster", + "clusterName": "ECS-project-update-cluster", + "status": "ACTIVE", + "registeredContainerInstancesCount": 0, + "runningTasksCount": 0, + "pendingTasksCount": 0, + "activeServicesCount": 0, + "statistics": [], + "tags": [], + "settings": [ + { + "name": "containerInsights", + "value": "enhanced" + } + ], + "capacityProviders": [ + "Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt" + ], + "defaultCapacityProviderStrategy": [ + { + "capacityProvider": "Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt", + "weight": 1, + "base": 0 + } + ], + "attachments": [ + { + "id": "069d002b-7634-42e4-b1d4-544f4c8f6380", + "type": "as_policy", + "status": "CREATED", + "details": [ + { + "name": "capacityProviderName", + "value": "Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt" + }, + { + "name": "scalingPolicyName", + "value": "ECSManagedAutoScalingPolicy-152363a6-8c65-484c-b721-42c3e070ae93" + } + ] + }, + { + "id": "08b5b6ca-45e9-4209-a65d-e962a27c490a", + "type": "managed_draining", + "status": "CREATED", + "details": [ + { + "name": "capacityProviderName", + "value": "Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt" + }, + { + "name": "autoScalingLifecycleHookName", + "value": "ecs-managed-draining-termination-hook" + } + ] + }, + { + "id": "45d0b36f-8cff-46b6-9380-1288744802ab", + "type": "sc", + "status": "ATTACHED", + "details": [] + } + ], + "attachmentsStatus": "UPDATE_COMPLETE", + "serviceConnectDefaults": { + "namespace": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-igwrsylmy3kwvcdx" + } + } + } + }, + { + "title": "To update a cluster's Service Connect defaults.", + "documentation": "This example sets a default Service Connect namespace. ", + "input": { + "cluster": "ECS-project-update-cluster", + "serviceConnectDefaults": { + "namespace": "test" + } + }, + "output": { + "cluster": { + "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/ECS-project-update-cluster", + "clusterName": "ECS-project-update-cluster", + "status": "ACTIVE", + "registeredContainerInstancesCount": 0, + "runningTasksCount": 0, + "pendingTasksCount": 0, + "activeServicesCount": 0, + "statistics": [], + "tags": [], + "settings": [ + { + "name": "containerInsights", + "value": "enhanced" + } + ], + "capacityProviders": [ + "Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt" + ], + "defaultCapacityProviderStrategy": [ + { + "capacityProvider": "Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt", + "weight": 1, + "base": 0 + } + ], + "attachments": [ + { + "id": "069d002b-7634-42e4-b1d4-544f4c8f6380", + "type": "as_policy", + "status": "CREATED", + "details": [ + { + "name": "capacityProviderName", + "value": "Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt" + }, + { + "name": "scalingPolicyName", + "value": "ECSManagedAutoScalingPolicy-152363a6-8c65-484c-b721-42c3e070ae93" + } + ] + }, + { + "id": "08b5b6ca-45e9-4209-a65d-e962a27c490a", + "type": "managed_draining", + "status": "CREATED", + "details": [ + { + "name": "capacityProviderName", + "value": "Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt" + }, + { + "name": "autoScalingLifecycleHookName", + "value": "ecs-managed-draining-termination-hook" + } + ] + }, + { + "id": "45d0b36f-8cff-46b6-9380-1288744802ab", + "type": "sc", + "status": "DELETED", + "details": [] + }, + { + "id": "3e6890c3-609c-4832-91de-d6ca891b3ef1", + "type": "sc", + "status": "ATTACHED", + "details": [] + }, + { + "id": "961b8ec1-c2f1-4070-8495-e669b7668e90", + "type": "sc", + "status": "DELETED", + "details": [] + } + ], + "attachmentsStatus": "UPDATE_COMPLETE", + "serviceConnectDefaults": { + "namespace": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-dtjmxqpfi46ht7dr" + } + } + } + } + ] } }, "com.amazonaws.ecs#UpdateClusterRequest": { @@ -12661,7 +16129,41 @@ } ], "traits": { - "smithy.api#documentation": "

Modifies the settings to use for a cluster.

" + "smithy.api#documentation": "

Modifies the settings to use for a cluster.

", + "smithy.api#examples": [ + { + "title": "To update a cluster's settings", + "documentation": "This example enables CloudWatch Container Insights for the default cluster.", + "input": { + "cluster": "default", + "settings": [ + { + "name": "containerInsights", + "value": "enabled" + } + ] + }, + "output": { + "cluster": { + "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster", + "clusterName": "default", + "status": "ACTIVE", + "registeredContainerInstancesCount": 0, + "runningTasksCount": 0, + "pendingTasksCount": 0, + "activeServicesCount": 0, + "statistics": [], + "tags": [], + "settings": [ + { + "name": "containerInsights", + "value": "enabled" + } + ] + } + } + } + ] } }, "com.amazonaws.ecs#UpdateClusterSettingsRequest": { @@ -12677,7 +16179,7 @@ "settings": { "target": "com.amazonaws.ecs#ClusterSettings", "traits": { - "smithy.api#documentation": "

The setting to use by default for a cluster. This parameter is used to turn on CloudWatch\n\t\t\tContainer Insights for a cluster. If this value is specified, it overrides the\n\t\t\t\tcontainerInsights value set with PutAccountSetting or\n\t\t\t\tPutAccountSettingDefault.

\n \n

Currently, if you delete an existing cluster that does not have Container Insights\n\t\t\t\tturned on, and then create a new cluster with the same name with Container Insights\n\t\t\t\ttuned on, Container Insights will not actually be turned on. If you want to preserve\n\t\t\t\tthe same name for your existing cluster and turn on Container Insights, you must\n\t\t\t\twait 7 days before you can re-create it.

\n
", + "smithy.api#documentation": "

The setting to use by default for a cluster. This parameter is used to turn on CloudWatch\n\t\t\tContainer Insights for a cluster. If this value is specified, it overrides the\n\t\t\t\tcontainerInsights value set with PutAccountSetting or PutAccountSettingDefault.

\n \n

Currently, if you delete an existing cluster that does not have Container Insights\n\t\t\t\tturned on, and then create a new cluster with the same name with Container Insights\n\t\t\t\ttuned on, Container Insights will not actually be turned on. If you want to preserve\n\t\t\t\tthe same name for your existing cluster and turn on Container Insights, you must\n\t\t\t\twait 7 days before you can re-create it.

\n
", "smithy.api#required": {} } } @@ -12732,7 +16234,28 @@ } ], "traits": { - "smithy.api#documentation": "

Updates the Amazon ECS container agent on a specified container instance. Updating the\n\t\t\tAmazon ECS container agent doesn't interrupt running tasks or services on the container\n\t\t\tinstance. The process for updating the agent differs depending on whether your container\n\t\t\tinstance was launched with the Amazon ECS-optimized AMI or another operating system.

\n \n

The UpdateContainerAgent API isn't supported for container instances\n\t\t\t\tusing the Amazon ECS-optimized Amazon Linux 2 (arm64) AMI. To update the container agent,\n\t\t\t\tyou can update the ecs-init package. This updates the agent. For more\n\t\t\t\tinformation, see Updating the\n\t\t\t\t\tAmazon ECS container agent in the Amazon Elastic Container Service Developer Guide.

\n
\n \n

Agent updates with the UpdateContainerAgent API operation do not\n\t\t\t\tapply to Windows container instances. We recommend that you launch new container\n\t\t\t\tinstances to update the agent version in your Windows clusters.

\n
\n

The UpdateContainerAgent API requires an Amazon ECS-optimized AMI or Amazon\n\t\t\tLinux AMI with the ecs-init service installed and running. For help\n\t\t\tupdating the Amazon ECS container agent on other operating systems, see Manually updating the Amazon ECS container agent in the Amazon Elastic Container Service Developer Guide.

" + "smithy.api#documentation": "

Updates the Amazon ECS container agent on a specified container instance. Updating the\n\t\t\tAmazon ECS container agent doesn't interrupt running tasks or services on the container\n\t\t\tinstance. The process for updating the agent differs depending on whether your container\n\t\t\tinstance was launched with the Amazon ECS-optimized AMI or another operating system.

\n \n

The UpdateContainerAgent API isn't supported for container instances\n\t\t\t\tusing the Amazon ECS-optimized Amazon Linux 2 (arm64) AMI. To update the container agent,\n\t\t\t\tyou can update the ecs-init package. This updates the agent. For more\n\t\t\t\tinformation, see Updating the\n\t\t\t\t\tAmazon ECS container agent in the Amazon Elastic Container Service Developer Guide.

\n
\n \n

Agent updates with the UpdateContainerAgent API operation do not\n\t\t\t\tapply to Windows container instances. We recommend that you launch new container\n\t\t\t\tinstances to update the agent version in your Windows clusters.

\n
\n

The UpdateContainerAgent API requires an Amazon ECS-optimized AMI or Amazon\n\t\t\tLinux AMI with the ecs-init service installed and running. For help\n\t\t\tupdating the Amazon ECS container agent on other operating systems, see Manually updating the Amazon ECS container agent in the Amazon Elastic Container Service Developer Guide.

", + "smithy.api#examples": [ + { + "title": "To update the container agent version on a container instance", + "documentation": "This example updates the container agent version on the specified container instance in cluster MyCluster.", + "input": { + "cluster": "MyCluster", + "containerInstance": "53ac7152-dcd1-4102-81f5-208962864132" + }, + "output": { + "containerInstance": { + "agentConnected": true, + "agentUpdateStatus": "PENDING", + "versionInfo": { + "agentHash": "4023248", + "agentVersion": "1.0.0", + "dockerVersion": "DockerVersion: 1.5.0" + } + } + } + } + ] } }, "com.amazonaws.ecs#UpdateContainerAgentRequest": { @@ -12793,7 +16316,175 @@ } ], "traits": { - "smithy.api#documentation": "

Modifies the status of an Amazon ECS container instance.

\n

Once a container instance has reached an ACTIVE state, you can change the\n\t\t\tstatus of a container instance to DRAINING to manually remove an instance\n\t\t\tfrom a cluster, for example to perform system updates, update the Docker daemon, or\n\t\t\tscale down the cluster size.

\n \n

A container instance can't be changed to DRAINING until it has\n\t\t\t\treached an ACTIVE status. If the instance is in any other status, an\n\t\t\t\terror will be received.

\n
\n

When you set a container instance to DRAINING, Amazon ECS prevents new tasks\n\t\t\tfrom being scheduled for placement on the container instance and replacement service\n\t\t\ttasks are started on other container instances in the cluster if the resources are\n\t\t\tavailable. Service tasks on the container instance that are in the PENDING\n\t\t\tstate are stopped immediately.

\n

Service tasks on the container instance that are in the RUNNING state are\n\t\t\tstopped and replaced according to the service's deployment configuration parameters,\n\t\t\t\tminimumHealthyPercent and maximumPercent. You can change\n\t\t\tthe deployment configuration of your service using UpdateService.

\n
    \n
  • \n

    If minimumHealthyPercent is below 100%, the scheduler can ignore\n\t\t\t\t\t\tdesiredCount temporarily during task replacement. For example,\n\t\t\t\t\t\tdesiredCount is four tasks, a minimum of 50% allows the\n\t\t\t\t\tscheduler to stop two existing tasks before starting two new tasks. If the\n\t\t\t\t\tminimum is 100%, the service scheduler can't remove existing tasks until the\n\t\t\t\t\treplacement tasks are considered healthy. Tasks for services that do not use a\n\t\t\t\t\tload balancer are considered healthy if they're in the RUNNING\n\t\t\t\t\tstate. Tasks for services that use a load balancer are considered healthy if\n\t\t\t\t\tthey're in the RUNNING state and are reported as healthy by the\n\t\t\t\t\tload balancer.

    \n
  • \n
  • \n

    The maximumPercent parameter represents an upper limit on the\n\t\t\t\t\tnumber of running tasks during task replacement. You can use this to define the\n\t\t\t\t\treplacement batch size. For example, if desiredCount is four tasks,\n\t\t\t\t\ta maximum of 200% starts four new tasks before stopping the four tasks to be\n\t\t\t\t\tdrained, provided that the cluster resources required to do this are available.\n\t\t\t\t\tIf the maximum is 100%, then replacement tasks can't start until the draining\n\t\t\t\t\ttasks have stopped.

    \n
  • \n
\n

Any PENDING or RUNNING tasks that do not belong to a service\n\t\t\taren't affected. You must wait for them to finish or stop them manually.

\n

A container instance has completed draining when it has no more RUNNING\n\t\t\ttasks. You can verify this using ListTasks.

\n

When a container instance has been drained, you can set a container instance to\n\t\t\t\tACTIVE status and once it has reached that status the Amazon ECS scheduler\n\t\t\tcan begin scheduling tasks on the instance again.

" + "smithy.api#documentation": "

Modifies the status of an Amazon ECS container instance.

\n

Once a container instance has reached an ACTIVE state, you can change the\n\t\t\tstatus of a container instance to DRAINING to manually remove an instance\n\t\t\tfrom a cluster, for example to perform system updates, update the Docker daemon, or\n\t\t\tscale down the cluster size.

\n \n

A container instance can't be changed to DRAINING until it has\n\t\t\t\treached an ACTIVE status. If the instance is in any other status, an\n\t\t\t\terror will be received.

\n
\n

When you set a container instance to DRAINING, Amazon ECS prevents new tasks\n\t\t\tfrom being scheduled for placement on the container instance and replacement service\n\t\t\ttasks are started on other container instances in the cluster if the resources are\n\t\t\tavailable. Service tasks on the container instance that are in the PENDING\n\t\t\tstate are stopped immediately.

\n

Service tasks on the container instance that are in the RUNNING state are\n\t\t\tstopped and replaced according to the service's deployment configuration parameters,\n\t\t\t\tminimumHealthyPercent and maximumPercent. You can change\n\t\t\tthe deployment configuration of your service using UpdateService.

\n
    \n
  • \n

    If minimumHealthyPercent is below 100%, the scheduler can ignore\n\t\t\t\t\t\tdesiredCount temporarily during task replacement. For example,\n\t\t\t\t\t\tdesiredCount is four tasks, a minimum of 50% allows the\n\t\t\t\t\tscheduler to stop two existing tasks before starting two new tasks. If the\n\t\t\t\t\tminimum is 100%, the service scheduler can't remove existing tasks until the\n\t\t\t\t\treplacement tasks are considered healthy. Tasks for services that do not use a\n\t\t\t\t\tload balancer are considered healthy if they're in the RUNNING\n\t\t\t\t\tstate. Tasks for services that use a load balancer are considered healthy if\n\t\t\t\t\tthey're in the RUNNING state and are reported as healthy by the\n\t\t\t\t\tload balancer.

    \n
  • \n
  • \n

    The maximumPercent parameter represents an upper limit on the\n\t\t\t\t\tnumber of running tasks during task replacement. You can use this to define the\n\t\t\t\t\treplacement batch size. For example, if desiredCount is four tasks,\n\t\t\t\t\ta maximum of 200% starts four new tasks before stopping the four tasks to be\n\t\t\t\t\tdrained, provided that the cluster resources required to do this are available.\n\t\t\t\t\tIf the maximum is 100%, then replacement tasks can't start until the draining\n\t\t\t\t\ttasks have stopped.

    \n
  • \n
\n

Any PENDING or RUNNING tasks that do not belong to a service\n\t\t\taren't affected. You must wait for them to finish or stop them manually.

\n

A container instance has completed draining when it has no more RUNNING\n\t\t\ttasks. You can verify this using ListTasks.

\n

When a container instance has been drained, you can set a container instance to\n\t\t\t\tACTIVE status and once it has reached that status the Amazon ECS scheduler\n\t\t\tcan begin scheduling tasks on the instance again.

", + "smithy.api#examples": [ + { + "title": "To update the state of a container instance", + "documentation": "This example updates the state of the specified container instance in the default cluster to DRAINING. ", + "input": { + "cluster": "default", + "containerInstances": [ + "1c3be8ed-df30-47b4-8f1e-6e68ebd01f34" + ], + "status": "DRAINING" + }, + "output": { + "containerInstances": [ + { + "agentConnected": true, + "attributes": [ + { + "name": "ecs.availability-zone", + "value": "us-west-2b" + }, + { + "name": "com.amazonaws.ecs.capability.logging-driver.syslog" + }, + { + "name": "ecs.instance-type", + "value": "c4.xlarge" + }, + { + "name": "ecs.ami-id", + "value": "ami-a2ca61c2" + }, + { + "name": "com.amazonaws.ecs.capability.task-iam-role-network-host" + }, + { + "name": "com.amazonaws.ecs.capability.logging-driver.awslogs" + }, + { + "name": "com.amazonaws.ecs.capability.logging-driver.json-file" + }, + { + "name": "com.amazonaws.ecs.capability.docker-remote-api.1.17" + }, + { + "name": "com.amazonaws.ecs.capability.privileged-container" + }, + { + "name": "com.amazonaws.ecs.capability.docker-remote-api.1.18" + }, + { + "name": "com.amazonaws.ecs.capability.docker-remote-api.1.19" + }, + { + "name": "com.amazonaws.ecs.capability.ecr-auth" + }, + { + "name": "ecs.os-type", + "value": "linux" + }, + { + "name": "com.amazonaws.ecs.capability.docker-remote-api.1.20" + }, + { + "name": "com.amazonaws.ecs.capability.docker-remote-api.1.21" + }, + { + "name": "com.amazonaws.ecs.capability.docker-remote-api.1.22" + }, + { + "name": "com.amazonaws.ecs.capability.task-iam-role" + }, + { + "name": "com.amazonaws.ecs.capability.docker-remote-api.1.23" + } + ], + "containerInstanceArn": "arn:aws:ecs:us-west-2:012345678910:container-instance/default/1c3be8ed-df30-47b4-8f1e-6e68ebd01f34", + "ec2InstanceId": "i-05d99c76955727ec6", + "pendingTasksCount": 0, + "registeredResources": [ + { + "doubleValue": 0, + "integerValue": 4096, + "longValue": 0, + "name": "CPU", + "type": "INTEGER" + }, + { + "doubleValue": 0, + "integerValue": 7482, + "longValue": 0, + "name": "MEMORY", + "type": "INTEGER" + }, + { + "doubleValue": 0, + "integerValue": 0, + "longValue": 0, + "name": "PORTS", + "stringSetValue": [ + "22", + "2376", + "2375", + "51678", + "51679" + ], + "type": "STRINGSET" + }, + { + "doubleValue": 0, + "integerValue": 0, + "longValue": 0, + "name": "PORTS_UDP", + "stringSetValue": [], + "type": "STRINGSET" + } + ], + "remainingResources": [ + { + "doubleValue": 0, + "integerValue": 4096, + "longValue": 0, + "name": "CPU", + "type": "INTEGER" + }, + { + "doubleValue": 0, + "integerValue": 7482, + "longValue": 0, + "name": "MEMORY", + "type": "INTEGER" + }, + { + "doubleValue": 0, + "integerValue": 0, + "longValue": 0, + "name": "PORTS", + "stringSetValue": [ + "22", + "2376", + "2375", + "51678", + "51679" + ], + "type": "STRINGSET" + }, + { + "doubleValue": 0, + "integerValue": 0, + "longValue": 0, + "name": "PORTS_UDP", + "stringSetValue": [], + "type": "STRINGSET" + } + ], + "runningTasksCount": 0, + "status": "DRAINING", + "version": 30, + "versionInfo": { + "agentHash": "efe53c6", + "agentVersion": "1.13.1", + "dockerVersion": "DockerVersion: 1.11.2" + } + } + ], + "failures": [] + } + } + ] } }, "com.amazonaws.ecs#UpdateContainerInstancesStateRequest": { @@ -12859,6 +16550,34 @@ "smithy.api#error": "client" } }, + "com.amazonaws.ecs#UpdateManagedInstancesProviderConfiguration": { + "type": "structure", + "members": { + "infrastructureRoleArn": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The updated Amazon Resource Name (ARN) of the infrastructure role. The new role must have the necessary permissions to manage instances and access required Amazon Web Services services.

\n

For more information, see Amazon ECS infrastructure IAM role in the Amazon ECS Developer Guide.

", + "smithy.api#required": {} + } + }, + "instanceLaunchTemplate": { + "target": "com.amazonaws.ecs#InstanceLaunchTemplateUpdate", + "traits": { + "smithy.api#documentation": "

The updated launch template configuration. Changes to the launch template affect new instances launched after the update, while existing instances continue to use their original configuration.

", + "smithy.api#required": {} + } + }, + "propagateTags": { + "target": "com.amazonaws.ecs#PropagateMITags", + "traits": { + "smithy.api#documentation": "

The updated tag propagation setting. When changed, this affects only new instances launched after the update.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The updated configuration for a Amazon ECS Managed Instances provider. You can modify the infrastructure role, instance launch template, and tag propagation settings. Changes apply to new instances launched after the update.

" + } + }, "com.amazonaws.ecs#UpdateService": { "type": "operation", "input": { @@ -12903,23 +16622,23 @@ } ], "traits": { - "smithy.api#documentation": "

Modifies the parameters of a service.

\n \n

On March 21, 2024, a change was made to resolve the task definition revision before authorization. When a task definition revision is not specified, authorization will occur using the latest revision of a task definition.

\n
\n

For services using the rolling update (ECS) you can update the desired\n\t\t\tcount, deployment configuration, network configuration, load balancers, service\n\t\t\tregistries, enable ECS managed tags option, propagate tags option, task placement\n\t\t\tconstraints and strategies, and task definition. When you update any of these\n\t\t\tparameters, Amazon ECS starts new tasks with the new configuration.

\n

You can attach Amazon EBS volumes to Amazon ECS tasks by configuring the volume when starting or\n\t\t\trunning a task, or when creating or updating a service. For more infomation, see Amazon EBS volumes in the Amazon Elastic Container Service Developer Guide. You can update\n\t\t\tyour volume configurations and trigger a new deployment.\n\t\t\t\tvolumeConfigurations is only supported for REPLICA service and not\n\t\t\tDAEMON service. If you leave volumeConfigurations\n null, it doesn't trigger a new deployment. For more infomation on volumes,\n\t\t\tsee Amazon EBS volumes in the Amazon Elastic Container Service Developer Guide.

\n

For services using the blue/green (CODE_DEPLOY) deployment controller,\n\t\t\tonly the desired count, deployment configuration, health check grace period, task\n\t\t\tplacement constraints and strategies, enable ECS managed tags option, and propagate tags\n\t\t\tcan be updated using this API. If the network configuration, platform version, task\n\t\t\tdefinition, or load balancer need to be updated, create a new CodeDeploy deployment. For more\n\t\t\tinformation, see CreateDeployment in the CodeDeploy API Reference.

\n

For services using an external deployment controller, you can update only the desired\n\t\t\tcount, task placement constraints and strategies, health check grace period, enable ECS\n\t\t\tmanaged tags option, and propagate tags option, using this API. If the launch type, load\n\t\t\tbalancer, network configuration, platform version, or task definition need to be\n\t\t\tupdated, create a new task set For more information, see CreateTaskSet.

\n

You can add to or subtract from the number of instantiations of a task definition in a\n\t\t\tservice by specifying the cluster that the service is running in and a new\n\t\t\t\tdesiredCount parameter.

\n

You can attach Amazon EBS volumes to Amazon ECS tasks by configuring the volume when starting or\n\t\t\trunning a task, or when creating or updating a service. For more infomation, see Amazon EBS volumes in the Amazon Elastic Container Service Developer Guide.

\n

If you have updated the container image of your application, you can create a new task\n\t\t\tdefinition with that image and deploy it to your service. The service scheduler uses the\n\t\t\tminimum healthy percent and maximum percent parameters (in the service's deployment\n\t\t\tconfiguration) to determine the deployment strategy.

\n \n

If your updated Docker image uses the same tag as what is in the existing task\n\t\t\t\tdefinition for your service (for example, my_image:latest), you don't\n\t\t\t\tneed to create a new revision of your task definition. You can update the service\n\t\t\t\tusing the forceNewDeployment option. The new tasks launched by the\n\t\t\t\tdeployment pull the current image/tag combination from your repository when they\n\t\t\t\tstart.

\n
\n

You can also update the deployment configuration of a service. When a deployment is\n\t\t\ttriggered by updating the task definition of a service, the service scheduler uses the\n\t\t\tdeployment configuration parameters, minimumHealthyPercent and\n\t\t\t\tmaximumPercent, to determine the deployment strategy.

\n
    \n
  • \n

    If minimumHealthyPercent is below 100%, the scheduler can ignore\n\t\t\t\t\t\tdesiredCount temporarily during a deployment. For example, if\n\t\t\t\t\t\tdesiredCount is four tasks, a minimum of 50% allows the\n\t\t\t\t\tscheduler to stop two existing tasks before starting two new tasks. Tasks for\n\t\t\t\t\tservices that don't use a load balancer are considered healthy if they're in the\n\t\t\t\t\t\tRUNNING state. Tasks for services that use a load balancer are\n\t\t\t\t\tconsidered healthy if they're in the RUNNING state and are reported\n\t\t\t\t\tas healthy by the load balancer.

    \n
  • \n
  • \n

    The maximumPercent parameter represents an upper limit on the\n\t\t\t\t\tnumber of running tasks during a deployment. You can use it to define the\n\t\t\t\t\tdeployment batch size. For example, if desiredCount is four tasks,\n\t\t\t\t\ta maximum of 200% starts four new tasks before stopping the four older tasks\n\t\t\t\t\t(provided that the cluster resources required to do this are available).

    \n
  • \n
\n

When UpdateService stops a task during a deployment, the equivalent\n\t\t\tof docker stop is issued to the containers running in the task. This\n\t\t\tresults in a SIGTERM and a 30-second timeout. After this,\n\t\t\t\tSIGKILL is sent and the containers are forcibly stopped. If the\n\t\t\tcontainer handles the SIGTERM gracefully and exits within 30 seconds from\n\t\t\treceiving it, no SIGKILL is sent.

\n

When the service scheduler launches new tasks, it determines task placement in your\n\t\t\tcluster with the following logic.

\n
    \n
  • \n

    Determine which of the container instances in your cluster can support your\n\t\t\t\t\tservice's task definition. For example, they have the required CPU, memory,\n\t\t\t\t\tports, and container instance attributes.

    \n
  • \n
  • \n

    By default, the service scheduler attempts to balance tasks across\n\t\t\t\t\tAvailability Zones in this manner even though you can choose a different\n\t\t\t\t\tplacement strategy.

    \n
      \n
    • \n

      Sort the valid container instances by the fewest number of running\n\t\t\t\t\t\t\ttasks for this service in the same Availability Zone as the instance.\n\t\t\t\t\t\t\tFor example, if zone A has one running service task and zones B and C\n\t\t\t\t\t\t\teach have zero, valid container instances in either zone B or C are\n\t\t\t\t\t\t\tconsidered optimal for placement.

      \n
    • \n
    • \n

      Place the new service task on a valid container instance in an optimal\n\t\t\t\t\t\t\tAvailability Zone (based on the previous steps), favoring container\n\t\t\t\t\t\t\tinstances with the fewest number of running tasks for this\n\t\t\t\t\t\t\tservice.

      \n
    • \n
    \n
  • \n
\n

When the service scheduler stops running tasks, it attempts to maintain balance across\n\t\t\tthe Availability Zones in your cluster using the following logic:

\n
    \n
  • \n

    Sort the container instances by the largest number of running tasks for this\n\t\t\t\t\tservice in the same Availability Zone as the instance. For example, if zone A\n\t\t\t\t\thas one running service task and zones B and C each have two, container\n\t\t\t\t\tinstances in either zone B or C are considered optimal for termination.

    \n
  • \n
  • \n

    Stop the task on a container instance in an optimal Availability Zone (based\n\t\t\t\t\ton the previous steps), favoring container instances with the largest number of\n\t\t\t\t\trunning tasks for this service.

    \n
  • \n
\n \n

You must have a service-linked role when you update any of the following service\n\t\t\t\tproperties:

\n
    \n
  • \n

    \n loadBalancers,

    \n
  • \n
  • \n

    \n serviceRegistries\n

    \n
  • \n
\n

For more information about the role see the CreateService request\n\t\t\t\tparameter \n role\n .

\n
", + "smithy.api#documentation": "

Modifies the parameters of a service.

\n \n

On March 21, 2024, a change was made to resolve the task definition revision before authorization. When a task definition revision is not specified, authorization will occur using the latest revision of a task definition.

\n
\n

For services using the rolling update (ECS) you can update the desired\n\t\t\tcount, deployment configuration, network configuration, load balancers, service\n\t\t\tregistries, enable ECS managed tags option, propagate tags option, task placement\n\t\t\tconstraints and strategies, and task definition. When you update any of these\n\t\t\tparameters, Amazon ECS starts new tasks with the new configuration.

\n

You can attach Amazon EBS volumes to Amazon ECS tasks by configuring the volume when starting or\n\t\t\trunning a task, or when creating or updating a service. For more information, see Amazon EBS volumes in the Amazon Elastic Container Service Developer Guide. You can update\n\t\t\tyour volume configurations and trigger a new deployment.\n\t\t\t\tvolumeConfigurations is only supported for REPLICA service and not\n\t\t\tDAEMON service. If you leave volumeConfigurations\n null, it doesn't trigger a new deployment. For more information on volumes,\n\t\t\tsee Amazon EBS volumes in the Amazon Elastic Container Service Developer Guide.

\n

For services using the blue/green (CODE_DEPLOY) deployment controller,\n\t\t\tonly the desired count, deployment configuration, health check grace period, task\n\t\t\tplacement constraints and strategies, enable ECS managed tags option, and propagate tags\n\t\t\tcan be updated using this API. If the network configuration, platform version, task\n\t\t\tdefinition, or load balancer need to be updated, create a new CodeDeploy deployment. For more\n\t\t\tinformation, see CreateDeployment in the CodeDeploy API Reference.

\n

For services using an external deployment controller, you can update only the desired\n\t\t\tcount, task placement constraints and strategies, health check grace period, enable ECS\n\t\t\tmanaged tags option, and propagate tags option, using this API. If the launch type, load\n\t\t\tbalancer, network configuration, platform version, or task definition need to be\n\t\t\tupdated, create a new task set For more information, see CreateTaskSet.

\n

You can add to or subtract from the number of instantiations of a task definition in a\n\t\t\tservice by specifying the cluster that the service is running in and a new\n\t\t\t\tdesiredCount parameter.

\n

You can attach Amazon EBS volumes to Amazon ECS tasks by configuring the volume when starting or\n\t\t\trunning a task, or when creating or updating a service. For more information, see Amazon EBS volumes in the Amazon Elastic Container Service Developer Guide.

\n

If you have updated the container image of your application, you can create a new task\n\t\t\tdefinition with that image and deploy it to your service. The service scheduler uses the\n\t\t\tminimum healthy percent and maximum percent parameters (in the service's deployment\n\t\t\tconfiguration) to determine the deployment strategy.

\n \n

If your updated Docker image uses the same tag as what is in the existing task\n\t\t\t\tdefinition for your service (for example, my_image:latest), you don't\n\t\t\t\tneed to create a new revision of your task definition. You can update the service\n\t\t\t\tusing the forceNewDeployment option. The new tasks launched by the\n\t\t\t\tdeployment pull the current image/tag combination from your repository when they\n\t\t\t\tstart.

\n
\n

You can also update the deployment configuration of a service. When a deployment is\n\t\t\ttriggered by updating the task definition of a service, the service scheduler uses the\n\t\t\tdeployment configuration parameters, minimumHealthyPercent and\n\t\t\t\tmaximumPercent, to determine the deployment strategy.

\n
    \n
  • \n

    If minimumHealthyPercent is below 100%, the scheduler can ignore\n\t\t\t\t\t\tdesiredCount temporarily during a deployment. For example, if\n\t\t\t\t\t\tdesiredCount is four tasks, a minimum of 50% allows the\n\t\t\t\t\tscheduler to stop two existing tasks before starting two new tasks. Tasks for\n\t\t\t\t\tservices that don't use a load balancer are considered healthy if they're in the\n\t\t\t\t\t\tRUNNING state. Tasks for services that use a load balancer are\n\t\t\t\t\tconsidered healthy if they're in the RUNNING state and are reported\n\t\t\t\t\tas healthy by the load balancer.

    \n
  • \n
  • \n

    The maximumPercent parameter represents an upper limit on the\n\t\t\t\t\tnumber of running tasks during a deployment. You can use it to define the\n\t\t\t\t\tdeployment batch size. For example, if desiredCount is four tasks,\n\t\t\t\t\ta maximum of 200% starts four new tasks before stopping the four older tasks\n\t\t\t\t\t(provided that the cluster resources required to do this are available).

    \n
  • \n
\n

When UpdateService\n\t\t\tstops a task during a deployment, the equivalent of docker stop is issued\n\t\t\tto the containers running in the task. This results in a SIGTERM and a\n\t\t\t30-second timeout. After this, SIGKILL is sent and the containers are\n\t\t\tforcibly stopped. If the container handles the SIGTERM gracefully and exits\n\t\t\twithin 30 seconds from receiving it, no SIGKILL is sent.

\n

When the service scheduler launches new tasks, it determines task placement in your\n\t\t\tcluster with the following logic.

\n
    \n
  • \n

    Determine which of the container instances in your cluster can support your\n\t\t\t\t\tservice's task definition. For example, they have the required CPU, memory,\n\t\t\t\t\tports, and container instance attributes.

    \n
  • \n
  • \n

    By default, the service scheduler attempts to balance tasks across\n\t\t\t\t\tAvailability Zones in this manner even though you can choose a different\n\t\t\t\t\tplacement strategy.

    \n
      \n
    • \n

      Sort the valid container instances by the fewest number of running\n\t\t\t\t\t\t\ttasks for this service in the same Availability Zone as the instance.\n\t\t\t\t\t\t\tFor example, if zone A has one running service task and zones B and C\n\t\t\t\t\t\t\teach have zero, valid container instances in either zone B or C are\n\t\t\t\t\t\t\tconsidered optimal for placement.

      \n
    • \n
    • \n

      Place the new service task on a valid container instance in an optimal\n\t\t\t\t\t\t\tAvailability Zone (based on the previous steps), favoring container\n\t\t\t\t\t\t\tinstances with the fewest number of running tasks for this\n\t\t\t\t\t\t\tservice.

      \n
    • \n
    \n
  • \n
\n

When the service scheduler stops running tasks, it attempts to maintain balance across\n\t\t\tthe Availability Zones in your cluster using the following logic:

\n
    \n
  • \n

    Sort the container instances by the largest number of running tasks for this\n\t\t\t\t\tservice in the same Availability Zone as the instance. For example, if zone A\n\t\t\t\t\thas one running service task and zones B and C each have two, container\n\t\t\t\t\tinstances in either zone B or C are considered optimal for termination.

    \n
  • \n
  • \n

    Stop the task on a container instance in an optimal Availability Zone (based\n\t\t\t\t\ton the previous steps), favoring container instances with the largest number of\n\t\t\t\t\trunning tasks for this service.

    \n
  • \n
", "smithy.api#examples": [ { - "title": "To change the task definition used in a service", - "documentation": "This example updates the my-http-service service to use the amazon-ecs-sample task definition.", + "title": "To change the number of tasks in a service", + "documentation": "This example updates the desired count of the my-http-service service to 10.", "input": { "service": "my-http-service", - "taskDefinition": "amazon-ecs-sample" + "desiredCount": 10 }, "output": {} }, { - "title": "To change the number of tasks in a service", - "documentation": "This example updates the desired count of the my-http-service service to 10.", + "title": "To change the task definition used in a service", + "documentation": "This example updates the my-http-service service to use the amazon-ecs-sample task definition.", "input": { "service": "my-http-service", - "desiredCount": 10 + "taskDefinition": "amazon-ecs-sample" }, "output": {} } @@ -12964,7 +16683,51 @@ } ], "traits": { - "smithy.api#documentation": "

Modifies which task set in a service is the primary task set. Any parameters that are\n\t\t\tupdated on the primary task set in a service will transition to the service. This is\n\t\t\tused when a service uses the EXTERNAL deployment controller type. For more\n\t\t\tinformation, see Amazon ECS Deployment\n\t\t\t\tTypes in the Amazon Elastic Container Service Developer Guide.

" + "smithy.api#documentation": "

Modifies which task set in a service is the primary task set. Any parameters that are\n\t\t\tupdated on the primary task set in a service will transition to the service. This is\n\t\t\tused when a service uses the EXTERNAL deployment controller type. For more\n\t\t\tinformation, see Amazon ECS Deployment\n\t\t\t\tTypes in the Amazon Elastic Container Service Developer Guide.

", + "smithy.api#examples": [ + { + "title": "To update the primary task set for a service", + "documentation": "This example updates the primary task set for a service MyService that uses the EXTERNAL deployment controller type. ", + "input": { + "cluster": "MyCluster", + "service": "MyService", + "primaryTaskSet": "arn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789" + }, + "output": { + "taskSet": { + "id": "ecs-svc/1234567890123456789", + "taskSetArn": "arn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789", + "status": "PRIMARY", + "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/sample-fargate:2", + "computedDesiredCount": 1, + "pendingCount": 0, + "runningCount": 0, + "createdAt": 1.557128360711E9, + "updatedAt": 1.557129412653E9, + "launchType": "EC2", + "networkConfiguration": { + "awsvpcConfiguration": { + "subnets": [ + "subnet-12344321" + ], + "securityGroups": [ + "sg-12344312" + ], + "assignPublicIp": "DISABLED" + } + }, + "loadBalancers": [], + "serviceRegistries": [], + "scale": { + "value": 50, + "unit": "PERCENT" + }, + "stabilityStatus": "STABILIZING", + "stabilityStatusAt": 1.557129279914E9 + } + } + } + ] } }, "com.amazonaws.ecs#UpdateServicePrimaryTaskSetRequest": { @@ -13016,7 +16779,7 @@ "cluster": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The short name or full Amazon Resource Name (ARN) of the cluster that your service runs on.\n\t\t\tIf you do not specify a cluster, the default cluster is assumed.

" + "smithy.api#documentation": "

The short name or full Amazon Resource Name (ARN) of the cluster that your service runs on.\n\t\t\tIf you do not specify a cluster, the default cluster is assumed.

\n

You can't change the cluster name.

" } }, "service": { @@ -13029,49 +16792,55 @@ "desiredCount": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { - "smithy.api#documentation": "

The number of instantiations of the task to place and keep running in your\n\t\t\tservice.

" + "smithy.api#documentation": "

The number of instantiations of the task to place and keep running in your\n\t\t\tservice.

\n

This parameter doesn't trigger a new service deployment.

" } }, "taskDefinition": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The family and revision (family:revision) or\n\t\t\tfull ARN of the task definition to run in your service. If a revision is\n\t\t\tnot specified, the latest ACTIVE revision is used. If you modify the task\n\t\t\tdefinition with UpdateService, Amazon ECS spawns a task with the new version of\n\t\t\tthe task definition and then stops an old task after the new version is running.

" + "smithy.api#documentation": "

The family and revision (family:revision) or\n\t\t\tfull ARN of the task definition to run in your service. If a revision is\n\t\t\tnot specified, the latest ACTIVE revision is used. If you modify the task\n\t\t\tdefinition with UpdateService, Amazon ECS spawns a task with the new version of\n\t\t\tthe task definition and then stops an old task after the new version is running.

\n

This parameter triggers a new service deployment.

" } }, "capacityProviderStrategy": { "target": "com.amazonaws.ecs#CapacityProviderStrategy", "traits": { - "smithy.api#documentation": "

The capacity provider strategy to update the service to use.

\n

if the service uses the default capacity provider strategy for the cluster, the\n\t\t\tservice can be updated to use one or more capacity providers as opposed to the default\n\t\t\tcapacity provider strategy. However, when a service is using a capacity provider\n\t\t\tstrategy that's not the default capacity provider strategy, the service can't be updated\n\t\t\tto use the cluster's default capacity provider strategy.

\n

A capacity provider strategy consists of one or more capacity providers along with the\n\t\t\t\tbase and weight to assign to them. A capacity provider\n\t\t\tmust be associated with the cluster to be used in a capacity provider strategy. The\n\t\t\t\tPutClusterCapacityProviders API is used to associate a capacity\n\t\t\tprovider with a cluster. Only capacity providers with an ACTIVE or\n\t\t\t\tUPDATING status can be used.

\n

If specifying a capacity provider that uses an Auto Scaling group, the capacity\n\t\t\tprovider must already be created. New capacity providers can be created with the CreateCapacityProvider API operation.

\n

To use a Fargate capacity provider, specify either the FARGATE or\n\t\t\t\tFARGATE_SPOT capacity providers. The Fargate capacity providers are\n\t\t\tavailable to all accounts and only need to be associated with a cluster to be\n\t\t\tused.

\n

The PutClusterCapacityProviders API operation is used to update the\n\t\t\tlist of available capacity providers for a cluster after the cluster is created.

\n

" + "smithy.api#documentation": "

The details of a capacity provider strategy. You can set a capacity provider when you\n\t\t\tcreate a cluster, run a task, or update a service.

\n

When you use Fargate, the capacity providers are FARGATE or\n\t\t\t\tFARGATE_SPOT.

\n

When you use Amazon EC2, the capacity providers are Auto Scaling groups.

\n

You can change capacity providers for rolling deployments and blue/green\n\t\t\tdeployments.

\n

The following list provides the valid transitions:

\n
    \n
  • \n

    Update the Fargate launch type to an Auto Scaling group capacity provider.

    \n
  • \n
  • \n

    Update the Amazon EC2 launch type to a Fargate capacity provider.

    \n
  • \n
  • \n

    Update the Fargate capacity provider to an Auto Scaling group capacity provider.

    \n
  • \n
  • \n

    Update the Amazon EC2 capacity provider to a Fargate capacity provider.

    \n
  • \n
  • \n

    Update the Auto Scaling group or Fargate capacity provider back to the launch type.

    \n

    Pass an empty list in the capacityProviderStrategy parameter.

    \n
  • \n
\n

For information about Amazon Web Services CDK considerations, see Amazon Web Services CDK considerations.

\n

This parameter doesn't trigger a new service deployment.

" } }, "deploymentConfiguration": { "target": "com.amazonaws.ecs#DeploymentConfiguration", "traits": { - "smithy.api#documentation": "

Optional deployment parameters that control how many tasks run during the deployment\n\t\t\tand the ordering of stopping and starting tasks.

" + "smithy.api#documentation": "

Optional deployment parameters that control how many tasks run during the deployment\n\t\t\tand the ordering of stopping and starting tasks.

\n

This parameter doesn't trigger a new service deployment.

" + } + }, + "availabilityZoneRebalancing": { + "target": "com.amazonaws.ecs#AvailabilityZoneRebalancing", + "traits": { + "smithy.api#documentation": "

Indicates whether to use Availability Zone rebalancing for the service.

\n

For more information, see Balancing an Amazon ECS service across Availability Zones in\n\t\t\tthe \n Amazon Elastic Container Service Developer Guide\n .

\n

The default behavior of AvailabilityZoneRebalancing differs between create and update requests:

\n
    \n
  • \n

    For create service requests, when no value is specified for AvailabilityZoneRebalancing, Amazon ECS defaults the value to ENABLED.

    \n
  • \n
  • \n

    For update service requests, when no value is specified for AvailabilityZoneRebalancing, Amazon ECS defaults to the existing service’s AvailabilityZoneRebalancing value. If the service never had an AvailabilityZoneRebalancing value set, Amazon ECS treats this as DISABLED.

    \n
  • \n
\n

This parameter doesn't trigger a new service deployment.

" } }, "networkConfiguration": { "target": "com.amazonaws.ecs#NetworkConfiguration", "traits": { - "smithy.api#documentation": "

An object representing the network configuration for the service.

" + "smithy.api#documentation": "

An object representing the network configuration for the service.

\n

This parameter triggers a new service deployment.

" } }, "placementConstraints": { "target": "com.amazonaws.ecs#PlacementConstraints", "traits": { - "smithy.api#documentation": "

An array of task placement constraint objects to update the service to use. If no\n\t\t\tvalue is specified, the existing placement constraints for the service will remain\n\t\t\tunchanged. If this value is specified, it will override any existing placement\n\t\t\tconstraints defined for the service. To remove all existing placement constraints,\n\t\t\tspecify an empty array.

\n

You can specify a maximum of 10 constraints for each task. This limit includes\n\t\t\tconstraints in the task definition and those specified at runtime.

" + "smithy.api#documentation": "

An array of task placement constraint objects to update the service to use. If no\n\t\t\tvalue is specified, the existing placement constraints for the service will remain\n\t\t\tunchanged. If this value is specified, it will override any existing placement\n\t\t\tconstraints defined for the service. To remove all existing placement constraints,\n\t\t\tspecify an empty array.

\n

You can specify a maximum of 10 constraints for each task. This limit includes\n\t\t\tconstraints in the task definition and those specified at runtime.

\n

This parameter doesn't trigger a new service deployment.

" } }, "placementStrategy": { "target": "com.amazonaws.ecs#PlacementStrategies", "traits": { - "smithy.api#documentation": "

The task placement strategy objects to update the service to use. If no value is\n\t\t\tspecified, the existing placement strategy for the service will remain unchanged. If\n\t\t\tthis value is specified, it will override the existing placement strategy defined for\n\t\t\tthe service. To remove an existing placement strategy, specify an empty object.

\n

You can specify a maximum of five strategy rules for each service.

" + "smithy.api#documentation": "

The task placement strategy objects to update the service to use. If no value is\n\t\t\tspecified, the existing placement strategy for the service will remain unchanged. If\n\t\t\tthis value is specified, it will override the existing placement strategy defined for\n\t\t\tthe service. To remove an existing placement strategy, specify an empty object.

\n

You can specify a maximum of five strategy rules for each service.

\n

This parameter doesn't trigger a new service deployment.

" } }, "platformVersion": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The platform version that your tasks in the service run on. A platform version is only\n\t\t\tspecified for tasks using the Fargate launch type. If a platform version\n\t\t\tis not specified, the LATEST platform version is used. For more\n\t\t\tinformation, see Fargate Platform\n\t\t\t\tVersions in the Amazon Elastic Container Service Developer Guide.

" + "smithy.api#documentation": "

The platform version that your tasks in the service run on. A platform version is only\n\t\t\tspecified for tasks using the Fargate launch type. If a platform version\n\t\t\tis not specified, the LATEST platform version is used. For more\n\t\t\tinformation, see Fargate Platform\n\t\t\t\tVersions in the Amazon Elastic Container Service Developer Guide.

\n

This parameter triggers a new service deployment.

" } }, "forceNewDeployment": { @@ -13084,49 +16853,58 @@ "healthCheckGracePeriodSeconds": { "target": "com.amazonaws.ecs#BoxedInteger", "traits": { - "smithy.api#documentation": "

The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy\n\t\t\tElastic Load Balancing target health checks after a task has first started. This is only valid if your\n\t\t\tservice is configured to use a load balancer. If your service's tasks take a while to\n\t\t\tstart and respond to Elastic Load Balancing health checks, you can specify a health check grace period of\n\t\t\tup to 2,147,483,647 seconds. During that time, the Amazon ECS service scheduler ignores\n\t\t\tthe Elastic Load Balancing health check status. This grace period can prevent the ECS service scheduler\n\t\t\tfrom marking tasks as unhealthy and stopping them before they have time to come\n\t\t\tup.

" + "smithy.api#documentation": "

The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy\n\t\t\tElastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't\n\t\t\tspecify a health check grace period value, the default value of 0 is used.\n\t\t\tIf you don't use any of the health checks, then\n\t\t\t\thealthCheckGracePeriodSeconds is unused.

\n

If your service's tasks take a while to start and respond to health checks, you can\n\t\t\tspecify a health check grace period of up to 2,147,483,647 seconds (about 69 years).\n\t\t\tDuring that time, the Amazon ECS service scheduler ignores health check status. This grace\n\t\t\tperiod can prevent the service scheduler from marking tasks as unhealthy and stopping\n\t\t\tthem before they have time to come up.

\n

If your service has more running tasks than desired, unhealthy tasks in the grace period might be stopped to reach the desired count.

\n

This parameter doesn't trigger a new service deployment.

" } }, + "deploymentController": { + "target": "com.amazonaws.ecs#DeploymentController" + }, "enableExecuteCommand": { "target": "com.amazonaws.ecs#BoxedBoolean", "traits": { - "smithy.api#documentation": "

If true, this enables execute command functionality on all task\n\t\t\tcontainers.

\n

If you do not want to override the value that was set when the service was created,\n\t\t\tyou can set this to null when performing this action.

" + "smithy.api#documentation": "

If true, this enables execute command functionality on all task\n\t\t\tcontainers.

\n

If you do not want to override the value that was set when the service was created,\n\t\t\tyou can set this to null when performing this action.

\n

This parameter doesn't trigger a new service deployment.

" } }, "enableECSManagedTags": { "target": "com.amazonaws.ecs#BoxedBoolean", "traits": { - "smithy.api#documentation": "

Determines whether to turn on Amazon ECS managed tags for the tasks in the service. For\n\t\t\tmore information, see Tagging Your Amazon ECS\n\t\t\t\tResources in the Amazon Elastic Container Service Developer Guide.

\n

Only tasks launched after the update will reflect the update. To update the tags on\n\t\t\tall tasks, set forceNewDeployment to true, so that Amazon ECS\n\t\t\tstarts new tasks with the updated tags.

" + "smithy.api#documentation": "

Determines whether to turn on Amazon ECS managed tags for the tasks in the service. For\n\t\t\tmore information, see Tagging Your Amazon ECS\n\t\t\t\tResources in the Amazon Elastic Container Service Developer Guide.

\n

Only tasks launched after the update will reflect the update. To update the tags on\n\t\t\tall tasks, set forceNewDeployment to true, so that Amazon ECS\n\t\t\tstarts new tasks with the updated tags.

\n

This parameter doesn't trigger a new service deployment.

" } }, "loadBalancers": { "target": "com.amazonaws.ecs#LoadBalancers", "traits": { - "smithy.api#documentation": "

A list of Elastic Load Balancing load balancer objects. It contains the load balancer name, the\n\t\t\tcontainer name, and the container port to access from the load balancer. The container\n\t\t\tname is as it appears in a container definition.

\n

When you add, update, or remove a load balancer configuration, Amazon ECS starts new tasks\n\t\t\twith the updated Elastic Load Balancing configuration, and then stops the old tasks when the new tasks\n\t\t\tare running.

\n

For services that use rolling updates, you can add, update, or remove Elastic Load Balancing target\n\t\t\tgroups. You can update from a single target group to multiple target groups and from\n\t\t\tmultiple target groups to a single target group.

\n

For services that use blue/green deployments, you can update Elastic Load Balancing target groups by\n\t\t\tusing \n CreateDeployment\n through CodeDeploy. Note that multiple target groups\n\t\t\tare not supported for blue/green deployments. For more information see Register\n\t\t\t\tmultiple target groups with a service in the Amazon Elastic Container Service Developer Guide.

\n

For services that use the external deployment controller, you can add, update, or\n\t\t\tremove load balancers by using CreateTaskSet.\n\t\t\tNote that multiple target groups are not supported for external deployments. For more\n\t\t\tinformation see Register\n\t\t\t\tmultiple target groups with a service in the Amazon Elastic Container Service Developer Guide.

\n

You can remove existing loadBalancers by passing an empty list.

" + "smithy.api#documentation": "\n

You must have a service-linked role when you update this property

\n
\n

A list of Elastic Load Balancing load balancer objects. It contains the load balancer name, the\n\t\t\tcontainer name, and the container port to access from the load balancer. The container\n\t\t\tname is as it appears in a container definition.

\n

When you add, update, or remove a load balancer configuration, Amazon ECS starts new tasks\n\t\t\twith the updated Elastic Load Balancing configuration, and then stops the old tasks when the new tasks\n\t\t\tare running.

\n

For services that use rolling updates, you can add, update, or remove Elastic Load Balancing target\n\t\t\tgroups. You can update from a single target group to multiple target groups and from\n\t\t\tmultiple target groups to a single target group.

\n

For services that use blue/green deployments, you can update Elastic Load Balancing target groups by\n\t\t\tusing \n CreateDeployment\n through CodeDeploy. Note that multiple target groups\n\t\t\tare not supported for blue/green deployments. For more information see Register\n\t\t\t\tmultiple target groups with a service in the Amazon Elastic Container Service Developer Guide.

\n

For services that use the external deployment controller, you can add, update, or\n\t\t\tremove load balancers by using CreateTaskSet.\n\t\t\tNote that multiple target groups are not supported for external deployments. For more\n\t\t\tinformation see Register\n\t\t\t\tmultiple target groups with a service in the Amazon Elastic Container Service Developer Guide.

\n

You can remove existing loadBalancers by passing an empty list.

\n

This parameter triggers a new service deployment.

" } }, "propagateTags": { "target": "com.amazonaws.ecs#PropagateTags", "traits": { - "smithy.api#documentation": "

Determines whether to propagate the tags from the task definition or the service to\n\t\t\tthe task. If no value is specified, the tags aren't propagated.

\n

Only tasks launched after the update will reflect the update. To update the tags on\n\t\t\tall tasks, set forceNewDeployment to true, so that Amazon ECS\n\t\t\tstarts new tasks with the updated tags.

" + "smithy.api#documentation": "

Determines whether to propagate the tags from the task definition or the service to\n\t\t\tthe task. If no value is specified, the tags aren't propagated.

\n

Only tasks launched after the update will reflect the update. To update the tags on\n\t\t\tall tasks, set forceNewDeployment to true, so that Amazon ECS\n\t\t\tstarts new tasks with the updated tags.

\n

This parameter doesn't trigger a new service deployment.

" } }, "serviceRegistries": { "target": "com.amazonaws.ecs#ServiceRegistries", "traits": { - "smithy.api#documentation": "

The details for the service discovery registries to assign to this service. For more\n\t\t\tinformation, see Service\n\t\t\t\tDiscovery.

\n

When you add, update, or remove the service registries configuration, Amazon ECS starts new\n\t\t\ttasks with the updated service registries configuration, and then stops the old tasks\n\t\t\twhen the new tasks are running.

\n

You can remove existing serviceRegistries by passing an empty\n\t\t\tlist.

" + "smithy.api#documentation": "\n

You must have a service-linked role when you update this property.

\n

For more information about the role see the CreateService request\n\t\t\t\tparameter \n role\n .

\n
\n

The details for the service discovery registries to assign to this service. For more\n\t\t\tinformation, see Service\n\t\t\t\tDiscovery.

\n

When you add, update, or remove the service registries configuration, Amazon ECS starts new\n\t\t\ttasks with the updated service registries configuration, and then stops the old tasks\n\t\t\twhen the new tasks are running.

\n

You can remove existing serviceRegistries by passing an empty\n\t\t\tlist.

\n

This parameter triggers a new service deployment.

" } }, "serviceConnectConfiguration": { "target": "com.amazonaws.ecs#ServiceConnectConfiguration", "traits": { - "smithy.api#documentation": "

The configuration for this service to discover and connect to\n\tservices, and be discovered by, and connected from, other services within a namespace.

\n

Tasks that run in a namespace can use short names to connect\n\tto services in the namespace. Tasks can connect to services across all of the clusters in the namespace.\n\tTasks connect through a managed proxy container\n\tthat collects logs and metrics for increased visibility.\n\tOnly the tasks that Amazon ECS services create are supported with Service Connect.\n\tFor more information, see Service Connect in the Amazon Elastic Container Service Developer Guide.

" + "smithy.api#documentation": "

The configuration for this service to discover and connect to\n\tservices, and be discovered by, and connected from, other services within a namespace.

\n

Tasks that run in a namespace can use short names to connect\n\tto services in the namespace. Tasks can connect to services across all of the clusters in the namespace.\n\tTasks connect through a managed proxy container\n\tthat collects logs and metrics for increased visibility.\n\tOnly the tasks that Amazon ECS services create are supported with Service Connect.\n\tFor more information, see Service Connect in the Amazon Elastic Container Service Developer Guide.

\n

This parameter triggers a new service deployment.

" } }, "volumeConfigurations": { "target": "com.amazonaws.ecs#ServiceVolumeConfigurations", "traits": { - "smithy.api#documentation": "

The details of the volume that was configuredAtLaunch. You can configure\n\t\t\tthe size, volumeType, IOPS, throughput, snapshot and encryption in ServiceManagedEBSVolumeConfiguration. The name of the volume\n\t\t\tmust match the name from the task definition. If set to null, no new\n\t\t\tdeployment is triggered. Otherwise, if this configuration differs from the existing one,\n\t\t\tit triggers a new deployment.

" + "smithy.api#documentation": "

The details of the volume that was configuredAtLaunch. You can configure\n\t\t\tthe size, volumeType, IOPS, throughput, snapshot and encryption in ServiceManagedEBSVolumeConfiguration. The name of the volume\n\t\t\tmust match the name from the task definition. If set to null, no new\n\t\t\tdeployment is triggered. Otherwise, if this configuration differs from the existing one,\n\t\t\tit triggers a new deployment.

\n

This parameter triggers a new service deployment.

" + } + }, + "vpcLatticeConfigurations": { + "target": "com.amazonaws.ecs#VpcLatticeConfigurations", + "traits": { + "smithy.api#documentation": "

An object representing the VPC Lattice configuration for the service being\n\t\t\tupdated.

\n

This parameter triggers a new service deployment.

" } } }, @@ -13183,36 +16961,35 @@ "smithy.api#documentation": "

Updates the protection status of a task. You can set protectionEnabled to\n\t\t\t\ttrue to protect your task from termination during scale-in events from\n\t\t\t\tService\n\t\t\t\tAutoscaling or deployments.

\n

Task-protection, by default, expires after 2 hours at which point Amazon ECS clears the\n\t\t\t\tprotectionEnabled property making the task eligible for termination by\n\t\t\ta subsequent scale-in event.

\n

You can specify a custom expiration period for task protection from 1 minute to up to\n\t\t\t2,880 minutes (48 hours). To specify the custom expiration period, set the\n\t\t\t\texpiresInMinutes property. The expiresInMinutes property\n\t\t\tis always reset when you invoke this operation for a task that already has\n\t\t\t\tprotectionEnabled set to true. You can keep extending the\n\t\t\tprotection expiration period of a task by invoking this operation repeatedly.

\n

To learn more about Amazon ECS task protection, see Task scale-in\n\t\t\t\tprotection in the \n Amazon Elastic Container Service Developer Guide\n .

\n \n

This operation is only supported for tasks belonging to an Amazon ECS service. Invoking\n\t\t\t\tthis operation for a standalone task will result in an TASK_NOT_VALID\n\t\t\t\tfailure. For more information, see API failure\n\t\t\t\t\treasons.

\n
\n \n

If you prefer to set task protection from within the container, we recommend using\n\t\t\t\tthe Task scale-in protection endpoint.

\n
", "smithy.api#examples": [ { - "title": "To set task scale-in protection for a task for 60 minutes", - "documentation": "This example enables scale-in protection for a task for 60 minutes.", + "title": "To remove task scale-in protection", + "documentation": "This example removes scale-in protection for a task.", "input": { "cluster": "test-task-protection", "tasks": [ "b8b1cf532d0e46ba8d44a40d1de16772" ], - "protectionEnabled": true, - "expiresInMinutes": 60 + "protectionEnabled": false }, "output": { "protectedTasks": [ { "taskArn": "arn:aws:ecs:us-west-2:012345678910:task/default/b8b1cf532d0e46ba8d44a40d1de16772", - "protectionEnabled": true, - "expirationDate": "2022-11-02T06:56:32.553Z" + "protectionEnabled": false } ], "failures": [] } }, { - "title": "To set task scale-in protection for the default time period in minutes", - "documentation": "This example enables task scale-in protection for a task, without specifying the expiresInMinutes parameter, for the default protection period of 120 minutes.", + "title": "To set task scale-in protection for a task for 60 minutes", + "documentation": "This example enables scale-in protection for a task for 60 minutes.", "input": { "cluster": "test-task-protection", "tasks": [ "b8b1cf532d0e46ba8d44a40d1de16772" ], - "protectionEnabled": true + "protectionEnabled": true, + "expiresInMinutes": 60 }, "output": { "protectedTasks": [ @@ -13226,20 +17003,21 @@ } }, { - "title": "To remove task scale-in protection", - "documentation": "This example removes scale-in protection for a task.", + "title": "To set task scale-in protection for the default time period in minutes", + "documentation": "This example enables task scale-in protection for a task, without specifying the expiresInMinutes parameter, for the default protection period of 120 minutes.", "input": { "cluster": "test-task-protection", "tasks": [ "b8b1cf532d0e46ba8d44a40d1de16772" ], - "protectionEnabled": false + "protectionEnabled": true }, "output": { "protectedTasks": [ { "taskArn": "arn:aws:ecs:us-west-2:012345678910:task/default/b8b1cf532d0e46ba8d44a40d1de16772", - "protectionEnabled": false + "protectionEnabled": true, + "expirationDate": "2022-11-02T06:56:32.553Z" } ], "failures": [] @@ -13342,7 +17120,55 @@ } ], "traits": { - "smithy.api#documentation": "

Modifies a task set. This is used when a service uses the EXTERNAL\n\t\t\tdeployment controller type. For more information, see Amazon ECS Deployment\n\t\t\t\tTypes in the Amazon Elastic Container Service Developer Guide.

" + "smithy.api#documentation": "

Modifies a task set. This is used when a service uses the EXTERNAL\n\t\t\tdeployment controller type. For more information, see Amazon ECS Deployment\n\t\t\t\tTypes in the Amazon Elastic Container Service Developer Guide.

", + "smithy.api#examples": [ + { + "title": "To update a task set", + "documentation": "This example updates the task set to adjust the scale.", + "input": { + "cluster": "MyCluster", + "service": "MyService", + "taskSet": "arn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789", + "scale": { + "value": 50, + "unit": "PERCENT" + } + }, + "output": { + "taskSet": { + "id": "ecs-svc/1234567890123456789", + "taskSetArn": "arn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789", + "status": "ACTIVE", + "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/sample-fargate:2", + "computedDesiredCount": 0, + "pendingCount": 0, + "runningCount": 0, + "createdAt": 1.557128360711E9, + "updatedAt": 1.557129279914E9, + "launchType": "EC2", + "networkConfiguration": { + "awsvpcConfiguration": { + "subnets": [ + "subnet-12344321" + ], + "securityGroups": [ + "sg-12344321" + ], + "assignPublicIp": "DISABLED" + } + }, + "loadBalancers": [], + "serviceRegistries": [], + "scale": { + "value": 50, + "unit": "PERCENT" + }, + "stabilityStatus": "STABILIZING", + "stabilityStatusAt": 1.557129279914E9 + } + } + } + ] } }, "com.amazonaws.ecs#UpdateTaskSetRequest": { @@ -13395,6 +17221,44 @@ "smithy.api#output": {} } }, + "com.amazonaws.ecs#VCpuCountRangeRequest": { + "type": "structure", + "members": { + "min": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The minimum number of vCPUs. Instance types with fewer vCPUs than this value are excluded from selection.

", + "smithy.api#required": {} + } + }, + "max": { + "target": "com.amazonaws.ecs#BoxedInteger", + "traits": { + "smithy.api#documentation": "

The maximum number of vCPUs. Instance types with more vCPUs than this value are excluded from selection.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The minimum and maximum number of vCPUs for instance type selection. This allows you to specify a range of vCPU counts that meet your workload requirements.

" + } + }, + "com.amazonaws.ecs#VersionConsistency": { + "type": "enum", + "members": { + "ENABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "enabled" + } + }, + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "disabled" + } + } + } + }, "com.amazonaws.ecs#VersionInfo": { "type": "structure", "members": { @@ -13407,7 +17271,7 @@ "agentHash": { "target": "com.amazonaws.ecs#String", "traits": { - "smithy.api#documentation": "

The Git commit hash for the Amazon ECS container agent build on the amazon-ecs-agent\n\t\t\t GitHub repository.

" + "smithy.api#documentation": "

The Git commit hash for the Amazon ECS container agent build on the amazon-ecs-agent\n\t\t\t GitHub repository.

" } }, "dockerVersion": { @@ -13496,6 +17360,41 @@ "member": { "target": "com.amazonaws.ecs#Volume" } + }, + "com.amazonaws.ecs#VpcLatticeConfiguration": { + "type": "structure", + "members": { + "roleArn": { + "target": "com.amazonaws.ecs#IAMRoleArn", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM role to associate with this VPC Lattice configuration. This is the\n\t\t\tAmazon ECS\u2028 infrastructure IAM role that is used to manage your VPC Lattice\n\t\t\tinfrastructure.

", + "smithy.api#required": {} + } + }, + "targetGroupArn": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The full Amazon Resource Name (ARN) of the target group or groups associated with the VPC Lattice\n\t\t\tconfiguration that the Amazon ECS tasks will be registered to.

", + "smithy.api#required": {} + } + }, + "portName": { + "target": "com.amazonaws.ecs#String", + "traits": { + "smithy.api#documentation": "

The name of the port mapping to register in the VPC Lattice target group. This is the name\n\t\t\tof the portMapping you defined in your task definition.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The VPC Lattice configuration for your service that holds the information for the target\n\t\t\tgroup(s) Amazon ECS tasks will be registered to.

" + } + }, + "com.amazonaws.ecs#VpcLatticeConfigurations": { + "type": "list", + "member": { + "target": "com.amazonaws.ecs#VpcLatticeConfiguration" + } } } } diff --git a/aws/sdk/aws-models/glacier.json b/aws/sdk/aws-models/glacier.json index c98fd0342eb..7f0d5ab0358 100644 --- a/aws/sdk/aws-models/glacier.json +++ b/aws/sdk/aws-models/glacier.json @@ -2845,17 +2845,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -2869,17 +2858,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -2893,17 +2871,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -2917,17 +2884,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { diff --git a/aws/sdk/aws-models/iam.json b/aws/sdk/aws-models/iam.json index b03777a8607..3961912f674 100644 --- a/aws/sdk/aws-models/iam.json +++ b/aws/sdk/aws-models/iam.json @@ -177,9 +177,21 @@ { "target": "com.amazonaws.iam#DetachUserPolicy" }, + { + "target": "com.amazonaws.iam#DisableOrganizationsRootCredentialsManagement" + }, + { + "target": "com.amazonaws.iam#DisableOrganizationsRootSessions" + }, { "target": "com.amazonaws.iam#EnableMFADevice" }, + { + "target": "com.amazonaws.iam#EnableOrganizationsRootCredentialsManagement" + }, + { + "target": "com.amazonaws.iam#EnableOrganizationsRootSessions" + }, { "target": "com.amazonaws.iam#GenerateCredentialReport" }, @@ -315,6 +327,9 @@ { "target": "com.amazonaws.iam#ListOpenIDConnectProviderTags" }, + { + "target": "com.amazonaws.iam#ListOrganizationsFeatures" + }, { "target": "com.amazonaws.iam#ListPolicies" }, @@ -531,12 +546,6 @@ "smithy.rules#endpointRuleSet": { "version": "1.0", "parameters": { - "Region": { - "builtIn": "AWS::Region", - "required": false, - "documentation": "The AWS region used to dispatch the request.", - "type": "String" - }, "UseDualStack": { "builtIn": "AWS::UseDualStack", "required": true, @@ -556,6 +565,12 @@ "required": false, "documentation": "Override the endpoint used to send this request", "type": "String" + }, + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" } }, "rules": [ @@ -587,771 +602,1117 @@ "type": "error" }, { - "conditions": [ + "conditions": [], + "rules": [ { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseDualStack" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" }, - true - ] + "properties": {}, + "headers": {} + }, + "type": "endpoint" } ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "type": "tree" } ], "type": "tree" }, { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Region" - } - ] - } - ], + "conditions": [], "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { "ref": "Region" } - ], - "assign": "PartitionResult" + ] } ], "rules": [ { "conditions": [ { - "fn": "stringEquals", + "fn": "aws.partition", "argv": [ { - "fn": "getAttr", + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", "argv": [ { - "ref": "PartitionResult" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] }, - "name" + "aws" ] }, - "aws" - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ { - "ref": "UseDualStack" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] }, - false - ] - } - ], - "endpoint": { - "url": "https://iam.amazonaws.com", - "properties": { - "authSchemes": [ { - "name": "sigv4", - "signingName": "iam", - "signingRegion": "us-east-1" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } - ] + ], + "endpoint": { + "url": "https://iam.global.api.aws", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ { - "fn": "stringEquals", - "argv": [ + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws" + ] + }, { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseFIPS" }, - "name" + true ] }, - "aws" - ] - }, - { - "fn": "booleanEquals", - "argv": [ { - "ref": "UseFIPS" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "endpoint": { + "url": "https://iam-fips.global.api.aws", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1" + } + ] }, - true - ] + "headers": {} + }, + "type": "endpoint" }, { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseDualStack" + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws-cn" + ] }, - false - ] - } - ], - "endpoint": { - "url": "https://iam-fips.amazonaws.com", - "properties": { - "authSchemes": [ { - "name": "sigv4", - "signingName": "iam", - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseDualStack" }, - "name" + true + ] + } + ], + "endpoint": { + "url": "https://iam.global.api.amazonwebservices.com.cn", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "cn-north-1" + } ] }, - "aws-cn" - ] + "headers": {} + }, + "type": "endpoint" }, { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseFIPS" + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws-cn" + ] }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ { - "ref": "UseDualStack" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] }, - false - ] - } - ], - "endpoint": { - "url": "https://iam.cn-north-1.amazonaws.com.cn", - "properties": { - "authSchemes": [ { - "name": "sigv4", - "signingName": "iam", - "signingRegion": "cn-north-1" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] } - ] + ], + "endpoint": { + "url": "https://iam.cn-north-1.amazonaws.com.cn", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "cn-north-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ { - "fn": "stringEquals", - "argv": [ + "conditions": [ { - "fn": "getAttr", + "fn": "stringEquals", "argv": [ { - "ref": "PartitionResult" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] }, - "name" + "aws-us-gov" ] }, - "aws-us-gov" - ] - }, - { - "fn": "booleanEquals", - "argv": [ { - "ref": "UseFIPS" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] }, - false - ] + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "endpoint": { + "url": "https://iam.us-gov.api.aws", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-gov-west-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" }, { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseDualStack" + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws-us-gov" + ] }, - false - ] - } - ], - "endpoint": { - "url": "https://iam.us-gov.amazonaws.com", - "properties": { - "authSchemes": [ { - "name": "sigv4", - "signingName": "iam", - "signingRegion": "us-gov-west-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseDualStack" }, - "name" + true + ] + } + ], + "endpoint": { + "url": "https://iam.us-gov.api.aws", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-gov-west-1" + } ] }, - "aws-us-gov" - ] + "headers": {} + }, + "type": "endpoint" }, { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseFIPS" + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws-us-gov" + ] }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ { - "ref": "UseDualStack" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] }, - false - ] - } - ], - "endpoint": { - "url": "https://iam.us-gov.amazonaws.com", - "properties": { - "authSchemes": [ { - "name": "sigv4", - "signingName": "iam", - "signingRegion": "us-gov-west-1" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] } - ] + ], + "endpoint": { + "url": "https://iam.us-gov.amazonaws.com", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-gov-west-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ { - "fn": "stringEquals", - "argv": [ + "conditions": [ { - "fn": "getAttr", + "fn": "stringEquals", "argv": [ { - "ref": "PartitionResult" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] }, - "name" + "aws-us-gov" + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true ] }, - "aws-iso" - ] - }, - { - "fn": "booleanEquals", - "argv": [ { - "ref": "UseFIPS" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + } + ], + "endpoint": { + "url": "https://iam.us-gov.amazonaws.com", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-gov-west-1" + } + ] }, - false - ] + "headers": {} + }, + "type": "endpoint" }, { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseDualStack" + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws-iso" + ] }, - false - ] - } - ], - "endpoint": { - "url": "https://iam.us-iso-east-1.c2s.ic.gov", - "properties": { - "authSchemes": [ { - "name": "sigv4", - "signingName": "iam", - "signingRegion": "us-iso-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseDualStack" }, - "name" + false + ] + } + ], + "endpoint": { + "url": "https://iam.us-iso-east-1.c2s.ic.gov", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-iso-east-1" + } ] }, - "aws-iso-b" - ] + "headers": {} + }, + "type": "endpoint" }, { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseFIPS" + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws-iso" + ] }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ { - "ref": "UseDualStack" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] }, - false - ] - } - ], - "endpoint": { - "url": "https://iam.us-isob-east-1.sc2s.sgov.gov", - "properties": { - "authSchemes": [ { - "name": "sigv4", - "signingName": "iam", - "signingRegion": "us-isob-east-1" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] } - ] + ], + "endpoint": { + "url": "https://iam-fips.us-iso-east-1.c2s.ic.gov", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-iso-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ { - "fn": "stringEquals", - "argv": [ + "conditions": [ { - "fn": "getAttr", + "fn": "stringEquals", "argv": [ { - "ref": "PartitionResult" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] }, - "name" + "aws-iso-b" ] }, - "aws-iso-e" - ] - }, - { - "fn": "booleanEquals", - "argv": [ { - "ref": "UseFIPS" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] }, - false - ] + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + } + ], + "endpoint": { + "url": "https://iam.us-isob-east-1.sc2s.sgov.gov", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-isob-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" }, { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseDualStack" + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws-iso-b" + ] }, - false - ] - } - ], - "endpoint": { - "url": "https://iam.eu-isoe-west-1.cloud.adc-e.uk", - "properties": { - "authSchemes": [ { - "name": "sigv4", - "signingName": "iam", - "signingRegion": "eu-isoe-west-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseDualStack" }, - "name" + false + ] + } + ], + "endpoint": { + "url": "https://iam-fips.us-isob-east-1.sc2s.sgov.gov", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-isob-east-1" + } ] }, - "aws-iso-f" - ] + "headers": {} + }, + "type": "endpoint" }, { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseFIPS" + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws-iso-e" + ] }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ { - "ref": "UseDualStack" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] }, - false - ] - } - ], - "endpoint": { - "url": "https://iam.us-isof-south-1.csp.hci.ic.gov", - "properties": { - "authSchemes": [ { - "name": "sigv4", - "signingName": "iam", - "signingRegion": "us-isof-south-1" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" + ], + "endpoint": { + "url": "https://iam.eu-isoe-west-1.cloud.adc-e.uk", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "eu-isoe-west-1" + } + ] }, - true - ] + "headers": {} + }, + "type": "endpoint" }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "stringEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsFIPS" + "name" ] - } + }, + "aws-iso-f" ] }, { "fn": "booleanEquals", "argv": [ - true, + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + } + ], + "endpoint": { + "url": "https://iam.us-isof-south-1.csp.hci.ic.gov", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-isof-south-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ { "fn": "getAttr", "argv": [ { "ref": "PartitionResult" }, - "supportsDualStack" + "name" ] - } + }, + "aws-eusc" ] - } - ], - "rules": [ + }, { - "conditions": [], - "endpoint": { - "url": "https://iam-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] } ], - "type": "tree" + "endpoint": { + "url": "https://iam.eusc-de-east-1.amazonaws.eu", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "eusc-de-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" }, { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseFIPS" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] }, - true - ] - } - ], - "rules": [ - { - "conditions": [ { "fn": "booleanEquals", "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] + "ref": "UseDualStack" }, true ] } ], "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://iam-fips.{PartitionResult#dualStackDnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{PartitionResult#implicitGlobalRegion}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, { "conditions": [], - "endpoint": { - "url": "https://iam-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } ], "type": "tree" }, { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseDualStack" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] }, - true - ] - } - ], - "rules": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://iam-fips.{PartitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{PartitionResult#implicitGlobalRegion}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true ] } ], "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://iam.{PartitionResult#dualStackDnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{PartitionResult#implicitGlobalRegion}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, { "conditions": [], - "endpoint": { - "url": "https://iam.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } ], "type": "tree" }, { "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" + "endpoint": { + "url": "https://iam.{PartitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "{PartitionResult#implicitGlobalRegion}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" } ], "type": "tree" - }, - { - "conditions": [], - "endpoint": { - "url": "https://iam.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" } ], "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ], "type": "tree" - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" } ] }, "smithy.rules#endpointTests": { "testCases": [ { - "documentation": "For region aws-global with FIPS disabled and DualStack disabled", + "documentation": "For custom endpoint with region not set and fips disabled", "expect": { "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "iam", - "signingRegion": "us-east-1" - } - ] - }, - "url": "https://iam.amazonaws.com" + "url": "https://example.com" } }, "params": { - "Region": "aws-global", + "Endpoint": "https://example.com", + "UseFIPS": false + } + }, + { + "documentation": "For custom endpoint with fips enabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Endpoint": "https://example.com", + "UseFIPS": true + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Endpoint": "https://example.com", "UseFIPS": false, - "UseDualStack": false + "UseDualStack": true } }, { - "documentation": "For region aws-global with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { "properties": { "authSchemes": [ { "name": "sigv4", - "signingName": "iam", "signingRegion": "us-east-1" } ] }, - "url": "https://iam-fips.amazonaws.com" - } - }, - "params": { - "Region": "aws-global", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://iam-fips.us-east-1.api.aws" + "url": "https://iam-fips.global.api.aws" } }, "params": { @@ -1368,7 +1729,6 @@ "authSchemes": [ { "name": "sigv4", - "signingName": "iam", "signingRegion": "us-east-1" } ] @@ -1386,7 +1746,15 @@ "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://iam.us-east-1.api.aws" + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://iam.global.api.aws" } }, "params": { @@ -1403,7 +1771,6 @@ "authSchemes": [ { "name": "sigv4", - "signingName": "iam", "signingRegion": "us-east-1" } ] @@ -1418,75 +1785,76 @@ } }, { - "documentation": "For region aws-cn-global with FIPS disabled and DualStack disabled", + "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { "properties": { "authSchemes": [ { "name": "sigv4", - "signingName": "iam", - "signingRegion": "cn-north-1" + "signingRegion": "cn-northwest-1" } ] }, - "url": "https://iam.cn-north-1.amazonaws.com.cn" - } - }, - "params": { - "Region": "aws-cn-global", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://iam-fips.cn-north-1.api.amazonwebservices.com.cn" + "url": "https://iam-fips.api.amazonwebservices.com.cn" } }, "params": { - "Region": "cn-north-1", + "Region": "cn-northwest-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://iam-fips.cn-north-1.amazonaws.com.cn" + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "cn-northwest-1" + } + ] + }, + "url": "https://iam-fips.amazonaws.com.cn" } }, "params": { - "Region": "cn-north-1", + "Region": "cn-northwest-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://iam.cn-north-1.api.amazonwebservices.com.cn" + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "cn-north-1" + } + ] + }, + "url": "https://iam.global.api.amazonwebservices.com.cn" } }, "params": { - "Region": "cn-north-1", + "Region": "cn-northwest-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { "properties": { "authSchemes": [ { "name": "sigv4", - "signingName": "iam", "signingRegion": "cn-north-1" } ] @@ -1495,42 +1863,40 @@ } }, "params": { - "Region": "cn-north-1", + "Region": "cn-northwest-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region aws-us-gov-global with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { "properties": { "authSchemes": [ { "name": "sigv4", - "signingName": "iam", "signingRegion": "us-gov-west-1" } ] }, - "url": "https://iam.us-gov.amazonaws.com" + "url": "https://iam.us-gov.api.aws" } }, "params": { - "Region": "aws-us-gov-global", - "UseFIPS": false, - "UseDualStack": false + "Region": "us-gov-west-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region aws-us-gov-global with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { "properties": { "authSchemes": [ { "name": "sigv4", - "signingName": "iam", "signingRegion": "us-gov-west-1" } ] @@ -1539,68 +1905,40 @@ } }, "params": { - "Region": "aws-us-gov-global", + "Region": "us-gov-west-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://iam-fips.us-gov-east-1.api.aws" - } - }, - "params": { - "Region": "us-gov-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { "properties": { "authSchemes": [ { "name": "sigv4", - "signingName": "iam", "signingRegion": "us-gov-west-1" } ] }, - "url": "https://iam.us-gov.amazonaws.com" - } - }, - "params": { - "Region": "us-gov-east-1", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "endpoint": { - "url": "https://iam.us-gov-east-1.api.aws" + "url": "https://iam.us-gov.api.aws" } }, "params": { - "Region": "us-gov-east-1", + "Region": "us-gov-west-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { "properties": { "authSchemes": [ { "name": "sigv4", - "signingName": "iam", "signingRegion": "us-gov-west-1" } ] @@ -1609,48 +1947,23 @@ } }, "params": { - "Region": "us-gov-east-1", + "Region": "us-gov-west-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region aws-iso-global with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { "properties": { "authSchemes": [ { "name": "sigv4", - "signingName": "iam", "signingRegion": "us-iso-east-1" } ] }, - "url": "https://iam.us-iso-east-1.c2s.ic.gov" - } - }, - "params": { - "Region": "aws-iso-global", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { "url": "https://iam-fips.us-iso-east-1.c2s.ic.gov" } }, @@ -1660,17 +1973,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -1679,7 +1981,6 @@ "authSchemes": [ { "name": "sigv4", - "signingName": "iam", "signingRegion": "us-iso-east-1" } ] @@ -1694,42 +1995,17 @@ } }, { - "documentation": "For region aws-iso-b-global with FIPS disabled and DualStack disabled", + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { "properties": { "authSchemes": [ { "name": "sigv4", - "signingName": "iam", "signingRegion": "us-isob-east-1" } ] }, - "url": "https://iam.us-isob-east-1.sc2s.sgov.gov" - } - }, - "params": { - "Region": "aws-iso-b-global", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", - "expect": { - "endpoint": { "url": "https://iam-fips.us-isob-east-1.sc2s.sgov.gov" } }, @@ -1739,17 +2015,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -1758,7 +2023,6 @@ "authSchemes": [ { "name": "sigv4", - "signingName": "iam", "signingRegion": "us-isob-east-1" } ] @@ -1773,98 +2037,129 @@ } }, { - "documentation": "For region eu-isoe-west-1 with FIPS disabled and DualStack disabled", + "documentation": "For region eu-isoe-west-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { "properties": { "authSchemes": [ { "name": "sigv4", - "signingName": "iam", "signingRegion": "eu-isoe-west-1" } ] }, - "url": "https://iam.eu-isoe-west-1.cloud.adc-e.uk" + "url": "https://iam-fips.cloud.adc-e.uk" } }, "params": { "Region": "eu-isoe-west-1", - "UseFIPS": false, + "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region us-isof-south-1 with FIPS disabled and DualStack disabled", + "documentation": "For region eu-isoe-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { "properties": { "authSchemes": [ { "name": "sigv4", - "signingName": "iam", - "signingRegion": "us-isof-south-1" + "signingRegion": "eu-isoe-west-1" } ] }, - "url": "https://iam.us-isof-south-1.csp.hci.ic.gov" + "url": "https://iam.eu-isoe-west-1.cloud.adc-e.uk" } }, "params": { - "Region": "us-isof-south-1", + "Region": "eu-isoe-west-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "documentation": "For region us-isof-south-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://example.com" + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-isof-south-1" + } + ] + }, + "url": "https://iam-fips.csp.hci.ic.gov" } }, "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false, - "Endpoint": "https://example.com" + "Region": "us-isof-south-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "documentation": "For region us-isof-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://example.com" + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "us-isof-south-1" + } + ] + }, + "url": "https://iam.us-isof-south-1.csp.hci.ic.gov" } }, "params": { + "Region": "us-isof-south-1", "UseFIPS": false, - "UseDualStack": false, - "Endpoint": "https://example.com" + "UseDualStack": false } }, { - "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "documentation": "For region eusc-de-east-1 with FIPS enabled and DualStack disabled", "expect": { - "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "eusc-de-east-1" + } + ] + }, + "url": "https://iam-fips.amazonaws.eu" + } }, "params": { - "Region": "us-east-1", + "Region": "eusc-de-east-1", "UseFIPS": true, - "UseDualStack": false, - "Endpoint": "https://example.com" + "UseDualStack": false } }, { - "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "documentation": "For region eusc-de-east-1 with FIPS disabled and DualStack disabled", "expect": { - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingRegion": "eusc-de-east-1" + } + ] + }, + "url": "https://iam.eusc-de-east-1.amazonaws.eu" + } }, "params": { - "Region": "us-east-1", + "Region": "eusc-de-east-1", "UseFIPS": false, - "UseDualStack": true, - "Endpoint": "https://example.com" + "UseDualStack": false } }, { @@ -1938,7 +2233,7 @@ } }, "traits": { - "smithy.api#documentation": "

An object that contains details about when a principal in the reported Organizations entity\n last attempted to access an Amazon Web Services service. A principal can be an IAM user, an IAM role,\n or the Amazon Web Services account root user within the reported Organizations entity.

\n

This data type is a response element in the GetOrganizationsAccessReport operation.

" + "smithy.api#documentation": "

An object that contains details about when a principal in the reported Organizations entity\n last attempted to access an Amazon Web Services service. A principal can be an IAM user, an IAM role,\n or the Amazon Web Services account root user within the reported Organizations entity.

\n

This data type is a response element in the GetOrganizationsAccessReport operation.

" } }, "com.amazonaws.iam#AccessDetails": { @@ -1986,7 +2281,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about an Amazon Web Services access key.

\n

This data type is used as a response element in the CreateAccessKey\n and ListAccessKeys operations.

\n \n

The SecretAccessKey value is returned only in response to CreateAccessKey. You can get a secret access key only when you first\n create an access key; you cannot recover the secret access key later. If you lose a\n secret access key, you must create a new access key.

\n
" + "smithy.api#documentation": "

Contains information about an Amazon Web Services access key.

\n

This data type is used as a response element in the CreateAccessKey and\n ListAccessKeys operations.

\n \n

The SecretAccessKey value is returned only in response to CreateAccessKey. You can get a secret access key only when you first create\n an access key; you cannot recover the secret access key later. If you lose a secret\n access key, you must create a new access key.

\n
" } }, "com.amazonaws.iam#AccessKeyLastUsed": { @@ -1995,8 +2290,7 @@ "LastUsedDate": { "target": "com.amazonaws.iam#dateType", "traits": { - "smithy.api#documentation": "

The date and time, in ISO 8601 date-time\n format, when the access key was most recently used. This field is null in the\n following situations:

\n
    \n
  • \n

    The user does not have an access key.

    \n
  • \n
  • \n

    An access key exists but has not been used since IAM began tracking this\n information.

    \n
  • \n
  • \n

    There is no sign-in data associated with the user.

    \n
  • \n
", - "smithy.api#required": {} + "smithy.api#documentation": "

The date and time, in ISO 8601 date-time\n format, when the access key was most recently used. This field is null in the\n following situations:

\n
    \n
  • \n

    The user does not have an access key.

    \n
  • \n
  • \n

    An access key exists but has not been used since IAM began tracking this\n information.

    \n
  • \n
  • \n

    There is no sign-in data associated with the user.

    \n
  • \n
" } }, "ServiceName": { @@ -2015,7 +2309,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about the last time an Amazon Web Services access key was used since IAM began\n tracking this information on April 22, 2015.

\n

This data type is used as a response element in the GetAccessKeyLastUsed operation.

" + "smithy.api#documentation": "

Contains information about the last time an Amazon Web Services access key was used since IAM began\n tracking this information on April 22, 2015.

\n

This data type is used as a response element in the GetAccessKeyLastUsed\n operation.

" } }, "com.amazonaws.iam#AccessKeyMetadata": { @@ -2047,7 +2341,20 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about an Amazon Web Services access key, without its secret key.

\n

This data type is used as a response element in the ListAccessKeys\n operation.

" + "smithy.api#documentation": "

Contains information about an Amazon Web Services access key, without its secret key.

\n

This data type is used as a response element in the ListAccessKeys\n operation.

" + } + }, + "com.amazonaws.iam#AccountNotManagementOrDelegatedAdministratorException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.iam#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

The request was rejected because the account making the request is not the management\n account or delegated administrator account for centralized root\n access.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 } }, "com.amazonaws.iam#ActionNameListType": { @@ -2107,7 +2414,7 @@ "OpenIDConnectProviderArn": { "target": "com.amazonaws.iam#arnType", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM OpenID Connect (OIDC) provider resource to\n add the client ID to. You can get a list of OIDC provider ARNs by using the ListOpenIDConnectProviders operation.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM OpenID Connect (OIDC) provider resource to\n add the client ID to. You can get a list of OIDC provider ARNs by using the ListOpenIDConnectProviders operation.

", "smithy.api#required": {} } }, @@ -2149,7 +2456,7 @@ } ], "traits": { - "smithy.api#documentation": "

Adds the specified IAM role to the specified instance profile. An instance profile\n can contain only one role, and this quota cannot be increased. You can remove the\n existing role and then add a different role to an instance profile. You must then wait\n for the change to appear across all of Amazon Web Services because of eventual\n consistency. To force the change, you must disassociate the instance profile and then associate the\n instance profile, or you can stop your instance and then restart it.

\n \n

The caller of this operation must be granted the PassRole permission\n on the IAM role by a permissions policy.

\n
\n

For more information about roles, see IAM roles in the\n IAM User Guide. For more information about instance profiles,\n see Using\n instance profiles in the IAM User Guide.

", + "smithy.api#documentation": "

Adds the specified IAM role to the specified instance profile. An instance profile\n can contain only one role, and this quota cannot be increased. You can remove the\n existing role and then add a different role to an instance profile. You must then wait\n for the change to appear across all of Amazon Web Services because of eventual\n consistency. To force the change, you must disassociate the instance profile and then associate the\n instance profile, or you can stop your instance and then restart it.

\n \n

The caller of this operation must be granted the PassRole permission\n on the IAM role by a permissions policy.

\n
\n \n

When using the iam:AssociatedResourceArn condition in a policy to restrict the PassRole IAM action, special considerations apply if the policy is\n intended to define access for the AddRoleToInstanceProfile action. In\n this case, you cannot specify a Region or instance ID in the EC2 instance ARN. The\n ARN value must be arn:aws:ec2:*:CallerAccountId:instance/*. Using any\n other ARN value may lead to unexpected evaluation results.

\n
\n

For more information about roles, see IAM roles in the\n IAM User Guide. For more information about instance profiles,\n see Using\n instance profiles in the IAM User Guide.

", "smithy.api#examples": [ { "title": "To add a role to an instance profile", @@ -2465,7 +2772,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about an attached policy.

\n

An attached policy is a managed policy that has been attached to a user, group, or role.\n This data type is used as a response element in the ListAttachedGroupPolicies, ListAttachedRolePolicies, ListAttachedUserPolicies, and GetAccountAuthorizationDetails operations.

\n

For more information about managed policies, refer to Managed policies and inline\n policies in the IAM User Guide.

" + "smithy.api#documentation": "

Contains information about an attached policy.

\n

An attached policy is a managed policy that has been attached to a user, group, or role.\n This data type is used as a response element in the ListAttachedGroupPolicies, ListAttachedRolePolicies, ListAttachedUserPolicies, and GetAccountAuthorizationDetails operations.

\n

For more information about managed policies, refer to Managed policies and inline\n policies in the IAM User Guide.

" } }, "com.amazonaws.iam#BootstrapDatum": { @@ -2474,6 +2781,19 @@ "smithy.api#sensitive": {} } }, + "com.amazonaws.iam#CallerIsNotManagementAccountException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.iam#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

The request was rejected because the account making the request is not the management\n account for the organization.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, "com.amazonaws.iam#CertificationKeyType": { "type": "string", "traits": { @@ -2532,7 +2852,7 @@ } ], "traits": { - "smithy.api#documentation": "

Changes the password of the IAM user who is calling this operation. This operation\n can be performed using the CLI, the Amazon Web Services API, or the My\n Security Credentials page in the Amazon Web Services Management Console. The Amazon Web Services account root user password is\n not affected by this operation.

\n

Use UpdateLoginProfile to use the CLI, the Amazon Web Services API, or the\n Users page in the IAM console to change the\n password for any IAM user. For more information about modifying passwords, see Managing\n passwords in the IAM User Guide.

", + "smithy.api#documentation": "

Changes the password of the IAM user who is calling this operation. This operation\n can be performed using the CLI, the Amazon Web Services API, or the My\n Security Credentials page in the Amazon Web Services Management Console. The Amazon Web Services account root user password is\n not affected by this operation.

\n

Use UpdateLoginProfile\n to use the CLI, the Amazon Web Services API, or the Users page in\n the IAM console to change the password for any IAM user. For more information about\n modifying passwords, see Managing passwords in the\n IAM User Guide.

", "smithy.api#examples": [ { "title": "To change the password for your IAM user", @@ -2616,7 +2936,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about a condition context key. It includes the name of the key and\n specifies the value (or values, if the context key supports multiple values) to use in the\n simulation. This information is used when evaluating the Condition elements of\n the input policies.

\n

This data type is used as an input parameter to SimulateCustomPolicy\n and SimulatePrincipalPolicy.

" + "smithy.api#documentation": "

Contains information about a condition context key. It includes the name of the key and\n specifies the value (or values, if the context key supports multiple values) to use in the\n simulation. This information is used when evaluating the Condition elements of\n the input policies.

\n

This data type is used as an input parameter to SimulateCustomPolicy\n and SimulatePrincipalPolicy.

" } }, "com.amazonaws.iam#ContextEntryListType": { @@ -2793,7 +3113,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful CreateAccessKey request.\n

", + "smithy.api#documentation": "

Contains the response to a successful CreateAccessKey request.\n

", "smithy.api#output": {} } }, @@ -2924,7 +3244,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful CreateGroup request.

", + "smithy.api#documentation": "

Contains the response to a successful CreateGroup request.

", "smithy.api#output": {} } }, @@ -3015,7 +3335,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful CreateInstanceProfile request.\n

", + "smithy.api#documentation": "

Contains the response to a successful CreateInstanceProfile\n request.

", "smithy.api#output": {} } }, @@ -3045,7 +3365,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a password for the specified IAM user. A password allows an IAM user to\n access Amazon Web Services services through the Amazon Web Services Management Console.

\n

You can use the CLI, the Amazon Web Services API, or the Users\n page in the IAM console to create a password for any IAM user. Use ChangePassword to update your own existing password in the My Security Credentials page in the Amazon Web Services Management Console.

\n

For more information about managing passwords, see Managing passwords in the\n IAM User Guide.

", + "smithy.api#documentation": "

Creates a password for the specified IAM user. A password allows an IAM user to\n access Amazon Web Services services through the Amazon Web Services Management Console.

\n

You can use the CLI, the Amazon Web Services API, or the Users\n page in the IAM console to create a password for any IAM user. Use ChangePassword to update your own existing password in the My Security Credentials page in the Amazon Web Services Management Console.

\n

For more information about managing passwords, see Managing passwords in the\n IAM User Guide.

", "smithy.api#examples": [ { "title": "To create an instance profile", @@ -3072,15 +3392,13 @@ "UserName": { "target": "com.amazonaws.iam#userNameType", "traits": { - "smithy.api#documentation": "

The name of the IAM user to create a password for. The user must already\n exist.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

", - "smithy.api#required": {} + "smithy.api#documentation": "

The name of the IAM user to create a password for. The user must already\n exist.

\n

This parameter is optional. If no user name is included, it defaults to the principal\n making the request. When you make this request with root user credentials, you must use\n an AssumeRoot session to omit the user name.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

" } }, "Password": { "target": "com.amazonaws.iam#passwordType", "traits": { - "smithy.api#documentation": "

The new password for the user.

\n

The regex pattern \n that is used to validate this parameter is a string of characters. That string can include almost any printable \n ASCII character from the space (\\u0020) through the end of the ASCII character range (\\u00FF). \n You can also include the tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D) \n characters. Any of these characters are valid in a password. However, many tools, such \n as the Amazon Web Services Management Console, might restrict the ability to type certain characters because they have \n special meaning within that tool.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The new password for the user.

\n

This parameter must be omitted when you make the request with an AssumeRoot session. It is required in all other cases.

\n

The regex pattern \n that is used to validate this parameter is a string of characters. That string can include almost any printable \n ASCII character from the space (\\u0020) through the end of the ASCII character range (\\u00FF). \n You can also include the tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D) \n characters. Any of these characters are valid in a password. However, many tools, such \n as the Amazon Web Services Management Console, might restrict the ability to type certain characters because they have \n special meaning within that tool.

" } }, "PasswordResetRequired": { @@ -3107,7 +3425,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful CreateLoginProfile request.\n

", + "smithy.api#documentation": "

Contains the response to a successful CreateLoginProfile\n request.

", "smithy.api#output": {} } }, @@ -3140,7 +3458,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates an IAM entity to describe an identity provider (IdP) that supports OpenID Connect (OIDC).

\n

The OIDC provider that you create with this operation can be used as a principal in a\n role's trust policy. Such a policy establishes a trust relationship between Amazon Web Services and\n the OIDC provider.

\n

If you are using an OIDC identity provider from Google, Facebook, or Amazon Cognito, you don't\n need to create a separate IAM identity provider. These OIDC identity providers are\n already built-in to Amazon Web Services and are available for your use. Instead, you can move directly\n to creating new roles using your identity provider. To learn more, see Creating\n a role for web identity or OpenID connect federation in the IAM\n User Guide.

\n

When you create the IAM OIDC provider, you specify the following:

\n
    \n
  • \n

    The URL of the OIDC identity provider (IdP) to trust

    \n
  • \n
  • \n

    A list of client IDs (also known as audiences) that identify the application\n or applications allowed to authenticate using the OIDC provider

    \n
  • \n
  • \n

    A list of tags that are attached to the specified IAM OIDC provider

    \n
  • \n
  • \n

    A list of thumbprints of one or more server certificates that the IdP\n uses

    \n
  • \n
\n

You get all of this information from the OIDC IdP you want to use to access\n Amazon Web Services.

\n \n

Amazon Web Services secures communication with some OIDC identity providers (IdPs) through our library\n of trusted root certificate authorities (CAs) instead of using a certificate thumbprint to\n verify your IdP server certificate. In these cases, your legacy thumbprint remains in your\n configuration, but is no longer used for validation. These OIDC IdPs include Auth0, GitHub,\n GitLab, Google, and those that use an Amazon S3 bucket to host a JSON Web Key Set (JWKS)\n endpoint.

\n
\n \n

The trust for the OIDC provider is derived from the IAM provider that this\n operation creates. Therefore, it is best to limit access to the CreateOpenIDConnectProvider operation to highly privileged\n users.

\n
", + "smithy.api#documentation": "

Creates an IAM entity to describe an identity provider (IdP) that supports OpenID Connect (OIDC).

\n

The OIDC provider that you create with this operation can be used as a principal in a\n role's trust policy. Such a policy establishes a trust relationship between Amazon Web Services and\n the OIDC provider.

\n

If you are using an OIDC identity provider from Google, Facebook, or Amazon Cognito, you don't\n need to create a separate IAM identity provider. These OIDC identity providers are\n already built-in to Amazon Web Services and are available for your use. Instead, you can move directly\n to creating new roles using your identity provider. To learn more, see Creating\n a role for web identity or OpenID connect federation in the IAM\n User Guide.

\n

When you create the IAM OIDC provider, you specify the following:

\n
    \n
  • \n

    The URL of the OIDC identity provider (IdP) to trust

    \n
  • \n
  • \n

    A list of client IDs (also known as audiences) that identify the application\n or applications allowed to authenticate using the OIDC provider

    \n
  • \n
  • \n

    A list of tags that are attached to the specified IAM OIDC provider

    \n
  • \n
  • \n

    A list of thumbprints of one or more server certificates that the IdP\n uses

    \n
  • \n
\n

You get all of this information from the OIDC IdP you want to use to access\n Amazon Web Services.

\n \n

Amazon Web Services secures communication with OIDC identity providers (IdPs) using our library of\n trusted root certificate authorities (CAs) to verify the JSON Web Key Set (JWKS)\n endpoint's TLS certificate. If your OIDC IdP relies on a certificate that is not signed\n by one of these trusted CAs, only then we secure communication using the thumbprints set\n in the IdP's configuration.

\n
\n \n

The trust for the OIDC provider is derived from the IAM provider that this\n operation creates. Therefore, it is best to limit access to the CreateOpenIDConnectProvider operation to highly privileged\n users.

\n
", "smithy.api#examples": [ { "title": "To create an instance profile", @@ -3200,7 +3518,7 @@ "OpenIDConnectProviderArn": { "target": "com.amazonaws.iam#arnType", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the new IAM OpenID Connect provider that is\n created. For more information, see OpenIDConnectProviderListEntry.\n

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the new IAM OpenID Connect provider that is\n created. For more information, see OpenIDConnectProviderListEntry.

" } }, "Tags": { @@ -3211,7 +3529,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful CreateOpenIDConnectProvider\n request.

", + "smithy.api#documentation": "

Contains the response to a successful CreateOpenIDConnectProvider request.

", "smithy.api#output": {} } }, @@ -3298,7 +3616,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful CreatePolicy request.\n

", + "smithy.api#documentation": "

Contains the response to a successful CreatePolicy request.

", "smithy.api#output": {} } }, @@ -3328,7 +3646,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a new version of the specified managed policy. To update a managed policy, you\n create a new policy version. A managed policy can have up to five versions. If the\n policy has five versions, you must delete an existing version using DeletePolicyVersion before you create a new version.

\n

Optionally, you can set the new version as the policy's default version. The default\n version is the version that is in effect for the IAM users, groups, and roles to which\n the policy is attached.

\n

For more information about managed policy versions, see Versioning for managed\n policies in the IAM User Guide.

" + "smithy.api#documentation": "

Creates a new version of the specified managed policy. To update a managed policy, you\n create a new policy version. A managed policy can have up to five versions. If the\n policy has five versions, you must delete an existing version using DeletePolicyVersion before you create a new version.

\n

Optionally, you can set the new version as the policy's default version. The default\n version is the version that is in effect for the IAM users, groups, and roles to which\n the policy is attached.

\n

For more information about managed policy versions, see Versioning for managed\n policies in the IAM User Guide.

" } }, "com.amazonaws.iam#CreatePolicyVersionRequest": { @@ -3371,7 +3689,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful CreatePolicyVersion request.\n

", + "smithy.api#documentation": "

Contains the response to a successful CreatePolicyVersion\n request.

", "smithy.api#output": {} } }, @@ -3492,7 +3810,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful CreateRole request.

", + "smithy.api#documentation": "

Contains the response to a successful CreateRole request.

", "smithy.api#output": {} } }, @@ -3547,6 +3865,18 @@ "traits": { "smithy.api#documentation": "

A list of tags that you want to attach to the new IAM SAML provider.\n Each tag consists of a key name and an associated value. For more information about tagging, see Tagging IAM resources in the\n IAM User Guide.

\n \n

If any one of the tags is invalid or if you exceed the allowed maximum number of tags, then the entire request \n fails and the resource is not created.

\n
" } + }, + "AssertionEncryptionMode": { + "target": "com.amazonaws.iam#assertionEncryptionModeType", + "traits": { + "smithy.api#documentation": "

Specifies the encryption setting for the SAML provider.

" + } + }, + "AddPrivateKey": { + "target": "com.amazonaws.iam#privateKeyType", + "traits": { + "smithy.api#documentation": "

The private key generated from your external identity provider. The private key must\n be a .pem file that uses AES-GCM or AES-CBC encryption algorithm to decrypt SAML\n assertions.

" + } } }, "traits": { @@ -3570,7 +3900,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful CreateSAMLProvider request.\n

", + "smithy.api#documentation": "

Contains the response to a successful CreateSAMLProvider\n request.

", "smithy.api#output": {} } }, @@ -3633,7 +3963,7 @@ "Role": { "target": "com.amazonaws.iam#Role", "traits": { - "smithy.api#documentation": "

A Role object that contains details about the newly created\n role.

" + "smithy.api#documentation": "

A Role\n object that contains details about the newly created role.

" } } }, @@ -3661,7 +3991,7 @@ } ], "traits": { - "smithy.api#documentation": "

Generates a set of credentials consisting of a user name and password that can be used\n to access the service specified in the request. These credentials are generated by\n IAM, and can be used only for the specified service.

\n

You can have a maximum of two sets of service-specific credentials for each supported\n service per user.

\n

You can create service-specific credentials for CodeCommit and Amazon Keyspaces (for Apache\n Cassandra).

\n

You can reset the password to a new service-generated value by calling ResetServiceSpecificCredential.

\n

For more information about service-specific credentials, see Using IAM\n with CodeCommit: Git credentials, SSH keys, and Amazon Web Services access keys in the\n IAM User Guide.

" + "smithy.api#documentation": "

Generates a set of credentials consisting of a user name and password that can be used\n to access the service specified in the request. These credentials are generated by\n IAM, and can be used only for the specified service.

\n

You can have a maximum of two sets of service-specific credentials for each supported\n service per user.

\n

You can create service-specific credentials for Amazon Bedrock, CodeCommit and Amazon Keyspaces (for Apache Cassandra).

\n

You can reset the password to a new service-generated value by calling ResetServiceSpecificCredential.

\n

For more information about service-specific credentials, see Service-specific credentials for IAM users in the\n IAM User Guide.

" } }, "com.amazonaws.iam#CreateServiceSpecificCredentialRequest": { @@ -3680,6 +4010,12 @@ "smithy.api#documentation": "

The name of the Amazon Web Services service that is to be associated with the credentials. The\n service you specify here is the only service that can be accessed using these\n credentials.

", "smithy.api#required": {} } + }, + "CredentialAgeDays": { + "target": "com.amazonaws.iam#credentialAgeDays", + "traits": { + "smithy.api#documentation": "

The number of days until the service specific credential expires. This field is only\n valid for Bedrock API keys and must be a positive integer. When not specified, the\n credential will not expire.

" + } } }, "traits": { @@ -3692,7 +4028,7 @@ "ServiceSpecificCredential": { "target": "com.amazonaws.iam#ServiceSpecificCredential", "traits": { - "smithy.api#documentation": "

A structure that contains information about the newly created service-specific\n credential.

\n \n

This is the only time that the password for this credential set is available. It\n cannot be recovered later. Instead, you must reset the password with ResetServiceSpecificCredential.

\n
" + "smithy.api#documentation": "

A structure that contains information about the newly created service-specific\n credential.

\n \n

This is the only time that the password for this credential set is available. It\n cannot be recovered later. Instead, you must reset the password with ResetServiceSpecificCredential.

\n
" } } }, @@ -3794,7 +4130,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful CreateUser request.

", + "smithy.api#documentation": "

Contains the response to a successful CreateUser request.

", "smithy.api#output": {} } }, @@ -3824,7 +4160,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a new virtual MFA device for the Amazon Web Services account. After creating the virtual\n MFA, use EnableMFADevice to attach the MFA device to an IAM user.\n For more information about creating and working with virtual MFA devices, see Using a virtual MFA\n device in the IAM User Guide.

\n

For information about the maximum number of MFA devices you can create, see IAM and STS\n quotas in the IAM User Guide.

\n \n

The seed information contained in the QR code and the Base32 string should be\n treated like any other secret access information. In other words, protect the seed\n information as you would your Amazon Web Services access keys or your passwords. After you\n provision your virtual device, you should ensure that the information is destroyed\n following secure procedures.

\n
" + "smithy.api#documentation": "

Creates a new virtual MFA device for the Amazon Web Services account. After creating the virtual\n MFA, use EnableMFADevice to\n attach the MFA device to an IAM user. For more information about creating and working\n with virtual MFA devices, see Using a virtual MFA device in the\n IAM User Guide.

\n

For information about the maximum number of MFA devices you can create, see IAM and STS\n quotas in the IAM User Guide.

\n \n

The seed information contained in the QR code and the Base32 string should be\n treated like any other secret access information. In other words, protect the seed\n information as you would your Amazon Web Services access keys or your passwords. After you\n provision your virtual device, you should ensure that the information is destroyed\n following secure procedures.

\n
" } }, "com.amazonaws.iam#CreateVirtualMFADeviceRequest": { @@ -3866,7 +4202,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful CreateVirtualMFADevice request.\n

", + "smithy.api#documentation": "

Contains the response to a successful CreateVirtualMFADevice\n request.

", "smithy.api#output": {} } }, @@ -3882,7 +4218,7 @@ "code": "ReportExpired", "httpResponseCode": 410 }, - "smithy.api#documentation": "

The request was rejected because the most recent credential report has expired. To\n generate a new credential report, use GenerateCredentialReport. For more\n information about credential report expiration, see Getting credential reports in the\n IAM User Guide.

", + "smithy.api#documentation": "

The request was rejected because the most recent credential report has expired. To\n generate a new credential report, use GenerateCredentialReport. For more information about credential report expiration,\n see Getting\n credential reports in the IAM User Guide.

", "smithy.api#error": "client", "smithy.api#httpError": 410 } @@ -3899,7 +4235,7 @@ "code": "ReportNotPresent", "httpResponseCode": 410 }, - "smithy.api#documentation": "

The request was rejected because the credential report does not exist. To generate a\n credential report, use GenerateCredentialReport.

", + "smithy.api#documentation": "

The request was rejected because the credential report does not exist. To generate a\n credential report, use GenerateCredentialReport.

", "smithy.api#error": "client", "smithy.api#httpError": 410 } @@ -3956,8 +4292,7 @@ "UserName": { "target": "com.amazonaws.iam#existingUserNameType", "traits": { - "smithy.api#documentation": "

The name of the user whose MFA device you want to deactivate.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

", - "smithy.api#required": {} + "smithy.api#documentation": "

The name of the user whose MFA device you want to deactivate.

\n

This parameter is optional. If no user name is included, it defaults to the principal\n making the request. When you make this request with root user credentials, you must use\n an AssumeRoot session to omit the user name.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

" } }, "SerialNumber": { @@ -4168,7 +4503,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the specified inline policy that is embedded in the specified IAM\n group.

\n

A group can also have managed policies attached to it. To detach a managed policy from\n a group, use DetachGroupPolicy. For more information about policies,\n refer to Managed policies and inline\n policies in the IAM User Guide.

", + "smithy.api#documentation": "

Deletes the specified inline policy that is embedded in the specified IAM\n group.

\n

A group can also have managed policies attached to it. To detach a managed policy from\n a group, use DetachGroupPolicy.\n For more information about policies, refer to Managed policies and inline\n policies in the IAM User Guide.

", "smithy.api#examples": [ { "title": "To delete a policy from an IAM group", @@ -4291,7 +4626,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the password for the specified IAM user, For more information, see Managing\n passwords for IAM users.

\n

You can use the CLI, the Amazon Web Services API, or the Users\n page in the IAM console to delete a password for any IAM user. You can use ChangePassword to update, but not delete, your own password in the\n My Security Credentials page in the\n Amazon Web Services Management Console.

\n \n

Deleting a user's password does not prevent a user from accessing Amazon Web Services through\n the command line interface or the API. To prevent all user access, you must also\n either make any access keys inactive or delete them. For more information about\n making keys inactive or deleting them, see UpdateAccessKey and\n DeleteAccessKey.

\n
", + "smithy.api#documentation": "

Deletes the password for the specified IAM user or root user, For more information, see\n Managing\n passwords for IAM users.

\n

You can use the CLI, the Amazon Web Services API, or the Users\n page in the IAM console to delete a password for any IAM user. You can use ChangePassword to update, but not delete, your own password in the\n My Security Credentials page in the\n Amazon Web Services Management Console.

\n \n

Deleting a user's password does not prevent a user from accessing Amazon Web Services through\n the command line interface or the API. To prevent all user access, you must also\n either make any access keys inactive or delete them. For more information about\n making keys inactive or deleting them, see UpdateAccessKey\n and DeleteAccessKey.

\n
", "smithy.api#examples": [ { "title": "To delete a password for an IAM user", @@ -4309,8 +4644,7 @@ "UserName": { "target": "com.amazonaws.iam#userNameType", "traits": { - "smithy.api#documentation": "

The name of the user whose password you want to delete.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

", - "smithy.api#required": {} + "smithy.api#documentation": "

The name of the user whose password you want to delete.

\n

This parameter is optional. If no user name is included, it defaults to the principal\n making the request. When you make this request with root user credentials, you must use\n an AssumeRoot session to omit the user name.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

" } } }, @@ -4347,7 +4681,7 @@ "OpenIDConnectProviderArn": { "target": "com.amazonaws.iam#arnType", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM OpenID Connect provider resource object to\n delete. You can get a list of OpenID Connect provider resource ARNs by using the ListOpenIDConnectProviders operation.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM OpenID Connect provider resource object to\n delete. You can get a list of OpenID Connect provider resource ARNs by using the ListOpenIDConnectProviders operation.

", "smithy.api#required": {} } } @@ -4382,7 +4716,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the specified managed policy.

\n

Before you can delete a managed policy, you must first detach the policy from all\n users, groups, and roles that it is attached to. In addition, you must delete all the\n policy's versions. The following steps describe the process for deleting a managed\n policy:

\n
    \n
  • \n

    Detach the policy from all users, groups, and roles that the policy is\n attached to, using DetachUserPolicy, DetachGroupPolicy, or DetachRolePolicy. To\n list all the users, groups, and roles that a policy is attached to, use ListEntitiesForPolicy.

    \n
  • \n
  • \n

    Delete all versions of the policy using DeletePolicyVersion.\n To list the policy's versions, use ListPolicyVersions. You\n cannot use DeletePolicyVersion to delete the version that is\n marked as the default version. You delete the policy's default version in the\n next step of the process.

    \n
  • \n
  • \n

    Delete the policy (this automatically deletes the policy's default version)\n using this operation.

    \n
  • \n
\n

For information about managed policies, see Managed policies and inline\n policies in the IAM User Guide.

" + "smithy.api#documentation": "

Deletes the specified managed policy.

\n

Before you can delete a managed policy, you must first detach the policy from all\n users, groups, and roles that it is attached to. In addition, you must delete all the\n policy's versions. The following steps describe the process for deleting a managed\n policy:

\n
    \n
  • \n

    Detach the policy from all users, groups, and roles that the policy is\n attached to, using DetachUserPolicy, DetachGroupPolicy, or DetachRolePolicy. To list all the users, groups, and roles that a\n policy is attached to, use ListEntitiesForPolicy.

    \n
  • \n
  • \n

    Delete all versions of the policy using DeletePolicyVersion. To list the policy's versions, use ListPolicyVersions. You cannot use DeletePolicyVersion to delete the version that is marked as the\n default version. You delete the policy's default version in the next step of the\n process.

    \n
  • \n
  • \n

    Delete the policy (this automatically deletes the policy's default version)\n using this operation.

    \n
  • \n
\n

For information about managed policies, see Managed policies and inline\n policies in the IAM User Guide.

" } }, "com.amazonaws.iam#DeletePolicyRequest": { @@ -4426,7 +4760,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the specified version from the specified managed policy.

\n

You cannot delete the default version from a policy using this operation. To delete\n the default version from a policy, use DeletePolicy. To find out which\n version of a policy is marked as the default version, use ListPolicyVersions.

\n

For information about versions for managed policies, see Versioning for managed\n policies in the IAM User Guide.

" + "smithy.api#documentation": "

Deletes the specified version from the specified managed policy.

\n

You cannot delete the default version from a policy using this operation. To delete\n the default version from a policy, use DeletePolicy. To find\n out which version of a policy is marked as the default version, use ListPolicyVersions.

\n

For information about versions for managed policies, see Versioning for managed\n policies in the IAM User Guide.

" } }, "com.amazonaws.iam#DeletePolicyVersionRequest": { @@ -4480,7 +4814,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the specified role. Unlike the Amazon Web Services Management Console, when you delete a role\n programmatically, you must delete the items attached to the role manually, or the\n deletion fails. For more information, see Deleting an IAM role. Before attempting to delete a role, remove the\n following attached items:

\n \n \n

Make sure that you do not have any Amazon EC2 instances running with the role you are\n about to delete. Deleting a role or instance profile that is associated with a\n running instance will break any applications running on the instance.

\n
", + "smithy.api#documentation": "

Deletes the specified role. Unlike the Amazon Web Services Management Console, when you delete a role\n programmatically, you must delete the items attached to the role manually, or the\n deletion fails. For more information, see Deleting an IAM role. Before attempting to delete a role, remove the\n following attached items:

\n \n \n

Make sure that you do not have any Amazon EC2 instances running with the role you are\n about to delete. Deleting a role or instance profile that is associated with a\n running instance will break any applications running on the instance.

\n
", "smithy.api#examples": [ { "title": "To delete an IAM role", @@ -4553,7 +4887,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the specified inline policy that is embedded in the specified IAM\n role.

\n

A role can also have managed policies attached to it. To detach a managed policy from\n a role, use DetachRolePolicy. For more information about policies,\n refer to Managed policies and inline\n policies in the IAM User Guide.

", + "smithy.api#documentation": "

Deletes the specified inline policy that is embedded in the specified IAM\n role.

\n

A role can also have managed policies attached to it. To detach a managed policy from\n a role, use DetachRolePolicy.\n For more information about policies, refer to Managed policies and inline\n policies in the IAM User Guide.

", "smithy.api#examples": [ { "title": "To remove a policy from an IAM role", @@ -4744,7 +5078,7 @@ } ], "traits": { - "smithy.api#documentation": "

Submits a service-linked role deletion request and returns a\n DeletionTaskId, which you can use to check the status of the deletion.\n Before you call this operation, confirm that the role has no active sessions and that\n any resources used by the role in the linked service are deleted. If you call this\n operation more than once for the same service-linked role and an earlier deletion task\n is not complete, then the DeletionTaskId of the earlier request is\n returned.

\n

If you submit a deletion request for a service-linked role whose linked service is\n still accessing a resource, then the deletion task fails. If it fails, the GetServiceLinkedRoleDeletionStatus operation returns the reason for the\n failure, usually including the resources that must be deleted. To delete the\n service-linked role, you must first remove those resources from the linked service and\n then submit the deletion request again. Resources are specific to the service that is\n linked to the role. For more information about removing resources from a service, see\n the Amazon Web Services documentation for your\n service.

\n

For more information about service-linked roles, see Roles terms and concepts: Amazon Web Services service-linked role in the\n IAM User Guide.

" + "smithy.api#documentation": "

Submits a service-linked role deletion request and returns a\n DeletionTaskId, which you can use to check the status of the deletion.\n Before you call this operation, confirm that the role has no active sessions and that\n any resources used by the role in the linked service are deleted. If you call this\n operation more than once for the same service-linked role and an earlier deletion task\n is not complete, then the DeletionTaskId of the earlier request is\n returned.

\n

If you submit a deletion request for a service-linked role whose linked service is\n still accessing a resource, then the deletion task fails. If it fails, the GetServiceLinkedRoleDeletionStatus operation returns the reason for the\n failure, usually including the resources that must be deleted. To delete the\n service-linked role, you must first remove those resources from the linked service and\n then submit the deletion request again. Resources are specific to the service that is\n linked to the role. For more information about removing resources from a service, see\n the Amazon Web Services documentation for your\n service.

\n

For more information about service-linked roles, see Roles terms and concepts: Amazon Web Services service-linked role in the\n IAM User Guide.

" } }, "com.amazonaws.iam#DeleteServiceLinkedRoleRequest": { @@ -4806,7 +5140,7 @@ "ServiceSpecificCredentialId": { "target": "com.amazonaws.iam#serviceSpecificCredentialId", "traits": { - "smithy.api#documentation": "

The unique identifier of the service-specific credential. You can get this value by\n calling ListServiceSpecificCredentials.

\n

This parameter allows (through its regex pattern) a string of characters that can \n consist of any upper or lowercased letter or digit.

", + "smithy.api#documentation": "

The unique identifier of the service-specific credential. You can get this value by\n calling ListServiceSpecificCredentials.

\n

This parameter allows (through its regex pattern) a string of characters that can \n consist of any upper or lowercased letter or digit.

", "smithy.api#required": {} } } @@ -4898,7 +5232,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the specified IAM user. Unlike the Amazon Web Services Management Console, when you delete a user\n programmatically, you must delete the items attached to the user manually, or the\n deletion fails. For more information, see Deleting an IAM\n user. Before attempting to delete a user, remove the following items:

\n ", + "smithy.api#documentation": "

Deletes the specified IAM user. Unlike the Amazon Web Services Management Console, when you delete a user\n programmatically, you must delete the items attached to the user manually, or the\n deletion fails. For more information, see Deleting an IAM\n user. Before attempting to delete a user, remove the following items:

\n ", "smithy.api#examples": [ { "title": "To delete an IAM user", @@ -4965,7 +5299,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the specified inline policy that is embedded in the specified IAM\n user.

\n

A user can also have managed policies attached to it. To detach a managed policy from\n a user, use DetachUserPolicy. For more information about policies,\n refer to Managed policies and inline\n policies in the IAM User Guide.

", + "smithy.api#documentation": "

Deletes the specified inline policy that is embedded in the specified IAM\n user.

\n

A user can also have managed policies attached to it. To detach a managed policy from\n a user, use DetachUserPolicy.\n For more information about policies, refer to Managed policies and inline\n policies in the IAM User Guide.

", "smithy.api#examples": [ { "title": "To remove a policy from an IAM user", @@ -5041,7 +5375,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes a virtual MFA device.

\n \n

You must deactivate a user's virtual MFA device before you can delete it. For\n information about deactivating MFA devices, see DeactivateMFADevice.

\n
", + "smithy.api#documentation": "

Deletes a virtual MFA device.

\n \n

You must deactivate a user's virtual MFA device before you can delete it. For\n information about deactivating MFA devices, see DeactivateMFADevice.

\n
", "smithy.api#examples": [ { "title": "To remove a virtual MFA device", @@ -5085,7 +5419,7 @@ } }, "traits": { - "smithy.api#documentation": "

The reason that the service-linked role deletion failed.

\n

This data type is used as a response element in the GetServiceLinkedRoleDeletionStatus operation.

" + "smithy.api#documentation": "

The reason that the service-linked role deletion failed.

\n

This data type is used as a response element in the GetServiceLinkedRoleDeletionStatus operation.

" } }, "com.amazonaws.iam#DeletionTaskIdType": { @@ -5149,7 +5483,7 @@ } ], "traits": { - "smithy.api#documentation": "

Removes the specified managed policy from the specified IAM group.

\n

A group can also have inline policies embedded with it. To delete an inline policy,\n use DeleteGroupPolicy. For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide.

" + "smithy.api#documentation": "

Removes the specified managed policy from the specified IAM group.

\n

A group can also have inline policies embedded with it. To delete an inline policy,\n use DeleteGroupPolicy. For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide.

" } }, "com.amazonaws.iam#DetachGroupPolicyRequest": { @@ -5200,7 +5534,7 @@ } ], "traits": { - "smithy.api#documentation": "

Removes the specified managed policy from the specified role.

\n

A role can also have inline policies embedded with it. To delete an inline policy, use\n DeleteRolePolicy. For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide.

" + "smithy.api#documentation": "

Removes the specified managed policy from the specified role.

\n

A role can also have inline policies embedded with it. To delete an inline policy, use\n DeleteRolePolicy. For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide.

" } }, "com.amazonaws.iam#DetachRolePolicyRequest": { @@ -5248,7 +5582,7 @@ } ], "traits": { - "smithy.api#documentation": "

Removes the specified managed policy from the specified user.

\n

A user can also have inline policies embedded with it. To delete an inline policy, use\n DeleteUserPolicy. For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide.

" + "smithy.api#documentation": "

Removes the specified managed policy from the specified user.

\n

A user can also have inline policies embedded with it. To delete an inline policy, use\n DeleteUserPolicy. For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide.

" } }, "com.amazonaws.iam#DetachUserPolicyRequest": { @@ -5273,6 +5607,136 @@ "smithy.api#input": {} } }, + "com.amazonaws.iam#DisableOrganizationsRootCredentialsManagement": { + "type": "operation", + "input": { + "target": "com.amazonaws.iam#DisableOrganizationsRootCredentialsManagementRequest" + }, + "output": { + "target": "com.amazonaws.iam#DisableOrganizationsRootCredentialsManagementResponse" + }, + "errors": [ + { + "target": "com.amazonaws.iam#AccountNotManagementOrDelegatedAdministratorException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotFoundException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotInAllFeaturesModeException" + }, + { + "target": "com.amazonaws.iam#ServiceAccessNotEnabledException" + } + ], + "traits": { + "smithy.api#documentation": "

Disables the management of privileged root user credentials across member accounts in\n your organization. When you disable this feature, the management account and the\n delegated administrator for IAM can no longer manage root user credentials for member\n accounts in your organization.

", + "smithy.api#examples": [ + { + "title": "To disable the RootCredentialsManagement feature in your organization", + "documentation": "The following command disables the management of privileged root user credentials across member accounts in your organization.", + "output": { + "OrganizationId": "o-aa111bb222", + "EnabledFeatures": [ + "RootSessions" + ] + } + } + ] + } + }, + "com.amazonaws.iam#DisableOrganizationsRootCredentialsManagementRequest": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.iam#DisableOrganizationsRootCredentialsManagementResponse": { + "type": "structure", + "members": { + "OrganizationId": { + "target": "com.amazonaws.iam#OrganizationIdType", + "traits": { + "smithy.api#documentation": "

The unique identifier (ID) of an organization.

" + } + }, + "EnabledFeatures": { + "target": "com.amazonaws.iam#FeaturesListType", + "traits": { + "smithy.api#documentation": "

The features enabled for centralized root access for member accounts in your\n organization.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.iam#DisableOrganizationsRootSessions": { + "type": "operation", + "input": { + "target": "com.amazonaws.iam#DisableOrganizationsRootSessionsRequest" + }, + "output": { + "target": "com.amazonaws.iam#DisableOrganizationsRootSessionsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.iam#AccountNotManagementOrDelegatedAdministratorException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotFoundException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotInAllFeaturesModeException" + }, + { + "target": "com.amazonaws.iam#ServiceAccessNotEnabledException" + } + ], + "traits": { + "smithy.api#documentation": "

Disables root user sessions for privileged tasks across member accounts in your\n organization. When you disable this feature, the management account and the delegated\n administrator for IAM can no longer perform privileged tasks on member accounts in\n your organization.

", + "smithy.api#examples": [ + { + "title": "To disable the RootSessions feature in your organization", + "documentation": "The following command disables root user sessions for privileged tasks across member accounts in your organization.", + "output": { + "OrganizationId": "o-aa111bb222", + "EnabledFeatures": [ + "RootCredentialsManagement" + ] + } + } + ] + } + }, + "com.amazonaws.iam#DisableOrganizationsRootSessionsRequest": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.iam#DisableOrganizationsRootSessionsResponse": { + "type": "structure", + "members": { + "OrganizationId": { + "target": "com.amazonaws.iam#OrganizationIdType", + "traits": { + "smithy.api#documentation": "

The unique identifier (ID) of an organization.

" + } + }, + "EnabledFeatures": { + "target": "com.amazonaws.iam#FeaturesListType", + "traits": { + "smithy.api#documentation": "

The features you have enabled for centralized root access of member accounts in your\n organization.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.iam#DuplicateCertificateException": { "type": "structure", "members": { @@ -5378,6 +5842,143 @@ "smithy.api#input": {} } }, + "com.amazonaws.iam#EnableOrganizationsRootCredentialsManagement": { + "type": "operation", + "input": { + "target": "com.amazonaws.iam#EnableOrganizationsRootCredentialsManagementRequest" + }, + "output": { + "target": "com.amazonaws.iam#EnableOrganizationsRootCredentialsManagementResponse" + }, + "errors": [ + { + "target": "com.amazonaws.iam#AccountNotManagementOrDelegatedAdministratorException" + }, + { + "target": "com.amazonaws.iam#CallerIsNotManagementAccountException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotFoundException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotInAllFeaturesModeException" + }, + { + "target": "com.amazonaws.iam#ServiceAccessNotEnabledException" + } + ], + "traits": { + "smithy.api#documentation": "

Enables the management of privileged root user credentials across member accounts in your\n organization. When you enable root credentials management for centralized root access, the management account and the delegated\n administrator for IAM can manage root user credentials for member accounts in your\n organization.

\n

Before you enable centralized root access, you must have an account configured with\n the following settings:

\n
    \n
  • \n

    You must manage your Amazon Web Services accounts in Organizations.

    \n
  • \n
  • \n

    Enable trusted access for Identity and Access Management in Organizations. For details, see\n IAM and Organizations in the Organizations User\n Guide.

    \n
  • \n
", + "smithy.api#examples": [ + { + "title": "To enable the RootCredentialsManagement feature in your organization", + "documentation": "The following command enables the management of privileged root user credentials across member accounts in your organization.", + "output": { + "OrganizationId": "o-aa111bb222", + "EnabledFeatures": [ + "RootCredentialsManagement" + ] + } + } + ] + } + }, + "com.amazonaws.iam#EnableOrganizationsRootCredentialsManagementRequest": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.iam#EnableOrganizationsRootCredentialsManagementResponse": { + "type": "structure", + "members": { + "OrganizationId": { + "target": "com.amazonaws.iam#OrganizationIdType", + "traits": { + "smithy.api#documentation": "

The unique identifier (ID) of an organization.

" + } + }, + "EnabledFeatures": { + "target": "com.amazonaws.iam#FeaturesListType", + "traits": { + "smithy.api#documentation": "

The features you have enabled for centralized root access.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.iam#EnableOrganizationsRootSessions": { + "type": "operation", + "input": { + "target": "com.amazonaws.iam#EnableOrganizationsRootSessionsRequest" + }, + "output": { + "target": "com.amazonaws.iam#EnableOrganizationsRootSessionsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.iam#AccountNotManagementOrDelegatedAdministratorException" + }, + { + "target": "com.amazonaws.iam#CallerIsNotManagementAccountException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotFoundException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotInAllFeaturesModeException" + }, + { + "target": "com.amazonaws.iam#ServiceAccessNotEnabledException" + } + ], + "traits": { + "smithy.api#documentation": "

Allows the management account or delegated administrator to perform privileged tasks\n on member accounts in your organization. For more information, see Centrally manage root access for member accounts in the Identity and Access Management\n User Guide.

\n

Before you enable this feature, you must have an account configured with the following\n settings:

\n
    \n
  • \n

    You must manage your Amazon Web Services accounts in Organizations.

    \n
  • \n
  • \n

    Enable trusted access for Identity and Access Management in Organizations. For details, see\n IAM and Organizations in the Organizations User\n Guide.

    \n
  • \n
", + "smithy.api#examples": [ + { + "title": "To enable the RootSessions feature in your organization", + "documentation": "The following command allows the management account or delegated administrator to perform privileged tasks on member accounts in your organization.", + "output": { + "OrganizationId": "o-aa111bb222", + "EnabledFeatures": [ + "RootCredentialsManagement", + "RootSessions" + ] + } + } + ] + } + }, + "com.amazonaws.iam#EnableOrganizationsRootSessionsRequest": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.iam#EnableOrganizationsRootSessionsResponse": { + "type": "structure", + "members": { + "OrganizationId": { + "target": "com.amazonaws.iam#OrganizationIdType", + "traits": { + "smithy.api#documentation": "

The unique identifier (ID) of an organization.

" + } + }, + "EnabledFeatures": { + "target": "com.amazonaws.iam#FeaturesListType", + "traits": { + "smithy.api#documentation": "

The features you have enabled for centralized root access.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.iam#EntityAlreadyExistsException": { "type": "structure", "members": { @@ -5413,7 +6014,7 @@ } }, "traits": { - "smithy.api#documentation": "

An object that contains details about when the IAM entities (users or roles) were last\n used in an attempt to access the specified Amazon Web Services service.

\n

This data type is a response element in the GetServiceLastAccessedDetailsWithEntities operation.

" + "smithy.api#documentation": "

An object that contains details about when the IAM entities (users or roles) were last\n used in an attempt to access the specified Amazon Web Services service.

\n

This data type is a response element in the GetServiceLastAccessedDetailsWithEntities operation.

" } }, "com.amazonaws.iam#EntityInfo": { @@ -5454,7 +6055,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains details about the specified entity (user or role).

\n

This data type is an element of the EntityDetails object.

" + "smithy.api#documentation": "

Contains details about the specified entity (user or role).

\n

This data type is an element of the EntityDetails\n object.

" } }, "com.amazonaws.iam#EntityTemporarilyUnmodifiableException": { @@ -5528,7 +6129,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about the reason that the operation failed.

\n

This data type is used as a response element in the GetOrganizationsAccessReport, GetServiceLastAccessedDetails, and GetServiceLastAccessedDetailsWithEntities operations.

" + "smithy.api#documentation": "

Contains information about the reason that the operation failed.

\n

This data type is used as a response element in the GetOrganizationsAccessReport, GetServiceLastAccessedDetails, and GetServiceLastAccessedDetailsWithEntities operations.

" } }, "com.amazonaws.iam#EvalDecisionDetailsType": { @@ -5581,7 +6182,7 @@ "MissingContextValues": { "target": "com.amazonaws.iam#ContextKeyNamesResultListType", "traits": { - "smithy.api#documentation": "

A list of context keys that are required by the included input policies but that were\n not provided by one of the input parameters. This list is used when the resource in a\n simulation is \"*\", either explicitly, or when the ResourceArns parameter\n blank. If you include a list of resources, then any missing context values are instead\n included under the ResourceSpecificResults section. To discover the context\n keys used by a set of policies, you can call GetContextKeysForCustomPolicy or GetContextKeysForPrincipalPolicy.

" + "smithy.api#documentation": "

A list of context keys that are required by the included input policies but that were\n not provided by one of the input parameters. This list is used when the resource in a\n simulation is \"*\", either explicitly, or when the ResourceArns parameter\n blank. If you include a list of resources, then any missing context values are instead\n included under the ResourceSpecificResults section. To discover the context\n keys used by a set of policies, you can call GetContextKeysForCustomPolicy or GetContextKeysForPrincipalPolicy.

" } }, "OrganizationsDecisionDetail": { @@ -5599,24 +6200,50 @@ "EvalDecisionDetails": { "target": "com.amazonaws.iam#EvalDecisionDetailsType", "traits": { - "smithy.api#documentation": "

Additional details about the results of the cross-account evaluation decision. This\n parameter is populated for only cross-account simulations. It contains a brief summary of\n how each policy type contributes to the final evaluation decision.

\n

If the simulation evaluates policies within the same account and includes a resource\n ARN, then the parameter is present but the response is empty. If the simulation evaluates\n policies within the same account and specifies all resources (*), then the\n parameter is not returned.

\n

When you make a cross-account request, Amazon Web Services evaluates the request in the trusting\n account and the trusted account. The request is allowed only if both evaluations return\n true. For more information about how policies are evaluated, see Evaluating policies within a single account.

\n

If an Organizations SCP included in the evaluation denies access, the simulation ends. In\n this case, policy evaluation does not proceed any further and this parameter is not\n returned.

" + "smithy.api#documentation": "

Additional details about the results of the cross-account evaluation decision. This\n parameter is populated for only cross-account simulations. It contains a brief summary of\n how each policy type contributes to the final evaluation decision.

\n

If the simulation evaluates policies within the same account and includes a resource\n ARN, then the parameter is present but the response is empty. If the simulation evaluates\n policies within the same account and specifies all resources (*), then the\n parameter is not returned.

\n

When you make a cross-account request, Amazon Web Services evaluates the request in the trusting\n account and the trusted account. The request is allowed only if both evaluations return\n true. For more information about how policies are evaluated, see Evaluating policies within a single account.

\n

If an Organizations SCP included in the evaluation denies access, the simulation ends. In\n this case, policy evaluation does not proceed any further and this parameter is not\n returned.

" + } + }, + "ResourceSpecificResults": { + "target": "com.amazonaws.iam#ResourceSpecificResultListType", + "traits": { + "smithy.api#documentation": "

The individual results of the simulation of the API operation specified in\n EvalActionName on each resource.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the results of a simulation.

\n

This data type is used by the return parameter of \n SimulateCustomPolicy\n and \n SimulatePrincipalPolicy\n .

" + } + }, + "com.amazonaws.iam#EvaluationResultsListType": { + "type": "list", + "member": { + "target": "com.amazonaws.iam#EvaluationResult" + } + }, + "com.amazonaws.iam#ExceptionMessage": { + "type": "string" + }, + "com.amazonaws.iam#FeatureType": { + "type": "enum", + "members": { + "ROOT_CREDENTIALS_MANAGEMENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RootCredentialsManagement" } }, - "ResourceSpecificResults": { - "target": "com.amazonaws.iam#ResourceSpecificResultListType", + "ROOT_SESSIONS": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The individual results of the simulation of the API operation specified in\n EvalActionName on each resource.

" + "smithy.api#enumValue": "RootSessions" } } - }, - "traits": { - "smithy.api#documentation": "

Contains the results of a simulation.

\n

This data type is used by the return parameter of \n SimulateCustomPolicy\n and \n SimulatePrincipalPolicy\n .

" } }, - "com.amazonaws.iam#EvaluationResultsListType": { + "com.amazonaws.iam#FeaturesListType": { "type": "list", "member": { - "target": "com.amazonaws.iam#EvaluationResult" + "target": "com.amazonaws.iam#FeatureType" } }, "com.amazonaws.iam#GenerateCredentialReport": { @@ -5656,7 +6283,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GenerateCredentialReport\n request.

", + "smithy.api#documentation": "

Contains the response to a successful GenerateCredentialReport request.

", "smithy.api#output": {} } }, @@ -5674,7 +6301,7 @@ } ], "traits": { - "smithy.api#documentation": "

Generates a report for service last accessed data for Organizations. You can generate a\n report for any entities (organization root, organizational unit, or account) or policies\n in your organization.

\n

To call this operation, you must be signed in using your Organizations management account\n credentials. You can use your long-term IAM user or root user credentials, or temporary\n credentials from assuming an IAM role. SCPs must be enabled for your organization\n root. You must have the required IAM and Organizations permissions. For more information, see\n Refining permissions using service last accessed data in the\n IAM User Guide.

\n

You can generate a service last accessed data report for entities by specifying only\n the entity's path. This data includes a list of services that are allowed by any service\n control policies (SCPs) that apply to the entity.

\n

You can generate a service last accessed data report for a policy by specifying an\n entity's path and an optional Organizations policy ID. This data includes a list of services that\n are allowed by the specified SCP.

\n

For each service in both report types, the data includes the most recent account\n activity that the policy allows to account principals in the entity or the entity's\n children. For important information about the data, reporting period, permissions\n required, troubleshooting, and supported Regions see Reducing permissions using\n service last accessed data in the\n IAM User Guide.

\n \n

The data includes all attempts to access Amazon Web Services, not just the successful ones. This\n includes all attempts that were made using the Amazon Web Services Management Console, the Amazon Web Services API through any\n of the SDKs, or any of the command line tools. An unexpected entry in the service\n last accessed data does not mean that an account has been compromised, because the\n request might have been denied. Refer to your CloudTrail logs as the authoritative\n source for information about all API calls and whether they were successful or\n denied access. For more information, see Logging IAM events with\n CloudTrail in the IAM User Guide.

\n
\n

This operation returns a JobId. Use this parameter in the \n GetOrganizationsAccessReport\n operation to check the status of\n the report generation. To check the status of this request, use the JobId\n parameter in the \n GetOrganizationsAccessReport\n operation\n and test the JobStatus response parameter. When the job is complete, you\n can retrieve the report.

\n

To generate a service last accessed data report for entities, specify an entity path\n without specifying the optional Organizations policy ID. The type of entity that you specify\n determines the data returned in the report.

\n
    \n
  • \n

    \n Root – When you specify the\n organizations root as the entity, the resulting report lists all of the services\n allowed by SCPs that are attached to your root. For each service, the report\n includes data for all accounts in your organization except the\n management account, because the management account is not limited by SCPs.

    \n
  • \n
  • \n

    \n OU – When you specify an\n organizational unit (OU) as the entity, the resulting report lists all of the\n services allowed by SCPs that are attached to the OU and its parents. For each\n service, the report includes data for all accounts in the OU or its children.\n This data excludes the management account, because the management account is not\n limited by SCPs.

    \n
  • \n
  • \n

    \n management account – When you specify the\n management account, the resulting report lists all Amazon Web Services services, because the\n management account is not limited by SCPs. For each service, the report includes\n data for only the management account.

    \n
  • \n
  • \n

    \n Account – When you specify another\n account as the entity, the resulting report lists all of the services allowed by\n SCPs that are attached to the account and its parents. For each service, the\n report includes data for only the specified account.

    \n
  • \n
\n

To generate a service last accessed data report for policies, specify an entity path\n and the optional Organizations policy ID. The type of entity that you specify determines the data\n returned for each service.

\n
    \n
  • \n

    \n Root – When you specify the root\n entity and a policy ID, the resulting report lists all of the services that are\n allowed by the specified SCP. For each service, the report includes data for all\n accounts in your organization to which the SCP applies. This data excludes the\n management account, because the management account is not limited by SCPs. If the\n SCP is not attached to any entities in the organization, then the report will\n return a list of services with no data.

    \n
  • \n
  • \n

    \n OU – When you specify an OU entity and\n a policy ID, the resulting report lists all of the services that are allowed by\n the specified SCP. For each service, the report includes data for all accounts\n in the OU or its children to which the SCP applies. This means that other\n accounts outside the OU that are affected by the SCP might not be included in\n the data. This data excludes the management account, because the\n management account is not limited by SCPs. If the SCP is not attached to the OU\n or one of its children, the report will return a list of services with no\n data.

    \n
  • \n
  • \n

    \n management account – When you specify the\n management account, the resulting report lists all Amazon Web Services services, because the\n management account is not limited by SCPs. If you specify a policy ID in the CLI\n or API, the policy is ignored. For each service, the report includes data for\n only the management account.

    \n
  • \n
  • \n

    \n Account – When you specify another\n account entity and a policy ID, the resulting report lists all of the services\n that are allowed by the specified SCP. For each service, the report includes\n data for only the specified account. This means that other accounts in the\n organization that are affected by the SCP might not be included in the data. If\n the SCP is not attached to the account, the report will return a list of\n services with no data.

    \n
  • \n
\n \n

Service last accessed data does not use other policy types when determining\n whether a principal could access a service. These other policy types include\n identity-based policies, resource-based policies, access control lists, IAM\n permissions boundaries, and STS assume role policies. It only applies SCP logic.\n For more about the evaluation of policy types, see Evaluating policies in the\n IAM User Guide.

\n
\n

For more information about service last accessed data, see Reducing policy scope by\n viewing user activity in the IAM User Guide.

", + "smithy.api#documentation": "

Generates a report for service last accessed data for Organizations. You can generate a\n report for any entities (organization root, organizational unit, or account) or policies\n in your organization.

\n

To call this operation, you must be signed in using your Organizations management account\n credentials. You can use your long-term IAM user or root user credentials, or temporary\n credentials from assuming an IAM role. SCPs must be enabled for your organization\n root. You must have the required IAM and Organizations permissions. For more information, see\n Refining permissions using service last accessed data in the\n IAM User Guide.

\n

You can generate a service last accessed data report for entities by specifying only\n the entity's path. This data includes a list of services that are allowed by any service\n control policies (SCPs) that apply to the entity.

\n

You can generate a service last accessed data report for a policy by specifying an\n entity's path and an optional Organizations policy ID. This data includes a list of services that\n are allowed by the specified SCP.

\n

For each service in both report types, the data includes the most recent account\n activity that the policy allows to account principals in the entity or the entity's\n children. For important information about the data, reporting period, permissions\n required, troubleshooting, and supported Regions see Reducing permissions using\n service last accessed data in the\n IAM User Guide.

\n \n

The data includes all attempts to access Amazon Web Services, not just the successful ones. This\n includes all attempts that were made using the Amazon Web Services Management Console, the Amazon Web Services API through any\n of the SDKs, or any of the command line tools. An unexpected entry in the service\n last accessed data does not mean that an account has been compromised, because the\n request might have been denied. Refer to your CloudTrail logs as the authoritative\n source for information about all API calls and whether they were successful or\n denied access. For more information, see Logging IAM events with\n CloudTrail in the IAM User Guide.

\n
\n

This operation returns a JobId. Use this parameter in the \n GetOrganizationsAccessReport\n operation to check the status of\n the report generation. To check the status of this request, use the JobId\n parameter in the \n GetOrganizationsAccessReport\n operation and test the\n JobStatus response parameter. When the job is complete, you can\n retrieve the report.

\n

To generate a service last accessed data report for entities, specify an entity path\n without specifying the optional Organizations policy ID. The type of entity that you specify\n determines the data returned in the report.

\n
    \n
  • \n

    \n Root – When you specify the\n organizations root as the entity, the resulting report lists all of the services\n allowed by SCPs that are attached to your root. For each service, the report\n includes data for all accounts in your organization except the\n management account, because the management account is not limited by SCPs.

    \n
  • \n
  • \n

    \n OU – When you specify an\n organizational unit (OU) as the entity, the resulting report lists all of the\n services allowed by SCPs that are attached to the OU and its parents. For each\n service, the report includes data for all accounts in the OU or its children.\n This data excludes the management account, because the management account is not\n limited by SCPs.

    \n
  • \n
  • \n

    \n management account – When you specify the\n management account, the resulting report lists all Amazon Web Services services, because the\n management account is not limited by SCPs. For each service, the report includes\n data for only the management account.

    \n
  • \n
  • \n

    \n Account – When you specify another\n account as the entity, the resulting report lists all of the services allowed by\n SCPs that are attached to the account and its parents. For each service, the\n report includes data for only the specified account.

    \n
  • \n
\n

To generate a service last accessed data report for policies, specify an entity path\n and the optional Organizations policy ID. The type of entity that you specify determines the data\n returned for each service.

\n
    \n
  • \n

    \n Root – When you specify the root\n entity and a policy ID, the resulting report lists all of the services that are\n allowed by the specified SCP. For each service, the report includes data for all\n accounts in your organization to which the SCP applies. This data excludes the\n management account, because the management account is not limited by SCPs. If the\n SCP is not attached to any entities in the organization, then the report will\n return a list of services with no data.

    \n
  • \n
  • \n

    \n OU – When you specify an OU entity and\n a policy ID, the resulting report lists all of the services that are allowed by\n the specified SCP. For each service, the report includes data for all accounts\n in the OU or its children to which the SCP applies. This means that other\n accounts outside the OU that are affected by the SCP might not be included in\n the data. This data excludes the management account, because the\n management account is not limited by SCPs. If the SCP is not attached to the OU\n or one of its children, the report will return a list of services with no\n data.

    \n
  • \n
  • \n

    \n management account – When you specify the\n management account, the resulting report lists all Amazon Web Services services, because the\n management account is not limited by SCPs. If you specify a policy ID in the CLI\n or API, the policy is ignored. For each service, the report includes data for\n only the management account.

    \n
  • \n
  • \n

    \n Account – When you specify another\n account entity and a policy ID, the resulting report lists all of the services\n that are allowed by the specified SCP. For each service, the report includes\n data for only the specified account. This means that other accounts in the\n organization that are affected by the SCP might not be included in the data. If\n the SCP is not attached to the account, the report will return a list of\n services with no data.

    \n
  • \n
\n \n

Service last accessed data does not use other policy types when determining\n whether a principal could access a service. These other policy types include\n identity-based policies, resource-based policies, access control lists, IAM\n permissions boundaries, and STS assume role policies. It only applies SCP logic.\n For more about the evaluation of policy types, see Evaluating policies in the\n IAM User Guide.

\n
\n

For more information about service last accessed data, see Reducing policy scope by\n viewing user activity in the IAM User Guide.

", "smithy.api#examples": [ { "title": "To generate a service last accessed data report for an organizational unit", @@ -5716,7 +6343,7 @@ "JobId": { "target": "com.amazonaws.iam#jobIDType", "traits": { - "smithy.api#documentation": "

The job identifier that you can use in the GetOrganizationsAccessReport operation.

" + "smithy.api#documentation": "

The job identifier that you can use in the GetOrganizationsAccessReport operation.

" } } }, @@ -5741,7 +6368,7 @@ } ], "traits": { - "smithy.api#documentation": "

Generates a report that includes details about when an IAM resource (user, group,\n role, or policy) was last used in an attempt to access Amazon Web Services services. Recent activity\n usually appears within four hours. IAM reports activity for at least the last 400\n days, or less if your Region began supporting this feature within the last year. For\n more information, see Regions where data is tracked. For more information about services and\n actions for which action last accessed information is displayed, see IAM\n action last accessed information services and actions.

\n \n

The service last accessed data includes all attempts to access an Amazon Web Services API, not\n just the successful ones. This includes all attempts that were made using the\n Amazon Web Services Management Console, the Amazon Web Services API through any of the SDKs, or any of the command line tools.\n An unexpected entry in the service last accessed data does not mean that your\n account has been compromised, because the request might have been denied. Refer to\n your CloudTrail logs as the authoritative source for information about all API calls\n and whether they were successful or denied access. For more information, see Logging\n IAM events with CloudTrail in the\n IAM User Guide.

\n
\n

The GenerateServiceLastAccessedDetails operation returns a\n JobId. Use this parameter in the following operations to retrieve the\n following details from your report:

\n
    \n
  • \n

    \n GetServiceLastAccessedDetails – Use this operation\n for users, groups, roles, or policies to list every Amazon Web Services service that the\n resource could access using permissions policies. For each service, the response\n includes information about the most recent access attempt.

    \n

    The JobId returned by\n GenerateServiceLastAccessedDetail must be used by the same role\n within a session, or by the same user when used to call\n GetServiceLastAccessedDetail.

    \n
  • \n
  • \n

    \n GetServiceLastAccessedDetailsWithEntities – Use this\n operation for groups and policies to list information about the associated\n entities (users or roles) that attempted to access a specific Amazon Web Services service.\n

    \n
  • \n
\n

To check the status of the GenerateServiceLastAccessedDetails request,\n use the JobId parameter in the same operations and test the\n JobStatus response parameter.

\n

For additional information about the permissions policies that allow an identity\n (user, group, or role) to access specific services, use the ListPoliciesGrantingServiceAccess operation.

\n \n

Service last accessed data does not use other policy types when determining\n whether a resource could access a service. These other policy types include\n resource-based policies, access control lists, Organizations policies, IAM permissions\n boundaries, and STS assume role policies. It only applies permissions policy\n logic. For more about the evaluation of policy types, see Evaluating policies in the\n IAM User Guide.

\n
\n

For more information about service and action last accessed data, see Reducing permissions using service last accessed data in the\n IAM User Guide.

", + "smithy.api#documentation": "

Generates a report that includes details about when an IAM resource (user, group,\n role, or policy) was last used in an attempt to access Amazon Web Services services. Recent activity\n usually appears within four hours. IAM reports activity for at least the last 400\n days, or less if your Region began supporting this feature within the last year. For\n more information, see Regions where data is tracked. For more information about services and\n actions for which action last accessed information is displayed, see IAM\n action last accessed information services and actions.

\n \n

The service last accessed data includes all attempts to access an Amazon Web Services API, not\n just the successful ones. This includes all attempts that were made using the\n Amazon Web Services Management Console, the Amazon Web Services API through any of the SDKs, or any of the command line tools.\n An unexpected entry in the service last accessed data does not mean that your\n account has been compromised, because the request might have been denied. Refer to\n your CloudTrail logs as the authoritative source for information about all API calls\n and whether they were successful or denied access. For more information, see Logging\n IAM events with CloudTrail in the\n IAM User Guide.

\n
\n

The GenerateServiceLastAccessedDetails operation returns a\n JobId. Use this parameter in the following operations to retrieve the\n following details from your report:

\n
    \n
  • \n

    \n GetServiceLastAccessedDetails – Use this operation for\n users, groups, roles, or policies to list every Amazon Web Services service that the resource\n could access using permissions policies. For each service, the response includes\n information about the most recent access attempt.

    \n

    The JobId returned by\n GenerateServiceLastAccessedDetail must be used by the same role\n within a session, or by the same user when used to call\n GetServiceLastAccessedDetail.

    \n
  • \n
  • \n

    \n GetServiceLastAccessedDetailsWithEntities – Use this\n operation for groups and policies to list information about the associated\n entities (users or roles) that attempted to access a specific Amazon Web Services service.\n

    \n
  • \n
\n

To check the status of the GenerateServiceLastAccessedDetails request,\n use the JobId parameter in the same operations and test the\n JobStatus response parameter.

\n

For additional information about the permissions policies that allow an identity\n (user, group, or role) to access specific services, use the ListPoliciesGrantingServiceAccess operation.

\n \n

Service last accessed data does not use other policy types when determining\n whether a resource could access a service. These other policy types include\n resource-based policies, access control lists, Organizations policies, IAM permissions\n boundaries, and STS assume role policies. It only applies permissions policy\n logic. For more about the evaluation of policy types, see Evaluating policies in the\n IAM User Guide.

\n
\n

For more information about service and action last accessed data, see Reducing permissions using service last accessed data in the\n IAM User Guide.

", "smithy.api#examples": [ { "title": "To generate a service last accessed data report for a policy", @@ -5783,7 +6410,7 @@ "JobId": { "target": "com.amazonaws.iam#jobIDType", "traits": { - "smithy.api#documentation": "

The JobId that you can use in the GetServiceLastAccessedDetails or GetServiceLastAccessedDetailsWithEntities operations. The\n JobId returned by GenerateServiceLastAccessedDetail must\n be used by the same role within a session, or by the same user when used to call\n GetServiceLastAccessedDetail.

" + "smithy.api#documentation": "

The JobId that you can use in the GetServiceLastAccessedDetails or GetServiceLastAccessedDetailsWithEntities operations. The\n JobId returned by GenerateServiceLastAccessedDetail must\n be used by the same role within a session, or by the same user when used to call\n GetServiceLastAccessedDetail.

" } } }, @@ -5835,7 +6462,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetAccessKeyLastUsed request.\n It is also returned as a member of the AccessKeyMetaData structure returned\n by the ListAccessKeys action.

", + "smithy.api#documentation": "

Contains the response to a successful GetAccessKeyLastUsed\n request. It is also returned as a member of the AccessKeyMetaData structure\n returned by the ListAccessKeys action.

", "smithy.api#output": {} } }, @@ -5853,7 +6480,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves information about all IAM users, groups, roles, and policies in your Amazon Web Services\n account, including their relationships to one another. Use this operation to obtain a\n snapshot of the configuration of IAM permissions (users, groups, roles, and policies)\n in your account.

\n \n

Policies returned by this operation are URL-encoded compliant \n with RFC 3986. You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode method of the java.net.URLDecoder utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.

\n
\n

You can optionally filter the results using the Filter parameter. You can\n paginate the results using the MaxItems and Marker\n parameters.

", + "smithy.api#documentation": "

Retrieves information about all IAM users, groups, roles, and policies in your Amazon Web Services\n account, including their relationships to one another. Use this operation to obtain a\n snapshot of the configuration of IAM permissions (users, groups, roles, and policies)\n in your account.

\n \n

Policies returned by this operation are URL-encoded compliant \n with RFC 3986. You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode method of the java.net.URLDecoder utility class in \n the Java SDK. Other languages and SDKs provide similar functionality, and some SDKs do this decoding \n automatically.

\n
\n

You can optionally filter the results using the Filter parameter. You can\n paginate the results using the MaxItems and Marker\n parameters.

", "smithy.api#paginated": { "inputToken": "Marker", "outputToken": "Marker", @@ -5929,7 +6556,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetAccountAuthorizationDetails\n request.

", + "smithy.api#documentation": "

Contains the response to a successful GetAccountAuthorizationDetails request.

", "smithy.api#output": {} } }, @@ -5985,7 +6612,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetAccountPasswordPolicy\n request.

", + "smithy.api#documentation": "

Contains the response to a successful GetAccountPasswordPolicy request.

", "smithy.api#output": {} } }, @@ -6053,7 +6680,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetAccountSummary request.\n

", + "smithy.api#documentation": "

Contains the response to a successful GetAccountSummary request.\n

", "smithy.api#output": {} } }, @@ -6071,7 +6698,7 @@ } ], "traits": { - "smithy.api#documentation": "

Gets a list of all of the context keys referenced in the input policies. The policies\n are supplied as a list of one or more strings. To get the context keys from policies\n associated with an IAM user, group, or role, use GetContextKeysForPrincipalPolicy.

\n

Context keys are variables maintained by Amazon Web Services and its services that provide details\n about the context of an API query request. Context keys can be evaluated by testing\n against a value specified in an IAM policy. Use\n GetContextKeysForCustomPolicy to understand what key names and values\n you must supply when you call SimulateCustomPolicy. Note that all\n parameters are shown in unencoded form here for clarity but must be URL encoded to be\n included as a part of a real HTML request.

" + "smithy.api#documentation": "

Gets a list of all of the context keys referenced in the input policies. The policies\n are supplied as a list of one or more strings. To get the context keys from policies\n associated with an IAM user, group, or role, use GetContextKeysForPrincipalPolicy.

\n

Context keys are variables maintained by Amazon Web Services and its services that provide details\n about the context of an API query request. Context keys can be evaluated by testing\n against a value specified in an IAM policy. Use\n GetContextKeysForCustomPolicy to understand what key names and values\n you must supply when you call SimulateCustomPolicy. Note that all parameters are shown in unencoded form\n here for clarity but must be URL encoded to be included as a part of a real HTML\n request.

" } }, "com.amazonaws.iam#GetContextKeysForCustomPolicyRequest": { @@ -6100,7 +6727,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetContextKeysForPrincipalPolicy or GetContextKeysForCustomPolicy request.

" + "smithy.api#documentation": "

Contains the response to a successful GetContextKeysForPrincipalPolicy or GetContextKeysForCustomPolicy request.

" } }, "com.amazonaws.iam#GetContextKeysForPrincipalPolicy": { @@ -6120,7 +6747,7 @@ } ], "traits": { - "smithy.api#documentation": "

Gets a list of all of the context keys referenced in all the IAM policies that are\n attached to the specified IAM entity. The entity can be an IAM user, group, or role.\n If you specify a user, then the request also includes all of the policies attached to\n groups that the user is a member of.

\n

You can optionally include a list of one or more additional policies, specified as\n strings. If you want to include only a list of policies by string,\n use GetContextKeysForCustomPolicy instead.

\n

\n Note: This operation discloses information about the\n permissions granted to other users. If you do not want users to see other user's\n permissions, then consider allowing them to use GetContextKeysForCustomPolicy instead.

\n

Context keys are variables maintained by Amazon Web Services and its services that provide details\n about the context of an API query request. Context keys can be evaluated by testing\n against a value in an IAM policy. Use GetContextKeysForPrincipalPolicy to understand what key names and values you must supply when you call SimulatePrincipalPolicy.

" + "smithy.api#documentation": "

Gets a list of all of the context keys referenced in all the IAM policies that are\n attached to the specified IAM entity. The entity can be an IAM user, group, or role.\n If you specify a user, then the request also includes all of the policies attached to\n groups that the user is a member of.

\n

You can optionally include a list of one or more additional policies, specified as\n strings. If you want to include only a list of policies by string,\n use GetContextKeysForCustomPolicy instead.

\n

\n Note: This operation discloses information about the\n permissions granted to other users. If you do not want users to see other user's\n permissions, then consider allowing them to use GetContextKeysForCustomPolicy instead.

\n

Context keys are variables maintained by Amazon Web Services and its services that provide details\n about the context of an API query request. Context keys can be evaluated by testing\n against a value in an IAM policy. Use GetContextKeysForPrincipalPolicy to understand what key names and values\n you must supply when you call SimulatePrincipalPolicy.

" } }, "com.amazonaws.iam#GetContextKeysForPrincipalPolicyRequest": { @@ -6193,7 +6820,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetCredentialReport request.\n

", + "smithy.api#documentation": "

Contains the response to a successful GetCredentialReport\n request.

", "smithy.api#output": {} } }, @@ -6240,7 +6867,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves the specified inline policy document that is embedded in the specified IAM\n group.

\n \n

Policies returned by this operation are URL-encoded compliant \n with RFC 3986. You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode method of the java.net.URLDecoder utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.

\n
\n

An IAM group can also have managed policies attached to it. To retrieve a managed\n policy document that is attached to a group, use GetPolicy to\n determine the policy's default version, then use GetPolicyVersion to\n retrieve the policy document.

\n

For more information about policies, see Managed policies and inline\n policies in the IAM User Guide.

" + "smithy.api#documentation": "

Retrieves the specified inline policy document that is embedded in the specified IAM\n group.

\n \n

Policies returned by this operation are URL-encoded compliant \n with RFC 3986. You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode method of the java.net.URLDecoder utility class in \n the Java SDK. Other languages and SDKs provide similar functionality, and some SDKs do this decoding \n automatically.

\n
\n

An IAM group can also have managed policies attached to it. To retrieve a managed\n policy document that is attached to a group, use GetPolicy to determine the\n policy's default version, then use GetPolicyVersion to\n retrieve the policy document.

\n

For more information about policies, see Managed policies and inline\n policies in the IAM User Guide.

" } }, "com.amazonaws.iam#GetGroupPolicyRequest": { @@ -6291,7 +6918,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetGroupPolicy request.\n

", + "smithy.api#documentation": "

Contains the response to a successful GetGroupPolicy request.\n

", "smithy.api#output": {} } }, @@ -6354,7 +6981,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetGroup request.

", + "smithy.api#documentation": "

Contains the response to a successful GetGroup request.

", "smithy.api#output": {} } }, @@ -6452,7 +7079,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetInstanceProfile request.\n

", + "smithy.api#documentation": "

Contains the response to a successful GetInstanceProfile\n request.

", "smithy.api#output": {} } }, @@ -6497,8 +7124,7 @@ "UserName": { "target": "com.amazonaws.iam#userNameType", "traits": { - "smithy.api#documentation": "

The name of the user whose login profile you want to retrieve.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

", - "smithy.api#required": {} + "smithy.api#documentation": "

The name of the user whose login profile you want to retrieve.

\n

This parameter is optional. If no user name is included, it defaults to the principal\n making the request. When you make this request with root user credentials, you must use\n an AssumeRoot session to omit the user name.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

" } } }, @@ -6518,7 +7144,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetLoginProfile request.\n

", + "smithy.api#documentation": "

Contains the response to a successful GetLoginProfile request.\n

", "smithy.api#output": {} } }, @@ -6625,7 +7251,7 @@ "OpenIDConnectProviderArn": { "target": "com.amazonaws.iam#arnType", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the OIDC provider resource object in IAM to get\n information for. You can get a list of OIDC provider resource ARNs by using the ListOpenIDConnectProviders operation.

\n

For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the OIDC provider resource object in IAM to get\n information for. You can get a list of OIDC provider resource ARNs by using the ListOpenIDConnectProviders operation.

\n

For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.

", "smithy.api#required": {} } } @@ -6640,19 +7266,19 @@ "Url": { "target": "com.amazonaws.iam#OpenIDConnectProviderUrlType", "traits": { - "smithy.api#documentation": "

The URL that the IAM OIDC provider resource object is associated with. For more\n information, see CreateOpenIDConnectProvider.

" + "smithy.api#documentation": "

The URL that the IAM OIDC provider resource object is associated with. For more\n information, see CreateOpenIDConnectProvider.

" } }, "ClientIDList": { "target": "com.amazonaws.iam#clientIDListType", "traits": { - "smithy.api#documentation": "

A list of client IDs (also known as audiences) that are associated with the specified\n IAM OIDC provider resource object. For more information, see CreateOpenIDConnectProvider.

" + "smithy.api#documentation": "

A list of client IDs (also known as audiences) that are associated with the specified\n IAM OIDC provider resource object. For more information, see CreateOpenIDConnectProvider.

" } }, "ThumbprintList": { "target": "com.amazonaws.iam#thumbprintListType", "traits": { - "smithy.api#documentation": "

A list of certificate thumbprints that are associated with the specified IAM OIDC\n provider resource object. For more information, see CreateOpenIDConnectProvider.

" + "smithy.api#documentation": "

A list of certificate thumbprints that are associated with the specified IAM OIDC\n provider resource object. For more information, see CreateOpenIDConnectProvider.

" } }, "CreateDate": { @@ -6669,7 +7295,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetOpenIDConnectProvider\n request.

", + "smithy.api#documentation": "

Contains the response to a successful GetOpenIDConnectProvider request.

", "smithy.api#output": {} } }, @@ -6687,7 +7313,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves the service last accessed data report for Organizations that was previously\n generated using the \n GenerateOrganizationsAccessReport\n \n operation. This operation retrieves the status of your report job and the report\n contents.

\n

Depending on the parameters that you passed when you generated the report, the data\n returned could include different information. For details, see GenerateOrganizationsAccessReport.

\n

To call this operation, you must be signed in to the management account in your\n organization. SCPs must be enabled for your organization root. You must have permissions\n to perform this operation. For more information, see Refining permissions using\n service last accessed data in the\n IAM User Guide.

\n

For each service that principals in an account (root user, IAM users, or IAM roles)\n could access using SCPs, the operation returns details about the most recent access\n attempt. If there was no attempt, the service is listed without details about the most\n recent attempt to access the service. If the operation fails, it returns the reason that\n it failed.

\n

By default, the list is sorted by service namespace.

", + "smithy.api#documentation": "

Retrieves the service last accessed data report for Organizations that was previously\n generated using the \n GenerateOrganizationsAccessReport\n operation. This operation\n retrieves the status of your report job and the report contents.

\n

Depending on the parameters that you passed when you generated the report, the data\n returned could include different information. For details, see GenerateOrganizationsAccessReport.

\n

To call this operation, you must be signed in to the management account in your\n organization. SCPs must be enabled for your organization root. You must have permissions\n to perform this operation. For more information, see Refining permissions using\n service last accessed data in the\n IAM User Guide.

\n

For each service that principals in an account (root user, IAM users, or IAM roles)\n could access using SCPs, the operation returns details about the most recent access\n attempt. If there was no attempt, the service is listed without details about the most\n recent attempt to access the service. If the operation fails, it returns the reason that\n it failed.

\n

By default, the list is sorted by service namespace.

", "smithy.api#examples": [ { "title": "To get details from a previously generated organizational unit report", @@ -6736,7 +7362,7 @@ "JobId": { "target": "com.amazonaws.iam#jobIDType", "traits": { - "smithy.api#documentation": "

The identifier of the request generated by the GenerateOrganizationsAccessReport operation.

", + "smithy.api#documentation": "

The identifier of the request generated by the GenerateOrganizationsAccessReport operation.

", "smithy.api#required": {} } }, @@ -6845,7 +7471,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves information about the specified managed policy, including the policy's\n default version and the total number of IAM users, groups, and roles to which the\n policy is attached. To retrieve the list of the specific users, groups, and roles that\n the policy is attached to, use ListEntitiesForPolicy. This operation\n returns metadata about the policy. To retrieve the actual policy document for a specific\n version of the policy, use GetPolicyVersion.

\n

This operation retrieves information about managed policies. To retrieve information\n about an inline policy that is embedded with an IAM user, group, or role, use GetUserPolicy, GetGroupPolicy, or GetRolePolicy.

\n

For more information about policies, see Managed policies and inline\n policies in the IAM User Guide.

", + "smithy.api#documentation": "

Retrieves information about the specified managed policy, including the policy's\n default version and the total number of IAM users, groups, and roles to which the\n policy is attached. To retrieve the list of the specific users, groups, and roles that\n the policy is attached to, use ListEntitiesForPolicy. This operation returns metadata about the policy. To\n retrieve the actual policy document for a specific version of the policy, use GetPolicyVersion.

\n

This operation retrieves information about managed policies. To retrieve information\n about an inline policy that is embedded with an IAM user, group, or role, use GetUserPolicy, GetGroupPolicy, or\n GetRolePolicy.

\n

For more information about policies, see Managed policies and inline\n policies in the IAM User Guide.

", "smithy.api#suppress": [ "WaitableTraitInvalidErrorType" ], @@ -6896,7 +7522,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetPolicy request.

", + "smithy.api#documentation": "

Contains the response to a successful GetPolicy request.

", "smithy.api#output": {} } }, @@ -6920,7 +7546,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves information about the specified version of the specified managed policy,\n including the policy document.

\n \n

Policies returned by this operation are URL-encoded compliant \n with RFC 3986. You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode method of the java.net.URLDecoder utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.

\n
\n

To list the available versions for a policy, use ListPolicyVersions.

\n

This operation retrieves information about managed policies. To retrieve information\n about an inline policy that is embedded in a user, group, or role, use GetUserPolicy, GetGroupPolicy, or GetRolePolicy.

\n

For more information about the types of policies, see Managed policies and inline\n policies in the IAM User Guide.

\n

For more information about managed policy versions, see Versioning for managed\n policies in the IAM User Guide.

" + "smithy.api#documentation": "

Retrieves information about the specified version of the specified managed policy,\n including the policy document.

\n \n

Policies returned by this operation are URL-encoded compliant \n with RFC 3986. You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode method of the java.net.URLDecoder utility class in \n the Java SDK. Other languages and SDKs provide similar functionality, and some SDKs do this decoding \n automatically.

\n
\n

To list the available versions for a policy, use ListPolicyVersions.

\n

This operation retrieves information about managed policies. To retrieve information\n about an inline policy that is embedded in a user, group, or role, use GetUserPolicy, GetGroupPolicy, or\n GetRolePolicy.

\n

For more information about the types of policies, see Managed policies and inline\n policies in the IAM User Guide.

\n

For more information about managed policy versions, see Versioning for managed\n policies in the IAM User Guide.

" } }, "com.amazonaws.iam#GetPolicyVersionRequest": { @@ -6956,7 +7582,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetPolicyVersion request.\n

", + "smithy.api#documentation": "

Contains the response to a successful GetPolicyVersion request.\n

", "smithy.api#output": {} } }, @@ -6977,7 +7603,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves information about the specified role, including the role's path, GUID, ARN,\n and the role's trust policy that grants permission to assume the role. For more\n information about roles, see IAM roles in the\n IAM User Guide.

\n \n

Policies returned by this operation are URL-encoded compliant \n with RFC 3986. You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode method of the java.net.URLDecoder utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.

\n
", + "smithy.api#documentation": "

Retrieves information about the specified role, including the role's path, GUID, ARN,\n and the role's trust policy that grants permission to assume the role. For more\n information about roles, see IAM roles in the\n IAM User Guide.

\n \n

Policies returned by this operation are URL-encoded compliant \n with RFC 3986. You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode method of the java.net.URLDecoder utility class in \n the Java SDK. Other languages and SDKs provide similar functionality, and some SDKs do this decoding \n automatically.

\n
", "smithy.api#examples": [ { "title": "To get information about an IAM role", @@ -7043,7 +7669,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves the specified inline policy document that is embedded with the specified\n IAM role.

\n \n

Policies returned by this operation are URL-encoded compliant \n with RFC 3986. You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode method of the java.net.URLDecoder utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.

\n
\n

An IAM role can also have managed policies attached to it. To retrieve a managed\n policy document that is attached to a role, use GetPolicy to determine\n the policy's default version, then use GetPolicyVersion to retrieve\n the policy document.

\n

For more information about policies, see Managed policies and inline\n policies in the IAM User Guide.

\n

For more information about roles, see IAM roles in the\n IAM User Guide.

" + "smithy.api#documentation": "

Retrieves the specified inline policy document that is embedded with the specified\n IAM role.

\n \n

Policies returned by this operation are URL-encoded compliant \n with RFC 3986. You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode method of the java.net.URLDecoder utility class in \n the Java SDK. Other languages and SDKs provide similar functionality, and some SDKs do this decoding \n automatically.

\n
\n

An IAM role can also have managed policies attached to it. To retrieve a managed\n policy document that is attached to a role, use GetPolicy to determine the\n policy's default version, then use GetPolicyVersion to\n retrieve the policy document.

\n

For more information about policies, see Managed policies and inline\n policies in the IAM User Guide.

\n

For more information about roles, see IAM roles in the\n IAM User Guide.

" } }, "com.amazonaws.iam#GetRolePolicyRequest": { @@ -7094,7 +7720,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetRolePolicy request.\n

", + "smithy.api#documentation": "

Contains the response to a successful GetRolePolicy request.

", "smithy.api#output": {} } }, @@ -7125,7 +7751,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetRole request.

", + "smithy.api#documentation": "

Contains the response to a successful GetRole request.

", "smithy.api#output": {} } }, @@ -7170,6 +7796,12 @@ "com.amazonaws.iam#GetSAMLProviderResponse": { "type": "structure", "members": { + "SAMLProviderUUID": { + "target": "com.amazonaws.iam#privateKeyIdType", + "traits": { + "smithy.api#documentation": "

The unique identifier assigned to the SAML provider.

" + } + }, "SAMLMetadataDocument": { "target": "com.amazonaws.iam#SAMLMetadataDocumentType", "traits": { @@ -7193,10 +7825,22 @@ "traits": { "smithy.api#documentation": "

A list of tags that are attached to the specified IAM SAML provider. The returned list of tags is sorted by tag key.\n For more information about tagging, see Tagging IAM resources in the\n IAM User Guide.

" } + }, + "AssertionEncryptionMode": { + "target": "com.amazonaws.iam#assertionEncryptionModeType", + "traits": { + "smithy.api#documentation": "

Specifies the encryption setting for the SAML provider.

" + } + }, + "PrivateKeyList": { + "target": "com.amazonaws.iam#privateKeyList", + "traits": { + "smithy.api#documentation": "

The private key metadata for the SAML provider.

" + } } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetSAMLProvider request.\n

", + "smithy.api#documentation": "

Contains the response to a successful GetSAMLProvider request.\n

", "smithy.api#output": {} } }, @@ -7260,7 +7904,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetSSHPublicKey\n request.

", + "smithy.api#documentation": "

Contains the response to a successful GetSSHPublicKey\n request.

", "smithy.api#output": {} } }, @@ -7311,7 +7955,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetServerCertificate request.\n

", + "smithy.api#documentation": "

Contains the response to a successful GetServerCertificate\n request.

", "smithy.api#output": {} } }, @@ -7370,7 +8014,7 @@ "JobId": { "target": "com.amazonaws.iam#jobIDType", "traits": { - "smithy.api#documentation": "

The ID of the request generated by the GenerateServiceLastAccessedDetails operation. The JobId\n returned by GenerateServiceLastAccessedDetail must be used by the same role\n within a session, or by the same user when used to call\n GetServiceLastAccessedDetail.

", + "smithy.api#documentation": "

The ID of the request generated by the GenerateServiceLastAccessedDetails operation. The JobId\n returned by GenerateServiceLastAccessedDetail must be used by the same role\n within a session, or by the same user when used to call\n GetServiceLastAccessedDetail.

", "smithy.api#required": {} } }, @@ -7618,7 +8262,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves the status of your service-linked role deletion. After you use DeleteServiceLinkedRole to submit a service-linked role for deletion,\n you can use the DeletionTaskId parameter in\n GetServiceLinkedRoleDeletionStatus to check the status of the deletion.\n If the deletion fails, this operation returns the reason that it failed, if that\n information is returned by the service.

" + "smithy.api#documentation": "

Retrieves the status of your service-linked role deletion. After you use DeleteServiceLinkedRole to submit a service-linked role for deletion, you\n can use the DeletionTaskId parameter in\n GetServiceLinkedRoleDeletionStatus to check the status of the deletion.\n If the deletion fails, this operation returns the reason that it failed, if that\n information is returned by the service.

" } }, "com.amazonaws.iam#GetServiceLinkedRoleDeletionStatusRequest": { @@ -7627,7 +8271,7 @@ "DeletionTaskId": { "target": "com.amazonaws.iam#DeletionTaskIdType", "traits": { - "smithy.api#documentation": "

The deletion task identifier. This identifier is returned by the DeleteServiceLinkedRole operation in the format\n task/aws-service-role///.

", + "smithy.api#documentation": "

The deletion task identifier. This identifier is returned by the DeleteServiceLinkedRole operation in the format\n task/aws-service-role///.

", "smithy.api#required": {} } } @@ -7696,6 +8340,21 @@ "smithy.api#suppress": [ "WaitableTraitInvalidErrorType" ], + "smithy.test#smokeTests": [ + { + "id": "GetUserFailure", + "params": { + "UserName": "fake_user" + }, + "vendorParams": { + "region": "us-east-1" + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "expect": { + "failure": {} + } + } + ], "smithy.waiters#waitable": { "UserExists": { "acceptors": [ @@ -7734,7 +8393,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves the specified inline policy document that is embedded in the specified IAM\n user.

\n \n

Policies returned by this operation are URL-encoded compliant \n with RFC 3986. You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode method of the java.net.URLDecoder utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.

\n
\n

An IAM user can also have managed policies attached to it. To retrieve a managed\n policy document that is attached to a user, use GetPolicy to determine\n the policy's default version. Then use GetPolicyVersion to retrieve\n the policy document.

\n

For more information about policies, see Managed policies and inline\n policies in the IAM User Guide.

" + "smithy.api#documentation": "

Retrieves the specified inline policy document that is embedded in the specified IAM\n user.

\n \n

Policies returned by this operation are URL-encoded compliant \n with RFC 3986. You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode method of the java.net.URLDecoder utility class in \n the Java SDK. Other languages and SDKs provide similar functionality, and some SDKs do this decoding \n automatically.

\n
\n

An IAM user can also have managed policies attached to it. To retrieve a managed\n policy document that is attached to a user, use GetPolicy to determine the\n policy's default version. Then use GetPolicyVersion to\n retrieve the policy document.

\n

For more information about policies, see Managed policies and inline\n policies in the IAM User Guide.

" } }, "com.amazonaws.iam#GetUserPolicyRequest": { @@ -7785,7 +8444,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetUserPolicy request.\n

", + "smithy.api#documentation": "

Contains the response to a successful GetUserPolicy request.

", "smithy.api#output": {} } }, @@ -7815,7 +8474,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful GetUser request.

", + "smithy.api#documentation": "

Contains the response to a successful GetUser request.

", "smithy.api#output": {} } }, @@ -7859,7 +8518,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about an IAM group entity.

\n

This data type is used as a response element in the following operations:

\n " + "smithy.api#documentation": "

Contains information about an IAM group entity.

\n

This data type is used as a response element in the following operations:

\n " } }, "com.amazonaws.iam#GroupDetail": { @@ -7906,7 +8565,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about an IAM group, including all of the group's policies.

\n

This data type is used as a response element in the GetAccountAuthorizationDetails operation.

" + "smithy.api#documentation": "

Contains information about an IAM group, including all of the group's policies.

\n

This data type is used as a response element in the GetAccountAuthorizationDetails operation.

" } }, "com.amazonaws.iam#InstanceProfile": { @@ -7962,7 +8621,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about an instance profile.

\n

This data type is used as a response element in the following operations:

\n " + "smithy.api#documentation": "

Contains information about an instance profile.

\n

This data type is used as a response element in the following operations:

\n " } }, "com.amazonaws.iam#InvalidAuthenticationCodeException": { @@ -8192,7 +8851,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListAccessKeys request.\n

", + "smithy.api#documentation": "

Contains the response to a successful ListAccessKeys request.\n

", "smithy.api#output": {} } }, @@ -8210,7 +8869,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the account alias associated with the Amazon Web Services account (Note: you can have only\n one). For information about using an Amazon Web Services account alias, see Creating,\n deleting, and listing an Amazon Web Services account alias in the Amazon Web Services Sign-In\n User Guide.

", + "smithy.api#documentation": "

Lists the account alias associated with the Amazon Web Services account (Note: you can have only\n one). For information about using an Amazon Web Services account alias, see Creating,\n deleting, and listing an Amazon Web Services account alias in the\n IAM User Guide.

", "smithy.api#examples": [ { "title": "To list account aliases", @@ -8275,7 +8934,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListAccountAliases request.\n

", + "smithy.api#documentation": "

Contains the response to a successful ListAccountAliases\n request.

", "smithy.api#output": {} } }, @@ -8299,7 +8958,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists all managed policies that are attached to the specified IAM group.

\n

An IAM group can also have inline policies embedded with it. To list the inline\n policies for a group, use ListGroupPolicies. For information about\n policies, see Managed policies and inline\n policies in the IAM User Guide.

\n

You can paginate the results using the MaxItems and Marker\n parameters. You can use the PathPrefix parameter to limit the list of\n policies to only those matching the specified path prefix. If there are no policies\n attached to the specified group (or none that match the specified path prefix), the\n operation returns an empty list.

", + "smithy.api#documentation": "

Lists all managed policies that are attached to the specified IAM group.

\n

An IAM group can also have inline policies embedded with it. To list the inline\n policies for a group, use ListGroupPolicies.\n For information about policies, see Managed policies and inline\n policies in the IAM User Guide.

\n

You can paginate the results using the MaxItems and Marker\n parameters. You can use the PathPrefix parameter to limit the list of\n policies to only those matching the specified path prefix. If there are no policies\n attached to the specified group (or none that match the specified path prefix), the\n operation returns an empty list.

", "smithy.api#paginated": { "inputToken": "Marker", "outputToken": "Marker", @@ -8365,7 +9024,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListAttachedGroupPolicies\n request.

", + "smithy.api#documentation": "

Contains the response to a successful ListAttachedGroupPolicies request.

", "smithy.api#output": {} } }, @@ -8389,7 +9048,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists all managed policies that are attached to the specified IAM role.

\n

An IAM role can also have inline policies embedded with it. To list the inline\n policies for a role, use ListRolePolicies. For information about\n policies, see Managed policies and inline\n policies in the IAM User Guide.

\n

You can paginate the results using the MaxItems and Marker\n parameters. You can use the PathPrefix parameter to limit the list of\n policies to only those matching the specified path prefix. If there are no policies\n attached to the specified role (or none that match the specified path prefix), the\n operation returns an empty list.

", + "smithy.api#documentation": "

Lists all managed policies that are attached to the specified IAM role.

\n

An IAM role can also have inline policies embedded with it. To list the inline\n policies for a role, use ListRolePolicies.\n For information about policies, see Managed policies and inline\n policies in the IAM User Guide.

\n

You can paginate the results using the MaxItems and Marker\n parameters. You can use the PathPrefix parameter to limit the list of\n policies to only those matching the specified path prefix. If there are no policies\n attached to the specified role (or none that match the specified path prefix), the\n operation returns an empty list.

", "smithy.api#paginated": { "inputToken": "Marker", "outputToken": "Marker", @@ -8455,7 +9114,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListAttachedRolePolicies\n request.

", + "smithy.api#documentation": "

Contains the response to a successful ListAttachedRolePolicies request.

", "smithy.api#output": {} } }, @@ -8479,7 +9138,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists all managed policies that are attached to the specified IAM user.

\n

An IAM user can also have inline policies embedded with it. To list the inline\n policies for a user, use ListUserPolicies. For information about\n policies, see Managed policies and inline\n policies in the IAM User Guide.

\n

You can paginate the results using the MaxItems and Marker\n parameters. You can use the PathPrefix parameter to limit the list of\n policies to only those matching the specified path prefix. If there are no policies\n attached to the specified group (or none that match the specified path prefix), the\n operation returns an empty list.

", + "smithy.api#documentation": "

Lists all managed policies that are attached to the specified IAM user.

\n

An IAM user can also have inline policies embedded with it. To list the inline\n policies for a user, use ListUserPolicies.\n For information about policies, see Managed policies and inline\n policies in the IAM User Guide.

\n

You can paginate the results using the MaxItems and Marker\n parameters. You can use the PathPrefix parameter to limit the list of\n policies to only those matching the specified path prefix. If there are no policies\n attached to the specified group (or none that match the specified path prefix), the\n operation returns an empty list.

", "smithy.api#paginated": { "inputToken": "Marker", "outputToken": "Marker", @@ -8545,7 +9204,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListAttachedUserPolicies\n request.

", + "smithy.api#documentation": "

Contains the response to a successful ListAttachedUserPolicies request.

", "smithy.api#output": {} } }, @@ -8658,7 +9317,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListEntitiesForPolicy request.\n

", + "smithy.api#documentation": "

Contains the response to a successful ListEntitiesForPolicy\n request.

", "smithy.api#output": {} } }, @@ -8679,7 +9338,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the names of the inline policies that are embedded in the specified IAM\n group.

\n

An IAM group can also have managed policies attached to it. To list the managed\n policies that are attached to a group, use ListAttachedGroupPolicies.\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide.

\n

You can paginate the results using the MaxItems and Marker\n parameters. If there are no inline policies embedded with the specified group, the\n operation returns an empty list.

", + "smithy.api#documentation": "

Lists the names of the inline policies that are embedded in the specified IAM\n group.

\n

An IAM group can also have managed policies attached to it. To list the managed\n policies that are attached to a group, use ListAttachedGroupPolicies. For more information about policies, see Managed\n policies and inline policies in the\n IAM User Guide.

\n

You can paginate the results using the MaxItems and Marker\n parameters. If there are no inline policies embedded with the specified group, the\n operation returns an empty list.

", "smithy.api#examples": [ { "title": "To list the in-line policies for an IAM group", @@ -8755,7 +9414,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListGroupPolicies request.\n

", + "smithy.api#documentation": "

Contains the response to a successful ListGroupPolicies request.\n

", "smithy.api#output": {} } }, @@ -8918,7 +9577,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListGroupsForUser request.\n

", + "smithy.api#documentation": "

Contains the response to a successful ListGroupsForUser request.\n

", "smithy.api#output": {} } }, @@ -8973,7 +9632,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListGroups request.

", + "smithy.api#documentation": "

Contains the response to a successful ListGroups request.

", "smithy.api#output": {} } }, @@ -9072,7 +9731,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the instance profiles that have the specified path prefix. If there are none,\n the operation returns an empty list. For more information about instance profiles, see\n Using\n instance profiles in the IAM User Guide.

\n \n

IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for an instance profile, see GetInstanceProfile.

\n
\n

You can paginate the results using the MaxItems and Marker\n parameters.

", + "smithy.api#documentation": "

Lists the instance profiles that have the specified path prefix. If there are none,\n the operation returns an empty list. For more information about instance profiles, see\n Using\n instance profiles in the IAM User Guide.

\n \n

IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for an instance profile, see\n GetInstanceProfile.

\n
\n

You can paginate the results using the MaxItems and Marker\n parameters.

", "smithy.api#paginated": { "inputToken": "Marker", "outputToken": "Marker", @@ -9159,7 +9818,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListInstanceProfilesForRole\n request.

", + "smithy.api#documentation": "

Contains the response to a successful ListInstanceProfilesForRole request.

", "smithy.api#output": {} } }, @@ -9214,7 +9873,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListInstanceProfiles request.\n

", + "smithy.api#documentation": "

Contains the response to a successful ListInstanceProfiles\n request.

", "smithy.api#output": {} } }, @@ -9379,7 +10038,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListMFADevices request.\n

", + "smithy.api#documentation": "

Contains the response to a successful ListMFADevices request.\n

", "smithy.api#output": {} } }, @@ -9481,7 +10140,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists information about the IAM OpenID Connect (OIDC) provider resource objects\n defined in the Amazon Web Services account.

\n \n

IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for an OIDC provider, see GetOpenIDConnectProvider.

\n
" + "smithy.api#documentation": "

Lists information about the IAM OpenID Connect (OIDC) provider resource objects\n defined in the Amazon Web Services account.

\n \n

IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for an OIDC provider, see GetOpenIDConnectProvider.

\n
" } }, "com.amazonaws.iam#ListOpenIDConnectProvidersRequest": { @@ -9502,7 +10161,72 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListOpenIDConnectProviders\n request.

", + "smithy.api#documentation": "

Contains the response to a successful ListOpenIDConnectProviders request.

", + "smithy.api#output": {} + } + }, + "com.amazonaws.iam#ListOrganizationsFeatures": { + "type": "operation", + "input": { + "target": "com.amazonaws.iam#ListOrganizationsFeaturesRequest" + }, + "output": { + "target": "com.amazonaws.iam#ListOrganizationsFeaturesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.iam#AccountNotManagementOrDelegatedAdministratorException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotFoundException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotInAllFeaturesModeException" + }, + { + "target": "com.amazonaws.iam#ServiceAccessNotEnabledException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists the centralized root access features enabled for your organization. For more\n information, see Centrally manage root access for member accounts.

", + "smithy.api#examples": [ + { + "title": "To list the centralized root access features enabled for your organization", + "documentation": "he following command lists the centralized root access features enabled for your organization.", + "output": { + "OrganizationId": "o-aa111bb222", + "EnabledFeatures": [ + "RootCredentialsManagement" + ] + } + } + ] + } + }, + "com.amazonaws.iam#ListOrganizationsFeaturesRequest": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.iam#ListOrganizationsFeaturesResponse": { + "type": "structure", + "members": { + "OrganizationId": { + "target": "com.amazonaws.iam#OrganizationIdType", + "traits": { + "smithy.api#documentation": "

The unique identifier (ID) of an organization.

" + } + }, + "EnabledFeatures": { + "target": "com.amazonaws.iam#FeaturesListType", + "traits": { + "smithy.api#documentation": "

Specifies the features that are currently available in your organization.

" + } + } + }, + "traits": { "smithy.api#output": {} } }, @@ -9520,7 +10244,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists all the managed policies that are available in your Amazon Web Services account, including\n your own customer-defined managed policies and all Amazon Web Services managed policies.

\n

You can filter the list of policies that is returned using the optional\n OnlyAttached, Scope, and PathPrefix\n parameters. For example, to list only the customer managed policies in your Amazon Web Services\n account, set Scope to Local. To list only Amazon Web Services managed\n policies, set Scope to AWS.

\n

You can paginate the results using the MaxItems and Marker\n parameters.

\n

For more information about managed policies, see Managed policies and inline\n policies in the IAM User Guide.

\n \n

IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a customer manged policy, see\n GetPolicy.

\n
", + "smithy.api#documentation": "

Lists all the managed policies that are available in your Amazon Web Services account, including\n your own customer-defined managed policies and all Amazon Web Services managed policies.

\n

You can filter the list of policies that is returned using the optional\n OnlyAttached, Scope, and PathPrefix\n parameters. For example, to list only the customer managed policies in your Amazon Web Services\n account, set Scope to Local. To list only Amazon Web Services managed\n policies, set Scope to AWS.

\n

You can paginate the results using the MaxItems and Marker\n parameters.

\n

For more information about managed policies, see Managed policies and inline\n policies in the IAM User Guide.

\n \n

IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a customer manged policy, see\n GetPolicy.

\n
", "smithy.api#paginated": { "inputToken": "Marker", "outputToken": "Marker", @@ -9546,7 +10270,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves a list of policies that the IAM identity (user, group, or role) can use to\n access each specified service.

\n \n

This operation does not use other policy types when determining whether a resource\n could access a service. These other policy types include resource-based policies,\n access control lists, Organizations policies, IAM permissions boundaries, and STS\n assume role policies. It only applies permissions policy logic. For more about the\n evaluation of policy types, see Evaluating policies in the\n IAM User Guide.

\n
\n

The list of policies returned by the operation depends on the ARN of the identity that\n you provide.

\n
    \n
  • \n

    \n User – The list of policies includes\n the managed and inline policies that are attached to the user directly. The list\n also includes any additional managed and inline policies that are attached to\n the group to which the user belongs.

    \n
  • \n
  • \n

    \n Group – The list of policies includes\n only the managed and inline policies that are attached to the group directly.\n Policies that are attached to the group’s user are not included.

    \n
  • \n
  • \n

    \n Role – The list of policies includes\n only the managed and inline policies that are attached to the role.

    \n
  • \n
\n

For each managed policy, this operation returns the ARN and policy name. For each\n inline policy, it returns the policy name and the entity to which it is attached. Inline\n policies do not have an ARN. For more information about these policy types, see Managed policies and inline policies in the\n IAM User Guide.

\n

Policies that are attached to users and roles as permissions boundaries are not\n returned. To view which managed policy is currently used to set the permissions boundary\n for a user or role, use the GetUser or GetRole\n operations.

", + "smithy.api#documentation": "

Retrieves a list of policies that the IAM identity (user, group, or role) can use to\n access each specified service.

\n \n

This operation does not use other policy types when determining whether a resource\n could access a service. These other policy types include resource-based policies,\n access control lists, Organizations policies, IAM permissions boundaries, and STS\n assume role policies. It only applies permissions policy logic. For more about the\n evaluation of policy types, see Evaluating policies in the\n IAM User Guide.

\n
\n

The list of policies returned by the operation depends on the ARN of the identity that\n you provide.

\n
    \n
  • \n

    \n User – The list of policies includes\n the managed and inline policies that are attached to the user directly. The list\n also includes any additional managed and inline policies that are attached to\n the group to which the user belongs.

    \n
  • \n
  • \n

    \n Group – The list of policies includes\n only the managed and inline policies that are attached to the group directly.\n Policies that are attached to the group’s user are not included.

    \n
  • \n
  • \n

    \n Role – The list of policies includes\n only the managed and inline policies that are attached to the role.

    \n
  • \n
\n

For each managed policy, this operation returns the ARN and policy name. For each\n inline policy, it returns the policy name and the entity to which it is attached. Inline\n policies do not have an ARN. For more information about these policy types, see Managed policies and inline policies in the\n IAM User Guide.

\n

Policies that are attached to users and roles as permissions boundaries are not\n returned. To view which managed policy is currently used to set the permissions boundary\n for a user or role, use the GetUser or GetRole\n operations.

", "smithy.api#examples": [ { "title": "To list policies that allow access to a service", @@ -9610,7 +10334,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains details about the permissions policies that are attached to the specified\n identity (user, group, or role).

\n

This data type is used as a response element in the ListPoliciesGrantingServiceAccess operation.

" + "smithy.api#documentation": "

Contains details about the permissions policies that are attached to the specified\n identity (user, group, or role).

\n

This data type is used as a response element in the ListPoliciesGrantingServiceAccess operation.

" } }, "com.amazonaws.iam#ListPoliciesGrantingServiceAccessRequest": { @@ -9738,7 +10462,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListPolicies request.\n

", + "smithy.api#documentation": "

Contains the response to a successful ListPolicies request.

", "smithy.api#output": {} } }, @@ -9906,7 +10630,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListPolicyVersions request.\n

", + "smithy.api#documentation": "

Contains the response to a successful ListPolicyVersions\n request.

", "smithy.api#output": {} } }, @@ -9927,7 +10651,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the names of the inline policies that are embedded in the specified IAM\n role.

\n

An IAM role can also have managed policies attached to it. To list the managed\n policies that are attached to a role, use ListAttachedRolePolicies.\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide.

\n

You can paginate the results using the MaxItems and Marker\n parameters. If there are no inline policies embedded with the specified role, the\n operation returns an empty list.

", + "smithy.api#documentation": "

Lists the names of the inline policies that are embedded in the specified IAM\n role.

\n

An IAM role can also have managed policies attached to it. To list the managed\n policies that are attached to a role, use ListAttachedRolePolicies. For more information about policies, see Managed\n policies and inline policies in the\n IAM User Guide.

\n

You can paginate the results using the MaxItems and Marker\n parameters. If there are no inline policies embedded with the specified role, the\n operation returns an empty list.

", "smithy.api#paginated": { "inputToken": "Marker", "outputToken": "Marker", @@ -9988,7 +10712,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListRolePolicies request.\n

", + "smithy.api#documentation": "

Contains the response to a successful ListRolePolicies request.\n

", "smithy.api#output": {} } }, @@ -10109,7 +10833,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the IAM roles that have the specified path prefix. If there are none, the\n operation returns an empty list. For more information about roles, see IAM roles in the\n IAM User Guide.

\n \n

IAM resource-listing operations return a subset of the available \n attributes for the resource. This operation does not return the following attributes, even though they are an attribute of the returned object:

\n
    \n
  • \n

    PermissionsBoundary

    \n
  • \n
  • \n

    RoleLastUsed

    \n
  • \n
  • \n

    Tags

    \n
  • \n
\n

To view all of the information for a role, see GetRole.

\n
\n

You can paginate the results using the MaxItems and Marker\n parameters.

", + "smithy.api#documentation": "

Lists the IAM roles that have the specified path prefix. If there are none, the\n operation returns an empty list. For more information about roles, see IAM roles in the\n IAM User Guide.

\n \n

IAM resource-listing operations return a subset of the available \n attributes for the resource. This operation does not return the following attributes, even though they are an attribute of the returned object:

\n
    \n
  • \n

    PermissionsBoundary

    \n
  • \n
  • \n

    RoleLastUsed

    \n
  • \n
  • \n

    Tags

    \n
  • \n
\n

To view all of the information for a role, see GetRole.

\n
\n

You can paginate the results using the MaxItems and Marker\n parameters.

", "smithy.api#paginated": { "inputToken": "Marker", "outputToken": "Marker", @@ -10169,7 +10893,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListRoles request.

", + "smithy.api#documentation": "

Contains the response to a successful ListRoles request.

", "smithy.api#output": {} } }, @@ -10271,7 +10995,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the SAML provider resource objects defined in IAM in the account.\n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a SAML provider, see GetSAMLProvider.

\n \n

This operation requires Signature Version 4.

\n
" + "smithy.api#documentation": "

Lists the SAML provider resource objects defined in IAM in the account.\n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a SAML provider, see GetSAMLProvider.

\n \n

This operation requires Signature Version 4.

\n
" } }, "com.amazonaws.iam#ListSAMLProvidersRequest": { @@ -10292,7 +11016,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListSAMLProviders request.\n

", + "smithy.api#documentation": "

Contains the response to a successful ListSAMLProviders request.\n

", "smithy.api#output": {} } }, @@ -10369,7 +11093,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListSSHPublicKeys\n request.

", + "smithy.api#documentation": "

Contains the response to a successful ListSSHPublicKeys\n request.

", "smithy.api#output": {} } }, @@ -10468,7 +11192,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the server certificates stored in IAM that have the specified path prefix. If\n none exist, the operation returns an empty list.

\n

You can paginate the results using the MaxItems and Marker\n parameters.

\n

For more information about working with server certificates, see Working\n with server certificates in the IAM User Guide. This\n topic also includes a list of Amazon Web Services services that can use the server certificates that\n you manage with IAM.

\n \n

IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a servercertificate, see GetServerCertificate.

\n
", + "smithy.api#documentation": "

Lists the server certificates stored in IAM that have the specified path prefix. If\n none exist, the operation returns an empty list.

\n

You can paginate the results using the MaxItems and Marker\n parameters.

\n

For more information about working with server certificates, see Working\n with server certificates in the IAM User Guide. This\n topic also includes a list of Amazon Web Services services that can use the server certificates that\n you manage with IAM.

\n \n

IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a servercertificate, see\n GetServerCertificate.

\n
", "smithy.api#paginated": { "inputToken": "Marker", "outputToken": "Marker", @@ -10528,7 +11252,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListServerCertificates request.\n

", + "smithy.api#documentation": "

Contains the response to a successful ListServerCertificates\n request.

", "smithy.api#output": {} } }, @@ -10566,6 +11290,24 @@ "traits": { "smithy.api#documentation": "

Filters the returned results to only those for the specified Amazon Web Services service. If not\n specified, then Amazon Web Services returns service-specific credentials for all services.

" } + }, + "AllUsers": { + "target": "com.amazonaws.iam#allUsers", + "traits": { + "smithy.api#documentation": "

A flag indicating whether to list service specific credentials for all users. This\n parameter cannot be specified together with UserName. When true, returns all credentials\n associated with the specified service.

" + } + }, + "Marker": { + "target": "com.amazonaws.iam#markerType", + "traits": { + "smithy.api#documentation": "

Use this parameter only when paginating results and only after you receive a response\n indicating that the results are truncated. Set it to the value of the Marker from the\n response that you received to indicate where the next call should start.

" + } + }, + "MaxItems": { + "target": "com.amazonaws.iam#maxItemsType", + "traits": { + "smithy.api#documentation": "

Use this only when paginating results to indicate the maximum number of items you want\n in the response. If additional items exist beyond the maximum you specify, the\n IsTruncated response element is true.

" + } } }, "traits": { @@ -10580,6 +11322,19 @@ "traits": { "smithy.api#documentation": "

A list of structures that each contain details about a service-specific\n credential.

" } + }, + "Marker": { + "target": "com.amazonaws.iam#responseMarkerType", + "traits": { + "smithy.api#documentation": "

When IsTruncated is true, this element is present and contains the value to use for\n the Marker parameter in a subsequent pagination request.

" + } + }, + "IsTruncated": { + "target": "com.amazonaws.iam#booleanType", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

A flag that indicates whether there are more items to return. If your results were\n truncated, you can make a subsequent pagination request using the Marker request\n parameter to retrieve more items.

" + } } }, "traits": { @@ -10683,7 +11438,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListSigningCertificates\n request.

", + "smithy.api#documentation": "

Contains the response to a successful ListSigningCertificates request.

", "smithy.api#output": {} } }, @@ -10704,7 +11459,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the names of the inline policies embedded in the specified IAM user.

\n

An IAM user can also have managed policies attached to it. To list the managed\n policies that are attached to a user, use ListAttachedUserPolicies.\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide.

\n

You can paginate the results using the MaxItems and Marker\n parameters. If there are no inline policies embedded with the specified user, the\n operation returns an empty list.

", + "smithy.api#documentation": "

Lists the names of the inline policies embedded in the specified IAM user.

\n

An IAM user can also have managed policies attached to it. To list the managed\n policies that are attached to a user, use ListAttachedUserPolicies. For more information about policies, see Managed\n policies and inline policies in the\n IAM User Guide.

\n

You can paginate the results using the MaxItems and Marker\n parameters. If there are no inline policies embedded with the specified user, the\n operation returns an empty list.

", "smithy.api#paginated": { "inputToken": "Marker", "outputToken": "Marker", @@ -10765,7 +11520,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListUserPolicies request.\n

", + "smithy.api#documentation": "

Contains the response to a successful ListUserPolicies request.\n

", "smithy.api#output": {} } }, @@ -10886,7 +11641,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the IAM users that have the specified path prefix. If no path prefix is\n specified, the operation returns all users in the Amazon Web Services account. If there are none, the\n operation returns an empty list.

\n \n

IAM resource-listing operations return a subset of the available \n attributes for the resource. This operation does not return the following attributes, even though they are an attribute of the returned object:

\n
    \n
  • \n

    PermissionsBoundary

    \n
  • \n
  • \n

    Tags

    \n
  • \n
\n

To view all of the information for a user, see GetUser.

\n
\n

You can paginate the results using the MaxItems and Marker\n parameters.

", + "smithy.api#documentation": "

Lists the IAM users that have the specified path prefix. If no path prefix is\n specified, the operation returns all users in the Amazon Web Services account. If there are none, the\n operation returns an empty list.

\n \n

IAM resource-listing operations return a subset of the available \n attributes for the resource. This operation does not return the following attributes, even though they are an attribute of the returned object:

\n
    \n
  • \n

    PermissionsBoundary

    \n
  • \n
  • \n

    Tags

    \n
  • \n
\n

To view all of the information for a user, see GetUser.

\n
\n

You can paginate the results using the MaxItems and Marker\n parameters.

", "smithy.api#examples": [ { "title": "To list IAM users", @@ -10918,7 +11673,20 @@ "outputToken": "Marker", "items": "Users", "pageSize": "MaxItems" - } + }, + "smithy.test#smokeTests": [ + { + "id": "ListUsersSuccess", + "params": {}, + "vendorParams": { + "region": "us-east-1" + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "expect": { + "success": {} + } + } + ] } }, "com.amazonaws.iam#ListUsersRequest": { @@ -10972,7 +11740,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListUsers request.

", + "smithy.api#documentation": "

Contains the response to a successful ListUsers request.

", "smithy.api#output": {} } }, @@ -10985,7 +11753,7 @@ "target": "com.amazonaws.iam#ListVirtualMFADevicesResponse" }, "traits": { - "smithy.api#documentation": "

Lists the virtual MFA devices defined in the Amazon Web Services account by assignment status. If\n you do not specify an assignment status, the operation returns a list of all virtual MFA\n devices. Assignment status can be Assigned, Unassigned, or\n Any.

\n \n

IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view tag information for a virtual MFA device, see ListMFADeviceTags.

\n
\n

You can paginate the results using the MaxItems and Marker\n parameters.

", + "smithy.api#documentation": "

Lists the virtual MFA devices defined in the Amazon Web Services account by assignment status. If\n you do not specify an assignment status, the operation returns a list of all virtual MFA\n devices. Assignment status can be Assigned, Unassigned, or\n Any.

\n \n

IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view tag information for a virtual MFA device, see ListMFADeviceTags.

\n
\n

You can paginate the results using the MaxItems and Marker\n parameters.

", "smithy.api#examples": [ { "title": "To list virtual MFA devices", @@ -11061,7 +11829,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful ListVirtualMFADevices request.\n

", + "smithy.api#documentation": "

Contains the response to a successful ListVirtualMFADevices\n request.

", "smithy.api#output": {} } }, @@ -11091,7 +11859,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the user name and password create date for a user.

\n

This data type is used as a response element in the CreateLoginProfile and GetLoginProfile operations.

" + "smithy.api#documentation": "

Contains the user name and password create date for a user.

\n

This data type is used as a response element in the CreateLoginProfile and\n GetLoginProfile operations.

" } }, "com.amazonaws.iam#MFADevice": { @@ -11120,7 +11888,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about an MFA device.

\n

This data type is used as a response element in the ListMFADevices\n operation.

" + "smithy.api#documentation": "

Contains information about an MFA device.

\n

This data type is used as a response element in the ListMFADevices\n operation.

" } }, "com.amazonaws.iam#MalformedCertificateException": { @@ -11232,7 +12000,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about a managed policy, including the policy's ARN, versions, and\n the number of principal entities (users, groups, and roles) that the policy is attached\n to.

\n

This data type is used as a response element in the GetAccountAuthorizationDetails operation.

\n

For more information about managed policies, see Managed policies and inline\n policies in the IAM User Guide.

" + "smithy.api#documentation": "

Contains information about a managed policy, including the policy's ARN, versions, and\n the number of principal entities (users, groups, and roles) that the policy is attached\n to.

\n

This data type is used as a response element in the GetAccountAuthorizationDetails operation.

\n

For more information about managed policies, see Managed policies and inline\n policies in the IAM User Guide.

" } }, "com.amazonaws.iam#ManagedPolicyDetailListType": { @@ -11300,7 +12068,43 @@ "code": "OpenIdIdpCommunicationError", "httpResponseCode": 400 }, - "smithy.api#documentation": "

The request failed because IAM cannot connect to the OpenID Connect identity provider URL.

", + "smithy.api#documentation": "

The request failed because IAM cannot connect to the OpenID Connect identity provider\n URL.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.iam#OrganizationIdType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 34 + }, + "smithy.api#pattern": "^o-[a-z0-9]{10,32}$" + } + }, + "com.amazonaws.iam#OrganizationNotFoundException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.iam#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

The request was rejected because no organization is associated with your account.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.iam#OrganizationNotInAllFeaturesModeException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.iam#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

The request was rejected because your organization does not have All features enabled. For\n more information, see Available feature sets in the Organizations User\n Guide.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -11391,7 +12195,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about the account password policy.

\n

This data type is used as a response element in the GetAccountPasswordPolicy operation.

" + "smithy.api#documentation": "

Contains information about the account password policy.

\n

This data type is used as a response element in the GetAccountPasswordPolicy operation.

" } }, "com.amazonaws.iam#PasswordPolicyViolationException": { @@ -11489,7 +12293,7 @@ "Description": { "target": "com.amazonaws.iam#policyDescriptionType", "traits": { - "smithy.api#documentation": "

A friendly description of the policy.

\n

This element is included in the response to the GetPolicy operation.\n It is not included in the response to the ListPolicies operation.

" + "smithy.api#documentation": "

A friendly description of the policy.

\n

This element is included in the response to the GetPolicy operation. It is not\n included in the response to the ListPolicies operation.\n

" } }, "CreateDate": { @@ -11512,7 +12316,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about a managed policy.

\n

This data type is used as a response element in the CreatePolicy,\n GetPolicy, and ListPolicies operations.

\n

For more information about managed policies, refer to Managed policies and inline\n policies in the IAM User Guide.

" + "smithy.api#documentation": "

Contains information about a managed policy.

\n

This data type is used as a response element in the CreatePolicy, GetPolicy,\n and ListPolicies operations.

\n

For more information about managed policies, refer to Managed policies and inline\n policies in the IAM User Guide.

" } }, "com.amazonaws.iam#PolicyDetail": { @@ -11532,7 +12336,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about an IAM policy, including the policy document.

\n

This data type is used as a response element in the GetAccountAuthorizationDetails operation.

" + "smithy.api#documentation": "

Contains information about an IAM policy, including the policy document.

\n

This data type is used as a response element in the GetAccountAuthorizationDetails operation.

" } }, "com.amazonaws.iam#PolicyEvaluationDecisionType": { @@ -11609,7 +12413,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains details about the permissions policies that are attached to the specified\n identity (user, group, or role).

\n

This data type is an element of the ListPoliciesGrantingServiceAccessEntry object.

" + "smithy.api#documentation": "

Contains details about the permissions policies that are attached to the specified\n identity (user, group, or role).

\n

This data type is an element of the ListPoliciesGrantingServiceAccessEntry object.

" } }, "com.amazonaws.iam#PolicyGroup": { @@ -11629,7 +12433,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about a group that a managed policy is attached to.

\n

This data type is used as a response element in the ListEntitiesForPolicy operation.

\n

For more information about managed policies, refer to Managed policies and inline\n policies in the IAM User Guide.

" + "smithy.api#documentation": "

Contains information about a group that a managed policy is attached to.

\n

This data type is used as a response element in the ListEntitiesForPolicy operation.

\n

For more information about managed policies, refer to Managed policies and inline\n policies in the IAM User Guide.

" } }, "com.amazonaws.iam#PolicyGroupListType": { @@ -11675,7 +12479,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about a role that a managed policy is attached to.

\n

This data type is used as a response element in the ListEntitiesForPolicy operation.

\n

For more information about managed policies, refer to Managed policies and inline\n policies in the IAM User Guide.

" + "smithy.api#documentation": "

Contains information about a role that a managed policy is attached to.

\n

This data type is used as a response element in the ListEntitiesForPolicy operation.

\n

For more information about managed policies, refer to Managed policies and inline\n policies in the IAM User Guide.

" } }, "com.amazonaws.iam#PolicyRoleListType": { @@ -11768,7 +12572,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about a user that a managed policy is attached to.

\n

This data type is used as a response element in the ListEntitiesForPolicy operation.

\n

For more information about managed policies, refer to Managed policies and inline\n policies in the IAM User Guide.

" + "smithy.api#documentation": "

Contains information about a user that a managed policy is attached to.

\n

This data type is used as a response element in the ListEntitiesForPolicy operation.

\n

For more information about managed policies, refer to Managed policies and inline\n policies in the IAM User Guide.

" } }, "com.amazonaws.iam#PolicyUserListType": { @@ -11783,7 +12587,7 @@ "Document": { "target": "com.amazonaws.iam#policyDocumentType", "traits": { - "smithy.api#documentation": "

The policy document.

\n

The policy document is returned in the response to the GetPolicyVersion and GetAccountAuthorizationDetails operations. It is not returned in\n the response to the CreatePolicyVersion or ListPolicyVersions operations.

\n

The policy document returned in this structure is URL-encoded compliant with RFC 3986. You can use a URL decoding\n method to convert the policy back to plain JSON text. For example, if you use Java, you can\n use the decode method of the java.net.URLDecoder utility class in\n the Java SDK. Other languages and SDKs provide similar functionality.

" + "smithy.api#documentation": "

The policy document.

\n

The policy document is returned in the response to the GetPolicyVersion and\n GetAccountAuthorizationDetails operations. It is not returned in the response\n to the CreatePolicyVersion\n or ListPolicyVersions operations.

\n

The policy document returned in this structure is URL-encoded compliant with RFC 3986. You can use a URL decoding\n method to convert the policy back to plain JSON text. For example, if you use Java, you can\n use the decode method of the java.net.URLDecoder utility class in\n the Java SDK. Other languages and SDKs provide similar functionality.

" } }, "VersionId": { @@ -11807,7 +12611,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about a version of a managed policy.

\n

This data type is used as a response element in the CreatePolicyVersion, GetPolicyVersion, ListPolicyVersions, and GetAccountAuthorizationDetails operations.

\n

For more information about managed policies, refer to Managed policies and inline\n policies in the IAM User Guide.

" + "smithy.api#documentation": "

Contains information about a version of a managed policy.

\n

This data type is used as a response element in the CreatePolicyVersion,\n GetPolicyVersion, ListPolicyVersions,\n and GetAccountAuthorizationDetails operations.

\n

For more information about managed policies, refer to Managed policies and inline\n policies in the IAM User Guide.

" } }, "com.amazonaws.iam#Position": { @@ -11829,7 +12633,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the row and column of a location of a Statement element in a\n policy document.

\n

This data type is used as a member of the \n Statement\n type.

" + "smithy.api#documentation": "

Contains the row and column of a location of a Statement element in a\n policy document.

\n

This data type is used as a member of the \n Statement\n type.

" } }, "com.amazonaws.iam#PutGroupPolicy": { @@ -11859,11 +12663,11 @@ "smithy.api#examples": [ { "title": "To add a policy to a group", - "documentation": "The following command adds a policy named AllPerms to the IAM group named Admins.", + "documentation": "The following command adds a policy named IAMReadAccess to the IAM group named PowerUsers.", "input": { - "GroupName": "Admins", - "PolicyName": "AllPerms", - "PolicyDocument": "{\"Version\":\"2012-10-17\",\"Statement\":{\"Effect\":\"Allow\",\"Action\":\"*\",\"Resource\":\"*\"}}" + "GroupName": "PowerUsers", + "PolicyName": "IAMReadAccess", + "PolicyDocument": "{\"Version\":\"2012-10-17\",\"Statement\":{\"Effect\":\"Allow\",\"Action\":[\"iam:Get*\",\"iam:List*\",\"iam:Generate*\"],\"Resource\":\"*\"}}" } } ] @@ -12179,14 +12983,14 @@ "OpenIDConnectProviderArn": { "target": "com.amazonaws.iam#arnType", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM OIDC provider resource to remove the\n client ID from. You can get a list of OIDC provider ARNs by using the ListOpenIDConnectProviders operation.

\n

For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM OIDC provider resource to remove the\n client ID from. You can get a list of OIDC provider ARNs by using the ListOpenIDConnectProviders operation.

\n

For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.

", "smithy.api#required": {} } }, "ClientID": { "target": "com.amazonaws.iam#clientIDType", "traits": { - "smithy.api#documentation": "

The client ID (also known as audience) to remove from the IAM OIDC provider\n resource. For more information about client IDs, see CreateOpenIDConnectProvider.

", + "smithy.api#documentation": "

The client ID (also known as audience) to remove from the IAM OIDC provider\n resource. For more information about client IDs, see CreateOpenIDConnectProvider.

", "smithy.api#required": {} } } @@ -12467,7 +13271,7 @@ "MissingContextValues": { "target": "com.amazonaws.iam#ContextKeyNamesResultListType", "traits": { - "smithy.api#documentation": "

A list of context keys that are required by the included input policies but that were\n not provided by one of the input parameters. This list is used when a list of ARNs is\n included in the ResourceArns parameter instead of \"*\". If you do not specify\n individual resources, by setting ResourceArns to \"*\" or by not including the\n ResourceArns parameter, then any missing context values are instead\n included under the EvaluationResults section. To discover the context keys\n used by a set of policies, you can call GetContextKeysForCustomPolicy or\n GetContextKeysForPrincipalPolicy.

" + "smithy.api#documentation": "

A list of context keys that are required by the included input policies but that were\n not provided by one of the input parameters. This list is used when a list of ARNs is\n included in the ResourceArns parameter instead of \"*\". If you do not specify\n individual resources, by setting ResourceArns to \"*\" or by not including the\n ResourceArns parameter, then any missing context values are instead\n included under the EvaluationResults section. To discover the context keys\n used by a set of policies, you can call GetContextKeysForCustomPolicy or GetContextKeysForPrincipalPolicy.

" } }, "EvalDecisionDetails": { @@ -12484,7 +13288,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the result of the simulation of a single API operation call on a single\n resource.

\n

This data type is used by a member of the EvaluationResult data\n type.

" + "smithy.api#documentation": "

Contains the result of the simulation of a single API operation call on a single\n resource.

\n

This data type is used by a member of the EvaluationResult data\n type.

" } }, "com.amazonaws.iam#ResourceSpecificResultListType": { @@ -12706,12 +13510,12 @@ "RoleLastUsed": { "target": "com.amazonaws.iam#RoleLastUsed", "traits": { - "smithy.api#documentation": "

Contains information about the last time that an IAM role was used. This includes the\n date and time and the Region in which the role was last used. Activity is only reported for\n the trailing 400 days. This period can be shorter if your Region began supporting these\n features within the last year. The role might have been used more than 400 days ago. For\n more information, see Regions where data is tracked in the IAM User Guide.

" + "smithy.api#documentation": "

Contains information about the last time that an IAM role was used. This includes the\n date and time and the Region in which the role was last used. Activity is only reported for\n the trailing 400 days. This period can be shorter if your Region began supporting these\n features within the last year. The role might have been used more than 400 days ago. For\n more information, see Regions where data is tracked in the\n IAM User Guide.

" } } }, "traits": { - "smithy.api#documentation": "

Contains information about an IAM role, including all of the role's policies.

\n

This data type is used as a response element in the GetAccountAuthorizationDetails operation.

" + "smithy.api#documentation": "

Contains information about an IAM role, including all of the role's policies.

\n

This data type is used as a response element in the GetAccountAuthorizationDetails operation.

" } }, "com.amazonaws.iam#RoleLastUsed": { @@ -12731,7 +13535,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about the last time that an IAM role was used. This includes the\n date and time and the Region in which the role was last used. Activity is only reported for\n the trailing 400 days. This period can be shorter if your Region began supporting these\n features within the last year. The role might have been used more than 400 days ago. For\n more information, see Regions where data is tracked in the IAM user\n Guide.

\n

This data type is returned as a response element in the GetRole and\n GetAccountAuthorizationDetails operations.

" + "smithy.api#documentation": "

Contains information about the last time that an IAM role was used. This includes the\n date and time and the Region in which the role was last used. Activity is only reported for\n the trailing 400 days. This period can be shorter if your Region began supporting these\n features within the last year. The role might have been used more than 400 days ago. For\n more information, see Regions where data is tracked in the IAM user\n Guide.

\n

This data type is returned as a response element in the GetRole and GetAccountAuthorizationDetails operations.

" } }, "com.amazonaws.iam#RoleUsageListType": { @@ -12757,7 +13561,7 @@ } }, "traits": { - "smithy.api#documentation": "

An object that contains details about how a service-linked role is used, if that\n information is returned by the service.

\n

This data type is used as a response element in the GetServiceLinkedRoleDeletionStatus operation.

" + "smithy.api#documentation": "

An object that contains details about how a service-linked role is used, if that\n information is returned by the service.

\n

This data type is used as a response element in the GetServiceLinkedRoleDeletionStatus operation.

" } }, "com.amazonaws.iam#SAMLMetadataDocumentType": { @@ -12769,6 +13573,26 @@ } } }, + "com.amazonaws.iam#SAMLPrivateKey": { + "type": "structure", + "members": { + "KeyId": { + "target": "com.amazonaws.iam#privateKeyIdType", + "traits": { + "smithy.api#documentation": "

The unique identifier for the SAML private key.

" + } + }, + "Timestamp": { + "target": "com.amazonaws.iam#dateType", + "traits": { + "smithy.api#documentation": "

The date and time, in ISO 8601 date-time\n format, when the private key was uploaded.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the private keys for the SAML provider.

\n

This data type is used as a response element in the GetSAMLProvider\n operation.

" + } + }, "com.amazonaws.iam#SAMLProviderListEntry": { "type": "structure", "members": { @@ -12857,7 +13681,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about an SSH public key.

\n

This data type is used as a response element in the GetSSHPublicKey\n and UploadSSHPublicKey operations.

" + "smithy.api#documentation": "

Contains information about an SSH public key.

\n

This data type is used as a response element in the GetSSHPublicKey and\n UploadSSHPublicKey operations.

" } }, "com.amazonaws.iam#SSHPublicKeyListType": { @@ -12899,7 +13723,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about an SSH public key, without the key's body or\n fingerprint.

\n

This data type is used as a response element in the ListSSHPublicKeys\n operation.

" + "smithy.api#documentation": "

Contains information about an SSH public key, without the key's body or\n fingerprint.

\n

This data type is used as a response element in the ListSSHPublicKeys\n operation.

" } }, "com.amazonaws.iam#ServerCertificate": { @@ -12933,7 +13757,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about a server certificate.

\n

This data type is used as a response element in the GetServerCertificate operation.

" + "smithy.api#documentation": "

Contains information about a server certificate.

\n

This data type is used as a response element in the GetServerCertificate\n operation.

" } }, "com.amazonaws.iam#ServerCertificateMetadata": { @@ -12981,7 +13805,20 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about a server certificate without its certificate body,\n certificate chain, and private key.

\n

This data type is used as a response element in the UploadServerCertificate and ListServerCertificates\n operations.

" + "smithy.api#documentation": "

Contains information about a server certificate without its certificate body,\n certificate chain, and private key.

\n

This data type is used as a response element in the UploadServerCertificate and ListServerCertificates operations.

" + } + }, + "com.amazonaws.iam#ServiceAccessNotEnabledException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.iam#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

The request was rejected because trusted access is not enabled for IAM in Organizations. For details, see IAM and Organizations in the Organizations User Guide.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 } }, "com.amazonaws.iam#ServiceFailureException": { @@ -13039,18 +13876,18 @@ "TotalAuthenticatedEntities": { "target": "com.amazonaws.iam#integerType", "traits": { - "smithy.api#documentation": "

The total number of authenticated principals (root user, IAM users, or IAM roles)\n that have attempted to access the service.

\n

This field is null if no principals attempted to access the service within the tracking period.

" + "smithy.api#documentation": "

The total number of authenticated principals (root user, IAM users, or IAM roles) that\n have attempted to access the service.

\n

This field is null if no principals attempted to access the service within the tracking period.

" } }, "TrackedActionsLastAccessed": { "target": "com.amazonaws.iam#TrackedActionsLastAccessed", "traits": { - "smithy.api#documentation": "

An object that contains details about the most recent attempt to access a tracked action\n within the service.

\n

This field is null if there no tracked actions or if the principal did not use the\n tracked actions within the tracking period. This field is also null if the report was generated at the\n service level and not the action level. For more information, see the\n Granularity field in GenerateServiceLastAccessedDetails.

" + "smithy.api#documentation": "

An object that contains details about the most recent attempt to access a tracked action\n within the service.

\n

This field is null if there no tracked actions or if the principal did not use the\n tracked actions within the tracking period. This field is also null if the report was generated at the\n service level and not the action level. For more information, see the\n Granularity field in GenerateServiceLastAccessedDetails.

" } } }, "traits": { - "smithy.api#documentation": "

Contains details about the most recent attempt to access the service.

\n

This data type is used as a response element in the GetServiceLastAccessedDetails operation.

" + "smithy.api#documentation": "

Contains details about the most recent attempt to access the service.

\n

This data type is used as a response element in the GetServiceLastAccessedDetails operation.

" } }, "com.amazonaws.iam#ServiceNotSupportedException": { @@ -13080,6 +13917,12 @@ "smithy.api#required": {} } }, + "ExpirationDate": { + "target": "com.amazonaws.iam#dateType", + "traits": { + "smithy.api#documentation": "

The date and time when the service specific credential expires. This field is only\n present for Bedrock API keys that were created with an expiration period.

" + } + }, "ServiceName": { "target": "com.amazonaws.iam#serviceName", "traits": { @@ -13090,15 +13933,29 @@ "ServiceUserName": { "target": "com.amazonaws.iam#serviceUserName", "traits": { - "smithy.api#documentation": "

The generated user name for the service-specific credential. This value is generated by\n combining the IAM user's name combined with the ID number of the Amazon Web Services account, as in\n jane-at-123456789012, for example. This value cannot be configured by the\n user.

", - "smithy.api#required": {} + "smithy.api#addedDefault": {}, + "smithy.api#default": "", + "smithy.api#documentation": "

The generated user name for the service-specific credential. This value is generated by\n combining the IAM user's name combined with the ID number of the Amazon Web Services account, as in\n jane-at-123456789012, for example. This value cannot be configured by the\n user.

" } }, "ServicePassword": { "target": "com.amazonaws.iam#servicePassword", "traits": { - "smithy.api#documentation": "

The generated password for the service-specific credential.

", - "smithy.api#required": {} + "smithy.api#addedDefault": {}, + "smithy.api#default": "", + "smithy.api#documentation": "

The generated password for the service-specific credential.

" + } + }, + "ServiceCredentialAlias": { + "target": "com.amazonaws.iam#serviceCredentialAlias", + "traits": { + "smithy.api#documentation": "

For Bedrock API keys, this is the public portion of the credential that includes the IAM\n user name and a suffix containing version and creation information.

" + } + }, + "ServiceCredentialSecret": { + "target": "com.amazonaws.iam#serviceCredentialSecret", + "traits": { + "smithy.api#documentation": "

For Bedrock API keys, this is the secret portion of the credential that should be used\n to authenticate API calls. This value is returned only when the credential is\n created.

" } }, "ServiceSpecificCredentialId": { @@ -13147,8 +14004,15 @@ "ServiceUserName": { "target": "com.amazonaws.iam#serviceUserName", "traits": { - "smithy.api#documentation": "

The generated user name for the service-specific credential.

", - "smithy.api#required": {} + "smithy.api#addedDefault": {}, + "smithy.api#default": "", + "smithy.api#documentation": "

The generated user name for the service-specific credential.

" + } + }, + "ServiceCredentialAlias": { + "target": "com.amazonaws.iam#serviceCredentialAlias", + "traits": { + "smithy.api#documentation": "

For Bedrock API keys, this is the public portion of the credential that includes the IAM\n user name and a suffix containing version and creation information.

" } }, "CreateDate": { @@ -13158,6 +14022,12 @@ "smithy.api#required": {} } }, + "ExpirationDate": { + "target": "com.amazonaws.iam#dateType", + "traits": { + "smithy.api#documentation": "

The date and time when the service specific credential expires. This field is only\n present for Bedrock API keys that were created with an expiration period.

" + } + }, "ServiceSpecificCredentialId": { "target": "com.amazonaws.iam#serviceSpecificCredentialId", "traits": { @@ -13212,7 +14082,7 @@ } ], "traits": { - "smithy.api#documentation": "

Sets the specified version of the specified policy as the policy's default (operative)\n version.

\n

This operation affects all users, groups, and roles that the policy is attached to. To\n list the users, groups, and roles that the policy is attached to, use ListEntitiesForPolicy.

\n

For information about managed policies, see Managed policies and inline\n policies in the IAM User Guide.

" + "smithy.api#documentation": "

Sets the specified version of the specified policy as the policy's default (operative)\n version.

\n

This operation affects all users, groups, and roles that the policy is attached to. To\n list the users, groups, and roles that the policy is attached to, use ListEntitiesForPolicy.

\n

For information about managed policies, see Managed policies and inline\n policies in the IAM User Guide.

" } }, "com.amazonaws.iam#SetDefaultPolicyVersionRequest": { @@ -13251,7 +14121,7 @@ } ], "traits": { - "smithy.api#documentation": "

Sets the specified version of the global endpoint token as the token version used for\n the Amazon Web Services account.

\n

By default, Security Token Service (STS) is available as a global service, and all STS requests\n go to a single endpoint at https://sts.amazonaws.com. Amazon Web Services recommends\n using Regional STS endpoints to reduce latency, build in redundancy, and increase\n session token availability. For information about Regional endpoints for STS, see\n Security Token Service\n endpoints and quotas in the Amazon Web Services General Reference.

\n

If you make an STS call to the global endpoint, the resulting session tokens might\n be valid in some Regions but not others. It depends on the version that is set in this\n operation. Version 1 tokens are valid only in Amazon Web Services Regions that are\n available by default. These tokens do not work in manually enabled Regions, such as Asia\n Pacific (Hong Kong). Version 2 tokens are valid in all Regions. However, version 2\n tokens are longer and might affect systems where you temporarily store tokens. For\n information, see Activating and\n deactivating STS in an Amazon Web Services Region in the\n IAM User Guide.

\n

To view the current session token version, see the\n GlobalEndpointTokenVersion entry in the response of the GetAccountSummary operation.

", + "smithy.api#documentation": "

Sets the specified version of the global endpoint token as the token version used for\n the Amazon Web Services account.

\n

By default, Security Token Service (STS) is available as a global service, and all STS requests\n go to a single endpoint at https://sts.amazonaws.com. Amazon Web Services recommends\n using Regional STS endpoints to reduce latency, build in redundancy, and increase\n session token availability. For information about Regional endpoints for STS, see\n Security Token Service\n endpoints and quotas in the Amazon Web Services General Reference.

\n

If you make an STS call to the global endpoint, the resulting session tokens might\n be valid in some Regions but not others. It depends on the version that is set in this\n operation. Version 1 tokens are valid only in Amazon Web Services Regions that are\n available by default. These tokens do not work in manually enabled Regions, such as Asia\n Pacific (Hong Kong). Version 2 tokens are valid in all Regions. However, version 2\n tokens are longer and might affect systems where you temporarily store tokens. For\n information, see Activating and\n deactivating STS in an Amazon Web Services Region in the\n IAM User Guide.

\n

To view the current session token version, see the\n GlobalEndpointTokenVersion entry in the response of the GetAccountSummary operation.

", "smithy.api#examples": [ { "title": "To delete an access key for an IAM user", @@ -13317,7 +14187,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about an X.509 signing certificate.

\n

This data type is used as a response element in the UploadSigningCertificate and ListSigningCertificates\n operations.

" + "smithy.api#documentation": "

Contains information about an X.509 signing certificate.

\n

This data type is used as a response element in the UploadSigningCertificate and ListSigningCertificates operations.

" } }, "com.amazonaws.iam#SimulateCustomPolicy": { @@ -13337,7 +14207,7 @@ } ], "traits": { - "smithy.api#documentation": "

Simulate how a set of IAM policies and optionally a resource-based policy works with\n a list of API operations and Amazon Web Services resources to determine the policies' effective\n permissions. The policies are provided as strings.

\n

The simulation does not perform the API operations; it only checks the authorization\n to determine if the simulated policies allow or deny the operations. You can simulate\n resources that don't exist in your account.

\n

If you want to simulate existing policies that are attached to an IAM user, group,\n or role, use SimulatePrincipalPolicy instead.

\n

Context keys are variables that are maintained by Amazon Web Services and its services and which\n provide details about the context of an API query request. You can use the\n Condition element of an IAM policy to evaluate context keys. To get\n the list of context keys that the policies require for correct simulation, use GetContextKeysForCustomPolicy.

\n

If the output is long, you can use MaxItems and Marker\n parameters to paginate the results.

\n \n

The IAM policy simulator evaluates statements in the identity-based policy and\n the inputs that you provide during simulation. The policy simulator results can\n differ from your live Amazon Web Services environment. We recommend that you check your policies\n against your live Amazon Web Services environment after testing using the policy simulator to\n confirm that you have the desired results. For more information about using the\n policy simulator, see Testing IAM\n policies with the IAM policy simulator in the\n IAM User Guide.

\n
", + "smithy.api#documentation": "

Simulate how a set of IAM policies and optionally a resource-based policy works with\n a list of API operations and Amazon Web Services resources to determine the policies' effective\n permissions. The policies are provided as strings.

\n

The simulation does not perform the API operations; it only checks the authorization\n to determine if the simulated policies allow or deny the operations. You can simulate\n resources that don't exist in your account.

\n

If you want to simulate existing policies that are attached to an IAM user, group,\n or role, use SimulatePrincipalPolicy instead.

\n

Context keys are variables that are maintained by Amazon Web Services and its services and which\n provide details about the context of an API query request. You can use the\n Condition element of an IAM policy to evaluate context keys. To get\n the list of context keys that the policies require for correct simulation, use GetContextKeysForCustomPolicy.

\n

If the output is long, you can use MaxItems and Marker\n parameters to paginate the results.

\n \n

The IAM policy simulator evaluates statements in the identity-based policy and\n the inputs that you provide during simulation. The policy simulator results can\n differ from your live Amazon Web Services environment. We recommend that you check your policies\n against your live Amazon Web Services environment after testing using the policy simulator to\n confirm that you have the desired results. For more information about using the\n policy simulator, see Testing IAM\n policies with the IAM policy simulator in the\n IAM User Guide.

\n
", "smithy.api#paginated": { "inputToken": "Marker", "outputToken": "Marker", @@ -13446,7 +14316,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful SimulatePrincipalPolicy or\n SimulateCustomPolicy request.

" + "smithy.api#documentation": "

Contains the response to a successful SimulatePrincipalPolicy or SimulateCustomPolicy\n request.

" } }, "com.amazonaws.iam#SimulatePrincipalPolicy": { @@ -13469,7 +14339,7 @@ } ], "traits": { - "smithy.api#documentation": "

Simulate how a set of IAM policies attached to an IAM entity works with a list of\n API operations and Amazon Web Services resources to determine the policies' effective permissions. The\n entity can be an IAM user, group, or role. If you specify a user, then the simulation\n also includes all of the policies that are attached to groups that the user belongs to.\n You can simulate resources that don't exist in your account.

\n

You can optionally include a list of one or more additional policies specified as\n strings to include in the simulation. If you want to simulate only policies specified as\n strings, use SimulateCustomPolicy instead.

\n

You can also optionally include one resource-based policy to be evaluated with each of\n the resources included in the simulation for IAM users only.

\n

The simulation does not perform the API operations; it only checks the authorization\n to determine if the simulated policies allow or deny the operations.

\n

\n Note: This operation discloses information about the\n permissions granted to other users. If you do not want users to see other user's\n permissions, then consider allowing them to use SimulateCustomPolicy\n instead.

\n

Context keys are variables maintained by Amazon Web Services and its services that provide details\n about the context of an API query request. You can use the Condition\n element of an IAM policy to evaluate context keys. To get the list of context keys\n that the policies require for correct simulation, use GetContextKeysForPrincipalPolicy.

\n

If the output is long, you can use the MaxItems and Marker\n parameters to paginate the results.

\n \n

The IAM policy simulator evaluates statements in the identity-based policy and\n the inputs that you provide during simulation. The policy simulator results can\n differ from your live Amazon Web Services environment. We recommend that you check your policies\n against your live Amazon Web Services environment after testing using the policy simulator to\n confirm that you have the desired results. For more information about using the\n policy simulator, see Testing IAM\n policies with the IAM policy simulator in the\n IAM User Guide.

\n
", + "smithy.api#documentation": "

Simulate how a set of IAM policies attached to an IAM entity works with a list of\n API operations and Amazon Web Services resources to determine the policies' effective permissions. The\n entity can be an IAM user, group, or role. If you specify a user, then the simulation\n also includes all of the policies that are attached to groups that the user belongs to.\n You can simulate resources that don't exist in your account.

\n

You can optionally include a list of one or more additional policies specified as\n strings to include in the simulation. If you want to simulate only policies specified as\n strings, use SimulateCustomPolicy instead.

\n

You can also optionally include one resource-based policy to be evaluated with each of\n the resources included in the simulation for IAM users only.

\n

The simulation does not perform the API operations; it only checks the authorization\n to determine if the simulated policies allow or deny the operations.

\n

\n Note: This operation discloses information about the\n permissions granted to other users. If you do not want users to see other user's\n permissions, then consider allowing them to use SimulateCustomPolicy instead.

\n

Context keys are variables maintained by Amazon Web Services and its services that provide details\n about the context of an API query request. You can use the Condition\n element of an IAM policy to evaluate context keys. To get the list of context keys\n that the policies require for correct simulation, use GetContextKeysForPrincipalPolicy.

\n

If the output is long, you can use the MaxItems and Marker\n parameters to paginate the results.

\n \n

The IAM policy simulator evaluates statements in the identity-based policy and\n the inputs that you provide during simulation. The policy simulator results can\n differ from your live Amazon Web Services environment. We recommend that you check your policies\n against your live Amazon Web Services environment after testing using the policy simulator to\n confirm that you have the desired results. For more information about using the\n policy simulator, see Testing IAM\n policies with the IAM policy simulator in the\n IAM User Guide.

\n
", "smithy.api#paginated": { "inputToken": "Marker", "outputToken": "Marker", @@ -13595,7 +14465,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains a reference to a Statement element in a policy document that\n determines the result of the simulation.

\n

This data type is used by the MatchedStatements member of the \n EvaluationResult\n type.

" + "smithy.api#documentation": "

Contains a reference to a Statement element in a policy document that\n determines the result of the simulation.

\n

This data type is used by the MatchedStatements member of the \n EvaluationResult\n type.

" } }, "com.amazonaws.iam#StatementListType": { @@ -13617,7 +14487,7 @@ "Value": { "target": "com.amazonaws.iam#tagValueType", "traits": { - "smithy.api#documentation": "

The value associated with this tag. For example, tags with a key name of\n Department could have values such as Human Resources,\n Accounting, and Support. Tags with a key name of Cost\n Center might have values that consist of the number associated with the different\n cost centers in your company. Typically, many resources have tags with the same key name but\n with different values.

\n \n

Amazon Web Services always interprets the tag Value as a single string. If you need to\n store an array, you can store comma-separated values in the string. However, you must\n interpret the value in your code.

\n
", + "smithy.api#documentation": "

The value associated with this tag. For example, tags with a key name of\n Department could have values such as Human Resources,\n Accounting, and Support. Tags with a key name of Cost\n Center might have values that consist of the number associated with the different\n cost centers in your company. Typically, many resources have tags with the same key name but\n with different values.

", "smithy.api#required": {} } } @@ -14098,7 +14968,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains details about the most recent attempt to access an action within the\n service.

\n

This data type is used as a response element in the GetServiceLastAccessedDetails operation.

" + "smithy.api#documentation": "

Contains details about the most recent attempt to access an action within the\n service.

\n

This data type is used as a response element in the GetServiceLastAccessedDetails operation.

" } }, "com.amazonaws.iam#TrackedActionsLastAccessed": { @@ -14552,6 +15422,9 @@ "target": "smithy.api#Unit" }, "errors": [ + { + "target": "com.amazonaws.iam#InvalidInputException" + }, { "target": "com.amazonaws.iam#LimitExceededException" }, @@ -14858,7 +15731,7 @@ } ], "traits": { - "smithy.api#documentation": "

Changes the password for the specified IAM user. You can use the CLI, the Amazon Web Services\n API, or the Users page in the IAM console to change\n the password for any IAM user. Use ChangePassword to change your own\n password in the My Security Credentials page in the\n Amazon Web Services Management Console.

\n

For more information about modifying passwords, see Managing passwords in the\n IAM User Guide.

", + "smithy.api#documentation": "

Changes the password for the specified IAM user. You can use the CLI, the Amazon Web Services\n API, or the Users page in the IAM console to change\n the password for any IAM user. Use ChangePassword to\n change your own password in the My Security Credentials\n page in the Amazon Web Services Management Console.

\n

For more information about modifying passwords, see Managing passwords in the\n IAM User Guide.

", "smithy.api#examples": [ { "title": "To change the password for an IAM user", @@ -14884,7 +15757,7 @@ "Password": { "target": "com.amazonaws.iam#passwordType", "traits": { - "smithy.api#documentation": "

The new password for the specified IAM user.

\n

The regex pattern \n used to validate this parameter is a string of characters consisting of the following:

\n
    \n
  • \n

    Any printable ASCII \n character ranging from the space character (\\u0020) through the end of the ASCII character range

    \n
  • \n
  • \n

    The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF)

    \n
  • \n
  • \n

    The special characters tab (\\u0009), line feed (\\u000A), and \n carriage return (\\u000D)

    \n
  • \n
\n

However, the format can be further restricted by the account administrator by setting\n a password policy on the Amazon Web Services account. For more information, see UpdateAccountPasswordPolicy.

" + "smithy.api#documentation": "

The new password for the specified IAM user.

\n

The regex pattern \n used to validate this parameter is a string of characters consisting of the following:

\n
    \n
  • \n

    Any printable ASCII \n character ranging from the space character (\\u0020) through the end of the ASCII character range

    \n
  • \n
  • \n

    The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF)

    \n
  • \n
  • \n

    The special characters tab (\\u0009), line feed (\\u000A), and \n carriage return (\\u000D)

    \n
  • \n
\n

However, the format can be further restricted by the account administrator by setting\n a password policy on the Amazon Web Services account. For more information, see UpdateAccountPasswordPolicy.

" } }, "PasswordResetRequired": { @@ -14918,7 +15791,7 @@ } ], "traits": { - "smithy.api#documentation": "

Replaces the existing list of server certificate thumbprints associated with an OpenID\n Connect (OIDC) provider resource object with a new list of thumbprints.

\n

The list that you pass with this operation completely replaces the existing list of\n thumbprints. (The lists are not merged.)

\n

Typically, you need to update a thumbprint only when the identity provider certificate\n changes, which occurs rarely. However, if the provider's certificate\n does change, any attempt to assume an IAM role that specifies\n the OIDC provider as a principal fails until the certificate thumbprint is\n updated.

\n \n

Amazon Web Services secures communication with some OIDC identity providers (IdPs) through our library\n of trusted root certificate authorities (CAs) instead of using a certificate thumbprint to\n verify your IdP server certificate. In these cases, your legacy thumbprint remains in your\n configuration, but is no longer used for validation. These OIDC IdPs include Auth0, GitHub,\n GitLab, Google, and those that use an Amazon S3 bucket to host a JSON Web Key Set (JWKS)\n endpoint.

\n
\n \n

Trust for the OIDC provider is derived from the provider certificate and is\n validated by the thumbprint. Therefore, it is best to limit access to the\n UpdateOpenIDConnectProviderThumbprint operation to highly\n privileged users.

\n
" + "smithy.api#documentation": "

Replaces the existing list of server certificate thumbprints associated with an OpenID\n Connect (OIDC) provider resource object with a new list of thumbprints.

\n

The list that you pass with this operation completely replaces the existing list of\n thumbprints. (The lists are not merged.)

\n

Typically, you need to update a thumbprint only when the identity provider certificate\n changes, which occurs rarely. However, if the provider's certificate\n does change, any attempt to assume an IAM role that specifies\n the OIDC provider as a principal fails until the certificate thumbprint is\n updated.

\n \n

Amazon Web Services secures communication with OIDC identity providers (IdPs) using our library of\n trusted root certificate authorities (CAs) to verify the JSON Web Key Set (JWKS)\n endpoint's TLS certificate. If your OIDC IdP relies on a certificate that is not signed\n by one of these trusted CAs, only then we secure communication using the thumbprints set\n in the IdP's configuration.

\n
\n \n

Trust for the OIDC provider is derived from the provider certificate and is\n validated by the thumbprint. Therefore, it is best to limit access to the\n UpdateOpenIDConnectProviderThumbprint operation to highly\n privileged users.

\n
" } }, "com.amazonaws.iam#UpdateOpenIDConnectProviderThumbprintRequest": { @@ -14927,14 +15800,14 @@ "OpenIDConnectProviderArn": { "target": "com.amazonaws.iam#arnType", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM OIDC provider resource object for which\n you want to update the thumbprint. You can get a list of OIDC provider ARNs by using the\n ListOpenIDConnectProviders operation.

\n

For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM OIDC provider resource object for which\n you want to update the thumbprint. You can get a list of OIDC provider ARNs by using the\n ListOpenIDConnectProviders operation.

\n

For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.

", "smithy.api#required": {} } }, "ThumbprintList": { "target": "com.amazonaws.iam#thumbprintListType", "traits": { - "smithy.api#documentation": "

A list of certificate thumbprints that are associated with the specified IAM OpenID\n Connect provider. For more information, see CreateOpenIDConnectProvider.

", + "smithy.api#documentation": "

A list of certificate thumbprints that are associated with the specified IAM OpenID\n Connect provider. For more information, see CreateOpenIDConnectProvider.

", "smithy.api#required": {} } } @@ -14986,7 +15859,7 @@ } ], "traits": { - "smithy.api#documentation": "

Use UpdateRole instead.

\n

Modifies only the description of a role. This operation performs the same function as\n the Description parameter in the UpdateRole operation.

" + "smithy.api#documentation": "

Use UpdateRole instead.

\n

Modifies only the description of a role. This operation performs the same function as\n the Description parameter in the UpdateRole operation.

" } }, "com.amazonaws.iam#UpdateRoleDescriptionRequest": { @@ -15082,7 +15955,7 @@ } ], "traits": { - "smithy.api#documentation": "

Updates the metadata document for an existing SAML provider resource object.

\n \n

This operation requires Signature Version 4.

\n
" + "smithy.api#documentation": "

Updates the metadata document, SAML encryption settings, and private keys for an\n existing SAML provider. To rotate private keys, add your new private key and then remove\n the old key in a separate request.

" } }, "com.amazonaws.iam#UpdateSAMLProviderRequest": { @@ -15091,8 +15964,7 @@ "SAMLMetadataDocument": { "target": "com.amazonaws.iam#SAMLMetadataDocumentType", "traits": { - "smithy.api#documentation": "

An XML document generated by an identity provider (IdP) that supports SAML 2.0. The\n document includes the issuer's name, expiration information, and keys that can be used\n to validate the SAML authentication response (assertions) that are received from the\n IdP. You must generate the metadata document using the identity management software that\n is used as your organization's IdP.

", - "smithy.api#required": {} + "smithy.api#documentation": "

An XML document generated by an identity provider (IdP) that supports SAML 2.0. The\n document includes the issuer's name, expiration information, and keys that can be used\n to validate the SAML authentication response (assertions) that are received from the\n IdP. You must generate the metadata document using the identity management software that\n is used as your IdP.

" } }, "SAMLProviderArn": { @@ -15101,6 +15973,24 @@ "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the SAML provider to update.

\n

For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.

", "smithy.api#required": {} } + }, + "AssertionEncryptionMode": { + "target": "com.amazonaws.iam#assertionEncryptionModeType", + "traits": { + "smithy.api#documentation": "

Specifies the encryption setting for the SAML provider.

" + } + }, + "AddPrivateKey": { + "target": "com.amazonaws.iam#privateKeyType", + "traits": { + "smithy.api#documentation": "

Specifies the new private key from your external identity provider. The private key\n must be a .pem file that uses AES-GCM or AES-CBC encryption algorithm to decrypt SAML\n assertions.

" + } + }, + "RemovePrivateKey": { + "target": "com.amazonaws.iam#privateKeyIdType", + "traits": { + "smithy.api#documentation": "

The Key ID of the private key to remove.

" + } } }, "traits": { @@ -15118,7 +16008,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful UpdateSAMLProvider request.\n

", + "smithy.api#documentation": "

Contains the response to a successful UpdateSAMLProvider\n request.

", "smithy.api#output": {} } }, @@ -15131,6 +16021,9 @@ "target": "smithy.api#Unit" }, "errors": [ + { + "target": "com.amazonaws.iam#InvalidInputException" + }, { "target": "com.amazonaws.iam#NoSuchEntityException" } @@ -15275,6 +16168,9 @@ "target": "smithy.api#Unit" }, "errors": [ + { + "target": "com.amazonaws.iam#InvalidInputException" + }, { "target": "com.amazonaws.iam#LimitExceededException" }, @@ -15459,7 +16355,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful UploadSSHPublicKey\n request.

", + "smithy.api#documentation": "

Contains the response to a successful UploadSSHPublicKey\n request.

", "smithy.api#output": {} } }, @@ -15584,7 +16480,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful UploadServerCertificate\n request.

", + "smithy.api#documentation": "

Contains the response to a successful UploadServerCertificate request.

", "smithy.api#output": {} } }, @@ -15678,7 +16574,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains the response to a successful UploadSigningCertificate\n request.

", + "smithy.api#documentation": "

Contains the response to a successful UploadSigningCertificate request.

", "smithy.api#output": {} } }, @@ -15723,7 +16619,7 @@ "PasswordLastUsed": { "target": "com.amazonaws.iam#dateType", "traits": { - "smithy.api#documentation": "

The date and time, in ISO 8601 date-time\n format, when the user's password was last used to sign in to an Amazon Web Services website.\n For a list of Amazon Web Services websites that capture a user's last sign-in time, see the Credential\n reports topic in the IAM User Guide. If a password is\n used more than once in a five-minute span, only the first use is returned in this field. If\n the field is null (no value), then it indicates that they never signed in with a password.\n This can be because:

\n
    \n
  • \n

    The user never had a password.

    \n
  • \n
  • \n

    A password exists but has not been used since IAM started tracking this\n information on October 20, 2014.

    \n
  • \n
\n

A null value does not mean that the user never had a password.\n Also, if the user does not currently have a password but had one in the past, then this\n field contains the date and time the most recent password was used.

\n

This value is returned only in the GetUser and ListUsers operations.

" + "smithy.api#documentation": "

The date and time, in ISO 8601 date-time\n format, when the user's password was last used to sign in to an Amazon Web Services website.\n For a list of Amazon Web Services websites that capture a user's last sign-in time, see the Credential\n reports topic in the IAM User Guide. If a password is\n used more than once in a five-minute span, only the first use is returned in this field. If\n the field is null (no value), then it indicates that they never signed in with a password.\n This can be because:

\n
    \n
  • \n

    The user never had a password.

    \n
  • \n
  • \n

    A password exists but has not been used since IAM started tracking this\n information on October 20, 2014.

    \n
  • \n
\n

A null value does not mean that the user never had a password.\n Also, if the user does not currently have a password but had one in the past, then this\n field contains the date and time the most recent password was used.

\n

This value is returned only in the GetUser and ListUsers\n operations.

" } }, "PermissionsBoundary": { @@ -15740,7 +16636,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about an IAM user entity.

\n

This data type is used as a response element in the following operations:

\n " + "smithy.api#documentation": "

Contains information about an IAM user entity.

\n

This data type is used as a response element in the following operations:

\n " } }, "com.amazonaws.iam#UserDetail": { @@ -15805,7 +16701,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about an IAM user, including all the user's policies and all the\n IAM groups the user is in.

\n

This data type is used as a response element in the GetAccountAuthorizationDetails operation.

" + "smithy.api#documentation": "

Contains information about an IAM user, including all the user's policies and all the\n IAM groups the user is in.

\n

This data type is used as a response element in the GetAccountAuthorizationDetails operation.

" } }, "com.amazonaws.iam#VirtualMFADevice": { @@ -15869,7 +16765,7 @@ "target": "com.amazonaws.iam#AccessKeyMetadata" }, "traits": { - "smithy.api#documentation": "

Contains a list of access key metadata.

\n

This data type is used as a response element in the ListAccessKeys\n operation.

" + "smithy.api#documentation": "

Contains a list of access key metadata.

\n

This data type is used as a response element in the ListAccessKeys\n operation.

" } }, "com.amazonaws.iam#accessKeySecretType": { @@ -15894,6 +16790,9 @@ "smithy.api#pattern": "^[a-z0-9]([a-z0-9]|-(?!-)){1,61}[a-z0-9]$" } }, + "com.amazonaws.iam#allUsers": { + "type": "boolean" + }, "com.amazonaws.iam#arnType": { "type": "string", "traits": { @@ -15904,6 +16803,23 @@ } } }, + "com.amazonaws.iam#assertionEncryptionModeType": { + "type": "enum", + "members": { + "Required": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Required" + } + }, + "Allowed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Allowed" + } + } + } + }, "com.amazonaws.iam#assignmentStatusType": { "type": "enum", "members": { @@ -15991,7 +16907,7 @@ "target": "com.amazonaws.iam#SigningCertificate" }, "traits": { - "smithy.api#documentation": "

Contains a list of signing certificates.

\n

This data type is used as a response element in the ListSigningCertificates operation.

" + "smithy.api#documentation": "

Contains a list of signing certificates.

\n

This data type is used as a response element in the ListSigningCertificates operation.

" } }, "com.amazonaws.iam#clientIDListType": { @@ -16009,6 +16925,15 @@ } } }, + "com.amazonaws.iam#credentialAgeDays": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 36600 + } + } + }, "com.amazonaws.iam#credentialReportExpiredExceptionMessage": { "type": "string" }, @@ -16124,7 +17049,7 @@ "target": "com.amazonaws.iam#Group" }, "traits": { - "smithy.api#documentation": "

Contains a list of IAM groups.

\n

This data type is used as a response element in the ListGroups\n operation.

" + "smithy.api#documentation": "

Contains a list of IAM groups.

\n

This data type is used as a response element in the ListGroups operation.

" } }, "com.amazonaws.iam#groupNameListType": { @@ -16274,7 +17199,7 @@ "target": "com.amazonaws.iam#MFADevice" }, "traits": { - "smithy.api#documentation": "

Contains a list of MFA devices.

\n

This data type is used as a response element in the ListMFADevices and\n ListVirtualMFADevices operations.

" + "smithy.api#documentation": "

Contains a list of MFA devices.

\n

This data type is used as a response element in the ListMFADevices and ListVirtualMFADevices operations.

" } }, "com.amazonaws.iam#minimumPasswordLengthType": { @@ -16403,7 +17328,7 @@ "target": "com.amazonaws.iam#policyNameType" }, "traits": { - "smithy.api#documentation": "

Contains a list of policy names.

\n

This data type is used as a response element in the ListPolicies\n operation.

" + "smithy.api#documentation": "

Contains a list of policy names.

\n

This data type is used as a response element in the ListPolicies\n operation.

" } }, "com.amazonaws.iam#policyNameType": { @@ -16498,6 +17423,28 @@ "smithy.api#pattern": "^v[1-9][0-9]*(\\.[A-Za-z0-9-]*)?$" } }, + "com.amazonaws.iam#privateKeyIdType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 22, + "max": 64 + }, + "smithy.api#pattern": "^[A-Z0-9]+$" + } + }, + "com.amazonaws.iam#privateKeyList": { + "type": "list", + "member": { + "target": "com.amazonaws.iam#SAMLPrivateKey" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 2 + } + } + }, "com.amazonaws.iam#privateKeyType": { "type": "string", "traits": { @@ -16567,7 +17514,7 @@ "target": "com.amazonaws.iam#Role" }, "traits": { - "smithy.api#documentation": "

Contains a list of IAM roles.

\n

This data type is used as a response element in the ListRoles\n operation.

" + "smithy.api#documentation": "

Contains a list of IAM roles.

\n

This data type is used as a response element in the ListRoles operation.

" } }, "com.amazonaws.iam#roleMaxSessionDurationType": { @@ -16615,6 +17562,22 @@ "smithy.api#pattern": "^[\\w+=,.@-]+$" } }, + "com.amazonaws.iam#serviceCredentialAlias": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 200 + }, + "smithy.api#pattern": "^[\\w+=,.@-]+$" + } + }, + "com.amazonaws.iam#serviceCredentialSecret": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, "com.amazonaws.iam#serviceFailureExceptionMessage": { "type": "string" }, @@ -16669,10 +17632,10 @@ "type": "string", "traits": { "smithy.api#length": { - "min": 17, + "min": 0, "max": 200 }, - "smithy.api#pattern": "^[\\w+=,.@-]+$" + "smithy.api#pattern": "^[\\w+=,.@-]*$" } }, "com.amazonaws.iam#sortKeyType": { @@ -16718,6 +17681,12 @@ "traits": { "smithy.api#enumValue": "Inactive" } + }, + "Expired": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Expired" + } } } }, @@ -16817,6 +17786,12 @@ "smithy.api#enumValue": "AccountAccessKeysPresent" } }, + "AccountPasswordPresent": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AccountPasswordPresent" + } + }, "AccountSigningCertificatesPresent": { "target": "smithy.api#Unit", "traits": { @@ -16978,7 +17953,7 @@ "target": "com.amazonaws.iam#User" }, "traits": { - "smithy.api#documentation": "

Contains a list of users.

\n

This data type is used as a response element in the GetGroup and ListUsers operations.

" + "smithy.api#documentation": "

Contains a list of users.

\n

This data type is used as a response element in the GetGroup and ListUsers\n operations.

" } }, "com.amazonaws.iam#userNameType": { diff --git a/aws/sdk/aws-models/kms.json b/aws/sdk/aws-models/kms.json index be05f267eb3..a270bb7af8c 100644 --- a/aws/sdk/aws-models/kms.json +++ b/aws/sdk/aws-models/kms.json @@ -162,6 +162,26 @@ } } }, + "com.amazonaws.kms#BackingKeyIdResponseType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 64 + }, + "smithy.api#pattern": "^[a-f0-9]+$" + } + }, + "com.amazonaws.kms#BackingKeyIdType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 64, + "max": 64 + }, + "smithy.api#pattern": "^[a-f0-9]+$" + } + }, "com.amazonaws.kms#BooleanType": { "type": "boolean", "traits": { @@ -194,7 +214,7 @@ } ], "traits": { - "smithy.api#documentation": "

Cancels the deletion of a KMS key. When this operation succeeds, the key state of the KMS\n key is Disabled. To enable the KMS key, use EnableKey.

\n

For more information about scheduling and canceling deletion of a KMS key, see Deleting KMS keys in the\n Key Management Service Developer Guide.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:CancelKeyDeletion (key policy)

\n

\n Related operations: ScheduleKeyDeletion\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Cancels the deletion of a KMS key. When this operation succeeds, the key state of the KMS\n key is Disabled. To enable the KMS key, use EnableKey.

\n

For more information about scheduling and canceling deletion of a KMS key, see Deleting KMS keys in the\n Key Management Service Developer Guide.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:CancelKeyDeletion (key policy)

\n

\n Related operations: ScheduleKeyDeletion\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To cancel deletion of a KMS key", @@ -354,7 +374,7 @@ "code": "ConflictException", "httpResponseCode": 409 }, - "smithy.api#documentation": "

The request was rejected because an automatic rotation of this key is currently in \n progress or scheduled to begin within the next 20 minutes.

", + "smithy.api#documentation": "

The request was rejected because an automatic rotation of this key is currently in\n progress or scheduled to begin within the next 20 minutes.

", "smithy.api#error": "client", "smithy.api#httpError": 409 } @@ -385,7 +405,7 @@ } ], "traits": { - "smithy.api#documentation": "

Connects or reconnects a custom key store to its backing key store. For an CloudHSM key\n store, ConnectCustomKeyStore connects the key store to its associated CloudHSM\n cluster. For an external key store, ConnectCustomKeyStore connects the key store\n to the external key store proxy that communicates with your external key manager.

\n

The custom key store must be connected before you can create KMS keys in the key store or\n use the KMS keys it contains. You can disconnect and reconnect a custom key store at any\n time.

\n

The connection process for a custom key store can take an extended amount of time to\n complete. This operation starts the connection process, but it does not wait for it to\n complete. When it succeeds, this operation quickly returns an HTTP 200 response and a JSON\n object with no properties. However, this response does not indicate that the custom key store\n is connected. To get the connection state of the custom key store, use the DescribeCustomKeyStores operation.

\n

This operation is part of the custom key stores feature in KMS, which\ncombines the convenience and extensive integration of KMS with the isolation and control of a\nkey store that you own and manage.

\n

The ConnectCustomKeyStore operation might fail for various reasons. To find\n the reason, use the DescribeCustomKeyStores operation and see the\n ConnectionErrorCode in the response. For help interpreting the\n ConnectionErrorCode, see CustomKeyStoresListEntry.

\n

To fix the failure, use the DisconnectCustomKeyStore operation to\n disconnect the custom key store, correct the error, use the UpdateCustomKeyStore operation if necessary, and then use\n ConnectCustomKeyStore again.

\n

\n CloudHSM key store\n

\n

During the connection process for an CloudHSM key store, KMS finds the CloudHSM cluster that\n is associated with the custom key store, creates the connection infrastructure, connects to\n the cluster, logs into the CloudHSM client as the kmsuser CU, and rotates its\n password.

\n

To connect an CloudHSM key store, its associated CloudHSM cluster must have at least one active\n HSM. To get the number of active HSMs in a cluster, use the DescribeClusters operation. To add HSMs\n to the cluster, use the CreateHsm operation. Also, the \n kmsuser crypto\n user (CU) must not be logged into the cluster. This prevents KMS from using this\n account to log in.

\n

If you are having trouble connecting or disconnecting a CloudHSM key store, see Troubleshooting an CloudHSM key\n store in the Key Management Service Developer Guide.

\n

\n External key store\n

\n

When you connect an external key store that uses public endpoint connectivity, KMS tests\n its ability to communicate with your external key manager by sending a request via the\n external key store proxy.

\n

When you connect to an external key store that uses VPC endpoint service connectivity,\n KMS establishes the networking elements that it needs to communicate with your external key\n manager via the external key store proxy. This includes creating an interface endpoint to the\n VPC endpoint service and a private hosted zone for traffic between KMS and the VPC endpoint\n service.

\n

To connect an external key store, KMS must be able to connect to the external key store\n proxy, the external key store proxy must be able to communicate with your external key\n manager, and the external key manager must be available for cryptographic operations.

\n

If you are having trouble connecting or disconnecting an external key store, see Troubleshooting an external\n key store in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.

\n

\n Required permissions: kms:ConnectCustomKeyStore (IAM policy)

\n

\n Related operations\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Connects or reconnects a custom key store to its backing key store. For an CloudHSM key\n store, ConnectCustomKeyStore connects the key store to its associated CloudHSM\n cluster. For an external key store, ConnectCustomKeyStore connects the key store\n to the external key store proxy that communicates with your external key manager.

\n

The custom key store must be connected before you can create KMS keys in the key store or\n use the KMS keys it contains. You can disconnect and reconnect a custom key store at any\n time.

\n

The connection process for a custom key store can take an extended amount of time to\n complete. This operation starts the connection process, but it does not wait for it to\n complete. When it succeeds, this operation quickly returns an HTTP 200 response and a JSON\n object with no properties. However, this response does not indicate that the custom key store\n is connected. To get the connection state of the custom key store, use the DescribeCustomKeyStores operation.

\n

This operation is part of the custom key stores feature in KMS, which\ncombines the convenience and extensive integration of KMS with the isolation and control of a\nkey store that you own and manage.

\n

The ConnectCustomKeyStore operation might fail for various reasons. To find\n the reason, use the DescribeCustomKeyStores operation and see the\n ConnectionErrorCode in the response. For help interpreting the\n ConnectionErrorCode, see CustomKeyStoresListEntry.

\n

To fix the failure, use the DisconnectCustomKeyStore operation to\n disconnect the custom key store, correct the error, use the UpdateCustomKeyStore operation if necessary, and then use\n ConnectCustomKeyStore again.

\n

\n CloudHSM key store\n

\n

During the connection process for an CloudHSM key store, KMS finds the CloudHSM cluster that\n is associated with the custom key store, creates the connection infrastructure, connects to\n the cluster, logs into the CloudHSM client as the kmsuser CU, and rotates its\n password.

\n

To connect an CloudHSM key store, its associated CloudHSM cluster must have at least one active\n HSM. To get the number of active HSMs in a cluster, use the DescribeClusters operation. To add HSMs\n to the cluster, use the CreateHsm operation. Also, the \n kmsuser crypto\n user (CU) must not be logged into the cluster. This prevents KMS from using this\n account to log in.

\n

If you are having trouble connecting or disconnecting a CloudHSM key store, see Troubleshooting an CloudHSM key\n store in the Key Management Service Developer Guide.

\n

\n External key store\n

\n

When you connect an external key store that uses public endpoint connectivity, KMS tests\n its ability to communicate with your external key manager by sending a request via the\n external key store proxy.

\n

When you connect to an external key store that uses VPC endpoint service connectivity,\n KMS establishes the networking elements that it needs to communicate with your external key\n manager via the external key store proxy. This includes creating an interface endpoint to the\n VPC endpoint service and a private hosted zone for traffic between KMS and the VPC endpoint\n service.

\n

To connect an external key store, KMS must be able to connect to the external key store\n proxy, the external key store proxy must be able to communicate with your external key\n manager, and the external key manager must be available for cryptographic operations.

\n

If you are having trouble connecting or disconnecting an external key store, see Troubleshooting an external\n key store in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.

\n

\n Required permissions: kms:ConnectCustomKeyStore (IAM policy)

\n

\n Related operations\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To connect a custom key store", @@ -600,7 +620,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a friendly name for a KMS key.

\n \n

Adding, deleting, or updating an alias can allow or deny permission to the KMS key. For details, see ABAC for KMS in the Key Management Service Developer Guide.

\n
\n

You can use an alias to identify a KMS key in the KMS console, in the DescribeKey operation and in cryptographic operations, such as Encrypt and\n GenerateDataKey. You can also change the KMS key that's associated with\n the alias (UpdateAlias) or delete the alias (DeleteAlias)\n at any time. These operations don't affect the underlying KMS key.

\n

You can associate the alias with any customer managed key in the same Amazon Web Services Region. Each\n alias is associated with only one KMS key at a time, but a KMS key can have multiple aliases.\n A valid KMS key is required. You can't create an alias without a KMS key.

\n

The alias must be unique in the account and Region, but you can have aliases with the same\n name in different Regions. For detailed information about aliases, see Using aliases in the\n Key Management Service Developer Guide.

\n

This operation does not return a response. To get the alias that you created, use the\n ListAliases operation.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on an alias in a different Amazon Web Services account.

\n

\n Required permissions\n

\n \n

For details, see Controlling access to aliases in the\n Key Management Service Developer Guide.

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Creates a friendly name for a KMS key.

\n \n

Adding, deleting, or updating an alias can allow or deny permission to the KMS key. For details, see ABAC for KMS in the Key Management Service Developer Guide.

\n
\n

You can use an alias to identify a KMS key in the KMS console, in the DescribeKey operation and in cryptographic operations, such as Encrypt and\n GenerateDataKey. You can also change the KMS key that's associated with\n the alias (UpdateAlias) or delete the alias (DeleteAlias)\n at any time. These operations don't affect the underlying KMS key.

\n

You can associate the alias with any customer managed key in the same Amazon Web Services Region. Each\n alias is associated with only one KMS key at a time, but a KMS key can have multiple aliases.\n A valid KMS key is required. You can't create an alias without a KMS key.

\n

The alias must be unique in the account and Region, but you can have aliases with the same\n name in different Regions. For detailed information about aliases, see Aliases in KMS in the\n Key Management Service Developer Guide.

\n

This operation does not return a response. To get the alias that you created, use the\n ListAliases operation.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on an alias in a different Amazon Web Services account.

\n

\n Required permissions\n

\n \n

For details, see Controlling access to aliases in the Key Management Service Developer Guide.

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To create an alias", @@ -619,14 +639,14 @@ "AliasName": { "target": "com.amazonaws.kms#AliasNameType", "traits": { - "smithy.api#documentation": "

Specifies the alias name. This value must begin with alias/ followed by a\n name, such as alias/ExampleAlias.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n

The AliasName value must be string of 1-256 characters. It can contain only\n alphanumeric characters, forward slashes (/), underscores (_), and dashes (-). The alias name\n cannot begin with alias/aws/. The alias/aws/ prefix is reserved for\n Amazon Web Services managed\n keys.

", + "smithy.api#documentation": "

Specifies the alias name. This value must begin with alias/ followed by a\n name, such as alias/ExampleAlias.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n

The AliasName value must be string of 1-256 characters. It can contain only\n alphanumeric characters, forward slashes (/), underscores (_), and dashes (-). The alias name\n cannot begin with alias/aws/. The alias/aws/ prefix is reserved for\n Amazon Web Services managed\n keys.

", "smithy.api#required": {} } }, "TargetKeyId": { "target": "com.amazonaws.kms#KeyIdType", "traits": { - "smithy.api#documentation": "

Associates the alias with the specified customer managed key. The KMS key must\n be in the same Amazon Web Services Region.

\n

A valid key ID is required. If you supply a null or empty string value, this operation\n returns an error.

\n

For help finding the key ID and ARN, see Finding the Key ID and\n ARN in the \n Key Management Service Developer Guide\n .

\n

Specify the key ID or key ARN of the KMS key.

\n

For example:

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
\n

To get the key ID and key ARN for a KMS key, use ListKeys or DescribeKey.

", + "smithy.api#documentation": "

Associates the alias with the specified customer managed key. The KMS key\n must be in the same Amazon Web Services Region.

\n

A valid key ID is required. If you supply a null or empty string value, this operation\n returns an error.

\n

For help finding the key ID and ARN, see Find the key ID and key ARN in\n the \n Key Management Service Developer Guide\n .

\n

Specify the key ID or key ARN of the KMS key.

\n

For example:

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
\n

To get the key ID and key ARN for a KMS key, use ListKeys or DescribeKey.

", "smithy.api#required": {} } } @@ -697,7 +717,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a custom key store backed by a key store that you own and manage. When you use a\n KMS key in a custom key store for a cryptographic operation, the cryptographic operation is\n actually performed in your key store using your keys. KMS supports CloudHSM key stores\n backed by an CloudHSM cluster\n and external key\n stores backed by an external key store proxy and external key manager outside of\n Amazon Web Services.

\n

This operation is part of the custom key stores feature in KMS, which\ncombines the convenience and extensive integration of KMS with the isolation and control of a\nkey store that you own and manage.

\n

Before you create the custom key store, the required elements must be in place and\n operational. We recommend that you use the test tools that KMS provides to verify the\n configuration your external key store proxy. For details about the required elements and\n verification tests, see Assemble the prerequisites (for\n CloudHSM key stores) or Assemble the prerequisites (for\n external key stores) in the Key Management Service Developer Guide.

\n

To create a custom key store, use the following parameters.

\n
    \n
  • \n

    To create an CloudHSM key store, specify the CustomKeyStoreName,\n CloudHsmClusterId, KeyStorePassword, and\n TrustAnchorCertificate. The CustomKeyStoreType parameter is\n optional for CloudHSM key stores. If you include it, set it to the default value,\n AWS_CLOUDHSM. For help with failures, see Troubleshooting an CloudHSM key store in the\n Key Management Service Developer Guide.

    \n
  • \n
  • \n

    To create an external key store, specify the CustomKeyStoreName and a\n CustomKeyStoreType of EXTERNAL_KEY_STORE. Also, specify values\n for XksProxyConnectivity, XksProxyAuthenticationCredential,\n XksProxyUriEndpoint, and XksProxyUriPath. If your\n XksProxyConnectivity value is VPC_ENDPOINT_SERVICE, specify\n the XksProxyVpcEndpointServiceName parameter. For help with failures, see\n Troubleshooting\n an external key store in the Key Management Service Developer Guide.

    \n
  • \n
\n \n

For external key stores:

\n

Some external key managers provide a simpler method for creating an external key store.\n For details, see your external key manager documentation.

\n

When creating an external key store in the KMS console, you can upload a JSON-based\n proxy configuration file with the desired values. You cannot use a proxy configuration with\n the CreateCustomKeyStore operation. However, you can use the values in the file\n to help you determine the correct values for the CreateCustomKeyStore\n parameters.

\n
\n

When the operation completes successfully, it returns the ID of the new custom key store.\n Before you can use your new custom key store, you need to use the ConnectCustomKeyStore operation to connect a new CloudHSM key store to its CloudHSM\n cluster, or to connect a new external key store to the external key store proxy for your\n external key manager. Even if you are not going to use your custom key store immediately, you\n might want to connect it to verify that all settings are correct and then disconnect it until\n you are ready to use it.

\n

For help with failures, see Troubleshooting a custom key store in the\n Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.

\n

\n Required permissions: kms:CreateCustomKeyStore (IAM policy).

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Creates a custom key store backed by a key store that you own and manage. When you use a\n KMS key in a custom key store for a cryptographic operation, the cryptographic operation is\n actually performed in your key store using your keys. KMS supports CloudHSM key stores\n backed by an CloudHSM cluster\n and external key\n stores backed by an external key store proxy and external key manager outside of\n Amazon Web Services.

\n

This operation is part of the custom key stores feature in KMS, which\ncombines the convenience and extensive integration of KMS with the isolation and control of a\nkey store that you own and manage.

\n

Before you create the custom key store, the required elements must be in place and\n operational. We recommend that you use the test tools that KMS provides to verify the\n configuration your external key store proxy. For details about the required elements and\n verification tests, see Assemble the prerequisites (for\n CloudHSM key stores) or Assemble the prerequisites (for\n external key stores) in the Key Management Service Developer Guide.

\n

To create a custom key store, use the following parameters.

\n
    \n
  • \n

    To create an CloudHSM key store, specify the CustomKeyStoreName,\n CloudHsmClusterId, KeyStorePassword, and\n TrustAnchorCertificate. The CustomKeyStoreType parameter is\n optional for CloudHSM key stores. If you include it, set it to the default value,\n AWS_CLOUDHSM. For help with failures, see Troubleshooting an CloudHSM key store in the\n Key Management Service Developer Guide.

    \n
  • \n
  • \n

    To create an external key store, specify the CustomKeyStoreName and a\n CustomKeyStoreType of EXTERNAL_KEY_STORE. Also, specify values\n for XksProxyConnectivity, XksProxyAuthenticationCredential,\n XksProxyUriEndpoint, and XksProxyUriPath. If your\n XksProxyConnectivity value is VPC_ENDPOINT_SERVICE, specify\n the XksProxyVpcEndpointServiceName parameter. For help with failures, see\n Troubleshooting\n an external key store in the Key Management Service Developer Guide.

    \n
  • \n
\n \n

For external key stores:

\n

Some external key managers provide a simpler method for creating an external key store.\n For details, see your external key manager documentation.

\n

When creating an external key store in the KMS console, you can upload a JSON-based\n proxy configuration file with the desired values. You cannot use a proxy configuration with\n the CreateCustomKeyStore operation. However, you can use the values in the file\n to help you determine the correct values for the CreateCustomKeyStore\n parameters.

\n
\n

When the operation completes successfully, it returns the ID of the new custom key store.\n Before you can use your new custom key store, you need to use the ConnectCustomKeyStore operation to connect a new CloudHSM key store to its CloudHSM\n cluster, or to connect a new external key store to the external key store proxy for your\n external key manager. Even if you are not going to use your custom key store immediately, you\n might want to connect it to verify that all settings are correct and then disconnect it until\n you are ready to use it.

\n

\n Cross-account use: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.

\n

\n Required permissions: kms:CreateCustomKeyStore (IAM policy).

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To create an AWS CloudHSM key store", @@ -740,7 +760,7 @@ "KeyStorePassword": { "target": "com.amazonaws.kms#KeyStorePasswordType", "traits": { - "smithy.api#documentation": "

Specifies the kmsuser password for an CloudHSM key store. This parameter is\n required for custom key stores with a CustomKeyStoreType of\n AWS_CLOUDHSM.

\n

Enter the password of the \n kmsuser crypto user\n (CU) account in the specified CloudHSM cluster. KMS logs into the cluster as this\n user to manage key material on your behalf.

\n

The password must be a string of 7 to 32 characters. Its value is case sensitive.

\n

This parameter tells KMS the kmsuser account password; it does not change\n the password in the CloudHSM cluster.

" + "smithy.api#documentation": "

Specifies the kmsuser password for an CloudHSM key store. This parameter is\n required for custom key stores with a CustomKeyStoreType of\n AWS_CLOUDHSM.

\n

Enter the password of the \n kmsuser crypto user\n (CU) account in the specified CloudHSM cluster. KMS logs into the cluster as this\n user to manage key material on your behalf.

\n

The password must be a string of 7 to 32 characters. Its value is case sensitive.

\n

This parameter tells KMS the kmsuser account password; it does not change\n the password in the CloudHSM cluster.

" } }, "CustomKeyStoreType": { @@ -770,13 +790,13 @@ "XksProxyAuthenticationCredential": { "target": "com.amazonaws.kms#XksProxyAuthenticationCredentialType", "traits": { - "smithy.api#documentation": "

Specifies an authentication credential for the external key store proxy (XKS proxy). This\n parameter is required for all custom key stores with a CustomKeyStoreType of\n EXTERNAL_KEY_STORE.

\n

The XksProxyAuthenticationCredential has two required elements:\n RawSecretAccessKey, a secret key, and AccessKeyId, a unique\n identifier for the RawSecretAccessKey. For character requirements, see XksProxyAuthenticationCredentialType.

\n

KMS uses this authentication credential to sign requests to the external key store proxy\n on your behalf. This credential is unrelated to Identity and Access Management (IAM) and Amazon Web Services credentials.

\n

This parameter doesn't set or change the authentication credentials on the XKS proxy. It\n just tells KMS the credential that you established on your external key store proxy. If you\n rotate your proxy authentication credential, use the UpdateCustomKeyStore\n operation to provide the new credential to KMS.

" + "smithy.api#documentation": "

Specifies an authentication credential for the external key store proxy (XKS proxy). This\n parameter is required for all custom key stores with a CustomKeyStoreType of\n EXTERNAL_KEY_STORE.

\n

The XksProxyAuthenticationCredential has two required elements:\n RawSecretAccessKey, a secret key, and AccessKeyId, a unique\n identifier for the RawSecretAccessKey. For character requirements, see XksProxyAuthenticationCredentialType.

\n

KMS uses this authentication credential to sign requests to the external key store proxy\n on your behalf. This credential is unrelated to Identity and Access Management (IAM) and Amazon Web Services credentials.

\n

This parameter doesn't set or change the authentication credentials on the XKS proxy. It\n just tells KMS the credential that you established on your external key store proxy. If you\n rotate your proxy authentication credential, use the UpdateCustomKeyStore\n operation to provide the new credential to KMS.

" } }, "XksProxyConnectivity": { "target": "com.amazonaws.kms#XksProxyConnectivityType", "traits": { - "smithy.api#documentation": "

Indicates how KMS communicates with the external key store proxy. This parameter is\n required for custom key stores with a CustomKeyStoreType of\n EXTERNAL_KEY_STORE.

\n

If the external key store proxy uses a public endpoint, specify\n PUBLIC_ENDPOINT. If the external key store proxy uses a Amazon VPC\n endpoint service for communication with KMS, specify VPC_ENDPOINT_SERVICE. For\n help making this choice, see Choosing a connectivity\n option in the Key Management Service Developer Guide.

\n

An Amazon VPC endpoint service keeps your communication with KMS in a private address space\n entirely within Amazon Web Services, but it requires more configuration, including establishing a Amazon VPC with multiple subnets, a VPC endpoint service, a network load balancer, and a\n verified private DNS name. A public endpoint is simpler to set up, but it might be slower and\n might not fulfill your security requirements. You might consider testing with a public\n endpoint, and then establishing a VPC endpoint service for production tasks. Note that this\n choice does not determine the location of the external key store proxy. Even if you choose a\n VPC endpoint service, the proxy can be hosted within the VPC or outside of Amazon Web Services such as in\n your corporate data center.

" + "smithy.api#documentation": "

Indicates how KMS communicates with the external key store proxy. This parameter is\n required for custom key stores with a CustomKeyStoreType of\n EXTERNAL_KEY_STORE.

\n

If the external key store proxy uses a public endpoint, specify\n PUBLIC_ENDPOINT. If the external key store proxy uses a Amazon VPC\n endpoint service for communication with KMS, specify VPC_ENDPOINT_SERVICE. For\n help making this choice, see Choosing a connectivity option in\n the Key Management Service Developer Guide.

\n

An Amazon VPC endpoint service keeps your communication with KMS in a private address space\n entirely within Amazon Web Services, but it requires more configuration, including establishing a Amazon VPC with multiple subnets, a VPC endpoint service, a network load balancer, and a\n verified private DNS name. A public endpoint is simpler to set up, but it might be slower and\n might not fulfill your security requirements. You might consider testing with a public\n endpoint, and then establishing a VPC endpoint service for production tasks. Note that this\n choice does not determine the location of the external key store proxy. Even if you choose a\n VPC endpoint service, the proxy can be hosted within the VPC or outside of Amazon Web Services such as in\n your corporate data center.

" } } }, @@ -836,7 +856,7 @@ } ], "traits": { - "smithy.api#documentation": "

Adds a grant to a KMS key.

\n

A grant is a policy instrument that allows Amazon Web Services principals to use\n KMS keys in cryptographic operations. It also can allow them to view a KMS key (DescribeKey) and create and manage grants. When authorizing access to a KMS key,\n grants are considered along with key policies and IAM policies. Grants are often used for\n temporary permissions because you can create one, use its permissions, and delete it without\n changing your key policies or IAM policies.

\n

For detailed information about grants, including grant terminology, see Grants in KMS in the\n \n Key Management Service Developer Guide\n . For examples of working with grants in several\n programming languages, see Programming grants.

\n

The CreateGrant operation returns a GrantToken and a\n GrantId.

\n
    \n
  • \n

    When you create, retire, or revoke a grant, there might be a brief delay, usually less than five minutes, until the grant is available throughout KMS. This state is known as eventual consistency. Once the grant has achieved eventual consistency, the grantee\n principal can use the permissions in the grant without identifying the grant.

    \n

    However, to use the permissions in the grant immediately, use the\n GrantToken that CreateGrant returns. For details, see Using a\n grant token in the \n Key Management Service Developer Guide\n .

    \n
  • \n
  • \n

    The CreateGrant operation also returns a GrantId. You can\n use the GrantId and a key identifier to identify the grant in the RetireGrant and RevokeGrant operations. To find the grant\n ID, use the ListGrants or ListRetirableGrants\n operations.

    \n
  • \n
\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation on a KMS key in a different Amazon Web Services account, specify the key\n ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:CreateGrant (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Adds a grant to a KMS key.

\n

A grant is a policy instrument that allows Amazon Web Services principals to use\n KMS keys in cryptographic operations. It also can allow them to view a KMS key (DescribeKey) and create and manage grants. When authorizing access to a KMS key,\n grants are considered along with key policies and IAM policies. Grants are often used for\n temporary permissions because you can create one, use its permissions, and delete it without\n changing your key policies or IAM policies.

\n

For detailed information about grants, including grant terminology, see Grants in KMS in the\n \n Key Management Service Developer Guide\n . For examples of creating grants in several\n programming languages, see Use CreateGrant with an Amazon Web Services SDK or CLI.

\n

The CreateGrant operation returns a GrantToken and a\n GrantId.

\n
    \n
  • \n

    When you create, retire, or revoke a grant, there might be a brief delay, usually less than five minutes, until the grant is available throughout KMS. This state is known as eventual consistency. Once the grant has achieved eventual consistency, the grantee\n principal can use the permissions in the grant without identifying the grant.

    \n

    However, to use the permissions in the grant immediately, use the\n GrantToken that CreateGrant returns. For details, see Using a grant\n token in the \n Key Management Service Developer Guide\n .

    \n
  • \n
  • \n

    The CreateGrant operation also returns a GrantId. You can\n use the GrantId and a key identifier to identify the grant in the RetireGrant and RevokeGrant operations. To find the grant\n ID, use the ListGrants or ListRetirableGrants\n operations.

    \n
  • \n
\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation on a KMS key in a different Amazon Web Services account, specify the key\n ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:CreateGrant (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To create a grant", @@ -877,7 +897,7 @@ "RetiringPrincipal": { "target": "com.amazonaws.kms#PrincipalIdType", "traits": { - "smithy.api#documentation": "

The principal that has permission to use the RetireGrant operation to\n retire the grant.

\n

To specify the principal, use the Amazon Resource Name (ARN) of an\n Amazon Web Services principal. Valid principals include Amazon Web Services accounts, IAM users, IAM roles,\n federated users, and assumed role users. For help with the ARN syntax for a principal, see\n IAM ARNs in the \n Identity and Access Management User Guide\n .

\n

The grant determines the retiring principal. Other principals might have permission to\n retire the grant or revoke the grant. For details, see RevokeGrant and\n Retiring and\n revoking grants in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

The principal that has permission to use the RetireGrant operation to\n retire the grant.

\n

To specify the principal, use the Amazon Resource Name (ARN) of an\n Amazon Web Services principal. Valid principals include Amazon Web Services accounts, IAM users, IAM roles,\n federated users, and assumed role users. For help with the ARN syntax for a principal, see\n IAM ARNs in the \n Identity and Access Management User Guide\n .

\n

The grant determines the retiring principal. Other principals might have permission to\n retire the grant or revoke the grant. For details, see RevokeGrant and\n Retiring and revoking\n grants in the Key Management Service Developer Guide.

" } }, "Operations": { @@ -896,7 +916,7 @@ "GrantTokens": { "target": "com.amazonaws.kms#GrantTokenList", "traits": { - "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" } }, "Name": { @@ -908,7 +928,7 @@ "DryRun": { "target": "com.amazonaws.kms#NullableBooleanType", "traits": { - "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your KMS API calls in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your permissions in the Key Management Service Developer Guide.

" } } }, @@ -922,7 +942,7 @@ "GrantToken": { "target": "com.amazonaws.kms#GrantTokenType", "traits": { - "smithy.api#documentation": "

The grant token.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" + "smithy.api#documentation": "

The grant token.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" } }, "GrantId": { @@ -986,7 +1006,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a unique customer managed KMS key in your Amazon Web Services account and Region.\n You can use a KMS key in cryptographic operations, such as encryption and signing. Some Amazon Web Services\n services let you use KMS keys that you create and manage to protect your service\n resources.

\n

A KMS key is a logical representation of a cryptographic key. In addition to the key\n material used in cryptographic operations, a KMS key includes metadata, such as the key ID,\n key policy, creation date, description, and key state. For details, see Managing keys in the\n Key Management Service Developer Guide\n

\n

Use the parameters of CreateKey to specify the type of KMS key, the source of\n its key material, its key policy, description, tags, and other properties.

\n \n

KMS has replaced the term customer master key (CMK) with KMS key and KMS key. The concept has not changed. To prevent breaking changes, KMS is keeping some variations of this term.

\n
\n

To create different types of KMS keys, use the following guidance:

\n
\n
Symmetric encryption KMS key
\n
\n

By default, CreateKey creates a symmetric encryption KMS key with key\n material that KMS generates. This is the basic and most widely used type of KMS key, and\n provides the best performance.

\n

To create a symmetric encryption KMS key, you don't need to specify any parameters.\n The default value for KeySpec, SYMMETRIC_DEFAULT, the default\n value for KeyUsage, ENCRYPT_DECRYPT, and the default value for\n Origin, AWS_KMS, create a symmetric encryption KMS key with\n KMS key material.

\n

If you need a key for basic encryption and decryption or you are creating a KMS key\n to protect your resources in an Amazon Web Services service, create a symmetric encryption KMS key.\n The key material in a symmetric encryption key never leaves KMS unencrypted. You can\n use a symmetric encryption KMS key to encrypt and decrypt data up to 4,096 bytes, but\n they are typically used to generate data keys and data keys pairs. For details, see\n GenerateDataKey and GenerateDataKeyPair.

\n

\n
\n
Asymmetric KMS keys
\n
\n

To create an asymmetric KMS key, use the KeySpec parameter to specify\n the type of key material in the KMS key. Then, use the KeyUsage parameter\n to determine whether the KMS key will be used to encrypt and decrypt or sign and verify.\n You can't change these properties after the KMS key is created.

\n

Asymmetric KMS keys contain an RSA key pair, Elliptic Curve (ECC) key pair, or an\n SM2 key pair (China Regions only). The private key in an asymmetric KMS key never leaves\n KMS unencrypted. However, you can use the GetPublicKey operation to\n download the public key so it can be used outside of KMS. KMS keys with RSA or SM2 key\n pairs can be used to encrypt or decrypt data or sign and verify messages (but not both).\n KMS keys with ECC key pairs can be used only to sign and verify messages. For\n information about asymmetric KMS keys, see Asymmetric KMS keys in the\n Key Management Service Developer Guide.

\n

\n
\n
HMAC KMS key
\n
\n

To create an HMAC KMS key, set the KeySpec parameter to a key spec\n value for HMAC KMS keys. Then set the KeyUsage parameter to\n GENERATE_VERIFY_MAC. You must set the key usage even though\n GENERATE_VERIFY_MAC is the only valid key usage value for HMAC KMS keys.\n You can't change these properties after the KMS key is created.

\n

HMAC KMS keys are symmetric keys that never leave KMS unencrypted. You can use\n HMAC keys to generate (GenerateMac) and verify (VerifyMac) HMAC codes for messages up to 4096 bytes.

\n

\n
\n
Multi-Region primary keys
\n
Imported key material
\n
\n

To create a multi-Region primary key in the local Amazon Web Services Region,\n use the MultiRegion parameter with a value of True. To create\n a multi-Region replica key, that is, a KMS key with the same key ID\n and key material as a primary key, but in a different Amazon Web Services Region, use the ReplicateKey operation. To change a replica key to a primary key, and its\n primary key to a replica key, use the UpdatePrimaryRegion\n operation.

\n

You can create multi-Region KMS keys for all supported KMS key types: symmetric\n encryption KMS keys, HMAC KMS keys, asymmetric encryption KMS keys, and asymmetric\n signing KMS keys. You can also create multi-Region keys with imported key material.\n However, you can't create multi-Region keys in a custom key store.

\n

This operation supports multi-Region keys, an KMS feature that lets you create multiple\n interoperable KMS keys in different Amazon Web Services Regions. Because these KMS keys have the same key ID, key\n material, and other metadata, you can use them interchangeably to encrypt data in one Amazon Web Services Region and decrypt\n it in a different Amazon Web Services Region without re-encrypting the data or making a cross-Region call. For more information about multi-Region keys, see Multi-Region keys in KMS in the Key Management Service Developer Guide.

\n

\n
\n
\n

To import your own key material into a KMS key, begin by creating a KMS key with no\n key material. To do this, use the Origin parameter of\n CreateKey with a value of EXTERNAL. Next, use GetParametersForImport operation to get a public key and import token. Use\n the wrapping public key to encrypt your key material. Then, use ImportKeyMaterial with your import token to import the key material. For\n step-by-step instructions, see Importing Key Material in the \n Key Management Service Developer Guide\n .

\n

You can import key material into KMS keys of all supported KMS key types: symmetric\n encryption KMS keys, HMAC KMS keys, asymmetric encryption KMS keys, and asymmetric\n signing KMS keys. You can also create multi-Region keys with imported key material.\n However, you can't import key material into a KMS key in a custom key store.

\n

To create a multi-Region primary key with imported key material, use the\n Origin parameter of CreateKey with a value of\n EXTERNAL and the MultiRegion parameter with a value of\n True. To create replicas of the multi-Region primary key, use the ReplicateKey operation. For instructions, see Importing key material into\n multi-Region keys. For more information about multi-Region keys, see Multi-Region keys in KMS in the Key Management Service Developer Guide.

\n

\n
\n
Custom key store
\n
\n

A custom key store lets you protect your Amazon Web Services resources using keys in a backing key\n store that you own and manage. When you request a cryptographic operation with a KMS key\n in a custom key store, the operation is performed in the backing key store using its\n cryptographic keys.

\n

KMS supports CloudHSM key stores backed by an CloudHSM cluster and external key stores backed by an\n external key manager outside of Amazon Web Services. When you create a KMS key in an CloudHSM key store,\n KMS generates an encryption key in the CloudHSM cluster and associates it with the KMS\n key. When you create a KMS key in an external key store, you specify an existing\n encryption key in the external key manager.

\n \n

Some external key managers provide a simpler method for creating a KMS key in an\n external key store. For details, see your external key manager documentation.

\n
\n

Before you create a KMS key in a custom key store, the ConnectionState\n of the key store must be CONNECTED. To connect the custom key store, use\n the ConnectCustomKeyStore operation. To find the\n ConnectionState, use the DescribeCustomKeyStores\n operation.

\n

To create a KMS key in a custom key store, use the CustomKeyStoreId.\n Use the default KeySpec value, SYMMETRIC_DEFAULT, and the\n default KeyUsage value, ENCRYPT_DECRYPT to create a symmetric\n encryption key. No other key type is supported in a custom key store.

\n

To create a KMS key in an CloudHSM key store, use the\n Origin parameter with a value of AWS_CLOUDHSM. The CloudHSM\n cluster that is associated with the custom key store must have at least two active HSMs\n in different Availability Zones in the Amazon Web Services Region.

\n

To create a KMS key in an external key store, use the\n Origin parameter with a value of EXTERNAL_KEY_STORE and an\n XksKeyId parameter that identifies an existing external key.

\n \n

Some external key managers provide a simpler method for creating a KMS key in an\n external key store. For details, see your external key manager documentation.

\n
\n
\n
\n

\n Cross-account use: No. You cannot use this operation to\n create a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:CreateKey (IAM policy). To use the\n Tags parameter, kms:TagResource (IAM policy). For examples and information about related\n permissions, see Allow a user to create\n KMS keys in the Key Management Service Developer Guide.

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

" + "smithy.api#documentation": "

Creates a unique customer managed KMS key in your Amazon Web Services account and Region.\n You can use a KMS key in cryptographic operations, such as encryption and signing. Some Amazon Web Services\n services let you use KMS keys that you create and manage to protect your service\n resources.

\n

A KMS key is a logical representation of a cryptographic key. In addition to the key\n material used in cryptographic operations, a KMS key includes metadata, such as the key ID,\n key policy, creation date, description, and key state.

\n

Use the parameters of CreateKey to specify the type of KMS key, the source of\n its key material, its key policy, description, tags, and other properties.

\n \n

KMS has replaced the term customer master key (CMK) with Key Management Service key \n and KMS key. The concept has not changed. To prevent breaking changes, KMS is keeping some variations of this term.

\n
\n

To create different types of KMS keys, use the following guidance:

\n
\n
Symmetric encryption KMS key
\n
\n

By default, CreateKey creates a symmetric encryption KMS key with key\n material that KMS generates. This is the basic and most widely used type of KMS key, and\n provides the best performance.

\n

To create a symmetric encryption KMS key, you don't need to specify any parameters.\n The default value for KeySpec, SYMMETRIC_DEFAULT, the default\n value for KeyUsage, ENCRYPT_DECRYPT, and the default value for\n Origin, AWS_KMS, create a symmetric encryption KMS key with\n KMS key material.

\n

If you need a key for basic encryption and decryption or you are creating a KMS key\n to protect your resources in an Amazon Web Services service, create a symmetric encryption KMS key.\n The key material in a symmetric encryption key never leaves KMS unencrypted. You can\n use a symmetric encryption KMS key to encrypt and decrypt data up to 4,096 bytes, but\n they are typically used to generate data keys and data keys pairs. For details, see\n GenerateDataKey and GenerateDataKeyPair.

\n

\n
\n
Asymmetric KMS keys
\n
\n

To create an asymmetric KMS key, use the KeySpec parameter to specify\n the type of key material in the KMS key. Then, use the KeyUsage parameter\n to determine whether the KMS key will be used to encrypt and decrypt or sign and verify.\n You can't change these properties after the KMS key is created.

\n

Asymmetric KMS keys contain an RSA key pair, Elliptic Curve (ECC) key pair, ML-DSA\n key pair or an SM2 key pair (China Regions only). The private key in an asymmetric KMS\n key never leaves KMS unencrypted. However, you can use the GetPublicKey operation to download the public key so it can be used\n outside of KMS. Each KMS key can have only one key usage. KMS keys with RSA key pairs\n can be used to encrypt and decrypt data or sign and verify messages (but not both). KMS\n keys with NIST-recommended ECC key pairs can be used to sign and verify messages or\n derive shared secrets (but not both). KMS keys with ECC_SECG_P256K1 can be\n used only to sign and verify messages. KMS keys with ML-DSA key pairs can be used to\n sign and verify messages. KMS keys with SM2 key pairs (China Regions only) can be used\n to either encrypt and decrypt data, sign and verify messages, or derive shared secrets\n (you must choose one key usage type). For information about asymmetric KMS keys, see\n Asymmetric\n KMS keys in the Key Management Service Developer Guide.

\n

\n
\n
HMAC KMS key
\n
\n

To create an HMAC KMS key, set the KeySpec parameter to a key spec\n value for HMAC KMS keys. Then set the KeyUsage parameter to\n GENERATE_VERIFY_MAC. You must set the key usage even though\n GENERATE_VERIFY_MAC is the only valid key usage value for HMAC KMS keys.\n You can't change these properties after the KMS key is created.

\n

HMAC KMS keys are symmetric keys that never leave KMS unencrypted. You can use\n HMAC keys to generate (GenerateMac) and verify (VerifyMac) HMAC codes for messages up to 4096 bytes.

\n

\n
\n
Multi-Region primary keys
\n
Imported key material
\n
\n

To create a multi-Region primary key in the local Amazon Web Services Region,\n use the MultiRegion parameter with a value of True. To create\n a multi-Region replica key, that is, a KMS key with the same key ID\n and key material as a primary key, but in a different Amazon Web Services Region, use the ReplicateKey operation. To change a replica key to a primary key, and its\n primary key to a replica key, use the UpdatePrimaryRegion\n operation.

\n

You can create multi-Region KMS keys for all supported KMS key types: symmetric\n encryption KMS keys, HMAC KMS keys, asymmetric encryption KMS keys, and asymmetric\n signing KMS keys. You can also create multi-Region keys with imported key material.\n However, you can't create multi-Region keys in a custom key store.

\n

This operation supports multi-Region keys, an KMS feature that lets you create multiple\n interoperable KMS keys in different Amazon Web Services Regions. Because these KMS keys have the same key ID, key\n material, and other metadata, you can use them interchangeably to encrypt data in one Amazon Web Services Region and decrypt\n it in a different Amazon Web Services Region without re-encrypting the data or making a cross-Region call. For more information about multi-Region keys, see Multi-Region keys in KMS in the Key Management Service Developer Guide.

\n

\n
\n
\n

To import your own key material into a KMS key, begin by creating a KMS key with no\n key material. To do this, use the Origin parameter of\n CreateKey with a value of EXTERNAL. Next, use GetParametersForImport operation to get a public key and import token. Use\n the wrapping public key to encrypt your key material. Then, use ImportKeyMaterial with your import token to import the key material. For\n step-by-step instructions, see Importing Key Material in the \n Key Management Service Developer Guide\n .

\n

You can import key material into KMS keys of all supported KMS key types: symmetric\n encryption KMS keys, HMAC KMS keys, asymmetric encryption KMS keys, and asymmetric\n signing KMS keys. You can also create multi-Region keys with imported key material.\n However, you can't import key material into a KMS key in a custom key store.

\n

To create a multi-Region primary key with imported key material, use the\n Origin parameter of CreateKey with a value of\n EXTERNAL and the MultiRegion parameter with a value of\n True. To create replicas of the multi-Region primary key, use the ReplicateKey operation. For instructions, see Importing key material step\n 1. For more information about multi-Region keys, see Multi-Region keys in KMS in the Key Management Service Developer Guide.

\n

\n
\n
Custom key store
\n
\n

A custom key store lets you protect your Amazon Web Services resources using keys in a backing key\n store that you own and manage. When you request a cryptographic operation with a KMS key\n in a custom key store, the operation is performed in the backing key store using its\n cryptographic keys.

\n

KMS supports CloudHSM key stores backed by an CloudHSM cluster and external key stores backed by an\n external key manager outside of Amazon Web Services. When you create a KMS key in an CloudHSM key store,\n KMS generates an encryption key in the CloudHSM cluster and associates it with the KMS\n key. When you create a KMS key in an external key store, you specify an existing\n encryption key in the external key manager.

\n \n

Some external key managers provide a simpler method for creating a KMS key in an\n external key store. For details, see your external key manager documentation.

\n
\n

Before you create a KMS key in a custom key store, the ConnectionState\n of the key store must be CONNECTED. To connect the custom key store, use\n the ConnectCustomKeyStore operation. To find the\n ConnectionState, use the DescribeCustomKeyStores\n operation.

\n

To create a KMS key in a custom key store, use the CustomKeyStoreId.\n Use the default KeySpec value, SYMMETRIC_DEFAULT, and the\n default KeyUsage value, ENCRYPT_DECRYPT to create a symmetric\n encryption key. No other key type is supported in a custom key store.

\n

To create a KMS key in an CloudHSM key store, use the\n Origin parameter with a value of AWS_CLOUDHSM. The CloudHSM\n cluster that is associated with the custom key store must have at least two active HSMs\n in different Availability Zones in the Amazon Web Services Region.

\n

To create a KMS key in an external key store, use the\n Origin parameter with a value of EXTERNAL_KEY_STORE and an\n XksKeyId parameter that identifies an existing external key.

\n \n

Some external key managers provide a simpler method for creating a KMS key in an\n external key store. For details, see your external key manager documentation.

\n
\n
\n
\n

\n Cross-account use: No. You cannot use this operation to\n create a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:CreateKey (IAM policy). To use the\n Tags parameter, kms:TagResource (IAM policy). For examples and information about related\n permissions, see Allow a user\n to create KMS keys in the Key Management Service Developer Guide.

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

" } }, "com.amazonaws.kms#CreateKeyRequest": { @@ -995,7 +1015,7 @@ "Policy": { "target": "com.amazonaws.kms#PolicyType", "traits": { - "smithy.api#documentation": "

The key policy to attach to the KMS key.

\n

If you provide a key policy, it must meet the following criteria:

\n
    \n
  • \n

    The key policy must allow the calling principal to make a\n subsequent PutKeyPolicy request on the KMS key. This reduces the risk that\n the KMS key becomes unmanageable. For more information, see Default key policy in the Key Management Service Developer Guide. (To omit\n this condition, set BypassPolicyLockoutSafetyCheck to true.)

    \n
  • \n
  • \n

    Each statement in the key policy must contain one or more principals. The principals\n in the key policy must exist and be visible to KMS. When you create a new Amazon Web Services\n principal, you might need to enforce a delay before including the new principal in a key\n policy because the new principal might not be immediately visible to KMS. For more\n information, see Changes that I make are not always immediately visible in the Amazon Web Services\n Identity and Access Management User Guide.

    \n
  • \n
\n

If you do not provide a key policy, KMS attaches a default key policy to the KMS key.\n For more information, see Default key policy in the\n Key Management Service Developer Guide.

\n

The key policy size quota is 32 kilobytes (32768 bytes).

\n

For help writing and formatting a JSON policy document, see the IAM JSON Policy Reference in the \n Identity and Access Management User Guide\n .

" + "smithy.api#documentation": "

The key policy to attach to the KMS key.

\n

If you provide a key policy, it must meet the following criteria:

\n
    \n
  • \n

    The key policy must allow the calling principal to make a\n subsequent PutKeyPolicy request on the KMS key. This reduces the risk that\n the KMS key becomes unmanageable. For more information, see Default key policy in the Key Management Service Developer Guide. (To omit\n this condition, set BypassPolicyLockoutSafetyCheck to true.)

    \n
  • \n
  • \n

    Each statement in the key policy must contain one or more principals. The principals\n in the key policy must exist and be visible to KMS. When you create a new Amazon Web Services\n principal, you might need to enforce a delay before including the new principal in a key\n policy because the new principal might not be immediately visible to KMS. For more\n information, see Changes that I make are not always immediately visible in the Amazon Web Services\n Identity and Access Management User Guide.

    \n
  • \n
\n \n

If either of the required Resource or Action elements are\n missing from a key policy statement, the policy statement has no effect. When a key policy\n statement is missing one of these elements, the KMS console correctly reports an error,\n but the CreateKey and PutKeyPolicy API requests succeed, even\n though the policy statement is ineffective.

\n

For more information on required key policy elements, see Elements in a key\n policy in the Key Management Service Developer Guide.

\n
\n

If you do not provide a key policy, KMS attaches a default key policy to the KMS key.\n For more information, see Default key policy in the\n Key Management Service Developer Guide.

\n \n

If the key policy exceeds the length constraint, KMS returns a\n LimitExceededException.

\n
\n

For help writing and formatting a JSON policy document, see the IAM JSON Policy Reference in the \n Identity and Access Management User Guide\n .

" } }, "Description": { @@ -1007,7 +1027,7 @@ "KeyUsage": { "target": "com.amazonaws.kms#KeyUsageType", "traits": { - "smithy.api#documentation": "

Determines the cryptographic operations for which you can use the KMS key. The default value is\n ENCRYPT_DECRYPT. This parameter is optional when you are creating a symmetric\n encryption KMS key; otherwise, it is required. You can't change the KeyUsage\n value after the KMS key is created.

\n

Select only one valid value.

\n
    \n
  • \n

    For symmetric encryption KMS keys, omit the parameter or specify\n ENCRYPT_DECRYPT.

    \n
  • \n
  • \n

    For HMAC KMS keys (symmetric), specify GENERATE_VERIFY_MAC.

    \n
  • \n
  • \n

    For asymmetric KMS keys with RSA key material, specify ENCRYPT_DECRYPT or\n SIGN_VERIFY.

    \n
  • \n
  • \n

    For asymmetric KMS keys with ECC key material, specify\n SIGN_VERIFY.

    \n
  • \n
  • \n

    For asymmetric KMS keys with SM2 key material (China Regions only), specify\n ENCRYPT_DECRYPT or SIGN_VERIFY.

    \n
  • \n
" + "smithy.api#documentation": "

Determines the cryptographic operations for which you can use the KMS key. The default value is\n ENCRYPT_DECRYPT. This parameter is optional when you are creating a symmetric\n encryption KMS key; otherwise, it is required. You can't change the \n KeyUsage\n value after the KMS key is created. Each KMS key can have\n only one key usage. This follows key usage best practices according to NIST SP 800-57 Recommendations for\n Key Management, section 5.2, Key usage.

\n

Select only one valid value.

\n
    \n
  • \n

    For symmetric encryption KMS keys, omit the parameter or specify\n ENCRYPT_DECRYPT.

    \n
  • \n
  • \n

    For HMAC KMS keys (symmetric), specify GENERATE_VERIFY_MAC.

    \n
  • \n
  • \n

    For asymmetric KMS keys with RSA key pairs, specify ENCRYPT_DECRYPT or\n SIGN_VERIFY.

    \n
  • \n
  • \n

    For asymmetric KMS keys with NIST-recommended elliptic curve key pairs, specify\n SIGN_VERIFY or KEY_AGREEMENT.

    \n
  • \n
  • \n

    For asymmetric KMS keys with ECC_SECG_P256K1 key pairs, specify\n SIGN_VERIFY.

    \n
  • \n
  • \n

    For asymmetric KMS keys with ML-DSA key pairs, specify\n SIGN_VERIFY.

    \n
  • \n
  • \n

    For asymmetric KMS keys with SM2 key pairs (China Regions only), specify\n ENCRYPT_DECRYPT, SIGN_VERIFY, or\n KEY_AGREEMENT.

    \n
  • \n
" } }, "CustomerMasterKeySpec": { @@ -1022,7 +1042,7 @@ "KeySpec": { "target": "com.amazonaws.kms#KeySpec", "traits": { - "smithy.api#documentation": "

Specifies the type of KMS key to create. The default value,\n SYMMETRIC_DEFAULT, creates a KMS key with a 256-bit AES-GCM key that is used for\n encryption and decryption, except in China Regions, where it creates a 128-bit symmetric key\n that uses SM4 encryption. For help choosing a key spec for your KMS key, see Choosing a KMS key type in the \n Key Management Service Developer Guide\n .

\n

The KeySpec determines whether the KMS key contains a symmetric key or an\n asymmetric key pair. It also determines the algorithms that the KMS key supports. You can't\n change the KeySpec after the KMS key is created. To further restrict the\n algorithms that can be used with the KMS key, use a condition key in its key policy or IAM\n policy. For more information, see kms:EncryptionAlgorithm, kms:MacAlgorithm or kms:Signing Algorithm in the \n Key Management Service Developer Guide\n .

\n \n

\n Amazon Web Services services that\n are integrated with KMS use symmetric encryption KMS keys to protect your data.\n These services do not support asymmetric KMS keys or HMAC KMS keys.

\n
\n

KMS supports the following key specs for KMS keys:

\n
    \n
  • \n

    Symmetric encryption key (default)

    \n
      \n
    • \n

      \n SYMMETRIC_DEFAULT\n

      \n
    • \n
    \n
  • \n
  • \n

    HMAC keys (symmetric)

    \n
      \n
    • \n

      \n HMAC_224\n

      \n
    • \n
    • \n

      \n HMAC_256\n

      \n
    • \n
    • \n

      \n HMAC_384\n

      \n
    • \n
    • \n

      \n HMAC_512\n

      \n
    • \n
    \n
  • \n
  • \n

    Asymmetric RSA key pairs

    \n
      \n
    • \n

      \n RSA_2048\n

      \n
    • \n
    • \n

      \n RSA_3072\n

      \n
    • \n
    • \n

      \n RSA_4096\n

      \n
    • \n
    \n
  • \n
  • \n

    Asymmetric NIST-recommended elliptic curve key pairs

    \n
      \n
    • \n

      \n ECC_NIST_P256 (secp256r1)

      \n
    • \n
    • \n

      \n ECC_NIST_P384 (secp384r1)

      \n
    • \n
    • \n

      \n ECC_NIST_P521 (secp521r1)

      \n
    • \n
    \n
  • \n
  • \n

    Other asymmetric elliptic curve key pairs

    \n
      \n
    • \n

      \n ECC_SECG_P256K1 (secp256k1), commonly used for\n cryptocurrencies.

      \n
    • \n
    \n
  • \n
  • \n

    SM2 key pairs (China Regions only)

    \n
      \n
    • \n

      \n SM2\n

      \n
    • \n
    \n
  • \n
" + "smithy.api#documentation": "

Specifies the type of KMS key to create. The default value,\n SYMMETRIC_DEFAULT, creates a KMS key with a 256-bit AES-GCM key that is used for\n encryption and decryption, except in China Regions, where it creates a 128-bit symmetric key\n that uses SM4 encryption. For a detailed description of all supported key specs, see Key spec\n reference in the \n Key Management Service Developer Guide\n .

\n

The KeySpec determines whether the KMS key contains a symmetric key or an\n asymmetric key pair. It also determines the algorithms that the KMS key supports. You can't\n change the KeySpec after the KMS key is created. To further restrict the\n algorithms that can be used with the KMS key, use a condition key in its key policy or IAM\n policy. For more information, see kms:EncryptionAlgorithm, kms:MacAlgorithm, kms:KeyAgreementAlgorithm, or kms:SigningAlgorithm in the \n Key Management Service Developer Guide\n .

\n \n

\n Amazon Web Services services that\n are integrated with KMS use symmetric encryption KMS keys to protect your data.\n These services do not support asymmetric KMS keys or HMAC KMS keys.

\n
\n

KMS supports the following key specs for KMS keys:

\n
    \n
  • \n

    Symmetric encryption key (default)

    \n
      \n
    • \n

      \n SYMMETRIC_DEFAULT\n

      \n
    • \n
    \n
  • \n
  • \n

    HMAC keys (symmetric)

    \n
      \n
    • \n

      \n HMAC_224\n

      \n
    • \n
    • \n

      \n HMAC_256\n

      \n
    • \n
    • \n

      \n HMAC_384\n

      \n
    • \n
    • \n

      \n HMAC_512\n

      \n
    • \n
    \n
  • \n
  • \n

    Asymmetric RSA key pairs (encryption and decryption -or- signing and\n verification)

    \n
      \n
    • \n

      \n RSA_2048\n

      \n
    • \n
    • \n

      \n RSA_3072\n

      \n
    • \n
    • \n

      \n RSA_4096\n

      \n
    • \n
    \n
  • \n
  • \n

    Asymmetric NIST-recommended elliptic curve key pairs (signing and verification -or-\n deriving shared secrets)

    \n
      \n
    • \n

      \n ECC_NIST_P256 (secp256r1)

      \n
    • \n
    • \n

      \n ECC_NIST_P384 (secp384r1)

      \n
    • \n
    • \n

      \n ECC_NIST_P521 (secp521r1)

      \n
    • \n
    \n
  • \n
  • \n

    Other asymmetric elliptic curve key pairs (signing and verification)

    \n
      \n
    • \n

      \n ECC_SECG_P256K1 (secp256k1), commonly used for\n cryptocurrencies.

      \n
    • \n
    \n
  • \n
  • \n

    Asymmetric ML-DSA key pairs (signing and verification)

    \n
      \n
    • \n

      \n ML_DSA_44\n

      \n
    • \n
    • \n

      \n ML_DSA_65\n

      \n
    • \n
    • \n

      \n ML_DSA_87\n

      \n
    • \n
    \n
  • \n
  • \n

    SM2 key pairs (encryption and decryption -or- signing and verification -or- deriving\n shared secrets)

    \n
      \n
    • \n

      \n SM2 (China Regions only)

      \n
    • \n
    \n
  • \n
" } }, "Origin": { @@ -1034,7 +1054,7 @@ "CustomKeyStoreId": { "target": "com.amazonaws.kms#CustomKeyStoreIdType", "traits": { - "smithy.api#documentation": "

Creates the KMS key in the specified custom key store. The ConnectionState of\n the custom key store must be CONNECTED. To find the CustomKeyStoreID and\n ConnectionState use the DescribeCustomKeyStores operation.

\n

This parameter is valid only for symmetric encryption KMS keys in a single Region. You\n cannot create any other type of KMS key in a custom key store.

\n

When you create a KMS key in an CloudHSM key store, KMS generates a non-exportable 256-bit\n symmetric key in its associated CloudHSM cluster and associates it with the KMS key. When you\n create a KMS key in an external key store, you must use the XksKeyId parameter to\n specify an external key that serves as key material for the KMS key.

" + "smithy.api#documentation": "

Creates the KMS key in the specified custom key store. The ConnectionState of\n the custom key store must be CONNECTED. To find the CustomKeyStoreID and\n ConnectionState use the DescribeCustomKeyStores operation.

\n

This parameter is valid only for symmetric encryption KMS keys in a single Region. You\n cannot create any other type of KMS key in a custom key store.

\n

When you create a KMS key in an CloudHSM key store, KMS generates a non-exportable 256-bit\n symmetric key in its associated CloudHSM cluster and associates it with the KMS key. When you\n create a KMS key in an external key store, you must use the XksKeyId parameter to\n specify an external key that serves as key material for the KMS key.

" } }, "BypassPolicyLockoutSafetyCheck": { @@ -1047,7 +1067,7 @@ "Tags": { "target": "com.amazonaws.kms#TagList", "traits": { - "smithy.api#documentation": "

Assigns one or more tags to the KMS key. Use this parameter to tag the KMS key when it is\n created. To tag an existing KMS key, use the TagResource operation.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n \n

Tagging or untagging a KMS key can allow or deny permission to the KMS key. For details, see ABAC for KMS in the Key Management Service Developer Guide.

\n
\n

To use this parameter, you must have kms:TagResource permission in an IAM policy.

\n

Each tag consists of a tag key and a tag value. Both the tag key and the tag value are\n required, but the tag value can be an empty (null) string. You cannot have more than one tag\n on a KMS key with the same tag key. If you specify an existing tag key with a different tag\n value, KMS replaces the current tag value with the specified one.

\n

When you add tags to an Amazon Web Services resource, Amazon Web Services generates a cost allocation\n report with usage and costs aggregated by tags. Tags can also be used to control access to a KMS key. For details,\n see Tagging Keys.

" + "smithy.api#documentation": "

Assigns one or more tags to the KMS key. Use this parameter to tag the KMS key when it is\n created. To tag an existing KMS key, use the TagResource operation.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n \n

Tagging or untagging a KMS key can allow or deny permission to the KMS key. For details, see ABAC for KMS in the Key Management Service Developer Guide.

\n
\n

To use this parameter, you must have kms:TagResource permission in an IAM policy.

\n

Each tag consists of a tag key and a tag value. Both the tag key and the tag value are\n required, but the tag value can be an empty (null) string. You cannot have more than one tag\n on a KMS key with the same tag key. If you specify an existing tag key with a different tag\n value, KMS replaces the current tag value with the specified one.

\n

When you add tags to an Amazon Web Services resource, Amazon Web Services generates a cost allocation\n report with usage and costs aggregated by tags. Tags can also be used to control access to a KMS key. For details,\n see Tags in KMS.

" } }, "MultiRegion": { @@ -1059,7 +1079,7 @@ "XksKeyId": { "target": "com.amazonaws.kms#XksKeyIdType", "traits": { - "smithy.api#documentation": "

Identifies the external key that\n serves as key material for the KMS key in an external key store. Specify the ID that\n the external key store proxy uses to refer to the external key. For help, see the\n documentation for your external key store proxy.

\n

This parameter is required for a KMS key with an Origin value of\n EXTERNAL_KEY_STORE. It is not valid for KMS keys with any other\n Origin value.

\n

The external key must be an existing 256-bit AES symmetric encryption key hosted outside\n of Amazon Web Services in an external key manager associated with the external key store specified by the\n CustomKeyStoreId parameter. This key must be enabled and configured to perform\n encryption and decryption. Each KMS key in an external key store must use a different external\n key. For details, see Requirements for a KMS key in an external\n key store in the Key Management Service Developer Guide.

\n

Each KMS key in an external key store is associated two backing keys. One is key material\n that KMS generates. The other is the external key specified by this parameter. When you use\n the KMS key in an external key store to encrypt data, the encryption operation is performed\n first by KMS using the KMS key material, and then by the external key manager using the\n specified external key, a process known as double encryption. For\n details, see Double\n encryption in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Identifies the external key that\n serves as key material for the KMS key in an external key store. Specify the ID that\n the external key store proxy uses to refer to the external key. For help, see the\n documentation for your external key store proxy.

\n

This parameter is required for a KMS key with an Origin value of\n EXTERNAL_KEY_STORE. It is not valid for KMS keys with any other\n Origin value.

\n

The external key must be an existing 256-bit AES symmetric encryption key hosted outside\n of Amazon Web Services in an external key manager associated with the external key store specified by the\n CustomKeyStoreId parameter. This key must be enabled and configured to perform\n encryption and decryption. Each KMS key in an external key store must use a different external\n key. For details, see Requirements for a KMS key in\n an external key store in the Key Management Service Developer Guide.

\n

Each KMS key in an external key store is associated two backing keys. One is key material\n that KMS generates. The other is the external key specified by this parameter. When you use\n the KMS key in an external key store to encrypt data, the encryption operation is performed\n first by KMS using the KMS key material, and then by the external key manager using the\n specified external key, a process known as double encryption. For\n details, see Double\n encryption in the Key Management Service Developer Guide.

" } } }, @@ -1457,33 +1477,34 @@ } ], "traits": { - "smithy.api#documentation": "

Decrypts ciphertext that was encrypted by a KMS key using any of the following\n operations:

\n \n

You can use this operation to decrypt ciphertext that was encrypted under a symmetric\n encryption KMS key or an asymmetric encryption KMS key. When the KMS key is asymmetric, you\n must specify the KMS key and the encryption algorithm that was used to encrypt the ciphertext.\n For information about asymmetric KMS keys, see Asymmetric KMS keys in the Key Management Service Developer Guide.

\n

The Decrypt operation also decrypts ciphertext that was encrypted outside of\n KMS by the public key in an KMS asymmetric KMS key. However, it cannot decrypt symmetric\n ciphertext produced by other libraries, such as the Amazon Web Services Encryption SDK or Amazon S3 client-side encryption.\n These libraries return a ciphertext format that is incompatible with KMS.

\n

If the ciphertext was encrypted under a symmetric encryption KMS key, the\n KeyId parameter is optional. KMS can get this information from metadata that\n it adds to the symmetric ciphertext blob. This feature adds durability to your implementation\n by ensuring that authorized users can decrypt ciphertext decades after it was encrypted, even\n if they've lost track of the key ID. However, specifying the KMS key is always recommended as\n a best practice. When you use the KeyId parameter to specify a KMS key, KMS\n only uses the KMS key you specify. If the ciphertext was encrypted under a different KMS key,\n the Decrypt operation fails. This practice ensures that you use the KMS key that\n you intend.

\n

Whenever possible, use key policies to give users permission to call the\n Decrypt operation on a particular KMS key, instead of using &IAM; policies.\n Otherwise, you might create an &IAM; policy that gives the user Decrypt\n permission on all KMS keys. This user could decrypt ciphertext that was encrypted by KMS keys\n in other accounts if the key policy for the cross-account KMS key permits it. If you must use\n an IAM policy for Decrypt permissions, limit the user to particular KMS keys or\n particular trusted accounts. For details, see Best practices for IAM\n policies in the Key Management Service Developer Guide.

\n

\n Decrypt also supports Amazon Web Services Nitro Enclaves, which provide an\n isolated compute environment in Amazon EC2. To call Decrypt for a Nitro enclave, use\n the Amazon Web Services Nitro Enclaves SDK or any Amazon Web Services SDK. Use the Recipient parameter to provide the\n attestation document for the enclave. Instead of the plaintext data, the response includes the\n plaintext data encrypted with the public key from the attestation document\n (CiphertextForRecipient). For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web Services Nitro Enclaves uses KMS in the Key Management Service Developer Guide.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. If you use the KeyId\n parameter to identify a KMS key in a different Amazon Web Services account, specify the key ARN or the alias\n ARN of the KMS key.

\n

\n Required permissions: kms:Decrypt (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Decrypts ciphertext that was encrypted by a KMS key using any of the following\n operations:

\n \n

You can use this operation to decrypt ciphertext that was encrypted under a symmetric\n encryption KMS key or an asymmetric encryption KMS key. When the KMS key is asymmetric, you\n must specify the KMS key and the encryption algorithm that was used to encrypt the ciphertext.\n For information about asymmetric KMS keys, see Asymmetric KMS keys in the Key Management Service Developer Guide.

\n

The Decrypt operation also decrypts ciphertext that was encrypted outside of\n KMS by the public key in an KMS asymmetric KMS key. However, it cannot decrypt symmetric\n ciphertext produced by other libraries, such as the Amazon Web Services Encryption SDK or Amazon S3 client-side encryption.\n These libraries return a ciphertext format that is incompatible with KMS.

\n

If the ciphertext was encrypted under a symmetric encryption KMS key, the\n KeyId parameter is optional. KMS can get this information from metadata that\n it adds to the symmetric ciphertext blob. This feature adds durability to your implementation\n by ensuring that authorized users can decrypt ciphertext decades after it was encrypted, even\n if they've lost track of the key ID. However, specifying the KMS key is always recommended as\n a best practice. When you use the KeyId parameter to specify a KMS key, KMS\n only uses the KMS key you specify. If the ciphertext was encrypted under a different KMS key,\n the Decrypt operation fails. This practice ensures that you use the KMS key that\n you intend.

\n

Whenever possible, use key policies to give users permission to call the\n Decrypt operation on a particular KMS key, instead of using IAM policies.\n Otherwise, you might create an IAM policy that gives the user Decrypt\n permission on all KMS keys. This user could decrypt ciphertext that was encrypted by KMS keys\n in other accounts if the key policy for the cross-account KMS key permits it. If you must use\n an IAM policy for Decrypt permissions, limit the user to particular KMS keys or\n particular trusted accounts. For details, see Best practices for IAM\n policies in the Key Management Service Developer Guide.

\n

\n Decrypt also supports Amazon Web Services Nitro Enclaves and NitroTPM, which provide \n attested environments in Amazon EC2. To call Decrypt for a Nitro enclave or NitroTPM, use\n the Amazon Web Services Nitro Enclaves SDK or any Amazon Web Services SDK. Use the Recipient parameter to provide the\n attestation document for the attested environment. Instead of the plaintext data, the response \n includes the plaintext data encrypted with the public key from the attestation document\n (CiphertextForRecipient). For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see Cryptographic attestation support in KMS in the Key Management Service Developer Guide.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. If you use the KeyId\n parameter to identify a KMS key in a different Amazon Web Services account, specify the key ARN or the alias\n ARN of the KMS key.

\n

\n Required permissions: kms:Decrypt (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { - "title": "To decrypt data with a symmetric encryption KMS key", - "documentation": "The following example decrypts data that was encrypted with a symmetric encryption KMS key. The KeyId is not required when decrypting with a symmetric encryption key, but it is a best practice.", + "title": "To decrypt data with an asymmetric encryption KMS key", + "documentation": "The following example decrypts data that was encrypted with an asymmetric encryption KMS key. When the KMS encryption key is asymmetric, you must specify the KMS key ID and the encryption algorithm that was used to encrypt the data.", "input": { "CiphertextBlob": "", - "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" + "KeyId": "0987dcba-09fe-87dc-65ba-ab0987654321", + "EncryptionAlgorithm": "RSAES_OAEP_SHA_256" }, "output": { - "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", + "KeyId": "arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321", "Plaintext": "", - "EncryptionAlgorithm": "SYMMETRIC_DEFAULT" + "EncryptionAlgorithm": "RSAES_OAEP_SHA_256" } }, { - "title": "To decrypt data with an asymmetric encryption KMS key", - "documentation": "The following example decrypts data that was encrypted with an asymmetric encryption KMS key. When the KMS encryption key is asymmetric, you must specify the KMS key ID and the encryption algorithm that was used to encrypt the data.", + "title": "To decrypt data with a symmetric encryption KMS key", + "documentation": "The following example decrypts data that was encrypted with a symmetric encryption KMS key. The KeyId is not required when decrypting with a symmetric encryption key, but it is a best practice.", "input": { "CiphertextBlob": "", - "KeyId": "0987dcba-09fe-87dc-65ba-ab0987654321", - "EncryptionAlgorithm": "RSAES_OAEP_SHA_256" + "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }, "output": { - "KeyId": "arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321", + "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "Plaintext": "", - "EncryptionAlgorithm": "RSAES_OAEP_SHA_256" + "EncryptionAlgorithm": "SYMMETRIC_DEFAULT", + "KeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6" } } ] @@ -1502,13 +1523,13 @@ "EncryptionContext": { "target": "com.amazonaws.kms#EncryptionContextType", "traits": { - "smithy.api#documentation": "

Specifies the encryption context to use when decrypting the data.\n An encryption context is valid only for cryptographic operations with a symmetric encryption KMS key. The standard asymmetric encryption algorithms and HMAC algorithms that KMS uses do not support an encryption context.

\n

An encryption context is a collection of non-secret key-value pairs that represent additional authenticated data. \nWhen you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is supported\nonly on operations with symmetric encryption KMS keys. On operations with symmetric encryption KMS keys, an encryption context is optional, but it is strongly recommended.

\n

For more information, see\nEncryption context in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Specifies the encryption context to use when decrypting the data.\n An encryption context is valid only for cryptographic operations with a symmetric encryption KMS key. The standard asymmetric encryption algorithms and HMAC algorithms that KMS uses do not support an encryption context.

\n

An encryption context is a collection of non-secret key-value pairs that represent additional authenticated data. \nWhen you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is supported\nonly on operations with symmetric encryption KMS keys. On operations with symmetric encryption KMS keys, an encryption context is optional, but it is strongly recommended.

\n

For more information, see\nEncryption context in the Key Management Service Developer Guide.

" } }, "GrantTokens": { "target": "com.amazonaws.kms#GrantTokenList", "traits": { - "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" } }, "KeyId": { @@ -1526,13 +1547,13 @@ "Recipient": { "target": "com.amazonaws.kms#RecipientInfo", "traits": { - "smithy.api#documentation": "

A signed attestation\n document from an Amazon Web Services Nitro enclave and the encryption algorithm to use with the\n enclave's public key. The only valid encryption algorithm is RSAES_OAEP_SHA_256.

\n

This parameter only supports attestation documents for Amazon Web Services Nitro Enclaves. To include this\n parameter, use the Amazon Web Services Nitro Enclaves SDK or any Amazon Web Services SDK.

\n

When you use this parameter, instead of returning the plaintext data, KMS encrypts the\n plaintext data with the public key in the attestation document, and returns the resulting\n ciphertext in the CiphertextForRecipient field in the response. This ciphertext\n can be decrypted only with the private key in the enclave. The Plaintext field in\n the response is null or empty.

\n

For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web Services Nitro Enclaves uses KMS in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A signed attestation\n document from an Amazon Web Services Nitro enclave or NitroTPM, and the encryption algorithm to use with the\n public key in the attestation document. The only valid encryption algorithm is RSAES_OAEP_SHA_256.

\n

This parameter supports the Amazon Web Services Nitro Enclaves SDK or any Amazon Web Services SDK for Amazon Web Services Nitro Enclaves. It supports \n any Amazon Web Services SDK for Amazon Web Services NitroTPM.\n

\n

When you use this parameter, instead of returning the plaintext data, KMS encrypts the\n plaintext data with the public key in the attestation document, and returns the resulting\n ciphertext in the CiphertextForRecipient field in the response. This ciphertext\n can be decrypted only with the private key in the attested environment. The Plaintext field in\n the response is null or empty.

\n

For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see Cryptographic attestation support in KMS in the Key Management Service Developer Guide.

" } }, "DryRun": { "target": "com.amazonaws.kms#NullableBooleanType", "traits": { - "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your KMS API calls in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your permissions in the Key Management Service Developer Guide.

" } } }, @@ -1564,7 +1585,13 @@ "CiphertextForRecipient": { "target": "com.amazonaws.kms#CiphertextType", "traits": { - "smithy.api#documentation": "

The plaintext data encrypted with the public key in the attestation document.

\n

This field is included in the response only when the Recipient parameter in\n the request includes a valid attestation document from an Amazon Web Services Nitro enclave.\n For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web Services Nitro Enclaves uses KMS in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

The plaintext data encrypted with the public key from the attestation document. This\n ciphertext can be decrypted only by using a private key from the attested environment.

\n

This field is included in the response only when the Recipient parameter in\n the request includes a valid attestation document from an Amazon Web Services Nitro enclave or NitroTPM.\n For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see Cryptographic attestation support in KMS in the Key Management Service Developer Guide.

" + } + }, + "KeyMaterialId": { + "target": "com.amazonaws.kms#BackingKeyIdType", + "traits": { + "smithy.api#documentation": "

The identifier of the key material used to decrypt the ciphertext. This field is present\n only when the operation uses a symmetric encryption KMS key. This field is omitted if the\n request includes the Recipient parameter.

" } } }, @@ -1595,7 +1622,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the specified alias.

\n \n

Adding, deleting, or updating an alias can allow or deny permission to the KMS key. For details, see ABAC for KMS in the Key Management Service Developer Guide.

\n
\n

Because an alias is not a property of a KMS key, you can delete and change the aliases of\n a KMS key without affecting the KMS key. Also, aliases do not appear in the response from the\n DescribeKey operation. To get the aliases of all KMS keys, use the ListAliases operation.

\n

Each KMS key can have multiple aliases. To change the alias of a KMS key, use DeleteAlias to delete the current alias and CreateAlias to\n create a new alias. To associate an existing alias with a different KMS key, call UpdateAlias.

\n

\n Cross-account use: No. You cannot perform this operation on an alias in a different Amazon Web Services account.

\n

\n Required permissions\n

\n \n

For details, see Controlling access to aliases in the\n Key Management Service Developer Guide.

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Deletes the specified alias.

\n \n

Adding, deleting, or updating an alias can allow or deny permission to the KMS key. For details, see ABAC for KMS in the Key Management Service Developer Guide.

\n
\n

Because an alias is not a property of a KMS key, you can delete and change the aliases of\n a KMS key without affecting the KMS key. Also, aliases do not appear in the response from the\n DescribeKey operation. To get the aliases of all KMS keys, use the ListAliases operation.

\n

Each KMS key can have multiple aliases. To change the alias of a KMS key, use DeleteAlias to delete the current alias and CreateAlias to\n create a new alias. To associate an existing alias with a different KMS key, call UpdateAlias.

\n

\n Cross-account use: No. You cannot perform this operation on an alias in a different Amazon Web Services account.

\n

\n Required permissions\n

\n \n

For details, see Controlling access to aliases in the\n Key Management Service Developer Guide.

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To delete an alias", @@ -1645,7 +1672,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes a custom key store. This operation does not affect any backing elements of the\n custom key store. It does not delete the CloudHSM cluster that is associated with an CloudHSM key\n store, or affect any users or keys in the cluster. For an external key store, it does not\n affect the external key store proxy, external key manager, or any external keys.

\n

This operation is part of the custom key stores feature in KMS, which\ncombines the convenience and extensive integration of KMS with the isolation and control of a\nkey store that you own and manage.

\n

The custom key store that you delete cannot contain any KMS keys. Before deleting the key store,\n verify that you will never need to use any of the KMS keys in the key store for any\n cryptographic operations. Then, use ScheduleKeyDeletion to delete the KMS keys from the\n key store. After the required waiting period expires and all KMS keys are deleted from the\n custom key store, use DisconnectCustomKeyStore to disconnect the key store\n from KMS. Then, you can delete the custom key store.

\n

For keys in an CloudHSM key store, the ScheduleKeyDeletion operation makes a\n best effort to delete the key material from the associated cluster. However, you might need to\n manually delete the orphaned key\n material from the cluster and its backups. KMS never creates, manages, or deletes\n cryptographic keys in the external key manager associated with an external key store. You must\n manage them using your external key manager tools.

\n

Instead of deleting the custom key store, consider using the DisconnectCustomKeyStore operation to disconnect the custom key store from its\n backing key store. While the key store is disconnected, you cannot create or use the KMS keys\n in the key store. But, you do not need to delete KMS keys and you can reconnect a disconnected\n custom key store at any time.

\n

If the operation succeeds, it returns a JSON object with no\nproperties.

\n

\n Cross-account use: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.

\n

\n Required permissions: kms:DeleteCustomKeyStore (IAM policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Deletes a custom key store. This operation does not affect any backing elements of the\n custom key store. It does not delete the CloudHSM cluster that is associated with an CloudHSM key\n store, or affect any users or keys in the cluster. For an external key store, it does not\n affect the external key store proxy, external key manager, or any external keys.

\n

This operation is part of the custom key stores feature in KMS, which\ncombines the convenience and extensive integration of KMS with the isolation and control of a\nkey store that you own and manage.

\n

The custom key store that you delete cannot contain any KMS keys. Before deleting the key store,\n verify that you will never need to use any of the KMS keys in the key store for any\n cryptographic operations. Then, use ScheduleKeyDeletion to delete the KMS keys from the\n key store. After the required waiting period expires and all KMS keys are deleted from the\n custom key store, use DisconnectCustomKeyStore to disconnect the key store\n from KMS. Then, you can delete the custom key store.

\n

For keys in an CloudHSM key store, the ScheduleKeyDeletion operation makes a\n best effort to delete the key material from the associated cluster. However, you might need to\n manually delete the orphaned key\n material from the cluster and its backups. KMS never creates, manages, or deletes\n cryptographic keys in the external key manager associated with an external key store. You must\n manage them using your external key manager tools.

\n

Instead of deleting the custom key store, consider using the DisconnectCustomKeyStore operation to disconnect the custom key store from its\n backing key store. While the key store is disconnected, you cannot create or use the KMS keys\n in the key store. But, you do not need to delete KMS keys and you can reconnect a disconnected\n custom key store at any time.

\n

If the operation succeeds, it returns a JSON object with no\nproperties.

\n

\n Cross-account use: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.

\n

\n Required permissions: kms:DeleteCustomKeyStore (IAM policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To delete a custom key store from AWS KMS", @@ -1686,7 +1713,7 @@ "target": "com.amazonaws.kms#DeleteImportedKeyMaterialRequest" }, "output": { - "target": "smithy.api#Unit" + "target": "com.amazonaws.kms#DeleteImportedKeyMaterialResponse" }, "errors": [ { @@ -1709,13 +1736,14 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes key material that was previously imported. This operation makes the specified KMS\n key temporarily unusable. To restore the usability of the KMS key, reimport the same key\n material. For more information about importing key material into KMS, see Importing Key Material\n in the Key Management Service Developer Guide.

\n

When the specified KMS key is in the PendingDeletion state, this operation\n does not change the KMS key's state. Otherwise, it changes the KMS key's state to\n PendingImport.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:DeleteImportedKeyMaterial (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Deletes key material that was previously imported. This operation makes the specified KMS\n key temporarily unusable. To restore the usability of the KMS key, reimport the same key\n material. For more information about importing key material into KMS, see Importing Key Material\n in the Key Management Service Developer Guide.

\n

When the specified KMS key is in the PendingDeletion state, this operation\n does not change the KMS key's state. Otherwise, it changes the KMS key's state to\n PendingImport.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:DeleteImportedKeyMaterial (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To delete imported key material", "documentation": "The following example deletes the imported key material from the specified KMS key.", "input": { - "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab" + "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", + "KeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6" } } ] @@ -1730,12 +1758,38 @@ "smithy.api#documentation": "

Identifies the KMS key from which you are deleting imported key material. The\n Origin of the KMS key must be EXTERNAL.

\n

Specify the key ID or key ARN of the KMS key.

\n

For example:

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
\n

To get the key ID and key ARN for a KMS key, use ListKeys or DescribeKey.

", "smithy.api#required": {} } + }, + "KeyMaterialId": { + "target": "com.amazonaws.kms#BackingKeyIdType", + "traits": { + "smithy.api#documentation": "

Identifies the imported key material you are deleting.

\n \n

If no KeyMaterialId is specified, KMS deletes the current key material.

\n
\n

To get the list of key material IDs associated with a KMS key, use ListKeyRotations.

" + } } }, "traits": { "smithy.api#input": {} } }, + "com.amazonaws.kms#DeleteImportedKeyMaterialResponse": { + "type": "structure", + "members": { + "KeyId": { + "target": "com.amazonaws.kms#KeyIdType", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (key ARN) of the KMS key from which the key material was deleted.

" + } + }, + "KeyMaterialId": { + "target": "com.amazonaws.kms#BackingKeyIdResponseType", + "traits": { + "smithy.api#documentation": "

Identifies the deleted key material.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.kms#DependencyTimeoutException": { "type": "structure", "members": { @@ -1753,6 +1807,149 @@ "smithy.api#httpError": 503 } }, + "com.amazonaws.kms#DeriveSharedSecret": { + "type": "operation", + "input": { + "target": "com.amazonaws.kms#DeriveSharedSecretRequest" + }, + "output": { + "target": "com.amazonaws.kms#DeriveSharedSecretResponse" + }, + "errors": [ + { + "target": "com.amazonaws.kms#DependencyTimeoutException" + }, + { + "target": "com.amazonaws.kms#DisabledException" + }, + { + "target": "com.amazonaws.kms#DryRunOperationException" + }, + { + "target": "com.amazonaws.kms#InvalidGrantTokenException" + }, + { + "target": "com.amazonaws.kms#InvalidKeyUsageException" + }, + { + "target": "com.amazonaws.kms#KeyUnavailableException" + }, + { + "target": "com.amazonaws.kms#KMSInternalException" + }, + { + "target": "com.amazonaws.kms#KMSInvalidStateException" + }, + { + "target": "com.amazonaws.kms#NotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "

Derives a shared secret using a key agreement algorithm.

\n \n

You must use an asymmetric NIST-recommended elliptic curve (ECC) or SM2 (China Regions\n only) KMS key pair with a KeyUsage\n value of KEY_AGREEMENT to call DeriveSharedSecret.

\n
\n

DeriveSharedSecret uses the Elliptic Curve Cryptography Cofactor Diffie-Hellman Primitive (ECDH) to establish a\n key agreement between two peers by deriving a shared secret from their elliptic curve\n public-private key pairs. You can use the raw shared secret that DeriveSharedSecret returns to\n derive a symmetric key that can encrypt and decrypt data that is sent between the two peers,\n or that can generate and verify HMACs. KMS recommends that you follow NIST\n recommendations for key derivation when using the raw shared secret to derive a\n symmetric key.

\n

The following workflow demonstrates how to establish key agreement over an insecure\n communication channel using DeriveSharedSecret.

\n
    \n
  1. \n

    \n Alice calls CreateKey to create an\n asymmetric KMS key pair with a KeyUsage value of\n KEY_AGREEMENT.

    \n

    The asymmetric KMS key must use a NIST-recommended elliptic curve (ECC) or SM2 (China\n Regions only) key spec.

    \n
  2. \n
  3. \n

    \n Bob creates an elliptic curve key pair.

    \n

    Bob can call CreateKey to create an asymmetric KMS key pair or\n generate a key pair outside of KMS. Bob's key pair must use the same NIST-recommended\n elliptic curve (ECC) or SM2 (China Regions ony) curve as Alice.

    \n
  4. \n
  5. \n

    Alice and Bob exchange their public keys through an\n insecure communication channel (like the internet).

    \n

    Use GetPublicKey to download the public key of your asymmetric KMS\n key pair.

    \n \n

    KMS strongly recommends verifying that the public key you receive came from the\n expected party before using it to derive a shared secret.

    \n
    \n
  6. \n
  7. \n

    \n Alice calls DeriveSharedSecret.

    \n

    KMS uses the private key from the KMS key pair generated in Step 1, Bob's public key, and the Elliptic Curve Cryptography Cofactor\n Diffie-Hellman Primitive to derive the shared secret. The private key in your KMS key pair\n never leaves KMS unencrypted. DeriveSharedSecret returns the raw shared secret.

    \n
  8. \n
  9. \n

    \n Bob uses the Elliptic Curve Cryptography Cofactor\n Diffie-Hellman Primitive to calculate the same raw secret using his private key and\n Alice's public key.

    \n
  10. \n
\n

To derive a shared secret you must provide a key agreement algorithm, the private key of\n the caller's asymmetric NIST-recommended elliptic curve or SM2 (China Regions only) KMS key\n pair, and the public key from your peer's NIST-recommended elliptic curve or SM2 (China\n Regions only) key pair. The public key can be from another asymmetric KMS key pair or from a\n key pair generated outside of KMS, but both key pairs must be on the same elliptic\n curve.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:DeriveSharedSecret (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#examples": [ + { + "title": "To derive a shared secret", + "documentation": "The following example derives a shared secret using a key agreement algorithm.", + "input": { + "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", + "KeyAgreementAlgorithm": "ECDH", + "PublicKey": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvH3Yj0wbkLEpUl95Cv1cJVjsVNSjwGq3tCLnzXfhVwVvmzGN8pYj3U8nKwgouaHbBWNJYjP5VutbbkKS4Kv4GojwZBJyHN17kmxo8yTjRmjR15SKIQ8cqRA2uaERMLnpztIXdZp232PQPbWGxDyXYJ0aJ5EFSag" + }, + "output": { + "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", + "SharedSecret": "MEYCIQCKZLWyTk5runarx6XiAkU9gv3lbwPO/pHa+DXFehzdDwIhANwpsIV2g/9SPWLLsF6p/hiSskuIXMTRwqrMdVKWTMHG", + "KeyAgreementAlgorithm": "ECDH", + "KeyOrigin": "AWS_KMS" + } + } + ] + } + }, + "com.amazonaws.kms#DeriveSharedSecretRequest": { + "type": "structure", + "members": { + "KeyId": { + "target": "com.amazonaws.kms#KeyIdType", + "traits": { + "smithy.api#documentation": "

Identifies an asymmetric NIST-recommended ECC or SM2 (China Regions only) KMS key. KMS\n uses the private key in the specified key pair to derive the shared secret. The key usage of\n the KMS key must be KEY_AGREEMENT. To find the KeyUsage of a KMS\n key, use the DescribeKey operation.

\n

To specify a KMS key, use its key ID, key ARN, alias name, or alias ARN. When using an alias name, prefix it with \"alias/\". To specify a KMS key in a different Amazon Web Services account, you must use the key ARN or alias ARN.

\n

For example:

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Alias name: alias/ExampleAlias\n

    \n
  • \n
  • \n

    Alias ARN: arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias\n

    \n
  • \n
\n

To get the key ID and key ARN for a KMS key, use ListKeys or DescribeKey. To get the alias name and alias ARN, use ListAliases.

", + "smithy.api#required": {} + } + }, + "KeyAgreementAlgorithm": { + "target": "com.amazonaws.kms#KeyAgreementAlgorithmSpec", + "traits": { + "smithy.api#documentation": "

Specifies the key agreement algorithm used to derive the shared secret. The only valid\n value is ECDH.

", + "smithy.api#required": {} + } + }, + "PublicKey": { + "target": "com.amazonaws.kms#PublicKeyType", + "traits": { + "smithy.api#documentation": "

Specifies the public key in your peer's NIST-recommended elliptic curve (ECC) or SM2\n (China Regions only) key pair.

\n

The public key must be a DER-encoded X.509 public key, also known as\n SubjectPublicKeyInfo (SPKI), as defined in RFC 5280.

\n

\n GetPublicKey returns the public key of an asymmetric KMS key pair in the\n required DER-encoded format.

\n \n

If you use Amazon Web Services CLI version 1, you must provide the DER-encoded X.509 public key in a file.\n Otherwise, the Amazon Web Services CLI Base64-encodes the public key a second time, resulting in a\n ValidationException.

\n
\n

You can specify the public key as binary data in a file using fileb\n (fileb://) or in-line using a Base64 encoded string.

", + "smithy.api#required": {} + } + }, + "GrantTokens": { + "target": "com.amazonaws.kms#GrantTokenList", + "traits": { + "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" + } + }, + "DryRun": { + "target": "com.amazonaws.kms#NullableBooleanType", + "traits": { + "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your permissions in the Key Management Service Developer Guide.

" + } + }, + "Recipient": { + "target": "com.amazonaws.kms#RecipientInfo", + "traits": { + "smithy.api#documentation": "

A signed attestation document from\n an Amazon Web Services Nitro enclave or NitroTPM, and the encryption algorithm to use with the public key in the attestation document. The\n only valid encryption algorithm is RSAES_OAEP_SHA_256.

\n

This parameter only supports attestation documents for Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM. To call\n DeriveSharedSecret generate an attestation document use either Amazon Web Services Nitro Enclaves SDK for an Amazon Web Services Nitro Enclaves or\n Amazon Web Services NitroTPM tools for Amazon Web Services NitroTPM. Then use the Recipient parameter from any Amazon Web Services SDK to provide the\n attestation document for the attested environment.

\n

When you use this parameter, instead of returning a plaintext copy of the shared secret,\n KMS encrypts the plaintext shared secret under the public key in the attestation document,\n and returns the resulting ciphertext in the CiphertextForRecipient field in the\n response. This ciphertext can be decrypted only with the private key in the attested environment. The\n CiphertextBlob field in the response contains the encrypted shared secret\n derived from the KMS key specified by the KeyId parameter and public key\n specified by the PublicKey parameter. The SharedSecret field in the\n response is null or empty.

\n

For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see Cryptographic attestation support in KMS in the Key Management Service Developer Guide.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.kms#DeriveSharedSecretResponse": { + "type": "structure", + "members": { + "KeyId": { + "target": "com.amazonaws.kms#KeyIdType", + "traits": { + "smithy.api#documentation": "

Identifies the KMS key used to derive the shared secret.

" + } + }, + "SharedSecret": { + "target": "com.amazonaws.kms#PlaintextType", + "traits": { + "smithy.api#documentation": "

The raw secret derived from the specified key agreement algorithm, private key in the\n asymmetric KMS key, and your peer's public key.

\n

If the response includes the CiphertextForRecipient field, the\n SharedSecret field is null or empty.

" + } + }, + "CiphertextForRecipient": { + "target": "com.amazonaws.kms#CiphertextType", + "traits": { + "smithy.api#documentation": "

The plaintext shared secret encrypted with the public key from the attestation document. This\n ciphertext can be decrypted only by using a private key from the attested environment.

\n

This field is included in the response only when the Recipient parameter in\n the request includes a valid attestation document from an Amazon Web Services Nitro enclave or NitroTPM.\n For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see Cryptographic attestation support in KMS in the Key Management Service Developer Guide.

" + } + }, + "KeyAgreementAlgorithm": { + "target": "com.amazonaws.kms#KeyAgreementAlgorithmSpec", + "traits": { + "smithy.api#documentation": "

Identifies the key agreement algorithm used to derive the shared secret.

" + } + }, + "KeyOrigin": { + "target": "com.amazonaws.kms#OriginType", + "traits": { + "smithy.api#documentation": "

The source of the key material for the specified KMS key.

\n

When this value is AWS_KMS, KMS created the key material. When this value\n is EXTERNAL, the key material was imported or the KMS key doesn't have any key\n material.

\n

The only valid values for DeriveSharedSecret are AWS_KMS and\n EXTERNAL. DeriveSharedSecret does not support KMS keys with a\n KeyOrigin value of AWS_CLOUDHSM or\n EXTERNAL_KEY_STORE.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.kms#DescribeCustomKeyStores": { "type": "operation", "input": { @@ -1773,7 +1970,7 @@ } ], "traits": { - "smithy.api#documentation": "

Gets information about custom key stores in the account and Region.

\n

This operation is part of the custom key stores feature in KMS, which\ncombines the convenience and extensive integration of KMS with the isolation and control of a\nkey store that you own and manage.

\n

By default, this operation returns information about all custom key stores in the account\n and Region. To get only information about a particular custom key store, use either the\n CustomKeyStoreName or CustomKeyStoreId parameter (but not\n both).

\n

To determine whether the custom key store is connected to its CloudHSM cluster or external\n key store proxy, use the ConnectionState element in the response. If an attempt\n to connect the custom key store failed, the ConnectionState value is\n FAILED and the ConnectionErrorCode element in the response\n indicates the cause of the failure. For help interpreting the\n ConnectionErrorCode, see CustomKeyStoresListEntry.

\n

Custom key stores have a DISCONNECTED connection state if the key store has\n never been connected or you used the DisconnectCustomKeyStore operation to\n disconnect it. Otherwise, the connection state is CONNECTED. If your custom key store\n connection state is CONNECTED but you are having trouble using it, verify that\n the backing store is active and available. For an CloudHSM key store, verify that the associated\n CloudHSM cluster is active and contains the minimum number of HSMs required for the operation, if\n any. For an external key store, verify that the external key store proxy and its associated\n external key manager are reachable and enabled.

\n

For help repairing your CloudHSM key store, see the Troubleshooting CloudHSM key stores. For help\n repairing your external key store, see the Troubleshooting external key stores.\n Both topics are in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.

\n

\n Required permissions: kms:DescribeCustomKeyStores (IAM policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Gets information about custom key stores in the account and Region.

\n

This operation is part of the custom key stores feature in KMS, which\ncombines the convenience and extensive integration of KMS with the isolation and control of a\nkey store that you own and manage.

\n

By default, this operation returns information about all custom key stores in the account\n and Region. To get only information about a particular custom key store, use either the\n CustomKeyStoreName or CustomKeyStoreId parameter (but not\n both).

\n

To determine whether the custom key store is connected to its CloudHSM cluster or external\n key store proxy, use the ConnectionState element in the response. If an attempt\n to connect the custom key store failed, the ConnectionState value is\n FAILED and the ConnectionErrorCode element in the response\n indicates the cause of the failure. For help interpreting the\n ConnectionErrorCode, see CustomKeyStoresListEntry.

\n

Custom key stores have a DISCONNECTED connection state if the key store has\n never been connected or you used the DisconnectCustomKeyStore operation to\n disconnect it. Otherwise, the connection state is CONNECTED. If your custom key store\n connection state is CONNECTED but you are having trouble using it, verify that\n the backing store is active and available. For an CloudHSM key store, verify that the associated\n CloudHSM cluster is active and contains the minimum number of HSMs required for the operation, if\n any. For an external key store, verify that the external key store proxy and its associated\n external key manager are reachable and enabled.

\n

For help repairing your CloudHSM key store, see the Troubleshooting CloudHSM key stores. For help\n repairing your external key store, see the Troubleshooting external key stores.\n Both topics are in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.

\n

\n Required permissions: kms:DescribeCustomKeyStores (IAM policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To get detailed information about custom key stores in the account and Region", @@ -1873,40 +2070,68 @@ } ], "traits": { - "smithy.api#documentation": "

Provides detailed information about a KMS key. You can run DescribeKey on a\n customer managed\n key or an Amazon Web Services managed key.

\n

This detailed information includes the key ARN, creation date (and deletion date, if\n applicable), the key state, and the origin and expiration date (if any) of the key material.\n It includes fields, like KeySpec, that help you distinguish different types of\n KMS keys. It also displays the key usage (encryption, signing, or generating and verifying\n MACs) and the algorithms that the KMS key supports.

\n

For multi-Region keys, DescribeKey displays the primary key and all\n related replica keys. For KMS keys in CloudHSM key stores, it includes information\n about the key store, such as the key store ID and the CloudHSM cluster ID. For KMS keys in external key stores,\n it includes the custom key store ID and the ID of the external key.

\n

\n DescribeKey does not return the following information:

\n
    \n
  • \n

    Aliases associated with the KMS key. To get this information, use ListAliases.

    \n
  • \n
  • \n

    Whether automatic key rotation is enabled on the KMS key. To get this information, use\n GetKeyRotationStatus. Also, some key states prevent a KMS key from\n being automatically rotated. For details, see How Automatic Key Rotation\n Works in the Key Management Service Developer Guide.

    \n
  • \n
  • \n

    Tags on the KMS key. To get this information, use ListResourceTags.

    \n
  • \n
  • \n

    Key policies and grants on the KMS key. To get this information, use GetKeyPolicy and ListGrants.

    \n
  • \n
\n

In general, DescribeKey is a non-mutating operation. It returns data about\n KMS keys, but doesn't change them. However, Amazon Web Services services use DescribeKey to\n create Amazon Web Services\n managed keys from a predefined Amazon Web Services alias with no key\n ID.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:DescribeKey (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Provides detailed information about a KMS key. You can run DescribeKey on a\n customer\n managed key or an Amazon Web Services managed key.

\n

This detailed information includes the key ARN, creation date (and deletion date, if\n applicable), the key state, and the origin and expiration date (if any) of the key material.\n It includes fields, like KeySpec, that help you distinguish different types of\n KMS keys. It also displays the key usage (encryption, signing, or generating and verifying\n MACs) and the algorithms that the KMS key supports.

\n

For multi-Region keys, DescribeKey displays the primary key and all\n related replica keys. For KMS keys in CloudHSM key stores, it includes information\n about the key store, such as the key store ID and the CloudHSM cluster ID. For KMS keys in external key stores,\n it includes the custom key store ID and the ID of the external key.

\n

\n DescribeKey does not return the following information:

\n
    \n
  • \n

    Aliases associated with the KMS key. To get this information, use ListAliases.

    \n
  • \n
  • \n

    Whether automatic key rotation is enabled on the KMS key. To get this information, use\n GetKeyRotationStatus. Also, some key states prevent a KMS key from\n being automatically rotated. For details, see How key rotation\n works in the Key Management Service Developer Guide.

    \n
  • \n
  • \n

    Tags on the KMS key. To get this information, use ListResourceTags.

    \n
  • \n
  • \n

    Key policies and grants on the KMS key. To get this information, use GetKeyPolicy and ListGrants.

    \n
  • \n
\n

In general, DescribeKey is a non-mutating operation. It returns data about\n KMS keys, but doesn't change them. However, Amazon Web Services services use DescribeKey to\n create Amazon Web Services\n managed keys from a predefined Amazon Web Services alias with no key\n ID.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:DescribeKey (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { - "title": "To get details about an RSA asymmetric KMS key", - "documentation": "The following example gets metadata for an asymmetric RSA KMS key used for signing and verification.", + "title": "To get details about a KMS key in an AWS CloudHSM key store", + "documentation": "The following example gets the metadata of a KMS key in an AWS CloudHSM key store.", "input": { - "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab" + "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }, "output": { "KeyMetadata": { - "AWSAccountId": "111122223333", + "AWSAccountId": "123456789012", "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", - "Arn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", - "CreationDate": 1.571767572317E9, - "CustomerMasterKeySpec": "RSA_2048", - "Enabled": false, - "Description": "", - "KeyState": "Disabled", - "Origin": "AWS_KMS", + "Arn": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab", + "CreationDate": 1.646160362664E9, + "Description": "CloudHSM key store test key", + "Enabled": true, "MultiRegion": false, "KeyManager": "CUSTOMER", - "KeySpec": "RSA_2048", - "KeyUsage": "SIGN_VERIFY", - "SigningAlgorithms": [ - "RSASSA_PKCS1_V1_5_SHA_256", - "RSASSA_PKCS1_V1_5_SHA_384", - "RSASSA_PKCS1_V1_5_SHA_512", - "RSASSA_PSS_SHA_256", - "RSASSA_PSS_SHA_384", - "RSASSA_PSS_SHA_512" + "KeyState": "Enabled", + "KeyUsage": "ENCRYPT_DECRYPT", + "Origin": "AWS_CLOUDHSM", + "CloudHsmClusterId": "cluster-234abcdefABC", + "CustomKeyStoreId": "cks-1234567890abcdef0", + "KeySpec": "SYMMETRIC_DEFAULT", + "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", + "EncryptionAlgorithms": [ + "SYMMETRIC_DEFAULT" ] } } }, + { + "title": "To get details about a KMS key in an external key store", + "documentation": "The following example gets the metadata of a KMS key in an external key store.", + "input": { + "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" + }, + "output": { + "KeyMetadata": { + "Arn": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab", + "AWSAccountId": "123456789012", + "CreationDate": 1.646160362664E9, + "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", + "CustomKeyStoreId": "cks-1234567890abcdef0", + "Description": "External key store test key", + "Enabled": true, + "EncryptionAlgorithms": [ + "SYMMETRIC_DEFAULT" + ], + "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", + "KeyManager": "CUSTOMER", + "KeySpec": "SYMMETRIC_DEFAULT", + "KeyState": "Enabled", + "KeyUsage": "ENCRYPT_DECRYPT", + "MultiRegion": false, + "Origin": "EXTERNAL_KEY_STORE", + "XksKeyConfiguration": { + "Id": "bb8562717f809024" + } + } + } + }, { "title": "To get details about a multi-Region key", "documentation": "The following example gets metadata for a multi-Region replica key. This multi-Region key is a symmetric encryption key. DescribeKey returns information about the primary key and all of its replicas.", @@ -1927,6 +2152,7 @@ "KeyUsage": "ENCRYPT_DECRYPT", "Origin": "AWS_KMS", "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", + "CurrentKeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6", "EncryptionAlgorithms": [ "SYMMETRIC_DEFAULT" ], @@ -1981,64 +2207,36 @@ } }, { - "title": "To get details about a KMS key in an AWS CloudHSM key store", - "documentation": "The following example gets the metadata of a KMS key in an AWS CloudHSM key store.", + "title": "To get details about an RSA asymmetric KMS key", + "documentation": "The following example gets metadata for an asymmetric RSA KMS key used for signing and verification.", "input": { - "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" + "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab" }, "output": { "KeyMetadata": { - "AWSAccountId": "123456789012", + "AWSAccountId": "111122223333", "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", - "Arn": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab", - "CreationDate": 1.646160362664E9, - "Description": "CloudHSM key store test key", - "Enabled": true, + "Arn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", + "CreationDate": 1.571767572317E9, + "CustomerMasterKeySpec": "RSA_2048", + "Enabled": false, + "Description": "", + "KeyState": "Disabled", + "Origin": "AWS_KMS", "MultiRegion": false, "KeyManager": "CUSTOMER", - "KeyState": "Enabled", - "KeyUsage": "ENCRYPT_DECRYPT", - "Origin": "AWS_CLOUDHSM", - "CloudHsmClusterId": "cluster-234abcdefABC", - "CustomKeyStoreId": "cks-1234567890abcdef0", - "KeySpec": "SYMMETRIC_DEFAULT", - "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", - "EncryptionAlgorithms": [ - "SYMMETRIC_DEFAULT" + "KeySpec": "RSA_2048", + "KeyUsage": "SIGN_VERIFY", + "SigningAlgorithms": [ + "RSASSA_PKCS1_V1_5_SHA_256", + "RSASSA_PKCS1_V1_5_SHA_384", + "RSASSA_PKCS1_V1_5_SHA_512", + "RSASSA_PSS_SHA_256", + "RSASSA_PSS_SHA_384", + "RSASSA_PSS_SHA_512" ] } } - }, - { - "title": "To get details about a KMS key in an external key store", - "documentation": "The following example gets the metadata of a KMS key in an external key store.", - "input": { - "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" - }, - "output": { - "KeyMetadata": { - "Arn": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab", - "AWSAccountId": "123456789012", - "CreationDate": 1.646160362664E9, - "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", - "CustomKeyStoreId": "cks-1234567890abcdef0", - "Description": "External key store test key", - "Enabled": true, - "EncryptionAlgorithms": [ - "SYMMETRIC_DEFAULT" - ], - "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", - "KeyManager": "CUSTOMER", - "KeySpec": "SYMMETRIC_DEFAULT", - "KeyState": "Enabled", - "KeyUsage": "ENCRYPT_DECRYPT", - "MultiRegion": false, - "Origin": "EXTERNAL_KEY_STORE", - "XksKeyConfiguration": { - "Id": "bb8562717f809024" - } - } - } } ] } @@ -2049,14 +2247,14 @@ "KeyId": { "target": "com.amazonaws.kms#KeyIdType", "traits": { - "smithy.api#documentation": "

Describes the specified KMS key.

\n

If you specify a predefined Amazon Web Services alias (an Amazon Web Services alias with no key ID), KMS associates\n the alias with an Amazon Web Services managed key and returns its\n KeyId and Arn in the response.

\n

To specify a KMS key, use its key ID, key ARN, alias name, or alias ARN. When using an alias name, prefix it with \"alias/\". To specify a KMS key in a different Amazon Web Services account, you must use the key ARN or alias ARN.

\n

For example:

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Alias name: alias/ExampleAlias\n

    \n
  • \n
  • \n

    Alias ARN: arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias\n

    \n
  • \n
\n

To get the key ID and key ARN for a KMS key, use ListKeys or DescribeKey. To get the alias name and alias ARN, use ListAliases.

", + "smithy.api#documentation": "

Describes the specified KMS key.

\n

If you specify a predefined Amazon Web Services alias (an Amazon Web Services alias with no key ID), KMS associates\n the alias with an Amazon Web Services managed key and returns its KeyId and Arn in the\n response.

\n

To specify a KMS key, use its key ID, key ARN, alias name, or alias ARN. When using an alias name, prefix it with \"alias/\". To specify a KMS key in a different Amazon Web Services account, you must use the key ARN or alias ARN.

\n

For example:

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Alias name: alias/ExampleAlias\n

    \n
  • \n
  • \n

    Alias ARN: arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias\n

    \n
  • \n
\n

To get the key ID and key ARN for a KMS key, use ListKeys or DescribeKey. To get the alias name and alias ARN, use ListAliases.

", "smithy.api#required": {} } }, "GrantTokens": { "target": "com.amazonaws.kms#GrantTokenList", "traits": { - "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" } } }, @@ -2113,7 +2311,7 @@ } ], "traits": { - "smithy.api#documentation": "

Sets the state of a KMS key to disabled. This change temporarily prevents use of the KMS\n key for cryptographic operations.

\n

For more information about how key state affects the use of a KMS key, see\n Key states of KMS keys in the \n Key Management Service Developer Guide\n .

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:DisableKey (key policy)

\n

\n Related operations: EnableKey\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Sets the state of a KMS key to disabled. This change temporarily prevents use of the KMS\n key for cryptographic operations.

\n

The KMS key that you use for this operation must be in a compatible key state. For more\n information about how key state affects the use of a KMS key, see Key states of KMS keys in the\n \n Key Management Service Developer Guide\n .

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:DisableKey (key policy)

\n

\n Related operations: EnableKey\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To disable a KMS key", @@ -2172,7 +2370,7 @@ } ], "traits": { - "smithy.api#documentation": "

Disables automatic\n rotation of the key material of the specified symmetric encryption KMS key.

\n

Automatic key rotation is supported only on symmetric encryption KMS keys.\n You cannot enable automatic rotation of asymmetric KMS keys, HMAC KMS keys, KMS keys with imported key material, or KMS keys in a custom key store. To enable or disable automatic rotation of a set of related multi-Region keys, set the property on the primary key.

\n

You can enable (EnableKeyRotation) and disable automatic rotation of the\n key material in customer managed KMS keys. Key material rotation of Amazon Web Services managed KMS keys is not\n configurable. KMS always rotates the key material for every year. Rotation of Amazon Web Services owned KMS\n keys varies.

\n \n

In May 2022, KMS changed the rotation schedule for Amazon Web Services managed keys from every three\n years to every year. For details, see EnableKeyRotation.

\n
\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:DisableKeyRotation (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Disables automatic rotation of the key material of the specified symmetric encryption KMS\n key.

\n

Automatic key rotation is supported only on symmetric encryption KMS keys.\n You cannot enable automatic rotation of asymmetric KMS keys, HMAC KMS keys, KMS keys with imported key material, or KMS keys in a custom key store. To enable or disable automatic rotation of a set of related multi-Region keys, set the property on the primary key.

\n

You can enable (EnableKeyRotation) and disable automatic rotation of the\n key material in customer managed KMS keys. Key material rotation of Amazon Web Services managed KMS keys is not\n configurable. KMS always rotates the key material for every year. Rotation of Amazon Web Services owned KMS\n keys varies.

\n \n

In May 2022, KMS changed the rotation schedule for Amazon Web Services managed keys from every three\n years to every year. For details, see EnableKeyRotation.

\n
\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:DisableKeyRotation (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To disable automatic rotation of key material", @@ -2190,7 +2388,7 @@ "KeyId": { "target": "com.amazonaws.kms#KeyIdType", "traits": { - "smithy.api#documentation": "

Identifies a symmetric encryption KMS key. You cannot enable or disable automatic rotation\n of asymmetric KMS keys, HMAC\n KMS keys, KMS keys with imported key material, or KMS keys in a\n custom key store.

\n

Specify the key ID or key ARN of the KMS key.

\n

For example:

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
\n

To get the key ID and key ARN for a KMS key, use ListKeys or DescribeKey.

", + "smithy.api#documentation": "

Identifies a symmetric encryption KMS key. You cannot enable or disable automatic rotation\n of asymmetric KMS keys, HMAC\n KMS keys, KMS keys with imported key material, or KMS keys in a\n custom key store.

\n

Specify the key ID or key ARN of the KMS key.

\n

For example:

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
\n

To get the key ID and key ARN for a KMS key, use ListKeys or DescribeKey.

", "smithy.api#required": {} } } @@ -2236,7 +2434,7 @@ } ], "traits": { - "smithy.api#documentation": "

Disconnects the custom key store from its backing key store. This operation disconnects an\n CloudHSM key store from its associated CloudHSM cluster or disconnects an external key store from\n the external key store proxy that communicates with your external key manager.

\n

This operation is part of the custom key stores feature in KMS, which\ncombines the convenience and extensive integration of KMS with the isolation and control of a\nkey store that you own and manage.

\n

While a custom key store is disconnected, you can manage the custom key store and its KMS\n keys, but you cannot create or use its KMS keys. You can reconnect the custom key store at any\n time.

\n \n

While a custom key store is disconnected, all attempts to create KMS keys in the custom key store or to use existing KMS keys in cryptographic operations will\n fail. This action can prevent users from storing and accessing sensitive data.

\n
\n

When you disconnect a custom key store, its ConnectionState changes to\n Disconnected. To find the connection state of a custom key store, use the DescribeCustomKeyStores operation. To reconnect a custom key store, use the\n ConnectCustomKeyStore operation.

\n

If the operation succeeds, it returns a JSON object with no\nproperties.

\n

\n Cross-account use: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.

\n

\n Required permissions: kms:DisconnectCustomKeyStore (IAM policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Disconnects the custom key store from its backing key store. This operation disconnects an\n CloudHSM key store from its associated CloudHSM cluster or disconnects an external key store from\n the external key store proxy that communicates with your external key manager.

\n

This operation is part of the custom key stores feature in KMS, which\ncombines the convenience and extensive integration of KMS with the isolation and control of a\nkey store that you own and manage.

\n

While a custom key store is disconnected, you can manage the custom key store and its KMS\n keys, but you cannot create or use its KMS keys. You can reconnect the custom key store at any\n time.

\n \n

While a custom key store is disconnected, all attempts to create KMS keys in the custom key store or to use existing KMS keys in cryptographic operations will\n fail. This action can prevent users from storing and accessing sensitive data.

\n
\n

When you disconnect a custom key store, its ConnectionState changes to\n Disconnected. To find the connection state of a custom key store, use the DescribeCustomKeyStores operation. To reconnect a custom key store, use the\n ConnectCustomKeyStore operation.

\n

If the operation succeeds, it returns a JSON object with no\nproperties.

\n

\n Cross-account use: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.

\n

\n Required permissions: kms:DisconnectCustomKeyStore (IAM policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To disconnect a custom key store from its CloudHSM cluster", @@ -2317,7 +2515,7 @@ } ], "traits": { - "smithy.api#documentation": "

Sets the key state of a KMS key to enabled. This allows you to use the KMS key for\n cryptographic operations.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:EnableKey (key policy)

\n

\n Related operations: DisableKey\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Sets the key state of a KMS key to enabled. This allows you to use the KMS key for\n cryptographic operations.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:EnableKey (key policy)

\n

\n Related operations: DisableKey\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To enable a KMS key", @@ -2376,7 +2574,7 @@ } ], "traits": { - "smithy.api#documentation": "

Enables automatic rotation\n of the key material of the specified symmetric encryption KMS key.

\n

By default, when you enable automatic rotation of a customer managed KMS key, KMS\n rotates the key material of the KMS key one year (approximately 365 days) from the enable date\n and every year thereafter. You can use the optional RotationPeriodInDays\n parameter to specify a custom rotation period when you enable key rotation, or you can use \n RotationPeriodInDays to modify the rotation period of a key that you previously \n enabled automatic key rotation on.

\n

You can monitor rotation of the key material\n for your KMS keys in CloudTrail and Amazon CloudWatch. To disable rotation of the key\n material in a customer managed KMS key, use the DisableKeyRotation\n operation. You can use the GetKeyRotationStatus operation to identify any in progress \n rotations. You can use the ListKeyRotations operation to view the details of\n completed rotations.

\n

Automatic key rotation is supported only on symmetric encryption KMS keys.\n You cannot enable automatic rotation of asymmetric KMS keys, HMAC KMS keys, KMS keys with imported key material, or KMS keys in a custom key store. To enable or disable automatic rotation of a set of related multi-Region keys, set the property on the primary key.

\n

You cannot enable or disable automatic rotation of Amazon Web Services managed KMS keys. KMS\n always rotates the key material of Amazon Web Services managed keys every year. Rotation of Amazon Web Services owned KMS\n keys is managed by the Amazon Web Services service that owns the key.

\n \n

In May 2022, KMS changed the rotation schedule for Amazon Web Services managed keys from every three\n years (approximately 1,095 days) to every year (approximately 365 days).

\n

New Amazon Web Services managed keys are automatically rotated one year after they are created, and\n approximately every year thereafter.

\n

Existing Amazon Web Services managed keys are automatically rotated one year after their most recent\n rotation, and every year thereafter.

\n
\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:EnableKeyRotation (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Enables automatic rotation of the key material of the specified symmetric encryption KMS\n key.

\n

By default, when you enable automatic rotation of a customer managed KMS key, KMS\n rotates the key material of the KMS key one year (approximately 365 days) from the enable date\n and every year thereafter. You can use the optional RotationPeriodInDays\n parameter to specify a custom rotation period when you enable key rotation, or you can use\n RotationPeriodInDays to modify the rotation period of a key that you previously\n enabled automatic key rotation on.

\n

You can monitor rotation of the key material for your KMS keys in CloudTrail and Amazon CloudWatch. To disable rotation of the key material in a customer managed KMS key, use\n the DisableKeyRotation operation. You can use the GetKeyRotationStatus operation to identify any in progress rotations. You can\n use the ListKeyRotations operation to view the details of completed\n rotations.

\n

Automatic key rotation is supported only on symmetric encryption KMS keys. You cannot enable automatic rotation of asymmetric KMS keys, HMAC KMS keys, KMS keys with imported key material, or KMS keys in a custom key store. To enable or disable automatic rotation of a set of related multi-Region keys, set the property on the primary key.

\n

You cannot enable or disable automatic rotation of Amazon Web Services managed KMS keys. KMS\n always rotates the key material of Amazon Web Services managed keys every year. Rotation of Amazon Web Services owned KMS\n keys is managed by the Amazon Web Services service that owns the key.

\n \n

In May 2022, KMS changed the rotation schedule for Amazon Web Services managed keys from every three\n years (approximately 1,095 days) to every year (approximately 365 days).

\n

New Amazon Web Services managed keys are automatically rotated one year after they are created, and\n approximately every year thereafter.

\n

Existing Amazon Web Services managed keys are automatically rotated one year after their most recent\n rotation, and every year thereafter.

\n
\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:EnableKeyRotation (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To enable automatic rotation of key material", @@ -2395,14 +2593,14 @@ "KeyId": { "target": "com.amazonaws.kms#KeyIdType", "traits": { - "smithy.api#documentation": "

Identifies a symmetric encryption KMS key. You cannot enable automatic rotation of asymmetric KMS keys, HMAC KMS keys, KMS keys with imported key material, or KMS keys in a custom key store. To enable or disable automatic rotation of a set of related multi-Region keys, set the property on the primary key.

\n

Specify the key ID or key ARN of the KMS key.

\n

For example:

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
\n

To get the key ID and key ARN for a KMS key, use ListKeys or DescribeKey.

", + "smithy.api#documentation": "

Identifies a symmetric encryption KMS key. You cannot enable automatic rotation of asymmetric KMS keys, HMAC KMS keys, KMS keys with imported key material, or KMS keys in a custom key store. To enable or disable automatic rotation of a set of related multi-Region keys, set the property on the primary key.

\n

Specify the key ID or key ARN of the KMS key.

\n

For example:

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
\n

To get the key ID and key ARN for a KMS key, use ListKeys or DescribeKey.

", "smithy.api#required": {} } }, "RotationPeriodInDays": { "target": "com.amazonaws.kms#RotationPeriodInDaysType", "traits": { - "smithy.api#documentation": "

Use this parameter to specify a custom period of time between each rotation date. If no\n value is specified, the default value is 365 days.

\n

The rotation period defines the number of days after you enable automatic key rotation\n that KMS will rotate your key material, and the number of days between each automatic\n rotation thereafter.

\n

You can use the \n kms:RotationPeriodInDays\n condition key to further constrain the \n values that principals can specify in the RotationPeriodInDays parameter.

\n

" + "smithy.api#documentation": "

Use this parameter to specify a custom period of time between each rotation date. If no\n value is specified, the default value is 365 days.

\n

The rotation period defines the number of days after you enable automatic key rotation\n that KMS will rotate your key material, and the number of days between each automatic\n rotation thereafter.

\n

You can use the \n kms:RotationPeriodInDays\n condition key to further constrain the\n values that principals can specify in the RotationPeriodInDays parameter.

\n

" } } }, @@ -2448,7 +2646,7 @@ } ], "traits": { - "smithy.api#documentation": "

Encrypts plaintext of up to 4,096 bytes using a KMS key. You can use a symmetric or\n asymmetric KMS key with a KeyUsage of ENCRYPT_DECRYPT.

\n

You can use this operation to encrypt small amounts of arbitrary data, such as a personal\n identifier or database password, or other sensitive information. You don't need to use the\n Encrypt operation to encrypt a data key. The GenerateDataKey\n and GenerateDataKeyPair operations return a plaintext data key and an\n encrypted copy of that data key.

\n

If you use a symmetric encryption KMS key, you can use an encryption context to add\n additional security to your encryption operation. If you specify an\n EncryptionContext when encrypting data, you must specify the same encryption\n context (a case-sensitive exact match) when decrypting the data. Otherwise, the request to\n decrypt fails with an InvalidCiphertextException. For more information, see\n Encryption\n Context in the Key Management Service Developer Guide.

\n

If you specify an asymmetric KMS key, you must also specify the encryption algorithm. The\n algorithm must be compatible with the KMS key spec.

\n \n

When you use an asymmetric KMS key to encrypt or reencrypt data, be sure to record the KMS key and encryption algorithm that you choose. You will be required to provide the same KMS key and encryption algorithm when you decrypt the data. If the KMS key and algorithm do not match the values used to encrypt the data, the decrypt operation fails.

\n

You are not required to supply the key ID and encryption algorithm when you decrypt with symmetric encryption KMS keys because KMS stores this information in the ciphertext blob. KMS cannot store metadata in ciphertext generated with asymmetric keys. The standard format for asymmetric key ciphertext does not include configurable fields.

\n
\n

The maximum size of the data that you can encrypt varies with the type of KMS key and the\n encryption algorithm that you choose.

\n
    \n
  • \n

    Symmetric encryption KMS keys

    \n
      \n
    • \n

      \n SYMMETRIC_DEFAULT: 4096 bytes

      \n
    • \n
    \n
  • \n
  • \n

    \n RSA_2048\n

    \n
      \n
    • \n

      \n RSAES_OAEP_SHA_1: 214 bytes

      \n
    • \n
    • \n

      \n RSAES_OAEP_SHA_256: 190 bytes

      \n
    • \n
    \n
  • \n
  • \n

    \n RSA_3072\n

    \n
      \n
    • \n

      \n RSAES_OAEP_SHA_1: 342 bytes

      \n
    • \n
    • \n

      \n RSAES_OAEP_SHA_256: 318 bytes

      \n
    • \n
    \n
  • \n
  • \n

    \n RSA_4096\n

    \n
      \n
    • \n

      \n RSAES_OAEP_SHA_1: 470 bytes

      \n
    • \n
    • \n

      \n RSAES_OAEP_SHA_256: 446 bytes

      \n
    • \n
    \n
  • \n
  • \n

    \n SM2PKE: 1024 bytes (China Regions only)

    \n
  • \n
\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:Encrypt (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Encrypts plaintext of up to 4,096 bytes using a KMS key. You can use a symmetric or\n asymmetric KMS key with a KeyUsage of ENCRYPT_DECRYPT.

\n

You can use this operation to encrypt small amounts of arbitrary data, such as a personal\n identifier or database password, or other sensitive information. You don't need to use the\n Encrypt operation to encrypt a data key. The GenerateDataKey\n and GenerateDataKeyPair operations return a plaintext data key and an\n encrypted copy of that data key.

\n

If you use a symmetric encryption KMS key, you can use an encryption context to add\n additional security to your encryption operation. If you specify an\n EncryptionContext when encrypting data, you must specify the same encryption\n context (a case-sensitive exact match) when decrypting the data. Otherwise, the request to\n decrypt fails with an InvalidCiphertextException. For more information, see\n Encryption\n Context in the Key Management Service Developer Guide.

\n

If you specify an asymmetric KMS key, you must also specify the encryption algorithm. The\n algorithm must be compatible with the KMS key spec.

\n \n

When you use an asymmetric KMS key to encrypt or reencrypt data, be sure to record the KMS key and encryption algorithm that you choose. You will be required to provide the same KMS key and encryption algorithm when you decrypt the data. If the KMS key and algorithm do not match the values used to encrypt the data, the decrypt operation fails.

\n

You are not required to supply the key ID and encryption algorithm when you decrypt with symmetric encryption KMS keys because KMS stores this information in the ciphertext blob. KMS cannot store metadata in ciphertext generated with asymmetric keys. The standard format for asymmetric key ciphertext does not include configurable fields.

\n
\n

The maximum size of the data that you can encrypt varies with the type of KMS key and the\n encryption algorithm that you choose.

\n
    \n
  • \n

    Symmetric encryption KMS keys

    \n
      \n
    • \n

      \n SYMMETRIC_DEFAULT: 4096 bytes

      \n
    • \n
    \n
  • \n
  • \n

    \n RSA_2048\n

    \n
      \n
    • \n

      \n RSAES_OAEP_SHA_1: 214 bytes

      \n
    • \n
    • \n

      \n RSAES_OAEP_SHA_256: 190 bytes

      \n
    • \n
    \n
  • \n
  • \n

    \n RSA_3072\n

    \n
      \n
    • \n

      \n RSAES_OAEP_SHA_1: 342 bytes

      \n
    • \n
    • \n

      \n RSAES_OAEP_SHA_256: 318 bytes

      \n
    • \n
    \n
  • \n
  • \n

    \n RSA_4096\n

    \n
      \n
    • \n

      \n RSAES_OAEP_SHA_1: 470 bytes

      \n
    • \n
    • \n

      \n RSAES_OAEP_SHA_256: 446 bytes

      \n
    • \n
    \n
  • \n
  • \n

    \n SM2PKE: 1024 bytes (China Regions only)

    \n
  • \n
\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:Encrypt (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To encrypt data with a symmetric encryption KMS key", @@ -2500,13 +2698,13 @@ "EncryptionContext": { "target": "com.amazonaws.kms#EncryptionContextType", "traits": { - "smithy.api#documentation": "

Specifies the encryption context that will be used to encrypt the data.\n An encryption context is valid only for cryptographic operations with a symmetric encryption KMS key. The standard asymmetric encryption algorithms and HMAC algorithms that KMS uses do not support an encryption context.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n

An encryption context is a collection of non-secret key-value pairs that represent additional authenticated data. \nWhen you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is supported\nonly on operations with symmetric encryption KMS keys. On operations with symmetric encryption KMS keys, an encryption context is optional, but it is strongly recommended.

\n

For more information, see\nEncryption context in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Specifies the encryption context that will be used to encrypt the data.\n An encryption context is valid only for cryptographic operations with a symmetric encryption KMS key. The standard asymmetric encryption algorithms and HMAC algorithms that KMS uses do not support an encryption context.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n

An encryption context is a collection of non-secret key-value pairs that represent additional authenticated data. \nWhen you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is supported\nonly on operations with symmetric encryption KMS keys. On operations with symmetric encryption KMS keys, an encryption context is optional, but it is strongly recommended.

\n

For more information, see\nEncryption context in the Key Management Service Developer Guide.

" } }, "GrantTokens": { "target": "com.amazonaws.kms#GrantTokenList", "traits": { - "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" } }, "EncryptionAlgorithm": { @@ -2518,7 +2716,7 @@ "DryRun": { "target": "com.amazonaws.kms#NullableBooleanType", "traits": { - "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your KMS API calls in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your permissions in the Key Management Service Developer Guide.

" } } }, @@ -2677,7 +2875,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a unique symmetric data key for use outside of KMS. This operation returns a\n plaintext copy of the data key and a copy that is encrypted under a symmetric encryption KMS\n key that you specify. The bytes in the plaintext key are random; they are not related to the\n caller or the KMS key. You can use the plaintext key to encrypt your data outside of KMS and\n store the encrypted data key with the encrypted data.

\n

To generate a data key, specify the symmetric encryption KMS key that will be used to\n encrypt the data key. You cannot use an asymmetric KMS key to encrypt data keys. To get the\n type of your KMS key, use the DescribeKey operation.

\n

You must also specify the length of the data key. Use either the KeySpec or\n NumberOfBytes parameters (but not both). For 128-bit and 256-bit data keys, use\n the KeySpec parameter.

\n

To generate a 128-bit SM4 data key (China Regions only), specify a KeySpec\n value of AES_128 or a NumberOfBytes value of 16. The\n symmetric encryption key used in China Regions to encrypt your data key is an SM4 encryption\n key.

\n

To get only an encrypted copy of the data key, use GenerateDataKeyWithoutPlaintext. To generate an asymmetric data key pair, use\n the GenerateDataKeyPair or GenerateDataKeyPairWithoutPlaintext operation. To get a cryptographically secure\n random byte string, use GenerateRandom.

\n

You can use an optional encryption context to add additional security to the encryption\n operation. If you specify an EncryptionContext, you must specify the same\n encryption context (a case-sensitive exact match) when decrypting the encrypted data key.\n Otherwise, the request to decrypt fails with an InvalidCiphertextException. For more information, see Encryption Context in the\n Key Management Service Developer Guide.

\n

\n GenerateDataKey also supports Amazon Web Services Nitro Enclaves, which provide an\n isolated compute environment in Amazon EC2. To call GenerateDataKey for an Amazon Web Services Nitro\n enclave, use the Amazon Web Services Nitro Enclaves SDK or any Amazon Web Services SDK. Use the Recipient parameter\n to provide the attestation document for the enclave. GenerateDataKey returns a\n copy of the data key encrypted under the specified KMS key, as usual. But instead of a\n plaintext copy of the data key, the response includes a copy of the data key encrypted under\n the public key from the attestation document (CiphertextForRecipient).\n For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web Services Nitro Enclaves uses KMS in the Key Management Service Developer Guide..

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n How to use your data key\n

\n

We recommend that you use the following pattern to encrypt data locally in your\n application. You can write your own code or use a client-side encryption library, such as the\n Amazon Web Services Encryption SDK, the\n Amazon DynamoDB Encryption Client,\n or Amazon S3\n client-side encryption to do these tasks for you.

\n

To encrypt data outside of KMS:

\n
    \n
  1. \n

    Use the GenerateDataKey operation to get a data key.

    \n
  2. \n
  3. \n

    Use the plaintext data key (in the Plaintext field of the response) to\n encrypt your data outside of KMS. Then erase the plaintext data key from memory.

    \n
  4. \n
  5. \n

    Store the encrypted data key (in the CiphertextBlob field of the\n response) with the encrypted data.

    \n
  6. \n
\n

To decrypt data outside of KMS:

\n
    \n
  1. \n

    Use the Decrypt operation to decrypt the encrypted data key. The\n operation returns a plaintext copy of the data key.

    \n
  2. \n
  3. \n

    Use the plaintext data key to decrypt data outside of KMS, then erase the plaintext\n data key from memory.

    \n
  4. \n
\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:GenerateDataKey (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Returns a unique symmetric data key for use outside of KMS. This operation returns a\n plaintext copy of the data key and a copy that is encrypted under a symmetric encryption KMS\n key that you specify. The bytes in the plaintext key are random; they are not related to the\n caller or the KMS key. You can use the plaintext key to encrypt your data outside of KMS and\n store the encrypted data key with the encrypted data.

\n

To generate a data key, specify the symmetric encryption KMS key that will be used to\n encrypt the data key. You cannot use an asymmetric KMS key to encrypt data keys. To get the\n type of your KMS key, use the DescribeKey operation.

\n

You must also specify the length of the data key. Use either the KeySpec or\n NumberOfBytes parameters (but not both). For 128-bit and 256-bit data keys, use\n the KeySpec parameter.

\n

To generate a 128-bit SM4 data key (China Regions only), specify a KeySpec\n value of AES_128 or a NumberOfBytes value of 16. The\n symmetric encryption key used in China Regions to encrypt your data key is an SM4 encryption\n key.

\n

To get only an encrypted copy of the data key, use GenerateDataKeyWithoutPlaintext. To generate an asymmetric data key pair, use\n the GenerateDataKeyPair or GenerateDataKeyPairWithoutPlaintext operation. To get a cryptographically secure\n random byte string, use GenerateRandom.

\n

You can use an optional encryption context to add additional security to the encryption\n operation. If you specify an EncryptionContext, you must specify the same\n encryption context (a case-sensitive exact match) when decrypting the encrypted data key.\n Otherwise, the request to decrypt fails with an InvalidCiphertextException. For more information, see Encryption Context in the\n Key Management Service Developer Guide.

\n

\n GenerateDataKey also supports Amazon Web Services Nitro Enclaves, which provide an\n isolated compute environment in Amazon EC2. To call GenerateDataKey for an Amazon Web Services Nitro\n enclave or NitroTPM, use the Amazon Web Services Nitro Enclaves SDK or any Amazon Web Services SDK. Use the Recipient parameter\n to provide the attestation document for the attested environment. GenerateDataKey returns a\n copy of the data key encrypted under the specified KMS key, as usual. But instead of a\n plaintext copy of the data key, the response includes a copy of the data key encrypted under\n the public key from the attestation document (CiphertextForRecipient).\n For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see Cryptographic attestation support in KMS in the Key Management Service Developer Guide.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n How to use your data key\n

\n

We recommend that you use the following pattern to encrypt data locally in your\n application. You can write your own code or use a client-side encryption library, such as the\n Amazon Web Services Encryption SDK, the\n Amazon DynamoDB Encryption Client,\n or Amazon S3\n client-side encryption to do these tasks for you.

\n

To encrypt data outside of KMS:

\n
    \n
  1. \n

    Use the GenerateDataKey operation to get a data key.

    \n
  2. \n
  3. \n

    Use the plaintext data key (in the Plaintext field of the response) to\n encrypt your data outside of KMS. Then erase the plaintext data key from memory.

    \n
  4. \n
  5. \n

    Store the encrypted data key (in the CiphertextBlob field of the\n response) with the encrypted data.

    \n
  6. \n
\n

To decrypt data outside of KMS:

\n
    \n
  1. \n

    Use the Decrypt operation to decrypt the encrypted data key. The\n operation returns a plaintext copy of the data key.

    \n
  2. \n
  3. \n

    Use the plaintext data key to decrypt data outside of KMS, then erase the plaintext\n data key from memory.

    \n
  4. \n
\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:GenerateDataKey (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To generate a data key", @@ -2689,7 +2887,8 @@ "output": { "CiphertextBlob": "", "Plaintext": "", - "KeyId": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" + "KeyId": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", + "KeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6" } } ] @@ -2736,7 +2935,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a unique asymmetric data key pair for use outside of KMS. This operation returns\n a plaintext public key, a plaintext private key, and a copy of the private key that is\n encrypted under the symmetric encryption KMS key you specify. You can use the data key pair to\n perform asymmetric cryptography and implement digital signatures outside of KMS. The bytes\n in the keys are random; they are not related to the caller or to the KMS key that is used to\n encrypt the private key.

\n

You can use the public key that GenerateDataKeyPair returns to encrypt data\n or verify a signature outside of KMS. Then, store the encrypted private key with the data.\n When you are ready to decrypt data or sign a message, you can use the Decrypt operation to decrypt the encrypted private key.

\n

To generate a data key pair, you must specify a symmetric encryption KMS key to encrypt\n the private key in a data key pair. You cannot use an asymmetric KMS key or a KMS key in a\n custom key store. To get the type and origin of your KMS key, use the DescribeKey operation.

\n

Use the KeyPairSpec parameter to choose an RSA or Elliptic Curve (ECC) data\n key pair. In China Regions, you can also choose an SM2 data key pair. KMS recommends that\n you use ECC key pairs for signing, and use RSA and SM2 key pairs for either encryption or\n signing, but not both. However, KMS cannot enforce any restrictions on the use of data key\n pairs outside of KMS.

\n

If you are using the data key pair to encrypt data, or for any operation where you don't\n immediately need a private key, consider using the GenerateDataKeyPairWithoutPlaintext operation.\n GenerateDataKeyPairWithoutPlaintext returns a plaintext public key and an\n encrypted private key, but omits the plaintext private key that you need only to decrypt\n ciphertext or sign a message. Later, when you need to decrypt the data or sign a message, use\n the Decrypt operation to decrypt the encrypted private key in the data key\n pair.

\n

\n GenerateDataKeyPair returns a unique data key pair for each request. The\n bytes in the keys are random; they are not related to the caller or the KMS key that is used\n to encrypt the private key. The public key is a DER-encoded X.509 SubjectPublicKeyInfo, as\n specified in RFC 5280. The private\n key is a DER-encoded PKCS8 PrivateKeyInfo, as specified in RFC 5958.

\n

\n GenerateDataKeyPair also supports Amazon Web Services Nitro Enclaves, which provide an\n isolated compute environment in Amazon EC2. To call GenerateDataKeyPair for an Amazon Web Services\n Nitro enclave, use the Amazon Web Services Nitro Enclaves SDK or any Amazon Web Services SDK. Use the Recipient\n parameter to provide the attestation document for the enclave.\n GenerateDataKeyPair returns the public data key and a copy of the private data\n key encrypted under the specified KMS key, as usual. But instead of a plaintext copy of the\n private data key (PrivateKeyPlaintext), the response includes a copy of the\n private data key encrypted under the public key from the attestation document\n (CiphertextForRecipient). For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web Services Nitro Enclaves uses KMS in the Key Management Service Developer Guide..

\n

You can use an optional encryption context to add additional security to the encryption\n operation. If you specify an EncryptionContext, you must specify the same\n encryption context (a case-sensitive exact match) when decrypting the encrypted data key.\n Otherwise, the request to decrypt fails with an InvalidCiphertextException. For more information, see Encryption Context in the\n Key Management Service Developer Guide.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:GenerateDataKeyPair (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Returns a unique asymmetric data key pair for use outside of KMS. This operation returns\n a plaintext public key, a plaintext private key, and a copy of the private key that is\n encrypted under the symmetric encryption KMS key you specify. You can use the data key pair to\n perform asymmetric cryptography and implement digital signatures outside of KMS. The bytes\n in the keys are random; they are not related to the caller or to the KMS key that is used to\n encrypt the private key.

\n

You can use the public key that GenerateDataKeyPair returns to encrypt data\n or verify a signature outside of KMS. Then, store the encrypted private key with the data.\n When you are ready to decrypt data or sign a message, you can use the Decrypt operation to decrypt the encrypted private key.

\n

To generate a data key pair, you must specify a symmetric encryption KMS key to encrypt\n the private key in a data key pair. You cannot use an asymmetric KMS key or a KMS key in a\n custom key store. To get the type and origin of your KMS key, use the DescribeKey operation.

\n

Use the KeyPairSpec parameter to choose an RSA or Elliptic Curve (ECC) data\n key pair. In China Regions, you can also choose an SM2 data key pair. KMS recommends that\n you use ECC key pairs for signing, and use RSA and SM2 key pairs for either encryption or\n signing, but not both. However, KMS cannot enforce any restrictions on the use of data key\n pairs outside of KMS.

\n

If you are using the data key pair to encrypt data, or for any operation where you don't\n immediately need a private key, consider using the GenerateDataKeyPairWithoutPlaintext operation.\n GenerateDataKeyPairWithoutPlaintext returns a plaintext public key and an\n encrypted private key, but omits the plaintext private key that you need only to decrypt\n ciphertext or sign a message. Later, when you need to decrypt the data or sign a message, use\n the Decrypt operation to decrypt the encrypted private key in the data key\n pair.

\n

\n GenerateDataKeyPair returns a unique data key pair for each request. The\n bytes in the keys are random; they are not related to the caller or the KMS key that is used\n to encrypt the private key. The public key is a DER-encoded X.509 SubjectPublicKeyInfo, as\n specified in RFC 5280. The private\n key is a DER-encoded PKCS8 PrivateKeyInfo, as specified in RFC 5958.

\n

\n GenerateDataKeyPair also supports Amazon Web Services Nitro Enclaves, which provide an\n isolated compute environment in Amazon EC2. To call GenerateDataKeyPair for an Amazon Web Services\n Nitro enclave or NitroTPM, use the Amazon Web Services Nitro Enclaves SDK or any Amazon Web Services SDK. Use the Recipient\n parameter to provide the attestation document for the attested environment.\n GenerateDataKeyPair returns the public data key and a copy of the private data\n key encrypted under the specified KMS key, as usual. But instead of a plaintext copy of the\n private data key (PrivateKeyPlaintext), the response includes a copy of the\n private data key encrypted under the public key from the attestation document\n (CiphertextForRecipient). For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see Cryptographic attestation support in KMS in the Key Management Service Developer Guide.

\n

You can use an optional encryption context to add additional security to the encryption\n operation. If you specify an EncryptionContext, you must specify the same\n encryption context (a case-sensitive exact match) when decrypting the encrypted data key.\n Otherwise, the request to decrypt fails with an InvalidCiphertextException. For more information, see Encryption Context in the\n Key Management Service Developer Guide.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:GenerateDataKeyPair (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To generate an RSA key pair for encryption and decryption", @@ -2750,6 +2949,7 @@ "PrivateKeyPlaintext": "", "PublicKey": "", "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", + "KeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6", "KeyPairSpec": "RSA_3072" } } @@ -2762,7 +2962,7 @@ "EncryptionContext": { "target": "com.amazonaws.kms#EncryptionContextType", "traits": { - "smithy.api#documentation": "

Specifies the encryption context that will be used when encrypting the private key in the\n data key pair.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n

An encryption context is a collection of non-secret key-value pairs that represent additional authenticated data. \nWhen you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is supported\nonly on operations with symmetric encryption KMS keys. On operations with symmetric encryption KMS keys, an encryption context is optional, but it is strongly recommended.

\n

For more information, see\nEncryption context in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Specifies the encryption context that will be used when encrypting the private key in the\n data key pair.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n

An encryption context is a collection of non-secret key-value pairs that represent additional authenticated data. \nWhen you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is supported\nonly on operations with symmetric encryption KMS keys. On operations with symmetric encryption KMS keys, an encryption context is optional, but it is strongly recommended.

\n

For more information, see\nEncryption context in the Key Management Service Developer Guide.

" } }, "KeyId": { @@ -2775,26 +2975,26 @@ "KeyPairSpec": { "target": "com.amazonaws.kms#DataKeyPairSpec", "traits": { - "smithy.api#documentation": "

Determines the type of data key pair that is generated.

\n

The KMS rule that restricts the use of asymmetric RSA and SM2 KMS keys to encrypt and decrypt or to sign and verify (but not both), and the rule that permits you to use ECC KMS keys only to sign and verify, are not effective on data key pairs, which are used outside of KMS. The SM2 key spec is only available in China Regions.

", + "smithy.api#documentation": "

Determines the type of data key pair that is generated.

\n

The KMS rule that restricts the use of asymmetric RSA and SM2 KMS keys to encrypt and decrypt or to sign and verify (but not both), the rule that permits you to use ECC KMS keys only to sign and verify, and the rule that permits you to use ML-DSA key pairs to sign and verify only are not effective on data key pairs, which are used outside of KMS. The SM2 key spec is only available in China Regions.

", "smithy.api#required": {} } }, "GrantTokens": { "target": "com.amazonaws.kms#GrantTokenList", "traits": { - "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" } }, "Recipient": { "target": "com.amazonaws.kms#RecipientInfo", "traits": { - "smithy.api#documentation": "

A signed attestation document from\n an Amazon Web Services Nitro enclave and the encryption algorithm to use with the enclave's public key. The\n only valid encryption algorithm is RSAES_OAEP_SHA_256.

\n

This parameter only supports attestation documents for Amazon Web Services Nitro Enclaves. To include this\n parameter, use the Amazon Web Services Nitro Enclaves SDK or any Amazon Web Services SDK.

\n

When you use this parameter, instead of returning a plaintext copy of the private data\n key, KMS encrypts the plaintext private data key under the public key in the attestation\n document, and returns the resulting ciphertext in the CiphertextForRecipient\n field in the response. This ciphertext can be decrypted only with the private key in the\n enclave. The CiphertextBlob field in the response contains a copy of the private\n data key encrypted under the KMS key specified by the KeyId parameter. The\n PrivateKeyPlaintext field in the response is null or empty.

\n

For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web Services Nitro Enclaves uses KMS in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A signed attestation document from\n an Amazon Web Services Nitro enclave or NitroTPM, and the encryption algorithm to use with the public key in the attestation document. The\n only valid encryption algorithm is RSAES_OAEP_SHA_256.

\n

This parameter only supports attestation documents for Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM. To call\n GenerateDataKeyPair generate an attestation document use either Amazon Web Services Nitro Enclaves SDK for an Amazon Web Services Nitro Enclaves or\n Amazon Web Services NitroTPM tools for Amazon Web Services NitroTPM. Then use the Recipient parameter from any Amazon Web Services SDK to provide the\n attestation document for the attested environment.

\n

When you use this parameter, instead of returning a plaintext copy of the private data\n key, KMS encrypts the plaintext private data key under the public key in the attestation\n document, and returns the resulting ciphertext in the CiphertextForRecipient\n field in the response. This ciphertext can be decrypted only with the private key in the\n attested environment. The CiphertextBlob field in the response contains a copy of the private\n data key encrypted under the KMS key specified by the KeyId parameter. The\n PrivateKeyPlaintext field in the response is null or empty.

\n

For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see Cryptographic attestation support in KMS in the Key Management Service Developer Guide.

" } }, "DryRun": { "target": "com.amazonaws.kms#NullableBooleanType", "traits": { - "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your KMS API calls in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your permissions in the Key Management Service Developer Guide.

" } } }, @@ -2838,7 +3038,13 @@ "CiphertextForRecipient": { "target": "com.amazonaws.kms#CiphertextType", "traits": { - "smithy.api#documentation": "

The plaintext private data key encrypted with the public key from the Nitro enclave. This\n ciphertext can be decrypted only by using a private key in the Nitro enclave.

\n

This field is included in the response only when the Recipient parameter in\n the request includes a valid attestation document from an Amazon Web Services Nitro enclave.\n For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web Services Nitro Enclaves uses KMS in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

The plaintext private data key encrypted with the public key from the attestation document. This\n ciphertext can be decrypted only by using a private key from the attested environment.

\n

This field is included in the response only when the Recipient parameter in\n the request includes a valid attestation document from an Amazon Web Services Nitro enclave or NitroTPM.\n For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see Cryptographic attestation support in KMS in the Key Management Service Developer Guide.

" + } + }, + "KeyMaterialId": { + "target": "com.amazonaws.kms#BackingKeyIdType", + "traits": { + "smithy.api#documentation": "

The identifier of the key material used to encrypt the private key.

" } } }, @@ -2887,7 +3093,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a unique asymmetric data key pair for use outside of KMS. This operation returns\n a plaintext public key and a copy of the private key that is encrypted under the symmetric\n encryption KMS key you specify. Unlike GenerateDataKeyPair, this operation\n does not return a plaintext private key. The bytes in the keys are random; they are not\n related to the caller or to the KMS key that is used to encrypt the private key.

\n

You can use the public key that GenerateDataKeyPairWithoutPlaintext returns\n to encrypt data or verify a signature outside of KMS. Then, store the encrypted private key\n with the data. When you are ready to decrypt data or sign a message, you can use the Decrypt operation to decrypt the encrypted private key.

\n

To generate a data key pair, you must specify a symmetric encryption KMS key to encrypt\n the private key in a data key pair. You cannot use an asymmetric KMS key or a KMS key in a\n custom key store. To get the type and origin of your KMS key, use the DescribeKey operation.

\n

Use the KeyPairSpec parameter to choose an RSA or Elliptic Curve (ECC) data\n key pair. In China Regions, you can also choose an SM2 data key pair. KMS recommends that\n you use ECC key pairs for signing, and use RSA and SM2 key pairs for either encryption or\n signing, but not both. However, KMS cannot enforce any restrictions on the use of data key\n pairs outside of KMS.

\n

\n GenerateDataKeyPairWithoutPlaintext returns a unique data key pair for each\n request. The bytes in the key are not related to the caller or KMS key that is used to encrypt\n the private key. The public key is a DER-encoded X.509 SubjectPublicKeyInfo, as specified in\n RFC 5280.

\n

You can use an optional encryption context to add additional security to the encryption\n operation. If you specify an EncryptionContext, you must specify the same\n encryption context (a case-sensitive exact match) when decrypting the encrypted data key.\n Otherwise, the request to decrypt fails with an InvalidCiphertextException. For more information, see Encryption Context in the\n Key Management Service Developer Guide.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:GenerateDataKeyPairWithoutPlaintext (key\n policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Returns a unique asymmetric data key pair for use outside of KMS. This operation returns\n a plaintext public key and a copy of the private key that is encrypted under the symmetric\n encryption KMS key you specify. Unlike GenerateDataKeyPair, this operation\n does not return a plaintext private key. The bytes in the keys are random; they are not\n related to the caller or to the KMS key that is used to encrypt the private key.

\n

You can use the public key that GenerateDataKeyPairWithoutPlaintext returns\n to encrypt data or verify a signature outside of KMS. Then, store the encrypted private key\n with the data. When you are ready to decrypt data or sign a message, you can use the Decrypt operation to decrypt the encrypted private key.

\n

To generate a data key pair, you must specify a symmetric encryption KMS key to encrypt\n the private key in a data key pair. You cannot use an asymmetric KMS key or a KMS key in a\n custom key store. To get the type and origin of your KMS key, use the DescribeKey operation.

\n

Use the KeyPairSpec parameter to choose an RSA or Elliptic Curve (ECC) data\n key pair. In China Regions, you can also choose an SM2 data key pair. KMS recommends that\n you use ECC key pairs for signing, and use RSA and SM2 key pairs for either encryption or\n signing, but not both. However, KMS cannot enforce any restrictions on the use of data key\n pairs outside of KMS.

\n

\n GenerateDataKeyPairWithoutPlaintext returns a unique data key pair for each\n request. The bytes in the key are not related to the caller or KMS key that is used to encrypt\n the private key. The public key is a DER-encoded X.509 SubjectPublicKeyInfo, as specified in\n RFC 5280.

\n

You can use an optional encryption context to add additional security to the encryption\n operation. If you specify an EncryptionContext, you must specify the same\n encryption context (a case-sensitive exact match) when decrypting the encrypted data key.\n Otherwise, the request to decrypt fails with an InvalidCiphertextException. For more information, see Encryption Context in the\n Key Management Service Developer Guide.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:GenerateDataKeyPairWithoutPlaintext (key\n policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To generate an asymmetric data key pair without a plaintext key", @@ -2900,6 +3106,7 @@ "PrivateKeyCiphertextBlob": "", "PublicKey": "", "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", + "KeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6", "KeyPairSpec": "ECC_NIST_P521" } } @@ -2912,7 +3119,7 @@ "EncryptionContext": { "target": "com.amazonaws.kms#EncryptionContextType", "traits": { - "smithy.api#documentation": "

Specifies the encryption context that will be used when encrypting the private key in the\n data key pair.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n

An encryption context is a collection of non-secret key-value pairs that represent additional authenticated data. \nWhen you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is supported\nonly on operations with symmetric encryption KMS keys. On operations with symmetric encryption KMS keys, an encryption context is optional, but it is strongly recommended.

\n

For more information, see\nEncryption context in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Specifies the encryption context that will be used when encrypting the private key in the\n data key pair.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n

An encryption context is a collection of non-secret key-value pairs that represent additional authenticated data. \nWhen you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is supported\nonly on operations with symmetric encryption KMS keys. On operations with symmetric encryption KMS keys, an encryption context is optional, but it is strongly recommended.

\n

For more information, see\nEncryption context in the Key Management Service Developer Guide.

" } }, "KeyId": { @@ -2925,20 +3132,20 @@ "KeyPairSpec": { "target": "com.amazonaws.kms#DataKeyPairSpec", "traits": { - "smithy.api#documentation": "

Determines the type of data key pair that is generated.

\n

The KMS rule that restricts the use of asymmetric RSA and SM2 KMS keys to encrypt and decrypt or to sign and verify (but not both), and the rule that permits you to use ECC KMS keys only to sign and verify, are not effective on data key pairs, which are used outside of KMS. The SM2 key spec is only available in China Regions.

", + "smithy.api#documentation": "

Determines the type of data key pair that is generated.

\n

The KMS rule that restricts the use of asymmetric RSA and SM2 KMS keys to encrypt and decrypt or to sign and verify (but not both), the rule that permits you to use ECC KMS keys only to sign and verify, and the rule that permits you to use ML-DSA key pairs to sign and verify only are not effective on data key pairs, which are used outside of KMS. The SM2 key spec is only available in China Regions.

", "smithy.api#required": {} } }, "GrantTokens": { "target": "com.amazonaws.kms#GrantTokenList", "traits": { - "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" } }, "DryRun": { "target": "com.amazonaws.kms#NullableBooleanType", "traits": { - "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your KMS API calls in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your permissions in the Key Management Service Developer Guide.

" } } }, @@ -2970,7 +3177,13 @@ "KeyPairSpec": { "target": "com.amazonaws.kms#DataKeyPairSpec", "traits": { - "smithy.api#documentation": "

The type of data key pair that was generated.

" + "smithy.api#documentation": "

The type of data key pair that was generated.

" + } + }, + "KeyMaterialId": { + "target": "com.amazonaws.kms#BackingKeyIdType", + "traits": { + "smithy.api#documentation": "

The identifier of the key material used to encrypt the private key.

" } } }, @@ -2991,7 +3204,7 @@ "EncryptionContext": { "target": "com.amazonaws.kms#EncryptionContextType", "traits": { - "smithy.api#documentation": "

Specifies the encryption context that will be used when encrypting the data key.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n

An encryption context is a collection of non-secret key-value pairs that represent additional authenticated data. \nWhen you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is supported\nonly on operations with symmetric encryption KMS keys. On operations with symmetric encryption KMS keys, an encryption context is optional, but it is strongly recommended.

\n

For more information, see\nEncryption context in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Specifies the encryption context that will be used when encrypting the data key.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n

An encryption context is a collection of non-secret key-value pairs that represent additional authenticated data. \nWhen you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is supported\nonly on operations with symmetric encryption KMS keys. On operations with symmetric encryption KMS keys, an encryption context is optional, but it is strongly recommended.

\n

For more information, see\nEncryption context in the Key Management Service Developer Guide.

" } }, "NumberOfBytes": { @@ -3009,19 +3222,19 @@ "GrantTokens": { "target": "com.amazonaws.kms#GrantTokenList", "traits": { - "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" } }, "Recipient": { "target": "com.amazonaws.kms#RecipientInfo", "traits": { - "smithy.api#documentation": "

A signed attestation document from\n an Amazon Web Services Nitro enclave and the encryption algorithm to use with the enclave's public key. The\n only valid encryption algorithm is RSAES_OAEP_SHA_256.

\n

This parameter only supports attestation documents for Amazon Web Services Nitro Enclaves. To include this\n parameter, use the Amazon Web Services Nitro Enclaves SDK or any Amazon Web Services SDK.

\n

When you use this parameter, instead of returning the plaintext data key, KMS encrypts\n the plaintext data key under the public key in the attestation document, and returns the\n resulting ciphertext in the CiphertextForRecipient field in the response. This\n ciphertext can be decrypted only with the private key in the enclave. The\n CiphertextBlob field in the response contains a copy of the data key encrypted\n under the KMS key specified by the KeyId parameter. The Plaintext\n field in the response is null or empty.

\n

For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web Services Nitro Enclaves uses KMS in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A signed attestation document from\n an Amazon Web Services Nitro enclave or NitroTPM, and the encryption algorithm to use with the public key in the attestation document. The\n only valid encryption algorithm is RSAES_OAEP_SHA_256.

\n

This parameter supports the Amazon Web Services Nitro Enclaves SDK or any Amazon Web Services SDK for Amazon Web Services Nitro Enclaves. It supports \n any Amazon Web Services SDK for Amazon Web Services NitroTPM.\n

\n

When you use this parameter, instead of returning the plaintext data key, KMS encrypts\n the plaintext data key under the public key in the attestation document, and returns the\n resulting ciphertext in the CiphertextForRecipient field in the response. This\n ciphertext can be decrypted only with the private key in the enclave. The\n CiphertextBlob field in the response contains a copy of the data key encrypted\n under the KMS key specified by the KeyId parameter. The Plaintext\n field in the response is null or empty.

\n

For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see Cryptographic attestation support in KMS in the Key Management Service Developer Guide.

" } }, "DryRun": { "target": "com.amazonaws.kms#NullableBooleanType", "traits": { - "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your KMS API calls in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your permissions in the Key Management Service Developer Guide.

" } } }, @@ -3053,7 +3266,13 @@ "CiphertextForRecipient": { "target": "com.amazonaws.kms#CiphertextType", "traits": { - "smithy.api#documentation": "

The plaintext data key encrypted with the public key from the Nitro enclave. This\n ciphertext can be decrypted only by using a private key in the Nitro enclave.

\n

This field is included in the response only when the Recipient parameter in\n the request includes a valid attestation document from an Amazon Web Services Nitro enclave.\n For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web Services Nitro Enclaves uses KMS in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

The plaintext data key encrypted with the public key from the attestation document. This\n ciphertext can be decrypted only by using a private key from the attested environment.

\n

This field is included in the response only when the Recipient parameter in\n the request includes a valid attestation document from an Amazon Web Services Nitro enclave or NitroTPM.\n For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see Cryptographic attestation support in KMS in the Key Management Service Developer Guide.

" + } + }, + "KeyMaterialId": { + "target": "com.amazonaws.kms#BackingKeyIdType", + "traits": { + "smithy.api#documentation": "

The identifier of the key material used to encrypt the data key. This field is omitted if\n the request includes the Recipient parameter.

" } } }, @@ -3099,7 +3318,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a unique symmetric data key for use outside of KMS. This operation returns a\n data key that is encrypted under a symmetric encryption KMS key that you specify. The bytes in\n the key are random; they are not related to the caller or to the KMS key.

\n

\n GenerateDataKeyWithoutPlaintext is identical to the GenerateDataKey operation except that it does not return a plaintext copy of the\n data key.

\n

This operation is useful for systems that need to encrypt data at some point, but not\n immediately. When you need to encrypt the data, you call the Decrypt\n operation on the encrypted copy of the key.

\n

It's also useful in distributed systems with different levels of trust. For example, you\n might store encrypted data in containers. One component of your system creates new containers\n and stores an encrypted data key with each container. Then, a different component puts the\n data into the containers. That component first decrypts the data key, uses the plaintext data\n key to encrypt data, puts the encrypted data into the container, and then destroys the\n plaintext data key. In this system, the component that creates the containers never sees the\n plaintext data key.

\n

To request an asymmetric data key pair, use the GenerateDataKeyPair or\n GenerateDataKeyPairWithoutPlaintext operations.

\n

To generate a data key, you must specify the symmetric encryption KMS key that is used to\n encrypt the data key. You cannot use an asymmetric KMS key or a key in a custom key store to\n generate a data key. To get the type of your KMS key, use the DescribeKey\n operation.

\n

You must also specify the length of the data key. Use either the KeySpec or\n NumberOfBytes parameters (but not both). For 128-bit and 256-bit data keys, use\n the KeySpec parameter.

\n

To generate an SM4 data key (China Regions only), specify a KeySpec value of\n AES_128 or NumberOfBytes value of 16. The symmetric\n encryption key used in China Regions to encrypt your data key is an SM4 encryption key.

\n

If the operation succeeds, you will find the encrypted copy of the data key in the\n CiphertextBlob field.

\n

You can use an optional encryption context to add additional security to the encryption\n operation. If you specify an EncryptionContext, you must specify the same\n encryption context (a case-sensitive exact match) when decrypting the encrypted data key.\n Otherwise, the request to decrypt fails with an InvalidCiphertextException. For more information, see Encryption Context in the\n Key Management Service Developer Guide.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:GenerateDataKeyWithoutPlaintext (key\n policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Returns a unique symmetric data key for use outside of KMS. This operation returns a\n data key that is encrypted under a symmetric encryption KMS key that you specify. The bytes in\n the key are random; they are not related to the caller or to the KMS key.

\n

\n GenerateDataKeyWithoutPlaintext is identical to the GenerateDataKey operation except that it does not return a plaintext copy of the\n data key.

\n

This operation is useful for systems that need to encrypt data at some point, but not\n immediately. When you need to encrypt the data, you call the Decrypt\n operation on the encrypted copy of the key.

\n

It's also useful in distributed systems with different levels of trust. For example, you\n might store encrypted data in containers. One component of your system creates new containers\n and stores an encrypted data key with each container. Then, a different component puts the\n data into the containers. That component first decrypts the data key, uses the plaintext data\n key to encrypt data, puts the encrypted data into the container, and then destroys the\n plaintext data key. In this system, the component that creates the containers never sees the\n plaintext data key.

\n

To request an asymmetric data key pair, use the GenerateDataKeyPair or\n GenerateDataKeyPairWithoutPlaintext operations.

\n

To generate a data key, you must specify the symmetric encryption KMS key that is used to\n encrypt the data key. You cannot use an asymmetric KMS key or a key in a custom key store to\n generate a data key. To get the type of your KMS key, use the DescribeKey\n operation.

\n

You must also specify the length of the data key. Use either the KeySpec or\n NumberOfBytes parameters (but not both). For 128-bit and 256-bit data keys, use\n the KeySpec parameter.

\n

To generate an SM4 data key (China Regions only), specify a KeySpec value of\n AES_128 or NumberOfBytes value of 16. The symmetric\n encryption key used in China Regions to encrypt your data key is an SM4 encryption key.

\n

If the operation succeeds, you will find the encrypted copy of the data key in the\n CiphertextBlob field.

\n

You can use an optional encryption context to add additional security to the encryption\n operation. If you specify an EncryptionContext, you must specify the same\n encryption context (a case-sensitive exact match) when decrypting the encrypted data key.\n Otherwise, the request to decrypt fails with an InvalidCiphertextException. For more information, see Encryption Context in the\n Key Management Service Developer Guide.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:GenerateDataKeyWithoutPlaintext (key\n policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To generate an encrypted data key", @@ -3110,7 +3329,8 @@ }, "output": { "CiphertextBlob": "", - "KeyId": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" + "KeyId": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", + "KeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6" } } ] @@ -3129,7 +3349,7 @@ "EncryptionContext": { "target": "com.amazonaws.kms#EncryptionContextType", "traits": { - "smithy.api#documentation": "

Specifies the encryption context that will be used when encrypting the data key.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n

An encryption context is a collection of non-secret key-value pairs that represent additional authenticated data. \nWhen you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is supported\nonly on operations with symmetric encryption KMS keys. On operations with symmetric encryption KMS keys, an encryption context is optional, but it is strongly recommended.

\n

For more information, see\nEncryption context in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Specifies the encryption context that will be used when encrypting the data key.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n

An encryption context is a collection of non-secret key-value pairs that represent additional authenticated data. \nWhen you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is supported\nonly on operations with symmetric encryption KMS keys. On operations with symmetric encryption KMS keys, an encryption context is optional, but it is strongly recommended.

\n

For more information, see\nEncryption context in the Key Management Service Developer Guide.

" } }, "KeySpec": { @@ -3147,13 +3367,13 @@ "GrantTokens": { "target": "com.amazonaws.kms#GrantTokenList", "traits": { - "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" } }, "DryRun": { "target": "com.amazonaws.kms#NullableBooleanType", "traits": { - "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your KMS API calls in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your permissions in the Key Management Service Developer Guide.

" } } }, @@ -3175,6 +3395,12 @@ "traits": { "smithy.api#documentation": "

The Amazon Resource Name (key ARN) of the KMS key that encrypted the data key.

" } + }, + "KeyMaterialId": { + "target": "com.amazonaws.kms#BackingKeyIdType", + "traits": { + "smithy.api#documentation": "

The identifier of the key material used to encrypt the data key.

" + } } }, "traits": { @@ -3216,7 +3442,7 @@ } ], "traits": { - "smithy.api#documentation": "

Generates a hash-based message authentication code (HMAC) for a message using an HMAC KMS\n key and a MAC algorithm that the key supports. HMAC KMS keys and the HMAC algorithms that\n KMS uses conform to industry standards defined in RFC 2104.

\n

You can use value that GenerateMac returns in the VerifyMac operation to\n demonstrate that the original message has not changed. Also, because a secret key is used to\n create the hash, you can verify that the party that generated the hash has the required secret\n key. You can also use the raw result to implement HMAC-based algorithms such as key derivation\n functions. This operation is part of KMS support for HMAC KMS keys. For\n details, see HMAC keys in\n KMS in the \n Key Management Service Developer Guide\n .

\n \n

Best practices recommend that you limit the time during which any signing mechanism,\n including an HMAC, is effective. This deters an attack where the actor uses a signed message\n to establish validity repeatedly or long after the message is superseded. HMAC tags do not\n include a timestamp, but you can include a timestamp in the token or message to help you\n detect when its time to refresh the HMAC.

\n
\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:GenerateMac (key policy)

\n

\n Related operations: VerifyMac\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Generates a hash-based message authentication code (HMAC) for a message using an HMAC KMS\n key and a MAC algorithm that the key supports. HMAC KMS keys and the HMAC algorithms that\n KMS uses conform to industry standards defined in RFC 2104.

\n

You can use value that GenerateMac returns in the VerifyMac operation to\n demonstrate that the original message has not changed. Also, because a secret key is used to\n create the hash, you can verify that the party that generated the hash has the required secret\n key. You can also use the raw result to implement HMAC-based algorithms such as key derivation\n functions. This operation is part of KMS support for HMAC KMS keys. For\n details, see HMAC keys in\n KMS in the \n Key Management Service Developer Guide\n .

\n \n

Best practices recommend that you limit the time during which any signing mechanism,\n including an HMAC, is effective. This deters an attack where the actor uses a signed message\n to establish validity repeatedly or long after the message is superseded. HMAC tags do not\n include a timestamp, but you can include a timestamp in the token or message to help you\n detect when its time to refresh the HMAC.

\n
\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:GenerateMac (key policy)

\n

\n Related operations: VerifyMac\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To generate an HMAC for a message", @@ -3262,13 +3488,13 @@ "GrantTokens": { "target": "com.amazonaws.kms#GrantTokenList", "traits": { - "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" } }, "DryRun": { "target": "com.amazonaws.kms#NullableBooleanType", "traits": { - "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your KMS API calls in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your permissions in the Key Management Service Developer Guide.

" } } }, @@ -3328,7 +3554,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a random byte string that is cryptographically secure.

\n

You must use the NumberOfBytes parameter to specify the length of the random\n byte string. There is no default value for string length.

\n

By default, the random byte string is generated in KMS. To generate the byte string in\n the CloudHSM cluster associated with an CloudHSM key store, use the CustomKeyStoreId\n parameter.

\n

\n GenerateRandom also supports Amazon Web Services Nitro Enclaves, which provide an\n isolated compute environment in Amazon EC2. To call GenerateRandom for a Nitro\n enclave, use the Amazon Web Services Nitro Enclaves SDK or any Amazon Web Services SDK. Use the Recipient parameter\n to provide the attestation document for the enclave. Instead of plaintext bytes, the response\n includes the plaintext bytes encrypted under the public key from the attestation document\n (CiphertextForRecipient).For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web Services Nitro Enclaves uses KMS in the Key Management Service Developer Guide.

\n

For more information about entropy and random number generation, see\n Key Management Service Cryptographic Details.

\n

\n Cross-account use: Not applicable.\n GenerateRandom does not use any account-specific resources, such as KMS\n keys.

\n

\n Required permissions: kms:GenerateRandom (IAM policy)

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Returns a random byte string that is cryptographically secure.

\n

You must use the NumberOfBytes parameter to specify the length of the random\n byte string. There is no default value for string length.

\n

By default, the random byte string is generated in KMS. To generate the byte string in\n the CloudHSM cluster associated with an CloudHSM key store, use the CustomKeyStoreId\n parameter.

\n

\n GenerateRandom also supports Amazon Web Services Nitro Enclaves, which provide an\n isolated compute environment in Amazon EC2. To call GenerateRandom for a Nitro\n enclave or NitroTPM, use the Amazon Web Services Nitro Enclaves SDK or any Amazon Web Services SDK. Use the Recipient parameter\n to provide the attestation document for the attested environment. Instead of plaintext bytes, the response\n includes the plaintext bytes encrypted under the public key from the attestation document\n (CiphertextForRecipient). For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see Cryptographic attestation support in KMS in the Key Management Service Developer Guide.

\n

For more information about entropy and random number generation, see Entropy and random number generation in the Key Management Service Developer Guide.

\n

\n Cross-account use: Not applicable.\n GenerateRandom does not use any account-specific resources, such as KMS\n keys.

\n

\n Required permissions: kms:GenerateRandom (IAM policy)

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To generate random data", @@ -3361,7 +3587,7 @@ "Recipient": { "target": "com.amazonaws.kms#RecipientInfo", "traits": { - "smithy.api#documentation": "

A signed attestation document from\n an Amazon Web Services Nitro enclave and the encryption algorithm to use with the enclave's public key. The\n only valid encryption algorithm is RSAES_OAEP_SHA_256.

\n

This parameter only supports attestation documents for Amazon Web Services Nitro Enclaves. To include this\n parameter, use the Amazon Web Services Nitro Enclaves SDK or any Amazon Web Services SDK.

\n

When you use this parameter, instead of returning plaintext bytes, KMS encrypts the\n plaintext bytes under the public key in the attestation document, and returns the resulting\n ciphertext in the CiphertextForRecipient field in the response. This ciphertext\n can be decrypted only with the private key in the enclave. The Plaintext field in\n the response is null or empty.

\n

For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web Services Nitro Enclaves uses KMS in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A signed attestation document from\n an Amazon Web Services Nitro enclave or NitroTPM, and the encryption algorithm to use with the public key in the attestation document. The\n only valid encryption algorithm is RSAES_OAEP_SHA_256.

\n

This parameter supports the Amazon Web Services Nitro Enclaves SDK or any Amazon Web Services SDK for Amazon Web Services Nitro Enclaves. It supports \n any Amazon Web Services SDK for Amazon Web Services NitroTPM.\n

\n

When you use this parameter, instead of returning plaintext bytes, KMS encrypts the\n plaintext bytes under the public key in the attestation document, and returns the resulting\n ciphertext in the CiphertextForRecipient field in the response. This ciphertext\n can be decrypted only with the private key in the attested environment. The Plaintext field in\n the response is null or empty.

\n

For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see Cryptographic attestation support in KMS in the Key Management Service Developer Guide.

" } } }, @@ -3381,7 +3607,7 @@ "CiphertextForRecipient": { "target": "com.amazonaws.kms#CiphertextType", "traits": { - "smithy.api#documentation": "

The plaintext random bytes encrypted with the public key from the Nitro enclave. This\n ciphertext can be decrypted only by using a private key in the Nitro enclave.

\n

This field is included in the response only when the Recipient parameter in\n the request includes a valid attestation document from an Amazon Web Services Nitro enclave.\n For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web Services Nitro Enclaves uses KMS in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

The plaintext random bytes encrypted with the public key from the attestation document. This\n ciphertext can be decrypted only by using a private key from the attested environment.

\n

This field is included in the response only when the Recipient parameter in\n the request includes a valid attestation document from an Amazon Web Services Nitro enclave or NitroTPM.\n For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see Cryptographic attestation support in KMS in the Key Management Service Developer Guide.

" } } }, @@ -3415,7 +3641,7 @@ } ], "traits": { - "smithy.api#documentation": "

Gets a key policy attached to the specified KMS key.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:GetKeyPolicy (key policy)

\n

\n Related operations: PutKeyPolicy\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Gets a key policy attached to the specified KMS key.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:GetKeyPolicy (key policy)

\n

\n Related operations: PutKeyPolicy\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To retrieve a key policy", @@ -3444,7 +3670,7 @@ "PolicyName": { "target": "com.amazonaws.kms#PolicyNameType", "traits": { - "smithy.api#documentation": "

Specifies the name of the key policy. If no policy name is specified, the default value is default. The only valid name is default. To get\n the names of key policies, use ListKeyPolicies.

" + "smithy.api#documentation": "

Specifies the name of the key policy. If no policy name is specified, the default value is\n default. The only valid name is default. To get the names of key\n policies, use ListKeyPolicies.

" } } }, @@ -3501,7 +3727,7 @@ } ], "traits": { - "smithy.api#documentation": "

Provides detailed information about the rotation status for a KMS key, including \n whether automatic rotation of the key material is enabled for the specified KMS key, the\n rotation period, and the next scheduled\n rotation date.

\n

Automatic key rotation is supported only on symmetric encryption KMS keys.\n You cannot enable automatic rotation of asymmetric KMS keys, HMAC KMS keys, KMS keys with imported key material, or KMS keys in a custom key store. To enable or disable automatic rotation of a set of related multi-Region keys, set the property on the primary key..

\n

You can enable (EnableKeyRotation) and disable automatic rotation (DisableKeyRotation) of the key material in customer managed KMS keys. Key\n material rotation of Amazon Web Services managed KMS keys is not\n configurable. KMS always rotates the key material in Amazon Web Services managed KMS keys every year. The\n key rotation status for Amazon Web Services managed KMS keys is always true.

\n

You can perform on-demand (RotateKeyOnDemand) rotation of the \n key material in customer managed KMS keys, regardless of whether or not automatic key rotation is enabled. \n You can use GetKeyRotationStatus to identify the date and time that an in progress on-demand rotation\n was initiated. You can use ListKeyRotations to view the details of completed rotations.

\n \n

In May 2022, KMS changed the rotation schedule for Amazon Web Services managed keys from every three\n years to every year. For details, see EnableKeyRotation.

\n
\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n
    \n
  • \n

    Disabled: The key rotation status does not change when you disable a KMS key. However,\n while the KMS key is disabled, KMS does not rotate the key material. When you re-enable\n the KMS key, rotation resumes. If the key material in the re-enabled KMS key hasn't been\n rotated in one year, KMS rotates it immediately, and every year thereafter. If it's been\n less than a year since the key material in the re-enabled KMS key was rotated, the KMS key\n resumes its prior rotation schedule.

    \n
  • \n
  • \n

    Pending deletion: While a KMS key is pending deletion, its key rotation status is\n false and KMS does not rotate the key material. If you cancel the\n deletion, the original key rotation status returns to true.

    \n
  • \n
\n

\n Cross-account use: Yes. To perform this operation on a KMS key in a different Amazon Web Services account, specify the key\n ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:GetKeyRotationStatus (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

" + "smithy.api#documentation": "

Provides detailed information about the rotation status for a KMS key, including whether\n automatic\n rotation of the key material is enabled for the specified KMS key, the rotation\n period, and the next scheduled rotation date.

\n

Automatic key rotation is supported only on symmetric encryption KMS keys.\n You cannot enable automatic rotation of asymmetric KMS keys, HMAC KMS keys, KMS keys with imported key material, or KMS keys in a custom key store. To enable or disable automatic rotation of a set of related multi-Region keys, set the property on the primary key.

\n

You can enable (EnableKeyRotation) and disable automatic rotation (DisableKeyRotation) of the key material in customer managed KMS keys. Key\n material rotation of Amazon Web Services managed KMS keys is not\n configurable. KMS always rotates the key material in Amazon Web Services managed KMS keys every year. The\n key rotation status for Amazon Web Services managed KMS keys is always true.

\n

You can perform on-demand (RotateKeyOnDemand) rotation of the key\n material in customer managed KMS keys, regardless of whether or not automatic key rotation is\n enabled. You can use GetKeyRotationStatus to identify the date and time that an in progress\n on-demand rotation was initiated. You can use ListKeyRotations to view the\n details of completed rotations.

\n \n

In May 2022, KMS changed the rotation schedule for Amazon Web Services managed keys from every three\n years to every year. For details, see EnableKeyRotation.

\n
\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n
    \n
  • \n

    Disabled: The key rotation status does not change when you disable a KMS key. However,\n while the KMS key is disabled, KMS does not rotate the key material. When you re-enable\n the KMS key, rotation resumes. If the key material in the re-enabled KMS key hasn't been\n rotated in one year, KMS rotates it immediately, and every year thereafter. If it's been\n less than a year since the key material in the re-enabled KMS key was rotated, the KMS key\n resumes its prior rotation schedule.

    \n
  • \n
  • \n

    Pending deletion: While a KMS key is pending deletion, its key rotation status is\n false and KMS does not rotate the key material. If you cancel the\n deletion, the original key rotation status returns to true.

    \n
  • \n
\n

\n Cross-account use: Yes. To perform this operation on a KMS key in a different Amazon Web Services account, specify the key\n ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:GetKeyRotationStatus (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

" } }, "com.amazonaws.kms#GetKeyRotationStatusRequest": { @@ -3550,7 +3776,7 @@ "OnDemandRotationStartDate": { "target": "com.amazonaws.kms#DateType", "traits": { - "smithy.api#documentation": "

Identifies the date and time that an in progress on-demand rotation was initiated.

\n

The KMS API follows an eventual consistency model\n due to the distributed nature of the system. As a result, there might be a slight delay\n between initiating on-demand key rotation and the rotation's completion. Once the on-demand\n rotation is complete, use ListKeyRotations to view the details of the\n on-demand rotation.

" + "smithy.api#documentation": "

Identifies the date and time that an in progress on-demand rotation was initiated.

\n

KMS uses a background process to perform rotations. As a result, there might be a slight\n delay between initiating on-demand key rotation and the rotation's completion. Once the\n on-demand rotation is complete, KMS removes this field from the response. You can use ListKeyRotations to view the details of the completed on-demand rotation.

" } } }, @@ -3587,7 +3813,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns the public key and an import token you need to import or reimport key material for\n a KMS key.

\n

By default, KMS keys are created with key material that KMS generates. This operation\n supports Importing key\n material, an advanced feature that lets you generate and import the cryptographic\n key material for a KMS key. For more information about importing key material into KMS, see\n Importing key\n material in the Key Management Service Developer Guide.

\n

Before calling GetParametersForImport, use the CreateKey\n operation with an Origin value of EXTERNAL to create a KMS key with\n no key material. You can import key material for a symmetric encryption KMS key, HMAC KMS key,\n asymmetric encryption KMS key, or asymmetric signing KMS key. You can also import key material\n into a multi-Region key of any supported type. However, you can't import key material into\n a KMS key in a custom key store. You can also use GetParametersForImport to get a\n public key and import token to reimport the original key\n material into a KMS key whose key material expired or was deleted.

\n

\n GetParametersForImport returns the items that you need to import your key\n material.

\n
    \n
  • \n

    The public key (or \"wrapping key\") of an asymmetric key pair that KMS generates.

    \n

    You will use this public key to encrypt (\"wrap\") your key material while it's in\n transit to KMS.

    \n
  • \n
  • \n

    A import token that ensures that KMS can decrypt your key material and associate it\n with the correct KMS key.

    \n
  • \n
\n

The public key and its import token are permanently linked and must be used together. Each\n public key and import token set is valid for 24 hours. The expiration date and time appear in\n the ParametersValidTo field in the GetParametersForImport response.\n You cannot use an expired public key or import token in an ImportKeyMaterial\n request. If your key and token expire, send another GetParametersForImport\n request.

\n

\n GetParametersForImport requires the following information:

\n
    \n
  • \n

    The key ID of the KMS key for which you are importing the key material.

    \n
  • \n
  • \n

    The key spec of the public key (\"wrapping key\") that you will use to encrypt your key\n material during import.

    \n
  • \n
  • \n

    The wrapping algorithm that you will use with the public key to encrypt your key\n material.

    \n
  • \n
\n

You can use the same or a different public key spec and wrapping algorithm each time you\n import or reimport the same key material.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:GetParametersForImport (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

" + "smithy.api#documentation": "

Returns the public key and an import token you need to import or reimport key material for\n a KMS key.

\n

By default, KMS keys are created with key material that KMS generates. This operation\n supports Importing key\n material, an advanced feature that lets you generate and import the cryptographic\n key material for a KMS key.

\n

Before calling GetParametersForImport, use the CreateKey\n operation with an Origin value of EXTERNAL to create a KMS key with\n no key material. You can import key material for a symmetric encryption KMS key, HMAC KMS key,\n asymmetric encryption KMS key, or asymmetric signing KMS key. You can also import key material\n into a multi-Region key of any supported type. However, you can't import key material into\n a KMS key in a custom\n key store. You can also use GetParametersForImport to get a public key\n and import token to reimport\n the original key material into a KMS key whose key material expired or was\n deleted.

\n

\n GetParametersForImport returns the items that you need to import your key\n material.

\n
    \n
  • \n

    The public key (or \"wrapping key\") of an RSA key pair that KMS generates.

    \n

    You will use this public key to encrypt (\"wrap\") your key material while it's in\n transit to KMS.

    \n
  • \n
  • \n

    A import token that ensures that KMS can decrypt your key material and associate it\n with the correct KMS key.

    \n
  • \n
\n

The public key and its import token are permanently linked and must be used together. Each\n public key and import token set is valid for 24 hours. The expiration date and time appear in\n the ParametersValidTo field in the GetParametersForImport response.\n You cannot use an expired public key or import token in an ImportKeyMaterial\n request. If your key and token expire, send another GetParametersForImport\n request.

\n

\n GetParametersForImport requires the following information:

\n
    \n
  • \n

    The key ID of the KMS key for which you are importing the key material.

    \n
  • \n
  • \n

    The key spec of the public key (\"wrapping key\") that you will use to encrypt your key\n material during import.

    \n
  • \n
  • \n

    The wrapping algorithm that you will use with the public key to encrypt your key\n material.

    \n
  • \n
\n

You can use the same or a different public key spec and wrapping algorithm each time you\n import or reimport the same key material.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:GetParametersForImport (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

" } }, "com.amazonaws.kms#GetParametersForImportRequest": { @@ -3603,14 +3829,14 @@ "WrappingAlgorithm": { "target": "com.amazonaws.kms#AlgorithmSpec", "traits": { - "smithy.api#documentation": "

The algorithm you will use with the asymmetric public key (PublicKey) in the\n response to protect your key material during import. For more information, see Select a wrapping algorithm in the Key Management Service Developer Guide.

\n

For RSA_AES wrapping algorithms, you encrypt your key material with an AES key that you\n generate, then encrypt your AES key with the RSA public key from KMS. For RSAES wrapping\n algorithms, you encrypt your key material directly with the RSA public key from KMS. \n For SM2PKE wrapping algorithms, you encrypt your key material directly with the SM2 public key \n from KMS.

\n

The wrapping algorithms that you can use depend on the type of key material that you are\n importing. To import an RSA private key, you must use an RSA_AES wrapping algorithm, except \n in China Regions, where you must use the SM2PKE wrapping algorithm to import an RSA private key.

\n

The SM2PKE wrapping algorithm is available only in China Regions. The \n RSA_AES_KEY_WRAP_SHA_256 and RSA_AES_KEY_WRAP_SHA_1 \n wrapping algorithms are not supported in China Regions.

\n
    \n
  • \n

    \n RSA_AES_KEY_WRAP_SHA_256 — Supported for\n wrapping RSA and ECC key material.

    \n
  • \n
  • \n

    \n RSA_AES_KEY_WRAP_SHA_1 — Supported for\n wrapping RSA and ECC key material.

    \n
  • \n
  • \n

    \n RSAES_OAEP_SHA_256 — Supported for all types\n of key material, except RSA key material (private key).

    \n

    You cannot use the RSAES_OAEP_SHA_256 wrapping algorithm with the RSA_2048 wrapping\n key spec to wrap ECC_NIST_P521 key material.

    \n
  • \n
  • \n

    \n RSAES_OAEP_SHA_1 — Supported for all types of\n key material, except RSA key material (private key).

    \n

    You cannot use the RSAES_OAEP_SHA_1 wrapping algorithm with the RSA_2048 wrapping key\n spec to wrap ECC_NIST_P521 key material.

    \n
  • \n
  • \n

    \n RSAES_PKCS1_V1_5 (Deprecated) — As of October\n 10, 2023, KMS does not support the RSAES_PKCS1_V1_5 wrapping algorithm.

    \n
  • \n
  • \n

    \n SM2PKE (China Regions only) — supported for \n wrapping RSA, ECC, and SM2 key material.

    \n
  • \n
", + "smithy.api#documentation": "

The algorithm you will use with the RSA public key (PublicKey) in the\n response to protect your key material during import. For more information, see Select a wrapping algorithm in the Key Management Service Developer Guide.

\n

For RSA_AES wrapping algorithms, you encrypt your key material with an AES key that you\n generate, then encrypt your AES key with the RSA public key from KMS. For RSAES wrapping\n algorithms, you encrypt your key material directly with the RSA public key from KMS.

\n

The wrapping algorithms that you can use depend on the type of key material that you are\n importing. To import an RSA private key, you must use an RSA_AES wrapping algorithm.

\n
    \n
  • \n

    \n RSA_AES_KEY_WRAP_SHA_256 — Supported for\n wrapping RSA and ECC key material.

    \n
  • \n
  • \n

    \n RSA_AES_KEY_WRAP_SHA_1 — Supported for\n wrapping RSA and ECC key material.

    \n
  • \n
  • \n

    \n RSAES_OAEP_SHA_256 — Supported for all types\n of key material, except RSA key material (private key).

    \n

    You cannot use the RSAES_OAEP_SHA_256 wrapping algorithm with the RSA_2048 wrapping\n key spec to wrap ECC_NIST_P521 key material.

    \n
  • \n
  • \n

    \n RSAES_OAEP_SHA_1 — Supported for all types of\n key material, except RSA key material (private key).

    \n

    You cannot use the RSAES_OAEP_SHA_1 wrapping algorithm with the RSA_2048 wrapping key\n spec to wrap ECC_NIST_P521 key material.

    \n
  • \n
  • \n

    \n RSAES_PKCS1_V1_5 (Deprecated) — As of October\n 10, 2023, KMS does not support the RSAES_PKCS1_V1_5 wrapping algorithm.

    \n
  • \n
", "smithy.api#required": {} } }, "WrappingKeySpec": { "target": "com.amazonaws.kms#WrappingKeySpec", "traits": { - "smithy.api#documentation": "

The type of public key to return in the response. You will use this wrapping key with\n the specified wrapping algorithm to protect your key material during import.

\n

Use the longest wrapping key that is practical.

\n

You cannot use an RSA_2048 public key to directly wrap an ECC_NIST_P521 private key.\n Instead, use an RSA_AES wrapping algorithm or choose a longer RSA public key.

\n

The SM2 wrapping key spec is available only in China Regions.

", + "smithy.api#documentation": "

The type of RSA public key to return in the response. You will use this wrapping key with\n the specified wrapping algorithm to protect your key material during import.

\n

Use the longest RSA wrapping key that is practical.

\n

You cannot use an RSA_2048 public key to directly wrap an ECC_NIST_P521 private key.\n Instead, use an RSA_AES wrapping algorithm or choose a longer RSA public key.

", "smithy.api#required": {} } } @@ -3692,7 +3918,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns the public key of an asymmetric KMS key. Unlike the private key of a asymmetric\n KMS key, which never leaves KMS unencrypted, callers with kms:GetPublicKey\n permission can download the public key of an asymmetric KMS key. You can share the public key\n to allow others to encrypt messages and verify signatures outside of KMS.\n For information about asymmetric KMS keys, see Asymmetric KMS keys in the Key Management Service Developer Guide.

\n

You do not need to download the public key. Instead, you can use the public key within\n KMS by calling the Encrypt, ReEncrypt, or Verify operations with the identifier of an asymmetric KMS key. When you use the\n public key within KMS, you benefit from the authentication, authorization, and logging that\n are part of every KMS operation. You also reduce of risk of encrypting data that cannot be\n decrypted. These features are not effective outside of KMS.

\n

To help you use the public key safely outside of KMS, GetPublicKey returns\n important information about the public key in the response, including:

\n
    \n
  • \n

    \n KeySpec: The type of key material in the public key, such as\n RSA_4096 or ECC_NIST_P521.

    \n
  • \n
  • \n

    \n KeyUsage: Whether the key is used for encryption or signing.

    \n
  • \n
  • \n

    \n EncryptionAlgorithms or SigningAlgorithms: A list of the encryption algorithms or the signing\n algorithms for the key.

    \n
  • \n
\n

Although KMS cannot enforce these restrictions on external operations, it is crucial\n that you use this information to prevent the public key from being used improperly. For\n example, you can prevent a public signing key from being used encrypt data, or prevent a\n public key from being used with an encryption algorithm that is not supported by KMS. You\n can also avoid errors, such as using the wrong signing algorithm in a verification\n operation.

\n

To verify a signature outside of KMS with an SM2 public key (China Regions only), you\n must specify the distinguishing ID. By default, KMS uses 1234567812345678 as\n the distinguishing ID. For more information, see Offline\n verification with SM2 key pairs.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:GetPublicKey (key policy)

\n

\n Related operations: CreateKey\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Returns the public key of an asymmetric KMS key. Unlike the private key of a asymmetric\n KMS key, which never leaves KMS unencrypted, callers with kms:GetPublicKey\n permission can download the public key of an asymmetric KMS key. You can share the public key\n to allow others to encrypt messages and verify signatures outside of KMS.\n For information about asymmetric KMS keys, see Asymmetric KMS keys in the Key Management Service Developer Guide.

\n

You do not need to download the public key. Instead, you can use the public key within\n KMS by calling the Encrypt, ReEncrypt, or Verify operations with the identifier of an asymmetric KMS key. When you use the\n public key within KMS, you benefit from the authentication, authorization, and logging that\n are part of every KMS operation. You also reduce of risk of encrypting data that cannot be\n decrypted. These features are not effective outside of KMS.

\n

To help you use the public key safely outside of KMS, GetPublicKey returns\n important information about the public key in the response, including:

\n
    \n
  • \n

    \n KeySpec: The type of key material in the public key, such as\n RSA_4096 or ECC_NIST_P521.

    \n
  • \n
  • \n

    \n KeyUsage: Whether the key is used for encryption, signing, or deriving a shared\n secret.

    \n
  • \n
  • \n

    \n EncryptionAlgorithms, KeyAgreementAlgorithms, or SigningAlgorithms: A list of the encryption algorithms, key agreement\n algorithms, or signing algorithms for the key.

    \n
  • \n
\n

Although KMS cannot enforce these restrictions on external operations, it is crucial\n that you use this information to prevent the public key from being used improperly. For\n example, you can prevent a public signing key from being used encrypt data, or prevent a\n public key from being used with an encryption algorithm that is not supported by KMS. You\n can also avoid errors, such as using the wrong signing algorithm in a verification\n operation.

\n

To verify a signature outside of KMS with an SM2 public key (China Regions only), you\n must specify the distinguishing ID. By default, KMS uses 1234567812345678 as\n the distinguishing ID. For more information, see Offline\n verification with SM2 key pairs.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:GetPublicKey (key policy)

\n

\n Related operations: CreateKey\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To download the public key of an asymmetric KMS key", @@ -3727,7 +3953,7 @@ "GrantTokens": { "target": "com.amazonaws.kms#GrantTokenList", "traits": { - "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" } } }, @@ -3768,7 +3994,7 @@ "KeyUsage": { "target": "com.amazonaws.kms#KeyUsageType", "traits": { - "smithy.api#documentation": "

The permitted use of the public key. Valid values are ENCRYPT_DECRYPT or\n SIGN_VERIFY.

\n

This information is critical. If a public key with SIGN_VERIFY key usage\n encrypts data outside of KMS, the ciphertext cannot be decrypted.

" + "smithy.api#documentation": "

The permitted use of the public key. Valid values for asymmetric key pairs are\n ENCRYPT_DECRYPT, SIGN_VERIFY, and KEY_AGREEMENT.

\n

This information is critical. For example, if a public key with SIGN_VERIFY\n key usage encrypts data outside of KMS, the ciphertext cannot be decrypted.

" } }, "EncryptionAlgorithms": { @@ -3782,6 +4008,12 @@ "traits": { "smithy.api#documentation": "

The signing algorithms that KMS supports for this key.

\n

This field appears in the response only when the KeyUsage of the public key\n is SIGN_VERIFY.

" } + }, + "KeyAgreementAlgorithms": { + "target": "com.amazonaws.kms#KeyAgreementAlgorithmSpecList", + "traits": { + "smithy.api#documentation": "

The key agreement algorithm used to derive a shared secret. This field is present only\n when the KMS key has a KeyUsage value of KEY_AGREEMENT.

" + } } }, "traits": { @@ -3794,18 +4026,18 @@ "EncryptionContextSubset": { "target": "com.amazonaws.kms#EncryptionContextType", "traits": { - "smithy.api#documentation": "

A list of key-value pairs that must be included in the encryption context of the\n cryptographic operation request. The grant allows the cryptographic operation only when the encryption\n context in the request includes the key-value pairs specified in this constraint, although it\n can include additional key-value pairs.

" + "smithy.api#documentation": "

A list of key-value pairs that must be included in the encryption context of the\n cryptographic operation request. The grant allows the cryptographic operation only when the encryption\n context in the request includes the key-value pairs specified in this constraint, although it\n can include additional key-value pairs.

" } }, "EncryptionContextEquals": { "target": "com.amazonaws.kms#EncryptionContextType", "traits": { - "smithy.api#documentation": "

A list of key-value pairs that must match the encryption context in the cryptographic operation\n request. The grant allows the operation only when the encryption context in the request is the\n same as the encryption context specified in this constraint.

" + "smithy.api#documentation": "

A list of key-value pairs that must match the encryption context in the cryptographic operation\n request. The grant allows the operation only when the encryption context in the request is the\n same as the encryption context specified in this constraint.

" } } }, "traits": { - "smithy.api#documentation": "

Use this structure to allow cryptographic operations in the grant only when the operation request\n includes the specified encryption context.

\n

KMS applies the grant constraints only to cryptographic operations that support an\n encryption context, that is, all cryptographic operations with a symmetric KMS key. Grant\n constraints are not applied to operations that do not support an encryption context, such as\n cryptographic operations with asymmetric KMS keys and management operations, such as DescribeKey or RetireGrant.

\n \n

In a cryptographic operation, the encryption context in the decryption operation must be\n an exact, case-sensitive match for the keys and values in the encryption context of the\n encryption operation. Only the order of the pairs can vary.

\n

However, in a grant constraint, the key in each key-value pair is not case sensitive,\n but the value is case sensitive.

\n

To avoid confusion, do not use multiple encryption context pairs that differ only by\n case. To require a fully case-sensitive encryption context, use the\n kms:EncryptionContext: and kms:EncryptionContextKeys conditions\n in an IAM or key policy. For details, see kms:EncryptionContext: in the \n Key Management Service Developer Guide\n .

\n
" + "smithy.api#documentation": "

Use this structure to allow cryptographic operations in the grant only when the operation request\n includes the specified encryption context.

\n

KMS applies the grant constraints only to cryptographic operations that support an\n encryption context, that is, all cryptographic operations with a symmetric KMS key. Grant\n constraints are not applied to operations that do not support an encryption context, such as\n cryptographic operations with asymmetric KMS keys and management operations, such as DescribeKey or RetireGrant.

\n \n

In a cryptographic operation, the encryption context in the decryption operation must be\n an exact, case-sensitive match for the keys and values in the encryption context of the\n encryption operation. Only the order of the pairs can vary.

\n

However, in a grant constraint, the key in each key-value pair is not case sensitive,\n but the value is case sensitive.

\n

To avoid confusion, do not use multiple encryption context pairs that differ only by\n case. To require a fully case-sensitive encryption context, use the\n kms:EncryptionContext: and kms:EncryptionContextKeys conditions\n in an IAM or key policy. For details, see kms:EncryptionContext:context-key in the\n \n Key Management Service Developer Guide\n .

\n
" } }, "com.amazonaws.kms#GrantIdType": { @@ -3993,6 +4225,12 @@ "traits": { "smithy.api#enumValue": "VerifyMac" } + }, + "DeriveSharedSecret": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DeriveSharedSecret" + } } } }, @@ -4064,7 +4302,7 @@ } ], "traits": { - "smithy.api#documentation": "

Imports or reimports key material into an existing KMS key that was created without key\n material. ImportKeyMaterial also sets the expiration model and expiration date of\n the imported key material.

\n

By default, KMS keys are created with key material that KMS generates. This operation\n supports Importing key\n material, an advanced feature that lets you generate and import the cryptographic\n key material for a KMS key. For more information about importing key material into KMS, see\n Importing key\n material in the Key Management Service Developer Guide.

\n

After you successfully import key material into a KMS key, you can reimport\n the same key material into that KMS key, but you cannot import different key\n material. You might reimport key material to replace key material that expired or key material\n that you deleted. You might also reimport key material to change the expiration model or\n expiration date of the key material.

\n

Each time you import key material into KMS, you can determine whether\n (ExpirationModel) and when (ValidTo) the key material expires. To\n change the expiration of your key material, you must import it again, either by calling\n ImportKeyMaterial or using the import features of the KMS console.

\n

Before calling ImportKeyMaterial:

\n
    \n
  • \n

    Create or identify a KMS key with no key material. The KMS key must have an\n Origin value of EXTERNAL, which indicates that the KMS key is\n designed for imported key material.

    \n

    To create an new KMS key for imported key material, call the CreateKey operation with an Origin value of EXTERNAL. You can create a\n symmetric encryption KMS key, HMAC KMS key, asymmetric encryption KMS key, or asymmetric\n signing KMS key. You can also import key material into a multi-Region key of any\n supported type. However, you can't import key material into a KMS key in a custom key store.

    \n
  • \n
  • \n

    Use the DescribeKey operation to verify that the\n KeyState of the KMS key is PendingImport, which indicates that\n the KMS key has no key material.

    \n

    If you are reimporting the same key material into an existing KMS key, you might need\n to call the DeleteImportedKeyMaterial to delete its existing key\n material.

    \n
  • \n
  • \n

    Call the GetParametersForImport operation to get a public key and\n import token set for importing key material.

    \n
  • \n
  • \n

    Use the public key in the GetParametersForImport response to encrypt\n your key material.

    \n
  • \n
\n

Then, in an ImportKeyMaterial request, you submit your encrypted key\n material and import token. When calling this operation, you must specify the following\n values:

\n
    \n
  • \n

    The key ID or key ARN of the KMS key to associate with the imported key material. Its\n Origin must be EXTERNAL and its KeyState must be\n PendingImport. You cannot perform this operation on a KMS key in a custom key store, or on a KMS\n key in a different Amazon Web Services account. To get the Origin and KeyState\n of a KMS key, call DescribeKey.

    \n
  • \n
  • \n

    The encrypted key material.

    \n
  • \n
  • \n

    The import token that GetParametersForImport returned. You must use\n a public key and token from the same GetParametersForImport response.

    \n
  • \n
  • \n

    Whether the key material expires (ExpirationModel) and, if so, when\n (ValidTo). For help with this choice, see Setting an expiration time in the Key Management Service Developer Guide.

    \n

    If you set an expiration date, KMS deletes the key material from the KMS key on the\n specified date, making the KMS key unusable. To use the KMS key in cryptographic\n operations again, you must reimport the same key material. However, you can delete and\n reimport the key material at any time, including before the key material expires. Each\n time you reimport, you can eliminate or reset the expiration time.

    \n
  • \n
\n

When this operation is successful, the key state of the KMS key changes from\n PendingImport to Enabled, and you can use the KMS key in\n cryptographic operations.

\n

If this operation fails, use the exception to help determine the problem. If the error is\n related to the key material, the import token, or wrapping key, use GetParametersForImport to get a new public key and import token for the KMS key\n and repeat the import procedure. For help, see How To Import Key\n Material in the Key Management Service Developer Guide.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:ImportKeyMaterial (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Imports or reimports key material into an existing KMS key that was created without key\n material. You can also use this operation to set or update the expiration model and expiration\n date of the imported key material.

\n

By default, KMS creates KMS keys with key material that it generates. You can also\n generate and import your own key material. For more information about importing key material,\n see Importing key\n material.

\n

For asymmetric, HMAC and multi-Region keys, you cannot change the key material after the\n initial import. You can import multiple key materials into single-Region, symmetric encryption\n keys and rotate the key material on demand using RotateKeyOnDemand.

\n

After you import key material, you can reimport\n the same key material into that KMS key or, if the key supports on-demand rotation,\n import new key material. You can use the ImportType parameter to indicate whether\n you are importing new key material or re-importing previously imported key material. You might\n reimport key material to replace key material that expired or key material that you deleted.\n You might also reimport key material to change the expiration model or expiration date of the\n key material.

\n

Each time you import key material into KMS, you can determine whether\n (ExpirationModel) and when (ValidTo) the key material expires. To\n change the expiration of your key material, you must import it again, either by calling\n ImportKeyMaterial or using the import features of the KMS console.

\n

Before you call ImportKeyMaterial, complete these steps:

\n
    \n
  • \n

    Create or identify a KMS key with EXTERNAL origin, which indicates that\n the KMS key is designed for imported key material.

    \n

    To create a new KMS key for imported key material, call the CreateKey operation with an Origin value of EXTERNAL. You can create a\n symmetric encryption KMS key, HMAC KMS key, asymmetric encryption KMS key, asymmetric key\n agreement key, or asymmetric signing KMS key. You can also import key material into a\n multi-Region key of any supported type. However, you can't import key material\n into a KMS key in a custom key store.

    \n
  • \n
  • \n

    Call the GetParametersForImport operation to get a public key and\n import token set for importing key material.

    \n
  • \n
  • \n

    Use the public key in the GetParametersForImport response to encrypt\n your key material.

    \n
  • \n
\n

Then, in an ImportKeyMaterial request, you submit your encrypted key\n material and import token. When calling this operation, you must specify the following\n values:

\n
    \n
  • \n

    The key ID or key ARN of the KMS key to associate with the imported key material. Its\n Origin must be EXTERNAL and its KeyState must be\n PendingImport. You cannot perform this operation on a KMS key in a\n custom key store, or on a KMS key in a different Amazon Web Services account. To get the\n Origin and KeyState of a KMS key, call DescribeKey.

    \n
  • \n
  • \n

    The encrypted key material.

    \n
  • \n
  • \n

    The import token that GetParametersForImport returned. You must use\n a public key and token from the same GetParametersForImport response.

    \n
  • \n
  • \n

    Whether the key material expires (ExpirationModel) and, if so, when\n (ValidTo). For help with this choice, see Setting an expiration time in the Key Management Service Developer Guide.

    \n

    If you set an expiration date, KMS deletes the key material from the KMS key on the\n specified date, making the KMS key unusable. To use the KMS key in cryptographic\n operations again, you must reimport the same key material. However, you can delete and\n reimport the key material at any time, including before the key material expires. Each\n time you reimport, you can eliminate or reset the expiration time.

    \n
  • \n
\n

When this operation is successful, the key state of the KMS key changes from\n PendingImport to Enabled, and you can use the KMS key in\n cryptographic operations. For single-Region, symmetric encryption keys, you will need to\n import all of the key materials associated with the KMS key to change its state to\n Enabled. Use the ListKeyRotations operation to list the ID and\n import state of each key material associated with a KMS key.

\n

If this operation fails, use the exception to help determine the problem. If the error is\n related to the key material, the import token, or wrapping key, use GetParametersForImport to get a new public key and import token for the KMS key\n and repeat the import procedure. For help, see Create a KMS key with imported key\n material in the Key Management Service Developer Guide.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:ImportKeyMaterial (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To import key material into a KMS key", @@ -4074,6 +4312,10 @@ "ImportToken": "", "EncryptedKeyMaterial": "", "ExpirationModel": "KEY_MATERIAL_DOES_NOT_EXPIRE" + }, + "output": { + "KeyId": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", + "KeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6" } } ] @@ -4085,7 +4327,7 @@ "KeyId": { "target": "com.amazonaws.kms#KeyIdType", "traits": { - "smithy.api#documentation": "

The identifier of the KMS key that will be associated with the imported key material. This\n must be the same KMS key specified in the KeyID parameter of the corresponding\n GetParametersForImport request. The Origin of the KMS key\n must be EXTERNAL and its KeyState must be\n PendingImport.

\n

The KMS key can be a symmetric encryption KMS key, HMAC KMS key, asymmetric encryption KMS\n key, or asymmetric signing KMS key, including a multi-Region key of any supported\n type. You cannot perform this operation on a KMS key in a custom key store, or on a KMS key in\n a different Amazon Web Services account.

\n

Specify the key ID or key ARN of the KMS key.

\n

For example:

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
\n

To get the key ID and key ARN for a KMS key, use ListKeys or DescribeKey.

", + "smithy.api#documentation": "

The identifier of the KMS key that will be associated with the imported key material. This\n must be the same KMS key specified in the KeyID parameter of the corresponding\n GetParametersForImport request. The Origin of the KMS key\n must be EXTERNAL and its KeyState must be\n PendingImport.

\n

The KMS key can be a symmetric encryption KMS key, HMAC KMS key, asymmetric encryption KMS\n key, or asymmetric signing KMS key, including a multi-Region key of any supported\n type. You cannot perform this operation on a KMS key in a custom key store, or on a KMS key in\n a different Amazon Web Services account.

\n

Specify the key ID or key ARN of the KMS key.

\n

For example:

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
\n

To get the key ID and key ARN for a KMS key, use ListKeys or DescribeKey.

", "smithy.api#required": {} } }, @@ -4112,7 +4354,25 @@ "ExpirationModel": { "target": "com.amazonaws.kms#ExpirationModelType", "traits": { - "smithy.api#documentation": "

Specifies whether the key material expires. The default is\n KEY_MATERIAL_EXPIRES. For help with this choice, see Setting an expiration time in the Key Management Service Developer Guide.

\n

When the value of ExpirationModel is KEY_MATERIAL_EXPIRES, you\n must specify a value for the ValidTo parameter. When value is\n KEY_MATERIAL_DOES_NOT_EXPIRE, you must omit the ValidTo\n parameter.

\n

You cannot change the ExpirationModel or ValidTo values for the\n current import after the request completes. To change either value, you must reimport the key\n material.

" + "smithy.api#documentation": "

Specifies whether the key material expires. The default is\n KEY_MATERIAL_EXPIRES. For help with this choice, see Setting\n an expiration time in the Key Management Service Developer Guide.

\n

When the value of ExpirationModel is KEY_MATERIAL_EXPIRES, you\n must specify a value for the ValidTo parameter. When value is\n KEY_MATERIAL_DOES_NOT_EXPIRE, you must omit the ValidTo\n parameter.

\n

You cannot change the ExpirationModel or ValidTo values for the\n current import after the request completes. To change either value, you must reimport the key\n material.

" + } + }, + "ImportType": { + "target": "com.amazonaws.kms#ImportType", + "traits": { + "smithy.api#documentation": "

Indicates whether the key material being imported is previously associated with this KMS\n key or not. This parameter is optional and only usable with symmetric encryption keys. If no\n key material has ever been imported into the KMS key, and this parameter is omitted, the\n parameter defaults to NEW_KEY_MATERIAL. After the first key material is imported,\n if this parameter is omitted then the parameter defaults to\n EXISTING_KEY_MATERIAL.

" + } + }, + "KeyMaterialDescription": { + "target": "com.amazonaws.kms#KeyMaterialDescriptionType", + "traits": { + "smithy.api#documentation": "

Description for the key material being imported. This parameter is optional and only\n usable with symmetric encryption keys. If you do not specify a key material description, KMS\n retains the value you specified when you last imported the same key material into this KMS\n key.

" + } + }, + "KeyMaterialId": { + "target": "com.amazonaws.kms#BackingKeyIdType", + "traits": { + "smithy.api#documentation": "

Identifies the key material being imported. This parameter is optional and only usable\n with symmetric encryption keys. You cannot specify a key material ID with\n ImportType set to NEW_KEY_MATERIAL. Whenever you import key\n material into a symmetric encryption key, KMS assigns a unique identifier to the key\n material based on the KMS key ID and the imported key material. When you re-import key\n material with a specified key material ID, KMS:

\n
    \n
  • \n

    Computes the identifier for the key material

    \n
  • \n
  • \n

    Matches the computed identifier against the specified key material ID

    \n
  • \n
  • \n

    Verifies that the key material ID is already associated with the KMS key

    \n
  • \n
\n

To get the list of key material IDs associated with a KMS key, use ListKeyRotations.

" } } }, @@ -4122,11 +4382,75 @@ }, "com.amazonaws.kms#ImportKeyMaterialResponse": { "type": "structure", - "members": {}, + "members": { + "KeyId": { + "target": "com.amazonaws.kms#KeyIdType", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (key ARN) of the KMS key into which key material was imported.

" + } + }, + "KeyMaterialId": { + "target": "com.amazonaws.kms#BackingKeyIdType", + "traits": { + "smithy.api#documentation": "

Identifies the imported key material.

" + } + } + }, "traits": { "smithy.api#output": {} } }, + "com.amazonaws.kms#ImportState": { + "type": "enum", + "members": { + "IMPORTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IMPORTED" + } + }, + "PENDING_IMPORT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PENDING_IMPORT" + } + } + } + }, + "com.amazonaws.kms#ImportType": { + "type": "enum", + "members": { + "NEW_KEY_MATERIAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NEW_KEY_MATERIAL" + } + }, + "EXISTING_KEY_MATERIAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EXISTING_KEY_MATERIAL" + } + } + } + }, + "com.amazonaws.kms#IncludeKeyMaterial": { + "type": "enum", + "members": { + "ALL_KEY_MATERIAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ALL_KEY_MATERIAL" + } + }, + "ROTATIONS_ONLY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ROTATIONS_ONLY" + } + } + } + }, "com.amazonaws.kms#IncorrectKeyException": { "type": "structure", "members": { @@ -4156,7 +4480,7 @@ "code": "IncorrectKeyMaterialException", "httpResponseCode": 400 }, - "smithy.api#documentation": "

The request was rejected because the key material in the request is, expired, invalid, or\n is not the same key material that was previously imported into this KMS key.

", + "smithy.api#documentation": "

The request was rejected because the key material in the request is, expired, invalid, or\n does not meet expectations. For example, it is not the same key material that was previously\n imported or KMS expected new key material but the key material being imported is already\n associated with the KMS key.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -4292,7 +4616,7 @@ "code": "InvalidKeyUsage", "httpResponseCode": 400 }, - "smithy.api#documentation": "

The request was rejected for one of the following reasons:

\n
    \n
  • \n

    The KeyUsage value of the KMS key is incompatible with the API\n operation.

    \n
  • \n
  • \n

    The encryption algorithm or signing algorithm specified for the operation is\n incompatible with the type of key material in the KMS key (KeySpec).

    \n
  • \n
\n

For encrypting, decrypting, re-encrypting, and generating data keys, the\n KeyUsage must be ENCRYPT_DECRYPT. For signing and verifying\n messages, the KeyUsage must be SIGN_VERIFY. For generating and\n verifying message authentication codes (MACs), the KeyUsage must be\n GENERATE_VERIFY_MAC. To find the KeyUsage of a KMS key, use the\n DescribeKey operation.

\n

To find the encryption or signing algorithms supported for a particular KMS key, use the\n DescribeKey operation.

", + "smithy.api#documentation": "

The request was rejected for one of the following reasons:

\n
    \n
  • \n

    The KeyUsage value of the KMS key is incompatible with the API\n operation.

    \n
  • \n
  • \n

    The encryption algorithm or signing algorithm specified for the operation is\n incompatible with the type of key material in the KMS key (KeySpec).

    \n
  • \n
\n

For encrypting, decrypting, re-encrypting, and generating data keys, the\n KeyUsage must be ENCRYPT_DECRYPT. For signing and verifying\n messages, the KeyUsage must be SIGN_VERIFY. For generating and\n verifying message authentication codes (MACs), the KeyUsage must be\n GENERATE_VERIFY_MAC. For deriving key agreement secrets, the\n KeyUsage must be KEY_AGREEMENT. To find the KeyUsage\n of a KMS key, use the DescribeKey operation.

\n

To find the encryption or signing algorithms supported for a particular KMS key, use the\n DescribeKey operation.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -4382,6 +4706,23 @@ "smithy.api#httpError": 409 } }, + "com.amazonaws.kms#KeyAgreementAlgorithmSpec": { + "type": "enum", + "members": { + "ECDH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ECDH" + } + } + } + }, + "com.amazonaws.kms#KeyAgreementAlgorithmSpecList": { + "type": "list", + "member": { + "target": "com.amazonaws.kms#KeyAgreementAlgorithmSpec" + } + }, "com.amazonaws.kms#KeyEncryptionMechanism": { "type": "enum", "members": { @@ -4445,6 +4786,39 @@ } } }, + "com.amazonaws.kms#KeyMaterialDescriptionType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 256 + }, + "smithy.api#pattern": "^[a-zA-Z0-9:/_\\s.-]+$" + } + }, + "com.amazonaws.kms#KeyMaterialState": { + "type": "enum", + "members": { + "NON_CURRENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NON_CURRENT" + } + }, + "CURRENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CURRENT" + } + }, + "PENDING_ROTATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PENDING_ROTATION" + } + } + } + }, "com.amazonaws.kms#KeyMetadata": { "type": "structure", "members": { @@ -4489,7 +4863,7 @@ "KeyUsage": { "target": "com.amazonaws.kms#KeyUsageType", "traits": { - "smithy.api#documentation": "

The cryptographic operations for which you can use the KMS key.

" + "smithy.api#documentation": "

The cryptographic operations for which you can use the KMS key.

" } }, "KeyState": { @@ -4507,7 +4881,7 @@ "ValidTo": { "target": "com.amazonaws.kms#DateType", "traits": { - "smithy.api#documentation": "

The time at which the imported key material expires. When the key material expires, KMS\n deletes the key material and the KMS key becomes unusable. This value is present only for KMS\n keys whose Origin is EXTERNAL and whose ExpirationModel\n is KEY_MATERIAL_EXPIRES, otherwise this value is omitted.

" + "smithy.api#documentation": "

The earliest time at which any imported key material permanently associated with this KMS\n key expires. When a key material expires, KMS deletes the key material and the KMS key\n becomes unusable. This value is present only for KMS keys whose Origin is\n EXTERNAL and the ExpirationModel is\n KEY_MATERIAL_EXPIRES, otherwise this value is omitted.

" } }, "Origin": { @@ -4519,13 +4893,13 @@ "CustomKeyStoreId": { "target": "com.amazonaws.kms#CustomKeyStoreIdType", "traits": { - "smithy.api#documentation": "

A unique identifier for the custom key store that contains the KMS key. This field is\n present only when the KMS key is created in a custom key store.

" + "smithy.api#documentation": "

A unique identifier for the custom key store that contains the KMS key. This field is\n present only when the KMS key is created in a custom key store.

" } }, "CloudHsmClusterId": { "target": "com.amazonaws.kms#CloudHsmClusterIdType", "traits": { - "smithy.api#documentation": "

The cluster ID of the CloudHSM cluster that contains the key material for the KMS key. When\n you create a KMS key in an CloudHSM custom key store, KMS creates the key material for the KMS\n key in the associated CloudHSM cluster. This field is present only when the KMS key is created in\n an CloudHSM key store.

" + "smithy.api#documentation": "

The cluster ID of the CloudHSM cluster that contains the key material for the KMS key. When\n you create a KMS key in an CloudHSM custom key store, KMS creates the key material for the KMS\n key in the associated CloudHSM cluster. This field is present only when the KMS key is created in\n an CloudHSM key store.

" } }, "ExpirationModel": { @@ -4567,6 +4941,12 @@ "smithy.api#documentation": "

The signing algorithms that the KMS key supports. You cannot use the KMS key with other\n signing algorithms within KMS.

\n

This field appears only when the KeyUsage of the KMS key is\n SIGN_VERIFY.

" } }, + "KeyAgreementAlgorithms": { + "target": "com.amazonaws.kms#KeyAgreementAlgorithmSpecList", + "traits": { + "smithy.api#documentation": "

The key agreement algorithm used to derive a shared secret.

" + } + }, "MultiRegion": { "target": "com.amazonaws.kms#NullableBooleanType", "traits": { @@ -4596,6 +4976,12 @@ "traits": { "smithy.api#documentation": "

Information about the external key that is associated with a KMS key in an external key\n store.

\n

For more information, see External key in the\n Key Management Service Developer Guide.

" } + }, + "CurrentKeyMaterialId": { + "target": "com.amazonaws.kms#BackingKeyIdType", + "traits": { + "smithy.api#documentation": "

Identifies the current key material. This value is present for symmetric encryption keys\n with AWS_KMS origin and single-Region, symmetric encryption keys with\n EXTERNAL origin. These KMS keys support automatic or on-demand key rotation and\n can have multiple key materials associated with them. KMS uses the current key material for\n both encryption and decryption, and the non-current key material for decryption operations\n only.

" + } } }, "traits": { @@ -4682,6 +5068,24 @@ "traits": { "smithy.api#enumValue": "SM2" } + }, + "ML_DSA_44": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ML_DSA_44" + } + }, + "ML_DSA_65": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ML_DSA_65" + } + }, + "ML_DSA_87": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ML_DSA_87" + } } } }, @@ -4785,6 +5189,12 @@ "traits": { "smithy.api#enumValue": "GENERATE_VERIFY_MAC" } + }, + "KEY_AGREEMENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KEY_AGREEMENT" + } } } }, @@ -4800,7 +5210,7 @@ "code": "LimitExceeded", "httpResponseCode": 400 }, - "smithy.api#documentation": "

The request was rejected because a quota was exceeded. For more information, see Quotas in the\n Key Management Service Developer Guide.

", + "smithy.api#documentation": "

The request was rejected because a length constraint or quota was exceeded. For more\n information, see Quotas in\n the Key Management Service Developer Guide.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -4840,7 +5250,7 @@ } ], "traits": { - "smithy.api#documentation": "

Gets a list of aliases in the caller's Amazon Web Services account and region. For more information\n about aliases, see CreateAlias.

\n

By default, the ListAliases operation returns all aliases in the account and\n region. To get only the aliases associated with a particular KMS key, use the\n KeyId parameter.

\n

The ListAliases response can include aliases that you created and associated\n with your customer managed keys, and aliases that Amazon Web Services created and associated with Amazon Web Services\n managed keys in your account. You can recognize Amazon Web Services aliases because their names have the\n format aws/, such as aws/dynamodb.

\n

The response might also include aliases that have no TargetKeyId field. These\n are predefined aliases that Amazon Web Services has created but has not yet associated with a KMS key.\n Aliases that Amazon Web Services creates in your account, including predefined aliases, do not count against\n your KMS aliases\n quota.

\n

\n Cross-account use: No. ListAliases does not\n return aliases in other Amazon Web Services accounts.

\n

\n Required permissions: kms:ListAliases (IAM policy)

\n

For details, see Controlling access to aliases in the\n Key Management Service Developer Guide.

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Gets a list of aliases in the caller's Amazon Web Services account and region. For more information\n about aliases, see CreateAlias.

\n

By default, the ListAliases operation returns all aliases in the account and\n region. To get only the aliases associated with a particular KMS key, use the\n KeyId parameter.

\n

The ListAliases response can include aliases that you created and associated\n with your customer managed keys, and aliases that Amazon Web Services created and associated with Amazon Web Services\n managed keys in your account. You can recognize Amazon Web Services aliases because their names have the\n format aws/, such as aws/dynamodb.

\n

The response might also include aliases that have no TargetKeyId field. These\n are predefined aliases that Amazon Web Services has created but has not yet associated with a KMS key.\n Aliases that Amazon Web Services creates in your account, including predefined aliases, do not count against\n your KMS\n aliases quota.

\n

\n Cross-account use: No. ListAliases does not\n return aliases in other Amazon Web Services accounts.

\n

\n Required permissions: kms:ListAliases (IAM policy)

\n

For details, see Controlling access to aliases in the Key Management Service Developer Guide.

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To list aliases", @@ -4985,7 +5395,7 @@ } ], "traits": { - "smithy.api#documentation": "

Gets a list of all grants for the specified KMS key.

\n

You must specify the KMS key in all requests. You can filter the grant list by grant ID or\n grantee principal.

\n

For detailed information about grants, including grant terminology, see Grants in KMS in the\n \n Key Management Service Developer Guide\n . For examples of working with grants in several\n programming languages, see Programming grants.

\n \n

The GranteePrincipal field in the ListGrants response usually contains the\n user or role designated as the grantee principal in the grant. However, when the grantee\n principal in the grant is an Amazon Web Services service, the GranteePrincipal field contains\n the service\n principal, which might represent several different grantee principals.

\n
\n

\n Cross-account use: Yes. To perform this operation on a KMS key in a different Amazon Web Services account, specify the key\n ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:ListGrants (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Gets a list of all grants for the specified KMS key.

\n

You must specify the KMS key in all requests. You can filter the grant list by grant ID or\n grantee principal.

\n

For detailed information about grants, including grant terminology, see Grants in KMS in the\n \n Key Management Service Developer Guide\n . For examples of creating grants in several\n programming languages, see Use CreateGrant with an Amazon Web Services SDK or CLI.

\n \n

The GranteePrincipal field in the ListGrants response usually contains the\n user or role designated as the grantee principal in the grant. However, when the grantee\n principal in the grant is an Amazon Web Services service, the GranteePrincipal field contains\n the service\n principal, which might represent several different grantee principals.

\n
\n

\n Cross-account use: Yes. To perform this operation on a KMS key in a different Amazon Web Services account, specify the key\n ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:ListGrants (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#paginated": { "inputToken": "Marker", "outputToken": "NextMarker", @@ -5083,7 +5493,7 @@ } ], "traits": { - "smithy.api#documentation": "

Gets the names of the key policies that are attached to a KMS key. This operation is\n designed to get policy names that you can use in a GetKeyPolicy operation.\n However, the only valid policy name is default.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:ListKeyPolicies (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Gets the names of the key policies that are attached to a KMS key. This operation is\n designed to get policy names that you can use in a GetKeyPolicy operation.\n However, the only valid policy name is default.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:ListKeyPolicies (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To list key policies for a KMS key", @@ -5190,7 +5600,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns information about all completed key material rotations for the specified KMS\n key.

\n

You must specify the KMS key in all requests. You can refine the key rotations list by\n limiting the number of rotations returned.

\n

For detailed information about automatic and on-demand key rotations, see Rotating KMS keys in the\n Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:ListKeyRotations (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Returns information about the key materials associated with the specified KMS key. You can\n use the optional IncludeKeyMaterial parameter to control which key materials are\n included in the response.

\n

You must specify the KMS key in all requests. You can refine the key rotations list by\n limiting the number of rotations returned.

\n

For detailed information about automatic and on-demand key rotations, see Rotate KMS keys in the\n Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:ListKeyRotations (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#paginated": { "inputToken": "Marker", "outputToken": "NextMarker", @@ -5209,6 +5619,12 @@ "smithy.api#required": {} } }, + "IncludeKeyMaterial": { + "target": "com.amazonaws.kms#IncludeKeyMaterial", + "traits": { + "smithy.api#documentation": "

Use this optional parameter to control which key materials associated with this key are\n listed in the response. The default value of this parameter is ROTATIONS_ONLY. If\n you omit this parameter, KMS returns information on the key materials created by automatic\n or on-demand key rotation. When you specify a value of ALL_KEY_MATERIAL, KMS\n adds the first key material and any imported key material pending rotation to the response.\n This parameter can only be used with KMS keys that support automatic or on-demand key\n rotation.

" + } + }, "Limit": { "target": "com.amazonaws.kms#LimitType", "traits": { @@ -5232,7 +5648,7 @@ "Rotations": { "target": "com.amazonaws.kms#RotationsList", "traits": { - "smithy.api#documentation": "

A list of completed key material rotations.

" + "smithy.api#documentation": "

A list of completed key material rotations. When the optional input parameter\n IncludeKeyMaterial is specified with a value of ALL_KEY_MATERIAL,\n this list includes the first key material and any imported key material pending\n rotation.

" } }, "NextMarker": { @@ -5273,7 +5689,7 @@ } ], "traits": { - "smithy.api#documentation": "

Gets a list of all KMS keys in the caller's Amazon Web Services account and Region.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:ListKeys (IAM policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Gets a list of all KMS keys in the caller's Amazon Web Services account and Region.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:ListKeys (IAM policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To list KMS keys", @@ -5391,7 +5807,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns all tags on the specified KMS key.

\n

For general information about tags, including the format and syntax, see Tagging Amazon Web Services resources in\n the Amazon Web Services General Reference. For information about using\n tags in KMS, see Tagging\n keys.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:ListResourceTags (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Returns all tags on the specified KMS key.

\n

For general information about tags, including the format and syntax, see Tagging Amazon Web Services resources in\n the Amazon Web Services General Reference. For information about using\n tags in KMS, see Tags in\n KMS.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:ListResourceTags (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To list tags for a KMS key", @@ -5506,7 +5922,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns information about all grants in the Amazon Web Services account and Region that have the\n specified retiring principal.

\n

You can specify any principal in your Amazon Web Services account. The grants that are returned include\n grants for KMS keys in your Amazon Web Services account and other Amazon Web Services accounts. You might use this\n operation to determine which grants you may retire. To retire a grant, use the RetireGrant operation.

\n

For detailed information about grants, including grant terminology, see Grants in KMS in the\n \n Key Management Service Developer Guide\n . For examples of working with grants in several\n programming languages, see Programming grants.

\n

\n Cross-account use: You must specify a principal in your\n Amazon Web Services account. This operation returns a list of grants where the retiring principal specified\n in the ListRetirableGrants request is the same retiring principal on the grant.\n This can include grants on KMS keys owned by other Amazon Web Services accounts, but you do not need\n kms:ListRetirableGrants permission (or any other additional permission) in any\n Amazon Web Services account other than your own.

\n

\n Required permissions: kms:ListRetirableGrants (IAM policy) in your\n Amazon Web Services account.

\n \n

KMS authorizes ListRetirableGrants requests by evaluating the caller\n account's kms:ListRetirableGrants permissions. The authorized resource in\n ListRetirableGrants calls is the retiring principal specified in the request.\n KMS does not evaluate the caller's permissions to verify their access to any KMS keys or\n grants that might be returned by the ListRetirableGrants call.

\n
\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Returns information about all grants in the Amazon Web Services account and Region that have the\n specified retiring principal.

\n

You can specify any principal in your Amazon Web Services account. The grants that are returned include\n grants for KMS keys in your Amazon Web Services account and other Amazon Web Services accounts. You might use this\n operation to determine which grants you may retire. To retire a grant, use the RetireGrant operation.

\n

For detailed information about grants, including grant terminology, see Grants in KMS in the\n \n Key Management Service Developer Guide\n . For examples of creating grants in several\n programming languages, see Use CreateGrant with an Amazon Web Services SDK or CLI.

\n

\n Cross-account use: You must specify a principal in your\n Amazon Web Services account. This operation returns a list of grants where the retiring principal specified\n in the ListRetirableGrants request is the same retiring principal on the grant.\n This can include grants on KMS keys owned by other Amazon Web Services accounts, but you do not need\n kms:ListRetirableGrants permission (or any other additional permission) in any\n Amazon Web Services account other than your own.

\n

\n Required permissions: kms:ListRetirableGrants (IAM policy) in your\n Amazon Web Services account.

\n \n

KMS authorizes ListRetirableGrants requests by evaluating the caller\n account's kms:ListRetirableGrants permissions. The authorized resource in\n ListRetirableGrants calls is the retiring principal specified in the request.\n KMS does not evaluate the caller's permissions to verify their access to any KMS keys or\n grants that might be returned by the ListRetirableGrants call.

\n
\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#paginated": { "inputToken": "Marker", "outputToken": "NextMarker", @@ -5618,6 +6034,12 @@ "traits": { "smithy.api#enumValue": "DIGEST" } + }, + "EXTERNAL_MU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EXTERNAL_MU" + } } } }, @@ -5847,7 +6269,7 @@ } ], "traits": { - "smithy.api#documentation": "

Attaches a key policy to the specified KMS key.

\n

For more information about key policies, see Key Policies in the Key Management Service Developer Guide.\n For help writing and formatting a JSON policy document, see the IAM JSON Policy Reference in the \n Identity and Access Management User Guide\n . For examples of adding a key policy in multiple programming languages,\n see Setting a key policy in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:PutKeyPolicy (key policy)

\n

\n Related operations: GetKeyPolicy\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Attaches a key policy to the specified KMS key.

\n

For more information about key policies, see Key Policies in the Key Management Service Developer Guide.\n For help writing and formatting a JSON policy document, see the IAM JSON Policy Reference in the \n Identity and Access Management User Guide\n . For examples of adding a key policy in multiple programming languages,\n see Use\n PutKeyPolicy with an Amazon Web Services SDK or CLI in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:PutKeyPolicy (key policy)

\n

\n Related operations: GetKeyPolicy\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To attach a key policy to a KMS key", @@ -5874,13 +6296,13 @@ "PolicyName": { "target": "com.amazonaws.kms#PolicyNameType", "traits": { - "smithy.api#documentation": "

The name of the key policy. If no policy name is specified, the default value is default. The only valid value is default.

" + "smithy.api#documentation": "

The name of the key policy. If no policy name is specified, the default value is\n default. The only valid value is default.

" } }, "Policy": { "target": "com.amazonaws.kms#PolicyType", "traits": { - "smithy.api#documentation": "

The key policy to attach to the KMS key.

\n

The key policy must meet the following criteria:

\n
    \n
  • \n

    The key policy must allow the calling principal to make a\n subsequent PutKeyPolicy request on the KMS key. This reduces the risk that\n the KMS key becomes unmanageable. For more information, see Default key policy in the Key Management Service Developer Guide. (To omit\n this condition, set BypassPolicyLockoutSafetyCheck to true.)

    \n
  • \n
  • \n

    Each statement in the key policy must contain one or more principals. The principals\n in the key policy must exist and be visible to KMS. When you create a new Amazon Web Services\n principal, you might need to enforce a delay before including the new principal in a key\n policy because the new principal might not be immediately visible to KMS. For more\n information, see Changes that I make are not always immediately visible in the Amazon Web Services\n Identity and Access Management User Guide.

    \n
  • \n
\n

A key policy document can include only the following characters:

\n
    \n
  • \n

    Printable ASCII characters from the space character (\\u0020) through the end of the ASCII character range.

    \n
  • \n
  • \n

    Printable characters in the Basic Latin and Latin-1 Supplement character set (through \\u00FF).

    \n
  • \n
  • \n

    The tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D) special characters

    \n
  • \n
\n

For information about key policies, see Key policies in KMS in the\n Key Management Service Developer Guide.For help writing and formatting a JSON policy document, see the IAM JSON Policy Reference in the \n Identity and Access Management User Guide\n .

", + "smithy.api#documentation": "

The key policy to attach to the KMS key.

\n

The key policy must meet the following criteria:

\n
    \n
  • \n

    The key policy must allow the calling principal to make a\n subsequent PutKeyPolicy request on the KMS key. This reduces the risk that\n the KMS key becomes unmanageable. For more information, see Default key policy in the Key Management Service Developer Guide. (To omit\n this condition, set BypassPolicyLockoutSafetyCheck to true.)

    \n
  • \n
  • \n

    Each statement in the key policy must contain one or more principals. The principals\n in the key policy must exist and be visible to KMS. When you create a new Amazon Web Services\n principal, you might need to enforce a delay before including the new principal in a key\n policy because the new principal might not be immediately visible to KMS. For more\n information, see Changes that I make are not always immediately visible in the Amazon Web Services\n Identity and Access Management User Guide.

    \n
  • \n
\n \n

If either of the required Resource or Action elements are\n missing from a key policy statement, the policy statement has no effect. When a key policy\n statement is missing one of these elements, the KMS console correctly reports an error,\n but the PutKeyPolicy API request succeeds, even though the policy statement is\n ineffective.

\n

For more information on required key policy elements, see Elements in a key\n policy in the Key Management Service Developer Guide.

\n
\n

A key policy document can include only the following characters:

\n
    \n
  • \n

    Printable ASCII characters from the space character (\\u0020) through the end of the ASCII character range.

    \n
  • \n
  • \n

    Printable characters in the Basic Latin and Latin-1 Supplement character set (through \\u00FF).

    \n
  • \n
  • \n

    The tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D) special characters

    \n
  • \n
\n \n

If the key policy exceeds the length constraint, KMS returns a\n LimitExceededException.

\n
\n

For information about key policies, see Key policies in KMS in the\n Key Management Service Developer Guide.For help writing and formatting a JSON policy document, see the IAM JSON Policy Reference in the \n Identity and Access Management User Guide\n .

", "smithy.api#required": {} } }, @@ -5940,7 +6362,7 @@ } ], "traits": { - "smithy.api#documentation": "

Decrypts ciphertext and then reencrypts it entirely within KMS. You can use this\n operation to change the KMS key under which data is encrypted, such as when you manually\n rotate a KMS key or change the KMS key that protects a ciphertext. You can also use\n it to reencrypt ciphertext under the same KMS key, such as to change the encryption\n context of a ciphertext.

\n

The ReEncrypt operation can decrypt ciphertext that was encrypted by using a\n KMS key in an KMS operation, such as Encrypt or GenerateDataKey. It can also decrypt ciphertext that was encrypted by using the\n public key of an asymmetric KMS key\n outside of KMS. However, it cannot decrypt ciphertext produced by other libraries, such as\n the Amazon Web Services Encryption SDK or\n Amazon S3\n client-side encryption. These libraries return a ciphertext format that is\n incompatible with KMS.

\n

When you use the ReEncrypt operation, you need to provide information for the\n decrypt operation and the subsequent encrypt operation.

\n
    \n
  • \n

    If your ciphertext was encrypted under an asymmetric KMS key, you must use the\n SourceKeyId parameter to identify the KMS key that encrypted the\n ciphertext. You must also supply the encryption algorithm that was used. This information\n is required to decrypt the data.

    \n
  • \n
  • \n

    If your ciphertext was encrypted under a symmetric encryption KMS key, the\n SourceKeyId parameter is optional. KMS can get this information from\n metadata that it adds to the symmetric ciphertext blob. This feature adds durability to\n your implementation by ensuring that authorized users can decrypt ciphertext decades after\n it was encrypted, even if they've lost track of the key ID. However, specifying the source\n KMS key is always recommended as a best practice. When you use the\n SourceKeyId parameter to specify a KMS key, KMS uses only the KMS key you\n specify. If the ciphertext was encrypted under a different KMS key, the\n ReEncrypt operation fails. This practice ensures that you use the KMS key\n that you intend.

    \n
  • \n
  • \n

    To reencrypt the data, you must use the DestinationKeyId parameter to\n specify the KMS key that re-encrypts the data after it is decrypted. If the destination\n KMS key is an asymmetric KMS key, you must also provide the encryption algorithm. The\n algorithm that you choose must be compatible with the KMS key.

    \n \n

    When you use an asymmetric KMS key to encrypt or reencrypt data, be sure to record the KMS key and encryption algorithm that you choose. You will be required to provide the same KMS key and encryption algorithm when you decrypt the data. If the KMS key and algorithm do not match the values used to encrypt the data, the decrypt operation fails.

    \n

    You are not required to supply the key ID and encryption algorithm when you decrypt with symmetric encryption KMS keys because KMS stores this information in the ciphertext blob. KMS cannot store metadata in ciphertext generated with asymmetric keys. The standard format for asymmetric key ciphertext does not include configurable fields.

    \n
    \n
  • \n
\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. The source KMS key and\n destination KMS key can be in different Amazon Web Services accounts. Either or both KMS keys can be in a\n different account than the caller. To specify a KMS key in a different account, you must use\n its key ARN or alias ARN.

\n

\n Required permissions:

\n
    \n
  • \n

    \n kms:ReEncryptFrom\n permission on the source KMS key (key policy)

    \n
  • \n
  • \n

    \n kms:ReEncryptTo\n permission on the destination KMS key (key policy)

    \n
  • \n
\n

To permit reencryption from or to a KMS key, include the \"kms:ReEncrypt*\"\n permission in your key policy. This permission is\n automatically included in the key policy when you use the console to create a KMS key. But you\n must include it manually when you create a KMS key programmatically or when you use the PutKeyPolicy operation to set a key policy.

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Decrypts ciphertext and then reencrypts it entirely within KMS. You can use this\n operation to change the KMS key under which data is encrypted, such as when you manually rotate a\n KMS key or change the KMS key that protects a ciphertext. You can also use it to reencrypt\n ciphertext under the same KMS key, such as to change the encryption context of a ciphertext.

\n

The ReEncrypt operation can decrypt ciphertext that was encrypted by using a\n KMS key in an KMS operation, such as Encrypt or GenerateDataKey. It can also decrypt ciphertext that was encrypted by using the\n public key of an asymmetric KMS key outside of KMS. However, it cannot decrypt ciphertext produced\n by other libraries, such as the Amazon Web Services\n Encryption SDK or Amazon S3 client-side encryption.\n These libraries return a ciphertext format that is incompatible with KMS.

\n

When you use the ReEncrypt operation, you need to provide information for the\n decrypt operation and the subsequent encrypt operation.

\n
    \n
  • \n

    If your ciphertext was encrypted under an asymmetric KMS key, you must use the\n SourceKeyId parameter to identify the KMS key that encrypted the\n ciphertext. You must also supply the encryption algorithm that was used. This information\n is required to decrypt the data.

    \n
  • \n
  • \n

    If your ciphertext was encrypted under a symmetric encryption KMS key, the\n SourceKeyId parameter is optional. KMS can get this information from\n metadata that it adds to the symmetric ciphertext blob. This feature adds durability to\n your implementation by ensuring that authorized users can decrypt ciphertext decades after\n it was encrypted, even if they've lost track of the key ID. However, specifying the source\n KMS key is always recommended as a best practice. When you use the\n SourceKeyId parameter to specify a KMS key, KMS uses only the KMS key you\n specify. If the ciphertext was encrypted under a different KMS key, the\n ReEncrypt operation fails. This practice ensures that you use the KMS key\n that you intend.

    \n
  • \n
  • \n

    To reencrypt the data, you must use the DestinationKeyId parameter to\n specify the KMS key that re-encrypts the data after it is decrypted. If the destination\n KMS key is an asymmetric KMS key, you must also provide the encryption algorithm. The\n algorithm that you choose must be compatible with the KMS key.

    \n \n

    When you use an asymmetric KMS key to encrypt or reencrypt data, be sure to record the KMS key and encryption algorithm that you choose. You will be required to provide the same KMS key and encryption algorithm when you decrypt the data. If the KMS key and algorithm do not match the values used to encrypt the data, the decrypt operation fails.

    \n

    You are not required to supply the key ID and encryption algorithm when you decrypt with symmetric encryption KMS keys because KMS stores this information in the ciphertext blob. KMS cannot store metadata in ciphertext generated with asymmetric keys. The standard format for asymmetric key ciphertext does not include configurable fields.

    \n
    \n
  • \n
\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. The source KMS key and\n destination KMS key can be in different Amazon Web Services accounts. Either or both KMS keys can be in a\n different account than the caller. To specify a KMS key in a different account, you must use\n its key ARN or alias ARN.

\n

\n Required permissions:

\n
    \n
  • \n

    \n kms:ReEncryptFrom\n permission on the source KMS key (key policy)

    \n
  • \n
  • \n

    \n kms:ReEncryptTo\n permission on the destination KMS key (key policy)

    \n
  • \n
\n

To permit reencryption from or to a KMS key, include the \"kms:ReEncrypt*\"\n permission in your key policy. This permission is\n automatically included in the key policy when you use the console to create a KMS key. But you\n must include it manually when you create a KMS key programmatically or when you use the PutKeyPolicy operation to set a key policy.

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To reencrypt data", @@ -5952,7 +6374,11 @@ "output": { "CiphertextBlob": "", "KeyId": "arn:aws:kms:us-east-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321", - "SourceKeyId": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" + "DestinationKeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6", + "DestinationEncryptionAlgorithm": "SYMMETRIC_DEFAULT", + "SourceEncryptionAlgorithm": "SYMMETRIC_DEFAULT", + "SourceKeyId": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", + "SourceKeyMaterialId": "1c6be7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6" } } ] @@ -5971,7 +6397,7 @@ "SourceEncryptionContext": { "target": "com.amazonaws.kms#EncryptionContextType", "traits": { - "smithy.api#documentation": "

Specifies the encryption context to use to decrypt the ciphertext. Enter the same\n encryption context that was used to encrypt the ciphertext.

\n

An encryption context is a collection of non-secret key-value pairs that represent additional authenticated data. \nWhen you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is supported\nonly on operations with symmetric encryption KMS keys. On operations with symmetric encryption KMS keys, an encryption context is optional, but it is strongly recommended.

\n

For more information, see\nEncryption context in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Specifies the encryption context to use to decrypt the ciphertext. Enter the same\n encryption context that was used to encrypt the ciphertext.

\n

An encryption context is a collection of non-secret key-value pairs that represent additional authenticated data. \nWhen you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is supported\nonly on operations with symmetric encryption KMS keys. On operations with symmetric encryption KMS keys, an encryption context is optional, but it is strongly recommended.

\n

For more information, see\nEncryption context in the Key Management Service Developer Guide.

" } }, "SourceKeyId": { @@ -5990,7 +6416,7 @@ "DestinationEncryptionContext": { "target": "com.amazonaws.kms#EncryptionContextType", "traits": { - "smithy.api#documentation": "

Specifies that encryption context to use when the reencrypting the data.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n

A destination encryption context is valid only when the destination KMS key is a symmetric\n encryption KMS key. The standard ciphertext format for asymmetric KMS keys does not include\n fields for metadata.

\n

An encryption context is a collection of non-secret key-value pairs that represent additional authenticated data. \nWhen you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is supported\nonly on operations with symmetric encryption KMS keys. On operations with symmetric encryption KMS keys, an encryption context is optional, but it is strongly recommended.

\n

For more information, see\nEncryption context in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Specifies that encryption context to use when the reencrypting the data.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n

A destination encryption context is valid only when the destination KMS key is a symmetric\n encryption KMS key. The standard ciphertext format for asymmetric KMS keys does not include\n fields for metadata.

\n

An encryption context is a collection of non-secret key-value pairs that represent additional authenticated data. \nWhen you use an encryption context to encrypt data, you must specify the same (an exact case-sensitive match) encryption context to decrypt the data. An encryption context is supported\nonly on operations with symmetric encryption KMS keys. On operations with symmetric encryption KMS keys, an encryption context is optional, but it is strongly recommended.

\n

For more information, see\nEncryption context in the Key Management Service Developer Guide.

" } }, "SourceEncryptionAlgorithm": { @@ -6008,13 +6434,13 @@ "GrantTokens": { "target": "com.amazonaws.kms#GrantTokenList", "traits": { - "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" } }, "DryRun": { "target": "com.amazonaws.kms#NullableBooleanType", "traits": { - "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your KMS API calls in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your permissions in the Key Management Service Developer Guide.

" } } }, @@ -6054,6 +6480,18 @@ "traits": { "smithy.api#documentation": "

The encryption algorithm that was used to reencrypt the data.

" } + }, + "SourceKeyMaterialId": { + "target": "com.amazonaws.kms#BackingKeyIdType", + "traits": { + "smithy.api#documentation": "

The identifier of the key material used to originally encrypt the data. This field is\n present only when the original encryption used a symmetric encryption KMS key.

" + } + }, + "DestinationKeyMaterialId": { + "target": "com.amazonaws.kms#BackingKeyIdType", + "traits": { + "smithy.api#documentation": "

The identifier of the key material used to reencrypt the data. This field is present only\n when data is reencrypted using a symmetric encryption KMS key.

" + } } }, "traits": { @@ -6066,18 +6504,18 @@ "KeyEncryptionAlgorithm": { "target": "com.amazonaws.kms#KeyEncryptionMechanism", "traits": { - "smithy.api#documentation": "

The encryption algorithm that KMS should use with the public key for an Amazon Web Services Nitro\n Enclave to encrypt plaintext values for the response. The only valid value is\n RSAES_OAEP_SHA_256.

" + "smithy.api#documentation": "

The encryption algorithm that KMS should use with the public key for an Amazon Web Services Nitro\n Enclave or NitroTPM to encrypt plaintext values for the response. The only valid value is\n RSAES_OAEP_SHA_256.

" } }, "AttestationDocument": { "target": "com.amazonaws.kms#AttestationDocumentType", "traits": { - "smithy.api#documentation": "

The attestation document for an Amazon Web Services Nitro Enclave. This document includes the enclave's\n public key.

" + "smithy.api#documentation": "

The attestation document for an Amazon Web Services Nitro Enclave or a NitroTPM. This document includes the enclave's\n public key.

" } } }, "traits": { - "smithy.api#documentation": "

Contains information about the party that receives the response from the API\n operation.

\n

This data type is designed to support Amazon Web Services Nitro Enclaves, which lets you create an isolated\n compute environment in Amazon EC2. For information about the interaction between KMS and Amazon Web Services Nitro Enclaves, see How Amazon Web Services Nitro Enclaves uses KMS in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Contains information about the party that receives the response from the API\n operation.

\n

This data type is designed to support Amazon Web Services Nitro Enclaves and Amazon Web Services NitroTPM, which lets you create an attested \n environment in Amazon EC2. For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see Cryptographic attestation support in KMS in the Key Management Service Developer Guide.

" } }, "com.amazonaws.kms#RegionType": { @@ -6131,7 +6569,7 @@ } ], "traits": { - "smithy.api#documentation": "

Replicates a multi-Region key into the specified Region. This operation creates a\n multi-Region replica key based on a multi-Region primary key in a different Region of the same\n Amazon Web Services partition. You can create multiple replicas of a primary key, but each must be in a\n different Region. To create a multi-Region primary key, use the CreateKey\n operation.

\n

This operation supports multi-Region keys, an KMS feature that lets you create multiple\n interoperable KMS keys in different Amazon Web Services Regions. Because these KMS keys have the same key ID, key\n material, and other metadata, you can use them interchangeably to encrypt data in one Amazon Web Services Region and decrypt\n it in a different Amazon Web Services Region without re-encrypting the data or making a cross-Region call. For more information about multi-Region keys, see Multi-Region keys in KMS in the Key Management Service Developer Guide.

\n

A replica key is a fully-functional KMS key that can be used\n independently of its primary and peer replica keys. A primary key and its replica keys share\n properties that make them interoperable. They have the same key ID and key material. They also\n have the same key\n spec, key\n usage, key\n material origin, and automatic key rotation status. KMS automatically synchronizes these shared\n properties among related multi-Region keys. All other properties of a replica key can differ,\n including its key\n policy, tags, aliases, and Key states of KMS keys. KMS pricing and quotas for KMS keys apply to each\n primary key and replica key.

\n

When this operation completes, the new replica key has a transient key state of\n Creating. This key state changes to Enabled (or\n PendingImport) after a few seconds when the process of creating the new replica\n key is complete. While the key state is Creating, you can manage key, but you\n cannot yet use it in cryptographic operations. If you are creating and using the replica key\n programmatically, retry on KMSInvalidStateException or call\n DescribeKey to check its KeyState value before using it. For\n details about the Creating key state, see Key states of KMS keys in the\n Key Management Service Developer Guide.

\n

You cannot create more than one replica of a primary key in any Region. If the Region\n already includes a replica of the key you're trying to replicate, ReplicateKey\n returns an AlreadyExistsException error. If the key state of the existing replica\n is PendingDeletion, you can cancel the scheduled key deletion (CancelKeyDeletion) or wait for the key to be deleted. The new replica key you\n create will have the same shared\n properties as the original replica key.

\n

The CloudTrail log of a ReplicateKey operation records a\n ReplicateKey operation in the primary key's Region and a CreateKey operation in the replica key's Region.

\n

If you replicate a multi-Region primary key with imported key material, the replica key is\n created with no key material. You must import the same key material that you imported into the\n primary key. For details, see Importing key material into multi-Region\n keys in the Key Management Service Developer Guide.

\n

To convert a replica key to a primary key, use the UpdatePrimaryRegion\n operation.

\n \n

\n ReplicateKey uses different default values for the KeyPolicy\n and Tags parameters than those used in the KMS console. For details, see the\n parameter descriptions.

\n
\n

\n Cross-account use: No. You cannot use this operation to\n create a replica key in a different Amazon Web Services account.

\n

\n Required permissions:

\n
    \n
  • \n

    \n kms:ReplicateKey on the primary key (in the primary key's Region).\n Include this permission in the primary key's key policy.

    \n
  • \n
  • \n

    \n kms:CreateKey in an IAM policy in the replica Region.

    \n
  • \n
  • \n

    To use the Tags parameter, kms:TagResource in an IAM policy\n in the replica Region.

    \n
  • \n
\n

\n Related operations\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Replicates a multi-Region key into the specified Region. This operation creates a\n multi-Region replica key based on a multi-Region primary key in a different Region of the same\n Amazon Web Services partition. You can create multiple replicas of a primary key, but each must be in a\n different Region. To create a multi-Region primary key, use the CreateKey\n operation.

\n

This operation supports multi-Region keys, an KMS feature that lets you create multiple\n interoperable KMS keys in different Amazon Web Services Regions. Because these KMS keys have the same key ID, key\n material, and other metadata, you can use them interchangeably to encrypt data in one Amazon Web Services Region and decrypt\n it in a different Amazon Web Services Region without re-encrypting the data or making a cross-Region call. For more information about multi-Region keys, see Multi-Region keys in KMS in the Key Management Service Developer Guide.

\n

A replica key is a fully-functional KMS key that can be used\n independently of its primary and peer replica keys. A primary key and its replica keys share\n properties that make them interoperable. They have the same key ID and key material. They also\n have the same key spec, key usage, key material origin, and automatic key rotation status.\n KMS automatically synchronizes these shared properties among related multi-Region keys. All\n other properties of a replica key can differ, including its key policy, tags, aliases, and key state. KMS pricing and quotas for KMS keys\n apply to each primary key and replica key.

\n

When this operation completes, the new replica key has a transient key state of\n Creating. This key state changes to Enabled (or\n PendingImport) after a few seconds when the process of creating the new replica\n key is complete. While the key state is Creating, you can manage key, but you\n cannot yet use it in cryptographic operations. If you are creating and using the replica key\n programmatically, retry on KMSInvalidStateException or call\n DescribeKey to check its KeyState value before using it. For\n details about the Creating key state, see Key states of KMS keys in the\n Key Management Service Developer Guide.

\n

You cannot create more than one replica of a primary key in any Region. If the Region\n already includes a replica of the key you're trying to replicate, ReplicateKey\n returns an AlreadyExistsException error. If the key state of the existing replica\n is PendingDeletion, you can cancel the scheduled key deletion (CancelKeyDeletion) or wait for the key to be deleted. The new replica key you\n create will have the same shared\n properties as the original replica key.

\n

The CloudTrail log of a ReplicateKey operation records a\n ReplicateKey operation in the primary key's Region and a CreateKey operation in the replica key's Region.

\n

If you replicate a multi-Region primary key with imported key material, the replica key is\n created with no key material. You must import the same key material that you imported into the\n primary key.

\n

To convert a replica key to a primary key, use the UpdatePrimaryRegion\n operation.

\n \n

\n ReplicateKey uses different default values for the KeyPolicy\n and Tags parameters than those used in the KMS console. For details, see the\n parameter descriptions.

\n
\n

\n Cross-account use: No. You cannot use this operation to\n create a replica key in a different Amazon Web Services account.

\n

\n Required permissions:

\n
    \n
  • \n

    \n kms:ReplicateKey on the primary key (in the primary key's Region).\n Include this permission in the primary key's key policy.

    \n
  • \n
  • \n

    \n kms:CreateKey in an IAM policy in the replica Region.

    \n
  • \n
  • \n

    To use the Tags parameter, kms:TagResource in an IAM policy\n in the replica Region.

    \n
  • \n
\n

\n Related operations\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To replicate a multi-Region key in a different AWS Region", @@ -6191,14 +6629,14 @@ "ReplicaRegion": { "target": "com.amazonaws.kms#RegionType", "traits": { - "smithy.api#documentation": "

The Region ID of the Amazon Web Services Region for this replica key.

\n

Enter the Region ID, such as us-east-1 or ap-southeast-2. For a\n list of Amazon Web Services Regions in which KMS is supported, see KMS service endpoints in the\n Amazon Web Services General Reference.

\n \n

HMAC KMS keys are not supported in all Amazon Web Services Regions. If you try to replicate an HMAC\n KMS key in an Amazon Web Services Region in which HMAC keys are not supported, the\n ReplicateKey operation returns an UnsupportedOperationException.\n For a list of Regions in which HMAC KMS keys are supported, see HMAC keys in KMS in the Key Management Service Developer Guide.

\n
\n

The replica must be in a different Amazon Web Services Region than its primary key and other replicas of\n that primary key, but in the same Amazon Web Services partition. KMS must be available in the replica\n Region. If the Region is not enabled by default, the Amazon Web Services account must be enabled in the\n Region. For information about Amazon Web Services partitions, see Amazon Resource Names (ARNs) in the\n Amazon Web Services General Reference. For information about enabling and disabling Regions, see Enabling a\n Region and Disabling a Region in the\n Amazon Web Services General Reference.

", + "smithy.api#documentation": "

The Region ID of the Amazon Web Services Region for this replica key.

\n

Enter the Region ID, such as us-east-1 or ap-southeast-2. For a\n list of Amazon Web Services Regions in which KMS is supported, see KMS service endpoints in the\n Amazon Web Services General Reference.

\n

The replica must be in a different Amazon Web Services Region than its primary key and other replicas of\n that primary key, but in the same Amazon Web Services partition. KMS must be available in the replica\n Region. If the Region is not enabled by default, the Amazon Web Services account must be enabled in the\n Region. For information about Amazon Web Services partitions, see Amazon Resource Names (ARNs) in the\n Amazon Web Services General Reference. For information about enabling and disabling Regions, see Enabling a\n Region and Disabling a Region in the\n Amazon Web Services General Reference.

", "smithy.api#required": {} } }, "Policy": { "target": "com.amazonaws.kms#PolicyType", "traits": { - "smithy.api#documentation": "

The key policy to attach to the KMS key. This parameter is optional. If you do not provide\n a key policy, KMS attaches the default key policy to the\n KMS key.

\n

The key policy is not a shared property of multi-Region keys. You can specify the same key\n policy or a different key policy for each key in a set of related multi-Region keys. KMS\n does not synchronize this property.

\n

If you provide a key policy, it must meet the following criteria:

\n
    \n
  • \n

    The key policy must allow the calling principal to make a\n subsequent PutKeyPolicy request on the KMS key. This reduces the risk that\n the KMS key becomes unmanageable. For more information, see Default key policy in the Key Management Service Developer Guide. (To omit\n this condition, set BypassPolicyLockoutSafetyCheck to true.)

    \n
  • \n
  • \n

    Each statement in the key policy must contain one or more principals. The principals\n in the key policy must exist and be visible to KMS. When you create a new Amazon Web Services\n principal, you might need to enforce a delay before including the new principal in a key\n policy because the new principal might not be immediately visible to KMS. For more\n information, see Changes that I make are not always immediately visible in the Amazon Web Services\n Identity and Access Management User Guide.

    \n
  • \n
\n

A key policy document can include only the following characters:

\n
    \n
  • \n

    Printable ASCII characters from the space character (\\u0020) through the end of the ASCII character range.

    \n
  • \n
  • \n

    Printable characters in the Basic Latin and Latin-1 Supplement character set (through \\u00FF).

    \n
  • \n
  • \n

    The tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D) special characters

    \n
  • \n
\n

For information about key policies, see Key policies in KMS in the Key Management Service Developer Guide.\n For help writing and formatting a JSON policy document, see the IAM JSON Policy Reference in the \n Identity and Access Management User Guide\n .

" + "smithy.api#documentation": "

The key policy to attach to the KMS key. This parameter is optional. If you do not provide\n a key policy, KMS attaches the default key policy to the KMS key.

\n

The key policy is not a shared property of multi-Region keys. You can specify the same key\n policy or a different key policy for each key in a set of related multi-Region keys. KMS\n does not synchronize this property.

\n

If you provide a key policy, it must meet the following criteria:

\n
    \n
  • \n

    The key policy must allow the calling principal to make a\n subsequent PutKeyPolicy request on the KMS key. This reduces the risk that\n the KMS key becomes unmanageable. For more information, see Default key policy in the Key Management Service Developer Guide. (To omit\n this condition, set BypassPolicyLockoutSafetyCheck to true.)

    \n
  • \n
  • \n

    Each statement in the key policy must contain one or more principals. The principals\n in the key policy must exist and be visible to KMS. When you create a new Amazon Web Services\n principal, you might need to enforce a delay before including the new principal in a key\n policy because the new principal might not be immediately visible to KMS. For more\n information, see Changes that I make are not always immediately visible in the Amazon Web Services\n Identity and Access Management User Guide.

    \n
  • \n
\n

A key policy document can include only the following characters:

\n
    \n
  • \n

    Printable ASCII characters from the space character (\\u0020) through the end of the ASCII character range.

    \n
  • \n
  • \n

    Printable characters in the Basic Latin and Latin-1 Supplement character set (through \\u00FF).

    \n
  • \n
  • \n

    The tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D) special characters

    \n
  • \n
\n

For information about key policies, see Key policies in KMS in the Key Management Service Developer Guide.\n For help writing and formatting a JSON policy document, see the IAM JSON Policy Reference in the \n Identity and Access Management User Guide\n .

" } }, "BypassPolicyLockoutSafetyCheck": { @@ -6217,7 +6655,7 @@ "Tags": { "target": "com.amazonaws.kms#TagList", "traits": { - "smithy.api#documentation": "

Assigns one or more tags to the replica key. Use this parameter to tag the KMS key when it\n is created. To tag an existing KMS key, use the TagResource\n operation.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n \n

Tagging or untagging a KMS key can allow or deny permission to the KMS key. For details, see ABAC for KMS in the Key Management Service Developer Guide.

\n
\n

To use this parameter, you must have kms:TagResource permission in an IAM policy.

\n

Tags are not a shared property of multi-Region keys. You can specify the same tags or\n different tags for each key in a set of related multi-Region keys. KMS does not synchronize\n this property.

\n

Each tag consists of a tag key and a tag value. Both the tag key and the tag value are\n required, but the tag value can be an empty (null) string. You cannot have more than one tag\n on a KMS key with the same tag key. If you specify an existing tag key with a different tag\n value, KMS replaces the current tag value with the specified one.

\n

When you add tags to an Amazon Web Services resource, Amazon Web Services generates a cost allocation\n report with usage and costs aggregated by tags. Tags can also be used to control access to a KMS key. For details,\n see Tagging Keys.

" + "smithy.api#documentation": "

Assigns one or more tags to the replica key. Use this parameter to tag the KMS key when it\n is created. To tag an existing KMS key, use the TagResource\n operation.

\n \n

Do not include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.

\n
\n \n

Tagging or untagging a KMS key can allow or deny permission to the KMS key. For details, see ABAC for KMS in the Key Management Service Developer Guide.

\n
\n

To use this parameter, you must have kms:TagResource permission in an IAM policy.

\n

Tags are not a shared property of multi-Region keys. You can specify the same tags or\n different tags for each key in a set of related multi-Region keys. KMS does not synchronize\n this property.

\n

Each tag consists of a tag key and a tag value. Both the tag key and the tag value are\n required, but the tag value can be an empty (null) string. You cannot have more than one tag\n on a KMS key with the same tag key. If you specify an existing tag key with a different tag\n value, KMS replaces the current tag value with the specified one.

\n

When you add tags to an Amazon Web Services resource, Amazon Web Services generates a cost allocation\n report with usage and costs aggregated by tags. Tags can also be used to control access to a KMS key. For details,\n see Tags in KMS.

" } } }, @@ -6286,7 +6724,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes a grant. Typically, you retire a grant when you no longer need its permissions. To\n identify the grant to retire, use a grant token, or both the grant ID and a\n key identifier (key ID or key ARN) of the KMS key. The CreateGrant operation\n returns both values.

\n

This operation can be called by the retiring principal for a grant,\n by the grantee principal if the grant allows the RetireGrant\n operation, and by the Amazon Web Services account in which the grant is created. It can also be called by\n principals to whom permission for retiring a grant is delegated. For details, see Retiring and revoking\n grants in the Key Management Service Developer Guide.

\n

For detailed information about grants, including grant terminology, see Grants in KMS in the\n \n Key Management Service Developer Guide\n . For examples of working with grants in several\n programming languages, see Programming grants.

\n

\n Cross-account use: Yes. You can retire a grant on a KMS\n key in a different Amazon Web Services account.

\n

\n Required permissions: Permission to retire a grant is\n determined primarily by the grant. For details, see Retiring and revoking grants in\n the Key Management Service Developer Guide.

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Deletes a grant. Typically, you retire a grant when you no longer need its permissions. To\n identify the grant to retire, use a grant token, or both the grant ID and a\n key identifier (key ID or key ARN) of the KMS key. The CreateGrant operation\n returns both values.

\n

This operation can be called by the retiring principal for a grant,\n by the grantee principal if the grant allows the RetireGrant\n operation, and by the Amazon Web Services account in which the grant is created. It can also be called by\n principals to whom permission for retiring a grant is delegated.

\n

For detailed information about grants, including grant terminology, see Grants in KMS in the\n \n Key Management Service Developer Guide\n . For examples of creating grants in several\n programming languages, see Use CreateGrant with an Amazon Web Services SDK or CLI.

\n

\n Cross-account use: Yes. You can retire a grant on a KMS\n key in a different Amazon Web Services account.

\n

\n Required permissions: Permission to retire a grant is\n determined primarily by the grant. For details, see Retiring and revoking grants in the\n Key Management Service Developer Guide.

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To retire a grant", @@ -6323,7 +6761,7 @@ "DryRun": { "target": "com.amazonaws.kms#NullableBooleanType", "traits": { - "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your KMS API calls in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your permissions in the Key Management Service Developer Guide.

" } } }, @@ -6363,7 +6801,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the specified grant. You revoke a grant to terminate the permissions that the\n grant allows. For more information, see Retiring and revoking grants in\n the \n Key Management Service Developer Guide\n .

\n

When you create, retire, or revoke a grant, there might be a brief delay, usually less than five minutes, until the grant is available throughout KMS. This state is known as eventual consistency. For details, see Eventual consistency in\n the \n Key Management Service Developer Guide\n .

\n

For detailed information about grants, including grant terminology, see Grants in KMS in the\n \n Key Management Service Developer Guide\n . For examples of working with grants in several\n programming languages, see Programming grants.

\n

\n Cross-account use: Yes. To perform this operation on a KMS key in a different Amazon Web Services account, specify the key\n ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:RevokeGrant (key policy).

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Deletes the specified grant. You revoke a grant to terminate the permissions that the\n grant allows. For more information, see Retiring and revoking grants in the\n \n Key Management Service Developer Guide\n .

\n

When you create, retire, or revoke a grant, there might be a brief delay, usually less than five minutes, until the grant is available throughout KMS. This state is known as eventual consistency. For details, see Eventual consistency in\n the \n Key Management Service Developer Guide\n .

\n

For detailed information about grants, including grant terminology, see Grants in KMS in the\n \n Key Management Service Developer Guide\n . For examples of creating grants in several\n programming languages, see Use CreateGrant with an Amazon Web Services SDK or CLI.

\n

\n Cross-account use: Yes. To perform this operation on a KMS key in a different Amazon Web Services account, specify the key\n ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:RevokeGrant (key policy).

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To revoke a grant", @@ -6396,7 +6834,7 @@ "DryRun": { "target": "com.amazonaws.kms#NullableBooleanType", "traits": { - "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your KMS API calls in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your permissions in the Key Management Service Developer Guide.

" } } }, @@ -6442,7 +6880,7 @@ } ], "traits": { - "smithy.api#documentation": "

Immediately initiates rotation of the key material of the specified symmetric encryption\n KMS key.

\n

You can perform on-demand rotation\n of the key material in customer managed KMS keys, \n regardless of whether or not automatic key rotation is enabled.\n On-demand rotations do not change existing automatic rotation schedules. For example, consider a KMS key that\n has automatic key rotation enabled with a rotation period of 730 days. If the key is scheduled to \n automatically rotate on April 14, 2024, and you perform an on-demand rotation on April 10, 2024, the key will automatically rotate,\n as scheduled, on April 14, 2024 and every 730 days thereafter.

\n \n

You can perform on-demand key rotation a maximum of 10 times\n per KMS key. You can use the KMS console \n to view the number of remaining on-demand rotations available for a KMS key.

\n
\n

You can use GetKeyRotationStatus to identify any in progress \n on-demand rotations. You can use ListKeyRotations to identify the date that\n completed on-demand rotations were performed. You can monitor rotation of the key material \n for your KMS keys in CloudTrail and Amazon CloudWatch.

\n

On-demand key rotation is supported only on symmetric encryption KMS keys.\n You cannot perform on-demand rotation of asymmetric KMS keys,\n HMAC KMS keys, \n KMS keys with imported key material, or KMS keys in a custom key store. To perform\n on-demand rotation of a set of related multi-Region keys,\n invoke the on-demand rotation on the primary key.

\n

You cannot initiate on-demand rotation of Amazon Web Services managed KMS keys. KMS\n always rotates the key material of Amazon Web Services managed keys every year. Rotation of Amazon Web Services owned KMS\n keys is managed by the Amazon Web Services service that owns the key.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:RotateKeyOnDemand (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Immediately initiates rotation of the key material of the specified symmetric encryption\n KMS key.

\n

You can perform on-demand rotation of the key\n material in customer managed KMS keys, regardless of whether or not automatic key\n rotation is enabled. On-demand rotations do not change existing automatic rotation\n schedules. For example, consider a KMS key that has automatic key rotation enabled with a\n rotation period of 730 days. If the key is scheduled to automatically rotate on April 14,\n 2024, and you perform an on-demand rotation on April 10, 2024, the key will automatically\n rotate, as scheduled, on April 14, 2024 and every 730 days thereafter.

\n \n

You can perform on-demand key rotation a maximum of 10\n times per KMS key. You can use the KMS console to view the number of\n remaining on-demand rotations available for a KMS key.

\n
\n

You can use GetKeyRotationStatus to identify any in progress on-demand\n rotations. You can use ListKeyRotations to identify the date that completed\n on-demand rotations were performed. You can monitor rotation of the key material for your KMS\n keys in CloudTrail and Amazon CloudWatch.

\n

On-demand key rotation is supported only on symmetric encryption KMS keys. You cannot\n perform on-demand rotation of asymmetric KMS keys, HMAC KMS keys, multi-Region KMS\n keys with imported key\n material, or KMS keys in a custom key store. When you initiate on-demand key\n rotation on a symmetric encryption KMS key with imported key material, you must have already\n imported new key material and that\n key material's state should be PENDING_ROTATION. Use the\n ListKeyRotations operation to check the state of all key materials associated\n with a KMS key. To perform on-demand rotation of a set of related multi-Region keys, invoke\n the on-demand rotation on the primary key.

\n

You cannot initiate on-demand rotation of Amazon Web Services managed KMS keys. KMS\n always rotates the key material of Amazon Web Services managed keys every year. Rotation of Amazon Web Services owned KMS\n keys is managed by the Amazon Web Services service that owns the key.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:RotateKeyOnDemand (key policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To perform on-demand rotation of key material", @@ -6463,7 +6901,7 @@ "KeyId": { "target": "com.amazonaws.kms#KeyIdType", "traits": { - "smithy.api#documentation": "

Identifies a symmetric encryption KMS key. You cannot perform on-demand rotation of asymmetric KMS keys,\n HMAC KMS keys, \n KMS keys with imported key material, or KMS keys in a custom key store. To perform\n on-demand rotation of a set of related multi-Region keys,\n invoke the on-demand rotation on the primary key.

\n

Specify the key ID or key ARN of the KMS key.

\n

For example:

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
\n

To get the key ID and key ARN for a KMS key, use ListKeys or DescribeKey.

", + "smithy.api#documentation": "

Identifies a symmetric encryption KMS key. You cannot perform on-demand rotation of asymmetric KMS\n keys, HMAC KMS\n keys, multi-Region KMS keys with imported key material, or KMS keys in a\n custom key store. To perform on-demand rotation of a set of related multi-Region\n keys, invoke the on-demand rotation on the primary key.

\n

Specify the key ID or key ARN of the KMS key.

\n

For example:

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
\n

To get the key ID and key ARN for a KMS key, use ListKeys or DescribeKey.

", "smithy.api#required": {} } } @@ -6527,21 +6965,57 @@ "smithy.api#documentation": "

Unique identifier of the key.

" } }, + "KeyMaterialId": { + "target": "com.amazonaws.kms#BackingKeyIdType", + "traits": { + "smithy.api#documentation": "

Unique identifier of the key material.

" + } + }, + "KeyMaterialDescription": { + "target": "com.amazonaws.kms#KeyMaterialDescriptionType", + "traits": { + "smithy.api#documentation": "

User-specified description of the key material. This field is only present for symmetric\n encryption KMS keys with EXTERNAL origin.

" + } + }, + "ImportState": { + "target": "com.amazonaws.kms#ImportState", + "traits": { + "smithy.api#documentation": "

Indicates if the key material is currently imported into KMS. It has two possible\n values: IMPORTED or PENDING_IMPORT. This field is only present for\n symmetric encryption KMS keys with EXTERNAL origin.

" + } + }, + "KeyMaterialState": { + "target": "com.amazonaws.kms#KeyMaterialState", + "traits": { + "smithy.api#documentation": "

There are three possible values for this field: CURRENT,\n NON_CURRENT and PENDING_ROTATION. KMS uses CURRENT\n key material for both encryption and decryption and NON_CURRENT key material only\n for decryption. PENDING_ROTATION identifies key material that has been imported\n for on-demand key rotation but the rotation hasn't completed. Key material in\n PENDING_ROTATION is not permanently associated with the KMS key. You can delete\n this key material and import different key material in its place. The\n PENDING_ROTATION value is only used in symmetric encryption keys with imported\n key material. The other values, CURRENT and NON_CURRENT, are used\n for all KMS keys that support automatic or on-demand key rotation.

" + } + }, + "ExpirationModel": { + "target": "com.amazonaws.kms#ExpirationModelType", + "traits": { + "smithy.api#documentation": "

Indicates if the key material is configured to automatically expire. There are two\n possible values for this field: KEY_MATERIAL_EXPIRES and\n KEY_MATERIAL_DOES_NOT_EXPIRE. For any key material that expires, the expiration\n date and time is indicated in ValidTo. This field is only present for symmetric\n encryption KMS keys with EXTERNAL origin.

" + } + }, + "ValidTo": { + "target": "com.amazonaws.kms#DateType", + "traits": { + "smithy.api#documentation": "

Date and time at which the key material expires. This field is only present for symmetric\n encryption KMS keys with EXTERNAL origin in rotation list entries with an\n ExpirationModel value of KEY_MATERIAL_EXPIRES.

" + } + }, "RotationDate": { "target": "com.amazonaws.kms#DateType", "traits": { - "smithy.api#documentation": "

Date and time that the key material rotation completed. Formatted as Unix time.

" + "smithy.api#documentation": "

Date and time that the key material rotation completed. Formatted as Unix time. This field\n is not present for the first key material or an imported key material in\n PENDING_ROTATION state.

" } }, "RotationType": { "target": "com.amazonaws.kms#RotationType", "traits": { - "smithy.api#documentation": "

Identifies whether the key material rotation was a scheduled automatic rotation or an on-demand rotation.

" + "smithy.api#documentation": "

Identifies whether the key material rotation was a scheduled automatic rotation or an on-demand\n rotation. This field is not present for the first key material or an imported key\n material in PENDING_ROTATION state.

" } } }, "traits": { - "smithy.api#documentation": "

Contains information about completed key material rotations.

" + "smithy.api#documentation": "

Each entry contains information about one of the key materials associated with a KMS\n key.

" } }, "com.amazonaws.kms#ScheduleKeyDeletion": { @@ -6570,7 +7044,7 @@ } ], "traits": { - "smithy.api#documentation": "

Schedules the deletion of a KMS key. By default, KMS applies a waiting period of 30\n days, but you can specify a waiting period of 7-30 days. When this operation is successful,\n the key state of the KMS key changes to PendingDeletion and the key can't be used\n in any cryptographic operations. It remains in this state for the duration of the waiting\n period. Before the waiting period ends, you can use CancelKeyDeletion to\n cancel the deletion of the KMS key. After the waiting period ends, KMS deletes the KMS key,\n its key material, and all KMS data associated with it, including all aliases that refer to\n it.

\n \n

Deleting a KMS key is a destructive and potentially dangerous operation. When a KMS key\n is deleted, all data that was encrypted under the KMS key is unrecoverable. (The only\n exception is a multi-Region replica key, or an asymmetric or HMAC KMS\n key with imported key material.) To prevent the use of a KMS key without deleting\n it, use DisableKey.

\n
\n

You can schedule the deletion of a multi-Region primary key and its replica keys at any\n time. However, KMS will not delete a multi-Region primary key with existing replica keys. If\n you schedule the deletion of a primary key with replicas, its key state changes to\n PendingReplicaDeletion and it cannot be replicated or used in cryptographic\n operations. This status can continue indefinitely. When the last of its replicas keys is\n deleted (not just scheduled), the key state of the primary key changes to\n PendingDeletion and its waiting period (PendingWindowInDays)\n begins. For details, see Deleting multi-Region keys in the\n Key Management Service Developer Guide.

\n

When KMS deletes\n a KMS key from an CloudHSM key store, it makes a best effort to delete the associated\n key material from the associated CloudHSM cluster. However, you might need to manually delete\n the orphaned key material from the cluster and its backups. Deleting a KMS key from an\n external key store has no effect on the associated external key. However, for both\n types of custom key stores, deleting a KMS key is destructive and irreversible. You cannot\n decrypt ciphertext encrypted under the KMS key by using only its associated external key or\n CloudHSM key. Also, you cannot recreate a KMS key in an external key store by creating a new KMS\n key with the same key material.

\n

For more information about scheduling a KMS key for deletion, see Deleting KMS keys in the\n Key Management Service Developer Guide.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:ScheduleKeyDeletion (key\n policy)

\n

\n Related operations\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

" + "smithy.api#documentation": "

Schedules the deletion of a KMS key. By default, KMS applies a waiting period of 30\n days, but you can specify a waiting period of 7-30 days. When this operation is successful,\n the key state of the KMS key changes to PendingDeletion and the key can't be used\n in any cryptographic operations. It remains in this state for the duration of the waiting\n period. Before the waiting period ends, you can use CancelKeyDeletion to\n cancel the deletion of the KMS key. After the waiting period ends, KMS deletes the KMS key,\n its key material, and all KMS data associated with it, including all aliases that refer to\n it.

\n \n

Deleting a KMS key is a destructive and potentially dangerous operation. When a KMS key\n is deleted, all data that was encrypted under the KMS key is unrecoverable. (The only\n exception is a multi-Region replica key, or an asymmetric or HMAC KMS key with\n imported key material.) To prevent the use of a KMS key without deleting it, use\n DisableKey.

\n
\n

You can schedule the deletion of a multi-Region primary key and its replica keys at any\n time. However, KMS will not delete a multi-Region primary key with existing replica keys. If\n you schedule the deletion of a primary key with replicas, its key state changes to\n PendingReplicaDeletion and it cannot be replicated or used in cryptographic\n operations. This status can continue indefinitely. When the last of its replicas keys is\n deleted (not just scheduled), the key state of the primary key changes to\n PendingDeletion and its waiting period (PendingWindowInDays)\n begins. For details, see Deleting multi-Region keys in\n the Key Management Service Developer Guide.

\n

When KMS deletes a KMS key from an CloudHSM\n key store, it makes a best effort to delete the associated key material from the\n associated CloudHSM cluster. However, you might need to manually delete the orphaned key\n material from the cluster and its backups. Deleting a KMS key from an external key\n store has no effect on the associated external key. However, for both types of\n custom key stores, deleting a KMS key is destructive and irreversible. You cannot decrypt\n ciphertext encrypted under the KMS key by using only its associated external key or CloudHSM key.\n Also, you cannot recreate a KMS key in an external key store by creating a new KMS key with\n the same key material.

\n

For more information about scheduling a KMS key for deletion, see Deleting KMS keys in the\n Key Management Service Developer Guide.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:ScheduleKeyDeletion (key\n policy)

\n

\n Related operations\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

" } }, "com.amazonaws.kms#ScheduleKeyDeletionRequest": { @@ -6664,23 +7138,8 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a digital\n signature for a message or message digest by using the private key in an asymmetric\n signing KMS key. To verify the signature, use the Verify operation, or use\n the public key in the same asymmetric KMS key outside of KMS. For information about asymmetric KMS keys, see Asymmetric KMS keys in the Key Management Service Developer Guide.

\n

Digital signatures are generated and verified by using asymmetric key pair, such as an RSA\n or ECC pair that is represented by an asymmetric KMS key. The key owner (or an authorized\n user) uses their private key to sign a message. Anyone with the public key can verify that the\n message was signed with that particular private key and that the message hasn't changed since\n it was signed.

\n

To use the Sign operation, provide the following information:

\n
    \n
  • \n

    Use the KeyId parameter to identify an asymmetric KMS key with a\n KeyUsage value of SIGN_VERIFY. To get the\n KeyUsage value of a KMS key, use the DescribeKey\n operation. The caller must have kms:Sign permission on the KMS key.

    \n
  • \n
  • \n

    Use the Message parameter to specify the message or message digest to\n sign. You can submit messages of up to 4096 bytes. To sign a larger message, generate a\n hash digest of the message, and then provide the hash digest in the Message\n parameter. To indicate whether the message is a full message or a digest, use the\n MessageType parameter.

    \n
  • \n
  • \n

    Choose a signing algorithm that is compatible with the KMS key.

    \n
  • \n
\n \n

When signing a message, be sure to record the KMS key and the signing algorithm. This\n information is required to verify the signature.

\n
\n \n

Best practices recommend that you limit the time during which any signature is\n effective. This deters an attack where the actor uses a signed message to establish validity\n repeatedly or long after the message is superseded. Signatures do not include a timestamp,\n but you can include a timestamp in the signed message to help you detect when its time to\n refresh the signature.

\n
\n

To verify the signature that this operation generates, use the Verify\n operation. Or use the GetPublicKey operation to download the public key and\n then use the public key to verify the signature outside of KMS.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:Sign (key policy)

\n

\n Related operations: Verify\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Creates a digital\n signature for a message or message digest by using the private key in an asymmetric\n signing KMS key. To verify the signature, use the Verify operation, or use\n the public key in the same asymmetric KMS key outside of KMS. For information about asymmetric KMS keys, see Asymmetric KMS keys in the Key Management Service Developer Guide.

\n

Digital signatures are generated and verified by using asymmetric key pair, such as an\n RSA, ECC, or ML-DSA pair that is represented by an asymmetric KMS key. The key owner (or an\n authorized user) uses their private key to sign a message. Anyone with the public key can\n verify that the message was signed with that particular private key and that the message\n hasn't changed since it was signed.

\n

To use the Sign operation, provide the following information:

\n
    \n
  • \n

    Use the KeyId parameter to identify an asymmetric KMS key with a\n KeyUsage value of SIGN_VERIFY. To get the\n KeyUsage value of a KMS key, use the DescribeKey\n operation. The caller must have kms:Sign permission on the KMS key.

    \n
  • \n
  • \n

    Use the Message parameter to specify the message or message digest to\n sign. You can submit messages of up to 4096 bytes. To sign a larger message, generate a\n hash digest of the message, and then provide the hash digest in the Message\n parameter. To indicate whether the message is a full message, a digest, or an ML-DSA\n EXTERNAL_MU, use the MessageType parameter.

    \n
  • \n
  • \n

    Choose a signing algorithm that is compatible with the KMS key.

    \n
  • \n
\n \n

When signing a message, be sure to record the KMS key and the signing algorithm. This\n information is required to verify the signature.

\n
\n \n

Best practices recommend that you limit the time during which any signature is\n effective. This deters an attack where the actor uses a signed message to establish validity\n repeatedly or long after the message is superseded. Signatures do not include a timestamp,\n but you can include a timestamp in the signed message to help you detect when its time to\n refresh the signature.

\n
\n

To verify the signature that this operation generates, use the Verify\n operation. Or use the GetPublicKey operation to download the public key and\n then use the public key to verify the signature outside of KMS.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:Sign (key policy)

\n

\n Related operations: Verify\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ - { - "title": "To digitally sign a message with an asymmetric KMS key.", - "documentation": "This operation uses the private key in an asymmetric elliptic curve (ECC) KMS key to generate a digital signature for a given message.", - "input": { - "KeyId": "alias/ECC_signing_key", - "Message": "", - "MessageType": "RAW", - "SigningAlgorithm": "ECDSA_SHA_384" - }, - "output": { - "KeyId": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", - "Signature": "", - "SigningAlgorithm": "ECDSA_SHA_384" - } - }, { "title": "To digitally sign a message digest with an asymmetric KMS key.", "documentation": "This operation uses the private key in an asymmetric RSA signing KMS key to generate a digital signature for a message digest. In this example, a large message was hashed and the resulting digest is provided in the Message parameter. To tell KMS not to hash the message again, the MessageType field is set to DIGEST", @@ -6695,6 +7154,21 @@ "Signature": "", "SigningAlgorithm": "RSASSA_PKCS1_V1_5_SHA_256" } + }, + { + "title": "To digitally sign a message with an asymmetric KMS key.", + "documentation": "This operation uses the private key in an asymmetric elliptic curve (ECC) KMS key to generate a digital signature for a given message.", + "input": { + "KeyId": "alias/ECC_signing_key", + "Message": "", + "MessageType": "RAW", + "SigningAlgorithm": "ECDSA_SHA_384" + }, + "output": { + "KeyId": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", + "Signature": "", + "SigningAlgorithm": "ECDSA_SHA_384" + } } ] } @@ -6719,13 +7193,13 @@ "MessageType": { "target": "com.amazonaws.kms#MessageType", "traits": { - "smithy.api#documentation": "

Tells KMS whether the value of the Message parameter should be hashed as\n part of the signing algorithm. Use RAW for unhashed messages; use\n DIGEST for message digests, which are already hashed.

\n

When the value of MessageType is RAW, KMS uses the standard\n signing algorithm, which begins with a hash function. When the value is DIGEST,\n KMS skips the hashing step in the signing algorithm.

\n \n

Use the DIGEST value only when the value of the Message\n parameter is a message digest. If you use the DIGEST value with an unhashed\n message, the security of the signing operation can be compromised.

\n
\n

When the value of MessageTypeis DIGEST, the length of the\n Message value must match the length of hashed messages for the specified\n signing algorithm.

\n

You can submit a message digest and omit the MessageType or specify\n RAW so the digest is hashed again while signing. However, this can cause\n verification failures when verifying with a system that assumes a single hash.

\n

The hashing algorithm in that Sign uses is based on the\n SigningAlgorithm value.

\n
    \n
  • \n

    Signing algorithms that end in SHA_256 use the SHA_256 hashing algorithm.

    \n
  • \n
  • \n

    Signing algorithms that end in SHA_384 use the SHA_384 hashing algorithm.

    \n
  • \n
  • \n

    Signing algorithms that end in SHA_512 use the SHA_512 hashing algorithm.

    \n
  • \n
  • \n

    SM2DSA uses the SM3 hashing algorithm. For details, see Offline\n verification with SM2 key pairs.

    \n
  • \n
" + "smithy.api#documentation": "

Tells KMS whether the value of the Message parameter should be hashed as\n part of the signing algorithm. Use RAW for unhashed messages; use\n DIGEST for message digests, which are already hashed; use\n EXTERNAL_MU for 64-byte representative μ used in ML-DSA signing as defined\n in NIST FIPS 204 Section 6.2.

\n

When the value of MessageType is RAW, KMS uses the standard\n signing algorithm, which begins with a hash function. When the value is DIGEST,\n KMS skips the hashing step in the signing algorithm. When the value is\n EXTERNAL_MU KMS skips the concatenated hashing of the public key hash and the\n message done in the ML-DSA signing algorithm.

\n \n

Use the DIGEST or EXTERNAL_MU value only when the value of the\n Message parameter is a message digest. If you use the DIGEST\n value with an unhashed message, the security of the signing operation can be\n compromised.

\n
\n

When the value of MessageType is DIGEST, the length of the\n Message value must match the length of hashed messages for the specified\n signing algorithm.

\n

When the value of MessageType is EXTERNAL_MU the length of the\n Message value must be 64 bytes.

\n

You can submit a message digest and omit the MessageType or specify\n RAW so the digest is hashed again while signing. However, this can cause\n verification failures when verifying with a system that assumes a single hash.

\n

The hashing algorithm that Sign uses is based on the\n SigningAlgorithm value.

\n
    \n
  • \n

    Signing algorithms that end in SHA_256 use the SHA_256 hashing algorithm.

    \n
  • \n
  • \n

    Signing algorithms that end in SHA_384 use the SHA_384 hashing algorithm.

    \n
  • \n
  • \n

    Signing algorithms that end in SHA_512 use the SHA_512 hashing algorithm.

    \n
  • \n
  • \n

    Signing algorithms that end in SHAKE_256 use the SHAKE_256 hashing algorithm.

    \n
  • \n
  • \n

    SM2DSA uses the SM3 hashing algorithm. For details, see Offline\n verification with SM2 key pairs.

    \n
  • \n
" } }, "GrantTokens": { "target": "com.amazonaws.kms#GrantTokenList", "traits": { - "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" } }, "SigningAlgorithm": { @@ -6738,7 +7212,7 @@ "DryRun": { "target": "com.amazonaws.kms#NullableBooleanType", "traits": { - "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your KMS API calls in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your permissions in the Key Management Service Developer Guide.

" } } }, @@ -6834,6 +7308,12 @@ "traits": { "smithy.api#enumValue": "SM2DSA" } + }, + "ML_DSA_SHAKE_256": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ML_DSA_SHAKE_256" + } } } }, @@ -6932,7 +7412,7 @@ } ], "traits": { - "smithy.api#documentation": "

Adds or edits tags on a customer managed key.

\n \n

Tagging or untagging a KMS key can allow or deny permission to the KMS key. For details, see ABAC for KMS in the Key Management Service Developer Guide.

\n
\n

Each tag consists of a tag key and a tag value, both of which are case-sensitive strings.\n The tag value can be an empty (null) string. To add a tag, specify a new tag key and a tag\n value. To edit a tag, specify an existing tag key and a new tag value.

\n

You can use this operation to tag a customer managed key, but you cannot\n tag an Amazon Web Services\n managed key, an Amazon Web Services owned key, a custom key\n store, or an alias.

\n

You can also add tags to a KMS key while creating it (CreateKey) or\n replicating it (ReplicateKey).

\n

For information about using tags in KMS, see Tagging keys. For general information about\n tags, including the format and syntax, see Tagging Amazon Web Services resources in the Amazon\n Web Services General Reference.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:TagResource (key policy)

\n

\n Related operations\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Adds or edits tags on a customer managed key.

\n \n

Tagging or untagging a KMS key can allow or deny permission to the KMS key. For details, see ABAC for KMS in the Key Management Service Developer Guide.

\n
\n

Each tag consists of a tag key and a tag value, both of which are case-sensitive strings.\n The tag value can be an empty (null) string. To add a tag, specify a new tag key and a tag\n value. To edit a tag, specify an existing tag key and a new tag value.

\n

You can use this operation to tag a customer managed key, but you\n cannot tag an Amazon Web Services managed key, an Amazon Web Services owned key, a custom key store,\n or an alias.

\n

You can also add tags to a KMS key while creating it (CreateKey) or\n replicating it (ReplicateKey).

\n

For information about using tags in KMS, see Tagging keys. For general information about\n tags, including the format and syntax, see Tagging Amazon Web Services resources in the Amazon\n Web Services General Reference.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:TagResource (key policy)

\n

\n Related operations\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To tag a KMS key", @@ -7015,6 +7495,9 @@ { "target": "com.amazonaws.kms#DeleteImportedKeyMaterial" }, + { + "target": "com.amazonaws.kms#DeriveSharedSecret" + }, { "target": "com.amazonaws.kms#DescribeCustomKeyStores" }, @@ -7154,7 +7637,7 @@ "name": "kms" }, "aws.protocols#awsJson1_1": {}, - "smithy.api#documentation": "Key Management Service\n

Key Management Service (KMS) is an encryption and key management web service. This guide describes\n the KMS operations that you can call programmatically. For general information about KMS,\n see the \n Key Management Service Developer Guide\n .

\n \n

KMS has replaced the term customer master key (CMK) with KMS key and KMS key. The concept has not changed. To prevent breaking changes, KMS is keeping some variations of this term.

\n

Amazon Web Services provides SDKs that consist of libraries and sample code for various programming\n languages and platforms (Java, Ruby, .Net, macOS, Android, etc.). The SDKs provide a\n convenient way to create programmatic access to KMS and other Amazon Web Services services. For example,\n the SDKs take care of tasks such as signing requests (see below), managing errors, and\n retrying requests automatically. For more information about the Amazon Web Services SDKs, including how to\n download and install them, see Tools for Amazon Web\n Services.

\n
\n

We recommend that you use the Amazon Web Services SDKs to make programmatic API calls to KMS.

\n

If you need to use FIPS 140-2 validated cryptographic modules when communicating with\n Amazon Web Services, use the FIPS endpoint in your preferred Amazon Web Services Region. For more information about the\n available FIPS endpoints, see Service endpoints in the Key Management Service topic of\n the Amazon Web Services General Reference.

\n

All KMS API calls must be signed and be transmitted using Transport Layer Security\n (TLS). KMS recommends you always use the latest supported TLS version. Clients must also\n support cipher suites with Perfect Forward Secrecy (PFS) such as Ephemeral Diffie-Hellman\n (DHE) or Elliptic Curve Ephemeral Diffie-Hellman (ECDHE). Most modern systems such as Java 7\n and later support these modes.

\n

\n Signing Requests\n

\n

Requests must be signed using an access key ID and a secret access key. We strongly\n recommend that you do not use your Amazon Web Services account root access key ID and secret access key for\n everyday work. You can use the access key ID and secret access key for an IAM user or you\n can use the Security Token Service (STS) to generate temporary security credentials and use those to sign\n requests.

\n

All KMS requests must be signed with Signature Version 4.

\n

\n Logging API Requests\n

\n

KMS supports CloudTrail, a service that logs Amazon Web Services API calls and related events for your\n Amazon Web Services account and delivers them to an Amazon S3 bucket that you specify. By using the\n information collected by CloudTrail, you can determine what requests were made to KMS, who made\n the request, when it was made, and so on. To learn more about CloudTrail, including how to turn it\n on and find your log files, see the CloudTrail User Guide.

\n

\n Additional Resources\n

\n

For more information about credentials and request signing, see the following:

\n \n

\n Commonly Used API Operations\n

\n

Of the API operations discussed in this guide, the following will prove the most useful\n for most applications. You will likely perform operations other than these, such as creating\n keys and assigning policies, by using the console.

\n ", + "smithy.api#documentation": "Key Management Service\n

Key Management Service (KMS) is an encryption and key management web service. This guide describes\n the KMS operations that you can call programmatically. For general information about KMS,\n see the \n Key Management Service Developer Guide\n .

\n \n

KMS has replaced the term customer master key (CMK) with Key Management Service key \n and KMS key. The concept has not changed. To prevent breaking changes, KMS is keeping some variations of this term.

\n

Amazon Web Services provides SDKs that consist of libraries and sample code for various programming\n languages and platforms (Java, Rust, Python, Ruby, .Net, macOS, Android, etc.). The SDKs\n provide a convenient way to create programmatic access to KMS and other Amazon Web Services services.\n For example, the SDKs take care of tasks such as signing requests (see below), managing\n errors, and retrying requests automatically. For more information about the Amazon Web Services SDKs,\n including how to download and install them, see Tools\n for Amazon Web Services.

\n
\n

We recommend that you use the Amazon Web Services SDKs to make programmatic API calls to KMS.

\n

If you need to use FIPS 140-2 validated cryptographic modules when communicating with\n Amazon Web Services, use one of the FIPS endpoints in your preferred Amazon Web Services Region. If you need communicate\n over IPv6, use the dual-stack endpoint in your preferred Amazon Web Services Region. For more information\n see Service\n endpoints in the Key Management Service topic of the Amazon Web Services General Reference and Dual-stack endpoint\n support in the KMS Developer Guide.

\n

All KMS API calls must be signed and be transmitted using Transport Layer Security\n (TLS). KMS recommends you always use the latest supported TLS version. Clients must also\n support cipher suites with Perfect Forward Secrecy (PFS) such as Ephemeral Diffie-Hellman\n (DHE) or Elliptic Curve Ephemeral Diffie-Hellman (ECDHE). Most modern systems such as Java 7\n and later support these modes.

\n

\n Signing Requests\n

\n

Requests must be signed using an access key ID and a secret access key. We strongly\n recommend that you do not use your Amazon Web Services account root access key ID and secret access key for\n everyday work. You can use the access key ID and secret access key for an IAM user or you\n can use the Security Token Service (STS) to generate temporary security credentials and use those to sign\n requests.

\n

All KMS requests must be signed with Signature Version 4.

\n

\n Logging API Requests\n

\n

KMS supports CloudTrail, a service that logs Amazon Web Services API calls and related events for your\n Amazon Web Services account and delivers them to an Amazon S3 bucket that you specify. By using the\n information collected by CloudTrail, you can determine what requests were made to KMS, who made\n the request, when it was made, and so on. To learn more about CloudTrail, including how to turn it\n on and find your log files, see the CloudTrail User Guide.

\n

\n Additional Resources\n

\n

For more information about credentials and request signing, see the following:

\n \n

\n Commonly Used API Operations\n

\n

Of the API operations discussed in this guide, the following will prove the most useful\n for most applications. You will likely perform operations other than these, such as creating\n keys and assigning policies, by using the console.

\n ", "smithy.api#title": "AWS Key Management Service", "smithy.api#xmlNamespace": { "uri": "https://trent.amazonaws.com/doc/2014-11-01/" @@ -8268,28 +8751,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -8316,28 +8777,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { @@ -8452,7 +8891,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes tags from a customer managed key. To delete a tag,\n specify the tag key and the KMS key.

\n \n

Tagging or untagging a KMS key can allow or deny permission to the KMS key. For details, see ABAC for KMS in the Key Management Service Developer Guide.

\n
\n

When it succeeds, the UntagResource operation doesn't return any output.\n Also, if the specified tag key isn't found on the KMS key, it doesn't throw an exception or\n return a response. To confirm that the operation worked, use the ListResourceTags operation.

\n

For information about using tags in KMS, see Tagging keys. For general information about\n tags, including the format and syntax, see Tagging Amazon Web Services resources in the Amazon\n Web Services General Reference.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:UntagResource (key policy)

\n

\n Related operations\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Deletes tags from a customer managed key. To delete a\n tag, specify the tag key and the KMS key.

\n \n

Tagging or untagging a KMS key can allow or deny permission to the KMS key. For details, see ABAC for KMS in the Key Management Service Developer Guide.

\n
\n

When it succeeds, the UntagResource operation doesn't return any output.\n Also, if the specified tag key isn't found on the KMS key, it doesn't throw an exception or\n return a response. To confirm that the operation worked, use the ListResourceTags operation.

\n

For information about using tags in KMS, see Tagging keys. For general information about\n tags, including the format and syntax, see Tagging Amazon Web Services resources in the Amazon\n Web Services General Reference.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:UntagResource (key policy)

\n

\n Related operations\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To remove tags from a KMS key", @@ -8516,7 +8955,7 @@ } ], "traits": { - "smithy.api#documentation": "

Associates an existing KMS alias with a different KMS key. Each alias is associated with\n only one KMS key at a time, although a KMS key can have multiple aliases. The alias and the\n KMS key must be in the same Amazon Web Services account and Region.

\n \n

Adding, deleting, or updating an alias can allow or deny permission to the KMS key. For details, see ABAC for KMS in the Key Management Service Developer Guide.

\n
\n

The current and new KMS key must be the same type (both symmetric or both asymmetric or\n both HMAC), and they must have the same key usage. This restriction prevents errors in code\n that uses aliases. If you must assign an alias to a different type of KMS key, use DeleteAlias to delete the old alias and CreateAlias to create\n a new alias.

\n

You cannot use UpdateAlias to change an alias name. To change an alias name,\n use DeleteAlias to delete the old alias and CreateAlias to\n create a new alias.

\n

Because an alias is not a property of a KMS key, you can create, update, and delete the\n aliases of a KMS key without affecting the KMS key. Also, aliases do not appear in the\n response from the DescribeKey operation. To get the aliases of all KMS keys\n in the account, use the ListAliases operation.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions\n

\n \n

For details, see Controlling access to aliases in the\n Key Management Service Developer Guide.

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Associates an existing KMS alias with a different KMS key. Each alias is associated with\n only one KMS key at a time, although a KMS key can have multiple aliases. The alias and the\n KMS key must be in the same Amazon Web Services account and Region.

\n \n

Adding, deleting, or updating an alias can allow or deny permission to the KMS key. For details, see ABAC for KMS in the Key Management Service Developer Guide.

\n
\n

The current and new KMS key must be the same type (both symmetric or both asymmetric or\n both HMAC), and they must have the same key usage. This restriction prevents errors in code\n that uses aliases. If you must assign an alias to a different type of KMS key, use DeleteAlias to delete the old alias and CreateAlias to create\n a new alias.

\n

You cannot use UpdateAlias to change an alias name. To change an alias name,\n use DeleteAlias to delete the old alias and CreateAlias to\n create a new alias.

\n

Because an alias is not a property of a KMS key, you can create, update, and delete the\n aliases of a KMS key without affecting the KMS key. Also, aliases do not appear in the\n response from the DescribeKey operation. To get the aliases of all KMS keys\n in the account, use the ListAliases operation.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions\n

\n \n

For details, see Controlling access to aliases in the\n Key Management Service Developer Guide.

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To update an alias", @@ -8542,7 +8981,7 @@ "TargetKeyId": { "target": "com.amazonaws.kms#KeyIdType", "traits": { - "smithy.api#documentation": "

Identifies the customer managed key to associate with the alias. You don't have permission to\n associate an alias with an Amazon Web Services managed key.

\n

The KMS key must be in the same Amazon Web Services account and Region as the alias. Also, the new\n target KMS key must be the same type as the current target KMS key (both symmetric or both\n asymmetric or both HMAC) and they must have the same key usage.

\n

Specify the key ID or key ARN of the KMS key.

\n

For example:

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
\n

To get the key ID and key ARN for a KMS key, use ListKeys or DescribeKey.

\n

To verify that the alias is mapped to the correct KMS key, use ListAliases.

", + "smithy.api#documentation": "

Identifies the customer managed key to associate\n with the alias. You don't have permission to associate an alias with an Amazon Web Services managed\n key.

\n

The KMS key must be in the same Amazon Web Services account and Region as the alias. Also, the new\n target KMS key must be the same type as the current target KMS key (both symmetric or both\n asymmetric or both HMAC) and they must have the same key usage.

\n

Specify the key ID or key ARN of the KMS key.

\n

For example:

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
\n

To get the key ID and key ARN for a KMS key, use ListKeys or DescribeKey.

\n

To verify that the alias is mapped to the correct KMS key, use ListAliases.

", "smithy.api#required": {} } } @@ -8613,7 +9052,7 @@ } ], "traits": { - "smithy.api#documentation": "

Changes the properties of a custom key store. You can use this operation to change the\n properties of an CloudHSM key store or an external key store.

\n

Use the required CustomKeyStoreId parameter to identify the custom key store.\n Use the remaining optional parameters to change its properties. This operation does not return\n any property values. To verify the updated property values, use the DescribeCustomKeyStores operation.

\n

This operation is part of the custom key stores feature in KMS, which\ncombines the convenience and extensive integration of KMS with the isolation and control of a\nkey store that you own and manage.

\n \n

When updating the properties of an external key store, verify that the updated settings\n connect your key store, via the external key store proxy, to the same external key manager\n as the previous settings, or to a backup or snapshot of the external key manager with the\n same cryptographic keys. If the updated connection settings fail, you can fix them and\n retry, although an extended delay might disrupt Amazon Web Services services. However, if KMS\n permanently loses its access to cryptographic keys, ciphertext encrypted under those keys is\n unrecoverable.

\n
\n \n

For external key stores:

\n

Some external key managers provide a simpler method for updating an external key store.\n For details, see your external key manager documentation.

\n

When updating an external key store in the KMS console, you can upload a JSON-based\n proxy configuration file with the desired values. You cannot upload the proxy configuration\n file to the UpdateCustomKeyStore operation. However, you can use the file to\n help you determine the correct values for the UpdateCustomKeyStore\n parameters.

\n
\n

For an CloudHSM key store, you can use this operation to change the custom key store friendly\n name (NewCustomKeyStoreName), to tell KMS about a change to the\n kmsuser crypto user password (KeyStorePassword), or to associate\n the custom key store with a different, but related, CloudHSM cluster\n (CloudHsmClusterId). To update any property of an CloudHSM key store, the\n ConnectionState of the CloudHSM key store must be DISCONNECTED.

\n

For an external key store, you can use this operation to change the custom key store\n friendly name (NewCustomKeyStoreName), or to tell KMS about a change to the\n external key store proxy authentication credentials\n (XksProxyAuthenticationCredential), connection method\n (XksProxyConnectivity), external proxy endpoint\n (XksProxyUriEndpoint) and path (XksProxyUriPath). For external key\n stores with an XksProxyConnectivity of VPC_ENDPOINT_SERVICE, you can\n also update the Amazon VPC endpoint service name (XksProxyVpcEndpointServiceName). To\n update most properties of an external key store, the ConnectionState of the\n external key store must be DISCONNECTED. However, you can update the\n CustomKeyStoreName, XksProxyAuthenticationCredential, and\n XksProxyUriPath of an external key store when it is in the CONNECTED or\n DISCONNECTED state.

\n

If your update requires a DISCONNECTED state, before using\n UpdateCustomKeyStore, use the DisconnectCustomKeyStore\n operation to disconnect the custom key store. After the UpdateCustomKeyStore\n operation completes, use the ConnectCustomKeyStore to reconnect the custom\n key store. To find the ConnectionState of the custom key store, use the DescribeCustomKeyStores operation.

\n

\n

\n

Before updating the custom key store, verify that the new values allow KMS to connect\n the custom key store to its backing key store. For example, before you change the\n XksProxyUriPath value, verify that the external key store proxy is reachable at\n the new path.

\n

If the operation succeeds, it returns a JSON object with no\nproperties.

\n

\n Cross-account use: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.

\n

\n Required permissions: kms:UpdateCustomKeyStore (IAM policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Changes the properties of a custom key store. You can use this operation to change the\n properties of an CloudHSM key store or an external key store.

\n

Use the required CustomKeyStoreId parameter to identify the custom key store.\n Use the remaining optional parameters to change its properties. This operation does not return\n any property values. To verify the updated property values, use the DescribeCustomKeyStores operation.

\n

This operation is part of the custom key stores feature in KMS, which\ncombines the convenience and extensive integration of KMS with the isolation and control of a\nkey store that you own and manage.

\n \n

When updating the properties of an external key store, verify that the updated settings\n connect your key store, via the external key store proxy, to the same external key manager\n as the previous settings, or to a backup or snapshot of the external key manager with the\n same cryptographic keys. If the updated connection settings fail, you can fix them and\n retry, although an extended delay might disrupt Amazon Web Services services. However, if KMS\n permanently loses its access to cryptographic keys, ciphertext encrypted under those keys is\n unrecoverable.

\n
\n \n

For external key stores:

\n

Some external key managers provide a simpler method for updating an external key store.\n For details, see your external key manager documentation.

\n

When updating an external key store in the KMS console, you can upload a JSON-based\n proxy configuration file with the desired values. You cannot upload the proxy configuration\n file to the UpdateCustomKeyStore operation. However, you can use the file to\n help you determine the correct values for the UpdateCustomKeyStore\n parameters.

\n
\n

For an CloudHSM key store, you can use this operation to change the custom key store friendly\n name (NewCustomKeyStoreName), to tell KMS about a change to the\n kmsuser crypto user password (KeyStorePassword), or to associate\n the custom key store with a different, but related, CloudHSM cluster\n (CloudHsmClusterId). To update any property of an CloudHSM key store, the\n ConnectionState of the CloudHSM key store must be DISCONNECTED.

\n

For an external key store, you can use this operation to change the custom key store\n friendly name (NewCustomKeyStoreName), or to tell KMS about a change to the\n external key store proxy authentication credentials\n (XksProxyAuthenticationCredential), connection method\n (XksProxyConnectivity), external proxy endpoint\n (XksProxyUriEndpoint) and path (XksProxyUriPath). For external key\n stores with an XksProxyConnectivity of VPC_ENDPOINT_SERVICE, you can\n also update the Amazon VPC endpoint service name (XksProxyVpcEndpointServiceName). To\n update most properties of an external key store, the ConnectionState of the\n external key store must be DISCONNECTED. However, you can update the\n CustomKeyStoreName, XksProxyAuthenticationCredential, and\n XksProxyUriPath of an external key store when it is in the CONNECTED or\n DISCONNECTED state.

\n

If your update requires a DISCONNECTED state, before using\n UpdateCustomKeyStore, use the DisconnectCustomKeyStore\n operation to disconnect the custom key store. After the UpdateCustomKeyStore\n operation completes, use the ConnectCustomKeyStore to reconnect the custom\n key store. To find the ConnectionState of the custom key store, use the DescribeCustomKeyStores operation.

\n

\n

\n

Before updating the custom key store, verify that the new values allow KMS to connect\n the custom key store to its backing key store. For example, before you change the\n XksProxyUriPath value, verify that the external key store proxy is reachable at\n the new path.

\n

If the operation succeeds, it returns a JSON object with no\nproperties.

\n

\n Cross-account use: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.

\n

\n Required permissions: kms:UpdateCustomKeyStore (IAM policy)

\n

\n Related operations:\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To edit the friendly name of a custom key store", @@ -8634,11 +9073,13 @@ "output": {} }, { - "title": "To associate the custom key store with a different, but related, AWS CloudHSM cluster.", - "documentation": "This example changes the AWS CloudHSM cluster that is associated with an AWS CloudHSM key store to a related cluster, such as a different backup of the same cluster. This operation does not return any data. To verify that the operation worked, use the DescribeCustomKeyStores operation.", + "title": "To update the proxy connectivity of an external key store to VPC_ENDPOINT_SERVICE", + "documentation": "To change the external key store proxy connectivity option from public endpoint connectivity to VPC endpoint service connectivity, in addition to changing the XksProxyConnectivity value, you must change the XksProxyUriEndpoint value to reflect the private DNS name associated with the VPC endpoint service. You must also add an XksProxyVpcEndpointServiceName value.", "input": { "CustomKeyStoreId": "cks-1234567890abcdef0", - "CloudHsmClusterId": "cluster-234abcdefABC" + "XksProxyConnectivity": "VPC_ENDPOINT_SERVICE", + "XksProxyUriEndpoint": "https://myproxy-private.xks.example.com", + "XksProxyVpcEndpointServiceName": "com.amazonaws.vpce.us-east-1.vpce-svc-example" }, "output": {} }, @@ -8652,13 +9093,11 @@ "output": {} }, { - "title": "To update the proxy connectivity of an external key store to VPC_ENDPOINT_SERVICE", - "documentation": "To change the external key store proxy connectivity option from public endpoint connectivity to VPC endpoint service connectivity, in addition to changing the XksProxyConnectivity value, you must change the XksProxyUriEndpoint value to reflect the private DNS name associated with the VPC endpoint service. You must also add an XksProxyVpcEndpointServiceName value.", + "title": "To associate the custom key store with a different, but related, AWS CloudHSM cluster.", + "documentation": "This example changes the AWS CloudHSM cluster that is associated with an AWS CloudHSM key store to a related cluster, such as a different backup of the same cluster. This operation does not return any data. To verify that the operation worked, use the DescribeCustomKeyStores operation.", "input": { "CustomKeyStoreId": "cks-1234567890abcdef0", - "XksProxyConnectivity": "VPC_ENDPOINT_SERVICE", - "XksProxyUriEndpoint": "https://myproxy-private.xks.example.com", - "XksProxyVpcEndpointServiceName": "com.amazonaws.vpce.us-east-1.vpce-svc-example" + "CloudHsmClusterId": "cluster-234abcdefABC" }, "output": {} } @@ -8761,7 +9200,7 @@ } ], "traits": { - "smithy.api#documentation": "

Updates the description of a KMS key. To see the description of a KMS key, use DescribeKey.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:UpdateKeyDescription (key policy)

\n

\n Related operations\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Updates the description of a KMS key. To see the description of a KMS key, use DescribeKey.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: No. You cannot perform this operation on a KMS key in a different Amazon Web Services account.

\n

\n Required permissions: kms:UpdateKeyDescription (key policy)

\n

\n Related operations\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To update the description of a KMS key", @@ -8825,7 +9264,7 @@ } ], "traits": { - "smithy.api#documentation": "

Changes the primary key of a multi-Region key.

\n

This operation changes the replica key in the specified Region to a primary key and\n changes the former primary key to a replica key. For example, suppose you have a primary key\n in us-east-1 and a replica key in eu-west-2. If you run\n UpdatePrimaryRegion with a PrimaryRegion value of\n eu-west-2, the primary key is now the key in eu-west-2, and the\n key in us-east-1 becomes a replica key. For details, see Updating the primary Region in the Key Management Service Developer Guide.

\n

This operation supports multi-Region keys, an KMS feature that lets you create multiple\n interoperable KMS keys in different Amazon Web Services Regions. Because these KMS keys have the same key ID, key\n material, and other metadata, you can use them interchangeably to encrypt data in one Amazon Web Services Region and decrypt\n it in a different Amazon Web Services Region without re-encrypting the data or making a cross-Region call. For more information about multi-Region keys, see Multi-Region keys in KMS in the Key Management Service Developer Guide.

\n

The primary key of a multi-Region key is the source for properties\n that are always shared by primary and replica keys, including the key material, key ID, key spec, key usage, key material\n origin, and automatic\n key rotation. It's the only key that can be replicated. You cannot delete the primary\n key until all replica keys are deleted.

\n

The key ID and primary Region that you specify uniquely identify the replica key that will\n become the primary key. The primary Region must already have a replica key. This operation\n does not create a KMS key in the specified Region. To find the replica keys, use the DescribeKey operation on the primary key or any replica key. To create a replica\n key, use the ReplicateKey operation.

\n

You can run this operation while using the affected multi-Region keys in cryptographic\n operations. This operation should not delay, interrupt, or cause failures in cryptographic\n operations.

\n

Even after this operation completes, the process of updating the primary Region might\n still be in progress for a few more seconds. Operations such as DescribeKey might\n display both the old and new primary keys as replicas. The old and new primary keys have a\n transient key state of Updating. The original key state is restored when the\n update is complete. While the key state is Updating, you can use the keys in\n cryptographic operations, but you cannot replicate the new primary key or perform certain\n management operations, such as enabling or disabling these keys. For details about the\n Updating key state, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

This operation does not return any output. To verify that primary key is changed, use the\n DescribeKey operation.

\n

\n Cross-account use: No. You cannot use this operation in a\n different Amazon Web Services account.

\n

\n Required permissions:

\n
    \n
  • \n

    \n kms:UpdatePrimaryRegion on the current primary key (in the primary key's\n Region). Include this permission primary key's key policy.

    \n
  • \n
  • \n

    \n kms:UpdatePrimaryRegion on the current replica key (in the replica key's\n Region). Include this permission in the replica key's key policy.

    \n
  • \n
\n

\n Related operations\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Changes the primary key of a multi-Region key.

\n

This operation changes the replica key in the specified Region to a primary key and\n changes the former primary key to a replica key. For example, suppose you have a primary key\n in us-east-1 and a replica key in eu-west-2. If you run\n UpdatePrimaryRegion with a PrimaryRegion value of\n eu-west-2, the primary key is now the key in eu-west-2, and the\n key in us-east-1 becomes a replica key. For details, see Change the primary key in a\n set of multi-Region keys in the Key Management Service Developer Guide.

\n

This operation supports multi-Region keys, an KMS feature that lets you create multiple\n interoperable KMS keys in different Amazon Web Services Regions. Because these KMS keys have the same key ID, key\n material, and other metadata, you can use them interchangeably to encrypt data in one Amazon Web Services Region and decrypt\n it in a different Amazon Web Services Region without re-encrypting the data or making a cross-Region call. For more information about multi-Region keys, see Multi-Region keys in KMS in the Key Management Service Developer Guide.

\n

The primary key of a multi-Region key is the source for properties\n that are always shared by primary and replica keys, including the key material, key ID, key spec, key usage, key material\n origin, and automatic\n key rotation. It's the only key that can be replicated. You cannot delete the primary\n key until all replica keys are deleted.

\n

The key ID and primary Region that you specify uniquely identify the replica key that will\n become the primary key. The primary Region must already have a replica key. This operation\n does not create a KMS key in the specified Region. To find the replica keys, use the DescribeKey operation on the primary key or any replica key. To create a replica\n key, use the ReplicateKey operation.

\n

You can run this operation while using the affected multi-Region keys in cryptographic\n operations. This operation should not delay, interrupt, or cause failures in cryptographic\n operations.

\n

Even after this operation completes, the process of updating the primary Region might\n still be in progress for a few more seconds. Operations such as DescribeKey might\n display both the old and new primary keys as replicas. The old and new primary keys have a\n transient key state of Updating. The original key state is restored when the\n update is complete. While the key state is Updating, you can use the keys in\n cryptographic operations, but you cannot replicate the new primary key or perform certain\n management operations, such as enabling or disabling these keys. For details about the\n Updating key state, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

This operation does not return any output. To verify that primary key is changed, use the\n DescribeKey operation.

\n

\n Cross-account use: No. You cannot use this operation in a\n different Amazon Web Services account.

\n

\n Required permissions:

\n
    \n
  • \n

    \n kms:UpdatePrimaryRegion on the current primary key (in the primary key's\n Region). Include this permission primary key's key policy.

    \n
  • \n
  • \n

    \n kms:UpdatePrimaryRegion on the current replica key (in the replica key's\n Region). Include this permission in the replica key's key policy.

    \n
  • \n
\n

\n Related operations\n

\n \n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To update the primary Region of a multi-Region KMS key", @@ -8901,7 +9340,7 @@ } ], "traits": { - "smithy.api#documentation": "

Verifies a digital signature that was generated by the Sign operation.

\n

\n

Verification confirms that an authorized user signed the message with the specified KMS\n key and signing algorithm, and the message hasn't changed since it was signed. If the\n signature is verified, the value of the SignatureValid field in the response is\n True. If the signature verification fails, the Verify operation\n fails with an KMSInvalidSignatureException exception.

\n

A digital signature is generated by using the private key in an asymmetric KMS key. The\n signature is verified by using the public key in the same asymmetric KMS key.\n For information about asymmetric KMS keys, see Asymmetric KMS keys in the Key Management Service Developer Guide.

\n

To use the Verify operation, specify the same asymmetric KMS key, message,\n and signing algorithm that were used to produce the signature. The message type does not need\n to be the same as the one used for signing, but it must indicate whether the value of the\n Message parameter should be hashed as part of the verification process.

\n

You can also verify the digital signature by using the public key of the KMS key outside\n of KMS. Use the GetPublicKey operation to download the public key in the\n asymmetric KMS key and then use the public key to verify the signature outside of KMS. The\n advantage of using the Verify operation is that it is performed within KMS. As\n a result, it's easy to call, the operation is performed within the FIPS boundary, it is logged\n in CloudTrail, and you can use key policy and IAM policy to determine who is authorized to use\n the KMS key to verify signatures.

\n

To verify a signature outside of KMS with an SM2 public key (China Regions only), you\n must specify the distinguishing ID. By default, KMS uses 1234567812345678 as\n the distinguishing ID. For more information, see Offline\n verification with SM2 key pairs.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:Verify (key policy)

\n

\n Related operations: Sign\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Verifies a digital signature that was generated by the Sign operation.

\n

\n

Verification confirms that an authorized user signed the message with the specified KMS\n key and signing algorithm, and the message hasn't changed since it was signed. If the\n signature is verified, the value of the SignatureValid field in the response is\n True. If the signature verification fails, the Verify operation\n fails with an KMSInvalidSignatureException exception.

\n

A digital signature is generated by using the private key in an asymmetric KMS key. The\n signature is verified by using the public key in the same asymmetric KMS key.\n For information about asymmetric KMS keys, see Asymmetric KMS keys in the Key Management Service Developer Guide.

\n

To use the Verify operation, specify the same asymmetric KMS key, message,\n and signing algorithm that were used to produce the signature. The message type does not need\n to be the same as the one used for signing, but it must indicate whether the value of the\n Message parameter should be hashed as part of the verification process.

\n

You can also verify the digital signature by using the public key of the KMS key outside\n of KMS. Use the GetPublicKey operation to download the public key in the\n asymmetric KMS key and then use the public key to verify the signature outside of KMS. The\n advantage of using the Verify operation is that it is performed within KMS. As\n a result, it's easy to call, the operation is performed within the FIPS boundary, it is logged\n in CloudTrail, and you can use key policy and IAM policy to determine who is authorized to use\n the KMS key to verify signatures.

\n

To verify a signature outside of KMS with an SM2 public key (China Regions only), you\n must specify the distinguishing ID. By default, KMS uses 1234567812345678 as\n the distinguishing ID. For more information, see Offline\n verification with SM2 key pairs.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:Verify (key policy)

\n

\n Related operations: Sign\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To use an asymmetric KMS key to verify a digital signature", @@ -8976,7 +9415,7 @@ } ], "traits": { - "smithy.api#documentation": "

Verifies the hash-based message authentication code (HMAC) for a specified message, HMAC\n KMS key, and MAC algorithm. To verify the HMAC, VerifyMac computes an HMAC using\n the message, HMAC KMS key, and MAC algorithm that you specify, and compares the computed HMAC\n to the HMAC that you specify. If the HMACs are identical, the verification succeeds;\n otherwise, it fails. Verification indicates that the message hasn't changed since the HMAC was\n calculated, and the specified key was used to generate and verify the HMAC.

\n

HMAC KMS keys and the HMAC algorithms that KMS uses conform to industry standards\n defined in RFC 2104.

\n

This operation is part of KMS support for HMAC KMS keys. For details, see\n HMAC keys in KMS in the\n Key Management Service Developer Guide.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:VerifyMac (key policy)

\n

\n Related operations: GenerateMac\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", + "smithy.api#documentation": "

Verifies the hash-based message authentication code (HMAC) for a specified message, HMAC\n KMS key, and MAC algorithm. To verify the HMAC, VerifyMac computes an HMAC using\n the message, HMAC KMS key, and MAC algorithm that you specify, and compares the computed HMAC\n to the HMAC that you specify. If the HMACs are identical, the verification succeeds;\n otherwise, it fails. Verification indicates that the message hasn't changed since the HMAC was\n calculated, and the specified key was used to generate and verify the HMAC.

\n

HMAC KMS keys and the HMAC algorithms that KMS uses conform to industry standards\n defined in RFC 2104.

\n

This operation is part of KMS support for HMAC KMS keys. For details, see\n HMAC keys in KMS in the\n Key Management Service Developer Guide.

\n

The KMS key that you use for this operation must be in a compatible key state. For\ndetails, see Key states of KMS keys in the Key Management Service Developer Guide.

\n

\n Cross-account use: Yes. To perform this operation with a KMS key in a different Amazon Web Services account, specify\n the key ARN or alias ARN in the value of the KeyId parameter.

\n

\n Required permissions: kms:VerifyMac (key policy)

\n

\n Related operations: GenerateMac\n

\n

\n Eventual consistency: The KMS API follows an eventual consistency model. \n For more information, see KMS eventual consistency.

", "smithy.api#examples": [ { "title": "To verify an HMAC", @@ -9030,13 +9469,13 @@ "GrantTokens": { "target": "com.amazonaws.kms#GrantTokenList", "traits": { - "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" } }, "DryRun": { "target": "com.amazonaws.kms#NullableBooleanType", "traits": { - "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your KMS API calls in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your permissions in the Key Management Service Developer Guide.

" } } }, @@ -9091,7 +9530,7 @@ "MessageType": { "target": "com.amazonaws.kms#MessageType", "traits": { - "smithy.api#documentation": "

Tells KMS whether the value of the Message parameter should be hashed as\n part of the signing algorithm. Use RAW for unhashed messages; use\n DIGEST for message digests, which are already hashed.

\n

When the value of MessageType is RAW, KMS uses the standard\n signing algorithm, which begins with a hash function. When the value is DIGEST,\n KMS skips the hashing step in the signing algorithm.

\n \n

Use the DIGEST value only when the value of the Message\n parameter is a message digest. If you use the DIGEST value with an unhashed\n message, the security of the verification operation can be compromised.

\n
\n

When the value of MessageTypeis DIGEST, the length of the\n Message value must match the length of hashed messages for the specified\n signing algorithm.

\n

You can submit a message digest and omit the MessageType or specify\n RAW so the digest is hashed again while signing. However, if the signed message\n is hashed once while signing, but twice while verifying, verification fails, even when the\n message hasn't changed.

\n

The hashing algorithm in that Verify uses is based on the\n SigningAlgorithm value.

\n
    \n
  • \n

    Signing algorithms that end in SHA_256 use the SHA_256 hashing algorithm.

    \n
  • \n
  • \n

    Signing algorithms that end in SHA_384 use the SHA_384 hashing algorithm.

    \n
  • \n
  • \n

    Signing algorithms that end in SHA_512 use the SHA_512 hashing algorithm.

    \n
  • \n
  • \n

    SM2DSA uses the SM3 hashing algorithm. For details, see Offline\n verification with SM2 key pairs.

    \n
  • \n
" + "smithy.api#documentation": "

Tells KMS whether the value of the Message parameter should be hashed as\n part of the signing algorithm. Use RAW for unhashed messages; use\n DIGEST for message digests, which are already hashed; use\n EXTERNAL_MU for 64-byte representative μ used in ML-DSA signing as defined\n in NIST FIPS 204 Section 6.2.

\n

When the value of MessageType is RAW, KMS uses the standard\n signing algorithm, which begins with a hash function. When the value is DIGEST,\n KMS skips the hashing step in the signing algorithm. When the value is\n EXTERNAL_MU KMS skips the concatenated hashing of the public key hash and the\n message done in the ML-DSA signing algorithm.

\n \n

Use the DIGEST or EXTERNAL_MU value only when the value of the\n Message parameter is a message digest. If you use the DIGEST\n value with an unhashed message, the security of the signing operation can be\n compromised.

\n
\n

When the value of MessageType is DIGEST, the length of the\n Message value must match the length of hashed messages for the specified\n signing algorithm.

\n

When the value of MessageType is EXTERNAL_MU the length of the\n Message value must be 64 bytes.

\n

You can submit a message digest and omit the MessageType or specify\n RAW so the digest is hashed again while signing. However, if the signed message\n is hashed once while signing, but twice while verifying, verification fails, even when the\n message hasn't changed.

\n

The hashing algorithm that Verify uses is based on the\n SigningAlgorithm value.

\n
    \n
  • \n

    Signing algorithms that end in SHA_256 use the SHA_256 hashing algorithm.

    \n
  • \n
  • \n

    Signing algorithms that end in SHA_384 use the SHA_384 hashing algorithm.

    \n
  • \n
  • \n

    Signing algorithms that end in SHA_512 use the SHA_512 hashing algorithm.

    \n
  • \n
  • \n

    Signing algorithms that end in SHAKE_256 use the SHAKE_256 hashing algorithm.

    \n
  • \n
  • \n

    SM2DSA uses the SM3 hashing algorithm. For details, see Offline\n verification with SM2 key pairs.

    \n
  • \n
" } }, "Signature": { @@ -9111,13 +9550,13 @@ "GrantTokens": { "target": "com.amazonaws.kms#GrantTokenList", "traits": { - "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" + "smithy.api#documentation": "

A list of grant tokens.

\n

Use a grant token when your permission to call this operation comes from a new grant that has not yet achieved eventual consistency. For more information, see Grant token and Using a grant token in the\n Key Management Service Developer Guide.

" } }, "DryRun": { "target": "com.amazonaws.kms#NullableBooleanType", "traits": { - "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your KMS API calls in the Key Management Service Developer Guide.

" + "smithy.api#documentation": "

Checks if your request will succeed. DryRun is an optional parameter.

\n

To learn more about how to use this parameter, see Testing your permissions in the Key Management Service Developer Guide.

" } } }, diff --git a/aws/sdk/aws-models/lambda.json b/aws/sdk/aws-models/lambda.json index 656c0e95535..e02fcd04da7 100644 --- a/aws/sdk/aws-models/lambda.json +++ b/aws/sdk/aws-models/lambda.json @@ -1,235 +1,53 @@ { "smithy": "2.0", - "metadata": { - "suppressions": [ - { - "id": "HttpMethodSemantics", - "namespace": "*" - }, - { - "id": "HttpResponseCodeSemantics", - "namespace": "*" - }, - { - "id": "PaginatedTrait", - "namespace": "*" - }, - { - "id": "HttpHeaderTrait", - "namespace": "*" - }, - { - "id": "HttpUriConflict", - "namespace": "*" - }, - { - "id": "Service", - "namespace": "*" - } - ] - }, "shapes": { "com.amazonaws.lambda#AWSGirApiService": { "type": "service", "version": "2015-03-31", "operations": [ - { - "target": "com.amazonaws.lambda#AddLayerVersionPermission" - }, - { - "target": "com.amazonaws.lambda#AddPermission" - }, - { - "target": "com.amazonaws.lambda#CreateAlias" - }, - { - "target": "com.amazonaws.lambda#CreateCodeSigningConfig" - }, - { - "target": "com.amazonaws.lambda#CreateEventSourceMapping" - }, - { - "target": "com.amazonaws.lambda#CreateFunction" - }, - { - "target": "com.amazonaws.lambda#CreateFunctionUrlConfig" - }, - { - "target": "com.amazonaws.lambda#DeleteAlias" - }, - { - "target": "com.amazonaws.lambda#DeleteCodeSigningConfig" - }, - { - "target": "com.amazonaws.lambda#DeleteEventSourceMapping" - }, - { - "target": "com.amazonaws.lambda#DeleteFunction" - }, - { - "target": "com.amazonaws.lambda#DeleteFunctionCodeSigningConfig" - }, - { - "target": "com.amazonaws.lambda#DeleteFunctionConcurrency" - }, - { - "target": "com.amazonaws.lambda#DeleteFunctionEventInvokeConfig" - }, - { - "target": "com.amazonaws.lambda#DeleteFunctionUrlConfig" - }, - { - "target": "com.amazonaws.lambda#DeleteLayerVersion" - }, - { - "target": "com.amazonaws.lambda#DeleteProvisionedConcurrencyConfig" - }, { "target": "com.amazonaws.lambda#GetAccountSettings" }, - { - "target": "com.amazonaws.lambda#GetAlias" - }, - { - "target": "com.amazonaws.lambda#GetCodeSigningConfig" - }, - { - "target": "com.amazonaws.lambda#GetEventSourceMapping" - }, - { - "target": "com.amazonaws.lambda#GetFunction" - }, - { - "target": "com.amazonaws.lambda#GetFunctionCodeSigningConfig" - }, - { - "target": "com.amazonaws.lambda#GetFunctionConcurrency" - }, - { - "target": "com.amazonaws.lambda#GetFunctionConfiguration" - }, - { - "target": "com.amazonaws.lambda#GetFunctionEventInvokeConfig" - }, - { - "target": "com.amazonaws.lambda#GetFunctionUrlConfig" - }, - { - "target": "com.amazonaws.lambda#GetLayerVersion" - }, - { - "target": "com.amazonaws.lambda#GetLayerVersionByArn" - }, - { - "target": "com.amazonaws.lambda#GetLayerVersionPolicy" - }, - { - "target": "com.amazonaws.lambda#GetPolicy" - }, - { - "target": "com.amazonaws.lambda#GetProvisionedConcurrencyConfig" - }, - { - "target": "com.amazonaws.lambda#GetRuntimeManagementConfig" - }, - { - "target": "com.amazonaws.lambda#Invoke" - }, - { - "target": "com.amazonaws.lambda#InvokeAsync" - }, - { - "target": "com.amazonaws.lambda#InvokeWithResponseStream" - }, - { - "target": "com.amazonaws.lambda#ListAliases" - }, - { - "target": "com.amazonaws.lambda#ListCodeSigningConfigs" - }, - { - "target": "com.amazonaws.lambda#ListEventSourceMappings" - }, - { - "target": "com.amazonaws.lambda#ListFunctionEventInvokeConfigs" - }, - { - "target": "com.amazonaws.lambda#ListFunctions" - }, - { - "target": "com.amazonaws.lambda#ListFunctionsByCodeSigningConfig" - }, - { - "target": "com.amazonaws.lambda#ListFunctionUrlConfigs" - }, - { - "target": "com.amazonaws.lambda#ListLayers" - }, - { - "target": "com.amazonaws.lambda#ListLayerVersions" - }, - { - "target": "com.amazonaws.lambda#ListProvisionedConcurrencyConfigs" - }, { "target": "com.amazonaws.lambda#ListTags" }, { - "target": "com.amazonaws.lambda#ListVersionsByFunction" - }, - { - "target": "com.amazonaws.lambda#PublishLayerVersion" - }, - { - "target": "com.amazonaws.lambda#PublishVersion" - }, - { - "target": "com.amazonaws.lambda#PutFunctionCodeSigningConfig" - }, - { - "target": "com.amazonaws.lambda#PutFunctionConcurrency" - }, - { - "target": "com.amazonaws.lambda#PutFunctionEventInvokeConfig" - }, - { - "target": "com.amazonaws.lambda#PutProvisionedConcurrencyConfig" - }, - { - "target": "com.amazonaws.lambda#PutRuntimeManagementConfig" + "target": "com.amazonaws.lambda#TagResource" }, { - "target": "com.amazonaws.lambda#RemoveLayerVersionPermission" - }, + "target": "com.amazonaws.lambda#UntagResource" + } + ], + "resources": [ { - "target": "com.amazonaws.lambda#RemovePermission" + "target": "com.amazonaws.lambda#CodeSigningConfigResource" }, { - "target": "com.amazonaws.lambda#TagResource" + "target": "com.amazonaws.lambda#EventSourceMapping" }, { - "target": "com.amazonaws.lambda#UntagResource" + "target": "com.amazonaws.lambda#Function" }, { - "target": "com.amazonaws.lambda#UpdateAlias" + "target": "com.amazonaws.lambda#FunctionAlias" }, { - "target": "com.amazonaws.lambda#UpdateCodeSigningConfig" + "target": "com.amazonaws.lambda#FunctionVersionResource" }, { - "target": "com.amazonaws.lambda#UpdateEventSourceMapping" + "target": "com.amazonaws.lambda#LayerResource" }, { - "target": "com.amazonaws.lambda#UpdateFunctionCode" + "target": "com.amazonaws.lambda#LayerVersion" }, { - "target": "com.amazonaws.lambda#UpdateFunctionConfiguration" + "target": "com.amazonaws.lambda#Permission" }, { - "target": "com.amazonaws.lambda#UpdateFunctionEventInvokeConfig" + "target": "com.amazonaws.lambda#ProvisionedConcurrencyConfig" }, { - "target": "com.amazonaws.lambda#UpdateFunctionUrlConfig" + "target": "com.amazonaws.lambda#ResourcePolicy" } ], "traits": { @@ -240,11 +58,109 @@ "cloudTrailEventSource": "lambda.amazonaws.com", "endpointPrefix": "lambda" }, + "aws.api#tagEnabled": { + "disableDefaultOperations": true + }, "aws.auth#sigv4": { "name": "lambda" }, + "aws.iam#defineConditionKeys": { + "lambda:VpcIds": { + "type": "String", + "documentation": "Filters access by the ID of the VPC configured for the AWS Lambda function", + "relativeDocumentation": "lambda-api-permissions-ref.html", + "required": false + }, + "lambda:SubnetIds": { + "type": "ArrayOfString", + "documentation": "Filters access by the ID of subnets configured for the AWS Lambda function", + "relativeDocumentation": "lambda-api-permissions-ref.html", + "required": false + }, + "lambda:Layer": { + "type": "ArrayOfString", + "documentation": "Filters access by the ARN of a version of an AWS Lambda layer", + "relativeDocumentation": "lambda-api-permissions-ref.html", + "required": false + }, + "lambda:EventSourceToken": { + "type": "String", + "documentation": "Filters access by the ID from a non-AWS event source configured for the AWS Lambda function", + "relativeDocumentation": "lambda-api-permissions-ref.html", + "required": false + }, + "lambda:FunctionUrlAuthType": { + "type": "String", + "documentation": "Filters access by authorization type specified in request. Available during CreateFunctionUrlConfig, UpdateFunctionUrlConfig, DeleteFunctionUrlConfig, GetFunctionUrlConfig, ListFunctionUrlConfig, AddPermission and RemovePermission operations", + "relativeDocumentation": "lambda-api-permissions-ref.html", + "required": false + }, + "aws:RequestTag/${TagKey}": { + "type": "String", + "documentation": "Filters access by the tags that are passed in the request", + "externalDocumentation": "${DocHomeURL}/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requesttag", + "required": false + }, + "aws:ResourceTag/${TagKey}": { + "type": "String", + "documentation": "Filters access by the tags associated with the resource", + "externalDocumentation": "${DocHomeURL}IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-resourcetag", + "required": false + }, + "lambda:CodeSigningConfigArn": { + "type": "ARN", + "documentation": "Filters access by the ARN of an AWS Lambda code signing config", + "relativeDocumentation": "lambda-api-permissions-ref.html", + "required": false + }, + "lambda:FunctionArn": { + "type": "ARN", + "documentation": "Filters access by the ARN of an AWS Lambda function", + "relativeDocumentation": "lambda-api-permissions-ref.html", + "required": false + }, + "aws:TagKeys": { + "type": "ArrayOfString", + "documentation": "Filters access by the tag keys that are passed in the request", + "externalDocumentation": "${DocHomeURL}/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-tagkeys", + "required": false + }, + "lambda:SourceFunctionArn": { + "type": "ARN", + "documentation": "Filters access by the ARN of the AWS Lambda function from which the request originated", + "relativeDocumentation": "lambda-api-permissions-ref.html", + "required": false + }, + "lambda:SecurityGroupIds": { + "type": "ArrayOfString", + "documentation": "Filters access by the ID of security groups configured for the AWS Lambda function", + "relativeDocumentation": "lambda-api-permissions-ref.html", + "required": false + }, + "lambda:Principal": { + "type": "String", + "documentation": "Filters access by restricting the AWS service or account that can invoke a function", + "relativeDocumentation": "lambda-api-permissions-ref.html", + "required": false + } + }, + "aws.iam#disableConditionKeyInference": {}, + "aws.iam#supportedPrincipalTypes": [ + "Root", + "IAMUser", + "IAMRole", + "FederatedUser" + ], "aws.protocols#restJson1": {}, - "smithy.api#documentation": "Lambda\n

\n Overview\n

\n

Lambda is a compute service that lets you run code without provisioning or managing servers.\n Lambda runs your code on a high-availability compute infrastructure and performs all of the\n administration of the compute resources, including server and operating system maintenance, capacity provisioning\n and automatic scaling, code monitoring and logging. With Lambda, you can run code for virtually any\n type of application or backend service. For more information about the Lambda service, see What is Lambda in the Lambda Developer Guide.

\n

The Lambda API Reference provides information about\n each of the API methods, including details about the parameters in each API request and\n response.

\n

\n

You can use Software Development Kits (SDKs), Integrated Development Environment (IDE) Toolkits, and command\n line tools to access the API. For installation instructions, see Tools for\n Amazon Web Services.

\n

For a list of Region-specific endpoints that Lambda supports, \n see Lambda\n endpoints and quotas in the Amazon Web Services General Reference..

\n

When making the API calls, you will need to\n authenticate your request by providing a signature. Lambda supports signature version 4. For more information,\n see Signature Version 4 signing process in the\n Amazon Web Services General Reference..

\n

\n CA certificates\n

\n

Because Amazon Web Services SDKs use the CA certificates from your computer, changes to the certificates on the Amazon Web Services servers\n can cause connection failures when you attempt to use an SDK. You can prevent these failures by keeping your\n computer's CA certificates and operating system up-to-date. If you encounter this issue in a corporate\n environment and do not manage your own computer, you might need to ask an administrator to assist with the\n update process. The following list shows minimum operating system and Java versions:

\n
    \n
  • \n

    Microsoft Windows versions that have updates from January 2005 or later installed contain at least one\n of the required CAs in their trust list.

    \n
  • \n
  • \n

    Mac OS X 10.4 with Java for Mac OS X 10.4 Release 5 (February 2007), Mac OS X 10.5 (October 2007), and\n later versions contain at least one of the required CAs in their trust list.

    \n
  • \n
  • \n

    Red Hat Enterprise Linux 5 (March 2007), 6, and 7 and CentOS 5, 6, and 7 all contain at least one of the\n required CAs in their default trusted CA list.

    \n
  • \n
  • \n

    Java 1.4.2_12 (May 2006), 5 Update 2 (March 2005), and all later versions, including Java 6 (December\n 2006), 7, and 8, contain at least one of the required CAs in their default trusted CA list.

    \n
  • \n
\n

When accessing the Lambda management console or Lambda API endpoints, whether through browsers or\n programmatically, you will need to ensure your client machines support any of the following CAs:

\n
    \n
  • \n

    Amazon Root CA 1

    \n
  • \n
  • \n

    Starfield Services Root Certificate Authority - G2

    \n
  • \n
  • \n

    Starfield Class 2 Certification Authority

    \n
  • \n
\n

Root certificates from the first two authorities are available from Amazon trust services, but keeping your computer\n up-to-date is the more straightforward solution. To learn more about ACM-provided certificates, see Amazon Web Services Certificate Manager FAQs.\n

", + "smithy.api#documentation": "Lambda

Overview

Lambda is a compute service that lets you run code without provisioning or managing servers. Lambda runs your code on a high-availability compute infrastructure and performs all of the administration of the compute resources, including server and operating system maintenance, capacity provisioning and automatic scaling, code monitoring and logging. With Lambda, you can run code for virtually any type of application or backend service. For more information about the Lambda service, see What is Lambda in the Lambda Developer Guide.

The Lambda API Reference provides information about each of the API methods, including details about the parameters in each API request and response.

You can use Software Development Kits (SDKs), Integrated Development Environment (IDE) Toolkits, and command line tools to access the API. For installation instructions, see Tools for Amazon Web Services.

For a list of Region-specific endpoints that Lambda supports, see Lambda endpoints and quotas in the Amazon Web Services General Reference..

When making the API calls, you will need to authenticate your request by providing a signature. Lambda supports signature version 4. For more information, see Signature Version 4 signing process in the Amazon Web Services General Reference..

CA certificates

Because Amazon Web Services SDKs use the CA certificates from your computer, changes to the certificates on the Amazon Web Services servers can cause connection failures when you attempt to use an SDK. You can prevent these failures by keeping your computer's CA certificates and operating system up-to-date. If you encounter this issue in a corporate environment and do not manage your own computer, you might need to ask an administrator to assist with the update process. The following list shows minimum operating system and Java versions:

  • Microsoft Windows versions that have updates from January 2005 or later installed contain at least one of the required CAs in their trust list.

  • Mac OS X 10.4 with Java for Mac OS X 10.4 Release 5 (February 2007), Mac OS X 10.5 (October 2007), and later versions contain at least one of the required CAs in their trust list.

  • Red Hat Enterprise Linux 5 (March 2007), 6, and 7 and CentOS 5, 6, and 7 all contain at least one of the required CAs in their default trusted CA list.

  • Java 1.4.2_12 (May 2006), 5 Update 2 (March 2005), and all later versions, including Java 6 (December 2006), 7, and 8, contain at least one of the required CAs in their default trusted CA list.

When accessing the Lambda management console or Lambda API endpoints, whether through browsers or programmatically, you will need to ensure your client machines support any of the following CAs:

  • Amazon Root CA 1

  • Starfield Services Root Certificate Authority - G2

  • Starfield Class 2 Certification Authority

Root certificates from the first two authorities are available from Amazon trust services, but keeping your computer up-to-date is the more straightforward solution. To learn more about ACM-provided certificates, see Amazon Web Services Certificate Manager FAQs.

", + "smithy.api#paginated": { + "inputToken": "Marker", + "outputToken": "NextMarker", + "pageSize": "MaxItems" + }, + "smithy.api#suppress": [ + "ServiceTagging" + ], "smithy.api#title": "AWS Lambda", "smithy.rules#endpointRuleSet": { "version": "1.0", @@ -1381,17 +1297,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -1405,17 +1310,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -1429,17 +1323,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -1453,17 +1336,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { @@ -1547,7 +1419,7 @@ "target": "com.amazonaws.lambda#Long", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The maximum size of a deployment package when it's uploaded directly to Lambda. Use Amazon S3 for larger\n files.

" + "smithy.api#documentation": "

The maximum size of a deployment package when it's uploaded directly to Lambda. Use Amazon S3 for larger files.

" } }, "ConcurrentExecutions": { @@ -1560,7 +1432,7 @@ "UnreservedConcurrentExecutions": { "target": "com.amazonaws.lambda#UnreservedConcurrentExecutions", "traits": { - "smithy.api#documentation": "

The maximum number of simultaneous function executions, minus the capacity that's reserved for individual\n functions with PutFunctionConcurrency.

" + "smithy.api#documentation": "

The maximum number of simultaneous function executions, minus the capacity that's reserved for individual functions with PutFunctionConcurrency.

" } } }, @@ -1628,7 +1500,33 @@ } ], "traits": { - "smithy.api#documentation": "

Adds permissions to the resource-based policy of a version of an Lambda\n layer. Use this action to grant layer\n usage permission to other accounts. You can grant permission to a single account, all accounts in an organization,\n or all Amazon Web Services accounts.

\n

To revoke permission, call RemoveLayerVersionPermission with the statement ID that you\n specified when you added it.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to add permissions to the resource-based policy of a version of an AWS Lambda layer", + "relativeDocumentation": "API_AddLayerVersionPermission.html", + "resources": { + "required": { + "layerVersion": {} + } + } + }, + "smithy.api#documentation": "

Adds permissions to the resource-based policy of a version of an Lambda layer. Use this action to grant layer usage permission to other accounts. You can grant permission to a single account, all accounts in an organization, or all Amazon Web Services accounts.

To revoke permission, call RemoveLayerVersionPermission with the statement ID that you specified when you added it.

", + "smithy.api#examples": [ + { + "title": "To add permissions to a layer version", + "documentation": "The following example grants permission for the account 223456789012 to use version 1 of a layer named my-layer.", + "input": { + "LayerName": "my-layer", + "VersionNumber": 1, + "StatementId": "xaccount", + "Action": "lambda:GetLayerVersion", + "Principal": "223456789012" + }, + "output": { + "Statement": "{\"Sid\":\"xaccount\",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"arn:aws:iam::223456789012:root\"},\"Action\":\"lambda:GetLayerVersion\",\"Resource\":\"arn:aws:lambda:us-east-2:123456789012:layer:my-layer:1\"}", + "RevisionId": "35d87451-f796-4a3f-a618-95a3671b0a0c" + } + } + ], "smithy.api#http": { "method": "POST", "uri": "/2018-10-31/layers/{LayerName}/versions/{VersionNumber}/policy", @@ -1673,25 +1571,26 @@ "Principal": { "target": "com.amazonaws.lambda#LayerPermissionAllowedPrincipal", "traits": { - "smithy.api#documentation": "

An account ID, or * to grant layer usage permission to all\n accounts in an organization, or all Amazon Web Services accounts (if organizationId is not specified).\n For the last case, make sure that you really do want all Amazon Web Services accounts to have usage permission to this layer.\n

", + "smithy.api#documentation": "

An account ID, or * to grant layer usage permission to all accounts in an organization, or all Amazon Web Services accounts (if organizationId is not specified). For the last case, make sure that you really do want all Amazon Web Services accounts to have usage permission to this layer.

", "smithy.api#required": {} } }, "OrganizationId": { "target": "com.amazonaws.lambda#OrganizationId", "traits": { - "smithy.api#documentation": "

With the principal set to *, grant permission to all accounts in the specified\n organization.

" + "smithy.api#documentation": "

With the principal set to *, grant permission to all accounts in the specified organization.

" } }, "RevisionId": { "target": "com.amazonaws.lambda#String", "traits": { - "smithy.api#documentation": "

Only update the policy if the revision ID matches the ID specified. Use this option to avoid modifying a\n policy that has changed since you last read it.

", + "smithy.api#documentation": "

Only update the policy if the revision ID matches the ID specified. Use this option to avoid modifying a policy that has changed since you last read it.

", "smithy.api#httpQuery": "RevisionId" } } }, "traits": { + "aws.api#data": "permissions", "smithy.api#input": {} } }, @@ -1747,7 +1646,50 @@ } ], "traits": { - "smithy.api#documentation": "

Grants an Amazon Web Service, Amazon Web Services account, or Amazon Web Services organization\n permission to use a function. You can apply the policy at the function level, or specify a qualifier to restrict\n access to a single version or alias. If you use a qualifier, the invoker must use the full Amazon Resource Name\n (ARN) of that version or alias to invoke the function. Note: Lambda does not support adding policies\n to version $LATEST.

\n

To grant permission to another account, specify the account ID as the Principal. To grant\n permission to an organization defined in Organizations, specify the organization ID as the\n PrincipalOrgID. For Amazon Web Services, the principal is a domain-style identifier that\n the service defines, such as s3.amazonaws.com or sns.amazonaws.com. For Amazon Web Services, you can also specify the ARN of the associated resource as the SourceArn. If\n you grant permission to a service principal without specifying the source, other accounts could potentially\n configure resources in their account to invoke your Lambda function.

\n

This operation adds a statement to a resource-based permissions policy for the function. For more information\n about function policies, see Using resource-based policies for Lambda.

", + "aws.iam#conditionKeys": [ + "lambda:FunctionUrlAuthType", + "lambda:Principal" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to give an AWS service or another account permission to use an AWS Lambda function", + "relativeDocumentation": "API_AddPermission.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Grants a principal permission to use a function. You can apply the policy at the function level, or specify a qualifier to restrict access to a single version or alias. If you use a qualifier, the invoker must use the full Amazon Resource Name (ARN) of that version or alias to invoke the function. Note: Lambda does not support adding policies to version $LATEST.

To grant permission to another account, specify the account ID as the Principal. To grant permission to an organization defined in Organizations, specify the organization ID as the PrincipalOrgID. For Amazon Web Services services, the principal is a domain-style identifier that the service defines, such as s3.amazonaws.com or sns.amazonaws.com. For Amazon Web Services services, you can also specify the ARN of the associated resource as the SourceArn. If you grant permission to a service principal without specifying the source, other accounts could potentially configure resources in their account to invoke your Lambda function.

This operation adds a statement to a resource-based permissions policy for the function. For more information about function policies, see Using resource-based policies for Lambda.

", + "smithy.api#examples": [ + { + "title": "To grant Amazon S3 permission to invoke a function", + "documentation": "The following example adds permission for Amazon S3 to invoke a Lambda function named my-function for notifications from a bucket named my-bucket-1xpuxmplzrlbh in account 123456789012.", + "input": { + "FunctionName": "my-function", + "StatementId": "s3", + "Action": "lambda:InvokeFunction", + "Principal": "s3.amazonaws.com", + "SourceArn": "arn:aws:s3:::my-bucket-1xpuxmplzrlbh/*", + "SourceAccount": "123456789012" + }, + "output": { + "Statement": "{\"Sid\":\"s3\",\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"s3.amazonaws.com\"},\"Action\":\"lambda:InvokeFunction\",\"Resource\":\"arn:aws:lambda:us-east-2:123456789012:function:my-function\",\"Condition\":{\"StringEquals\":{\"AWS:SourceAccount\":\"123456789012\"},\"ArnLike\":{\"AWS:SourceArn\":\"arn:aws:s3:::my-bucket-1xpuxmplzrlbh\"}}}" + } + }, + { + "title": "To grant another account permission to invoke a function", + "documentation": "The following example adds permission for account 223456789012 invoke a Lambda function named my-function.", + "input": { + "FunctionName": "my-function", + "StatementId": "xaccount", + "Action": "lambda:InvokeFunction", + "Principal": "223456789012" + }, + "output": { + "Statement": "{\"Sid\":\"xaccount\",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"arn:aws:iam::223456789012:root\"},\"Action\":\"lambda:InvokeFunction\",\"Resource\":\"arn:aws:lambda:us-east-2:123456789012:function:my-function\"}" + } + } + ], "smithy.api#http": { "method": "POST", "uri": "/2015-03-31/functions/{FunctionName}/policy", @@ -1761,7 +1703,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function (name-only), my-function:v1 (with alias).

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN.\n If you specify only the function name, it is limited to 64 characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

Name formats

  • Function namemy-function (name-only), my-function:v1 (with alias).

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -1776,27 +1718,27 @@ "Action": { "target": "com.amazonaws.lambda#Action", "traits": { - "smithy.api#documentation": "

The action that the principal can use on the function. For example, lambda:InvokeFunction or\n lambda:GetFunction.

", + "smithy.api#documentation": "

The action that the principal can use on the function. For example, lambda:InvokeFunction or lambda:GetFunction.

", "smithy.api#required": {} } }, "Principal": { "target": "com.amazonaws.lambda#Principal", "traits": { - "smithy.api#documentation": "

The Amazon Web Service or Amazon Web Services account that invokes the function. If you specify a\n service, use SourceArn or SourceAccount to limit who can invoke the function through\n that service.

", + "smithy.api#documentation": "

The Amazon Web Services service, Amazon Web Services account, IAM user, or IAM role that invokes the function. If you specify a service, use SourceArn or SourceAccount to limit who can invoke the function through that service.

", "smithy.api#required": {} } }, "SourceArn": { "target": "com.amazonaws.lambda#Arn", "traits": { - "smithy.api#documentation": "

For Amazon Web Services, the ARN of the Amazon Web Services resource that invokes the function. For\n example, an Amazon S3 bucket or Amazon SNS topic.

\n

Note that Lambda configures the comparison using the StringLike operator.

" + "smithy.api#documentation": "

For Amazon Web Services services, the ARN of the Amazon Web Services resource that invokes the function. For example, an Amazon S3 bucket or Amazon SNS topic.

Note that Lambda configures the comparison using the StringLike operator.

" } }, "SourceAccount": { "target": "com.amazonaws.lambda#SourceOwner", "traits": { - "smithy.api#documentation": "

For Amazon Web Service, the ID of the Amazon Web Services account that owns the resource. Use this\n together with SourceArn to ensure that the specified account owns the resource. It is possible for an\n Amazon S3 bucket to be deleted by its owner and recreated by another account.

" + "smithy.api#documentation": "

For Amazon Web Services service, the ID of the Amazon Web Services account that owns the resource. Use this together with SourceArn to ensure that the specified account owns the resource. It is possible for an Amazon S3 bucket to be deleted by its owner and recreated by another account.

" } }, "EventSourceToken": { @@ -1815,23 +1757,24 @@ "RevisionId": { "target": "com.amazonaws.lambda#String", "traits": { - "smithy.api#documentation": "

Update the policy only if the revision ID matches the ID that's specified. Use this option to avoid modifying a\n policy that has changed since you last read it.

" + "smithy.api#documentation": "

Update the policy only if the revision ID matches the ID that's specified. Use this option to avoid modifying a policy that has changed since you last read it.

" } }, "PrincipalOrgID": { "target": "com.amazonaws.lambda#PrincipalOrgID", "traits": { - "smithy.api#documentation": "

The identifier for your organization in Organizations. Use this to grant permissions to all the\n Amazon Web Services accounts under this organization.

" + "smithy.api#documentation": "

The identifier for your organization in Organizations. Use this to grant permissions to all the Amazon Web Services accounts under this organization.

" } }, "FunctionUrlAuthType": { "target": "com.amazonaws.lambda#FunctionUrlAuthType", "traits": { - "smithy.api#documentation": "

The type of authentication that your function URL uses. Set to AWS_IAM if you want to restrict access to authenticated\n users only. Set to NONE if you want to bypass IAM authentication to create a public endpoint. For more information,\n see Security and auth model for Lambda function URLs.

" + "smithy.api#documentation": "

The type of authentication that your function URL uses. Set to AWS_IAM if you want to restrict access to authenticated users only. Set to NONE if you want to bypass IAM authentication to create a public endpoint. For more information, see Security and auth model for Lambda function URLs.

" } } }, "traits": { + "aws.api#data": "permissions", "smithy.api#input": {} } }, @@ -1908,7 +1851,7 @@ "RoutingConfig": { "target": "com.amazonaws.lambda#AliasRoutingConfiguration", "traits": { - "smithy.api#documentation": "

The routing\n configuration of the alias.

" + "smithy.api#documentation": "

The routing configuration of the alias.

" } }, "RevisionId": { @@ -1975,7 +1918,7 @@ "SigningProfileVersionArns": { "target": "com.amazonaws.lambda#SigningProfileVersionArns", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) for each of the signing profiles. A signing profile defines a trusted user\n who can sign a code package.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) for each of the signing profiles. A signing profile defines a trusted user who can sign a code package.

", "smithy.api#required": {} } } @@ -1990,7 +1933,13 @@ "ConsumerGroupId": { "target": "com.amazonaws.lambda#URI", "traits": { - "smithy.api#documentation": "

The identifier for the Kafka consumer group to join. The consumer group ID must be unique among all your Kafka event sources.\n After creating a Kafka event source mapping with the consumer group ID specified, you cannot update this value. For more information, see\n Customizable consumer group ID.

" + "smithy.api#documentation": "

The identifier for the Kafka consumer group to join. The consumer group ID must be unique among all your Kafka event sources. After creating a Kafka event source mapping with the consumer group ID specified, you cannot update this value. For more information, see Customizable consumer group ID.

" + } + }, + "SchemaRegistryConfig": { + "target": "com.amazonaws.lambda#KafkaSchemaRegistryConfig", + "traits": { + "smithy.api#documentation": "

Specific configuration settings for a Kafka schema registry.

" } } }, @@ -2191,18 +2140,63 @@ "smithy.api#httpError": 404 } }, + "com.amazonaws.lambda#CodeSigningConfigResource": { + "type": "resource", + "identifiers": { + "CodeSigningConfigId": { + "target": "com.amazonaws.lambda#CodeSigningConfigId" + } + }, + "create": { + "target": "com.amazonaws.lambda#CreateCodeSigningConfig" + }, + "list": { + "target": "com.amazonaws.lambda#ListCodeSigningConfigs" + }, + "collectionOperations": [ + { + "target": "com.amazonaws.lambda#DeleteCodeSigningConfig" + }, + { + "target": "com.amazonaws.lambda#GetCodeSigningConfig" + }, + { + "target": "com.amazonaws.lambda#ListFunctionsByCodeSigningConfig" + }, + { + "target": "com.amazonaws.lambda#UpdateCodeSigningConfig" + } + ], + "traits": { + "aws.api#arn": { + "template": "code-signing-config:{CodeSigningConfigId}" + }, + "aws.iam#conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ], + "aws.iam#iamResource": { + "disableConditionKeyInheritance": true, + "name": "code signing config", + "relativeDocumentation": "lambda-api-permissions-ref.html" + }, + "smithy.api#documentation": "Represents an AWS Lambda code signing config", + "smithy.api#suppress": [ + "IamResourceTrait" + ] + } + }, "com.amazonaws.lambda#CodeSigningPolicies": { "type": "structure", "members": { "UntrustedArtifactOnDeployment": { "target": "com.amazonaws.lambda#CodeSigningPolicy", "traits": { - "smithy.api#documentation": "

Code signing configuration policy for deployment validation failure. If you set the policy to\n Enforce, Lambda blocks the deployment request if signature validation checks fail. If you set the\n policy to Warn, Lambda allows the deployment and creates a CloudWatch log.

\n

Default value: Warn\n

" + "smithy.api#documentation": "

Code signing configuration policy for deployment validation failure. If you set the policy to Enforce, Lambda blocks the deployment request if signature validation checks fail. If you set the policy to Warn, Lambda allows the deployment and creates a CloudWatch log.

Default value: Warn

" } } }, "traits": { - "smithy.api#documentation": "

Code signing configuration policies specify the validation failure action for signature mismatch or\n expiry.

" + "smithy.api#documentation": "

Code signing configuration policies specify the validation failure action for signature mismatch or expiry.

" } }, "com.amazonaws.lambda#CodeSigningPolicy": { @@ -2252,7 +2246,7 @@ } }, "traits": { - "smithy.api#documentation": "

The code signature failed one or more of the validation checks for signature mismatch or expiry, and the code\n signing policy is set to ENFORCE. Lambda blocks the deployment.

", + "smithy.api#documentation": "

The code signature failed one or more of the validation checks for signature mismatch or expiry, and the code signing policy is set to ENFORCE. Lambda blocks the deployment.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -2297,7 +2291,7 @@ "ReservedConcurrentExecutions": { "target": "com.amazonaws.lambda#ReservedConcurrentExecutions", "traits": { - "smithy.api#documentation": "

The number of concurrent executions that are reserved for this function. For more information, see Managing Lambda reserved\n concurrency.

" + "smithy.api#documentation": "

The number of concurrent executions that are reserved for this function. For more information, see Managing Lambda reserved concurrency.

" } } } @@ -2308,42 +2302,42 @@ "AllowCredentials": { "target": "com.amazonaws.lambda#AllowCredentials", "traits": { - "smithy.api#documentation": "

Whether to allow cookies or other credentials in requests to your function URL. The default is\n false.

" + "smithy.api#documentation": "

Whether to allow cookies or other credentials in requests to your function URL. The default is false.

" } }, "AllowHeaders": { "target": "com.amazonaws.lambda#HeadersList", "traits": { - "smithy.api#documentation": "

The HTTP headers that origins can include in requests to your function URL. For example: Date, Keep-Alive,\n X-Custom-Header.

" + "smithy.api#documentation": "

The HTTP headers that origins can include in requests to your function URL. For example: Date, Keep-Alive, X-Custom-Header.

" } }, "AllowMethods": { "target": "com.amazonaws.lambda#AllowMethodsList", "traits": { - "smithy.api#documentation": "

The HTTP methods that are allowed when calling your function URL. For example: GET, POST, DELETE,\n or the wildcard character (*).

" + "smithy.api#documentation": "

The HTTP methods that are allowed when calling your function URL. For example: GET, POST, DELETE, or the wildcard character (*).

" } }, "AllowOrigins": { "target": "com.amazonaws.lambda#AllowOriginsList", "traits": { - "smithy.api#documentation": "

The origins that can access your function URL. You can list any number of specific origins, separated by a comma. For example:\n https://www.example.com, http://localhost:60905.

\n

Alternatively, you can grant access to all origins using the wildcard character (*).

" + "smithy.api#documentation": "

The origins that can access your function URL. You can list any number of specific origins, separated by a comma. For example: https://www.example.com, http://localhost:60905.

Alternatively, you can grant access to all origins using the wildcard character (*).

" } }, "ExposeHeaders": { "target": "com.amazonaws.lambda#HeadersList", "traits": { - "smithy.api#documentation": "

The HTTP headers in your function response that you want to expose to origins that call your function URL. For example:\n Date, Keep-Alive, X-Custom-Header.

" + "smithy.api#documentation": "

The HTTP headers in your function response that you want to expose to origins that call your function URL. For example: Date, Keep-Alive, X-Custom-Header.

" } }, "MaxAge": { "target": "com.amazonaws.lambda#MaxAge", "traits": { - "smithy.api#documentation": "

The maximum amount of time, in seconds, that web browsers can cache results of a preflight request. By\n default, this is set to 0, which means that the browser doesn't cache results.

" + "smithy.api#documentation": "

The maximum amount of time, in seconds, that web browsers can cache results of a preflight request. By default, this is set to 0, which means that the browser doesn't cache results.

" } } }, "traits": { - "smithy.api#documentation": "

The cross-origin resource sharing\n (CORS) settings for your Lambda function URL. Use CORS to grant access to your function URL\n from any origin. You can also use CORS to control access for specific HTTP headers and methods in requests to your\n function URL.

" + "smithy.api#documentation": "

The cross-origin resource sharing (CORS) settings for your Lambda function URL. Use CORS to grant access to your function URL from any origin. You can also use CORS to control access for specific HTTP headers and methods in requests to your function URL.

" } }, "com.amazonaws.lambda#CreateAlias": { @@ -2372,12 +2366,41 @@ } ], "traits": { - "smithy.api#documentation": "

Creates an alias for a\n Lambda function version. Use aliases to provide clients with a function identifier that you can update to invoke a\n different version.

\n

You can also map an alias to split invocation requests between two versions. Use the\n RoutingConfig parameter to specify a second version and the percentage of invocation requests that\n it receives.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to create an alias for a Lambda function version", + "relativeDocumentation": "API_CreateAlias.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Creates an alias for a Lambda function version. Use aliases to provide clients with a function identifier that you can update to invoke a different version.

You can also map an alias to split invocation requests between two versions. Use the RoutingConfig parameter to specify a second version and the percentage of invocation requests that it receives.

", + "smithy.api#examples": [ + { + "title": "To create an alias for a Lambda function", + "documentation": "The following example creates an alias named LIVE that points to version 1 of the my-function Lambda function.", + "input": { + "FunctionName": "my-function", + "Name": "LIVE", + "FunctionVersion": "1", + "Description": "alias for live version of function" + }, + "output": { + "FunctionVersion": "1", + "Name": "LIVE", + "AliasArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:LIVE", + "RevisionId": "873282ed-xmpl-4dc8-a069-d0c647e470c6", + "Description": "alias for live version of function" + } + } + ], "smithy.api#http": { "method": "POST", "uri": "/2015-03-31/functions/{FunctionName}/aliases", "code": 201 - } + }, + "smithy.api#idempotent": {} } }, "com.amazonaws.lambda#CreateAliasRequest": { @@ -2386,7 +2409,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function name - MyFunction.

    \n
  • \n
  • \n

    \n Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

    \n
  • \n
  • \n

    \n Partial ARN - 123456789012:function:MyFunction.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function name - MyFunction.

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

  • Partial ARN - 123456789012:function:MyFunction.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -2395,7 +2418,8 @@ "target": "com.amazonaws.lambda#Alias", "traits": { "smithy.api#documentation": "

The name of the alias.

", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.api#resourceIdentifier": "Alias" } }, "FunctionVersion": { @@ -2414,7 +2438,7 @@ "RoutingConfig": { "target": "com.amazonaws.lambda#AliasRoutingConfiguration", "traits": { - "smithy.api#documentation": "

The routing\n configuration of the alias.

" + "smithy.api#documentation": "

The routing configuration of the alias.

" } } }, @@ -2439,7 +2463,18 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a code signing configuration. A code signing configuration defines a list of\n allowed signing profiles and defines the code-signing validation policy (action to be taken if deployment\n validation checks fail).

", + "aws.iam#conditionKeys": [ + "aws:TagKeys", + "aws:RequestTag/${TagKey}" + ], + "aws.iam#iamAction": { + "createsResources": [ + "code signing config" + ], + "documentation": "Grants permission to create an AWS Lambda code signing config", + "relativeDocumentation": "API_CreateCodeSigningConfig.html" + }, + "smithy.api#documentation": "

Creates a code signing configuration. A code signing configuration defines a list of allowed signing profiles and defines the code-signing validation policy (action to be taken if deployment validation checks fail).

", "smithy.api#http": { "method": "POST", "uri": "/2020-04-22/code-signing-configs", @@ -2468,6 +2503,12 @@ "traits": { "smithy.api#documentation": "

The code signing policies define the actions to take if the validation checks fail.

" } + }, + "Tags": { + "target": "com.amazonaws.lambda#Tags", + "traits": { + "smithy.api#documentation": "

A list of tags to add to the code signing configuration.

" + } } }, "traits": { @@ -2515,7 +2556,39 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a mapping between an event source and an Lambda function. Lambda reads items from the event source and invokes the function.

\n

For details about how to configure different event sources, see the following topics.

\n \n

The following error handling options are available only for stream sources (DynamoDB and Kinesis):

\n
    \n
  • \n

    \n BisectBatchOnFunctionError – If the function returns an error, split the batch in two and retry.

    \n
  • \n
  • \n

    \n DestinationConfig – Send discarded records to an Amazon SQS queue or Amazon SNS topic.

    \n
  • \n
  • \n

    \n MaximumRecordAgeInSeconds – Discard records older than the specified age. The default value is infinite (-1). When set to infinite (-1), failed records are retried until the record expires

    \n
  • \n
  • \n

    \n MaximumRetryAttempts – Discard records after the specified number of retries. The default value is infinite (-1). When set to infinite (-1), failed records are retried until the record expires.

    \n
  • \n
  • \n

    \n ParallelizationFactor – Process multiple batches from each shard concurrently.

    \n
  • \n
\n

For information about which configuration parameters apply to each event source, see the following topics.

\n ", + "aws.iam#conditionKeys": [ + "aws:RequestTag/${TagKey}", + "lambda:FunctionArn", + "aws:TagKeys" + ], + "aws.iam#iamAction": { + "createsResources": [ + "eventSourceMapping" + ], + "documentation": "Grants permission to create a mapping between an event source and an AWS Lambda function", + "relativeDocumentation": "API_CreateEventSourceMapping.html" + }, + "smithy.api#documentation": "

Creates a mapping between an event source and an Lambda function. Lambda reads items from the event source and invokes the function.

For details about how to configure different event sources, see the following topics.

The following error handling options are available only for DynamoDB and Kinesis event sources:

  • BisectBatchOnFunctionError – If the function returns an error, split the batch in two and retry.

  • MaximumRecordAgeInSeconds – Discard records older than the specified age. The default value is infinite (-1). When set to infinite (-1), failed records are retried until the record expires

  • MaximumRetryAttempts – Discard records after the specified number of retries. The default value is infinite (-1). When set to infinite (-1), failed records are retried until the record expires.

  • ParallelizationFactor – Process multiple batches from each shard concurrently.

For stream sources (DynamoDB, Kinesis, Amazon MSK, and self-managed Apache Kafka), the following option is also available:

  • OnFailure – Send discarded records to an Amazon SQS queue, Amazon SNS topic, or Amazon S3 bucket. For more information, see Adding a destination.

For information about which configuration parameters apply to each event source, see the following topics.

", + "smithy.api#examples": [ + { + "title": "To create a mapping between an event source and an AWS Lambda function", + "documentation": "The following example creates a mapping between an SQS queue and the my-function Lambda function.", + "input": { + "EventSourceArn": "arn:aws:sqs:us-west-2:123456789012:my-queue", + "FunctionName": "my-function", + "BatchSize": 5 + }, + "output": { + "UUID": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", + "StateTransitionReason": "USER_INITIATED", + "LastModified": 1.569284520333E9, + "BatchSize": 5, + "State": "Creating", + "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", + "EventSourceArn": "arn:aws:sqs:us-west-2:123456789012:my-queue" + } + } + ], "smithy.api#http": { "method": "POST", "uri": "/2015-03-31/event-source-mappings", @@ -2529,38 +2602,38 @@ "EventSourceArn": { "target": "com.amazonaws.lambda#Arn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the event source.

\n
    \n
  • \n

    \n Amazon Kinesis – The ARN of the data stream or a stream consumer.

    \n
  • \n
  • \n

    \n Amazon DynamoDB Streams – The ARN of the stream.

    \n
  • \n
  • \n

    \n Amazon Simple Queue Service – The ARN of the queue.

    \n
  • \n
  • \n

    \n Amazon Managed Streaming for Apache Kafka – The ARN of the cluster or the ARN of the VPC connection (for cross-account event source mappings).

    \n
  • \n
  • \n

    \n Amazon MQ – The ARN of the broker.

    \n
  • \n
  • \n

    \n Amazon DocumentDB – The ARN of the DocumentDB change stream.

    \n
  • \n
" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the event source.

  • Amazon Kinesis – The ARN of the data stream or a stream consumer.

  • Amazon DynamoDB Streams – The ARN of the stream.

  • Amazon Simple Queue Service – The ARN of the queue.

  • Amazon Managed Streaming for Apache Kafka – The ARN of the cluster or the ARN of the VPC connection (for cross-account event source mappings).

  • Amazon MQ – The ARN of the broker.

  • Amazon DocumentDB – The ARN of the DocumentDB change stream.

" } }, "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function nameMyFunction.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:MyFunction.

    \n
  • \n
  • \n

    \n Version or Alias ARNarn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:MyFunction.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it's limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function nameMyFunction.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:MyFunction.

  • Version or Alias ARNarn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD.

  • Partial ARN123456789012:function:MyFunction.

The length constraint applies only to the full ARN. If you specify only the function name, it's limited to 64 characters in length.

", "smithy.api#required": {} } }, "Enabled": { "target": "com.amazonaws.lambda#Enabled", "traits": { - "smithy.api#documentation": "

When true, the event source mapping is active. When false, Lambda pauses polling and invocation.

\n

Default: True

" + "smithy.api#documentation": "

When true, the event source mapping is active. When false, Lambda pauses polling and invocation.

Default: True

" } }, "BatchSize": { "target": "com.amazonaws.lambda#BatchSize", "traits": { - "smithy.api#documentation": "

The maximum number of records in each batch that Lambda pulls from your stream or queue and sends to your function. Lambda passes all of the records in the batch to the function in a single call, up to the payload limit for synchronous invocation\n (6 MB).

\n
    \n
  • \n

    \n Amazon Kinesis – Default 100. Max 10,000.

    \n
  • \n
  • \n

    \n Amazon DynamoDB Streams – Default 100. Max 10,000.

    \n
  • \n
  • \n

    \n Amazon Simple Queue Service – Default 10. For standard queues the max is 10,000. For FIFO queues the max is 10.

    \n
  • \n
  • \n

    \n Amazon Managed Streaming for Apache Kafka – Default 100. Max 10,000.

    \n
  • \n
  • \n

    \n Self-managed Apache Kafka – Default 100. Max 10,000.

    \n
  • \n
  • \n

    \n Amazon MQ (ActiveMQ and RabbitMQ) – Default 100. Max 10,000.

    \n
  • \n
  • \n

    \n DocumentDB – Default 100. Max 10,000.

    \n
  • \n
" + "smithy.api#documentation": "

The maximum number of records in each batch that Lambda pulls from your stream or queue and sends to your function. Lambda passes all of the records in the batch to the function in a single call, up to the payload limit for synchronous invocation (6 MB).

  • Amazon Kinesis – Default 100. Max 10,000.

  • Amazon DynamoDB Streams – Default 100. Max 10,000.

  • Amazon Simple Queue Service – Default 10. For standard queues the max is 10,000. For FIFO queues the max is 10.

  • Amazon Managed Streaming for Apache Kafka – Default 100. Max 10,000.

  • Self-managed Apache Kafka – Default 100. Max 10,000.

  • Amazon MQ (ActiveMQ and RabbitMQ) – Default 100. Max 10,000.

  • DocumentDB – Default 100. Max 10,000.

" } }, "FilterCriteria": { "target": "com.amazonaws.lambda#FilterCriteria", "traits": { - "smithy.api#documentation": "

An object that defines the filter criteria that\n determine whether Lambda should process an event. For more information, see Lambda event filtering.

" + "smithy.api#documentation": "

An object that defines the filter criteria that determine whether Lambda should process an event. For more information, see Lambda event filtering.

" } }, "MaximumBatchingWindowInSeconds": { "target": "com.amazonaws.lambda#MaximumBatchingWindowInSeconds", "traits": { - "smithy.api#documentation": "

The maximum amount of time, in seconds, that Lambda spends gathering records before invoking the function.\n You can configure MaximumBatchingWindowInSeconds to any value from 0 seconds to 300 seconds in increments of seconds.

\n

For streams and Amazon SQS event sources, the default batching window is 0 seconds. For Amazon MSK, Self-managed Apache Kafka, Amazon MQ, and DocumentDB event sources, the default\n batching window is 500 ms. Note that because you can only change MaximumBatchingWindowInSeconds in increments of seconds, you cannot revert back to the 500 ms default batching window after you have changed it.\n To restore the default batching window, you must create a new event source mapping.

\n

Related setting: For streams and Amazon SQS event sources, when you set BatchSize to a value greater than 10, you must set MaximumBatchingWindowInSeconds to at least 1.

" + "smithy.api#documentation": "

The maximum amount of time, in seconds, that Lambda spends gathering records before invoking the function. You can configure MaximumBatchingWindowInSeconds to any value from 0 seconds to 300 seconds in increments of seconds.

For Kinesis, DynamoDB, and Amazon SQS event sources, the default batching window is 0 seconds. For Amazon MSK, Self-managed Apache Kafka, Amazon MQ, and DocumentDB event sources, the default batching window is 500 ms. Note that because you can only change MaximumBatchingWindowInSeconds in increments of seconds, you cannot revert back to the 500 ms default batching window after you have changed it. To restore the default batching window, you must create a new event source mapping.

Related setting: For Kinesis, DynamoDB, and Amazon SQS event sources, when you set BatchSize to a value greater than 10, you must set MaximumBatchingWindowInSeconds to at least 1.

" } }, "ParallelizationFactor": { @@ -2572,13 +2645,13 @@ "StartingPosition": { "target": "com.amazonaws.lambda#EventSourcePosition", "traits": { - "smithy.api#documentation": "

The position in a stream from which to start reading. Required for Amazon Kinesis and\n Amazon DynamoDB Stream event sources. AT_TIMESTAMP is supported only for\n Amazon Kinesis streams, Amazon DocumentDB, Amazon MSK, and self-managed Apache Kafka.

" + "smithy.api#documentation": "

The position in a stream from which to start reading. Required for Amazon Kinesis and Amazon DynamoDB Stream event sources. AT_TIMESTAMP is supported only for Amazon Kinesis streams, Amazon DocumentDB, Amazon MSK, and self-managed Apache Kafka.

" } }, "StartingPositionTimestamp": { "target": "com.amazonaws.lambda#Date", "traits": { - "smithy.api#documentation": "

With StartingPosition set to AT_TIMESTAMP, the time from which to start\n reading. StartingPositionTimestamp cannot be in the future.

" + "smithy.api#documentation": "

With StartingPosition set to AT_TIMESTAMP, the time from which to start reading. StartingPositionTimestamp cannot be in the future.

" } }, "DestinationConfig": { @@ -2605,6 +2678,12 @@ "smithy.api#documentation": "

(Kinesis and DynamoDB Streams only) Discard records after the specified number of retries. The default value is infinite (-1). When set to infinite (-1), failed records are retried until the record expires.

" } }, + "Tags": { + "target": "com.amazonaws.lambda#Tags", + "traits": { + "smithy.api#documentation": "

A list of tags to apply to the event source mapping.

" + } + }, "TumblingWindowInSeconds": { "target": "com.amazonaws.lambda#TumblingWindowInSeconds", "traits": { @@ -2664,6 +2743,24 @@ "traits": { "smithy.api#documentation": "

Specific configuration settings for a DocumentDB event source.

" } + }, + "KMSKeyArn": { + "target": "com.amazonaws.lambda#KMSKeyArn", + "traits": { + "smithy.api#documentation": "

The ARN of the Key Management Service (KMS) customer managed key that Lambda uses to encrypt your function's filter criteria. By default, Lambda does not encrypt your filter criteria object. Specify this property to encrypt data using your own customer managed key.

" + } + }, + "MetricsConfig": { + "target": "com.amazonaws.lambda#EventSourceMappingMetricsConfig", + "traits": { + "smithy.api#documentation": "

The metrics configuration for your event source. For more information, see Event source mapping metrics.

" + } + }, + "ProvisionedPollerConfig": { + "target": "com.amazonaws.lambda#ProvisionedPollerConfig", + "traits": { + "smithy.api#documentation": "

(Amazon MSK and self-managed Apache Kafka only) The provisioned mode configuration for the event source. For more information, see provisioned mode.

" + } } }, "traits": { @@ -2708,12 +2805,100 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a Lambda function. To create a function, you need a deployment package and an execution role. The\n deployment package is a .zip file archive or container image that contains your function code. The execution role\n grants the function permission to use Amazon Web Services, such as Amazon CloudWatch Logs for log\n streaming and X-Ray for request tracing.

\n

If the deployment package is a container\n image, then you set the package type to Image. For a container image, the code property\n must include the URI of a container image in the Amazon ECR registry. You do not need to specify the\n handler and runtime properties.

\n

If the deployment package is a .zip file archive, then\n you set the package type to Zip. For a .zip file archive, the code property specifies the location of\n the .zip file. You must also specify the handler and runtime properties. The code in the deployment package must\n be compatible with the target instruction set architecture of the function (x86-64 or\n arm64). If you do not specify the architecture, then the default value is\n x86-64.

\n

When you create a function, Lambda provisions an instance of the function and its supporting\n resources. If your function connects to a VPC, this process can take a minute or so. During this time, you can't\n invoke or modify the function. The State, StateReason, and StateReasonCode\n fields in the response from GetFunctionConfiguration indicate when the function is ready to\n invoke. For more information, see Lambda function states.

\n

A function has an unpublished version, and can have published versions and aliases. The unpublished version\n changes when you update your function's code and configuration. A published version is a snapshot of your function\n code and configuration that can't be changed. An alias is a named resource that maps to a version, and can be\n changed to map to a different version. Use the Publish parameter to create version 1 of\n your function from its initial configuration.

\n

The other parameters let you configure version-specific and function-level settings. You can modify\n version-specific settings later with UpdateFunctionConfiguration. Function-level settings apply\n to both the unpublished and published versions of the function, and include tags (TagResource)\n and per-function concurrency limits (PutFunctionConcurrency).

\n

You can use code signing if your deployment package is a .zip file archive. To enable code signing for this\n function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with\n UpdateFunctionCode, Lambda checks that the code package has a valid signature from\n a trusted publisher. The code-signing configuration includes set of signing profiles, which define the trusted\n publishers for this function.

\n

If another Amazon Web Services account or an Amazon Web Service invokes your function, use AddPermission to grant permission by creating a resource-based Identity and Access Management (IAM) policy. You can grant permissions at the function level, on a version, or on an alias.

\n

To invoke your function directly, use Invoke. To invoke your function in response to events\n in other Amazon Web Services, create an event source mapping (CreateEventSourceMapping),\n or configure a function trigger in the other service. For more information, see Invoking Lambda\n functions.

", + "aws.iam#conditionKeys": [ + "lambda:VpcIds", + "lambda:SubnetIds", + "lambda:CodeSigningConfigArn", + "lambda:Layer", + "aws:RequestTag/${TagKey}", + "aws:TagKeys", + "lambda:SecurityGroupIds" + ], + "aws.iam#iamAction": { + "createsResources": [ + "function" + ], + "documentation": "Grants permission to create an AWS Lambda function", + "relativeDocumentation": "API_CreateFunction.html", + "requiredActions": [ + "iam:PassRole" + ], + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Creates a Lambda function. To create a function, you need a deployment package and an execution role. The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use Amazon Web Services services, such as Amazon CloudWatch Logs for log streaming and X-Ray for request tracing.

If the deployment package is a container image, then you set the package type to Image. For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties.

If the deployment package is a .zip file archive, then you set the package type to Zip. For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. The code in the deployment package must be compatible with the target instruction set architecture of the function (x86-64 or arm64). If you do not specify the architecture, then the default value is x86-64.

When you create a function, Lambda provisions an instance of the function and its supporting resources. If your function connects to a VPC, this process can take a minute or so. During this time, you can't invoke or modify the function. The State, StateReason, and StateReasonCode fields in the response from GetFunctionConfiguration indicate when the function is ready to invoke. For more information, see Lambda function states.

A function has an unpublished version, and can have published versions and aliases. The unpublished version changes when you update your function's code and configuration. A published version is a snapshot of your function code and configuration that can't be changed. An alias is a named resource that maps to a version, and can be changed to map to a different version. Use the Publish parameter to create version 1 of your function from its initial configuration.

The other parameters let you configure version-specific and function-level settings. You can modify version-specific settings later with UpdateFunctionConfiguration. Function-level settings apply to both the unpublished and published versions of the function, and include tags (TagResource) and per-function concurrency limits (PutFunctionConcurrency).

You can use code signing if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with UpdateFunctionCode, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes set of signing profiles, which define the trusted publishers for this function.

If another Amazon Web Services account or an Amazon Web Services service invokes your function, use AddPermission to grant permission by creating a resource-based Identity and Access Management (IAM) policy. You can grant permissions at the function level, on a version, or on an alias.

To invoke your function directly, use Invoke. To invoke your function in response to events in other Amazon Web Services services, create an event source mapping (CreateEventSourceMapping), or configure a function trigger in the other service. For more information, see Invoking Lambda functions.

", + "smithy.api#examples": [ + { + "title": "To create a function", + "documentation": "The following example creates a function with a deployment package in Amazon S3 and enables X-Ray tracing and environment variable encryption.", + "input": { + "FunctionName": "my-function", + "Runtime": "nodejs12.x", + "Role": "arn:aws:iam::123456789012:role/lambda-role", + "Handler": "index.handler", + "Code": { + "S3Bucket": "my-bucket-1xpuxmplzrlbh", + "S3Key": "function.zip" + }, + "Description": "Process image objects from Amazon S3.", + "Timeout": 15, + "MemorySize": 256, + "Publish": true, + "Environment": { + "Variables": { + "BUCKET": "my-bucket-1xpuxmplzrlbh", + "PREFIX": "inbound" + } + }, + "KMSKeyArn": "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966", + "TracingConfig": { + "Mode": "Active" + }, + "Tags": { + "DEPARTMENT": "Assets" + } + }, + "output": { + "FunctionName": "my-function", + "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", + "Runtime": "nodejs12.x", + "Role": "arn:aws:iam::123456789012:role/lambda-role", + "Handler": "index.handler", + "CodeSize": 5797206, + "Description": "Process image objects from Amazon S3.", + "Timeout": 15, + "MemorySize": 256, + "LastModified": "2020-04-10T19:06:32.563+0000", + "CodeSha256": "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=", + "Version": "1", + "Environment": { + "Variables": { + "PREFIX": "inbound", + "BUCKET": "my-bucket-1xpuxmplzrlbh" + } + }, + "KMSKeyArn": "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966", + "TracingConfig": { + "Mode": "Active" + }, + "RevisionId": "b75dcd81-xmpl-48a8-a75a-93ba8b5b9727", + "State": "Active", + "LastUpdateStatus": "Successful" + } + } + ], "smithy.api#http": { "method": "POST", "uri": "/2015-03-31/functions", "code": 201 - } + }, + "smithy.api#idempotent": {}, + "smithy.api#suppress": [ + "TaggableResource" + ] } }, "com.amazonaws.lambda#CreateFunctionRequest": { @@ -2722,14 +2907,14 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#required": {} } }, "Runtime": { "target": "com.amazonaws.lambda#Runtime", "traits": { - "smithy.api#documentation": "

The identifier of the function's runtime. Runtime is required if the deployment package is a .zip file archive.

\n

The following list includes deprecated runtimes. For more information, see Runtime deprecation policy.

" + "smithy.api#documentation": "

The identifier of the function's runtime. Runtime is required if the deployment package is a .zip file archive. Specifying a runtime results in an error if you're deploying a function using a container image.

The following list includes deprecated runtimes. Lambda blocks creating new functions and updating existing functions shortly after each runtime is deprecated. For more information, see Runtime use after deprecation.

For a list of all currently supported runtimes, see Supported runtimes.

" } }, "Role": { @@ -2742,7 +2927,7 @@ "Handler": { "target": "com.amazonaws.lambda#Handler", "traits": { - "smithy.api#documentation": "

The name of the method within your code that Lambda calls to run your function. \nHandler is required if the deployment package is a .zip file archive. The format includes the\n file name. It can also include namespaces and other qualifiers, depending on the runtime. For more information,\n see Lambda programming model.

" + "smithy.api#documentation": "

The name of the method within your code that Lambda calls to run your function. Handler is required if the deployment package is a .zip file archive. The format includes the file name. It can also include namespaces and other qualifiers, depending on the runtime. For more information, see Lambda programming model.

" } }, "Code": { @@ -2761,13 +2946,13 @@ "Timeout": { "target": "com.amazonaws.lambda#Timeout", "traits": { - "smithy.api#documentation": "

The amount of time (in seconds) that Lambda allows a function to run before stopping it. The default is 3 seconds. The\n maximum allowed value is 900 seconds. For more information, see Lambda execution environment.

" + "smithy.api#documentation": "

The amount of time (in seconds) that Lambda allows a function to run before stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds. For more information, see Lambda execution environment.

" } }, "MemorySize": { "target": "com.amazonaws.lambda#MemorySize", "traits": { - "smithy.api#documentation": "

The amount of memory available to the function at runtime.\n Increasing the function memory also increases its CPU allocation. The default value is 128 MB. The value can be any multiple of 1 MB.

" + "smithy.api#documentation": "

The amount of memory available to the function at runtime. Increasing the function memory also increases its CPU allocation. The default value is 128 MB. The value can be any multiple of 1 MB.

" } }, "Publish": { @@ -2780,7 +2965,7 @@ "VpcConfig": { "target": "com.amazonaws.lambda#VpcConfig", "traits": { - "smithy.api#documentation": "

For network connectivity to Amazon Web Services resources in a VPC, specify a list of security groups and subnets in the VPC.\n When you connect a function to a VPC, it can access resources and the internet only through that VPC. For more\n information, see Configuring a Lambda function to access resources in a VPC.

" + "smithy.api#documentation": "

For network connectivity to Amazon Web Services resources in a VPC, specify a list of security groups and subnets in the VPC. When you connect a function to a VPC, it can access resources and the internet only through that VPC. For more information, see Configuring a Lambda function to access resources in a VPC.

" } }, "PackageType": { @@ -2792,7 +2977,7 @@ "DeadLetterConfig": { "target": "com.amazonaws.lambda#DeadLetterConfig", "traits": { - "smithy.api#documentation": "

A dead-letter queue configuration that specifies the queue or topic where Lambda sends asynchronous events\n when they fail processing. For more information, see Dead-letter queues.

" + "smithy.api#documentation": "

A dead-letter queue configuration that specifies the queue or topic where Lambda sends asynchronous events when they fail processing. For more information, see Dead-letter queues.

" } }, "Environment": { @@ -2804,25 +2989,25 @@ "KMSKeyArn": { "target": "com.amazonaws.lambda#KMSKeyArn", "traits": { - "smithy.api#documentation": "

The ARN of the Key Management Service (KMS) customer managed key that's used to encrypt your function's \nenvironment variables. When \nLambda SnapStart is activated, Lambda also uses \nthis key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to \nencrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR).\nIf you don't provide a customer managed key, Lambda uses a default service key.

" + "smithy.api#documentation": "

The ARN of the Key Management Service (KMS) customer managed key that's used to encrypt the following resources:

  • The function's environment variables.

  • The function's Lambda SnapStart snapshots.

  • When used with SourceKMSKeyArn, the unzipped version of the .zip deployment package that's used for function invocations. For more information, see Specifying a customer managed key for Lambda.

  • The optimized version of the container image that's used for function invocations. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). For more information, see Function lifecycle.

If you don't provide a customer managed key, Lambda uses an Amazon Web Services owned key or an Amazon Web Services managed key.

" } }, "TracingConfig": { "target": "com.amazonaws.lambda#TracingConfig", "traits": { - "smithy.api#documentation": "

Set Mode to Active to sample and trace a subset of incoming requests with\nX-Ray.

" + "smithy.api#documentation": "

Set Mode to Active to sample and trace a subset of incoming requests with X-Ray.

" } }, "Tags": { "target": "com.amazonaws.lambda#Tags", "traits": { - "smithy.api#documentation": "

A list of tags to apply to the\n function.

" + "smithy.api#documentation": "

A list of tags to apply to the function.

" } }, "Layers": { "target": "com.amazonaws.lambda#LayerList", "traits": { - "smithy.api#documentation": "

A list of function layers\n to add to the function's execution environment. Specify each layer by its ARN, including the version.

" + "smithy.api#documentation": "

A list of function layers to add to the function's execution environment. Specify each layer by its ARN, including the version.

" } }, "FileSystemConfigs": { @@ -2834,25 +3019,25 @@ "ImageConfig": { "target": "com.amazonaws.lambda#ImageConfig", "traits": { - "smithy.api#documentation": "

Container image configuration\n values that override the values in the container image Dockerfile.

" + "smithy.api#documentation": "

Container image configuration values that override the values in the container image Dockerfile.

" } }, "CodeSigningConfigArn": { "target": "com.amazonaws.lambda#CodeSigningConfigArn", "traits": { - "smithy.api#documentation": "

To enable code signing for this function, specify the ARN of a code-signing configuration. A code-signing configuration\nincludes a set of signing profiles, which define the trusted publishers for this function.

" + "smithy.api#documentation": "

To enable code signing for this function, specify the ARN of a code-signing configuration. A code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function.

" } }, "Architectures": { "target": "com.amazonaws.lambda#ArchitecturesList", "traits": { - "smithy.api#documentation": "

The instruction set architecture that the function supports. Enter a string array with one of the valid values (arm64 or x86_64).\n The default value is x86_64.

" + "smithy.api#documentation": "

The instruction set architecture that the function supports. Enter a string array with one of the valid values (arm64 or x86_64). The default value is x86_64.

" } }, "EphemeralStorage": { "target": "com.amazonaws.lambda#EphemeralStorage", "traits": { - "smithy.api#documentation": "

The size of the function's /tmp directory in MB. The default value is 512, but can be any whole\n number between 512 and 10,240 MB. For more information, see Configuring ephemeral storage (console).

" + "smithy.api#documentation": "

The size of the function's /tmp directory in MB. The default value is 512, but can be any whole number between 512 and 10,240 MB. For more information, see Configuring ephemeral storage (console).

" } }, "SnapStart": { @@ -2898,7 +3083,20 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a Lambda function URL with the specified configuration parameters. A function URL is\n a dedicated HTTP(S) endpoint that you can use to invoke your function.

", + "aws.iam#conditionKeys": [ + "lambda:FunctionArn", + "lambda:FunctionUrlAuthType" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to create a function url configuration for a Lambda function", + "relativeDocumentation": "API_CreateFunctionUrlConfig.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Creates a Lambda function URL with the specified configuration parameters. A function URL is a dedicated HTTP(S) endpoint that you can use to invoke your function.

", "smithy.api#http": { "method": "POST", "uri": "/2021-10-31/functions/{FunctionName}/url", @@ -2912,7 +3110,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -2927,20 +3125,20 @@ "AuthType": { "target": "com.amazonaws.lambda#FunctionUrlAuthType", "traits": { - "smithy.api#documentation": "

The type of authentication that your function URL uses. Set to AWS_IAM if you want to restrict access to authenticated\n users only. Set to NONE if you want to bypass IAM authentication to create a public endpoint. For more information,\n see Security and auth model for Lambda function URLs.

", + "smithy.api#documentation": "

The type of authentication that your function URL uses. Set to AWS_IAM if you want to restrict access to authenticated users only. Set to NONE if you want to bypass IAM authentication to create a public endpoint. For more information, see Security and auth model for Lambda function URLs.

", "smithy.api#required": {} } }, "Cors": { "target": "com.amazonaws.lambda#Cors", "traits": { - "smithy.api#documentation": "

The cross-origin resource sharing (CORS) settings\n for your function URL.

" + "smithy.api#documentation": "

The cross-origin resource sharing (CORS) settings for your function URL.

" } }, "InvokeMode": { "target": "com.amazonaws.lambda#InvokeMode", "traits": { - "smithy.api#documentation": "

Use one of the following options:

\n
    \n
  • \n

    \n BUFFERED – This is the default option. Lambda invokes your function using the Invoke API operation. Invocation results \n are available when the payload is complete. The maximum payload size is 6 MB.

    \n
  • \n
  • \n

    \n RESPONSE_STREAM – Your function streams payload results as they become available. Lambda invokes your function using \n the InvokeWithResponseStream API operation. The maximum response payload size is 20 MB, however, you can request a quota increase.

    \n
  • \n
" + "smithy.api#documentation": "

Use one of the following options:

  • BUFFERED – This is the default option. Lambda invokes your function using the Invoke API operation. Invocation results are available when the payload is complete. The maximum payload size is 6 MB.

  • RESPONSE_STREAM – Your function streams payload results as they become available. Lambda invokes your function using the InvokeWithResponseStream API operation. The maximum response payload size is 200 MB.

" } } }, @@ -2968,14 +3166,14 @@ "AuthType": { "target": "com.amazonaws.lambda#FunctionUrlAuthType", "traits": { - "smithy.api#documentation": "

The type of authentication that your function URL uses. Set to AWS_IAM if you want to restrict access to authenticated\n users only. Set to NONE if you want to bypass IAM authentication to create a public endpoint. For more information,\n see Security and auth model for Lambda function URLs.

", + "smithy.api#documentation": "

The type of authentication that your function URL uses. Set to AWS_IAM if you want to restrict access to authenticated users only. Set to NONE if you want to bypass IAM authentication to create a public endpoint. For more information, see Security and auth model for Lambda function URLs.

", "smithy.api#required": {} } }, "Cors": { "target": "com.amazonaws.lambda#Cors", "traits": { - "smithy.api#documentation": "

The cross-origin resource sharing (CORS) settings\n for your function URL.

" + "smithy.api#documentation": "

The cross-origin resource sharing (CORS) settings for your function URL.

" } }, "CreationTime": { @@ -2988,7 +3186,7 @@ "InvokeMode": { "target": "com.amazonaws.lambda#InvokeMode", "traits": { - "smithy.api#documentation": "

Use one of the following options:

\n
    \n
  • \n

    \n BUFFERED – This is the default option. Lambda invokes your function using the Invoke API operation. Invocation results \n are available when the payload is complete. The maximum payload size is 6 MB.

    \n
  • \n
  • \n

    \n RESPONSE_STREAM – Your function streams payload results as they become available. Lambda invokes your function using \n the InvokeWithResponseStream API operation. The maximum response payload size is 20 MB, however, you can request a quota increase.

    \n
  • \n
" + "smithy.api#documentation": "

Use one of the following options:

  • BUFFERED – This is the default option. Lambda invokes your function using the Invoke API operation. Invocation results are available when the payload is complete. The maximum payload size is 6 MB.

  • RESPONSE_STREAM – Your function streams payload results as they become available. Lambda invokes your function using the InvokeWithResponseStream API operation. The maximum response payload size is 200 MB.

" } } }, @@ -3020,7 +3218,7 @@ } }, "traits": { - "smithy.api#documentation": "

The dead-letter queue for\n failed asynchronous invocations.

" + "smithy.api#documentation": "

The dead-letter queue for failed asynchronous invocations.

" } }, "com.amazonaws.lambda#DeleteAlias": { @@ -3046,12 +3244,32 @@ } ], "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to delete an AWS Lambda function alias", + "relativeDocumentation": "API_DeleteAlias.html", + "resources": { + "required": { + "function": {} + } + } + }, "smithy.api#documentation": "

Deletes a Lambda function alias.

", + "smithy.api#examples": [ + { + "title": "To delete a Lambda function alias", + "documentation": "The following example deletes an alias named BLUE from a function named my-function", + "input": { + "FunctionName": "my-function", + "Name": "BLUE" + } + } + ], "smithy.api#http": { "method": "DELETE", "uri": "/2015-03-31/functions/{FunctionName}/aliases/{Name}", "code": 204 - } + }, + "smithy.api#idempotent": {} } }, "com.amazonaws.lambda#DeleteAliasRequest": { @@ -3060,7 +3278,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function name - MyFunction.

    \n
  • \n
  • \n

    \n Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

    \n
  • \n
  • \n

    \n Partial ARN - 123456789012:function:MyFunction.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function name - MyFunction.

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

  • Partial ARN - 123456789012:function:MyFunction.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -3070,7 +3288,8 @@ "traits": { "smithy.api#documentation": "

The name of the alias.

", "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.api#resourceIdentifier": "Alias" } } }, @@ -3101,12 +3320,22 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the code signing configuration. You can delete the code signing configuration only if no function is\n using it.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to delete an AWS Lambda code signing config", + "relativeDocumentation": "API_DeleteCodeSigningConfig.html", + "resources": { + "required": { + "code signing config": {} + } + } + }, + "smithy.api#documentation": "

Deletes the code signing configuration. You can delete the code signing configuration only if no function is using it.

", "smithy.api#http": { "method": "DELETE", "uri": "/2020-04-22/code-signing-configs/{CodeSigningConfigArn}", "code": 204 - } + }, + "smithy.api#idempotent": {} } }, "com.amazonaws.lambda#DeleteCodeSigningConfigRequest": { @@ -3161,12 +3390,43 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes an event source\n mapping. You can get the identifier of a mapping from the output of ListEventSourceMappings.

\n

When you delete an event source mapping, it enters a Deleting state and might not be completely\n deleted for several seconds.

", + "aws.iam#conditionKeys": [ + "lambda:FunctionArn" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to delete an AWS Lambda event source mapping", + "relativeDocumentation": "API_DeleteEventSourceMapping.html", + "resources": { + "required": { + "eventSourceMapping": {} + } + } + }, + "smithy.api#documentation": "

Deletes an event source mapping. You can get the identifier of a mapping from the output of ListEventSourceMappings.

When you delete an event source mapping, it enters a Deleting state and might not be completely deleted for several seconds.

", + "smithy.api#examples": [ + { + "title": "To delete a Lambda function event source mapping", + "documentation": "The following example deletes an event source mapping. To get a mapping's UUID, use ListEventSourceMappings.", + "input": { + "UUID": "14e0db71-xmpl-4eb5-b481-8945cf9d10c2" + }, + "output": { + "UUID": "14e0db71-xmpl-4eb5-b481-8945cf9d10c2", + "BatchSize": 5, + "EventSourceArn": "arn:aws:sqs:us-west-2:123456789012:my-queue", + "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function", + "LastModified": "2016-11-21T19:49:20.006Z", + "State": "Enabled", + "StateTransitionReason": "USER_INITIATED" + } + } + ], "smithy.api#http": { "method": "DELETE", "uri": "/2015-03-31/event-source-mappings/{UUID}", "code": 202 - } + }, + "smithy.api#idempotent": {} } }, "com.amazonaws.lambda#DeleteEventSourceMappingRequest": { @@ -3211,12 +3471,32 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes a Lambda function. To delete a specific function version, use the Qualifier parameter.\n Otherwise, all versions and aliases are deleted. This doesn't require the user to have explicit\n permissions for DeleteAlias.

\n

To delete Lambda event source mappings that invoke a function, use DeleteEventSourceMapping. For Amazon Web Services and resources that invoke your function\n directly, delete the trigger in the service where you originally configured it.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to delete an AWS Lambda function", + "relativeDocumentation": "API_DeleteFunction.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Deletes a Lambda function. To delete a specific function version, use the Qualifier parameter. Otherwise, all versions and aliases are deleted. This doesn't require the user to have explicit permissions for DeleteAlias.

To delete Lambda event source mappings that invoke a function, use DeleteEventSourceMapping. For Amazon Web Services services and resources that invoke your function directly, delete the trigger in the service where you originally configured it.

", + "smithy.api#examples": [ + { + "title": "To delete a version of a Lambda function", + "documentation": "The following example deletes version 1 of a Lambda function named my-function.", + "input": { + "FunctionName": "my-function", + "Qualifier": "1" + } + } + ], "smithy.api#http": { "method": "DELETE", "uri": "/2015-03-31/functions/{FunctionName}", "code": 204 - } + }, + "smithy.api#idempotent": {} } }, "com.amazonaws.lambda#DeleteFunctionCodeSigningConfig": { @@ -3248,6 +3528,15 @@ } ], "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to detach a code signing config from an AWS Lambda function", + "relativeDocumentation": "API_DeleteFunctionCodeSigningConfig.html", + "resources": { + "required": { + "function": {} + } + } + }, "smithy.api#documentation": "

Removes the code signing configuration from the function.

", "smithy.api#http": { "method": "DELETE", @@ -3262,7 +3551,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function name - MyFunction.

    \n
  • \n
  • \n

    \n Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

    \n
  • \n
  • \n

    \n Partial ARN - 123456789012:function:MyFunction.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function name - MyFunction.

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

  • Partial ARN - 123456789012:function:MyFunction.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -3298,7 +3587,25 @@ } ], "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to remove a concurrent execution limit from an AWS Lambda function", + "relativeDocumentation": "API_DeleteFunctionConcurrency.html", + "resources": { + "required": { + "function": {} + } + } + }, "smithy.api#documentation": "

Removes a concurrent execution limit from a function.

", + "smithy.api#examples": [ + { + "title": "To remove the reserved concurrent execution limit from a function", + "documentation": "The following example deletes the reserved concurrent execution limit from a function named my-function.", + "input": { + "FunctionName": "my-function" + } + } + ], "smithy.api#http": { "method": "DELETE", "uri": "/2017-10-31/functions/{FunctionName}/concurrency", @@ -3312,7 +3619,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -3348,7 +3655,26 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes the configuration for asynchronous invocation for a function, version, or alias.

\n

To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to delete the configuration for asynchronous invocation for an AWS Lambda function, version, or alias", + "relativeDocumentation": "API_DeleteFunctionEventInvokeConfig.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Deletes the configuration for asynchronous invocation for a function, version, or alias.

To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig.

", + "smithy.api#examples": [ + { + "title": "To delete an asynchronous invocation configuration", + "documentation": "The following example deletes the asynchronous invocation configuration for the GREEN alias of a function named my-function.", + "input": { + "FunctionName": "my-function", + "Qualifier": "GREEN" + } + } + ], "smithy.api#http": { "method": "DELETE", "uri": "/2019-09-25/functions/{FunctionName}/event-invoke-config", @@ -3362,7 +3688,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function name - my-function (name-only), my-function:v1 (with alias).

    \n
  • \n
  • \n

    \n Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN - 123456789012:function:my-function.

    \n
  • \n
\n

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN.\n If you specify only the function name, it is limited to 64 characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

Name formats

  • Function name - my-function (name-only), my-function:v1 (with alias).

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN - 123456789012:function:my-function.

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -3385,7 +3711,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function or version.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function (name-only), my-function:1 (with version).

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN.\n If you specify only the function name, it is limited to 64 characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function or version.

Name formats

  • Function namemy-function (name-only), my-function:1 (with version).

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -3425,7 +3751,20 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes a Lambda function URL. When you delete a function URL, you\n can't recover it. Creating a new function URL results in a different URL address.

", + "aws.iam#conditionKeys": [ + "lambda:FunctionArn", + "lambda:FunctionUrlAuthType" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to delete function url configuration for a Lambda function", + "relativeDocumentation": "API_DeleteFunctionUrlConfig.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Deletes a Lambda function URL. When you delete a function URL, you can't recover it. Creating a new function URL results in a different URL address.

", "smithy.api#http": { "method": "DELETE", "uri": "/2021-10-31/functions/{FunctionName}/url", @@ -3439,7 +3778,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -3473,12 +3812,32 @@ } ], "traits": { - "smithy.api#documentation": "

Deletes a version of an Lambda\n layer. Deleted versions can no longer be viewed or added to functions. To avoid\n breaking functions, a copy of the version remains in Lambda until no functions refer to it.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to delete a version of an AWS Lambda layer", + "relativeDocumentation": "API_DeleteLayerVersion.html", + "resources": { + "required": { + "layerVersion": {} + } + } + }, + "smithy.api#documentation": "

Deletes a version of an Lambda layer. Deleted versions can no longer be viewed or added to functions. To avoid breaking functions, a copy of the version remains in Lambda until no functions refer to it.

", + "smithy.api#examples": [ + { + "title": "To delete a version of a Lambda layer", + "documentation": "The following example deletes version 2 of a layer named my-layer.", + "input": { + "LayerName": "my-layer", + "VersionNumber": 2 + } + } + ], "smithy.api#http": { "method": "DELETE", "uri": "/2018-10-31/layers/{LayerName}/versions/{VersionNumber}", "code": 204 - } + }, + "smithy.api#idempotent": {} } }, "com.amazonaws.lambda#DeleteLayerVersionRequest": { @@ -3532,12 +3891,33 @@ } ], "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to delete the provisioned concurrency configuration for an AWS Lambda function", + "relativeDocumentation": "API_DeleteProvisionedConcurrencyConfig.html", + "resources": { + "optional": { + "function version": {}, + "function alias": {} + } + } + }, "smithy.api#documentation": "

Deletes the provisioned concurrency configuration for a function.

", + "smithy.api#examples": [ + { + "title": "To delete a provisioned concurrency configuration", + "documentation": "The following example deletes the provisioned concurrency configuration for the GREEN alias of a function named my-function.", + "input": { + "FunctionName": "my-function", + "Qualifier": "GREEN" + } + } + ], "smithy.api#http": { "method": "DELETE", "uri": "/2019-09-30/functions/{FunctionName}/provisioned-concurrency", "code": 204 - } + }, + "smithy.api#idempotent": {} } }, "com.amazonaws.lambda#DeleteProvisionedConcurrencyConfigRequest": { @@ -3546,7 +3926,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -3589,7 +3969,7 @@ "OnSuccess": { "target": "com.amazonaws.lambda#OnSuccess", "traits": { - "smithy.api#documentation": "

The destination configuration for successful invocations.

" + "smithy.api#documentation": "

The destination configuration for successful invocations. Not supported in CreateEventSourceMapping or UpdateEventSourceMapping.

" } }, "OnFailure": { @@ -3600,7 +3980,7 @@ } }, "traits": { - "smithy.api#documentation": "

A configuration object that specifies the destination of an event after Lambda processes it.

" + "smithy.api#documentation": "

A configuration object that specifies the destination of an event after Lambda processes it. For more information, see Adding a destination.

" } }, "com.amazonaws.lambda#DocumentDBEventSourceConfig": { @@ -3609,24 +3989,24 @@ "DatabaseName": { "target": "com.amazonaws.lambda#DatabaseName", "traits": { - "smithy.api#documentation": "

\n The name of the database to consume within the DocumentDB cluster.\n

" + "smithy.api#documentation": "

The name of the database to consume within the DocumentDB cluster.

" } }, "CollectionName": { "target": "com.amazonaws.lambda#CollectionName", "traits": { - "smithy.api#documentation": "

\n The name of the collection to consume within the database. If you do not specify a collection, Lambda consumes all collections.\n

" + "smithy.api#documentation": "

The name of the collection to consume within the database. If you do not specify a collection, Lambda consumes all collections.

" } }, "FullDocument": { "target": "com.amazonaws.lambda#FullDocument", "traits": { - "smithy.api#documentation": "

\n Determines what DocumentDB sends to your event stream during document update operations. If set to UpdateLookup, DocumentDB sends a delta describing the changes, along with a copy of the entire document. Otherwise, DocumentDB sends only a partial document that contains the changes.\n

" + "smithy.api#documentation": "

Determines what DocumentDB sends to your event stream during document update operations. If set to UpdateLookup, DocumentDB sends a delta describing the changes, along with a copy of the entire document. Otherwise, DocumentDB sends only a partial document that contains the changes.

" } } }, "traits": { - "smithy.api#documentation": "

\n Specific configuration settings for a DocumentDB event source.\n

" + "smithy.api#documentation": "

Specific configuration settings for a DocumentDB event source.

" } }, "com.amazonaws.lambda#EC2AccessDeniedException": { @@ -3656,7 +4036,7 @@ } }, "traits": { - "smithy.api#documentation": "

Amazon EC2 throttled Lambda during Lambda function initialization using\n the execution role provided for the function.

", + "smithy.api#documentation": "

Amazon EC2 throttled Lambda during Lambda function initialization using the execution role provided for the function.

", "smithy.api#error": "server", "smithy.api#httpError": 502 } @@ -3675,7 +4055,7 @@ } }, "traits": { - "smithy.api#documentation": "

Lambda received an unexpected Amazon EC2 client exception while setting up for the\n Lambda function.

", + "smithy.api#documentation": "

Lambda received an unexpected Amazon EC2 client exception while setting up for the Lambda function.

", "smithy.api#error": "server", "smithy.api#httpError": 502 } @@ -3723,7 +4103,7 @@ } }, "traits": { - "smithy.api#documentation": "

The Lambda function couldn't mount the configured file system due to a permission or configuration\n issue.

", + "smithy.api#documentation": "

The Lambda function couldn't mount the configured file system due to a permission or configuration issue.

", "smithy.api#error": "client", "smithy.api#httpError": 403 } @@ -3739,7 +4119,7 @@ } }, "traits": { - "smithy.api#documentation": "

The Lambda function made a network connection to the configured file system, but the mount\n operation timed out.

", + "smithy.api#documentation": "

The Lambda function made a network connection to the configured file system, but the mount operation timed out.

", "smithy.api#error": "client", "smithy.api#httpError": 408 } @@ -3755,7 +4135,7 @@ } }, "traits": { - "smithy.api#documentation": "

Lambda couldn't create an elastic network interface in the VPC, specified as part of Lambda function configuration, because the limit for network interfaces has been reached. For more\n information, see Lambda\n quotas.

", + "smithy.api#documentation": "

Lambda couldn't create an elastic network interface in the VPC, specified as part of Lambda function configuration, because the limit for network interfaces has been reached. For more information, see Lambda quotas.

", "smithy.api#error": "server", "smithy.api#httpError": 502 } @@ -3822,7 +4202,7 @@ } }, "traits": { - "smithy.api#documentation": "

A function's environment variable settings. You can use environment variables to adjust your function's\n behavior without updating code. An environment variable is a pair of strings that are stored in a function's\n version-specific configuration.

" + "smithy.api#documentation": "

A function's environment variable settings. You can use environment variables to adjust your function's behavior without updating code. An environment variable is a pair of strings that are stored in a function's version-specific configuration.

" } }, "com.amazonaws.lambda#EnvironmentError": { @@ -3862,7 +4242,7 @@ } }, "traits": { - "smithy.api#documentation": "

The results of an operation to update or read environment variables. If the operation succeeds, the response\n contains the environment variables. If it fails, the response contains details about the error.

" + "smithy.api#documentation": "

The results of an operation to update or read environment variables. If the operation succeeds, the response contains the environment variables. If it fails, the response contains details about the error.

" } }, "com.amazonaws.lambda#EnvironmentVariableName": { @@ -3902,7 +4282,7 @@ } }, "traits": { - "smithy.api#documentation": "

The size of the function's /tmp directory in MB. The default value is 512, but can be any whole\n number between 512 and 10,240 MB. For more information, see Configuring ephemeral storage (console).

" + "smithy.api#documentation": "

The size of the function's /tmp directory in MB. The default value is 512, but can be any whole number between 512 and 10,240 MB. For more information, see Configuring ephemeral storage (console).

" } }, "com.amazonaws.lambda#EphemeralStorageSize": { @@ -3914,6 +4294,56 @@ } } }, + "com.amazonaws.lambda#EventSourceMapping": { + "type": "resource", + "identifiers": { + "UUID": { + "target": "com.amazonaws.lambda#String" + } + }, + "create": { + "target": "com.amazonaws.lambda#CreateEventSourceMapping" + }, + "read": { + "target": "com.amazonaws.lambda#GetEventSourceMapping" + }, + "update": { + "target": "com.amazonaws.lambda#UpdateEventSourceMapping" + }, + "delete": { + "target": "com.amazonaws.lambda#DeleteEventSourceMapping" + }, + "list": { + "target": "com.amazonaws.lambda#ListEventSourceMappings" + }, + "traits": { + "aws.api#arn": { + "template": "event-source-mapping:{UUID}" + }, + "aws.iam#conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ], + "aws.iam#iamResource": { + "disableConditionKeyInheritance": true, + "name": "eventSourceMapping", + "relativeDocumentation": "lambda-api-permissions-ref.html" + }, + "smithy.api#documentation": "Represents an AWS Lambda event source mapping", + "smithy.api#suppress": [ + "IamResourceTrait" + ] + } + }, + "com.amazonaws.lambda#EventSourceMappingArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 85, + "max": 120 + }, + "smithy.api#pattern": "^arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}((-gov)|(-iso([a-z]?)))?-[a-z]+-\\d{1}:\\d{12}:event-source-mapping:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$" + } + }, "com.amazonaws.lambda#EventSourceMappingConfiguration": { "type": "structure", "members": { @@ -3926,25 +4356,25 @@ "StartingPosition": { "target": "com.amazonaws.lambda#EventSourcePosition", "traits": { - "smithy.api#documentation": "

The position in a stream from which to start reading. Required for Amazon Kinesis and\n Amazon DynamoDB Stream event sources. AT_TIMESTAMP is supported only for\n Amazon Kinesis streams, Amazon DocumentDB, Amazon MSK, and self-managed Apache Kafka.

" + "smithy.api#documentation": "

The position in a stream from which to start reading. Required for Amazon Kinesis and Amazon DynamoDB Stream event sources. AT_TIMESTAMP is supported only for Amazon Kinesis streams, Amazon DocumentDB, Amazon MSK, and self-managed Apache Kafka.

" } }, "StartingPositionTimestamp": { "target": "com.amazonaws.lambda#Date", "traits": { - "smithy.api#documentation": "

With StartingPosition set to AT_TIMESTAMP, the time from which to start\n reading. StartingPositionTimestamp cannot be in the future.

" + "smithy.api#documentation": "

With StartingPosition set to AT_TIMESTAMP, the time from which to start reading. StartingPositionTimestamp cannot be in the future.

" } }, "BatchSize": { "target": "com.amazonaws.lambda#BatchSize", "traits": { - "smithy.api#documentation": "

The maximum number of records in each batch that Lambda pulls from your stream or queue and sends to your function. Lambda passes all of the records in the batch to the function in a single call, up to the payload limit for synchronous invocation (6 MB).

\n

Default value: Varies by service. For Amazon SQS, the default is 10. For all other services, the default is 100.

\n

Related setting: When you set BatchSize to a value greater than 10, you must set MaximumBatchingWindowInSeconds to at least 1.

" + "smithy.api#documentation": "

The maximum number of records in each batch that Lambda pulls from your stream or queue and sends to your function. Lambda passes all of the records in the batch to the function in a single call, up to the payload limit for synchronous invocation (6 MB).

Default value: Varies by service. For Amazon SQS, the default is 10. For all other services, the default is 100.

Related setting: When you set BatchSize to a value greater than 10, you must set MaximumBatchingWindowInSeconds to at least 1.

" } }, "MaximumBatchingWindowInSeconds": { "target": "com.amazonaws.lambda#MaximumBatchingWindowInSeconds", "traits": { - "smithy.api#documentation": "

The maximum amount of time, in seconds, that Lambda spends gathering records before invoking the function.\n You can configure MaximumBatchingWindowInSeconds to any value from 0 seconds to 300 seconds in increments of seconds.

\n

For streams and Amazon SQS event sources, the default batching window is 0 seconds. For Amazon MSK, Self-managed Apache Kafka, Amazon MQ, and DocumentDB event sources, the default\n batching window is 500 ms. Note that because you can only change MaximumBatchingWindowInSeconds in increments of seconds, you cannot revert back to the 500 ms default batching window after you have changed it.\n To restore the default batching window, you must create a new event source mapping.

\n

Related setting: For streams and Amazon SQS event sources, when you set BatchSize to a value greater than 10, you must set MaximumBatchingWindowInSeconds to at least 1.

" + "smithy.api#documentation": "

The maximum amount of time, in seconds, that Lambda spends gathering records before invoking the function. You can configure MaximumBatchingWindowInSeconds to any value from 0 seconds to 300 seconds in increments of seconds.

For streams and Amazon SQS event sources, the default batching window is 0 seconds. For Amazon MSK, Self-managed Apache Kafka, Amazon MQ, and DocumentDB event sources, the default batching window is 500 ms. Note that because you can only change MaximumBatchingWindowInSeconds in increments of seconds, you cannot revert back to the 500 ms default batching window after you have changed it. To restore the default batching window, you must create a new event source mapping.

Related setting: For streams and Amazon SQS event sources, when you set BatchSize to a value greater than 10, you must set MaximumBatchingWindowInSeconds to at least 1.

" } }, "ParallelizationFactor": { @@ -3962,7 +4392,7 @@ "FilterCriteria": { "target": "com.amazonaws.lambda#FilterCriteria", "traits": { - "smithy.api#documentation": "

An object that defines the filter criteria that\n determine whether Lambda should process an event. For more information, see Lambda event filtering.

" + "smithy.api#documentation": "

An object that defines the filter criteria that determine whether Lambda should process an event. For more information, see Lambda event filtering.

If filter criteria is encrypted, this field shows up as null in the response of ListEventSourceMapping API calls. You can view this field in plaintext in the response of GetEventSourceMapping and DeleteEventSourceMapping calls if you have kms:Decrypt permissions for the correct KMS key.

" } }, "FunctionArn": { @@ -3980,13 +4410,13 @@ "LastProcessingResult": { "target": "com.amazonaws.lambda#String", "traits": { - "smithy.api#documentation": "

The result of the last Lambda invocation of your function.

" + "smithy.api#documentation": "

The result of the event source mapping's last processing attempt.

" } }, "State": { "target": "com.amazonaws.lambda#String", "traits": { - "smithy.api#documentation": "

The state of the event source mapping. It can be one of the following: Creating,\n Enabling, Enabled, Disabling, Disabled,\n Updating, or Deleting.

" + "smithy.api#documentation": "

The state of the event source mapping. It can be one of the following: Creating, Enabling, Enabled, Disabling, Disabled, Updating, or Deleting.

" } }, "StateTransitionReason": { @@ -4028,7 +4458,7 @@ "MaximumRecordAgeInSeconds": { "target": "com.amazonaws.lambda#MaximumRecordAgeInSeconds", "traits": { - "smithy.api#documentation": "

(Kinesis and DynamoDB Streams only) Discard records older than the specified age. The default value is -1,\nwhich sets the maximum age to infinite. When the value is set to infinite, Lambda never discards old records.

\n \n

The minimum valid value for maximum record age is 60s. Although values less than 60 and greater than -1 fall within the parameter's absolute range, they are not allowed

\n
" + "smithy.api#documentation": "

(Kinesis and DynamoDB Streams only) Discard records older than the specified age. The default value is -1, which sets the maximum age to infinite. When the value is set to infinite, Lambda never discards old records.

The minimum valid value for maximum record age is 60s. Although values less than 60 and greater than -1 fall within the parameter's absolute range, they are not allowed

" } }, "BisectBatchOnFunctionError": { @@ -4040,7 +4470,7 @@ "MaximumRetryAttempts": { "target": "com.amazonaws.lambda#MaximumRetryAttemptsEventSourceMapping", "traits": { - "smithy.api#documentation": "

(Kinesis and DynamoDB Streams only) Discard records after the specified number of retries. The default value is -1,\nwhich sets the maximum number of retries to infinite. When MaximumRetryAttempts is infinite, Lambda retries failed records until the record expires in the event source.

" + "smithy.api#documentation": "

(Kinesis and DynamoDB Streams only) Discard records after the specified number of retries. The default value is -1, which sets the maximum number of retries to infinite. When MaximumRetryAttempts is infinite, Lambda retries failed records until the record expires in the event source.

" } }, "TumblingWindowInSeconds": { @@ -4078,12 +4508,79 @@ "traits": { "smithy.api#documentation": "

Specific configuration settings for a DocumentDB event source.

" } + }, + "KMSKeyArn": { + "target": "com.amazonaws.lambda#KMSKeyArn", + "traits": { + "smithy.api#documentation": "

The ARN of the Key Management Service (KMS) customer managed key that Lambda uses to encrypt your function's filter criteria.

" + } + }, + "FilterCriteriaError": { + "target": "com.amazonaws.lambda#FilterCriteriaError", + "traits": { + "smithy.api#documentation": "

An object that contains details about an error related to filter criteria encryption.

" + } + }, + "EventSourceMappingArn": { + "target": "com.amazonaws.lambda#EventSourceMappingArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the event source mapping.

" + } + }, + "MetricsConfig": { + "target": "com.amazonaws.lambda#EventSourceMappingMetricsConfig", + "traits": { + "smithy.api#documentation": "

The metrics configuration for your event source. For more information, see Event source mapping metrics.

" + } + }, + "ProvisionedPollerConfig": { + "target": "com.amazonaws.lambda#ProvisionedPollerConfig", + "traits": { + "smithy.api#documentation": "

(Amazon MSK and self-managed Apache Kafka only) The provisioned mode configuration for the event source. For more information, see provisioned mode.

" + } } }, "traits": { "smithy.api#documentation": "

A mapping between an Amazon Web Services resource and a Lambda function. For details, see CreateEventSourceMapping.

" } }, + "com.amazonaws.lambda#EventSourceMappingMetric": { + "type": "enum", + "members": { + "EventCount": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EventCount" + } + } + } + }, + "com.amazonaws.lambda#EventSourceMappingMetricList": { + "type": "list", + "member": { + "target": "com.amazonaws.lambda#EventSourceMappingMetric" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1 + } + } + }, + "com.amazonaws.lambda#EventSourceMappingMetricsConfig": { + "type": "structure", + "members": { + "Metrics": { + "target": "com.amazonaws.lambda#EventSourceMappingMetricList", + "traits": { + "smithy.api#documentation": "

The metrics you want your event source mapping to produce. Include EventCount to receive event source mapping metrics related to the number of events processed by your event source mapping. For more information about these metrics, see Event source mapping metrics.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The metrics configuration for your event source. Use this configuration object to define which metrics you want your event source mapping to produce.

" + } + }, "com.amazonaws.lambda#EventSourceMappingsList": { "type": "list", "member": { @@ -4139,7 +4636,7 @@ "Arn": { "target": "com.amazonaws.lambda#FileSystemArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon EFS access point that provides access to the file\n system.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon EFS access point that provides access to the file system.

", "smithy.api#required": {} } }, @@ -4173,12 +4670,12 @@ "Pattern": { "target": "com.amazonaws.lambda#Pattern", "traits": { - "smithy.api#documentation": "

\n A filter pattern. For more information on the syntax of a filter pattern, see\n \n Filter rule syntax.\n

" + "smithy.api#documentation": "

A filter pattern. For more information on the syntax of a filter pattern, see Filter rule syntax.

" } } }, "traits": { - "smithy.api#documentation": "

\n A structure within a FilterCriteria object that defines an event filtering pattern.\n

" + "smithy.api#documentation": "

A structure within a FilterCriteria object that defines an event filtering pattern.

" } }, "com.amazonaws.lambda#FilterCriteria": { @@ -4187,12 +4684,52 @@ "Filters": { "target": "com.amazonaws.lambda#FilterList", "traits": { - "smithy.api#documentation": "

\n A list of filters.\n

" + "smithy.api#documentation": "

A list of filters.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An object that contains the filters for an event source.

" + } + }, + "com.amazonaws.lambda#FilterCriteriaError": { + "type": "structure", + "members": { + "ErrorCode": { + "target": "com.amazonaws.lambda#FilterCriteriaErrorCode", + "traits": { + "smithy.api#documentation": "

The KMS exception that resulted from filter criteria encryption or decryption.

" + } + }, + "Message": { + "target": "com.amazonaws.lambda#FilterCriteriaErrorMessage", + "traits": { + "smithy.api#documentation": "

The error message.

" } } }, "traits": { - "smithy.api#documentation": "

\n An object that contains the filters for an event source.\n

" + "smithy.api#documentation": "

An object that contains details about an error related to filter criteria encryption.

" + } + }, + "com.amazonaws.lambda#FilterCriteriaErrorCode": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 10, + "max": 50 + }, + "smithy.api#pattern": "^[A-Za-z]+Exception$" + } + }, + "com.amazonaws.lambda#FilterCriteriaErrorMessage": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 10, + "max": 2048 + }, + "smithy.api#pattern": ".*" } }, "com.amazonaws.lambda#FilterList": { @@ -4218,54 +4755,232 @@ } } }, - "com.amazonaws.lambda#FunctionArn": { - "type": "string", - "traits": { - "smithy.api#pattern": "^arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}(-gov)?-[a-z]+-\\d{1}:\\d{12}:function:[a-zA-Z0-9-_]+(:(\\$LATEST|[a-zA-Z0-9-_]+))?$" - } - }, - "com.amazonaws.lambda#FunctionArnList": { - "type": "list", - "member": { - "target": "com.amazonaws.lambda#FunctionArn" - } - }, - "com.amazonaws.lambda#FunctionCode": { - "type": "structure", - "members": { - "ZipFile": { - "target": "com.amazonaws.lambda#Blob", - "traits": { - "smithy.api#documentation": "

The base64-encoded contents of the deployment package. Amazon Web Services SDK and CLI clients handle the encoding for\n you.

" - } + "com.amazonaws.lambda#Function": { + "type": "resource", + "identifiers": { + "FunctionName": { + "target": "com.amazonaws.lambda#FunctionName" + } + }, + "put": { + "target": "com.amazonaws.lambda#CreateFunction" + }, + "delete": { + "target": "com.amazonaws.lambda#DeleteFunction" + }, + "list": { + "target": "com.amazonaws.lambda#ListFunctions" + }, + "operations": [ + { + "target": "com.amazonaws.lambda#CreateFunctionUrlConfig" }, - "S3Bucket": { - "target": "com.amazonaws.lambda#S3Bucket", - "traits": { - "smithy.api#documentation": "

An Amazon S3 bucket in the same Amazon Web Services Region as your function. The bucket can be in a different Amazon Web Services account.

" - } + { + "target": "com.amazonaws.lambda#DeleteFunctionCodeSigningConfig" }, - "S3Key": { - "target": "com.amazonaws.lambda#S3Key", - "traits": { - "smithy.api#documentation": "

The Amazon S3 key of the deployment package.

" - } + { + "target": "com.amazonaws.lambda#DeleteFunctionConcurrency" }, - "S3ObjectVersion": { - "target": "com.amazonaws.lambda#S3ObjectVersion", - "traits": { - "smithy.api#documentation": "

For versioned objects, the version of the deployment package object to use.

" - } + { + "target": "com.amazonaws.lambda#DeleteFunctionEventInvokeConfig" }, - "ImageUri": { - "target": "com.amazonaws.lambda#String", - "traits": { - "smithy.api#documentation": "

URI of a container image in the\n Amazon ECR registry.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The code for the Lambda function. You can either specify an object in Amazon S3, upload a\n .zip file archive deployment package directly, or specify the URI of a container image.

" + { + "target": "com.amazonaws.lambda#DeleteFunctionUrlConfig" + }, + { + "target": "com.amazonaws.lambda#GetFunctionCodeSigningConfig" + }, + { + "target": "com.amazonaws.lambda#GetFunctionConcurrency" + }, + { + "target": "com.amazonaws.lambda#GetFunctionEventInvokeConfig" + }, + { + "target": "com.amazonaws.lambda#GetFunctionUrlConfig" + }, + { + "target": "com.amazonaws.lambda#ListFunctionEventInvokeConfigs" + }, + { + "target": "com.amazonaws.lambda#ListFunctionUrlConfigs" + }, + { + "target": "com.amazonaws.lambda#ListProvisionedConcurrencyConfigs" + }, + { + "target": "com.amazonaws.lambda#PutFunctionCodeSigningConfig" + }, + { + "target": "com.amazonaws.lambda#PutFunctionConcurrency" + }, + { + "target": "com.amazonaws.lambda#PutFunctionEventInvokeConfig" + }, + { + "target": "com.amazonaws.lambda#PutRuntimeManagementConfig" + }, + { + "target": "com.amazonaws.lambda#UpdateFunctionCode" + }, + { + "target": "com.amazonaws.lambda#UpdateFunctionConfiguration" + }, + { + "target": "com.amazonaws.lambda#UpdateFunctionEventInvokeConfig" + }, + { + "target": "com.amazonaws.lambda#UpdateFunctionUrlConfig" + } + ], + "collectionOperations": [ + { + "target": "com.amazonaws.lambda#GetFunction" + }, + { + "target": "com.amazonaws.lambda#GetFunctionConfiguration" + }, + { + "target": "com.amazonaws.lambda#GetFunctionRecursionConfig" + }, + { + "target": "com.amazonaws.lambda#GetPolicy" + }, + { + "target": "com.amazonaws.lambda#GetRuntimeManagementConfig" + }, + { + "target": "com.amazonaws.lambda#Invoke" + }, + { + "target": "com.amazonaws.lambda#InvokeAsync" + }, + { + "target": "com.amazonaws.lambda#InvokeWithResponseStream" + }, + { + "target": "com.amazonaws.lambda#PutFunctionRecursionConfig" + } + ], + "traits": { + "aws.api#arn": { + "template": "function:{FunctionName}" + }, + "aws.api#taggable": { + "property": "Tags", + "disableSystemTags": false + }, + "aws.iam#conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ], + "aws.iam#iamResource": { + "disableConditionKeyInheritance": true, + "name": "function", + "relativeDocumentation": "lambda-api-permissions-ref.html" + }, + "smithy.api#documentation": "Represents an AWS Lambda function", + "smithy.api#suppress": [ + "TaggableResource" + ] + } + }, + "com.amazonaws.lambda#FunctionAlias": { + "type": "resource", + "identifiers": { + "FunctionName": { + "target": "com.amazonaws.lambda#FunctionName" + }, + "Alias": { + "target": "com.amazonaws.lambda#Alias" + } + }, + "put": { + "target": "com.amazonaws.lambda#CreateAlias" + }, + "read": { + "target": "com.amazonaws.lambda#GetAlias" + }, + "update": { + "target": "com.amazonaws.lambda#UpdateAlias" + }, + "delete": { + "target": "com.amazonaws.lambda#DeleteAlias" + }, + "list": { + "target": "com.amazonaws.lambda#ListAliases" + }, + "traits": { + "aws.api#arn": { + "template": "function:{FunctionName}:{Alias}" + }, + "aws.iam#conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ], + "aws.iam#iamResource": { + "disableConditionKeyInheritance": true, + "name": "function alias", + "relativeDocumentation": "lambda-api-permissions-ref.html" + }, + "smithy.api#documentation": "A lambda function version or alias", + "smithy.api#suppress": [ + "IamResourceTrait" + ] + } + }, + "com.amazonaws.lambda#FunctionArn": { + "type": "string", + "traits": { + "smithy.api#pattern": "^arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}(-gov)?-[a-z]+-\\d{1}:\\d{12}:function:[a-zA-Z0-9-_]+(:(\\$LATEST|[a-zA-Z0-9-_]+))?$" + } + }, + "com.amazonaws.lambda#FunctionArnList": { + "type": "list", + "member": { + "target": "com.amazonaws.lambda#FunctionArn" + } + }, + "com.amazonaws.lambda#FunctionCode": { + "type": "structure", + "members": { + "ZipFile": { + "target": "com.amazonaws.lambda#Blob", + "traits": { + "smithy.api#documentation": "

The base64-encoded contents of the deployment package. Amazon Web Services SDK and CLI clients handle the encoding for you.

" + } + }, + "S3Bucket": { + "target": "com.amazonaws.lambda#S3Bucket", + "traits": { + "smithy.api#documentation": "

An Amazon S3 bucket in the same Amazon Web Services Region as your function. The bucket can be in a different Amazon Web Services account.

" + } + }, + "S3Key": { + "target": "com.amazonaws.lambda#S3Key", + "traits": { + "smithy.api#documentation": "

The Amazon S3 key of the deployment package.

" + } + }, + "S3ObjectVersion": { + "target": "com.amazonaws.lambda#S3ObjectVersion", + "traits": { + "smithy.api#documentation": "

For versioned objects, the version of the deployment package object to use.

" + } + }, + "ImageUri": { + "target": "com.amazonaws.lambda#String", + "traits": { + "smithy.api#documentation": "

URI of a container image in the Amazon ECR registry.

" + } + }, + "SourceKMSKeyArn": { + "target": "com.amazonaws.lambda#KMSKeyArn", + "traits": { + "smithy.api#documentation": "

The ARN of the Key Management Service (KMS) customer managed key that's used to encrypt your function's .zip deployment package. If you don't provide a customer managed key, Lambda uses an Amazon Web Services owned key.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The code for the Lambda function. You can either specify an object in Amazon S3, upload a .zip file archive deployment package directly, or specify the URI of a container image.

" } }, "com.amazonaws.lambda#FunctionCodeLocation": { @@ -4294,6 +5009,12 @@ "traits": { "smithy.api#documentation": "

The resolved URI for the image.

" } + }, + "SourceKMSKeyArn": { + "target": "com.amazonaws.lambda#String", + "traits": { + "smithy.api#documentation": "

The ARN of the Key Management Service (KMS) customer managed key that's used to encrypt your function's .zip deployment package. If you don't provide a customer managed key, Lambda uses an Amazon Web Services owned key.

" + } } }, "traits": { @@ -4318,7 +5039,7 @@ "Runtime": { "target": "com.amazonaws.lambda#Runtime", "traits": { - "smithy.api#documentation": "

The identifier of the function's runtime. Runtime is required if the deployment package is a .zip file archive.

\n

The following list includes deprecated runtimes. For more information, see Runtime deprecation policy.

" + "smithy.api#documentation": "

The identifier of the function's runtime. Runtime is required if the deployment package is a .zip file archive. Specifying a runtime results in an error if you're deploying a function using a container image.

The following list includes deprecated runtimes. Lambda blocks creating new functions and updating existing functions shortly after each runtime is deprecated. For more information, see Runtime use after deprecation.

For a list of all currently supported runtimes, see Supported runtimes.

" } }, "Role": { @@ -4397,7 +5118,7 @@ "KMSKeyArn": { "target": "com.amazonaws.lambda#KMSKeyArn", "traits": { - "smithy.api#documentation": "

The KMS key that's used to encrypt the function's environment variables. When Lambda SnapStart is activated, this key is also used to encrypt the function's snapshot. This key is\n returned only if you've configured a customer managed key.

" + "smithy.api#documentation": "

The ARN of the Key Management Service (KMS) customer managed key that's used to encrypt the following resources:

  • The function's environment variables.

  • The function's Lambda SnapStart snapshots.

  • When used with SourceKMSKeyArn, the unzipped version of the .zip deployment package that's used for function invocations. For more information, see Specifying a customer managed key for Lambda.

  • The optimized version of the container image that's used for function invocations. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). For more information, see Function lifecycle.

If you don't provide a customer managed key, Lambda uses an Amazon Web Services owned key or an Amazon Web Services managed key.

" } }, "TracingConfig": { @@ -4427,7 +5148,7 @@ "State": { "target": "com.amazonaws.lambda#State", "traits": { - "smithy.api#documentation": "

The current state of the function. When the state is Inactive, you can reactivate the function by\n invoking it.

" + "smithy.api#documentation": "

The current state of the function. When the state is Inactive, you can reactivate the function by invoking it.

" } }, "StateReason": { @@ -4439,13 +5160,13 @@ "StateReasonCode": { "target": "com.amazonaws.lambda#StateReasonCode", "traits": { - "smithy.api#documentation": "

The reason code for the function's current state. When the code is Creating, you can't invoke or\n modify the function.

" + "smithy.api#documentation": "

The reason code for the function's current state. When the code is Creating, you can't invoke or modify the function.

" } }, "LastUpdateStatus": { "target": "com.amazonaws.lambda#LastUpdateStatus", "traits": { - "smithy.api#documentation": "

The status of the last update that was performed on the function. This is first set to Successful\n after function creation completes.

" + "smithy.api#documentation": "

The status of the last update that was performed on the function. This is first set to Successful after function creation completes.

" } }, "LastUpdateStatusReason": { @@ -4493,19 +5214,19 @@ "Architectures": { "target": "com.amazonaws.lambda#ArchitecturesList", "traits": { - "smithy.api#documentation": "

The instruction set architecture that the function supports. Architecture is a string array with one of the \n valid values. The default architecture value is x86_64.

" + "smithy.api#documentation": "

The instruction set architecture that the function supports. Architecture is a string array with one of the valid values. The default architecture value is x86_64.

" } }, "EphemeralStorage": { "target": "com.amazonaws.lambda#EphemeralStorage", "traits": { - "smithy.api#documentation": "

The size of the function's /tmp directory in MB. The default value is 512, but can be any whole\n number between 512 and 10,240 MB. For more information, see Configuring ephemeral storage (console).

" + "smithy.api#documentation": "

The size of the function's /tmp directory in MB. The default value is 512, but can be any whole number between 512 and 10,240 MB. For more information, see Configuring ephemeral storage (console).

" } }, "SnapStart": { "target": "com.amazonaws.lambda#SnapStartResponse", "traits": { - "smithy.api#documentation": "

Set ApplyOn to PublishedVersions to create a snapshot of the initialized execution\n environment when you publish a function version. For more information, see Improving startup performance with Lambda SnapStart.

" + "smithy.api#documentation": "

Set ApplyOn to PublishedVersions to create a snapshot of the initialized execution environment when you publish a function version. For more information, see Improving startup performance with Lambda SnapStart.

" } }, "RuntimeVersionConfig": { @@ -4555,7 +5276,7 @@ "DestinationConfig": { "target": "com.amazonaws.lambda#DestinationConfig", "traits": { - "smithy.api#documentation": "

A destination for events after they have been sent to a function for processing.

\n

\n Destinations\n

\n
    \n
  • \n

    \n Function - The Amazon Resource Name (ARN) of a Lambda function.

    \n
  • \n
  • \n

    \n Queue - The ARN of a standard SQS queue.

    \n
  • \n
  • \n

    \n Topic - The ARN of a standard SNS topic.

    \n
  • \n
  • \n

    \n Event Bus - The ARN of an Amazon EventBridge event bus.

    \n
  • \n
" + "smithy.api#documentation": "

A destination for events after they have been sent to a function for processing.

Destinations

  • Function - The Amazon Resource Name (ARN) of a Lambda function.

  • Queue - The ARN of a standard SQS queue.

  • Bucket - The ARN of an Amazon S3 bucket.

  • Topic - The ARN of a standard SNS topic.

  • Event Bus - The ARN of an Amazon EventBridge event bus.

S3 buckets are supported only for on-failure destinations. To retain records of successful invocations, use another destination type.

" } } } @@ -4665,20 +5386,20 @@ "Cors": { "target": "com.amazonaws.lambda#Cors", "traits": { - "smithy.api#documentation": "

The cross-origin resource sharing (CORS) settings\n for your function URL.

" + "smithy.api#documentation": "

The cross-origin resource sharing (CORS) settings for your function URL.

" } }, "AuthType": { "target": "com.amazonaws.lambda#FunctionUrlAuthType", "traits": { - "smithy.api#documentation": "

The type of authentication that your function URL uses. Set to AWS_IAM if you want to restrict access to authenticated\n users only. Set to NONE if you want to bypass IAM authentication to create a public endpoint. For more information,\n see Security and auth model for Lambda function URLs.

", + "smithy.api#documentation": "

The type of authentication that your function URL uses. Set to AWS_IAM if you want to restrict access to authenticated users only. Set to NONE if you want to bypass IAM authentication to create a public endpoint. For more information, see Security and auth model for Lambda function URLs.

", "smithy.api#required": {} } }, "InvokeMode": { "target": "com.amazonaws.lambda#InvokeMode", "traits": { - "smithy.api#documentation": "

Use one of the following options:

\n
    \n
  • \n

    \n BUFFERED – This is the default option. Lambda invokes your function\n using the Invoke API operation. Invocation results are available when the\n payload is complete. The maximum payload size is 6 MB.

    \n
  • \n
  • \n

    \n RESPONSE_STREAM – Your function streams payload results as they become available.\n Lambda invokes your function using the InvokeWithResponseStream\n API operation. The maximum response payload size is 20 MB, however, you can request a quota increase.

    \n
  • \n
" + "smithy.api#documentation": "

Use one of the following options:

  • BUFFERED – This is the default option. Lambda invokes your function using the Invoke API operation. Invocation results are available when the payload is complete. The maximum payload size is 6 MB.

  • RESPONSE_STREAM – Your function streams payload results as they become available. Lambda invokes your function using the InvokeWithResponseStream API operation. The maximum response payload size is 200 MB.

" } } }, @@ -4713,6 +5434,42 @@ } } }, + "com.amazonaws.lambda#FunctionVersionResource": { + "type": "resource", + "identifiers": { + "FunctionName": { + "target": "com.amazonaws.lambda#FunctionName" + }, + "Version": { + "target": "com.amazonaws.lambda#Version" + } + }, + "create": { + "target": "com.amazonaws.lambda#PublishVersion" + }, + "collectionOperations": [ + { + "target": "com.amazonaws.lambda#ListVersionsByFunction" + } + ], + "traits": { + "aws.api#arn": { + "template": "function:{FunctionName}:{Version}" + }, + "aws.iam#conditionKeys": [ + "aws:ResourceTag/${TagKey}" + ], + "aws.iam#iamResource": { + "disableConditionKeyInheritance": true, + "name": "function version", + "relativeDocumentation": "lambda-api-permissions-ref.html" + }, + "smithy.api#documentation": "A lambda function version or alias", + "smithy.api#suppress": [ + "IamResourceTrait" + ] + } + }, "com.amazonaws.lambda#GetAccountSettings": { "type": "operation", "input": { @@ -4730,12 +5487,36 @@ } ], "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to view details about an account's limits and usage in an AWS Region", + "relativeDocumentation": "API_GetAccountSettings.html" + }, "smithy.api#documentation": "

Retrieves details about your account's limits and usage in an Amazon Web Services Region.

", + "smithy.api#examples": [ + { + "title": "To get account settings", + "documentation": "This operation takes no parameters and returns details about storage and concurrency quotas in the current Region.", + "output": { + "AccountLimit": { + "CodeSizeUnzipped": 262144000, + "UnreservedConcurrentExecutions": 1000, + "ConcurrentExecutions": 1000, + "CodeSizeZipped": 52428800, + "TotalCodeSize": 80530636800 + }, + "AccountUsage": { + "FunctionCount": 4, + "TotalCodeSize": 9426 + } + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2016-08-19/account-settings", "code": 200 - } + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#GetAccountSettingsRequest": { @@ -4788,12 +5569,39 @@ } ], "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to view details about an AWS Lambda function alias", + "relativeDocumentation": "API_GetAlias.html", + "resources": { + "required": { + "function": {} + } + } + }, "smithy.api#documentation": "

Returns details about a Lambda function alias.

", + "smithy.api#examples": [ + { + "title": "To get a Lambda function alias", + "documentation": "The following example returns details about an alias named BLUE for a function named my-function", + "input": { + "FunctionName": "my-function", + "Name": "BLUE" + }, + "output": { + "AliasArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function:BLUE", + "Name": "BLUE", + "FunctionVersion": "3", + "RevisionId": "594f41fb-xmpl-4c20-95c7-6ca5f2a92c93", + "Description": "Production environment BLUE." + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2015-03-31/functions/{FunctionName}/aliases/{Name}", "code": 200 - } + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#GetAliasRequest": { @@ -4802,7 +5610,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function name - MyFunction.

    \n
  • \n
  • \n

    \n Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

    \n
  • \n
  • \n

    \n Partial ARN - 123456789012:function:MyFunction.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function name - MyFunction.

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

  • Partial ARN - 123456789012:function:MyFunction.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -4812,7 +5620,8 @@ "traits": { "smithy.api#documentation": "

The name of the alias.

", "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.api#resourceIdentifier": "Alias" } } }, @@ -4840,12 +5649,22 @@ } ], "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to view details about an AWS Lambda code signing config", + "relativeDocumentation": "API_GetCodeSigningConfig.html", + "resources": { + "required": { + "code signing config": {} + } + } + }, "smithy.api#documentation": "

Returns information about the specified code signing configuration.

", "smithy.api#http": { "method": "GET", "uri": "/2020-04-22/code-signing-configs/{CodeSigningConfigArn}", "code": 200 - } + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#GetCodeSigningConfigRequest": { @@ -4902,12 +5721,48 @@ } ], "traits": { - "smithy.api#documentation": "

Returns details about an event source mapping. You can get the identifier of a mapping from the output of\n ListEventSourceMappings.

", + "aws.iam#conditionKeys": [ + "lambda:FunctionArn" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to view details about an AWS Lambda event source mapping", + "relativeDocumentation": "API_GetEventSourceMapping.html", + "resources": { + "required": { + "eventSourceMapping": {} + } + } + }, + "smithy.api#documentation": "

Returns details about an event source mapping. You can get the identifier of a mapping from the output of ListEventSourceMappings.

", + "smithy.api#examples": [ + { + "title": "To get a Lambda function's event source mapping", + "documentation": "The following example returns details about an event source mapping. To get a mapping's UUID, use ListEventSourceMappings.", + "input": { + "UUID": "14e0db71-xmpl-4eb5-b481-8945cf9d10c2" + }, + "output": { + "UUID": "14e0db71-xmpl-4eb5-b481-8945cf9d10c2", + "BatchSize": 500, + "EventSourceArn": "arn:aws:sqs:us-east-2:123456789012:mySQSqueue", + "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:myFunction", + "LastModified": "2016-11-21T19:49:20.006Z", + "LastProcessingResult": "No records processed", + "State": "Creating", + "StateTransitionReason": "User action", + "DestinationConfig": {}, + "MaximumRecordAgeInSeconds": 604800, + "BisectBatchOnFunctionError": false, + "MaximumRetryAttempts": 10000 + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2015-03-31/event-source-mappings/{UUID}", "code": 200 - } + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#GetEventSourceMappingRequest": { @@ -4949,12 +5804,68 @@ } ], "traits": { - "smithy.api#documentation": "

Returns information about the function or function version, with a link to download the deployment package\n that's valid for 10 minutes. If you specify a function version, only details that are specific to that version are\n returned.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to view details about an AWS Lambda function", + "relativeDocumentation": "API_GetFunction.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Returns information about the function or function version, with a link to download the deployment package that's valid for 10 minutes. If you specify a function version, only details that are specific to that version are returned.

", + "smithy.api#examples": [ + { + "title": "To get a Lambda function", + "documentation": "The following example returns code and configuration details for version 1 of a function named my-function.", + "input": { + "FunctionName": "my-function", + "Qualifier": "1" + }, + "output": { + "Configuration": { + "FunctionName": "my-function", + "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", + "Runtime": "nodejs12.x", + "Role": "arn:aws:iam::123456789012:role/lambda-role", + "Handler": "index.handler", + "CodeSize": 5797206, + "Description": "Process image objects from Amazon S3.", + "Timeout": 15, + "MemorySize": 256, + "LastModified": "2020-04-10T19:06:32.563+0000", + "CodeSha256": "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=", + "Version": "$LATEST", + "Environment": { + "Variables": { + "PREFIX": "inbound", + "BUCKET": "my-bucket-1xpuxmplzrlbh" + } + }, + "KMSKeyArn": "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966", + "TracingConfig": { + "Mode": "Active" + }, + "RevisionId": "b75dcd81-xmpl-48a8-a75a-93ba8b5b9727", + "State": "Active", + "LastUpdateStatus": "Successful" + }, + "Code": { + "RepositoryType": "S3", + "Location": "https://awslambda-us-west-2-tasks.s3.us-west-2.amazonaws.com/snapshots/123456789012/my-function-e7d9d1ed-xmpl-4f79-904a-4b87f2681f30?versionId=sH3TQwBOaUy..." + }, + "Tags": { + "DEPARTMENT": "Assets" + } + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2015-03-31/functions/{FunctionName}", "code": 200 }, + "smithy.api#readonly": {}, "smithy.waiters#waitable": { "FunctionActiveV2": { "documentation": "Waits for the function's State to be Active. This waiter uses GetFunction API. This should be used after new function creation.", @@ -4990,7 +5901,8 @@ } } ], - "minDelay": 1 + "minDelay": 1, + "maxDelay": 300 }, "FunctionExists": { "acceptors": [ @@ -5007,7 +5919,8 @@ } } ], - "minDelay": 1 + "minDelay": 1, + "maxDelay": 20 }, "FunctionUpdatedV2": { "documentation": "Waits for the function's LastUpdateStatus to be Successful. This waiter uses GetFunction API. This should be used after function updates.", @@ -5043,7 +5956,8 @@ } } ], - "minDelay": 1 + "minDelay": 1, + "maxDelay": 300 } } } @@ -5071,12 +5985,22 @@ } ], "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to view the code signing config arn attached to an AWS Lambda function", + "relativeDocumentation": "API_GetFunctionCodeSigningConfig.html", + "resources": { + "required": { + "function": {} + } + } + }, "smithy.api#documentation": "

Returns the code signing configuration for the specified function.

", "smithy.api#http": { "method": "GET", "uri": "/2020-06-30/functions/{FunctionName}/code-signing-config", "code": 200 - } + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#GetFunctionCodeSigningConfigRequest": { @@ -5085,7 +6009,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function name - MyFunction.

    \n
  • \n
  • \n

    \n Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

    \n
  • \n
  • \n

    \n Partial ARN - 123456789012:function:MyFunction.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function name - MyFunction.

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

  • Partial ARN - 123456789012:function:MyFunction.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -5108,7 +6032,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function name - MyFunction.

    \n
  • \n
  • \n

    \n Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

    \n
  • \n
  • \n

    \n Partial ARN - 123456789012:function:MyFunction.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function name - MyFunction.

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

  • Partial ARN - 123456789012:function:MyFunction.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#required": {} } } @@ -5140,12 +6064,34 @@ } ], "traits": { - "smithy.api#documentation": "

Returns details about the reserved concurrency configuration for a function. To set a concurrency limit for a\n function, use PutFunctionConcurrency.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to view details about the reserved concurrency configuration for a function", + "relativeDocumentation": "API_GetFunctionConcurrency.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Returns details about the reserved concurrency configuration for a function. To set a concurrency limit for a function, use PutFunctionConcurrency.

", + "smithy.api#examples": [ + { + "title": "To get the reserved concurrency setting for a function", + "documentation": "The following example returns the reserved concurrency setting for a function named my-function.", + "input": { + "FunctionName": "my-function" + }, + "output": { + "ReservedConcurrentExecutions": 250 + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2019-09-30/functions/{FunctionName}/concurrency", "code": 200 - } + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#GetFunctionConcurrencyRequest": { @@ -5154,7 +6100,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -5201,12 +6147,59 @@ } ], "traits": { - "smithy.api#documentation": "

Returns the version-specific settings of a Lambda function or version. The output includes only options that\n can vary between versions of a function. To modify these settings, use UpdateFunctionConfiguration.

\n

To get all of a function's details, including function-level settings, use GetFunction.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to view details about the version-specific settings of an AWS Lambda function or version", + "relativeDocumentation": "API_GetFunctionConfiguration.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Returns the version-specific settings of a Lambda function or version. The output includes only options that can vary between versions of a function. To modify these settings, use UpdateFunctionConfiguration.

To get all of a function's details, including function-level settings, use GetFunction.

", + "smithy.api#examples": [ + { + "title": "To get a Lambda function's event source mapping", + "documentation": "The following example returns and configuration details for version 1 of a function named my-function.", + "input": { + "FunctionName": "my-function", + "Qualifier": "1" + }, + "output": { + "FunctionName": "my-function", + "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", + "Runtime": "nodejs12.x", + "Role": "arn:aws:iam::123456789012:role/lambda-role", + "Handler": "index.handler", + "CodeSize": 5797206, + "Description": "Process image objects from Amazon S3.", + "Timeout": 15, + "MemorySize": 256, + "LastModified": "2020-04-10T19:06:32.563+0000", + "CodeSha256": "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=", + "Version": "$LATEST", + "Environment": { + "Variables": { + "PREFIX": "inbound", + "BUCKET": "my-bucket-1xpuxmplzrlbh" + } + }, + "KMSKeyArn": "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966", + "TracingConfig": { + "Mode": "Active" + }, + "RevisionId": "b75dcd81-xmpl-48a8-a75a-93ba8b5b9727", + "State": "Active", + "LastUpdateStatus": "Successful" + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2015-03-31/functions/{FunctionName}/configuration", "code": 200 }, + "smithy.api#readonly": {}, "smithy.waiters#waitable": { "FunctionActive": { "documentation": "Waits for the function's State to be Active. This waiter uses GetFunctionConfiguration API. This should be used after new function creation.", @@ -5242,7 +6235,8 @@ } } ], - "minDelay": 5 + "minDelay": 5, + "maxDelay": 300 }, "FunctionUpdated": { "documentation": "Waits for the function's LastUpdateStatus to be Successful. This waiter uses GetFunctionConfiguration API. This should be used after function updates.", @@ -5278,7 +6272,8 @@ } } ], - "minDelay": 5 + "minDelay": 5, + "maxDelay": 300 }, "PublishedVersionActive": { "documentation": "Waits for the published version's State to be Active. This waiter uses GetFunctionConfiguration API. This should be used after new version is published.", @@ -5314,7 +6309,8 @@ } } ], - "minDelay": 5 + "minDelay": 5, + "maxDelay": 1560 } } } @@ -5325,7 +6321,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#NamespacedFunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function (name-only), my-function:v1 (with alias).

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN.\n If you specify only the function name, it is limited to 64 characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

Name formats

  • Function namemy-function (name-only), my-function:v1 (with alias).

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -5365,12 +6361,44 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves the configuration for asynchronous invocation for a function, version, or alias.

\n

To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to view the configuration for asynchronous invocation for a function, version, or alias", + "relativeDocumentation": "API_GetFunctionEventInvokeConfig.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Retrieves the configuration for asynchronous invocation for a function, version, or alias.

To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig.

", + "smithy.api#examples": [ + { + "title": "To get an asynchronous invocation configuration", + "documentation": "The following example returns the asynchronous invocation configuration for the BLUE alias of a function named my-function.", + "input": { + "FunctionName": "my-function", + "Qualifier": "BLUE" + }, + "output": { + "LastModified": "2016-11-21T19:49:20.006Z", + "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:BLUE", + "MaximumRetryAttempts": 0, + "MaximumEventAgeInSeconds": 3600, + "DestinationConfig": { + "OnSuccess": {}, + "OnFailure": { + "Destination": "arn:aws:sqs:us-east-2:123456789012:failed-invocations" + } + } + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2019-09-25/functions/{FunctionName}/event-invoke-config", "code": 200 - } + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#GetFunctionEventInvokeConfigRequest": { @@ -5379,7 +6407,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function name - my-function (name-only), my-function:v1 (with alias).

    \n
  • \n
  • \n

    \n Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN - 123456789012:function:my-function.

    \n
  • \n
\n

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN.\n If you specify only the function name, it is limited to 64 characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

Name formats

  • Function name - my-function (name-only), my-function:v1 (with alias).

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN - 123456789012:function:my-function.

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -5396,13 +6424,84 @@ "smithy.api#input": {} } }, + "com.amazonaws.lambda#GetFunctionRecursionConfig": { + "type": "operation", + "input": { + "target": "com.amazonaws.lambda#GetFunctionRecursionConfigRequest" + }, + "output": { + "target": "com.amazonaws.lambda#GetFunctionRecursionConfigResponse" + }, + "errors": [ + { + "target": "com.amazonaws.lambda#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.lambda#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.lambda#ServiceException" + }, + { + "target": "com.amazonaws.lambda#TooManyRequestsException" + } + ], + "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to view the recursion configuration of an AWS Lambda function", + "relativeDocumentation": "API_GetFunctionRecursionConfig.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Returns your function's recursive loop detection configuration.

", + "smithy.api#http": { + "method": "GET", + "uri": "/2024-08-31/functions/{FunctionName}/recursion-config", + "code": 200 + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.lambda#GetFunctionRecursionConfigRequest": { + "type": "structure", + "members": { + "FunctionName": { + "target": "com.amazonaws.lambda#UnqualifiedFunctionName", + "traits": { + "smithy.api#documentation": "

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lambda#GetFunctionRecursionConfigResponse": { + "type": "structure", + "members": { + "RecursiveLoop": { + "target": "com.amazonaws.lambda#RecursiveLoop", + "traits": { + "smithy.api#documentation": "

If your function's recursive loop detection configuration is Allow, Lambda doesn't take any action when it detects your function being invoked as part of a recursive loop.

If your function's recursive loop detection configuration is Terminate, Lambda stops your function being invoked and notifies you when it detects your function being invoked as part of a recursive loop.

By default, Lambda sets your function's configuration to Terminate. You can update this configuration using the PutFunctionRecursionConfig action.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.lambda#GetFunctionRequest": { "type": "structure", "members": { "FunctionName": { "target": "com.amazonaws.lambda#NamespacedFunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function (name-only), my-function:v1 (with alias).

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN.\n If you specify only the function name, it is limited to 64 characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

Name formats

  • Function namemy-function (name-only), my-function:v1 (with alias).

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -5437,13 +6536,19 @@ "Tags": { "target": "com.amazonaws.lambda#Tags", "traits": { - "smithy.api#documentation": "

The function's tags.

" + "smithy.api#documentation": "

The function's tags. Lambda returns tag data only if you have explicit allow permissions for lambda:ListTags.

" + } + }, + "TagsError": { + "target": "com.amazonaws.lambda#TagsError", + "traits": { + "smithy.api#documentation": "

An object that contains details about an error related to retrieving tags.

" } }, "Concurrency": { "target": "com.amazonaws.lambda#Concurrency", "traits": { - "smithy.api#documentation": "

The function's reserved\n concurrency.

" + "smithy.api#documentation": "

The function's reserved concurrency.

" } } }, @@ -5474,12 +6579,26 @@ } ], "traits": { + "aws.iam#conditionKeys": [ + "lambda:FunctionArn", + "lambda:FunctionUrlAuthType" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to read function url configuration for a Lambda function", + "relativeDocumentation": "API_GetFunctionUrlConfig.html", + "resources": { + "required": { + "function": {} + } + } + }, "smithy.api#documentation": "

Returns details about a Lambda function URL.

", "smithy.api#http": { "method": "GET", "uri": "/2021-10-31/functions/{FunctionName}/url", "code": 200 - } + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#GetFunctionUrlConfigRequest": { @@ -5488,7 +6607,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -5525,14 +6644,14 @@ "AuthType": { "target": "com.amazonaws.lambda#FunctionUrlAuthType", "traits": { - "smithy.api#documentation": "

The type of authentication that your function URL uses. Set to AWS_IAM if you want to restrict access to authenticated\n users only. Set to NONE if you want to bypass IAM authentication to create a public endpoint. For more information,\n see Security and auth model for Lambda function URLs.

", + "smithy.api#documentation": "

The type of authentication that your function URL uses. Set to AWS_IAM if you want to restrict access to authenticated users only. Set to NONE if you want to bypass IAM authentication to create a public endpoint. For more information, see Security and auth model for Lambda function URLs.

", "smithy.api#required": {} } }, "Cors": { "target": "com.amazonaws.lambda#Cors", "traits": { - "smithy.api#documentation": "

The cross-origin resource sharing (CORS) settings\n for your function URL.

" + "smithy.api#documentation": "

The cross-origin resource sharing (CORS) settings for your function URL.

" } }, "CreationTime": { @@ -5552,7 +6671,7 @@ "InvokeMode": { "target": "com.amazonaws.lambda#InvokeMode", "traits": { - "smithy.api#documentation": "

Use one of the following options:

\n
    \n
  • \n

    \n BUFFERED – This is the default option. Lambda invokes your function using the Invoke API operation. Invocation results \n are available when the payload is complete. The maximum payload size is 6 MB.

    \n
  • \n
  • \n

    \n RESPONSE_STREAM – Your function streams payload results as they become available. Lambda invokes your function using \n the InvokeWithResponseStream API operation. The maximum response payload size is 20 MB, however, you can request a quota increase.

    \n
  • \n
" + "smithy.api#documentation": "

Use one of the following options:

  • BUFFERED – This is the default option. Lambda invokes your function using the Invoke API operation. Invocation results are available when the payload is complete. The maximum payload size is 6 MB.

  • RESPONSE_STREAM – Your function streams payload results as they become available. Lambda invokes your function using the InvokeWithResponseStream API operation. The maximum response payload size is 200 MB.

" } } }, @@ -5583,12 +6702,49 @@ } ], "traits": { - "smithy.api#documentation": "

Returns information about a version of an Lambda\n layer, with a link to download the layer archive\n that's valid for 10 minutes.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to view details about a version of an AWS Lambda layer. Note this action also supports GetLayerVersionByArn API", + "relativeDocumentation": "API_GetLayerVersion.html", + "resources": { + "required": { + "layerVersion": {} + } + } + }, + "smithy.api#documentation": "

Returns information about a version of an Lambda layer, with a link to download the layer archive that's valid for 10 minutes.

", + "smithy.api#examples": [ + { + "title": "To get information about a Lambda layer version", + "documentation": "The following example returns information for version 1 of a layer named my-layer.", + "input": { + "LayerName": "my-layer", + "VersionNumber": 1 + }, + "output": { + "Content": { + "Location": "https://awslambda-us-east-2-layers.s3.us-east-2.amazonaws.com/snapshots/123456789012/my-layer-4aaa2fbb-ff77-4b0a-ad92-5b78a716a96a?versionId=27iWyA73cCAYqyH...", + "CodeSha256": "tv9jJO+rPbXUUXuRKi7CwHzKtLDkDRJLB3cC3Z/ouXo=", + "CodeSize": 169 + }, + "LayerArn": "arn:aws:lambda:us-east-2:123456789012:layer:my-layer", + "LayerVersionArn": "arn:aws:lambda:us-east-2:123456789012:layer:my-layer:1", + "Description": "My Python layer", + "CreatedDate": "2018-11-14T23:03:52.894+0000", + "Version": 1, + "LicenseInfo": "MIT", + "CompatibleRuntimes": [ + "python3.6", + "python3.7" + ] + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2018-10-31/layers/{LayerName}/versions/{VersionNumber}", "code": 200 - } + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#GetLayerVersionByArn": { @@ -5614,12 +6770,47 @@ } ], "traits": { - "smithy.api#documentation": "

Returns information about a version of an Lambda\n layer, with a link to download the layer archive\n that's valid for 10 minutes.

", + "aws.iam#iamAction": { + "name": "GetLayerVersion", + "documentation": "Grants permission to view details about a version of an AWS Lambda layer. Note this action also supports GetLayerVersionByArn API", + "relativeDocumentation": "API_GetLayerVersion.html", + "resources": { + "required": { + "layerVersion": {} + } + } + }, + "smithy.api#documentation": "

Returns information about a version of an Lambda layer, with a link to download the layer archive that's valid for 10 minutes.

", + "smithy.api#examples": [ + { + "title": "To get information about a Lambda layer version", + "documentation": "The following example returns information about the layer version with the specified Amazon Resource Name (ARN).", + "input": { + "Arn": "arn:aws:lambda:ca-central-1:123456789012:layer:blank-python-lib:3" + }, + "output": { + "Content": { + "Location": "https://awslambda-us-east-2-layers.s3.us-east-2.amazonaws.com/snapshots/123456789012/blank-python-lib-e5212378-xmpl-44ee-8398-9d8ec5113949?versionId=WbZnvf...", + "CodeSha256": "6x+xmpl/M3BnQUk7gS9sGmfeFsR/npojXoA3fZUv4eU=", + "CodeSize": 9529009 + }, + "LayerArn": "arn:aws:lambda:us-east-2:123456789012:layer:blank-python-lib", + "LayerVersionArn": "arn:aws:lambda:us-east-2:123456789012:layer:blank-python-lib:3", + "Description": "Dependencies for the blank-python sample app.", + "CreatedDate": "2020-03-31T00:35:18.949+0000", + "Version": 3, + "CompatibleRuntimes": [ + "python3.8" + ] + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2018-10-31/layers?find=LayerVersion", "code": 200 - } + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#GetLayerVersionByArnRequest": { @@ -5661,12 +6852,22 @@ } ], "traits": { - "smithy.api#documentation": "

Returns the permission policy for a version of an Lambda\n layer. For more information, see AddLayerVersionPermission.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to view the resource-based policy for a version of an AWS Lambda layer", + "relativeDocumentation": "API_GetLayerVersionPolicy.html", + "resources": { + "required": { + "layerVersion": {} + } + } + }, + "smithy.api#documentation": "

Returns the permission policy for a version of an Lambda layer. For more information, see AddLayerVersionPermission.

", "smithy.api#http": { "method": "GET", "uri": "/2018-10-31/layers/{LayerName}/versions/{VersionNumber}/policy", "code": 200 - } + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#GetLayerVersionPolicyRequest": { @@ -5782,7 +6983,7 @@ "CompatibleRuntimes": { "target": "com.amazonaws.lambda#CompatibleRuntimes", "traits": { - "smithy.api#documentation": "

The layer's compatible runtimes.

\n

The following list includes deprecated runtimes. For more information, see Runtime deprecation policy.

" + "smithy.api#documentation": "

The layer's compatible runtimes.

The following list includes deprecated runtimes. For more information, see Runtime use after deprecation.

For a list of all currently supported runtimes, see Supported runtimes.

" } }, "LicenseInfo": { @@ -5794,7 +6995,7 @@ "CompatibleArchitectures": { "target": "com.amazonaws.lambda#CompatibleArchitectures", "traits": { - "smithy.api#documentation": "

A list of compatible \ninstruction set architectures.

" + "smithy.api#documentation": "

A list of compatible instruction set architectures.

" } } } @@ -5822,12 +7023,36 @@ } ], "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to view the resource-based policy for an AWS Lambda function, version, or alias", + "relativeDocumentation": "API_GetPolicy.html", + "resources": { + "required": { + "function": {} + } + } + }, "smithy.api#documentation": "

Returns the resource-based IAM policy for a function, version, or alias.

", + "smithy.api#examples": [ + { + "title": "To retrieve a Lambda function policy", + "documentation": "The following example returns the resource-based policy for version 1 of a Lambda function named my-function.", + "input": { + "FunctionName": "my-function", + "Qualifier": "1" + }, + "output": { + "Policy": "{\"Version\":\"2012-10-17\",\"Id\":\"default\",\"Statement\":[{\"Sid\":\"xaccount\",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"arn:aws:iam::123456789012:root\"},\"Action\":\"lambda:InvokeFunction\",\"Resource\":\"arn:aws:lambda:us-east-2:123456789012:function:my-function:1\"}]}", + "RevisionId": "4843f2f6-7c59-4fda-b484-afd0bc0e22b8" + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2015-03-31/functions/{FunctionName}/policy", "code": 200 - } + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#GetPolicyRequest": { @@ -5836,7 +7061,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#NamespacedFunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function (name-only), my-function:v1 (with alias).

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN.\n If you specify only the function name, it is limited to 64 characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

Name formats

  • Function namemy-function (name-only), my-function:v1 (with alias).

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -5899,12 +7124,55 @@ } ], "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to view the provisioned concurrency configuration for an AWS Lambda function's alias or version", + "relativeDocumentation": "API_GetProvisionedConcurrencyConfig.html", + "resources": { + "optional": { + "function version": {}, + "function alias": {} + } + } + }, "smithy.api#documentation": "

Retrieves the provisioned concurrency configuration for a function's alias or version.

", + "smithy.api#examples": [ + { + "title": "To get a provisioned concurrency configuration", + "documentation": "The following example returns details for the provisioned concurrency configuration for the BLUE alias of the specified function.", + "input": { + "FunctionName": "my-function", + "Qualifier": "BLUE" + }, + "output": { + "RequestedProvisionedConcurrentExecutions": 100, + "AvailableProvisionedConcurrentExecutions": 100, + "AllocatedProvisionedConcurrentExecutions": 100, + "Status": "READY", + "LastModified": "2019-12-31T20:28:49+0000" + } + }, + { + "title": "To view a provisioned concurrency configuration", + "documentation": "The following example displays details for the provisioned concurrency configuration for the BLUE alias of the specified function.", + "input": { + "FunctionName": "my-function", + "Qualifier": "BLUE" + }, + "output": { + "RequestedProvisionedConcurrentExecutions": 100, + "AvailableProvisionedConcurrentExecutions": 100, + "AllocatedProvisionedConcurrentExecutions": 100, + "Status": "READY", + "LastModified": "2019-12-31T20:28:49+0000" + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2019-09-30/functions/{FunctionName}/provisioned-concurrency", "code": 200 - } + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#GetProvisionedConcurrencyConfigRequest": { @@ -5913,7 +7181,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -5998,12 +7266,22 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves the runtime management configuration for a function's version. If the runtime update mode is Manual, this includes the ARN of the \n runtime version and the runtime update mode. If the runtime update mode is Auto or Function update, \n this includes the runtime update mode and null is returned for the ARN. For more information, see Runtime updates.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to view the runtime management configuration of an AWS Lambda function", + "relativeDocumentation": "API_GetRuntimeManagementConfig.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Retrieves the runtime management configuration for a function's version. If the runtime update mode is Manual, this includes the ARN of the runtime version and the runtime update mode. If the runtime update mode is Auto or Function update, this includes the runtime update mode and null is returned for the ARN. For more information, see Runtime updates.

", "smithy.api#http": { "method": "GET", "uri": "/2021-07-20/functions/{FunctionName}/runtime-management-config", "code": 200 - } + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#GetRuntimeManagementConfigRequest": { @@ -6012,7 +7290,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#NamespacedFunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -6020,7 +7298,7 @@ "Qualifier": { "target": "com.amazonaws.lambda#Qualifier", "traits": { - "smithy.api#documentation": "

Specify a version of the function. This can be $LATEST or a published version number. If no value is specified, the configuration for the \n $LATEST version is returned.

", + "smithy.api#documentation": "

Specify a version of the function. This can be $LATEST or a published version number. If no value is specified, the configuration for the $LATEST version is returned.

", "smithy.api#httpQuery": "Qualifier" } } @@ -6041,7 +7319,7 @@ "RuntimeVersionArn": { "target": "com.amazonaws.lambda#RuntimeVersionArn", "traits": { - "smithy.api#documentation": "

The ARN of the runtime the function is configured to use. If the runtime update mode is Manual, the ARN is returned, otherwise null \n is returned.

" + "smithy.api#documentation": "

The ARN of the runtime the function is configured to use. If the runtime update mode is Manual, the ARN is returned, otherwise null is returned.

" } }, "FunctionArn": { @@ -6099,7 +7377,7 @@ "EntryPoint": { "target": "com.amazonaws.lambda#StringList", "traits": { - "smithy.api#documentation": "

Specifies the entry point to their application, which is typically the location of the runtime\n executable.

" + "smithy.api#documentation": "

Specifies the entry point to their application, which is typically the location of the runtime executable.

" } }, "Command": { @@ -6116,7 +7394,7 @@ } }, "traits": { - "smithy.api#documentation": "

Configuration values that override the container image Dockerfile settings. For more information, see Container image\n settings.

" + "smithy.api#documentation": "

Configuration values that override the container image Dockerfile settings. For more information, see Container image settings.

" } }, "com.amazonaws.lambda#ImageConfigError": { @@ -6176,7 +7454,7 @@ } }, "traits": { - "smithy.api#documentation": "

The code signature failed the integrity check. If the integrity check fails, then Lambda blocks\n deployment, even if the code signing policy is set to WARN.

", + "smithy.api#documentation": "

The code signature failed the integrity check. If the integrity check fails, then Lambda blocks deployment, even if the code signing policy is set to WARN.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -6220,7 +7498,7 @@ } }, "traits": { - "smithy.api#documentation": "

The request body could not be parsed as JSON.

", + "smithy.api#documentation": "

The request body could not be parsed as JSON, or a request header is invalid. For example, the 'x-amzn-RequestId' header is not a valid UUID string.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -6295,7 +7573,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#NamespacedFunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function (name-only), my-function:v1 (with alias).

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN.\n If you specify only the function name, it is limited to 64 characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

Name formats

  • Function namemy-function (name-only), my-function:v1 (with alias).

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -6303,7 +7581,7 @@ "InvocationType": { "target": "com.amazonaws.lambda#InvocationType", "traits": { - "smithy.api#documentation": "

Choose from the following options.

\n
    \n
  • \n

    \n RequestResponse (default) – Invoke the function synchronously. Keep the connection open until\n the function returns a response or times out. The API response includes the function response and additional\n data.

    \n
  • \n
  • \n

    \n Event – Invoke the function asynchronously. Send events that fail multiple times to the\n function's dead-letter queue (if one is configured). The API response only includes a status code.

    \n
  • \n
  • \n

    \n DryRun – Validate parameter values and verify that the user or role has permission to invoke\n the function.

    \n
  • \n
", + "smithy.api#documentation": "

Choose from the following options.

  • RequestResponse (default) – Invoke the function synchronously. Keep the connection open until the function returns a response or times out. The API response includes the function response and additional data.

  • Event – Invoke the function asynchronously. Send events that fail multiple times to the function's dead-letter queue (if one is configured). The API response only includes a status code.

  • DryRun – Validate parameter values and verify that the user or role has permission to invoke the function.

", "smithy.api#httpHeader": "X-Amz-Invocation-Type" } }, @@ -6317,14 +7595,14 @@ "ClientContext": { "target": "com.amazonaws.lambda#String", "traits": { - "smithy.api#documentation": "

Up to 3,583 bytes of base64-encoded data about the invoking client to pass to the function in the context\n object. Lambda passes the ClientContext object to your function for\n synchronous invocations only.

", + "smithy.api#documentation": "

Up to 3,583 bytes of base64-encoded data about the invoking client to pass to the function in the context object. Lambda passes the ClientContext object to your function for synchronous invocations only.

", "smithy.api#httpHeader": "X-Amz-Client-Context" } }, "Payload": { "target": "com.amazonaws.lambda#Blob", "traits": { - "smithy.api#documentation": "

The JSON that you want to provide to your Lambda function as input.

\n

You can enter the JSON directly. For example, --payload '{ \"key\": \"value\" }'. You can also\n specify a file path. For example, --payload file://payload.json.

", + "smithy.api#documentation": "

The JSON that you want to provide to your Lambda function as input.

You can enter the JSON directly. For example, --payload '{ \"key\": \"value\" }'. You can also specify a file path. For example, --payload file://payload.json.

", "smithy.api#httpPayload": {} } }, @@ -6347,14 +7625,14 @@ "target": "com.amazonaws.lambda#Integer", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The HTTP status code is in the 200 range for a successful request. For the RequestResponse\n invocation type, this status code is 200. For the Event invocation type, this status code is 202. For\n the DryRun invocation type, the status code is 204.

", + "smithy.api#documentation": "

The HTTP status code is in the 200 range for a successful request. For the RequestResponse invocation type, this status code is 200. For the Event invocation type, this status code is 202. For the DryRun invocation type, the status code is 204.

", "smithy.api#httpResponseCode": {} } }, "FunctionError": { "target": "com.amazonaws.lambda#String", "traits": { - "smithy.api#documentation": "

If present, indicates that an error occurred during function execution. Details about the error are included\n in the response payload.

", + "smithy.api#documentation": "

If present, indicates that an error occurred during function execution. Details about the error are included in the response payload.

", "smithy.api#httpHeader": "X-Amz-Function-Error" } }, @@ -6375,7 +7653,7 @@ "ExecutedVersion": { "target": "com.amazonaws.lambda#Version", "traits": { - "smithy.api#documentation": "

The version of the function that executed. When you invoke a function with an alias, this indicates which\n version the alias resolved to.

", + "smithy.api#documentation": "

The version of the function that executed. When you invoke a function with an alias, this indicates which version the alias resolved to.

", "smithy.api#httpHeader": "X-Amz-Executed-Version" } } @@ -6508,12 +7786,69 @@ } ], "traits": { - "smithy.api#documentation": "

Invokes a Lambda function. You can invoke a function synchronously (and wait for the response), or\n asynchronously. By default, Lambda invokes your function synchronously (i.e. theInvocationType\n is RequestResponse). To invoke a function asynchronously, set InvocationType to\n Event. Lambda passes the ClientContext object to your function for\n synchronous invocations only.

\n

For synchronous invocation,\n details about the function response, including errors, are included in the response body and headers. For either\n invocation type, you can find more information in the execution log and trace.

\n

When an error occurs, your function may be invoked multiple times. Retry behavior varies by error type,\n client, event source, and invocation type. For example, if you invoke a function asynchronously and it returns an\n error, Lambda executes the function up to two more times. For more information, see Error handling and automatic retries in\n Lambda.

\n

For asynchronous invocation,\n Lambda adds events to a queue before sending them to your function. If your function does not have enough capacity\n to keep up with the queue, events may be lost. Occasionally, your function may receive the same event multiple\n times, even if no error occurs. To retain events that were not processed, configure your function with a dead-letter queue.

\n

The status code in the API response doesn't reflect function errors. Error codes are reserved for errors that\n prevent your function from executing, such as permissions errors, quota errors, or issues with your function's code and\n configuration. For example, Lambda returns TooManyRequestsException if running the\n function would cause you to exceed a concurrency limit at either the account level\n (ConcurrentInvocationLimitExceeded) or function level\n (ReservedFunctionConcurrentInvocationLimitExceeded).

\n

For functions with a long timeout, your client might disconnect during synchronous invocation while it waits\n for a response. Configure your HTTP client, SDK, firewall, proxy, or operating system to allow for long\n connections with timeout or keep-alive settings.

\n

This operation requires permission for the lambda:InvokeFunction action. For details on how to set up\n permissions for cross-account invocations, see Granting function\n access to other accounts.

", + "aws.iam#conditionKeys": [ + "lambda:EventSourceToken" + ], + "aws.iam#iamAction": { + "name": "InvokeFunction", + "documentation": "Grants permission to invoke an AWS Lambda function", + "relativeDocumentation": "API_Invoke.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Invokes a Lambda function. You can invoke a function synchronously (and wait for the response), or asynchronously. By default, Lambda invokes your function synchronously (i.e. theInvocationType is RequestResponse). To invoke a function asynchronously, set InvocationType to Event. Lambda passes the ClientContext object to your function for synchronous invocations only.

For synchronous invocation, details about the function response, including errors, are included in the response body and headers. For either invocation type, you can find more information in the execution log and trace.

When an error occurs, your function may be invoked multiple times. Retry behavior varies by error type, client, event source, and invocation type. For example, if you invoke a function asynchronously and it returns an error, Lambda executes the function up to two more times. For more information, see Error handling and automatic retries in Lambda.

For asynchronous invocation, Lambda adds events to a queue before sending them to your function. If your function does not have enough capacity to keep up with the queue, events may be lost. Occasionally, your function may receive the same event multiple times, even if no error occurs. To retain events that were not processed, configure your function with a dead-letter queue.

The status code in the API response doesn't reflect function errors. Error codes are reserved for errors that prevent your function from executing, such as permissions errors, quota errors, or issues with your function's code and configuration. For example, Lambda returns TooManyRequestsException if running the function would cause you to exceed a concurrency limit at either the account level (ConcurrentInvocationLimitExceeded) or function level (ReservedFunctionConcurrentInvocationLimitExceeded).

For functions with a long timeout, your client might disconnect during synchronous invocation while it waits for a response. Configure your HTTP client, SDK, firewall, proxy, or operating system to allow for long connections with timeout or keep-alive settings.

This operation requires permission for the lambda:InvokeFunction action. For details on how to set up permissions for cross-account invocations, see Granting function access to other accounts.

", + "smithy.api#examples": [ + { + "title": "To invoke a Lambda function", + "documentation": "The following example invokes version 1 of a function named my-function with an empty event payload.", + "input": { + "FunctionName": "my-function", + "Payload": "{}", + "Qualifier": "1" + }, + "output": { + "StatusCode": 200, + "Payload": "200 SUCCESS" + } + }, + { + "title": "To invoke a Lambda function asynchronously", + "documentation": "The following example invokes version 1 of a function named my-function asynchronously.", + "input": { + "FunctionName": "my-function", + "Payload": "{}", + "InvocationType": "Event", + "Qualifier": "1" + }, + "output": { + "StatusCode": 202, + "Payload": "" + } + } + ], "smithy.api#http": { "method": "POST", "uri": "/2015-03-31/functions/{FunctionName}/invocations", "code": 200 - } + }, + "smithy.test#smokeTests": [ + { + "id": "ErrorInvalidFunctionName", + "params": { + "FunctionName": "bogus-function" + }, + "expect": { + "failure": { + "errorId": "com.amazonaws.lambda#ResourceNotFoundException" + } + }, + "vendorParams": {}, + "vendorParamsShape": "aws.test#AwsVendorParams" + } + ] } }, "com.amazonaws.lambda#InvokeAsync": { @@ -6542,13 +7877,38 @@ } ], "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to invoke a function asynchronously (Deprecated)", + "relativeDocumentation": "API_InvokeAsync.html", + "resources": { + "required": { + "function": {} + } + } + }, "smithy.api#deprecated": {}, - "smithy.api#documentation": "\n

For asynchronous function invocation, use Invoke.

\n
\n

Invokes a function asynchronously.

\n \n

If you do use the InvokeAsync action, note that it doesn't support the use of X-Ray active tracing. Trace ID is not \n propagated to the function, even if X-Ray active tracing is turned on.

\n
", + "smithy.api#documentation": "

For asynchronous function invocation, use Invoke.

Invokes a function asynchronously.

If you do use the InvokeAsync action, note that it doesn't support the use of X-Ray active tracing. Trace ID is not propagated to the function, even if X-Ray active tracing is turned on.

", + "smithy.api#examples": [ + { + "title": "To invoke a Lambda function asynchronously", + "documentation": "The following example invokes a Lambda function asynchronously", + "input": { + "FunctionName": "my-function", + "InvokeArgs": "{}" + }, + "output": { + "Status": 202 + } + } + ], "smithy.api#http": { "method": "POST", "uri": "/2014-11-13/functions/{FunctionName}/invoke-async", "code": 202 - } + }, + "smithy.api#suppress": [ + "DeprecatedShape" + ] } }, "com.amazonaws.lambda#InvokeAsyncRequest": { @@ -6557,7 +7917,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#NamespacedFunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -6727,7 +8087,20 @@ } ], "traits": { - "smithy.api#documentation": "

Configure your Lambda functions to stream response payloads back to clients. For more information, see Configuring a Lambda function to stream responses.

\n

This operation requires permission for the lambda:InvokeFunction action. For details on how to set up\n permissions for cross-account invocations, see Granting function\n access to other accounts.

", + "aws.iam#conditionKeys": [ + "lambda:EventSourceToken" + ], + "aws.iam#iamAction": { + "name": "InvokeFunction", + "documentation": "Grants permission to invoke an AWS Lambda function", + "relativeDocumentation": "API_Invoke.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Configure your Lambda functions to stream response payloads back to clients. For more information, see Configuring a Lambda function to stream responses.

This operation requires permission for the lambda:InvokeFunction action. For details on how to set up permissions for cross-account invocations, see Granting function access to other accounts.

", "smithy.api#http": { "method": "POST", "uri": "/2021-11-15/functions/{FunctionName}/response-streaming-invocations", @@ -6767,7 +8140,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#NamespacedFunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -6775,7 +8148,7 @@ "InvocationType": { "target": "com.amazonaws.lambda#ResponseStreamingInvocationType", "traits": { - "smithy.api#documentation": "

Use one of the following options:

\n
    \n
  • \n

    \n RequestResponse (default) – Invoke the function synchronously. Keep the\n connection open until the function returns a response or times out. The API operation\n response includes the function response and additional data.

    \n
  • \n
  • \n

    \n DryRun – Validate parameter values and verify that the IAM user or role has permission to invoke\n the function.

    \n
  • \n
", + "smithy.api#documentation": "

Use one of the following options:

  • RequestResponse (default) – Invoke the function synchronously. Keep the connection open until the function returns a response or times out. The API operation response includes the function response and additional data.

  • DryRun – Validate parameter values and verify that the IAM user or role has permission to invoke the function.

", "smithy.api#httpHeader": "X-Amz-Invocation-Type" } }, @@ -6789,7 +8162,7 @@ "ClientContext": { "target": "com.amazonaws.lambda#String", "traits": { - "smithy.api#documentation": "

Up to 3,583 bytes of base64-encoded data about the invoking client to pass to the function in the context\n object.

", + "smithy.api#documentation": "

Up to 3,583 bytes of base64-encoded data about the invoking client to pass to the function in the context object.

", "smithy.api#httpHeader": "X-Amz-Client-Context" } }, @@ -6803,7 +8176,7 @@ "Payload": { "target": "com.amazonaws.lambda#Blob", "traits": { - "smithy.api#documentation": "

The JSON that you want to provide to your Lambda function as input.

\n

You can enter the JSON directly. For example, --payload '{ \"key\": \"value\" }'. You can also\n specify a file path. For example, --payload file://payload.json.

", + "smithy.api#documentation": "

The JSON that you want to provide to your Lambda function as input.

You can enter the JSON directly. For example, --payload '{ \"key\": \"value\" }'. You can also specify a file path. For example, --payload file://payload.json.

", "smithy.api#httpPayload": {} } } @@ -6819,14 +8192,14 @@ "target": "com.amazonaws.lambda#Integer", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

For a successful request, the HTTP status code is in the 200 range. For the\n RequestResponse invocation type, this status code is 200. For the DryRun\n invocation type, this status code is 204.

", + "smithy.api#documentation": "

For a successful request, the HTTP status code is in the 200 range. For the RequestResponse invocation type, this status code is 200. For the DryRun invocation type, this status code is 204.

", "smithy.api#httpResponseCode": {} } }, "ExecutedVersion": { "target": "com.amazonaws.lambda#Version", "traits": { - "smithy.api#documentation": "

The version of the function that executed. When you invoke a function with an alias, this\n indicates which version the alias resolved to.

", + "smithy.api#documentation": "

The version of the function that executed. When you invoke a function with an alias, this indicates which version the alias resolved to.

", "smithy.api#httpHeader": "X-Amz-Executed-Version" } }, @@ -6861,7 +8234,7 @@ "InvokeComplete": { "target": "com.amazonaws.lambda#InvokeWithResponseStreamCompleteEvent", "traits": { - "smithy.api#documentation": "

An object that's returned when the stream has ended and all the payload chunks have been\n returned.

" + "smithy.api#documentation": "

An object that's returned when the stream has ended and all the payload chunks have been returned.

" } } }, @@ -6881,7 +8254,7 @@ } }, "traits": { - "smithy.api#documentation": "

Lambda couldn't decrypt the environment variables because KMS access was denied.\n Check the Lambda function's KMS permissions.

", + "smithy.api#documentation": "

Lambda couldn't decrypt the environment variables because KMS access was denied. Check the Lambda function's KMS permissions.

", "smithy.api#error": "server", "smithy.api#httpError": 502 } @@ -6897,7 +8270,7 @@ } }, "traits": { - "smithy.api#documentation": "

Lambda couldn't decrypt the environment variables because the KMS key used is\n disabled. Check the Lambda function's KMS key settings.

", + "smithy.api#documentation": "

Lambda couldn't decrypt the environment variables because the KMS key used is disabled. Check the Lambda function's KMS key settings.

", "smithy.api#error": "server", "smithy.api#httpError": 502 } @@ -6935,11 +8308,129 @@ } }, "traits": { - "smithy.api#documentation": "

Lambda couldn't decrypt the environment variables because the KMS key was not\n found. Check the function's KMS key settings.

", + "smithy.api#documentation": "

Lambda couldn't decrypt the environment variables because the KMS key was not found. Check the function's KMS key settings.

", "smithy.api#error": "server", "smithy.api#httpError": 502 } }, + "com.amazonaws.lambda#KafkaSchemaRegistryAccessConfig": { + "type": "structure", + "members": { + "Type": { + "target": "com.amazonaws.lambda#KafkaSchemaRegistryAuthType", + "traits": { + "smithy.api#documentation": "

The type of authentication Lambda uses to access your schema registry.

" + } + }, + "URI": { + "target": "com.amazonaws.lambda#Arn", + "traits": { + "smithy.api#documentation": "

The URI of the secret (Secrets Manager secret ARN) to authenticate with your schema registry.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specific access configuration settings that tell Lambda how to authenticate with your schema registry.

If you're working with an Glue schema registry, don't provide authentication details in this object. Instead, ensure that your execution role has the required permissions for Lambda to access your cluster.

If you're working with a Confluent schema registry, choose the authentication method in the Type field, and provide the Secrets Manager secret ARN in the URI field.

" + } + }, + "com.amazonaws.lambda#KafkaSchemaRegistryAccessConfigList": { + "type": "list", + "member": { + "target": "com.amazonaws.lambda#KafkaSchemaRegistryAccessConfig" + } + }, + "com.amazonaws.lambda#KafkaSchemaRegistryAuthType": { + "type": "enum", + "members": { + "BASIC_AUTH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BASIC_AUTH" + } + }, + "CLIENT_CERTIFICATE_TLS_AUTH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CLIENT_CERTIFICATE_TLS_AUTH" + } + }, + "SERVER_ROOT_CA_CERTIFICATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SERVER_ROOT_CA_CERTIFICATE" + } + } + } + }, + "com.amazonaws.lambda#KafkaSchemaRegistryConfig": { + "type": "structure", + "members": { + "SchemaRegistryURI": { + "target": "com.amazonaws.lambda#SchemaRegistryUri", + "traits": { + "smithy.api#documentation": "

The URI for your schema registry. The correct URI format depends on the type of schema registry you're using.

  • For Glue schema registries, use the ARN of the registry.

  • For Confluent schema registries, use the URL of the registry.

" + } + }, + "EventRecordFormat": { + "target": "com.amazonaws.lambda#SchemaRegistryEventRecordFormat", + "traits": { + "smithy.api#documentation": "

The record format that Lambda delivers to your function after schema validation.

  • Choose JSON to have Lambda deliver the record to your function as a standard JSON object.

  • Choose SOURCE to have Lambda deliver the record to your function in its original source format. Lambda removes all schema metadata, such as the schema ID, before sending the record to your function.

" + } + }, + "AccessConfigs": { + "target": "com.amazonaws.lambda#KafkaSchemaRegistryAccessConfigList", + "traits": { + "smithy.api#documentation": "

An array of access configuration objects that tell Lambda how to authenticate with your schema registry.

" + } + }, + "SchemaValidationConfigs": { + "target": "com.amazonaws.lambda#KafkaSchemaValidationConfigList", + "traits": { + "smithy.api#documentation": "

An array of schema validation configuration objects, which tell Lambda the message attributes you want to validate and filter using your schema registry.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specific configuration settings for a Kafka schema registry.

" + } + }, + "com.amazonaws.lambda#KafkaSchemaValidationAttribute": { + "type": "enum", + "members": { + "KEY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KEY" + } + }, + "VALUE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VALUE" + } + } + } + }, + "com.amazonaws.lambda#KafkaSchemaValidationConfig": { + "type": "structure", + "members": { + "Attribute": { + "target": "com.amazonaws.lambda#KafkaSchemaValidationAttribute", + "traits": { + "smithy.api#documentation": "

The attributes you want your schema registry to validate and filter for. If you selected JSON as the EventRecordFormat, Lambda also deserializes the selected message attributes.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specific schema validation configuration settings that tell Lambda the message attributes you want to validate and filter using your schema registry.

" + } + }, + "com.amazonaws.lambda#KafkaSchemaValidationConfigList": { + "type": "list", + "member": { + "target": "com.amazonaws.lambda#KafkaSchemaValidationConfig" + } + }, "com.amazonaws.lambda#LastUpdateStatus": { "type": "enum", "members": { @@ -7122,12 +8613,12 @@ "SigningJobArn": { "target": "com.amazonaws.lambda#Arn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of a signing job.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of a signing job.

" } } }, "traits": { - "smithy.api#documentation": "

An Lambda\n layer.

" + "smithy.api#documentation": "

An Lambda layer.

" } }, "com.amazonaws.lambda#LayerArn": { @@ -7172,6 +8663,79 @@ "smithy.api#pattern": "^\\d{12}|\\*|arn:(aws[a-zA-Z-]*):iam::\\d{12}:root$" } }, + "com.amazonaws.lambda#LayerResource": { + "type": "resource", + "identifiers": { + "LayerName": { + "target": "com.amazonaws.lambda#LayerName" + } + }, + "list": { + "target": "com.amazonaws.lambda#ListLayers" + }, + "traits": { + "aws.api#arn": { + "template": "layer:{LayerName}" + }, + "aws.iam#iamResource": { + "disableConditionKeyInheritance": true, + "name": "layer", + "relativeDocumentation": "lambda-api-permissions-ref.html" + }, + "smithy.api#documentation": "Represents an AWS Lambda function layer" + } + }, + "com.amazonaws.lambda#LayerVersion": { + "type": "resource", + "identifiers": { + "LayerName": { + "target": "com.amazonaws.lambda#LayerName" + }, + "LayerVersion": { + "target": "com.amazonaws.lambda#String" + } + }, + "list": { + "target": "com.amazonaws.lambda#ListLayerVersions" + }, + "collectionOperations": [ + { + "target": "com.amazonaws.lambda#AddLayerVersionPermission" + }, + { + "target": "com.amazonaws.lambda#DeleteLayerVersion" + }, + { + "target": "com.amazonaws.lambda#GetLayerVersion" + }, + { + "target": "com.amazonaws.lambda#GetLayerVersionByArn" + }, + { + "target": "com.amazonaws.lambda#GetLayerVersionPolicy" + }, + { + "target": "com.amazonaws.lambda#PublishLayerVersion" + }, + { + "target": "com.amazonaws.lambda#RemoveLayerVersionPermission" + } + ], + "traits": { + "aws.api#arn": { + "template": "layer:{LayerName}:{LayerVersion}" + }, + "aws.iam#iamResource": { + "disableConditionKeyInheritance": true, + "name": "layerVersion", + "relativeDocumentation": "lambda-api-permissions-ref.html" + }, + "smithy.api#documentation": "Represents a version of an AWS Lambda function layer", + "smithy.api#suppress": [ + "IamResourceTrait" + ] + } + }, "com.amazonaws.lambda#LayerVersionArn": { "type": "string", "traits": { @@ -7206,12 +8770,12 @@ "ZipFile": { "target": "com.amazonaws.lambda#Blob", "traits": { - "smithy.api#documentation": "

The base64-encoded contents of the layer archive. Amazon Web Services SDK and Amazon Web Services CLI clients handle the encoding for\n you.

" + "smithy.api#documentation": "

The base64-encoded contents of the layer archive. Amazon Web Services SDK and Amazon Web Services CLI clients handle the encoding for you.

" } } }, "traits": { - "smithy.api#documentation": "

A ZIP archive that contains the contents of an Lambda\n layer. You can specify either an Amazon S3 location,\n or upload a layer archive directly.

" + "smithy.api#documentation": "

A ZIP archive that contains the contents of an Lambda layer. You can specify either an Amazon S3 location, or upload a layer archive directly.

" } }, "com.amazonaws.lambda#LayerVersionContentOutput": { @@ -7245,12 +8809,12 @@ "SigningJobArn": { "target": "com.amazonaws.lambda#String", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of a signing job.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of a signing job.

" } } }, "traits": { - "smithy.api#documentation": "

Details about a version of an Lambda\n layer.

" + "smithy.api#documentation": "

Details about a version of an Lambda layer.

" } }, "com.amazonaws.lambda#LayerVersionNumber": { @@ -7296,7 +8860,7 @@ "CompatibleRuntimes": { "target": "com.amazonaws.lambda#CompatibleRuntimes", "traits": { - "smithy.api#documentation": "

The layer's compatible runtimes.

\n

The following list includes deprecated runtimes. For more information, see Runtime deprecation policy.

" + "smithy.api#documentation": "

The layer's compatible runtimes.

The following list includes deprecated runtimes. For more information, see Runtime use after deprecation.

For a list of all currently supported runtimes, see Supported runtimes.

" } }, "LicenseInfo": { @@ -7308,12 +8872,12 @@ "CompatibleArchitectures": { "target": "com.amazonaws.lambda#CompatibleArchitectures", "traits": { - "smithy.api#documentation": "

A list of compatible \n instruction set architectures.

" + "smithy.api#documentation": "

A list of compatible instruction set architectures.

" } } }, "traits": { - "smithy.api#documentation": "

Details about a version of an Lambda\n layer.

" + "smithy.api#documentation": "

Details about a version of an Lambda layer.

" } }, "com.amazonaws.lambda#LayersList": { @@ -7345,7 +8909,7 @@ } }, "traits": { - "smithy.api#documentation": "

Details about an Lambda\n layer.

" + "smithy.api#documentation": "

Details about an Lambda layer.

" } }, "com.amazonaws.lambda#LayersReferenceList": { @@ -7386,18 +8950,57 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a list of aliases\n for a Lambda function.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve a list of aliases for an AWS Lambda function", + "relativeDocumentation": "API_ListAliases.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Returns a list of aliases for a Lambda function.

", + "smithy.api#examples": [ + { + "title": "To list a function's aliases", + "documentation": "The following example returns a list of aliases for a function named my-function.", + "input": { + "FunctionName": "my-function" + }, + "output": { + "Aliases": [ + { + "AliasArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function:BETA", + "RevisionId": "a410117f-xmpl-494e-8035-7e204bb7933b", + "FunctionVersion": "2", + "Name": "BLUE", + "Description": "Production environment BLUE.", + "RoutingConfig": { + "AdditionalVersionWeights": { + "1": 0.7 + } + } + }, + { + "AliasArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function:LIVE", + "RevisionId": "21d40116-xmpl-40ba-9360-3ea284da1bb5", + "FunctionVersion": "1", + "Name": "GREEN", + "Description": "Production environment GREEN." + } + ] + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2015-03-31/functions/{FunctionName}/aliases", "code": 200 }, "smithy.api#paginated": { - "inputToken": "Marker", - "outputToken": "NextMarker", - "items": "Aliases", - "pageSize": "MaxItems" - } + "items": "Aliases" + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#ListAliasesRequest": { @@ -7406,7 +9009,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function name - MyFunction.

    \n
  • \n
  • \n

    \n Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

    \n
  • \n
  • \n

    \n Partial ARN - 123456789012:function:MyFunction.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function name - MyFunction.

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

  • Partial ARN - 123456789012:function:MyFunction.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -7474,18 +9077,20 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a list of code\n signing configurations. A request returns up to 10,000 configurations per\n call. You can use the MaxItems parameter to return fewer configurations per call.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve a list of AWS Lambda code signing configs", + "relativeDocumentation": "API_ListCodeSigningConfigs.html" + }, + "smithy.api#documentation": "

Returns a list of code signing configurations. A request returns up to 10,000 configurations per call. You can use the MaxItems parameter to return fewer configurations per call.

", "smithy.api#http": { "method": "GET", "uri": "/2020-04-22/code-signing-configs", "code": 200 }, "smithy.api#paginated": { - "inputToken": "Marker", - "outputToken": "NextMarker", - "items": "CodeSigningConfigs", - "pageSize": "MaxItems" - } + "items": "CodeSigningConfigs" + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#ListCodeSigningConfigsRequest": { @@ -7553,18 +9158,42 @@ } ], "traits": { - "smithy.api#documentation": "

Lists event source mappings. Specify an EventSourceArn to show only event source mappings for a\n single event source.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve a list of AWS Lambda event source mappings", + "relativeDocumentation": "API_ListEventSourceMappings.html" + }, + "smithy.api#documentation": "

Lists event source mappings. Specify an EventSourceArn to show only event source mappings for a single event source.

", + "smithy.api#examples": [ + { + "title": "To list the event source mappings for a function", + "documentation": "The following example returns a list of the event source mappings for a function named my-function.", + "input": { + "FunctionName": "my-function" + }, + "output": { + "EventSourceMappings": [ + { + "UUID": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", + "StateTransitionReason": "USER_INITIATED", + "LastModified": 1.569284520333E9, + "BatchSize": 5, + "State": "Enabled", + "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", + "EventSourceArn": "arn:aws:sqs:us-west-2:123456789012:mySQSqueue" + } + ] + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2015-03-31/event-source-mappings", "code": 200 }, "smithy.api#paginated": { - "inputToken": "Marker", - "outputToken": "NextMarker", - "items": "EventSourceMappings", - "pageSize": "MaxItems" - } + "items": "EventSourceMappings" + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#ListEventSourceMappingsRequest": { @@ -7573,14 +9202,14 @@ "EventSourceArn": { "target": "com.amazonaws.lambda#Arn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the event source.

\n
    \n
  • \n

    \n Amazon Kinesis – The ARN of the data stream or a stream consumer.

    \n
  • \n
  • \n

    \n Amazon DynamoDB Streams – The ARN of the stream.

    \n
  • \n
  • \n

    \n Amazon Simple Queue Service – The ARN of the queue.

    \n
  • \n
  • \n

    \n Amazon Managed Streaming for Apache Kafka – The ARN of the cluster or the ARN of the VPC connection (for cross-account event source mappings).

    \n
  • \n
  • \n

    \n Amazon MQ – The ARN of the broker.

    \n
  • \n
  • \n

    \n Amazon DocumentDB – The ARN of the DocumentDB change stream.

    \n
  • \n
", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the event source.

  • Amazon Kinesis – The ARN of the data stream or a stream consumer.

  • Amazon DynamoDB Streams – The ARN of the stream.

  • Amazon Simple Queue Service – The ARN of the queue.

  • Amazon Managed Streaming for Apache Kafka – The ARN of the cluster or the ARN of the VPC connection (for cross-account event source mappings).

  • Amazon MQ – The ARN of the broker.

  • Amazon DocumentDB – The ARN of the DocumentDB change stream.

", "smithy.api#httpQuery": "EventSourceArn" } }, "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function nameMyFunction.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:MyFunction.

    \n
  • \n
  • \n

    \n Version or Alias ARNarn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:MyFunction.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it's limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function nameMyFunction.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:MyFunction.

  • Version or Alias ARNarn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD.

  • Partial ARN123456789012:function:MyFunction.

The length constraint applies only to the full ARN. If you specify only the function name, it's limited to 64 characters in length.

", "smithy.api#httpQuery": "FunctionName" } }, @@ -7594,7 +9223,7 @@ "MaxItems": { "target": "com.amazonaws.lambda#MaxListItems", "traits": { - "smithy.api#documentation": "

The maximum number of event source mappings to return. Note that ListEventSourceMappings returns a maximum of\n 100 items in each response, even if you set the number higher.

", + "smithy.api#documentation": "

The maximum number of event source mappings to return. Note that ListEventSourceMappings returns a maximum of 100 items in each response, even if you set the number higher.

", "smithy.api#httpQuery": "MaxItems" } } @@ -7646,18 +9275,50 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves a list of configurations for asynchronous invocation for a function.

\n

To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve a list of configurations for asynchronous invocation for a function", + "relativeDocumentation": "API_ListFunctionEventInvokeConfigs.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Retrieves a list of configurations for asynchronous invocation for a function.

To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig.

", + "smithy.api#examples": [ + { + "title": "To view a list of asynchronous invocation configurations", + "documentation": "The following example returns a list of asynchronous invocation configurations for a function named my-function.", + "input": { + "FunctionName": "my-function" + }, + "output": { + "FunctionEventInvokeConfigs": [ + { + "LastModified": 1.577824406719E9, + "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:GREEN", + "MaximumRetryAttempts": 2, + "MaximumEventAgeInSeconds": 1800 + }, + { + "LastModified": 1.577824396653E9, + "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:BLUE", + "MaximumRetryAttempts": 0, + "MaximumEventAgeInSeconds": 3600 + } + ] + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2019-09-25/functions/{FunctionName}/event-invoke-config/list", "code": 200 }, - "smithy.api#paginated": { - "inputToken": "Marker", - "outputToken": "NextMarker", - "items": "FunctionEventInvokeConfigs", - "pageSize": "MaxItems" - } + "smithy.api#paginated": { + "items": "FunctionEventInvokeConfigs" + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#ListFunctionEventInvokeConfigsRequest": { @@ -7666,7 +9327,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function name - my-function.

    \n
  • \n
  • \n

    \n Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN - 123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function name - my-function.

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN - 123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -7733,6 +9394,18 @@ } ], "traits": { + "aws.iam#conditionKeys": [ + "lambda:FunctionUrlAuthType" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to read function url configurations for a function", + "relativeDocumentation": "API_ListFunctionUrlConfigs.html", + "resources": { + "required": { + "function": {} + } + } + }, "smithy.api#documentation": "

Returns a list of Lambda function URLs for the specified function.

", "smithy.api#http": { "method": "GET", @@ -7740,11 +9413,9 @@ "code": 200 }, "smithy.api#paginated": { - "inputToken": "Marker", - "outputToken": "NextMarker", - "items": "FunctionUrlConfigs", - "pageSize": "MaxItems" - } + "items": "FunctionUrlConfigs" + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#ListFunctionUrlConfigsRequest": { @@ -7753,7 +9424,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -7768,7 +9439,7 @@ "MaxItems": { "target": "com.amazonaws.lambda#MaxItems", "traits": { - "smithy.api#documentation": "

The maximum number of function URLs to return in the response. Note that ListFunctionUrlConfigs\n returns a maximum of 50 items in each response, even if you set the number higher.

", + "smithy.api#documentation": "

The maximum number of function URLs to return in the response. Note that ListFunctionUrlConfigs returns a maximum of 50 items in each response, even if you set the number higher.

", "smithy.api#httpQuery": "MaxItems" } } @@ -7818,18 +9489,83 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a list of Lambda functions, with the version-specific configuration of each. Lambda returns up to 50\n functions per call.

\n

Set FunctionVersion to ALL to include all published versions of each function in\n addition to the unpublished version.

\n \n

The ListFunctions operation returns a subset of the FunctionConfiguration fields.\n To get the additional fields (State, StateReasonCode, StateReason, LastUpdateStatus, LastUpdateStatusReason,\n LastUpdateStatusReasonCode, RuntimeVersionConfig) for a function or version, use GetFunction.

\n
", + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve a list of AWS Lambda functions, with the version-specific configuration of each function", + "relativeDocumentation": "API_ListFunctions.html" + }, + "smithy.api#documentation": "

Returns a list of Lambda functions, with the version-specific configuration of each. Lambda returns up to 50 functions per call.

Set FunctionVersion to ALL to include all published versions of each function in addition to the unpublished version.

The ListFunctions operation returns a subset of the FunctionConfiguration fields. To get the additional fields (State, StateReasonCode, StateReason, LastUpdateStatus, LastUpdateStatusReason, LastUpdateStatusReasonCode, RuntimeVersionConfig) for a function or version, use GetFunction.

", + "smithy.api#examples": [ + { + "title": "To get a list of Lambda functions", + "documentation": "This operation returns a list of Lambda functions.", + "output": { + "NextMarker": "", + "Functions": [ + { + "TracingConfig": { + "Mode": "PassThrough" + }, + "Version": "$LATEST", + "CodeSha256": "dBG9m8SGdmlEjw/JYXlhhvCrAv5TxvXsbL/RMr0fT/I=", + "FunctionName": "helloworld", + "MemorySize": 128, + "RevisionId": "1718e831-badf-4253-9518-d0644210af7b", + "CodeSize": 294, + "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:helloworld", + "Handler": "helloworld.handler", + "Role": "arn:aws:iam::123456789012:role/service-role/MyTestFunction-role-zgur6bf4", + "Timeout": 3, + "LastModified": "2019-09-23T18:32:33.857+0000", + "Runtime": "nodejs10.x", + "Description": "" + }, + { + "TracingConfig": { + "Mode": "PassThrough" + }, + "Version": "$LATEST", + "CodeSha256": "sU0cJ2/hOZevwV/lTxCuQqK3gDZP3i8gUoqUUVRmY6E=", + "FunctionName": "my-function", + "VpcConfig": { + "SubnetIds": [], + "VpcId": "", + "SecurityGroupIds": [] + }, + "MemorySize": 256, + "RevisionId": "93017fc9-59cb-41dc-901b-4845ce4bf668", + "CodeSize": 266, + "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", + "Handler": "index.handler", + "Role": "arn:aws:iam::123456789012:role/service-role/helloWorldPython-role-uy3l9qyq", + "Timeout": 3, + "LastModified": "2019-10-01T16:47:28.490+0000", + "Runtime": "nodejs10.x", + "Description": "" + } + ] + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2015-03-31/functions", "code": 200 }, "smithy.api#paginated": { - "inputToken": "Marker", - "outputToken": "NextMarker", - "items": "Functions", - "pageSize": "MaxItems" - } + "items": "Functions" + }, + "smithy.api#readonly": {}, + "smithy.test#smokeTests": [ + { + "id": "ListFunctionsSuccess", + "params": {}, + "expect": { + "success": {} + }, + "vendorParams": {}, + "vendorParamsShape": "aws.test#AwsVendorParams" + } + ] } }, "com.amazonaws.lambda#ListFunctionsByCodeSigningConfig": { @@ -7852,18 +9588,25 @@ } ], "traits": { - "smithy.api#documentation": "

List the functions that use the specified code signing configuration. You can use this method prior to deleting a\n code signing configuration, to verify that no functions are using it.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve a list of AWS Lambda functions by the code signing config assigned ", + "relativeDocumentation": "API_ListFunctionsByCodeSigningConfig.html", + "resources": { + "required": { + "code signing config": {} + } + } + }, + "smithy.api#documentation": "

List the functions that use the specified code signing configuration. You can use this method prior to deleting a code signing configuration, to verify that no functions are using it.

", "smithy.api#http": { "method": "GET", "uri": "/2020-04-22/code-signing-configs/{CodeSigningConfigArn}/functions", "code": 200 }, "smithy.api#paginated": { - "inputToken": "Marker", - "outputToken": "NextMarker", - "items": "FunctionArns", - "pageSize": "MaxItems" - } + "items": "FunctionArns" + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#ListFunctionsByCodeSigningConfigRequest": { @@ -7922,7 +9665,7 @@ "MasterRegion": { "target": "com.amazonaws.lambda#MasterRegion", "traits": { - "smithy.api#documentation": "

For Lambda@Edge functions, the Amazon Web Services Region of the master function. For example,\n us-east-1 filters the list of functions to include only Lambda@Edge functions replicated from a\n master function in US East (N. Virginia). If specified, you must set FunctionVersion to\n ALL.

", + "smithy.api#documentation": "

For Lambda@Edge functions, the Amazon Web Services Region of the master function. For example, us-east-1 filters the list of functions to include only Lambda@Edge functions replicated from a master function in US East (N. Virginia). If specified, you must set FunctionVersion to ALL.

", "smithy.api#httpQuery": "MasterRegion" } }, @@ -7943,7 +9686,7 @@ "MaxItems": { "target": "com.amazonaws.lambda#MaxListItems", "traits": { - "smithy.api#documentation": "

The maximum number of functions to return in the response. Note that ListFunctions returns a maximum of 50 items in each response,\n even if you set the number higher.

", + "smithy.api#documentation": "

The maximum number of functions to return in the response. Note that ListFunctions returns a maximum of 50 items in each response, even if you set the number higher.

", "smithy.api#httpQuery": "MaxItems" } } @@ -7996,18 +9739,51 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the versions of an Lambda\n layer. Versions that have been deleted aren't listed. Specify a runtime identifier to list only\n versions that indicate that they're compatible with that runtime. Specify a compatible architecture to include only \n layer versions that are compatible with that architecture.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve a list of versions of an AWS Lambda layer", + "relativeDocumentation": "API_ListLayerVersions.html" + }, + "smithy.api#documentation": "

Lists the versions of an Lambda layer. Versions that have been deleted aren't listed. Specify a runtime identifier to list only versions that indicate that they're compatible with that runtime. Specify a compatible architecture to include only layer versions that are compatible with that architecture.

", + "smithy.api#examples": [ + { + "title": "To list versions of a layer", + "documentation": "The following example displays information about the versions for the layer named blank-java-lib", + "input": { + "LayerName": "blank-java-lib" + }, + "output": { + "LayerVersions": [ + { + "LayerVersionArn": "arn:aws:lambda:us-east-2:123456789012:layer:blank-java-lib:7", + "Version": 7, + "Description": "Dependencies for the blank-java sample app.", + "CreatedDate": "2020-03-18T23:38:42.284+0000", + "CompatibleRuntimes": [ + "java8" + ] + }, + { + "LayerVersionArn": "arn:aws:lambda:us-east-2:123456789012:layer:blank-java-lib:6", + "Version": 6, + "Description": "Dependencies for the blank-java sample app.", + "CreatedDate": "2020-03-17T07:24:21.960+0000", + "CompatibleRuntimes": [ + "java8" + ] + } + ] + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2018-10-31/layers/{LayerName}/versions", "code": 200 }, "smithy.api#paginated": { - "inputToken": "Marker", - "outputToken": "NextMarker", - "items": "LayerVersions", - "pageSize": "MaxItems" - } + "items": "LayerVersions" + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#ListLayerVersionsRequest": { @@ -8016,7 +9792,7 @@ "CompatibleRuntime": { "target": "com.amazonaws.lambda#Runtime", "traits": { - "smithy.api#documentation": "

A runtime identifier. For example, java21.

\n

The following list includes deprecated runtimes. For more information, see Runtime deprecation policy.

", + "smithy.api#documentation": "

A runtime identifier.

The following list includes deprecated runtimes. For more information, see Runtime use after deprecation.

For a list of all currently supported runtimes, see Supported runtimes.

", "smithy.api#httpQuery": "CompatibleRuntime" } }, @@ -8045,7 +9821,7 @@ "CompatibleArchitecture": { "target": "com.amazonaws.lambda#Architecture", "traits": { - "smithy.api#documentation": "

The compatible \ninstruction set architecture.

", + "smithy.api#documentation": "

The compatible instruction set architecture.

", "smithy.api#httpQuery": "CompatibleArchitecture" } } @@ -8094,18 +9870,47 @@ } ], "traits": { - "smithy.api#documentation": "

Lists Lambda\n layers and shows information about the latest version of each. Specify a\n runtime\n identifier to list only layers that indicate that they're compatible with that\n runtime. Specify a compatible architecture to include only layers that are compatible with\n that instruction set architecture.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve a list of AWS Lambda layers, with details about the latest version of each layer", + "relativeDocumentation": "API_ListLayers.html" + }, + "smithy.api#documentation": "

Lists Lambda layers and shows information about the latest version of each. Specify a runtime identifier to list only layers that indicate that they're compatible with that runtime. Specify a compatible architecture to include only layers that are compatible with that instruction set architecture.

", + "smithy.api#examples": [ + { + "title": "To list the layers that are compatible with your function's runtime", + "documentation": "The following example returns information about layers that are compatible with the Python 3.7 runtime.", + "input": { + "CompatibleRuntime": "python3.7" + }, + "output": { + "Layers": [ + { + "LayerName": "my-layer", + "LayerArn": "arn:aws:lambda:us-east-2:123456789012:layer:my-layer", + "LatestMatchingVersion": { + "LayerVersionArn": "arn:aws:lambda:us-east-2:123456789012:layer:my-layer:2", + "Version": 2, + "Description": "My layer", + "CreatedDate": "2018-11-15T00:37:46.592+0000", + "CompatibleRuntimes": [ + "python3.6", + "python3.7" + ] + } + } + ] + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2018-10-31/layers", "code": 200 }, "smithy.api#paginated": { - "inputToken": "Marker", - "outputToken": "NextMarker", - "items": "Layers", - "pageSize": "MaxItems" - } + "items": "Layers" + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#ListLayersRequest": { @@ -8114,7 +9919,7 @@ "CompatibleRuntime": { "target": "com.amazonaws.lambda#Runtime", "traits": { - "smithy.api#documentation": "

A runtime identifier. For example, java21.

\n

The following list includes deprecated runtimes. For more information, see Runtime deprecation policy.

", + "smithy.api#documentation": "

A runtime identifier.

The following list includes deprecated runtimes. For more information, see Runtime use after deprecation.

For a list of all currently supported runtimes, see Supported runtimes.

", "smithy.api#httpQuery": "CompatibleRuntime" } }, @@ -8135,7 +9940,7 @@ "CompatibleArchitecture": { "target": "com.amazonaws.lambda#Architecture", "traits": { - "smithy.api#documentation": "

The compatible \ninstruction set architecture.

", + "smithy.api#documentation": "

The compatible instruction set architecture.

", "smithy.api#httpQuery": "CompatibleArchitecture" } } @@ -8187,18 +9992,54 @@ } ], "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve a list of provisioned concurrency configurations for an AWS Lambda function", + "relativeDocumentation": "API_ListProvisionedConcurrencyConfigs.html", + "resources": { + "required": { + "function": {} + } + } + }, "smithy.api#documentation": "

Retrieves a list of provisioned concurrency configurations for a function.

", + "smithy.api#examples": [ + { + "title": "To get a list of provisioned concurrency configurations", + "documentation": "The following example returns a list of provisioned concurrency configurations for a function named my-function.", + "input": { + "FunctionName": "my-function" + }, + "output": { + "ProvisionedConcurrencyConfigs": [ + { + "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:GREEN", + "RequestedProvisionedConcurrentExecutions": 100, + "AvailableProvisionedConcurrentExecutions": 100, + "AllocatedProvisionedConcurrentExecutions": 100, + "Status": "READY", + "LastModified": "2019-12-31T20:29:00+0000" + }, + { + "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:BLUE", + "RequestedProvisionedConcurrentExecutions": 100, + "AvailableProvisionedConcurrentExecutions": 100, + "AllocatedProvisionedConcurrentExecutions": 100, + "Status": "READY", + "LastModified": "2019-12-31T20:28:49+0000" + } + ] + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2019-09-30/functions/{FunctionName}/provisioned-concurrency?List=ALL", "code": 200 }, "smithy.api#paginated": { - "inputToken": "Marker", - "outputToken": "NextMarker", - "items": "ProvisionedConcurrencyConfigs", - "pageSize": "MaxItems" - } + "items": "ProvisionedConcurrencyConfigs" + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#ListProvisionedConcurrencyConfigsRequest": { @@ -8207,7 +10048,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -8274,21 +10115,48 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a function's tags. You can\n also view tags with GetFunction.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve a list of tags for an AWS Lambda function, event source mapping or code signing configuration resource", + "relativeDocumentation": "API_ListTags.html", + "resources": { + "optional": { + "eventSourceMapping": {}, + "function": {}, + "code signing config": {} + } + } + }, + "smithy.api#documentation": "

Returns a function, event source mapping, or code signing configuration's tags. You can also view function tags with GetFunction.

", + "smithy.api#examples": [ + { + "title": "To retrieve the list of tags for a Lambda function", + "documentation": "The following example displays the tags attached to the my-function Lambda function.", + "input": { + "Resource": "arn:aws:lambda:us-west-2:123456789012:function:my-function" + }, + "output": { + "Tags": { + "Category": "Web Tools", + "Department": "Sales" + } + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2017-03-31/tags/{Resource}", "code": 200 - } + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#ListTagsRequest": { "type": "structure", "members": { "Resource": { - "target": "com.amazonaws.lambda#FunctionArn", + "target": "com.amazonaws.lambda#TaggableResource", "traits": { - "smithy.api#documentation": "

The function's Amazon Resource Name (ARN). \n Note: Lambda does not support adding tags to aliases or versions.

", + "smithy.api#documentation": "

The resource's Amazon Resource Name (ARN). Note: Lambda does not support adding tags to function aliases or versions.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -8335,18 +10203,88 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a list of versions,\n with the version-specific configuration of each. Lambda returns up to 50 versions per call.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve a list of versions for an AWS Lambda function", + "relativeDocumentation": "API_ListVersionsByFunction.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Returns a list of versions, with the version-specific configuration of each. Lambda returns up to 50 versions per call.

", + "smithy.api#examples": [ + { + "title": "To list versions of a function", + "documentation": "The following example returns a list of versions of a function named my-function", + "input": { + "FunctionName": "my-function" + }, + "output": { + "Versions": [ + { + "FunctionName": "my-function", + "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", + "Runtime": "nodejs12.x", + "Role": "arn:aws:iam::123456789012:role/lambda-role", + "Handler": "index.handler", + "CodeSize": 5797206, + "Description": "Process image objects from Amazon S3.", + "Timeout": 15, + "MemorySize": 256, + "LastModified": "2020-04-10T19:06:32.563+0000", + "CodeSha256": "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=", + "Version": "$LATEST", + "Environment": { + "Variables": { + "PREFIX": "inbound", + "BUCKET": "my-bucket-1xpuxmplzrlbh" + } + }, + "KMSKeyArn": "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966", + "TracingConfig": { + "Mode": "Active" + }, + "RevisionId": "850ca006-2d98-4ff4-86db-8766e9d32fe9" + }, + { + "FunctionName": "my-function", + "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", + "Runtime": "nodejs12.x", + "Role": "arn:aws:iam::123456789012:role/lambda-role", + "Handler": "index.handler", + "CodeSize": 5797206, + "Description": "Process image objects from Amazon S3.", + "Timeout": 5, + "MemorySize": 256, + "LastModified": "2020-04-10T19:06:32.563+0000", + "CodeSha256": "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=", + "Version": "1", + "Environment": { + "Variables": { + "PREFIX": "inbound", + "BUCKET": "my-bucket-1xpuxmplzrlbh" + } + }, + "KMSKeyArn": "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966", + "TracingConfig": { + "Mode": "Active" + }, + "RevisionId": "b75dcd81-xmpl-48a8-a75a-93ba8b5b9727" + } + ] + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/2015-03-31/functions/{FunctionName}/versions", "code": 200 }, "smithy.api#paginated": { - "inputToken": "Marker", - "outputToken": "NextMarker", - "items": "Versions", - "pageSize": "MaxItems" - } + "items": "Versions" + }, + "smithy.api#readonly": {} } }, "com.amazonaws.lambda#ListVersionsByFunctionRequest": { @@ -8355,7 +10293,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#NamespacedFunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function name - MyFunction.

    \n
  • \n
  • \n

    \n Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

    \n
  • \n
  • \n

    \n Partial ARN - 123456789012:function:MyFunction.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function name - MyFunction.

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

  • Partial ARN - 123456789012:function:MyFunction.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -8370,7 +10308,7 @@ "MaxItems": { "target": "com.amazonaws.lambda#MaxListItems", "traits": { - "smithy.api#documentation": "

The maximum number of versions to return. Note that ListVersionsByFunction returns a maximum of 50 items in each response, \n even if you set the number higher.

", + "smithy.api#documentation": "

The maximum number of versions to return. Note that ListVersionsByFunction returns a maximum of 50 items in each response, even if you set the number higher.

", "smithy.api#httpQuery": "MaxItems" } } @@ -8459,25 +10397,25 @@ "LogFormat": { "target": "com.amazonaws.lambda#LogFormat", "traits": { - "smithy.api#documentation": "

The format in which Lambda sends your function's application and system logs to CloudWatch. Select between \n plain text and structured JSON.

" + "smithy.api#documentation": "

The format in which Lambda sends your function's application and system logs to CloudWatch. Select between plain text and structured JSON.

" } }, "ApplicationLogLevel": { "target": "com.amazonaws.lambda#ApplicationLogLevel", "traits": { - "smithy.api#documentation": "

Set this property to filter the application logs for your function that Lambda sends to CloudWatch. Lambda only sends application logs at the \n selected level of detail and lower, where TRACE is the highest level and FATAL is the lowest.

" + "smithy.api#documentation": "

Set this property to filter the application logs for your function that Lambda sends to CloudWatch. Lambda only sends application logs at the selected level of detail and lower, where TRACE is the highest level and FATAL is the lowest.

" } }, "SystemLogLevel": { "target": "com.amazonaws.lambda#SystemLogLevel", "traits": { - "smithy.api#documentation": "

Set this property to filter the system logs for your function that Lambda sends to CloudWatch. Lambda only sends system logs at the \n selected level of detail and lower, where DEBUG is the highest level and WARN is the lowest.

" + "smithy.api#documentation": "

Set this property to filter the system logs for your function that Lambda sends to CloudWatch. Lambda only sends system logs at the selected level of detail and lower, where DEBUG is the highest level and WARN is the lowest.

" } }, "LogGroup": { "target": "com.amazonaws.lambda#LogGroup", "traits": { - "smithy.api#documentation": "

The name of the Amazon CloudWatch log group the function sends logs to. By default, Lambda functions send logs to a default \n log group named /aws/lambda/. To use a different log group, enter an existing log group or enter a new log group name.

" + "smithy.api#documentation": "

The name of the Amazon CloudWatch log group the function sends logs to. By default, Lambda functions send logs to a default log group named /aws/lambda/<function name>. To use a different log group, enter an existing log group or enter a new log group name.

" } } }, @@ -8578,6 +10516,15 @@ } } }, + "com.amazonaws.lambda#MaximumNumberOfPollers": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 2000 + } + } + }, "com.amazonaws.lambda#MaximumRecordAgeInSeconds": { "type": "integer", "traits": { @@ -8624,6 +10571,15 @@ "smithy.api#pattern": ".*" } }, + "com.amazonaws.lambda#MinimumNumberOfPollers": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 200 + } + } + }, "com.amazonaws.lambda#NameSpacedFunctionArn": { "type": "string", "traits": { @@ -8667,12 +10623,12 @@ "Destination": { "target": "com.amazonaws.lambda#DestinationArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the destination resource.

\n

To retain records of asynchronous invocations,\n you can configure an Amazon SNS topic, Amazon SQS queue, Lambda function,\n or Amazon EventBridge event bus as the destination.

\n

To retain records of failed invocations from Kinesis and\n DynamoDB event sources, you can configure an Amazon SNS topic or\n Amazon SQS queue as the destination.

\n

To retain records of failed invocations from self-managed Kafka or\n Amazon MSK,\n you can configure an Amazon SNS topic, Amazon SQS queue, or Amazon S3 bucket as the destination.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the destination resource.

To retain records of unsuccessful asynchronous invocations, you can configure an Amazon SNS topic, Amazon SQS queue, Amazon S3 bucket, Lambda function, or Amazon EventBridge event bus as the destination.

To retain records of failed invocations from Kinesis, DynamoDB, self-managed Kafka or Amazon MSK, you can configure an Amazon SNS topic, Amazon SQS queue, or Amazon S3 bucket as the destination.

" } } }, "traits": { - "smithy.api#documentation": "

A destination for events that failed processing.

" + "smithy.api#documentation": "

A destination for events that failed processing. For more information, see Adding a destination.

" } }, "com.amazonaws.lambda#OnSuccess": { @@ -8686,7 +10642,7 @@ } }, "traits": { - "smithy.api#documentation": "

A destination for events that were processed successfully.

" + "smithy.api#documentation": "

A destination for events that were processed successfully.

To retain records of successful asynchronous invocations, you can configure an Amazon SNS topic, Amazon SQS queue, Lambda function, or Amazon EventBridge event bus as the destination.

OnSuccess is not supported in CreateEventSourceMapping or UpdateEventSourceMapping requests.

" } }, "com.amazonaws.lambda#OrganizationId": { @@ -8745,6 +10701,27 @@ "smithy.api#pattern": ".*" } }, + "com.amazonaws.lambda#Permission": { + "type": "resource", + "identifiers": { + "FunctionName": { + "target": "com.amazonaws.lambda#FunctionName" + }, + "StatementId": { + "target": "com.amazonaws.lambda#StatementId" + } + }, + "operations": [ + { + "target": "com.amazonaws.lambda#AddPermission" + } + ], + "collectionOperations": [ + { + "target": "com.amazonaws.lambda#RemovePermission" + } + ] + }, "com.amazonaws.lambda#PolicyLengthExceededException": { "type": "structure", "members": { @@ -8786,7 +10763,7 @@ } }, "traits": { - "smithy.api#documentation": "

The RevisionId provided does not match the latest RevisionId for the Lambda function or alias. Call the GetFunction or the GetAlias\n API operation to retrieve the latest RevisionId for your resource.

", + "smithy.api#documentation": "

The RevisionId provided does not match the latest RevisionId for the Lambda function or alias.

  • For AddPermission and RemovePermission API operations: Call GetPolicy to retrieve the latest RevisionId for your resource.

  • For all other API operations: Call GetFunction or GetAlias to retrieve the latest RevisionId for your resource.

", "smithy.api#error": "client", "smithy.api#httpError": 412 } @@ -8807,6 +10784,26 @@ "smithy.api#pattern": "^o-[a-z0-9]{10,32}$" } }, + "com.amazonaws.lambda#ProvisionedConcurrencyConfig": { + "type": "resource", + "identifiers": { + "FunctionName": { + "target": "com.amazonaws.lambda#FunctionName" + }, + "Qualifier": { + "target": "com.amazonaws.lambda#Qualifier" + } + }, + "put": { + "target": "com.amazonaws.lambda#PutProvisionedConcurrencyConfig" + }, + "read": { + "target": "com.amazonaws.lambda#GetProvisionedConcurrencyConfig" + }, + "delete": { + "target": "com.amazonaws.lambda#DeleteProvisionedConcurrencyConfig" + } + }, "com.amazonaws.lambda#ProvisionedConcurrencyConfigList": { "type": "list", "member": { @@ -8902,6 +10899,26 @@ } } }, + "com.amazonaws.lambda#ProvisionedPollerConfig": { + "type": "structure", + "members": { + "MinimumPollers": { + "target": "com.amazonaws.lambda#MinimumNumberOfPollers", + "traits": { + "smithy.api#documentation": "

The minimum number of event pollers this event source can scale down to.

" + } + }, + "MaximumPollers": { + "target": "com.amazonaws.lambda#MaximumNumberOfPollers", + "traits": { + "smithy.api#documentation": "

The maximum number of event pollers this event source can scale up to.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The provisioned mode configuration for the event source. Use Provisioned Mode to customize the minimum and maximum number of event pollers for your event source. An event poller is a compute unit that provides approximately 5 MBps of throughput.

" + } + }, "com.amazonaws.lambda#PublishLayerVersion": { "type": "operation", "input": { @@ -8928,7 +10945,55 @@ } ], "traits": { - "smithy.api#documentation": "

Creates an Lambda\n layer from a ZIP archive. Each time you call PublishLayerVersion with the same\n layer name, a new version is created.

\n

Add layers to your function with CreateFunction or UpdateFunctionConfiguration.

", + "aws.iam#iamAction": { + "createsResources": [ + "layerVersion" + ], + "documentation": "Grants permission to create an AWS Lambda layer", + "relativeDocumentation": "API_PublishLayerVersion.html", + "resources": { + "required": { + "layer": {} + } + } + }, + "smithy.api#documentation": "

Creates an Lambda layer from a ZIP archive. Each time you call PublishLayerVersion with the same layer name, a new version is created.

Add layers to your function with CreateFunction or UpdateFunctionConfiguration.

", + "smithy.api#examples": [ + { + "title": "To create a Lambda layer version", + "documentation": "The following example creates a new Python library layer version. The command retrieves the layer content a file named layer.zip in the specified S3 bucket.", + "input": { + "LayerName": "my-layer", + "Description": "My Python layer", + "Content": { + "S3Bucket": "lambda-layers-us-west-2-123456789012", + "S3Key": "layer.zip" + }, + "CompatibleRuntimes": [ + "python3.6", + "python3.7" + ], + "LicenseInfo": "MIT" + }, + "output": { + "Content": { + "Location": "https://awslambda-us-west-2-layers.s3.us-west-2.amazonaws.com/snapshots/123456789012/my-layer-4aaa2fbb-ff77-4b0a-ad92-5b78a716a96a?versionId=27iWyA73cCAYqyH...", + "CodeSha256": "tv9jJO+rPbXUUXuRKi7CwHzKtLDkDRJLB3cC3Z/ouXo=", + "CodeSize": 169 + }, + "LayerArn": "arn:aws:lambda:us-west-2:123456789012:layer:my-layer", + "LayerVersionArn": "arn:aws:lambda:us-west-2:123456789012:layer:my-layer:1", + "Description": "My Python layer", + "CreatedDate": "2018-11-14T23:03:52.894+0000", + "Version": 1, + "LicenseInfo": "MIT", + "CompatibleRuntimes": [ + "python3.6", + "python3.7" + ] + } + } + ], "smithy.api#http": { "method": "POST", "uri": "/2018-10-31/layers/{LayerName}/versions", @@ -8963,19 +11028,19 @@ "CompatibleRuntimes": { "target": "com.amazonaws.lambda#CompatibleRuntimes", "traits": { - "smithy.api#documentation": "

A list of compatible function\n runtimes. Used for filtering with ListLayers and ListLayerVersions.

\n

The following list includes deprecated runtimes. For more information, see Runtime deprecation policy.

" + "smithy.api#documentation": "

A list of compatible function runtimes. Used for filtering with ListLayers and ListLayerVersions.

The following list includes deprecated runtimes. For more information, see Runtime deprecation policy.

" } }, "LicenseInfo": { "target": "com.amazonaws.lambda#LicenseInfo", "traits": { - "smithy.api#documentation": "

The layer's software license. It can be any of the following:

\n
    \n
  • \n

    An SPDX license identifier. For example,\n MIT.

    \n
  • \n
  • \n

    The URL of a license hosted on the internet. For example,\n https://opensource.org/licenses/MIT.

    \n
  • \n
  • \n

    The full text of the license.

    \n
  • \n
" + "smithy.api#documentation": "

The layer's software license. It can be any of the following:

  • An SPDX license identifier. For example, MIT.

  • The URL of a license hosted on the internet. For example, https://opensource.org/licenses/MIT.

  • The full text of the license.

" } }, "CompatibleArchitectures": { "target": "com.amazonaws.lambda#CompatibleArchitectures", "traits": { - "smithy.api#documentation": "

A list of compatible \ninstruction set architectures.

" + "smithy.api#documentation": "

A list of compatible instruction set architectures.

" } } }, @@ -9026,7 +11091,7 @@ "CompatibleRuntimes": { "target": "com.amazonaws.lambda#CompatibleRuntimes", "traits": { - "smithy.api#documentation": "

The layer's compatible runtimes.

\n

The following list includes deprecated runtimes. For more information, see Runtime deprecation policy.

" + "smithy.api#documentation": "

The layer's compatible runtimes.

The following list includes deprecated runtimes. For more information, see Runtime use after deprecation.

For a list of all currently supported runtimes, see Supported runtimes.

" } }, "LicenseInfo": { @@ -9038,7 +11103,7 @@ "CompatibleArchitectures": { "target": "com.amazonaws.lambda#CompatibleArchitectures", "traits": { - "smithy.api#documentation": "

A list of compatible \ninstruction set architectures.

" + "smithy.api#documentation": "

A list of compatible instruction set architectures.

" } } }, @@ -9078,7 +11143,54 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a version from the\n current code and configuration of a function. Use versions to create a snapshot of your function code and\n configuration that doesn't change.

\n

Lambda doesn't publish a version if the function's configuration and code haven't changed since the last\n version. Use UpdateFunctionCode or UpdateFunctionConfiguration to update the\n function before publishing a version.

\n

Clients can invoke versions directly or with an alias. To create an alias, use CreateAlias.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to create an AWS Lambda function version", + "relativeDocumentation": "API_PublishVersion.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Creates a version from the current code and configuration of a function. Use versions to create a snapshot of your function code and configuration that doesn't change.

Lambda doesn't publish a version if the function's configuration and code haven't changed since the last version. Use UpdateFunctionCode or UpdateFunctionConfiguration to update the function before publishing a version.

Clients can invoke versions directly or with an alias. To create an alias, use CreateAlias.

", + "smithy.api#examples": [ + { + "title": "To publish a version of a Lambda function", + "documentation": "This operation publishes a version of a Lambda function", + "input": { + "FunctionName": "myFunction", + "CodeSha256": "", + "Description": "" + }, + "output": { + "FunctionName": "my-function", + "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", + "Runtime": "nodejs12.x", + "Role": "arn:aws:iam::123456789012:role/lambda-role", + "Handler": "index.handler", + "CodeSize": 5797206, + "Description": "Process image objects from Amazon S3.", + "Timeout": 5, + "MemorySize": 256, + "LastModified": "2020-04-10T19:06:32.563+0000", + "CodeSha256": "YFgDgEKG3ugvF1+pX64gV6tu9qNuIYNUdgJm8nCxsm4=", + "Version": "1", + "Environment": { + "Variables": { + "PREFIX": "inbound", + "BUCKET": "my-bucket-1xpuxmplzrlbh" + } + }, + "KMSKeyArn": "arn:aws:kms:us-west-2:123456789012:key/b0844d6c-xmpl-4463-97a4-d49f50839966", + "TracingConfig": { + "Mode": "Active" + }, + "RevisionId": "b75dcd81-xmpl-48a8-a75a-93ba8b5b9727", + "State": "Active", + "LastUpdateStatus": "Successful" + } + } + ], "smithy.api#http": { "method": "POST", "uri": "/2015-03-31/functions/{FunctionName}/versions", @@ -9092,7 +11204,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function name - MyFunction.

    \n
  • \n
  • \n

    \n Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

    \n
  • \n
  • \n

    \n Partial ARN - 123456789012:function:MyFunction.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function name - MyFunction.

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

  • Partial ARN - 123456789012:function:MyFunction.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -9100,7 +11212,7 @@ "CodeSha256": { "target": "com.amazonaws.lambda#String", "traits": { - "smithy.api#documentation": "

Only publish a version if the hash value matches the value that's specified. Use this option to avoid\n publishing a version if the function code has changed since you last updated it. You can get the hash for the\n version that you uploaded from the output of UpdateFunctionCode.

" + "smithy.api#documentation": "

Only publish a version if the hash value matches the value that's specified. Use this option to avoid publishing a version if the function code has changed since you last updated it. You can get the hash for the version that you uploaded from the output of UpdateFunctionCode.

" } }, "Description": { @@ -9112,7 +11224,7 @@ "RevisionId": { "target": "com.amazonaws.lambda#String", "traits": { - "smithy.api#documentation": "

Only update the function if the revision ID matches the ID that's specified. Use this option to avoid\n publishing a version if the function configuration has changed since you last updated it.

" + "smithy.api#documentation": "

Only update the function if the revision ID matches the ID that's specified. Use this option to avoid publishing a version if the function configuration has changed since you last updated it.

" } } }, @@ -9149,7 +11261,20 @@ } ], "traits": { - "smithy.api#documentation": "

Update the code signing configuration for the function. Changes to the code signing configuration take effect the\n next time a user tries to deploy a code package to the function.

", + "aws.iam#conditionKeys": [ + "lambda:CodeSigningConfigArn" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to attach a code signing config to an AWS Lambda function", + "relativeDocumentation": "API_PutFunctionCodeSigningConfig.html", + "resources": { + "required": { + "function": {}, + "code signing config": {} + } + } + }, + "smithy.api#documentation": "

Update the code signing configuration for the function. Changes to the code signing configuration take effect the next time a user tries to deploy a code package to the function.

", "smithy.api#http": { "method": "PUT", "uri": "/2020-06-30/functions/{FunctionName}/code-signing-config", @@ -9170,7 +11295,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function name - MyFunction.

    \n
  • \n
  • \n

    \n Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

    \n
  • \n
  • \n

    \n Partial ARN - 123456789012:function:MyFunction.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function name - MyFunction.

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

  • Partial ARN - 123456789012:function:MyFunction.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -9193,7 +11318,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function name - MyFunction.

    \n
  • \n
  • \n

    \n Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

    \n
  • \n
  • \n

    \n Partial ARN - 123456789012:function:MyFunction.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function name - MyFunction.

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

  • Partial ARN - 123456789012:function:MyFunction.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#required": {} } } @@ -9228,7 +11353,29 @@ } ], "traits": { - "smithy.api#documentation": "

Sets the maximum number of simultaneous executions for a function, and reserves capacity for that concurrency\n level.

\n

Concurrency settings apply to the function as a whole, including all published versions and the unpublished\n version. Reserving concurrency both ensures that your function has capacity to process the specified number of\n events simultaneously, and prevents it from scaling beyond that level. Use GetFunction to see\n the current setting for a function.

\n

Use GetAccountSettings to see your Regional concurrency limit. You can reserve concurrency\n for as many functions as you like, as long as you leave at least 100 simultaneous executions unreserved for\n functions that aren't configured with a per-function limit. For more information, see Lambda function scaling.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to configure reserved concurrency for an AWS Lambda function", + "relativeDocumentation": "API_PutFunctionConcurrency.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Sets the maximum number of simultaneous executions for a function, and reserves capacity for that concurrency level.

Concurrency settings apply to the function as a whole, including all published versions and the unpublished version. Reserving concurrency both ensures that your function has capacity to process the specified number of events simultaneously, and prevents it from scaling beyond that level. Use GetFunction to see the current setting for a function.

Use GetAccountSettings to see your Regional concurrency limit. You can reserve concurrency for as many functions as you like, as long as you leave at least 100 simultaneous executions unreserved for functions that aren't configured with a per-function limit. For more information, see Lambda function scaling.

", + "smithy.api#examples": [ + { + "title": "To configure a reserved concurrency limit for a function", + "documentation": "The following example configures 100 reserved concurrent executions for the my-function function.", + "input": { + "FunctionName": "my-function", + "ReservedConcurrentExecutions": 100 + }, + "output": { + "ReservedConcurrentExecutions": 100 + } + } + ], "smithy.api#http": { "method": "PUT", "uri": "/2017-10-31/functions/{FunctionName}/concurrency", @@ -9242,16 +11389,121 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ReservedConcurrentExecutions": { + "target": "com.amazonaws.lambda#ReservedConcurrentExecutions", + "traits": { + "smithy.api#documentation": "

The number of simultaneous executions to reserve for the function.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lambda#PutFunctionEventInvokeConfig": { + "type": "operation", + "input": { + "target": "com.amazonaws.lambda#PutFunctionEventInvokeConfigRequest" + }, + "output": { + "target": "com.amazonaws.lambda#FunctionEventInvokeConfig" + }, + "errors": [ + { + "target": "com.amazonaws.lambda#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.lambda#ResourceConflictException" + }, + { + "target": "com.amazonaws.lambda#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.lambda#ServiceException" + }, + { + "target": "com.amazonaws.lambda#TooManyRequestsException" + } + ], + "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to configures options for asynchronous invocation on an AWS Lambda function, version, or alias", + "relativeDocumentation": "API_PutFunctionEventInvokeConfig.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Configures options for asynchronous invocation on a function, version, or alias. If a configuration already exists for a function, version, or alias, this operation overwrites it. If you exclude any settings, they are removed. To set one option without affecting existing settings for other options, use UpdateFunctionEventInvokeConfig.

By default, Lambda retries an asynchronous invocation twice if the function returns an error. It retains events in a queue for up to six hours. When an event fails all processing attempts or stays in the asynchronous invocation queue for too long, Lambda discards it. To retain discarded events, configure a dead-letter queue with UpdateFunctionConfiguration.

To send an invocation record to a queue, topic, S3 bucket, function, or event bus, specify a destination. You can configure separate destinations for successful invocations (on-success) and events that fail all processing attempts (on-failure). You can configure destinations in addition to or instead of a dead-letter queue.

S3 buckets are supported only for on-failure destinations. To retain records of successful invocations, use another destination type.

", + "smithy.api#examples": [ + { + "title": "To configure error handling for asynchronous invocation", + "documentation": "The following example sets a maximum event age of one hour and disables retries for the specified function.", + "input": { + "FunctionName": "my-function", + "MaximumRetryAttempts": 0, + "MaximumEventAgeInSeconds": 3600 + }, + "output": { + "LastModified": "2016-11-21T19:49:20.006Z", + "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:$LATEST", + "MaximumRetryAttempts": 0, + "MaximumEventAgeInSeconds": 3600, + "DestinationConfig": { + "OnSuccess": {}, + "OnFailure": {} + } + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/2019-09-25/functions/{FunctionName}/event-invoke-config", + "code": 200 + } + } + }, + "com.amazonaws.lambda#PutFunctionEventInvokeConfigRequest": { + "type": "structure", + "members": { + "FunctionName": { + "target": "com.amazonaws.lambda#FunctionName", + "traits": { + "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

Name formats

  • Function name - my-function (name-only), my-function:v1 (with alias).

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN - 123456789012:function:my-function.

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Qualifier": { + "target": "com.amazonaws.lambda#Qualifier", + "traits": { + "smithy.api#documentation": "

A version number or alias name.

", + "smithy.api#httpQuery": "Qualifier" + } + }, + "MaximumRetryAttempts": { + "target": "com.amazonaws.lambda#MaximumRetryAttempts", + "traits": { + "smithy.api#documentation": "

The maximum number of times to retry when the function returns an error.

" } }, - "ReservedConcurrentExecutions": { - "target": "com.amazonaws.lambda#ReservedConcurrentExecutions", + "MaximumEventAgeInSeconds": { + "target": "com.amazonaws.lambda#MaximumEventAgeInSeconds", "traits": { - "smithy.api#documentation": "

The number of simultaneous executions to reserve for the function.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The maximum age of a request that Lambda sends to a function for processing.

" + } + }, + "DestinationConfig": { + "target": "com.amazonaws.lambda#DestinationConfig", + "traits": { + "smithy.api#documentation": "

A destination for events after they have been sent to a function for processing.

Destinations

  • Function - The Amazon Resource Name (ARN) of a Lambda function.

  • Queue - The ARN of a standard SQS queue.

  • Bucket - The ARN of an Amazon S3 bucket.

  • Topic - The ARN of a standard SNS topic.

  • Event Bus - The ARN of an Amazon EventBridge event bus.

S3 buckets are supported only for on-failure destinations. To retain records of successful invocations, use another destination type.

" } } }, @@ -9259,13 +11511,13 @@ "smithy.api#input": {} } }, - "com.amazonaws.lambda#PutFunctionEventInvokeConfig": { + "com.amazonaws.lambda#PutFunctionRecursionConfig": { "type": "operation", "input": { - "target": "com.amazonaws.lambda#PutFunctionEventInvokeConfigRequest" + "target": "com.amazonaws.lambda#PutFunctionRecursionConfigRequest" }, "output": { - "target": "com.amazonaws.lambda#FunctionEventInvokeConfig" + "target": "com.amazonaws.lambda#PutFunctionRecursionConfigResponse" }, "errors": [ { @@ -9285,53 +11537,58 @@ } ], "traits": { - "smithy.api#documentation": "

Configures options for asynchronous\n invocation on a function, version, or alias. If a configuration already exists for a function, version,\n or alias, this operation overwrites it. If you exclude any settings, they are removed. To set one option without\n affecting existing settings for other options, use UpdateFunctionEventInvokeConfig.

\n

By default, Lambda retries an asynchronous invocation twice if the function returns an error. It retains\n events in a queue for up to six hours. When an event fails all processing attempts or stays in the asynchronous\n invocation queue for too long, Lambda discards it. To retain discarded events, configure a dead-letter queue with\n UpdateFunctionConfiguration.

\n

To send an invocation record to a queue, topic, function, or event bus, specify a destination. You can configure separate destinations for successful invocations (on-success) and events\n that fail all processing attempts (on-failure). You can configure destinations in addition to or instead of a\n dead-letter queue.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to update the recursion configuration of an AWS Lambda function", + "relativeDocumentation": "API_PutFunctionRecursionConfig.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Sets your function's recursive loop detection configuration.

When you configure a Lambda function to output to the same service or resource that invokes the function, it's possible to create an infinite recursive loop. For example, a Lambda function might write a message to an Amazon Simple Queue Service (Amazon SQS) queue, which then invokes the same function. This invocation causes the function to write another message to the queue, which in turn invokes the function again.

Lambda can detect certain types of recursive loops shortly after they occur. When Lambda detects a recursive loop and your function's recursive loop detection configuration is set to Terminate, it stops your function being invoked and notifies you.

", "smithy.api#http": { "method": "PUT", - "uri": "/2019-09-25/functions/{FunctionName}/event-invoke-config", + "uri": "/2024-08-31/functions/{FunctionName}/recursion-config", "code": 200 } } }, - "com.amazonaws.lambda#PutFunctionEventInvokeConfigRequest": { + "com.amazonaws.lambda#PutFunctionRecursionConfigRequest": { "type": "structure", "members": { "FunctionName": { - "target": "com.amazonaws.lambda#FunctionName", + "target": "com.amazonaws.lambda#UnqualifiedFunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function name - my-function (name-only), my-function:v1 (with alias).

    \n
  • \n
  • \n

    \n Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN - 123456789012:function:my-function.

    \n
  • \n
\n

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN.\n If you specify only the function name, it is limited to 64 characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "Qualifier": { - "target": "com.amazonaws.lambda#Qualifier", - "traits": { - "smithy.api#documentation": "

A version number or alias name.

", - "smithy.api#httpQuery": "Qualifier" - } - }, - "MaximumRetryAttempts": { - "target": "com.amazonaws.lambda#MaximumRetryAttempts", - "traits": { - "smithy.api#documentation": "

The maximum number of times to retry when the function returns an error.

" - } - }, - "MaximumEventAgeInSeconds": { - "target": "com.amazonaws.lambda#MaximumEventAgeInSeconds", + "RecursiveLoop": { + "target": "com.amazonaws.lambda#RecursiveLoop", "traits": { - "smithy.api#documentation": "

The maximum age of a request that Lambda sends to a function for processing.

" + "smithy.api#documentation": "

If you set your function's recursive loop detection configuration to Allow, Lambda doesn't take any action when it detects your function being invoked as part of a recursive loop. We recommend that you only use this setting if your design intentionally uses a Lambda function to write data back to the same Amazon Web Services resource that invokes it.

If you set your function's recursive loop detection configuration to Terminate, Lambda stops your function being invoked and notifies you when it detects your function being invoked as part of a recursive loop.

By default, Lambda sets your function's configuration to Terminate.

If your design intentionally uses a Lambda function to write data back to the same Amazon Web Services resource that invokes the function, then use caution and implement suitable guard rails to prevent unexpected charges being billed to your Amazon Web Services account. To learn more about best practices for using recursive invocation patterns, see Recursive patterns that cause run-away Lambda functions in Serverless Land.

", + "smithy.api#required": {} } - }, - "DestinationConfig": { - "target": "com.amazonaws.lambda#DestinationConfig", + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.lambda#PutFunctionRecursionConfigResponse": { + "type": "structure", + "members": { + "RecursiveLoop": { + "target": "com.amazonaws.lambda#RecursiveLoop", "traits": { - "smithy.api#documentation": "

A destination for events after they have been sent to a function for processing.

\n

\n Destinations\n

\n
    \n
  • \n

    \n Function - The Amazon Resource Name (ARN) of a Lambda function.

    \n
  • \n
  • \n

    \n Queue - The ARN of a standard SQS queue.

    \n
  • \n
  • \n

    \n Topic - The ARN of a standard SNS topic.

    \n
  • \n
  • \n

    \n Event Bus - The ARN of an Amazon EventBridge event bus.

    \n
  • \n
" + "smithy.api#documentation": "

The status of your function's recursive loop detection configuration.

When this value is set to Allowand Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action.

When this value is set to Terminate and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you.

" } } }, "traits": { - "smithy.api#input": {} + "smithy.api#output": {} } }, "com.amazonaws.lambda#PutProvisionedConcurrencyConfig": { @@ -9360,12 +11617,40 @@ } ], "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to configure provisioned concurrency for an AWS Lambda function's alias or version", + "relativeDocumentation": "API_PutProvisionedConcurrencyConfig.html", + "resources": { + "optional": { + "function version": {}, + "function alias": {} + } + } + }, "smithy.api#documentation": "

Adds a provisioned concurrency configuration to a function's alias or version.

", + "smithy.api#examples": [ + { + "title": "To allocate provisioned concurrency", + "documentation": "The following example allocates 100 provisioned concurrency for the BLUE alias of the specified function.", + "input": { + "FunctionName": "my-function", + "Qualifier": "BLUE", + "ProvisionedConcurrentExecutions": 100 + }, + "output": { + "RequestedProvisionedConcurrentExecutions": 100, + "AllocatedProvisionedConcurrentExecutions": 0, + "Status": "IN_PROGRESS", + "LastModified": "2019-11-21T19:32:12+0000" + } + } + ], "smithy.api#http": { "method": "PUT", "uri": "/2019-09-30/functions/{FunctionName}/provisioned-concurrency", "code": 202 - } + }, + "smithy.api#idempotent": {} } }, "com.amazonaws.lambda#PutProvisionedConcurrencyConfigRequest": { @@ -9374,7 +11659,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -9469,7 +11754,16 @@ } ], "traits": { - "smithy.api#documentation": "

Sets the runtime management configuration for a function's version. For more information, \n see Runtime updates.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to update the runtime management configuration of an AWS Lambda function", + "relativeDocumentation": "API_PutRuntimeManagementConfig.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Sets the runtime management configuration for a function's version. For more information, see Runtime updates.

", "smithy.api#http": { "method": "PUT", "uri": "/2021-07-20/functions/{FunctionName}/runtime-management-config", @@ -9483,7 +11777,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -9491,21 +11785,21 @@ "Qualifier": { "target": "com.amazonaws.lambda#Qualifier", "traits": { - "smithy.api#documentation": "

Specify a version of the function. This can be $LATEST or a published version number. If no value is specified, the configuration for the \n $LATEST version is returned.

", + "smithy.api#documentation": "

Specify a version of the function. This can be $LATEST or a published version number. If no value is specified, the configuration for the $LATEST version is returned.

", "smithy.api#httpQuery": "Qualifier" } }, "UpdateRuntimeOn": { "target": "com.amazonaws.lambda#UpdateRuntimeOn", "traits": { - "smithy.api#documentation": "

Specify the runtime update mode.

\n
    \n
  • \n

    \n Auto (default) - Automatically update to the most recent and secure runtime version using a Two-phase runtime version rollout. This is the best \n choice for most customers to ensure they always benefit from runtime updates.

    \n
  • \n
  • \n

    \n Function update - Lambda updates the runtime of your function to the most recent and secure runtime version when you update your \n function. This approach synchronizes runtime updates with function deployments, giving you control over when runtime updates are applied and allowing you to detect and \n mitigate rare runtime update incompatibilities early. When using this setting, you need to regularly update your functions to keep their runtime up-to-date.

    \n
  • \n
  • \n

    \n Manual - You specify a runtime version in your function configuration. The function will use this runtime version indefinitely. \n In the rare case where a new runtime version is incompatible with an existing function, this allows you to roll back your function to an earlier runtime version. For more information, \n see Roll back a runtime version.

    \n
  • \n
", + "smithy.api#documentation": "

Specify the runtime update mode.

  • Auto (default) - Automatically update to the most recent and secure runtime version using a Two-phase runtime version rollout. This is the best choice for most customers to ensure they always benefit from runtime updates.

  • Function update - Lambda updates the runtime of your function to the most recent and secure runtime version when you update your function. This approach synchronizes runtime updates with function deployments, giving you control over when runtime updates are applied and allowing you to detect and mitigate rare runtime update incompatibilities early. When using this setting, you need to regularly update your functions to keep their runtime up-to-date.

  • Manual - You specify a runtime version in your function configuration. The function will use this runtime version indefinitely. In the rare case where a new runtime version is incompatible with an existing function, this allows you to roll back your function to an earlier runtime version. For more information, see Roll back a runtime version.

", "smithy.api#required": {} } }, "RuntimeVersionArn": { "target": "com.amazonaws.lambda#RuntimeVersionArn", "traits": { - "smithy.api#documentation": "

The ARN of the runtime version you want the function to use.

\n \n

This is only required if you're using the Manual runtime update mode.

\n
" + "smithy.api#documentation": "

The ARN of the runtime version you want the function to use.

This is only required if you're using the Manual runtime update mode.

" } } }, @@ -9533,7 +11827,7 @@ "RuntimeVersionArn": { "target": "com.amazonaws.lambda#RuntimeVersionArn", "traits": { - "smithy.api#documentation": "

The ARN of the runtime the function is configured to use. If the runtime update mode is manual, the ARN is returned, otherwise null \n is returned.

" + "smithy.api#documentation": "

The ARN of the runtime the function is configured to use. If the runtime update mode is manual, the ARN is returned, otherwise null is returned.

" } } }, @@ -9595,6 +11889,23 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.lambda#RecursiveLoop": { + "type": "enum", + "members": { + "Allow": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Allow" + } + }, + "Terminate": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Terminate" + } + } + } + }, "com.amazonaws.lambda#RemoveLayerVersionPermission": { "type": "operation", "input": { @@ -9621,7 +11932,27 @@ } ], "traits": { - "smithy.api#documentation": "

Removes a statement from the permissions policy for a version of an Lambda\n layer. For more information, see\n AddLayerVersionPermission.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to remove a statement from the permissions policy for a version of an AWS Lambda layer", + "relativeDocumentation": "API_RemoveLayerVersionPermission.html", + "resources": { + "required": { + "layerVersion": {} + } + } + }, + "smithy.api#documentation": "

Removes a statement from the permissions policy for a version of an Lambda layer. For more information, see AddLayerVersionPermission.

", + "smithy.api#examples": [ + { + "title": "To delete layer-version permissions", + "documentation": "The following example deletes permission for an account to configure a layer version.", + "input": { + "LayerName": "my-layer", + "VersionNumber": 1, + "StatementId": "xaccount" + } + } + ], "smithy.api#http": { "method": "DELETE", "uri": "/2018-10-31/layers/{LayerName}/versions/{VersionNumber}/policy/{StatementId}", @@ -9660,12 +11991,13 @@ "RevisionId": { "target": "com.amazonaws.lambda#String", "traits": { - "smithy.api#documentation": "

Only update the policy if the revision ID matches the ID specified. Use this option to avoid modifying a\n policy that has changed since you last read it.

", + "smithy.api#documentation": "

Only update the policy if the revision ID matches the ID specified. Use this option to avoid modifying a policy that has changed since you last read it.

", "smithy.api#httpQuery": "RevisionId" } } }, "traits": { + "aws.api#data": "permissions", "smithy.api#input": {} } }, @@ -9695,7 +12027,31 @@ } ], "traits": { - "smithy.api#documentation": "

Revokes function-use permission from an Amazon Web Service or another Amazon Web Services account. You\n can get the ID of the statement from the output of GetPolicy.

", + "aws.iam#conditionKeys": [ + "lambda:FunctionUrlAuthType", + "lambda:Principal" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to revoke function-use permission from an AWS service or another account", + "relativeDocumentation": "API_RemovePermission.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Revokes function-use permission from an Amazon Web Services service or another Amazon Web Services account. You can get the ID of the statement from the output of GetPolicy.

", + "smithy.api#examples": [ + { + "title": "To remove a Lambda function's permissions", + "documentation": "The following example removes a permissions statement named xaccount from the PROD alias of a function named my-function.", + "input": { + "FunctionName": "my-function", + "StatementId": "xaccount", + "Qualifier": "PROD" + } + } + ], "smithy.api#http": { "method": "DELETE", "uri": "/2015-03-31/functions/{FunctionName}/policy/{StatementId}", @@ -9709,7 +12065,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function (name-only), my-function:v1 (with alias).

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN.\n If you specify only the function name, it is limited to 64 characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

Name formats

  • Function namemy-function (name-only), my-function:v1 (with alias).

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -9732,12 +12088,13 @@ "RevisionId": { "target": "com.amazonaws.lambda#String", "traits": { - "smithy.api#documentation": "

Update the policy only if the revision ID matches the ID that's specified. Use this option to avoid modifying a\n policy that has changed since you last read it.

", + "smithy.api#documentation": "

Update the policy only if the revision ID matches the ID that's specified. Use this option to avoid modifying a policy that has changed since you last read it.

", "smithy.api#httpQuery": "RevisionId" } } }, "traits": { + "aws.api#data": "permissions", "smithy.api#input": {} } }, @@ -9752,7 +12109,7 @@ } }, "traits": { - "smithy.api#documentation": "

The request payload exceeded the Invoke request body JSON input quota. For more information, see Lambda\n quotas.

", + "smithy.api#documentation": "

The request payload exceeded the Invoke request body JSON input quota. For more information, see Lambda quotas.

", "smithy.api#error": "client", "smithy.api#httpError": 413 } @@ -9804,7 +12161,7 @@ } }, "traits": { - "smithy.api#documentation": "

The operation conflicts with the resource's availability. For example, you tried to update an event source\n mapping in the CREATING state, or you tried to delete an event source mapping currently UPDATING.

", + "smithy.api#documentation": "

The operation conflicts with the resource's availability. For example, you tried to update an event source mapping in the CREATING state, or you tried to delete an event source mapping currently UPDATING.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -9842,11 +12199,19 @@ } }, "traits": { - "smithy.api#documentation": "

The function is inactive and its VPC connection is no longer available. Wait for the VPC connection to\n reestablish and try again.

", + "smithy.api#documentation": "

The function is inactive and its VPC connection is no longer available. Wait for the VPC connection to reestablish and try again.

", "smithy.api#error": "server", "smithy.api#httpError": 502 } }, + "com.amazonaws.lambda#ResourcePolicy": { + "type": "resource", + "identifiers": { + "TargetArn": { + "target": "com.amazonaws.lambda#ResourceArn" + } + } + }, "com.amazonaws.lambda#ResponseStreamingInvocationType": { "type": "enum", "members": { @@ -10071,6 +12436,12 @@ "smithy.api#enumValue": "ruby3.3" } }, + "ruby34": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ruby3.4" + } + }, "python311": { "target": "smithy.api#Unit", "traits": { @@ -10100,6 +12471,18 @@ "traits": { "smithy.api#enumValue": "java21" } + }, + "python313": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "python3.13" + } + }, + "nodejs22x": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "nodejs22.x" + } } } }, @@ -10195,6 +12578,33 @@ "smithy.api#documentation": "

(Amazon SQS only) The scaling configuration for the event source. To remove the configuration, pass an empty value.

" } }, + "com.amazonaws.lambda#SchemaRegistryEventRecordFormat": { + "type": "enum", + "members": { + "JSON": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "JSON" + } + }, + "SOURCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SOURCE" + } + } + } + }, + "com.amazonaws.lambda#SchemaRegistryUri": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10000 + }, + "smithy.api#pattern": "^[a-zA-Z0-9-\\/*:_+=.@-]*$" + } + }, "com.amazonaws.lambda#SecurityGroupId": { "type": "string" }, @@ -10216,7 +12626,7 @@ "Endpoints": { "target": "com.amazonaws.lambda#Endpoints", "traits": { - "smithy.api#documentation": "

The list of bootstrap servers for your Kafka brokers in the following format: \"KAFKA_BOOTSTRAP_SERVERS\":\n [\"abc.xyz.com:xxxx\",\"abc2.xyz.com:xxxx\"].

" + "smithy.api#documentation": "

The list of bootstrap servers for your Kafka brokers in the following format: \"KAFKA_BOOTSTRAP_SERVERS\": [\"abc.xyz.com:xxxx\",\"abc2.xyz.com:xxxx\"].

" } } }, @@ -10230,7 +12640,13 @@ "ConsumerGroupId": { "target": "com.amazonaws.lambda#URI", "traits": { - "smithy.api#documentation": "

The identifier for the Kafka consumer group to join. The consumer group ID must be unique among all your Kafka event sources.\n After creating a Kafka event source mapping with the consumer group ID specified, you cannot update this value. For more information, see\n Customizable consumer group ID.

" + "smithy.api#documentation": "

The identifier for the Kafka consumer group to join. The consumer group ID must be unique among all your Kafka event sources. After creating a Kafka event source mapping with the consumer group ID specified, you cannot update this value. For more information, see Customizable consumer group ID.

" + } + }, + "SchemaRegistryConfig": { + "target": "com.amazonaws.lambda#KafkaSchemaRegistryConfig", + "traits": { + "smithy.api#documentation": "

Specific configuration settings for a Kafka schema registry.

" } } }, @@ -10283,7 +12699,7 @@ } }, "traits": { - "smithy.api#documentation": "

The function's Lambda SnapStart setting. Set ApplyOn to PublishedVersions to create a\n snapshot of the initialized execution environment when you publish a function version.

" + "smithy.api#documentation": "

The function's Lambda SnapStart setting. Set ApplyOn to PublishedVersions to create a snapshot of the initialized execution environment when you publish a function version.

" } }, "com.amazonaws.lambda#SnapStartApplyOn": { @@ -10314,7 +12730,7 @@ } }, "traits": { - "smithy.api#documentation": "

The afterRestore()\n runtime hook encountered an error. For more information, check the Amazon CloudWatch logs.

", + "smithy.api#documentation": "

The afterRestore() runtime hook encountered an error. For more information, check the Amazon CloudWatch logs.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -10394,7 +12810,7 @@ "Type": { "target": "com.amazonaws.lambda#SourceAccessType", "traits": { - "smithy.api#documentation": "

The type of authentication protocol, VPC components, or virtual host for your event source. For example: \"Type\":\"SASL_SCRAM_512_AUTH\".

\n
    \n
  • \n

    \n BASIC_AUTH – (Amazon MQ) The Secrets Manager secret that stores your broker credentials.

    \n
  • \n
  • \n

    \n BASIC_AUTH – (Self-managed Apache Kafka) The Secrets Manager ARN of your secret key used for SASL/PLAIN authentication of your Apache Kafka brokers.

    \n
  • \n
  • \n

    \n VPC_SUBNET – (Self-managed Apache Kafka) The subnets associated with your VPC. Lambda connects to these subnets to fetch data from your self-managed Apache Kafka cluster.

    \n
  • \n
  • \n

    \n VPC_SECURITY_GROUP – (Self-managed Apache Kafka) The VPC security group used to manage access to your self-managed Apache Kafka brokers.

    \n
  • \n
  • \n

    \n SASL_SCRAM_256_AUTH – (Self-managed Apache Kafka) The Secrets Manager ARN of your secret key used for SASL SCRAM-256 authentication of your self-managed Apache Kafka brokers.

    \n
  • \n
  • \n

    \n SASL_SCRAM_512_AUTH – (Amazon MSK, Self-managed Apache Kafka) The Secrets Manager ARN of your secret key used for SASL SCRAM-512 authentication of your self-managed Apache Kafka brokers.

    \n
  • \n
  • \n

    \n VIRTUAL_HOST –- (RabbitMQ) The name of the virtual host in your RabbitMQ broker. Lambda uses this RabbitMQ host as the event source. \n This property cannot be specified in an UpdateEventSourceMapping API call.

    \n
  • \n
  • \n

    \n CLIENT_CERTIFICATE_TLS_AUTH – (Amazon MSK, self-managed Apache Kafka) The Secrets Manager ARN of your secret key containing the certificate chain (X.509 PEM), \n private key (PKCS#8 PEM), and private key password (optional) used for mutual TLS authentication of your MSK/Apache Kafka brokers.

    \n
  • \n
  • \n

    \n SERVER_ROOT_CA_CERTIFICATE – (Self-managed Apache Kafka) The Secrets Manager ARN of your secret key containing the root CA certificate (X.509 PEM) used for TLS encryption of your Apache Kafka brokers.\n

    \n
  • \n
" + "smithy.api#documentation": "

The type of authentication protocol, VPC components, or virtual host for your event source. For example: \"Type\":\"SASL_SCRAM_512_AUTH\".

  • BASIC_AUTH – (Amazon MQ) The Secrets Manager secret that stores your broker credentials.

  • BASIC_AUTH – (Self-managed Apache Kafka) The Secrets Manager ARN of your secret key used for SASL/PLAIN authentication of your Apache Kafka brokers.

  • VPC_SUBNET – (Self-managed Apache Kafka) The subnets associated with your VPC. Lambda connects to these subnets to fetch data from your self-managed Apache Kafka cluster.

  • VPC_SECURITY_GROUP – (Self-managed Apache Kafka) The VPC security group used to manage access to your self-managed Apache Kafka brokers.

  • SASL_SCRAM_256_AUTH – (Self-managed Apache Kafka) The Secrets Manager ARN of your secret key used for SASL SCRAM-256 authentication of your self-managed Apache Kafka brokers.

  • SASL_SCRAM_512_AUTH – (Amazon MSK, Self-managed Apache Kafka) The Secrets Manager ARN of your secret key used for SASL SCRAM-512 authentication of your self-managed Apache Kafka brokers.

  • VIRTUAL_HOST –- (RabbitMQ) The name of the virtual host in your RabbitMQ broker. Lambda uses this RabbitMQ host as the event source. This property cannot be specified in an UpdateEventSourceMapping API call.

  • CLIENT_CERTIFICATE_TLS_AUTH – (Amazon MSK, self-managed Apache Kafka) The Secrets Manager ARN of your secret key containing the certificate chain (X.509 PEM), private key (PKCS#8 PEM), and private key password (optional) used for mutual TLS authentication of your MSK/Apache Kafka brokers.

  • SERVER_ROOT_CA_CERTIFICATE – (Self-managed Apache Kafka) The Secrets Manager ARN of your secret key containing the root CA certificate (X.509 PEM) used for TLS encryption of your Apache Kafka brokers.

" } }, "URI": { @@ -10700,7 +13116,7 @@ } }, "traits": { - "smithy.api#documentation": "

Lambda couldn't set up VPC access for the Lambda function because one or more\n configured subnets has no available IP addresses.

", + "smithy.api#documentation": "

Lambda couldn't set up VPC access for the Lambda function because one or more configured subnets has no available IP addresses.

", "smithy.api#error": "server", "smithy.api#httpError": 502 } @@ -10778,7 +13194,34 @@ } ], "traits": { - "smithy.api#documentation": "

Adds tags to a function.

", + "aws.iam#conditionKeys": [ + "aws:TagKeys", + "aws:RequestTag/${TagKey}" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to add tags to an AWS Lambda function, event source mapping or code signing configuration resource", + "relativeDocumentation": "API_TagResources.html", + "resources": { + "optional": { + "eventSourceMapping": {}, + "function": {}, + "code signing config": {} + } + } + }, + "smithy.api#documentation": "

Adds tags to a function, event source mapping, or code signing configuration.

", + "smithy.api#examples": [ + { + "title": "To add tags to an existing Lambda function", + "documentation": "The following example adds a tag with the key name DEPARTMENT and a value of 'Department A' to the specified Lambda function.", + "input": { + "Resource": "arn:aws:lambda:us-west-2:123456789012:function:my-function", + "Tags": { + "DEPARTMENT": "Department A" + } + } + } + ], "smithy.api#http": { "method": "POST", "uri": "/2017-03-31/tags/{Resource}", @@ -10790,9 +13233,9 @@ "type": "structure", "members": { "Resource": { - "target": "com.amazonaws.lambda#FunctionArn", + "target": "com.amazonaws.lambda#TaggableResource", "traits": { - "smithy.api#documentation": "

The function's Amazon Resource Name (ARN).

", + "smithy.api#documentation": "

The resource's Amazon Resource Name (ARN).

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -10800,7 +13243,7 @@ "Tags": { "target": "com.amazonaws.lambda#Tags", "traits": { - "smithy.api#documentation": "

A list of tags to apply to the function.

", + "smithy.api#documentation": "

A list of tags to apply to the resource.

", "smithy.api#required": {} } } @@ -10812,6 +13255,16 @@ "com.amazonaws.lambda#TagValue": { "type": "string" }, + "com.amazonaws.lambda#TaggableResource": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + }, + "smithy.api#pattern": "^arn:(aws[a-zA-Z-]*):lambda:[a-z]{2}((-gov)|(-iso([a-z]?)))?-[a-z]+-\\d{1}:\\d{12}:(function:[a-zA-Z0-9-_]+(:(\\$LATEST|[a-zA-Z0-9-_]+))?|code-signing-config:csc-[a-z0-9]{17}|event-source-mapping:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$" + } + }, "com.amazonaws.lambda#Tags": { "type": "map", "key": { @@ -10821,6 +13274,48 @@ "target": "com.amazonaws.lambda#TagValue" } }, + "com.amazonaws.lambda#TagsError": { + "type": "structure", + "members": { + "ErrorCode": { + "target": "com.amazonaws.lambda#TagsErrorCode", + "traits": { + "smithy.api#documentation": "

The error code.

", + "smithy.api#required": {} + } + }, + "Message": { + "target": "com.amazonaws.lambda#TagsErrorMessage", + "traits": { + "smithy.api#documentation": "

The error message.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

An object that contains details about an error related to retrieving tags.

" + } + }, + "com.amazonaws.lambda#TagsErrorCode": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 10, + "max": 21 + }, + "smithy.api#pattern": "^[A-Za-z]+Exception$" + } + }, + "com.amazonaws.lambda#TagsErrorMessage": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 84, + "max": 1000 + }, + "smithy.api#pattern": "^.*$" + } + }, "com.amazonaws.lambda#ThrottleReason": { "type": "enum", "members": { @@ -10932,7 +13427,7 @@ } }, "traits": { - "smithy.api#documentation": "

The function's X-Ray tracing configuration.\n To sample and record incoming requests, set Mode to Active.

" + "smithy.api#documentation": "

The function's X-Ray tracing configuration. To sample and record incoming requests, set Mode to Active.

" } }, "com.amazonaws.lambda#TracingConfigResponse": { @@ -10985,6 +13480,16 @@ "smithy.api#pattern": "^[a-zA-Z0-9-\\/*:_+=.@-]*$" } }, + "com.amazonaws.lambda#UnqualifiedFunctionName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 140 + }, + "smithy.api#pattern": "^(arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}((-gov)|(-iso([a-z]?)))?-[a-z]+-\\d{1}:)?(\\d{12}:)?(function:)?([a-zA-Z0-9-_]+)$" + } + }, "com.amazonaws.lambda#UnreservedConcurrentExecutions": { "type": "integer", "traits": { @@ -11035,7 +13540,33 @@ } ], "traits": { - "smithy.api#documentation": "

Removes tags from a function.

", + "aws.iam#conditionKeys": [ + "aws:TagKeys" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to remove tags from an AWS Lambda function, event source mapping or code signing configuration resource", + "relativeDocumentation": "API_UntagResource.html", + "resources": { + "optional": { + "eventSourceMapping": {}, + "function": {}, + "code signing config": {} + } + } + }, + "smithy.api#documentation": "

Removes tags from a function, event source mapping, or code signing configuration.

", + "smithy.api#examples": [ + { + "title": "To remove tags from an existing Lambda function", + "documentation": "The following example removes the tag with the key name DEPARTMENT tag from the my-function Lambda function.", + "input": { + "Resource": "arn:aws:lambda:us-west-2:123456789012:function:my-function", + "TagKeys": [ + "DEPARTMENT" + ] + } + } + ], "smithy.api#http": { "method": "DELETE", "uri": "/2017-03-31/tags/{Resource}", @@ -11047,9 +13578,9 @@ "type": "structure", "members": { "Resource": { - "target": "com.amazonaws.lambda#FunctionArn", + "target": "com.amazonaws.lambda#TaggableResource", "traits": { - "smithy.api#documentation": "

The function's Amazon Resource Name (ARN).

", + "smithy.api#documentation": "

The resource's Amazon Resource Name (ARN).

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -11057,7 +13588,7 @@ "TagKeys": { "target": "com.amazonaws.lambda#TagKeyList", "traits": { - "smithy.api#documentation": "

A list of tag keys to remove from the function.

", + "smithy.api#documentation": "

A list of tag keys to remove from the resource.

", "smithy.api#httpQuery": "tagKeys", "smithy.api#required": {} } @@ -11096,7 +13627,44 @@ } ], "traits": { + "aws.iam#iamAction": { + "documentation": "Grants permission to update the configuration of an AWS Lambda function's alias", + "relativeDocumentation": "API_UpdateAlias.html", + "resources": { + "required": { + "function": {} + } + } + }, "smithy.api#documentation": "

Updates the configuration of a Lambda function alias.

", + "smithy.api#examples": [ + { + "title": "To update a function alias", + "documentation": "The following example updates the alias named BLUE to send 30% of traffic to version 2 and 70% to version 1.", + "input": { + "FunctionName": "my-function", + "Name": "BLUE", + "FunctionVersion": "2", + "RoutingConfig": { + "AdditionalVersionWeights": { + "1": 0.7 + } + } + }, + "output": { + "FunctionVersion": "2", + "Name": "BLUE", + "AliasArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function:BLUE", + "RevisionId": "594f41fb-xmpl-4c20-95c7-6ca5f2a92c93", + "Description": "Production environment BLUE.", + "RoutingConfig": { + "AdditionalVersionWeights": { + "1": 0.7 + } + } + } + } + ], "smithy.api#http": { "method": "PUT", "uri": "/2015-03-31/functions/{FunctionName}/aliases/{Name}", @@ -11110,7 +13678,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function name - MyFunction.

    \n
  • \n
  • \n

    \n Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

    \n
  • \n
  • \n

    \n Partial ARN - 123456789012:function:MyFunction.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function name - MyFunction.

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction.

  • Partial ARN - 123456789012:function:MyFunction.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -11120,7 +13688,8 @@ "traits": { "smithy.api#documentation": "

The name of the alias.

", "smithy.api#httpLabel": {}, - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.api#resourceIdentifier": "Alias" } }, "FunctionVersion": { @@ -11138,13 +13707,13 @@ "RoutingConfig": { "target": "com.amazonaws.lambda#AliasRoutingConfiguration", "traits": { - "smithy.api#documentation": "

The routing\n configuration of the alias.

" + "smithy.api#documentation": "

The routing configuration of the alias.

" } }, "RevisionId": { "target": "com.amazonaws.lambda#String", "traits": { - "smithy.api#documentation": "

Only update the alias if the revision ID matches the ID that's specified. Use this option to avoid modifying\n an alias that has changed since you last read it.

" + "smithy.api#documentation": "

Only update the alias if the revision ID matches the ID that's specified. Use this option to avoid modifying an alias that has changed since you last read it.

" } } }, @@ -11172,7 +13741,16 @@ } ], "traits": { - "smithy.api#documentation": "

Update the code signing configuration. Changes to the code signing configuration take effect the next time a\n user tries to deploy a code package to the function.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to update an AWS Lambda code signing config", + "relativeDocumentation": "API_UpdateCodeSigningConfig.html", + "resources": { + "required": { + "code signing config": {} + } + } + }, + "smithy.api#documentation": "

Update the code signing configuration. Changes to the code signing configuration take effect the next time a user tries to deploy a code package to the function.

", "smithy.api#http": { "method": "PUT", "uri": "/2020-04-22/code-signing-configs/{CodeSigningConfigArn}", @@ -11258,7 +13836,41 @@ } ], "traits": { - "smithy.api#documentation": "

Updates an event source mapping. You can change the function that Lambda invokes, or pause\n invocation and resume later from the same location.

\n

For details about how to configure different event sources, see the following topics.

\n \n

The following error handling options are available only for stream sources (DynamoDB and Kinesis):

\n
    \n
  • \n

    \n BisectBatchOnFunctionError – If the function returns an error, split the batch in two and retry.

    \n
  • \n
  • \n

    \n DestinationConfig – Send discarded records to an Amazon SQS queue or Amazon SNS topic.

    \n
  • \n
  • \n

    \n MaximumRecordAgeInSeconds – Discard records older than the specified age. The default value is infinite (-1). When set to infinite (-1), failed records are retried until the record expires

    \n
  • \n
  • \n

    \n MaximumRetryAttempts – Discard records after the specified number of retries. The default value is infinite (-1). When set to infinite (-1), failed records are retried until the record expires.

    \n
  • \n
  • \n

    \n ParallelizationFactor – Process multiple batches from each shard concurrently.

    \n
  • \n
\n

For information about which configuration parameters apply to each event source, see the following topics.

\n ", + "aws.iam#conditionKeys": [ + "lambda:FunctionArn" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to update the configuration of an AWS Lambda event source mapping", + "relativeDocumentation": "API_UpdateEventSourceMapping.html", + "resources": { + "required": { + "eventSourceMapping": {} + } + } + }, + "smithy.api#documentation": "

Updates an event source mapping. You can change the function that Lambda invokes, or pause invocation and resume later from the same location.

For details about how to configure different event sources, see the following topics.

The following error handling options are available only for DynamoDB and Kinesis event sources:

  • BisectBatchOnFunctionError – If the function returns an error, split the batch in two and retry.

  • MaximumRecordAgeInSeconds – Discard records older than the specified age. The default value is infinite (-1). When set to infinite (-1), failed records are retried until the record expires

  • MaximumRetryAttempts – Discard records after the specified number of retries. The default value is infinite (-1). When set to infinite (-1), failed records are retried until the record expires.

  • ParallelizationFactor – Process multiple batches from each shard concurrently.

For stream sources (DynamoDB, Kinesis, Amazon MSK, and self-managed Apache Kafka), the following option is also available:

  • OnFailure – Send discarded records to an Amazon SQS queue, Amazon SNS topic, or Amazon S3 bucket. For more information, see Adding a destination.

For information about which configuration parameters apply to each event source, see the following topics.

", + "smithy.api#examples": [ + { + "title": "To update a Lambda function event source mapping", + "documentation": "This operation updates a Lambda function event source mapping", + "input": { + "UUID": "1234xCy789012", + "FunctionName": "myFunction", + "Enabled": true, + "BatchSize": 123 + }, + "output": { + "UUID": "1234xCy789012", + "BatchSize": 123, + "EventSourceArn": "arn:aws:s3:::examplebucket/*", + "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:myFunction", + "LastModified": "2016-11-21T19:49:20.006Z", + "LastProcessingResult": "", + "State": "", + "StateTransitionReason": "" + } + } + ], "smithy.api#http": { "method": "PUT", "uri": "/2015-03-31/event-source-mappings/{UUID}", @@ -11280,31 +13892,31 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function nameMyFunction.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:MyFunction.

    \n
  • \n
  • \n

    \n Version or Alias ARNarn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:MyFunction.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it's limited to 64\n characters in length.

" + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function nameMyFunction.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:MyFunction.

  • Version or Alias ARNarn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD.

  • Partial ARN123456789012:function:MyFunction.

The length constraint applies only to the full ARN. If you specify only the function name, it's limited to 64 characters in length.

" } }, "Enabled": { "target": "com.amazonaws.lambda#Enabled", "traits": { - "smithy.api#documentation": "

When true, the event source mapping is active. When false, Lambda pauses polling and invocation.

\n

Default: True

" + "smithy.api#documentation": "

When true, the event source mapping is active. When false, Lambda pauses polling and invocation.

Default: True

" } }, "BatchSize": { "target": "com.amazonaws.lambda#BatchSize", "traits": { - "smithy.api#documentation": "

The maximum number of records in each batch that Lambda pulls from your stream or queue and sends to your function. Lambda passes all of the records in the batch to the function in a single call, up to the payload limit for synchronous invocation\n (6 MB).

\n
    \n
  • \n

    \n Amazon Kinesis – Default 100. Max 10,000.

    \n
  • \n
  • \n

    \n Amazon DynamoDB Streams – Default 100. Max 10,000.

    \n
  • \n
  • \n

    \n Amazon Simple Queue Service – Default 10. For standard queues the max is 10,000. For FIFO queues the max is 10.

    \n
  • \n
  • \n

    \n Amazon Managed Streaming for Apache Kafka – Default 100. Max 10,000.

    \n
  • \n
  • \n

    \n Self-managed Apache Kafka – Default 100. Max 10,000.

    \n
  • \n
  • \n

    \n Amazon MQ (ActiveMQ and RabbitMQ) – Default 100. Max 10,000.

    \n
  • \n
  • \n

    \n DocumentDB – Default 100. Max 10,000.

    \n
  • \n
" + "smithy.api#documentation": "

The maximum number of records in each batch that Lambda pulls from your stream or queue and sends to your function. Lambda passes all of the records in the batch to the function in a single call, up to the payload limit for synchronous invocation (6 MB).

  • Amazon Kinesis – Default 100. Max 10,000.

  • Amazon DynamoDB Streams – Default 100. Max 10,000.

  • Amazon Simple Queue Service – Default 10. For standard queues the max is 10,000. For FIFO queues the max is 10.

  • Amazon Managed Streaming for Apache Kafka – Default 100. Max 10,000.

  • Self-managed Apache Kafka – Default 100. Max 10,000.

  • Amazon MQ (ActiveMQ and RabbitMQ) – Default 100. Max 10,000.

  • DocumentDB – Default 100. Max 10,000.

" } }, "FilterCriteria": { "target": "com.amazonaws.lambda#FilterCriteria", "traits": { - "smithy.api#documentation": "

An object that defines the filter criteria that\n determine whether Lambda should process an event. For more information, see Lambda event filtering.

" + "smithy.api#documentation": "

An object that defines the filter criteria that determine whether Lambda should process an event. For more information, see Lambda event filtering.

" } }, "MaximumBatchingWindowInSeconds": { "target": "com.amazonaws.lambda#MaximumBatchingWindowInSeconds", "traits": { - "smithy.api#documentation": "

The maximum amount of time, in seconds, that Lambda spends gathering records before invoking the function.\n You can configure MaximumBatchingWindowInSeconds to any value from 0 seconds to 300 seconds in increments of seconds.

\n

For streams and Amazon SQS event sources, the default batching window is 0 seconds. For Amazon MSK, Self-managed Apache Kafka, Amazon MQ, and DocumentDB event sources, the default\n batching window is 500 ms. Note that because you can only change MaximumBatchingWindowInSeconds in increments of seconds, you cannot revert back to the 500 ms default batching window after you have changed it.\n To restore the default batching window, you must create a new event source mapping.

\n

Related setting: For streams and Amazon SQS event sources, when you set BatchSize to a value greater than 10, you must set MaximumBatchingWindowInSeconds to at least 1.

" + "smithy.api#documentation": "

The maximum amount of time, in seconds, that Lambda spends gathering records before invoking the function. You can configure MaximumBatchingWindowInSeconds to any value from 0 seconds to 300 seconds in increments of seconds.

For Kinesis, DynamoDB, and Amazon SQS event sources, the default batching window is 0 seconds. For Amazon MSK, Self-managed Apache Kafka, Amazon MQ, and DocumentDB event sources, the default batching window is 500 ms. Note that because you can only change MaximumBatchingWindowInSeconds in increments of seconds, you cannot revert back to the 500 ms default batching window after you have changed it. To restore the default batching window, you must create a new event source mapping.

Related setting: For Kinesis, DynamoDB, and Amazon SQS event sources, when you set BatchSize to a value greater than 10, you must set MaximumBatchingWindowInSeconds to at least 1.

" } }, "DestinationConfig": { @@ -11361,11 +13973,35 @@ "smithy.api#documentation": "

(Amazon SQS only) The scaling configuration for the event source. For more information, see Configuring maximum concurrency for Amazon SQS event sources.

" } }, + "AmazonManagedKafkaEventSourceConfig": { + "target": "com.amazonaws.lambda#AmazonManagedKafkaEventSourceConfig" + }, + "SelfManagedKafkaEventSourceConfig": { + "target": "com.amazonaws.lambda#SelfManagedKafkaEventSourceConfig" + }, "DocumentDBEventSourceConfig": { "target": "com.amazonaws.lambda#DocumentDBEventSourceConfig", "traits": { "smithy.api#documentation": "

Specific configuration settings for a DocumentDB event source.

" } + }, + "KMSKeyArn": { + "target": "com.amazonaws.lambda#KMSKeyArn", + "traits": { + "smithy.api#documentation": "

The ARN of the Key Management Service (KMS) customer managed key that Lambda uses to encrypt your function's filter criteria. By default, Lambda does not encrypt your filter criteria object. Specify this property to encrypt data using your own customer managed key.

" + } + }, + "MetricsConfig": { + "target": "com.amazonaws.lambda#EventSourceMappingMetricsConfig", + "traits": { + "smithy.api#documentation": "

The metrics configuration for your event source. For more information, see Event source mapping metrics.

" + } + }, + "ProvisionedPollerConfig": { + "target": "com.amazonaws.lambda#ProvisionedPollerConfig", + "traits": { + "smithy.api#documentation": "

(Amazon MSK and self-managed Apache Kafka only) The provisioned mode configuration for the event source. For more information, see provisioned mode.

" + } } }, "traits": { @@ -11413,12 +14049,53 @@ } ], "traits": { - "smithy.api#documentation": "

Updates a Lambda function's code. If code signing is enabled for the function, the code package\n must be signed by a trusted publisher. For more information, see Configuring code signing for Lambda.

\n

If the function's package type is Image, then you must specify the code package in\n ImageUri as the URI of a container image in the Amazon ECR registry.

\n

If the function's package type is Zip, then you must specify the deployment package as a .zip file\n archive. Enter the Amazon S3 bucket and key of the code .zip file location. You can also provide\n the function code inline using the ZipFile field.

\n

The code in the deployment package must be compatible with the target instruction set architecture of the\n function (x86-64 or arm64).

\n

The function's code is locked when you publish a version. You can't modify the code of a published version,\n only the unpublished version.

\n \n

For a function defined as a container image, Lambda resolves the image tag to an image digest. In\n Amazon ECR, if you update the image tag to a new image, Lambda does not automatically\n update the function.

\n
", + "aws.iam#iamAction": { + "documentation": "Grants permission to update the code of an AWS Lambda function", + "relativeDocumentation": "API_UpdateFunctionCode.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Updates a Lambda function's code. If code signing is enabled for the function, the code package must be signed by a trusted publisher. For more information, see Configuring code signing for Lambda.

If the function's package type is Image, then you must specify the code package in ImageUri as the URI of a container image in the Amazon ECR registry.

If the function's package type is Zip, then you must specify the deployment package as a .zip file archive. Enter the Amazon S3 bucket and key of the code .zip file location. You can also provide the function code inline using the ZipFile field.

The code in the deployment package must be compatible with the target instruction set architecture of the function (x86-64 or arm64).

The function's code is locked when you publish a version. You can't modify the code of a published version, only the unpublished version.

For a function defined as a container image, Lambda resolves the image tag to an image digest. In Amazon ECR, if you update the image tag to a new image, Lambda does not automatically update the function.

", + "smithy.api#examples": [ + { + "title": "To update a Lambda function's code", + "documentation": "The following example replaces the code of the unpublished ($LATEST) version of a function named my-function with the contents of the specified zip file in Amazon S3.", + "input": { + "FunctionName": "my-function", + "S3Bucket": "my-bucket-1xpuxmplzrlbh", + "S3Key": "function.zip" + }, + "output": { + "TracingConfig": { + "Mode": "PassThrough" + }, + "CodeSha256": "PFn4S+er27qk+UuZSTKEQfNKG/XNn7QJs90mJgq6oH8=", + "FunctionName": "my-function", + "CodeSize": 308, + "RevisionId": "873282ed-xmpl-4dc8-a069-d0c647e470c6", + "MemorySize": 128, + "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function", + "Version": "$LATEST", + "Role": "arn:aws:iam::123456789012:role/lambda-role", + "Timeout": 3, + "LastModified": "2019-08-14T22:26:11.234+0000", + "Handler": "index.handler", + "Runtime": "nodejs12.x", + "Description": "" + } + } + ], "smithy.api#http": { "method": "PUT", "uri": "/2015-03-31/functions/{FunctionName}/code", "code": 200 - } + }, + "smithy.api#suppress": [ + "DefaultValueInUpdate" + ] } }, "com.amazonaws.lambda#UpdateFunctionCodeRequest": { @@ -11427,7 +14104,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -11435,13 +14112,13 @@ "ZipFile": { "target": "com.amazonaws.lambda#Blob", "traits": { - "smithy.api#documentation": "

The base64-encoded contents of the deployment package. Amazon Web Services SDK and CLI clients \nhandle the encoding for you. Use only with a function defined with a .zip file archive deployment package.

" + "smithy.api#documentation": "

The base64-encoded contents of the deployment package. Amazon Web Services SDK and CLI clients handle the encoding for you. Use only with a function defined with a .zip file archive deployment package.

" } }, "S3Bucket": { "target": "com.amazonaws.lambda#S3Bucket", "traits": { - "smithy.api#documentation": "

An Amazon S3 bucket in the same Amazon Web Services Region as your function. The bucket can be in a different \nAmazon Web Services account. Use only with a function defined with a .zip file archive deployment package.

" + "smithy.api#documentation": "

An Amazon S3 bucket in the same Amazon Web Services Region as your function. The bucket can be in a different Amazon Web Services account. Use only with a function defined with a .zip file archive deployment package.

" } }, "S3Key": { @@ -11459,33 +14136,39 @@ "ImageUri": { "target": "com.amazonaws.lambda#String", "traits": { - "smithy.api#documentation": "

URI of a container image in the Amazon ECR registry. Do not use for a function defined with a .zip\n file archive.

" + "smithy.api#documentation": "

URI of a container image in the Amazon ECR registry. Do not use for a function defined with a .zip file archive.

" } }, "Publish": { "target": "com.amazonaws.lambda#Boolean", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Set to true to publish a new version of the function after updating the code. This has the same effect as\n calling PublishVersion separately.

" + "smithy.api#documentation": "

Set to true to publish a new version of the function after updating the code. This has the same effect as calling PublishVersion separately.

" } }, "DryRun": { "target": "com.amazonaws.lambda#Boolean", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Set to true to validate the request parameters and access permissions without modifying the function\n code.

" + "smithy.api#documentation": "

Set to true to validate the request parameters and access permissions without modifying the function code.

" } }, "RevisionId": { "target": "com.amazonaws.lambda#String", "traits": { - "smithy.api#documentation": "

Update the function only if the revision ID matches the ID that's specified. Use this option to avoid modifying a\n function that has changed since you last read it.

" + "smithy.api#documentation": "

Update the function only if the revision ID matches the ID that's specified. Use this option to avoid modifying a function that has changed since you last read it.

" } }, "Architectures": { "target": "com.amazonaws.lambda#ArchitecturesList", "traits": { - "smithy.api#documentation": "

The instruction set architecture that the function supports. Enter a string array with one of the valid values (arm64 or x86_64).\n The default value is x86_64.

" + "smithy.api#documentation": "

The instruction set architecture that the function supports. Enter a string array with one of the valid values (arm64 or x86_64). The default value is x86_64.

" + } + }, + "SourceKMSKeyArn": { + "target": "com.amazonaws.lambda#KMSKeyArn", + "traits": { + "smithy.api#documentation": "

The ARN of the Key Management Service (KMS) customer managed key that's used to encrypt your function's .zip deployment package. If you don't provide a customer managed key, Lambda uses an Amazon Web Services managed key.

" } } }, @@ -11531,7 +14214,50 @@ } ], "traits": { - "smithy.api#documentation": "

Modify the version-specific settings of a Lambda function.

\n

When you update a function, Lambda provisions an instance of the function and its supporting\n resources. If your function connects to a VPC, this process can take a minute. During this time, you can't modify\n the function, but you can still invoke it. The LastUpdateStatus, LastUpdateStatusReason,\n and LastUpdateStatusReasonCode fields in the response from GetFunctionConfiguration\n indicate when the update is complete and the function is processing events with the new configuration. For more\n information, see Lambda\n function states.

\n

These settings can vary between versions of a function and are locked when you publish a version. You can't\n modify the configuration of a published version, only the unpublished version.

\n

To configure function concurrency, use PutFunctionConcurrency. To grant invoke permissions\n to an Amazon Web Services account or Amazon Web Service, use AddPermission.

", + "aws.iam#conditionKeys": [ + "lambda:VpcIds", + "lambda:SubnetIds", + "lambda:SecurityGroupIds", + "lambda:Layer" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to modify the version-specific settings of an AWS Lambda function", + "relativeDocumentation": "API_UpdateFunctionConfiguration.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Modify the version-specific settings of a Lambda function.

When you update a function, Lambda provisions an instance of the function and its supporting resources. If your function connects to a VPC, this process can take a minute. During this time, you can't modify the function, but you can still invoke it. The LastUpdateStatus, LastUpdateStatusReason, and LastUpdateStatusReasonCode fields in the response from GetFunctionConfiguration indicate when the update is complete and the function is processing events with the new configuration. For more information, see Lambda function states.

These settings can vary between versions of a function and are locked when you publish a version. You can't modify the configuration of a published version, only the unpublished version.

To configure function concurrency, use PutFunctionConcurrency. To grant invoke permissions to an Amazon Web Services account or Amazon Web Services service, use AddPermission.

", + "smithy.api#examples": [ + { + "title": "To update a Lambda function's configuration", + "documentation": "The following example modifies the memory size to be 256 MB for the unpublished ($LATEST) version of a function named my-function.", + "input": { + "FunctionName": "my-function", + "MemorySize": 256 + }, + "output": { + "TracingConfig": { + "Mode": "PassThrough" + }, + "CodeSha256": "PFn4S+er27qk+UuZSTKEQfNKG/XNn7QJs90mJgq6oH8=", + "FunctionName": "my-function", + "CodeSize": 308, + "RevisionId": "873282ed-xmpl-4dc8-a069-d0c647e470c6", + "MemorySize": 256, + "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function", + "Version": "$LATEST", + "Role": "arn:aws:iam::123456789012:role/lambda-role", + "Timeout": 3, + "LastModified": "2019-08-14T22:26:11.234+0000", + "Handler": "index.handler", + "Runtime": "nodejs12.x", + "Description": "" + } + } + ], "smithy.api#http": { "method": "PUT", "uri": "/2015-03-31/functions/{FunctionName}/configuration", @@ -11545,7 +14271,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -11559,7 +14285,7 @@ "Handler": { "target": "com.amazonaws.lambda#Handler", "traits": { - "smithy.api#documentation": "

The name of the method within your code that Lambda calls to run your function. \nHandler is required if the deployment package is a .zip file archive. The format includes the\n file name. It can also include namespaces and other qualifiers, depending on the runtime. For more information,\n see Lambda programming model.

" + "smithy.api#documentation": "

The name of the method within your code that Lambda calls to run your function. Handler is required if the deployment package is a .zip file archive. The format includes the file name. It can also include namespaces and other qualifiers, depending on the runtime. For more information, see Lambda programming model.

" } }, "Description": { @@ -11571,19 +14297,19 @@ "Timeout": { "target": "com.amazonaws.lambda#Timeout", "traits": { - "smithy.api#documentation": "

The amount of time (in seconds) that Lambda allows a function to run before stopping it. The default is 3 seconds. The\n maximum allowed value is 900 seconds. For more information, see Lambda execution environment.

" + "smithy.api#documentation": "

The amount of time (in seconds) that Lambda allows a function to run before stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds. For more information, see Lambda execution environment.

" } }, "MemorySize": { "target": "com.amazonaws.lambda#MemorySize", "traits": { - "smithy.api#documentation": "

The amount of memory available to the function at runtime.\n Increasing the function memory also increases its CPU allocation. The default value is 128 MB. The value can be any multiple of 1 MB.

" + "smithy.api#documentation": "

The amount of memory available to the function at runtime. Increasing the function memory also increases its CPU allocation. The default value is 128 MB. The value can be any multiple of 1 MB.

" } }, "VpcConfig": { "target": "com.amazonaws.lambda#VpcConfig", "traits": { - "smithy.api#documentation": "

For network connectivity to Amazon Web Services resources in a VPC, specify a list of security groups and subnets in the VPC.\n When you connect a function to a VPC, it can access resources and the internet only through that VPC. For more\n information, see Configuring a Lambda function to access resources in a VPC.

" + "smithy.api#documentation": "

For network connectivity to Amazon Web Services resources in a VPC, specify a list of security groups and subnets in the VPC. When you connect a function to a VPC, it can access resources and the internet only through that VPC. For more information, see Configuring a Lambda function to access resources in a VPC.

" } }, "Environment": { @@ -11595,37 +14321,37 @@ "Runtime": { "target": "com.amazonaws.lambda#Runtime", "traits": { - "smithy.api#documentation": "

The identifier of the function's runtime. Runtime is required if the deployment package is a .zip file archive.

\n

The following list includes deprecated runtimes. For more information, see Runtime deprecation policy.

" + "smithy.api#documentation": "

The identifier of the function's runtime. Runtime is required if the deployment package is a .zip file archive. Specifying a runtime results in an error if you're deploying a function using a container image.

The following list includes deprecated runtimes. Lambda blocks creating new functions and updating existing functions shortly after each runtime is deprecated. For more information, see Runtime use after deprecation.

For a list of all currently supported runtimes, see Supported runtimes.

" } }, "DeadLetterConfig": { "target": "com.amazonaws.lambda#DeadLetterConfig", "traits": { - "smithy.api#documentation": "

A dead-letter queue configuration that specifies the queue or topic where Lambda sends asynchronous events\n when they fail processing. For more information, see Dead-letter queues.

" + "smithy.api#documentation": "

A dead-letter queue configuration that specifies the queue or topic where Lambda sends asynchronous events when they fail processing. For more information, see Dead-letter queues.

" } }, "KMSKeyArn": { "target": "com.amazonaws.lambda#KMSKeyArn", "traits": { - "smithy.api#documentation": "

The ARN of the Key Management Service (KMS) customer managed key that's used to encrypt your function's \nenvironment variables. When \nLambda SnapStart is activated, Lambda also uses \nthis key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to \nencrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR).\nIf you don't provide a customer managed key, Lambda uses a default service key.

" + "smithy.api#documentation": "

The ARN of the Key Management Service (KMS) customer managed key that's used to encrypt the following resources:

  • The function's environment variables.

  • The function's Lambda SnapStart snapshots.

  • When used with SourceKMSKeyArn, the unzipped version of the .zip deployment package that's used for function invocations. For more information, see Specifying a customer managed key for Lambda.

  • The optimized version of the container image that's used for function invocations. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). For more information, see Function lifecycle.

If you don't provide a customer managed key, Lambda uses an Amazon Web Services owned key or an Amazon Web Services managed key.

" } }, "TracingConfig": { "target": "com.amazonaws.lambda#TracingConfig", "traits": { - "smithy.api#documentation": "

Set Mode to Active to sample and trace a subset of incoming requests with\nX-Ray.

" + "smithy.api#documentation": "

Set Mode to Active to sample and trace a subset of incoming requests with X-Ray.

" } }, "RevisionId": { "target": "com.amazonaws.lambda#String", "traits": { - "smithy.api#documentation": "

Update the function only if the revision ID matches the ID that's specified. Use this option to avoid modifying a\n function that has changed since you last read it.

" + "smithy.api#documentation": "

Update the function only if the revision ID matches the ID that's specified. Use this option to avoid modifying a function that has changed since you last read it.

" } }, "Layers": { "target": "com.amazonaws.lambda#LayerList", "traits": { - "smithy.api#documentation": "

A list of function layers\n to add to the function's execution environment. Specify each layer by its ARN, including the version.

" + "smithy.api#documentation": "

A list of function layers to add to the function's execution environment. Specify each layer by its ARN, including the version.

" } }, "FileSystemConfigs": { @@ -11637,13 +14363,13 @@ "ImageConfig": { "target": "com.amazonaws.lambda#ImageConfig", "traits": { - "smithy.api#documentation": "

\n Container image configuration\n values that override the values in the container image Docker file.

" + "smithy.api#documentation": "

Container image configuration values that override the values in the container image Docker file.

" } }, "EphemeralStorage": { "target": "com.amazonaws.lambda#EphemeralStorage", "traits": { - "smithy.api#documentation": "

The size of the function's /tmp directory in MB. The default value is 512, but can be any whole\n number between 512 and 10,240 MB. For more information, see Configuring ephemeral storage (console).

" + "smithy.api#documentation": "

The size of the function's /tmp directory in MB. The default value is 512, but can be any whole number between 512 and 10,240 MB. For more information, see Configuring ephemeral storage (console).

" } }, "SnapStart": { @@ -11689,7 +14415,42 @@ } ], "traits": { - "smithy.api#documentation": "

Updates the configuration for asynchronous invocation for a function, version, or alias.

\n

To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig.

", + "aws.iam#iamAction": { + "documentation": "Grants permission to modify the configuration for asynchronous invocation for an AWS Lambda function, version, or alias", + "relativeDocumentation": "API_UpdateFunctionEventInvokeConfig.html", + "resources": { + "required": { + "function": {} + } + } + }, + "smithy.api#documentation": "

Updates the configuration for asynchronous invocation for a function, version, or alias.

To configure options for asynchronous invocation, use PutFunctionEventInvokeConfig.

", + "smithy.api#examples": [ + { + "title": "To update an asynchronous invocation configuration", + "documentation": "The following example adds an on-failure destination to the existing asynchronous invocation configuration for a function named my-function.", + "input": { + "FunctionName": "my-function", + "DestinationConfig": { + "OnFailure": { + "Destination": "arn:aws:sqs:us-east-2:123456789012:destination" + } + } + }, + "output": { + "LastModified": 1.573687896493E9, + "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:$LATEST", + "MaximumRetryAttempts": 0, + "MaximumEventAgeInSeconds": 3600, + "DestinationConfig": { + "OnSuccess": {}, + "OnFailure": { + "Destination": "arn:aws:sqs:us-east-2:123456789012:destination" + } + } + } + } + ], "smithy.api#http": { "method": "POST", "uri": "/2019-09-25/functions/{FunctionName}/event-invoke-config", @@ -11703,7 +14464,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function name - my-function (name-only), my-function:v1 (with alias).

    \n
  • \n
  • \n

    \n Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN - 123456789012:function:my-function.

    \n
  • \n
\n

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN.\n If you specify only the function name, it is limited to 64 characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function, version, or alias.

Name formats

  • Function name - my-function (name-only), my-function:v1 (with alias).

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN - 123456789012:function:my-function.

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -11730,7 +14491,7 @@ "DestinationConfig": { "target": "com.amazonaws.lambda#DestinationConfig", "traits": { - "smithy.api#documentation": "

A destination for events after they have been sent to a function for processing.

\n

\n Destinations\n

\n
    \n
  • \n

    \n Function - The Amazon Resource Name (ARN) of a Lambda function.

    \n
  • \n
  • \n

    \n Queue - The ARN of a standard SQS queue.

    \n
  • \n
  • \n

    \n Topic - The ARN of a standard SNS topic.

    \n
  • \n
  • \n

    \n Event Bus - The ARN of an Amazon EventBridge event bus.

    \n
  • \n
" + "smithy.api#documentation": "

A destination for events after they have been sent to a function for processing.

Destinations

  • Function - The Amazon Resource Name (ARN) of a Lambda function.

  • Queue - The ARN of a standard SQS queue.

  • Bucket - The ARN of an Amazon S3 bucket.

  • Topic - The ARN of a standard SNS topic.

  • Event Bus - The ARN of an Amazon EventBridge event bus.

S3 buckets are supported only for on-failure destinations. To retain records of successful invocations, use another destination type.

" } } }, @@ -11764,6 +14525,19 @@ } ], "traits": { + "aws.iam#conditionKeys": [ + "lambda:FunctionArn", + "lambda:FunctionUrlAuthType" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to update a function url configuration for a Lambda function", + "relativeDocumentation": "API_UpdateFunctionUrlConfig.html", + "resources": { + "required": { + "function": {} + } + } + }, "smithy.api#documentation": "

Updates the configuration for a Lambda function URL.

", "smithy.api#http": { "method": "PUT", @@ -11778,7 +14552,7 @@ "FunctionName": { "target": "com.amazonaws.lambda#FunctionName", "traits": { - "smithy.api#documentation": "

The name or ARN of the Lambda function.

\n

\n Name formats\n

\n
    \n
  • \n

    \n Function namemy-function.

    \n
  • \n
  • \n

    \n Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

    \n
  • \n
  • \n

    \n Partial ARN123456789012:function:my-function.

    \n
  • \n
\n

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64\n characters in length.

", + "smithy.api#documentation": "

The name or ARN of the Lambda function.

Name formats

  • Function namemy-function.

  • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function.

  • Partial ARN123456789012:function:my-function.

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -11793,19 +14567,19 @@ "AuthType": { "target": "com.amazonaws.lambda#FunctionUrlAuthType", "traits": { - "smithy.api#documentation": "

The type of authentication that your function URL uses. Set to AWS_IAM if you want to restrict access to authenticated\n users only. Set to NONE if you want to bypass IAM authentication to create a public endpoint. For more information,\n see Security and auth model for Lambda function URLs.

" + "smithy.api#documentation": "

The type of authentication that your function URL uses. Set to AWS_IAM if you want to restrict access to authenticated users only. Set to NONE if you want to bypass IAM authentication to create a public endpoint. For more information, see Security and auth model for Lambda function URLs.

" } }, "Cors": { "target": "com.amazonaws.lambda#Cors", "traits": { - "smithy.api#documentation": "

The cross-origin resource sharing (CORS) settings\n for your function URL.

" + "smithy.api#documentation": "

The cross-origin resource sharing (CORS) settings for your function URL.

" } }, "InvokeMode": { "target": "com.amazonaws.lambda#InvokeMode", "traits": { - "smithy.api#documentation": "

Use one of the following options:

\n
    \n
  • \n

    \n BUFFERED – This is the default option. Lambda invokes your function using the Invoke API operation. Invocation results \n are available when the payload is complete. The maximum payload size is 6 MB.

    \n
  • \n
  • \n

    \n RESPONSE_STREAM – Your function streams payload results as they become available. Lambda invokes your function using \n the InvokeWithResponseStream API operation. The maximum response payload size is 20 MB, however, you can request a quota increase.

    \n
  • \n
" + "smithy.api#documentation": "

Use one of the following options:

  • BUFFERED – This is the default option. Lambda invokes your function using the Invoke API operation. Invocation results are available when the payload is complete. The maximum payload size is 6 MB.

  • RESPONSE_STREAM – Your function streams payload results as they become available. Lambda invokes your function using the InvokeWithResponseStream API operation. The maximum response payload size is 200 MB.

" } } }, @@ -11833,14 +14607,14 @@ "AuthType": { "target": "com.amazonaws.lambda#FunctionUrlAuthType", "traits": { - "smithy.api#documentation": "

The type of authentication that your function URL uses. Set to AWS_IAM if you want to restrict access to authenticated\n users only. Set to NONE if you want to bypass IAM authentication to create a public endpoint. For more information,\n see Security and auth model for Lambda function URLs.

", + "smithy.api#documentation": "

The type of authentication that your function URL uses. Set to AWS_IAM if you want to restrict access to authenticated users only. Set to NONE if you want to bypass IAM authentication to create a public endpoint. For more information, see Security and auth model for Lambda function URLs.

", "smithy.api#required": {} } }, "Cors": { "target": "com.amazonaws.lambda#Cors", "traits": { - "smithy.api#documentation": "

The cross-origin resource sharing (CORS) settings\n for your function URL.

" + "smithy.api#documentation": "

The cross-origin resource sharing (CORS) settings for your function URL.

" } }, "CreationTime": { @@ -11860,7 +14634,7 @@ "InvokeMode": { "target": "com.amazonaws.lambda#InvokeMode", "traits": { - "smithy.api#documentation": "

Use one of the following options:

\n
    \n
  • \n

    \n BUFFERED – This is the default option. Lambda invokes your function using the Invoke API operation. Invocation results \n are available when the payload is complete. The maximum payload size is 6 MB.

    \n
  • \n
  • \n

    \n RESPONSE_STREAM – Your function streams payload results as they become available. Lambda invokes your function using \n the InvokeWithResponseStream API operation. The maximum response payload size is 20 MB, however, you can request a quota increase.

    \n
  • \n
" + "smithy.api#documentation": "

Use one of the following options:

  • BUFFERED – This is the default option. Lambda invokes your function using the Invoke API operation. Invocation results are available when the payload is complete. The maximum payload size is 6 MB.

  • RESPONSE_STREAM – Your function streams payload results as they become available. Lambda invokes your function using the InvokeWithResponseStream API operation. The maximum response payload size is 200 MB.

" } } }, @@ -11924,7 +14698,7 @@ } }, "traits": { - "smithy.api#documentation": "

The VPC security groups and subnets that are attached to a Lambda function. For more information,\n see Configuring a Lambda\n function to access resources in a VPC.

" + "smithy.api#documentation": "

The VPC security groups and subnets that are attached to a Lambda function. For more information, see Configuring a Lambda function to access resources in a VPC.

" } }, "com.amazonaws.lambda#VpcConfigResponse": { diff --git a/aws/sdk/aws-models/polly.json b/aws/sdk/aws-models/polly.json index 5bac0ca4229..d0e18abbf0d 100644 --- a/aws/sdk/aws-models/polly.json +++ b/aws/sdk/aws-models/polly.json @@ -158,7 +158,20 @@ "method": "GET", "uri": "/v1/voices", "code": 200 - } + }, + "smithy.test#smokeTests": [ + { + "id": "DescribeVoicesSuccess", + "params": {}, + "vendorParams": { + "region": "us-west-2" + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "expect": { + "success": {} + } + } + ] } }, "com.amazonaws.polly#DescribeVoicesInput": { @@ -751,6 +764,24 @@ "traits": { "smithy.api#enumValue": "fr-BE" } + }, + "cs_CZ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "cs-CZ" + } + }, + "de_CH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "de-CH" + } + }, + "en_SG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "en-SG" + } } } }, @@ -1162,6 +1193,12 @@ "smithy.api#enumValue": "mp3" } }, + "OGG_OPUS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ogg_opus" + } + }, "OGG_VORBIS": { "target": "smithy.api#Unit", "traits": { @@ -2024,17 +2061,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -2048,17 +2074,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -2072,17 +2087,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -2096,17 +2100,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -2221,7 +2214,7 @@ "documentation": "Stores a pronunciation lexicon in an AWS Region.", "input": { "Name": "W3C", - "Content": "file://example.pls" + "Content": "" }, "output": {} } @@ -2695,7 +2688,7 @@ "Engine": { "target": "com.amazonaws.polly#Engine", "traits": { - "smithy.api#documentation": "

Specifies the engine (standard, neural,\n long-form, or generative) for Amazon Polly\n to use when processing input text for speech synthesis. Provide an engine\n that is supported by the voice you select. If you don't provide an engine,\n the standard engine is selected by default. If a chosen voice isn't supported\n by the standard engine, this will result in an error. For information on\n Amazon Polly voices and which voices are available for each engine, see Available Voices.

\n

Type: String

\n

Valid Values: standard | neural |\n long-form | generative\n

\n

Required: Yes

" + "smithy.api#documentation": "

Specifies the engine (standard, neural,\n long-form, or generative) for Amazon Polly\n to use when processing input text for speech synthesis. Provide an engine\n that is supported by the voice you select. If you don't provide an engine,\n the standard engine is selected by default. If a chosen voice isn't supported\n by the standard engine, this will result in an error. For information on\n Amazon Polly voices and which voices are available for each engine, see Available Voices.

" } }, "LanguageCode": { @@ -2720,7 +2713,7 @@ "SampleRate": { "target": "com.amazonaws.polly#SampleRate", "traits": { - "smithy.api#documentation": "

The audio frequency specified in Hz.

\n

The valid values for mp3 and ogg_vorbis are \"8000\", \"16000\", \"22050\",\n and \"24000\". The default value for standard voices is \"22050\". The default\n value for neural voices is \"24000\". The default value for long-form voices\n is \"24000\". The default value for generative voices is \"24000\".

\n

Valid values for pcm are \"8000\" and \"16000\" The default value is\n \"16000\".

" + "smithy.api#documentation": "

The audio frequency specified in Hz.

\n

The valid values for mp3 and ogg_vorbis are \"8000\", \"16000\", \"22050\", \"24000\", \"44100\" and \"48000\". The default value for standard voices is \"22050\". The default\n value for neural voices is \"24000\". The default value for long-form voices\n is \"24000\". The default value for generative voices is \"24000\".

\n

Valid values for pcm are \"8000\" and \"16000\" The default value is\n \"16000\".

" } }, "SpeechMarkTypes": { @@ -3510,6 +3503,30 @@ "traits": { "smithy.api#enumValue": "Burcu" } + }, + "Jitka": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Jitka" + } + }, + "Sabrina": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Sabrina" + } + }, + "Jasmine": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Jasmine" + } + }, + "Jihye": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Jihye" + } } } }, diff --git a/aws/sdk/aws-models/qldb-session.json b/aws/sdk/aws-models/qldb-session.json index ce7bbdaedba..4fcbb5c2ac6 100644 --- a/aws/sdk/aws-models/qldb-session.json +++ b/aws/sdk/aws-models/qldb-session.json @@ -1039,17 +1039,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -1063,17 +1052,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -1087,17 +1065,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -1111,17 +1078,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { diff --git a/aws/sdk/aws-models/route53.json b/aws/sdk/aws-models/route-53.json similarity index 96% rename from aws/sdk/aws-models/route53.json rename to aws/sdk/aws-models/route-53.json index f958d98dbf3..dc6d87943e5 100644 --- a/aws/sdk/aws-models/route53.json +++ b/aws/sdk/aws-models/route-53.json @@ -846,6 +846,57 @@ }, "type": "endpoint" }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws-eusc" + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + } + ], + "endpoint": { + "url": "https://route53.amazonaws.eu", + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "route53", + "signingRegion": "eusc-de-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, { "conditions": [ { @@ -1383,17 +1434,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -1407,17 +1447,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -1462,17 +1491,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -1486,17 +1504,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -3443,6 +3450,54 @@ "traits": { "smithy.api#enumValue": "ca-west-1" } + }, + "ap_southeast_5": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-southeast-5" + } + }, + "mx_central_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "mx-central-1" + } + }, + "us_isof_south_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "us-isof-south-1" + } + }, + "us_isof_east_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "us-isof-east-1" + } + }, + "ap_southeast_7": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-southeast-7" + } + }, + "ap_east_2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-east-2" + } + }, + "eu_isoe_west_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "eu-isoe-west-1" + } + }, + "ap_southeast_6": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-southeast-6" + } } }, "traits": { @@ -4033,7 +4088,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a configuration for DNS query logging. After you create a query logging\n\t\t\tconfiguration, Amazon Route 53 begins to publish log data to an Amazon CloudWatch Logs\n\t\t\tlog group.

\n

DNS query logs contain information about the queries that Route 53 receives for a\n\t\t\tspecified public hosted zone, such as the following:

\n
    \n
  • \n

    Route 53 edge location that responded to the DNS query

    \n
  • \n
  • \n

    Domain or subdomain that was requested

    \n
  • \n
  • \n

    DNS record type, such as A or AAAA

    \n
  • \n
  • \n

    DNS response code, such as NoError or\n\t\t\t\t\tServFail\n

    \n
  • \n
\n
\n
Log Group and Resource Policy
\n
\n

Before you create a query logging configuration, perform the following\n\t\t\t\t\t\toperations.

\n \n

If you create a query logging configuration using the Route 53\n\t\t\t\t\t\t\tconsole, Route 53 performs these operations automatically.

\n
\n
    \n
  1. \n

    Create a CloudWatch Logs log group, and make note of the ARN,\n\t\t\t\t\t\t\t\twhich you specify when you create a query logging configuration.\n\t\t\t\t\t\t\t\tNote the following:

    \n
      \n
    • \n

      You must create the log group in the us-east-1\n\t\t\t\t\t\t\t\t\t\tregion.

      \n
    • \n
    • \n

      You must use the same Amazon Web Services account to create\n\t\t\t\t\t\t\t\t\t\tthe log group and the hosted zone that you want to configure\n\t\t\t\t\t\t\t\t\t\tquery logging for.

      \n
    • \n
    • \n

      When you create log groups for query logging, we recommend\n\t\t\t\t\t\t\t\t\t\tthat you use a consistent prefix, for example:

      \n

      \n /aws/route53/hosted zone\n\t\t\t\t\t\t\t\t\t\t\tname\n \n

      \n

      In the next step, you'll create a resource policy, which\n\t\t\t\t\t\t\t\t\t\tcontrols access to one or more log groups and the associated\n\t\t\t\t\t\t\t\t\t\t\tAmazon Web Services resources, such as Route 53 hosted\n\t\t\t\t\t\t\t\t\t\tzones. There's a limit on the number of resource policies\n\t\t\t\t\t\t\t\t\t\tthat you can create, so we recommend that you use a\n\t\t\t\t\t\t\t\t\t\tconsistent prefix so you can use the same resource policy\n\t\t\t\t\t\t\t\t\t\tfor all the log groups that you create for query\n\t\t\t\t\t\t\t\t\t\tlogging.

      \n
    • \n
    \n
  2. \n
  3. \n

    Create a CloudWatch Logs resource policy, and give it the\n\t\t\t\t\t\t\t\tpermissions that Route 53 needs to create log streams and to send\n\t\t\t\t\t\t\t\tquery logs to log streams. For the value of Resource,\n\t\t\t\t\t\t\t\tspecify the ARN for the log group that you created in the previous\n\t\t\t\t\t\t\t\tstep. To use the same resource policy for all the CloudWatch Logs\n\t\t\t\t\t\t\t\tlog groups that you created for query logging configurations,\n\t\t\t\t\t\t\t\treplace the hosted zone name with *, for\n\t\t\t\t\t\t\t\texample:

    \n

    \n arn:aws:logs:us-east-1:123412341234:log-group:/aws/route53/*\n

    \n

    To avoid the confused deputy problem, a security issue where an\n\t\t\t\t\t\t\t\tentity without a permission for an action can coerce a\n\t\t\t\t\t\t\t\tmore-privileged entity to perform it, you can optionally limit the\n\t\t\t\t\t\t\t\tpermissions that a service has to a resource in a resource-based\n\t\t\t\t\t\t\t\tpolicy by supplying the following values:

    \n
      \n
    • \n

      For aws:SourceArn, supply the hosted zone ARN\n\t\t\t\t\t\t\t\t\t\tused in creating the query logging configuration. For\n\t\t\t\t\t\t\t\t\t\texample, aws:SourceArn:\n\t\t\t\t\t\t\t\t\t\t\tarn:aws:route53:::hostedzone/hosted zone\n\t\t\t\t\t\t\t\t\t\tID.

      \n
    • \n
    • \n

      For aws:SourceAccount, supply the account ID\n\t\t\t\t\t\t\t\t\t\tfor the account that creates the query logging\n\t\t\t\t\t\t\t\t\t\tconfiguration. For example,\n\t\t\t\t\t\t\t\t\t\t\taws:SourceAccount:111111111111.

      \n
    • \n
    \n

    For more information, see The confused\n\t\t\t\t\t\t\t\t\tdeputy problem in the Amazon Web Services\n\t\t\t\t\t\t\t\t\tIAM User Guide.

    \n \n

    You can't use the CloudWatch console to create or edit a\n\t\t\t\t\t\t\t\t\tresource policy. You must use the CloudWatch API, one of the\n\t\t\t\t\t\t\t\t\t\tAmazon Web Services SDKs, or the CLI.

    \n
    \n
  4. \n
\n
\n
Log Streams and Edge Locations
\n
\n

When Route 53 finishes creating the configuration for DNS query logging,\n\t\t\t\t\t\tit does the following:

\n
    \n
  • \n

    Creates a log stream for an edge location the first time that the\n\t\t\t\t\t\t\t\tedge location responds to DNS queries for the specified hosted zone.\n\t\t\t\t\t\t\t\tThat log stream is used to log all queries that Route 53 responds to\n\t\t\t\t\t\t\t\tfor that edge location.

    \n
  • \n
  • \n

    Begins to send query logs to the applicable log stream.

    \n
  • \n
\n

The name of each log stream is in the following format:

\n

\n \n hosted zone ID/edge location\n\t\t\t\t\t\t\t\tcode\n \n

\n

The edge location code is a three-letter code and an arbitrarily assigned\n\t\t\t\t\t\tnumber, for example, DFW3. The three-letter code typically corresponds with\n\t\t\t\t\t\tthe International Air Transport Association airport code for an airport near\n\t\t\t\t\t\tthe edge location. (These abbreviations might change in the future.) For a\n\t\t\t\t\t\tlist of edge locations, see \"The Route 53 Global Network\" on the Route 53 Product Details\n\t\t\t\t\t\tpage.

\n
\n
Queries That Are Logged
\n
\n

Query logs contain only the queries that DNS resolvers forward to Route\n\t\t\t\t\t\t53. If a DNS resolver has already cached the response to a query (such as\n\t\t\t\t\t\tthe IP address for a load balancer for example.com), the resolver will\n\t\t\t\t\t\tcontinue to return the cached response. It doesn't forward another query to\n\t\t\t\t\t\tRoute 53 until the TTL for the corresponding resource record set expires.\n\t\t\t\t\t\tDepending on how many DNS queries are submitted for a resource record set,\n\t\t\t\t\t\tand depending on the TTL for that resource record set, query logs might\n\t\t\t\t\t\tcontain information about only one query out of every several thousand\n\t\t\t\t\t\tqueries that are submitted to DNS. For more information about how DNS works,\n\t\t\t\t\t\tsee Routing\n\t\t\t\t\t\t\tInternet Traffic to Your Website or Web Application in the\n\t\t\t\t\t\t\tAmazon Route 53 Developer Guide.

\n
\n
Log File Format
\n
\n

For a list of the values in each query log and the format of each value,\n\t\t\t\t\t\tsee Logging DNS\n\t\t\t\t\t\t\tQueries in the Amazon Route 53 Developer\n\t\t\t\t\t\t\tGuide.

\n
\n
Pricing
\n
\n

For information about charges for query logs, see Amazon CloudWatch Pricing.

\n
\n
How to Stop Logging
\n
\n

If you want Route 53 to stop sending query logs to CloudWatch Logs, delete\n\t\t\t\t\t\tthe query logging configuration. For more information, see DeleteQueryLoggingConfig.

\n
\n
", + "smithy.api#documentation": "

Creates a configuration for DNS query logging. After you create a query logging\n\t\t\tconfiguration, Amazon Route 53 begins to publish log data to an Amazon CloudWatch Logs\n\t\t\tlog group.

\n

DNS query logs contain information about the queries that Route 53 receives for a\n\t\t\tspecified public hosted zone, such as the following:

\n
    \n
  • \n

    Route 53 edge location that responded to the DNS query

    \n
  • \n
  • \n

    Domain or subdomain that was requested

    \n
  • \n
  • \n

    DNS record type, such as A or AAAA

    \n
  • \n
  • \n

    DNS response code, such as NoError or\n\t\t\t\t\tServFail\n

    \n
  • \n
\n
\n
Log Group and Resource Policy
\n
\n

Before you create a query logging configuration, perform the following\n\t\t\t\t\t\toperations.

\n \n

If you create a query logging configuration using the Route 53\n\t\t\t\t\t\t\tconsole, Route 53 performs these operations automatically.

\n
\n
    \n
  1. \n

    Create a CloudWatch Logs log group, and make note of the ARN,\n\t\t\t\t\t\t\t\twhich you specify when you create a query logging configuration.\n\t\t\t\t\t\t\t\tNote the following:

    \n
      \n
    • \n

      You must create the log group in the us-east-1\n\t\t\t\t\t\t\t\t\t\tregion.

      \n
    • \n
    • \n

      You must use the same Amazon Web Services account to create\n\t\t\t\t\t\t\t\t\t\tthe log group and the hosted zone that you want to configure\n\t\t\t\t\t\t\t\t\t\tquery logging for.

      \n
    • \n
    • \n

      When you create log groups for query logging, we recommend\n\t\t\t\t\t\t\t\t\t\tthat you use a consistent prefix, for example:

      \n

      \n /aws/route53/hosted zone\n\t\t\t\t\t\t\t\t\t\t\tname\n \n

      \n

      In the next step, you'll create a resource policy, which\n\t\t\t\t\t\t\t\t\t\tcontrols access to one or more log groups and the associated\n\t\t\t\t\t\t\t\t\t\t\tAmazon Web Services resources, such as Route 53 hosted\n\t\t\t\t\t\t\t\t\t\tzones. There's a limit on the number of resource policies\n\t\t\t\t\t\t\t\t\t\tthat you can create, so we recommend that you use a\n\t\t\t\t\t\t\t\t\t\tconsistent prefix so you can use the same resource policy\n\t\t\t\t\t\t\t\t\t\tfor all the log groups that you create for query\n\t\t\t\t\t\t\t\t\t\tlogging.

      \n
    • \n
    \n
  2. \n
  3. \n

    Create a CloudWatch Logs resource policy, and give it the\n\t\t\t\t\t\t\t\tpermissions that Route 53 needs to create log streams and to send\n\t\t\t\t\t\t\t\tquery logs to log streams. You must create the CloudWatch Logs resource policy in the us-east-1\n\t\t\t\t\t\t\t\t\tregion. For the value of Resource,\n\t\t\t\t\t\t\t\tspecify the ARN for the log group that you created in the previous\n\t\t\t\t\t\t\t\tstep. To use the same resource policy for all the CloudWatch Logs\n\t\t\t\t\t\t\t\tlog groups that you created for query logging configurations,\n\t\t\t\t\t\t\t\treplace the hosted zone name with *, for\n\t\t\t\t\t\t\t\texample:

    \n

    \n arn:aws:logs:us-east-1:123412341234:log-group:/aws/route53/*\n

    \n

    To avoid the confused deputy problem, a security issue where an\n\t\t\t\t\t\t\t\tentity without a permission for an action can coerce a\n\t\t\t\t\t\t\t\tmore-privileged entity to perform it, you can optionally limit the\n\t\t\t\t\t\t\t\tpermissions that a service has to a resource in a resource-based\n\t\t\t\t\t\t\t\tpolicy by supplying the following values:

    \n
      \n
    • \n

      For aws:SourceArn, supply the hosted zone ARN\n\t\t\t\t\t\t\t\t\t\tused in creating the query logging configuration. For\n\t\t\t\t\t\t\t\t\t\texample, aws:SourceArn:\n\t\t\t\t\t\t\t\t\t\t\tarn:aws:route53:::hostedzone/hosted zone\n\t\t\t\t\t\t\t\t\t\tID.

      \n
    • \n
    • \n

      For aws:SourceAccount, supply the account ID\n\t\t\t\t\t\t\t\t\t\tfor the account that creates the query logging\n\t\t\t\t\t\t\t\t\t\tconfiguration. For example,\n\t\t\t\t\t\t\t\t\t\t\taws:SourceAccount:111111111111.

      \n
    • \n
    \n

    For more information, see The confused\n\t\t\t\t\t\t\t\t\tdeputy problem in the Amazon Web Services\n\t\t\t\t\t\t\t\t\tIAM User Guide.

    \n \n

    You can't use the CloudWatch console to create or edit a\n\t\t\t\t\t\t\t\t\tresource policy. You must use the CloudWatch API, one of the\n\t\t\t\t\t\t\t\t\t\tAmazon Web Services SDKs, or the CLI.

    \n
    \n
  4. \n
\n
\n
Log Streams and Edge Locations
\n
\n

When Route 53 finishes creating the configuration for DNS query logging,\n\t\t\t\t\t\tit does the following:

\n
    \n
  • \n

    Creates a log stream for an edge location the first time that the\n\t\t\t\t\t\t\t\tedge location responds to DNS queries for the specified hosted zone.\n\t\t\t\t\t\t\t\tThat log stream is used to log all queries that Route 53 responds to\n\t\t\t\t\t\t\t\tfor that edge location.

    \n
  • \n
  • \n

    Begins to send query logs to the applicable log stream.

    \n
  • \n
\n

The name of each log stream is in the following format:

\n

\n \n hosted zone ID/edge location\n\t\t\t\t\t\t\t\tcode\n \n

\n

The edge location code is a three-letter code and an arbitrarily assigned\n\t\t\t\t\t\tnumber, for example, DFW3. The three-letter code typically corresponds with\n\t\t\t\t\t\tthe International Air Transport Association airport code for an airport near\n\t\t\t\t\t\tthe edge location. (These abbreviations might change in the future.) For a\n\t\t\t\t\t\tlist of edge locations, see \"The Route 53 Global Network\" on the Route 53 Product Details\n\t\t\t\t\t\tpage.

\n
\n
Queries That Are Logged
\n
\n

Query logs contain only the queries that DNS resolvers forward to Route\n\t\t\t\t\t\t53. If a DNS resolver has already cached the response to a query (such as\n\t\t\t\t\t\tthe IP address for a load balancer for example.com), the resolver will\n\t\t\t\t\t\tcontinue to return the cached response. It doesn't forward another query to\n\t\t\t\t\t\tRoute 53 until the TTL for the corresponding resource record set expires.\n\t\t\t\t\t\tDepending on how many DNS queries are submitted for a resource record set,\n\t\t\t\t\t\tand depending on the TTL for that resource record set, query logs might\n\t\t\t\t\t\tcontain information about only one query out of every several thousand\n\t\t\t\t\t\tqueries that are submitted to DNS. For more information about how DNS works,\n\t\t\t\t\t\tsee Routing\n\t\t\t\t\t\t\tInternet Traffic to Your Website or Web Application in the\n\t\t\t\t\t\t\tAmazon Route 53 Developer Guide.

\n
\n
Log File Format
\n
\n

For a list of the values in each query log and the format of each value,\n\t\t\t\t\t\tsee Logging DNS\n\t\t\t\t\t\t\tQueries in the Amazon Route 53 Developer\n\t\t\t\t\t\t\tGuide.

\n
\n
Pricing
\n
\n

For information about charges for query logs, see Amazon CloudWatch Pricing.

\n
\n
How to Stop Logging
\n
\n

If you want Route 53 to stop sending query logs to CloudWatch Logs, delete\n\t\t\t\t\t\tthe query logging configuration. For more information, see DeleteQueryLoggingConfig.

\n
\n
", "smithy.api#http": { "method": "POST", "uri": "/2013-04-01/queryloggingconfig", @@ -6350,7 +6405,7 @@ } ], "traits": { - "smithy.api#documentation": "

Gets information about a specified hosted zone including the four name servers\n\t\t\tassigned to the hosted zone.

", + "smithy.api#documentation": "

Gets information about a specified hosted zone including the four name servers\n\t\t\tassigned to the hosted zone.

\n

\n returns the VPCs associated with the specified hosted zone and does not reflect the VPC\n\t\t\tassociations by Route 53 Profiles. To get the associations to a Profile, call the ListProfileAssociations API.

", "smithy.api#examples": [ { "title": "To get information about a hosted zone", @@ -6383,7 +6438,22 @@ "method": "GET", "uri": "/2013-04-01/hostedzone/{Id}", "code": 200 - } + }, + "smithy.test#smokeTests": [ + { + "id": "GetHostedZoneFailure", + "params": { + "Id": "fake-zone" + }, + "vendorParams": { + "region": "us-east-1" + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "expect": { + "failure": {} + } + } + ] } }, "com.amazonaws.route53#GetHostedZoneCount": { @@ -6992,7 +7062,7 @@ "Type": { "target": "com.amazonaws.route53#HealthCheckType", "traits": { - "smithy.api#documentation": "

The type of health check that you want to create, which indicates how Amazon Route 53\n\t\t\tdetermines whether an endpoint is healthy.

\n \n

You can't change the value of Type after you create a health\n\t\t\t\tcheck.

\n
\n

You can create the following types of health checks:

\n
    \n
  • \n

    \n HTTP: Route 53 tries to establish a TCP\n\t\t\t\t\tconnection. If successful, Route 53 submits an HTTP request and waits for an\n\t\t\t\t\tHTTP status code of 200 or greater and less than 400.

    \n
  • \n
  • \n

    \n HTTPS: Route 53 tries to establish a TCP\n\t\t\t\t\tconnection. If successful, Route 53 submits an HTTPS request and waits for an\n\t\t\t\t\tHTTP status code of 200 or greater and less than 400.

    \n \n

    If you specify HTTPS for the value of Type, the\n\t\t\t\t\t\tendpoint must support TLS v1.0 or later.

    \n
    \n
  • \n
  • \n

    \n HTTP_STR_MATCH: Route 53 tries to establish a\n\t\t\t\t\tTCP connection. If successful, Route 53 submits an HTTP request and searches the\n\t\t\t\t\tfirst 5,120 bytes of the response body for the string that you specify in\n\t\t\t\t\t\tSearchString.

    \n
  • \n
  • \n

    \n HTTPS_STR_MATCH: Route 53 tries to establish\n\t\t\t\t\ta TCP connection. If successful, Route 53 submits an HTTPS request\n\t\t\t\t\tand searches the first 5,120 bytes of the response body for the string that you\n\t\t\t\t\tspecify in SearchString.

    \n
  • \n
  • \n

    \n TCP: Route 53 tries to establish a TCP\n\t\t\t\t\tconnection.

    \n
  • \n
  • \n

    \n CLOUDWATCH_METRIC: The health check is\n\t\t\t\t\tassociated with a CloudWatch alarm. If the state of the alarm is\n\t\t\t\t\tOK, the health check is considered healthy. If the state is\n\t\t\t\t\t\tALARM, the health check is considered unhealthy. If CloudWatch\n\t\t\t\t\tdoesn't have sufficient data to determine whether the state is OK\n\t\t\t\t\tor ALARM, the health check status depends on the setting for\n\t\t\t\t\t\tInsufficientDataHealthStatus: Healthy,\n\t\t\t\t\t\tUnhealthy, or LastKnownStatus.

    \n
  • \n
  • \n

    \n CALCULATED: For health checks that monitor\n\t\t\t\t\tthe status of other health checks, Route 53 adds up the number of health checks\n\t\t\t\t\tthat Route 53 health checkers consider to be healthy and compares that number\n\t\t\t\t\twith the value of HealthThreshold.

    \n
  • \n
  • \n

    \n RECOVERY_CONTROL: The health check is associated with a\n\t\t\t\t\tRoute53 Application Recovery Controller routing control. If the routing control\n\t\t\t\t\tstate is ON, the health check is considered healthy. If the state\n\t\t\t\t\tis OFF, the health check is considered unhealthy.

    \n
  • \n
\n

For more information, see How Route 53 Determines Whether an Endpoint Is Healthy in the\n\t\t\t\tAmazon Route 53 Developer Guide.

", + "smithy.api#documentation": "

The type of health check that you want to create, which indicates how Amazon Route 53\n\t\t\tdetermines whether an endpoint is healthy.

\n \n

You can't change the value of Type after you create a health\n\t\t\t\tcheck.

\n
\n

You can create the following types of health checks:

\n
    \n
  • \n

    \n HTTP: Route 53 tries to establish a TCP\n\t\t\t\t\tconnection. If successful, Route 53 submits an HTTP request and waits for an\n\t\t\t\t\tHTTP status code of 200 or greater and less than 400.

    \n
  • \n
  • \n

    \n HTTPS: Route 53 tries to establish a TCP\n\t\t\t\t\tconnection. If successful, Route 53 submits an HTTPS request and waits for an\n\t\t\t\t\tHTTP status code of 200 or greater and less than 400.

    \n \n

    If you specify HTTPS for the value of Type, the endpoint must\n\t\t\t\t\t\tsupport TLS v1.0, v1.1, or v1.2.

    \n
    \n
  • \n
  • \n

    \n HTTP_STR_MATCH: Route 53 tries to establish a\n\t\t\t\t\tTCP connection. If successful, Route 53 submits an HTTP request and searches the\n\t\t\t\t\tfirst 5,120 bytes of the response body for the string that you specify in\n\t\t\t\t\t\tSearchString.

    \n
  • \n
  • \n

    \n HTTPS_STR_MATCH: Route 53 tries to establish\n\t\t\t\t\ta TCP connection. If successful, Route 53 submits an HTTPS request\n\t\t\t\t\tand searches the first 5,120 bytes of the response body for the string that you\n\t\t\t\t\tspecify in SearchString.

    \n
  • \n
  • \n

    \n TCP: Route 53 tries to establish a TCP\n\t\t\t\t\tconnection.

    \n
  • \n
  • \n

    \n CLOUDWATCH_METRIC: The health check is\n\t\t\t\t\tassociated with a CloudWatch alarm. If the state of the alarm is\n\t\t\t\t\tOK, the health check is considered healthy. If the state is\n\t\t\t\t\t\tALARM, the health check is considered unhealthy. If CloudWatch\n\t\t\t\t\tdoesn't have sufficient data to determine whether the state is OK\n\t\t\t\t\tor ALARM, the health check status depends on the setting for\n\t\t\t\t\t\tInsufficientDataHealthStatus: Healthy,\n\t\t\t\t\t\tUnhealthy, or LastKnownStatus.

    \n
  • \n
  • \n

    \n CALCULATED: For health checks that monitor\n\t\t\t\t\tthe status of other health checks, Route 53 adds up the number of health checks\n\t\t\t\t\tthat Route 53 health checkers consider to be healthy and compares that number\n\t\t\t\t\twith the value of HealthThreshold.

    \n
  • \n
  • \n

    \n RECOVERY_CONTROL: The health check is associated with a\n\t\t\t\t\tRoute53 Application Recovery Controller routing control. If the routing control\n\t\t\t\t\tstate is ON, the health check is considered healthy. If the state\n\t\t\t\t\tis OFF, the health check is considered unhealthy.

    \n
  • \n
\n

For more information, see How Route 53 Determines Whether an Endpoint Is Healthy in the\n\t\t\t\tAmazon Route 53 Developer Guide.

", "smithy.api#required": {} } }, @@ -8547,7 +8617,20 @@ "outputToken": "NextMarker", "items": "HostedZones", "pageSize": "MaxItems" - } + }, + "smithy.test#smokeTests": [ + { + "id": "ListHostedZonesSuccess", + "params": {}, + "vendorParams": { + "region": "us-east-1" + }, + "vendorParamsShape": "aws.test#AwsVendorParams", + "expect": { + "success": {} + } + } + ] } }, "com.amazonaws.route53#ListHostedZonesByName": { @@ -8677,7 +8760,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists all the private hosted zones that a specified VPC is associated with, regardless\n\t\t\tof which Amazon Web Services account or Amazon Web Services service owns the hosted zones.\n\t\t\tThe HostedZoneOwner structure in the response contains one of the following\n\t\t\tvalues:

\n
    \n
  • \n

    An OwningAccount element, which contains the account number of\n\t\t\t\t\teither the current Amazon Web Services account or another Amazon Web Services account. Some services, such as Cloud Map, create\n\t\t\t\t\thosted zones using the current account.

    \n
  • \n
  • \n

    An OwningService element, which identifies the Amazon Web Services\n\t\t\t\t\tservice that created and owns the hosted zone. For example, if a hosted zone was\n\t\t\t\t\tcreated by Amazon Elastic File System (Amazon EFS), the value of\n\t\t\t\t\t\tOwner is efs.amazonaws.com.

    \n
  • \n
\n \n

When listing private hosted zones, the hosted zone and the Amazon VPC must\n\t\t\t\tbelong to the same partition where the hosted zones were created. A partition is a\n\t\t\t\tgroup of Amazon Web Services Regions. Each Amazon Web Services account is scoped to\n\t\t\t\tone partition.

\n

The following are the supported partitions:

\n
    \n
  • \n

    \n aws - Amazon Web Services Regions

    \n
  • \n
  • \n

    \n aws-cn - China Regions

    \n
  • \n
  • \n

    \n aws-us-gov - Amazon Web Services GovCloud (US) Region

    \n
  • \n
\n

For more information, see Access Management\n\t\t\t\tin the Amazon Web Services General Reference.

\n
", + "smithy.api#documentation": "

Lists all the private hosted zones that a specified VPC is associated with, regardless\n\t\t\tof which Amazon Web Services account or Amazon Web Services service owns the hosted zones.\n\t\t\tThe HostedZoneOwner structure in the response contains one of the following\n\t\t\tvalues:

\n
    \n
  • \n

    An OwningAccount element, which contains the account number of\n\t\t\t\t\teither the current Amazon Web Services account or another Amazon Web Services account. Some services, such as Cloud Map, create\n\t\t\t\t\thosted zones using the current account.

    \n
  • \n
  • \n

    An OwningService element, which identifies the Amazon Web Services\n\t\t\t\t\tservice that created and owns the hosted zone. For example, if a hosted zone was\n\t\t\t\t\tcreated by Amazon Elastic File System (Amazon EFS), the value of\n\t\t\t\t\t\tOwner is efs.amazonaws.com.

    \n
  • \n
\n

\n ListHostedZonesByVPC returns the hosted zones associated with the specified VPC and does not reflect the hosted zone\n\t\t\tassociations to VPCs via Route 53 Profiles. To get the associations to a Profile, call the ListProfileResourceAssociations API.

\n \n

When listing private hosted zones, the hosted zone and the Amazon VPC must\n\t\t\t\tbelong to the same partition where the hosted zones were created. A partition is a\n\t\t\t\tgroup of Amazon Web Services Regions. Each Amazon Web Services account is scoped to\n\t\t\t\tone partition.

\n

The following are the supported partitions:

\n
    \n
  • \n

    \n aws - Amazon Web Services Regions

    \n
  • \n
  • \n

    \n aws-cn - China Regions

    \n
  • \n
  • \n

    \n aws-us-gov - Amazon Web Services GovCloud (US) Region

    \n
  • \n
\n

For more information, see Access Management\n\t\t\t\tin the Amazon Web Services General Reference.

\n
", "smithy.api#http": { "method": "GET", "uri": "/2013-04-01/hostedzonesbyvpc", @@ -8933,7 +9016,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the resource record sets in a specified hosted zone.

\n

\n ListResourceRecordSets returns up to 300 resource record sets at a time\n\t\t\tin ASCII order, beginning at a position specified by the name and\n\t\t\t\ttype elements.

\n

\n Sort order\n

\n

\n ListResourceRecordSets sorts results first by DNS name with the labels\n\t\t\treversed, for example:

\n

\n com.example.www.\n

\n

Note the trailing dot, which can change the sort order when the record name contains\n\t\t\tcharacters that appear before . (decimal 46) in the ASCII table. These\n\t\t\tcharacters include the following: ! \" # $ % & ' ( ) * + , -\n

\n

When multiple records have the same DNS name, ListResourceRecordSets\n\t\t\tsorts results by the record type.

\n

\n Specifying where to start listing records\n

\n

You can use the name and type elements to specify the resource record set that the\n\t\t\tlist begins with:

\n
\n
If you do not specify Name or Type
\n
\n

The results begin with the first resource record set that the hosted zone\n\t\t\t\t\t\tcontains.

\n
\n
If you specify Name but not Type
\n
\n

The results begin with the first resource record set in the list whose\n\t\t\t\t\t\tname is greater than or equal to Name.

\n
\n
If you specify Type but not Name
\n
\n

Amazon Route 53 returns the InvalidInput error.

\n
\n
If you specify both Name and Type
\n
\n

The results begin with the first resource record set in the list whose\n\t\t\t\t\t\tname is greater than or equal to Name, and whose type is\n\t\t\t\t\t\tgreater than or equal to Type.

\n
\n
\n

\n Resource record sets that are PENDING\n

\n

This action returns the most current version of the records. This includes records\n\t\t\tthat are PENDING, and that are not yet available on all Route 53 DNS\n\t\t\tservers.

\n

\n Changing resource record sets\n

\n

To ensure that you get an accurate listing of the resource record sets for a hosted\n\t\t\tzone at a point in time, do not submit a ChangeResourceRecordSets request\n\t\t\twhile you're paging through the results of a ListResourceRecordSets\n\t\t\trequest. If you do, some pages may display results without the latest changes while\n\t\t\tother pages display results with the latest changes.

\n

\n Displaying the next page of results\n

\n

If a ListResourceRecordSets command returns more than one page of\n\t\t\tresults, the value of IsTruncated is true. To display the next\n\t\t\tpage of results, get the values of NextRecordName,\n\t\t\t\tNextRecordType, and NextRecordIdentifier (if any) from the\n\t\t\tresponse. Then submit another ListResourceRecordSets request, and specify\n\t\t\tthose values for StartRecordName, StartRecordType, and\n\t\t\t\tStartRecordIdentifier.

", + "smithy.api#documentation": "

Lists the resource record sets in a specified hosted zone.

\n

\n ListResourceRecordSets returns up to 300 resource record sets at a time\n\t\t\tin ASCII order, beginning at a position specified by the name and\n\t\t\t\ttype elements.

\n

\n Sort order\n

\n

\n ListResourceRecordSets sorts results first by DNS name with the labels\n\t\t\treversed, for example:

\n

\n com.example.www.\n

\n

Note the trailing dot, which can change the sort order when the record name contains\n\t\t\tcharacters that appear before . (decimal 46) in the ASCII table. These\n\t\t\tcharacters include the following: ! \" # $ % & ' ( ) * + , -\n

\n

When multiple records have the same DNS name, ListResourceRecordSets\n\t\t\tsorts results by the record type.

\n

\n Specifying where to start listing records\n

\n

You can use the name and type elements to specify the resource record set that the\n\t\t\tlist begins with:

\n
\n
If you do not specify Name or Type
\n
\n

The results begin with the first resource record set that the hosted zone\n\t\t\t\t\t\tcontains.

\n
\n
If you specify Name but not Type
\n
\n

The results begin with the first resource record set in the list whose\n\t\t\t\t\t\tname is greater than or equal to Name.

\n
\n
If you specify Type but not Name
\n
\n

Amazon Route 53 returns the InvalidInput error.

\n
\n
If you specify both Name and Type
\n
\n

The results begin with the first resource record set in the list whose\n\t\t\t\t\t\tname is greater than or equal to Name, and whose type is\n\t\t\t\t\t\tgreater than or equal to Type.

\n \n

Type is only used to sort between records with the same record Name.

\n
\n
\n
\n

\n Resource record sets that are PENDING\n

\n

This action returns the most current version of the records. This includes records\n\t\t\tthat are PENDING, and that are not yet available on all Route 53 DNS\n\t\t\tservers.

\n

\n Changing resource record sets\n

\n

To ensure that you get an accurate listing of the resource record sets for a hosted\n\t\t\tzone at a point in time, do not submit a ChangeResourceRecordSets request\n\t\t\twhile you're paging through the results of a ListResourceRecordSets\n\t\t\trequest. If you do, some pages may display results without the latest changes while\n\t\t\tother pages display results with the latest changes.

\n

\n Displaying the next page of results\n

\n

If a ListResourceRecordSets command returns more than one page of\n\t\t\tresults, the value of IsTruncated is true. To display the next\n\t\t\tpage of results, get the values of NextRecordName,\n\t\t\t\tNextRecordType, and NextRecordIdentifier (if any) from the\n\t\t\tresponse. Then submit another ListResourceRecordSets request, and specify\n\t\t\tthose values for StartRecordName, StartRecordType, and\n\t\t\t\tStartRecordIdentifier.

", "smithy.api#http": { "method": "GET", "uri": "/2013-04-01/hostedzone/{HostedZoneId}/rrset", @@ -10383,6 +10466,30 @@ "traits": { "smithy.api#enumValue": "DS" } + }, + "TLSA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TLSA" + } + }, + "SSHFP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SSHFP" + } + }, + "SVCB": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SVCB" + } + }, + "HTTPS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HTTPS" + } } } }, @@ -10519,7 +10626,7 @@ "Type": { "target": "com.amazonaws.route53#RRType", "traits": { - "smithy.api#documentation": "

The DNS record type. For information about different record types and how data is\n\t\t\tencoded for them, see Supported DNS Resource\n\t\t\t\tRecord Types in the Amazon Route 53 Developer\n\t\t\tGuide.

\n

Valid values for basic resource record sets: A | AAAA |\n\t\t\t\tCAA | CNAME | DS |MX |\n\t\t\t\tNAPTR | NS | PTR | SOA |\n\t\t\t\tSPF | SRV | TXT\n

\n

Values for weighted, latency, geolocation, and failover resource record sets:\n\t\t\t\tA | AAAA | CAA | CNAME |\n\t\t\t\tMX | NAPTR | PTR | SPF |\n\t\t\t\tSRV | TXT. When creating a group of weighted, latency,\n\t\t\tgeolocation, or failover resource record sets, specify the same value for all of the\n\t\t\tresource record sets in the group.

\n

Valid values for multivalue answer resource record sets: A |\n\t\t\t\tAAAA | MX | NAPTR | PTR |\n\t\t\t\tSPF | SRV | TXT\n

\n \n

SPF records were formerly used to verify the identity of the sender of email\n\t\t\t\tmessages. However, we no longer recommend that you create resource record sets for\n\t\t\t\twhich the value of Type is SPF. RFC 7208, Sender\n\t\t\t\t\tPolicy Framework (SPF) for Authorizing Use of Domains in Email, Version\n\t\t\t\t\t1, has been updated to say, \"...[I]ts existence and mechanism defined\n\t\t\t\tin [RFC4408] have led to some interoperability issues. Accordingly, its use is no\n\t\t\t\tlonger appropriate for SPF version 1; implementations are not to use it.\" In RFC\n\t\t\t\t7208, see section 14.1, The SPF DNS Record Type.

\n
\n

Values for alias resource record sets:

\n
    \n
  • \n

    \n Amazon API Gateway custom regional APIs and\n\t\t\t\t\t\tedge-optimized APIs:\n A\n

    \n
  • \n
  • \n

    \n CloudFront distributions:\n A\n

    \n

    If IPv6 is enabled for the distribution, create two resource record sets to\n\t\t\t\t\troute traffic to your distribution, one with a value of A and one\n\t\t\t\t\twith a value of AAAA.

    \n
  • \n
  • \n

    \n Amazon API Gateway environment that has a regionalized\n\t\t\t\t\t\tsubdomain: A\n

    \n
  • \n
  • \n

    \n ELB load balancers:\n A | AAAA\n

    \n
  • \n
  • \n

    \n Amazon S3 buckets:\n A\n

    \n
  • \n
  • \n

    \n Amazon Virtual Private Cloud interface VPC\n\t\t\t\t\t\tendpoints\n A\n

    \n
  • \n
  • \n

    \n Another resource record set in this hosted\n\t\t\t\t\t\tzone: Specify the type of the resource record set that you're\n\t\t\t\t\tcreating the alias for. All values are supported except NS and\n\t\t\t\t\t\tSOA.

    \n \n

    If you're creating an alias record that has the same name as the hosted\n\t\t\t\t\t\tzone (known as the zone apex), you can't route traffic to a record for which\n\t\t\t\t\t\tthe value of Type is CNAME. This is because the\n\t\t\t\t\t\talias record must have the same type as the record you're routing traffic\n\t\t\t\t\t\tto, and creating a CNAME record for the zone apex isn't supported even for\n\t\t\t\t\t\tan alias record.

    \n
    \n
  • \n
", + "smithy.api#documentation": "

The DNS record type. For information about different record types and how data is\n\t\t\tencoded for them, see Supported DNS Resource\n\t\t\t\tRecord Types in the Amazon Route 53 Developer\n\t\t\tGuide.

\n

Valid values for basic resource record sets: A | AAAA |\n\t\t\t\tCAA | CNAME | DS |MX |\n\t\t\t\tNAPTR | NS | PTR | SOA |\n\t\t\tSPF | SRV | TXT| TLSA| SSHFP| SVCB| HTTPS\n

\n

Values for weighted, latency, geolocation, and failover resource record sets: A\n\t\t\t| AAAA | CAA | CNAME | MX |\n\t\t\t\tNAPTR | PTR | SPF | SRV |\n\t\t\t\tTXT| TLSA| SSHFP| SVCB|\n\t\t\t\tHTTPS. When creating a group of weighted, latency, geolocation, or\n\t\t\tfailover resource record sets, specify the same value for all of the resource record\n\t\t\tsets in the group.

\n

Valid values for multivalue answer resource record sets: A |\n\t\t\t\tAAAA | MX | NAPTR | PTR |\n\t\t\tSPF | SRV | TXT| CAA| TLSA| SSHFP| SVCB| HTTPS\n

\n \n

SPF records were formerly used to verify the identity of the sender of email\n\t\t\t\tmessages. However, we no longer recommend that you create resource record sets for\n\t\t\t\twhich the value of Type is SPF. RFC 7208, Sender\n\t\t\t\t\tPolicy Framework (SPF) for Authorizing Use of Domains in Email, Version\n\t\t\t\t\t1, has been updated to say, \"...[I]ts existence and mechanism defined\n\t\t\t\tin [RFC4408] have led to some interoperability issues. Accordingly, its use is no\n\t\t\t\tlonger appropriate for SPF version 1; implementations are not to use it.\" In RFC\n\t\t\t\t7208, see section 14.1, The SPF DNS Record Type.

\n
\n

Values for alias resource record sets:

\n
    \n
  • \n

    \n Amazon API Gateway custom regional APIs and\n\t\t\t\t\t\tedge-optimized APIs:\n A\n

    \n
  • \n
  • \n

    \n CloudFront distributions:\n A\n

    \n

    If IPv6 is enabled for the distribution, create two resource record sets to\n\t\t\t\t\troute traffic to your distribution, one with a value of A and one\n\t\t\t\t\twith a value of AAAA.

    \n
  • \n
  • \n

    \n Amazon API Gateway environment that has a regionalized\n\t\t\t\t\t\tsubdomain: A\n

    \n
  • \n
  • \n

    \n ELB load balancers:\n A | AAAA\n

    \n
  • \n
  • \n

    \n Amazon S3 buckets:\n A\n

    \n
  • \n
  • \n

    \n Amazon Virtual Private Cloud interface VPC\n\t\t\t\t\t\tendpoints\n A\n

    \n
  • \n
  • \n

    \n Another resource record set in this hosted\n\t\t\t\t\t\tzone: Specify the type of the resource record set that you're\n\t\t\t\t\tcreating the alias for. All values are supported except NS and\n\t\t\t\t\t\tSOA.

    \n \n

    If you're creating an alias record that has the same name as the hosted\n\t\t\t\t\t\tzone (known as the zone apex), you can't route traffic to a record for which\n\t\t\t\t\t\tthe value of Type is CNAME. This is because the\n\t\t\t\t\t\talias record must have the same type as the record you're routing traffic\n\t\t\t\t\t\tto, and creating a CNAME record for the zone apex isn't supported even for\n\t\t\t\t\t\tan alias record.

    \n
    \n
  • \n
", "smithy.api#required": {} } }, @@ -10820,6 +10927,48 @@ "traits": { "smithy.api#enumValue": "ca-west-1" } + }, + "ap_southeast_5": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-southeast-5" + } + }, + "mx_central_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "mx-central-1" + } + }, + "ap_southeast_7": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-southeast-7" + } + }, + "us_gov_east_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "us-gov-east-1" + } + }, + "us_gov_west_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "us-gov-west-1" + } + }, + "ap_east_2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-east-2" + } + }, + "ap_southeast_6": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-southeast-6" + } } }, "traits": { @@ -11864,7 +12013,7 @@ "Disabled": { "target": "com.amazonaws.route53#Disabled", "traits": { - "smithy.api#documentation": "

Stops Route 53 from performing health checks. When you disable a health check, here's\n\t\t\twhat happens:

\n
    \n
  • \n

    \n Health checks that check the health of\n\t\t\t\t\t\tendpoints: Route 53 stops submitting requests to your\n\t\t\t\t\tapplication, server, or other resource.

    \n
  • \n
  • \n

    \n Calculated health checks: Route 53 stops\n\t\t\t\t\taggregating the status of the referenced health checks.

    \n
  • \n
  • \n

    \n Health checks that monitor CloudWatch alarms:\n\t\t\t\t\tRoute 53 stops monitoring the corresponding CloudWatch metrics.

    \n
  • \n
\n

After you disable a health check, Route 53 considers the status of the health check to\n\t\t\talways be healthy. If you configured DNS failover, Route 53 continues to route traffic\n\t\t\tto the corresponding resources. If you want to stop routing traffic to a resource,\n\t\t\tchange the value of Inverted.

\n

Charges for a health check still apply when the health check is disabled. For more\n\t\t\tinformation, see Amazon Route 53\n\t\t\t\tPricing.

" + "smithy.api#documentation": "

Stops Route 53 from performing health checks. When you disable a health check, here's\n\t\t\twhat happens:

\n
    \n
  • \n

    \n Health checks that check the health of\n\t\t\t\t\t\tendpoints: Route 53 stops submitting requests to your\n\t\t\t\t\tapplication, server, or other resource.

    \n
  • \n
  • \n

    \n Calculated health checks: Route 53 stops\n\t\t\t\t\taggregating the status of the referenced health checks.

    \n
  • \n
  • \n

    \n Health checks that monitor CloudWatch alarms:\n\t\t\t\t\tRoute 53 stops monitoring the corresponding CloudWatch metrics.

    \n
  • \n
\n

After you disable a health check, Route 53 considers the status of the health check to\n\t\t\talways be healthy. If you configured DNS failover, Route 53 continues to route traffic\n\t\t\tto the corresponding resources. Additionally, in disabled state, you can also invert the\n\t\t\tstatus of the health check to route traffic differently. For more information, see\n\t\t\t\tInverted.

\n

Charges for a health check still apply when the health check is disabled. For more\n\t\t\tinformation, see Amazon Route 53\n\t\t\t\tPricing.

" } }, "HealthThreshold": { @@ -12407,6 +12556,12 @@ "smithy.api#enumValue": "cn-north-1" } }, + "cn_northwest_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "cn-northwest-1" + } + }, "af_south_1": { "target": "smithy.api#Unit", "traits": { @@ -12442,6 +12597,54 @@ "traits": { "smithy.api#enumValue": "ca-west-1" } + }, + "ap_southeast_5": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-southeast-5" + } + }, + "mx_central_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "mx-central-1" + } + }, + "us_isof_south_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "us-isof-south-1" + } + }, + "us_isof_east_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "us-isof-east-1" + } + }, + "ap_southeast_7": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-southeast-7" + } + }, + "ap_east_2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-east-2" + } + }, + "eu_isoe_west_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "eu-isoe-west-1" + } + }, + "ap_southeast_6": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-southeast-6" + } } }, "traits": { diff --git a/aws/sdk/aws-models/s3-control.json b/aws/sdk/aws-models/s3-control.json index 88be7232b49..1acb2520084 100644 --- a/aws/sdk/aws-models/s3-control.json +++ b/aws/sdk/aws-models/s3-control.json @@ -1,22885 +1,23041 @@ { - "smithy": "2.0", - "metadata": { - "suppressions": [ - { - "id": "HttpMethodSemantics", - "namespace": "*" - }, - { - "id": "HttpResponseCodeSemantics", - "namespace": "*" - }, - { - "id": "PaginatedTrait", - "namespace": "*" - }, - { - "id": "HttpHeaderTrait", - "namespace": "*" - }, - { - "id": "HttpUriConflict", - "namespace": "*" - }, - { - "id": "Service", - "namespace": "*" - } - ] - }, - "shapes": { - "com.amazonaws.s3control#AWSS3ControlServiceV20180820": { - "type": "service", - "version": "2018-08-20", - "operations": [ - { - "target": "com.amazonaws.s3control#AssociateAccessGrantsIdentityCenter" - }, - { - "target": "com.amazonaws.s3control#CreateAccessGrant" - }, - { - "target": "com.amazonaws.s3control#CreateAccessGrantsInstance" - }, - { - "target": "com.amazonaws.s3control#CreateAccessGrantsLocation" - }, - { - "target": "com.amazonaws.s3control#CreateAccessPoint" - }, - { - "target": "com.amazonaws.s3control#CreateAccessPointForObjectLambda" - }, - { - "target": "com.amazonaws.s3control#CreateBucket" - }, - { - "target": "com.amazonaws.s3control#CreateJob" - }, - { - "target": "com.amazonaws.s3control#CreateMultiRegionAccessPoint" - }, - { - "target": "com.amazonaws.s3control#CreateStorageLensGroup" - }, - { - "target": "com.amazonaws.s3control#DeleteAccessGrant" - }, - { - "target": "com.amazonaws.s3control#DeleteAccessGrantsInstance" - }, - { - "target": "com.amazonaws.s3control#DeleteAccessGrantsInstanceResourcePolicy" - }, - { - "target": "com.amazonaws.s3control#DeleteAccessGrantsLocation" - }, - { - "target": "com.amazonaws.s3control#DeleteAccessPoint" - }, - { - "target": "com.amazonaws.s3control#DeleteAccessPointForObjectLambda" - }, - { - "target": "com.amazonaws.s3control#DeleteAccessPointPolicy" - }, - { - "target": "com.amazonaws.s3control#DeleteAccessPointPolicyForObjectLambda" - }, - { - "target": "com.amazonaws.s3control#DeleteAccessPointScope" - }, - { - "target": "com.amazonaws.s3control#DeleteBucket" - }, - { - "target": "com.amazonaws.s3control#DeleteBucketLifecycleConfiguration" - }, - { - "target": "com.amazonaws.s3control#DeleteBucketPolicy" - }, - { - "target": "com.amazonaws.s3control#DeleteBucketReplication" - }, - { - "target": "com.amazonaws.s3control#DeleteBucketTagging" - }, - { - "target": "com.amazonaws.s3control#DeleteJobTagging" - }, - { - "target": "com.amazonaws.s3control#DeleteMultiRegionAccessPoint" - }, - { - "target": "com.amazonaws.s3control#DeletePublicAccessBlock" - }, - { - "target": "com.amazonaws.s3control#DeleteStorageLensConfiguration" - }, - { - "target": "com.amazonaws.s3control#DeleteStorageLensConfigurationTagging" - }, - { - "target": "com.amazonaws.s3control#DeleteStorageLensGroup" - }, - { - "target": "com.amazonaws.s3control#DescribeJob" - }, - { - "target": "com.amazonaws.s3control#DescribeMultiRegionAccessPointOperation" - }, - { - "target": "com.amazonaws.s3control#DissociateAccessGrantsIdentityCenter" - }, - { - "target": "com.amazonaws.s3control#GetAccessGrant" - }, - { - "target": "com.amazonaws.s3control#GetAccessGrantsInstance" - }, - { - "target": "com.amazonaws.s3control#GetAccessGrantsInstanceForPrefix" - }, - { - "target": "com.amazonaws.s3control#GetAccessGrantsInstanceResourcePolicy" - }, - { - "target": "com.amazonaws.s3control#GetAccessGrantsLocation" - }, - { - "target": "com.amazonaws.s3control#GetAccessPoint" - }, - { - "target": "com.amazonaws.s3control#GetAccessPointConfigurationForObjectLambda" - }, - { - "target": "com.amazonaws.s3control#GetAccessPointForObjectLambda" - }, - { - "target": "com.amazonaws.s3control#GetAccessPointPolicy" - }, - { - "target": "com.amazonaws.s3control#GetAccessPointPolicyForObjectLambda" - }, - { - "target": "com.amazonaws.s3control#GetAccessPointPolicyStatus" - }, - { - "target": "com.amazonaws.s3control#GetAccessPointPolicyStatusForObjectLambda" - }, - { - "target": "com.amazonaws.s3control#GetAccessPointScope" - }, - { - "target": "com.amazonaws.s3control#GetBucket" - }, - { - "target": "com.amazonaws.s3control#GetBucketLifecycleConfiguration" - }, - { - "target": "com.amazonaws.s3control#GetBucketPolicy" - }, - { - "target": "com.amazonaws.s3control#GetBucketReplication" - }, - { - "target": "com.amazonaws.s3control#GetBucketTagging" - }, - { - "target": "com.amazonaws.s3control#GetBucketVersioning" - }, - { - "target": "com.amazonaws.s3control#GetDataAccess" - }, - { - "target": "com.amazonaws.s3control#GetJobTagging" - }, - { - "target": "com.amazonaws.s3control#GetMultiRegionAccessPoint" - }, - { - "target": "com.amazonaws.s3control#GetMultiRegionAccessPointPolicy" - }, - { - "target": "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyStatus" - }, - { - "target": "com.amazonaws.s3control#GetMultiRegionAccessPointRoutes" - }, - { - "target": "com.amazonaws.s3control#GetPublicAccessBlock" - }, - { - "target": "com.amazonaws.s3control#GetStorageLensConfiguration" - }, - { - "target": "com.amazonaws.s3control#GetStorageLensConfigurationTagging" - }, - { - "target": "com.amazonaws.s3control#GetStorageLensGroup" - }, - { - "target": "com.amazonaws.s3control#ListAccessGrants" - }, - { - "target": "com.amazonaws.s3control#ListAccessGrantsInstances" - }, - { - "target": "com.amazonaws.s3control#ListAccessGrantsLocations" - }, - { - "target": "com.amazonaws.s3control#ListAccessPoints" - }, - { - "target": "com.amazonaws.s3control#ListAccessPointsForDirectoryBuckets" - }, - { - "target": "com.amazonaws.s3control#ListAccessPointsForObjectLambda" - }, - { - "target": "com.amazonaws.s3control#ListCallerAccessGrants" - }, - { - "target": "com.amazonaws.s3control#ListJobs" - }, - { - "target": "com.amazonaws.s3control#ListMultiRegionAccessPoints" - }, - { - "target": "com.amazonaws.s3control#ListRegionalBuckets" - }, - { - "target": "com.amazonaws.s3control#ListStorageLensConfigurations" - }, - { - "target": "com.amazonaws.s3control#ListStorageLensGroups" - }, - { - "target": "com.amazonaws.s3control#ListTagsForResource" - }, - { - "target": "com.amazonaws.s3control#PutAccessGrantsInstanceResourcePolicy" - }, - { - "target": "com.amazonaws.s3control#PutAccessPointConfigurationForObjectLambda" - }, - { - "target": "com.amazonaws.s3control#PutAccessPointPolicy" - }, - { - "target": "com.amazonaws.s3control#PutAccessPointPolicyForObjectLambda" - }, - { - "target": "com.amazonaws.s3control#PutAccessPointScope" - }, - { - "target": "com.amazonaws.s3control#PutBucketLifecycleConfiguration" - }, - { - "target": "com.amazonaws.s3control#PutBucketPolicy" - }, - { - "target": "com.amazonaws.s3control#PutBucketReplication" - }, - { - "target": "com.amazonaws.s3control#PutBucketTagging" - }, - { - "target": "com.amazonaws.s3control#PutBucketVersioning" - }, - { - "target": "com.amazonaws.s3control#PutJobTagging" - }, - { - "target": "com.amazonaws.s3control#PutMultiRegionAccessPointPolicy" - }, - { - "target": "com.amazonaws.s3control#PutPublicAccessBlock" - }, - { - "target": "com.amazonaws.s3control#PutStorageLensConfiguration" - }, - { - "target": "com.amazonaws.s3control#PutStorageLensConfigurationTagging" - }, - { - "target": "com.amazonaws.s3control#SubmitMultiRegionAccessPointRoutes" - }, - { - "target": "com.amazonaws.s3control#TagResource" - }, - { - "target": "com.amazonaws.s3control#UntagResource" - }, - { - "target": "com.amazonaws.s3control#UpdateAccessGrantsLocation" - }, - { - "target": "com.amazonaws.s3control#UpdateJobPriority" - }, - { - "target": "com.amazonaws.s3control#UpdateJobStatus" - }, - { - "target": "com.amazonaws.s3control#UpdateStorageLensGroup" - } - ], - "traits": { - "aws.api#service": { - "sdkId": "S3 Control", - "arnNamespace": "s3", - "cloudFormationName": "S3Control", - "cloudTrailEventSource": "s3control.amazonaws.com", - "docId": "s3control-2018-08-20", - "endpointPrefix": "s3-control" - }, - "aws.auth#sigv4": { - "name": "s3" - }, - "aws.protocols#restXml": {}, - "smithy.api#documentation": "

Amazon Web Services S3 Control provides access to Amazon S3 control plane actions.

", - "smithy.api#title": "AWS S3 Control", - "smithy.api#xmlNamespace": { - "uri": "http://awss3control.amazonaws.com/doc/2018-08-20/" - }, - "smithy.rules#clientContextParams": { - "UseArnRegion": { - "documentation": "Enables this client to use an ARN's region when constructing an endpoint instead of the client's configured region.", - "type": "boolean" - } - }, - "smithy.rules#endpointRuleSet": { - "version": "1.0", - "parameters": { - "Region": { - "builtIn": "AWS::Region", - "required": false, - "documentation": "The AWS region used to dispatch the request.", - "type": "String" - }, - "UseFIPS": { - "builtIn": "AWS::UseFIPS", - "required": true, - "default": false, - "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", - "type": "Boolean" - }, - "UseDualStack": { - "builtIn": "AWS::UseDualStack", - "required": true, - "default": false, - "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", - "type": "Boolean" - }, - "Endpoint": { - "builtIn": "SDK::Endpoint", - "required": false, - "documentation": "Override the endpoint used to send this request", - "type": "String" - }, - "AccountId": { - "required": false, - "documentation": "The Account ID used to send the request. This is an optional parameter that will be set automatically for operations that require it.", - "type": "String" - }, - "RequiresAccountId": { - "required": false, - "documentation": "Internal parameter for operations that require account id host prefix.", - "type": "Boolean" - }, - "OutpostId": { - "required": false, - "documentation": "The Outpost ID. Some operations have an optional OutpostId which should be used in endpoint construction.", - "type": "String" - }, - "Bucket": { - "required": false, - "documentation": "The S3 bucket used to send the request. This is an optional parameter that will be set automatically for operations that are scoped to an S3 bucket.", - "type": "String" - }, - "AccessPointName": { - "required": false, - "documentation": "The S3 AccessPointName used to send the request. This is an optional parameter that will be set automatically for operations that are scoped to an S3 AccessPoint.", - "type": "String" - }, - "UseArnRegion": { - "builtIn": "AWS::S3Control::UseArnRegion", - "required": false, - "documentation": "When an Access Point ARN is provided and this flag is enabled, the SDK MUST use the ARN's region when constructing the endpoint instead of the client's configured region.", - "type": "Boolean" - }, - "ResourceArn": { - "required": false, - "documentation": "The resource ARN included in the request. Only set on TagResource, UntagResourceand ListTagsForResource", - "type": "String" - }, - "UseS3ExpressControlEndpoint": { - "required": false, - "documentation": "Internal parameter to indicate whether S3Express operation should use control plane, (ex. ListDirectoryAccessPoints)", - "type": "Boolean" - } - }, - "rules": [ + "smithy": "2.0", + "metadata": { + "suppressions": [ + { + "id": "HttpMethodSemantics", + "namespace": "*" + }, + { + "id": "HttpResponseCodeSemantics", + "namespace": "*" + }, + { + "id": "PaginatedTrait", + "namespace": "*" + }, + { + "id": "HttpHeaderTrait", + "namespace": "*" + }, + { + "id": "HttpUriConflict", + "namespace": "*" + }, { - "conditions": [ + "id": "Service", + "namespace": "*" + } + ] + }, + "shapes": { + "com.amazonaws.s3control#AWSS3ControlServiceV20180820": { + "type": "service", + "version": "2018-08-20", + "operations": [ { - "fn": "isSet", - "argv": [ - { - "ref": "Region" - } - ] - } - ], - "rules": [ + "target": "com.amazonaws.s3control#AssociateAccessGrantsIdentityCenter" + }, { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "partitionResult" - }, - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "partitionResult" - }, - "name" - ] - }, - "aws-cn" - ] - } - ], - "error": "Partition does not support FIPS", - "type": "error" + "target": "com.amazonaws.s3control#CreateAccessGrant" }, { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "OutpostId" - } - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "partitionResult" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "RequiresAccountId" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "RequiresAccountId" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "AccountId" - } - ] - } - ] - } - ], - "error": "AccountId is required but not set", - "type": "error" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "AccountId" - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "ref": "AccountId" - }, - false - ] - } - ] - } - ], - "error": "AccountId must only contain a-z, A-Z, 0-9 and `-`.", - "type": "error" - }, - { - "conditions": [ - { - "fn": "not", - "argv": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "ref": "OutpostId" - }, - false - ] - } - ] - } - ], - "error": "OutpostId must only contain a-z, A-Z, 0-9 and `-`.", - "type": "error" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: DualStack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "ref": "Region" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#path}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "endpoint": { - "url": "https://s3-outposts-fips.{Region}.{partitionResult#dualStackDnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "endpoint": { - "url": "https://s3-outposts-fips.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "endpoint": { - "url": "https://s3-outposts.{Region}.{partitionResult#dualStackDnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://s3-outposts.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid region: region was not a valid DNS name.", - "type": "error" - } - ], - "type": "tree" - } - ], - "type": "tree" + "target": "com.amazonaws.s3control#CreateAccessGrantsInstance" }, { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "ResourceArn" - } - ] - }, - { - "fn": "aws.parseArn", - "argv": [ - { - "ref": "ResourceArn" - } - ], - "assign": "resourceArn" - }, - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "resourceArn" - }, - "service" - ] - }, - "s3express" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "partitionResult" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "resourceArn" - }, - "region" - ] - } - ], - "assign": "arnPartition" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "arnPartition" - }, - "name" - ] - }, - { - "fn": "getAttr", - "argv": [ - { - "ref": "partitionResult" - }, - "name" - ] - } - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "UseArnRegion" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseArnRegion" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "resourceArn" - }, - "region" - ] - }, - "{Region}" - ] - } - ] - } - ], - "error": "Invalid configuration: region from ARN `{resourceArn#region}` does not match client region `{Region}` and UseArnRegion is `false`", - "type": "error" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: DualStack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "S3Express does not support Dual-stack.", - "type": "error" - }, + "target": "com.amazonaws.s3control#CreateAccessGrantsLocation" + }, + { + "target": "com.amazonaws.s3control#CreateAccessPoint" + }, + { + "target": "com.amazonaws.s3control#CreateAccessPointForObjectLambda" + }, + { + "target": "com.amazonaws.s3control#CreateBucket" + }, + { + "target": "com.amazonaws.s3control#CreateJob" + }, + { + "target": "com.amazonaws.s3control#CreateMultiRegionAccessPoint" + }, + { + "target": "com.amazonaws.s3control#CreateStorageLensGroup" + }, + { + "target": "com.amazonaws.s3control#DeleteAccessGrant" + }, + { + "target": "com.amazonaws.s3control#DeleteAccessGrantsInstance" + }, + { + "target": "com.amazonaws.s3control#DeleteAccessGrantsInstanceResourcePolicy" + }, + { + "target": "com.amazonaws.s3control#DeleteAccessGrantsLocation" + }, + { + "target": "com.amazonaws.s3control#DeleteAccessPoint" + }, + { + "target": "com.amazonaws.s3control#DeleteAccessPointForObjectLambda" + }, + { + "target": "com.amazonaws.s3control#DeleteAccessPointPolicy" + }, + { + "target": "com.amazonaws.s3control#DeleteAccessPointPolicyForObjectLambda" + }, + { + "target": "com.amazonaws.s3control#DeleteAccessPointScope" + }, + { + "target": "com.amazonaws.s3control#DeleteBucket" + }, + { + "target": "com.amazonaws.s3control#DeleteBucketLifecycleConfiguration" + }, + { + "target": "com.amazonaws.s3control#DeleteBucketPolicy" + }, + { + "target": "com.amazonaws.s3control#DeleteBucketReplication" + }, + { + "target": "com.amazonaws.s3control#DeleteBucketTagging" + }, + { + "target": "com.amazonaws.s3control#DeleteJobTagging" + }, + { + "target": "com.amazonaws.s3control#DeleteMultiRegionAccessPoint" + }, + { + "target": "com.amazonaws.s3control#DeletePublicAccessBlock" + }, + { + "target": "com.amazonaws.s3control#DeleteStorageLensConfiguration" + }, + { + "target": "com.amazonaws.s3control#DeleteStorageLensConfigurationTagging" + }, + { + "target": "com.amazonaws.s3control#DeleteStorageLensGroup" + }, + { + "target": "com.amazonaws.s3control#DescribeJob" + }, + { + "target": "com.amazonaws.s3control#DescribeMultiRegionAccessPointOperation" + }, + { + "target": "com.amazonaws.s3control#DissociateAccessGrantsIdentityCenter" + }, + { + "target": "com.amazonaws.s3control#GetAccessGrant" + }, + { + "target": "com.amazonaws.s3control#GetAccessGrantsInstance" + }, + { + "target": "com.amazonaws.s3control#GetAccessGrantsInstanceForPrefix" + }, + { + "target": "com.amazonaws.s3control#GetAccessGrantsInstanceResourcePolicy" + }, + { + "target": "com.amazonaws.s3control#GetAccessGrantsLocation" + }, + { + "target": "com.amazonaws.s3control#GetAccessPoint" + }, + { + "target": "com.amazonaws.s3control#GetAccessPointConfigurationForObjectLambda" + }, + { + "target": "com.amazonaws.s3control#GetAccessPointForObjectLambda" + }, + { + "target": "com.amazonaws.s3control#GetAccessPointPolicy" + }, + { + "target": "com.amazonaws.s3control#GetAccessPointPolicyForObjectLambda" + }, + { + "target": "com.amazonaws.s3control#GetAccessPointPolicyStatus" + }, + { + "target": "com.amazonaws.s3control#GetAccessPointPolicyStatusForObjectLambda" + }, + { + "target": "com.amazonaws.s3control#GetAccessPointScope" + }, + { + "target": "com.amazonaws.s3control#GetBucket" + }, + { + "target": "com.amazonaws.s3control#GetBucketLifecycleConfiguration" + }, + { + "target": "com.amazonaws.s3control#GetBucketPolicy" + }, + { + "target": "com.amazonaws.s3control#GetBucketReplication" + }, + { + "target": "com.amazonaws.s3control#GetBucketTagging" + }, + { + "target": "com.amazonaws.s3control#GetBucketVersioning" + }, + { + "target": "com.amazonaws.s3control#GetDataAccess" + }, + { + "target": "com.amazonaws.s3control#GetJobTagging" + }, + { + "target": "com.amazonaws.s3control#GetMultiRegionAccessPoint" + }, + { + "target": "com.amazonaws.s3control#GetMultiRegionAccessPointPolicy" + }, + { + "target": "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyStatus" + }, + { + "target": "com.amazonaws.s3control#GetMultiRegionAccessPointRoutes" + }, + { + "target": "com.amazonaws.s3control#GetPublicAccessBlock" + }, + { + "target": "com.amazonaws.s3control#GetStorageLensConfiguration" + }, + { + "target": "com.amazonaws.s3control#GetStorageLensConfigurationTagging" + }, + { + "target": "com.amazonaws.s3control#GetStorageLensGroup" + }, + { + "target": "com.amazonaws.s3control#ListAccessGrants" + }, + { + "target": "com.amazonaws.s3control#ListAccessGrantsInstances" + }, + { + "target": "com.amazonaws.s3control#ListAccessGrantsLocations" + }, + { + "target": "com.amazonaws.s3control#ListAccessPoints" + }, + { + "target": "com.amazonaws.s3control#ListAccessPointsForDirectoryBuckets" + }, + { + "target": "com.amazonaws.s3control#ListAccessPointsForObjectLambda" + }, + { + "target": "com.amazonaws.s3control#ListCallerAccessGrants" + }, + { + "target": "com.amazonaws.s3control#ListJobs" + }, + { + "target": "com.amazonaws.s3control#ListMultiRegionAccessPoints" + }, + { + "target": "com.amazonaws.s3control#ListRegionalBuckets" + }, + { + "target": "com.amazonaws.s3control#ListStorageLensConfigurations" + }, + { + "target": "com.amazonaws.s3control#ListStorageLensGroups" + }, + { + "target": "com.amazonaws.s3control#ListTagsForResource" + }, + { + "target": "com.amazonaws.s3control#PutAccessGrantsInstanceResourcePolicy" + }, + { + "target": "com.amazonaws.s3control#PutAccessPointConfigurationForObjectLambda" + }, + { + "target": "com.amazonaws.s3control#PutAccessPointPolicy" + }, + { + "target": "com.amazonaws.s3control#PutAccessPointPolicyForObjectLambda" + }, + { + "target": "com.amazonaws.s3control#PutAccessPointScope" + }, + { + "target": "com.amazonaws.s3control#PutBucketLifecycleConfiguration" + }, + { + "target": "com.amazonaws.s3control#PutBucketPolicy" + }, + { + "target": "com.amazonaws.s3control#PutBucketReplication" + }, + { + "target": "com.amazonaws.s3control#PutBucketTagging" + }, + { + "target": "com.amazonaws.s3control#PutBucketVersioning" + }, + { + "target": "com.amazonaws.s3control#PutJobTagging" + }, + { + "target": "com.amazonaws.s3control#PutMultiRegionAccessPointPolicy" + }, + { + "target": "com.amazonaws.s3control#PutPublicAccessBlock" + }, + { + "target": "com.amazonaws.s3control#PutStorageLensConfiguration" + }, + { + "target": "com.amazonaws.s3control#PutStorageLensConfigurationTagging" + }, + { + "target": "com.amazonaws.s3control#SubmitMultiRegionAccessPointRoutes" + }, + { + "target": "com.amazonaws.s3control#TagResource" + }, + { + "target": "com.amazonaws.s3control#UntagResource" + }, + { + "target": "com.amazonaws.s3control#UpdateAccessGrantsLocation" + }, + { + "target": "com.amazonaws.s3control#UpdateJobPriority" + }, + { + "target": "com.amazonaws.s3control#UpdateJobStatus" + }, + { + "target": "com.amazonaws.s3control#UpdateStorageLensGroup" + } + ], + "traits": { + "aws.api#service": { + "sdkId": "S3 Control", + "arnNamespace": "s3", + "cloudFormationName": "S3Control", + "cloudTrailEventSource": "s3control.amazonaws.com", + "docId": "s3control-2018-08-20", + "endpointPrefix": "s3-control" + }, + "aws.auth#sigv4": { + "name": "s3" + }, + "aws.protocols#restXml": {}, + "smithy.api#documentation": "

Amazon Web Services S3 Control provides access to Amazon S3 control plane actions.

", + "smithy.api#title": "AWS S3 Control", + "smithy.api#xmlNamespace": { + "uri": "http://awss3control.amazonaws.com/doc/2018-08-20/" + }, + "smithy.rules#clientContextParams": { + "UseArnRegion": { + "documentation": "Enables this client to use an ARN's region when constructing an endpoint instead of the client's configured region.", + "type": "boolean" + } + }, + "smithy.rules#endpointRuleSet": { + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + }, + "AccountId": { + "required": false, + "documentation": "The Account ID used to send the request. This is an optional parameter that will be set automatically for operations that require it.", + "type": "String" + }, + "RequiresAccountId": { + "required": false, + "documentation": "Internal parameter for operations that require account id host prefix.", + "type": "Boolean" + }, + "OutpostId": { + "required": false, + "documentation": "The Outpost ID. Some operations have an optional OutpostId which should be used in endpoint construction.", + "type": "String" + }, + "Bucket": { + "required": false, + "documentation": "The S3 bucket used to send the request. This is an optional parameter that will be set automatically for operations that are scoped to an S3 bucket.", + "type": "String" + }, + "AccessPointName": { + "required": false, + "documentation": "The S3 AccessPointName used to send the request. This is an optional parameter that will be set automatically for operations that are scoped to an S3 AccessPoint.", + "type": "String" + }, + "UseArnRegion": { + "builtIn": "AWS::S3Control::UseArnRegion", + "required": false, + "documentation": "When an Access Point ARN is provided and this flag is enabled, the SDK MUST use the ARN's region when constructing the endpoint instead of the client's configured region.", + "type": "Boolean" + }, + "ResourceArn": { + "required": false, + "documentation": "The resource ARN included in the request. Only set on TagResource, UntagResourceand ListTagsForResource", + "type": "String" + }, + "UseS3ExpressControlEndpoint": { + "required": false, + "documentation": "Internal parameter to indicate whether S3Express operation should use control plane, (ex. ListDirectoryAccessPoints)", + "type": "Boolean" + } + }, + "rules": [ + { + "conditions": [ { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}", - "properties": { - "authSchemes": [ + "fn": "isSet", + "argv": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" + "ref": "Region" } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + ] + } + ], + "rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseFIPS" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" }, - true - ] - } - ], - "endpoint": { - "url": "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "partitionResult" + }, + "name" + ] + }, + "aws-cn" + ] } - ] - }, - "headers": {} - }, - "type": "endpoint" + ], + "error": "Partition does not support FIPS", + "type": "error" }, { - "conditions": [], - "endpoint": { - "url": "https://s3express-control.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ + "conditions": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" + "fn": "isSet", + "argv": [ + { + "ref": "OutpostId" + } + ] } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Client was configured for partition `{partitionResult#name}` but ARN has `{arnPartition#name}`", - "type": "error" - } - ], - "type": "tree" - } - ], - "type": "tree" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "AccessPointName" - } - ] - }, - { - "fn": "substring", - "argv": [ - { - "ref": "AccessPointName" - }, - 0, - 7, - true - ], - "assign": "accessPointSuffix" - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "accessPointSuffix" - }, - "--xa-s3" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "partitionResult" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: DualStack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "S3Express does not support Dual-stack.", - "type": "error" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "substring", - "argv": [ - { - "ref": "AccessPointName" - }, - 7, - 15, - true - ], - "assign": "s3expressAvailabilityZoneId" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "AccessPointName" + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "RequiresAccountId" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "RequiresAccountId" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "AccountId" + } + ] + } + ] + } + ], + "error": "AccountId is required but not set", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "AccountId" + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "ref": "AccountId" + }, + false + ] + } + ] + } + ], + "error": "AccountId must only contain a-z, A-Z, 0-9 and `-`.", + "type": "error" + }, + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "ref": "OutpostId" + }, + false + ] + } + ] + } + ], + "error": "OutpostId must only contain a-z, A-Z, 0-9 and `-`.", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: DualStack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "ref": "Region" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3-outposts-fips.{Region}.{partitionResult#dualStackDnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3-outposts-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3-outposts.{Region}.{partitionResult#dualStackDnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3-outposts.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid region: region was not a valid DNS name.", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" }, - 15, - 17, - true - ], - "assign": "s3expressAvailabilityZoneDelim" - }, - { - "fn": "stringEquals", - "argv": [ { - "ref": "s3expressAvailabilityZoneDelim" + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "ResourceArn" + } + ] + }, + { + "fn": "aws.parseArn", + "argv": [ + { + "ref": "ResourceArn" + } + ], + "assign": "resourceArn" + }, + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "resourceArn" + }, + "service" + ] + }, + "s3express" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "resourceArn" + }, + "region" + ] + } + ], + "assign": "arnPartition" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "arnPartition" + }, + "name" + ] + }, + { + "fn": "getAttr", + "argv": [ + { + "ref": "partitionResult" + }, + "name" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "UseArnRegion" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseArnRegion" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "resourceArn" + }, + "region" + ] + }, + "{Region}" + ] + } + ] + } + ], + "error": "Invalid configuration: region from ARN `{resourceArn#region}` does not match client region `{Region}` and UseArnRegion is `false`", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: DualStack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "S3Express does not support Dual-stack.", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3express-control.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Client was configured for partition `{partitionResult#name}` but ARN has `{arnPartition#name}`", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" }, - "--" - ] - } - ], - "rules": [ - { - "conditions": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "endpoint": { - "url": "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://s3express-control.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "substring", - "argv": [ - { - "ref": "AccessPointName" - }, - 7, - 16, - true - ], - "assign": "s3expressAvailabilityZoneId" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "AccessPointName" - }, - 16, - 18, - true - ], - "assign": "s3expressAvailabilityZoneDelim" - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "s3expressAvailabilityZoneDelim" - }, - "--" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "endpoint": { - "url": "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://s3express-control.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "substring", - "argv": [ - { - "ref": "AccessPointName" - }, - 7, - 20, - true - ], - "assign": "s3expressAvailabilityZoneId" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "AccessPointName" - }, - 20, - 22, - true - ], - "assign": "s3expressAvailabilityZoneDelim" - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "s3expressAvailabilityZoneDelim" - }, - "--" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "endpoint": { - "url": "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://s3express-control.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "substring", - "argv": [ - { - "ref": "AccessPointName" - }, - 7, - 21, - true - ], - "assign": "s3expressAvailabilityZoneId" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "AccessPointName" - }, - 21, - 23, - true - ], - "assign": "s3expressAvailabilityZoneDelim" - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "s3expressAvailabilityZoneDelim" - }, - "--" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "endpoint": { - "url": "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://s3express-control.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "substring", - "argv": [ - { - "ref": "AccessPointName" - }, - 7, - 27, - true - ], - "assign": "s3expressAvailabilityZoneId" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "AccessPointName" - }, - 27, - 29, - true - ], - "assign": "s3expressAvailabilityZoneDelim" - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "s3expressAvailabilityZoneDelim" - }, - "--" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "endpoint": { - "url": "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://s3express-control.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Unrecognized S3Express Access Point name format.", - "type": "error" - } - ], - "type": "tree" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "UseS3ExpressControlEndpoint" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseS3ExpressControlEndpoint" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "partitionResult" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: DualStack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "S3Express does not support Dual-stack.", - "type": "error" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "endpoint": { - "url": "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://s3express-control.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "snow" - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "partitionResult" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "S3 Snow does not support DualStack", - "type": "error" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "error": "S3 Snow does not support FIPS", - "type": "error" - }, - { - "conditions": [], - "endpoint": { - "url": "{url#scheme}://{url#authority}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "AccessPointName" - } - ] - }, - { - "fn": "aws.parseArn", - "argv": [ - { - "ref": "AccessPointName" - } - ], - "assign": "accessPointArn" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "accessPointArn" - }, - "resourceId[0]" - ], - "assign": "arnType" - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "arnType" - }, - "" - ] - } - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "accessPointArn" - }, - "service" - ] - }, - "s3-outposts" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "accessPointArn" - }, - "resourceId[1]" - ], - "assign": "outpostId" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "ref": "outpostId" - }, - false - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: DualStack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [ + "conditions": [ { - "fn": "isSet", - "argv": [ - { - "ref": "UseArnRegion" - } - ] + "fn": "isSet", + "argv": [ + { + "ref": "AccessPointName" + } + ] }, { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseArnRegion" - }, - false - ] + "fn": "substring", + "argv": [ + { + "ref": "AccessPointName" + }, + 0, + 7, + true + ], + "assign": "accessPointSuffix" }, { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "fn": "stringEquals", + "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "accessPointArn" - }, - "region" - ] + "ref": "accessPointSuffix" }, - "{Region}" - ] - } - ] + "--xa-s3" + ] } - ], - "error": "Invalid configuration: region from ARN `{accessPointArn#region}` does not match client region `{Region}` and UseArnRegion is `false`", - "type": "error" - }, - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "partitionResult" - } - ], - "rules": [ + ], + "rules": [ { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "accessPointArn" - }, - "region" - ] - } - ], - "assign": "arnPartition" - } - ], - "rules": [ - { - "conditions": [ + "conditions": [ { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "arnPartition" - }, - "name" - ] - }, - { - "fn": "getAttr", - "argv": [ + "fn": "aws.partition", + "argv": [ { - "ref": "partitionResult" - }, - "name" - ] - } - ] + "ref": "Region" + } + ], + "assign": "partitionResult" } - ], - "rules": [ + ], + "rules": [ { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ + "conditions": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "accessPointArn" - }, - "region" - ] + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] }, - true - ] - } - ], - "rules": [ - { - "conditions": [ { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "accessPointArn" - }, - "accountId" - ] + "ref": "UseDualStack" }, - "" - ] - } - ] + true + ] } - ], - "rules": [ + ], + "error": "Invalid Configuration: DualStack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "accessPointArn" - }, - "accountId" - ] + "ref": "UseDualStack" }, - false - ] - } - ], - "rules": [ - { - "conditions": [ + true + ] + } + ], + "error": "S3Express does not support Dual-stack.", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ { - "fn": "isSet", - "argv": [ - { - "ref": "AccountId" - } - ] - }, + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "AccountId" - }, - "{accessPointArn#accountId}" - ] - } - ] + "ref": "Endpoint" } - ], - "error": "Invalid ARN: the accountId specified in the ARN (`{accessPointArn#accountId}`) does not match the parameter (`{AccountId}`)", - "type": "error" - }, - { - "conditions": [ + ], + "assign": "url" + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}", + "properties": { + "authSchemes": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "accessPointArn" - }, - "resourceId[2]" - ], - "assign": "outpostType" + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" } - ], - "rules": [ + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ { - "conditions": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "accessPointArn" - }, - "resourceId[3]" - ], - "assign": "accessPointName" - } - ], - "rules": [ - { - "conditions": [ + "ref": "AccessPointName" + }, + 7, + 15, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "AccessPointName" + }, + 15, + 17, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ { - "fn": "stringEquals", - "argv": [ - { - "ref": "outpostType" - }, - "accesspoint" - ] + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" } - ], - "rules": [ + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3express-control.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "endpoint": { - "url": "https://s3-outposts-fips.{accessPointArn#region}.{arnPartition#dualStackDnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{accessPointArn#region}" - } - ] - }, - "headers": { - "x-amz-account-id": [ - "{accessPointArn#accountId}" - ], - "x-amz-outpost-id": [ - "{outpostId}" - ] - } - }, - "type": "endpoint" - }, + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "AccessPointName" + }, + 7, + 16, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "AccessPointName" + }, + 16, + 18, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "endpoint": { - "url": "https://s3-outposts-fips.{accessPointArn#region}.{arnPartition#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{accessPointArn#region}" - } - ] - }, - "headers": { - "x-amz-account-id": [ - "{accessPointArn#accountId}" - ], - "x-amz-outpost-id": [ - "{outpostId}" - ] - } - }, - "type": "endpoint" + "ref": "UseFIPS" }, + true + ] + } + ], + "endpoint": { + "url": "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "endpoint": { - "url": "https://s3-outposts.{accessPointArn#region}.{arnPartition#dualStackDnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{accessPointArn#region}" - } - ] - }, - "headers": { - "x-amz-account-id": [ - "{accessPointArn#accountId}" - ], - "x-amz-outpost-id": [ - "{outpostId}" - ] - } - }, - "type": "endpoint" + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3express-control.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "AccessPointName" + }, + 7, + 20, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "AccessPointName" + }, + 20, + 22, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" }, + true + ] + } + ], + "endpoint": { + "url": "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#path}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{accessPointArn#region}" - } - ] - }, - "headers": { - "x-amz-account-id": [ - "{accessPointArn#accountId}" - ], - "x-amz-outpost-id": [ - "{outpostId}" - ] - } - }, - "type": "endpoint" + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3express-control.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "AccessPointName" + }, + 7, + 21, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "AccessPointName" + }, + 21, + 23, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" }, + true + ] + } + ], + "endpoint": { + "url": "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ { - "conditions": [], - "endpoint": { - "url": "https://s3-outposts.{accessPointArn#region}.{arnPartition#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{accessPointArn#region}" - } - ] - }, - "headers": { - "x-amz-account-id": [ - "{accessPointArn#accountId}" - ], - "x-amz-outpost-id": [ - "{outpostId}" - ] - } - }, - "type": "endpoint" + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Expected an outpost type `accesspoint`, found `{outpostType}`", - "type": "error" - } - ], - "type": "tree" + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3express-control.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "AccessPointName" + }, + 7, + 27, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "AccessPointName" + }, + 27, + 29, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ { - "conditions": [], - "error": "Invalid ARN: expected an access point name", - "type": "error" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] } - ], - "type": "tree" + ], + "endpoint": { + "url": "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} }, - { - "conditions": [], - "error": "Invalid ARN: Expected a 4-component resource", - "type": "error" - } - ], - "type": "tree" + "type": "endpoint" }, { - "conditions": [], - "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{accessPointArn#accountId}`", - "type": "error" + "conditions": [], + "endpoint": { + "url": "https://s3express-control.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: missing account ID", - "type": "error" - } - ], - "type": "tree" + ], + "type": "tree" }, { - "conditions": [], - "error": "Invalid region in ARN: `{accessPointArn#region}` (invalid DNS name)", - "type": "error" + "conditions": [], + "error": "Unrecognized S3Express Access Point name format.", + "type": "error" } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Client was configured for partition `{partitionResult#name}` but ARN has `{arnPartition#name}`", - "type": "error" - } - ], - "type": "tree" + ], + "type": "tree" } - ], - "type": "tree" - } - ], - "type": "tree" + ], + "type": "tree" }, { - "conditions": [], - "error": "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`., found: `{outpostId}`", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: The Outpost Id was not set", - "type": "error" - } - ], - "type": "tree" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: No ARN type specified", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Bucket" - } - ] - }, - { - "fn": "aws.parseArn", - "argv": [ - { - "ref": "Bucket" - } - ], - "assign": "bucketArn" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "resourceId[0]" - ], - "assign": "arnType" - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "arnType" - }, - "" - ] - } - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "service" - ] - }, - "s3-outposts" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "resourceId[1]" - ], - "assign": "outpostId" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "ref": "outpostId" - }, - false - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: DualStack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "UseArnRegion" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseArnRegion" - }, - false - ] - }, + "conditions": [ { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "fn": "isSet", + "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "region" - ] - }, - "{Region}" - ] - } - ] - } - ], - "error": "Invalid configuration: region from ARN `{bucketArn#region}` does not match client region `{Region}` and UseArnRegion is `false`", - "type": "error" - }, - { - "conditions": [ + "ref": "UseS3ExpressControlEndpoint" + } + ] + }, { - "fn": "aws.partition", - "argv": [ - { - "fn": "getAttr", - "argv": [ + "fn": "booleanEquals", + "argv": [ { - "ref": "bucketArn" + "ref": "UseS3ExpressControlEndpoint" }, - "region" - ] - } - ], - "assign": "arnPartition" + true + ] } - ], - "rules": [ + ], + "rules": [ { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "partitionResult" - } - ], - "rules": [ - { - "conditions": [ + "conditions": [ { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "arnPartition" - }, - "name" - ] - }, - { - "fn": "getAttr", - "argv": [ + "fn": "aws.partition", + "argv": [ { - "ref": "partitionResult" - }, - "name" - ] - } - ] + "ref": "Region" + } + ], + "assign": "partitionResult" } - ], - "rules": [ + ], + "rules": [ { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ + "conditions": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "region" - ] + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] }, - true - ] - } - ], - "rules": [ - { - "conditions": [ { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "accountId" - ] + "ref": "UseDualStack" }, - "" - ] - } - ] + true + ] } - ], - "rules": [ + ], + "error": "Invalid Configuration: DualStack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "accountId" - ] - }, - false - ] - } - ], - "rules": [ - { - "conditions": [ + "fn": "booleanEquals", + "argv": [ { - "fn": "isSet", - "argv": [ - { - "ref": "AccountId" - } - ] + "ref": "UseDualStack" }, + true + ] + } + ], + "error": "S3Express does not support Dual-stack.", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "AccountId" - }, - "{bucketArn#accountId}" - ] - } - ] + "ref": "Endpoint" } - ], - "error": "Invalid ARN: the accountId specified in the ARN (`{bucketArn#accountId}`) does not match the parameter (`{AccountId}`)", - "type": "error" - }, - { - "conditions": [ + ] + }, + { + "fn": "parseURL", + "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "resourceId[2]" - ], - "assign": "outpostType" + "ref": "Endpoint" } - ], - "rules": [ + ], + "assign": "url" + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}", + "properties": { + "authSchemes": [ { - "conditions": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "resourceId[3]" - ], - "assign": "bucketName" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "outpostType" - }, - "bucket" - ] - } - ], - "rules": [ + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3express-control.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "snow" + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "S3 Snow does not support DualStack", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "S3 Snow does not support FIPS", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{url#authority}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "AccessPointName" + } + ] + }, + { + "fn": "aws.parseArn", + "argv": [ + { + "ref": "AccessPointName" + } + ], + "assign": "accessPointArn" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "accessPointArn" + }, + "resourceId[0]" + ], + "assign": "arnType" + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "accessPointArn" + }, + "service" + ] + }, + "s3-outposts" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "accessPointArn" + }, + "resourceId[1]" + ], + "assign": "outpostId" + } + ], + "rules": [ + { + "conditions": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + "fn": "isValidHostLabel", + "argv": [ { - "ref": "UseFIPS" + "ref": "outpostId" }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ + false + ] + } + ], + "rules": [ + { + "conditions": [ { - "ref": "UseDualStack" + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] }, - true - ] - } - ], - "endpoint": { - "url": "https://s3-outposts-fips.{bucketArn#region}.{arnPartition#dualStackDnsSuffix}", - "properties": { - "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{bucketArn#region}" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } - ] - }, - "headers": { - "x-amz-account-id": [ - "{bucketArn#accountId}" - ], - "x-amz-outpost-id": [ - "{outpostId}" - ] - } - }, - "type": "endpoint" + ], + "error": "Invalid Configuration: DualStack and custom endpoint are not supported", + "type": "error" }, { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseFIPS" + "fn": "isSet", + "argv": [ + { + "ref": "UseArnRegion" + } + ] }, - true - ] - } - ], - "endpoint": { - "url": "https://s3-outposts-fips.{bucketArn#region}.{arnPartition#dnsSuffix}", - "properties": { - "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{bucketArn#region}" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseArnRegion" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "accessPointArn" + }, + "region" + ] + }, + "{Region}" + ] + } + ] } - ] - }, - "headers": { - "x-amz-account-id": [ - "{bucketArn#accountId}" - ], - "x-amz-outpost-id": [ - "{outpostId}" - ] - } - }, - "type": "endpoint" + ], + "error": "Invalid configuration: region from ARN `{accessPointArn#region}` does not match client region `{Region}` and UseArnRegion is `false`", + "type": "error" }, { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseDualStack" - }, - true - ] - } - ], - "endpoint": { - "url": "https://s3-outposts.{bucketArn#region}.{arnPartition#dualStackDnsSuffix}", - "properties": { - "authSchemes": [ + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{bucketArn#region}" + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "accessPointArn" + }, + "region" + ] + } + ], + "assign": "arnPartition" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "arnPartition" + }, + "name" + ] + }, + { + "fn": "getAttr", + "argv": [ + { + "ref": "partitionResult" + }, + "name" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "accessPointArn" + }, + "region" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "accessPointArn" + }, + "accountId" + ] + }, + "" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "accessPointArn" + }, + "accountId" + ] + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "AccountId" + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "AccountId" + }, + "{accessPointArn#accountId}" + ] + } + ] + } + ], + "error": "Invalid ARN: the accountId specified in the ARN (`{accessPointArn#accountId}`) does not match the parameter (`{AccountId}`)", + "type": "error" + }, + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "accessPointArn" + }, + "resourceId[2]" + ], + "assign": "outpostType" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "accessPointArn" + }, + "resourceId[3]" + ], + "assign": "accessPointName" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "outpostType" + }, + "accesspoint" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3-outposts-fips.{accessPointArn#region}.{arnPartition#dualStackDnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{accessPointArn#region}" + } + ] + }, + "headers": { + "x-amz-account-id": [ + "{accessPointArn#accountId}" + ], + "x-amz-outpost-id": [ + "{outpostId}" + ] + } + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3-outposts-fips.{accessPointArn#region}.{arnPartition#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{accessPointArn#region}" + } + ] + }, + "headers": { + "x-amz-account-id": [ + "{accessPointArn#accountId}" + ], + "x-amz-outpost-id": [ + "{outpostId}" + ] + } + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3-outposts.{accessPointArn#region}.{arnPartition#dualStackDnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{accessPointArn#region}" + } + ] + }, + "headers": { + "x-amz-account-id": [ + "{accessPointArn#accountId}" + ], + "x-amz-outpost-id": [ + "{outpostId}" + ] + } + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{accessPointArn#region}" + } + ] + }, + "headers": { + "x-amz-account-id": [ + "{accessPointArn#accountId}" + ], + "x-amz-outpost-id": [ + "{outpostId}" + ] + } + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3-outposts.{accessPointArn#region}.{arnPartition#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{accessPointArn#region}" + } + ] + }, + "headers": { + "x-amz-account-id": [ + "{accessPointArn#accountId}" + ], + "x-amz-outpost-id": [ + "{outpostId}" + ] + } + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Expected an outpost type `accesspoint`, found `{outpostType}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: expected an access point name", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: Expected a 4-component resource", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{accessPointArn#accountId}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: missing account ID", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid region in ARN: `{accessPointArn#region}` (invalid DNS name)", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Client was configured for partition `{partitionResult#name}` but ARN has `{arnPartition#name}`", + "type": "error" + } + ], + "type": "tree" } - ] - }, - "headers": { - "x-amz-account-id": [ - "{bucketArn#accountId}" - ], - "x-amz-outpost-id": [ - "{outpostId}" - ] - } - }, - "type": "endpoint" + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`., found: `{outpostId}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: The Outpost Id was not set", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: No ARN type specified", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Bucket" + } + ] + }, + { + "fn": "aws.parseArn", + "argv": [ + { + "ref": "Bucket" + } + ], + "assign": "bucketArn" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "resourceId[0]" + ], + "assign": "arnType" + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "service" + ] + }, + "s3-outposts" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" }, + "resourceId[1]" + ], + "assign": "outpostId" + } + ], + "rules": [ + { + "conditions": [ { - "conditions": [ - { - "fn": "isSet", - "argv": [ + "fn": "isValidHostLabel", + "argv": [ { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ + "ref": "outpostId" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, { - "ref": "Endpoint" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } - ], - "assign": "url" - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#path}", - "properties": { - "authSchemes": [ + ], + "error": "Invalid Configuration: DualStack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "UseArnRegion" + } + ] + }, { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{bucketArn#region}" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseArnRegion" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "region" + ] + }, + "{Region}" + ] + } + ] } - ] - }, - "headers": { - "x-amz-account-id": [ - "{bucketArn#accountId}" - ], - "x-amz-outpost-id": [ - "{outpostId}" - ] - } - }, - "type": "endpoint" + ], + "error": "Invalid configuration: region from ARN `{bucketArn#region}` does not match client region `{Region}` and UseArnRegion is `false`", + "type": "error" }, { - "conditions": [], - "endpoint": { - "url": "https://s3-outposts.{bucketArn#region}.{arnPartition#dnsSuffix}", - "properties": { - "authSchemes": [ + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "region" + ] + } + ], + "assign": "arnPartition" + } + ], + "rules": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{bucketArn#region}" + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "arnPartition" + }, + "name" + ] + }, + { + "fn": "getAttr", + "argv": [ + { + "ref": "partitionResult" + }, + "name" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "region" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "accountId" + ] + }, + "" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "accountId" + ] + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "AccountId" + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "AccountId" + }, + "{bucketArn#accountId}" + ] + } + ] + } + ], + "error": "Invalid ARN: the accountId specified in the ARN (`{bucketArn#accountId}`) does not match the parameter (`{AccountId}`)", + "type": "error" + }, + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "resourceId[2]" + ], + "assign": "outpostType" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "resourceId[3]" + ], + "assign": "bucketName" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "outpostType" + }, + "bucket" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3-outposts-fips.{bucketArn#region}.{arnPartition#dualStackDnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{bucketArn#region}" + } + ] + }, + "headers": { + "x-amz-account-id": [ + "{bucketArn#accountId}" + ], + "x-amz-outpost-id": [ + "{outpostId}" + ] + } + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3-outposts-fips.{bucketArn#region}.{arnPartition#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{bucketArn#region}" + } + ] + }, + "headers": { + "x-amz-account-id": [ + "{bucketArn#accountId}" + ], + "x-amz-outpost-id": [ + "{outpostId}" + ] + } + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3-outposts.{bucketArn#region}.{arnPartition#dualStackDnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{bucketArn#region}" + } + ] + }, + "headers": { + "x-amz-account-id": [ + "{bucketArn#accountId}" + ], + "x-amz-outpost-id": [ + "{outpostId}" + ] + } + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{bucketArn#region}" + } + ] + }, + "headers": { + "x-amz-account-id": [ + "{bucketArn#accountId}" + ], + "x-amz-outpost-id": [ + "{outpostId}" + ] + } + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3-outposts.{bucketArn#region}.{arnPartition#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{bucketArn#region}" + } + ] + }, + "headers": { + "x-amz-account-id": [ + "{bucketArn#accountId}" + ], + "x-amz-outpost-id": [ + "{outpostId}" + ] + } + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: Expected an outpost type `bucket`, found `{outpostType}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: expected a bucket name", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: Expected a 4-component resource", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: missing account ID", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Client was configured for partition `{partitionResult#name}` but ARN has `{arnPartition#name}`", + "type": "error" + } + ], + "type": "tree" } - ] - }, - "headers": { - "x-amz-account-id": [ - "{bucketArn#accountId}" - ], - "x-amz-outpost-id": [ - "{outpostId}" - ] - } - }, - "type": "endpoint" + ], + "type": "tree" } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: Expected an outpost type `bucket`, found `{outpostType}`", - "type": "error" - } - ], - "type": "tree" + ], + "type": "tree" }, { - "conditions": [], - "error": "Invalid ARN: expected a bucket name", - "type": "error" + "conditions": [], + "error": "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`., found: `{outpostId}`", + "type": "error" } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: Expected a 4-component resource", - "type": "error" - } - ], - "type": "tree" + ], + "type": "tree" }, { - "conditions": [], - "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`", - "type": "error" + "conditions": [], + "error": "Invalid ARN: The Outpost Id was not set", + "type": "error" } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: missing account ID", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)", - "type": "error" + ], + "type": "tree" } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Client was configured for partition `{partitionResult#name}` but ARN has `{arnPartition#name}`", - "type": "error" - } - ], - "type": "tree" + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: No ARN type specified", + "type": "error" } - ], - "type": "tree" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`., found: `{outpostId}`", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: The Outpost Id was not set", - "type": "error" - } - ], - "type": "tree" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: No ARN type specified", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "partitionResult" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "ref": "Region" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "RequiresAccountId" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "RequiresAccountId" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "AccountId" - } - ] - } - ] - } - ], - "error": "AccountId is required but not set", - "type": "error" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "AccountId" - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "ref": "AccountId" - }, - false - ] - } - ] - } - ], - "error": "AccountId must only contain a-z, A-Z, 0-9 and `-`.", - "type": "error" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: DualStack and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "RequiresAccountId" - } - ] + ], + "type": "tree" }, { - "fn": "booleanEquals", - "argv": [ - { - "ref": "RequiresAccountId" - }, - true - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "AccountId" - } - ] - } - ], - "endpoint": { - "url": "{url#scheme}://{AccountId}.{url#authority}{url#path}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#path}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "RequiresAccountId" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "RequiresAccountId" - }, - true - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "AccountId" - } - ] - } - ], - "endpoint": { - "url": "https://{AccountId}.s3-control-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "ref": "Region" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "RequiresAccountId" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "RequiresAccountId" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "AccountId" + } + ] + } + ] + } + ], + "error": "AccountId is required but not set", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "AccountId" + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "ref": "AccountId" + }, + false + ] + } + ] + } + ], + "error": "AccountId must only contain a-z, A-Z, 0-9 and `-`.", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: DualStack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "RequiresAccountId" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "RequiresAccountId" + }, + true + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "AccountId" + } + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{AccountId}.{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "RequiresAccountId" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "RequiresAccountId" + }, + true + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "AccountId" + } + ] + } + ], + "endpoint": { + "url": "https://{AccountId}.s3-control-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3-control-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "RequiresAccountId" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "RequiresAccountId" + }, + true + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "AccountId" + } + ] + } + ], + "endpoint": { + "url": "https://{AccountId}.s3-control-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + } + ], + "endpoint": { + "url": "https://s3-control-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "RequiresAccountId" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "RequiresAccountId" + }, + true + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "AccountId" + } + ] + } + ], + "endpoint": { + "url": "https://{AccountId}.s3-control.dualstack.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3-control.dualstack.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "RequiresAccountId" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "RequiresAccountId" + }, + true + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "AccountId" + } + ] + } + ], + "endpoint": { + "url": "https://{AccountId}.s3-control.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + } + ], + "endpoint": { + "url": "https://s3-control.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid region: region was not a valid DNS name.", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "endpoint": { - "url": "https://s3-control-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" + "conditions": [], + "error": "Region must be set", + "type": "error" + } + ] + }, + "smithy.rules#endpointTests": { + "testCases": [ + { + "documentation": "Vanilla outposts without ARN region + access point ARN@us-west-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-west-2.amazonaws.com" } - ] }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + "operationInputs": [ { - "ref": "UseFIPS" + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } }, - true - ] + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + } + ], + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Vanilla outposts with ARN region + access point ARN@us-west-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-east-1.amazonaws.com" + } }, - { - "fn": "booleanEquals", - "argv": [ + "operationInputs": [ { - "ref": "UseDualStack" + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } }, - false - ] - }, - { - "fn": "isSet", - "argv": [ { - "ref": "RequiresAccountId" + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + } + ], + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "accept an access point ARN@us-west-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-west-2.amazonaws.com" } - ] }, - { - "fn": "booleanEquals", - "argv": [ + "operationInputs": [ { - "ref": "RequiresAccountId" + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } }, - true - ] - }, - { - "fn": "isSet", - "argv": [ { - "ref": "AccountId" + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } } - ] + ], + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false } - ], - "endpoint": { - "url": "https://{AccountId}.s3-control-fips.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" }, { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + "documentation": "vanilla outposts china@cn-north-1", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.cn-north-1.amazonaws.com.cn" + } }, - { - "fn": "booleanEquals", - "argv": [ + "operationInputs": [ { - "ref": "UseDualStack" + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } }, - false - ] - } - ], - "endpoint": { - "url": "https://s3-control-fips.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } } - ] - }, - "headers": {} - }, - "type": "endpoint" + ], + "params": { + "AccessPointName": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "cn-north-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } }, { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + "documentation": "gov region@us-west-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ { - "ref": "UseFIPS" + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } }, - false - ] + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + } + ], + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "gov cloud with fips@us-west-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts-fips.us-west-2.amazonaws.com" + } }, - { - "fn": "booleanEquals", - "argv": [ + "operationInputs": [ { - "ref": "UseDualStack" + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } }, - true - ] - }, - { - "fn": "isSet", - "argv": [ { - "ref": "RequiresAccountId" + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + } + ], + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "govcloud with fips + arn region@us-gov-west-1", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-gov-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts-fips.us-gov-east-1.amazonaws.com" } - ] }, - { - "fn": "booleanEquals", - "argv": [ + "operationInputs": [ { - "ref": "RequiresAccountId" + "builtInParams": { + "AWS::Region": "us-gov-west-1", + "AWS::UseFIPS": true + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } }, - true - ] - }, - { - "fn": "isSet", - "argv": [ { - "ref": "AccountId" + "builtInParams": { + "AWS::Region": "us-gov-west-1", + "AWS::UseFIPS": true + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } } - ] + ], + "params": { + "AccessPointName": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "us-gov-west-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true } - ], - "endpoint": { - "url": "https://{AccountId}.s3-control.dualstack.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" + }, + { + "documentation": "gov region@cn-north-1", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.cn-north-1.amazonaws.com.cn" } - ] }, - "headers": {} - }, - "type": "endpoint" + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + } + ], + "params": { + "AccessPointName": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "cn-north-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } }, { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + "documentation": "gov cloud with fips@cn-north-1", + "expect": { + "error": "Partition does not support FIPS" + }, + "operationInputs": [ { - "ref": "UseFIPS" + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } }, - false - ] + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + } + ], + "params": { + "AccessPointName": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "cn-north-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "govcloud with fips + arn region@us-gov-west-1", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-gov-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts-fips.us-gov-east-1.amazonaws.com" + } }, - { - "fn": "booleanEquals", - "argv": [ + "operationInputs": [ { - "ref": "UseDualStack" + "builtInParams": { + "AWS::Region": "us-gov-west-1", + "AWS::UseFIPS": true + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } }, - true - ] - } - ], - "endpoint": { - "url": "https://s3-control.dualstack.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" + "builtInParams": { + "AWS::Region": "us-gov-west-1", + "AWS::UseFIPS": true + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } } - ] - }, - "headers": {} - }, - "type": "endpoint" + ], + "params": { + "AccessPointName": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "us-gov-west-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } }, { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + "documentation": "gov region@af-south-1", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.af-south-1.amazonaws.com" + } + }, + "operationInputs": [ { - "ref": "UseFIPS" + "builtInParams": { + "AWS::Region": "af-south-1" + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } }, - false - ] + { + "builtInParams": { + "AWS::Region": "af-south-1" + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + } + ], + "params": { + "AccessPointName": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "af-south-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "gov cloud with fips@af-south-1", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts-fips.af-south-1.amazonaws.com" + } }, - { - "fn": "booleanEquals", - "argv": [ + "operationInputs": [ { - "ref": "UseDualStack" + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseFIPS": true + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } }, - false - ] - }, - { - "fn": "isSet", - "argv": [ { - "ref": "RequiresAccountId" + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseFIPS": true + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + } + ], + "params": { + "AccessPointName": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "af-south-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "govcloud with fips + arn region@us-gov-west-1", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-gov-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts-fips.us-gov-east-1.amazonaws.com" } - ] }, - { - "fn": "booleanEquals", - "argv": [ + "operationInputs": [ { - "ref": "RequiresAccountId" + "builtInParams": { + "AWS::Region": "us-gov-west-1", + "AWS::UseFIPS": true + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } }, - true - ] - }, - { - "fn": "isSet", - "argv": [ { - "ref": "AccountId" + "builtInParams": { + "AWS::Region": "us-gov-west-1", + "AWS::UseFIPS": true + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } } - ] + ], + "params": { + "AccessPointName": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "us-gov-west-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true } - ], - "endpoint": { - "url": "https://{AccountId}.s3-control.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ + }, + { + "documentation": "CreateBucket + OutpostId = outposts endpoint@us-east-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-east-2.amazonaws.com" + } + }, + "operationInputs": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" + "builtInParams": { + "AWS::Region": "us-east-2" + }, + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "blah", + "OutpostId": "123" + } + } + ], + "params": { + "Bucket": "blah", + "OutpostId": "123", + "Region": "us-east-2", + "RequiresAccountId": false, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "CreateBucket + OutpostId with fips = outposts endpoint@us-east-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts-fips.us-east-2.amazonaws.com" } - ] }, - "headers": {} - }, - "type": "endpoint" + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-2", + "AWS::UseFIPS": true + }, + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "blah", + "OutpostId": "123" + } + } + ], + "params": { + "Bucket": "blah", + "OutpostId": "123", + "Region": "us-east-2", + "RequiresAccountId": false, + "UseDualStack": false, + "UseFIPS": true + } }, { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + "documentation": "CreateBucket without OutpostId = regular endpoint@us-east-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-control.us-east-2.amazonaws.com" + } + }, + "operationInputs": [ { - "ref": "UseFIPS" - }, - false - ] + "builtInParams": { + "AWS::Region": "us-east-2" + }, + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "blah" + } + } + ], + "params": { + "Bucket": "blah", + "Region": "us-east-2", + "RequiresAccountId": false, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "ListRegionalBuckets + OutpostId = outposts endpoint@us-east-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-east-2.amazonaws.com" + } }, - { - "fn": "booleanEquals", - "argv": [ + "operationInputs": [ { - "ref": "UseDualStack" - }, - false - ] + "builtInParams": { + "AWS::Region": "us-east-2" + }, + "operationName": "ListRegionalBuckets", + "operationParams": { + "AccountId": "123456789012", + "OutpostId": "op-123" + } + } + ], + "params": { + "AccountId": "123456789012", + "OutpostId": "op-123", + "Region": "us-east-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false } - ], - "endpoint": { - "url": "https://s3-control.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ + }, + { + "documentation": "ListRegionalBuckets without OutpostId = regular endpoint@us-east-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://123456789012.s3-control.us-east-2.amazonaws.com" + } + }, + "operationInputs": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" + "builtInParams": { + "AWS::Region": "us-east-2" + }, + "operationName": "ListRegionalBuckets", + "operationParams": { + "AccountId": "123456789012" + } + } + ], + "params": { + "AccountId": "123456789012", + "Region": "us-east-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "ListRegionalBucket + OutpostId with fips = outposts endpoint@us-east-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts-fips.us-east-2.amazonaws.com" } - ] }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid region: region was not a valid DNS name.", - "type": "error" - } - ], - "type": "tree" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Region must be set", - "type": "error" - } - ] - }, - "smithy.rules#endpointTests": { - "testCases": [ - { - "documentation": "Vanilla outposts without ARN region + access point ARN@us-west-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-west-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Vanilla outposts with ARN region + access point ARN@us-west-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "accept an access point ARN@us-west-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-west-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "vanilla outposts china@cn-north-1", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.cn-north-1.amazonaws.com.cn" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "cn-north-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "gov region@us-west-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-west-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "gov cloud with fips@us-west-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts-fips.us-west-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseFIPS": true - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseFIPS": true - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "govcloud with fips + arn region@us-gov-west-1", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-gov-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts-fips.us-gov-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-gov-west-1", - "AWS::UseFIPS": true - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "us-gov-west-1", - "AWS::UseFIPS": true - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "us-gov-west-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "gov region@cn-north-1", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.cn-north-1.amazonaws.com.cn" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "cn-north-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "gov cloud with fips@cn-north-1", - "expect": { - "error": "Partition does not support FIPS" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "cn-north-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "govcloud with fips + arn region@us-gov-west-1", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-gov-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts-fips.us-gov-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-gov-west-1", - "AWS::UseFIPS": true - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "us-gov-west-1", - "AWS::UseFIPS": true - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "us-gov-west-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "gov region@af-south-1", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.af-south-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1" - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "af-south-1" - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "af-south-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "gov cloud with fips@af-south-1", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts-fips.af-south-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseFIPS": true - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseFIPS": true - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "af-south-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "govcloud with fips + arn region@us-gov-west-1", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-gov-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts-fips.us-gov-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-gov-west-1", - "AWS::UseFIPS": true - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "us-gov-west-1", - "AWS::UseFIPS": true - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "us-gov-west-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "CreateBucket + OutpostId = outposts endpoint@us-east-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-east-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-2" - }, - "operationName": "CreateBucket", - "operationParams": { - "Bucket": "blah", - "OutpostId": "123" - } - } - ], - "params": { - "Bucket": "blah", - "OutpostId": "123", - "Region": "us-east-2", - "RequiresAccountId": false, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "CreateBucket + OutpostId with fips = outposts endpoint@us-east-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts-fips.us-east-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-2", - "AWS::UseFIPS": true - }, - "operationName": "CreateBucket", - "operationParams": { - "Bucket": "blah", - "OutpostId": "123" - } - } - ], - "params": { - "Bucket": "blah", - "OutpostId": "123", - "Region": "us-east-2", - "RequiresAccountId": false, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "CreateBucket without OutpostId = regular endpoint@us-east-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-control.us-east-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-2" - }, - "operationName": "CreateBucket", - "operationParams": { - "Bucket": "blah" - } - } - ], - "params": { - "Bucket": "blah", - "Region": "us-east-2", - "RequiresAccountId": false, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "ListRegionalBuckets + OutpostId = outposts endpoint@us-east-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-east-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-2" - }, - "operationName": "ListRegionalBuckets", - "operationParams": { - "AccountId": "123456789012", - "OutpostId": "op-123" - } - } - ], - "params": { - "AccountId": "123456789012", - "OutpostId": "op-123", - "Region": "us-east-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "ListRegionalBuckets without OutpostId = regular endpoint@us-east-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://123456789012.s3-control.us-east-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-2" - }, - "operationName": "ListRegionalBuckets", - "operationParams": { - "AccountId": "123456789012" - } - } - ], - "params": { - "AccountId": "123456789012", - "Region": "us-east-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "ListRegionalBucket + OutpostId with fips = outposts endpoint@us-east-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts-fips.us-east-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-2", - "AWS::UseFIPS": true - }, - "operationName": "ListRegionalBuckets", - "operationParams": { - "AccountId": "123456789012", - "OutpostId": "op-123" - } - } - ], - "params": { - "AccountId": "123456789012", - "OutpostId": "op-123", - "Region": "us-east-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "outpost access points support dualstack@us-west-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-west-2.api.aws" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": true, - "UseFIPS": false - } - }, - { - "documentation": "outpost access points support dualstack@af-south-1", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.af-south-1.api.aws" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseDualStack": true - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseDualStack": true - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "af-south-1", - "RequiresAccountId": true, - "UseDualStack": true, - "UseFIPS": false - } - }, - { - "documentation": "outpost access points support fips + dualstack@af-south-1", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts-fips.af-south-1.api.aws" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "af-south-1", - "RequiresAccountId": true, - "UseDualStack": true, - "UseFIPS": true - } - }, - { - "documentation": "invalid ARN: must be include outpost ID@us-west-2", - "expect": { - "error": "Invalid ARN: The Outpost Id was not set" - }, - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost", - "AccountId": "123456789012", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "invalid ARN: must specify access point@us-west-2", - "expect": { - "error": "Invalid ARN: Expected a 4-component resource" - }, - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "invalid ARN@us-west-2", - "expect": { - "error": "Invalid ARN: Expected a 4-component resource" - }, - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:myaccesspoint", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "when set, AccountId drives AP construction@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myid-1234.s3-control.us-west-2.amazonaws.com" - } - }, - "params": { - "AccessPointName": "myaccesspoint", - "AccountId": "myid-1234", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Account ID set inline and in ARN but they both match@us-west-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-west-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3Control::UseArnRegion": false - }, - "operationName": "GetAccessPoint", - "operationParams": { - "AccountId": "123456789012", - "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint" - } - } - ], - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseArnRegion": false, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Account ID set inline and in ARN and they do not match@us-west-2", - "expect": { - "error": "Invalid ARN: the accountId specified in the ARN (`123456789012`) does not match the parameter (`999999999999`)" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3Control::UseArnRegion": false - }, - "operationName": "GetAccessPoint", - "operationParams": { - "AccountId": "999999999999", - "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint" - } - } - ], - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "999999999999", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseArnRegion": false, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "get access point prefixed with account id using endpoint url@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://123456789012.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" - }, - "operationName": "GetAccessPoint", - "operationParams": { - "AccountId": "123456789012", - "Name": "apname" - } - } - ], - "params": { - "AccessPointName": "apname", - "AccountId": "123456789012", - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "endpoint url with s3-outposts@us-west-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://beta.example.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://beta.example.com" - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Endpoint": "https://beta.example.com", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "access point name with a bucket arn@us-west-2", - "expect": { - "error": "Expected an outpost type `accesspoint`, found `bucket`" - }, - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Endpoint": "beta.example.com", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "bucket arn with access point name@us-west-2", - "expect": { - "error": "Invalid ARN: Expected an outpost type `bucket`, found `accesspoint`" - }, - "params": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "Endpoint": "beta.example.com", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "create bucket with outposts@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://beta.example.com" - } - }, - "params": { - "Bucket": "bucketname", - "Endpoint": "https://beta.example.com", - "OutpostId": "op-123", - "Region": "us-west-2", - "RequiresAccountId": false, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "get bucket with endpoint_url@us-west-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://beta.example.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://beta.example.com" - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Endpoint": "https://beta.example.com", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "ListRegionalBucket + OutpostId endpoint url@us-east-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://beta.example.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-2", - "SDK::Endpoint": "https://beta.example.com" - }, - "operationName": "ListRegionalBuckets", - "operationParams": { - "AccountId": "123456789012", - "OutpostId": "op-123" - } - } - ], - "params": { - "AccountId": "123456789012", - "Endpoint": "https://beta.example.com", - "OutpostId": "op-123", - "Region": "us-east-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "ListRegionalBucket + OutpostId + fips + endpoint url@us-east-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://beta.example.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-2", - "AWS::UseFIPS": true, - "SDK::Endpoint": "https://beta.example.com" - }, - "operationName": "ListRegionalBuckets", - "operationParams": { - "AccountId": "123456789012", - "OutpostId": "op-123" - } - } - ], - "params": { - "AccountId": "123456789012", - "Endpoint": "https://beta.example.com", - "OutpostId": "op-123", - "Region": "us-east-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "ListRegionalBucket + OutpostId + fips + dualstack@us-east-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts-fips.us-east-2.api.aws" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-2", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "operationName": "ListRegionalBuckets", - "operationParams": { - "AccountId": "123456789012", - "OutpostId": "op-123" - } - } - ], - "params": { - "AccountId": "123456789012", - "OutpostId": "op-123", - "Region": "us-east-2", - "RequiresAccountId": true, - "UseDualStack": true, - "UseFIPS": true - } - }, - { - "documentation": "CreateBucket + OutpostId endpoint url@us-east-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://beta.example.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-2", - "AWS::UseFIPS": true, - "SDK::Endpoint": "https://beta.example.com" - }, - "operationName": "CreateBucket", - "operationParams": { - "Bucket": "blah", - "OutpostId": "123" - } - } - ], - "params": { - "Bucket": "blah", - "Endpoint": "https://beta.example.com", - "OutpostId": "123", - "Region": "us-east-2", - "RequiresAccountId": false, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "dualstack cannot be used with outposts when an endpoint URL is set@us-west-2.", - "expect": { - "error": "Invalid Configuration: DualStack and custom endpoint are not supported" - }, - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "Endpoint": "https://s3-outposts.us-west-2.api.aws", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": true, - "UseFIPS": false - } - }, - { - "documentation": "vanilla bucket arn requires account id@us-west-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-west-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "CreateAccessPoint", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Name": "apname", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "bucket arn with UseArnRegion = true (arn region supercedes client configured region)@us-west-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "bucket ARN in gov partition (non-fips)@us-gov-east-1", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-gov-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-gov-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-gov-east-1" - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-gov-east-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "bucket ARN in gov partition with FIPS@us-gov-west-1", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-gov-west-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts-fips.us-gov-west-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-gov-west-1", - "AWS::UseFIPS": true - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-west-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-west-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-gov-west-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "bucket ARN in aws partition with FIPS@us-east-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts-fips.us-east-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-2", - "AWS::UseFIPS": true - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws:s3-outposts:us-east-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-east-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "bucket ARN in aws partition with fips + dualstack@us-east-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts-fips.us-east-2.api.aws" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-2", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws:s3-outposts:us-east-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-east-2", - "RequiresAccountId": true, - "UseDualStack": true, - "UseFIPS": true - } - }, - { - "documentation": "vanilla bucket arn requires account id@cn-north-1", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.cn-north-1.amazonaws.com.cn" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "CreateAccessPoint", - "operationParams": { - "Bucket": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Name": "apname", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "cn-north-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "bucket arn with UseArnRegion = true (arn region supercedes client configured region)@us-west-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "bucket ARN in gov partition (non-fips)@us-gov-east-1", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-gov-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-gov-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-gov-east-1" - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-gov-east-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "bucket ARN in gov partition with FIPS@us-gov-west-1", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-gov-west-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts-fips.us-gov-west-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-gov-west-1", - "AWS::UseFIPS": true - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-west-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-west-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-gov-west-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "bucket ARN in aws partition with FIPS@us-east-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts-fips.us-east-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-2", - "AWS::UseFIPS": true - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws:s3-outposts:us-east-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-east-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "Outposts support dualstack @us-west-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-west-2.api.aws" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": true, - "UseFIPS": false - } - }, - { - "documentation": "vanilla bucket arn requires account id@af-south-1", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.af-south-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1" - }, - "operationName": "CreateAccessPoint", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Name": "apname", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "af-south-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "bucket arn with UseArnRegion = true (arn region supercedes client configured region)@us-west-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "bucket ARN in gov partition (non-fips)@us-gov-east-1", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-gov-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-gov-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-gov-east-1" - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-gov-east-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "bucket ARN in gov partition with FIPS@us-gov-west-1", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-gov-west-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts-fips.us-gov-west-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-gov-west-1", - "AWS::UseFIPS": true - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-west-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-west-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-gov-west-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "bucket ARN in aws partition with FIPS@us-east-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts-fips.us-east-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-2", - "AWS::UseFIPS": true - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws:s3-outposts:us-east-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-east-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "Invalid ARN: missing outpost id and bucket@us-west-2", - "expect": { - "error": "Invalid ARN: The Outpost Id was not set" - }, - "params": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Invalid ARN: missing bucket@us-west-2", - "expect": { - "error": "Invalid ARN: Expected a 4-component resource" - }, - "params": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Invalid ARN: missing outpost and bucket ids@us-west-2", - "expect": { - "error": "Invalid ARN: Expected a 4-component resource" - }, - "params": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:bucket", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Invalid ARN: missing bucket id@us-west-2", - "expect": { - "error": "Invalid ARN: expected a bucket name" - }, - "params": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "account id inserted into hostname@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://1234567890.s3-control.us-west-2.amazonaws.com" - } - }, - "params": { - "AccountId": "1234567890", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "account id prefix with dualstack@us-east-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://1234567890.s3-control.dualstack.us-east-1.amazonaws.com" - } - }, - "params": { - "AccountId": "1234567890", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": true, - "UseFIPS": false - } - }, - { - "documentation": "account id prefix with fips@us-east-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://1234567890.s3-control-fips.us-east-1.amazonaws.com" - } - }, - "params": { - "AccountId": "1234567890", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "custom account id prefix with fips@us-east-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://123456789012.s3-control-fips.us-east-1.amazonaws.com" - } - }, - "params": { - "AccountId": "123456789012", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "standard url @ us-east-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-control.us-east-1.amazonaws.com" - } - }, - "params": { - "Region": "us-east-1" - } - }, - { - "documentation": "fips url @ us-east-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-control-fips.us-east-1.amazonaws.com" - } - }, - "params": { - "Region": "us-east-1", - "UseFIPS": true - } - }, - { - "documentation": "dualstack url @ us-east-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-control.dualstack.us-east-1.amazonaws.com" - } - }, - "params": { - "Region": "us-east-1", - "UseDualStack": true - } - }, - { - "documentation": "fips,dualstack url @ us-east-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-control-fips.dualstack.us-east-1.amazonaws.com" - } - }, - "params": { - "Region": "us-east-1", - "UseDualStack": true, - "UseFIPS": true - } - }, - { - "documentation": "standard url @ cn-north-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-control.cn-north-1.amazonaws.com.cn" - } - }, - "params": { - "Region": "cn-north-1" - } - }, - { - "documentation": "fips @ cn-north-1", - "expect": { - "error": "Partition does not support FIPS" - }, - "params": { - "Region": "cn-north-1", - "UseDualStack": true, - "UseFIPS": true - } - }, - { - "documentation": "custom account id prefix @us-east-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://123456789012.s3-control.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "ListRegionalBuckets", - "operationParams": { - "AccountId": "123456789012" - } - } - ], - "params": { - "AccountId": "123456789012", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "invalid account id prefix @us-east-1", - "expect": { - "error": "AccountId must only contain a-z, A-Z, 0-9 and `-`." - }, - "params": { - "AccountId": "/?invalid¬-host*label", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "custom account id prefix with fips@us-east-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://123456789012.s3-control-fips.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "ListRegionalBuckets", - "operationParams": { - "AccountId": "123456789012" - } - } - ], - "params": { - "AccountId": "123456789012", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "custom account id prefix with dualstack,fips@us-east-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://123456789012.s3-control-fips.dualstack.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "operationName": "ListRegionalBuckets", - "operationParams": { - "AccountId": "123456789012" - } - } - ], - "params": { - "AccountId": "123456789012", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": true, - "UseFIPS": true - } - }, - { - "documentation": "custom account id with custom endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://123456789012.example.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://example.com" - }, - "operationName": "ListRegionalBuckets", - "operationParams": { - "AccountId": "123456789012" - } - } - ], - "params": { - "AccountId": "123456789012", - "Region": "us-east-1", - "RequiresAccountId": true, - "Endpoint": "https://example.com" - } - }, - { - "documentation": "RequiresAccountId with AccountId unset", - "expect": { - "error": "AccountId is required but not set" - }, - "params": { - "Region": "us-east-1", - "RequiresAccountId": true - } - }, - { - "documentation": "RequiresAccountId with AccountId unset and custom endpoint", - "expect": { - "error": "AccountId is required but not set" - }, - "params": { - "Region": "us-east-1", - "Endpoint": "https://beta.example.com", - "RequiresAccountId": true - } - }, - { - "documentation": "RequiresAccountId with invalid AccountId and custom endpoint", - "expect": { - "error": "AccountId must only contain a-z, A-Z, 0-9 and `-`." - }, - "params": { - "Region": "us-east-1", - "Endpoint": "https://beta.example.com", - "AccountId": "/?invalid¬-host*label", - "RequiresAccountId": true - } - }, - { - "documentation": "account id with custom endpoint, fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://123456789012.example.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true, - "SDK::Endpoint": "https://example.com" - }, - "operationName": "ListRegionalBuckets", - "operationParams": { - "AccountId": "123456789012" - } - } - ], - "params": { - "AccountId": "123456789012", - "Region": "us-east-1", - "RequiresAccountId": true, - "Endpoint": "https://example.com", - "UseFIPS": true - } - }, - { - "documentation": "custom endpoint, fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://example.com" - } - }, - "params": { - "Region": "us-east-1", - "Endpoint": "https://example.com", - "UseFIPS": true - } - }, - { - "documentation": "custom endpoint, fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://example.com" - } - }, - "params": { - "Region": "us-east-1", - "Endpoint": "https://example.com", - "UseFIPS": true - } - }, - { - "documentation": "custom endpoint, DualStack", - "expect": { - "error": "Invalid Configuration: DualStack and custom endpoint are not supported" - }, - "params": { - "Region": "us-east-1", - "Endpoint": "https://example.com", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "region not set", - "expect": { - "error": "Region must be set" - } - }, - { - "documentation": "invalid partition", - "expect": { - "error": "Invalid region: region was not a valid DNS name." - }, - "params": { - "Region": "invalid-region 42" - } - }, - { - "documentation": "ListRegionalBuckets + OutpostId without accountId set.", - "expect": { - "error": "AccountId is required but not set" - }, - "params": { - "OutpostId": "op-123", - "Region": "us-east-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "ListRegionalBuckets + OutpostId with invalid accountId set.", - "expect": { - "error": "AccountId must only contain a-z, A-Z, 0-9 and `-`." - }, - "params": { - "AccountId": "/?invalid¬-host*label", - "OutpostId": "op-123", - "Region": "us-east-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "accesspoint set but missing accountId", - "expect": { - "error": "AccountId is required but not set" - }, - "params": { - "AccessPointName": "myaccesspoint", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "outpost accesspoint ARN with missing accountId", - "expect": { - "error": "Invalid ARN: missing account ID" - }, - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-west-2::outpost:op-01234567890123456:outpost:op1", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "bucket ARN with missing accountId", - "expect": { - "error": "Invalid ARN: missing account ID" - }, - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-west-2::outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "endpoint url with accesspoint (non-arn)", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://123456789012.beta.example.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://beta.example.com" - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "apname", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "apname", - "Endpoint": "https://beta.example.com", - "AccountId": "123456789012", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "access point name with an accesspoint arn@us-west-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://beta.example.com" - } - }, - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "Endpoint": "https://beta.example.com", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "DualStack + Custom endpoint is not supported(non-arn)", - "expect": { - "error": "Invalid Configuration: DualStack and custom endpoint are not supported" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true, - "SDK::Endpoint": "https://beta.example.com" - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "apname", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "apname", - "Endpoint": "https://beta.example.com", - "AccountId": "123456789012", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": true, - "UseFIPS": false - } - }, - { - "documentation": "get bucket with custom endpoint and dualstack is not supported@us-west-2", - "expect": { - "error": "Invalid Configuration: DualStack and custom endpoint are not supported" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true, - "SDK::Endpoint": "https://s3-outposts.us-west-2.api.aws" - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Endpoint": "https://s3-outposts.us-west-2.api.aws", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": true, - "UseFIPS": false - } - }, - { - "documentation": "ListRegionalBuckets + OutpostId with fips in CN.", - "expect": { - "error": "Partition does not support FIPS" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "ListRegionalBuckets", - "operationParams": { - "OutpostId": "op-123", - "AccountId": "012345678912" - } - } - ], - "params": { - "AccountId": "012345678912", - "OutpostId": "op-123", - "Region": "cn-north-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "ListRegionalBuckets + invalid OutpostId.", - "expect": { - "error": "OutpostId must only contain a-z, A-Z, 0-9 and `-`." - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-1" - }, - "operationName": "ListRegionalBuckets", - "operationParams": { - "OutpostId": "?outpost/invalid+", - "AccountId": "012345678912" - } - } - ], - "params": { - "AccountId": "012345678912", - "OutpostId": "?outpost/invalid+", - "Region": "us-west-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "bucket ARN with mismatched accountId", - "expect": { - "error": "Invalid ARN: the accountId specified in the ARN (`999999`) does not match the parameter (`012345678912`)" - }, - "params": { - "Bucket": "arn:aws:s3-outposts:us-west-2:999999:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "012345678912", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "OutpostId with invalid region", - "expect": { - "error": "Invalid region: region was not a valid DNS name." - }, - "params": { - "OutpostId": "op-123", - "Region": "invalid-region 42", - "AccountId": "0123456", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "OutpostId with RequireAccountId unset", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-west-2.amazonaws.com" - } - }, - "params": { - "OutpostId": "op-123", - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Outpost Accesspoint ARN with arn region and client region mismatch with UseArnRegion=false", - "expect": { - "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3Control::UseArnRegion": false - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3Control::UseArnRegion": false - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseArnRegion": false, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Outpost Bucket ARN with arn region and client region mismatch with UseArnRegion=false", - "expect": { - "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://beta.example.com", - "AWS::S3Control::UseArnRegion": false - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Endpoint": "https://beta.example.com", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseArnRegion": false, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Accesspoint ARN with region mismatch and UseArnRegion unset", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Bucket ARN with region mismatch and UseArnRegion unset", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Outpost Bucket ARN with partition mismatch with UseArnRegion=true", - "expect": { - "error": "Client was configured for partition `aws` but ARN has `aws-cn`" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3Control::UseArnRegion": true - }, - "operationName": "GetBucket", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - } - ], - "params": { - "Bucket": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseArnRegion": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Accesspoint ARN with partition mismatch and UseArnRegion=true", - "expect": { - "error": "Client was configured for partition `aws` but ARN has `aws-cn`" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3Control::UseArnRegion": true - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3Control::UseArnRegion": true - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012" - } - } - ], - "params": { - "AccessPointName": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "AccountId": "123456789012", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseArnRegion": true, - "UseFIPS": false - } - }, - { - "documentation": "Accesspoint ARN with region mismatch, UseArnRegion=false and custom endpoint", - "expect": { - "error": "Invalid configuration: region from ARN `cn-north-1` does not match client region `us-west-2` and UseArnRegion is `false`" - }, - "params": { - "AccessPointName": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "Region": "us-west-2", - "Endpoint": "https://example.com", - "RequiresAccountId": true, - "UseDualStack": false, - "UseArnRegion": false, - "UseFIPS": false - } - }, - { - "documentation": "outpost bucket arn@us-west-2", - "expect": { - "endpoint": { - "headers": { - "x-amz-account-id": ["123456789012"], - "x-amz-outpost-id": ["op-01234567890123456"] - }, - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-outposts.us-west-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetBucketVersioning", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012" - } - }, - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "PutBucketVersioning", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "AccountId": "123456789012", - "VersioningConfiguration": { - "Status": "Enabled" - } - } - } - ], - "params": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Region": "us-west-2", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "S3 Snow Control with bucket", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "snow", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://10.0.1.12:433" - } - }, - "params": { - "Region": "snow", - "Bucket": "bucketName", - "Endpoint": "https://10.0.1.12:433", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "S3 Snow Control without bucket", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "snow", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://10.0.1.12:433" - } - }, - "params": { - "Region": "snow", - "Endpoint": "https://10.0.1.12:433", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "S3 Snow Control with bucket and without port", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "snow", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://10.0.1.12" - } - }, - "params": { - "Region": "snow", - "Bucket": "bucketName", - "Endpoint": "https://10.0.1.12", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "S3 Snow Control with bucket and with DNS", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "snow", - "disableDoubleEncoding": true - } - ] - }, - "url": "http://s3snow.com" - } - }, - "params": { - "Region": "snow", - "Bucket": "bucketName", - "Endpoint": "http://s3snow.com", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "S3 Snow Control with FIPS enabled", - "expect": { - "error": "S3 Snow does not support FIPS" - }, - "params": { - "Region": "snow", - "Bucket": "bucketName", - "Endpoint": "https://10.0.1.12:433", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "S3 Snow Control with Dualstack enabled", - "expect": { - "error": "S3 Snow does not support DualStack" - }, - "params": { - "Region": "snow", - "Bucket": "bucketName", - "Endpoint": "https://10.0.1.12:433", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "Tagging on express bucket routed to s3express-control", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3express-control.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "TagResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157", - "Tags": [] - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "UntagResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157", - "TagKeys": [] - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "ListTagsForResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Tagging on express ap routed to s3express-control", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3express-control.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "TagResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:accesspoint/crachlintest--use1-az4--xa-s3", - "AccountId": "871317572157", - "Tags": [] - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "UntagResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:accesspoint/crachlintest--use1-az4--xa-s3", - "AccountId": "871317572157", - "TagKeys": [] - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "ListTagsForResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:accesspoint/crachlintest--use1-az4--xa-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:accesspoint/crachlintest--use1-az4--xa-s3", - "AccountId": "871317572157", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Tagging on express bucket routed to s3express-control FIPS when FIPS enabled", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3express-control-fips.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "TagResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157", - "Tags": [] - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "UntagResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157", - "TagKeys": [] - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "ListTagsForResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "Tagging on express bucket cn routed to s3express-control china endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3express-control.cn-north-1.amazonaws.com.cn" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "TagResource", - "operationParams": { - "ResourceArn": "arn:aws-cn:s3express:cn-north-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157", - "Tags": [] - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "UntagResource", - "operationParams": { - "ResourceArn": "arn:aws-cn:s3express:cn-north-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157", - "TagKeys": [] - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "ListTagsForResource", - "operationParams": { - "ResourceArn": "arn:aws-cn:s3express:cn-north-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "ResourceArn": "arn:aws-cn:s3express:cn-north-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157", - "Region": "cn-north-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Tagging on express bucket cn routed to s3express-control china endpoint with FIPS", - "expect": { - "error": "Partition does not support FIPS" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "TagResource", - "operationParams": { - "ResourceArn": "arn:aws-cn:s3express:cn-north-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157", - "Tags": [] - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "UntagResource", - "operationParams": { - "ResourceArn": "arn:aws-cn:s3express:cn-north-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157", - "TagKeys": [] - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "ListTagsForResource", - "operationParams": { - "ResourceArn": "arn:aws-cn:s3express:cn-north-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "ResourceArn": "arn:aws-cn:s3express:cn-north-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157", - "Region": "cn-north-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "Tagging on express bucket with custom endpoint routed to custom endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://my-endpoint.express-control.s3.aws.dev" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" - }, - "operationName": "TagResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157", - "Tags": [] - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" - }, - "operationName": "UntagResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157", - "TagKeys": [] - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" - }, - "operationName": "ListTagsForResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "AccountId": "871317572157", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Tagging on express access point with custom endpoint routed to custom endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://my-endpoint.express-control.s3.aws.dev" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" - }, - "operationName": "TagResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:accesspoint/crachlintest--use1-az4--xa-s3", - "AccountId": "871317572157", - "Tags": [] - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" - }, - "operationName": "UntagResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:accesspoint/crachlintest--use1-az4--xa-s3", - "AccountId": "871317572157", - "TagKeys": [] - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" - }, - "operationName": "ListTagsForResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:accesspoint/crachlintest--use1-az4--xa-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:accesspoint/crachlintest--use1-az4--xa-s3", - "Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "AccountId": "871317572157", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Tagging on express bucket with dualstack and custom endpoint fails", - "expect": { - "error": "Invalid Configuration: DualStack and custom endpoint are not supported" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "AWS::UseDualStack": true - }, - "operationName": "TagResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157", - "Tags": [] - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "AWS::UseDualStack": true - }, - "operationName": "UntagResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157", - "TagKeys": [] - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "AWS::UseDualStack": true - }, - "operationName": "ListTagsForResource", - "operationParams": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", - "Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "AccountId": "871317572157", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": true, - "UseFIPS": false - } - }, - { - "documentation": "Access Point APIs on express bucket routed to s3express-control", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3express-control.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "CreateAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "Bucket": "mybucket--abcd-ab1--x-s3", - "AccountId": "871317572157", - "Scope": { - "Prefixes": [], - "Permissions": [] - } - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "PutAccessPointScope", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157", - "Scope": { - "Prefixes": [], - "Permissions": [] - } - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetAccessPointScope", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "DeleteAccessPointScope", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "PutAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157", - "Policy": "my-policy" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "DeleteAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetAccessPointPolicyStatus", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "AccountId": "871317572157", - "AccessPointName": "myaccesspoint--abcd-ab1--xa-s3", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Access Point APIs on express bucket routed to s3express-control for List", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3express-control.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "ListAccessPointsForDirectoryBuckets", - "operationParams": { - "DirectoryBucket": "mybucket--abcd-ab1--x-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "AccountId": "871317572157", - "Region": "us-east-1", - "UseS3ExpressControlEndpoint": true, - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Access Point APIs on express bucket routed to s3express-control for FIPS", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3express-control-fips.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "CreateAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "Bucket": "mybucket--abcd-ab1--x-s3", - "AccountId": "871317572157", - "Scope": { - "Prefixes": [], - "Permissions": [] - } - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "PutAccessPointScope", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157", - "Scope": { - "Prefixes": [], - "Permissions": [] - } - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "GetAccessPointScope", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "DeleteAccessPointScope", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "PutAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157", - "Policy": "my-policy" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "GetAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "DeleteAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "GetAccessPointPolicyStatus", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "AccountId": "871317572157", - "AccessPointName": "myaccesspoint--abcd-ab1--xa-s3", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "Access Point APIs on express bucket routed to s3express-control for FIPS for List", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3express-control-fips.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "ListAccessPointsForDirectoryBuckets", - "operationParams": { - "DirectoryBucket": "mybucket--abcd-ab1--x-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "AccountId": "871317572157", - "Region": "us-east-1", - "UseS3ExpressControlEndpoint": true, - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "Access Point APIs on express bucket routed to s3express-control for china region", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3express-control.cn-north-1.amazonaws.com.cn" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "CreateAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "Bucket": "mybucket--abcd-ab1--x-s3", - "AccountId": "871317572157", - "Scope": { - "Prefixes": [], - "Permissions": [] - } - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "PutAccessPointScope", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157", - "Scope": { - "Prefixes": [], - "Permissions": [] - } - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "GetAccessPointScope", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "DeleteAccessPointScope", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "PutAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157", - "Policy": "my-policy" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "GetAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "DeleteAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "GetAccessPointPolicyStatus", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "AccessPointName": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157", - "Region": "cn-north-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Access Point APIs on express bucket routed to s3express-control for china region for List", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3express-control.cn-north-1.amazonaws.com.cn" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "ListAccessPointsForDirectoryBuckets", - "operationParams": { - "DirectoryBucket": "mybucket--abcd-ab1--x-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "AccountId": "871317572157", - "Region": "cn-north-1", - "UseS3ExpressControlEndpoint": true, - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Error when Access Point APIs on express bucket routed to s3express-control for china and FIPS", - "expect": { - "error": "Partition does not support FIPS" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "CreateAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "Bucket": "mybucket--abcd-ab1--x-s3", - "AccountId": "871317572157", - "Scope": { - "Prefixes": [], - "Permissions": [] - } - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "ListAccessPointsForDirectoryBuckets", - "operationParams": { - "DirectoryBucket": "mybucket--abcd-ab1--x-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "PutAccessPointScope", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157", - "Scope": { - "Prefixes": [], - "Permissions": [] - } - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "GetAccessPointScope", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "DeleteAccessPointScope", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "PutAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157", - "Policy": "my-policy" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "GetAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "DeleteAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "GetAccessPointPolicyStatus", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "AccountId": "871317572157", - "Region": "cn-north-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "Error Access Point APIs on express bucket routed to s3express-control invalid zone", - "expect": { - "error": "Unrecognized S3Express Access Point name format." - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "CreateAccessPoint", - "operationParams": { - "Name": "myaccesspoint-garbage-zone--xa-s3", - "Bucket": "mybucket-garbage-zone-garbage-zone", - "AccountId": "871317572157", - "Scope": { - "Prefixes": [], - "Permissions": [] - } - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "myaccesspoint-garbage-zone--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "myaccesspoint-garbage-zone--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "PutAccessPointScope", - "operationParams": { - "Name": "myaccesspoint-garbage-zone--xa-s3", - "AccountId": "871317572157", - "Scope": { - "Prefixes": [], - "Permissions": [] - } - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetAccessPointScope", - "operationParams": { - "Name": "myaccesspoint-garbage-zone--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "DeleteAccessPointScope", - "operationParams": { - "Name": "myaccesspoint-garbage-zone--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "PutAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint-garbage-zone--xa-s3", - "AccountId": "871317572157", - "Policy": "my-policy" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint-garbage-zone--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "DeleteAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint-garbage-zone--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetAccessPointPolicyStatus", - "operationParams": { - "Name": "myaccesspoint-garbage-zone--xa-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "AccessPointName": "myaccesspoint-garbage-zone--xa-s3", - "AccountId": "871317572157", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Access Point APIs on express bucket routed to custom endpoint if provided", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://my-endpoint.express-control.s3.aws.dev" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" - }, - "operationName": "CreateAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "Bucket": "mybucket--abcd-ab1--x-s3", - "AccountId": "871317572157", - "Scope": { - "Prefixes": [], - "Permissions": [] - } - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" - }, - "operationName": "PutAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157", - "Policy": "my-policy" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" - }, - "operationName": "GetAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" - }, - "operationName": "DeleteAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" - }, - "operationName": "GetAccessPointPolicyStatus", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "AccountId": "871317572157", - "AccessPointName": "myaccesspoint--abcd-ab1--xa-s3", - "Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Access Point APIs on express bucket routed to custom endpoint if provided for List", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://my-endpoint.express-control.s3.aws.dev" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" - }, - "operationName": "ListAccessPointsForDirectoryBuckets", - "operationParams": { - "DirectoryBucket": "mybucket--abcd-ab1--x-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "AccountId": "871317572157", - "Region": "us-east-1", - "UseS3ExpressControlEndpoint": true, - "Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "RequiresAccountId": true, - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "Error on Access Point APIs on express bucket for dual stack", - "expect": { - "error": "S3Express does not support Dual-stack." - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseDualStack": true - }, - "operationName": "CreateAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "Bucket": "mybucket--abcd-ab1--x-s3", - "AccountId": "871317572157", - "Scope": { - "Prefixes": [], - "Permissions": [] - } - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseDualStack": true - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseDualStack": true - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseDualStack": true - }, - "operationName": "PutAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157", - "Policy": "my-policy" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseDualStack": true - }, - "operationName": "GetAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseDualStack": true - }, - "operationName": "DeleteAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseDualStack": true - }, - "operationName": "GetAccessPointPolicyStatus", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "AccountId": "871317572157", - "AccessPointName": "myaccesspoint--abcd-ab1--xa-s3", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": true, - "UseFIPS": false - } - }, - { - "documentation": "Error Access Point APIs on express bucket for dual stack for List", - "expect": { - "error": "S3Express does not support Dual-stack." - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseDualStack": true - }, - "operationName": "ListAccessPointsForDirectoryBuckets", - "operationParams": { - "DirectoryBucket": "mybucket--abcd-ab1--x-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "AccountId": "871317572157", - "Region": "us-east-1", - "UseS3ExpressControlEndpoint": true, - "RequiresAccountId": true, - "UseDualStack": true, - "UseFIPS": false - } - }, - { - "documentation": "Error on Access Point APIs on express bucket for custom endpoint and dual stack", - "expect": { - "error": "Invalid Configuration: DualStack and custom endpoint are not supported" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "AWS::UseDualStack": true - }, - "operationName": "CreateAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "Bucket": "mybucket--abcd-ab1--x-s3", - "AccountId": "871317572157", - "Scope": { - "Prefixes": [], - "Permissions": [] - } - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "AWS::UseDualStack": true - }, - "operationName": "GetAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "AWS::UseDualStack": true - }, - "operationName": "DeleteAccessPoint", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "AWS::UseDualStack": true - }, - "operationName": "PutAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157", - "Policy": "my-policy" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "AWS::UseDualStack": true - }, - "operationName": "GetAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "AWS::UseDualStack": true - }, - "operationName": "DeleteAccessPointPolicy", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - }, - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "AWS::UseDualStack": true - }, - "operationName": "GetAccessPointPolicyStatus", - "operationParams": { - "Name": "myaccesspoint--abcd-ab1--xa-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "AccountId": "871317572157", - "AccessPointName": "myaccesspoint--abcd-ab1--xa-s3", - "Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "Region": "us-east-1", - "RequiresAccountId": true, - "UseDualStack": true, - "UseFIPS": false - } - }, - { - "documentation": "Error Access Point APIs on express bucket for custom endpoint and dual stack for List", - "expect": { - "error": "Invalid Configuration: DualStack and custom endpoint are not supported" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "AWS::UseDualStack": true - }, - "operationName": "ListAccessPointsForDirectoryBuckets", - "operationParams": { - "DirectoryBucket": "mybucket--abcd-ab1--x-s3", - "AccountId": "871317572157" - } - } - ], - "params": { - "AccountId": "871317572157", - "Region": "us-east-1", - "UseS3ExpressControlEndpoint": true, - "Endpoint": "https://my-endpoint.express-control.s3.aws.dev", - "RequiresAccountId": true, - "UseDualStack": true, - "UseFIPS": false - } - } - ], - "version": "1.0" - } - } - }, - "com.amazonaws.s3control#AbortIncompleteMultipartUpload": { - "type": "structure", - "members": { - "DaysAfterInitiation": { - "target": "com.amazonaws.s3control#DaysAfterInitiation", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload to\n the Outposts bucket.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container for abort incomplete multipart upload

" - } - }, - "com.amazonaws.s3control#AccessControlTranslation": { - "type": "structure", - "members": { - "Owner": { - "target": "com.amazonaws.s3control#OwnerOverride", - "traits": { - "smithy.api#documentation": "

Specifies the replica ownership.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for information about access control for replicas.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" - } - }, - "com.amazonaws.s3control#AccessGrantArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 2048 - }, - "smithy.api#pattern": "^arn:[a-z\\-]+:s3:[a-z0-9\\-]+:\\d{12}:access\\-grants\\/grant/[a-zA-Z0-9\\-]+$" - } - }, - "com.amazonaws.s3control#AccessGrantId": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 64 - }, - "smithy.api#pattern": "^[a-zA-Z0-9\\-]+$" - } - }, - "com.amazonaws.s3control#AccessGrantsInstanceArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 2048 - }, - "smithy.api#pattern": "^arn:[a-z\\-]+:s3:[a-z0-9\\-]+:\\d{12}:access\\-grants\\/[a-zA-Z0-9\\-]+$" - } - }, - "com.amazonaws.s3control#AccessGrantsInstanceId": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 64 - }, - "smithy.api#pattern": "^[a-zA-Z0-9\\-]+$" - } - }, - "com.amazonaws.s3control#AccessGrantsInstancesList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#ListAccessGrantsInstanceEntry", - "traits": { - "smithy.api#xmlName": "AccessGrantsInstance" - } - } - }, - "com.amazonaws.s3control#AccessGrantsList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#ListAccessGrantEntry", - "traits": { - "smithy.api#xmlName": "AccessGrant" - } - } - }, - "com.amazonaws.s3control#AccessGrantsLocationArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 2048 - }, - "smithy.api#pattern": "^arn:[a-z\\-]+:s3:[a-z0-9\\-]+:\\d{12}:access\\-grants\\/location/[a-zA-Z0-9\\-]+$" - } - }, - "com.amazonaws.s3control#AccessGrantsLocationConfiguration": { - "type": "structure", - "members": { - "S3SubPrefix": { - "target": "com.amazonaws.s3control#S3Prefix", - "traits": { - "smithy.api#documentation": "

The S3SubPrefix is appended to the location scope creating the grant scope.\n Use this field to narrow the scope of the grant to a subset of the location scope. This\n field is required if the location scope is the default location s3:// because\n you cannot create a grant for all of your S3 data in the Region and must narrow the scope.\n For example, if the location scope is the default location s3://, the\n S3SubPrefx can be a /*, so the full grant scope path\n would be s3:///*. Or the S3SubPrefx can be\n /*, so the full grant scope path\n would be or s3:///*.

\n

If the S3SubPrefix includes a prefix, append the wildcard character\n * after the prefix to indicate that you want to include all object key\n names in the bucket that start with that prefix.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The configuration options of the S3 Access Grants location. It contains the\n S3SubPrefix field. The grant scope, the data to which you are granting\n access, is the result of appending the Subprefix field to the scope of the\n registered location.

" - } - }, - "com.amazonaws.s3control#AccessGrantsLocationId": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 64 - }, - "smithy.api#pattern": "^[a-zA-Z0-9\\-]+$" - } - }, - "com.amazonaws.s3control#AccessGrantsLocationsList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#ListAccessGrantsLocationsEntry", - "traits": { - "smithy.api#xmlName": "AccessGrantsLocation" - } - } - }, - "com.amazonaws.s3control#AccessKeyId": { - "type": "string", - "traits": { - "smithy.api#sensitive": {} - } - }, - "com.amazonaws.s3control#AccessPoint": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.s3control#AccessPointName", - "traits": { - "smithy.api#documentation": "

The name of this access point.

", - "smithy.api#required": {} - } - }, - "NetworkOrigin": { - "target": "com.amazonaws.s3control#NetworkOrigin", - "traits": { - "smithy.api#documentation": "

Indicates whether this access point allows access from the public internet. If\n VpcConfiguration is specified for this access point, then\n NetworkOrigin is VPC, and the access point doesn't allow access from\n the public internet. Otherwise, NetworkOrigin is Internet, and\n the access point allows access from the public internet, subject to the access point and bucket access\n policies.

", - "smithy.api#required": {} - } - }, - "VpcConfiguration": { - "target": "com.amazonaws.s3control#VpcConfiguration", - "traits": { - "smithy.api#documentation": "

The virtual private cloud (VPC) configuration for this access point, if one exists.

\n \n

This element is empty if this access point is an Amazon S3 on Outposts access point that is used by other\n Amazon Web Services services.

\n
" - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#AccessPointBucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket associated with this access point.

", - "smithy.api#required": {} - } - }, - "AccessPointArn": { - "target": "com.amazonaws.s3control#S3AccessPointArn", - "traits": { - "smithy.api#documentation": "

The ARN for the access point.

" - } - }, - "Alias": { - "target": "com.amazonaws.s3control#Alias", - "traits": { - "smithy.api#documentation": "

The name or alias of the access point.

" - } - }, - "BucketAccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 bucket associated with this access point.

" - } - }, - "DataSourceId": { - "target": "com.amazonaws.s3control#DataSourceId", - "traits": { - "smithy.api#documentation": "

A unique identifier for the data source of the access point.

" - } - }, - "DataSourceType": { - "target": "com.amazonaws.s3control#DataSourceType", - "traits": { - "smithy.api#documentation": "

The type of the data source that the access point is attached to.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

An access point used to access a bucket.

" - } - }, - "com.amazonaws.s3control#AccessPointBucketName": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 255 - } - } - }, - "com.amazonaws.s3control#AccessPointList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#AccessPoint", - "traits": { - "smithy.api#xmlName": "AccessPoint" - } - } - }, - "com.amazonaws.s3control#AccessPointName": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 3, - "max": 255 - } - } - }, - "com.amazonaws.s3control#AccountId": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 64 - }, - "smithy.api#pattern": "^\\d{12}$" - } - }, - "com.amazonaws.s3control#AccountLevel": { - "type": "structure", - "members": { - "ActivityMetrics": { - "target": "com.amazonaws.s3control#ActivityMetrics", - "traits": { - "smithy.api#documentation": "

A container element for S3 Storage Lens activity metrics.

" - } - }, - "BucketLevel": { - "target": "com.amazonaws.s3control#BucketLevel", - "traits": { - "smithy.api#documentation": "

A container element for the S3 Storage Lens bucket-level configuration.

", - "smithy.api#required": {} - } - }, - "AdvancedCostOptimizationMetrics": { - "target": "com.amazonaws.s3control#AdvancedCostOptimizationMetrics", - "traits": { - "smithy.api#documentation": "

A container element for S3 Storage Lens advanced cost-optimization metrics.

" - } - }, - "AdvancedDataProtectionMetrics": { - "target": "com.amazonaws.s3control#AdvancedDataProtectionMetrics", - "traits": { - "smithy.api#documentation": "

A container element for S3 Storage Lens advanced data-protection metrics.

" - } - }, - "DetailedStatusCodesMetrics": { - "target": "com.amazonaws.s3control#DetailedStatusCodesMetrics", - "traits": { - "smithy.api#documentation": "

A container element for detailed status code metrics.

" - } - }, - "StorageLensGroupLevel": { - "target": "com.amazonaws.s3control#StorageLensGroupLevel", - "traits": { - "smithy.api#documentation": "

\nA container element for S3 Storage Lens groups metrics.\n

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container element for the account-level Amazon S3 Storage Lens configuration.

\n

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3control#ActivityMetrics": { - "type": "structure", - "members": { - "IsEnabled": { - "target": "com.amazonaws.s3control#IsEnabled", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

A container that indicates whether activity metrics are enabled.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container element for Amazon S3 Storage Lens activity metrics. Activity metrics show details\n about how your storage is requested, such as requests (for example, All requests, Get\n requests, Put requests), bytes uploaded or downloaded, and errors.

\n

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3control#AdvancedCostOptimizationMetrics": { - "type": "structure", - "members": { - "IsEnabled": { - "target": "com.amazonaws.s3control#IsEnabled", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

A container that indicates whether advanced cost-optimization metrics are\n enabled.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container element for Amazon S3 Storage Lens advanced cost-optimization metrics. Advanced\n cost-optimization metrics provide insights that you can use to manage and optimize your\n storage costs, for example, lifecycle rule counts for transitions, expirations, and\n incomplete multipart uploads.

\n

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3control#AdvancedDataProtectionMetrics": { - "type": "structure", - "members": { - "IsEnabled": { - "target": "com.amazonaws.s3control#IsEnabled", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

A container that indicates whether advanced data-protection metrics are enabled.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container element for Amazon S3 Storage Lens advanced data-protection metrics. Advanced\n data-protection metrics provide insights that you can use to perform audits and protect\n your data, for example replication rule counts within and across Regions.

\n

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3control#Alias": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 63 - }, - "smithy.api#pattern": "^[0-9a-z\\\\-]{63}$" - } - }, - "com.amazonaws.s3control#AssociateAccessGrantsIdentityCenter": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#AssociateAccessGrantsIdentityCenterRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Associate your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance. Use this\n action if you want to create access grants for users or groups from your corporate identity\n directory. First, you must add your corporate identity directory to Amazon Web Services IAM Identity\n Center. Then, you can associate this IAM Identity Center instance with your S3 Access Grants\n instance.

\n
\n
Permissions
\n
\n

You must have the s3:AssociateAccessGrantsIdentityCenter\n permission to use this operation.

\n
\n
Additional Permissions
\n
\n

You must also have the following permissions:\n sso:CreateApplication, sso:PutApplicationGrant, and\n sso:PutApplicationAuthenticationMethod.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "POST", - "uri": "/v20180820/accessgrantsinstance/identitycenter", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#AssociateAccessGrantsIdentityCenterRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "IdentityCenterArn": { - "target": "com.amazonaws.s3control#IdentityCenterArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity Center instance that you are\n associating with your S3 Access Grants instance. An IAM Identity Center instance is your corporate\n identity directory that you added to the IAM Identity Center. You can use the ListInstances API operation to retrieve a list of your Identity Center\n instances and their ARNs.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#AsyncCreationTimestamp": { - "type": "timestamp" - }, - "com.amazonaws.s3control#AsyncErrorDetails": { - "type": "structure", - "members": { - "Code": { - "target": "com.amazonaws.s3control#MaxLength1024String", - "traits": { - "smithy.api#documentation": "

A string that uniquely identifies the error condition.

" - } - }, - "Message": { - "target": "com.amazonaws.s3control#MaxLength1024String", - "traits": { - "smithy.api#documentation": "

A generic description of the error condition in English.

" - } - }, - "Resource": { - "target": "com.amazonaws.s3control#MaxLength1024String", - "traits": { - "smithy.api#documentation": "

The identifier of the resource associated with the error.

" - } - }, - "RequestId": { - "target": "com.amazonaws.s3control#MaxLength1024String", - "traits": { - "smithy.api#documentation": "

The ID of the request associated with the error.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Error details for the failed asynchronous operation.

" - } - }, - "com.amazonaws.s3control#AsyncOperation": { - "type": "structure", - "members": { - "CreationTime": { - "target": "com.amazonaws.s3control#AsyncCreationTimestamp", - "traits": { - "smithy.api#documentation": "

The time that the request was sent to the service.

" - } - }, - "Operation": { - "target": "com.amazonaws.s3control#AsyncOperationName", - "traits": { - "smithy.api#documentation": "

The specific operation for the asynchronous request.

" - } - }, - "RequestTokenARN": { - "target": "com.amazonaws.s3control#AsyncRequestTokenARN", - "traits": { - "smithy.api#documentation": "

The request token associated with the request.

" - } - }, - "RequestParameters": { - "target": "com.amazonaws.s3control#AsyncRequestParameters", - "traits": { - "smithy.api#documentation": "

The parameters associated with the request.

" - } - }, - "RequestStatus": { - "target": "com.amazonaws.s3control#AsyncRequestStatus", - "traits": { - "smithy.api#documentation": "

The current status of the request.

" - } - }, - "ResponseDetails": { - "target": "com.amazonaws.s3control#AsyncResponseDetails", - "traits": { - "smithy.api#documentation": "

The details of the response.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for the information about an asynchronous operation.

" - } - }, - "com.amazonaws.s3control#AsyncOperationName": { - "type": "enum", - "members": { - "CreateMultiRegionAccessPoint": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CreateMultiRegionAccessPoint" - } - }, - "DeleteMultiRegionAccessPoint": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DeleteMultiRegionAccessPoint" - } - }, - "PutMultiRegionAccessPointPolicy": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "PutMultiRegionAccessPointPolicy" - } - } - } - }, - "com.amazonaws.s3control#AsyncRequestParameters": { - "type": "structure", - "members": { - "CreateMultiRegionAccessPointRequest": { - "target": "com.amazonaws.s3control#CreateMultiRegionAccessPointInput", - "traits": { - "smithy.api#documentation": "

A container of the parameters for a CreateMultiRegionAccessPoint request.

" - } - }, - "DeleteMultiRegionAccessPointRequest": { - "target": "com.amazonaws.s3control#DeleteMultiRegionAccessPointInput", - "traits": { - "smithy.api#documentation": "

A container of the parameters for a DeleteMultiRegionAccessPoint request.

" - } - }, - "PutMultiRegionAccessPointPolicyRequest": { - "target": "com.amazonaws.s3control#PutMultiRegionAccessPointPolicyInput", - "traits": { - "smithy.api#documentation": "

A container of the parameters for a PutMultiRegionAccessPoint request.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for the request parameters associated with an asynchronous request.

" - } - }, - "com.amazonaws.s3control#AsyncRequestStatus": { - "type": "string" - }, - "com.amazonaws.s3control#AsyncRequestTokenARN": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1024 - }, - "smithy.api#pattern": "^arn:.+$" - } - }, - "com.amazonaws.s3control#AsyncResponseDetails": { - "type": "structure", - "members": { - "MultiRegionAccessPointDetails": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointsAsyncResponse", - "traits": { - "smithy.api#documentation": "

The details for the Multi-Region Access Point.

" - } - }, - "ErrorDetails": { - "target": "com.amazonaws.s3control#AsyncErrorDetails", - "traits": { - "smithy.api#documentation": "

Error details for an asynchronous request.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for the response details that are returned when querying about an\n asynchronous request.

" - } - }, - "com.amazonaws.s3control#AwsLambdaTransformation": { - "type": "structure", - "members": { - "FunctionArn": { - "target": "com.amazonaws.s3control#FunctionArnString", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Lambda function.

", - "smithy.api#required": {} - } - }, - "FunctionPayload": { - "target": "com.amazonaws.s3control#AwsLambdaTransformationPayload", - "traits": { - "smithy.api#documentation": "

Additional JSON that provides supplemental data to the Lambda function used to transform\n objects.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Lambda function used to transform objects through an Object Lambda Access Point.

" - } - }, - "com.amazonaws.s3control#AwsLambdaTransformationPayload": { - "type": "string" - }, - "com.amazonaws.s3control#AwsOrgArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1024 - }, - "smithy.api#pattern": "^arn:[a-z\\-]+:organizations::\\d{12}:organization\\/o-[a-z0-9]{10,32}$" - } - }, - "com.amazonaws.s3control#BadRequestException": { - "type": "structure", - "members": { - "Message": { - "target": "com.amazonaws.s3control#ExceptionMessage" - } - }, - "traits": { - "smithy.api#documentation": "

", - "smithy.api#error": "client" - } - }, - "com.amazonaws.s3control#Boolean": { - "type": "boolean", - "traits": { - "smithy.api#default": false - } - }, - "com.amazonaws.s3control#BucketAlreadyExists": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

The requested Outposts bucket name is not available. The bucket namespace is shared by\n all users of the Outposts in this Region. Select a different name and try\n again.

", - "smithy.api#error": "client" - } - }, - "com.amazonaws.s3control#BucketAlreadyOwnedByYou": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

The Outposts bucket you tried to create already exists, and you own it.

", - "smithy.api#error": "client" - } - }, - "com.amazonaws.s3control#BucketCannedACL": { - "type": "enum", - "members": { - "private": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "private" - } - }, - "public_read": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "public-read" - } - }, - "public_read_write": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "public-read-write" - } - }, - "authenticated_read": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "authenticated-read" - } - } - } - }, - "com.amazonaws.s3control#BucketIdentifierString": { - "type": "string" - }, - "com.amazonaws.s3control#BucketLevel": { - "type": "structure", - "members": { - "ActivityMetrics": { - "target": "com.amazonaws.s3control#ActivityMetrics", - "traits": { - "smithy.api#documentation": "

A container for the bucket-level activity metrics for S3 Storage Lens.

" - } - }, - "PrefixLevel": { - "target": "com.amazonaws.s3control#PrefixLevel", - "traits": { - "smithy.api#documentation": "

A container for the prefix-level metrics for S3 Storage Lens.

" - } - }, - "AdvancedCostOptimizationMetrics": { - "target": "com.amazonaws.s3control#AdvancedCostOptimizationMetrics", - "traits": { - "smithy.api#documentation": "

A container for bucket-level advanced cost-optimization metrics for S3 Storage Lens.

" - } - }, - "AdvancedDataProtectionMetrics": { - "target": "com.amazonaws.s3control#AdvancedDataProtectionMetrics", - "traits": { - "smithy.api#documentation": "

A container for bucket-level advanced data-protection metrics for S3 Storage Lens.

" - } - }, - "DetailedStatusCodesMetrics": { - "target": "com.amazonaws.s3control#DetailedStatusCodesMetrics", - "traits": { - "smithy.api#documentation": "

A container for bucket-level detailed status code metrics for S3 Storage Lens.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for the bucket-level configuration for Amazon S3 Storage Lens.

\n

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3control#BucketLocationConstraint": { - "type": "enum", - "members": { - "EU": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "EU" - } - }, - "eu_west_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "eu-west-1" - } - }, - "us_west_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "us-west-1" - } - }, - "us_west_2": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "us-west-2" - } - }, - "ap_south_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ap-south-1" - } - }, - "ap_southeast_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ap-southeast-1" - } - }, - "ap_southeast_2": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ap-southeast-2" - } - }, - "ap_northeast_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ap-northeast-1" - } - }, - "sa_east_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "sa-east-1" - } - }, - "cn_north_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "cn-north-1" - } - }, - "eu_central_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "eu-central-1" - } - } - } - }, - "com.amazonaws.s3control#BucketName": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 3, - "max": 255 - } - } - }, - "com.amazonaws.s3control#BucketVersioningStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Suspended": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Suspended" - } - } - } - }, - "com.amazonaws.s3control#Buckets": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#S3BucketArnString", - "traits": { - "smithy.api#xmlName": "Arn" - } - } - }, - "com.amazonaws.s3control#CallerAccessGrantsList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#ListCallerAccessGrantsEntry", - "traits": { - "smithy.api#xmlName": "AccessGrant" - } - } - }, - "com.amazonaws.s3control#CloudWatchMetrics": { - "type": "structure", - "members": { - "IsEnabled": { - "target": "com.amazonaws.s3control#IsEnabled", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

A container that indicates whether CloudWatch publishing for S3 Storage Lens metrics is enabled. A\n value of true indicates that CloudWatch publishing for S3 Storage Lens metrics is\n enabled.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for enabling Amazon CloudWatch publishing for S3 Storage Lens metrics.

\n

For more information about publishing S3 Storage Lens metrics to CloudWatch, see Monitor\n S3 Storage Lens metrics in CloudWatch in the Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3control#ComputeObjectChecksumAlgorithm": { - "type": "enum", - "members": { - "CRC32": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CRC32" - } - }, - "CRC32C": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CRC32C" - } - }, - "CRC64NVME": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CRC64NVME" - } - }, - "MD5": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "MD5" - } - }, - "SHA1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "SHA1" - } - }, - "SHA256": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "SHA256" - } - } - } - }, - "com.amazonaws.s3control#ComputeObjectChecksumType": { - "type": "enum", - "members": { - "FULL_OBJECT": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "FULL_OBJECT" - } - }, - "COMPOSITE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "COMPOSITE" - } - } - } - }, - "com.amazonaws.s3control#ConfigId": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 64 - }, - "smithy.api#pattern": "^[a-zA-Z0-9\\-\\_\\.]+$" - } - }, - "com.amazonaws.s3control#ConfirmRemoveSelfBucketAccess": { - "type": "boolean", - "traits": { - "smithy.api#default": false - } - }, - "com.amazonaws.s3control#ConfirmationRequired": { - "type": "boolean", - "traits": { - "smithy.api#default": false - } - }, - "com.amazonaws.s3control#ContinuationToken": { - "type": "string" - }, - "com.amazonaws.s3control#CreateAccessGrant": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#CreateAccessGrantRequest" - }, - "output": { - "target": "com.amazonaws.s3control#CreateAccessGrantResult" - }, - "traits": { - "smithy.api#documentation": "

Creates an access grant that gives a grantee access to your S3 data. The grantee can be\n an IAM user or role or a directory user, or group. Before you can create a grant, you\n must have an S3 Access Grants instance in the same Region as the S3 data. You can create an S3 Access Grants\n instance using the CreateAccessGrantsInstance. You must also have registered at least one S3 data\n location in your S3 Access Grants instance using CreateAccessGrantsLocation.

\n
\n
Permissions
\n
\n

You must have the s3:CreateAccessGrant permission to use this\n operation.

\n
\n
Additional Permissions
\n
\n

For any directory identity - sso:DescribeInstance and\n sso:DescribeApplication\n

\n

For directory users - identitystore:DescribeUser\n

\n

For directory groups - identitystore:DescribeGroup\n

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "POST", - "uri": "/v20180820/accessgrantsinstance/grant", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#CreateAccessGrantRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "AccessGrantsLocationId": { - "target": "com.amazonaws.s3control#AccessGrantsLocationId", - "traits": { - "smithy.api#documentation": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this\n ID when you register the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

\n

If you are passing the default location, you cannot create an access grant\n for the entire default location. You must also specify a bucket or a bucket and prefix in\n the Subprefix field.

", - "smithy.api#required": {} - } - }, - "AccessGrantsLocationConfiguration": { - "target": "com.amazonaws.s3control#AccessGrantsLocationConfiguration", - "traits": { - "smithy.api#documentation": "

The configuration options of the grant location. The grant location is the S3 path to\n the data to which you are granting access. It contains the S3SubPrefix field.\n The grant scope is the result of appending the subprefix to the location scope of the\n registered location.

" - } - }, - "Grantee": { - "target": "com.amazonaws.s3control#Grantee", - "traits": { - "smithy.api#documentation": "

The user, group, or role to which you are granting access. You can grant access to an\n IAM user or role. If you have added your corporate directory to Amazon Web Services IAM Identity\n Center and associated your Identity Center instance with your S3 Access Grants instance, the grantee\n can also be a corporate directory user or group.

", - "smithy.api#required": {} - } - }, - "Permission": { - "target": "com.amazonaws.s3control#Permission", - "traits": { - "smithy.api#documentation": "

The type of access that you are granting to your S3 data, which can be set to one of the\n following values:

\n
    \n
  • \n

    \n READ – Grant read-only access to the S3 data.

    \n
  • \n
  • \n

    \n WRITE – Grant write-only access to the S3 data.

    \n
  • \n
  • \n

    \n READWRITE – Grant both read and write access to the S3 data.

    \n
  • \n
", - "smithy.api#required": {} - } - }, - "ApplicationArn": { - "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated\n with your Identity Center instance. If an application ARN is included in the request to\n create an access grant, the grantee can only access the S3 data through this application.\n

" - } - }, - "S3PrefixType": { - "target": "com.amazonaws.s3control#S3PrefixType", - "traits": { - "smithy.api#documentation": "

The type of S3SubPrefix. The only possible value is Object.\n Pass this value if the access grant scope is an object. Do not pass this value if the\n access grant scope is a bucket or a bucket and a prefix.

" - } - }, - "Tags": { - "target": "com.amazonaws.s3control#TagList", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services resource tags that you are adding to the access grant. Each tag is a label\n consisting of a user-defined key and value. Tags can help you manage, identify, organize,\n search for, and filter resources.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#CreateAccessGrantResult": { - "type": "structure", - "members": { - "CreatedAt": { - "target": "com.amazonaws.s3control#CreationTimestamp", - "traits": { - "smithy.api#documentation": "

The date and time when you created the access grant.

" - } - }, - "AccessGrantId": { - "target": "com.amazonaws.s3control#AccessGrantId", - "traits": { - "smithy.api#documentation": "

The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access\n grant.

" - } - }, - "AccessGrantArn": { - "target": "com.amazonaws.s3control#AccessGrantArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the access grant.

" - } - }, - "Grantee": { - "target": "com.amazonaws.s3control#Grantee", - "traits": { - "smithy.api#documentation": "

The user, group, or role to which you are granting access. You can grant access to an\n IAM user or role. If you have added your corporate directory to Amazon Web Services IAM Identity\n Center and associated your Identity Center instance with your S3 Access Grants instance, the grantee\n can also be a corporate directory user or group.

" - } - }, - "AccessGrantsLocationId": { - "target": "com.amazonaws.s3control#AccessGrantsLocationId", - "traits": { - "smithy.api#documentation": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this\n ID when you register the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

" - } - }, - "AccessGrantsLocationConfiguration": { - "target": "com.amazonaws.s3control#AccessGrantsLocationConfiguration", - "traits": { - "smithy.api#documentation": "

The configuration options of the grant location. The grant location is the S3 path to\n the data to which you are granting access.

" - } - }, - "Permission": { - "target": "com.amazonaws.s3control#Permission", - "traits": { - "smithy.api#documentation": "

The type of access that you are granting to your S3 data, which can be set to one of the\n following values:

\n
    \n
  • \n

    \n READ – Grant read-only access to the S3 data.

    \n
  • \n
  • \n

    \n WRITE – Grant write-only access to the S3 data.

    \n
  • \n
  • \n

    \n READWRITE – Grant both read and write access to the S3 data.

    \n
  • \n
" - } - }, - "ApplicationArn": { - "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated\n with your Identity Center instance. If the grant includes an application ARN, the grantee\n can only access the S3 data through this application.

" - } - }, - "GrantScope": { - "target": "com.amazonaws.s3control#S3Prefix", - "traits": { - "smithy.api#documentation": "

The S3 path of the data to which you are granting access. It is the result of appending\n the Subprefix to the location scope.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#CreateAccessGrantsInstance": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#CreateAccessGrantsInstanceRequest" - }, - "output": { - "target": "com.amazonaws.s3control#CreateAccessGrantsInstanceResult" - }, - "traits": { - "smithy.api#documentation": "

Creates an S3 Access Grants instance, which serves as a logical grouping for access grants. You\n can create one S3 Access Grants instance per Region per account.

\n
\n
Permissions
\n
\n

You must have the s3:CreateAccessGrantsInstance permission to use\n this operation.

\n
\n
Additional Permissions
\n
\n

To associate an IAM Identity Center instance with your S3 Access Grants instance, you\n must also have the sso:DescribeInstance,\n sso:CreateApplication, sso:PutApplicationGrant, and\n sso:PutApplicationAuthenticationMethod permissions.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "POST", - "uri": "/v20180820/accessgrantsinstance", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#CreateAccessGrantsInstanceRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "IdentityCenterArn": { - "target": "com.amazonaws.s3control#IdentityCenterArn", - "traits": { - "smithy.api#documentation": "

If you would like to associate your S3 Access Grants instance with an Amazon Web Services IAM Identity Center\n instance, use this field to pass the Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity\n Center instance that you are associating with your S3 Access Grants instance. An IAM Identity\n Center instance is your corporate identity directory that you added to the IAM Identity\n Center. You can use the ListInstances API\n operation to retrieve a list of your Identity Center instances and their ARNs.

" - } - }, - "Tags": { - "target": "com.amazonaws.s3control#TagList", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services resource tags that you are adding to the S3 Access Grants instance. Each tag is a label\n consisting of a user-defined key and value. Tags can help you manage, identify, organize,\n search for, and filter resources.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#CreateAccessGrantsInstanceResult": { - "type": "structure", - "members": { - "CreatedAt": { - "target": "com.amazonaws.s3control#CreationTimestamp", - "traits": { - "smithy.api#documentation": "

The date and time when you created the S3 Access Grants instance.

" - } - }, - "AccessGrantsInstanceId": { - "target": "com.amazonaws.s3control#AccessGrantsInstanceId", - "traits": { - "smithy.api#documentation": "

The ID of the S3 Access Grants instance. The ID is default. You can have one S3 Access Grants\n instance per Region per account.

" - } - }, - "AccessGrantsInstanceArn": { - "target": "com.amazonaws.s3control#AccessGrantsInstanceArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity Center instance that you are\n associating with your S3 Access Grants instance. An IAM Identity Center instance is your corporate\n identity directory that you added to the IAM Identity Center. You can use the ListInstances API operation to retrieve a list of your Identity Center\n instances and their ARNs.

" - } - }, - "IdentityCenterArn": { - "target": "com.amazonaws.s3control#IdentityCenterArn", - "traits": { - "smithy.api#deprecated": { - "message": "IdentityCenterArn has been deprecated. Use IdentityCenterInstanceArn or IdentityCenterApplicationArn." - }, - "smithy.api#documentation": "

If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance,\n this field returns the Amazon Resource Name (ARN) of the IAM Identity Center instance\n application; a subresource of the original Identity Center instance. S3 Access Grants creates this\n Identity Center application for the specific S3 Access Grants instance.

" - } - }, - "IdentityCenterInstanceArn": { - "target": "com.amazonaws.s3control#IdentityCenterArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity Center instance that you are\n associating with your S3 Access Grants instance. An IAM Identity Center instance is your corporate\n identity directory that you added to the IAM Identity Center. You can use the ListInstances API operation to retrieve a list of your Identity Center\n instances and their ARNs.

" - } - }, - "IdentityCenterApplicationArn": { - "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", - "traits": { - "smithy.api#documentation": "

If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance,\n this field returns the Amazon Resource Name (ARN) of the IAM Identity Center instance\n application; a subresource of the original Identity Center instance. S3 Access Grants creates this\n Identity Center application for the specific S3 Access Grants instance.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#CreateAccessGrantsLocation": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#CreateAccessGrantsLocationRequest" - }, - "output": { - "target": "com.amazonaws.s3control#CreateAccessGrantsLocationResult" - }, - "traits": { - "smithy.api#documentation": "

The S3 data location that you would like to register in your S3 Access Grants instance. Your S3\n data must be in the same Region as your S3 Access Grants instance. The location can be one of the\n following:

\n
    \n
  • \n

    The default S3 location s3://\n

    \n
  • \n
  • \n

    A bucket - S3://\n

    \n
  • \n
  • \n

    A bucket and prefix - S3:///\n

    \n
  • \n
\n

When you register a location, you must include the IAM role that has permission to\n manage the S3 location that you are registering. Give S3 Access Grants permission to assume this role\n using a policy. S3 Access Grants assumes this role to manage access to the location and\n to vend temporary credentials to grantees or client applications.

\n
\n
Permissions
\n
\n

You must have the s3:CreateAccessGrantsLocation permission to use\n this operation.

\n
\n
Additional Permissions
\n
\n

You must also have the following permission for the specified IAM role:\n iam:PassRole\n

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "POST", - "uri": "/v20180820/accessgrantsinstance/location", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#CreateAccessGrantsLocationRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "LocationScope": { - "target": "com.amazonaws.s3control#S3Prefix", - "traits": { - "smithy.api#documentation": "

The S3 path to the location that you are registering. The location scope can be the\n default S3 location s3://, the S3 path to a bucket\n s3://, or the S3 path to a bucket and prefix\n s3:///. A prefix in S3 is a string of\n characters at the beginning of an object key name used to organize the objects that you\n store in your S3 buckets. For example, object key names that start with the\n engineering/ prefix or object key names that start with the\n marketing/campaigns/ prefix.

", - "smithy.api#required": {} - } - }, - "IAMRoleArn": { - "target": "com.amazonaws.s3control#IAMRoleArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants\n assumes this role to manage access to the registered location.

", - "smithy.api#required": {} - } - }, - "Tags": { - "target": "com.amazonaws.s3control#TagList", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services resource tags that you are adding to the S3 Access Grants location. Each tag is a label\n consisting of a user-defined key and value. Tags can help you manage, identify, organize,\n search for, and filter resources.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#CreateAccessGrantsLocationResult": { - "type": "structure", - "members": { - "CreatedAt": { - "target": "com.amazonaws.s3control#CreationTimestamp", - "traits": { - "smithy.api#documentation": "

The date and time when you registered the location.

" - } - }, - "AccessGrantsLocationId": { - "target": "com.amazonaws.s3control#AccessGrantsLocationId", - "traits": { - "smithy.api#documentation": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this\n ID when you register the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

" - } - }, - "AccessGrantsLocationArn": { - "target": "com.amazonaws.s3control#AccessGrantsLocationArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the location you are registering.

" - } - }, - "LocationScope": { - "target": "com.amazonaws.s3control#S3Prefix", - "traits": { - "smithy.api#documentation": "

The S3 URI path to the location that you are registering. The location scope can be the\n default S3 location s3://, the S3 path to a bucket, or the S3 path to a bucket\n and prefix. A prefix in S3 is a string of characters at the beginning of an object key name\n used to organize the objects that you store in your S3 buckets. For example, object key\n names that start with the engineering/ prefix or object key names that start\n with the marketing/campaigns/ prefix.

" - } - }, - "IAMRoleArn": { - "target": "com.amazonaws.s3control#IAMRoleArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants\n assumes this role to manage access to the registered location.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#CreateAccessPoint": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#CreateAccessPointRequest" - }, - "output": { - "target": "com.amazonaws.s3control#CreateAccessPointResult" - }, - "traits": { - "smithy.api#documentation": "

Creates an access point and associates it to a specified bucket. For more information, see\n Managing\n access to shared datasets with access points or Managing access to\n shared datasets in directory buckets with access points in the\n Amazon S3 User Guide.

\n

To create an access point and attach it to a volume on an Amazon FSx file system, see CreateAndAttachS3AccessPoint in the Amazon FSx API\n Reference.

\n

\n \n

S3 on Outposts only supports VPC-style access points.

\n

For more information, see Accessing Amazon S3 on Outposts using\n virtual private cloud (VPC) only access points in the\n Amazon S3 User Guide.

\n
\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

\n

The following actions are related to CreateAccessPoint:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/accesspoint/{Name}", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#CreateAccessPointForObjectLambda": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#CreateAccessPointForObjectLambdaRequest" - }, - "output": { - "target": "com.amazonaws.s3control#CreateAccessPointForObjectLambdaResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Creates an Object Lambda Access Point. For more information, see Transforming objects with\n Object Lambda Access Points in the Amazon S3 User Guide.

\n

The following actions are related to\n CreateAccessPointForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/accesspointforobjectlambda/{Name}", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#CreateAccessPointForObjectLambdaRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID for owner of the specified Object Lambda Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", - "traits": { - "smithy.api#documentation": "

The name you want to assign to this Object Lambda Access Point.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "Configuration": { - "target": "com.amazonaws.s3control#ObjectLambdaConfiguration", - "traits": { - "smithy.api#documentation": "

Object Lambda Access Point configuration as a JSON document.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#CreateAccessPointForObjectLambdaResult": { - "type": "structure", - "members": { - "ObjectLambdaAccessPointArn": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointArn", - "traits": { - "smithy.api#documentation": "

Specifies the ARN for the Object Lambda Access Point.

" - } - }, - "Alias": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointAlias", - "traits": { - "smithy.api#documentation": "

The alias of the Object Lambda Access Point.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#CreateAccessPointRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID for the account that owns the specified access point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#AccessPointName", - "traits": { - "smithy.api#documentation": "

The name you want to assign to this access point.

\n

For directory buckets, the access point name must consist of a base name that you provide and\n suffix that includes the ZoneID (Amazon Web Services Availability Zone or Local Zone) of your bucket location,\n followed by --xa-s3. For more information, see Managing access to shared datasets in directory buckets with\n access points in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccessPointName" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket that you want to associate this access point with.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "VpcConfiguration": { - "target": "com.amazonaws.s3control#VpcConfiguration", - "traits": { - "smithy.api#documentation": "

If you include this field, Amazon S3 restricts access to this access point to requests from the\n specified virtual private cloud (VPC).

\n \n

This is required for creating an access point for Amazon S3 on Outposts buckets.

\n
" - } - }, - "PublicAccessBlockConfiguration": { - "target": "com.amazonaws.s3control#PublicAccessBlockConfiguration", - "traits": { - "smithy.api#documentation": "

The PublicAccessBlock configuration that you want to apply to the access point.\n

" - } - }, - "BucketAccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 bucket associated with this access point.

\n

For same account access point when your bucket and access point belong to the same account owner, the\n BucketAccountId is not required. For cross-account access point when your bucket\n and access point are not in the same account, the BucketAccountId is required.

" - } - }, - "Scope": { - "target": "com.amazonaws.s3control#Scope", - "traits": { - "smithy.api#documentation": "

For directory buckets, you can filter access control to specific prefixes, API\n operations, or a combination of both. For more information, see Managing access to shared datasets in directory buckets with\n access points in the Amazon S3 User Guide.

\n \n

Scope is only supported for access points attached to directory buckets.

\n
" - } - }, - "Tags": { - "target": "com.amazonaws.s3control#TagList", - "traits": { - "smithy.api#documentation": "

An array of tags that you can apply to an access point. Tags are key-value pairs of metadata used to control access to your access points. For more information about tags, see Using tags with Amazon S3. For information about tagging access points, see Using tags for attribute-based access control (ABAC).

\n \n
    \n
  • \n

    You must have the s3:TagResource permission to create an access point with tags for a general purpose bucket.

    \n
  • \n
  • \n

    You must have the s3express:TagResource permission to create an access point with tags for a directory bucket.

    \n
  • \n
\n
" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#CreateAccessPointResult": { - "type": "structure", - "members": { - "AccessPointArn": { - "target": "com.amazonaws.s3control#S3AccessPointArn", - "traits": { - "smithy.api#documentation": "

The ARN of the access point.

\n \n

This is only supported by Amazon S3 on Outposts.

\n
" - } - }, - "Alias": { - "target": "com.amazonaws.s3control#Alias", - "traits": { - "smithy.api#documentation": "

The name or alias of the access point.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#CreateBucket": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#CreateBucketRequest" - }, - "output": { - "target": "com.amazonaws.s3control#CreateBucketResult" - }, - "errors": [ - { - "target": "com.amazonaws.s3control#BucketAlreadyExists" - }, - { - "target": "com.amazonaws.s3control#BucketAlreadyOwnedByYou" - } - ], - "traits": { - "smithy.api#documentation": "\n

This action creates an Amazon S3 on Outposts bucket. To create an S3 bucket, see Create\n Bucket in the Amazon S3 API Reference.

\n
\n

Creates a new Outposts bucket. By creating the bucket, you become the bucket owner. To\n create an Outposts bucket, you must have S3 on Outposts. For more information, see Using\n Amazon S3 on Outposts in Amazon S3 User Guide.

\n

Not every string is an acceptable bucket name. For information on bucket naming\n restrictions, see Working with\n Amazon S3 Buckets.

\n

S3 on Outposts buckets support:

\n
    \n
  • \n

    Tags

    \n
  • \n
  • \n

    LifecycleConfigurations for deleting expired objects

    \n
  • \n
\n

For a complete list of restrictions and Amazon S3 feature limitations on S3 on Outposts, see\n \n Amazon S3 on Outposts Restrictions and Limitations.

\n

For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts\n endpoint hostname prefix and x-amz-outpost-id in your API request, see the\n Examples section.

\n

The following actions are related to CreateBucket for\n Amazon S3 on Outposts:

\n ", - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/bucket/{Bucket}", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {} - } - }, - "com.amazonaws.s3control#CreateBucketConfiguration": { - "type": "structure", - "members": { - "LocationConstraint": { - "target": "com.amazonaws.s3control#BucketLocationConstraint", - "traits": { - "smithy.api#documentation": "

Specifies the Region where the bucket will be created. If you are creating a bucket on\n the US East (N. Virginia) Region (us-east-1), you do not need to specify the location.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container for the bucket configuration.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" - } - }, - "com.amazonaws.s3control#CreateBucketRequest": { - "type": "structure", - "members": { - "ACL": { - "target": "com.amazonaws.s3control#BucketCannedACL", - "traits": { - "smithy.api#documentation": "

The canned ACL to apply to the bucket.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", - "smithy.api#httpHeader": "x-amz-acl" - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "CreateBucketConfiguration": { - "target": "com.amazonaws.s3control#CreateBucketConfiguration", - "traits": { - "smithy.api#documentation": "

The configuration information for the bucket.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", - "smithy.api#httpPayload": {}, - "smithy.api#xmlName": "CreateBucketConfiguration" - } - }, - "GrantFullControl": { - "target": "com.amazonaws.s3control#GrantFullControl", - "traits": { - "smithy.api#documentation": "

Allows grantee the read, write, read ACP, and write ACP permissions on the\n bucket.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", - "smithy.api#httpHeader": "x-amz-grant-full-control" - } - }, - "GrantRead": { - "target": "com.amazonaws.s3control#GrantRead", - "traits": { - "smithy.api#documentation": "

Allows grantee to list the objects in the bucket.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", - "smithy.api#httpHeader": "x-amz-grant-read" - } - }, - "GrantReadACP": { - "target": "com.amazonaws.s3control#GrantReadACP", - "traits": { - "smithy.api#documentation": "

Allows grantee to read the bucket ACL.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", - "smithy.api#httpHeader": "x-amz-grant-read-acp" - } - }, - "GrantWrite": { - "target": "com.amazonaws.s3control#GrantWrite", - "traits": { - "smithy.api#documentation": "

Allows grantee to create, overwrite, and delete any object in the bucket.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", - "smithy.api#httpHeader": "x-amz-grant-write" - } - }, - "GrantWriteACP": { - "target": "com.amazonaws.s3control#GrantWriteACP", - "traits": { - "smithy.api#documentation": "

Allows grantee to write the ACL for the applicable bucket.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", - "smithy.api#httpHeader": "x-amz-grant-write-acp" - } - }, - "ObjectLockEnabledForBucket": { - "target": "com.amazonaws.s3control#ObjectLockEnabledForBucket", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

Specifies whether you want S3 Object Lock to be enabled for the new bucket.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", - "smithy.api#httpHeader": "x-amz-bucket-object-lock-enabled" - } - }, - "OutpostId": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength64String", - "traits": { - "smithy.api#documentation": "

The ID of the Outposts where the bucket is being created.

\n \n

This ID is required by Amazon S3 on Outposts buckets.

\n
", - "smithy.api#httpHeader": "x-amz-outpost-id", - "smithy.rules#contextParam": { - "name": "OutpostId" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#CreateBucketResult": { - "type": "structure", - "members": { - "Location": { - "target": "com.amazonaws.s3control#Location", - "traits": { - "smithy.api#documentation": "

The location of the bucket.

", - "smithy.api#httpHeader": "Location" - } - }, - "BucketArn": { - "target": "com.amazonaws.s3control#S3RegionalBucketArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#CreateJob": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#CreateJobRequest" - }, - "output": { - "target": "com.amazonaws.s3control#CreateJobResult" - }, - "errors": [ - { - "target": "com.amazonaws.s3control#BadRequestException" - }, - { - "target": "com.amazonaws.s3control#IdempotencyException" - }, - { - "target": "com.amazonaws.s3control#InternalServiceException" - }, - { - "target": "com.amazonaws.s3control#TooManyRequestsException" - } - ], - "traits": { - "smithy.api#documentation": "

This operation creates an S3 Batch Operations job.

\n

You can use S3 Batch Operations to perform large-scale batch actions on Amazon S3 objects.\n Batch Operations can run a single action on lists of Amazon S3 objects that you specify. For more\n information, see S3 Batch Operations in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

For information about permissions required to use the Batch Operations, see Granting\n permissions for S3 Batch Operations in the Amazon S3 User\n Guide.

\n
\n
\n

\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "POST", - "uri": "/v20180820/jobs", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#CreateJobRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID that creates the job.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "ConfirmationRequired": { - "target": "com.amazonaws.s3control#ConfirmationRequired", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

Indicates whether confirmation is required before Amazon S3 runs the job. Confirmation is\n only required for jobs created through the Amazon S3 console.

" - } - }, - "Operation": { - "target": "com.amazonaws.s3control#JobOperation", - "traits": { - "smithy.api#documentation": "

The action that you want this job to perform on every object listed in the manifest. For\n more information about the available actions, see Operations in the\n Amazon S3 User Guide.

", - "smithy.api#required": {} - } - }, - "Report": { - "target": "com.amazonaws.s3control#JobReport", - "traits": { - "smithy.api#documentation": "

Configuration parameters for the optional job-completion report.

", - "smithy.api#required": {} - } - }, - "ClientRequestToken": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength64String", - "traits": { - "smithy.api#documentation": "

An idempotency token to ensure that you don't accidentally submit the same request\n twice. You can use any string up to the maximum length.

", - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} - } - }, - "Manifest": { - "target": "com.amazonaws.s3control#JobManifest", - "traits": { - "smithy.api#documentation": "

Configuration parameters for the manifest.

" - } - }, - "Description": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength256String", - "traits": { - "smithy.api#documentation": "

A description for this job. You can use any string within the permitted length.\n Descriptions don't need to be unique and can be used for multiple jobs.

" - } - }, - "Priority": { - "target": "com.amazonaws.s3control#JobPriority", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

The numerical priority for this job. Higher numbers indicate higher priority.

", - "smithy.api#required": {} - } - }, - "RoleArn": { - "target": "com.amazonaws.s3control#IAMRoleArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the Identity and Access Management (IAM) role that Batch Operations will\n use to run this job's action on every object in the manifest.

", - "smithy.api#required": {} - } - }, - "Tags": { - "target": "com.amazonaws.s3control#S3TagSet", - "traits": { - "smithy.api#documentation": "

A set of tags to associate with the S3 Batch Operations job. This is an optional parameter.\n

" - } - }, - "ManifestGenerator": { - "target": "com.amazonaws.s3control#JobManifestGenerator", - "traits": { - "smithy.api#documentation": "

The attribute container for the ManifestGenerator details. Jobs must be created with\n either a manifest file or a ManifestGenerator, but not both.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#CreateJobResult": { - "type": "structure", - "members": { - "JobId": { - "target": "com.amazonaws.s3control#JobId", - "traits": { - "smithy.api#documentation": "

The ID for this job. Amazon S3 generates this ID automatically and returns it after a\n successful Create Job request.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#CreateMultiRegionAccessPoint": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#CreateMultiRegionAccessPointRequest" - }, - "output": { - "target": "com.amazonaws.s3control#CreateMultiRegionAccessPointResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Creates a Multi-Region Access Point and associates it with the specified buckets. For more information\n about creating Multi-Region Access Points, see Creating\n Multi-Region Access Points in the Amazon S3 User Guide.

\n

This action will always be routed to the US West (Oregon) Region. For more information\n about the restrictions around working with Multi-Region Access Points, see Multi-Region Access Point\n restrictions and limitations in the Amazon S3 User Guide.

\n

This request is asynchronous, meaning that you might receive a response before the\n command has completed. When this request provides a response, it provides a token that you\n can use to monitor the status of the request with\n DescribeMultiRegionAccessPointOperation.

\n

The following actions are related to CreateMultiRegionAccessPoint:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "POST", - "uri": "/v20180820/async-requests/mrap/create", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#CreateMultiRegionAccessPointInput": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the Multi-Region Access Point associated with this request.

", - "smithy.api#required": {} - } - }, - "PublicAccessBlock": { - "target": "com.amazonaws.s3control#PublicAccessBlockConfiguration" - }, - "Regions": { - "target": "com.amazonaws.s3control#RegionCreationList", - "traits": { - "smithy.api#documentation": "

The buckets in different Regions that are associated with the Multi-Region Access Point.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for the information associated with a CreateMultiRegionAccessPoint request.

" - } - }, - "com.amazonaws.s3control#CreateMultiRegionAccessPointRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point. The owner of the Multi-Region Access Point also must own\n the underlying buckets.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "ClientToken": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointClientToken", - "traits": { - "smithy.api#documentation": "

An idempotency token used to identify the request and guarantee that requests are\n unique.

", - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} - } - }, - "Details": { - "target": "com.amazonaws.s3control#CreateMultiRegionAccessPointInput", - "traits": { - "smithy.api#documentation": "

A container element containing details about the Multi-Region Access Point.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#CreateMultiRegionAccessPointResult": { - "type": "structure", - "members": { - "RequestTokenARN": { - "target": "com.amazonaws.s3control#AsyncRequestTokenARN", - "traits": { - "smithy.api#documentation": "

The request token associated with the request. You can use this token with DescribeMultiRegionAccessPointOperation to determine the status of asynchronous\n requests.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#CreateStorageLensGroup": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#CreateStorageLensGroupRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Creates a new S3 Storage Lens group and associates it with the specified Amazon Web Services account ID. An\n S3 Storage Lens group is a custom grouping of objects based on prefix, suffix, object tags,\n object size, object age, or a combination of these filters. For each Storage Lens group\n that you’ve created, you can also optionally add Amazon Web Services resource tags. For more information\n about S3 Storage Lens groups, see Working with S3 Storage Lens\n groups.

\n

To use this operation, you must have the permission to perform the\n s3:CreateStorageLensGroup action. If you’re trying to create a Storage Lens\n group with Amazon Web Services resource tags, you must also have permission to perform the\n s3:TagResource action. For more information about the required Storage Lens\n Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

\n

For information about Storage Lens groups errors, see List of Amazon S3 Storage\n Lens error codes.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "POST", - "uri": "/v20180820/storagelensgroup", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#CreateStorageLensGroupRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

\nThe Amazon Web Services account ID that the Storage Lens group is created from and associated with.\n

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "StorageLensGroup": { - "target": "com.amazonaws.s3control#StorageLensGroup", - "traits": { - "smithy.api#documentation": "

\nThe Storage Lens group configuration.\n

", - "smithy.api#required": {} - } - }, - "Tags": { - "target": "com.amazonaws.s3control#TagList", - "traits": { - "smithy.api#documentation": "

\nThe Amazon Web Services resource tags that you're adding to your Storage Lens group. This parameter is optional.\n

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#CreationDate": { - "type": "timestamp" - }, - "com.amazonaws.s3control#CreationTimestamp": { - "type": "timestamp" - }, - "com.amazonaws.s3control#Credentials": { - "type": "structure", - "members": { - "AccessKeyId": { - "target": "com.amazonaws.s3control#AccessKeyId", - "traits": { - "smithy.api#documentation": "

The unique access key ID of the Amazon Web Services STS temporary credential that S3 Access Grants vends to grantees\n and client applications.

" - } - }, - "SecretAccessKey": { - "target": "com.amazonaws.s3control#SecretAccessKey", - "traits": { - "smithy.api#documentation": "

The secret access key of the Amazon Web Services STS temporary credential that S3 Access Grants vends to grantees\n and client applications.

" - } - }, - "SessionToken": { - "target": "com.amazonaws.s3control#SessionToken", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services STS temporary credential that S3 Access Grants vends to grantees and client applications.\n

" - } - }, - "Expiration": { - "target": "com.amazonaws.s3control#Expiration", - "traits": { - "smithy.api#documentation": "

The expiration date and time of the temporary credential that S3 Access Grants vends to grantees\n and client applications.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The Amazon Web Services Security Token Service temporary credential that S3 Access Grants vends to grantees and client\n applications.

", - "smithy.api#sensitive": {} - } - }, - "com.amazonaws.s3control#DSSEKMSFilter": { - "type": "structure", - "members": { - "KmsKeyArn": { - "target": "com.amazonaws.s3control#NonEmptyKmsKeyArnString", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the customer managed KMS key to use for the filter \n to return objects that are encrypted by the specified key. For best performance, \n we recommend using the KMSKeyArn filter in conjunction with other object metadata filters, like MatchAnyPrefix, CreatedAfter, or \n MatchAnyStorageClass.

\n \n

You must provide the full KMS Key ARN. You can't use an alias name or alias ARN. \n For more information, see \n KMS keys in the Amazon Web Services Key Management Service Developer Guide.

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

A filter that returns objects that are encrypted by dual-layer server-side encryption with Amazon Web Services Key Management\n Service (KMS) keys (DSSE-KMS). You can further refine your filtering by optionally providing a KMS Key ARN \n to create an object list of DSSE-KMS objects with that specific KMS Key ARN.

" - } - }, - "com.amazonaws.s3control#DataSourceId": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 191 - } - } - }, - "com.amazonaws.s3control#DataSourceType": { - "type": "string" - }, - "com.amazonaws.s3control#Date": { - "type": "timestamp" - }, - "com.amazonaws.s3control#Days": { - "type": "integer", - "traits": { - "smithy.api#default": 0 - } - }, - "com.amazonaws.s3control#DaysAfterInitiation": { - "type": "integer", - "traits": { - "smithy.api#default": 0 - } - }, - "com.amazonaws.s3control#DeleteAccessGrant": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteAccessGrantRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Deletes the access grant from the S3 Access Grants instance. You cannot undo an access grant\n deletion and the grantee will no longer have access to the S3 data.

\n
\n
Permissions
\n
\n

You must have the s3:DeleteAccessGrant permission to use this\n operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/accessgrantsinstance/grant/{AccessGrantId}", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteAccessGrantRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "AccessGrantId": { - "target": "com.amazonaws.s3control#AccessGrantId", - "traits": { - "smithy.api#documentation": "

The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access\n grant.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteAccessGrantsInstance": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteAccessGrantsInstanceRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Deletes your S3 Access Grants instance. You must first delete the access grants and locations\n before S3 Access Grants can delete the instance. See DeleteAccessGrant\n and DeleteAccessGrantsLocation. If you have associated an IAM Identity Center\n instance with your S3 Access Grants instance, you must first dissassociate the Identity Center\n instance from the S3 Access Grants instance before you can delete the S3 Access Grants instance. See AssociateAccessGrantsIdentityCenter and DissociateAccessGrantsIdentityCenter.

\n
\n
Permissions
\n
\n

You must have the s3:DeleteAccessGrantsInstance permission to use\n this operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/accessgrantsinstance", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteAccessGrantsInstanceRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteAccessGrantsInstanceResourcePolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteAccessGrantsInstanceResourcePolicyRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Deletes the resource policy of the S3 Access Grants instance. The resource policy is used to\n manage cross-account access to your S3 Access Grants instance. By deleting the resource policy, you\n delete any cross-account permissions to your S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:DeleteAccessGrantsInstanceResourcePolicy\n permission to use this operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/accessgrantsinstance/resourcepolicy", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteAccessGrantsInstanceResourcePolicyRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteAccessGrantsLocation": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteAccessGrantsLocationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Deregisters a location from your S3 Access Grants instance. You can only delete a location\n registration from an S3 Access Grants instance if there are no grants associated with this location.\n See Delete a grant for\n information on how to delete grants. You need to have at least one registered location in\n your S3 Access Grants instance in order to create access grants.

\n
\n
Permissions
\n
\n

You must have the s3:DeleteAccessGrantsLocation permission to use\n this operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/accessgrantsinstance/location/{AccessGrantsLocationId}", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteAccessGrantsLocationRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "AccessGrantsLocationId": { - "target": "com.amazonaws.s3control#AccessGrantsLocationId", - "traits": { - "smithy.api#documentation": "

The ID of the registered location that you are deregistering from your S3 Access Grants instance.\n S3 Access Grants assigned this ID when you registered the location. S3 Access Grants assigns the ID\n default to the default location s3:// and assigns an\n auto-generated ID to other locations that you register.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteAccessPoint": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteAccessPointRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Deletes the specified access point.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to DeleteAccessPoint:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/accesspoint/{Name}", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteAccessPointForObjectLambda": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteAccessPointForObjectLambdaRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Deletes the specified Object Lambda Access Point.

\n

The following actions are related to\n DeleteAccessPointForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/accesspointforobjectlambda/{Name}", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteAccessPointForObjectLambdaRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the access point you want to delete.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteAccessPointPolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteAccessPointPolicyRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Deletes the access point policy for the specified access point.

\n

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to DeleteAccessPointPolicy:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/accesspoint/{Name}/policy", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteAccessPointPolicyForObjectLambda": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteAccessPointPolicyForObjectLambdaRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Removes the resource policy for an Object Lambda Access Point.

\n

The following actions are related to\n DeleteAccessPointPolicyForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/accesspointforobjectlambda/{Name}/policy", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteAccessPointPolicyForObjectLambdaRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the Object Lambda Access Point you want to delete the policy for.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteAccessPointPolicyRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID for the account that owns the specified access point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#AccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the access point whose policy you want to delete.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the access point accessed in the format arn:aws:s3-outposts:::outpost//accesspoint/. For example, to access the access point reports-ap through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/accesspoint/reports-ap. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccessPointName" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteAccessPointRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID for the account that owns the specified access point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#AccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the access point you want to delete.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the access point accessed in the format arn:aws:s3-outposts:::outpost//accesspoint/. For example, to access the access point reports-ap through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/accesspoint/reports-ap. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccessPointName" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteAccessPointScope": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteAccessPointScopeRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Deletes an existing access point scope for a directory bucket.

\n \n

When you delete the scope of an access point, all prefixes and permissions are\n deleted.

\n
\n

To use this operation, you must have the permission to perform the\n s3express:DeleteAccessPointScope\n action.

\n

For information about REST API errors, see REST error responses.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/accesspoint/{Name}/scope", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - }, - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteAccessPointScopeRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID that owns the access point with the scope that you want to delete.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#AccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the access point with the scope that you want to delete.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccessPointName" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteBucket": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteBucketRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This action deletes an Amazon S3 on Outposts bucket. To delete an S3 bucket, see DeleteBucket in the Amazon S3 API Reference.

\n
\n

Deletes the Amazon S3 on Outposts bucket. All objects (including all object versions and\n delete markers) in the bucket must be deleted before the bucket itself can be deleted. For\n more information, see Using Amazon S3 on Outposts in\n Amazon S3 User Guide.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

\n Related Resources\n

\n ", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/bucket/{Bucket}", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteBucketLifecycleConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteBucketLifecycleConfigurationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This action deletes an Amazon S3 on Outposts bucket's lifecycle configuration. To delete\n an S3 bucket's lifecycle configuration, see DeleteBucketLifecycle in the Amazon S3 API Reference.

\n
\n

Deletes the lifecycle configuration from the specified Outposts bucket.\n Amazon S3 on Outposts removes all the lifecycle configuration rules in the lifecycle subresource\n associated with the bucket. Your objects never expire, and Amazon S3 on Outposts no longer\n automatically deletes any objects on the basis of rules contained in the deleted lifecycle\n configuration. For more information, see Using Amazon S3 on Outposts in\n Amazon S3 User Guide.

\n

To use this operation, you must have permission to perform the\n s3-outposts:PutLifecycleConfiguration action. By default, the bucket owner\n has this permission and the Outposts bucket owner can grant this permission to\n others.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

For more information about object expiration, see Elements to Describe Lifecycle Actions.

\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/bucket/{Bucket}/lifecycleconfiguration", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteBucketLifecycleConfigurationRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the lifecycle configuration to delete.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

Specifies the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteBucketPolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteBucketPolicyRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This action deletes an Amazon S3 on Outposts bucket policy. To delete an S3 bucket policy,\n see DeleteBucketPolicy in the Amazon S3 API Reference.

\n
\n

This implementation of the DELETE action uses the policy subresource to delete the\n policy of a specified Amazon S3 on Outposts bucket. If you are using an identity other than the\n root user of the Amazon Web Services account that owns the bucket, the calling identity must have the\n s3-outposts:DeleteBucketPolicy permissions on the specified Outposts bucket\n and belong to the bucket owner's account to use this action. For more information, see\n Using\n Amazon S3 on Outposts in Amazon S3 User Guide.

\n

If you don't have DeleteBucketPolicy permissions, Amazon S3 returns a 403\n Access Denied error. If you have the correct permissions, but you're not using an\n identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not\n Allowed error.

\n \n

As a security precaution, the root user of the Amazon Web Services account that owns a bucket can\n always use this action, even if the policy explicitly denies the root user the ability\n to perform this action.

\n
\n

For more information about bucket policies, see Using Bucket Policies and User\n Policies.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to DeleteBucketPolicy:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/bucket/{Bucket}/policy", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteBucketPolicyRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the Outposts bucket.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

Specifies the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteBucketReplication": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteBucketReplicationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation deletes an Amazon S3 on Outposts bucket's replication configuration. To\n delete an S3 bucket's replication configuration, see DeleteBucketReplication in the Amazon S3 API Reference.

\n
\n

Deletes the replication configuration from the specified S3 on Outposts bucket.

\n

To use this operation, you must have permissions to perform the\n s3-outposts:PutReplicationConfiguration action. The Outposts bucket owner\n has this permission by default and can grant it to others. For more information about\n permissions, see Setting up IAM with\n S3 on Outposts and Managing access to\n S3 on Outposts buckets in the Amazon S3 User Guide.

\n \n

It can take a while to propagate PUT or DELETE requests for\n a replication configuration to all S3 on Outposts systems. Therefore, the replication\n configuration that's returned by a GET request soon after a\n PUT or DELETE request might return a more recent result\n than what's on the Outpost. If an Outpost is offline, the delay in updating the\n replication configuration on that Outpost can be significant.

\n
\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

For information about S3 replication on Outposts configuration, see Replicating objects for S3 on Outposts in the\n Amazon S3 User Guide.

\n

The following operations are related to DeleteBucketReplication:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/bucket/{Bucket}/replication", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteBucketReplicationRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket to delete the replication configuration\n for.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

Specifies the S3 on Outposts bucket to delete the replication configuration for.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteBucketRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID that owns the Outposts bucket.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

Specifies the bucket being deleted.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteBucketTagging": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteBucketTaggingRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This action deletes an Amazon S3 on Outposts bucket's tags. To delete an S3 bucket tags,\n see DeleteBucketTagging in the Amazon S3 API Reference.

\n
\n

Deletes the tags from the Outposts bucket. For more information, see Using\n Amazon S3 on Outposts in Amazon S3 User Guide.

\n

To use this action, you must have permission to perform the\n PutBucketTagging action. By default, the bucket owner has this permission\n and can grant this permission to others.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to DeleteBucketTagging:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/bucket/{Bucket}/tagging", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteBucketTaggingRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket tag set to be removed.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket ARN that has the tag set to be removed.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteJobTagging": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteJobTaggingRequest" - }, - "output": { - "target": "com.amazonaws.s3control#DeleteJobTaggingResult" - }, - "errors": [ - { - "target": "com.amazonaws.s3control#InternalServiceException" - }, - { - "target": "com.amazonaws.s3control#NotFoundException" - }, - { - "target": "com.amazonaws.s3control#TooManyRequestsException" - } - ], - "traits": { - "smithy.api#documentation": "

Removes the entire tag set from the specified S3 Batch Operations job.

\n
\n
Permissions
\n
\n

To use the DeleteJobTagging operation, you must have permission to\n perform the s3:DeleteJobTagging action. For more information, see\n Controlling access and labeling jobs using tags in the\n Amazon S3 User Guide.

\n
\n
\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/jobs/{JobId}/tagging", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteJobTaggingRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "JobId": { - "target": "com.amazonaws.s3control#JobId", - "traits": { - "smithy.api#documentation": "

The ID for the S3 Batch Operations job whose tags you want to delete.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteJobTaggingResult": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#DeleteMarkerReplication": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3control#DeleteMarkerReplicationStatus", - "traits": { - "smithy.api#documentation": "

Indicates whether to replicate delete markers.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies whether S3 on Outposts replicates delete markers. If you specify a\n Filter element in your replication configuration, you must also include a\n DeleteMarkerReplication element. If your Filter includes a\n Tag element, the DeleteMarkerReplication element's\n Status child element must be set to Disabled, because\n S3 on Outposts does not support replicating delete markers for tag-based rules.

\n

For more information about delete marker replication, see How delete operations affect replication in the\n Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3control#DeleteMarkerReplicationStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3control#DeleteMultiRegionAccessPoint": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteMultiRegionAccessPointRequest" - }, - "output": { - "target": "com.amazonaws.s3control#DeleteMultiRegionAccessPointResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Deletes a Multi-Region Access Point. This action does not delete the buckets associated with the Multi-Region Access Point,\n only the Multi-Region Access Point itself.

\n

This action will always be routed to the US West (Oregon) Region. For more information\n about the restrictions around working with Multi-Region Access Points, see Multi-Region Access Point\n restrictions and limitations in the Amazon S3 User Guide.

\n

This request is asynchronous, meaning that you might receive a response before the\n command has completed. When this request provides a response, it provides a token that you\n can use to monitor the status of the request with\n DescribeMultiRegionAccessPointOperation.

\n

The following actions are related to DeleteMultiRegionAccessPoint:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "POST", - "uri": "/v20180820/async-requests/mrap/delete", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteMultiRegionAccessPointInput": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the Multi-Region Access Point associated with this request.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for the information associated with a DeleteMultiRegionAccessPoint request.

" - } - }, - "com.amazonaws.s3control#DeleteMultiRegionAccessPointRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "ClientToken": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointClientToken", - "traits": { - "smithy.api#documentation": "

An idempotency token used to identify the request and guarantee that requests are\n unique.

", - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} - } - }, - "Details": { - "target": "com.amazonaws.s3control#DeleteMultiRegionAccessPointInput", - "traits": { - "smithy.api#documentation": "

A container element containing details about the Multi-Region Access Point.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteMultiRegionAccessPointResult": { - "type": "structure", - "members": { - "RequestTokenARN": { - "target": "com.amazonaws.s3control#AsyncRequestTokenARN", - "traits": { - "smithy.api#documentation": "

The request token associated with the request. You can use this token with DescribeMultiRegionAccessPointOperation to determine the status of asynchronous\n requests.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#DeletePublicAccessBlock": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeletePublicAccessBlockRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Removes the PublicAccessBlock configuration for an Amazon Web Services account. For more\n information, see Using Amazon S3 block\n public access.

\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/configuration/publicAccessBlock", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeletePublicAccessBlockRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID for the Amazon Web Services account whose PublicAccessBlock configuration\n you want to remove.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteStorageLensConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteStorageLensConfigurationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Deletes the Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see Assessing your storage\n activity and usage with Amazon S3 Storage Lens in the\n Amazon S3 User Guide.

\n \n

To use this action, you must have permission to perform the\n s3:DeleteStorageLensConfiguration action. For more information, see\n Setting permissions to\n use Amazon S3 Storage Lens in the Amazon S3 User Guide.

\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/storagelens/{ConfigId}", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteStorageLensConfigurationRequest": { - "type": "structure", - "members": { - "ConfigId": { - "target": "com.amazonaws.s3control#ConfigId", - "traits": { - "smithy.api#documentation": "

The ID of the S3 Storage Lens configuration.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the requester.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteStorageLensConfigurationTagging": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteStorageLensConfigurationTaggingRequest" - }, - "output": { - "target": "com.amazonaws.s3control#DeleteStorageLensConfigurationTaggingResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Deletes the Amazon S3 Storage Lens configuration tags. For more information about S3 Storage Lens, see\n Assessing your\n storage activity and usage with Amazon S3 Storage Lens in the\n Amazon S3 User Guide.

\n \n

To use this action, you must have permission to perform the\n s3:DeleteStorageLensConfigurationTagging action. For more information,\n see Setting permissions to\n use Amazon S3 Storage Lens in the Amazon S3 User Guide.

\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/storagelens/{ConfigId}/tagging", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteStorageLensConfigurationTaggingRequest": { - "type": "structure", - "members": { - "ConfigId": { - "target": "com.amazonaws.s3control#ConfigId", - "traits": { - "smithy.api#documentation": "

The ID of the S3 Storage Lens configuration.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the requester.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DeleteStorageLensConfigurationTaggingResult": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#DeleteStorageLensGroup": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DeleteStorageLensGroupRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

\nDeletes an existing S3 Storage Lens group.

\n

To use this operation, you must have the permission to perform the\n s3:DeleteStorageLensGroup action. For more information about the required Storage Lens\n Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

\n

For information about Storage Lens groups errors, see List of Amazon S3 Storage\n Lens error codes.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/storagelensgroup/{Name}", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DeleteStorageLensGroupRequest": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.s3control#StorageLensGroupName", - "traits": { - "smithy.api#documentation": "

\nThe name of the Storage Lens group that you're trying to delete.\n

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

\nThe Amazon Web Services account ID used to create the Storage Lens group that you're trying to delete.\n

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DescribeJob": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DescribeJobRequest" - }, - "output": { - "target": "com.amazonaws.s3control#DescribeJobResult" - }, - "errors": [ - { - "target": "com.amazonaws.s3control#BadRequestException" - }, - { - "target": "com.amazonaws.s3control#InternalServiceException" - }, - { - "target": "com.amazonaws.s3control#NotFoundException" - }, - { - "target": "com.amazonaws.s3control#TooManyRequestsException" - } - ], - "traits": { - "smithy.api#documentation": "

Retrieves the configuration parameters and status for a Batch Operations job. For more\n information, see S3 Batch Operations in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

To use the DescribeJob operation, you must have permission to\n perform the s3:DescribeJob action.

\n
\n
\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/jobs/{JobId}", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DescribeJobRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "JobId": { - "target": "com.amazonaws.s3control#JobId", - "traits": { - "smithy.api#documentation": "

The ID for the job whose information you want to retrieve.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DescribeJobResult": { - "type": "structure", - "members": { - "Job": { - "target": "com.amazonaws.s3control#JobDescriptor", - "traits": { - "smithy.api#documentation": "

Contains the configuration parameters and status for the job specified in the\n Describe Job request.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#DescribeMultiRegionAccessPointOperation": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DescribeMultiRegionAccessPointOperationRequest" - }, - "output": { - "target": "com.amazonaws.s3control#DescribeMultiRegionAccessPointOperationResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Retrieves the status of an asynchronous request to manage a Multi-Region Access Point. For more information\n about managing Multi-Region Access Points and how asynchronous requests work, see Using Multi-Region Access Points in the\n Amazon S3 User Guide.

\n

The following actions are related to GetMultiRegionAccessPoint:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/async-requests/mrap/{RequestTokenARN+}", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DescribeMultiRegionAccessPointOperationRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "RequestTokenARN": { - "target": "com.amazonaws.s3control#AsyncRequestTokenARN", - "traits": { - "smithy.api#documentation": "

The request token associated with the request you want to know about. This request token\n is returned as part of the response when you make an asynchronous request. You provide this\n token to query about the status of the asynchronous action.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DescribeMultiRegionAccessPointOperationResult": { - "type": "structure", - "members": { - "AsyncOperation": { - "target": "com.amazonaws.s3control#AsyncOperation", - "traits": { - "smithy.api#documentation": "

A container element containing the details of the asynchronous operation.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#Destination": { - "type": "structure", - "members": { - "Account": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The destination bucket owner's account ID.

" - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketIdentifierString", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the access point for the destination bucket where you want\n S3 on Outposts to store the replication results.

", - "smithy.api#required": {} - } - }, - "ReplicationTime": { - "target": "com.amazonaws.s3control#ReplicationTime", - "traits": { - "smithy.api#documentation": "

A container that specifies S3 Replication Time Control (S3 RTC) settings, including whether S3 RTC is enabled\n and the time when all objects and operations on objects must be replicated. Must be\n specified together with a Metrics block.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" - } - }, - "AccessControlTranslation": { - "target": "com.amazonaws.s3control#AccessControlTranslation", - "traits": { - "smithy.api#documentation": "

Specify this property only in a cross-account scenario (where the source and destination\n bucket owners are not the same), and you want to change replica ownership to the\n Amazon Web Services account that owns the destination bucket. If this property is not specified in the\n replication configuration, the replicas are owned by same Amazon Web Services account that owns the\n source object.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" - } - }, - "EncryptionConfiguration": { - "target": "com.amazonaws.s3control#EncryptionConfiguration", - "traits": { - "smithy.api#documentation": "

A container that provides information about encryption. If\n SourceSelectionCriteria is specified, you must specify this element.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" - } - }, - "Metrics": { - "target": "com.amazonaws.s3control#Metrics", - "traits": { - "smithy.api#documentation": "

A container that specifies replication metrics-related settings.

" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3control#ReplicationStorageClass", - "traits": { - "smithy.api#documentation": "

The storage class to use when replicating objects. All objects stored on S3 on Outposts\n are stored in the OUTPOSTS storage class. S3 on Outposts uses the\n OUTPOSTS storage class to create the object replicas.

\n \n

Values other than OUTPOSTS aren't supported by Amazon S3 on Outposts.

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies information about the replication destination bucket and its settings for an\n S3 on Outposts replication configuration.

" - } - }, - "com.amazonaws.s3control#DetailedStatusCodesMetrics": { - "type": "structure", - "members": { - "IsEnabled": { - "target": "com.amazonaws.s3control#IsEnabled", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

A container that indicates whether detailed status code metrics are enabled.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container element for Amazon S3 Storage Lens detailed status code metrics. Detailed status\n code metrics generate metrics for HTTP status codes, such as 200 OK, 403\n Forbidden, 503 Service Unavailable and others.

\n

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3control#DissociateAccessGrantsIdentityCenter": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#DissociateAccessGrantsIdentityCenterRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Dissociates the Amazon Web Services IAM Identity Center instance from the S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:DissociateAccessGrantsIdentityCenter\n permission to use this operation.

\n
\n
Additional Permissions
\n
\n

You must have the sso:DeleteApplication permission to use this\n operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/accessgrantsinstance/identitycenter", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#DissociateAccessGrantsIdentityCenterRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#DurationSeconds": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 900, - "max": 43200 - } - } - }, - "com.amazonaws.s3control#EncryptionConfiguration": { - "type": "structure", - "members": { - "ReplicaKmsKeyID": { - "target": "com.amazonaws.s3control#ReplicaKmsKeyID", - "traits": { - "smithy.api#documentation": "

Specifies the ID of the customer managed KMS key that's stored in Key Management Service (KMS)\n for the destination bucket. This ID is either the Amazon Resource Name (ARN) for the\n KMS key or the alias ARN for the KMS key. Amazon S3 uses this KMS key to encrypt\n replica objects. Amazon S3 supports only symmetric encryption KMS keys. For more information,\n see Symmetric encryption\n KMS keys in the Amazon Web Services Key Management Service Developer\n Guide.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies encryption-related information for an Amazon S3 bucket that is a destination for\n replicated objects. If you're specifying a customer managed KMS key, we recommend using a\n fully qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves\n the key within the requester’s account. This behavior can result in data that's encrypted\n with a KMS key that belongs to the requester, and not the bucket owner.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" - } - }, - "com.amazonaws.s3control#Endpoints": { - "type": "map", - "key": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength64String" - }, - "value": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String" - } - }, - "com.amazonaws.s3control#EstablishedMultiRegionAccessPointPolicy": { - "type": "structure", - "members": { - "Policy": { - "target": "com.amazonaws.s3control#Policy", - "traits": { - "smithy.api#documentation": "

The details of the last established policy.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The last established access control policy for a Multi-Region Access Point.

\n

When you update the policy, the update is first listed as the proposed policy. After the\n update is finished and all Regions have been updated, the proposed policy is listed as the\n established policy. If both policies have the same version number, the proposed policy is\n the established policy.

" - } - }, - "com.amazonaws.s3control#ExceptionMessage": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1024 - } - } - }, - "com.amazonaws.s3control#Exclude": { - "type": "structure", - "members": { - "Buckets": { - "target": "com.amazonaws.s3control#Buckets", - "traits": { - "smithy.api#documentation": "

A container for the S3 Storage Lens bucket excludes.

" - } - }, - "Regions": { - "target": "com.amazonaws.s3control#Regions", - "traits": { - "smithy.api#documentation": "

A container for the S3 Storage Lens Region excludes.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for what Amazon S3 Storage Lens will exclude.

" - } - }, - "com.amazonaws.s3control#ExistingObjectReplication": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3control#ExistingObjectReplicationStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether Amazon S3 replicates existing source bucket objects.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

An optional configuration to replicate existing source bucket objects.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" - } - }, - "com.amazonaws.s3control#ExistingObjectReplicationStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3control#Expiration": { - "type": "timestamp" - }, - "com.amazonaws.s3control#ExpirationStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3control#ExpiredObjectDeleteMarker": { - "type": "boolean", - "traits": { - "smithy.api#default": false - } - }, - "com.amazonaws.s3control#Format": { - "type": "enum", - "members": { - "CSV": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CSV" - } - }, - "Parquet": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Parquet" - } - } - } - }, - "com.amazonaws.s3control#FunctionArnString": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1024 - }, - "smithy.api#pattern": "^(arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}((-gov)|(-iso([a-z]?)))?-[a-z]+-\\d{1}:)?(\\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\\$LATEST|[a-zA-Z0-9-_]+))?$" - } - }, - "com.amazonaws.s3control#GeneratedManifestEncryption": { - "type": "structure", - "members": { - "SSES3": { - "target": "com.amazonaws.s3control#SSES3Encryption", - "traits": { - "smithy.api#documentation": "

Specifies the use of SSE-S3 to encrypt generated manifest objects.

", - "smithy.api#xmlName": "SSE-S3" - } - }, - "SSEKMS": { - "target": "com.amazonaws.s3control#SSEKMSEncryption", - "traits": { - "smithy.api#documentation": "

Configuration details on how SSE-KMS is used to encrypt generated manifest\n objects.

", - "smithy.api#xmlName": "SSE-KMS" - } - } - }, - "traits": { - "smithy.api#documentation": "

The encryption configuration to use when storing the generated manifest.

" - } - }, - "com.amazonaws.s3control#GeneratedManifestFormat": { - "type": "enum", - "members": { - "S3InventoryReport_CSV_20211130": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "S3InventoryReport_CSV_20211130" - } - } - } - }, - "com.amazonaws.s3control#GetAccessGrant": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetAccessGrantRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetAccessGrantResult" - }, - "traits": { - "smithy.api#documentation": "

Get the details of an access grant from your S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:GetAccessGrant permission to use this\n operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accessgrantsinstance/grant/{AccessGrantId}", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetAccessGrantRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "AccessGrantId": { - "target": "com.amazonaws.s3control#AccessGrantId", - "traits": { - "smithy.api#documentation": "

The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access\n grant.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetAccessGrantResult": { - "type": "structure", - "members": { - "CreatedAt": { - "target": "com.amazonaws.s3control#CreationTimestamp", - "traits": { - "smithy.api#documentation": "

The date and time when you created the access grant.

" - } - }, - "AccessGrantId": { - "target": "com.amazonaws.s3control#AccessGrantId", - "traits": { - "smithy.api#documentation": "

The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access\n grant.

" - } - }, - "AccessGrantArn": { - "target": "com.amazonaws.s3control#AccessGrantArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the access grant.

" - } - }, - "Grantee": { - "target": "com.amazonaws.s3control#Grantee", - "traits": { - "smithy.api#documentation": "

The user, group, or role to which you are granting access. You can grant access to an\n IAM user or role. If you have added a corporate directory to Amazon Web Services IAM Identity Center\n and associated this Identity Center instance with the S3 Access Grants instance, the grantee can also\n be a corporate directory user or group.

" - } - }, - "Permission": { - "target": "com.amazonaws.s3control#Permission", - "traits": { - "smithy.api#documentation": "

The type of permission that was granted in the access grant. Can be one of the following\n values:

\n
    \n
  • \n

    \n READ – Grant read-only access to the S3 data.

    \n
  • \n
  • \n

    \n WRITE – Grant write-only access to the S3 data.

    \n
  • \n
  • \n

    \n READWRITE – Grant both read and write access to the S3 data.

    \n
  • \n
" - } - }, - "AccessGrantsLocationId": { - "target": "com.amazonaws.s3control#AccessGrantsLocationId", - "traits": { - "smithy.api#documentation": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this\n ID when you register the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

" - } - }, - "AccessGrantsLocationConfiguration": { - "target": "com.amazonaws.s3control#AccessGrantsLocationConfiguration", - "traits": { - "smithy.api#documentation": "

The configuration options of the grant location. The grant location is the S3 path to\n the data to which you are granting access.

" - } - }, - "GrantScope": { - "target": "com.amazonaws.s3control#S3Prefix", - "traits": { - "smithy.api#documentation": "

The S3 path of the data to which you are granting access. It is the result of appending\n the Subprefix to the location scope.

" - } - }, - "ApplicationArn": { - "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated\n with your Identity Center instance. If the grant includes an application ARN, the grantee\n can only access the S3 data through this application.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetAccessGrantsInstance": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetAccessGrantsInstanceRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetAccessGrantsInstanceResult" - }, - "traits": { - "smithy.api#documentation": "

Retrieves the S3 Access Grants instance for a Region in your account.

\n
\n
Permissions
\n
\n

You must have the s3:GetAccessGrantsInstance permission to use\n this operation.

\n
\n
\n \n

\n GetAccessGrantsInstance is not supported for cross-account access. You can only call the API from the account that owns the S3 Access Grants instance.

\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accessgrantsinstance", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetAccessGrantsInstanceForPrefix": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetAccessGrantsInstanceForPrefixRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetAccessGrantsInstanceForPrefixResult" - }, - "traits": { - "smithy.api#documentation": "

Retrieve the S3 Access Grants instance that contains a particular prefix.

\n
\n
Permissions
\n
\n

You must have the s3:GetAccessGrantsInstanceForPrefix permission\n for the caller account to use this operation.

\n
\n
Additional Permissions
\n
\n

The prefix owner account must grant you the following permissions to their\n S3 Access Grants instance: s3:GetAccessGrantsInstanceForPrefix.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accessgrantsinstance/prefix", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetAccessGrantsInstanceForPrefixRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The ID of the Amazon Web Services account that is making this request.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "S3Prefix": { - "target": "com.amazonaws.s3control#S3Prefix", - "traits": { - "smithy.api#documentation": "

The S3 prefix of the access grants that you would like to retrieve.

", - "smithy.api#httpQuery": "s3prefix", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetAccessGrantsInstanceForPrefixResult": { - "type": "structure", - "members": { - "AccessGrantsInstanceArn": { - "target": "com.amazonaws.s3control#AccessGrantsInstanceArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the S3 Access Grants instance.

" - } - }, - "AccessGrantsInstanceId": { - "target": "com.amazonaws.s3control#AccessGrantsInstanceId", - "traits": { - "smithy.api#documentation": "

The ID of the S3 Access Grants instance. The ID is default. You can have one S3 Access Grants\n instance per Region per account.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetAccessGrantsInstanceRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetAccessGrantsInstanceResourcePolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetAccessGrantsInstanceResourcePolicyRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetAccessGrantsInstanceResourcePolicyResult" - }, - "traits": { - "smithy.api#documentation": "

Returns the resource policy of the S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:GetAccessGrantsInstanceResourcePolicy\n permission to use this operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accessgrantsinstance/resourcepolicy", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetAccessGrantsInstanceResourcePolicyRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetAccessGrantsInstanceResourcePolicyResult": { - "type": "structure", - "members": { - "Policy": { - "target": "com.amazonaws.s3control#PolicyDocument", - "traits": { - "smithy.api#documentation": "

The resource policy of the S3 Access Grants instance.

" - } - }, - "Organization": { - "target": "com.amazonaws.s3control#Organization", - "traits": { - "smithy.api#documentation": "

The Organization of the resource policy of the S3 Access Grants instance.

" - } - }, - "CreatedAt": { - "target": "com.amazonaws.s3control#CreationTimestamp", - "traits": { - "smithy.api#documentation": "

The date and time when you created the S3 Access Grants instance resource policy.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetAccessGrantsInstanceResult": { - "type": "structure", - "members": { - "AccessGrantsInstanceArn": { - "target": "com.amazonaws.s3control#AccessGrantsInstanceArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the S3 Access Grants instance.

" - } - }, - "AccessGrantsInstanceId": { - "target": "com.amazonaws.s3control#AccessGrantsInstanceId", - "traits": { - "smithy.api#documentation": "

The ID of the S3 Access Grants instance. The ID is default. You can have one S3 Access Grants\n instance per Region per account.

" - } - }, - "IdentityCenterArn": { - "target": "com.amazonaws.s3control#IdentityCenterArn", - "traits": { - "smithy.api#deprecated": { - "message": "IdentityCenterArn has been deprecated. Use IdentityCenterInstanceArn or IdentityCenterApplicationArn." - }, - "smithy.api#documentation": "

If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance,\n this field returns the Amazon Resource Name (ARN) of the IAM Identity Center instance\n application; a subresource of the original Identity Center instance. S3 Access Grants creates this\n Identity Center application for the specific S3 Access Grants instance.

" - } - }, - "IdentityCenterInstanceArn": { - "target": "com.amazonaws.s3control#IdentityCenterArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity Center instance that you are\n associating with your S3 Access Grants instance. An IAM Identity Center instance is your corporate\n identity directory that you added to the IAM Identity Center. You can use the ListInstances API operation to retrieve a list of your Identity Center\n instances and their ARNs.

" - } - }, - "IdentityCenterApplicationArn": { - "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", - "traits": { - "smithy.api#documentation": "

If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance,\n this field returns the Amazon Resource Name (ARN) of the IAM Identity Center instance\n application; a subresource of the original Identity Center instance. S3 Access Grants creates this\n Identity Center application for the specific S3 Access Grants instance.

" - } - }, - "CreatedAt": { - "target": "com.amazonaws.s3control#CreationTimestamp", - "traits": { - "smithy.api#documentation": "

The date and time when you created the S3 Access Grants instance.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetAccessGrantsLocation": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetAccessGrantsLocationRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetAccessGrantsLocationResult" - }, - "traits": { - "smithy.api#documentation": "

Retrieves the details of a particular location registered in your S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:GetAccessGrantsLocation permission to use\n this operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accessgrantsinstance/location/{AccessGrantsLocationId}", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetAccessGrantsLocationRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "AccessGrantsLocationId": { - "target": "com.amazonaws.s3control#AccessGrantsLocationId", - "traits": { - "smithy.api#documentation": "

The ID of the registered location that you are retrieving. S3 Access Grants assigns this ID when\n you register the location. S3 Access Grants assigns the ID default to the default\n location s3:// and assigns an auto-generated ID to other locations that you\n register.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetAccessGrantsLocationResult": { - "type": "structure", - "members": { - "CreatedAt": { - "target": "com.amazonaws.s3control#CreationTimestamp", - "traits": { - "smithy.api#documentation": "

The date and time when you registered the location.

" - } - }, - "AccessGrantsLocationId": { - "target": "com.amazonaws.s3control#AccessGrantsLocationId", - "traits": { - "smithy.api#documentation": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this\n ID when you register the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

" - } - }, - "AccessGrantsLocationArn": { - "target": "com.amazonaws.s3control#AccessGrantsLocationArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the registered location.

" - } - }, - "LocationScope": { - "target": "com.amazonaws.s3control#S3Prefix", - "traits": { - "smithy.api#documentation": "

The S3 URI path to the registered location. The location scope can be the default S3\n location s3://, the S3 path to a bucket, or the S3 path to a bucket and\n prefix. A prefix in S3 is a string of characters at the beginning of an object key name\n used to organize the objects that you store in your S3 buckets. For example, object key\n names that start with the engineering/ prefix or object key names that start\n with the marketing/campaigns/ prefix.

" - } - }, - "IAMRoleArn": { - "target": "com.amazonaws.s3control#IAMRoleArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants\n assumes this role to manage access to the registered location.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetAccessPoint": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetAccessPointRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetAccessPointResult" - }, - "traits": { - "smithy.api#documentation": "

Returns configuration information about the specified access point.

\n

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to GetAccessPoint:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accesspoint/{Name}", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetAccessPointConfigurationForObjectLambda": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetAccessPointConfigurationForObjectLambdaRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetAccessPointConfigurationForObjectLambdaResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns configuration for an Object Lambda Access Point.

\n

The following actions are related to\n GetAccessPointConfigurationForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accesspointforobjectlambda/{Name}/configuration", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetAccessPointConfigurationForObjectLambdaRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the Object Lambda Access Point you want to return the configuration for.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetAccessPointConfigurationForObjectLambdaResult": { - "type": "structure", - "members": { - "Configuration": { - "target": "com.amazonaws.s3control#ObjectLambdaConfiguration", - "traits": { - "smithy.api#documentation": "

Object Lambda Access Point configuration document.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetAccessPointForObjectLambda": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetAccessPointForObjectLambdaRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetAccessPointForObjectLambdaResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns configuration information about the specified Object Lambda Access Point

\n

The following actions are related to GetAccessPointForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accesspointforobjectlambda/{Name}", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetAccessPointForObjectLambdaRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the Object Lambda Access Point.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetAccessPointForObjectLambdaResult": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the Object Lambda Access Point.

" - } - }, - "PublicAccessBlockConfiguration": { - "target": "com.amazonaws.s3control#PublicAccessBlockConfiguration", - "traits": { - "smithy.api#documentation": "

Configuration to block all public access. This setting is turned on and can not be\n edited.

" - } - }, - "CreationDate": { - "target": "com.amazonaws.s3control#CreationDate", - "traits": { - "smithy.api#documentation": "

The date and time when the specified Object Lambda Access Point was created.

" - } - }, - "Alias": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointAlias", - "traits": { - "smithy.api#documentation": "

The alias of the Object Lambda Access Point.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetAccessPointPolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetAccessPointPolicyRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetAccessPointPolicyResult" - }, - "traits": { - "smithy.api#documentation": "

Returns the access point policy associated with the specified access point.

\n

The following actions are related to GetAccessPointPolicy:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accesspoint/{Name}/policy", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetAccessPointPolicyForObjectLambda": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetAccessPointPolicyForObjectLambdaRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetAccessPointPolicyForObjectLambdaResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns the resource policy for an Object Lambda Access Point.

\n

The following actions are related to\n GetAccessPointPolicyForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accesspointforobjectlambda/{Name}/policy", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetAccessPointPolicyForObjectLambdaRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the Object Lambda Access Point.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetAccessPointPolicyForObjectLambdaResult": { - "type": "structure", - "members": { - "Policy": { - "target": "com.amazonaws.s3control#ObjectLambdaPolicy", - "traits": { - "smithy.api#documentation": "

Object Lambda Access Point resource policy document.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetAccessPointPolicyRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID for the account that owns the specified access point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#AccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the access point whose policy you want to retrieve.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the access point accessed in the format arn:aws:s3-outposts:::outpost//accesspoint/. For example, to access the access point reports-ap through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/accesspoint/reports-ap. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccessPointName" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetAccessPointPolicyResult": { - "type": "structure", - "members": { - "Policy": { - "target": "com.amazonaws.s3control#Policy", - "traits": { - "smithy.api#documentation": "

The access point policy associated with the specified access point.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetAccessPointPolicyStatus": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetAccessPointPolicyStatusRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetAccessPointPolicyStatusResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Indicates whether the specified access point currently has a policy that allows public access.\n For more information about public access through access points, see Managing Data Access with Amazon S3\n access points in the Amazon S3 User Guide.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accesspoint/{Name}/policyStatus", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetAccessPointPolicyStatusForObjectLambda": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetAccessPointPolicyStatusForObjectLambdaRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetAccessPointPolicyStatusForObjectLambdaResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns the status of the resource policy associated with an Object Lambda Access Point.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accesspointforobjectlambda/{Name}/policyStatus", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetAccessPointPolicyStatusForObjectLambdaRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the Object Lambda Access Point.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetAccessPointPolicyStatusForObjectLambdaResult": { - "type": "structure", - "members": { - "PolicyStatus": { - "target": "com.amazonaws.s3control#PolicyStatus" - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetAccessPointPolicyStatusRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID for the account that owns the specified access point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#AccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the access point whose policy status you want to retrieve.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccessPointName" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetAccessPointPolicyStatusResult": { - "type": "structure", - "members": { - "PolicyStatus": { - "target": "com.amazonaws.s3control#PolicyStatus", - "traits": { - "smithy.api#documentation": "

Indicates the current policy status of the specified access point.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetAccessPointRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID for the account that owns the specified access point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#AccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the access point whose configuration information you want to retrieve.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the access point accessed in the format arn:aws:s3-outposts:::outpost//accesspoint/. For example, to access the access point reports-ap through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/accesspoint/reports-ap. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccessPointName" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetAccessPointResult": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.s3control#AccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the specified access point.

" - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#AccessPointBucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket associated with the specified access point.

" - } - }, - "NetworkOrigin": { - "target": "com.amazonaws.s3control#NetworkOrigin", - "traits": { - "smithy.api#documentation": "

Indicates whether this access point allows access from the public internet. If\n VpcConfiguration is specified for this access point, then\n NetworkOrigin is VPC, and the access point doesn't allow access from\n the public internet. Otherwise, NetworkOrigin is Internet, and\n the access point allows access from the public internet, subject to the access point and bucket access\n policies.

\n

This will always be true for an Amazon S3 on Outposts access point

" - } - }, - "VpcConfiguration": { - "target": "com.amazonaws.s3control#VpcConfiguration", - "traits": { - "smithy.api#documentation": "

Contains the virtual private cloud (VPC) configuration for the specified access point.

\n \n

This element is empty if this access point is an Amazon S3 on Outposts access point that is used by other\n Amazon Web Services services.

\n
" - } - }, - "PublicAccessBlockConfiguration": { - "target": "com.amazonaws.s3control#PublicAccessBlockConfiguration" - }, - "CreationDate": { - "target": "com.amazonaws.s3control#CreationDate", - "traits": { - "smithy.api#documentation": "

The date and time when the specified access point was created.

" - } - }, - "Alias": { - "target": "com.amazonaws.s3control#Alias", - "traits": { - "smithy.api#documentation": "

The name or alias of the access point.

" - } - }, - "AccessPointArn": { - "target": "com.amazonaws.s3control#S3AccessPointArn", - "traits": { - "smithy.api#documentation": "

The ARN of the access point.

" - } - }, - "Endpoints": { - "target": "com.amazonaws.s3control#Endpoints", - "traits": { - "smithy.api#documentation": "

The VPC endpoint for the access point.

" - } - }, - "BucketAccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 bucket associated with this access point.

" - } - }, - "DataSourceId": { - "target": "com.amazonaws.s3control#DataSourceId", - "traits": { - "smithy.api#documentation": "

The unique identifier for the data source of the access point.

" - } - }, - "DataSourceType": { - "target": "com.amazonaws.s3control#DataSourceType", - "traits": { - "smithy.api#documentation": "

The type of the data source that the access point is attached to.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetAccessPointScope": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetAccessPointScopeRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetAccessPointScopeResult" - }, - "traits": { - "smithy.api#documentation": "

Returns the access point scope for a directory bucket.

\n

To use this operation, you must have the permission to perform the\n s3express:GetAccessPointScope\n action.

\n

For information about REST API errors, see REST error responses.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accesspoint/{Name}/scope", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - }, - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetAccessPointScopeRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID that owns the access point with the scope that you want to retrieve.\n

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#AccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the access point with the scope you want to retrieve.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccessPointName" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetAccessPointScopeResult": { - "type": "structure", - "members": { - "Scope": { - "target": "com.amazonaws.s3control#Scope", - "traits": { - "smithy.api#documentation": "

The contents of the access point scope.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetBucket": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetBucketRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetBucketResult" - }, - "traits": { - "smithy.api#documentation": "

Gets an Amazon S3 on Outposts bucket. For more information, see Using Amazon S3 on Outposts in the\n Amazon S3 User Guide.

\n

If you are using an identity other than the root user of the Amazon Web Services account that owns the\n Outposts bucket, the calling identity must have the s3-outposts:GetBucket\n permissions on the specified Outposts bucket and belong to the Outposts bucket owner's\n account in order to use this action. Only users from Outposts bucket owner account with\n the right permissions can perform actions on an Outposts bucket.

\n

If you don't have s3-outposts:GetBucket permissions or you're not using an\n identity that belongs to the bucket owner's account, Amazon S3 returns a 403 Access\n Denied error.

\n

The following actions are related to GetBucket for Amazon S3 on Outposts:

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/bucket/{Bucket}", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetBucketLifecycleConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetBucketLifecycleConfigurationRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetBucketLifecycleConfigurationResult" - }, - "traits": { - "smithy.api#documentation": "\n

This action gets an Amazon S3 on Outposts bucket's lifecycle configuration. To get an S3\n bucket's lifecycle configuration, see GetBucketLifecycleConfiguration in the Amazon S3 API Reference.\n

\n
\n

Returns the lifecycle configuration information set on the Outposts bucket. For more\n information, see Using Amazon S3 on Outposts and for\n information about lifecycle configuration, see Object Lifecycle\n Management in Amazon S3 User Guide.

\n

To use this action, you must have permission to perform the\n s3-outposts:GetLifecycleConfiguration action. The Outposts bucket owner\n has this permission, by default. The bucket owner can grant this permission to others. For\n more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

\n GetBucketLifecycleConfiguration has the following special error:

\n
    \n
  • \n

    Error code: NoSuchLifecycleConfiguration\n

    \n
      \n
    • \n

      Description: The lifecycle configuration does not exist.

      \n
    • \n
    • \n

      HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
\n

The following actions are related to\n GetBucketLifecycleConfiguration:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/bucket/{Bucket}/lifecycleconfiguration", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetBucketLifecycleConfigurationRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetBucketLifecycleConfigurationResult": { - "type": "structure", - "members": { - "Rules": { - "target": "com.amazonaws.s3control#LifecycleRules", - "traits": { - "smithy.api#documentation": "

Container for the lifecycle rule of the Outposts bucket.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetBucketPolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetBucketPolicyRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetBucketPolicyResult" - }, - "traits": { - "smithy.api#documentation": "\n

This action gets a bucket policy for an Amazon S3 on Outposts bucket. To get a policy for\n an S3 bucket, see GetBucketPolicy in the\n Amazon S3 API Reference.

\n
\n

Returns the policy of a specified Outposts bucket. For more information, see Using\n Amazon S3 on Outposts in the Amazon S3 User Guide.

\n

If you are using an identity other than the root user of the Amazon Web Services account that owns the\n bucket, the calling identity must have the GetBucketPolicy permissions on the\n specified bucket and belong to the bucket owner's account in order to use this\n action.

\n

Only users from Outposts bucket owner account with the right permissions can perform\n actions on an Outposts bucket. If you don't have s3-outposts:GetBucketPolicy\n permissions or you're not using an identity that belongs to the bucket owner's account,\n Amazon S3 returns a 403 Access Denied error.

\n \n

As a security precaution, the root user of the Amazon Web Services account that owns a bucket can\n always use this action, even if the policy explicitly denies the root user the ability\n to perform this action.

\n
\n

For more information about bucket policies, see Using Bucket Policies and User\n Policies.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to GetBucketPolicy:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/bucket/{Bucket}/policy", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetBucketPolicyRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

Specifies the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetBucketPolicyResult": { - "type": "structure", - "members": { - "Policy": { - "target": "com.amazonaws.s3control#Policy", - "traits": { - "smithy.api#documentation": "

The policy of the Outposts bucket.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetBucketReplication": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetBucketReplicationRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetBucketReplicationResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation gets an Amazon S3 on Outposts bucket's replication configuration. To get an\n S3 bucket's replication configuration, see GetBucketReplication\n in the Amazon S3 API Reference.

\n
\n

Returns the replication configuration of an S3 on Outposts bucket. For more information\n about S3 on Outposts, see Using Amazon S3 on Outposts in the\n Amazon S3 User Guide. For information about S3 replication on Outposts\n configuration, see Replicating objects for\n S3 on Outposts in the Amazon S3 User Guide.

\n \n

It can take a while to propagate PUT or DELETE requests for\n a replication configuration to all S3 on Outposts systems. Therefore, the replication\n configuration that's returned by a GET request soon after a\n PUT or DELETE request might return a more recent result\n than what's on the Outpost. If an Outpost is offline, the delay in updating the\n replication configuration on that Outpost can be significant.

\n
\n

This action requires permissions for the\n s3-outposts:GetReplicationConfiguration action. The Outposts bucket owner\n has this permission by default and can grant it to others. For more information about\n permissions, see Setting up IAM with\n S3 on Outposts and Managing access to\n S3 on Outposts bucket in the Amazon S3 User Guide.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

If you include the Filter element in a replication configuration, you must\n also include the DeleteMarkerReplication, Status, and\n Priority elements. The response also returns those elements.

\n

For information about S3 on Outposts replication failure reasons, see Replication failure reasons in the Amazon S3 User Guide.

\n

The following operations are related to GetBucketReplication:

\n ", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/bucket/{Bucket}/replication", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetBucketReplicationRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

Specifies the bucket to get the replication information for.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetBucketReplicationResult": { - "type": "structure", - "members": { - "ReplicationConfiguration": { - "target": "com.amazonaws.s3control#ReplicationConfiguration", - "traits": { - "smithy.api#documentation": "

A container for one or more replication rules. A replication configuration must have at\n least one rule and you can add up to 100 rules. The maximum size of a replication\n configuration is 128 KB.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetBucketRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

Specifies the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetBucketResult": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

The Outposts bucket requested.

" - } - }, - "PublicAccessBlockEnabled": { - "target": "com.amazonaws.s3control#PublicAccessBlockEnabled", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

" - } - }, - "CreationDate": { - "target": "com.amazonaws.s3control#CreationDate", - "traits": { - "smithy.api#documentation": "

The creation date of the Outposts bucket.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetBucketTagging": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetBucketTaggingRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetBucketTaggingResult" - }, - "traits": { - "smithy.api#documentation": "\n

This action gets an Amazon S3 on Outposts bucket's tags. To get an S3 bucket tags, see\n GetBucketTagging in the Amazon S3 API Reference.

\n
\n

Returns the tag set associated with the Outposts bucket. For more information, see\n Using\n Amazon S3 on Outposts in the Amazon S3 User Guide.

\n

To use this action, you must have permission to perform the\n GetBucketTagging action. By default, the bucket owner has this permission\n and can grant this permission to others.

\n

\n GetBucketTagging has the following special error:

\n
    \n
  • \n

    Error code: NoSuchTagSetError\n

    \n
      \n
    • \n

      Description: There is no tag set associated with the bucket.

      \n
    • \n
    \n
  • \n
\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to GetBucketTagging:

\n ", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/bucket/{Bucket}/tagging", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetBucketTaggingRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

Specifies the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetBucketTaggingResult": { - "type": "structure", - "members": { - "TagSet": { - "target": "com.amazonaws.s3control#S3TagSet", - "traits": { - "smithy.api#documentation": "

The tags set of the Outposts bucket.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetBucketVersioning": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetBucketVersioningRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetBucketVersioningResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation returns the versioning state\n for\n S3 on Outposts\n buckets\n only. To return the versioning state for an S3 bucket, see GetBucketVersioning in the Amazon S3 API Reference.

\n
\n

Returns the versioning state for an S3 on Outposts bucket. With\n S3\n Versioning,\n you can save multiple distinct copies of your\n objects\n and recover from unintended user actions and application failures.

\n

If you've never set versioning on your bucket, it has no versioning state. In that case,\n the GetBucketVersioning request does not return a versioning state\n value.

\n

For more information about versioning, see Versioning in the Amazon S3\n User Guide.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following operations are related to GetBucketVersioning for\n S3 on Outposts.

\n ", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/bucket/{Bucket}/versioning", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetBucketVersioningRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 on Outposts bucket.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

The S3 on Outposts bucket to return the versioning state for.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetBucketVersioningResult": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3control#BucketVersioningStatus", - "traits": { - "smithy.api#documentation": "

The versioning state of the S3 on Outposts bucket.

" - } - }, - "MFADelete": { - "target": "com.amazonaws.s3control#MFADeleteStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether MFA delete is enabled in the bucket versioning configuration. This\n element is returned only if the bucket has been configured with MFA delete. If MFA delete\n has never been configured for the bucket, this element is not returned.

", - "smithy.api#xmlName": "MfaDelete" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetDataAccess": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetDataAccessRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetDataAccessResult" - }, - "traits": { - "smithy.api#documentation": "

Returns a temporary access credential from S3 Access Grants to the grantee or client application.\n The temporary credential is an Amazon Web Services STS token that grants them access to the S3 data.

\n
\n
Permissions
\n
\n

You must have the s3:GetDataAccess permission to use this\n operation.

\n
\n
Additional Permissions
\n
\n

The IAM role that S3 Access Grants assumes must have the following permissions\n specified in the trust policy when registering the location:\n sts:AssumeRole, for directory users or groups\n sts:SetContext, and for IAM users or roles\n sts:SetSourceIdentity.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accessgrantsinstance/dataaccess", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetDataAccessRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Target": { - "target": "com.amazonaws.s3control#S3Prefix", - "traits": { - "smithy.api#documentation": "

The S3 URI path of the data to which you are requesting temporary access credentials. If\n the requesting account has an access grant for this data, S3 Access Grants vends temporary access\n credentials in the response.

", - "smithy.api#httpQuery": "target", - "smithy.api#required": {} - } - }, - "Permission": { - "target": "com.amazonaws.s3control#Permission", - "traits": { - "smithy.api#documentation": "

The type of permission granted to your S3 data, which can be set to one of the following\n values:

\n
    \n
  • \n

    \n READ – Grant read-only access to the S3 data.

    \n
  • \n
  • \n

    \n WRITE – Grant write-only access to the S3 data.

    \n
  • \n
  • \n

    \n READWRITE – Grant both read and write access to the S3 data.

    \n
  • \n
", - "smithy.api#httpQuery": "permission", - "smithy.api#required": {} - } - }, - "DurationSeconds": { - "target": "com.amazonaws.s3control#DurationSeconds", - "traits": { - "smithy.api#documentation": "

The session duration, in seconds, of the temporary access credential that S3 Access Grants vends\n to the grantee or client application. The default value is 1 hour, but the grantee can\n specify a range from 900 seconds (15 minutes) up to 43200 seconds (12 hours). If the\n grantee requests a value higher than this maximum, the operation fails.

", - "smithy.api#httpQuery": "durationSeconds" - } - }, - "Privilege": { - "target": "com.amazonaws.s3control#Privilege", - "traits": { - "smithy.api#documentation": "

The scope of the temporary access credential that S3 Access Grants vends to the grantee or client\n application.

\n
    \n
  • \n

    \n Default – The scope of the returned temporary access token is the scope\n of the grant that is closest to the target scope.

    \n
  • \n
  • \n

    \n Minimal – The scope of the returned temporary access token is the same\n as the requested target scope as long as the requested scope is the same as or a\n subset of the grant scope.

    \n
  • \n
", - "smithy.api#httpQuery": "privilege" - } - }, - "TargetType": { - "target": "com.amazonaws.s3control#S3PrefixType", - "traits": { - "smithy.api#documentation": "

The type of Target. The only possible value is Object. Pass\n this value if the target data that you would like to access is a path to an object. Do not\n pass this value if the target data is a bucket or a bucket and a prefix.

", - "smithy.api#httpQuery": "targetType" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetDataAccessResult": { - "type": "structure", - "members": { - "Credentials": { - "target": "com.amazonaws.s3control#Credentials", - "traits": { - "smithy.api#documentation": "

The temporary credential token that S3 Access Grants vends.

" - } - }, - "MatchedGrantTarget": { - "target": "com.amazonaws.s3control#S3Prefix", - "traits": { - "smithy.api#documentation": "

The S3 URI path of the data to which you are being granted temporary access credentials.\n

" - } - }, - "Grantee": { - "target": "com.amazonaws.s3control#Grantee", - "traits": { - "smithy.api#documentation": "

The user, group, or role that was granted access to the S3 location scope. For directory\n identities, this API also returns the grants of the IAM role used for the identity-aware\n request. For more information on identity-aware sessions, see Granting permissions to use identity-aware console sessions.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetJobTagging": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetJobTaggingRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetJobTaggingResult" - }, - "errors": [ - { - "target": "com.amazonaws.s3control#InternalServiceException" - }, - { - "target": "com.amazonaws.s3control#NotFoundException" - }, - { - "target": "com.amazonaws.s3control#TooManyRequestsException" - } - ], - "traits": { - "smithy.api#documentation": "

Returns the tags on an S3 Batch Operations job.

\n
\n
Permissions
\n
\n

To use the GetJobTagging operation, you must have permission to\n perform the s3:GetJobTagging action. For more information, see Controlling access and labeling jobs using tags in the\n Amazon S3 User Guide.

\n
\n
\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/jobs/{JobId}/tagging", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetJobTaggingRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "JobId": { - "target": "com.amazonaws.s3control#JobId", - "traits": { - "smithy.api#documentation": "

The ID for the S3 Batch Operations job whose tags you want to retrieve.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetJobTaggingResult": { - "type": "structure", - "members": { - "Tags": { - "target": "com.amazonaws.s3control#S3TagSet", - "traits": { - "smithy.api#documentation": "

The set of tags associated with the S3 Batch Operations job.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetMultiRegionAccessPoint": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetMultiRegionAccessPointRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetMultiRegionAccessPointResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns configuration information about the specified Multi-Region Access Point.

\n

This action will always be routed to the US West (Oregon) Region. For more information\n about the restrictions around working with Multi-Region Access Points, see Multi-Region Access Point\n restrictions and limitations in the Amazon S3 User Guide.

\n

The following actions are related to GetMultiRegionAccessPoint:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/mrap/instances/{Name+}", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetMultiRegionAccessPointPolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns the access control policy of the specified Multi-Region Access Point.

\n

This action will always be routed to the US West (Oregon) Region. For more information\n about the restrictions around working with Multi-Region Access Points, see Multi-Region Access Point\n restrictions and limitations in the Amazon S3 User Guide.

\n

The following actions are related to\n GetMultiRegionAccessPointPolicy:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/mrap/instances/{Name+}/policy", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointName", - "traits": { - "smithy.api#documentation": "

Specifies the Multi-Region Access Point. The name of the Multi-Region Access Point is different from the alias. For more\n information about the distinction between the name and the alias of an Multi-Region Access Point, see Rules for naming Amazon S3 Multi-Region Access Points in the\n Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyResult": { - "type": "structure", - "members": { - "Policy": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointPolicyDocument", - "traits": { - "smithy.api#documentation": "

The policy associated with the specified Multi-Region Access Point.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyStatus": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyStatusRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyStatusResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Indicates whether the specified Multi-Region Access Point has an access control policy that allows public\n access.

\n

This action will always be routed to the US West (Oregon) Region. For more information\n about the restrictions around working with Multi-Region Access Points, see Multi-Region Access Point\n restrictions and limitations in the Amazon S3 User Guide.

\n

The following actions are related to\n GetMultiRegionAccessPointPolicyStatus:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/mrap/instances/{Name+}/policystatus", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyStatusRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointName", - "traits": { - "smithy.api#documentation": "

Specifies the Multi-Region Access Point. The name of the Multi-Region Access Point is different from the alias. For more\n information about the distinction between the name and the alias of an Multi-Region Access Point, see Rules for naming Amazon S3 Multi-Region Access Points in the\n Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyStatusResult": { - "type": "structure", - "members": { - "Established": { - "target": "com.amazonaws.s3control#PolicyStatus" - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetMultiRegionAccessPointRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the Multi-Region Access Point whose configuration information you want to receive. The name of\n the Multi-Region Access Point is different from the alias. For more information about the distinction between\n the name and the alias of an Multi-Region Access Point, see Rules for naming Amazon S3 Multi-Region Access Points in the\n Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetMultiRegionAccessPointResult": { - "type": "structure", - "members": { - "AccessPoint": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointReport", - "traits": { - "smithy.api#documentation": "

A container element containing the details of the requested Multi-Region Access Point.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetMultiRegionAccessPointRoutes": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetMultiRegionAccessPointRoutesRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetMultiRegionAccessPointRoutesResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns the routing configuration for a Multi-Region Access Point, indicating which Regions are active or\n passive.

\n

To obtain routing control changes and failover requests, use the Amazon S3 failover control\n infrastructure endpoints in these five Amazon Web Services Regions:

\n
    \n
  • \n

    \n us-east-1\n

    \n
  • \n
  • \n

    \n us-west-2\n

    \n
  • \n
  • \n

    \n ap-southeast-2\n

    \n
  • \n
  • \n

    \n ap-northeast-1\n

    \n
  • \n
  • \n

    \n eu-west-1\n

    \n
  • \n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/mrap/instances/{Mrap+}/routes", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetMultiRegionAccessPointRoutesRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Mrap": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointId", - "traits": { - "smithy.api#documentation": "

The Multi-Region Access Point ARN.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetMultiRegionAccessPointRoutesResult": { - "type": "structure", - "members": { - "Mrap": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointId", - "traits": { - "smithy.api#documentation": "

The Multi-Region Access Point ARN.

" - } - }, - "Routes": { - "target": "com.amazonaws.s3control#RouteList", - "traits": { - "smithy.api#documentation": "

The different routes that make up the route configuration. Active routes return a value\n of 100, and passive routes return a value of 0.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetPublicAccessBlock": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetPublicAccessBlockRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetPublicAccessBlockOutput" - }, - "errors": [ - { - "target": "com.amazonaws.s3control#NoSuchPublicAccessBlockConfiguration" - } - ], - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Retrieves the PublicAccessBlock configuration for an Amazon Web Services account. For\n more information, see Using Amazon S3 block\n public access.

\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/configuration/publicAccessBlock", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetPublicAccessBlockOutput": { - "type": "structure", - "members": { - "PublicAccessBlockConfiguration": { - "target": "com.amazonaws.s3control#PublicAccessBlockConfiguration", - "traits": { - "smithy.api#documentation": "

The PublicAccessBlock configuration currently in effect for this\n Amazon Web Services account.

", - "smithy.api#httpPayload": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetPublicAccessBlockRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID for the Amazon Web Services account whose PublicAccessBlock configuration\n you want to retrieve.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetStorageLensConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetStorageLensConfigurationRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetStorageLensConfigurationResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Gets the Amazon S3 Storage Lens configuration. For more information, see Assessing your storage\n activity and usage with Amazon S3 Storage Lens in the\n Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

\n \n

To use this action, you must have permission to perform the\n s3:GetStorageLensConfiguration action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the\n Amazon S3 User Guide.

\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/storagelens/{ConfigId}", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetStorageLensConfigurationRequest": { - "type": "structure", - "members": { - "ConfigId": { - "target": "com.amazonaws.s3control#ConfigId", - "traits": { - "smithy.api#documentation": "

The ID of the Amazon S3 Storage Lens configuration.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the requester.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetStorageLensConfigurationResult": { - "type": "structure", - "members": { - "StorageLensConfiguration": { - "target": "com.amazonaws.s3control#StorageLensConfiguration", - "traits": { - "smithy.api#documentation": "

The S3 Storage Lens configuration requested.

", - "smithy.api#httpPayload": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetStorageLensConfigurationTagging": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetStorageLensConfigurationTaggingRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetStorageLensConfigurationTaggingResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Gets the tags of Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see\n Assessing your\n storage activity and usage with Amazon S3 Storage Lens in the\n Amazon S3 User Guide.

\n \n

To use this action, you must have permission to perform the\n s3:GetStorageLensConfigurationTagging action. For more information, see\n Setting permissions to\n use Amazon S3 Storage Lens in the Amazon S3 User Guide.

\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/storagelens/{ConfigId}/tagging", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetStorageLensConfigurationTaggingRequest": { - "type": "structure", - "members": { - "ConfigId": { - "target": "com.amazonaws.s3control#ConfigId", - "traits": { - "smithy.api#documentation": "

The ID of the Amazon S3 Storage Lens configuration.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the requester.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetStorageLensConfigurationTaggingResult": { - "type": "structure", - "members": { - "Tags": { - "target": "com.amazonaws.s3control#StorageLensTags", - "traits": { - "smithy.api#documentation": "

The tags of S3 Storage Lens configuration requested.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GetStorageLensGroup": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#GetStorageLensGroupRequest" - }, - "output": { - "target": "com.amazonaws.s3control#GetStorageLensGroupResult" - }, - "traits": { - "smithy.api#documentation": "

\nRetrieves the Storage Lens group configuration details.

\n

To use this operation, you must have the permission to perform the\n s3:GetStorageLensGroup action. For more information about the required Storage Lens\n Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

\n

For information about Storage Lens groups errors, see List of Amazon S3 Storage\n Lens error codes.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/storagelensgroup/{Name}", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#GetStorageLensGroupRequest": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.s3control#StorageLensGroupName", - "traits": { - "smithy.api#documentation": "

\nThe name of the Storage Lens group that you're trying to retrieve the configuration details for.\n

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

\nThe Amazon Web Services account ID associated with the Storage Lens group that you're trying to retrieve the details for.\n

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#GetStorageLensGroupResult": { - "type": "structure", - "members": { - "StorageLensGroup": { - "target": "com.amazonaws.s3control#StorageLensGroup", - "traits": { - "smithy.api#documentation": "

\nThe name of the Storage Lens group that you're trying to retrieve the configuration details for.\n

", - "smithy.api#httpPayload": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#GrantFullControl": { - "type": "string" - }, - "com.amazonaws.s3control#GrantRead": { - "type": "string" - }, - "com.amazonaws.s3control#GrantReadACP": { - "type": "string" - }, - "com.amazonaws.s3control#GrantWrite": { - "type": "string" - }, - "com.amazonaws.s3control#GrantWriteACP": { - "type": "string" - }, - "com.amazonaws.s3control#Grantee": { - "type": "structure", - "members": { - "GranteeType": { - "target": "com.amazonaws.s3control#GranteeType", - "traits": { - "smithy.api#documentation": "

The type of the grantee to which access has been granted. It can be one of the following\n values:

\n
    \n
  • \n

    \n IAM - An IAM user or role.

    \n
  • \n
  • \n

    \n DIRECTORY_USER - Your corporate directory user. You can use\n this option if you have added your corporate identity directory to IAM Identity\n Center and associated the IAM Identity Center instance with your S3 Access Grants\n instance.

    \n
  • \n
  • \n

    \n DIRECTORY_GROUP - Your corporate directory group. You can use\n this option if you have added your corporate identity directory to IAM Identity\n Center and associated the IAM Identity Center instance with your S3 Access Grants\n instance.

    \n
  • \n
" - } - }, - "GranteeIdentifier": { - "target": "com.amazonaws.s3control#GranteeIdentifier", - "traits": { - "smithy.api#documentation": "

The unique identifier of the Grantee. If the grantee type is\n IAM, the identifier is the IAM Amazon Resource Name (ARN) of the user\n or role. If the grantee type is a directory user or group, the identifier is 128-bit\n universally unique identifier (UUID) in the format\n a1b2c3d4-5678-90ab-cdef-EXAMPLE11111. You can obtain this UUID from your\n Amazon Web Services IAM Identity Center instance.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The user, group, or role to which you are granting access. You can grant access to an\n IAM user or role. If you have added your corporate directory to Amazon Web Services IAM Identity\n Center and associated your Identity Center instance with your S3 Access Grants instance, the grantee\n can also be a corporate directory user or group.

" - } - }, - "com.amazonaws.s3control#GranteeIdentifier": { - "type": "string" - }, - "com.amazonaws.s3control#GranteeType": { - "type": "enum", - "members": { - "DIRECTORY_USER": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DIRECTORY_USER" - } - }, - "DIRECTORY_GROUP": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DIRECTORY_GROUP" - } - }, - "IAM": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "IAM" - } - } - } - }, - "com.amazonaws.s3control#IAMRoleArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 2048 - }, - "smithy.api#pattern": "^arn:[^:]+:iam::\\d{12}:role/" - } - }, - "com.amazonaws.s3control#ID": { - "type": "string" - }, - "com.amazonaws.s3control#IdempotencyException": { - "type": "structure", - "members": { - "Message": { - "target": "com.amazonaws.s3control#ExceptionMessage" - } - }, - "traits": { - "smithy.api#documentation": "

", - "smithy.api#error": "client" - } - }, - "com.amazonaws.s3control#IdentityCenterApplicationArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 10, - "max": 1224 - }, - "smithy.api#pattern": "^arn:[^:]+:sso::\\d{12}:application/.*$" - } - }, - "com.amazonaws.s3control#IdentityCenterArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 10, - "max": 1224 - }, - "smithy.api#pattern": "^arn:[^:]+:sso::(\\d{12}){0,1}:instance/.*$" - } - }, - "com.amazonaws.s3control#Include": { - "type": "structure", - "members": { - "Buckets": { - "target": "com.amazonaws.s3control#Buckets", - "traits": { - "smithy.api#documentation": "

A container for the S3 Storage Lens bucket includes.

" - } - }, - "Regions": { - "target": "com.amazonaws.s3control#Regions", - "traits": { - "smithy.api#documentation": "

A container for the S3 Storage Lens Region includes.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for what Amazon S3 Storage Lens configuration includes.

" - } - }, - "com.amazonaws.s3control#InternalServiceException": { - "type": "structure", - "members": { - "Message": { - "target": "com.amazonaws.s3control#ExceptionMessage" - } - }, - "traits": { - "smithy.api#documentation": "

", - "smithy.api#error": "server" - } - }, - "com.amazonaws.s3control#InvalidNextTokenException": { - "type": "structure", - "members": { - "Message": { - "target": "com.amazonaws.s3control#ExceptionMessage" - } - }, - "traits": { - "smithy.api#documentation": "

", - "smithy.api#error": "client" - } - }, - "com.amazonaws.s3control#InvalidRequestException": { - "type": "structure", - "members": { - "Message": { - "target": "com.amazonaws.s3control#ExceptionMessage" - } - }, - "traits": { - "smithy.api#documentation": "

", - "smithy.api#error": "client" - } - }, - "com.amazonaws.s3control#IsEnabled": { - "type": "boolean", - "traits": { - "smithy.api#default": false - } - }, - "com.amazonaws.s3control#IsPublic": { - "type": "boolean", - "traits": { - "smithy.api#default": false - } - }, - "com.amazonaws.s3control#JobArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1024 - }, - "smithy.api#pattern": "^arn:[^:]+:s3:[a-zA-Z0-9\\-]+:\\d{12}:job\\/" - } - }, - "com.amazonaws.s3control#JobCreationTime": { - "type": "timestamp" - }, - "com.amazonaws.s3control#JobDescriptor": { - "type": "structure", - "members": { - "JobId": { - "target": "com.amazonaws.s3control#JobId", - "traits": { - "smithy.api#documentation": "

The ID for the specified job.

" - } - }, - "ConfirmationRequired": { - "target": "com.amazonaws.s3control#ConfirmationRequired", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

Indicates whether confirmation is required before Amazon S3 begins running the specified job.\n Confirmation is required only for jobs created through the Amazon S3 console.

" - } - }, - "Description": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength256String", - "traits": { - "smithy.api#documentation": "

The description for this job, if one was provided in this job's Create Job\n request.

" - } - }, - "JobArn": { - "target": "com.amazonaws.s3control#JobArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) for this job.

" - } - }, - "Status": { - "target": "com.amazonaws.s3control#JobStatus", - "traits": { - "smithy.api#documentation": "

The current status of the specified job.

" - } - }, - "Manifest": { - "target": "com.amazonaws.s3control#JobManifest", - "traits": { - "smithy.api#documentation": "

The configuration information for the specified job's manifest object.

" - } - }, - "Operation": { - "target": "com.amazonaws.s3control#JobOperation", - "traits": { - "smithy.api#documentation": "

The operation that the specified job is configured to run on the objects listed in the\n manifest.

" - } - }, - "Priority": { - "target": "com.amazonaws.s3control#JobPriority", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

The priority of the specified job.

" - } - }, - "ProgressSummary": { - "target": "com.amazonaws.s3control#JobProgressSummary", - "traits": { - "smithy.api#documentation": "

Describes the total number of tasks that the specified job has run, the number of tasks\n that succeeded, and the number of tasks that failed.

" - } - }, - "StatusUpdateReason": { - "target": "com.amazonaws.s3control#JobStatusUpdateReason", - "traits": { - "smithy.api#documentation": "

The reason for updating the job.

" - } - }, - "FailureReasons": { - "target": "com.amazonaws.s3control#JobFailureList", - "traits": { - "smithy.api#documentation": "

If the specified job failed, this field contains information describing the\n failure.

" - } - }, - "Report": { - "target": "com.amazonaws.s3control#JobReport", - "traits": { - "smithy.api#documentation": "

Contains the configuration information for the job-completion report if you requested\n one in the Create Job request.

" - } - }, - "CreationTime": { - "target": "com.amazonaws.s3control#JobCreationTime", - "traits": { - "smithy.api#documentation": "

A timestamp indicating when this job was created.

" - } - }, - "TerminationDate": { - "target": "com.amazonaws.s3control#JobTerminationDate", - "traits": { - "smithy.api#documentation": "

A timestamp indicating when this job terminated. A job's termination date is the date\n and time when it succeeded, failed, or was canceled.

" - } - }, - "RoleArn": { - "target": "com.amazonaws.s3control#IAMRoleArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the Identity and Access Management (IAM) role assigned to run the tasks\n for this job.

" - } - }, - "SuspendedDate": { - "target": "com.amazonaws.s3control#SuspendedDate", - "traits": { - "smithy.api#documentation": "

The timestamp when this job was suspended, if it has been suspended.

" - } - }, - "SuspendedCause": { - "target": "com.amazonaws.s3control#SuspendedCause", - "traits": { - "smithy.api#documentation": "

The reason why the specified job was suspended. A job is only suspended if you create it\n through the Amazon S3 console. When you create the job, it enters the Suspended\n state to await confirmation before running. After you confirm the job, it automatically\n exits the Suspended state.

" - } - }, - "ManifestGenerator": { - "target": "com.amazonaws.s3control#JobManifestGenerator", - "traits": { - "smithy.api#documentation": "

The manifest generator that was used to generate a job manifest for this job.

" - } - }, - "GeneratedManifestDescriptor": { - "target": "com.amazonaws.s3control#S3GeneratedManifestDescriptor", - "traits": { - "smithy.api#documentation": "

The attribute of the JobDescriptor containing details about the job's generated\n manifest.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container element for the job configuration and status information returned by a\n Describe Job request.

" - } - }, - "com.amazonaws.s3control#JobFailure": { - "type": "structure", - "members": { - "FailureCode": { - "target": "com.amazonaws.s3control#JobFailureCode", - "traits": { - "smithy.api#documentation": "

The failure code, if any, for the specified job.

" - } - }, - "FailureReason": { - "target": "com.amazonaws.s3control#JobFailureReason", - "traits": { - "smithy.api#documentation": "

The failure reason, if any, for the specified job.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

If this job failed, this element indicates why the job failed.

" - } - }, - "com.amazonaws.s3control#JobFailureCode": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 64 - } - } - }, - "com.amazonaws.s3control#JobFailureList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#JobFailure" - } - }, - "com.amazonaws.s3control#JobFailureReason": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 256 - } - } - }, - "com.amazonaws.s3control#JobId": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 5, - "max": 36 - }, - "smithy.api#pattern": "^[a-zA-Z0-9\\-\\_]+$" - } - }, - "com.amazonaws.s3control#JobListDescriptor": { - "type": "structure", - "members": { - "JobId": { - "target": "com.amazonaws.s3control#JobId", - "traits": { - "smithy.api#documentation": "

The ID for the specified job.

" - } - }, - "Description": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength256String", - "traits": { - "smithy.api#documentation": "

The user-specified description that was included in the specified job's Create\n Job request.

" - } - }, - "Operation": { - "target": "com.amazonaws.s3control#OperationName", - "traits": { - "smithy.api#documentation": "

The operation that the specified job is configured to run on every object listed in the\n manifest.

" - } - }, - "Priority": { - "target": "com.amazonaws.s3control#JobPriority", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

The current priority for the specified job.

" - } - }, - "Status": { - "target": "com.amazonaws.s3control#JobStatus", - "traits": { - "smithy.api#documentation": "

The specified job's current status.

" - } - }, - "CreationTime": { - "target": "com.amazonaws.s3control#JobCreationTime", - "traits": { - "smithy.api#documentation": "

A timestamp indicating when the specified job was created.

" - } - }, - "TerminationDate": { - "target": "com.amazonaws.s3control#JobTerminationDate", - "traits": { - "smithy.api#documentation": "

A timestamp indicating when the specified job terminated. A job's termination date is\n the date and time when it succeeded, failed, or was canceled.

" - } - }, - "ProgressSummary": { - "target": "com.amazonaws.s3control#JobProgressSummary", - "traits": { - "smithy.api#documentation": "

Describes the total number of tasks that the specified job has run, the number of tasks\n that succeeded, and the number of tasks that failed.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the configuration and status information for a single job retrieved as part of\n a job list.

" - } - }, - "com.amazonaws.s3control#JobListDescriptorList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#JobListDescriptor" - } - }, - "com.amazonaws.s3control#JobManifest": { - "type": "structure", - "members": { - "Spec": { - "target": "com.amazonaws.s3control#JobManifestSpec", - "traits": { - "smithy.api#documentation": "

Describes the format of the specified job's manifest. If the manifest is in CSV format,\n also describes the columns contained within the manifest.

", - "smithy.api#required": {} - } - }, - "Location": { - "target": "com.amazonaws.s3control#JobManifestLocation", - "traits": { - "smithy.api#documentation": "

Contains the information required to locate the specified job's manifest. Manifests\n can't be imported from directory buckets. For more information, see Directory buckets.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the configuration information for a job's manifest.

" - } - }, - "com.amazonaws.s3control#JobManifestFieldList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#JobManifestFieldName" - } - }, - "com.amazonaws.s3control#JobManifestFieldName": { - "type": "enum", - "members": { - "Ignore": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Ignore" - } - }, - "Bucket": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Bucket" - } - }, - "Key": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Key" - } - }, - "VersionId": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "VersionId" - } - } - } - }, - "com.amazonaws.s3control#JobManifestFormat": { - "type": "enum", - "members": { - "S3BatchOperations_CSV_20180820": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "S3BatchOperations_CSV_20180820" - } - }, - "S3InventoryReport_CSV_20161130": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "S3InventoryReport_CSV_20161130" - } - } - } - }, - "com.amazonaws.s3control#JobManifestGenerator": { - "type": "union", - "members": { - "S3JobManifestGenerator": { - "target": "com.amazonaws.s3control#S3JobManifestGenerator", - "traits": { - "smithy.api#documentation": "

The S3 job ManifestGenerator's configuration details.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Configures the type of the job's ManifestGenerator.

" - } - }, - "com.amazonaws.s3control#JobManifestGeneratorFilter": { - "type": "structure", - "members": { - "EligibleForReplication": { - "target": "com.amazonaws.s3control#Boolean", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

Include objects in the generated manifest only if they are eligible for replication\n according to the Replication configuration on the source bucket.

" - } - }, - "CreatedAfter": { - "target": "com.amazonaws.s3control#ObjectCreationTime", - "traits": { - "smithy.api#documentation": "

If provided, the generated manifest includes only source bucket objects that were\n created after this time.

" - } - }, - "CreatedBefore": { - "target": "com.amazonaws.s3control#ObjectCreationTime", - "traits": { - "smithy.api#documentation": "

If provided, the generated manifest includes only source bucket objects that were\n created before this time.

" - } - }, - "ObjectReplicationStatuses": { - "target": "com.amazonaws.s3control#ReplicationStatusFilterList", - "traits": { - "smithy.api#documentation": "

If provided, the generated manifest includes only source bucket objects that have one of\n the specified Replication statuses.

" - } - }, - "KeyNameConstraint": { - "target": "com.amazonaws.s3control#KeyNameConstraint", - "traits": { - "smithy.api#documentation": "

If provided, the generated manifest includes only source bucket objects whose object\n keys match the string constraints specified for MatchAnyPrefix,\n MatchAnySuffix, and MatchAnySubstring.

" - } - }, - "ObjectSizeGreaterThanBytes": { - "target": "com.amazonaws.s3control#ObjectSizeGreaterThanBytes", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

If provided, the generated manifest includes only source bucket objects whose file size\n is greater than the specified number of bytes.

" - } - }, - "ObjectSizeLessThanBytes": { - "target": "com.amazonaws.s3control#ObjectSizeLessThanBytes", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

If provided, the generated manifest includes only source bucket objects whose file size\n is less than the specified number of bytes.

" - } - }, - "MatchAnyStorageClass": { - "target": "com.amazonaws.s3control#StorageClassList", - "traits": { - "smithy.api#documentation": "

If provided, the generated manifest includes only source bucket objects that are stored\n with the specified storage class.

" - } - }, - "MatchAnyObjectEncryption": { - "target": "com.amazonaws.s3control#ObjectEncryptionFilterList", - "traits": { - "smithy.api#documentation": "

If provided, the generated object list includes \n only source bucket objects with the indicated server-side encryption type (SSE-S3, SSE-KMS, DSSE-KMS, SSE-C, or NOT-SSE). \n If you select SSE-KMS or DSSE-KMS, you can optionally further filter your results by specifying a specific KMS Key ARN. \n If you select SSE-KMS, you can also optionally further filter your results by Bucket Key enabled status.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The filter used to describe a set of objects for the job's manifest.

" - } - }, - "com.amazonaws.s3control#JobManifestLocation": { - "type": "structure", - "members": { - "ObjectArn": { - "target": "com.amazonaws.s3control#S3KeyArnString", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) for a manifest object.

\n \n

When you're using XML requests, you must \nreplace special characters (such as carriage returns) in object keys with their equivalent XML entity codes. \nFor more information, see \n XML-related object key constraints in the Amazon S3 User Guide.

\n
", - "smithy.api#required": {} - } - }, - "ObjectVersionId": { - "target": "com.amazonaws.s3control#S3ObjectVersionId", - "traits": { - "smithy.api#documentation": "

The optional version ID to identify a specific version of the manifest object.

" - } - }, - "ETag": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

The ETag for the specified manifest object.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the information required to locate a manifest object. Manifests can't be\n imported from directory buckets. For more information, see Directory\n buckets.

" - } - }, - "com.amazonaws.s3control#JobManifestSpec": { - "type": "structure", - "members": { - "Format": { - "target": "com.amazonaws.s3control#JobManifestFormat", - "traits": { - "smithy.api#documentation": "

Indicates which of the available formats the specified manifest uses.

", - "smithy.api#required": {} - } - }, - "Fields": { - "target": "com.amazonaws.s3control#JobManifestFieldList", - "traits": { - "smithy.api#documentation": "

If the specified manifest object is in the S3BatchOperations_CSV_20180820\n format, this element describes which columns contain the required data.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the format of a manifest. If the manifest is in CSV format, also describes the\n columns contained within the manifest.

" - } - }, - "com.amazonaws.s3control#JobNumberOfTasksFailed": { - "type": "long", - "traits": { - "smithy.api#default": 0, - "smithy.api#range": { - "min": 0 - } - } - }, - "com.amazonaws.s3control#JobNumberOfTasksSucceeded": { - "type": "long", - "traits": { - "smithy.api#default": 0, - "smithy.api#range": { - "min": 0 - } - } - }, - "com.amazonaws.s3control#JobOperation": { - "type": "structure", - "members": { - "LambdaInvoke": { - "target": "com.amazonaws.s3control#LambdaInvokeOperation", - "traits": { - "smithy.api#documentation": "

Directs the specified job to invoke an Lambda function on every object in the\n manifest.

" - } - }, - "S3PutObjectCopy": { - "target": "com.amazonaws.s3control#S3CopyObjectOperation", - "traits": { - "smithy.api#documentation": "

Directs the specified job to run a PUT Copy object call on every object in the\n manifest.

" - } - }, - "S3PutObjectAcl": { - "target": "com.amazonaws.s3control#S3SetObjectAclOperation", - "traits": { - "smithy.api#documentation": "

Directs the specified job to run a PutObjectAcl call on every object in the\n manifest.

\n \n

This functionality is not supported by directory buckets.

\n
" - } - }, - "S3PutObjectTagging": { - "target": "com.amazonaws.s3control#S3SetObjectTaggingOperation", - "traits": { - "smithy.api#documentation": "

Directs the specified job to run a PUT Object tagging call on every object in the\n manifest.

\n \n

This functionality is not supported by directory buckets.

\n
" - } - }, - "S3DeleteObjectTagging": { - "target": "com.amazonaws.s3control#S3DeleteObjectTaggingOperation", - "traits": { - "smithy.api#documentation": "

Directs the specified job to execute a DELETE Object tagging call on every object in the\n manifest.

\n \n

This functionality is not supported by directory buckets.

\n
" - } - }, - "S3InitiateRestoreObject": { - "target": "com.amazonaws.s3control#S3InitiateRestoreObjectOperation", - "traits": { - "smithy.api#documentation": "

Directs the specified job to initiate restore requests for every archived object in the\n manifest.

\n \n

This functionality is not supported by directory buckets.

\n
" - } - }, - "S3PutObjectLegalHold": { - "target": "com.amazonaws.s3control#S3SetObjectLegalHoldOperation" - }, - "S3PutObjectRetention": { - "target": "com.amazonaws.s3control#S3SetObjectRetentionOperation" - }, - "S3ReplicateObject": { - "target": "com.amazonaws.s3control#S3ReplicateObjectOperation", - "traits": { - "smithy.api#documentation": "

Directs the specified job to invoke ReplicateObject on every object in the\n job's manifest.

\n \n

This functionality is not supported by directory buckets.

\n
" - } - }, - "S3ComputeObjectChecksum": { - "target": "com.amazonaws.s3control#S3ComputeObjectChecksumOperation", - "traits": { - "smithy.api#documentation": "

Directs the specified job to compute checksum values for every object in the\n manifest.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The operation that you want this job to perform on every object listed in the manifest.\n For more information about the available operations, see Operations in the\n Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3control#JobPriority": { - "type": "integer", - "traits": { - "smithy.api#default": 0, - "smithy.api#range": { - "min": 0, - "max": 2147483647 - } - } - }, - "com.amazonaws.s3control#JobProgressSummary": { - "type": "structure", - "members": { - "TotalNumberOfTasks": { - "target": "com.amazonaws.s3control#JobTotalNumberOfTasks", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

" - } - }, - "NumberOfTasksSucceeded": { - "target": "com.amazonaws.s3control#JobNumberOfTasksSucceeded", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

" - } - }, - "NumberOfTasksFailed": { - "target": "com.amazonaws.s3control#JobNumberOfTasksFailed", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

" - } - }, - "Timers": { - "target": "com.amazonaws.s3control#JobTimers", - "traits": { - "smithy.api#documentation": "

The JobTimers attribute of a job's progress summary.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the total number of tasks that the specified job has started, the number of\n tasks that succeeded, and the number of tasks that failed.

" - } - }, - "com.amazonaws.s3control#JobReport": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3control#S3BucketArnString", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the bucket where specified job-completion report will\n be stored.

\n \n

\n Directory buckets - Directory buckets\n aren't supported as a location for Batch Operations to store job completion reports.

\n
" - } - }, - "Format": { - "target": "com.amazonaws.s3control#JobReportFormat", - "traits": { - "smithy.api#documentation": "

The format of the specified job-completion report.

" - } - }, - "Enabled": { - "target": "com.amazonaws.s3control#Boolean", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

Indicates whether the specified job will generate a job-completion report.

", - "smithy.api#required": {} - } - }, - "Prefix": { - "target": "com.amazonaws.s3control#ReportPrefixString", - "traits": { - "smithy.api#documentation": "

An optional prefix to describe where in the specified bucket the job-completion report\n will be stored. Amazon S3 stores the job-completion report at\n /job-/report.json.

" - } - }, - "ReportScope": { - "target": "com.amazonaws.s3control#JobReportScope", - "traits": { - "smithy.api#documentation": "

Indicates whether the job-completion report will include details of all tasks or only\n failed tasks.

" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

Lists the Amazon Web Services account ID that owns the target bucket, where the completion report is received.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the configuration parameters for a job-completion report.

" - } - }, - "com.amazonaws.s3control#JobReportFormat": { - "type": "enum", - "members": { - "Report_CSV_20180820": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Report_CSV_20180820" - } - } - } - }, - "com.amazonaws.s3control#JobReportScope": { - "type": "enum", - "members": { - "AllTasks": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "AllTasks" - } - }, - "FailedTasksOnly": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "FailedTasksOnly" - } - } - } - }, - "com.amazonaws.s3control#JobStatus": { - "type": "enum", - "members": { - "Active": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Active" - } - }, - "Cancelled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Cancelled" - } - }, - "Cancelling": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Cancelling" - } - }, - "Complete": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Complete" - } - }, - "Completing": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Completing" - } - }, - "Failed": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Failed" - } - }, - "Failing": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Failing" - } - }, - "New": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "New" - } - }, - "Paused": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Paused" - } - }, - "Pausing": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Pausing" - } - }, - "Preparing": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Preparing" - } - }, - "Ready": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Ready" - } - }, - "Suspended": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Suspended" - } - } - } - }, - "com.amazonaws.s3control#JobStatusException": { - "type": "structure", - "members": { - "Message": { - "target": "com.amazonaws.s3control#ExceptionMessage" - } - }, - "traits": { - "smithy.api#documentation": "

", - "smithy.api#error": "client" - } - }, - "com.amazonaws.s3control#JobStatusList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#JobStatus" - } - }, - "com.amazonaws.s3control#JobStatusUpdateReason": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 256 - } - } - }, - "com.amazonaws.s3control#JobTerminationDate": { - "type": "timestamp" - }, - "com.amazonaws.s3control#JobTimeInStateSeconds": { - "type": "long", - "traits": { - "smithy.api#default": 0, - "smithy.api#range": { - "min": 0 - } - } - }, - "com.amazonaws.s3control#JobTimers": { - "type": "structure", - "members": { - "ElapsedTimeInActiveSeconds": { - "target": "com.amazonaws.s3control#JobTimeInStateSeconds", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

Indicates the elapsed time in seconds the job has been in the Active job state.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Provides timing details for the job.

" - } - }, - "com.amazonaws.s3control#JobTotalNumberOfTasks": { - "type": "long", - "traits": { - "smithy.api#default": 0, - "smithy.api#range": { - "min": 0 - } - } - }, - "com.amazonaws.s3control#KeyNameConstraint": { - "type": "structure", - "members": { - "MatchAnyPrefix": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024StringList", - "traits": { - "smithy.api#documentation": "

If provided, the generated manifest includes objects where the specified string appears\n at the start of the object key string. Each KeyNameConstraint filter accepts an array of\n strings with a length of 1 string.

" - } - }, - "MatchAnySuffix": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024StringList", - "traits": { - "smithy.api#documentation": "

If provided, the generated manifest includes objects where the specified string appears\n at the end of the object key string. Each KeyNameConstraint filter accepts an array of\n strings with a length of 1 string.

" - } - }, - "MatchAnySubstring": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024StringList", - "traits": { - "smithy.api#documentation": "

If provided, the generated manifest includes objects where the specified string appears\n anywhere within the object key string. Each KeyNameConstraint filter accepts an array of\n strings with a length of 1 string.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

If provided, the generated manifest includes only source bucket objects whose object\n keys match the string constraints specified for MatchAnyPrefix,\n MatchAnySuffix, and MatchAnySubstring.

" - } - }, - "com.amazonaws.s3control#KmsKeyArnString": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 2000 - } - } - }, - "com.amazonaws.s3control#LambdaInvokeOperation": { - "type": "structure", - "members": { - "FunctionArn": { - "target": "com.amazonaws.s3control#FunctionArnString", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the Lambda function that the specified job will\n invoke on every object in the manifest.

" - } - }, - "InvocationSchemaVersion": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength64String", - "traits": { - "smithy.api#documentation": "

Specifies the schema version for the payload that Batch Operations sends when invoking\n an Lambda function. Version 1.0 is the default. Version\n 2.0 is required when you use Batch Operations to invoke Lambda functions that act on directory buckets, or if you need to specify\n UserArguments. For more information, see Automate object processing in Amazon S3 directory buckets with S3 Batch Operations and\n Lambda in the Amazon Web Services Storage Blog.

\n \n

Ensure that your Lambda function code expects\n InvocationSchemaVersion\n 2.0 and uses bucket name rather than bucket ARN. If the\n InvocationSchemaVersion does not match what your Lambda\n function expects, your function might not work as expected.

\n
\n \n

\n Directory buckets - To initiate Amazon Web Services Lambda\n function to perform custom actions on objects in directory buckets, you must specify\n 2.0.

\n
" - } - }, - "UserArguments": { - "target": "com.amazonaws.s3control#UserArguments", - "traits": { - "smithy.api#documentation": "

Key-value pairs that are passed in the payload that Batch Operations sends when invoking\n an Lambda function. You must specify InvocationSchemaVersion\n 2.0 for LambdaInvoke operations that include\n UserArguments. For more information, see Automate object processing in Amazon S3 directory buckets with S3 Batch Operations and\n Lambda in the Amazon Web Services Storage Blog.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the configuration parameters for a Lambda Invoke operation.

" - } - }, - "com.amazonaws.s3control#LifecycleConfiguration": { - "type": "structure", - "members": { - "Rules": { - "target": "com.amazonaws.s3control#LifecycleRules", - "traits": { - "smithy.api#documentation": "

A lifecycle rule for individual objects in an Outposts bucket.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container for the Outposts bucket lifecycle configuration.

" - } - }, - "com.amazonaws.s3control#LifecycleExpiration": { - "type": "structure", - "members": { - "Date": { - "target": "com.amazonaws.s3control#Date", - "traits": { - "smithy.api#documentation": "

Indicates at what date the object is to be deleted. Should be in GMT ISO 8601\n format.

" - } - }, - "Days": { - "target": "com.amazonaws.s3control#Days", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

Indicates the lifetime, in days, of the objects that are subject to the rule. The value\n must be a non-zero positive integer.

" - } - }, - "ExpiredObjectDeleteMarker": { - "target": "com.amazonaws.s3control#ExpiredObjectDeleteMarker", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

Indicates whether Amazon S3 will remove a delete marker with no noncurrent versions. If set\n to true, the delete marker will be expired. If set to false, the policy takes no action.\n This cannot be specified with Days or Date in a Lifecycle Expiration Policy. To learn more\n about delete markers, see Working with delete\n markers.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container of the Outposts bucket lifecycle expiration.

" - } - }, - "com.amazonaws.s3control#LifecycleRule": { - "type": "structure", - "members": { - "Expiration": { - "target": "com.amazonaws.s3control#LifecycleExpiration", - "traits": { - "smithy.api#documentation": "

Specifies the expiration for the lifecycle of the object in the form of date, days and,\n whether the object has a delete marker.

" - } - }, - "ID": { - "target": "com.amazonaws.s3control#ID", - "traits": { - "smithy.api#documentation": "

Unique identifier for the rule. The value cannot be longer than 255 characters.

" - } - }, - "Filter": { - "target": "com.amazonaws.s3control#LifecycleRuleFilter", - "traits": { - "smithy.api#documentation": "

The container for the filter of lifecycle rule.

" - } - }, - "Status": { - "target": "com.amazonaws.s3control#ExpirationStatus", - "traits": { - "smithy.api#documentation": "

If 'Enabled', the rule is currently being applied. If 'Disabled', the rule is not\n currently being applied.

", - "smithy.api#required": {} - } - }, - "Transitions": { - "target": "com.amazonaws.s3control#TransitionList", - "traits": { - "smithy.api#documentation": "

Specifies when an Amazon S3 object transitions to a specified storage class.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" - } - }, - "NoncurrentVersionTransitions": { - "target": "com.amazonaws.s3control#NoncurrentVersionTransitionList", - "traits": { - "smithy.api#documentation": "

Specifies the transition rule for the lifecycle rule that describes when non-current\n objects transition to a specific storage class. If your bucket is versioning-enabled (or\n versioning is suspended), you can set this action to request that Amazon S3 transition\n noncurrent object versions to a specific storage class at a set period in the object's\n lifetime.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" - } - }, - "NoncurrentVersionExpiration": { - "target": "com.amazonaws.s3control#NoncurrentVersionExpiration", - "traits": { - "smithy.api#documentation": "

The noncurrent version expiration of the lifecycle rule.

" - } - }, - "AbortIncompleteMultipartUpload": { - "target": "com.amazonaws.s3control#AbortIncompleteMultipartUpload", - "traits": { - "smithy.api#documentation": "

Specifies the days since the initiation of an incomplete multipart upload that Amazon S3\n waits before permanently removing all parts of the upload. For more information, see \n Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration in\n the Amazon S3 User Guide.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container for the Outposts bucket lifecycle rule.

" - } - }, - "com.amazonaws.s3control#LifecycleRuleAndOperator": { - "type": "structure", - "members": { - "Prefix": { - "target": "com.amazonaws.s3control#Prefix", - "traits": { - "smithy.api#documentation": "

Prefix identifying one or more objects to which the rule applies.

" - } - }, - "Tags": { - "target": "com.amazonaws.s3control#S3TagSet", - "traits": { - "smithy.api#documentation": "

All of these tags must exist in the object's tag set in order for the rule to\n apply.

" - } - }, - "ObjectSizeGreaterThan": { - "target": "com.amazonaws.s3control#ObjectSizeGreaterThanBytes", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

The non-inclusive minimum object size for the lifecycle rule. Setting this property to 7\n means the rule applies to objects with a size that is greater than 7.

" - } - }, - "ObjectSizeLessThan": { - "target": "com.amazonaws.s3control#ObjectSizeLessThanBytes", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

The non-inclusive maximum object size for the lifecycle rule. Setting this property to\n 77 means the rule applies to objects with a size that is less than 77.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container for the Outposts bucket lifecycle rule and operator.

" - } - }, - "com.amazonaws.s3control#LifecycleRuleFilter": { - "type": "structure", - "members": { - "Prefix": { - "target": "com.amazonaws.s3control#Prefix", - "traits": { - "smithy.api#documentation": "

Prefix identifying one or more objects to which the rule applies.

\n \n

When you're using XML requests, you must \nreplace special characters (such as carriage returns) in object keys with their equivalent XML entity codes. \nFor more information, see \n XML-related object key constraints in the Amazon S3 User Guide.

\n
" - } - }, - "Tag": { - "target": "com.amazonaws.s3control#S3Tag" - }, - "And": { - "target": "com.amazonaws.s3control#LifecycleRuleAndOperator", - "traits": { - "smithy.api#documentation": "

The container for the AND condition for the lifecycle rule.

" - } - }, - "ObjectSizeGreaterThan": { - "target": "com.amazonaws.s3control#ObjectSizeGreaterThanBytes", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

Minimum object size to which the rule applies.

" - } - }, - "ObjectSizeLessThan": { - "target": "com.amazonaws.s3control#ObjectSizeLessThanBytes", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

Maximum object size to which the rule applies.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container for the filter of the lifecycle rule.

" - } - }, - "com.amazonaws.s3control#LifecycleRules": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#LifecycleRule", - "traits": { - "smithy.api#xmlName": "Rule" - } - } - }, - "com.amazonaws.s3control#ListAccessGrantEntry": { - "type": "structure", - "members": { - "CreatedAt": { - "target": "com.amazonaws.s3control#CreationTimestamp", - "traits": { - "smithy.api#documentation": "

The date and time when you created the S3 Access Grants instance.

" - } - }, - "AccessGrantId": { - "target": "com.amazonaws.s3control#AccessGrantId", - "traits": { - "smithy.api#documentation": "

The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access\n grant.

" - } - }, - "AccessGrantArn": { - "target": "com.amazonaws.s3control#AccessGrantArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the access grant.

" - } - }, - "Grantee": { - "target": "com.amazonaws.s3control#Grantee", - "traits": { - "smithy.api#documentation": "

The user, group, or role to which you are granting access. You can grant access to an\n IAM user or role. If you have added your corporate directory to Amazon Web Services IAM Identity\n Center and associated your Identity Center instance with your S3 Access Grants instance, the grantee\n can also be a corporate directory user or group.

" - } - }, - "Permission": { - "target": "com.amazonaws.s3control#Permission", - "traits": { - "smithy.api#documentation": "

The type of access granted to your S3 data, which can be set to one of the following\n values:

\n
    \n
  • \n

    \n READ – Grant read-only access to the S3 data.

    \n
  • \n
  • \n

    \n WRITE – Grant write-only access to the S3 data.

    \n
  • \n
  • \n

    \n READWRITE – Grant both read and write access to the S3 data.

    \n
  • \n
" - } - }, - "AccessGrantsLocationId": { - "target": "com.amazonaws.s3control#AccessGrantsLocationId", - "traits": { - "smithy.api#documentation": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this\n ID when you register the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

" - } - }, - "AccessGrantsLocationConfiguration": { - "target": "com.amazonaws.s3control#AccessGrantsLocationConfiguration", - "traits": { - "smithy.api#documentation": "

The configuration options of the grant location. The grant location is the S3 path to\n the data to which you are granting access.

" - } - }, - "GrantScope": { - "target": "com.amazonaws.s3control#S3Prefix", - "traits": { - "smithy.api#documentation": "

The S3 path of the data to which you are granting access. It is the result of appending\n the Subprefix to the location scope.

" - } - }, - "ApplicationArn": { - "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated\n with your Identity Center instance. If the grant includes an application ARN, the grantee\n can only access the S3 data through this application.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Information about the access grant.

" - } - }, - "com.amazonaws.s3control#ListAccessGrants": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#ListAccessGrantsRequest" - }, - "output": { - "target": "com.amazonaws.s3control#ListAccessGrantsResult" - }, - "traits": { - "smithy.api#documentation": "

Returns the list of access grants in your S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:ListAccessGrants permission to use this\n operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accessgrantsinstance/grants", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#ListAccessGrantsInstanceEntry": { - "type": "structure", - "members": { - "AccessGrantsInstanceId": { - "target": "com.amazonaws.s3control#AccessGrantsInstanceId", - "traits": { - "smithy.api#documentation": "

The ID of the S3 Access Grants instance. The ID is default. You can have one S3 Access Grants\n instance per Region per account.

" - } - }, - "AccessGrantsInstanceArn": { - "target": "com.amazonaws.s3control#AccessGrantsInstanceArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the S3 Access Grants instance.

" - } - }, - "CreatedAt": { - "target": "com.amazonaws.s3control#CreationTimestamp", - "traits": { - "smithy.api#documentation": "

The date and time when you created the S3 Access Grants instance.

" - } - }, - "IdentityCenterArn": { - "target": "com.amazonaws.s3control#IdentityCenterArn", - "traits": { - "smithy.api#deprecated": { - "message": "IdentityCenterArn has been deprecated. Use IdentityCenterInstanceArn or IdentityCenterApplicationArn." - }, - "smithy.api#documentation": "

If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance,\n this field returns the Amazon Resource Name (ARN) of the IAM Identity Center instance\n application; a subresource of the original Identity Center instance. S3 Access Grants creates this\n Identity Center application for the specific S3 Access Grants instance.

" - } - }, - "IdentityCenterInstanceArn": { - "target": "com.amazonaws.s3control#IdentityCenterArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity Center instance that you are\n associating with your S3 Access Grants instance. An IAM Identity Center instance is your corporate\n identity directory that you added to the IAM Identity Center. You can use the ListInstances API operation to retrieve a list of your Identity Center\n instances and their ARNs.

" - } - }, - "IdentityCenterApplicationArn": { - "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", - "traits": { - "smithy.api#documentation": "

If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance,\n this field returns the Amazon Resource Name (ARN) of the IAM Identity Center instance\n application; a subresource of the original Identity Center instance. S3 Access Grants creates this\n Identity Center application for the specific S3 Access Grants instance.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Information about the S3 Access Grants instance.

" - } - }, - "com.amazonaws.s3control#ListAccessGrantsInstances": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#ListAccessGrantsInstancesRequest" - }, - "output": { - "target": "com.amazonaws.s3control#ListAccessGrantsInstancesResult" - }, - "traits": { - "smithy.api#documentation": "

Returns a list of S3 Access Grants instances. An S3 Access Grants instance serves as a logical grouping for\n your individual access grants. You can only have one S3 Access Grants instance per Region per\n account.

\n
\n
Permissions
\n
\n

You must have the s3:ListAccessGrantsInstances permission to use\n this operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accessgrantsinstances", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#ListAccessGrantsInstancesRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "NextToken": { - "target": "com.amazonaws.s3control#ContinuationToken", - "traits": { - "smithy.api#documentation": "

A pagination token to request the next page of results. Pass this value into a\n subsequent List Access Grants Instances request in order to retrieve the next\n page of results.

", - "smithy.api#httpQuery": "nextToken" - } - }, - "MaxResults": { - "target": "com.amazonaws.s3control#MaxResults", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

The maximum number of access grants that you would like returned in the List\n Access Grants response. If the results include the pagination token\n NextToken, make another call using the NextToken to determine\n if there are more results.

", - "smithy.api#httpQuery": "maxResults" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#ListAccessGrantsInstancesResult": { - "type": "structure", - "members": { - "NextToken": { - "target": "com.amazonaws.s3control#ContinuationToken", - "traits": { - "smithy.api#documentation": "

A pagination token to request the next page of results. Pass this value into a\n subsequent List Access Grants Instances request in order to retrieve the next\n page of results.

" - } - }, - "AccessGrantsInstancesList": { - "target": "com.amazonaws.s3control#AccessGrantsInstancesList", - "traits": { - "smithy.api#documentation": "

A container for a list of S3 Access Grants instances.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#ListAccessGrantsLocations": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#ListAccessGrantsLocationsRequest" - }, - "output": { - "target": "com.amazonaws.s3control#ListAccessGrantsLocationsResult" - }, - "traits": { - "smithy.api#documentation": "

Returns a list of the locations registered in your S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:ListAccessGrantsLocations permission to use\n this operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accessgrantsinstance/locations", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#ListAccessGrantsLocationsEntry": { - "type": "structure", - "members": { - "CreatedAt": { - "target": "com.amazonaws.s3control#CreationTimestamp", - "traits": { - "smithy.api#documentation": "

The date and time when you registered the location.

" - } - }, - "AccessGrantsLocationId": { - "target": "com.amazonaws.s3control#AccessGrantsLocationId", - "traits": { - "smithy.api#documentation": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this\n ID when you register the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

" - } - }, - "AccessGrantsLocationArn": { - "target": "com.amazonaws.s3control#AccessGrantsLocationArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the registered location.

" - } - }, - "LocationScope": { - "target": "com.amazonaws.s3control#S3Prefix", - "traits": { - "smithy.api#documentation": "

The S3 path to the location that you are registering. The location scope can be the\n default S3 location s3://, the S3 path to a bucket\n s3://, or the S3 path to a bucket and prefix\n s3:///. A prefix in S3 is a string of\n characters at the beginning of an object key name used to organize the objects that you\n store in your S3 buckets. For example, object key names that start with the\n engineering/ prefix or object key names that start with the\n marketing/campaigns/ prefix.

" - } - }, - "IAMRoleArn": { - "target": "com.amazonaws.s3control#IAMRoleArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants\n assumes this role to manage access to the registered location.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for information about the registered location.

" - } - }, - "com.amazonaws.s3control#ListAccessGrantsLocationsRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "NextToken": { - "target": "com.amazonaws.s3control#ContinuationToken", - "traits": { - "smithy.api#documentation": "

A pagination token to request the next page of results. Pass this value into a\n subsequent List Access Grants Locations request in order to retrieve the next\n page of results.

", - "smithy.api#httpQuery": "nextToken" - } - }, - "MaxResults": { - "target": "com.amazonaws.s3control#MaxResults", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

The maximum number of access grants that you would like returned in the List\n Access Grants response. If the results include the pagination token\n NextToken, make another call using the NextToken to determine\n if there are more results.

", - "smithy.api#httpQuery": "maxResults" - } - }, - "LocationScope": { - "target": "com.amazonaws.s3control#S3Prefix", - "traits": { - "smithy.api#documentation": "

The S3 path to the location that you are registering. The location scope can be the\n default S3 location s3://, the S3 path to a bucket\n s3://, or the S3 path to a bucket and prefix\n s3:///. A prefix in S3 is a string of\n characters at the beginning of an object key name used to organize the objects that you\n store in your S3 buckets. For example, object key names that start with the\n engineering/ prefix or object key names that start with the\n marketing/campaigns/ prefix.

", - "smithy.api#httpQuery": "locationscope" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#ListAccessGrantsLocationsResult": { - "type": "structure", - "members": { - "NextToken": { - "target": "com.amazonaws.s3control#ContinuationToken", - "traits": { - "smithy.api#documentation": "

A pagination token to request the next page of results. Pass this value into a\n subsequent List Access Grants Locations request in order to retrieve the next\n page of results.

" - } - }, - "AccessGrantsLocationsList": { - "target": "com.amazonaws.s3control#AccessGrantsLocationsList", - "traits": { - "smithy.api#documentation": "

A container for a list of registered locations in an S3 Access Grants instance.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#ListAccessGrantsRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "NextToken": { - "target": "com.amazonaws.s3control#ContinuationToken", - "traits": { - "smithy.api#documentation": "

A pagination token to request the next page of results. Pass this value into a\n subsequent List Access Grants request in order to retrieve the next page of\n results.

", - "smithy.api#httpQuery": "nextToken" - } - }, - "MaxResults": { - "target": "com.amazonaws.s3control#MaxResults", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

The maximum number of access grants that you would like returned in the List\n Access Grants response. If the results include the pagination token\n NextToken, make another call using the NextToken to determine\n if there are more results.

", - "smithy.api#httpQuery": "maxResults" - } - }, - "GranteeType": { - "target": "com.amazonaws.s3control#GranteeType", - "traits": { - "smithy.api#documentation": "

The type of the grantee to which access has been granted. It can be one of the following\n values:

\n
    \n
  • \n

    \n IAM - An IAM user or role.

    \n
  • \n
  • \n

    \n DIRECTORY_USER - Your corporate directory user. You can use\n this option if you have added your corporate identity directory to IAM Identity\n Center and associated the IAM Identity Center instance with your S3 Access Grants\n instance.

    \n
  • \n
  • \n

    \n DIRECTORY_GROUP - Your corporate directory group. You can use\n this option if you have added your corporate identity directory to IAM Identity\n Center and associated the IAM Identity Center instance with your S3 Access Grants\n instance.

    \n
  • \n
", - "smithy.api#httpQuery": "granteetype" - } - }, - "GranteeIdentifier": { - "target": "com.amazonaws.s3control#GranteeIdentifier", - "traits": { - "smithy.api#documentation": "

The unique identifer of the Grantee. If the grantee type is\n IAM, the identifier is the IAM Amazon Resource Name (ARN) of the user\n or role. If the grantee type is a directory user or group, the identifier is 128-bit\n universally unique identifier (UUID) in the format\n a1b2c3d4-5678-90ab-cdef-EXAMPLE11111. You can obtain this UUID from your\n Amazon Web Services IAM Identity Center instance.

", - "smithy.api#httpQuery": "granteeidentifier" - } - }, - "Permission": { - "target": "com.amazonaws.s3control#Permission", - "traits": { - "smithy.api#documentation": "

The type of permission granted to your S3 data, which can be set to one of the following\n values:

\n
    \n
  • \n

    \n READ – Grant read-only access to the S3 data.

    \n
  • \n
  • \n

    \n WRITE – Grant write-only access to the S3 data.

    \n
  • \n
  • \n

    \n READWRITE – Grant both read and write access to the S3 data.

    \n
  • \n
", - "smithy.api#httpQuery": "permission" - } - }, - "GrantScope": { - "target": "com.amazonaws.s3control#S3Prefix", - "traits": { - "smithy.api#documentation": "

The S3 path of the data to which you are granting access. It is the result of appending\n the Subprefix to the location scope.

", - "smithy.api#httpQuery": "grantscope" - } - }, - "ApplicationArn": { - "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated\n with your Identity Center instance. If the grant includes an application ARN, the grantee\n can only access the S3 data through this application.

", - "smithy.api#httpQuery": "application_arn" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#ListAccessGrantsResult": { - "type": "structure", - "members": { - "NextToken": { - "target": "com.amazonaws.s3control#ContinuationToken", - "traits": { - "smithy.api#documentation": "

A pagination token to request the next page of results. Pass this value into a\n subsequent List Access Grants request in order to retrieve the next page of\n results.

" - } - }, - "AccessGrantsList": { - "target": "com.amazonaws.s3control#AccessGrantsList", - "traits": { - "smithy.api#documentation": "

A container for a list of grants in an S3 Access Grants instance.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#ListAccessPoints": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#ListAccessPointsRequest" - }, - "output": { - "target": "com.amazonaws.s3control#ListAccessPointsResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns a list of the access points. You can retrieve up to 1,000 access points per call. If the call\n returns more than 1,000 access points (or the number specified in maxResults,\n whichever is less), the response will include a continuation token that you can use to list\n the additional access points.

\n

Returns only access points attached to S3 buckets by default. To return all access points specify\n DataSourceType as ALL.

\n

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to ListAccessPoints:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accesspoint", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#ListAccessPointsForDirectoryBuckets": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#ListAccessPointsForDirectoryBucketsRequest" - }, - "output": { - "target": "com.amazonaws.s3control#ListAccessPointsForDirectoryBucketsResult" - }, - "traits": { - "smithy.api#documentation": "

Returns a list of the access points that are owned by the Amazon Web Services account and that are associated\n with the specified directory bucket.

\n

To list access points for general purpose buckets, see ListAccesspoints.

\n

To use this operation, you must have the permission to perform the\n s3express:ListAccessPointsForDirectoryBuckets\n action.

\n

For information about REST API errors, see REST error responses.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accesspointfordirectory", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "AccessPointList", - "pageSize": "MaxResults" - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - }, - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#ListAccessPointsForDirectoryBucketsRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID that owns the access points.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "DirectoryBucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the directory bucket associated with the access points you want to list.

", - "smithy.api#httpQuery": "directoryBucket" - } - }, - "NextToken": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

If NextToken is returned, there are more access points available than requested in\n the maxResults value. The value of NextToken is a unique\n pagination token for each page. Make the call again using the returned token to retrieve\n the next page. Keep all other arguments unchanged. Each pagination token expires after 24\n hours.

", - "smithy.api#httpQuery": "nextToken" - } - }, - "MaxResults": { - "target": "com.amazonaws.s3control#MaxResults", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

The maximum number of access points that you would like returned in the\n ListAccessPointsForDirectoryBuckets response. If the directory bucket is\n associated with more than this number of access points, the results include the pagination token\n NextToken. Make another call using the NextToken to retrieve\n more results.

", - "smithy.api#httpQuery": "maxResults" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#ListAccessPointsForDirectoryBucketsResult": { - "type": "structure", - "members": { - "AccessPointList": { - "target": "com.amazonaws.s3control#AccessPointList", - "traits": { - "smithy.api#documentation": "

Contains identification and configuration information for one or more access points associated\n with the directory bucket.

" - } - }, - "NextToken": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

If NextToken is returned, there are more access points available than requested in\n the maxResults value. The value of NextToken is a unique\n pagination token for each page. Make the call again using the returned token to retrieve\n the next page. Keep all other arguments unchanged. Each pagination token expires after 24\n hours.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#ListAccessPointsForObjectLambda": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#ListAccessPointsForObjectLambdaRequest" - }, - "output": { - "target": "com.amazonaws.s3control#ListAccessPointsForObjectLambdaResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns some or all (up to 1,000) access points associated with the Object Lambda Access Point per call. If there\n are more access points than what can be returned in one call, the response will include a\n continuation token that you can use to list the additional access points.

\n

The following actions are related to\n ListAccessPointsForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accesspointforobjectlambda", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "ObjectLambdaAccessPointList", - "pageSize": "MaxResults" - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#ListAccessPointsForObjectLambdaRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "NextToken": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

If the list has more access points than can be returned in one call to this API, this field\n contains a continuation token that you can provide in subsequent calls to this API to\n retrieve additional access points.

", - "smithy.api#httpQuery": "nextToken" - } - }, - "MaxResults": { - "target": "com.amazonaws.s3control#MaxResults", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

The maximum number of access points that you want to include in the list. The response may\n contain fewer access points but will never contain more. If there are more than this number of\n access points, then the response will include a continuation token in the NextToken\n field that you can use to retrieve the next page of access points.

", - "smithy.api#httpQuery": "maxResults" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#ListAccessPointsForObjectLambdaResult": { - "type": "structure", - "members": { - "ObjectLambdaAccessPointList": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointList", - "traits": { - "smithy.api#documentation": "

Returns list of Object Lambda Access Points.

" - } - }, - "NextToken": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

If the list has more access points than can be returned in one call to this API, this field\n contains a continuation token that you can provide in subsequent calls to this API to\n retrieve additional access points.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#ListAccessPointsRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID for the account that owns the specified access points.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket whose associated access points you want to list.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", - "smithy.api#httpQuery": "bucket", - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "NextToken": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

A continuation token. If a previous call to ListAccessPoints returned a\n continuation token in the NextToken field, then providing that value here\n causes Amazon S3 to retrieve the next page of results.

", - "smithy.api#httpQuery": "nextToken" - } - }, - "MaxResults": { - "target": "com.amazonaws.s3control#MaxResults", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

The maximum number of access points that you want to include in the list. If the specified\n bucket has more than this number of access points, then the response will include a continuation\n token in the NextToken field that you can use to retrieve the next page of\n access points.

", - "smithy.api#httpQuery": "maxResults" - } - }, - "DataSourceId": { - "target": "com.amazonaws.s3control#DataSourceId", - "traits": { - "smithy.api#documentation": "

The unique identifier for the data source of the access point.

", - "smithy.api#httpQuery": "dataSourceId" - } - }, - "DataSourceType": { - "target": "com.amazonaws.s3control#DataSourceType", - "traits": { - "smithy.api#documentation": "

The type of the data source that the access point is attached to. Returns only access points attached to\n S3 buckets by default. To return all access points specify DataSourceType as\n ALL.

", - "smithy.api#httpQuery": "dataSourceType" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#ListAccessPointsResult": { - "type": "structure", - "members": { - "AccessPointList": { - "target": "com.amazonaws.s3control#AccessPointList", - "traits": { - "smithy.api#documentation": "

Contains identification and configuration information for one or more access points associated\n with the specified bucket.

" - } - }, - "NextToken": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

If the specified bucket has more access points than can be returned in one call to this API,\n this field contains a continuation token that you can provide in subsequent calls to this\n API to retrieve additional access points.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#ListCallerAccessGrants": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#ListCallerAccessGrantsRequest" - }, - "output": { - "target": "com.amazonaws.s3control#ListCallerAccessGrantsResult" - }, - "traits": { - "smithy.api#documentation": "

Use this API to list the access grants that grant the caller access to Amazon S3 data through\n S3 Access Grants. The caller (grantee) can be an Identity and Access Management (IAM) identity or Amazon Web Services Identity Center\n corporate directory identity. You must pass the Amazon Web Services account of the S3 data owner\n (grantor) in the request. You can, optionally, narrow the results by\n GrantScope, using a fragment of the data's S3 path, and S3 Access Grants will return\n only the grants with a path that contains the path fragment. You can also pass the\n AllowedByApplication filter in the request, which returns only the grants\n authorized for applications, whether the application is the caller's Identity Center\n application or any other application (ALL). For more information, see List\n the caller's access grants in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

You must have the s3:ListCallerAccessGrants permission to use this\n operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/accessgrantsinstance/caller/grants", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "items": "CallerAccessGrantsList", - "pageSize": "MaxResults" - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#ListCallerAccessGrantsEntry": { - "type": "structure", - "members": { - "Permission": { - "target": "com.amazonaws.s3control#Permission", - "traits": { - "smithy.api#documentation": "

The type of permission granted, which can be one of the following values:

\n
    \n
  • \n

    \n READ - Grants read-only access to the S3 data.

    \n
  • \n
  • \n

    \n WRITE - Grants write-only access to the S3 data.

    \n
  • \n
  • \n

    \n READWRITE - Grants both read and write access to the S3 data.

    \n
  • \n
" - } - }, - "GrantScope": { - "target": "com.amazonaws.s3control#S3Prefix", - "traits": { - "smithy.api#documentation": "

The S3 path of the data to which you have been granted access.

" - } - }, - "ApplicationArn": { - "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated\n with your Identity Center instance. If the grant includes an application ARN, the grantee\n can only access the S3 data through this application.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Part of ListCallerAccessGrantsResult. Each entry includes the permission\n level (READ, WRITE, or READWRITE) and the grant scope of the access grant. If the grant\n also includes an application ARN, the grantee can only access the S3 data through this\n application.

" - } - }, - "com.amazonaws.s3control#ListCallerAccessGrantsRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "GrantScope": { - "target": "com.amazonaws.s3control#S3Prefix", - "traits": { - "smithy.api#documentation": "

The S3 path of the data that you would like to access. Must start with\n s3://. You can optionally pass only the beginning characters of a path, and\n S3 Access Grants will search for all applicable grants for the path fragment.

", - "smithy.api#httpQuery": "grantscope" - } - }, - "NextToken": { - "target": "com.amazonaws.s3control#ContinuationToken", - "traits": { - "smithy.api#documentation": "

A pagination token to request the next page of results. Pass this value into a\n subsequent List Caller Access Grants request in order to retrieve the next\n page of results.

", - "smithy.api#httpQuery": "nextToken" - } - }, - "MaxResults": { - "target": "com.amazonaws.s3control#MaxResults", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

The maximum number of access grants that you would like returned in the List\n Caller Access Grants response. If the results include the pagination token\n NextToken, make another call using the NextToken to determine\n if there are more results.

", - "smithy.api#httpQuery": "maxResults" - } - }, - "AllowedByApplication": { - "target": "com.amazonaws.s3control#Boolean", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

If this optional parameter is passed in the request, a filter is applied to the results.\n The results will include only the access grants for the caller's Identity Center\n application or for any other applications (ALL).

", - "smithy.api#httpQuery": "allowedByApplication" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#ListCallerAccessGrantsResult": { - "type": "structure", - "members": { - "NextToken": { - "target": "com.amazonaws.s3control#ContinuationToken", - "traits": { - "smithy.api#documentation": "

A pagination token that you can use to request the next page of results. Pass this value\n into a subsequent List Caller Access Grants request in order to retrieve the\n next page of results.

" - } - }, - "CallerAccessGrantsList": { - "target": "com.amazonaws.s3control#CallerAccessGrantsList", - "traits": { - "smithy.api#documentation": "

A list of the caller's access grants that were created using S3 Access Grants and that grant the\n caller access to the S3 data of the Amazon Web Services account ID that was specified in the request.\n

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#ListJobs": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#ListJobsRequest" - }, - "output": { - "target": "com.amazonaws.s3control#ListJobsResult" - }, - "errors": [ - { - "target": "com.amazonaws.s3control#InternalServiceException" - }, - { - "target": "com.amazonaws.s3control#InvalidNextTokenException" - }, - { - "target": "com.amazonaws.s3control#InvalidRequestException" - } - ], - "traits": { - "smithy.api#documentation": "

Lists current S3 Batch Operations jobs as well as the jobs that have ended within the last 90\n days for the Amazon Web Services account making the request. For more information, see S3 Batch Operations in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

To use the ListJobs operation, you must have permission to perform\n the s3:ListJobs action.

\n
\n
\n

Related actions include:

\n

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/jobs", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#ListJobsRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "JobStatuses": { - "target": "com.amazonaws.s3control#JobStatusList", - "traits": { - "smithy.api#documentation": "

The List Jobs request returns jobs that match the statuses listed in this\n element.

", - "smithy.api#httpQuery": "jobStatuses" - } - }, - "NextToken": { - "target": "com.amazonaws.s3control#StringForNextToken", - "traits": { - "smithy.api#documentation": "

A pagination token to request the next page of results. Use the token that Amazon S3 returned\n in the NextToken element of the ListJobsResult from the previous\n List Jobs request.

", - "smithy.api#httpQuery": "nextToken" - } - }, - "MaxResults": { - "target": "com.amazonaws.s3control#MaxResults", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

The maximum number of jobs that Amazon S3 will include in the List Jobs\n response. If there are more jobs than this number, the response will include a pagination\n token in the NextToken field to enable you to retrieve the next page of\n results.

", - "smithy.api#httpQuery": "maxResults" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#ListJobsResult": { - "type": "structure", - "members": { - "NextToken": { - "target": "com.amazonaws.s3control#StringForNextToken", - "traits": { - "smithy.api#documentation": "

If the List Jobs request produced more than the maximum number of results,\n you can pass this value into a subsequent List Jobs request in order to\n retrieve the next page of results.

" - } - }, - "Jobs": { - "target": "com.amazonaws.s3control#JobListDescriptorList", - "traits": { - "smithy.api#documentation": "

The list of current jobs and jobs that have ended within the last 30 days.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#ListMultiRegionAccessPoints": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#ListMultiRegionAccessPointsRequest" - }, - "output": { - "target": "com.amazonaws.s3control#ListMultiRegionAccessPointsResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns a list of the Multi-Region Access Points currently associated with the specified Amazon Web Services account.\n Each call can return up to 100 Multi-Region Access Points, the maximum number of Multi-Region Access Points that can be\n associated with a single account.

\n

This action will always be routed to the US West (Oregon) Region. For more information\n about the restrictions around working with Multi-Region Access Points, see Multi-Region Access Point\n restrictions and limitations in the Amazon S3 User Guide.

\n

The following actions are related to ListMultiRegionAccessPoint:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/mrap/instances", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#ListMultiRegionAccessPointsRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "NextToken": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

Not currently used. Do not use this parameter.

", - "smithy.api#httpQuery": "nextToken" - } - }, - "MaxResults": { - "target": "com.amazonaws.s3control#MaxResults", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

Not currently used. Do not use this parameter.

", - "smithy.api#httpQuery": "maxResults" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#ListMultiRegionAccessPointsResult": { - "type": "structure", - "members": { - "AccessPoints": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointReportList", - "traits": { - "smithy.api#documentation": "

The list of Multi-Region Access Points associated with the user.

" - } - }, - "NextToken": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

If the specified bucket has more Multi-Region Access Points than can be returned in one call to this\n action, this field contains a continuation token. You can use this token tin subsequent\n calls to this action to retrieve additional Multi-Region Access Points.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#ListRegionalBuckets": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#ListRegionalBucketsRequest" - }, - "output": { - "target": "com.amazonaws.s3control#ListRegionalBucketsResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns a list of all Outposts buckets in an Outpost that are owned by the authenticated\n sender of the request. For more information, see Using Amazon S3 on Outposts in the\n Amazon S3 User Guide.

\n

For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts\n endpoint hostname prefix and x-amz-outpost-id in your request, see the Examples section.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/bucket", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken", - "pageSize": "MaxResults" - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#ListRegionalBucketsRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "NextToken": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

", - "smithy.api#httpQuery": "nextToken" - } - }, - "MaxResults": { - "target": "com.amazonaws.s3control#MaxResults", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

", - "smithy.api#httpQuery": "maxResults" - } - }, - "OutpostId": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength64String", - "traits": { - "smithy.api#documentation": "

The ID of the Outposts resource.

\n \n

This ID is required by Amazon S3 on Outposts buckets.

\n
", - "smithy.api#httpHeader": "x-amz-outpost-id", - "smithy.rules#contextParam": { - "name": "OutpostId" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#ListRegionalBucketsResult": { - "type": "structure", - "members": { - "RegionalBucketList": { - "target": "com.amazonaws.s3control#RegionalBucketList", - "traits": { - "smithy.api#documentation": "

" - } - }, - "NextToken": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

\n NextToken is sent when isTruncated is true, which means there\n are more buckets that can be listed. The next list requests to Amazon S3 can be continued with\n this NextToken. NextToken is obfuscated and is not a real\n key.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#ListStorageLensConfigurationEntry": { - "type": "structure", - "members": { - "Id": { - "target": "com.amazonaws.s3control#ConfigId", - "traits": { - "smithy.api#documentation": "

A container for the S3 Storage Lens configuration ID.

", - "smithy.api#required": {} - } - }, - "StorageLensArn": { - "target": "com.amazonaws.s3control#StorageLensArn", - "traits": { - "smithy.api#documentation": "

The ARN of the S3 Storage Lens configuration. This property is read-only.

", - "smithy.api#required": {} - } - }, - "HomeRegion": { - "target": "com.amazonaws.s3control#S3AWSRegion", - "traits": { - "smithy.api#documentation": "

A container for the S3 Storage Lens home Region. Your metrics data is stored and retained in\n your designated S3 Storage Lens home Region.

", - "smithy.api#required": {} - } - }, - "IsEnabled": { - "target": "com.amazonaws.s3control#IsEnabled", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

A container for whether the S3 Storage Lens configuration is enabled. This property is\n required.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Part of ListStorageLensConfigurationResult. Each entry includes the\n description of the S3 Storage Lens configuration, its home Region, whether it is enabled, its\n Amazon Resource Name (ARN), and config ID.

" - } - }, - "com.amazonaws.s3control#ListStorageLensConfigurations": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#ListStorageLensConfigurationsRequest" - }, - "output": { - "target": "com.amazonaws.s3control#ListStorageLensConfigurationsResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Gets a list of Amazon S3 Storage Lens configurations. For more information about S3 Storage Lens, see\n Assessing your\n storage activity and usage with Amazon S3 Storage Lens in the\n Amazon S3 User Guide.

\n \n

To use this action, you must have permission to perform the\n s3:ListStorageLensConfigurations action. For more information, see\n Setting permissions to\n use Amazon S3 Storage Lens in the Amazon S3 User Guide.

\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/storagelens", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken" - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#ListStorageLensConfigurationsRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the requester.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "NextToken": { - "target": "com.amazonaws.s3control#ContinuationToken", - "traits": { - "smithy.api#documentation": "

A pagination token to request the next page of results.

", - "smithy.api#httpQuery": "nextToken" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#ListStorageLensConfigurationsResult": { - "type": "structure", - "members": { - "NextToken": { - "target": "com.amazonaws.s3control#ContinuationToken", - "traits": { - "smithy.api#documentation": "

If the request produced more than the maximum number of S3 Storage Lens configuration results,\n you can pass this value into a subsequent request to retrieve the next page of\n results.

" - } - }, - "StorageLensConfigurationList": { - "target": "com.amazonaws.s3control#StorageLensConfigurationList", - "traits": { - "smithy.api#documentation": "

A list of S3 Storage Lens configurations.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "StorageLensConfiguration" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "ListStorageLensConfigurationResult" - } - }, - "com.amazonaws.s3control#ListStorageLensGroupEntry": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.s3control#StorageLensGroupName", - "traits": { - "smithy.api#documentation": "

\nContains the name of the Storage Lens group that exists in the specified home Region.\n

", - "smithy.api#required": {} - } - }, - "StorageLensGroupArn": { - "target": "com.amazonaws.s3control#StorageLensGroupArn", - "traits": { - "smithy.api#documentation": "

\nContains the Amazon Resource Name (ARN) of the Storage Lens group. This property is read-only.\n

", - "smithy.api#required": {} - } - }, - "HomeRegion": { - "target": "com.amazonaws.s3control#S3AWSRegion", - "traits": { - "smithy.api#documentation": "

\nContains the Amazon Web Services Region where the Storage Lens group was created.\n

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

\nEach entry contains a Storage Lens group that exists in the specified home Region.\n

" - } - }, - "com.amazonaws.s3control#ListStorageLensGroups": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#ListStorageLensGroupsRequest" - }, - "output": { - "target": "com.amazonaws.s3control#ListStorageLensGroupsResult" - }, - "traits": { - "smithy.api#documentation": "

\nLists all the Storage Lens groups in the specified home Region.\n

\n

To use this operation, you must have the permission to perform the\n s3:ListStorageLensGroups action. For more information about the required Storage Lens\n Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

\n

For information about Storage Lens groups errors, see List of Amazon S3 Storage\n Lens error codes.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/storagelensgroup", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "NextToken", - "outputToken": "NextToken" - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#ListStorageLensGroupsRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

\n The Amazon Web Services account ID that owns the Storage Lens groups.\n

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "NextToken": { - "target": "com.amazonaws.s3control#ContinuationToken", - "traits": { - "smithy.api#documentation": "

The token for the next set of results, or null if there are no more results.\n

", - "smithy.api#httpQuery": "nextToken" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#ListStorageLensGroupsResult": { - "type": "structure", - "members": { - "NextToken": { - "target": "com.amazonaws.s3control#ContinuationToken", - "traits": { - "smithy.api#documentation": "

\n If NextToken is returned, there are more Storage Lens groups results available. The value of NextToken is a\n unique pagination token for each page. Make the call again using the returned token to\n retrieve the next page. Keep all other arguments unchanged. Each pagination token expires\n after 24 hours.\n

" - } - }, - "StorageLensGroupList": { - "target": "com.amazonaws.s3control#StorageLensGroupList", - "traits": { - "smithy.api#documentation": "

\nThe list of Storage Lens groups that exist in the specified home Region.\n

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "StorageLensGroup" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#ListTagsForResource": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#ListTagsForResourceRequest" - }, - "output": { - "target": "com.amazonaws.s3control#ListTagsForResourceResult" - }, - "traits": { - "smithy.api#documentation": "

This operation allows you to list all of the tags for a specified resource. Each tag is\n a label consisting of a key and value. Tags can help you organize, track costs for, and\n control access to resources.

\n \n

This operation is only supported for the following Amazon S3 resources:

\n \n
\n
\n
Permissions
\n
\n

For Storage Lens groups and S3 Access Grants, you must have the\n s3:ListTagsForResource permission to use this operation.

\n

For more information about the required Storage Lens Groups permissions, see\n Setting account permissions to use S3 Storage Lens groups.

\n
\n
Directory bucket permissions
\n
\n

For directory buckets and access points for directory buckets, you must have the s3express:ListTagsForResource permission to use this operation. For more information about directory buckets policies and permissions, see Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com.

\n
\n
\n

For information about S3 Tagging errors, see List of Amazon S3\n Tagging error codes.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "GET", - "uri": "/v20180820/tags/{ResourceArn+}", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#ListTagsForResourceRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the resource owner.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "ResourceArn": { - "target": "com.amazonaws.s3control#S3ResourceArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the S3 resource that you want to list tags for. The\n tagged resource can be a directory bucket, S3 Storage Lens group or S3 Access Grants instance,\n registered location, or grant.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "ResourceArn" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#ListTagsForResourceResult": { - "type": "structure", - "members": { - "Tags": { - "target": "com.amazonaws.s3control#TagList", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services resource tags that are associated with the resource.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#Location": { - "type": "string" - }, - "com.amazonaws.s3control#MFA": { - "type": "string" - }, - "com.amazonaws.s3control#MFADelete": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3control#MFADeleteStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3control#ManifestPrefixString": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 512 - } - } - }, - "com.amazonaws.s3control#MatchAnyPrefix": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#Prefix", - "traits": { - "smithy.api#xmlName": "Prefix" - } - } - }, - "com.amazonaws.s3control#MatchAnySuffix": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#Suffix", - "traits": { - "smithy.api#xmlName": "Suffix" - } - } - }, - "com.amazonaws.s3control#MatchAnyTag": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#S3Tag", - "traits": { - "smithy.api#xmlName": "Tag" - } - } - }, - "com.amazonaws.s3control#MatchObjectAge": { - "type": "structure", - "members": { - "DaysGreaterThan": { - "target": "com.amazonaws.s3control#ObjectAgeValue", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

\nSpecifies the maximum object age in days. Must be a positive whole number, greater than the minimum object age and less than or equal to 2,147,483,647. \n

" - } - }, - "DaysLessThan": { - "target": "com.amazonaws.s3control#ObjectAgeValue", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

\nSpecifies the minimum object age in days. The value must be a positive whole number, greater than 0 and less than or equal to 2,147,483,647.\n

" - } - } - }, - "traits": { - "smithy.api#documentation": "

\n A filter condition that specifies the object age range of included objects in days. Only integers are supported.\n

" - } - }, - "com.amazonaws.s3control#MatchObjectSize": { - "type": "structure", - "members": { - "BytesGreaterThan": { - "target": "com.amazonaws.s3control#ObjectSizeValue", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

\nSpecifies the minimum object size in Bytes. The value must be a positive number, greater than 0 and less than 5 TB.\n

" - } - }, - "BytesLessThan": { - "target": "com.amazonaws.s3control#ObjectSizeValue", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

\nSpecifies the maximum object size in Bytes. The value must be a positive number, greater than the minimum object size and less than 5 TB.\n

" - } - } - }, - "traits": { - "smithy.api#documentation": "

\nA filter condition that specifies the object size range of included objects in bytes. Only integers are supported.\n

" - } - }, - "com.amazonaws.s3control#MaxLength1024String": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 1024 - } - } - }, - "com.amazonaws.s3control#MaxResults": { - "type": "integer", - "traits": { - "smithy.api#default": 0, - "smithy.api#range": { - "min": 0, - "max": 1000 - } - } - }, - "com.amazonaws.s3control#Metrics": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3control#MetricsStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether replication metrics are enabled.

", - "smithy.api#required": {} - } - }, - "EventThreshold": { - "target": "com.amazonaws.s3control#ReplicationTimeValue", - "traits": { - "smithy.api#documentation": "

A container that specifies the time threshold for emitting the\n s3:Replication:OperationMissedThreshold event.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container that specifies replication metrics-related settings.

" - } - }, - "com.amazonaws.s3control#MetricsStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3control#MinStorageBytesPercentage": { - "type": "double", - "traits": { - "smithy.api#range": { - "min": 0.1, - "max": 100 - } - } - }, - "com.amazonaws.s3control#Minutes": { - "type": "integer", - "traits": { - "smithy.api#default": 0 - } - }, - "com.amazonaws.s3control#MultiRegionAccessPointAlias": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 63 - }, - "smithy.api#pattern": "^[a-z][a-z0-9]*[.]mrap$" - } - }, - "com.amazonaws.s3control#MultiRegionAccessPointClientToken": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 64 - }, - "smithy.api#pattern": "^\\S+$" - } - }, - "com.amazonaws.s3control#MultiRegionAccessPointId": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 200 - }, - "smithy.api#pattern": "^[a-zA-Z0-9\\:.-]{3,200}$" - } - }, - "com.amazonaws.s3control#MultiRegionAccessPointName": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 50 - }, - "smithy.api#pattern": "^[a-z0-9][-a-z0-9]{1,48}[a-z0-9]$" - } - }, - "com.amazonaws.s3control#MultiRegionAccessPointPolicyDocument": { - "type": "structure", - "members": { - "Established": { - "target": "com.amazonaws.s3control#EstablishedMultiRegionAccessPointPolicy", - "traits": { - "smithy.api#documentation": "

The last established policy for the Multi-Region Access Point.

" - } - }, - "Proposed": { - "target": "com.amazonaws.s3control#ProposedMultiRegionAccessPointPolicy", - "traits": { - "smithy.api#documentation": "

The proposed policy for the Multi-Region Access Point.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The Multi-Region Access Point access control policy.

\n

When you update the policy, the update is first listed as the proposed policy. After the\n update is finished and all Regions have been updated, the proposed policy is listed as the\n established policy. If both policies have the same version number, the proposed policy is\n the established policy.

" - } - }, - "com.amazonaws.s3control#MultiRegionAccessPointRegionalResponse": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.s3control#RegionName", - "traits": { - "smithy.api#documentation": "

The name of the Region in the Multi-Region Access Point.

" - } - }, - "RequestStatus": { - "target": "com.amazonaws.s3control#AsyncRequestStatus", - "traits": { - "smithy.api#documentation": "

The current status of the Multi-Region Access Point in this Region.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Status information for a single Multi-Region Access Point Region.

" - } - }, - "com.amazonaws.s3control#MultiRegionAccessPointRegionalResponseList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointRegionalResponse", - "traits": { - "smithy.api#xmlName": "Region" - } - } - }, - "com.amazonaws.s3control#MultiRegionAccessPointReport": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the Multi-Region Access Point.

" - } - }, - "Alias": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointAlias", - "traits": { - "smithy.api#documentation": "

The alias for the Multi-Region Access Point. For more information about the distinction between the name\n and the alias of an Multi-Region Access Point, see Rules for naming Amazon S3 Multi-Region Access Points.

" - } - }, - "CreatedAt": { - "target": "com.amazonaws.s3control#CreationTimestamp", - "traits": { - "smithy.api#documentation": "

When the Multi-Region Access Point create request was received.

" - } - }, - "PublicAccessBlock": { - "target": "com.amazonaws.s3control#PublicAccessBlockConfiguration" - }, - "Status": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointStatus", - "traits": { - "smithy.api#documentation": "

The current status of the Multi-Region Access Point.

\n

\n CREATING and DELETING are temporary states that exist while\n the request is propagating and being completed. If a Multi-Region Access Point has a status of\n PARTIALLY_CREATED, you can retry creation or send a request to delete the\n Multi-Region Access Point. If a Multi-Region Access Point has a status of PARTIALLY_DELETED, you can retry a delete\n request to finish the deletion of the Multi-Region Access Point.

" - } - }, - "Regions": { - "target": "com.amazonaws.s3control#RegionReportList", - "traits": { - "smithy.api#documentation": "

A collection of the Regions and buckets associated with the Multi-Region Access Point.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A collection of statuses for a Multi-Region Access Point in the various Regions it supports.

" - } - }, - "com.amazonaws.s3control#MultiRegionAccessPointReportList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointReport", - "traits": { - "smithy.api#xmlName": "AccessPoint" - } - } - }, - "com.amazonaws.s3control#MultiRegionAccessPointRoute": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the Amazon S3 bucket for which you'll submit a routing configuration change.\n Either the Bucket or the Region value must be provided. If both\n are provided, the bucket must be in the specified Region.

" - } - }, - "Region": { - "target": "com.amazonaws.s3control#RegionName", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services Region to which you'll be submitting a routing configuration change. Either\n the Bucket or the Region value must be provided. If both are\n provided, the bucket must be in the specified Region.

" - } - }, - "TrafficDialPercentage": { - "target": "com.amazonaws.s3control#TrafficDialPercentage", - "traits": { - "smithy.api#documentation": "

The traffic state for the specified bucket or Amazon Web Services Region.

\n

A value of 0 indicates a passive state, which means that no new traffic\n will be routed to the Region.

\n

A value of 100 indicates an active state, which means that traffic will be\n routed to the specified Region.

\n

When the routing configuration for a Region is changed from active to passive, any\n in-progress operations (uploads, copies, deletes, and so on) to the formerly active Region\n will continue to run to until a final success or failure status is reached.

\n

If all Regions in the routing configuration are designated as passive, you'll receive an\n InvalidRequest error.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A structure for a Multi-Region Access Point that indicates where Amazon S3 traffic can be routed. Routes can be\n either active or passive. Active routes can process Amazon S3 requests through the Multi-Region Access Point, but\n passive routes are not eligible to process Amazon S3 requests.

\n

Each route contains the Amazon S3 bucket name and the Amazon Web Services Region that the bucket is located\n in. The route also includes the TrafficDialPercentage value, which shows\n whether the bucket and Region are active (indicated by a value of 100) or\n passive (indicated by a value of 0).

" - } - }, - "com.amazonaws.s3control#MultiRegionAccessPointStatus": { - "type": "enum", - "members": { - "READY": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "READY" - } - }, - "INCONSISTENT_ACROSS_REGIONS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "INCONSISTENT_ACROSS_REGIONS" - } - }, - "CREATING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CREATING" - } - }, - "PARTIALLY_CREATED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "PARTIALLY_CREATED" - } - }, - "PARTIALLY_DELETED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "PARTIALLY_DELETED" - } - }, - "DELETING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DELETING" - } - } - } - }, - "com.amazonaws.s3control#MultiRegionAccessPointsAsyncResponse": { - "type": "structure", - "members": { - "Regions": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointRegionalResponseList", - "traits": { - "smithy.api#documentation": "

A collection of status information for the different Regions that a Multi-Region Access Point\n supports.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The Multi-Region Access Point details that are returned when querying about an asynchronous request.

" - } - }, - "com.amazonaws.s3control#NetworkOrigin": { - "type": "enum", - "members": { - "Internet": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Internet" - } - }, - "VPC": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "VPC" - } - } - } - }, - "com.amazonaws.s3control#NoSuchPublicAccessBlockConfiguration": { - "type": "structure", - "members": { - "Message": { - "target": "com.amazonaws.s3control#NoSuchPublicAccessBlockConfigurationMessage" - } - }, - "traits": { - "smithy.api#documentation": "

Amazon S3 throws this exception if you make a GetPublicAccessBlock request\n against an account that doesn't have a PublicAccessBlockConfiguration\n set.

", - "smithy.api#error": "client", - "smithy.api#httpError": 404 - } - }, - "com.amazonaws.s3control#NoSuchPublicAccessBlockConfigurationMessage": { - "type": "string" - }, - "com.amazonaws.s3control#NonEmptyKmsKeyArnString": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 2000 - }, - "smithy.api#pattern": "^arn:aws[a-zA-Z0-9-]*:kms:[a-z0-9-]+:[0-9]{12}:key/[a-zA-Z0-9-]+$" - } - }, - "com.amazonaws.s3control#NonEmptyMaxLength1024String": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1024 - } - } - }, - "com.amazonaws.s3control#NonEmptyMaxLength1024StringList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String" - } - }, - "com.amazonaws.s3control#NonEmptyMaxLength2048String": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 2048 - } - } - }, - "com.amazonaws.s3control#NonEmptyMaxLength256String": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 256 - } - } - }, - "com.amazonaws.s3control#NonEmptyMaxLength64String": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 64 - } - } - }, - "com.amazonaws.s3control#NoncurrentVersionCount": { - "type": "integer", - "traits": { - "smithy.api#default": 0 - } - }, - "com.amazonaws.s3control#NoncurrentVersionExpiration": { - "type": "structure", - "members": { - "NoncurrentDays": { - "target": "com.amazonaws.s3control#Days", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

Specifies the number of days an object is noncurrent before Amazon S3 can perform the\n associated action. For information about the noncurrent days calculations, see How\n Amazon S3 Calculates When an Object Became Noncurrent in the\n Amazon S3 User Guide.

" - } - }, - "NewerNoncurrentVersions": { - "target": "com.amazonaws.s3control#NoncurrentVersionCount", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

Specifies how many noncurrent versions S3 on Outposts will retain. If there are this many\n more recent noncurrent versions, S3 on Outposts will take the associated action. For more\n information about noncurrent versions, see Lifecycle configuration\n elements in the Amazon S3 User Guide.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container of the noncurrent version expiration.

" - } - }, - "com.amazonaws.s3control#NoncurrentVersionTransition": { - "type": "structure", - "members": { - "NoncurrentDays": { - "target": "com.amazonaws.s3control#Days", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

Specifies the number of days an object is noncurrent before Amazon S3 can perform the\n associated action. For information about the noncurrent days calculations, see How\n Amazon S3 Calculates How Long an Object Has Been Noncurrent in the\n Amazon S3 User Guide.

" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3control#TransitionStorageClass", - "traits": { - "smithy.api#documentation": "

The class of storage used to store the object.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container for the noncurrent version transition.

" - } - }, - "com.amazonaws.s3control#NoncurrentVersionTransitionList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#NoncurrentVersionTransition", - "traits": { - "smithy.api#xmlName": "NoncurrentVersionTransition" - } - } - }, - "com.amazonaws.s3control#NotFoundException": { - "type": "structure", - "members": { - "Message": { - "target": "com.amazonaws.s3control#ExceptionMessage" - } - }, - "traits": { - "smithy.api#documentation": "

", - "smithy.api#error": "client" - } - }, - "com.amazonaws.s3control#NotSSEFilter": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

A filter that returns objects that aren't server-side encrypted.

" - } - }, - "com.amazonaws.s3control#ObjectAgeValue": { - "type": "integer", - "traits": { - "smithy.api#default": 0 - } - }, - "com.amazonaws.s3control#ObjectCreationTime": { - "type": "timestamp" - }, - "com.amazonaws.s3control#ObjectEncryptionFilter": { - "type": "union", - "members": { - "SSES3": { - "target": "com.amazonaws.s3control#SSES3Filter", - "traits": { - "smithy.api#documentation": "

Filters for objects that are encrypted by server-side encryption with Amazon S3 managed keys (SSE-S3).

", - "smithy.api#xmlName": "SSE-S3" - } - }, - "SSEKMS": { - "target": "com.amazonaws.s3control#SSEKMSFilter", - "traits": { - "smithy.api#documentation": "

Filters for objects that are encrypted by server-side encryption with Amazon Web Services Key Management Service (KMS) keys (SSE-KMS).

", - "smithy.api#xmlName": "SSE-KMS" - } - }, - "DSSEKMS": { - "target": "com.amazonaws.s3control#DSSEKMSFilter", - "traits": { - "smithy.api#documentation": "

Filters for objects that are encrypted by dual-layer server-side encryption with Amazon Web Services Key Management\n Service (KMS) keys (DSSE-KMS).

", - "smithy.api#xmlName": "DSSE-KMS" - } - }, - "SSEC": { - "target": "com.amazonaws.s3control#SSECFilter", - "traits": { - "smithy.api#documentation": "

Filters for objects that are encrypted by server-side encryption with customer-provided keys (SSE-C).

", - "smithy.api#xmlName": "SSE-C" - } - }, - "NOTSSE": { - "target": "com.amazonaws.s3control#NotSSEFilter", - "traits": { - "smithy.api#documentation": "

Filters for objects that are not encrypted by server-side encryption.

", - "smithy.api#xmlName": "NOT-SSE" - } - } - }, - "traits": { - "smithy.api#documentation": "

An optional filter for the \n S3JobManifestGenerator that identifies the subset of objects by encryption type. \n This filter is used to create an object list for S3 Batch Operations jobs. If provided, this filter will generate an object list \n that only includes objects with the specified encryption type.

" - } - }, - "com.amazonaws.s3control#ObjectEncryptionFilterList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#ObjectEncryptionFilter", - "traits": { - "smithy.api#xmlName": "ObjectEncryption" - } - }, - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1 - } - } - }, - "com.amazonaws.s3control#ObjectLambdaAccessPoint": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the Object Lambda Access Point.

", - "smithy.api#required": {} - } - }, - "ObjectLambdaAccessPointArn": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointArn", - "traits": { - "smithy.api#documentation": "

Specifies the ARN for the Object Lambda Access Point.

" - } - }, - "Alias": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointAlias", - "traits": { - "smithy.api#documentation": "

The alias of the Object Lambda Access Point.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

An access point with an attached Lambda function used to access transformed data from an Amazon S3\n bucket.

" - } - }, - "com.amazonaws.s3control#ObjectLambdaAccessPointAlias": { - "type": "structure", - "members": { - "Value": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointAliasValue", - "traits": { - "smithy.api#documentation": "

The alias value of the Object Lambda Access Point.

" - } - }, - "Status": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointAliasStatus", - "traits": { - "smithy.api#documentation": "

The status of the Object Lambda Access Point alias. If the status is PROVISIONING, the Object Lambda Access Point\n is provisioning the alias and the alias is not ready for use yet. If the status is\n READY, the Object Lambda Access Point alias is successfully provisioned and ready for\n use.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The alias of an Object Lambda Access Point. For more information, see How to use a\n bucket-style alias for your S3 bucket Object Lambda Access Point.

" - } - }, - "com.amazonaws.s3control#ObjectLambdaAccessPointAliasStatus": { - "type": "enum", - "members": { - "PROVISIONING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "PROVISIONING" - } - }, - "READY": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "READY" - } - } - }, - "traits": { - "smithy.api#length": { - "min": 2, - "max": 16 - } - } - }, - "com.amazonaws.s3control#ObjectLambdaAccessPointAliasValue": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 3, - "max": 63 - }, - "smithy.api#pattern": "^[0-9a-z\\\\-]{3,63}$" - } - }, - "com.amazonaws.s3control#ObjectLambdaAccessPointArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 2048 - }, - "smithy.api#pattern": "^arn:[^:]+:s3-object-lambda:[^:]*:\\d{12}:accesspoint/" - } - }, - "com.amazonaws.s3control#ObjectLambdaAccessPointList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPoint", - "traits": { - "smithy.api#xmlName": "ObjectLambdaAccessPoint" - } - } - }, - "com.amazonaws.s3control#ObjectLambdaAccessPointName": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 3, - "max": 45 - }, - "smithy.api#pattern": "^[a-z0-9]([a-z0-9\\-]*[a-z0-9])?$" - } - }, - "com.amazonaws.s3control#ObjectLambdaAllowedFeature": { - "type": "enum", - "members": { - "GetObjectRange": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GetObject-Range" - } - }, - "GetObjectPartNumber": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GetObject-PartNumber" - } - }, - "HeadObjectRange": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "HeadObject-Range" - } - }, - "HeadObjectPartNumber": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "HeadObject-PartNumber" - } - } - } - }, - "com.amazonaws.s3control#ObjectLambdaAllowedFeaturesList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#ObjectLambdaAllowedFeature", - "traits": { - "smithy.api#xmlName": "AllowedFeature" - } - } - }, - "com.amazonaws.s3control#ObjectLambdaConfiguration": { - "type": "structure", - "members": { - "SupportingAccessPoint": { - "target": "com.amazonaws.s3control#ObjectLambdaSupportingAccessPointArn", - "traits": { - "smithy.api#documentation": "

Standard access point associated with the Object Lambda Access Point.

", - "smithy.api#required": {} - } - }, - "CloudWatchMetricsEnabled": { - "target": "com.amazonaws.s3control#Boolean", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

A container for whether the CloudWatch metrics configuration is enabled.

" - } - }, - "AllowedFeatures": { - "target": "com.amazonaws.s3control#ObjectLambdaAllowedFeaturesList", - "traits": { - "smithy.api#documentation": "

A container for allowed features. Valid inputs are GetObject-Range,\n GetObject-PartNumber, HeadObject-Range, and\n HeadObject-PartNumber.

" - } - }, - "TransformationConfigurations": { - "target": "com.amazonaws.s3control#ObjectLambdaTransformationConfigurationsList", - "traits": { - "smithy.api#documentation": "

A container for transformation configurations for an Object Lambda Access Point.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A configuration used when creating an Object Lambda Access Point.

" - } - }, - "com.amazonaws.s3control#ObjectLambdaContentTransformation": { - "type": "union", - "members": { - "AwsLambda": { - "target": "com.amazonaws.s3control#AwsLambdaTransformation", - "traits": { - "smithy.api#documentation": "

A container for an Lambda function.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for AwsLambdaTransformation.

" - } - }, - "com.amazonaws.s3control#ObjectLambdaPolicy": { - "type": "string" - }, - "com.amazonaws.s3control#ObjectLambdaSupportingAccessPointArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 2048 - }, - "smithy.api#pattern": "^arn:[^:]+:s3:[^:]*:\\d{12}:accesspoint/" - } - }, - "com.amazonaws.s3control#ObjectLambdaTransformationConfiguration": { - "type": "structure", - "members": { - "Actions": { - "target": "com.amazonaws.s3control#ObjectLambdaTransformationConfigurationActionsList", - "traits": { - "smithy.api#documentation": "

A container for the action of an Object Lambda Access Point configuration. Valid inputs are\n GetObject, ListObjects, HeadObject, and\n ListObjectsV2.

", - "smithy.api#required": {} - } - }, - "ContentTransformation": { - "target": "com.amazonaws.s3control#ObjectLambdaContentTransformation", - "traits": { - "smithy.api#documentation": "

A container for the content transformation of an Object Lambda Access Point configuration.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A configuration used when creating an Object Lambda Access Point transformation.

" - } - }, - "com.amazonaws.s3control#ObjectLambdaTransformationConfigurationAction": { - "type": "enum", - "members": { - "GetObject": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GetObject" - } - }, - "HeadObject": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "HeadObject" - } - }, - "ListObjects": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ListObjects" - } - }, - "ListObjectsV2": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ListObjectsV2" - } - } - } - }, - "com.amazonaws.s3control#ObjectLambdaTransformationConfigurationActionsList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#ObjectLambdaTransformationConfigurationAction", - "traits": { - "smithy.api#xmlName": "Action" - } - } - }, - "com.amazonaws.s3control#ObjectLambdaTransformationConfigurationsList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#ObjectLambdaTransformationConfiguration", - "traits": { - "smithy.api#xmlName": "TransformationConfiguration" - } - } - }, - "com.amazonaws.s3control#ObjectLockEnabledForBucket": { - "type": "boolean", - "traits": { - "smithy.api#default": false - } - }, - "com.amazonaws.s3control#ObjectSizeGreaterThanBytes": { - "type": "long", - "traits": { - "smithy.api#default": 0 - } - }, - "com.amazonaws.s3control#ObjectSizeLessThanBytes": { - "type": "long", - "traits": { - "smithy.api#default": 0 - } - }, - "com.amazonaws.s3control#ObjectSizeValue": { - "type": "long", - "traits": { - "smithy.api#default": 0 - } - }, - "com.amazonaws.s3control#OperationName": { - "type": "enum", - "members": { - "LambdaInvoke": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "LambdaInvoke" - } - }, - "S3PutObjectCopy": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "S3PutObjectCopy" - } - }, - "S3PutObjectAcl": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "S3PutObjectAcl" - } - }, - "S3PutObjectTagging": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "S3PutObjectTagging" - } - }, - "S3DeleteObjectTagging": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "S3DeleteObjectTagging" - } - }, - "S3InitiateRestoreObject": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "S3InitiateRestoreObject" - } - }, - "S3PutObjectLegalHold": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "S3PutObjectLegalHold" - } - }, - "S3PutObjectRetention": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "S3PutObjectRetention" - } - }, - "S3ReplicateObject": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "S3ReplicateObject" - } - }, - "S3ComputeObjectChecksum": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "S3ComputeObjectChecksum" - } - } - } - }, - "com.amazonaws.s3control#Organization": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 12, - "max": 34 - }, - "smithy.api#pattern": "^o-[a-z0-9]{10,32}$" - } - }, - "com.amazonaws.s3control#OutputSchemaVersion": { - "type": "enum", - "members": { - "V_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "V_1" - } - } - } - }, - "com.amazonaws.s3control#OwnerOverride": { - "type": "enum", - "members": { - "Destination": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Destination" - } - } - } - }, - "com.amazonaws.s3control#Permission": { - "type": "enum", - "members": { - "READ": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "READ" - } - }, - "WRITE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "WRITE" - } - }, - "READWRITE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "READWRITE" - } - } - } - }, - "com.amazonaws.s3control#Policy": { - "type": "string" - }, - "com.amazonaws.s3control#PolicyDocument": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 350000 - } - } - }, - "com.amazonaws.s3control#PolicyStatus": { - "type": "structure", - "members": { - "IsPublic": { - "target": "com.amazonaws.s3control#IsPublic", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

", - "smithy.api#xmlName": "IsPublic" - } - } - }, - "traits": { - "smithy.api#documentation": "

Indicates whether this access point policy is public. For more information about how Amazon S3\n evaluates policies to determine whether they are public, see The Meaning of \"Public\" in the Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3control#Prefix": { - "type": "string" - }, - "com.amazonaws.s3control#PrefixLevel": { - "type": "structure", - "members": { - "StorageMetrics": { - "target": "com.amazonaws.s3control#PrefixLevelStorageMetrics", - "traits": { - "smithy.api#documentation": "

A container for the prefix-level storage metrics for S3 Storage Lens.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for the prefix-level configuration.

" - } - }, - "com.amazonaws.s3control#PrefixLevelStorageMetrics": { - "type": "structure", - "members": { - "IsEnabled": { - "target": "com.amazonaws.s3control#IsEnabled", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

A container for whether prefix-level storage metrics are enabled.

" - } - }, - "SelectionCriteria": { - "target": "com.amazonaws.s3control#SelectionCriteria" - } - }, - "traits": { - "smithy.api#documentation": "

A container for the prefix-level storage metrics for S3 Storage Lens.

" - } - }, - "com.amazonaws.s3control#PrefixesList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#Prefix", - "traits": { - "smithy.api#xmlName": "Prefix" - } - } - }, - "com.amazonaws.s3control#Priority": { - "type": "integer", - "traits": { - "smithy.api#default": 0 - } - }, - "com.amazonaws.s3control#Privilege": { - "type": "enum", - "members": { - "Minimal": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Minimal" - } - }, - "Default": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Default" - } - } - } - }, - "com.amazonaws.s3control#ProposedMultiRegionAccessPointPolicy": { - "type": "structure", - "members": { - "Policy": { - "target": "com.amazonaws.s3control#Policy", - "traits": { - "smithy.api#documentation": "

The details of the proposed policy.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The proposed access control policy for the Multi-Region Access Point.

\n

When you update the policy, the update is first listed as the proposed policy. After the\n update is finished and all Regions have been updated, the proposed policy is listed as the\n established policy. If both policies have the same version number, the proposed policy is\n the established policy.

" - } - }, - "com.amazonaws.s3control#PublicAccessBlockConfiguration": { - "type": "structure", - "members": { - "BlockPublicAcls": { - "target": "com.amazonaws.s3control#Setting", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

Specifies whether Amazon S3 should block public access control lists (ACLs) for buckets in\n this account. Setting this element to TRUE causes the following\n behavior:

\n
    \n
  • \n

    \n PutBucketAcl and PutObjectAcl calls fail if the\n specified ACL is public.

    \n
  • \n
  • \n

    PUT Object calls fail if the request includes a public ACL.

    \n
  • \n
  • \n

    PUT Bucket calls fail if the request includes a public ACL.

    \n
  • \n
\n

Enabling this setting doesn't affect existing policies or ACLs.

\n

This property is not supported for Amazon S3 on Outposts.

", - "smithy.api#xmlName": "BlockPublicAcls" - } - }, - "IgnorePublicAcls": { - "target": "com.amazonaws.s3control#Setting", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

Specifies whether Amazon S3 should ignore public ACLs for buckets in this account. Setting\n this element to TRUE causes Amazon S3 to ignore all public ACLs on buckets in this\n account and any objects that they contain.

\n

Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't\n prevent new public ACLs from being set.

\n

This property is not supported for Amazon S3 on Outposts.

", - "smithy.api#xmlName": "IgnorePublicAcls" - } - }, - "BlockPublicPolicy": { - "target": "com.amazonaws.s3control#Setting", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

Specifies whether Amazon S3 should block public bucket policies for buckets in this account.\n Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy\n if the specified bucket policy allows public access.

\n

Enabling this setting doesn't affect existing bucket policies.

\n

This property is not supported for Amazon S3 on Outposts.

", - "smithy.api#xmlName": "BlockPublicPolicy" - } - }, - "RestrictPublicBuckets": { - "target": "com.amazonaws.s3control#Setting", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

Specifies whether Amazon S3 should restrict public bucket policies for buckets in this\n account. Setting this element to TRUE restricts access to buckets with public\n policies to only Amazon Web Services service principals and authorized users within this\n account.

\n

Enabling this setting doesn't affect previously stored bucket policies, except that\n public and cross-account access within any public bucket policy, including non-public\n delegation to specific accounts, is blocked.

\n

This property is not supported for Amazon S3 on Outposts.

", - "smithy.api#xmlName": "RestrictPublicBuckets" - } - } - }, - "traits": { - "smithy.api#documentation": "

The PublicAccessBlock configuration that you want to apply to this Amazon S3\n account. You can enable the configuration options in any combination. For more information\n about when Amazon S3 considers a bucket or object public, see The Meaning of \"Public\" in the Amazon S3 User Guide.

\n

This data type is not supported for Amazon S3 on Outposts.

" - } - }, - "com.amazonaws.s3control#PublicAccessBlockEnabled": { - "type": "boolean", - "traits": { - "smithy.api#default": false - } - }, - "com.amazonaws.s3control#PutAccessGrantsInstanceResourcePolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#PutAccessGrantsInstanceResourcePolicyRequest" - }, - "output": { - "target": "com.amazonaws.s3control#PutAccessGrantsInstanceResourcePolicyResult" - }, - "traits": { - "smithy.api#documentation": "

Updates the resource policy of the S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:PutAccessGrantsInstanceResourcePolicy\n permission to use this operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/accessgrantsinstance/resourcepolicy", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#PutAccessGrantsInstanceResourcePolicyRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Policy": { - "target": "com.amazonaws.s3control#PolicyDocument", - "traits": { - "smithy.api#documentation": "

The resource policy of the S3 Access Grants instance that you are updating.

", - "smithy.api#required": {} - } - }, - "Organization": { - "target": "com.amazonaws.s3control#Organization", - "traits": { - "smithy.api#documentation": "

The Organization of the resource policy of the S3 Access Grants instance.

" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#PutAccessGrantsInstanceResourcePolicyResult": { - "type": "structure", - "members": { - "Policy": { - "target": "com.amazonaws.s3control#PolicyDocument", - "traits": { - "smithy.api#documentation": "

The updated resource policy of the S3 Access Grants instance.

" - } - }, - "Organization": { - "target": "com.amazonaws.s3control#Organization", - "traits": { - "smithy.api#documentation": "

The Organization of the resource policy of the S3 Access Grants instance.

" - } - }, - "CreatedAt": { - "target": "com.amazonaws.s3control#CreationTimestamp", - "traits": { - "smithy.api#documentation": "

The date and time when you created the S3 Access Grants instance resource policy.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#PutAccessPointConfigurationForObjectLambda": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#PutAccessPointConfigurationForObjectLambdaRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Replaces configuration for an Object Lambda Access Point.

\n

The following actions are related to\n PutAccessPointConfigurationForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/accesspointforobjectlambda/{Name}/configuration", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#PutAccessPointConfigurationForObjectLambdaRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the Object Lambda Access Point.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "Configuration": { - "target": "com.amazonaws.s3control#ObjectLambdaConfiguration", - "traits": { - "smithy.api#documentation": "

Object Lambda Access Point configuration document.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#PutAccessPointPolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#PutAccessPointPolicyRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Associates an access policy with the specified access point. Each access point can have only one policy,\n so a request made to this API replaces any existing policy associated with the specified\n access point.

\n

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to PutAccessPointPolicy:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/accesspoint/{Name}/policy", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#PutAccessPointPolicyForObjectLambda": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#PutAccessPointPolicyForObjectLambdaRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Creates or replaces resource policy for an Object Lambda Access Point. For an example policy, see Creating Object Lambda Access Points in the Amazon S3 User Guide.

\n

The following actions are related to\n PutAccessPointPolicyForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/accesspointforobjectlambda/{Name}/policy", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#PutAccessPointPolicyForObjectLambdaRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the Object Lambda Access Point.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "Policy": { - "target": "com.amazonaws.s3control#ObjectLambdaPolicy", - "traits": { - "smithy.api#documentation": "

Object Lambda Access Point resource policy document.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#PutAccessPointPolicyRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID for owner of the bucket associated with the specified access point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#AccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the access point that you want to associate with the specified policy.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the access point accessed in the format arn:aws:s3-outposts:::outpost//accesspoint/. For example, to access the access point reports-ap through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/accesspoint/reports-ap. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccessPointName" - } - } - }, - "Policy": { - "target": "com.amazonaws.s3control#Policy", - "traits": { - "smithy.api#documentation": "

The policy that you want to apply to the specified access point. For more information about access point\n policies, see Managing data access with Amazon S3\n access points or Managing access to\n shared datasets in directory buckets with access points in the\n Amazon S3 User Guide.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#PutAccessPointScope": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#PutAccessPointScopeRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Creates or replaces the access point scope for a directory bucket. You can use the access point\n scope to restrict access to specific prefixes, API operations, or a combination of\n both.

\n \n

You can specify any amount of prefixes, but the total length of characters of all\n prefixes must be less than 256 bytes in size.

\n
\n

To use this operation, you must have the permission to perform the\n s3express:PutAccessPointScope\n action.

\n

For information about REST API errors, see REST error responses.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/accesspoint/{Name}/scope", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - }, - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#PutAccessPointScopeRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID that owns the access point with scope that you want to create or replace.\n

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Name": { - "target": "com.amazonaws.s3control#AccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the access point with the scope that you want to create or replace.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccessPointName" - } - } - }, - "Scope": { - "target": "com.amazonaws.s3control#Scope", - "traits": { - "smithy.api#documentation": "

Object prefixes, API operations, or a combination of both.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#PutBucketLifecycleConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#PutBucketLifecycleConfigurationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This action puts a lifecycle configuration to an Amazon S3 on Outposts bucket. To put a\n lifecycle configuration to an S3 bucket, see PutBucketLifecycleConfiguration in the Amazon S3 API Reference.\n

\n
\n

Creates a new lifecycle configuration for the S3 on Outposts bucket or replaces an\n existing lifecycle configuration. Outposts buckets only support lifecycle configurations\n that delete/expire objects after a certain period of time and abort incomplete multipart\n uploads.

\n

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to\n PutBucketLifecycleConfiguration:

\n ", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/bucket/{Bucket}/lifecycleconfiguration", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#PutBucketLifecycleConfigurationRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket for which to set the configuration.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "LifecycleConfiguration": { - "target": "com.amazonaws.s3control#LifecycleConfiguration", - "traits": { - "smithy.api#documentation": "

Container for lifecycle rules. You can add as many as 1,000 rules.

", - "smithy.api#httpPayload": {}, - "smithy.api#xmlName": "LifecycleConfiguration" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#PutBucketPolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#PutBucketPolicyRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This action puts a bucket policy to an Amazon S3 on Outposts bucket. To put a policy on an\n S3 bucket, see PutBucketPolicy in the\n Amazon S3 API Reference.

\n
\n

Applies an Amazon S3 bucket policy to an Outposts bucket. For more information, see Using\n Amazon S3 on Outposts in the Amazon S3 User Guide.

\n

If you are using an identity other than the root user of the Amazon Web Services account that owns the\n Outposts bucket, the calling identity must have the PutBucketPolicy\n permissions on the specified Outposts bucket and belong to the bucket owner's account in\n order to use this action.

\n

If you don't have PutBucketPolicy permissions, Amazon S3 returns a 403\n Access Denied error. If you have the correct permissions, but you're not using an\n identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not\n Allowed error.

\n \n

As a security precaution, the root user of the Amazon Web Services account that owns a bucket can\n always use this action, even if the policy explicitly denies the root user the ability\n to perform this action.

\n
\n

For more information about bucket policies, see Using Bucket Policies and User\n Policies.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to PutBucketPolicy:

\n ", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/bucket/{Bucket}/policy", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#PutBucketPolicyRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

Specifies the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ConfirmRemoveSelfBucketAccess": { - "target": "com.amazonaws.s3control#ConfirmRemoveSelfBucketAccess", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

Set this parameter to true to confirm that you want to remove your permissions to change\n this bucket policy in the future.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", - "smithy.api#httpHeader": "x-amz-confirm-remove-self-bucket-access" - } - }, - "Policy": { - "target": "com.amazonaws.s3control#Policy", - "traits": { - "smithy.api#documentation": "

The bucket policy as a JSON document.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#PutBucketReplication": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#PutBucketReplicationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This action creates an Amazon S3 on Outposts bucket's replication configuration. To create\n an S3 bucket's replication configuration, see PutBucketReplication\n in the Amazon S3 API Reference.

\n
\n

Creates a replication configuration or replaces an existing one. For information about\n S3 replication on Outposts configuration, see Replicating objects for\n S3 on Outposts in the Amazon S3 User Guide.

\n \n

It can take a while to propagate PUT or DELETE requests for\n a replication configuration to all S3 on Outposts systems. Therefore, the replication\n configuration that's returned by a GET request soon after a\n PUT or DELETE request might return a more recent result\n than what's on the Outpost. If an Outpost is offline, the delay in updating the\n replication configuration on that Outpost can be significant.

\n
\n

Specify the replication configuration in the request body. In the replication\n configuration, you provide the following information:

\n
    \n
  • \n

    The name of the destination bucket or buckets where you want S3 on Outposts to\n replicate objects

    \n
  • \n
  • \n

    The Identity and Access Management (IAM) role that S3 on Outposts can assume to replicate objects on\n your behalf

    \n
  • \n
  • \n

    Other relevant information, such as replication rules

    \n
  • \n
\n

A replication configuration must include at least one rule and can contain a maximum of\n 100. Each rule identifies a subset of objects to replicate by filtering the objects in the\n source Outposts bucket. To choose additional subsets of objects to replicate, add a rule\n for each subset.

\n

To specify a subset of the objects in the source Outposts bucket to apply a replication\n rule to, add the Filter element as a child of the Rule element.\n You can filter objects based on an object key prefix, one or more object tags, or both.\n When you add the Filter element in the configuration, you must also add the\n following elements: DeleteMarkerReplication, Status, and\n Priority.

\n

Using PutBucketReplication on Outposts requires that both the source and\n destination buckets must have versioning enabled. For information about enabling versioning\n on a bucket, see Managing S3 Versioning\n for your S3 on Outposts bucket.

\n

For information about S3 on Outposts replication failure reasons, see Replication failure reasons in the Amazon S3 User Guide.

\n

\n Handling Replication of Encrypted Objects\n

\n

Outposts buckets are encrypted at all times. All the objects in the source Outposts\n bucket are encrypted and can be replicated. Also, all the replicas in the destination\n Outposts bucket are encrypted with the same encryption key as the objects in the source\n Outposts bucket.

\n

\n Permissions\n

\n

To create a PutBucketReplication request, you must have\n s3-outposts:PutReplicationConfiguration permissions for the bucket. The\n Outposts bucket owner has this permission by default and can grant it to others. For more\n information about permissions, see Setting up IAM with\n S3 on Outposts and Managing access to\n S3 on Outposts buckets.

\n \n

To perform this operation, the user or role must also have the\n iam:CreateRole and iam:PassRole permissions. For more\n information, see Granting a user permissions to\n pass a role to an Amazon Web Services service.

\n
\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following operations are related to PutBucketReplication:

\n ", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/bucket/{Bucket}/replication", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#PutBucketReplicationRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

Specifies the S3 on Outposts bucket to set the configuration for.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ReplicationConfiguration": { - "target": "com.amazonaws.s3control#ReplicationConfiguration", - "traits": { - "smithy.api#documentation": "

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "ReplicationConfiguration" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#PutBucketTagging": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#PutBucketTaggingRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This action puts tags on an Amazon S3 on Outposts bucket. To put tags on an S3 bucket, see\n PutBucketTagging in the Amazon S3 API Reference.

\n
\n

Sets the tags for an S3 on Outposts bucket. For more information, see Using\n Amazon S3 on Outposts in the Amazon S3 User Guide.

\n

Use tags to organize your Amazon Web Services bill to reflect your own cost structure. To do this,\n sign up to get your Amazon Web Services account bill with tag key values included. Then, to see the cost\n of combined resources, organize your billing information according to resources with the\n same tag key values. For example, you can tag several resources with a specific application\n name, and then organize your billing information to see the total cost of that application\n across several services. For more information, see Cost allocation and\n tagging.

\n \n

Within a bucket, if you add a tag that has the same key as an existing tag, the new\n value overwrites the old value. For more information, see Using cost allocation in Amazon S3\n bucket tags.

\n
\n

To use this action, you must have permissions to perform the\n s3-outposts:PutBucketTagging action. The Outposts bucket owner has this\n permission by default and can grant this permission to others. For more information about\n permissions, see Permissions Related to Bucket Subresource Operations and Managing\n access permissions to your Amazon S3 resources.

\n

\n PutBucketTagging has the following special errors:

\n
    \n
  • \n

    Error code: InvalidTagError\n

    \n \n
  • \n
  • \n

    Error code: MalformedXMLError\n

    \n
      \n
    • \n

      Description: The XML provided does not match the schema.

      \n
    • \n
    \n
  • \n
  • \n

    Error code: OperationAbortedError \n

    \n
      \n
    • \n

      Description: A conflicting conditional action is currently in progress\n against this resource. Try again.

      \n
    • \n
    \n
  • \n
  • \n

    Error code: InternalError\n

    \n
      \n
    • \n

      Description: The service was unable to apply the provided tag to the\n bucket.

      \n
    • \n
    \n
  • \n
\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to PutBucketTagging:

\n ", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/bucket/{Bucket}/tagging", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#PutBucketTaggingRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Tagging": { - "target": "com.amazonaws.s3control#Tagging", - "traits": { - "smithy.api#documentation": "

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "Tagging" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#PutBucketVersioning": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#PutBucketVersioningRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation sets the versioning state\n for\n S3 on Outposts\n buckets\n only. To set the versioning state for an S3 bucket, see PutBucketVersioning in the Amazon S3 API Reference.

\n
\n

Sets the versioning state for an S3 on Outposts bucket. With\n S3\n Versioning,\n you can save multiple distinct copies of your\n objects\n and recover from unintended user actions and application failures.

\n

You can set the versioning state to one of the following:

\n
    \n
  • \n

    \n Enabled - Enables versioning for the objects in\n the bucket. All objects added to the bucket receive a unique version ID.

    \n
  • \n
  • \n

    \n Suspended - Suspends versioning for the objects\n in the bucket. All objects added to the bucket receive the version ID\n null.

    \n
  • \n
\n

If you've never set versioning on your bucket, it has no versioning state. In that case,\n a \n GetBucketVersioning request does not return a versioning state value.

\n

When you enable S3 Versioning, for each object in your bucket, you have a current\n version and zero or more noncurrent versions. You can configure your bucket S3 Lifecycle\n rules to expire noncurrent versions after a specified time period. For more information,\n see Creating and managing\n a lifecycle configuration for your S3 on Outposts bucket in the Amazon S3\n User Guide.

\n

If you have an object expiration lifecycle configuration in your non-versioned bucket\n and you want to maintain the same permanent delete behavior when you enable versioning, you\n must add a noncurrent expiration policy. The noncurrent expiration lifecycle configuration\n will manage the deletes of the noncurrent object versions in the version-enabled bucket.\n For more information, see Versioning in the Amazon S3\n User Guide.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following operations are related to PutBucketVersioning for\n S3 on Outposts.

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/bucket/{Bucket}/versioning", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#PutBucketVersioningRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 on Outposts bucket.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

The S3 on Outposts bucket to set the versioning state for.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "MFA": { - "target": "com.amazonaws.s3control#MFA", - "traits": { - "smithy.api#documentation": "

The concatenation of the authentication device's serial number, a space, and the value\n that is displayed on your authentication device.

", - "smithy.api#httpHeader": "x-amz-mfa" - } - }, - "VersioningConfiguration": { - "target": "com.amazonaws.s3control#VersioningConfiguration", - "traits": { - "smithy.api#documentation": "

The root-level tag for the VersioningConfiguration parameters.

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "VersioningConfiguration" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#PutJobTagging": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#PutJobTaggingRequest" - }, - "output": { - "target": "com.amazonaws.s3control#PutJobTaggingResult" - }, - "errors": [ - { - "target": "com.amazonaws.s3control#InternalServiceException" - }, - { - "target": "com.amazonaws.s3control#NotFoundException" - }, - { - "target": "com.amazonaws.s3control#TooManyRequestsException" - }, - { - "target": "com.amazonaws.s3control#TooManyTagsException" - } - ], - "traits": { - "smithy.api#documentation": "

Sets the supplied tag-set on an S3 Batch Operations job.

\n

A tag is a key-value pair. You can associate S3 Batch Operations tags with any job by sending\n a PUT request against the tagging subresource that is associated with the job. To modify\n the existing tag set, you can either replace the existing tag set entirely, or make changes\n within the existing tag set by retrieving the existing tag set using GetJobTagging, modify that tag set, and use this operation to replace the tag\n set with the one you modified. For more information, see Controlling\n access and labeling jobs using tags in the Amazon S3 User Guide.

\n \n
    \n
  • \n

    If you send this request with an empty tag set, Amazon S3 deletes the existing\n tag set on the Batch Operations job. If you use this method, you are charged for a Tier\n 1 Request (PUT). For more information, see Amazon S3 pricing.

    \n
  • \n
  • \n

    For deleting existing tags for your Batch Operations job, a DeleteJobTagging request is preferred because it achieves the same\n result without incurring charges.

    \n
  • \n
  • \n

    A few things to consider about using tags:

    \n
      \n
    • \n

      Amazon S3 limits the maximum number of tags to 50 tags per job.

      \n
    • \n
    • \n

      You can associate up to 50 tags with a job as long as they have unique\n tag keys.

      \n
    • \n
    • \n

      A tag key can be up to 128 Unicode characters in length, and tag values\n can be up to 256 Unicode characters in length.

      \n
    • \n
    • \n

      The key and values are case sensitive.

      \n
    • \n
    • \n

      For tagging-related restrictions related to characters and encodings, see\n User-Defined Tag Restrictions in the Billing and Cost Management User Guide.

      \n
    • \n
    \n
  • \n
\n
\n
\n
Permissions
\n
\n

To use the PutJobTagging operation, you must have permission to\n perform the s3:PutJobTagging action.

\n
\n
\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/jobs/{JobId}/tagging", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#PutJobTaggingRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "JobId": { - "target": "com.amazonaws.s3control#JobId", - "traits": { - "smithy.api#documentation": "

The ID for the S3 Batch Operations job whose tags you want to replace.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "Tags": { - "target": "com.amazonaws.s3control#S3TagSet", - "traits": { - "smithy.api#documentation": "

The set of tags to associate with the S3 Batch Operations job.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#PutJobTaggingResult": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#PutMultiRegionAccessPointPolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#PutMultiRegionAccessPointPolicyRequest" - }, - "output": { - "target": "com.amazonaws.s3control#PutMultiRegionAccessPointPolicyResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Associates an access control policy with the specified Multi-Region Access Point. Each Multi-Region Access Point can have only\n one policy, so a request made to this action replaces any existing policy that is\n associated with the specified Multi-Region Access Point.

\n

This action will always be routed to the US West (Oregon) Region. For more information\n about the restrictions around working with Multi-Region Access Points, see Multi-Region Access Point\n restrictions and limitations in the Amazon S3 User Guide.

\n

The following actions are related to\n PutMultiRegionAccessPointPolicy:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "POST", - "uri": "/v20180820/async-requests/mrap/put-policy", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#PutMultiRegionAccessPointPolicyInput": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointName", - "traits": { - "smithy.api#documentation": "

The name of the Multi-Region Access Point associated with the request.

", - "smithy.api#required": {} - } - }, - "Policy": { - "target": "com.amazonaws.s3control#Policy", - "traits": { - "smithy.api#documentation": "

The policy details for the PutMultiRegionAccessPoint request.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for the information associated with a PutMultiRegionAccessPoint request.

" - } - }, - "com.amazonaws.s3control#PutMultiRegionAccessPointPolicyRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "ClientToken": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointClientToken", - "traits": { - "smithy.api#documentation": "

An idempotency token used to identify the request and guarantee that requests are\n unique.

", - "smithy.api#idempotencyToken": {}, - "smithy.api#required": {} - } - }, - "Details": { - "target": "com.amazonaws.s3control#PutMultiRegionAccessPointPolicyInput", - "traits": { - "smithy.api#documentation": "

A container element containing the details of the policy for the Multi-Region Access Point.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#PutMultiRegionAccessPointPolicyResult": { - "type": "structure", - "members": { - "RequestTokenARN": { - "target": "com.amazonaws.s3control#AsyncRequestTokenARN", - "traits": { - "smithy.api#documentation": "

The request token associated with the request. You can use this token with DescribeMultiRegionAccessPointOperation to determine the status of asynchronous\n requests.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#PutPublicAccessBlock": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#PutPublicAccessBlockRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Creates or modifies the PublicAccessBlock configuration for an\n Amazon Web Services account. For this operation, users must have the\n s3:PutAccountPublicAccessBlock permission. For more information, see \n Using Amazon S3 block public access.

\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/configuration/publicAccessBlock", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#PutPublicAccessBlockRequest": { - "type": "structure", - "members": { - "PublicAccessBlockConfiguration": { - "target": "com.amazonaws.s3control#PublicAccessBlockConfiguration", - "traits": { - "smithy.api#documentation": "

The PublicAccessBlock configuration that you want to apply to the specified\n Amazon Web Services account.

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "PublicAccessBlockConfiguration" - } - }, - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID for the Amazon Web Services account whose PublicAccessBlock configuration\n you want to set.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#PutStorageLensConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#PutStorageLensConfigurationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Puts an Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see Working with\n Amazon S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

\n \n

To use this action, you must have permission to perform the\n s3:PutStorageLensConfiguration action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the\n Amazon S3 User Guide.

\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/storagelens/{ConfigId}", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#PutStorageLensConfigurationRequest": { - "type": "structure", - "members": { - "ConfigId": { - "target": "com.amazonaws.s3control#ConfigId", - "traits": { - "smithy.api#documentation": "

The ID of the S3 Storage Lens configuration.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the requester.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "StorageLensConfiguration": { - "target": "com.amazonaws.s3control#StorageLensConfiguration", - "traits": { - "smithy.api#documentation": "

The S3 Storage Lens configuration.

", - "smithy.api#required": {} - } - }, - "Tags": { - "target": "com.amazonaws.s3control#StorageLensTags", - "traits": { - "smithy.api#documentation": "

The tag set of the S3 Storage Lens configuration.

\n \n

You can set up to a maximum of 50 tags.

\n
" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#PutStorageLensConfigurationTagging": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#PutStorageLensConfigurationTaggingRequest" - }, - "output": { - "target": "com.amazonaws.s3control#PutStorageLensConfigurationTaggingResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Put or replace tags on an existing Amazon S3 Storage Lens configuration. For more information\n about S3 Storage Lens, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the\n Amazon S3 User Guide.

\n \n

To use this action, you must have permission to perform the\n s3:PutStorageLensConfigurationTagging action. For more information, see\n Setting permissions to\n use Amazon S3 Storage Lens in the Amazon S3 User Guide.

\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/storagelens/{ConfigId}/tagging", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#PutStorageLensConfigurationTaggingRequest": { - "type": "structure", - "members": { - "ConfigId": { - "target": "com.amazonaws.s3control#ConfigId", - "traits": { - "smithy.api#documentation": "

The ID of the S3 Storage Lens configuration.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the requester.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Tags": { - "target": "com.amazonaws.s3control#StorageLensTags", - "traits": { - "smithy.api#documentation": "

The tag set of the S3 Storage Lens configuration.

\n \n

You can set up to a maximum of 50 tags.

\n
", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#PutStorageLensConfigurationTaggingResult": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#Region": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the associated bucket for the Region.

", - "smithy.api#required": {} - } - }, - "BucketAccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID that owns the Amazon S3 bucket that's associated with this\n Multi-Region Access Point.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A Region that supports a Multi-Region Access Point as well as the associated bucket for the Region.

" - } - }, - "com.amazonaws.s3control#RegionCreationList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#Region", - "traits": { - "smithy.api#xmlName": "Region" - } - } - }, - "com.amazonaws.s3control#RegionName": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 64 - } - } - }, - "com.amazonaws.s3control#RegionReport": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket.

" - } - }, - "Region": { - "target": "com.amazonaws.s3control#RegionName", - "traits": { - "smithy.api#documentation": "

The name of the Region.

" - } - }, - "BucketAccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID that owns the Amazon S3 bucket that's associated with this\n Multi-Region Access Point.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A combination of a bucket and Region that's part of a Multi-Region Access Point.

" - } - }, - "com.amazonaws.s3control#RegionReportList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#RegionReport", - "traits": { - "smithy.api#xmlName": "Region" - } - } - }, - "com.amazonaws.s3control#RegionalBucket": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3control#BucketName", - "traits": { - "smithy.api#documentation": "

", - "smithy.api#required": {} - } - }, - "BucketArn": { - "target": "com.amazonaws.s3control#S3RegionalBucketArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the regional bucket.

" - } - }, - "PublicAccessBlockEnabled": { - "target": "com.amazonaws.s3control#PublicAccessBlockEnabled", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

", - "smithy.api#required": {} - } - }, - "CreationDate": { - "target": "com.amazonaws.s3control#CreationDate", - "traits": { - "smithy.api#documentation": "

The creation date of the regional bucket

", - "smithy.api#required": {} - } - }, - "OutpostId": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength64String", - "traits": { - "smithy.api#documentation": "

The Outposts ID of the regional bucket.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container for the regional bucket.

" - } - }, - "com.amazonaws.s3control#RegionalBucketList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#RegionalBucket", - "traits": { - "smithy.api#xmlName": "RegionalBucket" - } - } - }, - "com.amazonaws.s3control#Regions": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#S3AWSRegion", - "traits": { - "smithy.api#xmlName": "Region" - } - } - }, - "com.amazonaws.s3control#ReplicaKmsKeyID": { - "type": "string" - }, - "com.amazonaws.s3control#ReplicaModifications": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3control#ReplicaModificationsStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether S3 on Outposts replicates modifications to object metadata on\n replicas.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A filter that you can use to specify whether replica modification sync is enabled.\n S3 on Outposts replica modification sync can help you keep object metadata synchronized\n between replicas and source objects. By default, S3 on Outposts replicates metadata from the\n source objects to the replicas only. When replica modification sync is enabled,\n S3 on Outposts replicates metadata changes made to the replica copies back to the source\n object, making the replication bidirectional.

\n

To replicate object metadata modifications on replicas, you can specify this element and\n set the Status of this element to Enabled.

\n \n

You must enable replica modification sync on the source and destination buckets to\n replicate replica metadata changes between the source and the replicas.

\n
" - } - }, - "com.amazonaws.s3control#ReplicaModificationsStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3control#ReplicationConfiguration": { - "type": "structure", - "members": { - "Role": { - "target": "com.amazonaws.s3control#Role", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that S3 on Outposts assumes\n when replicating objects. For information about S3 replication on Outposts configuration,\n see Setting up\n replication in the Amazon S3 User Guide.

", - "smithy.api#required": {} - } - }, - "Rules": { - "target": "com.amazonaws.s3control#ReplicationRules", - "traits": { - "smithy.api#documentation": "

A container for one or more replication rules. A replication configuration must have at\n least one rule and can contain an array of 100 rules at the most.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for one or more replication rules. A replication configuration must have at\n least one rule and you can add up to 100 rules. The maximum size of a replication\n configuration is 128 KB.

" - } - }, - "com.amazonaws.s3control#ReplicationRule": { - "type": "structure", - "members": { - "ID": { - "target": "com.amazonaws.s3control#ID", - "traits": { - "smithy.api#documentation": "

A unique identifier for the rule. The maximum value is 255 characters.

" - } - }, - "Priority": { - "target": "com.amazonaws.s3control#Priority", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

The priority indicates which rule has precedence whenever two or more replication rules\n conflict. S3 on Outposts attempts to replicate objects according to all replication rules.\n However, if there are two or more rules with the same destination Outposts bucket, then\n objects will be replicated according to the rule with the highest priority. The higher the\n number, the higher the priority.

\n

For more information, see Creating replication\n rules on Outposts in the Amazon S3 User Guide.

" - } - }, - "Prefix": { - "target": "com.amazonaws.s3control#Prefix", - "traits": { - "smithy.api#deprecated": { - "message": "Prefix has been deprecated" - }, - "smithy.api#documentation": "

An object key name prefix that identifies the object or objects to which the rule\n applies. The maximum prefix length is 1,024 characters. To include all objects in an\n Outposts bucket, specify an empty string.

\n \n

When you're using XML requests, you must \nreplace special characters (such as carriage returns) in object keys with their equivalent XML entity codes. \nFor more information, see \n XML-related object key constraints in the Amazon S3 User Guide.

\n
" - } - }, - "Filter": { - "target": "com.amazonaws.s3control#ReplicationRuleFilter", - "traits": { - "smithy.api#documentation": "

A filter that identifies the subset of objects to which the replication rule applies. A\n Filter element must specify exactly one Prefix,\n Tag, or And child element.

" - } - }, - "Status": { - "target": "com.amazonaws.s3control#ReplicationRuleStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether the rule is enabled.

", - "smithy.api#required": {} - } - }, - "SourceSelectionCriteria": { - "target": "com.amazonaws.s3control#SourceSelectionCriteria", - "traits": { - "smithy.api#documentation": "

A container that describes additional filters for identifying the source Outposts\n objects that you want to replicate. You can choose to enable or disable the replication of\n these objects.

" - } - }, - "ExistingObjectReplication": { - "target": "com.amazonaws.s3control#ExistingObjectReplication", - "traits": { - "smithy.api#documentation": "

An optional configuration to replicate existing source bucket objects.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" - } - }, - "Destination": { - "target": "com.amazonaws.s3control#Destination", - "traits": { - "smithy.api#documentation": "

A container for information about the replication destination and its\n configurations.

", - "smithy.api#required": {} - } - }, - "DeleteMarkerReplication": { - "target": "com.amazonaws.s3control#DeleteMarkerReplication", - "traits": { - "smithy.api#documentation": "

Specifies whether S3 on Outposts replicates delete markers. If you specify a\n Filter element in your replication configuration, you must also include a\n DeleteMarkerReplication element. If your Filter includes a\n Tag element, the DeleteMarkerReplication element's\n Status child element must be set to Disabled, because\n S3 on Outposts doesn't support replicating delete markers for tag-based rules.

\n

For more information about delete marker replication, see How delete operations affect replication in the\n Amazon S3 User Guide.

" - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#BucketIdentifierString", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the access point for the source Outposts bucket that you want\n S3 on Outposts to replicate the objects from.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies which S3 on Outposts objects to replicate and where to store the\n replicas.

" - } - }, - "com.amazonaws.s3control#ReplicationRuleAndOperator": { - "type": "structure", - "members": { - "Prefix": { - "target": "com.amazonaws.s3control#Prefix", - "traits": { - "smithy.api#documentation": "

An object key name prefix that identifies the subset of objects that the rule applies\n to.

" - } - }, - "Tags": { - "target": "com.amazonaws.s3control#S3TagSet", - "traits": { - "smithy.api#documentation": "

An array of tags that contain key and value pairs.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for specifying rule filters. The filters determine the subset of objects to\n which the rule applies. This element is required only if you specify more than one filter.

\n

For example:

\n
    \n
  • \n

    If you specify both a Prefix and a Tag filter, wrap\n these filters in an And element.

    \n
  • \n
  • \n

    If you specify a filter based on multiple tags, wrap the Tag elements\n in an And element.

    \n
  • \n
" - } - }, - "com.amazonaws.s3control#ReplicationRuleFilter": { - "type": "structure", - "members": { - "Prefix": { - "target": "com.amazonaws.s3control#Prefix", - "traits": { - "smithy.api#documentation": "

An object key name prefix that identifies the subset of objects that the rule applies\n to.

\n \n

When you're using XML requests, you must \nreplace special characters (such as carriage returns) in object keys with their equivalent XML entity codes. \nFor more information, see \n XML-related object key constraints in the Amazon S3 User Guide.

\n
" - } - }, - "Tag": { - "target": "com.amazonaws.s3control#S3Tag" - }, - "And": { - "target": "com.amazonaws.s3control#ReplicationRuleAndOperator", - "traits": { - "smithy.api#documentation": "

A container for specifying rule filters. The filters determine the subset of objects\n that the rule applies to. This element is required only if you specify more than one\n filter. For example:

\n
    \n
  • \n

    If you specify both a Prefix and a Tag filter, wrap\n these filters in an And element.

    \n
  • \n
  • \n

    If you specify a filter based on multiple tags, wrap the Tag elements\n in an And element.

    \n
  • \n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

A filter that identifies the subset of objects to which the replication rule applies. A\n Filter element must specify exactly one Prefix,\n Tag, or And child element.

" - } - }, - "com.amazonaws.s3control#ReplicationRuleStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3control#ReplicationRules": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#ReplicationRule", - "traits": { - "smithy.api#xmlName": "Rule" - } - } - }, - "com.amazonaws.s3control#ReplicationStatus": { - "type": "enum", - "members": { - "COMPLETED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "COMPLETED" - } - }, - "FAILED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "FAILED" - } - }, - "REPLICA": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "REPLICA" - } - }, - "NONE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "NONE" - } - } - } - }, - "com.amazonaws.s3control#ReplicationStatusFilterList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#ReplicationStatus" - } - }, - "com.amazonaws.s3control#ReplicationStorageClass": { - "type": "enum", - "members": { - "STANDARD": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "STANDARD" - } - }, - "REDUCED_REDUNDANCY": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "REDUCED_REDUNDANCY" - } - }, - "STANDARD_IA": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "STANDARD_IA" - } - }, - "ONEZONE_IA": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ONEZONE_IA" - } - }, - "INTELLIGENT_TIERING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "INTELLIGENT_TIERING" - } - }, - "GLACIER": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GLACIER" - } - }, - "DEEP_ARCHIVE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DEEP_ARCHIVE" - } - }, - "OUTPOSTS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "OUTPOSTS" - } - }, - "GLACIER_IR": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GLACIER_IR" - } - } - } - }, - "com.amazonaws.s3control#ReplicationTime": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3control#ReplicationTimeStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether S3 Replication Time Control (S3 RTC) is enabled.

", - "smithy.api#required": {} - } - }, - "Time": { - "target": "com.amazonaws.s3control#ReplicationTimeValue", - "traits": { - "smithy.api#documentation": "

A container that specifies the time by which replication should be complete for all\n objects and operations on objects.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A container that specifies S3 Replication Time Control (S3 RTC) related information, including whether S3 RTC\n is enabled and the time when all objects and operations on objects must be\n replicated.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" - } - }, - "com.amazonaws.s3control#ReplicationTimeStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3control#ReplicationTimeValue": { - "type": "structure", - "members": { - "Minutes": { - "target": "com.amazonaws.s3control#Minutes", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

Contains an integer that specifies the time period in minutes.

\n

Valid value: 15

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container that specifies the time value for S3 Replication Time Control (S3 RTC). This value is also used for\n the replication metrics EventThreshold element.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" - } - }, - "com.amazonaws.s3control#ReportPrefixString": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 512 - } - } - }, - "com.amazonaws.s3control#RequestedJobStatus": { - "type": "enum", - "members": { - "Cancelled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Cancelled" - } - }, - "Ready": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Ready" - } - } - } - }, - "com.amazonaws.s3control#Role": { - "type": "string" - }, - "com.amazonaws.s3control#RouteList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointRoute", - "traits": { - "smithy.api#xmlName": "Route" - } - } - }, - "com.amazonaws.s3control#S3AWSRegion": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 5, - "max": 30 - }, - "smithy.api#pattern": "^[a-z0-9\\-]+$" - } - }, - "com.amazonaws.s3control#S3AccessControlList": { - "type": "structure", - "members": { - "Owner": { - "target": "com.amazonaws.s3control#S3ObjectOwner", - "traits": { - "smithy.api#documentation": "

", - "smithy.api#required": {} - } - }, - "Grants": { - "target": "com.amazonaws.s3control#S3GrantList", - "traits": { - "smithy.api#documentation": "

" - } - } - }, - "traits": { - "smithy.api#documentation": "

" - } - }, - "com.amazonaws.s3control#S3AccessControlPolicy": { - "type": "structure", - "members": { - "AccessControlList": { - "target": "com.amazonaws.s3control#S3AccessControlList", - "traits": { - "smithy.api#documentation": "

" - } - }, - "CannedAccessControlList": { - "target": "com.amazonaws.s3control#S3CannedAccessControlList", - "traits": { - "smithy.api#documentation": "

" - } - } - }, - "traits": { - "smithy.api#documentation": "

" - } - }, - "com.amazonaws.s3control#S3AccessPointArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 4, - "max": 128 - } - } - }, - "com.amazonaws.s3control#S3BucketArnString": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 128 - }, - "smithy.api#pattern": "^arn:[^:]+:s3:" - } - }, - "com.amazonaws.s3control#S3BucketDestination": { - "type": "structure", - "members": { - "Format": { - "target": "com.amazonaws.s3control#Format", - "traits": { - "smithy.api#documentation": "

", - "smithy.api#required": {} - } - }, - "OutputSchemaVersion": { - "target": "com.amazonaws.s3control#OutputSchemaVersion", - "traits": { - "smithy.api#documentation": "

The schema version of the export file.

", - "smithy.api#required": {} - } - }, - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the owner of the S3 Storage Lens metrics export bucket.

", - "smithy.api#required": {} - } - }, - "Arn": { - "target": "com.amazonaws.s3control#S3BucketArnString", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the bucket. This property is read-only and follows the\n following format: \n arn:aws:s3:us-east-1:example-account-id:bucket/your-destination-bucket-name\n \n

", - "smithy.api#required": {} - } - }, - "Prefix": { - "target": "com.amazonaws.s3control#Prefix", - "traits": { - "smithy.api#documentation": "

The prefix of the destination bucket where the metrics export will be delivered.

" - } - }, - "Encryption": { - "target": "com.amazonaws.s3control#StorageLensDataExportEncryption", - "traits": { - "smithy.api#documentation": "

The container for the type encryption of the metrics exports in this bucket.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for the bucket where the Amazon S3 Storage Lens metrics export files are\n located.

" - } - }, - "com.amazonaws.s3control#S3CannedAccessControlList": { - "type": "enum", - "members": { - "PRIVATE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "private" - } - }, - "PUBLIC_READ": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "public-read" - } - }, - "PUBLIC_READ_WRITE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "public-read-write" - } - }, - "AWS_EXEC_READ": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "aws-exec-read" - } - }, - "AUTHENTICATED_READ": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "authenticated-read" - } - }, - "BUCKET_OWNER_READ": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "bucket-owner-read" - } - }, - "BUCKET_OWNER_FULL_CONTROL": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "bucket-owner-full-control" - } - } - } - }, - "com.amazonaws.s3control#S3ChecksumAlgorithm": { - "type": "enum", - "members": { - "CRC32": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CRC32" - } - }, - "CRC32C": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CRC32C" - } - }, - "SHA1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "SHA1" - } - }, - "SHA256": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "SHA256" - } - }, - "CRC64NVME": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CRC64NVME" - } - } - } - }, - "com.amazonaws.s3control#S3ComputeObjectChecksumOperation": { - "type": "structure", - "members": { - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3control#ComputeObjectChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm that you want Amazon S3 to use to create the checksum. For more\n information, see Checking object\n integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumType": { - "target": "com.amazonaws.s3control#ComputeObjectChecksumType", - "traits": { - "smithy.api#documentation": "

Indicates the checksum type that you want Amazon S3 to use to calculate the object’s checksum\n value. For more information, see Checking object\n integrity in the Amazon S3 User Guide.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Directs the specified job to invoke the ComputeObjectChecksum operation on every object listed in the job's manifest.

" - } - }, - "com.amazonaws.s3control#S3ContentLength": { - "type": "long", - "traits": { - "smithy.api#default": 0, - "smithy.api#range": { - "min": 0 - } - } - }, - "com.amazonaws.s3control#S3CopyObjectOperation": { - "type": "structure", - "members": { - "TargetResource": { - "target": "com.amazonaws.s3control#S3RegionalOrS3ExpressBucketArnString", - "traits": { - "smithy.api#documentation": "

Specifies the destination bucket\n Amazon Resource Name\n (ARN)\n for the batch copy operation.

\n
    \n
  • \n

    \n General purpose buckets - For example, to copy\n objects to a general purpose bucket named destinationBucket, set the\n TargetResource property to\n arn:aws:s3:::destinationBucket.

    \n
  • \n
  • \n

    \n Directory buckets - For example, to copy\n objects to a directory bucket named destinationBucket in the Availability Zone\n identified by the AZ ID usw2-az1, set the TargetResource\n property to\n arn:aws:s3express:region:account_id:/bucket/destination_bucket_base_name--usw2-az1--x-s3.\n A directory bucket as a destination bucket can be in Availability Zone or Local Zone.

    \n \n

    Copying objects across different Amazon Web Services Regions isn't supported when the source\n or destination bucket is in Amazon Web Services Local Zones. The source and destination buckets must\n have the same parent Amazon Web Services Region. Otherwise, you get an HTTP 400 Bad\n Request error with the error code InvalidRequest.

    \n
    \n
  • \n
" - } - }, - "CannedAccessControlList": { - "target": "com.amazonaws.s3control#S3CannedAccessControlList", - "traits": { - "smithy.api#documentation": "

\n \n

This functionality is not supported by directory buckets.

\n
" - } - }, - "AccessControlGrants": { - "target": "com.amazonaws.s3control#S3GrantList", - "traits": { - "smithy.api#documentation": "

\n \n

This functionality is not supported by directory buckets.

\n
" - } - }, - "MetadataDirective": { - "target": "com.amazonaws.s3control#S3MetadataDirective", - "traits": { - "smithy.api#documentation": "

" - } - }, - "ModifiedSinceConstraint": { - "target": "com.amazonaws.s3control#TimeStamp", - "traits": { - "smithy.api#documentation": "

" - } - }, - "NewObjectMetadata": { - "target": "com.amazonaws.s3control#S3ObjectMetadata", - "traits": { - "smithy.api#documentation": "

If you don't provide this parameter, Amazon S3 copies all the metadata from the original\n objects. If you specify an empty set, the new objects will have no tags. Otherwise, Amazon S3\n assigns the supplied tags to the new objects.

" - } - }, - "NewObjectTagging": { - "target": "com.amazonaws.s3control#S3TagSet", - "traits": { - "smithy.api#documentation": "

Specifies a list of tags to add to the destination objects after they are copied. If\n NewObjectTagging is not specified, the tags of the source objects are\n copied to destination objects by default.

\n \n

\n Directory buckets - Tags aren't supported by\n directory buckets. If your source objects have tags and your destination bucket is a\n directory bucket, specify an empty tag set in the NewObjectTagging field\n to prevent copying the source object tags to the directory bucket.

\n
" - } - }, - "RedirectLocation": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength2048String", - "traits": { - "smithy.api#documentation": "

If the destination bucket is configured as a website, specifies an optional metadata\n property for website redirects, x-amz-website-redirect-location. Allows\n webpage redirects if the object copy is accessed through a website endpoint.

\n \n

This functionality is not supported by directory buckets.

\n
" - } - }, - "RequesterPays": { - "target": "com.amazonaws.s3control#Boolean", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

\n \n

This functionality is not supported by directory buckets.

\n
" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3control#S3StorageClass", - "traits": { - "smithy.api#documentation": "

Specify the storage class for the destination objects in a Copy\n operation.

\n \n

\n Directory buckets -\n This functionality is not supported by directory buckets.

\n
" - } - }, - "UnModifiedSinceConstraint": { - "target": "com.amazonaws.s3control#TimeStamp", - "traits": { - "smithy.api#documentation": "

" - } - }, - "SSEAwsKmsKeyId": { - "target": "com.amazonaws.s3control#KmsKeyArnString", - "traits": { - "smithy.api#documentation": "

Specifies the KMS key ID (Key ID, Key ARN, or Key Alias) to use for object encryption. If the KMS key doesn't exist in the same\n account that's issuing the command, you must use the full Key ARN not the Key ID.

\n \n

\n Directory buckets - If you specify SSEAlgorithm with KMS, you must specify the \n SSEAwsKmsKeyId parameter with the ID (Key ID or Key ARN) of the KMS \n symmetric encryption customer managed key to use. Otherwise, you get an HTTP 400 Bad Request error. The key alias format of the KMS key isn't supported. To encrypt new object copies in a directory bucket with SSE-KMS, you must specify SSE-KMS as the directory bucket's default encryption configuration with a KMS key (specifically, a customer managed key). \n The Amazon Web Services managed key (aws/s3) isn't supported. Your SSE-KMS configuration can only support 1 customer managed key per directory bucket for the lifetime of the bucket. \nAfter you specify a customer managed key for SSE-KMS as the bucket default encryption, you can't override the customer managed key for the bucket's SSE-KMS configuration. \nThen, when you specify server-side encryption settings for new object copies with SSE-KMS, you must make sure the encryption key is the same customer managed key that you specified for the directory bucket's default encryption configuration. \n

\n
" - } - }, - "TargetKeyPrefix": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

Specifies the folder prefix\n that\n you\n want\n the objects to be\n copied\n into. For example, to copy objects into a folder named\n Folder1 in the destination bucket, set the\n TargetKeyPrefix\n property\n to Folder1.

" - } - }, - "ObjectLockLegalHoldStatus": { - "target": "com.amazonaws.s3control#S3ObjectLockLegalHoldStatus", - "traits": { - "smithy.api#documentation": "

The legal hold status to be applied to all objects in the Batch Operations job.

\n \n

This functionality is not supported by directory buckets.

\n
" - } - }, - "ObjectLockMode": { - "target": "com.amazonaws.s3control#S3ObjectLockMode", - "traits": { - "smithy.api#documentation": "

The retention mode to be applied to all objects in the Batch Operations job.

\n \n

This functionality is not supported by directory buckets.

\n
" - } - }, - "ObjectLockRetainUntilDate": { - "target": "com.amazonaws.s3control#TimeStamp", - "traits": { - "smithy.api#documentation": "

The date when the applied object retention configuration expires on all objects in the\n Batch Operations job.

\n \n

This functionality is not supported by directory buckets.

\n
" - } - }, - "BucketKeyEnabled": { - "target": "com.amazonaws.s3control#Boolean", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with\n server-side encryption using Amazon Web Services KMS (SSE-KMS). Setting this header to true\n causes Amazon S3 to use an S3 Bucket Key for object encryption with SSE-KMS.

\n

Specifying this header with an Copy action doesn’t affect\n bucket-level settings for S3 Bucket Key.

\n \n

\n Directory buckets - S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets \nto directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through the Copy operation in Batch Operations. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.

\n
" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3control#S3ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm\n that\n you want Amazon S3 to use to create the checksum. For more\n information,\n see Checking object\n integrity in the Amazon S3 User Guide.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains\n the configuration parameters for a PUT Copy object operation. S3 Batch Operations passes every\n object to the underlying\n CopyObject\n API\n operation. For more information about the parameters for this operation,\n see CopyObject.

" - } - }, - "com.amazonaws.s3control#S3DeleteObjectTaggingOperation": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

Contains no configuration parameters because the DELETE Object tagging\n (DeleteObjectTagging)\n API\n operation\n accepts\n only\n the bucket name and key name as parameters, which are defined in the\n job's manifest.

" - } - }, - "com.amazonaws.s3control#S3ExpirationInDays": { - "type": "integer", - "traits": { - "smithy.api#default": 0, - "smithy.api#range": { - "min": 0 - } - } - }, - "com.amazonaws.s3control#S3GeneratedManifestDescriptor": { - "type": "structure", - "members": { - "Format": { - "target": "com.amazonaws.s3control#GeneratedManifestFormat", - "traits": { - "smithy.api#documentation": "

The format of the generated manifest.

" - } - }, - "Location": { - "target": "com.amazonaws.s3control#JobManifestLocation" - } - }, - "traits": { - "smithy.api#documentation": "

Describes the specified job's generated manifest. Batch Operations jobs created with a\n ManifestGenerator populate details of this descriptor after execution of the\n ManifestGenerator.

" - } - }, - "com.amazonaws.s3control#S3GlacierJobTier": { - "type": "enum", - "members": { - "BULK": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "BULK" - } - }, - "STANDARD": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "STANDARD" - } - } - } - }, - "com.amazonaws.s3control#S3Grant": { - "type": "structure", - "members": { - "Grantee": { - "target": "com.amazonaws.s3control#S3Grantee", - "traits": { - "smithy.api#documentation": "

" - } - }, - "Permission": { - "target": "com.amazonaws.s3control#S3Permission", - "traits": { - "smithy.api#documentation": "

" - } - } - }, - "traits": { - "smithy.api#documentation": "

" - } - }, - "com.amazonaws.s3control#S3GrantList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#S3Grant" - } - }, - "com.amazonaws.s3control#S3Grantee": { - "type": "structure", - "members": { - "TypeIdentifier": { - "target": "com.amazonaws.s3control#S3GranteeTypeIdentifier", - "traits": { - "smithy.api#documentation": "

" - } - }, - "Identifier": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

" - } - }, - "DisplayName": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

" - } - } - }, - "traits": { - "smithy.api#documentation": "

" - } - }, - "com.amazonaws.s3control#S3GranteeTypeIdentifier": { - "type": "enum", - "members": { - "CANONICAL": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "id" - } - }, - "EMAIL_ADDRESS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "emailAddress" - } - }, - "GROUP": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "uri" - } - } - } - }, - "com.amazonaws.s3control#S3InitiateRestoreObjectOperation": { - "type": "structure", - "members": { - "ExpirationInDays": { - "target": "com.amazonaws.s3control#S3ExpirationInDays", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

This argument specifies how long the S3 Glacier or S3 Glacier Deep Archive object remains\n available in Amazon S3. S3 Initiate Restore Object jobs that target S3 Glacier and S3 Glacier Deep Archive\n objects require ExpirationInDays set to 1 or greater.

\n

Conversely, do not set ExpirationInDays when creating\n S3 Initiate Restore Object jobs that target S3 Intelligent-Tiering Archive Access and\n Deep Archive Access tier objects. Objects in S3 Intelligent-Tiering archive access tiers are\n not subject to restore expiry, so specifying ExpirationInDays results in\n restore request failure.

\n

S3 Batch Operations jobs can operate either on S3 Glacier and S3 Glacier Deep Archive storage class\n objects or on S3 Intelligent-Tiering Archive Access and Deep Archive Access storage tier\n objects, but not both types in the same job. If you need to restore objects of both types\n you must create separate Batch Operations jobs.

" - } - }, - "GlacierJobTier": { - "target": "com.amazonaws.s3control#S3GlacierJobTier", - "traits": { - "smithy.api#documentation": "

S3 Batch Operations supports STANDARD and BULK retrieval tiers, but\n not the EXPEDITED retrieval tier.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the configuration parameters for\n a\n POST Object restore job. S3 Batch Operations passes every object to the\n underlying\n RestoreObject\n API\n operation. For more information about the parameters for this operation,\n see RestoreObject.

" - } - }, - "com.amazonaws.s3control#S3JobManifestGenerator": { - "type": "structure", - "members": { - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID that owns the bucket the generated manifest is written to. If\n provided the generated manifest bucket's owner Amazon Web Services account ID must match this value, else\n the job fails.

" - } - }, - "SourceBucket": { - "target": "com.amazonaws.s3control#S3BucketArnString", - "traits": { - "smithy.api#documentation": "

The ARN of the source bucket used by the ManifestGenerator.

\n \n

\n Directory buckets - Directory buckets\n aren't supported as the source buckets used by S3JobManifestGenerator to\n generate the job manifest.

\n
", - "smithy.api#required": {} - } - }, - "ManifestOutputLocation": { - "target": "com.amazonaws.s3control#S3ManifestOutputLocation", - "traits": { - "smithy.api#documentation": "

Specifies the location the generated manifest will be written to. Manifests can't be\n written to directory buckets. For more information, see Directory\n buckets.

" - } - }, - "Filter": { - "target": "com.amazonaws.s3control#JobManifestGeneratorFilter", - "traits": { - "smithy.api#documentation": "

Specifies rules the S3JobManifestGenerator should use to decide whether an object in the\n source bucket should or should not be included in the generated job manifest.

" - } - }, - "EnableManifestOutput": { - "target": "com.amazonaws.s3control#Boolean", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

Determines whether or not to write the job's generated manifest to a bucket.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

The container for the service that will create the S3 manifest.

" - } - }, - "com.amazonaws.s3control#S3KeyArnString": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 2000 - }, - "smithy.api#pattern": "^arn:[^:]+:s3:" - } - }, - "com.amazonaws.s3control#S3ManifestOutputLocation": { - "type": "structure", - "members": { - "ExpectedManifestBucketOwner": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Account ID that owns the bucket the generated manifest is written to.

" - } - }, - "Bucket": { - "target": "com.amazonaws.s3control#S3BucketArnString", - "traits": { - "smithy.api#documentation": "

The bucket ARN the generated manifest should be written to.

\n \n

\n Directory buckets - Directory buckets\n aren't supported as the buckets to store the generated manifest.

\n
", - "smithy.api#required": {} - } - }, - "ManifestPrefix": { - "target": "com.amazonaws.s3control#ManifestPrefixString", - "traits": { - "smithy.api#documentation": "

Prefix identifying one or more objects to which the manifest applies.

" - } - }, - "ManifestEncryption": { - "target": "com.amazonaws.s3control#GeneratedManifestEncryption", - "traits": { - "smithy.api#documentation": "

Specifies what encryption should be used when the generated manifest objects are\n written.

" - } - }, - "ManifestFormat": { - "target": "com.amazonaws.s3control#GeneratedManifestFormat", - "traits": { - "smithy.api#documentation": "

The format of the generated manifest.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Location details for where the generated manifest should be written.

" - } - }, - "com.amazonaws.s3control#S3MetadataDirective": { - "type": "enum", - "members": { - "COPY": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "COPY" - } - }, - "REPLACE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "REPLACE" - } - } - } - }, - "com.amazonaws.s3control#S3ObjectLockLegalHold": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3control#S3ObjectLockLegalHoldStatus", - "traits": { - "smithy.api#documentation": "

The Object Lock legal hold status to be applied to all objects in the Batch Operations\n job.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Whether S3 Object Lock legal hold will be applied to objects in an S3 Batch Operations\n job.

" - } - }, - "com.amazonaws.s3control#S3ObjectLockLegalHoldStatus": { - "type": "enum", - "members": { - "OFF": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "OFF" - } - }, - "ON": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ON" - } - } - } - }, - "com.amazonaws.s3control#S3ObjectLockMode": { - "type": "enum", - "members": { - "COMPLIANCE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "COMPLIANCE" - } - }, - "GOVERNANCE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GOVERNANCE" - } - } - } - }, - "com.amazonaws.s3control#S3ObjectLockRetentionMode": { - "type": "enum", - "members": { - "COMPLIANCE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "COMPLIANCE" - } - }, - "GOVERNANCE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GOVERNANCE" - } - } - } - }, - "com.amazonaws.s3control#S3ObjectMetadata": { - "type": "structure", - "members": { - "CacheControl": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

" - } - }, - "ContentDisposition": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

" - } - }, - "ContentEncoding": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

" - } - }, - "ContentLanguage": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

" - } - }, - "UserMetadata": { - "target": "com.amazonaws.s3control#S3UserMetadata", - "traits": { - "smithy.api#documentation": "

" - } - }, - "ContentLength": { - "target": "com.amazonaws.s3control#S3ContentLength", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

\n This member has been deprecated.\n

\n

" - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

\n This member has been deprecated.\n

\n

" - } - }, - "ContentType": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

" - } - }, - "HttpExpiresDate": { - "target": "com.amazonaws.s3control#TimeStamp", - "traits": { - "smithy.api#documentation": "

" - } - }, - "RequesterCharged": { - "target": "com.amazonaws.s3control#Boolean", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

\n This member has been deprecated.\n

\n

" - } - }, - "SSEAlgorithm": { - "target": "com.amazonaws.s3control#S3SSEAlgorithm", - "traits": { - "smithy.api#documentation": "

The server-side encryption algorithm used when storing objects in Amazon S3.

\n

\n Directory buckets -\n For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (KMS). For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide.\n For the Copy operation in Batch Operations, see S3CopyObjectOperation.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

" - } - }, - "com.amazonaws.s3control#S3ObjectOwner": { - "type": "structure", - "members": { - "ID": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

" - } - }, - "DisplayName": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", - "traits": { - "smithy.api#documentation": "

" - } - } - }, - "traits": { - "smithy.api#documentation": "

" - } - }, - "com.amazonaws.s3control#S3ObjectVersionId": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 2000 - } - } - }, - "com.amazonaws.s3control#S3Permission": { - "type": "enum", - "members": { - "FULL_CONTROL": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "FULL_CONTROL" - } - }, - "READ": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "READ" - } - }, - "WRITE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "WRITE" - } - }, - "READ_ACP": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "READ_ACP" - } - }, - "WRITE_ACP": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "WRITE_ACP" - } - } - } - }, - "com.amazonaws.s3control#S3Prefix": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 2000 - }, - "smithy.api#pattern": "^.+$" - } - }, - "com.amazonaws.s3control#S3PrefixType": { - "type": "enum", - "members": { - "Object": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Object" - } - } - } - }, - "com.amazonaws.s3control#S3RegionalBucketArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 4, - "max": 128 - } - } - }, - "com.amazonaws.s3control#S3RegionalOrS3ExpressBucketArnString": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 128 - }, - "smithy.api#pattern": "^arn:[^:]+:(s3|s3express):" - } - }, - "com.amazonaws.s3control#S3ReplicateObjectOperation": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

Directs the specified job to invoke ReplicateObject on every object in the\n job's manifest.

" - } - }, - "com.amazonaws.s3control#S3ResourceArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 1011 - }, - "smithy.api#pattern": "^arn:[^:]+:s3(express)?:[^:]" - } - }, - "com.amazonaws.s3control#S3Retention": { - "type": "structure", - "members": { - "RetainUntilDate": { - "target": "com.amazonaws.s3control#TimeStamp", - "traits": { - "smithy.api#documentation": "

The date when the applied Object Lock retention will expire on all objects set by the\n Batch Operations job.

" - } - }, - "Mode": { - "target": "com.amazonaws.s3control#S3ObjectLockRetentionMode", - "traits": { - "smithy.api#documentation": "

The Object Lock retention mode to be applied to all objects in the Batch Operations\n job.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the S3 Object Lock retention mode to be applied to all objects in the\n S3 Batch Operations job. If you don't provide Mode and RetainUntilDate\n data types in your operation, you will remove the retention from your objects. For more\n information, see Using S3 Object Lock retention\n with S3 Batch Operations in the Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3control#S3SSEAlgorithm": { - "type": "enum", - "members": { - "AES256": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "AES256" - } - }, - "KMS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "KMS" - } - } - } - }, - "com.amazonaws.s3control#S3SetObjectAclOperation": { - "type": "structure", - "members": { - "AccessControlPolicy": { - "target": "com.amazonaws.s3control#S3AccessControlPolicy", - "traits": { - "smithy.api#documentation": "

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the configuration parameters for a\n PUT\n Object ACL operation. S3 Batch Operations passes every object to the underlying\n PutObjectAcl\n API\n operation. For more information about the parameters for this operation,\n see PutObjectAcl.

" - } - }, - "com.amazonaws.s3control#S3SetObjectLegalHoldOperation": { - "type": "structure", - "members": { - "LegalHold": { - "target": "com.amazonaws.s3control#S3ObjectLockLegalHold", - "traits": { - "smithy.api#documentation": "

Contains the Object Lock legal hold status to be applied to all objects in the\n Batch Operations job.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the configuration for an S3 Object Lock legal hold operation that an\n S3 Batch Operations job passes\n to\n every object to the underlying\n PutObjectLegalHold\n API\n operation. For more information, see Using S3 Object Lock legal hold\n with S3 Batch Operations in the Amazon S3 User Guide.

\n \n

This functionality is not supported by directory buckets.

\n
" - } - }, - "com.amazonaws.s3control#S3SetObjectRetentionOperation": { - "type": "structure", - "members": { - "BypassGovernanceRetention": { - "target": "com.amazonaws.s3control#Boolean", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

Indicates if the action should be applied to objects in the Batch Operations job even if they\n have Object Lock GOVERNANCE type in place.

" - } - }, - "Retention": { - "target": "com.amazonaws.s3control#S3Retention", - "traits": { - "smithy.api#documentation": "

Contains the Object Lock retention mode to be applied to all objects in the Batch Operations\n job. For more information, see Using S3 Object Lock retention\n with S3 Batch Operations in the Amazon S3 User Guide.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the configuration parameters for the Object Lock retention action for an\n S3 Batch Operations job. Batch Operations passes every object to the underlying\n PutObjectRetention\n API\n operation. For more information, see Using S3 Object Lock retention\n with S3 Batch Operations in the Amazon S3 User Guide.

\n \n

This functionality is not supported by directory buckets.

\n
" - } - }, - "com.amazonaws.s3control#S3SetObjectTaggingOperation": { - "type": "structure", - "members": { - "TagSet": { - "target": "com.amazonaws.s3control#S3TagSet", - "traits": { - "smithy.api#documentation": "

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the configuration parameters for a\n PUT\n Object Tagging operation. S3 Batch Operations passes every object to the underlying\n PutObjectTagging\n API\n operation. For more information about the parameters for this operation,\n see PutObjectTagging.

" - } - }, - "com.amazonaws.s3control#S3StorageClass": { - "type": "enum", - "members": { - "STANDARD": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "STANDARD" - } - }, - "STANDARD_IA": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "STANDARD_IA" - } - }, - "ONEZONE_IA": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ONEZONE_IA" - } - }, - "GLACIER": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GLACIER" - } - }, - "INTELLIGENT_TIERING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "INTELLIGENT_TIERING" - } - }, - "DEEP_ARCHIVE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DEEP_ARCHIVE" - } - }, - "GLACIER_IR": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GLACIER_IR" - } - } - } - }, - "com.amazonaws.s3control#S3Tag": { - "type": "structure", - "members": { - "Key": { - "target": "com.amazonaws.s3control#TagKeyString", - "traits": { - "smithy.api#documentation": "

Key of the tag

", - "smithy.api#required": {} - } - }, - "Value": { - "target": "com.amazonaws.s3control#TagValueString", - "traits": { - "smithy.api#documentation": "

Value of the tag

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for a key-value name pair.

" - } - }, - "com.amazonaws.s3control#S3TagSet": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#S3Tag" - } - }, - "com.amazonaws.s3control#S3UserMetadata": { - "type": "map", - "key": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String" - }, - "value": { - "target": "com.amazonaws.s3control#MaxLength1024String" - }, - "traits": { - "smithy.api#length": { - "min": 0, - "max": 8192 - } - } - }, - "com.amazonaws.s3control#SSECFilter": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

A filter that returns objects that are encrypted by server-side encryption with customer-provided keys (SSE-C).

" - } - }, - "com.amazonaws.s3control#SSEKMS": { - "type": "structure", - "members": { - "KeyId": { - "target": "com.amazonaws.s3control#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

A container for the ARN of the SSE-KMS encryption. This property is read-only and\n follows the following format: \n arn:aws:kms:us-east-1:example-account-id:key/example-9a73-4afc-8d29-8f5900cef44e\n \n

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

", - "smithy.api#xmlName": "SSE-KMS" - } - }, - "com.amazonaws.s3control#SSEKMSEncryption": { - "type": "structure", - "members": { - "KeyId": { - "target": "com.amazonaws.s3control#KmsKeyArnString", - "traits": { - "smithy.api#documentation": "

Specifies the ID of the Amazon Web Services Key Management Service (Amazon Web Services KMS) symmetric encryption\n customer managed key to use for encrypting generated manifest objects.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Configuration for the use of SSE-KMS to encrypt generated manifest objects.

", - "smithy.api#xmlName": "SSE-KMS" - } - }, - "com.amazonaws.s3control#SSEKMSFilter": { - "type": "structure", - "members": { - "KmsKeyArn": { - "target": "com.amazonaws.s3control#NonEmptyKmsKeyArnString", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the customer managed KMS key to use for the filter \n to return objects that are encrypted by the specified key. For best performance, \n we recommend using the KMSKeyArn filter in conjunction with other object metadata filters, like MatchAnyPrefix, CreatedAfter, or \n MatchAnyStorageClass.

\n \n

You must provide the full KMS Key ARN. You can't use an alias name or alias ARN. \n For more information, see \n KMS keys in the Amazon Web Services Key Management Service Developer Guide.

\n
" - } - }, - "BucketKeyEnabled": { - "target": "com.amazonaws.s3control#Boolean", - "traits": { - "smithy.api#default": null, - "smithy.api#documentation": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption \n using Amazon Web Services Key Management Service (Amazon Web Services KMS) keys (SSE-KMS). If specified, will filter SSE-KMS encrypted objects by S3 Bucket Key status. \n For more information, see Reducing the cost of SSE-KMS with Amazon S3 Bucket Keys\n in the Amazon S3 User Guide.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A filter that returns objects that are encrypted by server-side encryption with Amazon Web Services KMS (SSE-KMS).

" - } - }, - "com.amazonaws.s3control#SSEKMSKeyId": { - "type": "string" - }, - "com.amazonaws.s3control#SSES3": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

", - "smithy.api#xmlName": "SSE-S3" - } - }, - "com.amazonaws.s3control#SSES3Encryption": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

Configuration for the use of SSE-S3 to encrypt generated manifest objects.

", - "smithy.api#xmlName": "SSE-S3" - } - }, - "com.amazonaws.s3control#SSES3Filter": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

A filter that returns objects that are encrypted by server-side encryption with Amazon S3 managed keys (SSE-S3).

" - } - }, - "com.amazonaws.s3control#Scope": { - "type": "structure", - "members": { - "Prefixes": { - "target": "com.amazonaws.s3control#PrefixesList", - "traits": { - "smithy.api#documentation": "

You can specify any amount of prefixes, but the total length of characters of all\n prefixes must be less than 256 bytes in size.

", - "smithy.api#xmlName": "Prefixes" - } - }, - "Permissions": { - "target": "com.amazonaws.s3control#ScopePermissionList", - "traits": { - "smithy.api#documentation": "

You can include one or more API operations as permissions.

", - "smithy.api#xmlName": "Permissions" - } - } - }, - "traits": { - "smithy.api#documentation": "

You can use the access point scope to restrict access to specific prefixes, API operations, or a\n combination of both.

\n

For more information, see Manage\n the scope of your access points for directory buckets.

" - } - }, - "com.amazonaws.s3control#ScopePermission": { - "type": "enum", - "members": { - "GetObject": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GetObject" - } - }, - "GetObjectAttributes": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GetObjectAttributes" - } - }, - "ListMultipartUploadParts": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ListMultipartUploadParts" - } - }, - "ListBucket": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ListBucket" - } - }, - "ListBucketMultipartUploads": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ListBucketMultipartUploads" - } - }, - "PutObject": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "PutObject" - } - }, - "DeleteObject": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DeleteObject" - } - }, - "AbortMultipartUpload": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "AbortMultipartUpload" - } - } - } - }, - "com.amazonaws.s3control#ScopePermissionList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#ScopePermission", - "traits": { - "smithy.api#xmlName": "Permission" - } - } - }, - "com.amazonaws.s3control#SecretAccessKey": { - "type": "string", - "traits": { - "smithy.api#sensitive": {} - } - }, - "com.amazonaws.s3control#SelectionCriteria": { - "type": "structure", - "members": { - "Delimiter": { - "target": "com.amazonaws.s3control#StorageLensPrefixLevelDelimiter", - "traits": { - "smithy.api#documentation": "

A container for the delimiter of the selection criteria being used.

" - } - }, - "MaxDepth": { - "target": "com.amazonaws.s3control#StorageLensPrefixLevelMaxDepth", - "traits": { - "smithy.api#documentation": "

The max depth of the selection criteria

" - } - }, - "MinStorageBytesPercentage": { - "target": "com.amazonaws.s3control#MinStorageBytesPercentage", - "traits": { - "smithy.api#documentation": "

The minimum number of storage bytes percentage whose metrics will be selected.

\n \n

You must choose a value greater than or equal to 1.0.

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

" - } - }, - "com.amazonaws.s3control#SessionToken": { - "type": "string", - "traits": { - "smithy.api#sensitive": {} - } - }, - "com.amazonaws.s3control#Setting": { - "type": "boolean", - "traits": { - "smithy.api#default": false - } - }, - "com.amazonaws.s3control#SourceSelectionCriteria": { - "type": "structure", - "members": { - "SseKmsEncryptedObjects": { - "target": "com.amazonaws.s3control#SseKmsEncryptedObjects", - "traits": { - "smithy.api#documentation": "

A filter that you can use to select Amazon S3 objects that are encrypted with server-side\n encryption by using Key Management Service (KMS) keys. If you include\n SourceSelectionCriteria in the replication configuration, this element is\n required.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" - } - }, - "ReplicaModifications": { - "target": "com.amazonaws.s3control#ReplicaModifications", - "traits": { - "smithy.api#documentation": "

A filter that you can use to specify whether replica modification sync is enabled.\n S3 on Outposts replica modification sync can help you keep object metadata synchronized\n between replicas and source objects. By default, S3 on Outposts replicates metadata from the\n source objects to the replicas only. When replica modification sync is enabled,\n S3 on Outposts replicates metadata changes made to the replica copies back to the source\n object, making the replication bidirectional.

\n

To replicate object metadata modifications on replicas, you can specify this element and\n set the Status of this element to Enabled.

\n \n

You must enable replica modification sync on the source and destination buckets to\n replicate replica metadata changes between the source and the replicas.

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container that describes additional filters for identifying the source objects that\n you want to replicate. You can choose to enable or disable the replication of these\n objects.

" - } - }, - "com.amazonaws.s3control#SseKmsEncryptedObjects": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3control#SseKmsEncryptedObjectsStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether Amazon S3 replicates objects that are created with server-side encryption\n by using an KMS key stored in Key Management Service.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for filter information that you can use to select S3 objects that are\n encrypted with Key Management Service (KMS).

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" - } - }, - "com.amazonaws.s3control#SseKmsEncryptedObjectsStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3control#StorageClassList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#S3StorageClass" - } - }, - "com.amazonaws.s3control#StorageLensArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1024 - }, - "smithy.api#pattern": "^arn:[a-z\\-]+:s3:[a-z0-9\\-]+:\\d{12}:storage\\-lens\\/" - } - }, - "com.amazonaws.s3control#StorageLensAwsOrg": { - "type": "structure", - "members": { - "Arn": { - "target": "com.amazonaws.s3control#AwsOrgArn", - "traits": { - "smithy.api#documentation": "

A container for the Amazon Resource Name (ARN) of the Amazon Web Services organization. This property\n is read-only and follows the following format: \n arn:aws:organizations:us-east-1:example-account-id:organization/o-ex2l495dck\n \n

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

The Amazon Web Services organization for your S3 Storage Lens.

" - } - }, - "com.amazonaws.s3control#StorageLensConfiguration": { - "type": "structure", - "members": { - "Id": { - "target": "com.amazonaws.s3control#ConfigId", - "traits": { - "smithy.api#documentation": "

A container for the Amazon S3 Storage Lens configuration ID.

", - "smithy.api#required": {} - } - }, - "AccountLevel": { - "target": "com.amazonaws.s3control#AccountLevel", - "traits": { - "smithy.api#documentation": "

A container for all the account-level configurations of your S3 Storage Lens\n configuration.

", - "smithy.api#required": {} - } - }, - "Include": { - "target": "com.amazonaws.s3control#Include", - "traits": { - "smithy.api#documentation": "

A container for what is included in this configuration. This container can only be valid\n if there is no Exclude container submitted, and it's not empty.

" - } - }, - "Exclude": { - "target": "com.amazonaws.s3control#Exclude", - "traits": { - "smithy.api#documentation": "

A container for what is excluded in this configuration. This container can only be valid\n if there is no Include container submitted, and it's not empty.

" - } - }, - "DataExport": { - "target": "com.amazonaws.s3control#StorageLensDataExport", - "traits": { - "smithy.api#documentation": "

A container to specify the properties of your S3 Storage Lens metrics export including, the\n destination, schema and format.

" - } - }, - "IsEnabled": { - "target": "com.amazonaws.s3control#IsEnabled", - "traits": { - "smithy.api#default": false, - "smithy.api#documentation": "

A container for whether the S3 Storage Lens configuration is enabled.

", - "smithy.api#required": {} - } - }, - "AwsOrg": { - "target": "com.amazonaws.s3control#StorageLensAwsOrg", - "traits": { - "smithy.api#documentation": "

A container for the Amazon Web Services organization for this S3 Storage Lens configuration.

" - } - }, - "StorageLensArn": { - "target": "com.amazonaws.s3control#StorageLensArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the S3 Storage Lens configuration. This property is read-only\n and follows the following format: \n arn:aws:s3:us-east-1:example-account-id:storage-lens/your-dashboard-name\n \n

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for the Amazon S3 Storage Lens configuration.

" - } - }, - "com.amazonaws.s3control#StorageLensConfigurationList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#ListStorageLensConfigurationEntry", - "traits": { - "smithy.api#xmlName": "StorageLensConfiguration" - } - } - }, - "com.amazonaws.s3control#StorageLensDataExport": { - "type": "structure", - "members": { - "S3BucketDestination": { - "target": "com.amazonaws.s3control#S3BucketDestination", - "traits": { - "smithy.api#documentation": "

A container for the bucket where the S3 Storage Lens metrics export will be located.

\n \n

This bucket must be located in the same Region as the storage lens configuration.\n

\n
" - } - }, - "CloudWatchMetrics": { - "target": "com.amazonaws.s3control#CloudWatchMetrics", - "traits": { - "smithy.api#documentation": "

A container for enabling Amazon CloudWatch publishing for S3 Storage Lens metrics.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container to specify the properties of your S3 Storage Lens metrics export, including the\n destination, schema, and format.

" - } - }, - "com.amazonaws.s3control#StorageLensDataExportEncryption": { - "type": "structure", - "members": { - "SSES3": { - "target": "com.amazonaws.s3control#SSES3", - "traits": { - "smithy.api#documentation": "

", - "smithy.api#xmlName": "SSE-S3" - } - }, - "SSEKMS": { - "target": "com.amazonaws.s3control#SSEKMS", - "traits": { - "smithy.api#documentation": "

", - "smithy.api#xmlName": "SSE-KMS" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for the encryption of the S3 Storage Lens metrics exports.

" - } - }, - "com.amazonaws.s3control#StorageLensGroup": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.s3control#StorageLensGroupName", - "traits": { - "smithy.api#documentation": "

Contains the name of the Storage Lens group.

", - "smithy.api#required": {} - } - }, - "Filter": { - "target": "com.amazonaws.s3control#StorageLensGroupFilter", - "traits": { - "smithy.api#documentation": "

Sets the criteria for the Storage Lens group data that is displayed. For multiple filter\n conditions, the AND or OR logical operator is used.

", - "smithy.api#required": {} - } - }, - "StorageLensGroupArn": { - "target": "com.amazonaws.s3control#StorageLensGroupArn", - "traits": { - "smithy.api#documentation": "

Contains the Amazon Resource Name (ARN) of the Storage Lens group. This property is\n read-only.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A custom grouping of objects that include filters for prefixes, suffixes, object tags,\n object size, or object age. You can create an S3 Storage Lens group that includes a single\n filter or multiple filter conditions. To specify multiple filter conditions, you use\n AND or OR logical operators.

" - } - }, - "com.amazonaws.s3control#StorageLensGroupAndOperator": { - "type": "structure", - "members": { - "MatchAnyPrefix": { - "target": "com.amazonaws.s3control#MatchAnyPrefix", - "traits": { - "smithy.api#documentation": "

Contains a list of prefixes. At least one prefix must be specified. Up to 10 prefixes\n are allowed.

" - } - }, - "MatchAnySuffix": { - "target": "com.amazonaws.s3control#MatchAnySuffix", - "traits": { - "smithy.api#documentation": "

Contains a list of suffixes. At least one suffix must be specified. Up to 10 suffixes\n are allowed.

" - } - }, - "MatchAnyTag": { - "target": "com.amazonaws.s3control#MatchAnyTag", - "traits": { - "smithy.api#documentation": "

Contains the list of object tags. At least one object tag must be specified. Up to 10\n object tags are allowed.

" - } - }, - "MatchObjectAge": { - "target": "com.amazonaws.s3control#MatchObjectAge", - "traits": { - "smithy.api#documentation": "

Contains DaysGreaterThan and DaysLessThan to define the\n object age range (minimum and maximum number of days).

" - } - }, - "MatchObjectSize": { - "target": "com.amazonaws.s3control#MatchObjectSize", - "traits": { - "smithy.api#documentation": "

Contains BytesGreaterThan and BytesLessThan to define the\n object size range (minimum and maximum number of Bytes).

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A logical operator that allows multiple filter conditions to be joined for more complex\n comparisons of Storage Lens group data.

" - } - }, - "com.amazonaws.s3control#StorageLensGroupArn": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 4, - "max": 1024 - }, - "smithy.api#pattern": "^arn:[a-z\\-]+:s3:[a-z0-9\\-]+:\\d{12}:storage\\-lens\\-group\\/" - } - }, - "com.amazonaws.s3control#StorageLensGroupFilter": { - "type": "structure", - "members": { - "MatchAnyPrefix": { - "target": "com.amazonaws.s3control#MatchAnyPrefix", - "traits": { - "smithy.api#documentation": "

Contains a list of prefixes. At least one prefix must be specified. Up to 10 prefixes\n are allowed.

" - } - }, - "MatchAnySuffix": { - "target": "com.amazonaws.s3control#MatchAnySuffix", - "traits": { - "smithy.api#documentation": "

Contains a list of suffixes. At least one suffix must be specified. Up to 10 suffixes\n are allowed.

" - } - }, - "MatchAnyTag": { - "target": "com.amazonaws.s3control#MatchAnyTag", - "traits": { - "smithy.api#documentation": "

Contains the list of S3 object tags. At least one object tag must be specified. Up to\n 10 object tags are allowed.

" - } - }, - "MatchObjectAge": { - "target": "com.amazonaws.s3control#MatchObjectAge", - "traits": { - "smithy.api#documentation": "

Contains DaysGreaterThan and DaysLessThan to define the\n object age range (minimum and maximum number of days).

" - } - }, - "MatchObjectSize": { - "target": "com.amazonaws.s3control#MatchObjectSize", - "traits": { - "smithy.api#documentation": "

Contains BytesGreaterThan and BytesLessThan to define the\n object size range (minimum and maximum number of Bytes).

" - } - }, - "And": { - "target": "com.amazonaws.s3control#StorageLensGroupAndOperator", - "traits": { - "smithy.api#documentation": "

A logical operator that allows multiple filter conditions to be joined for more complex\n comparisons of Storage Lens group data. Objects must match all of the listed filter\n conditions that are joined by the And logical operator. Only one of each\n filter condition is allowed.

" - } - }, - "Or": { - "target": "com.amazonaws.s3control#StorageLensGroupOrOperator", - "traits": { - "smithy.api#documentation": "

A single logical operator that allows multiple filter conditions to be joined. Objects\n can match any of the listed filter conditions, which are joined by the Or\n logical operator. Only one of each filter condition is allowed.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The filter element sets the criteria for the Storage Lens group data that is displayed.\n For multiple filter conditions, the AND or OR logical operator is\n used.

" - } - }, - "com.amazonaws.s3control#StorageLensGroupLevel": { - "type": "structure", - "members": { - "SelectionCriteria": { - "target": "com.amazonaws.s3control#StorageLensGroupLevelSelectionCriteria", - "traits": { - "smithy.api#documentation": "

Indicates which Storage Lens group ARNs to include or exclude in the Storage Lens group\n aggregation. If this value is left null, then all Storage Lens groups are selected.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the Storage Lens groups to include in the Storage Lens group aggregation.\n

" - } - }, - "com.amazonaws.s3control#StorageLensGroupLevelExclude": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#StorageLensGroupArn", - "traits": { - "smithy.api#xmlName": "Arn" - } - } - }, - "com.amazonaws.s3control#StorageLensGroupLevelInclude": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#StorageLensGroupArn", - "traits": { - "smithy.api#xmlName": "Arn" - } - } - }, - "com.amazonaws.s3control#StorageLensGroupLevelSelectionCriteria": { - "type": "structure", - "members": { - "Include": { - "target": "com.amazonaws.s3control#StorageLensGroupLevelInclude", - "traits": { - "smithy.api#documentation": "

Indicates which Storage Lens group ARNs to include in the Storage Lens group\n aggregation.

" - } - }, - "Exclude": { - "target": "com.amazonaws.s3control#StorageLensGroupLevelExclude", - "traits": { - "smithy.api#documentation": "

Indicates which Storage Lens group ARNs to exclude from the Storage Lens group\n aggregation.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Indicates which Storage Lens group ARNs to include or exclude in the Storage Lens group\n aggregation. You can only attach Storage Lens groups to your Storage Lens dashboard if\n they're included in your Storage Lens group aggregation. If this value is left null, then\n all Storage Lens groups are selected.

" - } - }, - "com.amazonaws.s3control#StorageLensGroupList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#ListStorageLensGroupEntry", - "traits": { - "smithy.api#xmlName": "StorageLensGroup" - } - } - }, - "com.amazonaws.s3control#StorageLensGroupName": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 64 - }, - "smithy.api#pattern": "^[a-zA-Z0-9\\-\\_]+$" - } - }, - "com.amazonaws.s3control#StorageLensGroupOrOperator": { - "type": "structure", - "members": { - "MatchAnyPrefix": { - "target": "com.amazonaws.s3control#MatchAnyPrefix", - "traits": { - "smithy.api#documentation": "

Filters objects that match any of the specified prefixes.

" - } - }, - "MatchAnySuffix": { - "target": "com.amazonaws.s3control#MatchAnySuffix", - "traits": { - "smithy.api#documentation": "

Filters objects that match any of the specified suffixes.

" - } - }, - "MatchAnyTag": { - "target": "com.amazonaws.s3control#MatchAnyTag", - "traits": { - "smithy.api#documentation": "

Filters objects that match any of the specified S3 object tags.

" - } - }, - "MatchObjectAge": { - "target": "com.amazonaws.s3control#MatchObjectAge", - "traits": { - "smithy.api#documentation": "

Filters objects that match the specified object age range.

" - } - }, - "MatchObjectSize": { - "target": "com.amazonaws.s3control#MatchObjectSize", - "traits": { - "smithy.api#documentation": "

Filters objects that match the specified object size range.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container element for specifying Or rule conditions. The rule conditions\n determine the subset of objects to which the Or rule applies. Objects can\n match any of the listed filter conditions, which are joined by the Or logical\n operator. Only one of each filter condition is allowed.

" - } - }, - "com.amazonaws.s3control#StorageLensPrefixLevelDelimiter": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 1 - } - } - }, - "com.amazonaws.s3control#StorageLensPrefixLevelMaxDepth": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 10 - } - } - }, - "com.amazonaws.s3control#StorageLensTag": { - "type": "structure", - "members": { - "Key": { - "target": "com.amazonaws.s3control#TagKeyString", - "traits": { - "smithy.api#documentation": "

", - "smithy.api#required": {} - } - }, - "Value": { - "target": "com.amazonaws.s3control#TagValueString", - "traits": { - "smithy.api#documentation": "

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

" - } - }, - "com.amazonaws.s3control#StorageLensTags": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#StorageLensTag", - "traits": { - "smithy.api#xmlName": "Tag" - } - } - }, - "com.amazonaws.s3control#StringForNextToken": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1024 - }, - "smithy.api#pattern": "^[A-Za-z0-9\\+\\:\\/\\=\\?\\#-_]+$" - } - }, - "com.amazonaws.s3control#SubmitMultiRegionAccessPointRoutes": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#SubmitMultiRegionAccessPointRoutesRequest" - }, - "output": { - "target": "com.amazonaws.s3control#SubmitMultiRegionAccessPointRoutesResult" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Submits an updated route configuration for a Multi-Region Access Point. This API operation updates the\n routing status for the specified Regions from active to passive, or from passive to active.\n A value of 0 indicates a passive status, which means that traffic won't be\n routed to the specified Region. A value of 100 indicates an active status,\n which means that traffic will be routed to the specified Region. At least one Region must\n be active at all times.

\n

When the routing configuration is changed, any in-progress operations (uploads, copies,\n deletes, and so on) to formerly active Regions will continue to run to their final\n completion state (success or failure). The routing configurations of any Regions that\n aren’t specified remain unchanged.

\n \n

Updated routing configurations might not be immediately applied. It can take up to 2\n minutes for your changes to take effect.

\n
\n

To submit routing control changes and failover requests, use the Amazon S3 failover control\n infrastructure endpoints in these five Amazon Web Services Regions:

\n
    \n
  • \n

    \n us-east-1\n

    \n
  • \n
  • \n

    \n us-west-2\n

    \n
  • \n
  • \n

    \n ap-southeast-2\n

    \n
  • \n
  • \n

    \n ap-northeast-1\n

    \n
  • \n
  • \n

    \n eu-west-1\n

    \n
  • \n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PATCH", - "uri": "/v20180820/mrap/instances/{Mrap+}/routes", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#SubmitMultiRegionAccessPointRoutesRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "Mrap": { - "target": "com.amazonaws.s3control#MultiRegionAccessPointId", - "traits": { - "smithy.api#documentation": "

The Multi-Region Access Point ARN.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "RouteUpdates": { - "target": "com.amazonaws.s3control#RouteList", - "traits": { - "smithy.api#documentation": "

The different routes that make up the new route configuration. Active routes return a\n value of 100, and passive routes return a value of 0.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#SubmitMultiRegionAccessPointRoutesResult": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#Suffix": { - "type": "string" - }, - "com.amazonaws.s3control#SuspendedCause": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1024 - } - } - }, - "com.amazonaws.s3control#SuspendedDate": { - "type": "timestamp" - }, - "com.amazonaws.s3control#Tag": { - "type": "structure", - "members": { - "Key": { - "target": "com.amazonaws.s3control#TagKeyString", - "traits": { - "smithy.api#documentation": "

The key of the key-value pair of a tag added to your Amazon Web Services resource. A tag key can be up\n to 128 Unicode characters in length and is case-sensitive. System created tags that begin\n with aws: aren’t supported.

", - "smithy.api#required": {} - } - }, - "Value": { - "target": "com.amazonaws.s3control#TagValueString", - "traits": { - "smithy.api#documentation": "

The value of the key-value pair of a tag added to your Amazon Web Services resource. A tag value can\n be up to 256 Unicode characters in length and is case-sensitive.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A key-value pair that you use to label your resources. You can add tags to new\n resources when you create them, or you can add tags to existing resources. Tags can help\n you organize, track costs for, and control access to resources.

" - } - }, - "com.amazonaws.s3control#TagKeyList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#TagKeyString" - }, - "traits": { - "smithy.api#length": { - "min": 0, - "max": 50 - } - } - }, - "com.amazonaws.s3control#TagKeyString": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 128 - }, - "smithy.api#pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" - } - }, - "com.amazonaws.s3control#TagList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#Tag", - "traits": { - "smithy.api#xmlName": "Tag" - } - }, - "traits": { - "smithy.api#length": { - "min": 0, - "max": 50 - } - } - }, - "com.amazonaws.s3control#TagResource": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#TagResourceRequest" - }, - "output": { - "target": "com.amazonaws.s3control#TagResourceResult" - }, - "traits": { - "smithy.api#documentation": "

Creates a new user-defined tag or updates an existing tag. Each tag is a label consisting of a key and value that is applied to your resource. Tags can help you organize, track costs for, and control access to your resources. You can add up to 50 Amazon Web Services resource tags for each S3 resource.

\n \n

This operation is only supported for the following Amazon S3 resource:

\n \n
\n \n

This operation is only supported for the following Amazon S3 resource:

\n \n
\n
\n
Permissions
\n
\n

For Storage Lens groups and S3 Access Grants, you must have the\n s3:TagResource permission to use this operation.

\n

For more information about the required Storage Lens Groups permissions, see\n Setting account permissions to use S3 Storage Lens groups.

\n
\n
Directory bucket permissions
\n
\n

For directory buckets and access points for directory buckets, you must have the s3express:TagResource permission to use this operation. For more information about directory buckets policies and permissions, see Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com.

\n
\n
\n

For information about S3 Tagging errors, see List of Amazon S3 Tagging error codes.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "POST", - "uri": "/v20180820/tags/{ResourceArn+}", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#TagResourceRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

\nThe Amazon Web Services account ID that created the S3 resource that you're trying to add tags to or the requester's account ID. \n

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "ResourceArn": { - "target": "com.amazonaws.s3control#S3ResourceArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the S3 resource that you're applying tags to. The\n tagged resource can be a directory bucket, S3 Storage Lens group or S3 Access Grants instance,\n registered location, or grant.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "ResourceArn" - } - } - }, - "Tags": { - "target": "com.amazonaws.s3control#TagList", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services resource tags that you want to add to the specified S3 resource.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#TagResourceResult": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#TagValueString": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 256 - }, - "smithy.api#pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" - } - }, - "com.amazonaws.s3control#Tagging": { - "type": "structure", - "members": { - "TagSet": { - "target": "com.amazonaws.s3control#S3TagSet", - "traits": { - "smithy.api#documentation": "

A collection for a set of tags.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

" - } - }, - "com.amazonaws.s3control#TimeStamp": { - "type": "timestamp" - }, - "com.amazonaws.s3control#TooManyRequestsException": { - "type": "structure", - "members": { - "Message": { - "target": "com.amazonaws.s3control#ExceptionMessage" - } - }, - "traits": { - "smithy.api#documentation": "

", - "smithy.api#error": "client" - } - }, - "com.amazonaws.s3control#TooManyTagsException": { - "type": "structure", - "members": { - "Message": { - "target": "com.amazonaws.s3control#ExceptionMessage" - } - }, - "traits": { - "smithy.api#documentation": "

Amazon S3 throws this exception if you have too many tags in your tag set.

", - "smithy.api#error": "client" - } - }, - "com.amazonaws.s3control#TrafficDialPercentage": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 0, - "max": 100 - } - } - }, - "com.amazonaws.s3control#Transition": { - "type": "structure", - "members": { - "Date": { - "target": "com.amazonaws.s3control#Date", - "traits": { - "smithy.api#documentation": "

Indicates when objects are transitioned to the specified storage class. The date value\n must be in ISO 8601 format. The time is always midnight UTC.

" - } - }, - "Days": { - "target": "com.amazonaws.s3control#Days", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

Indicates the number of days after creation when objects are transitioned to the\n specified storage class. The value must be a positive integer.

" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3control#TransitionStorageClass", - "traits": { - "smithy.api#documentation": "

The storage class to which you want the object to transition.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies when an object transitions to a specified storage class. For more information\n about Amazon S3 Lifecycle configuration rules, see \n Transitioning objects using Amazon S3 Lifecycle in the\n Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3control#TransitionList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3control#Transition", - "traits": { - "smithy.api#xmlName": "Transition" - } - } - }, - "com.amazonaws.s3control#TransitionStorageClass": { - "type": "enum", - "members": { - "GLACIER": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GLACIER" - } - }, - "STANDARD_IA": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "STANDARD_IA" - } - }, - "ONEZONE_IA": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ONEZONE_IA" - } - }, - "INTELLIGENT_TIERING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "INTELLIGENT_TIERING" - } - }, - "DEEP_ARCHIVE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DEEP_ARCHIVE" - } - } - } - }, - "com.amazonaws.s3control#UntagResource": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#UntagResourceRequest" - }, - "output": { - "target": "com.amazonaws.s3control#UntagResourceResult" - }, - "traits": { - "smithy.api#documentation": "

This operation removes the specified user-defined tags from an S3 resource. You can pass\n one or more tag keys.

\n \n

This operation is only supported for the following Amazon S3 resources:

\n \n
\n
\n
Permissions
\n
\n

For Storage Lens groups and S3 Access Grants, you must have the\n s3:UntagResource permission to use this operation.

\n

For more information about the required Storage Lens Groups permissions, see\n Setting account permissions to use S3 Storage Lens groups.

\n
\n
Directory bucket permissions
\n
\n

For directory buckets and access points for directory buckets, you must have\n the s3express:UntagResource permission to use this operation.\n For more information about directory buckets policies and permissions, see Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com.

\n
\n
\n

For information about S3 Tagging errors, see List of Amazon S3\n Tagging error codes.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "DELETE", - "uri": "/v20180820/tags/{ResourceArn+}", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#UntagResourceRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID that owns the resource that you're trying to remove the tags from.\n

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "ResourceArn": { - "target": "com.amazonaws.s3control#S3ResourceArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the S3 resource that you're removing tags from. The\n tagged resource can be a directory bucket, S3 Storage Lens group or S3 Access Grants instance,\n registered location, or grant.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "ResourceArn" - } - } - }, - "TagKeys": { - "target": "com.amazonaws.s3control#TagKeyList", - "traits": { - "smithy.api#documentation": "

The array of tag key-value pairs that you're trying to remove from of the S3 resource.\n

", - "smithy.api#httpQuery": "tagKeys", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#UntagResourceResult": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#UpdateAccessGrantsLocation": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#UpdateAccessGrantsLocationRequest" - }, - "output": { - "target": "com.amazonaws.s3control#UpdateAccessGrantsLocationResult" - }, - "traits": { - "smithy.api#documentation": "

Updates the IAM role of a registered location in your S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:UpdateAccessGrantsLocation permission to use\n this operation.

\n
\n
Additional Permissions
\n
\n

You must also have the following permission: iam:PassRole\n

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/accessgrantsinstance/location/{AccessGrantsLocationId}", - "code": 200 - }, - "smithy.api#httpChecksumRequired": {}, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#UpdateAccessGrantsLocationRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "AccessGrantsLocationId": { - "target": "com.amazonaws.s3control#AccessGrantsLocationId", - "traits": { - "smithy.api#documentation": "

The ID of the registered location that you are updating. S3 Access Grants assigns this ID when you\n register the location. S3 Access Grants assigns the ID default to the default location\n s3:// and assigns an auto-generated ID to other locations that you\n register.

\n

The ID of the registered location to which you are granting access. S3 Access Grants assigned this\n ID when you registered the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

\n

If you are passing the default location, you cannot create an access grant\n for the entire default location. You must also specify a bucket or a bucket and prefix in\n the Subprefix field.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "IAMRoleArn": { - "target": "com.amazonaws.s3control#IAMRoleArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants\n assumes this role to manage access to the registered location.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#UpdateAccessGrantsLocationResult": { - "type": "structure", - "members": { - "CreatedAt": { - "target": "com.amazonaws.s3control#CreationTimestamp", - "traits": { - "smithy.api#documentation": "

The date and time when you registered the location.

" - } - }, - "AccessGrantsLocationId": { - "target": "com.amazonaws.s3control#AccessGrantsLocationId", - "traits": { - "smithy.api#documentation": "

The ID of the registered location to which you are granting access. S3 Access Grants assigned this\n ID when you registered the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

" - } - }, - "AccessGrantsLocationArn": { - "target": "com.amazonaws.s3control#AccessGrantsLocationArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the registered location that you are updating.

" - } - }, - "LocationScope": { - "target": "com.amazonaws.s3control#S3Prefix", - "traits": { - "smithy.api#documentation": "

The S3 URI path of the location that you are updating. You cannot update the scope of\n the registered location. The location scope can be the default S3 location\n s3://, the S3 path to a bucket s3://, or the S3\n path to a bucket and prefix s3:///.

" - } - }, - "IAMRoleArn": { - "target": "com.amazonaws.s3control#IAMRoleArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role of the registered location. S3 Access Grants\n assumes this role to manage access to the registered location.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#UpdateJobPriority": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#UpdateJobPriorityRequest" - }, - "output": { - "target": "com.amazonaws.s3control#UpdateJobPriorityResult" - }, - "errors": [ - { - "target": "com.amazonaws.s3control#BadRequestException" - }, - { - "target": "com.amazonaws.s3control#InternalServiceException" - }, - { - "target": "com.amazonaws.s3control#NotFoundException" - }, - { - "target": "com.amazonaws.s3control#TooManyRequestsException" - } - ], - "traits": { - "smithy.api#documentation": "

Updates an existing S3 Batch Operations job's priority. For more information, see S3 Batch Operations in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

To use the UpdateJobPriority operation, you must have permission\n to perform the s3:UpdateJobPriority action.

\n
\n
\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "POST", - "uri": "/v20180820/jobs/{JobId}/priority", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#UpdateJobPriorityRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "JobId": { - "target": "com.amazonaws.s3control#JobId", - "traits": { - "smithy.api#documentation": "

The ID for the job whose priority you want to update.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "Priority": { - "target": "com.amazonaws.s3control#JobPriority", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

The priority you want to assign to this job.

", - "smithy.api#httpQuery": "priority", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#UpdateJobPriorityResult": { - "type": "structure", - "members": { - "JobId": { - "target": "com.amazonaws.s3control#JobId", - "traits": { - "smithy.api#documentation": "

The ID for the job whose priority Amazon S3 updated.

", - "smithy.api#required": {} - } - }, - "Priority": { - "target": "com.amazonaws.s3control#JobPriority", - "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

The new priority assigned to the specified job.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#UpdateJobStatus": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#UpdateJobStatusRequest" - }, - "output": { - "target": "com.amazonaws.s3control#UpdateJobStatusResult" - }, - "errors": [ - { - "target": "com.amazonaws.s3control#BadRequestException" - }, - { - "target": "com.amazonaws.s3control#InternalServiceException" - }, - { - "target": "com.amazonaws.s3control#JobStatusException" - }, - { - "target": "com.amazonaws.s3control#NotFoundException" - }, - { - "target": "com.amazonaws.s3control#TooManyRequestsException" - } - ], - "traits": { - "smithy.api#documentation": "

Updates the status for the specified job. Use this operation to confirm that you want to\n run a job or to cancel an existing job. For more information, see S3 Batch Operations in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

To use the UpdateJobStatus operation, you must have permission to\n perform the s3:UpdateJobStatus action.

\n
\n
\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "POST", - "uri": "/v20180820/jobs/{JobId}/status", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#UpdateJobStatusRequest": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "JobId": { - "target": "com.amazonaws.s3control#JobId", - "traits": { - "smithy.api#documentation": "

The ID of the job whose status you want to update.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "RequestedJobStatus": { - "target": "com.amazonaws.s3control#RequestedJobStatus", - "traits": { - "smithy.api#documentation": "

The status that you want to move the specified job to.

", - "smithy.api#httpQuery": "requestedJobStatus", - "smithy.api#required": {} - } - }, - "StatusUpdateReason": { - "target": "com.amazonaws.s3control#JobStatusUpdateReason", - "traits": { - "smithy.api#documentation": "

A description of the reason why you want to change the specified job's status. This\n field can be any string up to the maximum length.

", - "smithy.api#httpQuery": "statusUpdateReason" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#UpdateJobStatusResult": { - "type": "structure", - "members": { - "JobId": { - "target": "com.amazonaws.s3control#JobId", - "traits": { - "smithy.api#documentation": "

The ID for the job whose status was updated.

" - } - }, - "Status": { - "target": "com.amazonaws.s3control#JobStatus", - "traits": { - "smithy.api#documentation": "

The current status for the specified job.

" - } - }, - "StatusUpdateReason": { - "target": "com.amazonaws.s3control#JobStatusUpdateReason", - "traits": { - "smithy.api#documentation": "

The reason that the specified job's status was updated.

" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3control#UpdateStorageLensGroup": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3control#UpdateStorageLensGroupRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

\nUpdates the existing Storage Lens group.

\n

To use this operation, you must have the permission to perform the\n s3:UpdateStorageLensGroup action. For more information about the required Storage Lens\n Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

\n

For information about Storage Lens groups errors, see List of Amazon S3 Storage\n Lens error codes.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", - "smithy.api#endpoint": { - "hostPrefix": "{AccountId}." - }, - "smithy.api#http": { - "method": "PUT", - "uri": "/v20180820/storagelensgroup/{Name}", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "RequiresAccountId": { - "value": true - } - } - } - }, - "com.amazonaws.s3control#UpdateStorageLensGroupRequest": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.s3control#StorageLensGroupName", - "traits": { - "smithy.api#documentation": "

\nThe name of the Storage Lens group that you want to update.\n

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "AccountId": { - "target": "com.amazonaws.s3control#AccountId", - "traits": { - "smithy.api#documentation": "

\nThe Amazon Web Services account ID of the Storage Lens group owner.\n

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-account-id", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "AccountId" - } - } - }, - "StorageLensGroup": { - "target": "com.amazonaws.s3control#StorageLensGroup", - "traits": { - "smithy.api#documentation": "

\nThe JSON file that contains the Storage Lens group configuration.\n

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3control#UserArguments": { - "type": "map", - "key": { - "target": "com.amazonaws.s3control#NonEmptyMaxLength64String" - }, - "value": { - "target": "com.amazonaws.s3control#MaxLength1024String" - }, - "traits": { - "smithy.api#length": { - "min": 1, - "max": 10 - } - } - }, - "com.amazonaws.s3control#VersioningConfiguration": { - "type": "structure", - "members": { - "MFADelete": { - "target": "com.amazonaws.s3control#MFADelete", - "traits": { - "smithy.api#documentation": "

Specifies whether MFA delete is enabled or disabled in the bucket versioning\n configuration for the S3 on Outposts bucket.

", - "smithy.api#xmlName": "MfaDelete" - } - }, - "Status": { - "target": "com.amazonaws.s3control#BucketVersioningStatus", - "traits": { - "smithy.api#documentation": "

Sets the versioning state of the S3 on Outposts bucket.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the versioning state of an Amazon S3 on Outposts bucket. For more information, see\n PutBucketVersioning.

" - } - }, - "com.amazonaws.s3control#VpcConfiguration": { - "type": "structure", - "members": { - "VpcId": { - "target": "com.amazonaws.s3control#VpcId", - "traits": { - "smithy.api#documentation": "

If this field is specified, this access point will only allow connections from the specified VPC\n ID.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

The virtual private cloud (VPC) configuration for an access point.

" - } - }, - "com.amazonaws.s3control#VpcId": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 1024 + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-2", + "AWS::UseFIPS": true + }, + "operationName": "ListRegionalBuckets", + "operationParams": { + "AccountId": "123456789012", + "OutpostId": "op-123" + } + } + ], + "params": { + "AccountId": "123456789012", + "OutpostId": "op-123", + "Region": "us-east-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "outpost access points support dualstack@us-west-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-west-2.api.aws" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseDualStack": true + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + }, + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseDualStack": true + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + } + ], + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "outpost access points support dualstack@af-south-1", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.af-south-1.api.aws" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseDualStack": true + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + }, + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseDualStack": true + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + } + ], + "params": { + "AccessPointName": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "af-south-1", + "RequiresAccountId": true, + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "outpost access points support fips + dualstack@af-south-1", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts-fips.af-south-1.api.aws" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + }, + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + } + ], + "params": { + "AccessPointName": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "af-south-1", + "RequiresAccountId": true, + "UseDualStack": true, + "UseFIPS": true + } + }, + { + "documentation": "invalid ARN: must be include outpost ID@us-west-2", + "expect": { + "error": "Invalid ARN: The Outpost Id was not set" + }, + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost", + "AccountId": "123456789012", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "invalid ARN: must specify access point@us-west-2", + "expect": { + "error": "Invalid ARN: Expected a 4-component resource" + }, + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "invalid ARN@us-west-2", + "expect": { + "error": "Invalid ARN: Expected a 4-component resource" + }, + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:myaccesspoint", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "when set, AccountId drives AP construction@us-west-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://myid-1234.s3-control.us-west-2.amazonaws.com" + } + }, + "params": { + "AccessPointName": "myaccesspoint", + "AccountId": "myid-1234", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Account ID set inline and in ARN but they both match@us-west-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3Control::UseArnRegion": false + }, + "operationName": "GetAccessPoint", + "operationParams": { + "AccountId": "123456789012", + "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint" + } + } + ], + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseArnRegion": false, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Account ID set inline and in ARN and they do not match@us-west-2", + "expect": { + "error": "Invalid ARN: the accountId specified in the ARN (`123456789012`) does not match the parameter (`999999999999`)" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3Control::UseArnRegion": false + }, + "operationName": "GetAccessPoint", + "operationParams": { + "AccountId": "999999999999", + "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint" + } + } + ], + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "999999999999", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseArnRegion": false, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "get access point prefixed with account id using endpoint url@us-west-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://123456789012.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + }, + "operationName": "GetAccessPoint", + "operationParams": { + "AccountId": "123456789012", + "Name": "apname" + } + } + ], + "params": { + "AccessPointName": "apname", + "AccountId": "123456789012", + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "endpoint url with s3-outposts@us-west-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://beta.example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://beta.example.com" + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + } + ], + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Endpoint": "https://beta.example.com", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "access point name with a bucket arn@us-west-2", + "expect": { + "error": "Expected an outpost type `accesspoint`, found `bucket`" + }, + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Endpoint": "beta.example.com", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "bucket arn with access point name@us-west-2", + "expect": { + "error": "Invalid ARN: Expected an outpost type `bucket`, found `accesspoint`" + }, + "params": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "Endpoint": "beta.example.com", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "create bucket with outposts@us-west-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://beta.example.com" + } + }, + "params": { + "Bucket": "bucketname", + "Endpoint": "https://beta.example.com", + "OutpostId": "op-123", + "Region": "us-west-2", + "RequiresAccountId": false, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "get bucket with endpoint_url@us-west-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://beta.example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://beta.example.com" + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Endpoint": "https://beta.example.com", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "ListRegionalBucket + OutpostId endpoint url@us-east-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://beta.example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-2", + "SDK::Endpoint": "https://beta.example.com" + }, + "operationName": "ListRegionalBuckets", + "operationParams": { + "AccountId": "123456789012", + "OutpostId": "op-123" + } + } + ], + "params": { + "AccountId": "123456789012", + "Endpoint": "https://beta.example.com", + "OutpostId": "op-123", + "Region": "us-east-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "ListRegionalBucket + OutpostId + fips + endpoint url@us-east-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://beta.example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-2", + "AWS::UseFIPS": true, + "SDK::Endpoint": "https://beta.example.com" + }, + "operationName": "ListRegionalBuckets", + "operationParams": { + "AccountId": "123456789012", + "OutpostId": "op-123" + } + } + ], + "params": { + "AccountId": "123456789012", + "Endpoint": "https://beta.example.com", + "OutpostId": "op-123", + "Region": "us-east-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "ListRegionalBucket + OutpostId + fips + dualstack@us-east-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts-fips.us-east-2.api.aws" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-2", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true + }, + "operationName": "ListRegionalBuckets", + "operationParams": { + "AccountId": "123456789012", + "OutpostId": "op-123" + } + } + ], + "params": { + "AccountId": "123456789012", + "OutpostId": "op-123", + "Region": "us-east-2", + "RequiresAccountId": true, + "UseDualStack": true, + "UseFIPS": true + } + }, + { + "documentation": "CreateBucket + OutpostId endpoint url@us-east-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://beta.example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-2", + "AWS::UseFIPS": true, + "SDK::Endpoint": "https://beta.example.com" + }, + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "blah", + "OutpostId": "123" + } + } + ], + "params": { + "Bucket": "blah", + "Endpoint": "https://beta.example.com", + "OutpostId": "123", + "Region": "us-east-2", + "RequiresAccountId": false, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "dualstack cannot be used with outposts when an endpoint URL is set@us-west-2.", + "expect": { + "error": "Invalid Configuration: DualStack and custom endpoint are not supported" + }, + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "Endpoint": "https://s3-outposts.us-west-2.api.aws", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "vanilla bucket arn requires account id@us-west-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "CreateAccessPoint", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Name": "apname", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "bucket arn with UseArnRegion = true (arn region supercedes client configured region)@us-west-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "bucket ARN in gov partition (non-fips)@us-gov-east-1", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-gov-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-gov-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-gov-east-1" + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-gov-east-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "bucket ARN in gov partition with FIPS@us-gov-west-1", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-gov-west-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts-fips.us-gov-west-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-gov-west-1", + "AWS::UseFIPS": true + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-west-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-west-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-gov-west-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "bucket ARN in aws partition with FIPS@us-east-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts-fips.us-east-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-2", + "AWS::UseFIPS": true + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws:s3-outposts:us-east-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-east-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "bucket ARN in aws partition with fips + dualstack@us-east-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts-fips.us-east-2.api.aws" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-2", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws:s3-outposts:us-east-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-east-2", + "RequiresAccountId": true, + "UseDualStack": true, + "UseFIPS": true + } + }, + { + "documentation": "vanilla bucket arn requires account id@cn-north-1", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.cn-north-1.amazonaws.com.cn" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "CreateAccessPoint", + "operationParams": { + "Bucket": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Name": "apname", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws-cn:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "cn-north-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "bucket arn with UseArnRegion = true (arn region supercedes client configured region)@us-west-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "bucket ARN in gov partition (non-fips)@us-gov-east-1", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-gov-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-gov-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-gov-east-1" + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-gov-east-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "bucket ARN in gov partition with FIPS@us-gov-west-1", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-gov-west-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts-fips.us-gov-west-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-gov-west-1", + "AWS::UseFIPS": true + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-west-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-west-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-gov-west-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "bucket ARN in aws partition with FIPS@us-east-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts-fips.us-east-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-2", + "AWS::UseFIPS": true + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws:s3-outposts:us-east-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-east-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "Outposts support dualstack @us-west-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-west-2.api.aws" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseDualStack": true + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "vanilla bucket arn requires account id@af-south-1", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.af-south-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1" + }, + "operationName": "CreateAccessPoint", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Name": "apname", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws:s3-outposts:af-south-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "af-south-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "bucket arn with UseArnRegion = true (arn region supercedes client configured region)@us-west-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "bucket ARN in gov partition (non-fips)@us-gov-east-1", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-gov-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-gov-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-gov-east-1" + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-gov-east-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "bucket ARN in gov partition with FIPS@us-gov-west-1", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-gov-west-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts-fips.us-gov-west-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-gov-west-1", + "AWS::UseFIPS": true + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-west-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws-us-gov:s3-outposts:us-gov-west-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-gov-west-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "bucket ARN in aws partition with FIPS@us-east-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts-fips.us-east-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-2", + "AWS::UseFIPS": true + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws:s3-outposts:us-east-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-east-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "Invalid ARN: missing outpost id and bucket@us-west-2", + "expect": { + "error": "Invalid ARN: The Outpost Id was not set" + }, + "params": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Invalid ARN: missing bucket@us-west-2", + "expect": { + "error": "Invalid ARN: Expected a 4-component resource" + }, + "params": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Invalid ARN: missing outpost and bucket ids@us-west-2", + "expect": { + "error": "Invalid ARN: Expected a 4-component resource" + }, + "params": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:bucket", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Invalid ARN: missing bucket id@us-west-2", + "expect": { + "error": "Invalid ARN: expected a bucket name" + }, + "params": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "account id inserted into hostname@us-west-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://1234567890.s3-control.us-west-2.amazonaws.com" + } + }, + "params": { + "AccountId": "1234567890", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "account id prefix with dualstack@us-east-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://1234567890.s3-control.dualstack.us-east-1.amazonaws.com" + } + }, + "params": { + "AccountId": "1234567890", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "account id prefix with fips@us-east-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://1234567890.s3-control-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "AccountId": "1234567890", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "custom account id prefix with fips@us-east-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://123456789012.s3-control-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "AccountId": "123456789012", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "standard url @ us-east-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-control.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1" + } + }, + { + "documentation": "fips url @ us-east-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-control-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true + } + }, + { + "documentation": "dualstack url @ us-east-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-control.dualstack.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseDualStack": true + } + }, + { + "documentation": "fips,dualstack url @ us-east-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-control-fips.dualstack.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseDualStack": true, + "UseFIPS": true + } + }, + { + "documentation": "standard url @ cn-north-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-control.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1" + } + }, + { + "documentation": "fips @ cn-north-1", + "expect": { + "error": "Partition does not support FIPS" + }, + "params": { + "Region": "cn-north-1", + "UseDualStack": true, + "UseFIPS": true + } + }, + { + "documentation": "custom account id prefix @us-east-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://123456789012.s3-control.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "ListRegionalBuckets", + "operationParams": { + "AccountId": "123456789012" + } + } + ], + "params": { + "AccountId": "123456789012", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "invalid account id prefix @us-east-1", + "expect": { + "error": "AccountId must only contain a-z, A-Z, 0-9 and `-`." + }, + "params": { + "AccountId": "/?invalid¬-host*label", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "custom account id prefix with fips@us-east-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://123456789012.s3-control-fips.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "ListRegionalBuckets", + "operationParams": { + "AccountId": "123456789012" + } + } + ], + "params": { + "AccountId": "123456789012", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "custom account id prefix with dualstack,fips@us-east-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://123456789012.s3-control-fips.dualstack.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true + }, + "operationName": "ListRegionalBuckets", + "operationParams": { + "AccountId": "123456789012" + } + } + ], + "params": { + "AccountId": "123456789012", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": true, + "UseFIPS": true + } + }, + { + "documentation": "custom account id with custom endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://123456789012.example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://example.com" + }, + "operationName": "ListRegionalBuckets", + "operationParams": { + "AccountId": "123456789012" + } + } + ], + "params": { + "AccountId": "123456789012", + "Region": "us-east-1", + "RequiresAccountId": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "RequiresAccountId with AccountId unset", + "expect": { + "error": "AccountId is required but not set" + }, + "params": { + "Region": "us-east-1", + "RequiresAccountId": true + } + }, + { + "documentation": "RequiresAccountId with AccountId unset and custom endpoint", + "expect": { + "error": "AccountId is required but not set" + }, + "params": { + "Region": "us-east-1", + "Endpoint": "https://beta.example.com", + "RequiresAccountId": true + } + }, + { + "documentation": "RequiresAccountId with invalid AccountId and custom endpoint", + "expect": { + "error": "AccountId must only contain a-z, A-Z, 0-9 and `-`." + }, + "params": { + "Region": "us-east-1", + "Endpoint": "https://beta.example.com", + "AccountId": "/?invalid¬-host*label", + "RequiresAccountId": true + } + }, + { + "documentation": "account id with custom endpoint, fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://123456789012.example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "SDK::Endpoint": "https://example.com" + }, + "operationName": "ListRegionalBuckets", + "operationParams": { + "AccountId": "123456789012" + } + } + ], + "params": { + "AccountId": "123456789012", + "Region": "us-east-1", + "RequiresAccountId": true, + "Endpoint": "https://example.com", + "UseFIPS": true + } + }, + { + "documentation": "custom endpoint, fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "Endpoint": "https://example.com", + "UseFIPS": true + } + }, + { + "documentation": "custom endpoint, fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "Endpoint": "https://example.com", + "UseFIPS": true + } + }, + { + "documentation": "custom endpoint, DualStack", + "expect": { + "error": "Invalid Configuration: DualStack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "Endpoint": "https://example.com", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "region not set", + "expect": { + "error": "Region must be set" + } + }, + { + "documentation": "invalid partition", + "expect": { + "error": "Invalid region: region was not a valid DNS name." + }, + "params": { + "Region": "invalid-region 42" + } + }, + { + "documentation": "ListRegionalBuckets + OutpostId without accountId set.", + "expect": { + "error": "AccountId is required but not set" + }, + "params": { + "OutpostId": "op-123", + "Region": "us-east-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "ListRegionalBuckets + OutpostId with invalid accountId set.", + "expect": { + "error": "AccountId must only contain a-z, A-Z, 0-9 and `-`." + }, + "params": { + "AccountId": "/?invalid¬-host*label", + "OutpostId": "op-123", + "Region": "us-east-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "accesspoint set but missing accountId", + "expect": { + "error": "AccountId is required but not set" + }, + "params": { + "AccessPointName": "myaccesspoint", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "outpost accesspoint ARN with missing accountId", + "expect": { + "error": "Invalid ARN: missing account ID" + }, + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-west-2::outpost:op-01234567890123456:outpost:op1", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "bucket ARN with missing accountId", + "expect": { + "error": "Invalid ARN: missing account ID" + }, + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-west-2::outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "endpoint url with accesspoint (non-arn)", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://123456789012.beta.example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://beta.example.com" + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "apname", + "AccountId": "123456789012" + } + } + ], + "params": { + "AccessPointName": "apname", + "Endpoint": "https://beta.example.com", + "AccountId": "123456789012", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "access point name with an accesspoint arn@us-west-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://beta.example.com" + } + }, + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "Endpoint": "https://beta.example.com", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "DualStack + Custom endpoint is not supported(non-arn)", + "expect": { + "error": "Invalid Configuration: DualStack and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseDualStack": true, + "SDK::Endpoint": "https://beta.example.com" + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "apname", + "AccountId": "123456789012" + } + } + ], + "params": { + "AccessPointName": "apname", + "Endpoint": "https://beta.example.com", + "AccountId": "123456789012", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "get bucket with custom endpoint and dualstack is not supported@us-west-2", + "expect": { + "error": "Invalid Configuration: DualStack and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseDualStack": true, + "SDK::Endpoint": "https://s3-outposts.us-west-2.api.aws" + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Endpoint": "https://s3-outposts.us-west-2.api.aws", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "ListRegionalBuckets + OutpostId with fips in CN.", + "expect": { + "error": "Partition does not support FIPS" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "ListRegionalBuckets", + "operationParams": { + "OutpostId": "op-123", + "AccountId": "012345678912" + } + } + ], + "params": { + "AccountId": "012345678912", + "OutpostId": "op-123", + "Region": "cn-north-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "ListRegionalBuckets + invalid OutpostId.", + "expect": { + "error": "OutpostId must only contain a-z, A-Z, 0-9 and `-`." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-1" + }, + "operationName": "ListRegionalBuckets", + "operationParams": { + "OutpostId": "?outpost/invalid+", + "AccountId": "012345678912" + } + } + ], + "params": { + "AccountId": "012345678912", + "OutpostId": "?outpost/invalid+", + "Region": "us-west-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "bucket ARN with mismatched accountId", + "expect": { + "error": "Invalid ARN: the accountId specified in the ARN (`999999`) does not match the parameter (`012345678912`)" + }, + "params": { + "Bucket": "arn:aws:s3-outposts:us-west-2:999999:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "012345678912", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "OutpostId with invalid region", + "expect": { + "error": "Invalid region: region was not a valid DNS name." + }, + "params": { + "OutpostId": "op-123", + "Region": "invalid-region 42", + "AccountId": "0123456", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "OutpostId with RequireAccountId unset", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-west-2.amazonaws.com" + } + }, + "params": { + "OutpostId": "op-123", + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Outpost Accesspoint ARN with arn region and client region mismatch with UseArnRegion=false", + "expect": { + "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3Control::UseArnRegion": false + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + }, + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3Control::UseArnRegion": false + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + } + ], + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseArnRegion": false, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Outpost Bucket ARN with arn region and client region mismatch with UseArnRegion=false", + "expect": { + "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://beta.example.com", + "AWS::S3Control::UseArnRegion": false + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Endpoint": "https://beta.example.com", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseArnRegion": false, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Accesspoint ARN with region mismatch and UseArnRegion unset", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + }, + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + } + ], + "params": { + "AccessPointName": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Bucket ARN with region mismatch and UseArnRegion unset", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Outpost Bucket ARN with partition mismatch with UseArnRegion=true", + "expect": { + "error": "Client was configured for partition `aws` but ARN has `aws-cn`" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3Control::UseArnRegion": true + }, + "operationName": "GetBucket", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + } + ], + "params": { + "Bucket": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseArnRegion": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Accesspoint ARN with partition mismatch and UseArnRegion=true", + "expect": { + "error": "Client was configured for partition `aws` but ARN has `aws-cn`" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3Control::UseArnRegion": true + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + }, + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3Control::UseArnRegion": true + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012" + } + } + ], + "params": { + "AccessPointName": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "AccountId": "123456789012", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseArnRegion": true, + "UseFIPS": false + } + }, + { + "documentation": "Accesspoint ARN with region mismatch, UseArnRegion=false and custom endpoint", + "expect": { + "error": "Invalid configuration: region from ARN `cn-north-1` does not match client region `us-west-2` and UseArnRegion is `false`" + }, + "params": { + "AccessPointName": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "Region": "us-west-2", + "Endpoint": "https://example.com", + "RequiresAccountId": true, + "UseDualStack": false, + "UseArnRegion": false, + "UseFIPS": false + } + }, + { + "documentation": "outpost bucket arn@us-west-2", + "expect": { + "endpoint": { + "headers": { + "x-amz-account-id": [ + "123456789012" + ], + "x-amz-outpost-id": [ + "op-01234567890123456" + ] + }, + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-outposts.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetBucketVersioning", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012" + } + }, + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "PutBucketVersioning", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "AccountId": "123456789012", + "VersioningConfiguration": { + "Status": "Enabled" + } + } + } + ], + "params": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Region": "us-west-2", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "S3 Snow Control with bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "snow", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://10.0.1.12:433" + } + }, + "params": { + "Region": "snow", + "Bucket": "bucketName", + "Endpoint": "https://10.0.1.12:433", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "S3 Snow Control without bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "snow", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://10.0.1.12:433" + } + }, + "params": { + "Region": "snow", + "Endpoint": "https://10.0.1.12:433", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "S3 Snow Control with bucket and without port", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "snow", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://10.0.1.12" + } + }, + "params": { + "Region": "snow", + "Bucket": "bucketName", + "Endpoint": "https://10.0.1.12", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "S3 Snow Control with bucket and with DNS", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "snow", + "disableDoubleEncoding": true + } + ] + }, + "url": "http://s3snow.com" + } + }, + "params": { + "Region": "snow", + "Bucket": "bucketName", + "Endpoint": "http://s3snow.com", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "S3 Snow Control with FIPS enabled", + "expect": { + "error": "S3 Snow does not support FIPS" + }, + "params": { + "Region": "snow", + "Bucket": "bucketName", + "Endpoint": "https://10.0.1.12:433", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "S3 Snow Control with Dualstack enabled", + "expect": { + "error": "S3 Snow does not support DualStack" + }, + "params": { + "Region": "snow", + "Bucket": "bucketName", + "Endpoint": "https://10.0.1.12:433", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "Tagging on express bucket routed to s3express-control", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3express-control.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "TagResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157", + "Tags": [] + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "UntagResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157", + "TagKeys": [] + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "ListTagsForResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Tagging on express ap routed to s3express-control", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3express-control.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "TagResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:accesspoint/crachlintest--use1-az4--xa-s3", + "AccountId": "871317572157", + "Tags": [] + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "UntagResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:accesspoint/crachlintest--use1-az4--xa-s3", + "AccountId": "871317572157", + "TagKeys": [] + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "ListTagsForResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:accesspoint/crachlintest--use1-az4--xa-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:accesspoint/crachlintest--use1-az4--xa-s3", + "AccountId": "871317572157", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Tagging on express bucket routed to s3express-control FIPS when FIPS enabled", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3express-control-fips.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "TagResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157", + "Tags": [] + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "UntagResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157", + "TagKeys": [] + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "ListTagsForResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "Tagging on express bucket cn routed to s3express-control china endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3express-control.cn-north-1.amazonaws.com.cn" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "TagResource", + "operationParams": { + "ResourceArn": "arn:aws-cn:s3express:cn-north-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157", + "Tags": [] + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "UntagResource", + "operationParams": { + "ResourceArn": "arn:aws-cn:s3express:cn-north-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157", + "TagKeys": [] + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "ListTagsForResource", + "operationParams": { + "ResourceArn": "arn:aws-cn:s3express:cn-north-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "ResourceArn": "arn:aws-cn:s3express:cn-north-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157", + "Region": "cn-north-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Tagging on express bucket cn routed to s3express-control china endpoint with FIPS", + "expect": { + "error": "Partition does not support FIPS" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "TagResource", + "operationParams": { + "ResourceArn": "arn:aws-cn:s3express:cn-north-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157", + "Tags": [] + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "UntagResource", + "operationParams": { + "ResourceArn": "arn:aws-cn:s3express:cn-north-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157", + "TagKeys": [] + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "ListTagsForResource", + "operationParams": { + "ResourceArn": "arn:aws-cn:s3express:cn-north-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "ResourceArn": "arn:aws-cn:s3express:cn-north-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157", + "Region": "cn-north-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "Tagging on express bucket with custom endpoint routed to custom endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://my-endpoint.express-control.s3.aws.dev" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" + }, + "operationName": "TagResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157", + "Tags": [] + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" + }, + "operationName": "UntagResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157", + "TagKeys": [] + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" + }, + "operationName": "ListTagsForResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "AccountId": "871317572157", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Tagging on express access point with custom endpoint routed to custom endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://my-endpoint.express-control.s3.aws.dev" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" + }, + "operationName": "TagResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:accesspoint/crachlintest--use1-az4--xa-s3", + "AccountId": "871317572157", + "Tags": [] + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" + }, + "operationName": "UntagResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:accesspoint/crachlintest--use1-az4--xa-s3", + "AccountId": "871317572157", + "TagKeys": [] + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" + }, + "operationName": "ListTagsForResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:accesspoint/crachlintest--use1-az4--xa-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:accesspoint/crachlintest--use1-az4--xa-s3", + "Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "AccountId": "871317572157", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Tagging on express bucket with dualstack and custom endpoint fails", + "expect": { + "error": "Invalid Configuration: DualStack and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "AWS::UseDualStack": true + }, + "operationName": "TagResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157", + "Tags": [] + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "AWS::UseDualStack": true + }, + "operationName": "UntagResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157", + "TagKeys": [] + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "AWS::UseDualStack": true + }, + "operationName": "ListTagsForResource", + "operationParams": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "ResourceArn": "arn:aws:s3express:us-east-1:871317572157:bucket/crachlintest--use1-az4--x-s3", + "Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "AccountId": "871317572157", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "Access Point APIs on express bucket routed to s3express-control", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3express-control.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "CreateAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "Bucket": "mybucket--abcd-ab1--x-s3", + "AccountId": "871317572157", + "Scope": { + "Prefixes": [], + "Permissions": [] + } + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "PutAccessPointScope", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157", + "Scope": { + "Prefixes": [], + "Permissions": [] + } + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetAccessPointScope", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "DeleteAccessPointScope", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "PutAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157", + "Policy": "my-policy" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "DeleteAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetAccessPointPolicyStatus", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "AccountId": "871317572157", + "AccessPointName": "myaccesspoint--abcd-ab1--xa-s3", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Access Point APIs on express bucket routed to s3express-control for List", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3express-control.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "ListAccessPointsForDirectoryBuckets", + "operationParams": { + "DirectoryBucket": "mybucket--abcd-ab1--x-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "AccountId": "871317572157", + "Region": "us-east-1", + "UseS3ExpressControlEndpoint": true, + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Access Point APIs on express bucket routed to s3express-control for FIPS", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3express-control-fips.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "CreateAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "Bucket": "mybucket--abcd-ab1--x-s3", + "AccountId": "871317572157", + "Scope": { + "Prefixes": [], + "Permissions": [] + } + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "PutAccessPointScope", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157", + "Scope": { + "Prefixes": [], + "Permissions": [] + } + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "GetAccessPointScope", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "DeleteAccessPointScope", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "PutAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157", + "Policy": "my-policy" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "GetAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "DeleteAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "GetAccessPointPolicyStatus", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "AccountId": "871317572157", + "AccessPointName": "myaccesspoint--abcd-ab1--xa-s3", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "Access Point APIs on express bucket routed to s3express-control for FIPS for List", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3express-control-fips.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "ListAccessPointsForDirectoryBuckets", + "operationParams": { + "DirectoryBucket": "mybucket--abcd-ab1--x-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "AccountId": "871317572157", + "Region": "us-east-1", + "UseS3ExpressControlEndpoint": true, + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "Access Point APIs on express bucket routed to s3express-control for china region", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3express-control.cn-north-1.amazonaws.com.cn" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "CreateAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "Bucket": "mybucket--abcd-ab1--x-s3", + "AccountId": "871317572157", + "Scope": { + "Prefixes": [], + "Permissions": [] + } + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "PutAccessPointScope", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157", + "Scope": { + "Prefixes": [], + "Permissions": [] + } + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "GetAccessPointScope", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "DeleteAccessPointScope", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "PutAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157", + "Policy": "my-policy" + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "GetAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "DeleteAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "GetAccessPointPolicyStatus", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "AccessPointName": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157", + "Region": "cn-north-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Access Point APIs on express bucket routed to s3express-control for china region for List", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3express-control.cn-north-1.amazonaws.com.cn" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "ListAccessPointsForDirectoryBuckets", + "operationParams": { + "DirectoryBucket": "mybucket--abcd-ab1--x-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "AccountId": "871317572157", + "Region": "cn-north-1", + "UseS3ExpressControlEndpoint": true, + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Error when Access Point APIs on express bucket routed to s3express-control for china and FIPS", + "expect": { + "error": "Partition does not support FIPS" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "CreateAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "Bucket": "mybucket--abcd-ab1--x-s3", + "AccountId": "871317572157", + "Scope": { + "Prefixes": [], + "Permissions": [] + } + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "ListAccessPointsForDirectoryBuckets", + "operationParams": { + "DirectoryBucket": "mybucket--abcd-ab1--x-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "PutAccessPointScope", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157", + "Scope": { + "Prefixes": [], + "Permissions": [] + } + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "GetAccessPointScope", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "DeleteAccessPointScope", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "PutAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157", + "Policy": "my-policy" + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "GetAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "DeleteAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "GetAccessPointPolicyStatus", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "AccountId": "871317572157", + "Region": "cn-north-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "Error Access Point APIs on express bucket routed to s3express-control invalid zone", + "expect": { + "error": "Unrecognized S3Express Access Point name format." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "CreateAccessPoint", + "operationParams": { + "Name": "myaccesspoint-garbage-zone--xa-s3", + "Bucket": "mybucket-garbage-zone-garbage-zone", + "AccountId": "871317572157", + "Scope": { + "Prefixes": [], + "Permissions": [] + } + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "myaccesspoint-garbage-zone--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "myaccesspoint-garbage-zone--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "PutAccessPointScope", + "operationParams": { + "Name": "myaccesspoint-garbage-zone--xa-s3", + "AccountId": "871317572157", + "Scope": { + "Prefixes": [], + "Permissions": [] + } + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetAccessPointScope", + "operationParams": { + "Name": "myaccesspoint-garbage-zone--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "DeleteAccessPointScope", + "operationParams": { + "Name": "myaccesspoint-garbage-zone--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "PutAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint-garbage-zone--xa-s3", + "AccountId": "871317572157", + "Policy": "my-policy" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint-garbage-zone--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "DeleteAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint-garbage-zone--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetAccessPointPolicyStatus", + "operationParams": { + "Name": "myaccesspoint-garbage-zone--xa-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "AccessPointName": "myaccesspoint-garbage-zone--xa-s3", + "AccountId": "871317572157", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Access Point APIs on express bucket routed to custom endpoint if provided", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://my-endpoint.express-control.s3.aws.dev" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" + }, + "operationName": "CreateAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "Bucket": "mybucket--abcd-ab1--x-s3", + "AccountId": "871317572157", + "Scope": { + "Prefixes": [], + "Permissions": [] + } + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" + }, + "operationName": "PutAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157", + "Policy": "my-policy" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" + }, + "operationName": "GetAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" + }, + "operationName": "DeleteAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" + }, + "operationName": "GetAccessPointPolicyStatus", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "AccountId": "871317572157", + "AccessPointName": "myaccesspoint--abcd-ab1--xa-s3", + "Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Access Point APIs on express bucket routed to custom endpoint if provided for List", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://my-endpoint.express-control.s3.aws.dev" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev" + }, + "operationName": "ListAccessPointsForDirectoryBuckets", + "operationParams": { + "DirectoryBucket": "mybucket--abcd-ab1--x-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "AccountId": "871317572157", + "Region": "us-east-1", + "UseS3ExpressControlEndpoint": true, + "Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "RequiresAccountId": true, + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "Error on Access Point APIs on express bucket for dual stack", + "expect": { + "error": "S3Express does not support Dual-stack." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true + }, + "operationName": "CreateAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "Bucket": "mybucket--abcd-ab1--x-s3", + "AccountId": "871317572157", + "Scope": { + "Prefixes": [], + "Permissions": [] + } + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true + }, + "operationName": "PutAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157", + "Policy": "my-policy" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true + }, + "operationName": "GetAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true + }, + "operationName": "DeleteAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true + }, + "operationName": "GetAccessPointPolicyStatus", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "AccountId": "871317572157", + "AccessPointName": "myaccesspoint--abcd-ab1--xa-s3", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "Error Access Point APIs on express bucket for dual stack for List", + "expect": { + "error": "S3Express does not support Dual-stack." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true + }, + "operationName": "ListAccessPointsForDirectoryBuckets", + "operationParams": { + "DirectoryBucket": "mybucket--abcd-ab1--x-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "AccountId": "871317572157", + "Region": "us-east-1", + "UseS3ExpressControlEndpoint": true, + "RequiresAccountId": true, + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "Error on Access Point APIs on express bucket for custom endpoint and dual stack", + "expect": { + "error": "Invalid Configuration: DualStack and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "AWS::UseDualStack": true + }, + "operationName": "CreateAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "Bucket": "mybucket--abcd-ab1--x-s3", + "AccountId": "871317572157", + "Scope": { + "Prefixes": [], + "Permissions": [] + } + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "AWS::UseDualStack": true + }, + "operationName": "GetAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "AWS::UseDualStack": true + }, + "operationName": "DeleteAccessPoint", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "AWS::UseDualStack": true + }, + "operationName": "PutAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157", + "Policy": "my-policy" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "AWS::UseDualStack": true + }, + "operationName": "GetAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "AWS::UseDualStack": true + }, + "operationName": "DeleteAccessPointPolicy", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + }, + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "AWS::UseDualStack": true + }, + "operationName": "GetAccessPointPolicyStatus", + "operationParams": { + "Name": "myaccesspoint--abcd-ab1--xa-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "AccountId": "871317572157", + "AccessPointName": "myaccesspoint--abcd-ab1--xa-s3", + "Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "Region": "us-east-1", + "RequiresAccountId": true, + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "Error Access Point APIs on express bucket for custom endpoint and dual stack for List", + "expect": { + "error": "Invalid Configuration: DualStack and custom endpoint are not supported" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "AWS::UseDualStack": true + }, + "operationName": "ListAccessPointsForDirectoryBuckets", + "operationParams": { + "DirectoryBucket": "mybucket--abcd-ab1--x-s3", + "AccountId": "871317572157" + } + } + ], + "params": { + "AccountId": "871317572157", + "Region": "us-east-1", + "UseS3ExpressControlEndpoint": true, + "Endpoint": "https://my-endpoint.express-control.s3.aws.dev", + "RequiresAccountId": true, + "UseDualStack": true, + "UseFIPS": false + } + } + ], + "version": "1.0" + } + } + }, + "com.amazonaws.s3control#AbortIncompleteMultipartUpload": { + "type": "structure", + "members": { + "DaysAfterInitiation": { + "target": "com.amazonaws.s3control#DaysAfterInitiation", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload to\n the Outposts bucket.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The container for abort incomplete multipart upload

" + } + }, + "com.amazonaws.s3control#AccessControlTranslation": { + "type": "structure", + "members": { + "Owner": { + "target": "com.amazonaws.s3control#OwnerOverride", + "traits": { + "smithy.api#documentation": "

Specifies the replica ownership.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for information about access control for replicas.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" + } + }, + "com.amazonaws.s3control#AccessGrantArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^arn:[a-z\\-]+:s3:[a-z0-9\\-]+:\\d{12}:access\\-grants\\/grant/[a-zA-Z0-9\\-]+$" + } + }, + "com.amazonaws.s3control#AccessGrantId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\-]+$" + } + }, + "com.amazonaws.s3control#AccessGrantsInstanceArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^arn:[a-z\\-]+:s3:[a-z0-9\\-]+:\\d{12}:access\\-grants\\/[a-zA-Z0-9\\-]+$" + } + }, + "com.amazonaws.s3control#AccessGrantsInstanceId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\-]+$" + } + }, + "com.amazonaws.s3control#AccessGrantsInstancesList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#ListAccessGrantsInstanceEntry", + "traits": { + "smithy.api#xmlName": "AccessGrantsInstance" + } + } + }, + "com.amazonaws.s3control#AccessGrantsList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#ListAccessGrantEntry", + "traits": { + "smithy.api#xmlName": "AccessGrant" + } + } + }, + "com.amazonaws.s3control#AccessGrantsLocationArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^arn:[a-z\\-]+:s3:[a-z0-9\\-]+:\\d{12}:access\\-grants\\/location/[a-zA-Z0-9\\-]+$" + } + }, + "com.amazonaws.s3control#AccessGrantsLocationConfiguration": { + "type": "structure", + "members": { + "S3SubPrefix": { + "target": "com.amazonaws.s3control#S3Prefix", + "traits": { + "smithy.api#documentation": "

The S3SubPrefix is appended to the location scope creating the grant scope.\n Use this field to narrow the scope of the grant to a subset of the location scope. This\n field is required if the location scope is the default location s3:// because\n you cannot create a grant for all of your S3 data in the Region and must narrow the scope.\n For example, if the location scope is the default location s3://, the\n S3SubPrefx can be a /*, so the full grant scope path\n would be s3:///*. Or the S3SubPrefx can be\n /*, so the full grant scope path\n would be or s3:///*.

\n

If the S3SubPrefix includes a prefix, append the wildcard character\n * after the prefix to indicate that you want to include all object key\n names in the bucket that start with that prefix.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration options of the S3 Access Grants location. It contains the\n S3SubPrefix field. The grant scope, the data to which you are granting\n access, is the result of appending the Subprefix field to the scope of the\n registered location.

" + } + }, + "com.amazonaws.s3control#AccessGrantsLocationId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\-]+$" + } + }, + "com.amazonaws.s3control#AccessGrantsLocationsList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#ListAccessGrantsLocationsEntry", + "traits": { + "smithy.api#xmlName": "AccessGrantsLocation" + } + } + }, + "com.amazonaws.s3control#AccessKeyId": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.s3control#AccessPoint": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.s3control#AccessPointName", + "traits": { + "smithy.api#documentation": "

The name of this access point.

", + "smithy.api#required": {} + } + }, + "NetworkOrigin": { + "target": "com.amazonaws.s3control#NetworkOrigin", + "traits": { + "smithy.api#documentation": "

Indicates whether this access point allows access from the public internet. If\n VpcConfiguration is specified for this access point, then\n NetworkOrigin is VPC, and the access point doesn't allow access from\n the public internet. Otherwise, NetworkOrigin is Internet, and\n the access point allows access from the public internet, subject to the access point and bucket access\n policies.

", + "smithy.api#required": {} + } + }, + "VpcConfiguration": { + "target": "com.amazonaws.s3control#VpcConfiguration", + "traits": { + "smithy.api#documentation": "

The virtual private cloud (VPC) configuration for this access point, if one exists.

\n \n

This element is empty if this access point is an Amazon S3 on Outposts access point that is used by other\n Amazon Web Services services.

\n
" + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#AccessPointBucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket associated with this access point.

", + "smithy.api#required": {} + } + }, + "AccessPointArn": { + "target": "com.amazonaws.s3control#S3AccessPointArn", + "traits": { + "smithy.api#documentation": "

The ARN for the access point.

" + } + }, + "Alias": { + "target": "com.amazonaws.s3control#Alias", + "traits": { + "smithy.api#documentation": "

The name or alias of the access point.

" + } + }, + "BucketAccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 bucket associated with this access point.

" + } + }, + "DataSourceId": { + "target": "com.amazonaws.s3control#DataSourceId", + "traits": { + "smithy.api#documentation": "

A unique identifier for the data source of the access point.

" + } + }, + "DataSourceType": { + "target": "com.amazonaws.s3control#DataSourceType", + "traits": { + "smithy.api#documentation": "

The type of the data source that the access point is attached to.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An access point used to access a bucket.

" + } + }, + "com.amazonaws.s3control#AccessPointBucketName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 255 + } + } + }, + "com.amazonaws.s3control#AccessPointList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#AccessPoint", + "traits": { + "smithy.api#xmlName": "AccessPoint" + } + } + }, + "com.amazonaws.s3control#AccessPointName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 3, + "max": 255 + } + } + }, + "com.amazonaws.s3control#AccountId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 64 + }, + "smithy.api#pattern": "^\\d{12}$" + } + }, + "com.amazonaws.s3control#AccountLevel": { + "type": "structure", + "members": { + "ActivityMetrics": { + "target": "com.amazonaws.s3control#ActivityMetrics", + "traits": { + "smithy.api#documentation": "

A container element for S3 Storage Lens activity metrics.

" + } + }, + "BucketLevel": { + "target": "com.amazonaws.s3control#BucketLevel", + "traits": { + "smithy.api#documentation": "

A container element for the S3 Storage Lens bucket-level configuration.

", + "smithy.api#required": {} + } + }, + "AdvancedCostOptimizationMetrics": { + "target": "com.amazonaws.s3control#AdvancedCostOptimizationMetrics", + "traits": { + "smithy.api#documentation": "

A container element for S3 Storage Lens advanced cost-optimization metrics.

" + } + }, + "AdvancedDataProtectionMetrics": { + "target": "com.amazonaws.s3control#AdvancedDataProtectionMetrics", + "traits": { + "smithy.api#documentation": "

A container element for S3 Storage Lens advanced data-protection metrics.

" + } + }, + "DetailedStatusCodesMetrics": { + "target": "com.amazonaws.s3control#DetailedStatusCodesMetrics", + "traits": { + "smithy.api#documentation": "

A container element for detailed status code metrics.

" + } + }, + "StorageLensGroupLevel": { + "target": "com.amazonaws.s3control#StorageLensGroupLevel", + "traits": { + "smithy.api#documentation": "

\nA container element for S3 Storage Lens groups metrics.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container element for the account-level Amazon S3 Storage Lens configuration.

\n

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3control#ActivityMetrics": { + "type": "structure", + "members": { + "IsEnabled": { + "target": "com.amazonaws.s3control#IsEnabled", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

A container that indicates whether activity metrics are enabled.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The container element for Amazon S3 Storage Lens activity metrics. Activity metrics show details\n about how your storage is requested, such as requests (for example, All requests, Get\n requests, Put requests), bytes uploaded or downloaded, and errors.

\n

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3control#AdvancedCostOptimizationMetrics": { + "type": "structure", + "members": { + "IsEnabled": { + "target": "com.amazonaws.s3control#IsEnabled", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

A container that indicates whether advanced cost-optimization metrics are\n enabled.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The container element for Amazon S3 Storage Lens advanced cost-optimization metrics. Advanced\n cost-optimization metrics provide insights that you can use to manage and optimize your\n storage costs, for example, lifecycle rule counts for transitions, expirations, and\n incomplete multipart uploads.

\n

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3control#AdvancedDataProtectionMetrics": { + "type": "structure", + "members": { + "IsEnabled": { + "target": "com.amazonaws.s3control#IsEnabled", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

A container that indicates whether advanced data-protection metrics are enabled.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The container element for Amazon S3 Storage Lens advanced data-protection metrics. Advanced\n data-protection metrics provide insights that you can use to perform audits and protect\n your data, for example replication rule counts within and across Regions.

\n

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3control#Alias": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 63 + }, + "smithy.api#pattern": "^[0-9a-z\\\\-]{63}$" + } + }, + "com.amazonaws.s3control#AssociateAccessGrantsIdentityCenter": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#AssociateAccessGrantsIdentityCenterRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Associate your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance. Use this\n action if you want to create access grants for users or groups from your corporate identity\n directory. First, you must add your corporate identity directory to Amazon Web Services IAM Identity\n Center. Then, you can associate this IAM Identity Center instance with your S3 Access Grants\n instance.

\n
\n
Permissions
\n
\n

You must have the s3:AssociateAccessGrantsIdentityCenter\n permission to use this operation.

\n
\n
Additional Permissions
\n
\n

You must also have the following permissions:\n sso:CreateApplication, sso:PutApplicationGrant, and\n sso:PutApplicationAuthenticationMethod.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "POST", + "uri": "/v20180820/accessgrantsinstance/identitycenter", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#AssociateAccessGrantsIdentityCenterRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "IdentityCenterArn": { + "target": "com.amazonaws.s3control#IdentityCenterArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity Center instance that you are\n associating with your S3 Access Grants instance. An IAM Identity Center instance is your corporate\n identity directory that you added to the IAM Identity Center. You can use the ListInstances API operation to retrieve a list of your Identity Center\n instances and their ARNs.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#AsyncCreationTimestamp": { + "type": "timestamp" + }, + "com.amazonaws.s3control#AsyncErrorDetails": { + "type": "structure", + "members": { + "Code": { + "target": "com.amazonaws.s3control#MaxLength1024String", + "traits": { + "smithy.api#documentation": "

A string that uniquely identifies the error condition.

" + } + }, + "Message": { + "target": "com.amazonaws.s3control#MaxLength1024String", + "traits": { + "smithy.api#documentation": "

A generic description of the error condition in English.

" + } + }, + "Resource": { + "target": "com.amazonaws.s3control#MaxLength1024String", + "traits": { + "smithy.api#documentation": "

The identifier of the resource associated with the error.

" + } + }, + "RequestId": { + "target": "com.amazonaws.s3control#MaxLength1024String", + "traits": { + "smithy.api#documentation": "

The ID of the request associated with the error.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Error details for the failed asynchronous operation.

" + } + }, + "com.amazonaws.s3control#AsyncOperation": { + "type": "structure", + "members": { + "CreationTime": { + "target": "com.amazonaws.s3control#AsyncCreationTimestamp", + "traits": { + "smithy.api#documentation": "

The time that the request was sent to the service.

" + } + }, + "Operation": { + "target": "com.amazonaws.s3control#AsyncOperationName", + "traits": { + "smithy.api#documentation": "

The specific operation for the asynchronous request.

" + } + }, + "RequestTokenARN": { + "target": "com.amazonaws.s3control#AsyncRequestTokenARN", + "traits": { + "smithy.api#documentation": "

The request token associated with the request.

" + } + }, + "RequestParameters": { + "target": "com.amazonaws.s3control#AsyncRequestParameters", + "traits": { + "smithy.api#documentation": "

The parameters associated with the request.

" + } + }, + "RequestStatus": { + "target": "com.amazonaws.s3control#AsyncRequestStatus", + "traits": { + "smithy.api#documentation": "

The current status of the request.

" + } + }, + "ResponseDetails": { + "target": "com.amazonaws.s3control#AsyncResponseDetails", + "traits": { + "smithy.api#documentation": "

The details of the response.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for the information about an asynchronous operation.

" + } + }, + "com.amazonaws.s3control#AsyncOperationName": { + "type": "enum", + "members": { + "CreateMultiRegionAccessPoint": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CreateMultiRegionAccessPoint" + } + }, + "DeleteMultiRegionAccessPoint": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DeleteMultiRegionAccessPoint" + } + }, + "PutMultiRegionAccessPointPolicy": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PutMultiRegionAccessPointPolicy" + } + } + } + }, + "com.amazonaws.s3control#AsyncRequestParameters": { + "type": "structure", + "members": { + "CreateMultiRegionAccessPointRequest": { + "target": "com.amazonaws.s3control#CreateMultiRegionAccessPointInput", + "traits": { + "smithy.api#documentation": "

A container of the parameters for a CreateMultiRegionAccessPoint request.

" + } + }, + "DeleteMultiRegionAccessPointRequest": { + "target": "com.amazonaws.s3control#DeleteMultiRegionAccessPointInput", + "traits": { + "smithy.api#documentation": "

A container of the parameters for a DeleteMultiRegionAccessPoint request.

" + } + }, + "PutMultiRegionAccessPointPolicyRequest": { + "target": "com.amazonaws.s3control#PutMultiRegionAccessPointPolicyInput", + "traits": { + "smithy.api#documentation": "

A container of the parameters for a PutMultiRegionAccessPoint request.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for the request parameters associated with an asynchronous request.

" + } + }, + "com.amazonaws.s3control#AsyncRequestStatus": { + "type": "string" + }, + "com.amazonaws.s3control#AsyncRequestTokenARN": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + }, + "smithy.api#pattern": "^arn:.+$" + } + }, + "com.amazonaws.s3control#AsyncResponseDetails": { + "type": "structure", + "members": { + "MultiRegionAccessPointDetails": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointsAsyncResponse", + "traits": { + "smithy.api#documentation": "

The details for the Multi-Region Access Point.

" + } + }, + "ErrorDetails": { + "target": "com.amazonaws.s3control#AsyncErrorDetails", + "traits": { + "smithy.api#documentation": "

Error details for an asynchronous request.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for the response details that are returned when querying about an\n asynchronous request.

" + } + }, + "com.amazonaws.s3control#AwsLambdaTransformation": { + "type": "structure", + "members": { + "FunctionArn": { + "target": "com.amazonaws.s3control#FunctionArnString", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Lambda function.

", + "smithy.api#required": {} + } + }, + "FunctionPayload": { + "target": "com.amazonaws.s3control#AwsLambdaTransformationPayload", + "traits": { + "smithy.api#documentation": "

Additional JSON that provides supplemental data to the Lambda function used to transform\n objects.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Lambda function used to transform objects through an Object Lambda Access Point.

" + } + }, + "com.amazonaws.s3control#AwsLambdaTransformationPayload": { + "type": "string" + }, + "com.amazonaws.s3control#AwsOrgArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + }, + "smithy.api#pattern": "^arn:[a-z\\-]+:organizations::\\d{12}:organization\\/o-[a-z0-9]{10,32}$" + } + }, + "com.amazonaws.s3control#BadRequestException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.s3control#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.s3control#Boolean": { + "type": "boolean", + "traits": { + "smithy.api#default": false + } + }, + "com.amazonaws.s3control#BucketAlreadyExists": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

The requested Outposts bucket name is not available. The bucket namespace is shared by\n all users of the Outposts in this Region. Select a different name and try\n again.

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.s3control#BucketAlreadyOwnedByYou": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

The Outposts bucket you tried to create already exists, and you own it.

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.s3control#BucketCannedACL": { + "type": "enum", + "members": { + "private": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "private" + } + }, + "public_read": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "public-read" + } + }, + "public_read_write": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "public-read-write" + } + }, + "authenticated_read": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "authenticated-read" + } + } + } + }, + "com.amazonaws.s3control#BucketIdentifierString": { + "type": "string" + }, + "com.amazonaws.s3control#BucketLevel": { + "type": "structure", + "members": { + "ActivityMetrics": { + "target": "com.amazonaws.s3control#ActivityMetrics", + "traits": { + "smithy.api#documentation": "

A container for the bucket-level activity metrics for S3 Storage Lens.

" + } + }, + "PrefixLevel": { + "target": "com.amazonaws.s3control#PrefixLevel", + "traits": { + "smithy.api#documentation": "

A container for the prefix-level metrics for S3 Storage Lens.

" + } + }, + "AdvancedCostOptimizationMetrics": { + "target": "com.amazonaws.s3control#AdvancedCostOptimizationMetrics", + "traits": { + "smithy.api#documentation": "

A container for bucket-level advanced cost-optimization metrics for S3 Storage Lens.

" + } + }, + "AdvancedDataProtectionMetrics": { + "target": "com.amazonaws.s3control#AdvancedDataProtectionMetrics", + "traits": { + "smithy.api#documentation": "

A container for bucket-level advanced data-protection metrics for S3 Storage Lens.

" + } + }, + "DetailedStatusCodesMetrics": { + "target": "com.amazonaws.s3control#DetailedStatusCodesMetrics", + "traits": { + "smithy.api#documentation": "

A container for bucket-level detailed status code metrics for S3 Storage Lens.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for the bucket-level configuration for Amazon S3 Storage Lens.

\n

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3control#BucketLocationConstraint": { + "type": "enum", + "members": { + "EU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EU" + } + }, + "eu_west_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "eu-west-1" + } + }, + "us_west_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "us-west-1" + } + }, + "us_west_2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "us-west-2" + } + }, + "ap_south_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-south-1" + } + }, + "ap_southeast_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-southeast-1" + } + }, + "ap_southeast_2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-southeast-2" + } + }, + "ap_northeast_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-northeast-1" + } + }, + "sa_east_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "sa-east-1" + } + }, + "cn_north_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "cn-north-1" + } + }, + "eu_central_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "eu-central-1" + } + } + } + }, + "com.amazonaws.s3control#BucketName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 3, + "max": 255 + } + } + }, + "com.amazonaws.s3control#BucketVersioningStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Suspended": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Suspended" + } + } + } + }, + "com.amazonaws.s3control#Buckets": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#S3BucketArnString", + "traits": { + "smithy.api#xmlName": "Arn" + } + } + }, + "com.amazonaws.s3control#CallerAccessGrantsList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#ListCallerAccessGrantsEntry", + "traits": { + "smithy.api#xmlName": "AccessGrant" + } + } + }, + "com.amazonaws.s3control#CloudWatchMetrics": { + "type": "structure", + "members": { + "IsEnabled": { + "target": "com.amazonaws.s3control#IsEnabled", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

A container that indicates whether CloudWatch publishing for S3 Storage Lens metrics is enabled. A\n value of true indicates that CloudWatch publishing for S3 Storage Lens metrics is\n enabled.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for enabling Amazon CloudWatch publishing for S3 Storage Lens metrics.

\n

For more information about publishing S3 Storage Lens metrics to CloudWatch, see Monitor\n S3 Storage Lens metrics in CloudWatch in the Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3control#ComputeObjectChecksumAlgorithm": { + "type": "enum", + "members": { + "CRC32": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CRC32" + } + }, + "CRC32C": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CRC32C" + } + }, + "CRC64NVME": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CRC64NVME" + } + }, + "MD5": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MD5" + } + }, + "SHA1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SHA1" + } + }, + "SHA256": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SHA256" + } + } + } + }, + "com.amazonaws.s3control#ComputeObjectChecksumType": { + "type": "enum", + "members": { + "FULL_OBJECT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FULL_OBJECT" + } + }, + "COMPOSITE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPOSITE" + } + } + } + }, + "com.amazonaws.s3control#ConfigId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\-\\_\\.]+$" + } + }, + "com.amazonaws.s3control#ConfirmRemoveSelfBucketAccess": { + "type": "boolean", + "traits": { + "smithy.api#default": false + } + }, + "com.amazonaws.s3control#ConfirmationRequired": { + "type": "boolean", + "traits": { + "smithy.api#default": false + } + }, + "com.amazonaws.s3control#ContinuationToken": { + "type": "string" + }, + "com.amazonaws.s3control#CreateAccessGrant": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#CreateAccessGrantRequest" + }, + "output": { + "target": "com.amazonaws.s3control#CreateAccessGrantResult" + }, + "traits": { + "smithy.api#documentation": "

Creates an access grant that gives a grantee access to your S3 data. The grantee can be\n an IAM user or role or a directory user, or group. Before you can create a grant, you\n must have an S3 Access Grants instance in the same Region as the S3 data. You can create an S3 Access Grants\n instance using the CreateAccessGrantsInstance. You must also have registered at least one S3 data\n location in your S3 Access Grants instance using CreateAccessGrantsLocation.

\n
\n
Permissions
\n
\n

You must have the s3:CreateAccessGrant permission to use this\n operation.

\n
\n
Additional Permissions
\n
\n

For any directory identity - sso:DescribeInstance and\n sso:DescribeApplication\n

\n

For directory users - identitystore:DescribeUser\n

\n

For directory groups - identitystore:DescribeGroup\n

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "POST", + "uri": "/v20180820/accessgrantsinstance/grant", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#CreateAccessGrantRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "AccessGrantsLocationId": { + "target": "com.amazonaws.s3control#AccessGrantsLocationId", + "traits": { + "smithy.api#documentation": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this\n ID when you register the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

\n

If you are passing the default location, you cannot create an access grant\n for the entire default location. You must also specify a bucket or a bucket and prefix in\n the Subprefix field.

", + "smithy.api#required": {} + } + }, + "AccessGrantsLocationConfiguration": { + "target": "com.amazonaws.s3control#AccessGrantsLocationConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration options of the grant location. The grant location is the S3 path to\n the data to which you are granting access. It contains the S3SubPrefix field.\n The grant scope is the result of appending the subprefix to the location scope of the\n registered location.

" + } + }, + "Grantee": { + "target": "com.amazonaws.s3control#Grantee", + "traits": { + "smithy.api#documentation": "

The user, group, or role to which you are granting access. You can grant access to an\n IAM user or role. If you have added your corporate directory to Amazon Web Services IAM Identity\n Center and associated your Identity Center instance with your S3 Access Grants instance, the grantee\n can also be a corporate directory user or group.

", + "smithy.api#required": {} + } + }, + "Permission": { + "target": "com.amazonaws.s3control#Permission", + "traits": { + "smithy.api#documentation": "

The type of access that you are granting to your S3 data, which can be set to one of the\n following values:

\n
    \n
  • \n

    \n READ – Grant read-only access to the S3 data.

    \n
  • \n
  • \n

    \n WRITE – Grant write-only access to the S3 data.

    \n
  • \n
  • \n

    \n READWRITE – Grant both read and write access to the S3 data.

    \n
  • \n
", + "smithy.api#required": {} + } + }, + "ApplicationArn": { + "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated\n with your Identity Center instance. If an application ARN is included in the request to\n create an access grant, the grantee can only access the S3 data through this application.\n

" + } + }, + "S3PrefixType": { + "target": "com.amazonaws.s3control#S3PrefixType", + "traits": { + "smithy.api#documentation": "

The type of S3SubPrefix. The only possible value is Object.\n Pass this value if the access grant scope is an object. Do not pass this value if the\n access grant scope is a bucket or a bucket and a prefix.

" + } + }, + "Tags": { + "target": "com.amazonaws.s3control#TagList", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services resource tags that you are adding to the access grant. Each tag is a label\n consisting of a user-defined key and value. Tags can help you manage, identify, organize,\n search for, and filter resources.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#CreateAccessGrantResult": { + "type": "structure", + "members": { + "CreatedAt": { + "target": "com.amazonaws.s3control#CreationTimestamp", + "traits": { + "smithy.api#documentation": "

The date and time when you created the access grant.

" + } + }, + "AccessGrantId": { + "target": "com.amazonaws.s3control#AccessGrantId", + "traits": { + "smithy.api#documentation": "

The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access\n grant.

" + } + }, + "AccessGrantArn": { + "target": "com.amazonaws.s3control#AccessGrantArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the access grant.

" + } + }, + "Grantee": { + "target": "com.amazonaws.s3control#Grantee", + "traits": { + "smithy.api#documentation": "

The user, group, or role to which you are granting access. You can grant access to an\n IAM user or role. If you have added your corporate directory to Amazon Web Services IAM Identity\n Center and associated your Identity Center instance with your S3 Access Grants instance, the grantee\n can also be a corporate directory user or group.

" + } + }, + "AccessGrantsLocationId": { + "target": "com.amazonaws.s3control#AccessGrantsLocationId", + "traits": { + "smithy.api#documentation": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this\n ID when you register the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

" + } + }, + "AccessGrantsLocationConfiguration": { + "target": "com.amazonaws.s3control#AccessGrantsLocationConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration options of the grant location. The grant location is the S3 path to\n the data to which you are granting access.

" + } + }, + "Permission": { + "target": "com.amazonaws.s3control#Permission", + "traits": { + "smithy.api#documentation": "

The type of access that you are granting to your S3 data, which can be set to one of the\n following values:

\n
    \n
  • \n

    \n READ – Grant read-only access to the S3 data.

    \n
  • \n
  • \n

    \n WRITE – Grant write-only access to the S3 data.

    \n
  • \n
  • \n

    \n READWRITE – Grant both read and write access to the S3 data.

    \n
  • \n
" + } + }, + "ApplicationArn": { + "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated\n with your Identity Center instance. If the grant includes an application ARN, the grantee\n can only access the S3 data through this application.

" + } + }, + "GrantScope": { + "target": "com.amazonaws.s3control#S3Prefix", + "traits": { + "smithy.api#documentation": "

The S3 path of the data to which you are granting access. It is the result of appending\n the Subprefix to the location scope.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#CreateAccessGrantsInstance": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#CreateAccessGrantsInstanceRequest" + }, + "output": { + "target": "com.amazonaws.s3control#CreateAccessGrantsInstanceResult" + }, + "traits": { + "smithy.api#documentation": "

Creates an S3 Access Grants instance, which serves as a logical grouping for access grants. You\n can create one S3 Access Grants instance per Region per account.

\n
\n
Permissions
\n
\n

You must have the s3:CreateAccessGrantsInstance permission to use\n this operation.

\n
\n
Additional Permissions
\n
\n

To associate an IAM Identity Center instance with your S3 Access Grants instance, you\n must also have the sso:DescribeInstance,\n sso:CreateApplication, sso:PutApplicationGrant, and\n sso:PutApplicationAuthenticationMethod permissions.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "POST", + "uri": "/v20180820/accessgrantsinstance", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#CreateAccessGrantsInstanceRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "IdentityCenterArn": { + "target": "com.amazonaws.s3control#IdentityCenterArn", + "traits": { + "smithy.api#documentation": "

If you would like to associate your S3 Access Grants instance with an Amazon Web Services IAM Identity Center\n instance, use this field to pass the Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity\n Center instance that you are associating with your S3 Access Grants instance. An IAM Identity\n Center instance is your corporate identity directory that you added to the IAM Identity\n Center. You can use the ListInstances API\n operation to retrieve a list of your Identity Center instances and their ARNs.

" + } + }, + "Tags": { + "target": "com.amazonaws.s3control#TagList", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services resource tags that you are adding to the S3 Access Grants instance. Each tag is a label\n consisting of a user-defined key and value. Tags can help you manage, identify, organize,\n search for, and filter resources.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#CreateAccessGrantsInstanceResult": { + "type": "structure", + "members": { + "CreatedAt": { + "target": "com.amazonaws.s3control#CreationTimestamp", + "traits": { + "smithy.api#documentation": "

The date and time when you created the S3 Access Grants instance.

" + } + }, + "AccessGrantsInstanceId": { + "target": "com.amazonaws.s3control#AccessGrantsInstanceId", + "traits": { + "smithy.api#documentation": "

The ID of the S3 Access Grants instance. The ID is default. You can have one S3 Access Grants\n instance per Region per account.

" + } + }, + "AccessGrantsInstanceArn": { + "target": "com.amazonaws.s3control#AccessGrantsInstanceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity Center instance that you are\n associating with your S3 Access Grants instance. An IAM Identity Center instance is your corporate\n identity directory that you added to the IAM Identity Center. You can use the ListInstances API operation to retrieve a list of your Identity Center\n instances and their ARNs.

" + } + }, + "IdentityCenterArn": { + "target": "com.amazonaws.s3control#IdentityCenterArn", + "traits": { + "smithy.api#deprecated": { + "message": "IdentityCenterArn has been deprecated. Use IdentityCenterInstanceArn or IdentityCenterApplicationArn." + }, + "smithy.api#documentation": "

If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance,\n this field returns the Amazon Resource Name (ARN) of the IAM Identity Center instance\n application; a subresource of the original Identity Center instance. S3 Access Grants creates this\n Identity Center application for the specific S3 Access Grants instance.

" + } + }, + "IdentityCenterInstanceArn": { + "target": "com.amazonaws.s3control#IdentityCenterArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity Center instance that you are\n associating with your S3 Access Grants instance. An IAM Identity Center instance is your corporate\n identity directory that you added to the IAM Identity Center. You can use the ListInstances API operation to retrieve a list of your Identity Center\n instances and their ARNs.

" + } + }, + "IdentityCenterApplicationArn": { + "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", + "traits": { + "smithy.api#documentation": "

If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance,\n this field returns the Amazon Resource Name (ARN) of the IAM Identity Center instance\n application; a subresource of the original Identity Center instance. S3 Access Grants creates this\n Identity Center application for the specific S3 Access Grants instance.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#CreateAccessGrantsLocation": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#CreateAccessGrantsLocationRequest" + }, + "output": { + "target": "com.amazonaws.s3control#CreateAccessGrantsLocationResult" + }, + "traits": { + "smithy.api#documentation": "

The S3 data location that you would like to register in your S3 Access Grants instance. Your S3\n data must be in the same Region as your S3 Access Grants instance. The location can be one of the\n following:

\n
    \n
  • \n

    The default S3 location s3://\n

    \n
  • \n
  • \n

    A bucket - S3://\n

    \n
  • \n
  • \n

    A bucket and prefix - S3:///\n

    \n
  • \n
\n

When you register a location, you must include the IAM role that has permission to\n manage the S3 location that you are registering. Give S3 Access Grants permission to assume this role\n using a policy. S3 Access Grants assumes this role to manage access to the location and\n to vend temporary credentials to grantees or client applications.

\n
\n
Permissions
\n
\n

You must have the s3:CreateAccessGrantsLocation permission to use\n this operation.

\n
\n
Additional Permissions
\n
\n

You must also have the following permission for the specified IAM role:\n iam:PassRole\n

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "POST", + "uri": "/v20180820/accessgrantsinstance/location", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#CreateAccessGrantsLocationRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "LocationScope": { + "target": "com.amazonaws.s3control#S3Prefix", + "traits": { + "smithy.api#documentation": "

The S3 path to the location that you are registering. The location scope can be the\n default S3 location s3://, the S3 path to a bucket\n s3://, or the S3 path to a bucket and prefix\n s3:///. A prefix in S3 is a string of\n characters at the beginning of an object key name used to organize the objects that you\n store in your S3 buckets. For example, object key names that start with the\n engineering/ prefix or object key names that start with the\n marketing/campaigns/ prefix.

", + "smithy.api#required": {} + } + }, + "IAMRoleArn": { + "target": "com.amazonaws.s3control#IAMRoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants\n assumes this role to manage access to the registered location.

", + "smithy.api#required": {} + } + }, + "Tags": { + "target": "com.amazonaws.s3control#TagList", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services resource tags that you are adding to the S3 Access Grants location. Each tag is a label\n consisting of a user-defined key and value. Tags can help you manage, identify, organize,\n search for, and filter resources.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#CreateAccessGrantsLocationResult": { + "type": "structure", + "members": { + "CreatedAt": { + "target": "com.amazonaws.s3control#CreationTimestamp", + "traits": { + "smithy.api#documentation": "

The date and time when you registered the location.

" + } + }, + "AccessGrantsLocationId": { + "target": "com.amazonaws.s3control#AccessGrantsLocationId", + "traits": { + "smithy.api#documentation": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this\n ID when you register the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

" + } + }, + "AccessGrantsLocationArn": { + "target": "com.amazonaws.s3control#AccessGrantsLocationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the location you are registering.

" + } + }, + "LocationScope": { + "target": "com.amazonaws.s3control#S3Prefix", + "traits": { + "smithy.api#documentation": "

The S3 URI path to the location that you are registering. The location scope can be the\n default S3 location s3://, the S3 path to a bucket, or the S3 path to a bucket\n and prefix. A prefix in S3 is a string of characters at the beginning of an object key name\n used to organize the objects that you store in your S3 buckets. For example, object key\n names that start with the engineering/ prefix or object key names that start\n with the marketing/campaigns/ prefix.

" + } + }, + "IAMRoleArn": { + "target": "com.amazonaws.s3control#IAMRoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants\n assumes this role to manage access to the registered location.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#CreateAccessPoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#CreateAccessPointRequest" + }, + "output": { + "target": "com.amazonaws.s3control#CreateAccessPointResult" + }, + "traits": { + "smithy.api#documentation": "

Creates an access point and associates it to a specified bucket. For more information, see\n Managing\n access to shared datasets with access points or Managing access to\n shared datasets in directory buckets with access points in the\n Amazon S3 User Guide.

\n

To create an access point and attach it to a volume on an Amazon FSx file system, see CreateAndAttachS3AccessPoint in the Amazon FSx API\n Reference.

\n

\n \n

S3 on Outposts only supports VPC-style access points.

\n

For more information, see Accessing Amazon S3 on Outposts using\n virtual private cloud (VPC) only access points in the\n Amazon S3 User Guide.

\n
\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

\n

The following actions are related to CreateAccessPoint:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/accesspoint/{Name}", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#CreateAccessPointForObjectLambda": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#CreateAccessPointForObjectLambdaRequest" + }, + "output": { + "target": "com.amazonaws.s3control#CreateAccessPointForObjectLambdaResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Creates an Object Lambda Access Point. For more information, see Transforming objects with\n Object Lambda Access Points in the Amazon S3 User Guide.

\n

The following actions are related to\n CreateAccessPointForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/accesspointforobjectlambda/{Name}", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#CreateAccessPointForObjectLambdaRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID for owner of the specified Object Lambda Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", + "traits": { + "smithy.api#documentation": "

The name you want to assign to this Object Lambda Access Point.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Configuration": { + "target": "com.amazonaws.s3control#ObjectLambdaConfiguration", + "traits": { + "smithy.api#documentation": "

Object Lambda Access Point configuration as a JSON document.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#CreateAccessPointForObjectLambdaResult": { + "type": "structure", + "members": { + "ObjectLambdaAccessPointArn": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointArn", + "traits": { + "smithy.api#documentation": "

Specifies the ARN for the Object Lambda Access Point.

" + } + }, + "Alias": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointAlias", + "traits": { + "smithy.api#documentation": "

The alias of the Object Lambda Access Point.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#CreateAccessPointRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID for the account that owns the specified access point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#AccessPointName", + "traits": { + "smithy.api#documentation": "

The name you want to assign to this access point.

\n

For directory buckets, the access point name must consist of a base name that you provide and\n suffix that includes the ZoneID (Amazon Web Services Availability Zone or Local Zone) of your bucket location,\n followed by --xa-s3. For more information, see Managing access to shared datasets in directory buckets with\n access points in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccessPointName" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket that you want to associate this access point with.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "VpcConfiguration": { + "target": "com.amazonaws.s3control#VpcConfiguration", + "traits": { + "smithy.api#documentation": "

If you include this field, Amazon S3 restricts access to this access point to requests from the\n specified virtual private cloud (VPC).

\n \n

This is required for creating an access point for Amazon S3 on Outposts buckets.

\n
" + } + }, + "PublicAccessBlockConfiguration": { + "target": "com.amazonaws.s3control#PublicAccessBlockConfiguration", + "traits": { + "smithy.api#documentation": "

The PublicAccessBlock configuration that you want to apply to the access point.\n

" + } + }, + "BucketAccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 bucket associated with this access point.

\n

For same account access point when your bucket and access point belong to the same account owner, the\n BucketAccountId is not required. For cross-account access point when your bucket\n and access point are not in the same account, the BucketAccountId is required.

" + } + }, + "Scope": { + "target": "com.amazonaws.s3control#Scope", + "traits": { + "smithy.api#documentation": "

For directory buckets, you can filter access control to specific prefixes, API\n operations, or a combination of both. For more information, see Managing access to shared datasets in directory buckets with\n access points in the Amazon S3 User Guide.

\n \n

Scope is only supported for access points attached to directory buckets.

\n
" + } + }, + "Tags": { + "target": "com.amazonaws.s3control#TagList", + "traits": { + "smithy.api#documentation": "

An array of tags that you can apply to an access point. Tags are key-value pairs of metadata used to control access to your access points. For more information about tags, see Using tags with Amazon S3. For information about tagging access points, see Using tags for attribute-based access control (ABAC).

\n \n
    \n
  • \n

    You must have the s3:TagResource permission to create an access point with tags for a general purpose bucket.

    \n
  • \n
  • \n

    You must have the s3express:TagResource permission to create an access point with tags for a directory bucket.

    \n
  • \n
\n
" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#CreateAccessPointResult": { + "type": "structure", + "members": { + "AccessPointArn": { + "target": "com.amazonaws.s3control#S3AccessPointArn", + "traits": { + "smithy.api#documentation": "

The ARN of the access point.

\n \n

This is only supported by Amazon S3 on Outposts.

\n
" + } + }, + "Alias": { + "target": "com.amazonaws.s3control#Alias", + "traits": { + "smithy.api#documentation": "

The name or alias of the access point.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#CreateBucket": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#CreateBucketRequest" + }, + "output": { + "target": "com.amazonaws.s3control#CreateBucketResult" + }, + "errors": [ + { + "target": "com.amazonaws.s3control#BucketAlreadyExists" + }, + { + "target": "com.amazonaws.s3control#BucketAlreadyOwnedByYou" + } + ], + "traits": { + "smithy.api#documentation": "\n

This action creates an Amazon S3 on Outposts bucket. To create an S3 bucket, see Create\n Bucket in the Amazon S3 API Reference.

\n
\n

Creates a new Outposts bucket. By creating the bucket, you become the bucket owner. To\n create an Outposts bucket, you must have S3 on Outposts. For more information, see Using\n Amazon S3 on Outposts in Amazon S3 User Guide.

\n

Not every string is an acceptable bucket name. For information on bucket naming\n restrictions, see Working with\n Amazon S3 Buckets.

\n

S3 on Outposts buckets support:

\n
    \n
  • \n

    Tags

    \n
  • \n
  • \n

    LifecycleConfigurations for deleting expired objects

    \n
  • \n
\n

For a complete list of restrictions and Amazon S3 feature limitations on S3 on Outposts, see\n \n Amazon S3 on Outposts Restrictions and Limitations.

\n

For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts\n endpoint hostname prefix and x-amz-outpost-id in your API request, see the\n Examples section.

\n

The following actions are related to CreateBucket for\n Amazon S3 on Outposts:

\n ", + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/bucket/{Bucket}", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {} + } + }, + "com.amazonaws.s3control#CreateBucketConfiguration": { + "type": "structure", + "members": { + "LocationConstraint": { + "target": "com.amazonaws.s3control#BucketLocationConstraint", + "traits": { + "smithy.api#documentation": "

Specifies the Region where the bucket will be created. If you are creating a bucket on\n the US East (N. Virginia) Region (us-east-1), you do not need to specify the location.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

The container for the bucket configuration.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" + } + }, + "com.amazonaws.s3control#CreateBucketRequest": { + "type": "structure", + "members": { + "ACL": { + "target": "com.amazonaws.s3control#BucketCannedACL", + "traits": { + "smithy.api#documentation": "

The canned ACL to apply to the bucket.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", + "smithy.api#httpHeader": "x-amz-acl" + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "CreateBucketConfiguration": { + "target": "com.amazonaws.s3control#CreateBucketConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration information for the bucket.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", + "smithy.api#httpPayload": {}, + "smithy.api#xmlName": "CreateBucketConfiguration" + } + }, + "GrantFullControl": { + "target": "com.amazonaws.s3control#GrantFullControl", + "traits": { + "smithy.api#documentation": "

Allows grantee the read, write, read ACP, and write ACP permissions on the\n bucket.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", + "smithy.api#httpHeader": "x-amz-grant-full-control" + } + }, + "GrantRead": { + "target": "com.amazonaws.s3control#GrantRead", + "traits": { + "smithy.api#documentation": "

Allows grantee to list the objects in the bucket.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", + "smithy.api#httpHeader": "x-amz-grant-read" + } + }, + "GrantReadACP": { + "target": "com.amazonaws.s3control#GrantReadACP", + "traits": { + "smithy.api#documentation": "

Allows grantee to read the bucket ACL.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", + "smithy.api#httpHeader": "x-amz-grant-read-acp" + } + }, + "GrantWrite": { + "target": "com.amazonaws.s3control#GrantWrite", + "traits": { + "smithy.api#documentation": "

Allows grantee to create, overwrite, and delete any object in the bucket.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", + "smithy.api#httpHeader": "x-amz-grant-write" + } + }, + "GrantWriteACP": { + "target": "com.amazonaws.s3control#GrantWriteACP", + "traits": { + "smithy.api#documentation": "

Allows grantee to write the ACL for the applicable bucket.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", + "smithy.api#httpHeader": "x-amz-grant-write-acp" + } + }, + "ObjectLockEnabledForBucket": { + "target": "com.amazonaws.s3control#ObjectLockEnabledForBucket", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Specifies whether you want S3 Object Lock to be enabled for the new bucket.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", + "smithy.api#httpHeader": "x-amz-bucket-object-lock-enabled" + } + }, + "OutpostId": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength64String", + "traits": { + "smithy.api#documentation": "

The ID of the Outposts where the bucket is being created.

\n \n

This ID is required by Amazon S3 on Outposts buckets.

\n
", + "smithy.api#httpHeader": "x-amz-outpost-id", + "smithy.rules#contextParam": { + "name": "OutpostId" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#CreateBucketResult": { + "type": "structure", + "members": { + "Location": { + "target": "com.amazonaws.s3control#Location", + "traits": { + "smithy.api#documentation": "

The location of the bucket.

", + "smithy.api#httpHeader": "Location" + } + }, + "BucketArn": { + "target": "com.amazonaws.s3control#S3RegionalBucketArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#CreateJob": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#CreateJobRequest" + }, + "output": { + "target": "com.amazonaws.s3control#CreateJobResult" + }, + "errors": [ + { + "target": "com.amazonaws.s3control#BadRequestException" + }, + { + "target": "com.amazonaws.s3control#IdempotencyException" + }, + { + "target": "com.amazonaws.s3control#InternalServiceException" + }, + { + "target": "com.amazonaws.s3control#TooManyRequestsException" + } + ], + "traits": { + "smithy.api#documentation": "

This operation creates an S3 Batch Operations job.

\n

You can use S3 Batch Operations to perform large-scale batch actions on Amazon S3 objects.\n Batch Operations can run a single action on lists of Amazon S3 objects that you specify. For more\n information, see S3 Batch Operations in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

For information about permissions required to use the Batch Operations, see Granting\n permissions for S3 Batch Operations in the Amazon S3 User\n Guide.

\n
\n
\n

\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "POST", + "uri": "/v20180820/jobs", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#CreateJobRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID that creates the job.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "ConfirmationRequired": { + "target": "com.amazonaws.s3control#ConfirmationRequired", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Indicates whether confirmation is required before Amazon S3 runs the job. Confirmation is\n only required for jobs created through the Amazon S3 console.

" + } + }, + "Operation": { + "target": "com.amazonaws.s3control#JobOperation", + "traits": { + "smithy.api#documentation": "

The action that you want this job to perform on every object listed in the manifest. For\n more information about the available actions, see Operations in the\n Amazon S3 User Guide.

", + "smithy.api#required": {} + } + }, + "Report": { + "target": "com.amazonaws.s3control#JobReport", + "traits": { + "smithy.api#documentation": "

Configuration parameters for the optional job-completion report.

", + "smithy.api#required": {} + } + }, + "ClientRequestToken": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength64String", + "traits": { + "smithy.api#documentation": "

An idempotency token to ensure that you don't accidentally submit the same request\n twice. You can use any string up to the maximum length.

", + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + }, + "Manifest": { + "target": "com.amazonaws.s3control#JobManifest", + "traits": { + "smithy.api#documentation": "

Configuration parameters for the manifest.

" + } + }, + "Description": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength256String", + "traits": { + "smithy.api#documentation": "

A description for this job. You can use any string within the permitted length.\n Descriptions don't need to be unique and can be used for multiple jobs.

" + } + }, + "Priority": { + "target": "com.amazonaws.s3control#JobPriority", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

The numerical priority for this job. Higher numbers indicate higher priority.

", + "smithy.api#required": {} + } + }, + "RoleArn": { + "target": "com.amazonaws.s3control#IAMRoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the Identity and Access Management (IAM) role that Batch Operations will\n use to run this job's action on every object in the manifest.

", + "smithy.api#required": {} + } + }, + "Tags": { + "target": "com.amazonaws.s3control#S3TagSet", + "traits": { + "smithy.api#documentation": "

A set of tags to associate with the S3 Batch Operations job. This is an optional parameter.\n

" + } + }, + "ManifestGenerator": { + "target": "com.amazonaws.s3control#JobManifestGenerator", + "traits": { + "smithy.api#documentation": "

The attribute container for the ManifestGenerator details. Jobs must be created with\n either a manifest file or a ManifestGenerator, but not both.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#CreateJobResult": { + "type": "structure", + "members": { + "JobId": { + "target": "com.amazonaws.s3control#JobId", + "traits": { + "smithy.api#documentation": "

The ID for this job. Amazon S3 generates this ID automatically and returns it after a\n successful Create Job request.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#CreateMultiRegionAccessPoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#CreateMultiRegionAccessPointRequest" + }, + "output": { + "target": "com.amazonaws.s3control#CreateMultiRegionAccessPointResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Creates a Multi-Region Access Point and associates it with the specified buckets. For more information\n about creating Multi-Region Access Points, see Creating\n Multi-Region Access Points in the Amazon S3 User Guide.

\n

This action will always be routed to the US West (Oregon) Region. For more information\n about the restrictions around working with Multi-Region Access Points, see Multi-Region Access Point\n restrictions and limitations in the Amazon S3 User Guide.

\n

This request is asynchronous, meaning that you might receive a response before the\n command has completed. When this request provides a response, it provides a token that you\n can use to monitor the status of the request with\n DescribeMultiRegionAccessPointOperation.

\n

The following actions are related to CreateMultiRegionAccessPoint:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "POST", + "uri": "/v20180820/async-requests/mrap/create", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#CreateMultiRegionAccessPointInput": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the Multi-Region Access Point associated with this request.

", + "smithy.api#required": {} + } + }, + "PublicAccessBlock": { + "target": "com.amazonaws.s3control#PublicAccessBlockConfiguration" + }, + "Regions": { + "target": "com.amazonaws.s3control#RegionCreationList", + "traits": { + "smithy.api#documentation": "

The buckets in different Regions that are associated with the Multi-Region Access Point.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for the information associated with a CreateMultiRegionAccessPoint request.

" + } + }, + "com.amazonaws.s3control#CreateMultiRegionAccessPointRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point. The owner of the Multi-Region Access Point also must own\n the underlying buckets.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "ClientToken": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointClientToken", + "traits": { + "smithy.api#documentation": "

An idempotency token used to identify the request and guarantee that requests are\n unique.

", + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + }, + "Details": { + "target": "com.amazonaws.s3control#CreateMultiRegionAccessPointInput", + "traits": { + "smithy.api#documentation": "

A container element containing details about the Multi-Region Access Point.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#CreateMultiRegionAccessPointResult": { + "type": "structure", + "members": { + "RequestTokenARN": { + "target": "com.amazonaws.s3control#AsyncRequestTokenARN", + "traits": { + "smithy.api#documentation": "

The request token associated with the request. You can use this token with DescribeMultiRegionAccessPointOperation to determine the status of asynchronous\n requests.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#CreateStorageLensGroup": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#CreateStorageLensGroupRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Creates a new S3 Storage Lens group and associates it with the specified Amazon Web Services account ID. An\n S3 Storage Lens group is a custom grouping of objects based on prefix, suffix, object tags,\n object size, object age, or a combination of these filters. For each Storage Lens group\n that you’ve created, you can also optionally add Amazon Web Services resource tags. For more information\n about S3 Storage Lens groups, see Working with S3 Storage Lens\n groups.

\n

To use this operation, you must have the permission to perform the\n s3:CreateStorageLensGroup action. If you’re trying to create a Storage Lens\n group with Amazon Web Services resource tags, you must also have permission to perform the\n s3:TagResource action. For more information about the required Storage Lens\n Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

\n

For information about Storage Lens groups errors, see List of Amazon S3 Storage\n Lens error codes.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "POST", + "uri": "/v20180820/storagelensgroup", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#CreateStorageLensGroupRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

\nThe Amazon Web Services account ID that the Storage Lens group is created from and associated with.\n

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "StorageLensGroup": { + "target": "com.amazonaws.s3control#StorageLensGroup", + "traits": { + "smithy.api#documentation": "

\nThe Storage Lens group configuration.\n

", + "smithy.api#required": {} + } + }, + "Tags": { + "target": "com.amazonaws.s3control#TagList", + "traits": { + "smithy.api#documentation": "

\nThe Amazon Web Services resource tags that you're adding to your Storage Lens group. This parameter is optional.\n

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#CreationDate": { + "type": "timestamp" + }, + "com.amazonaws.s3control#CreationTimestamp": { + "type": "timestamp" + }, + "com.amazonaws.s3control#Credentials": { + "type": "structure", + "members": { + "AccessKeyId": { + "target": "com.amazonaws.s3control#AccessKeyId", + "traits": { + "smithy.api#documentation": "

The unique access key ID of the Amazon Web Services STS temporary credential that S3 Access Grants vends to grantees\n and client applications.

" + } + }, + "SecretAccessKey": { + "target": "com.amazonaws.s3control#SecretAccessKey", + "traits": { + "smithy.api#documentation": "

The secret access key of the Amazon Web Services STS temporary credential that S3 Access Grants vends to grantees\n and client applications.

" + } + }, + "SessionToken": { + "target": "com.amazonaws.s3control#SessionToken", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services STS temporary credential that S3 Access Grants vends to grantees and client applications.\n

" + } + }, + "Expiration": { + "target": "com.amazonaws.s3control#Expiration", + "traits": { + "smithy.api#documentation": "

The expiration date and time of the temporary credential that S3 Access Grants vends to grantees\n and client applications.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The Amazon Web Services Security Token Service temporary credential that S3 Access Grants vends to grantees and client\n applications.

", + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.s3control#DSSEKMSFilter": { + "type": "structure", + "members": { + "KmsKeyArn": { + "target": "com.amazonaws.s3control#NonEmptyKmsKeyArnString", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the customer managed KMS key to use for the filter \n to return objects that are encrypted by the specified key. For best performance, \n we recommend using the KMSKeyArn filter in conjunction with other object metadata filters, like MatchAnyPrefix, CreatedAfter, or \n MatchAnyStorageClass.

\n \n

You must provide the full KMS Key ARN. You can't use an alias name or alias ARN. \n For more information, see \n KMS keys in the Amazon Web Services Key Management Service Developer Guide.

\n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

A filter that returns objects that are encrypted by dual-layer server-side encryption with Amazon Web Services Key Management\n Service (KMS) keys (DSSE-KMS). You can further refine your filtering by optionally providing a KMS Key ARN \n to create an object list of DSSE-KMS objects with that specific KMS Key ARN.

" + } + }, + "com.amazonaws.s3control#DataSourceId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 191 + } + } + }, + "com.amazonaws.s3control#DataSourceType": { + "type": "string" + }, + "com.amazonaws.s3control#Date": { + "type": "timestamp" + }, + "com.amazonaws.s3control#Days": { + "type": "integer", + "traits": { + "smithy.api#default": 0 + } + }, + "com.amazonaws.s3control#DaysAfterInitiation": { + "type": "integer", + "traits": { + "smithy.api#default": 0 + } + }, + "com.amazonaws.s3control#DeleteAccessGrant": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteAccessGrantRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Deletes the access grant from the S3 Access Grants instance. You cannot undo an access grant\n deletion and the grantee will no longer have access to the S3 data.

\n
\n
Permissions
\n
\n

You must have the s3:DeleteAccessGrant permission to use this\n operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/accessgrantsinstance/grant/{AccessGrantId}", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteAccessGrantRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "AccessGrantId": { + "target": "com.amazonaws.s3control#AccessGrantId", + "traits": { + "smithy.api#documentation": "

The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access\n grant.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteAccessGrantsInstance": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteAccessGrantsInstanceRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Deletes your S3 Access Grants instance. You must first delete the access grants and locations\n before S3 Access Grants can delete the instance. See DeleteAccessGrant\n and DeleteAccessGrantsLocation. If you have associated an IAM Identity Center\n instance with your S3 Access Grants instance, you must first dissassociate the Identity Center\n instance from the S3 Access Grants instance before you can delete the S3 Access Grants instance. See AssociateAccessGrantsIdentityCenter and DissociateAccessGrantsIdentityCenter.

\n
\n
Permissions
\n
\n

You must have the s3:DeleteAccessGrantsInstance permission to use\n this operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/accessgrantsinstance", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteAccessGrantsInstanceRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteAccessGrantsInstanceResourcePolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteAccessGrantsInstanceResourcePolicyRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Deletes the resource policy of the S3 Access Grants instance. The resource policy is used to\n manage cross-account access to your S3 Access Grants instance. By deleting the resource policy, you\n delete any cross-account permissions to your S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:DeleteAccessGrantsInstanceResourcePolicy\n permission to use this operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/accessgrantsinstance/resourcepolicy", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteAccessGrantsInstanceResourcePolicyRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteAccessGrantsLocation": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteAccessGrantsLocationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Deregisters a location from your S3 Access Grants instance. You can only delete a location\n registration from an S3 Access Grants instance if there are no grants associated with this location.\n See Delete a grant for\n information on how to delete grants. You need to have at least one registered location in\n your S3 Access Grants instance in order to create access grants.

\n
\n
Permissions
\n
\n

You must have the s3:DeleteAccessGrantsLocation permission to use\n this operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/accessgrantsinstance/location/{AccessGrantsLocationId}", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteAccessGrantsLocationRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "AccessGrantsLocationId": { + "target": "com.amazonaws.s3control#AccessGrantsLocationId", + "traits": { + "smithy.api#documentation": "

The ID of the registered location that you are deregistering from your S3 Access Grants instance.\n S3 Access Grants assigned this ID when you registered the location. S3 Access Grants assigns the ID\n default to the default location s3:// and assigns an\n auto-generated ID to other locations that you register.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteAccessPoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteAccessPointRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Deletes the specified access point.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to DeleteAccessPoint:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/accesspoint/{Name}", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteAccessPointForObjectLambda": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteAccessPointForObjectLambdaRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Deletes the specified Object Lambda Access Point.

\n

The following actions are related to\n DeleteAccessPointForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/accesspointforobjectlambda/{Name}", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteAccessPointForObjectLambdaRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the access point you want to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteAccessPointPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteAccessPointPolicyRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Deletes the access point policy for the specified access point.

\n

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to DeleteAccessPointPolicy:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/accesspoint/{Name}/policy", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteAccessPointPolicyForObjectLambda": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteAccessPointPolicyForObjectLambdaRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Removes the resource policy for an Object Lambda Access Point.

\n

The following actions are related to\n DeleteAccessPointPolicyForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/accesspointforobjectlambda/{Name}/policy", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteAccessPointPolicyForObjectLambdaRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the Object Lambda Access Point you want to delete the policy for.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteAccessPointPolicyRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID for the account that owns the specified access point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#AccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the access point whose policy you want to delete.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the access point accessed in the format arn:aws:s3-outposts:::outpost//accesspoint/. For example, to access the access point reports-ap through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/accesspoint/reports-ap. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccessPointName" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteAccessPointRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID for the account that owns the specified access point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#AccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the access point you want to delete.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the access point accessed in the format arn:aws:s3-outposts:::outpost//accesspoint/. For example, to access the access point reports-ap through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/accesspoint/reports-ap. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccessPointName" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteAccessPointScope": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteAccessPointScopeRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Deletes an existing access point scope for a directory bucket.

\n \n

When you delete the scope of an access point, all prefixes and permissions are\n deleted.

\n
\n

To use this operation, you must have the permission to perform the\n s3express:DeleteAccessPointScope\n action.

\n

For information about REST API errors, see REST error responses.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/accesspoint/{Name}/scope", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + }, + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteAccessPointScopeRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID that owns the access point with the scope that you want to delete.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#AccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the access point with the scope that you want to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccessPointName" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteBucket": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteBucketRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This action deletes an Amazon S3 on Outposts bucket. To delete an S3 bucket, see DeleteBucket in the Amazon S3 API Reference.

\n
\n

Deletes the Amazon S3 on Outposts bucket. All objects (including all object versions and\n delete markers) in the bucket must be deleted before the bucket itself can be deleted. For\n more information, see Using Amazon S3 on Outposts in\n Amazon S3 User Guide.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

\n Related Resources\n

\n ", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/bucket/{Bucket}", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteBucketLifecycleConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteBucketLifecycleConfigurationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This action deletes an Amazon S3 on Outposts bucket's lifecycle configuration. To delete\n an S3 bucket's lifecycle configuration, see DeleteBucketLifecycle in the Amazon S3 API Reference.

\n
\n

Deletes the lifecycle configuration from the specified Outposts bucket.\n Amazon S3 on Outposts removes all the lifecycle configuration rules in the lifecycle subresource\n associated with the bucket. Your objects never expire, and Amazon S3 on Outposts no longer\n automatically deletes any objects on the basis of rules contained in the deleted lifecycle\n configuration. For more information, see Using Amazon S3 on Outposts in\n Amazon S3 User Guide.

\n

To use this operation, you must have permission to perform the\n s3-outposts:PutLifecycleConfiguration action. By default, the bucket owner\n has this permission and the Outposts bucket owner can grant this permission to\n others.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

For more information about object expiration, see Elements to Describe Lifecycle Actions.

\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/bucket/{Bucket}/lifecycleconfiguration", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteBucketLifecycleConfigurationRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the lifecycle configuration to delete.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

Specifies the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteBucketPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteBucketPolicyRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This action deletes an Amazon S3 on Outposts bucket policy. To delete an S3 bucket policy,\n see DeleteBucketPolicy in the Amazon S3 API Reference.

\n
\n

This implementation of the DELETE action uses the policy subresource to delete the\n policy of a specified Amazon S3 on Outposts bucket. If you are using an identity other than the\n root user of the Amazon Web Services account that owns the bucket, the calling identity must have the\n s3-outposts:DeleteBucketPolicy permissions on the specified Outposts bucket\n and belong to the bucket owner's account to use this action. For more information, see\n Using\n Amazon S3 on Outposts in Amazon S3 User Guide.

\n

If you don't have DeleteBucketPolicy permissions, Amazon S3 returns a 403\n Access Denied error. If you have the correct permissions, but you're not using an\n identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not\n Allowed error.

\n \n

As a security precaution, the root user of the Amazon Web Services account that owns a bucket can\n always use this action, even if the policy explicitly denies the root user the ability\n to perform this action.

\n
\n

For more information about bucket policies, see Using Bucket Policies and User\n Policies.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to DeleteBucketPolicy:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/bucket/{Bucket}/policy", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteBucketPolicyRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the Outposts bucket.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

Specifies the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteBucketReplication": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteBucketReplicationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation deletes an Amazon S3 on Outposts bucket's replication configuration. To\n delete an S3 bucket's replication configuration, see DeleteBucketReplication in the Amazon S3 API Reference.

\n
\n

Deletes the replication configuration from the specified S3 on Outposts bucket.

\n

To use this operation, you must have permissions to perform the\n s3-outposts:PutReplicationConfiguration action. The Outposts bucket owner\n has this permission by default and can grant it to others. For more information about\n permissions, see Setting up IAM with\n S3 on Outposts and Managing access to\n S3 on Outposts buckets in the Amazon S3 User Guide.

\n \n

It can take a while to propagate PUT or DELETE requests for\n a replication configuration to all S3 on Outposts systems. Therefore, the replication\n configuration that's returned by a GET request soon after a\n PUT or DELETE request might return a more recent result\n than what's on the Outpost. If an Outpost is offline, the delay in updating the\n replication configuration on that Outpost can be significant.

\n
\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

For information about S3 replication on Outposts configuration, see Replicating objects for S3 on Outposts in the\n Amazon S3 User Guide.

\n

The following operations are related to DeleteBucketReplication:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/bucket/{Bucket}/replication", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteBucketReplicationRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket to delete the replication configuration\n for.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

Specifies the S3 on Outposts bucket to delete the replication configuration for.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteBucketRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID that owns the Outposts bucket.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

Specifies the bucket being deleted.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteBucketTagging": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteBucketTaggingRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This action deletes an Amazon S3 on Outposts bucket's tags. To delete an S3 bucket tags,\n see DeleteBucketTagging in the Amazon S3 API Reference.

\n
\n

Deletes the tags from the Outposts bucket. For more information, see Using\n Amazon S3 on Outposts in Amazon S3 User Guide.

\n

To use this action, you must have permission to perform the\n PutBucketTagging action. By default, the bucket owner has this permission\n and can grant this permission to others.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to DeleteBucketTagging:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/bucket/{Bucket}/tagging", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteBucketTaggingRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket tag set to be removed.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket ARN that has the tag set to be removed.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteJobTagging": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteJobTaggingRequest" + }, + "output": { + "target": "com.amazonaws.s3control#DeleteJobTaggingResult" + }, + "errors": [ + { + "target": "com.amazonaws.s3control#InternalServiceException" + }, + { + "target": "com.amazonaws.s3control#NotFoundException" + }, + { + "target": "com.amazonaws.s3control#TooManyRequestsException" + } + ], + "traits": { + "smithy.api#documentation": "

Removes the entire tag set from the specified S3 Batch Operations job.

\n
\n
Permissions
\n
\n

To use the DeleteJobTagging operation, you must have permission to\n perform the s3:DeleteJobTagging action. For more information, see\n Controlling access and labeling jobs using tags in the\n Amazon S3 User Guide.

\n
\n
\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/jobs/{JobId}/tagging", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteJobTaggingRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "JobId": { + "target": "com.amazonaws.s3control#JobId", + "traits": { + "smithy.api#documentation": "

The ID for the S3 Batch Operations job whose tags you want to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteJobTaggingResult": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#DeleteMarkerReplication": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3control#DeleteMarkerReplicationStatus", + "traits": { + "smithy.api#documentation": "

Indicates whether to replicate delete markers.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies whether S3 on Outposts replicates delete markers. If you specify a\n Filter element in your replication configuration, you must also include a\n DeleteMarkerReplication element. If your Filter includes a\n Tag element, the DeleteMarkerReplication element's\n Status child element must be set to Disabled, because\n S3 on Outposts does not support replicating delete markers for tag-based rules.

\n

For more information about delete marker replication, see How delete operations affect replication in the\n Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3control#DeleteMarkerReplicationStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.s3control#DeleteMultiRegionAccessPoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteMultiRegionAccessPointRequest" + }, + "output": { + "target": "com.amazonaws.s3control#DeleteMultiRegionAccessPointResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Deletes a Multi-Region Access Point. This action does not delete the buckets associated with the Multi-Region Access Point,\n only the Multi-Region Access Point itself.

\n

This action will always be routed to the US West (Oregon) Region. For more information\n about the restrictions around working with Multi-Region Access Points, see Multi-Region Access Point\n restrictions and limitations in the Amazon S3 User Guide.

\n

This request is asynchronous, meaning that you might receive a response before the\n command has completed. When this request provides a response, it provides a token that you\n can use to monitor the status of the request with\n DescribeMultiRegionAccessPointOperation.

\n

The following actions are related to DeleteMultiRegionAccessPoint:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "POST", + "uri": "/v20180820/async-requests/mrap/delete", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteMultiRegionAccessPointInput": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the Multi-Region Access Point associated with this request.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for the information associated with a DeleteMultiRegionAccessPoint request.

" + } + }, + "com.amazonaws.s3control#DeleteMultiRegionAccessPointRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "ClientToken": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointClientToken", + "traits": { + "smithy.api#documentation": "

An idempotency token used to identify the request and guarantee that requests are\n unique.

", + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + }, + "Details": { + "target": "com.amazonaws.s3control#DeleteMultiRegionAccessPointInput", + "traits": { + "smithy.api#documentation": "

A container element containing details about the Multi-Region Access Point.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteMultiRegionAccessPointResult": { + "type": "structure", + "members": { + "RequestTokenARN": { + "target": "com.amazonaws.s3control#AsyncRequestTokenARN", + "traits": { + "smithy.api#documentation": "

The request token associated with the request. You can use this token with DescribeMultiRegionAccessPointOperation to determine the status of asynchronous\n requests.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#DeletePublicAccessBlock": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeletePublicAccessBlockRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Removes the PublicAccessBlock configuration for an Amazon Web Services account. For more\n information, see Using Amazon S3 block\n public access.

\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/configuration/publicAccessBlock", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeletePublicAccessBlockRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID for the Amazon Web Services account whose PublicAccessBlock configuration\n you want to remove.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteStorageLensConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteStorageLensConfigurationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Deletes the Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see Assessing your storage\n activity and usage with Amazon S3 Storage Lens in the\n Amazon S3 User Guide.

\n \n

To use this action, you must have permission to perform the\n s3:DeleteStorageLensConfiguration action. For more information, see\n Setting permissions to\n use Amazon S3 Storage Lens in the Amazon S3 User Guide.

\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/storagelens/{ConfigId}", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteStorageLensConfigurationRequest": { + "type": "structure", + "members": { + "ConfigId": { + "target": "com.amazonaws.s3control#ConfigId", + "traits": { + "smithy.api#documentation": "

The ID of the S3 Storage Lens configuration.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the requester.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteStorageLensConfigurationTagging": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteStorageLensConfigurationTaggingRequest" + }, + "output": { + "target": "com.amazonaws.s3control#DeleteStorageLensConfigurationTaggingResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Deletes the Amazon S3 Storage Lens configuration tags. For more information about S3 Storage Lens, see\n Assessing your\n storage activity and usage with Amazon S3 Storage Lens in the\n Amazon S3 User Guide.

\n \n

To use this action, you must have permission to perform the\n s3:DeleteStorageLensConfigurationTagging action. For more information,\n see Setting permissions to\n use Amazon S3 Storage Lens in the Amazon S3 User Guide.

\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/storagelens/{ConfigId}/tagging", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteStorageLensConfigurationTaggingRequest": { + "type": "structure", + "members": { + "ConfigId": { + "target": "com.amazonaws.s3control#ConfigId", + "traits": { + "smithy.api#documentation": "

The ID of the S3 Storage Lens configuration.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the requester.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DeleteStorageLensConfigurationTaggingResult": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#DeleteStorageLensGroup": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DeleteStorageLensGroupRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

\nDeletes an existing S3 Storage Lens group.

\n

To use this operation, you must have the permission to perform the\n s3:DeleteStorageLensGroup action. For more information about the required Storage Lens\n Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

\n

For information about Storage Lens groups errors, see List of Amazon S3 Storage\n Lens error codes.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/storagelensgroup/{Name}", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DeleteStorageLensGroupRequest": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.s3control#StorageLensGroupName", + "traits": { + "smithy.api#documentation": "

\nThe name of the Storage Lens group that you're trying to delete.\n

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

\nThe Amazon Web Services account ID used to create the Storage Lens group that you're trying to delete.\n

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DescribeJob": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DescribeJobRequest" + }, + "output": { + "target": "com.amazonaws.s3control#DescribeJobResult" + }, + "errors": [ + { + "target": "com.amazonaws.s3control#BadRequestException" + }, + { + "target": "com.amazonaws.s3control#InternalServiceException" + }, + { + "target": "com.amazonaws.s3control#NotFoundException" + }, + { + "target": "com.amazonaws.s3control#TooManyRequestsException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves the configuration parameters and status for a Batch Operations job. For more\n information, see S3 Batch Operations in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

To use the DescribeJob operation, you must have permission to\n perform the s3:DescribeJob action.

\n
\n
\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/jobs/{JobId}", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DescribeJobRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "JobId": { + "target": "com.amazonaws.s3control#JobId", + "traits": { + "smithy.api#documentation": "

The ID for the job whose information you want to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DescribeJobResult": { + "type": "structure", + "members": { + "Job": { + "target": "com.amazonaws.s3control#JobDescriptor", + "traits": { + "smithy.api#documentation": "

Contains the configuration parameters and status for the job specified in the\n Describe Job request.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#DescribeMultiRegionAccessPointOperation": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DescribeMultiRegionAccessPointOperationRequest" + }, + "output": { + "target": "com.amazonaws.s3control#DescribeMultiRegionAccessPointOperationResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Retrieves the status of an asynchronous request to manage a Multi-Region Access Point. For more information\n about managing Multi-Region Access Points and how asynchronous requests work, see Using Multi-Region Access Points in the\n Amazon S3 User Guide.

\n

The following actions are related to GetMultiRegionAccessPoint:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/async-requests/mrap/{RequestTokenARN+}", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DescribeMultiRegionAccessPointOperationRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "RequestTokenARN": { + "target": "com.amazonaws.s3control#AsyncRequestTokenARN", + "traits": { + "smithy.api#documentation": "

The request token associated with the request you want to know about. This request token\n is returned as part of the response when you make an asynchronous request. You provide this\n token to query about the status of the asynchronous action.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DescribeMultiRegionAccessPointOperationResult": { + "type": "structure", + "members": { + "AsyncOperation": { + "target": "com.amazonaws.s3control#AsyncOperation", + "traits": { + "smithy.api#documentation": "

A container element containing the details of the asynchronous operation.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#Destination": { + "type": "structure", + "members": { + "Account": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The destination bucket owner's account ID.

" + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketIdentifierString", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the access point for the destination bucket where you want\n S3 on Outposts to store the replication results.

", + "smithy.api#required": {} + } + }, + "ReplicationTime": { + "target": "com.amazonaws.s3control#ReplicationTime", + "traits": { + "smithy.api#documentation": "

A container that specifies S3 Replication Time Control (S3 RTC) settings, including whether S3 RTC is enabled\n and the time when all objects and operations on objects must be replicated. Must be\n specified together with a Metrics block.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" + } + }, + "AccessControlTranslation": { + "target": "com.amazonaws.s3control#AccessControlTranslation", + "traits": { + "smithy.api#documentation": "

Specify this property only in a cross-account scenario (where the source and destination\n bucket owners are not the same), and you want to change replica ownership to the\n Amazon Web Services account that owns the destination bucket. If this property is not specified in the\n replication configuration, the replicas are owned by same Amazon Web Services account that owns the\n source object.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" + } + }, + "EncryptionConfiguration": { + "target": "com.amazonaws.s3control#EncryptionConfiguration", + "traits": { + "smithy.api#documentation": "

A container that provides information about encryption. If\n SourceSelectionCriteria is specified, you must specify this element.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" + } + }, + "Metrics": { + "target": "com.amazonaws.s3control#Metrics", + "traits": { + "smithy.api#documentation": "

A container that specifies replication metrics-related settings.

" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3control#ReplicationStorageClass", + "traits": { + "smithy.api#documentation": "

The storage class to use when replicating objects. All objects stored on S3 on Outposts\n are stored in the OUTPOSTS storage class. S3 on Outposts uses the\n OUTPOSTS storage class to create the object replicas.

\n \n

Values other than OUTPOSTS aren't supported by Amazon S3 on Outposts.

\n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies information about the replication destination bucket and its settings for an\n S3 on Outposts replication configuration.

" + } + }, + "com.amazonaws.s3control#DetailedStatusCodesMetrics": { + "type": "structure", + "members": { + "IsEnabled": { + "target": "com.amazonaws.s3control#IsEnabled", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

A container that indicates whether detailed status code metrics are enabled.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The container element for Amazon S3 Storage Lens detailed status code metrics. Detailed status\n code metrics generate metrics for HTTP status codes, such as 200 OK, 403\n Forbidden, 503 Service Unavailable and others.

\n

For more information about S3 Storage Lens, see Assessing your storage activity and usage with S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3control#DissociateAccessGrantsIdentityCenter": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#DissociateAccessGrantsIdentityCenterRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Dissociates the Amazon Web Services IAM Identity Center instance from the S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:DissociateAccessGrantsIdentityCenter\n permission to use this operation.

\n
\n
Additional Permissions
\n
\n

You must have the sso:DeleteApplication permission to use this\n operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/accessgrantsinstance/identitycenter", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#DissociateAccessGrantsIdentityCenterRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#DurationSeconds": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 900, + "max": 43200 + } + } + }, + "com.amazonaws.s3control#EncryptionConfiguration": { + "type": "structure", + "members": { + "ReplicaKmsKeyID": { + "target": "com.amazonaws.s3control#ReplicaKmsKeyID", + "traits": { + "smithy.api#documentation": "

Specifies the ID of the customer managed KMS key that's stored in Key Management Service (KMS)\n for the destination bucket. This ID is either the Amazon Resource Name (ARN) for the\n KMS key or the alias ARN for the KMS key. Amazon S3 uses this KMS key to encrypt\n replica objects. Amazon S3 supports only symmetric encryption KMS keys. For more information,\n see Symmetric encryption\n KMS keys in the Amazon Web Services Key Management Service Developer\n Guide.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies encryption-related information for an Amazon S3 bucket that is a destination for\n replicated objects. If you're specifying a customer managed KMS key, we recommend using a\n fully qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves\n the key within the requester’s account. This behavior can result in data that's encrypted\n with a KMS key that belongs to the requester, and not the bucket owner.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" + } + }, + "com.amazonaws.s3control#Endpoints": { + "type": "map", + "key": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength64String" + }, + "value": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String" + } + }, + "com.amazonaws.s3control#EstablishedMultiRegionAccessPointPolicy": { + "type": "structure", + "members": { + "Policy": { + "target": "com.amazonaws.s3control#Policy", + "traits": { + "smithy.api#documentation": "

The details of the last established policy.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The last established access control policy for a Multi-Region Access Point.

\n

When you update the policy, the update is first listed as the proposed policy. After the\n update is finished and all Regions have been updated, the proposed policy is listed as the\n established policy. If both policies have the same version number, the proposed policy is\n the established policy.

" + } + }, + "com.amazonaws.s3control#ExceptionMessage": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + } + } + }, + "com.amazonaws.s3control#Exclude": { + "type": "structure", + "members": { + "Buckets": { + "target": "com.amazonaws.s3control#Buckets", + "traits": { + "smithy.api#documentation": "

A container for the S3 Storage Lens bucket excludes.

" + } + }, + "Regions": { + "target": "com.amazonaws.s3control#Regions", + "traits": { + "smithy.api#documentation": "

A container for the S3 Storage Lens Region excludes.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for what Amazon S3 Storage Lens will exclude.

" + } + }, + "com.amazonaws.s3control#ExistingObjectReplication": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3control#ExistingObjectReplicationStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether Amazon S3 replicates existing source bucket objects.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

An optional configuration to replicate existing source bucket objects.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" + } + }, + "com.amazonaws.s3control#ExistingObjectReplicationStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.s3control#Expiration": { + "type": "timestamp" + }, + "com.amazonaws.s3control#ExpirationStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.s3control#ExpiredObjectDeleteMarker": { + "type": "boolean", + "traits": { + "smithy.api#default": false + } + }, + "com.amazonaws.s3control#Format": { + "type": "enum", + "members": { + "CSV": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CSV" + } + }, + "Parquet": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Parquet" + } + } + } + }, + "com.amazonaws.s3control#FunctionArnString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + }, + "smithy.api#pattern": "^(arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}((-gov)|(-iso([a-z]?)))?-[a-z]+-\\d{1}:)?(\\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\\$LATEST|[a-zA-Z0-9-_]+))?$" + } + }, + "com.amazonaws.s3control#GeneratedManifestEncryption": { + "type": "structure", + "members": { + "SSES3": { + "target": "com.amazonaws.s3control#SSES3Encryption", + "traits": { + "smithy.api#documentation": "

Specifies the use of SSE-S3 to encrypt generated manifest objects.

", + "smithy.api#xmlName": "SSE-S3" + } + }, + "SSEKMS": { + "target": "com.amazonaws.s3control#SSEKMSEncryption", + "traits": { + "smithy.api#documentation": "

Configuration details on how SSE-KMS is used to encrypt generated manifest\n objects.

", + "smithy.api#xmlName": "SSE-KMS" + } + } + }, + "traits": { + "smithy.api#documentation": "

The encryption configuration to use when storing the generated manifest.

" + } + }, + "com.amazonaws.s3control#GeneratedManifestFormat": { + "type": "enum", + "members": { + "S3InventoryReport_CSV_20211130": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "S3InventoryReport_CSV_20211130" + } + } + } + }, + "com.amazonaws.s3control#GetAccessGrant": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetAccessGrantRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetAccessGrantResult" + }, + "traits": { + "smithy.api#documentation": "

Get the details of an access grant from your S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:GetAccessGrant permission to use this\n operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accessgrantsinstance/grant/{AccessGrantId}", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetAccessGrantRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "AccessGrantId": { + "target": "com.amazonaws.s3control#AccessGrantId", + "traits": { + "smithy.api#documentation": "

The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access\n grant.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetAccessGrantResult": { + "type": "structure", + "members": { + "CreatedAt": { + "target": "com.amazonaws.s3control#CreationTimestamp", + "traits": { + "smithy.api#documentation": "

The date and time when you created the access grant.

" + } + }, + "AccessGrantId": { + "target": "com.amazonaws.s3control#AccessGrantId", + "traits": { + "smithy.api#documentation": "

The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access\n grant.

" + } + }, + "AccessGrantArn": { + "target": "com.amazonaws.s3control#AccessGrantArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the access grant.

" + } + }, + "Grantee": { + "target": "com.amazonaws.s3control#Grantee", + "traits": { + "smithy.api#documentation": "

The user, group, or role to which you are granting access. You can grant access to an\n IAM user or role. If you have added a corporate directory to Amazon Web Services IAM Identity Center\n and associated this Identity Center instance with the S3 Access Grants instance, the grantee can also\n be a corporate directory user or group.

" + } + }, + "Permission": { + "target": "com.amazonaws.s3control#Permission", + "traits": { + "smithy.api#documentation": "

The type of permission that was granted in the access grant. Can be one of the following\n values:

\n
    \n
  • \n

    \n READ – Grant read-only access to the S3 data.

    \n
  • \n
  • \n

    \n WRITE – Grant write-only access to the S3 data.

    \n
  • \n
  • \n

    \n READWRITE – Grant both read and write access to the S3 data.

    \n
  • \n
" + } + }, + "AccessGrantsLocationId": { + "target": "com.amazonaws.s3control#AccessGrantsLocationId", + "traits": { + "smithy.api#documentation": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this\n ID when you register the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

" + } + }, + "AccessGrantsLocationConfiguration": { + "target": "com.amazonaws.s3control#AccessGrantsLocationConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration options of the grant location. The grant location is the S3 path to\n the data to which you are granting access.

" + } + }, + "GrantScope": { + "target": "com.amazonaws.s3control#S3Prefix", + "traits": { + "smithy.api#documentation": "

The S3 path of the data to which you are granting access. It is the result of appending\n the Subprefix to the location scope.

" + } + }, + "ApplicationArn": { + "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated\n with your Identity Center instance. If the grant includes an application ARN, the grantee\n can only access the S3 data through this application.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetAccessGrantsInstance": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetAccessGrantsInstanceRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetAccessGrantsInstanceResult" + }, + "traits": { + "smithy.api#documentation": "

Retrieves the S3 Access Grants instance for a Region in your account.

\n
\n
Permissions
\n
\n

You must have the s3:GetAccessGrantsInstance permission to use\n this operation.

\n
\n
\n \n

\n GetAccessGrantsInstance is not supported for cross-account access. You can only call the API from the account that owns the S3 Access Grants instance.

\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accessgrantsinstance", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetAccessGrantsInstanceForPrefix": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetAccessGrantsInstanceForPrefixRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetAccessGrantsInstanceForPrefixResult" + }, + "traits": { + "smithy.api#documentation": "

Retrieve the S3 Access Grants instance that contains a particular prefix.

\n
\n
Permissions
\n
\n

You must have the s3:GetAccessGrantsInstanceForPrefix permission\n for the caller account to use this operation.

\n
\n
Additional Permissions
\n
\n

The prefix owner account must grant you the following permissions to their\n S3 Access Grants instance: s3:GetAccessGrantsInstanceForPrefix.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accessgrantsinstance/prefix", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetAccessGrantsInstanceForPrefixRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that is making this request.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "S3Prefix": { + "target": "com.amazonaws.s3control#S3Prefix", + "traits": { + "smithy.api#documentation": "

The S3 prefix of the access grants that you would like to retrieve.

", + "smithy.api#httpQuery": "s3prefix", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetAccessGrantsInstanceForPrefixResult": { + "type": "structure", + "members": { + "AccessGrantsInstanceArn": { + "target": "com.amazonaws.s3control#AccessGrantsInstanceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the S3 Access Grants instance.

" + } + }, + "AccessGrantsInstanceId": { + "target": "com.amazonaws.s3control#AccessGrantsInstanceId", + "traits": { + "smithy.api#documentation": "

The ID of the S3 Access Grants instance. The ID is default. You can have one S3 Access Grants\n instance per Region per account.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetAccessGrantsInstanceRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetAccessGrantsInstanceResourcePolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetAccessGrantsInstanceResourcePolicyRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetAccessGrantsInstanceResourcePolicyResult" + }, + "traits": { + "smithy.api#documentation": "

Returns the resource policy of the S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:GetAccessGrantsInstanceResourcePolicy\n permission to use this operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accessgrantsinstance/resourcepolicy", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetAccessGrantsInstanceResourcePolicyRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetAccessGrantsInstanceResourcePolicyResult": { + "type": "structure", + "members": { + "Policy": { + "target": "com.amazonaws.s3control#PolicyDocument", + "traits": { + "smithy.api#documentation": "

The resource policy of the S3 Access Grants instance.

" + } + }, + "Organization": { + "target": "com.amazonaws.s3control#Organization", + "traits": { + "smithy.api#documentation": "

The Organization of the resource policy of the S3 Access Grants instance.

" + } + }, + "CreatedAt": { + "target": "com.amazonaws.s3control#CreationTimestamp", + "traits": { + "smithy.api#documentation": "

The date and time when you created the S3 Access Grants instance resource policy.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetAccessGrantsInstanceResult": { + "type": "structure", + "members": { + "AccessGrantsInstanceArn": { + "target": "com.amazonaws.s3control#AccessGrantsInstanceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the S3 Access Grants instance.

" + } + }, + "AccessGrantsInstanceId": { + "target": "com.amazonaws.s3control#AccessGrantsInstanceId", + "traits": { + "smithy.api#documentation": "

The ID of the S3 Access Grants instance. The ID is default. You can have one S3 Access Grants\n instance per Region per account.

" + } + }, + "IdentityCenterArn": { + "target": "com.amazonaws.s3control#IdentityCenterArn", + "traits": { + "smithy.api#deprecated": { + "message": "IdentityCenterArn has been deprecated. Use IdentityCenterInstanceArn or IdentityCenterApplicationArn." + }, + "smithy.api#documentation": "

If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance,\n this field returns the Amazon Resource Name (ARN) of the IAM Identity Center instance\n application; a subresource of the original Identity Center instance. S3 Access Grants creates this\n Identity Center application for the specific S3 Access Grants instance.

" + } + }, + "IdentityCenterInstanceArn": { + "target": "com.amazonaws.s3control#IdentityCenterArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity Center instance that you are\n associating with your S3 Access Grants instance. An IAM Identity Center instance is your corporate\n identity directory that you added to the IAM Identity Center. You can use the ListInstances API operation to retrieve a list of your Identity Center\n instances and their ARNs.

" + } + }, + "IdentityCenterApplicationArn": { + "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", + "traits": { + "smithy.api#documentation": "

If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance,\n this field returns the Amazon Resource Name (ARN) of the IAM Identity Center instance\n application; a subresource of the original Identity Center instance. S3 Access Grants creates this\n Identity Center application for the specific S3 Access Grants instance.

" + } + }, + "CreatedAt": { + "target": "com.amazonaws.s3control#CreationTimestamp", + "traits": { + "smithy.api#documentation": "

The date and time when you created the S3 Access Grants instance.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetAccessGrantsLocation": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetAccessGrantsLocationRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetAccessGrantsLocationResult" + }, + "traits": { + "smithy.api#documentation": "

Retrieves the details of a particular location registered in your S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:GetAccessGrantsLocation permission to use\n this operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accessgrantsinstance/location/{AccessGrantsLocationId}", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetAccessGrantsLocationRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "AccessGrantsLocationId": { + "target": "com.amazonaws.s3control#AccessGrantsLocationId", + "traits": { + "smithy.api#documentation": "

The ID of the registered location that you are retrieving. S3 Access Grants assigns this ID when\n you register the location. S3 Access Grants assigns the ID default to the default\n location s3:// and assigns an auto-generated ID to other locations that you\n register.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetAccessGrantsLocationResult": { + "type": "structure", + "members": { + "CreatedAt": { + "target": "com.amazonaws.s3control#CreationTimestamp", + "traits": { + "smithy.api#documentation": "

The date and time when you registered the location.

" + } + }, + "AccessGrantsLocationId": { + "target": "com.amazonaws.s3control#AccessGrantsLocationId", + "traits": { + "smithy.api#documentation": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this\n ID when you register the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

" + } + }, + "AccessGrantsLocationArn": { + "target": "com.amazonaws.s3control#AccessGrantsLocationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the registered location.

" + } + }, + "LocationScope": { + "target": "com.amazonaws.s3control#S3Prefix", + "traits": { + "smithy.api#documentation": "

The S3 URI path to the registered location. The location scope can be the default S3\n location s3://, the S3 path to a bucket, or the S3 path to a bucket and\n prefix. A prefix in S3 is a string of characters at the beginning of an object key name\n used to organize the objects that you store in your S3 buckets. For example, object key\n names that start with the engineering/ prefix or object key names that start\n with the marketing/campaigns/ prefix.

" + } + }, + "IAMRoleArn": { + "target": "com.amazonaws.s3control#IAMRoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants\n assumes this role to manage access to the registered location.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetAccessPoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetAccessPointRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetAccessPointResult" + }, + "traits": { + "smithy.api#documentation": "

Returns configuration information about the specified access point.

\n

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to GetAccessPoint:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accesspoint/{Name}", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetAccessPointConfigurationForObjectLambda": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetAccessPointConfigurationForObjectLambdaRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetAccessPointConfigurationForObjectLambdaResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns configuration for an Object Lambda Access Point.

\n

The following actions are related to\n GetAccessPointConfigurationForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accesspointforobjectlambda/{Name}/configuration", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetAccessPointConfigurationForObjectLambdaRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the Object Lambda Access Point you want to return the configuration for.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetAccessPointConfigurationForObjectLambdaResult": { + "type": "structure", + "members": { + "Configuration": { + "target": "com.amazonaws.s3control#ObjectLambdaConfiguration", + "traits": { + "smithy.api#documentation": "

Object Lambda Access Point configuration document.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetAccessPointForObjectLambda": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetAccessPointForObjectLambdaRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetAccessPointForObjectLambdaResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns configuration information about the specified Object Lambda Access Point

\n

The following actions are related to GetAccessPointForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accesspointforobjectlambda/{Name}", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetAccessPointForObjectLambdaRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the Object Lambda Access Point.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetAccessPointForObjectLambdaResult": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the Object Lambda Access Point.

" + } + }, + "PublicAccessBlockConfiguration": { + "target": "com.amazonaws.s3control#PublicAccessBlockConfiguration", + "traits": { + "smithy.api#documentation": "

Configuration to block all public access. This setting is turned on and can not be\n edited.

" + } + }, + "CreationDate": { + "target": "com.amazonaws.s3control#CreationDate", + "traits": { + "smithy.api#documentation": "

The date and time when the specified Object Lambda Access Point was created.

" + } + }, + "Alias": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointAlias", + "traits": { + "smithy.api#documentation": "

The alias of the Object Lambda Access Point.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetAccessPointPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetAccessPointPolicyRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetAccessPointPolicyResult" + }, + "traits": { + "smithy.api#documentation": "

Returns the access point policy associated with the specified access point.

\n

The following actions are related to GetAccessPointPolicy:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accesspoint/{Name}/policy", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetAccessPointPolicyForObjectLambda": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetAccessPointPolicyForObjectLambdaRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetAccessPointPolicyForObjectLambdaResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns the resource policy for an Object Lambda Access Point.

\n

The following actions are related to\n GetAccessPointPolicyForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accesspointforobjectlambda/{Name}/policy", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetAccessPointPolicyForObjectLambdaRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the Object Lambda Access Point.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetAccessPointPolicyForObjectLambdaResult": { + "type": "structure", + "members": { + "Policy": { + "target": "com.amazonaws.s3control#ObjectLambdaPolicy", + "traits": { + "smithy.api#documentation": "

Object Lambda Access Point resource policy document.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetAccessPointPolicyRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID for the account that owns the specified access point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#AccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the access point whose policy you want to retrieve.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the access point accessed in the format arn:aws:s3-outposts:::outpost//accesspoint/. For example, to access the access point reports-ap through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/accesspoint/reports-ap. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccessPointName" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetAccessPointPolicyResult": { + "type": "structure", + "members": { + "Policy": { + "target": "com.amazonaws.s3control#Policy", + "traits": { + "smithy.api#documentation": "

The access point policy associated with the specified access point.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetAccessPointPolicyStatus": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetAccessPointPolicyStatusRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetAccessPointPolicyStatusResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Indicates whether the specified access point currently has a policy that allows public access.\n For more information about public access through access points, see Managing Data Access with Amazon S3\n access points in the Amazon S3 User Guide.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accesspoint/{Name}/policyStatus", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetAccessPointPolicyStatusForObjectLambda": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetAccessPointPolicyStatusForObjectLambdaRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetAccessPointPolicyStatusForObjectLambdaResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns the status of the resource policy associated with an Object Lambda Access Point.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accesspointforobjectlambda/{Name}/policyStatus", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetAccessPointPolicyStatusForObjectLambdaRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the Object Lambda Access Point.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetAccessPointPolicyStatusForObjectLambdaResult": { + "type": "structure", + "members": { + "PolicyStatus": { + "target": "com.amazonaws.s3control#PolicyStatus" + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetAccessPointPolicyStatusRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID for the account that owns the specified access point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#AccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the access point whose policy status you want to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccessPointName" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetAccessPointPolicyStatusResult": { + "type": "structure", + "members": { + "PolicyStatus": { + "target": "com.amazonaws.s3control#PolicyStatus", + "traits": { + "smithy.api#documentation": "

Indicates the current policy status of the specified access point.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetAccessPointRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID for the account that owns the specified access point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#AccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the access point whose configuration information you want to retrieve.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the access point accessed in the format arn:aws:s3-outposts:::outpost//accesspoint/. For example, to access the access point reports-ap through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/accesspoint/reports-ap. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccessPointName" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetAccessPointResult": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.s3control#AccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the specified access point.

" + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#AccessPointBucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket associated with the specified access point.

" + } + }, + "NetworkOrigin": { + "target": "com.amazonaws.s3control#NetworkOrigin", + "traits": { + "smithy.api#documentation": "

Indicates whether this access point allows access from the public internet. If\n VpcConfiguration is specified for this access point, then\n NetworkOrigin is VPC, and the access point doesn't allow access from\n the public internet. Otherwise, NetworkOrigin is Internet, and\n the access point allows access from the public internet, subject to the access point and bucket access\n policies.

\n

This will always be true for an Amazon S3 on Outposts access point

" + } + }, + "VpcConfiguration": { + "target": "com.amazonaws.s3control#VpcConfiguration", + "traits": { + "smithy.api#documentation": "

Contains the virtual private cloud (VPC) configuration for the specified access point.

\n \n

This element is empty if this access point is an Amazon S3 on Outposts access point that is used by other\n Amazon Web Services services.

\n
" + } + }, + "PublicAccessBlockConfiguration": { + "target": "com.amazonaws.s3control#PublicAccessBlockConfiguration" + }, + "CreationDate": { + "target": "com.amazonaws.s3control#CreationDate", + "traits": { + "smithy.api#documentation": "

The date and time when the specified access point was created.

" + } + }, + "Alias": { + "target": "com.amazonaws.s3control#Alias", + "traits": { + "smithy.api#documentation": "

The name or alias of the access point.

" + } + }, + "AccessPointArn": { + "target": "com.amazonaws.s3control#S3AccessPointArn", + "traits": { + "smithy.api#documentation": "

The ARN of the access point.

" + } + }, + "Endpoints": { + "target": "com.amazonaws.s3control#Endpoints", + "traits": { + "smithy.api#documentation": "

The VPC endpoint for the access point.

" + } + }, + "BucketAccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 bucket associated with this access point.

" + } + }, + "DataSourceId": { + "target": "com.amazonaws.s3control#DataSourceId", + "traits": { + "smithy.api#documentation": "

The unique identifier for the data source of the access point.

" + } + }, + "DataSourceType": { + "target": "com.amazonaws.s3control#DataSourceType", + "traits": { + "smithy.api#documentation": "

The type of the data source that the access point is attached to.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetAccessPointScope": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetAccessPointScopeRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetAccessPointScopeResult" + }, + "traits": { + "smithy.api#documentation": "

Returns the access point scope for a directory bucket.

\n

To use this operation, you must have the permission to perform the\n s3express:GetAccessPointScope\n action.

\n

For information about REST API errors, see REST error responses.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accesspoint/{Name}/scope", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + }, + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetAccessPointScopeRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID that owns the access point with the scope that you want to retrieve.\n

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#AccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the access point with the scope you want to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccessPointName" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetAccessPointScopeResult": { + "type": "structure", + "members": { + "Scope": { + "target": "com.amazonaws.s3control#Scope", + "traits": { + "smithy.api#documentation": "

The contents of the access point scope.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetBucket": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetBucketRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetBucketResult" + }, + "traits": { + "smithy.api#documentation": "

Gets an Amazon S3 on Outposts bucket. For more information, see Using Amazon S3 on Outposts in the\n Amazon S3 User Guide.

\n

If you are using an identity other than the root user of the Amazon Web Services account that owns the\n Outposts bucket, the calling identity must have the s3-outposts:GetBucket\n permissions on the specified Outposts bucket and belong to the Outposts bucket owner's\n account in order to use this action. Only users from Outposts bucket owner account with\n the right permissions can perform actions on an Outposts bucket.

\n

If you don't have s3-outposts:GetBucket permissions or you're not using an\n identity that belongs to the bucket owner's account, Amazon S3 returns a 403 Access\n Denied error.

\n

The following actions are related to GetBucket for Amazon S3 on Outposts:

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/bucket/{Bucket}", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetBucketLifecycleConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetBucketLifecycleConfigurationRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetBucketLifecycleConfigurationResult" + }, + "traits": { + "smithy.api#documentation": "\n

This action gets an Amazon S3 on Outposts bucket's lifecycle configuration. To get an S3\n bucket's lifecycle configuration, see GetBucketLifecycleConfiguration in the Amazon S3 API Reference.\n

\n
\n

Returns the lifecycle configuration information set on the Outposts bucket. For more\n information, see Using Amazon S3 on Outposts and for\n information about lifecycle configuration, see Object Lifecycle\n Management in Amazon S3 User Guide.

\n

To use this action, you must have permission to perform the\n s3-outposts:GetLifecycleConfiguration action. The Outposts bucket owner\n has this permission, by default. The bucket owner can grant this permission to others. For\n more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

\n GetBucketLifecycleConfiguration has the following special error:

\n
    \n
  • \n

    Error code: NoSuchLifecycleConfiguration\n

    \n
      \n
    • \n

      Description: The lifecycle configuration does not exist.

      \n
    • \n
    • \n

      HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
\n

The following actions are related to\n GetBucketLifecycleConfiguration:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/bucket/{Bucket}/lifecycleconfiguration", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetBucketLifecycleConfigurationRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetBucketLifecycleConfigurationResult": { + "type": "structure", + "members": { + "Rules": { + "target": "com.amazonaws.s3control#LifecycleRules", + "traits": { + "smithy.api#documentation": "

Container for the lifecycle rule of the Outposts bucket.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetBucketPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetBucketPolicyRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetBucketPolicyResult" + }, + "traits": { + "smithy.api#documentation": "\n

This action gets a bucket policy for an Amazon S3 on Outposts bucket. To get a policy for\n an S3 bucket, see GetBucketPolicy in the\n Amazon S3 API Reference.

\n
\n

Returns the policy of a specified Outposts bucket. For more information, see Using\n Amazon S3 on Outposts in the Amazon S3 User Guide.

\n

If you are using an identity other than the root user of the Amazon Web Services account that owns the\n bucket, the calling identity must have the GetBucketPolicy permissions on the\n specified bucket and belong to the bucket owner's account in order to use this\n action.

\n

Only users from Outposts bucket owner account with the right permissions can perform\n actions on an Outposts bucket. If you don't have s3-outposts:GetBucketPolicy\n permissions or you're not using an identity that belongs to the bucket owner's account,\n Amazon S3 returns a 403 Access Denied error.

\n \n

As a security precaution, the root user of the Amazon Web Services account that owns a bucket can\n always use this action, even if the policy explicitly denies the root user the ability\n to perform this action.

\n
\n

For more information about bucket policies, see Using Bucket Policies and User\n Policies.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to GetBucketPolicy:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/bucket/{Bucket}/policy", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetBucketPolicyRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

Specifies the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetBucketPolicyResult": { + "type": "structure", + "members": { + "Policy": { + "target": "com.amazonaws.s3control#Policy", + "traits": { + "smithy.api#documentation": "

The policy of the Outposts bucket.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetBucketReplication": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetBucketReplicationRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetBucketReplicationResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation gets an Amazon S3 on Outposts bucket's replication configuration. To get an\n S3 bucket's replication configuration, see GetBucketReplication\n in the Amazon S3 API Reference.

\n
\n

Returns the replication configuration of an S3 on Outposts bucket. For more information\n about S3 on Outposts, see Using Amazon S3 on Outposts in the\n Amazon S3 User Guide. For information about S3 replication on Outposts\n configuration, see Replicating objects for\n S3 on Outposts in the Amazon S3 User Guide.

\n \n

It can take a while to propagate PUT or DELETE requests for\n a replication configuration to all S3 on Outposts systems. Therefore, the replication\n configuration that's returned by a GET request soon after a\n PUT or DELETE request might return a more recent result\n than what's on the Outpost. If an Outpost is offline, the delay in updating the\n replication configuration on that Outpost can be significant.

\n
\n

This action requires permissions for the\n s3-outposts:GetReplicationConfiguration action. The Outposts bucket owner\n has this permission by default and can grant it to others. For more information about\n permissions, see Setting up IAM with\n S3 on Outposts and Managing access to\n S3 on Outposts bucket in the Amazon S3 User Guide.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

If you include the Filter element in a replication configuration, you must\n also include the DeleteMarkerReplication, Status, and\n Priority elements. The response also returns those elements.

\n

For information about S3 on Outposts replication failure reasons, see Replication failure reasons in the Amazon S3 User Guide.

\n

The following operations are related to GetBucketReplication:

\n ", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/bucket/{Bucket}/replication", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetBucketReplicationRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

Specifies the bucket to get the replication information for.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetBucketReplicationResult": { + "type": "structure", + "members": { + "ReplicationConfiguration": { + "target": "com.amazonaws.s3control#ReplicationConfiguration", + "traits": { + "smithy.api#documentation": "

A container for one or more replication rules. A replication configuration must have at\n least one rule and you can add up to 100 rules. The maximum size of a replication\n configuration is 128 KB.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetBucketRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

Specifies the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetBucketResult": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

The Outposts bucket requested.

" + } + }, + "PublicAccessBlockEnabled": { + "target": "com.amazonaws.s3control#PublicAccessBlockEnabled", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

" + } + }, + "CreationDate": { + "target": "com.amazonaws.s3control#CreationDate", + "traits": { + "smithy.api#documentation": "

The creation date of the Outposts bucket.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetBucketTagging": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetBucketTaggingRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetBucketTaggingResult" + }, + "traits": { + "smithy.api#documentation": "\n

This action gets an Amazon S3 on Outposts bucket's tags. To get an S3 bucket tags, see\n GetBucketTagging in the Amazon S3 API Reference.

\n
\n

Returns the tag set associated with the Outposts bucket. For more information, see\n Using\n Amazon S3 on Outposts in the Amazon S3 User Guide.

\n

To use this action, you must have permission to perform the\n GetBucketTagging action. By default, the bucket owner has this permission\n and can grant this permission to others.

\n

\n GetBucketTagging has the following special error:

\n
    \n
  • \n

    Error code: NoSuchTagSetError\n

    \n
      \n
    • \n

      Description: There is no tag set associated with the bucket.

      \n
    • \n
    \n
  • \n
\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to GetBucketTagging:

\n ", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/bucket/{Bucket}/tagging", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetBucketTaggingRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

Specifies the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetBucketTaggingResult": { + "type": "structure", + "members": { + "TagSet": { + "target": "com.amazonaws.s3control#S3TagSet", + "traits": { + "smithy.api#documentation": "

The tags set of the Outposts bucket.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetBucketVersioning": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetBucketVersioningRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetBucketVersioningResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation returns the versioning state\n for\n S3 on Outposts\n buckets\n only. To return the versioning state for an S3 bucket, see GetBucketVersioning in the Amazon S3 API Reference.

\n
\n

Returns the versioning state for an S3 on Outposts bucket. With\n S3\n Versioning,\n you can save multiple distinct copies of your\n objects\n and recover from unintended user actions and application failures.

\n

If you've never set versioning on your bucket, it has no versioning state. In that case,\n the GetBucketVersioning request does not return a versioning state\n value.

\n

For more information about versioning, see Versioning in the Amazon S3\n User Guide.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following operations are related to GetBucketVersioning for\n S3 on Outposts.

\n ", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/bucket/{Bucket}/versioning", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetBucketVersioningRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 on Outposts bucket.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

The S3 on Outposts bucket to return the versioning state for.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetBucketVersioningResult": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3control#BucketVersioningStatus", + "traits": { + "smithy.api#documentation": "

The versioning state of the S3 on Outposts bucket.

" + } + }, + "MFADelete": { + "target": "com.amazonaws.s3control#MFADeleteStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether MFA delete is enabled in the bucket versioning configuration. This\n element is returned only if the bucket has been configured with MFA delete. If MFA delete\n has never been configured for the bucket, this element is not returned.

", + "smithy.api#xmlName": "MfaDelete" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetDataAccess": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetDataAccessRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetDataAccessResult" + }, + "traits": { + "smithy.api#documentation": "

Returns a temporary access credential from S3 Access Grants to the grantee or client application.\n The temporary credential is an Amazon Web Services STS token that grants them access to the S3 data.

\n
\n
Permissions
\n
\n

You must have the s3:GetDataAccess permission to use this\n operation.

\n
\n
Additional Permissions
\n
\n

The IAM role that S3 Access Grants assumes must have the following permissions\n specified in the trust policy when registering the location:\n sts:AssumeRole, for directory users or groups\n sts:SetContext, and for IAM users or roles\n sts:SetSourceIdentity.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accessgrantsinstance/dataaccess", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetDataAccessRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Target": { + "target": "com.amazonaws.s3control#S3Prefix", + "traits": { + "smithy.api#documentation": "

The S3 URI path of the data to which you are requesting temporary access credentials. If\n the requesting account has an access grant for this data, S3 Access Grants vends temporary access\n credentials in the response.

", + "smithy.api#httpQuery": "target", + "smithy.api#required": {} + } + }, + "Permission": { + "target": "com.amazonaws.s3control#Permission", + "traits": { + "smithy.api#documentation": "

The type of permission granted to your S3 data, which can be set to one of the following\n values:

\n
    \n
  • \n

    \n READ – Grant read-only access to the S3 data.

    \n
  • \n
  • \n

    \n WRITE – Grant write-only access to the S3 data.

    \n
  • \n
  • \n

    \n READWRITE – Grant both read and write access to the S3 data.

    \n
  • \n
", + "smithy.api#httpQuery": "permission", + "smithy.api#required": {} + } + }, + "DurationSeconds": { + "target": "com.amazonaws.s3control#DurationSeconds", + "traits": { + "smithy.api#documentation": "

The session duration, in seconds, of the temporary access credential that S3 Access Grants vends\n to the grantee or client application. The default value is 1 hour, but the grantee can\n specify a range from 900 seconds (15 minutes) up to 43200 seconds (12 hours). If the\n grantee requests a value higher than this maximum, the operation fails.

", + "smithy.api#httpQuery": "durationSeconds" + } + }, + "Privilege": { + "target": "com.amazonaws.s3control#Privilege", + "traits": { + "smithy.api#documentation": "

The scope of the temporary access credential that S3 Access Grants vends to the grantee or client\n application.

\n
    \n
  • \n

    \n Default – The scope of the returned temporary access token is the scope\n of the grant that is closest to the target scope.

    \n
  • \n
  • \n

    \n Minimal – The scope of the returned temporary access token is the same\n as the requested target scope as long as the requested scope is the same as or a\n subset of the grant scope.

    \n
  • \n
", + "smithy.api#httpQuery": "privilege" + } + }, + "TargetType": { + "target": "com.amazonaws.s3control#S3PrefixType", + "traits": { + "smithy.api#documentation": "

The type of Target. The only possible value is Object. Pass\n this value if the target data that you would like to access is a path to an object. Do not\n pass this value if the target data is a bucket or a bucket and a prefix.

", + "smithy.api#httpQuery": "targetType" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetDataAccessResult": { + "type": "structure", + "members": { + "Credentials": { + "target": "com.amazonaws.s3control#Credentials", + "traits": { + "smithy.api#documentation": "

The temporary credential token that S3 Access Grants vends.

" + } + }, + "MatchedGrantTarget": { + "target": "com.amazonaws.s3control#S3Prefix", + "traits": { + "smithy.api#documentation": "

The S3 URI path of the data to which you are being granted temporary access credentials.\n

" + } + }, + "Grantee": { + "target": "com.amazonaws.s3control#Grantee", + "traits": { + "smithy.api#documentation": "

The user, group, or role that was granted access to the S3 location scope. For directory\n identities, this API also returns the grants of the IAM role used for the identity-aware\n request. For more information on identity-aware sessions, see Granting permissions to use identity-aware console sessions.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetJobTagging": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetJobTaggingRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetJobTaggingResult" + }, + "errors": [ + { + "target": "com.amazonaws.s3control#InternalServiceException" + }, + { + "target": "com.amazonaws.s3control#NotFoundException" + }, + { + "target": "com.amazonaws.s3control#TooManyRequestsException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns the tags on an S3 Batch Operations job.

\n
\n
Permissions
\n
\n

To use the GetJobTagging operation, you must have permission to\n perform the s3:GetJobTagging action. For more information, see Controlling access and labeling jobs using tags in the\n Amazon S3 User Guide.

\n
\n
\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/jobs/{JobId}/tagging", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetJobTaggingRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "JobId": { + "target": "com.amazonaws.s3control#JobId", + "traits": { + "smithy.api#documentation": "

The ID for the S3 Batch Operations job whose tags you want to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetJobTaggingResult": { + "type": "structure", + "members": { + "Tags": { + "target": "com.amazonaws.s3control#S3TagSet", + "traits": { + "smithy.api#documentation": "

The set of tags associated with the S3 Batch Operations job.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetMultiRegionAccessPoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetMultiRegionAccessPointRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetMultiRegionAccessPointResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns configuration information about the specified Multi-Region Access Point.

\n

This action will always be routed to the US West (Oregon) Region. For more information\n about the restrictions around working with Multi-Region Access Points, see Multi-Region Access Point\n restrictions and limitations in the Amazon S3 User Guide.

\n

The following actions are related to GetMultiRegionAccessPoint:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/mrap/instances/{Name+}", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetMultiRegionAccessPointPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns the access control policy of the specified Multi-Region Access Point.

\n

This action will always be routed to the US West (Oregon) Region. For more information\n about the restrictions around working with Multi-Region Access Points, see Multi-Region Access Point\n restrictions and limitations in the Amazon S3 User Guide.

\n

The following actions are related to\n GetMultiRegionAccessPointPolicy:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/mrap/instances/{Name+}/policy", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointName", + "traits": { + "smithy.api#documentation": "

Specifies the Multi-Region Access Point. The name of the Multi-Region Access Point is different from the alias. For more\n information about the distinction between the name and the alias of an Multi-Region Access Point, see Rules for naming Amazon S3 Multi-Region Access Points in the\n Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyResult": { + "type": "structure", + "members": { + "Policy": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointPolicyDocument", + "traits": { + "smithy.api#documentation": "

The policy associated with the specified Multi-Region Access Point.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyStatus": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyStatusRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyStatusResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Indicates whether the specified Multi-Region Access Point has an access control policy that allows public\n access.

\n

This action will always be routed to the US West (Oregon) Region. For more information\n about the restrictions around working with Multi-Region Access Points, see Multi-Region Access Point\n restrictions and limitations in the Amazon S3 User Guide.

\n

The following actions are related to\n GetMultiRegionAccessPointPolicyStatus:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/mrap/instances/{Name+}/policystatus", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyStatusRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointName", + "traits": { + "smithy.api#documentation": "

Specifies the Multi-Region Access Point. The name of the Multi-Region Access Point is different from the alias. For more\n information about the distinction between the name and the alias of an Multi-Region Access Point, see Rules for naming Amazon S3 Multi-Region Access Points in the\n Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetMultiRegionAccessPointPolicyStatusResult": { + "type": "structure", + "members": { + "Established": { + "target": "com.amazonaws.s3control#PolicyStatus" + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetMultiRegionAccessPointRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the Multi-Region Access Point whose configuration information you want to receive. The name of\n the Multi-Region Access Point is different from the alias. For more information about the distinction between\n the name and the alias of an Multi-Region Access Point, see Rules for naming Amazon S3 Multi-Region Access Points in the\n Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetMultiRegionAccessPointResult": { + "type": "structure", + "members": { + "AccessPoint": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointReport", + "traits": { + "smithy.api#documentation": "

A container element containing the details of the requested Multi-Region Access Point.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetMultiRegionAccessPointRoutes": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetMultiRegionAccessPointRoutesRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetMultiRegionAccessPointRoutesResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns the routing configuration for a Multi-Region Access Point, indicating which Regions are active or\n passive.

\n

To obtain routing control changes and failover requests, use the Amazon S3 failover control\n infrastructure endpoints in these five Amazon Web Services Regions:

\n
    \n
  • \n

    \n us-east-1\n

    \n
  • \n
  • \n

    \n us-west-2\n

    \n
  • \n
  • \n

    \n ap-southeast-2\n

    \n
  • \n
  • \n

    \n ap-northeast-1\n

    \n
  • \n
  • \n

    \n eu-west-1\n

    \n
  • \n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/mrap/instances/{Mrap+}/routes", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetMultiRegionAccessPointRoutesRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Mrap": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointId", + "traits": { + "smithy.api#documentation": "

The Multi-Region Access Point ARN.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetMultiRegionAccessPointRoutesResult": { + "type": "structure", + "members": { + "Mrap": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointId", + "traits": { + "smithy.api#documentation": "

The Multi-Region Access Point ARN.

" + } + }, + "Routes": { + "target": "com.amazonaws.s3control#RouteList", + "traits": { + "smithy.api#documentation": "

The different routes that make up the route configuration. Active routes return a value\n of 100, and passive routes return a value of 0.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetPublicAccessBlock": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetPublicAccessBlockRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetPublicAccessBlockOutput" + }, + "errors": [ + { + "target": "com.amazonaws.s3control#NoSuchPublicAccessBlockConfiguration" + } + ], + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Retrieves the PublicAccessBlock configuration for an Amazon Web Services account. For\n more information, see Using Amazon S3 block\n public access.

\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/configuration/publicAccessBlock", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetPublicAccessBlockOutput": { + "type": "structure", + "members": { + "PublicAccessBlockConfiguration": { + "target": "com.amazonaws.s3control#PublicAccessBlockConfiguration", + "traits": { + "smithy.api#documentation": "

The PublicAccessBlock configuration currently in effect for this\n Amazon Web Services account.

", + "smithy.api#httpPayload": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetPublicAccessBlockRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID for the Amazon Web Services account whose PublicAccessBlock configuration\n you want to retrieve.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetStorageLensConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetStorageLensConfigurationRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetStorageLensConfigurationResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Gets the Amazon S3 Storage Lens configuration. For more information, see Assessing your storage\n activity and usage with Amazon S3 Storage Lens in the\n Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

\n \n

To use this action, you must have permission to perform the\n s3:GetStorageLensConfiguration action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the\n Amazon S3 User Guide.

\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/storagelens/{ConfigId}", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetStorageLensConfigurationRequest": { + "type": "structure", + "members": { + "ConfigId": { + "target": "com.amazonaws.s3control#ConfigId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon S3 Storage Lens configuration.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the requester.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetStorageLensConfigurationResult": { + "type": "structure", + "members": { + "StorageLensConfiguration": { + "target": "com.amazonaws.s3control#StorageLensConfiguration", + "traits": { + "smithy.api#documentation": "

The S3 Storage Lens configuration requested.

", + "smithy.api#httpPayload": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetStorageLensConfigurationTagging": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetStorageLensConfigurationTaggingRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetStorageLensConfigurationTaggingResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Gets the tags of Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see\n Assessing your\n storage activity and usage with Amazon S3 Storage Lens in the\n Amazon S3 User Guide.

\n \n

To use this action, you must have permission to perform the\n s3:GetStorageLensConfigurationTagging action. For more information, see\n Setting permissions to\n use Amazon S3 Storage Lens in the Amazon S3 User Guide.

\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/storagelens/{ConfigId}/tagging", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetStorageLensConfigurationTaggingRequest": { + "type": "structure", + "members": { + "ConfigId": { + "target": "com.amazonaws.s3control#ConfigId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon S3 Storage Lens configuration.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the requester.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetStorageLensConfigurationTaggingResult": { + "type": "structure", + "members": { + "Tags": { + "target": "com.amazonaws.s3control#StorageLensTags", + "traits": { + "smithy.api#documentation": "

The tags of S3 Storage Lens configuration requested.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GetStorageLensGroup": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#GetStorageLensGroupRequest" + }, + "output": { + "target": "com.amazonaws.s3control#GetStorageLensGroupResult" + }, + "traits": { + "smithy.api#documentation": "

\nRetrieves the Storage Lens group configuration details.

\n

To use this operation, you must have the permission to perform the\n s3:GetStorageLensGroup action. For more information about the required Storage Lens\n Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

\n

For information about Storage Lens groups errors, see List of Amazon S3 Storage\n Lens error codes.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/storagelensgroup/{Name}", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#GetStorageLensGroupRequest": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.s3control#StorageLensGroupName", + "traits": { + "smithy.api#documentation": "

\nThe name of the Storage Lens group that you're trying to retrieve the configuration details for.\n

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

\nThe Amazon Web Services account ID associated with the Storage Lens group that you're trying to retrieve the details for.\n

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#GetStorageLensGroupResult": { + "type": "structure", + "members": { + "StorageLensGroup": { + "target": "com.amazonaws.s3control#StorageLensGroup", + "traits": { + "smithy.api#documentation": "

\nThe name of the Storage Lens group that you're trying to retrieve the configuration details for.\n

", + "smithy.api#httpPayload": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#GrantFullControl": { + "type": "string" + }, + "com.amazonaws.s3control#GrantRead": { + "type": "string" + }, + "com.amazonaws.s3control#GrantReadACP": { + "type": "string" + }, + "com.amazonaws.s3control#GrantWrite": { + "type": "string" + }, + "com.amazonaws.s3control#GrantWriteACP": { + "type": "string" + }, + "com.amazonaws.s3control#Grantee": { + "type": "structure", + "members": { + "GranteeType": { + "target": "com.amazonaws.s3control#GranteeType", + "traits": { + "smithy.api#documentation": "

The type of the grantee to which access has been granted. It can be one of the following\n values:

\n
    \n
  • \n

    \n IAM - An IAM user or role.

    \n
  • \n
  • \n

    \n DIRECTORY_USER - Your corporate directory user. You can use\n this option if you have added your corporate identity directory to IAM Identity\n Center and associated the IAM Identity Center instance with your S3 Access Grants\n instance.

    \n
  • \n
  • \n

    \n DIRECTORY_GROUP - Your corporate directory group. You can use\n this option if you have added your corporate identity directory to IAM Identity\n Center and associated the IAM Identity Center instance with your S3 Access Grants\n instance.

    \n
  • \n
" + } + }, + "GranteeIdentifier": { + "target": "com.amazonaws.s3control#GranteeIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Grantee. If the grantee type is\n IAM, the identifier is the IAM Amazon Resource Name (ARN) of the user\n or role. If the grantee type is a directory user or group, the identifier is 128-bit\n universally unique identifier (UUID) in the format\n a1b2c3d4-5678-90ab-cdef-EXAMPLE11111. You can obtain this UUID from your\n Amazon Web Services IAM Identity Center instance.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The user, group, or role to which you are granting access. You can grant access to an\n IAM user or role. If you have added your corporate directory to Amazon Web Services IAM Identity\n Center and associated your Identity Center instance with your S3 Access Grants instance, the grantee\n can also be a corporate directory user or group.

" + } + }, + "com.amazonaws.s3control#GranteeIdentifier": { + "type": "string" + }, + "com.amazonaws.s3control#GranteeType": { + "type": "enum", + "members": { + "DIRECTORY_USER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DIRECTORY_USER" + } + }, + "DIRECTORY_GROUP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DIRECTORY_GROUP" + } + }, + "IAM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IAM" + } + } + } + }, + "com.amazonaws.s3control#IAMRoleArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^arn:[^:]+:iam::\\d{12}:role/" + } + }, + "com.amazonaws.s3control#ID": { + "type": "string" + }, + "com.amazonaws.s3control#IdempotencyException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.s3control#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.s3control#IdentityCenterApplicationArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 10, + "max": 1224 + }, + "smithy.api#pattern": "^arn:[^:]+:sso::\\d{12}:application/.*$" + } + }, + "com.amazonaws.s3control#IdentityCenterArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 10, + "max": 1224 + }, + "smithy.api#pattern": "^arn:[^:]+:sso::(\\d{12}){0,1}:instance/.*$" + } + }, + "com.amazonaws.s3control#Include": { + "type": "structure", + "members": { + "Buckets": { + "target": "com.amazonaws.s3control#Buckets", + "traits": { + "smithy.api#documentation": "

A container for the S3 Storage Lens bucket includes.

" + } + }, + "Regions": { + "target": "com.amazonaws.s3control#Regions", + "traits": { + "smithy.api#documentation": "

A container for the S3 Storage Lens Region includes.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for what Amazon S3 Storage Lens configuration includes.

" + } + }, + "com.amazonaws.s3control#InternalServiceException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.s3control#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

", + "smithy.api#error": "server" + } + }, + "com.amazonaws.s3control#InvalidNextTokenException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.s3control#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.s3control#InvalidRequestException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.s3control#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.s3control#IsEnabled": { + "type": "boolean", + "traits": { + "smithy.api#default": false + } + }, + "com.amazonaws.s3control#IsPublic": { + "type": "boolean", + "traits": { + "smithy.api#default": false + } + }, + "com.amazonaws.s3control#JobArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + }, + "smithy.api#pattern": "^arn:[^:]+:s3:[a-zA-Z0-9\\-]+:\\d{12}:job\\/" + } + }, + "com.amazonaws.s3control#JobCreationTime": { + "type": "timestamp" + }, + "com.amazonaws.s3control#JobDescriptor": { + "type": "structure", + "members": { + "JobId": { + "target": "com.amazonaws.s3control#JobId", + "traits": { + "smithy.api#documentation": "

The ID for the specified job.

" + } + }, + "ConfirmationRequired": { + "target": "com.amazonaws.s3control#ConfirmationRequired", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Indicates whether confirmation is required before Amazon S3 begins running the specified job.\n Confirmation is required only for jobs created through the Amazon S3 console.

" + } + }, + "Description": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength256String", + "traits": { + "smithy.api#documentation": "

The description for this job, if one was provided in this job's Create Job\n request.

" + } + }, + "JobArn": { + "target": "com.amazonaws.s3control#JobArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) for this job.

" + } + }, + "Status": { + "target": "com.amazonaws.s3control#JobStatus", + "traits": { + "smithy.api#documentation": "

The current status of the specified job.

" + } + }, + "Manifest": { + "target": "com.amazonaws.s3control#JobManifest", + "traits": { + "smithy.api#documentation": "

The configuration information for the specified job's manifest object.

" + } + }, + "Operation": { + "target": "com.amazonaws.s3control#JobOperation", + "traits": { + "smithy.api#documentation": "

The operation that the specified job is configured to run on the objects listed in the\n manifest.

" + } + }, + "Priority": { + "target": "com.amazonaws.s3control#JobPriority", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The priority of the specified job.

" + } + }, + "ProgressSummary": { + "target": "com.amazonaws.s3control#JobProgressSummary", + "traits": { + "smithy.api#documentation": "

Describes the total number of tasks that the specified job has run, the number of tasks\n that succeeded, and the number of tasks that failed.

" + } + }, + "StatusUpdateReason": { + "target": "com.amazonaws.s3control#JobStatusUpdateReason", + "traits": { + "smithy.api#documentation": "

The reason for updating the job.

" + } + }, + "FailureReasons": { + "target": "com.amazonaws.s3control#JobFailureList", + "traits": { + "smithy.api#documentation": "

If the specified job failed, this field contains information describing the\n failure.

" + } + }, + "Report": { + "target": "com.amazonaws.s3control#JobReport", + "traits": { + "smithy.api#documentation": "

Contains the configuration information for the job-completion report if you requested\n one in the Create Job request.

" + } + }, + "CreationTime": { + "target": "com.amazonaws.s3control#JobCreationTime", + "traits": { + "smithy.api#documentation": "

A timestamp indicating when this job was created.

" + } + }, + "TerminationDate": { + "target": "com.amazonaws.s3control#JobTerminationDate", + "traits": { + "smithy.api#documentation": "

A timestamp indicating when this job terminated. A job's termination date is the date\n and time when it succeeded, failed, or was canceled.

" + } + }, + "RoleArn": { + "target": "com.amazonaws.s3control#IAMRoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the Identity and Access Management (IAM) role assigned to run the tasks\n for this job.

" + } + }, + "SuspendedDate": { + "target": "com.amazonaws.s3control#SuspendedDate", + "traits": { + "smithy.api#documentation": "

The timestamp when this job was suspended, if it has been suspended.

" + } + }, + "SuspendedCause": { + "target": "com.amazonaws.s3control#SuspendedCause", + "traits": { + "smithy.api#documentation": "

The reason why the specified job was suspended. A job is only suspended if you create it\n through the Amazon S3 console. When you create the job, it enters the Suspended\n state to await confirmation before running. After you confirm the job, it automatically\n exits the Suspended state.

" + } + }, + "ManifestGenerator": { + "target": "com.amazonaws.s3control#JobManifestGenerator", + "traits": { + "smithy.api#documentation": "

The manifest generator that was used to generate a job manifest for this job.

" + } + }, + "GeneratedManifestDescriptor": { + "target": "com.amazonaws.s3control#S3GeneratedManifestDescriptor", + "traits": { + "smithy.api#documentation": "

The attribute of the JobDescriptor containing details about the job's generated\n manifest.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container element for the job configuration and status information returned by a\n Describe Job request.

" + } + }, + "com.amazonaws.s3control#JobFailure": { + "type": "structure", + "members": { + "FailureCode": { + "target": "com.amazonaws.s3control#JobFailureCode", + "traits": { + "smithy.api#documentation": "

The failure code, if any, for the specified job.

" + } + }, + "FailureReason": { + "target": "com.amazonaws.s3control#JobFailureReason", + "traits": { + "smithy.api#documentation": "

The failure reason, if any, for the specified job.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

If this job failed, this element indicates why the job failed.

" + } + }, + "com.amazonaws.s3control#JobFailureCode": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + } + } + }, + "com.amazonaws.s3control#JobFailureList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#JobFailure" + } + }, + "com.amazonaws.s3control#JobFailureReason": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + } + } + }, + "com.amazonaws.s3control#JobId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 5, + "max": 36 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\-\\_]+$" + } + }, + "com.amazonaws.s3control#JobListDescriptor": { + "type": "structure", + "members": { + "JobId": { + "target": "com.amazonaws.s3control#JobId", + "traits": { + "smithy.api#documentation": "

The ID for the specified job.

" + } + }, + "Description": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength256String", + "traits": { + "smithy.api#documentation": "

The user-specified description that was included in the specified job's Create\n Job request.

" + } + }, + "Operation": { + "target": "com.amazonaws.s3control#OperationName", + "traits": { + "smithy.api#documentation": "

The operation that the specified job is configured to run on every object listed in the\n manifest.

" + } + }, + "Priority": { + "target": "com.amazonaws.s3control#JobPriority", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The current priority for the specified job.

" + } + }, + "Status": { + "target": "com.amazonaws.s3control#JobStatus", + "traits": { + "smithy.api#documentation": "

The specified job's current status.

" + } + }, + "CreationTime": { + "target": "com.amazonaws.s3control#JobCreationTime", + "traits": { + "smithy.api#documentation": "

A timestamp indicating when the specified job was created.

" + } + }, + "TerminationDate": { + "target": "com.amazonaws.s3control#JobTerminationDate", + "traits": { + "smithy.api#documentation": "

A timestamp indicating when the specified job terminated. A job's termination date is\n the date and time when it succeeded, failed, or was canceled.

" + } + }, + "ProgressSummary": { + "target": "com.amazonaws.s3control#JobProgressSummary", + "traits": { + "smithy.api#documentation": "

Describes the total number of tasks that the specified job has run, the number of tasks\n that succeeded, and the number of tasks that failed.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the configuration and status information for a single job retrieved as part of\n a job list.

" + } + }, + "com.amazonaws.s3control#JobListDescriptorList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#JobListDescriptor" + } + }, + "com.amazonaws.s3control#JobManifest": { + "type": "structure", + "members": { + "Spec": { + "target": "com.amazonaws.s3control#JobManifestSpec", + "traits": { + "smithy.api#documentation": "

Describes the format of the specified job's manifest. If the manifest is in CSV format,\n also describes the columns contained within the manifest.

", + "smithy.api#required": {} + } + }, + "Location": { + "target": "com.amazonaws.s3control#JobManifestLocation", + "traits": { + "smithy.api#documentation": "

Contains the information required to locate the specified job's manifest. Manifests\n can't be imported from directory buckets. For more information, see Directory buckets.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the configuration information for a job's manifest.

" + } + }, + "com.amazonaws.s3control#JobManifestFieldList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#JobManifestFieldName" + } + }, + "com.amazonaws.s3control#JobManifestFieldName": { + "type": "enum", + "members": { + "Ignore": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Ignore" + } + }, + "Bucket": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Bucket" + } + }, + "Key": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Key" + } + }, + "VersionId": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VersionId" + } + } + } + }, + "com.amazonaws.s3control#JobManifestFormat": { + "type": "enum", + "members": { + "S3BatchOperations_CSV_20180820": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "S3BatchOperations_CSV_20180820" + } + }, + "S3InventoryReport_CSV_20161130": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "S3InventoryReport_CSV_20161130" + } + } + } + }, + "com.amazonaws.s3control#JobManifestGenerator": { + "type": "union", + "members": { + "S3JobManifestGenerator": { + "target": "com.amazonaws.s3control#S3JobManifestGenerator", + "traits": { + "smithy.api#documentation": "

The S3 job ManifestGenerator's configuration details.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Configures the type of the job's ManifestGenerator.

" + } + }, + "com.amazonaws.s3control#JobManifestGeneratorFilter": { + "type": "structure", + "members": { + "EligibleForReplication": { + "target": "com.amazonaws.s3control#Boolean", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Include objects in the generated manifest only if they are eligible for replication\n according to the Replication configuration on the source bucket.

" + } + }, + "CreatedAfter": { + "target": "com.amazonaws.s3control#ObjectCreationTime", + "traits": { + "smithy.api#documentation": "

If provided, the generated manifest includes only source bucket objects that were\n created after this time.

" + } + }, + "CreatedBefore": { + "target": "com.amazonaws.s3control#ObjectCreationTime", + "traits": { + "smithy.api#documentation": "

If provided, the generated manifest includes only source bucket objects that were\n created before this time.

" + } + }, + "ObjectReplicationStatuses": { + "target": "com.amazonaws.s3control#ReplicationStatusFilterList", + "traits": { + "smithy.api#documentation": "

If provided, the generated manifest includes only source bucket objects that have one of\n the specified Replication statuses.

" + } + }, + "KeyNameConstraint": { + "target": "com.amazonaws.s3control#KeyNameConstraint", + "traits": { + "smithy.api#documentation": "

If provided, the generated manifest includes only source bucket objects whose object\n keys match the string constraints specified for MatchAnyPrefix,\n MatchAnySuffix, and MatchAnySubstring.

" + } + }, + "ObjectSizeGreaterThanBytes": { + "target": "com.amazonaws.s3control#ObjectSizeGreaterThanBytes", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

If provided, the generated manifest includes only source bucket objects whose file size\n is greater than the specified number of bytes.

" + } + }, + "ObjectSizeLessThanBytes": { + "target": "com.amazonaws.s3control#ObjectSizeLessThanBytes", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

If provided, the generated manifest includes only source bucket objects whose file size\n is less than the specified number of bytes.

" + } + }, + "MatchAnyStorageClass": { + "target": "com.amazonaws.s3control#StorageClassList", + "traits": { + "smithy.api#documentation": "

If provided, the generated manifest includes only source bucket objects that are stored\n with the specified storage class.

" + } + }, + "MatchAnyObjectEncryption": { + "target": "com.amazonaws.s3control#ObjectEncryptionFilterList", + "traits": { + "smithy.api#documentation": "

If provided, the generated object list includes \n only source bucket objects with the indicated server-side encryption type (SSE-S3, SSE-KMS, DSSE-KMS, SSE-C, or NOT-SSE). \n If you select SSE-KMS or DSSE-KMS, you can optionally further filter your results by specifying a specific KMS Key ARN. \n If you select SSE-KMS, you can also optionally further filter your results by Bucket Key enabled status.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The filter used to describe a set of objects for the job's manifest.

" + } + }, + "com.amazonaws.s3control#JobManifestLocation": { + "type": "structure", + "members": { + "ObjectArn": { + "target": "com.amazonaws.s3control#S3KeyArnString", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) for a manifest object.

\n \n

When you're using XML requests, you must \nreplace special characters (such as carriage returns) in object keys with their equivalent XML entity codes. \nFor more information, see \n XML-related object key constraints in the Amazon S3 User Guide.

\n
", + "smithy.api#required": {} + } + }, + "ObjectVersionId": { + "target": "com.amazonaws.s3control#S3ObjectVersionId", + "traits": { + "smithy.api#documentation": "

The optional version ID to identify a specific version of the manifest object.

" + } + }, + "ETag": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

The ETag for the specified manifest object.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the information required to locate a manifest object. Manifests can't be\n imported from directory buckets. For more information, see Directory\n buckets.

" + } + }, + "com.amazonaws.s3control#JobManifestSpec": { + "type": "structure", + "members": { + "Format": { + "target": "com.amazonaws.s3control#JobManifestFormat", + "traits": { + "smithy.api#documentation": "

Indicates which of the available formats the specified manifest uses.

", + "smithy.api#required": {} + } + }, + "Fields": { + "target": "com.amazonaws.s3control#JobManifestFieldList", + "traits": { + "smithy.api#documentation": "

If the specified manifest object is in the S3BatchOperations_CSV_20180820\n format, this element describes which columns contain the required data.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the format of a manifest. If the manifest is in CSV format, also describes the\n columns contained within the manifest.

" + } + }, + "com.amazonaws.s3control#JobNumberOfTasksFailed": { + "type": "long", + "traits": { + "smithy.api#default": 0, + "smithy.api#range": { + "min": 0 + } + } + }, + "com.amazonaws.s3control#JobNumberOfTasksSucceeded": { + "type": "long", + "traits": { + "smithy.api#default": 0, + "smithy.api#range": { + "min": 0 + } + } + }, + "com.amazonaws.s3control#JobOperation": { + "type": "structure", + "members": { + "LambdaInvoke": { + "target": "com.amazonaws.s3control#LambdaInvokeOperation", + "traits": { + "smithy.api#documentation": "

Directs the specified job to invoke an Lambda function on every object in the\n manifest.

" + } + }, + "S3PutObjectCopy": { + "target": "com.amazonaws.s3control#S3CopyObjectOperation", + "traits": { + "smithy.api#documentation": "

Directs the specified job to run a PUT Copy object call on every object in the\n manifest.

" + } + }, + "S3PutObjectAcl": { + "target": "com.amazonaws.s3control#S3SetObjectAclOperation", + "traits": { + "smithy.api#documentation": "

Directs the specified job to run a PutObjectAcl call on every object in the\n manifest.

\n \n

This functionality is not supported by directory buckets.

\n
" + } + }, + "S3PutObjectTagging": { + "target": "com.amazonaws.s3control#S3SetObjectTaggingOperation", + "traits": { + "smithy.api#documentation": "

Directs the specified job to run a PUT Object tagging call on every object in the\n manifest.

\n \n

This functionality is not supported by directory buckets.

\n
" + } + }, + "S3DeleteObjectTagging": { + "target": "com.amazonaws.s3control#S3DeleteObjectTaggingOperation", + "traits": { + "smithy.api#documentation": "

Directs the specified job to execute a DELETE Object tagging call on every object in the\n manifest.

\n \n

This functionality is not supported by directory buckets.

\n
" + } + }, + "S3InitiateRestoreObject": { + "target": "com.amazonaws.s3control#S3InitiateRestoreObjectOperation", + "traits": { + "smithy.api#documentation": "

Directs the specified job to initiate restore requests for every archived object in the\n manifest.

\n \n

This functionality is not supported by directory buckets.

\n
" + } + }, + "S3PutObjectLegalHold": { + "target": "com.amazonaws.s3control#S3SetObjectLegalHoldOperation" + }, + "S3PutObjectRetention": { + "target": "com.amazonaws.s3control#S3SetObjectRetentionOperation" + }, + "S3ReplicateObject": { + "target": "com.amazonaws.s3control#S3ReplicateObjectOperation", + "traits": { + "smithy.api#documentation": "

Directs the specified job to invoke ReplicateObject on every object in the\n job's manifest.

\n \n

This functionality is not supported by directory buckets.

\n
" + } + }, + "S3ComputeObjectChecksum": { + "target": "com.amazonaws.s3control#S3ComputeObjectChecksumOperation", + "traits": { + "smithy.api#documentation": "

Directs the specified job to compute checksum values for every object in the\n manifest.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The operation that you want this job to perform on every object listed in the manifest.\n For more information about the available operations, see Operations in the\n Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3control#JobPriority": { + "type": "integer", + "traits": { + "smithy.api#default": 0, + "smithy.api#range": { + "min": 0, + "max": 2147483647 + } + } + }, + "com.amazonaws.s3control#JobProgressSummary": { + "type": "structure", + "members": { + "TotalNumberOfTasks": { + "target": "com.amazonaws.s3control#JobTotalNumberOfTasks", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

" + } + }, + "NumberOfTasksSucceeded": { + "target": "com.amazonaws.s3control#JobNumberOfTasksSucceeded", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

" + } + }, + "NumberOfTasksFailed": { + "target": "com.amazonaws.s3control#JobNumberOfTasksFailed", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

" + } + }, + "Timers": { + "target": "com.amazonaws.s3control#JobTimers", + "traits": { + "smithy.api#documentation": "

The JobTimers attribute of a job's progress summary.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the total number of tasks that the specified job has started, the number of\n tasks that succeeded, and the number of tasks that failed.

" + } + }, + "com.amazonaws.s3control#JobReport": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3control#S3BucketArnString", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the bucket where specified job-completion report will\n be stored.

\n \n

\n Directory buckets - Directory buckets\n aren't supported as a location for Batch Operations to store job completion reports.

\n
" + } + }, + "Format": { + "target": "com.amazonaws.s3control#JobReportFormat", + "traits": { + "smithy.api#documentation": "

The format of the specified job-completion report.

" + } + }, + "Enabled": { + "target": "com.amazonaws.s3control#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Indicates whether the specified job will generate a job-completion report.

", + "smithy.api#required": {} + } + }, + "Prefix": { + "target": "com.amazonaws.s3control#ReportPrefixString", + "traits": { + "smithy.api#documentation": "

An optional prefix to describe where in the specified bucket the job-completion report\n will be stored. Amazon S3 stores the job-completion report at\n /job-/report.json.

" + } + }, + "ReportScope": { + "target": "com.amazonaws.s3control#JobReportScope", + "traits": { + "smithy.api#documentation": "

Indicates whether the job-completion report will include details of all tasks or only\n failed tasks.

" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

Lists the Amazon Web Services account ID that owns the target bucket, where the completion report is received.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the configuration parameters for a job-completion report.

" + } + }, + "com.amazonaws.s3control#JobReportFormat": { + "type": "enum", + "members": { + "Report_CSV_20180820": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Report_CSV_20180820" + } + } + } + }, + "com.amazonaws.s3control#JobReportScope": { + "type": "enum", + "members": { + "AllTasks": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AllTasks" + } + }, + "FailedTasksOnly": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FailedTasksOnly" + } + } + } + }, + "com.amazonaws.s3control#JobStatus": { + "type": "enum", + "members": { + "Active": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Active" + } + }, + "Cancelled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Cancelled" + } + }, + "Cancelling": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Cancelling" + } + }, + "Complete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Complete" + } + }, + "Completing": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Completing" + } + }, + "Failed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Failed" + } + }, + "Failing": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Failing" + } + }, + "New": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "New" + } + }, + "Paused": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Paused" + } + }, + "Pausing": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Pausing" + } + }, + "Preparing": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Preparing" + } + }, + "Ready": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Ready" + } + }, + "Suspended": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Suspended" + } + } + } + }, + "com.amazonaws.s3control#JobStatusException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.s3control#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.s3control#JobStatusList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#JobStatus" + } + }, + "com.amazonaws.s3control#JobStatusUpdateReason": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + } + } + }, + "com.amazonaws.s3control#JobTerminationDate": { + "type": "timestamp" + }, + "com.amazonaws.s3control#JobTimeInStateSeconds": { + "type": "long", + "traits": { + "smithy.api#default": 0, + "smithy.api#range": { + "min": 0 + } + } + }, + "com.amazonaws.s3control#JobTimers": { + "type": "structure", + "members": { + "ElapsedTimeInActiveSeconds": { + "target": "com.amazonaws.s3control#JobTimeInStateSeconds", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Indicates the elapsed time in seconds the job has been in the Active job state.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides timing details for the job.

" + } + }, + "com.amazonaws.s3control#JobTotalNumberOfTasks": { + "type": "long", + "traits": { + "smithy.api#default": 0, + "smithy.api#range": { + "min": 0 + } + } + }, + "com.amazonaws.s3control#KeyNameConstraint": { + "type": "structure", + "members": { + "MatchAnyPrefix": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024StringList", + "traits": { + "smithy.api#documentation": "

If provided, the generated manifest includes objects where the specified string appears\n at the start of the object key string. Each KeyNameConstraint filter accepts an array of\n strings with a length of 1 string.

" + } + }, + "MatchAnySuffix": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024StringList", + "traits": { + "smithy.api#documentation": "

If provided, the generated manifest includes objects where the specified string appears\n at the end of the object key string. Each KeyNameConstraint filter accepts an array of\n strings with a length of 1 string.

" + } + }, + "MatchAnySubstring": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024StringList", + "traits": { + "smithy.api#documentation": "

If provided, the generated manifest includes objects where the specified string appears\n anywhere within the object key string. Each KeyNameConstraint filter accepts an array of\n strings with a length of 1 string.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

If provided, the generated manifest includes only source bucket objects whose object\n keys match the string constraints specified for MatchAnyPrefix,\n MatchAnySuffix, and MatchAnySubstring.

" + } + }, + "com.amazonaws.s3control#KmsKeyArnString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2000 + } + } + }, + "com.amazonaws.s3control#LambdaInvokeOperation": { + "type": "structure", + "members": { + "FunctionArn": { + "target": "com.amazonaws.s3control#FunctionArnString", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the Lambda function that the specified job will\n invoke on every object in the manifest.

" + } + }, + "InvocationSchemaVersion": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength64String", + "traits": { + "smithy.api#documentation": "

Specifies the schema version for the payload that Batch Operations sends when invoking\n an Lambda function. Version 1.0 is the default. Version\n 2.0 is required when you use Batch Operations to invoke Lambda functions that act on directory buckets, or if you need to specify\n UserArguments. For more information, see Automate object processing in Amazon S3 directory buckets with S3 Batch Operations and\n Lambda in the Amazon Web Services Storage Blog.

\n \n

Ensure that your Lambda function code expects\n InvocationSchemaVersion\n 2.0 and uses bucket name rather than bucket ARN. If the\n InvocationSchemaVersion does not match what your Lambda\n function expects, your function might not work as expected.

\n
\n \n

\n Directory buckets - To initiate Amazon Web Services Lambda\n function to perform custom actions on objects in directory buckets, you must specify\n 2.0.

\n
" + } + }, + "UserArguments": { + "target": "com.amazonaws.s3control#UserArguments", + "traits": { + "smithy.api#documentation": "

Key-value pairs that are passed in the payload that Batch Operations sends when invoking\n an Lambda function. You must specify InvocationSchemaVersion\n 2.0 for LambdaInvoke operations that include\n UserArguments. For more information, see Automate object processing in Amazon S3 directory buckets with S3 Batch Operations and\n Lambda in the Amazon Web Services Storage Blog.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the configuration parameters for a Lambda Invoke operation.

" + } + }, + "com.amazonaws.s3control#LifecycleConfiguration": { + "type": "structure", + "members": { + "Rules": { + "target": "com.amazonaws.s3control#LifecycleRules", + "traits": { + "smithy.api#documentation": "

A lifecycle rule for individual objects in an Outposts bucket.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The container for the Outposts bucket lifecycle configuration.

" + } + }, + "com.amazonaws.s3control#LifecycleExpiration": { + "type": "structure", + "members": { + "Date": { + "target": "com.amazonaws.s3control#Date", + "traits": { + "smithy.api#documentation": "

Indicates at what date the object is to be deleted. Should be in GMT ISO 8601\n format.

" + } + }, + "Days": { + "target": "com.amazonaws.s3control#Days", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

Indicates the lifetime, in days, of the objects that are subject to the rule. The value\n must be a non-zero positive integer.

" + } + }, + "ExpiredObjectDeleteMarker": { + "target": "com.amazonaws.s3control#ExpiredObjectDeleteMarker", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Indicates whether Amazon S3 will remove a delete marker with no noncurrent versions. If set\n to true, the delete marker will be expired. If set to false, the policy takes no action.\n This cannot be specified with Days or Date in a Lifecycle Expiration Policy. To learn more\n about delete markers, see Working with delete\n markers.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The container of the Outposts bucket lifecycle expiration.

" + } + }, + "com.amazonaws.s3control#LifecycleRule": { + "type": "structure", + "members": { + "Expiration": { + "target": "com.amazonaws.s3control#LifecycleExpiration", + "traits": { + "smithy.api#documentation": "

Specifies the expiration for the lifecycle of the object in the form of date, days and,\n whether the object has a delete marker.

" + } + }, + "ID": { + "target": "com.amazonaws.s3control#ID", + "traits": { + "smithy.api#documentation": "

Unique identifier for the rule. The value cannot be longer than 255 characters.

" + } + }, + "Filter": { + "target": "com.amazonaws.s3control#LifecycleRuleFilter", + "traits": { + "smithy.api#documentation": "

The container for the filter of lifecycle rule.

" + } + }, + "Status": { + "target": "com.amazonaws.s3control#ExpirationStatus", + "traits": { + "smithy.api#documentation": "

If 'Enabled', the rule is currently being applied. If 'Disabled', the rule is not\n currently being applied.

", + "smithy.api#required": {} + } + }, + "Transitions": { + "target": "com.amazonaws.s3control#TransitionList", + "traits": { + "smithy.api#documentation": "

Specifies when an Amazon S3 object transitions to a specified storage class.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" + } + }, + "NoncurrentVersionTransitions": { + "target": "com.amazonaws.s3control#NoncurrentVersionTransitionList", + "traits": { + "smithy.api#documentation": "

Specifies the transition rule for the lifecycle rule that describes when non-current\n objects transition to a specific storage class. If your bucket is versioning-enabled (or\n versioning is suspended), you can set this action to request that Amazon S3 transition\n noncurrent object versions to a specific storage class at a set period in the object's\n lifetime.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" + } + }, + "NoncurrentVersionExpiration": { + "target": "com.amazonaws.s3control#NoncurrentVersionExpiration", + "traits": { + "smithy.api#documentation": "

The noncurrent version expiration of the lifecycle rule.

" + } + }, + "AbortIncompleteMultipartUpload": { + "target": "com.amazonaws.s3control#AbortIncompleteMultipartUpload", + "traits": { + "smithy.api#documentation": "

Specifies the days since the initiation of an incomplete multipart upload that Amazon S3\n waits before permanently removing all parts of the upload. For more information, see \n Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration in\n the Amazon S3 User Guide.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The container for the Outposts bucket lifecycle rule.

" + } + }, + "com.amazonaws.s3control#LifecycleRuleAndOperator": { + "type": "structure", + "members": { + "Prefix": { + "target": "com.amazonaws.s3control#Prefix", + "traits": { + "smithy.api#documentation": "

Prefix identifying one or more objects to which the rule applies.

" + } + }, + "Tags": { + "target": "com.amazonaws.s3control#S3TagSet", + "traits": { + "smithy.api#documentation": "

All of these tags must exist in the object's tag set in order for the rule to\n apply.

" + } + }, + "ObjectSizeGreaterThan": { + "target": "com.amazonaws.s3control#ObjectSizeGreaterThanBytes", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

The non-inclusive minimum object size for the lifecycle rule. Setting this property to 7\n means the rule applies to objects with a size that is greater than 7.

" + } + }, + "ObjectSizeLessThan": { + "target": "com.amazonaws.s3control#ObjectSizeLessThanBytes", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

The non-inclusive maximum object size for the lifecycle rule. Setting this property to\n 77 means the rule applies to objects with a size that is less than 77.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The container for the Outposts bucket lifecycle rule and operator.

" + } + }, + "com.amazonaws.s3control#LifecycleRuleFilter": { + "type": "structure", + "members": { + "Prefix": { + "target": "com.amazonaws.s3control#Prefix", + "traits": { + "smithy.api#documentation": "

Prefix identifying one or more objects to which the rule applies.

\n \n

When you're using XML requests, you must \nreplace special characters (such as carriage returns) in object keys with their equivalent XML entity codes. \nFor more information, see \n XML-related object key constraints in the Amazon S3 User Guide.

\n
" + } + }, + "Tag": { + "target": "com.amazonaws.s3control#S3Tag" + }, + "And": { + "target": "com.amazonaws.s3control#LifecycleRuleAndOperator", + "traits": { + "smithy.api#documentation": "

The container for the AND condition for the lifecycle rule.

" + } + }, + "ObjectSizeGreaterThan": { + "target": "com.amazonaws.s3control#ObjectSizeGreaterThanBytes", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Minimum object size to which the rule applies.

" + } + }, + "ObjectSizeLessThan": { + "target": "com.amazonaws.s3control#ObjectSizeLessThanBytes", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Maximum object size to which the rule applies.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The container for the filter of the lifecycle rule.

" + } + }, + "com.amazonaws.s3control#LifecycleRules": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#LifecycleRule", + "traits": { + "smithy.api#xmlName": "Rule" + } + } + }, + "com.amazonaws.s3control#ListAccessGrantEntry": { + "type": "structure", + "members": { + "CreatedAt": { + "target": "com.amazonaws.s3control#CreationTimestamp", + "traits": { + "smithy.api#documentation": "

The date and time when you created the S3 Access Grants instance.

" + } + }, + "AccessGrantId": { + "target": "com.amazonaws.s3control#AccessGrantId", + "traits": { + "smithy.api#documentation": "

The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access\n grant.

" + } + }, + "AccessGrantArn": { + "target": "com.amazonaws.s3control#AccessGrantArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the access grant.

" + } + }, + "Grantee": { + "target": "com.amazonaws.s3control#Grantee", + "traits": { + "smithy.api#documentation": "

The user, group, or role to which you are granting access. You can grant access to an\n IAM user or role. If you have added your corporate directory to Amazon Web Services IAM Identity\n Center and associated your Identity Center instance with your S3 Access Grants instance, the grantee\n can also be a corporate directory user or group.

" + } + }, + "Permission": { + "target": "com.amazonaws.s3control#Permission", + "traits": { + "smithy.api#documentation": "

The type of access granted to your S3 data, which can be set to one of the following\n values:

\n
    \n
  • \n

    \n READ – Grant read-only access to the S3 data.

    \n
  • \n
  • \n

    \n WRITE – Grant write-only access to the S3 data.

    \n
  • \n
  • \n

    \n READWRITE – Grant both read and write access to the S3 data.

    \n
  • \n
" + } + }, + "AccessGrantsLocationId": { + "target": "com.amazonaws.s3control#AccessGrantsLocationId", + "traits": { + "smithy.api#documentation": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this\n ID when you register the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

" + } + }, + "AccessGrantsLocationConfiguration": { + "target": "com.amazonaws.s3control#AccessGrantsLocationConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration options of the grant location. The grant location is the S3 path to\n the data to which you are granting access.

" + } + }, + "GrantScope": { + "target": "com.amazonaws.s3control#S3Prefix", + "traits": { + "smithy.api#documentation": "

The S3 path of the data to which you are granting access. It is the result of appending\n the Subprefix to the location scope.

" + } + }, + "ApplicationArn": { + "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated\n with your Identity Center instance. If the grant includes an application ARN, the grantee\n can only access the S3 data through this application.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about the access grant.

" + } + }, + "com.amazonaws.s3control#ListAccessGrants": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#ListAccessGrantsRequest" + }, + "output": { + "target": "com.amazonaws.s3control#ListAccessGrantsResult" + }, + "traits": { + "smithy.api#documentation": "

Returns the list of access grants in your S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:ListAccessGrants permission to use this\n operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accessgrantsinstance/grants", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#ListAccessGrantsInstanceEntry": { + "type": "structure", + "members": { + "AccessGrantsInstanceId": { + "target": "com.amazonaws.s3control#AccessGrantsInstanceId", + "traits": { + "smithy.api#documentation": "

The ID of the S3 Access Grants instance. The ID is default. You can have one S3 Access Grants\n instance per Region per account.

" + } + }, + "AccessGrantsInstanceArn": { + "target": "com.amazonaws.s3control#AccessGrantsInstanceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the S3 Access Grants instance.

" + } + }, + "CreatedAt": { + "target": "com.amazonaws.s3control#CreationTimestamp", + "traits": { + "smithy.api#documentation": "

The date and time when you created the S3 Access Grants instance.

" + } + }, + "IdentityCenterArn": { + "target": "com.amazonaws.s3control#IdentityCenterArn", + "traits": { + "smithy.api#deprecated": { + "message": "IdentityCenterArn has been deprecated. Use IdentityCenterInstanceArn or IdentityCenterApplicationArn." + }, + "smithy.api#documentation": "

If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance,\n this field returns the Amazon Resource Name (ARN) of the IAM Identity Center instance\n application; a subresource of the original Identity Center instance. S3 Access Grants creates this\n Identity Center application for the specific S3 Access Grants instance.

" + } + }, + "IdentityCenterInstanceArn": { + "target": "com.amazonaws.s3control#IdentityCenterArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity Center instance that you are\n associating with your S3 Access Grants instance. An IAM Identity Center instance is your corporate\n identity directory that you added to the IAM Identity Center. You can use the ListInstances API operation to retrieve a list of your Identity Center\n instances and their ARNs.

" + } + }, + "IdentityCenterApplicationArn": { + "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", + "traits": { + "smithy.api#documentation": "

If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance,\n this field returns the Amazon Resource Name (ARN) of the IAM Identity Center instance\n application; a subresource of the original Identity Center instance. S3 Access Grants creates this\n Identity Center application for the specific S3 Access Grants instance.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about the S3 Access Grants instance.

" + } + }, + "com.amazonaws.s3control#ListAccessGrantsInstances": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#ListAccessGrantsInstancesRequest" + }, + "output": { + "target": "com.amazonaws.s3control#ListAccessGrantsInstancesResult" + }, + "traits": { + "smithy.api#documentation": "

Returns a list of S3 Access Grants instances. An S3 Access Grants instance serves as a logical grouping for\n your individual access grants. You can only have one S3 Access Grants instance per Region per\n account.

\n
\n
Permissions
\n
\n

You must have the s3:ListAccessGrantsInstances permission to use\n this operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accessgrantsinstances", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#ListAccessGrantsInstancesRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "NextToken": { + "target": "com.amazonaws.s3control#ContinuationToken", + "traits": { + "smithy.api#documentation": "

A pagination token to request the next page of results. Pass this value into a\n subsequent List Access Grants Instances request in order to retrieve the next\n page of results.

", + "smithy.api#httpQuery": "nextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.s3control#MaxResults", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The maximum number of access grants that you would like returned in the List\n Access Grants response. If the results include the pagination token\n NextToken, make another call using the NextToken to determine\n if there are more results.

", + "smithy.api#httpQuery": "maxResults" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#ListAccessGrantsInstancesResult": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.s3control#ContinuationToken", + "traits": { + "smithy.api#documentation": "

A pagination token to request the next page of results. Pass this value into a\n subsequent List Access Grants Instances request in order to retrieve the next\n page of results.

" + } + }, + "AccessGrantsInstancesList": { + "target": "com.amazonaws.s3control#AccessGrantsInstancesList", + "traits": { + "smithy.api#documentation": "

A container for a list of S3 Access Grants instances.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#ListAccessGrantsLocations": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#ListAccessGrantsLocationsRequest" + }, + "output": { + "target": "com.amazonaws.s3control#ListAccessGrantsLocationsResult" + }, + "traits": { + "smithy.api#documentation": "

Returns a list of the locations registered in your S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:ListAccessGrantsLocations permission to use\n this operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accessgrantsinstance/locations", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#ListAccessGrantsLocationsEntry": { + "type": "structure", + "members": { + "CreatedAt": { + "target": "com.amazonaws.s3control#CreationTimestamp", + "traits": { + "smithy.api#documentation": "

The date and time when you registered the location.

" + } + }, + "AccessGrantsLocationId": { + "target": "com.amazonaws.s3control#AccessGrantsLocationId", + "traits": { + "smithy.api#documentation": "

The ID of the registered location to which you are granting access. S3 Access Grants assigns this\n ID when you register the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

" + } + }, + "AccessGrantsLocationArn": { + "target": "com.amazonaws.s3control#AccessGrantsLocationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the registered location.

" + } + }, + "LocationScope": { + "target": "com.amazonaws.s3control#S3Prefix", + "traits": { + "smithy.api#documentation": "

The S3 path to the location that you are registering. The location scope can be the\n default S3 location s3://, the S3 path to a bucket\n s3://, or the S3 path to a bucket and prefix\n s3:///. A prefix in S3 is a string of\n characters at the beginning of an object key name used to organize the objects that you\n store in your S3 buckets. For example, object key names that start with the\n engineering/ prefix or object key names that start with the\n marketing/campaigns/ prefix.

" + } + }, + "IAMRoleArn": { + "target": "com.amazonaws.s3control#IAMRoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants\n assumes this role to manage access to the registered location.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for information about the registered location.

" + } + }, + "com.amazonaws.s3control#ListAccessGrantsLocationsRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "NextToken": { + "target": "com.amazonaws.s3control#ContinuationToken", + "traits": { + "smithy.api#documentation": "

A pagination token to request the next page of results. Pass this value into a\n subsequent List Access Grants Locations request in order to retrieve the next\n page of results.

", + "smithy.api#httpQuery": "nextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.s3control#MaxResults", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The maximum number of access grants that you would like returned in the List\n Access Grants response. If the results include the pagination token\n NextToken, make another call using the NextToken to determine\n if there are more results.

", + "smithy.api#httpQuery": "maxResults" + } + }, + "LocationScope": { + "target": "com.amazonaws.s3control#S3Prefix", + "traits": { + "smithy.api#documentation": "

The S3 path to the location that you are registering. The location scope can be the\n default S3 location s3://, the S3 path to a bucket\n s3://, or the S3 path to a bucket and prefix\n s3:///. A prefix in S3 is a string of\n characters at the beginning of an object key name used to organize the objects that you\n store in your S3 buckets. For example, object key names that start with the\n engineering/ prefix or object key names that start with the\n marketing/campaigns/ prefix.

", + "smithy.api#httpQuery": "locationscope" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#ListAccessGrantsLocationsResult": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.s3control#ContinuationToken", + "traits": { + "smithy.api#documentation": "

A pagination token to request the next page of results. Pass this value into a\n subsequent List Access Grants Locations request in order to retrieve the next\n page of results.

" + } + }, + "AccessGrantsLocationsList": { + "target": "com.amazonaws.s3control#AccessGrantsLocationsList", + "traits": { + "smithy.api#documentation": "

A container for a list of registered locations in an S3 Access Grants instance.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#ListAccessGrantsRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "NextToken": { + "target": "com.amazonaws.s3control#ContinuationToken", + "traits": { + "smithy.api#documentation": "

A pagination token to request the next page of results. Pass this value into a\n subsequent List Access Grants request in order to retrieve the next page of\n results.

", + "smithy.api#httpQuery": "nextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.s3control#MaxResults", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The maximum number of access grants that you would like returned in the List\n Access Grants response. If the results include the pagination token\n NextToken, make another call using the NextToken to determine\n if there are more results.

", + "smithy.api#httpQuery": "maxResults" + } + }, + "GranteeType": { + "target": "com.amazonaws.s3control#GranteeType", + "traits": { + "smithy.api#documentation": "

The type of the grantee to which access has been granted. It can be one of the following\n values:

\n
    \n
  • \n

    \n IAM - An IAM user or role.

    \n
  • \n
  • \n

    \n DIRECTORY_USER - Your corporate directory user. You can use\n this option if you have added your corporate identity directory to IAM Identity\n Center and associated the IAM Identity Center instance with your S3 Access Grants\n instance.

    \n
  • \n
  • \n

    \n DIRECTORY_GROUP - Your corporate directory group. You can use\n this option if you have added your corporate identity directory to IAM Identity\n Center and associated the IAM Identity Center instance with your S3 Access Grants\n instance.

    \n
  • \n
", + "smithy.api#httpQuery": "granteetype" + } + }, + "GranteeIdentifier": { + "target": "com.amazonaws.s3control#GranteeIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifer of the Grantee. If the grantee type is\n IAM, the identifier is the IAM Amazon Resource Name (ARN) of the user\n or role. If the grantee type is a directory user or group, the identifier is 128-bit\n universally unique identifier (UUID) in the format\n a1b2c3d4-5678-90ab-cdef-EXAMPLE11111. You can obtain this UUID from your\n Amazon Web Services IAM Identity Center instance.

", + "smithy.api#httpQuery": "granteeidentifier" + } + }, + "Permission": { + "target": "com.amazonaws.s3control#Permission", + "traits": { + "smithy.api#documentation": "

The type of permission granted to your S3 data, which can be set to one of the following\n values:

\n
    \n
  • \n

    \n READ – Grant read-only access to the S3 data.

    \n
  • \n
  • \n

    \n WRITE – Grant write-only access to the S3 data.

    \n
  • \n
  • \n

    \n READWRITE – Grant both read and write access to the S3 data.

    \n
  • \n
", + "smithy.api#httpQuery": "permission" + } + }, + "GrantScope": { + "target": "com.amazonaws.s3control#S3Prefix", + "traits": { + "smithy.api#documentation": "

The S3 path of the data to which you are granting access. It is the result of appending\n the Subprefix to the location scope.

", + "smithy.api#httpQuery": "grantscope" + } + }, + "ApplicationArn": { + "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated\n with your Identity Center instance. If the grant includes an application ARN, the grantee\n can only access the S3 data through this application.

", + "smithy.api#httpQuery": "application_arn" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#ListAccessGrantsResult": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.s3control#ContinuationToken", + "traits": { + "smithy.api#documentation": "

A pagination token to request the next page of results. Pass this value into a\n subsequent List Access Grants request in order to retrieve the next page of\n results.

" + } + }, + "AccessGrantsList": { + "target": "com.amazonaws.s3control#AccessGrantsList", + "traits": { + "smithy.api#documentation": "

A container for a list of grants in an S3 Access Grants instance.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#ListAccessPoints": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#ListAccessPointsRequest" + }, + "output": { + "target": "com.amazonaws.s3control#ListAccessPointsResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns a list of the access points. You can retrieve up to 1,000 access points per call. If the call\n returns more than 1,000 access points (or the number specified in maxResults,\n whichever is less), the response will include a continuation token that you can use to list\n the additional access points.

\n

Returns only access points attached to S3 buckets by default. To return all access points specify\n DataSourceType as ALL.

\n

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to ListAccessPoints:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accesspoint", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#ListAccessPointsForDirectoryBuckets": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#ListAccessPointsForDirectoryBucketsRequest" + }, + "output": { + "target": "com.amazonaws.s3control#ListAccessPointsForDirectoryBucketsResult" + }, + "traits": { + "smithy.api#documentation": "

Returns a list of the access points that are owned by the Amazon Web Services account and that are associated\n with the specified directory bucket.

\n

To list access points for general purpose buckets, see ListAccesspoints.

\n

To use this operation, you must have the permission to perform the\n s3express:ListAccessPointsForDirectoryBuckets\n action.

\n

For information about REST API errors, see REST error responses.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accesspointfordirectory", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "AccessPointList", + "pageSize": "MaxResults" + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + }, + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#ListAccessPointsForDirectoryBucketsRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID that owns the access points.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "DirectoryBucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the directory bucket associated with the access points you want to list.

", + "smithy.api#httpQuery": "directoryBucket" + } + }, + "NextToken": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

If NextToken is returned, there are more access points available than requested in\n the maxResults value. The value of NextToken is a unique\n pagination token for each page. Make the call again using the returned token to retrieve\n the next page. Keep all other arguments unchanged. Each pagination token expires after 24\n hours.

", + "smithy.api#httpQuery": "nextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.s3control#MaxResults", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The maximum number of access points that you would like returned in the\n ListAccessPointsForDirectoryBuckets response. If the directory bucket is\n associated with more than this number of access points, the results include the pagination token\n NextToken. Make another call using the NextToken to retrieve\n more results.

", + "smithy.api#httpQuery": "maxResults" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#ListAccessPointsForDirectoryBucketsResult": { + "type": "structure", + "members": { + "AccessPointList": { + "target": "com.amazonaws.s3control#AccessPointList", + "traits": { + "smithy.api#documentation": "

Contains identification and configuration information for one or more access points associated\n with the directory bucket.

" + } + }, + "NextToken": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

If NextToken is returned, there are more access points available than requested in\n the maxResults value. The value of NextToken is a unique\n pagination token for each page. Make the call again using the returned token to retrieve\n the next page. Keep all other arguments unchanged. Each pagination token expires after 24\n hours.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#ListAccessPointsForObjectLambda": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#ListAccessPointsForObjectLambdaRequest" + }, + "output": { + "target": "com.amazonaws.s3control#ListAccessPointsForObjectLambdaResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns some or all (up to 1,000) access points associated with the Object Lambda Access Point per call. If there\n are more access points than what can be returned in one call, the response will include a\n continuation token that you can use to list the additional access points.

\n

The following actions are related to\n ListAccessPointsForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accesspointforobjectlambda", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "ObjectLambdaAccessPointList", + "pageSize": "MaxResults" + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#ListAccessPointsForObjectLambdaRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "NextToken": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

If the list has more access points than can be returned in one call to this API, this field\n contains a continuation token that you can provide in subsequent calls to this API to\n retrieve additional access points.

", + "smithy.api#httpQuery": "nextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.s3control#MaxResults", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The maximum number of access points that you want to include in the list. The response may\n contain fewer access points but will never contain more. If there are more than this number of\n access points, then the response will include a continuation token in the NextToken\n field that you can use to retrieve the next page of access points.

", + "smithy.api#httpQuery": "maxResults" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#ListAccessPointsForObjectLambdaResult": { + "type": "structure", + "members": { + "ObjectLambdaAccessPointList": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointList", + "traits": { + "smithy.api#documentation": "

Returns list of Object Lambda Access Points.

" + } + }, + "NextToken": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

If the list has more access points than can be returned in one call to this API, this field\n contains a continuation token that you can provide in subsequent calls to this API to\n retrieve additional access points.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#ListAccessPointsRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID for the account that owns the specified access points.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket whose associated access points you want to list.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", + "smithy.api#httpQuery": "bucket", + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "NextToken": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

A continuation token. If a previous call to ListAccessPoints returned a\n continuation token in the NextToken field, then providing that value here\n causes Amazon S3 to retrieve the next page of results.

", + "smithy.api#httpQuery": "nextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.s3control#MaxResults", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The maximum number of access points that you want to include in the list. If the specified\n bucket has more than this number of access points, then the response will include a continuation\n token in the NextToken field that you can use to retrieve the next page of\n access points.

", + "smithy.api#httpQuery": "maxResults" + } + }, + "DataSourceId": { + "target": "com.amazonaws.s3control#DataSourceId", + "traits": { + "smithy.api#documentation": "

The unique identifier for the data source of the access point.

", + "smithy.api#httpQuery": "dataSourceId" + } + }, + "DataSourceType": { + "target": "com.amazonaws.s3control#DataSourceType", + "traits": { + "smithy.api#documentation": "

The type of the data source that the access point is attached to. Returns only access points attached to\n S3 buckets by default. To return all access points specify DataSourceType as\n ALL.

", + "smithy.api#httpQuery": "dataSourceType" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#ListAccessPointsResult": { + "type": "structure", + "members": { + "AccessPointList": { + "target": "com.amazonaws.s3control#AccessPointList", + "traits": { + "smithy.api#documentation": "

Contains identification and configuration information for one or more access points associated\n with the specified bucket.

" + } + }, + "NextToken": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

If the specified bucket has more access points than can be returned in one call to this API,\n this field contains a continuation token that you can provide in subsequent calls to this\n API to retrieve additional access points.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#ListCallerAccessGrants": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#ListCallerAccessGrantsRequest" + }, + "output": { + "target": "com.amazonaws.s3control#ListCallerAccessGrantsResult" + }, + "traits": { + "smithy.api#documentation": "

Use this API to list the access grants that grant the caller access to Amazon S3 data through\n S3 Access Grants. The caller (grantee) can be an Identity and Access Management (IAM) identity or Amazon Web Services Identity Center\n corporate directory identity. You must pass the Amazon Web Services account of the S3 data owner\n (grantor) in the request. You can, optionally, narrow the results by\n GrantScope, using a fragment of the data's S3 path, and S3 Access Grants will return\n only the grants with a path that contains the path fragment. You can also pass the\n AllowedByApplication filter in the request, which returns only the grants\n authorized for applications, whether the application is the caller's Identity Center\n application or any other application (ALL). For more information, see List\n the caller's access grants in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

You must have the s3:ListCallerAccessGrants permission to use this\n operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/accessgrantsinstance/caller/grants", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "CallerAccessGrantsList", + "pageSize": "MaxResults" + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#ListCallerAccessGrantsEntry": { + "type": "structure", + "members": { + "Permission": { + "target": "com.amazonaws.s3control#Permission", + "traits": { + "smithy.api#documentation": "

The type of permission granted, which can be one of the following values:

\n
    \n
  • \n

    \n READ - Grants read-only access to the S3 data.

    \n
  • \n
  • \n

    \n WRITE - Grants write-only access to the S3 data.

    \n
  • \n
  • \n

    \n READWRITE - Grants both read and write access to the S3 data.

    \n
  • \n
" + } + }, + "GrantScope": { + "target": "com.amazonaws.s3control#S3Prefix", + "traits": { + "smithy.api#documentation": "

The S3 path of the data to which you have been granted access.

" + } + }, + "ApplicationArn": { + "target": "com.amazonaws.s3control#IdentityCenterApplicationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated\n with your Identity Center instance. If the grant includes an application ARN, the grantee\n can only access the S3 data through this application.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Part of ListCallerAccessGrantsResult. Each entry includes the permission\n level (READ, WRITE, or READWRITE) and the grant scope of the access grant. If the grant\n also includes an application ARN, the grantee can only access the S3 data through this\n application.

" + } + }, + "com.amazonaws.s3control#ListCallerAccessGrantsRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "GrantScope": { + "target": "com.amazonaws.s3control#S3Prefix", + "traits": { + "smithy.api#documentation": "

The S3 path of the data that you would like to access. Must start with\n s3://. You can optionally pass only the beginning characters of a path, and\n S3 Access Grants will search for all applicable grants for the path fragment.

", + "smithy.api#httpQuery": "grantscope" + } + }, + "NextToken": { + "target": "com.amazonaws.s3control#ContinuationToken", + "traits": { + "smithy.api#documentation": "

A pagination token to request the next page of results. Pass this value into a\n subsequent List Caller Access Grants request in order to retrieve the next\n page of results.

", + "smithy.api#httpQuery": "nextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.s3control#MaxResults", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The maximum number of access grants that you would like returned in the List\n Caller Access Grants response. If the results include the pagination token\n NextToken, make another call using the NextToken to determine\n if there are more results.

", + "smithy.api#httpQuery": "maxResults" + } + }, + "AllowedByApplication": { + "target": "com.amazonaws.s3control#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

If this optional parameter is passed in the request, a filter is applied to the results.\n The results will include only the access grants for the caller's Identity Center\n application or for any other applications (ALL).

", + "smithy.api#httpQuery": "allowedByApplication" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#ListCallerAccessGrantsResult": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.s3control#ContinuationToken", + "traits": { + "smithy.api#documentation": "

A pagination token that you can use to request the next page of results. Pass this value\n into a subsequent List Caller Access Grants request in order to retrieve the\n next page of results.

" + } + }, + "CallerAccessGrantsList": { + "target": "com.amazonaws.s3control#CallerAccessGrantsList", + "traits": { + "smithy.api#documentation": "

A list of the caller's access grants that were created using S3 Access Grants and that grant the\n caller access to the S3 data of the Amazon Web Services account ID that was specified in the request.\n

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#ListJobs": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#ListJobsRequest" + }, + "output": { + "target": "com.amazonaws.s3control#ListJobsResult" + }, + "errors": [ + { + "target": "com.amazonaws.s3control#InternalServiceException" + }, + { + "target": "com.amazonaws.s3control#InvalidNextTokenException" + }, + { + "target": "com.amazonaws.s3control#InvalidRequestException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists current S3 Batch Operations jobs as well as the jobs that have ended within the last 90\n days for the Amazon Web Services account making the request. For more information, see S3 Batch Operations in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

To use the ListJobs operation, you must have permission to perform\n the s3:ListJobs action.

\n
\n
\n

Related actions include:

\n

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/jobs", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#ListJobsRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "JobStatuses": { + "target": "com.amazonaws.s3control#JobStatusList", + "traits": { + "smithy.api#documentation": "

The List Jobs request returns jobs that match the statuses listed in this\n element.

", + "smithy.api#httpQuery": "jobStatuses" + } + }, + "NextToken": { + "target": "com.amazonaws.s3control#StringForNextToken", + "traits": { + "smithy.api#documentation": "

A pagination token to request the next page of results. Use the token that Amazon S3 returned\n in the NextToken element of the ListJobsResult from the previous\n List Jobs request.

", + "smithy.api#httpQuery": "nextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.s3control#MaxResults", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

The maximum number of jobs that Amazon S3 will include in the List Jobs\n response. If there are more jobs than this number, the response will include a pagination\n token in the NextToken field to enable you to retrieve the next page of\n results.

", + "smithy.api#httpQuery": "maxResults" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#ListJobsResult": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.s3control#StringForNextToken", + "traits": { + "smithy.api#documentation": "

If the List Jobs request produced more than the maximum number of results,\n you can pass this value into a subsequent List Jobs request in order to\n retrieve the next page of results.

" + } + }, + "Jobs": { + "target": "com.amazonaws.s3control#JobListDescriptorList", + "traits": { + "smithy.api#documentation": "

The list of current jobs and jobs that have ended within the last 30 days.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#ListMultiRegionAccessPoints": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#ListMultiRegionAccessPointsRequest" + }, + "output": { + "target": "com.amazonaws.s3control#ListMultiRegionAccessPointsResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns a list of the Multi-Region Access Points currently associated with the specified Amazon Web Services account.\n Each call can return up to 100 Multi-Region Access Points, the maximum number of Multi-Region Access Points that can be\n associated with a single account.

\n

This action will always be routed to the US West (Oregon) Region. For more information\n about the restrictions around working with Multi-Region Access Points, see Multi-Region Access Point\n restrictions and limitations in the Amazon S3 User Guide.

\n

The following actions are related to ListMultiRegionAccessPoint:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/mrap/instances", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#ListMultiRegionAccessPointsRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "NextToken": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

Not currently used. Do not use this parameter.

", + "smithy.api#httpQuery": "nextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.s3control#MaxResults", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

Not currently used. Do not use this parameter.

", + "smithy.api#httpQuery": "maxResults" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#ListMultiRegionAccessPointsResult": { + "type": "structure", + "members": { + "AccessPoints": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointReportList", + "traits": { + "smithy.api#documentation": "

The list of Multi-Region Access Points associated with the user.

" + } + }, + "NextToken": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

If the specified bucket has more Multi-Region Access Points than can be returned in one call to this\n action, this field contains a continuation token. You can use this token tin subsequent\n calls to this action to retrieve additional Multi-Region Access Points.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#ListRegionalBuckets": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#ListRegionalBucketsRequest" + }, + "output": { + "target": "com.amazonaws.s3control#ListRegionalBucketsResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns a list of all Outposts buckets in an Outpost that are owned by the authenticated\n sender of the request. For more information, see Using Amazon S3 on Outposts in the\n Amazon S3 User Guide.

\n

For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts\n endpoint hostname prefix and x-amz-outpost-id in your request, see the Examples section.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/bucket", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults" + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#ListRegionalBucketsRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "NextToken": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

", + "smithy.api#httpQuery": "nextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.s3control#MaxResults", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

", + "smithy.api#httpQuery": "maxResults" + } + }, + "OutpostId": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength64String", + "traits": { + "smithy.api#documentation": "

The ID of the Outposts resource.

\n \n

This ID is required by Amazon S3 on Outposts buckets.

\n
", + "smithy.api#httpHeader": "x-amz-outpost-id", + "smithy.rules#contextParam": { + "name": "OutpostId" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#ListRegionalBucketsResult": { + "type": "structure", + "members": { + "RegionalBucketList": { + "target": "com.amazonaws.s3control#RegionalBucketList", + "traits": { + "smithy.api#documentation": "

" + } + }, + "NextToken": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

\n NextToken is sent when isTruncated is true, which means there\n are more buckets that can be listed. The next list requests to Amazon S3 can be continued with\n this NextToken. NextToken is obfuscated and is not a real\n key.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#ListStorageLensConfigurationEntry": { + "type": "structure", + "members": { + "Id": { + "target": "com.amazonaws.s3control#ConfigId", + "traits": { + "smithy.api#documentation": "

A container for the S3 Storage Lens configuration ID.

", + "smithy.api#required": {} + } + }, + "StorageLensArn": { + "target": "com.amazonaws.s3control#StorageLensArn", + "traits": { + "smithy.api#documentation": "

The ARN of the S3 Storage Lens configuration. This property is read-only.

", + "smithy.api#required": {} + } + }, + "HomeRegion": { + "target": "com.amazonaws.s3control#S3AWSRegion", + "traits": { + "smithy.api#documentation": "

A container for the S3 Storage Lens home Region. Your metrics data is stored and retained in\n your designated S3 Storage Lens home Region.

", + "smithy.api#required": {} + } + }, + "IsEnabled": { + "target": "com.amazonaws.s3control#IsEnabled", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

A container for whether the S3 Storage Lens configuration is enabled. This property is\n required.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Part of ListStorageLensConfigurationResult. Each entry includes the\n description of the S3 Storage Lens configuration, its home Region, whether it is enabled, its\n Amazon Resource Name (ARN), and config ID.

" + } + }, + "com.amazonaws.s3control#ListStorageLensConfigurations": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#ListStorageLensConfigurationsRequest" + }, + "output": { + "target": "com.amazonaws.s3control#ListStorageLensConfigurationsResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Gets a list of Amazon S3 Storage Lens configurations. For more information about S3 Storage Lens, see\n Assessing your\n storage activity and usage with Amazon S3 Storage Lens in the\n Amazon S3 User Guide.

\n \n

To use this action, you must have permission to perform the\n s3:ListStorageLensConfigurations action. For more information, see\n Setting permissions to\n use Amazon S3 Storage Lens in the Amazon S3 User Guide.

\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/storagelens", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken" + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#ListStorageLensConfigurationsRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the requester.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "NextToken": { + "target": "com.amazonaws.s3control#ContinuationToken", + "traits": { + "smithy.api#documentation": "

A pagination token to request the next page of results.

", + "smithy.api#httpQuery": "nextToken" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#ListStorageLensConfigurationsResult": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.s3control#ContinuationToken", + "traits": { + "smithy.api#documentation": "

If the request produced more than the maximum number of S3 Storage Lens configuration results,\n you can pass this value into a subsequent request to retrieve the next page of\n results.

" + } + }, + "StorageLensConfigurationList": { + "target": "com.amazonaws.s3control#StorageLensConfigurationList", + "traits": { + "smithy.api#documentation": "

A list of S3 Storage Lens configurations.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "StorageLensConfiguration" + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "ListStorageLensConfigurationResult" + } + }, + "com.amazonaws.s3control#ListStorageLensGroupEntry": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.s3control#StorageLensGroupName", + "traits": { + "smithy.api#documentation": "

\nContains the name of the Storage Lens group that exists in the specified home Region.\n

", + "smithy.api#required": {} + } + }, + "StorageLensGroupArn": { + "target": "com.amazonaws.s3control#StorageLensGroupArn", + "traits": { + "smithy.api#documentation": "

\nContains the Amazon Resource Name (ARN) of the Storage Lens group. This property is read-only.\n

", + "smithy.api#required": {} + } + }, + "HomeRegion": { + "target": "com.amazonaws.s3control#S3AWSRegion", + "traits": { + "smithy.api#documentation": "

\nContains the Amazon Web Services Region where the Storage Lens group was created.\n

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

\nEach entry contains a Storage Lens group that exists in the specified home Region.\n

" + } + }, + "com.amazonaws.s3control#ListStorageLensGroups": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#ListStorageLensGroupsRequest" + }, + "output": { + "target": "com.amazonaws.s3control#ListStorageLensGroupsResult" + }, + "traits": { + "smithy.api#documentation": "

\nLists all the Storage Lens groups in the specified home Region.\n

\n

To use this operation, you must have the permission to perform the\n s3:ListStorageLensGroups action. For more information about the required Storage Lens\n Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

\n

For information about Storage Lens groups errors, see List of Amazon S3 Storage\n Lens error codes.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/storagelensgroup", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken" + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#ListStorageLensGroupsRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

\n The Amazon Web Services account ID that owns the Storage Lens groups.\n

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "NextToken": { + "target": "com.amazonaws.s3control#ContinuationToken", + "traits": { + "smithy.api#documentation": "

The token for the next set of results, or null if there are no more results.\n

", + "smithy.api#httpQuery": "nextToken" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#ListStorageLensGroupsResult": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.s3control#ContinuationToken", + "traits": { + "smithy.api#documentation": "

\n If NextToken is returned, there are more Storage Lens groups results available. The value of NextToken is a\n unique pagination token for each page. Make the call again using the returned token to\n retrieve the next page. Keep all other arguments unchanged. Each pagination token expires\n after 24 hours.\n

" + } + }, + "StorageLensGroupList": { + "target": "com.amazonaws.s3control#StorageLensGroupList", + "traits": { + "smithy.api#documentation": "

\nThe list of Storage Lens groups that exist in the specified home Region.\n

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "StorageLensGroup" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#ListTagsForResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#ListTagsForResourceRequest" + }, + "output": { + "target": "com.amazonaws.s3control#ListTagsForResourceResult" + }, + "traits": { + "smithy.api#documentation": "

This operation allows you to list all of the tags for a specified resource. Each tag is\n a label consisting of a key and value. Tags can help you organize, track costs for, and\n control access to resources.

\n \n

This operation is only supported for the following Amazon S3 resources:

\n \n
\n
\n
Permissions
\n
\n

For Storage Lens groups and S3 Access Grants, you must have the\n s3:ListTagsForResource permission to use this operation.

\n

For more information about the required Storage Lens Groups permissions, see\n Setting account permissions to use S3 Storage Lens groups.

\n
\n
Directory bucket permissions
\n
\n

For directory buckets and access points for directory buckets, you must have the s3express:ListTagsForResource permission to use this operation. For more information about directory buckets policies and permissions, see Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com.

\n
\n
\n

For information about S3 Tagging errors, see List of Amazon S3\n Tagging error codes.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "GET", + "uri": "/v20180820/tags/{ResourceArn+}", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#ListTagsForResourceRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the resource owner.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "ResourceArn": { + "target": "com.amazonaws.s3control#S3ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the S3 resource that you want to list tags for. The\n tagged resource can be a directory bucket, S3 Storage Lens group or S3 Access Grants instance,\n registered location, or grant.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#ListTagsForResourceResult": { + "type": "structure", + "members": { + "Tags": { + "target": "com.amazonaws.s3control#TagList", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services resource tags that are associated with the resource.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#Location": { + "type": "string" + }, + "com.amazonaws.s3control#MFA": { + "type": "string" + }, + "com.amazonaws.s3control#MFADelete": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.s3control#MFADeleteStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.s3control#ManifestPrefixString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 512 + } + } + }, + "com.amazonaws.s3control#MatchAnyPrefix": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#Prefix", + "traits": { + "smithy.api#xmlName": "Prefix" + } + } + }, + "com.amazonaws.s3control#MatchAnySuffix": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#Suffix", + "traits": { + "smithy.api#xmlName": "Suffix" + } + } + }, + "com.amazonaws.s3control#MatchAnyTag": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#S3Tag", + "traits": { + "smithy.api#xmlName": "Tag" + } + } + }, + "com.amazonaws.s3control#MatchObjectAge": { + "type": "structure", + "members": { + "DaysGreaterThan": { + "target": "com.amazonaws.s3control#ObjectAgeValue", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

\nSpecifies the maximum object age in days. Must be a positive whole number, greater than the minimum object age and less than or equal to 2,147,483,647. \n

" + } + }, + "DaysLessThan": { + "target": "com.amazonaws.s3control#ObjectAgeValue", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

\nSpecifies the minimum object age in days. The value must be a positive whole number, greater than 0 and less than or equal to 2,147,483,647.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

\n A filter condition that specifies the object age range of included objects in days. Only integers are supported.\n

" + } + }, + "com.amazonaws.s3control#MatchObjectSize": { + "type": "structure", + "members": { + "BytesGreaterThan": { + "target": "com.amazonaws.s3control#ObjectSizeValue", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

\nSpecifies the minimum object size in Bytes. The value must be a positive number, greater than 0 and less than 5 TB.\n

" + } + }, + "BytesLessThan": { + "target": "com.amazonaws.s3control#ObjectSizeValue", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

\nSpecifies the maximum object size in Bytes. The value must be a positive number, greater than the minimum object size and less than 5 TB.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

\nA filter condition that specifies the object size range of included objects in bytes. Only integers are supported.\n

" + } + }, + "com.amazonaws.s3control#MaxLength1024String": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1024 + } + } + }, + "com.amazonaws.s3control#MaxResults": { + "type": "integer", + "traits": { + "smithy.api#default": 0, + "smithy.api#range": { + "min": 0, + "max": 1000 + } + } + }, + "com.amazonaws.s3control#Metrics": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3control#MetricsStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether replication metrics are enabled.

", + "smithy.api#required": {} + } + }, + "EventThreshold": { + "target": "com.amazonaws.s3control#ReplicationTimeValue", + "traits": { + "smithy.api#documentation": "

A container that specifies the time threshold for emitting the\n s3:Replication:OperationMissedThreshold event.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container that specifies replication metrics-related settings.

" + } + }, + "com.amazonaws.s3control#MetricsStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.s3control#MinStorageBytesPercentage": { + "type": "double", + "traits": { + "smithy.api#range": { + "min": 0.1, + "max": 100 + } + } + }, + "com.amazonaws.s3control#Minutes": { + "type": "integer", + "traits": { + "smithy.api#default": 0 + } + }, + "com.amazonaws.s3control#MultiRegionAccessPointAlias": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 63 + }, + "smithy.api#pattern": "^[a-z][a-z0-9]*[.]mrap$" + } + }, + "com.amazonaws.s3control#MultiRegionAccessPointClientToken": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 64 + }, + "smithy.api#pattern": "^\\S+$" + } + }, + "com.amazonaws.s3control#MultiRegionAccessPointId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 200 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\:.-]{3,200}$" + } + }, + "com.amazonaws.s3control#MultiRegionAccessPointName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 50 + }, + "smithy.api#pattern": "^[a-z0-9][-a-z0-9]{1,48}[a-z0-9]$" + } + }, + "com.amazonaws.s3control#MultiRegionAccessPointPolicyDocument": { + "type": "structure", + "members": { + "Established": { + "target": "com.amazonaws.s3control#EstablishedMultiRegionAccessPointPolicy", + "traits": { + "smithy.api#documentation": "

The last established policy for the Multi-Region Access Point.

" + } + }, + "Proposed": { + "target": "com.amazonaws.s3control#ProposedMultiRegionAccessPointPolicy", + "traits": { + "smithy.api#documentation": "

The proposed policy for the Multi-Region Access Point.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The Multi-Region Access Point access control policy.

\n

When you update the policy, the update is first listed as the proposed policy. After the\n update is finished and all Regions have been updated, the proposed policy is listed as the\n established policy. If both policies have the same version number, the proposed policy is\n the established policy.

" + } + }, + "com.amazonaws.s3control#MultiRegionAccessPointRegionalResponse": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.s3control#RegionName", + "traits": { + "smithy.api#documentation": "

The name of the Region in the Multi-Region Access Point.

" + } + }, + "RequestStatus": { + "target": "com.amazonaws.s3control#AsyncRequestStatus", + "traits": { + "smithy.api#documentation": "

The current status of the Multi-Region Access Point in this Region.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Status information for a single Multi-Region Access Point Region.

" + } + }, + "com.amazonaws.s3control#MultiRegionAccessPointRegionalResponseList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointRegionalResponse", + "traits": { + "smithy.api#xmlName": "Region" + } + } + }, + "com.amazonaws.s3control#MultiRegionAccessPointReport": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the Multi-Region Access Point.

" + } + }, + "Alias": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointAlias", + "traits": { + "smithy.api#documentation": "

The alias for the Multi-Region Access Point. For more information about the distinction between the name\n and the alias of an Multi-Region Access Point, see Rules for naming Amazon S3 Multi-Region Access Points.

" + } + }, + "CreatedAt": { + "target": "com.amazonaws.s3control#CreationTimestamp", + "traits": { + "smithy.api#documentation": "

When the Multi-Region Access Point create request was received.

" + } + }, + "PublicAccessBlock": { + "target": "com.amazonaws.s3control#PublicAccessBlockConfiguration" + }, + "Status": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointStatus", + "traits": { + "smithy.api#documentation": "

The current status of the Multi-Region Access Point.

\n

\n CREATING and DELETING are temporary states that exist while\n the request is propagating and being completed. If a Multi-Region Access Point has a status of\n PARTIALLY_CREATED, you can retry creation or send a request to delete the\n Multi-Region Access Point. If a Multi-Region Access Point has a status of PARTIALLY_DELETED, you can retry a delete\n request to finish the deletion of the Multi-Region Access Point.

" + } + }, + "Regions": { + "target": "com.amazonaws.s3control#RegionReportList", + "traits": { + "smithy.api#documentation": "

A collection of the Regions and buckets associated with the Multi-Region Access Point.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A collection of statuses for a Multi-Region Access Point in the various Regions it supports.

" + } + }, + "com.amazonaws.s3control#MultiRegionAccessPointReportList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointReport", + "traits": { + "smithy.api#xmlName": "AccessPoint" + } + } + }, + "com.amazonaws.s3control#MultiRegionAccessPointRoute": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the Amazon S3 bucket for which you'll submit a routing configuration change.\n Either the Bucket or the Region value must be provided. If both\n are provided, the bucket must be in the specified Region.

" + } + }, + "Region": { + "target": "com.amazonaws.s3control#RegionName", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services Region to which you'll be submitting a routing configuration change. Either\n the Bucket or the Region value must be provided. If both are\n provided, the bucket must be in the specified Region.

" + } + }, + "TrafficDialPercentage": { + "target": "com.amazonaws.s3control#TrafficDialPercentage", + "traits": { + "smithy.api#documentation": "

The traffic state for the specified bucket or Amazon Web Services Region.

\n

A value of 0 indicates a passive state, which means that no new traffic\n will be routed to the Region.

\n

A value of 100 indicates an active state, which means that traffic will be\n routed to the specified Region.

\n

When the routing configuration for a Region is changed from active to passive, any\n in-progress operations (uploads, copies, deletes, and so on) to the formerly active Region\n will continue to run to until a final success or failure status is reached.

\n

If all Regions in the routing configuration are designated as passive, you'll receive an\n InvalidRequest error.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A structure for a Multi-Region Access Point that indicates where Amazon S3 traffic can be routed. Routes can be\n either active or passive. Active routes can process Amazon S3 requests through the Multi-Region Access Point, but\n passive routes are not eligible to process Amazon S3 requests.

\n

Each route contains the Amazon S3 bucket name and the Amazon Web Services Region that the bucket is located\n in. The route also includes the TrafficDialPercentage value, which shows\n whether the bucket and Region are active (indicated by a value of 100) or\n passive (indicated by a value of 0).

" + } + }, + "com.amazonaws.s3control#MultiRegionAccessPointStatus": { + "type": "enum", + "members": { + "READY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "READY" + } + }, + "INCONSISTENT_ACROSS_REGIONS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INCONSISTENT_ACROSS_REGIONS" + } + }, + "CREATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATING" + } + }, + "PARTIALLY_CREATED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PARTIALLY_CREATED" + } + }, + "PARTIALLY_DELETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PARTIALLY_DELETED" + } + }, + "DELETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETING" + } + } + } + }, + "com.amazonaws.s3control#MultiRegionAccessPointsAsyncResponse": { + "type": "structure", + "members": { + "Regions": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointRegionalResponseList", + "traits": { + "smithy.api#documentation": "

A collection of status information for the different Regions that a Multi-Region Access Point\n supports.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The Multi-Region Access Point details that are returned when querying about an asynchronous request.

" + } + }, + "com.amazonaws.s3control#NetworkOrigin": { + "type": "enum", + "members": { + "Internet": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Internet" + } + }, + "VPC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VPC" + } + } + } + }, + "com.amazonaws.s3control#NoSuchPublicAccessBlockConfiguration": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.s3control#NoSuchPublicAccessBlockConfigurationMessage" + } + }, + "traits": { + "smithy.api#documentation": "

Amazon S3 throws this exception if you make a GetPublicAccessBlock request\n against an account that doesn't have a PublicAccessBlockConfiguration\n set.

", + "smithy.api#error": "client", + "smithy.api#httpError": 404 + } + }, + "com.amazonaws.s3control#NoSuchPublicAccessBlockConfigurationMessage": { + "type": "string" + }, + "com.amazonaws.s3control#NonEmptyKmsKeyArnString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2000 + }, + "smithy.api#pattern": "^arn:aws[a-zA-Z0-9-]*:kms:[a-z0-9-]+:[0-9]{12}:key/[a-zA-Z0-9-]+$" + } + }, + "com.amazonaws.s3control#NonEmptyMaxLength1024String": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + } + } + }, + "com.amazonaws.s3control#NonEmptyMaxLength1024StringList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String" + } + }, + "com.amazonaws.s3control#NonEmptyMaxLength2048String": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + } + } + }, + "com.amazonaws.s3control#NonEmptyMaxLength256String": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 256 + } + } + }, + "com.amazonaws.s3control#NonEmptyMaxLength64String": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + } + } + }, + "com.amazonaws.s3control#NoncurrentVersionCount": { + "type": "integer", + "traits": { + "smithy.api#default": 0 + } + }, + "com.amazonaws.s3control#NoncurrentVersionExpiration": { + "type": "structure", + "members": { + "NoncurrentDays": { + "target": "com.amazonaws.s3control#Days", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

Specifies the number of days an object is noncurrent before Amazon S3 can perform the\n associated action. For information about the noncurrent days calculations, see How\n Amazon S3 Calculates When an Object Became Noncurrent in the\n Amazon S3 User Guide.

" + } + }, + "NewerNoncurrentVersions": { + "target": "com.amazonaws.s3control#NoncurrentVersionCount", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Specifies how many noncurrent versions S3 on Outposts will retain. If there are this many\n more recent noncurrent versions, S3 on Outposts will take the associated action. For more\n information about noncurrent versions, see Lifecycle configuration\n elements in the Amazon S3 User Guide.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The container of the noncurrent version expiration.

" + } + }, + "com.amazonaws.s3control#NoncurrentVersionTransition": { + "type": "structure", + "members": { + "NoncurrentDays": { + "target": "com.amazonaws.s3control#Days", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

Specifies the number of days an object is noncurrent before Amazon S3 can perform the\n associated action. For information about the noncurrent days calculations, see How\n Amazon S3 Calculates How Long an Object Has Been Noncurrent in the\n Amazon S3 User Guide.

" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3control#TransitionStorageClass", + "traits": { + "smithy.api#documentation": "

The class of storage used to store the object.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The container for the noncurrent version transition.

" + } + }, + "com.amazonaws.s3control#NoncurrentVersionTransitionList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#NoncurrentVersionTransition", + "traits": { + "smithy.api#xmlName": "NoncurrentVersionTransition" + } + } + }, + "com.amazonaws.s3control#NotFoundException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.s3control#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.s3control#NotSSEFilter": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

A filter that returns objects that aren't server-side encrypted.

" + } + }, + "com.amazonaws.s3control#ObjectAgeValue": { + "type": "integer", + "traits": { + "smithy.api#default": 0 + } + }, + "com.amazonaws.s3control#ObjectCreationTime": { + "type": "timestamp" + }, + "com.amazonaws.s3control#ObjectEncryptionFilter": { + "type": "union", + "members": { + "SSES3": { + "target": "com.amazonaws.s3control#SSES3Filter", + "traits": { + "smithy.api#documentation": "

Filters for objects that are encrypted by server-side encryption with Amazon S3 managed keys (SSE-S3).

", + "smithy.api#xmlName": "SSE-S3" + } + }, + "SSEKMS": { + "target": "com.amazonaws.s3control#SSEKMSFilter", + "traits": { + "smithy.api#documentation": "

Filters for objects that are encrypted by server-side encryption with Amazon Web Services Key Management Service (KMS) keys (SSE-KMS).

", + "smithy.api#xmlName": "SSE-KMS" + } + }, + "DSSEKMS": { + "target": "com.amazonaws.s3control#DSSEKMSFilter", + "traits": { + "smithy.api#documentation": "

Filters for objects that are encrypted by dual-layer server-side encryption with Amazon Web Services Key Management\n Service (KMS) keys (DSSE-KMS).

", + "smithy.api#xmlName": "DSSE-KMS" + } + }, + "SSEC": { + "target": "com.amazonaws.s3control#SSECFilter", + "traits": { + "smithy.api#documentation": "

Filters for objects that are encrypted by server-side encryption with customer-provided keys (SSE-C).

", + "smithy.api#xmlName": "SSE-C" + } + }, + "NOTSSE": { + "target": "com.amazonaws.s3control#NotSSEFilter", + "traits": { + "smithy.api#documentation": "

Filters for objects that are not encrypted by server-side encryption.

", + "smithy.api#xmlName": "NOT-SSE" + } + } + }, + "traits": { + "smithy.api#documentation": "

An optional filter for the \n S3JobManifestGenerator that identifies the subset of objects by encryption type. \n This filter is used to create an object list for S3 Batch Operations jobs. If provided, this filter will generate an object list \n that only includes objects with the specified encryption type.

" + } + }, + "com.amazonaws.s3control#ObjectEncryptionFilterList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#ObjectEncryptionFilter", + "traits": { + "smithy.api#xmlName": "ObjectEncryption" + } + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1 + } + } + }, + "com.amazonaws.s3control#ObjectLambdaAccessPoint": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the Object Lambda Access Point.

", + "smithy.api#required": {} + } + }, + "ObjectLambdaAccessPointArn": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointArn", + "traits": { + "smithy.api#documentation": "

Specifies the ARN for the Object Lambda Access Point.

" + } + }, + "Alias": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointAlias", + "traits": { + "smithy.api#documentation": "

The alias of the Object Lambda Access Point.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An access point with an attached Lambda function used to access transformed data from an Amazon S3\n bucket.

" + } + }, + "com.amazonaws.s3control#ObjectLambdaAccessPointAlias": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointAliasValue", + "traits": { + "smithy.api#documentation": "

The alias value of the Object Lambda Access Point.

" + } + }, + "Status": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointAliasStatus", + "traits": { + "smithy.api#documentation": "

The status of the Object Lambda Access Point alias. If the status is PROVISIONING, the Object Lambda Access Point\n is provisioning the alias and the alias is not ready for use yet. If the status is\n READY, the Object Lambda Access Point alias is successfully provisioned and ready for\n use.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The alias of an Object Lambda Access Point. For more information, see How to use a\n bucket-style alias for your S3 bucket Object Lambda Access Point.

" + } + }, + "com.amazonaws.s3control#ObjectLambdaAccessPointAliasStatus": { + "type": "enum", + "members": { + "PROVISIONING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PROVISIONING" + } + }, + "READY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "READY" + } + } + }, + "traits": { + "smithy.api#length": { + "min": 2, + "max": 16 + } + } + }, + "com.amazonaws.s3control#ObjectLambdaAccessPointAliasValue": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 3, + "max": 63 + }, + "smithy.api#pattern": "^[0-9a-z\\\\-]{3,63}$" + } + }, + "com.amazonaws.s3control#ObjectLambdaAccessPointArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^arn:[^:]+:s3-object-lambda:[^:]*:\\d{12}:accesspoint/" + } + }, + "com.amazonaws.s3control#ObjectLambdaAccessPointList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPoint", + "traits": { + "smithy.api#xmlName": "ObjectLambdaAccessPoint" + } + } + }, + "com.amazonaws.s3control#ObjectLambdaAccessPointName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 3, + "max": 45 + }, + "smithy.api#pattern": "^[a-z0-9]([a-z0-9\\-]*[a-z0-9])?$" + } + }, + "com.amazonaws.s3control#ObjectLambdaAllowedFeature": { + "type": "enum", + "members": { + "GetObjectRange": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GetObject-Range" + } + }, + "GetObjectPartNumber": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GetObject-PartNumber" + } + }, + "HeadObjectRange": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HeadObject-Range" + } + }, + "HeadObjectPartNumber": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HeadObject-PartNumber" + } + } + } + }, + "com.amazonaws.s3control#ObjectLambdaAllowedFeaturesList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#ObjectLambdaAllowedFeature", + "traits": { + "smithy.api#xmlName": "AllowedFeature" + } + } + }, + "com.amazonaws.s3control#ObjectLambdaConfiguration": { + "type": "structure", + "members": { + "SupportingAccessPoint": { + "target": "com.amazonaws.s3control#ObjectLambdaSupportingAccessPointArn", + "traits": { + "smithy.api#documentation": "

Standard access point associated with the Object Lambda Access Point.

", + "smithy.api#required": {} + } + }, + "CloudWatchMetricsEnabled": { + "target": "com.amazonaws.s3control#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

A container for whether the CloudWatch metrics configuration is enabled.

" + } + }, + "AllowedFeatures": { + "target": "com.amazonaws.s3control#ObjectLambdaAllowedFeaturesList", + "traits": { + "smithy.api#documentation": "

A container for allowed features. Valid inputs are GetObject-Range,\n GetObject-PartNumber, HeadObject-Range, and\n HeadObject-PartNumber.

" + } + }, + "TransformationConfigurations": { + "target": "com.amazonaws.s3control#ObjectLambdaTransformationConfigurationsList", + "traits": { + "smithy.api#documentation": "

A container for transformation configurations for an Object Lambda Access Point.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A configuration used when creating an Object Lambda Access Point.

" + } + }, + "com.amazonaws.s3control#ObjectLambdaContentTransformation": { + "type": "union", + "members": { + "AwsLambda": { + "target": "com.amazonaws.s3control#AwsLambdaTransformation", + "traits": { + "smithy.api#documentation": "

A container for an Lambda function.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for AwsLambdaTransformation.

" + } + }, + "com.amazonaws.s3control#ObjectLambdaPolicy": { + "type": "string" + }, + "com.amazonaws.s3control#ObjectLambdaSupportingAccessPointArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^arn:[^:]+:s3:[^:]*:\\d{12}:accesspoint/" + } + }, + "com.amazonaws.s3control#ObjectLambdaTransformationConfiguration": { + "type": "structure", + "members": { + "Actions": { + "target": "com.amazonaws.s3control#ObjectLambdaTransformationConfigurationActionsList", + "traits": { + "smithy.api#documentation": "

A container for the action of an Object Lambda Access Point configuration. Valid inputs are\n GetObject, ListObjects, HeadObject, and\n ListObjectsV2.

", + "smithy.api#required": {} + } + }, + "ContentTransformation": { + "target": "com.amazonaws.s3control#ObjectLambdaContentTransformation", + "traits": { + "smithy.api#documentation": "

A container for the content transformation of an Object Lambda Access Point configuration.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A configuration used when creating an Object Lambda Access Point transformation.

" + } + }, + "com.amazonaws.s3control#ObjectLambdaTransformationConfigurationAction": { + "type": "enum", + "members": { + "GetObject": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GetObject" + } + }, + "HeadObject": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HeadObject" + } + }, + "ListObjects": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ListObjects" + } + }, + "ListObjectsV2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ListObjectsV2" + } + } + } + }, + "com.amazonaws.s3control#ObjectLambdaTransformationConfigurationActionsList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#ObjectLambdaTransformationConfigurationAction", + "traits": { + "smithy.api#xmlName": "Action" + } + } + }, + "com.amazonaws.s3control#ObjectLambdaTransformationConfigurationsList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#ObjectLambdaTransformationConfiguration", + "traits": { + "smithy.api#xmlName": "TransformationConfiguration" + } + } + }, + "com.amazonaws.s3control#ObjectLockEnabledForBucket": { + "type": "boolean", + "traits": { + "smithy.api#default": false + } + }, + "com.amazonaws.s3control#ObjectSizeGreaterThanBytes": { + "type": "long", + "traits": { + "smithy.api#default": 0 + } + }, + "com.amazonaws.s3control#ObjectSizeLessThanBytes": { + "type": "long", + "traits": { + "smithy.api#default": 0 + } + }, + "com.amazonaws.s3control#ObjectSizeValue": { + "type": "long", + "traits": { + "smithy.api#default": 0 + } + }, + "com.amazonaws.s3control#OperationName": { + "type": "enum", + "members": { + "LambdaInvoke": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LambdaInvoke" + } + }, + "S3PutObjectCopy": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "S3PutObjectCopy" + } + }, + "S3PutObjectAcl": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "S3PutObjectAcl" + } + }, + "S3PutObjectTagging": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "S3PutObjectTagging" + } + }, + "S3DeleteObjectTagging": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "S3DeleteObjectTagging" + } + }, + "S3InitiateRestoreObject": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "S3InitiateRestoreObject" + } + }, + "S3PutObjectLegalHold": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "S3PutObjectLegalHold" + } + }, + "S3PutObjectRetention": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "S3PutObjectRetention" + } + }, + "S3ReplicateObject": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "S3ReplicateObject" + } + }, + "S3ComputeObjectChecksum": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "S3ComputeObjectChecksum" + } + } + } + }, + "com.amazonaws.s3control#Organization": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 12, + "max": 34 + }, + "smithy.api#pattern": "^o-[a-z0-9]{10,32}$" + } + }, + "com.amazonaws.s3control#OutputSchemaVersion": { + "type": "enum", + "members": { + "V_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "V_1" + } + } + } + }, + "com.amazonaws.s3control#OwnerOverride": { + "type": "enum", + "members": { + "Destination": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Destination" + } + } + } + }, + "com.amazonaws.s3control#Permission": { + "type": "enum", + "members": { + "READ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "READ" + } + }, + "WRITE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WRITE" + } + }, + "READWRITE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "READWRITE" + } + } + } + }, + "com.amazonaws.s3control#Policy": { + "type": "string" + }, + "com.amazonaws.s3control#PolicyDocument": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 350000 + } + } + }, + "com.amazonaws.s3control#PolicyStatus": { + "type": "structure", + "members": { + "IsPublic": { + "target": "com.amazonaws.s3control#IsPublic", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

", + "smithy.api#xmlName": "IsPublic" + } + } + }, + "traits": { + "smithy.api#documentation": "

Indicates whether this access point policy is public. For more information about how Amazon S3\n evaluates policies to determine whether they are public, see The Meaning of \"Public\" in the Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3control#Prefix": { + "type": "string" + }, + "com.amazonaws.s3control#PrefixLevel": { + "type": "structure", + "members": { + "StorageMetrics": { + "target": "com.amazonaws.s3control#PrefixLevelStorageMetrics", + "traits": { + "smithy.api#documentation": "

A container for the prefix-level storage metrics for S3 Storage Lens.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for the prefix-level configuration.

" + } + }, + "com.amazonaws.s3control#PrefixLevelStorageMetrics": { + "type": "structure", + "members": { + "IsEnabled": { + "target": "com.amazonaws.s3control#IsEnabled", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

A container for whether prefix-level storage metrics are enabled.

" + } + }, + "SelectionCriteria": { + "target": "com.amazonaws.s3control#SelectionCriteria" + } + }, + "traits": { + "smithy.api#documentation": "

A container for the prefix-level storage metrics for S3 Storage Lens.

" + } + }, + "com.amazonaws.s3control#PrefixesList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#Prefix", + "traits": { + "smithy.api#xmlName": "Prefix" + } + } + }, + "com.amazonaws.s3control#Priority": { + "type": "integer", + "traits": { + "smithy.api#default": 0 + } + }, + "com.amazonaws.s3control#Privilege": { + "type": "enum", + "members": { + "Minimal": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Minimal" + } + }, + "Default": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Default" + } + } + } + }, + "com.amazonaws.s3control#ProposedMultiRegionAccessPointPolicy": { + "type": "structure", + "members": { + "Policy": { + "target": "com.amazonaws.s3control#Policy", + "traits": { + "smithy.api#documentation": "

The details of the proposed policy.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The proposed access control policy for the Multi-Region Access Point.

\n

When you update the policy, the update is first listed as the proposed policy. After the\n update is finished and all Regions have been updated, the proposed policy is listed as the\n established policy. If both policies have the same version number, the proposed policy is\n the established policy.

" + } + }, + "com.amazonaws.s3control#PublicAccessBlockConfiguration": { + "type": "structure", + "members": { + "BlockPublicAcls": { + "target": "com.amazonaws.s3control#Setting", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Specifies whether Amazon S3 should block public access control lists (ACLs) for buckets in\n this account. Setting this element to TRUE causes the following\n behavior:

\n
    \n
  • \n

    \n PutBucketAcl and PutObjectAcl calls fail if the\n specified ACL is public.

    \n
  • \n
  • \n

    PUT Object calls fail if the request includes a public ACL.

    \n
  • \n
  • \n

    PUT Bucket calls fail if the request includes a public ACL.

    \n
  • \n
\n

Enabling this setting doesn't affect existing policies or ACLs.

\n

This property is not supported for Amazon S3 on Outposts.

", + "smithy.api#xmlName": "BlockPublicAcls" + } + }, + "IgnorePublicAcls": { + "target": "com.amazonaws.s3control#Setting", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Specifies whether Amazon S3 should ignore public ACLs for buckets in this account. Setting\n this element to TRUE causes Amazon S3 to ignore all public ACLs on buckets in this\n account and any objects that they contain.

\n

Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't\n prevent new public ACLs from being set.

\n

This property is not supported for Amazon S3 on Outposts.

", + "smithy.api#xmlName": "IgnorePublicAcls" + } + }, + "BlockPublicPolicy": { + "target": "com.amazonaws.s3control#Setting", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Specifies whether Amazon S3 should block public bucket policies for buckets in this account.\n Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy\n if the specified bucket policy allows public access.

\n

Enabling this setting doesn't affect existing bucket policies.

\n

This property is not supported for Amazon S3 on Outposts.

", + "smithy.api#xmlName": "BlockPublicPolicy" + } + }, + "RestrictPublicBuckets": { + "target": "com.amazonaws.s3control#Setting", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Specifies whether Amazon S3 should restrict public bucket policies for buckets in this\n account. Setting this element to TRUE restricts access to buckets with public\n policies to only Amazon Web Services service principals and authorized users within this\n account.

\n

Enabling this setting doesn't affect previously stored bucket policies, except that\n public and cross-account access within any public bucket policy, including non-public\n delegation to specific accounts, is blocked.

\n

This property is not supported for Amazon S3 on Outposts.

", + "smithy.api#xmlName": "RestrictPublicBuckets" + } + } + }, + "traits": { + "smithy.api#documentation": "

The PublicAccessBlock configuration that you want to apply to this Amazon S3\n account. You can enable the configuration options in any combination. For more information\n about when Amazon S3 considers a bucket or object public, see The Meaning of \"Public\" in the Amazon S3 User Guide.

\n

This data type is not supported for Amazon S3 on Outposts.

" + } + }, + "com.amazonaws.s3control#PublicAccessBlockEnabled": { + "type": "boolean", + "traits": { + "smithy.api#default": false + } + }, + "com.amazonaws.s3control#PutAccessGrantsInstanceResourcePolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#PutAccessGrantsInstanceResourcePolicyRequest" + }, + "output": { + "target": "com.amazonaws.s3control#PutAccessGrantsInstanceResourcePolicyResult" + }, + "traits": { + "smithy.api#documentation": "

Updates the resource policy of the S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:PutAccessGrantsInstanceResourcePolicy\n permission to use this operation.

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/accessgrantsinstance/resourcepolicy", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#PutAccessGrantsInstanceResourcePolicyRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Policy": { + "target": "com.amazonaws.s3control#PolicyDocument", + "traits": { + "smithy.api#documentation": "

The resource policy of the S3 Access Grants instance that you are updating.

", + "smithy.api#required": {} + } + }, + "Organization": { + "target": "com.amazonaws.s3control#Organization", + "traits": { + "smithy.api#documentation": "

The Organization of the resource policy of the S3 Access Grants instance.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#PutAccessGrantsInstanceResourcePolicyResult": { + "type": "structure", + "members": { + "Policy": { + "target": "com.amazonaws.s3control#PolicyDocument", + "traits": { + "smithy.api#documentation": "

The updated resource policy of the S3 Access Grants instance.

" + } + }, + "Organization": { + "target": "com.amazonaws.s3control#Organization", + "traits": { + "smithy.api#documentation": "

The Organization of the resource policy of the S3 Access Grants instance.

" + } + }, + "CreatedAt": { + "target": "com.amazonaws.s3control#CreationTimestamp", + "traits": { + "smithy.api#documentation": "

The date and time when you created the S3 Access Grants instance resource policy.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#PutAccessPointConfigurationForObjectLambda": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#PutAccessPointConfigurationForObjectLambdaRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Replaces configuration for an Object Lambda Access Point.

\n

The following actions are related to\n PutAccessPointConfigurationForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/accesspointforobjectlambda/{Name}/configuration", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#PutAccessPointConfigurationForObjectLambdaRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the Object Lambda Access Point.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Configuration": { + "target": "com.amazonaws.s3control#ObjectLambdaConfiguration", + "traits": { + "smithy.api#documentation": "

Object Lambda Access Point configuration document.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#PutAccessPointPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#PutAccessPointPolicyRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Associates an access policy with the specified access point. Each access point can have only one policy,\n so a request made to this API replaces any existing policy associated with the specified\n access point.

\n

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to PutAccessPointPolicy:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/accesspoint/{Name}/policy", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#PutAccessPointPolicyForObjectLambda": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#PutAccessPointPolicyForObjectLambdaRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Creates or replaces resource policy for an Object Lambda Access Point. For an example policy, see Creating Object Lambda Access Points in the Amazon S3 User Guide.

\n

The following actions are related to\n PutAccessPointPolicyForObjectLambda:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/accesspointforobjectlambda/{Name}/policy", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#PutAccessPointPolicyForObjectLambdaRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID for the account that owns the specified Object Lambda Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#ObjectLambdaAccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the Object Lambda Access Point.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Policy": { + "target": "com.amazonaws.s3control#ObjectLambdaPolicy", + "traits": { + "smithy.api#documentation": "

Object Lambda Access Point resource policy document.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#PutAccessPointPolicyRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID for owner of the bucket associated with the specified access point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#AccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the access point that you want to associate with the specified policy.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the access point accessed in the format arn:aws:s3-outposts:::outpost//accesspoint/. For example, to access the access point reports-ap through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/accesspoint/reports-ap. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccessPointName" + } + } + }, + "Policy": { + "target": "com.amazonaws.s3control#Policy", + "traits": { + "smithy.api#documentation": "

The policy that you want to apply to the specified access point. For more information about access point\n policies, see Managing data access with Amazon S3\n access points or Managing access to\n shared datasets in directory buckets with access points in the\n Amazon S3 User Guide.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#PutAccessPointScope": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#PutAccessPointScopeRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Creates or replaces the access point scope for a directory bucket. You can use the access point\n scope to restrict access to specific prefixes, API operations, or a combination of\n both.

\n \n

You can specify any amount of prefixes, but the total length of characters of all\n prefixes must be less than 256 bytes in size.

\n
\n

To use this operation, you must have the permission to perform the\n s3express:PutAccessPointScope\n action.

\n

For information about REST API errors, see REST error responses.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/accesspoint/{Name}/scope", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + }, + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#PutAccessPointScopeRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID that owns the access point with scope that you want to create or replace.\n

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Name": { + "target": "com.amazonaws.s3control#AccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the access point with the scope that you want to create or replace.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccessPointName" + } + } + }, + "Scope": { + "target": "com.amazonaws.s3control#Scope", + "traits": { + "smithy.api#documentation": "

Object prefixes, API operations, or a combination of both.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#PutBucketLifecycleConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#PutBucketLifecycleConfigurationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This action puts a lifecycle configuration to an Amazon S3 on Outposts bucket. To put a\n lifecycle configuration to an S3 bucket, see PutBucketLifecycleConfiguration in the Amazon S3 API Reference.\n

\n
\n

Creates a new lifecycle configuration for the S3 on Outposts bucket or replaces an\n existing lifecycle configuration. Outposts buckets only support lifecycle configurations\n that delete/expire objects after a certain period of time and abort incomplete multipart\n uploads.

\n

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to\n PutBucketLifecycleConfiguration:

\n ", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/bucket/{Bucket}/lifecycleconfiguration", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#PutBucketLifecycleConfigurationRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket for which to set the configuration.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "LifecycleConfiguration": { + "target": "com.amazonaws.s3control#LifecycleConfiguration", + "traits": { + "smithy.api#documentation": "

Container for lifecycle rules. You can add as many as 1,000 rules.

", + "smithy.api#httpPayload": {}, + "smithy.api#xmlName": "LifecycleConfiguration" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#PutBucketPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#PutBucketPolicyRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This action puts a bucket policy to an Amazon S3 on Outposts bucket. To put a policy on an\n S3 bucket, see PutBucketPolicy in the\n Amazon S3 API Reference.

\n
\n

Applies an Amazon S3 bucket policy to an Outposts bucket. For more information, see Using\n Amazon S3 on Outposts in the Amazon S3 User Guide.

\n

If you are using an identity other than the root user of the Amazon Web Services account that owns the\n Outposts bucket, the calling identity must have the PutBucketPolicy\n permissions on the specified Outposts bucket and belong to the bucket owner's account in\n order to use this action.

\n

If you don't have PutBucketPolicy permissions, Amazon S3 returns a 403\n Access Denied error. If you have the correct permissions, but you're not using an\n identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not\n Allowed error.

\n \n

As a security precaution, the root user of the Amazon Web Services account that owns a bucket can\n always use this action, even if the policy explicitly denies the root user the ability\n to perform this action.

\n
\n

For more information about bucket policies, see Using Bucket Policies and User\n Policies.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to PutBucketPolicy:

\n ", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/bucket/{Bucket}/policy", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#PutBucketPolicyRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

Specifies the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ConfirmRemoveSelfBucketAccess": { + "target": "com.amazonaws.s3control#ConfirmRemoveSelfBucketAccess", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Set this parameter to true to confirm that you want to remove your permissions to change\n this bucket policy in the future.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
", + "smithy.api#httpHeader": "x-amz-confirm-remove-self-bucket-access" + } + }, + "Policy": { + "target": "com.amazonaws.s3control#Policy", + "traits": { + "smithy.api#documentation": "

The bucket policy as a JSON document.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#PutBucketReplication": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#PutBucketReplicationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This action creates an Amazon S3 on Outposts bucket's replication configuration. To create\n an S3 bucket's replication configuration, see PutBucketReplication\n in the Amazon S3 API Reference.

\n
\n

Creates a replication configuration or replaces an existing one. For information about\n S3 replication on Outposts configuration, see Replicating objects for\n S3 on Outposts in the Amazon S3 User Guide.

\n \n

It can take a while to propagate PUT or DELETE requests for\n a replication configuration to all S3 on Outposts systems. Therefore, the replication\n configuration that's returned by a GET request soon after a\n PUT or DELETE request might return a more recent result\n than what's on the Outpost. If an Outpost is offline, the delay in updating the\n replication configuration on that Outpost can be significant.

\n
\n

Specify the replication configuration in the request body. In the replication\n configuration, you provide the following information:

\n
    \n
  • \n

    The name of the destination bucket or buckets where you want S3 on Outposts to\n replicate objects

    \n
  • \n
  • \n

    The Identity and Access Management (IAM) role that S3 on Outposts can assume to replicate objects on\n your behalf

    \n
  • \n
  • \n

    Other relevant information, such as replication rules

    \n
  • \n
\n

A replication configuration must include at least one rule and can contain a maximum of\n 100. Each rule identifies a subset of objects to replicate by filtering the objects in the\n source Outposts bucket. To choose additional subsets of objects to replicate, add a rule\n for each subset.

\n

To specify a subset of the objects in the source Outposts bucket to apply a replication\n rule to, add the Filter element as a child of the Rule element.\n You can filter objects based on an object key prefix, one or more object tags, or both.\n When you add the Filter element in the configuration, you must also add the\n following elements: DeleteMarkerReplication, Status, and\n Priority.

\n

Using PutBucketReplication on Outposts requires that both the source and\n destination buckets must have versioning enabled. For information about enabling versioning\n on a bucket, see Managing S3 Versioning\n for your S3 on Outposts bucket.

\n

For information about S3 on Outposts replication failure reasons, see Replication failure reasons in the Amazon S3 User Guide.

\n

\n Handling Replication of Encrypted Objects\n

\n

Outposts buckets are encrypted at all times. All the objects in the source Outposts\n bucket are encrypted and can be replicated. Also, all the replicas in the destination\n Outposts bucket are encrypted with the same encryption key as the objects in the source\n Outposts bucket.

\n

\n Permissions\n

\n

To create a PutBucketReplication request, you must have\n s3-outposts:PutReplicationConfiguration permissions for the bucket. The\n Outposts bucket owner has this permission by default and can grant it to others. For more\n information about permissions, see Setting up IAM with\n S3 on Outposts and Managing access to\n S3 on Outposts buckets.

\n \n

To perform this operation, the user or role must also have the\n iam:CreateRole and iam:PassRole permissions. For more\n information, see Granting a user permissions to\n pass a role to an Amazon Web Services service.

\n
\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following operations are related to PutBucketReplication:

\n ", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/bucket/{Bucket}/replication", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#PutBucketReplicationRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

Specifies the S3 on Outposts bucket to set the configuration for.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ReplicationConfiguration": { + "target": "com.amazonaws.s3control#ReplicationConfiguration", + "traits": { + "smithy.api#documentation": "

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "ReplicationConfiguration" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#PutBucketTagging": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#PutBucketTaggingRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This action puts tags on an Amazon S3 on Outposts bucket. To put tags on an S3 bucket, see\n PutBucketTagging in the Amazon S3 API Reference.

\n
\n

Sets the tags for an S3 on Outposts bucket. For more information, see Using\n Amazon S3 on Outposts in the Amazon S3 User Guide.

\n

Use tags to organize your Amazon Web Services bill to reflect your own cost structure. To do this,\n sign up to get your Amazon Web Services account bill with tag key values included. Then, to see the cost\n of combined resources, organize your billing information according to resources with the\n same tag key values. For example, you can tag several resources with a specific application\n name, and then organize your billing information to see the total cost of that application\n across several services. For more information, see Cost allocation and\n tagging.

\n \n

Within a bucket, if you add a tag that has the same key as an existing tag, the new\n value overwrites the old value. For more information, see Using cost allocation in Amazon S3\n bucket tags.

\n
\n

To use this action, you must have permissions to perform the\n s3-outposts:PutBucketTagging action. The Outposts bucket owner has this\n permission by default and can grant this permission to others. For more information about\n permissions, see Permissions Related to Bucket Subresource Operations and Managing\n access permissions to your Amazon S3 resources.

\n

\n PutBucketTagging has the following special errors:

\n
    \n
  • \n

    Error code: InvalidTagError\n

    \n \n
  • \n
  • \n

    Error code: MalformedXMLError\n

    \n
      \n
    • \n

      Description: The XML provided does not match the schema.

      \n
    • \n
    \n
  • \n
  • \n

    Error code: OperationAbortedError \n

    \n
      \n
    • \n

      Description: A conflicting conditional action is currently in progress\n against this resource. Try again.

      \n
    • \n
    \n
  • \n
  • \n

    Error code: InternalError\n

    \n
      \n
    • \n

      Description: The service was unable to apply the provided tag to the\n bucket.

      \n
    • \n
    \n
  • \n
\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following actions are related to PutBucketTagging:

\n ", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/bucket/{Bucket}/tagging", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#PutBucketTaggingRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the Outposts bucket.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the bucket.

\n

For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.

\n

For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format arn:aws:s3-outposts:::outpost//bucket/. For example, to access the bucket reports through Outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports. The value must be URL encoded.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Tagging": { + "target": "com.amazonaws.s3control#Tagging", + "traits": { + "smithy.api#documentation": "

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "Tagging" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#PutBucketVersioning": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#PutBucketVersioningRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation sets the versioning state\n for\n S3 on Outposts\n buckets\n only. To set the versioning state for an S3 bucket, see PutBucketVersioning in the Amazon S3 API Reference.

\n
\n

Sets the versioning state for an S3 on Outposts bucket. With\n S3\n Versioning,\n you can save multiple distinct copies of your\n objects\n and recover from unintended user actions and application failures.

\n

You can set the versioning state to one of the following:

\n
    \n
  • \n

    \n Enabled - Enables versioning for the objects in\n the bucket. All objects added to the bucket receive a unique version ID.

    \n
  • \n
  • \n

    \n Suspended - Suspends versioning for the objects\n in the bucket. All objects added to the bucket receive the version ID\n null.

    \n
  • \n
\n

If you've never set versioning on your bucket, it has no versioning state. In that case,\n a \n GetBucketVersioning request does not return a versioning state value.

\n

When you enable S3 Versioning, for each object in your bucket, you have a current\n version and zero or more noncurrent versions. You can configure your bucket S3 Lifecycle\n rules to expire noncurrent versions after a specified time period. For more information,\n see Creating and managing\n a lifecycle configuration for your S3 on Outposts bucket in the Amazon S3\n User Guide.

\n

If you have an object expiration lifecycle configuration in your non-versioned bucket\n and you want to maintain the same permanent delete behavior when you enable versioning, you\n must add a noncurrent expiration policy. The noncurrent expiration lifecycle configuration\n will manage the deletes of the noncurrent object versions in the version-enabled bucket.\n For more information, see Versioning in the Amazon S3\n User Guide.

\n

All Amazon S3 on Outposts REST API requests for this action require an additional parameter of x-amz-outpost-id to be passed with the request. In addition, you must use an S3 on Outposts endpoint hostname prefix instead of s3-control. For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on Outposts endpoint hostname prefix and the x-amz-outpost-id derived by using the access point ARN, see the Examples section.

\n

The following operations are related to PutBucketVersioning for\n S3 on Outposts.

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/bucket/{Bucket}/versioning", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#PutBucketVersioningRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 on Outposts bucket.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

The S3 on Outposts bucket to set the versioning state for.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "MFA": { + "target": "com.amazonaws.s3control#MFA", + "traits": { + "smithy.api#documentation": "

The concatenation of the authentication device's serial number, a space, and the value\n that is displayed on your authentication device.

", + "smithy.api#httpHeader": "x-amz-mfa" + } + }, + "VersioningConfiguration": { + "target": "com.amazonaws.s3control#VersioningConfiguration", + "traits": { + "smithy.api#documentation": "

The root-level tag for the VersioningConfiguration parameters.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "VersioningConfiguration" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#PutJobTagging": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#PutJobTaggingRequest" + }, + "output": { + "target": "com.amazonaws.s3control#PutJobTaggingResult" + }, + "errors": [ + { + "target": "com.amazonaws.s3control#InternalServiceException" + }, + { + "target": "com.amazonaws.s3control#NotFoundException" + }, + { + "target": "com.amazonaws.s3control#TooManyRequestsException" + }, + { + "target": "com.amazonaws.s3control#TooManyTagsException" + } + ], + "traits": { + "smithy.api#documentation": "

Sets the supplied tag-set on an S3 Batch Operations job.

\n

A tag is a key-value pair. You can associate S3 Batch Operations tags with any job by sending\n a PUT request against the tagging subresource that is associated with the job. To modify\n the existing tag set, you can either replace the existing tag set entirely, or make changes\n within the existing tag set by retrieving the existing tag set using GetJobTagging, modify that tag set, and use this operation to replace the tag\n set with the one you modified. For more information, see Controlling\n access and labeling jobs using tags in the Amazon S3 User Guide.

\n \n
    \n
  • \n

    If you send this request with an empty tag set, Amazon S3 deletes the existing\n tag set on the Batch Operations job. If you use this method, you are charged for a Tier\n 1 Request (PUT). For more information, see Amazon S3 pricing.

    \n
  • \n
  • \n

    For deleting existing tags for your Batch Operations job, a DeleteJobTagging request is preferred because it achieves the same\n result without incurring charges.

    \n
  • \n
  • \n

    A few things to consider about using tags:

    \n
      \n
    • \n

      Amazon S3 limits the maximum number of tags to 50 tags per job.

      \n
    • \n
    • \n

      You can associate up to 50 tags with a job as long as they have unique\n tag keys.

      \n
    • \n
    • \n

      A tag key can be up to 128 Unicode characters in length, and tag values\n can be up to 256 Unicode characters in length.

      \n
    • \n
    • \n

      The key and values are case sensitive.

      \n
    • \n
    • \n

      For tagging-related restrictions related to characters and encodings, see\n User-Defined Tag Restrictions in the Billing and Cost Management User Guide.

      \n
    • \n
    \n
  • \n
\n
\n
\n
Permissions
\n
\n

To use the PutJobTagging operation, you must have permission to\n perform the s3:PutJobTagging action.

\n
\n
\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/jobs/{JobId}/tagging", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#PutJobTaggingRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "JobId": { + "target": "com.amazonaws.s3control#JobId", + "traits": { + "smithy.api#documentation": "

The ID for the S3 Batch Operations job whose tags you want to replace.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Tags": { + "target": "com.amazonaws.s3control#S3TagSet", + "traits": { + "smithy.api#documentation": "

The set of tags to associate with the S3 Batch Operations job.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#PutJobTaggingResult": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#PutMultiRegionAccessPointPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#PutMultiRegionAccessPointPolicyRequest" + }, + "output": { + "target": "com.amazonaws.s3control#PutMultiRegionAccessPointPolicyResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Associates an access control policy with the specified Multi-Region Access Point. Each Multi-Region Access Point can have only\n one policy, so a request made to this action replaces any existing policy that is\n associated with the specified Multi-Region Access Point.

\n

This action will always be routed to the US West (Oregon) Region. For more information\n about the restrictions around working with Multi-Region Access Points, see Multi-Region Access Point\n restrictions and limitations in the Amazon S3 User Guide.

\n

The following actions are related to\n PutMultiRegionAccessPointPolicy:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "POST", + "uri": "/v20180820/async-requests/mrap/put-policy", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#PutMultiRegionAccessPointPolicyInput": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointName", + "traits": { + "smithy.api#documentation": "

The name of the Multi-Region Access Point associated with the request.

", + "smithy.api#required": {} + } + }, + "Policy": { + "target": "com.amazonaws.s3control#Policy", + "traits": { + "smithy.api#documentation": "

The policy details for the PutMultiRegionAccessPoint request.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for the information associated with a PutMultiRegionAccessPoint request.

" + } + }, + "com.amazonaws.s3control#PutMultiRegionAccessPointPolicyRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "ClientToken": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointClientToken", + "traits": { + "smithy.api#documentation": "

An idempotency token used to identify the request and guarantee that requests are\n unique.

", + "smithy.api#idempotencyToken": {}, + "smithy.api#required": {} + } + }, + "Details": { + "target": "com.amazonaws.s3control#PutMultiRegionAccessPointPolicyInput", + "traits": { + "smithy.api#documentation": "

A container element containing the details of the policy for the Multi-Region Access Point.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#PutMultiRegionAccessPointPolicyResult": { + "type": "structure", + "members": { + "RequestTokenARN": { + "target": "com.amazonaws.s3control#AsyncRequestTokenARN", + "traits": { + "smithy.api#documentation": "

The request token associated with the request. You can use this token with DescribeMultiRegionAccessPointOperation to determine the status of asynchronous\n requests.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#PutPublicAccessBlock": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#PutPublicAccessBlockRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Creates or modifies the PublicAccessBlock configuration for an\n Amazon Web Services account. For this operation, users must have the\n s3:PutAccountPublicAccessBlock permission. For more information, see \n Using Amazon S3 block public access.

\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/configuration/publicAccessBlock", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#PutPublicAccessBlockRequest": { + "type": "structure", + "members": { + "PublicAccessBlockConfiguration": { + "target": "com.amazonaws.s3control#PublicAccessBlockConfiguration", + "traits": { + "smithy.api#documentation": "

The PublicAccessBlock configuration that you want to apply to the specified\n Amazon Web Services account.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "PublicAccessBlockConfiguration" + } + }, + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID for the Amazon Web Services account whose PublicAccessBlock configuration\n you want to set.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#PutStorageLensConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#PutStorageLensConfigurationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Puts an Amazon S3 Storage Lens configuration. For more information about S3 Storage Lens, see Working with\n Amazon S3 Storage Lens in the Amazon S3 User Guide. For a complete list of S3 Storage Lens metrics, see S3 Storage Lens metrics glossary in the Amazon S3 User Guide.

\n \n

To use this action, you must have permission to perform the\n s3:PutStorageLensConfiguration action. For more information, see Setting permissions to use Amazon S3 Storage Lens in the\n Amazon S3 User Guide.

\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/storagelens/{ConfigId}", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#PutStorageLensConfigurationRequest": { + "type": "structure", + "members": { + "ConfigId": { + "target": "com.amazonaws.s3control#ConfigId", + "traits": { + "smithy.api#documentation": "

The ID of the S3 Storage Lens configuration.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the requester.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "StorageLensConfiguration": { + "target": "com.amazonaws.s3control#StorageLensConfiguration", + "traits": { + "smithy.api#documentation": "

The S3 Storage Lens configuration.

", + "smithy.api#required": {} + } + }, + "Tags": { + "target": "com.amazonaws.s3control#StorageLensTags", + "traits": { + "smithy.api#documentation": "

The tag set of the S3 Storage Lens configuration.

\n \n

You can set up to a maximum of 50 tags.

\n
" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#PutStorageLensConfigurationTagging": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#PutStorageLensConfigurationTaggingRequest" + }, + "output": { + "target": "com.amazonaws.s3control#PutStorageLensConfigurationTaggingResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Put or replace tags on an existing Amazon S3 Storage Lens configuration. For more information\n about S3 Storage Lens, see Assessing your storage activity and usage with Amazon S3 Storage Lens in the\n Amazon S3 User Guide.

\n \n

To use this action, you must have permission to perform the\n s3:PutStorageLensConfigurationTagging action. For more information, see\n Setting permissions to\n use Amazon S3 Storage Lens in the Amazon S3 User Guide.

\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/storagelens/{ConfigId}/tagging", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#PutStorageLensConfigurationTaggingRequest": { + "type": "structure", + "members": { + "ConfigId": { + "target": "com.amazonaws.s3control#ConfigId", + "traits": { + "smithy.api#documentation": "

The ID of the S3 Storage Lens configuration.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the requester.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Tags": { + "target": "com.amazonaws.s3control#StorageLensTags", + "traits": { + "smithy.api#documentation": "

The tag set of the S3 Storage Lens configuration.

\n \n

You can set up to a maximum of 50 tags.

\n
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#PutStorageLensConfigurationTaggingResult": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#Region": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the associated bucket for the Region.

", + "smithy.api#required": {} + } + }, + "BucketAccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID that owns the Amazon S3 bucket that's associated with this\n Multi-Region Access Point.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A Region that supports a Multi-Region Access Point as well as the associated bucket for the Region.

" + } + }, + "com.amazonaws.s3control#RegionCreationList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#Region", + "traits": { + "smithy.api#xmlName": "Region" + } + } + }, + "com.amazonaws.s3control#RegionName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + } + } + }, + "com.amazonaws.s3control#RegionReport": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket.

" + } + }, + "Region": { + "target": "com.amazonaws.s3control#RegionName", + "traits": { + "smithy.api#documentation": "

The name of the Region.

" + } + }, + "BucketAccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID that owns the Amazon S3 bucket that's associated with this\n Multi-Region Access Point.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A combination of a bucket and Region that's part of a Multi-Region Access Point.

" + } + }, + "com.amazonaws.s3control#RegionReportList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#RegionReport", + "traits": { + "smithy.api#xmlName": "Region" + } + } + }, + "com.amazonaws.s3control#RegionalBucket": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3control#BucketName", + "traits": { + "smithy.api#documentation": "

", + "smithy.api#required": {} + } + }, + "BucketArn": { + "target": "com.amazonaws.s3control#S3RegionalBucketArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the regional bucket.

" + } + }, + "PublicAccessBlockEnabled": { + "target": "com.amazonaws.s3control#PublicAccessBlockEnabled", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

", + "smithy.api#required": {} + } + }, + "CreationDate": { + "target": "com.amazonaws.s3control#CreationDate", + "traits": { + "smithy.api#documentation": "

The creation date of the regional bucket

", + "smithy.api#required": {} + } + }, + "OutpostId": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength64String", + "traits": { + "smithy.api#documentation": "

The Outposts ID of the regional bucket.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The container for the regional bucket.

" + } + }, + "com.amazonaws.s3control#RegionalBucketList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#RegionalBucket", + "traits": { + "smithy.api#xmlName": "RegionalBucket" + } + } + }, + "com.amazonaws.s3control#Regions": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#S3AWSRegion", + "traits": { + "smithy.api#xmlName": "Region" + } + } + }, + "com.amazonaws.s3control#ReplicaKmsKeyID": { + "type": "string" + }, + "com.amazonaws.s3control#ReplicaModifications": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3control#ReplicaModificationsStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether S3 on Outposts replicates modifications to object metadata on\n replicas.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A filter that you can use to specify whether replica modification sync is enabled.\n S3 on Outposts replica modification sync can help you keep object metadata synchronized\n between replicas and source objects. By default, S3 on Outposts replicates metadata from the\n source objects to the replicas only. When replica modification sync is enabled,\n S3 on Outposts replicates metadata changes made to the replica copies back to the source\n object, making the replication bidirectional.

\n

To replicate object metadata modifications on replicas, you can specify this element and\n set the Status of this element to Enabled.

\n \n

You must enable replica modification sync on the source and destination buckets to\n replicate replica metadata changes between the source and the replicas.

\n
" + } + }, + "com.amazonaws.s3control#ReplicaModificationsStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.s3control#ReplicationConfiguration": { + "type": "structure", + "members": { + "Role": { + "target": "com.amazonaws.s3control#Role", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that S3 on Outposts assumes\n when replicating objects. For information about S3 replication on Outposts configuration,\n see Setting up\n replication in the Amazon S3 User Guide.

", + "smithy.api#required": {} + } + }, + "Rules": { + "target": "com.amazonaws.s3control#ReplicationRules", + "traits": { + "smithy.api#documentation": "

A container for one or more replication rules. A replication configuration must have at\n least one rule and can contain an array of 100 rules at the most.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for one or more replication rules. A replication configuration must have at\n least one rule and you can add up to 100 rules. The maximum size of a replication\n configuration is 128 KB.

" + } + }, + "com.amazonaws.s3control#ReplicationRule": { + "type": "structure", + "members": { + "ID": { + "target": "com.amazonaws.s3control#ID", + "traits": { + "smithy.api#documentation": "

A unique identifier for the rule. The maximum value is 255 characters.

" + } + }, + "Priority": { + "target": "com.amazonaws.s3control#Priority", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

The priority indicates which rule has precedence whenever two or more replication rules\n conflict. S3 on Outposts attempts to replicate objects according to all replication rules.\n However, if there are two or more rules with the same destination Outposts bucket, then\n objects will be replicated according to the rule with the highest priority. The higher the\n number, the higher the priority.

\n

For more information, see Creating replication\n rules on Outposts in the Amazon S3 User Guide.

" + } + }, + "Prefix": { + "target": "com.amazonaws.s3control#Prefix", + "traits": { + "smithy.api#deprecated": { + "message": "Prefix has been deprecated" + }, + "smithy.api#documentation": "

An object key name prefix that identifies the object or objects to which the rule\n applies. The maximum prefix length is 1,024 characters. To include all objects in an\n Outposts bucket, specify an empty string.

\n \n

When you're using XML requests, you must \nreplace special characters (such as carriage returns) in object keys with their equivalent XML entity codes. \nFor more information, see \n XML-related object key constraints in the Amazon S3 User Guide.

\n
" + } + }, + "Filter": { + "target": "com.amazonaws.s3control#ReplicationRuleFilter", + "traits": { + "smithy.api#documentation": "

A filter that identifies the subset of objects to which the replication rule applies. A\n Filter element must specify exactly one Prefix,\n Tag, or And child element.

" + } + }, + "Status": { + "target": "com.amazonaws.s3control#ReplicationRuleStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether the rule is enabled.

", + "smithy.api#required": {} + } + }, + "SourceSelectionCriteria": { + "target": "com.amazonaws.s3control#SourceSelectionCriteria", + "traits": { + "smithy.api#documentation": "

A container that describes additional filters for identifying the source Outposts\n objects that you want to replicate. You can choose to enable or disable the replication of\n these objects.

" + } + }, + "ExistingObjectReplication": { + "target": "com.amazonaws.s3control#ExistingObjectReplication", + "traits": { + "smithy.api#documentation": "

An optional configuration to replicate existing source bucket objects.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" + } + }, + "Destination": { + "target": "com.amazonaws.s3control#Destination", + "traits": { + "smithy.api#documentation": "

A container for information about the replication destination and its\n configurations.

", + "smithy.api#required": {} + } + }, + "DeleteMarkerReplication": { + "target": "com.amazonaws.s3control#DeleteMarkerReplication", + "traits": { + "smithy.api#documentation": "

Specifies whether S3 on Outposts replicates delete markers. If you specify a\n Filter element in your replication configuration, you must also include a\n DeleteMarkerReplication element. If your Filter includes a\n Tag element, the DeleteMarkerReplication element's\n Status child element must be set to Disabled, because\n S3 on Outposts doesn't support replicating delete markers for tag-based rules.

\n

For more information about delete marker replication, see How delete operations affect replication in the\n Amazon S3 User Guide.

" + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#BucketIdentifierString", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the access point for the source Outposts bucket that you want\n S3 on Outposts to replicate the objects from.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies which S3 on Outposts objects to replicate and where to store the\n replicas.

" + } + }, + "com.amazonaws.s3control#ReplicationRuleAndOperator": { + "type": "structure", + "members": { + "Prefix": { + "target": "com.amazonaws.s3control#Prefix", + "traits": { + "smithy.api#documentation": "

An object key name prefix that identifies the subset of objects that the rule applies\n to.

" + } + }, + "Tags": { + "target": "com.amazonaws.s3control#S3TagSet", + "traits": { + "smithy.api#documentation": "

An array of tags that contain key and value pairs.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for specifying rule filters. The filters determine the subset of objects to\n which the rule applies. This element is required only if you specify more than one filter.

\n

For example:

\n
    \n
  • \n

    If you specify both a Prefix and a Tag filter, wrap\n these filters in an And element.

    \n
  • \n
  • \n

    If you specify a filter based on multiple tags, wrap the Tag elements\n in an And element.

    \n
  • \n
" + } + }, + "com.amazonaws.s3control#ReplicationRuleFilter": { + "type": "structure", + "members": { + "Prefix": { + "target": "com.amazonaws.s3control#Prefix", + "traits": { + "smithy.api#documentation": "

An object key name prefix that identifies the subset of objects that the rule applies\n to.

\n \n

When you're using XML requests, you must \nreplace special characters (such as carriage returns) in object keys with their equivalent XML entity codes. \nFor more information, see \n XML-related object key constraints in the Amazon S3 User Guide.

\n
" + } + }, + "Tag": { + "target": "com.amazonaws.s3control#S3Tag" + }, + "And": { + "target": "com.amazonaws.s3control#ReplicationRuleAndOperator", + "traits": { + "smithy.api#documentation": "

A container for specifying rule filters. The filters determine the subset of objects\n that the rule applies to. This element is required only if you specify more than one\n filter. For example:

\n
    \n
  • \n

    If you specify both a Prefix and a Tag filter, wrap\n these filters in an And element.

    \n
  • \n
  • \n

    If you specify a filter based on multiple tags, wrap the Tag elements\n in an And element.

    \n
  • \n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

A filter that identifies the subset of objects to which the replication rule applies. A\n Filter element must specify exactly one Prefix,\n Tag, or And child element.

" + } + }, + "com.amazonaws.s3control#ReplicationRuleStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.s3control#ReplicationRules": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#ReplicationRule", + "traits": { + "smithy.api#xmlName": "Rule" + } + } + }, + "com.amazonaws.s3control#ReplicationStatus": { + "type": "enum", + "members": { + "COMPLETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLETED" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" + } + }, + "REPLICA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REPLICA" + } + }, + "NONE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NONE" + } + } + } + }, + "com.amazonaws.s3control#ReplicationStatusFilterList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#ReplicationStatus" + } + }, + "com.amazonaws.s3control#ReplicationStorageClass": { + "type": "enum", + "members": { + "STANDARD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STANDARD" + } + }, + "REDUCED_REDUNDANCY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REDUCED_REDUNDANCY" + } + }, + "STANDARD_IA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STANDARD_IA" + } + }, + "ONEZONE_IA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ONEZONE_IA" + } + }, + "INTELLIGENT_TIERING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INTELLIGENT_TIERING" + } + }, + "GLACIER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GLACIER" + } + }, + "DEEP_ARCHIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DEEP_ARCHIVE" + } + }, + "OUTPOSTS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OUTPOSTS" + } + }, + "GLACIER_IR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GLACIER_IR" + } + } + } + }, + "com.amazonaws.s3control#ReplicationTime": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3control#ReplicationTimeStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether S3 Replication Time Control (S3 RTC) is enabled.

", + "smithy.api#required": {} + } + }, + "Time": { + "target": "com.amazonaws.s3control#ReplicationTimeValue", + "traits": { + "smithy.api#documentation": "

A container that specifies the time by which replication should be complete for all\n objects and operations on objects.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A container that specifies S3 Replication Time Control (S3 RTC) related information, including whether S3 RTC\n is enabled and the time when all objects and operations on objects must be\n replicated.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" + } + }, + "com.amazonaws.s3control#ReplicationTimeStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.s3control#ReplicationTimeValue": { + "type": "structure", + "members": { + "Minutes": { + "target": "com.amazonaws.s3control#Minutes", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Contains an integer that specifies the time period in minutes.

\n

Valid value: 15

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container that specifies the time value for S3 Replication Time Control (S3 RTC). This value is also used for\n the replication metrics EventThreshold element.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" + } + }, + "com.amazonaws.s3control#ReportPrefixString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 512 + } + } + }, + "com.amazonaws.s3control#RequestedJobStatus": { + "type": "enum", + "members": { + "Cancelled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Cancelled" + } + }, + "Ready": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Ready" + } + } + } + }, + "com.amazonaws.s3control#Role": { + "type": "string" + }, + "com.amazonaws.s3control#RouteList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointRoute", + "traits": { + "smithy.api#xmlName": "Route" + } + } + }, + "com.amazonaws.s3control#S3AWSRegion": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 5, + "max": 30 + }, + "smithy.api#pattern": "^[a-z0-9\\-]+$" + } + }, + "com.amazonaws.s3control#S3AccessControlList": { + "type": "structure", + "members": { + "Owner": { + "target": "com.amazonaws.s3control#S3ObjectOwner", + "traits": { + "smithy.api#documentation": "

", + "smithy.api#required": {} + } + }, + "Grants": { + "target": "com.amazonaws.s3control#S3GrantList", + "traits": { + "smithy.api#documentation": "

" + } + } + }, + "traits": { + "smithy.api#documentation": "

" + } + }, + "com.amazonaws.s3control#S3AccessControlPolicy": { + "type": "structure", + "members": { + "AccessControlList": { + "target": "com.amazonaws.s3control#S3AccessControlList", + "traits": { + "smithy.api#documentation": "

" + } + }, + "CannedAccessControlList": { + "target": "com.amazonaws.s3control#S3CannedAccessControlList", + "traits": { + "smithy.api#documentation": "

" + } + } + }, + "traits": { + "smithy.api#documentation": "

" + } + }, + "com.amazonaws.s3control#S3AccessPointArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 4, + "max": 128 + } + } + }, + "com.amazonaws.s3control#S3BucketArnString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^arn:[^:]+:s3:" + } + }, + "com.amazonaws.s3control#S3BucketDestination": { + "type": "structure", + "members": { + "Format": { + "target": "com.amazonaws.s3control#Format", + "traits": { + "smithy.api#documentation": "

", + "smithy.api#required": {} + } + }, + "OutputSchemaVersion": { + "target": "com.amazonaws.s3control#OutputSchemaVersion", + "traits": { + "smithy.api#documentation": "

The schema version of the export file.

", + "smithy.api#required": {} + } + }, + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the owner of the S3 Storage Lens metrics export bucket.

", + "smithy.api#required": {} + } + }, + "Arn": { + "target": "com.amazonaws.s3control#S3BucketArnString", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the bucket. This property is read-only and follows the\n following format: \n arn:aws:s3:us-east-1:example-account-id:bucket/your-destination-bucket-name\n \n

", + "smithy.api#required": {} + } + }, + "Prefix": { + "target": "com.amazonaws.s3control#Prefix", + "traits": { + "smithy.api#documentation": "

The prefix of the destination bucket where the metrics export will be delivered.

" + } + }, + "Encryption": { + "target": "com.amazonaws.s3control#StorageLensDataExportEncryption", + "traits": { + "smithy.api#documentation": "

The container for the type encryption of the metrics exports in this bucket.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for the bucket where the Amazon S3 Storage Lens metrics export files are\n located.

" + } + }, + "com.amazonaws.s3control#S3CannedAccessControlList": { + "type": "enum", + "members": { + "PRIVATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "private" + } + }, + "PUBLIC_READ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "public-read" + } + }, + "PUBLIC_READ_WRITE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "public-read-write" + } + }, + "AWS_EXEC_READ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "aws-exec-read" + } + }, + "AUTHENTICATED_READ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "authenticated-read" + } + }, + "BUCKET_OWNER_READ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "bucket-owner-read" + } + }, + "BUCKET_OWNER_FULL_CONTROL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "bucket-owner-full-control" + } + } + } + }, + "com.amazonaws.s3control#S3ChecksumAlgorithm": { + "type": "enum", + "members": { + "CRC32": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CRC32" + } + }, + "CRC32C": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CRC32C" + } + }, + "SHA1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SHA1" + } + }, + "SHA256": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SHA256" + } + }, + "CRC64NVME": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CRC64NVME" + } + } + } + }, + "com.amazonaws.s3control#S3ComputeObjectChecksumOperation": { + "type": "structure", + "members": { + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3control#ComputeObjectChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm that you want Amazon S3 to use to create the checksum. For more\n information, see Checking object\n integrity in the Amazon S3 User Guide.

" + } + }, + "ChecksumType": { + "target": "com.amazonaws.s3control#ComputeObjectChecksumType", + "traits": { + "smithy.api#documentation": "

Indicates the checksum type that you want Amazon S3 to use to calculate the object’s checksum\n value. For more information, see Checking object\n integrity in the Amazon S3 User Guide.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Directs the specified job to invoke the ComputeObjectChecksum operation on every object listed in the job's manifest.

" + } + }, + "com.amazonaws.s3control#S3ContentLength": { + "type": "long", + "traits": { + "smithy.api#default": 0, + "smithy.api#range": { + "min": 0 + } + } + }, + "com.amazonaws.s3control#S3CopyObjectOperation": { + "type": "structure", + "members": { + "TargetResource": { + "target": "com.amazonaws.s3control#S3RegionalOrS3ExpressBucketArnString", + "traits": { + "smithy.api#documentation": "

Specifies the destination bucket\n Amazon Resource Name\n (ARN)\n for the batch copy operation.

\n
    \n
  • \n

    \n General purpose buckets - For example, to copy\n objects to a general purpose bucket named destinationBucket, set the\n TargetResource property to\n arn:aws:s3:::destinationBucket.

    \n
  • \n
  • \n

    \n Directory buckets - For example, to copy\n objects to a directory bucket named destinationBucket in the Availability Zone\n identified by the AZ ID usw2-az1, set the TargetResource\n property to\n arn:aws:s3express:region:account_id:/bucket/destination_bucket_base_name--usw2-az1--x-s3.\n A directory bucket as a destination bucket can be in Availability Zone or Local Zone.

    \n \n

    Copying objects across different Amazon Web Services Regions isn't supported when the source\n or destination bucket is in Amazon Web Services Local Zones. The source and destination buckets must\n have the same parent Amazon Web Services Region. Otherwise, you get an HTTP 400 Bad\n Request error with the error code InvalidRequest.

    \n
    \n
  • \n
" + } + }, + "CannedAccessControlList": { + "target": "com.amazonaws.s3control#S3CannedAccessControlList", + "traits": { + "smithy.api#documentation": "

\n \n

This functionality is not supported by directory buckets.

\n
" + } + }, + "AccessControlGrants": { + "target": "com.amazonaws.s3control#S3GrantList", + "traits": { + "smithy.api#documentation": "

\n \n

This functionality is not supported by directory buckets.

\n
" + } + }, + "MetadataDirective": { + "target": "com.amazonaws.s3control#S3MetadataDirective", + "traits": { + "smithy.api#documentation": "

" + } + }, + "ModifiedSinceConstraint": { + "target": "com.amazonaws.s3control#TimeStamp", + "traits": { + "smithy.api#documentation": "

" + } + }, + "NewObjectMetadata": { + "target": "com.amazonaws.s3control#S3ObjectMetadata", + "traits": { + "smithy.api#documentation": "

If you don't provide this parameter, Amazon S3 copies all the metadata from the original\n objects. If you specify an empty set, the new objects will have no tags. Otherwise, Amazon S3\n assigns the supplied tags to the new objects.

" + } + }, + "NewObjectTagging": { + "target": "com.amazonaws.s3control#S3TagSet", + "traits": { + "smithy.api#documentation": "

Specifies a list of tags to add to the destination objects after they are copied. If\n NewObjectTagging is not specified, the tags of the source objects are\n copied to destination objects by default.

\n \n

\n Directory buckets - Tags aren't supported by\n directory buckets. If your source objects have tags and your destination bucket is a\n directory bucket, specify an empty tag set in the NewObjectTagging field\n to prevent copying the source object tags to the directory bucket.

\n
" + } + }, + "RedirectLocation": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength2048String", + "traits": { + "smithy.api#documentation": "

If the destination bucket is configured as a website, specifies an optional metadata\n property for website redirects, x-amz-website-redirect-location. Allows\n webpage redirects if the object copy is accessed through a website endpoint.

\n \n

This functionality is not supported by directory buckets.

\n
" + } + }, + "RequesterPays": { + "target": "com.amazonaws.s3control#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

\n \n

This functionality is not supported by directory buckets.

\n
" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3control#S3StorageClass", + "traits": { + "smithy.api#documentation": "

Specify the storage class for the destination objects in a Copy\n operation.

\n \n

\n Directory buckets -\n This functionality is not supported by directory buckets.

\n
" + } + }, + "UnModifiedSinceConstraint": { + "target": "com.amazonaws.s3control#TimeStamp", + "traits": { + "smithy.api#documentation": "

" + } + }, + "SSEAwsKmsKeyId": { + "target": "com.amazonaws.s3control#KmsKeyArnString", + "traits": { + "smithy.api#documentation": "

Specifies the KMS key ID (Key ID, Key ARN, or Key Alias) to use for object encryption. If the KMS key doesn't exist in the same\n account that's issuing the command, you must use the full Key ARN not the Key ID.

\n \n

\n Directory buckets - If you specify SSEAlgorithm with KMS, you must specify the \n SSEAwsKmsKeyId parameter with the ID (Key ID or Key ARN) of the KMS \n symmetric encryption customer managed key to use. Otherwise, you get an HTTP 400 Bad Request error. The key alias format of the KMS key isn't supported. To encrypt new object copies in a directory bucket with SSE-KMS, you must specify SSE-KMS as the directory bucket's default encryption configuration with a KMS key (specifically, a customer managed key). \n The Amazon Web Services managed key (aws/s3) isn't supported. Your SSE-KMS configuration can only support 1 customer managed key per directory bucket for the lifetime of the bucket. \nAfter you specify a customer managed key for SSE-KMS as the bucket default encryption, you can't override the customer managed key for the bucket's SSE-KMS configuration. \nThen, when you specify server-side encryption settings for new object copies with SSE-KMS, you must make sure the encryption key is the same customer managed key that you specified for the directory bucket's default encryption configuration. \n

\n
" + } + }, + "TargetKeyPrefix": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

Specifies the folder prefix\n that\n you\n want\n the objects to be\n copied\n into. For example, to copy objects into a folder named\n Folder1 in the destination bucket, set the\n TargetKeyPrefix\n property\n to Folder1.

" + } + }, + "ObjectLockLegalHoldStatus": { + "target": "com.amazonaws.s3control#S3ObjectLockLegalHoldStatus", + "traits": { + "smithy.api#documentation": "

The legal hold status to be applied to all objects in the Batch Operations job.

\n \n

This functionality is not supported by directory buckets.

\n
" + } + }, + "ObjectLockMode": { + "target": "com.amazonaws.s3control#S3ObjectLockMode", + "traits": { + "smithy.api#documentation": "

The retention mode to be applied to all objects in the Batch Operations job.

\n \n

This functionality is not supported by directory buckets.

\n
" + } + }, + "ObjectLockRetainUntilDate": { + "target": "com.amazonaws.s3control#TimeStamp", + "traits": { + "smithy.api#documentation": "

The date when the applied object retention configuration expires on all objects in the\n Batch Operations job.

\n \n

This functionality is not supported by directory buckets.

\n
" + } + }, + "BucketKeyEnabled": { + "target": "com.amazonaws.s3control#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with\n server-side encryption using Amazon Web Services KMS (SSE-KMS). Setting this header to true\n causes Amazon S3 to use an S3 Bucket Key for object encryption with SSE-KMS.

\n

Specifying this header with an Copy action doesn’t affect\n bucket-level settings for S3 Bucket Key.

\n \n

\n Directory buckets - S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets \nto directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through the Copy operation in Batch Operations. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.

\n
" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3control#S3ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm\n that\n you want Amazon S3 to use to create the checksum. For more\n information,\n see Checking object\n integrity in the Amazon S3 User Guide.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains\n the configuration parameters for a PUT Copy object operation. S3 Batch Operations passes every\n object to the underlying\n CopyObject\n API\n operation. For more information about the parameters for this operation,\n see CopyObject.

" + } + }, + "com.amazonaws.s3control#S3DeleteObjectTaggingOperation": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

Contains no configuration parameters because the DELETE Object tagging\n (DeleteObjectTagging)\n API\n operation\n accepts\n only\n the bucket name and key name as parameters, which are defined in the\n job's manifest.

" + } + }, + "com.amazonaws.s3control#S3ExpirationInDays": { + "type": "integer", + "traits": { + "smithy.api#default": 0, + "smithy.api#range": { + "min": 0 + } + } + }, + "com.amazonaws.s3control#S3GeneratedManifestDescriptor": { + "type": "structure", + "members": { + "Format": { + "target": "com.amazonaws.s3control#GeneratedManifestFormat", + "traits": { + "smithy.api#documentation": "

The format of the generated manifest.

" + } + }, + "Location": { + "target": "com.amazonaws.s3control#JobManifestLocation" + } + }, + "traits": { + "smithy.api#documentation": "

Describes the specified job's generated manifest. Batch Operations jobs created with a\n ManifestGenerator populate details of this descriptor after execution of the\n ManifestGenerator.

" + } + }, + "com.amazonaws.s3control#S3GlacierJobTier": { + "type": "enum", + "members": { + "BULK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BULK" + } + }, + "STANDARD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STANDARD" + } + } + } + }, + "com.amazonaws.s3control#S3Grant": { + "type": "structure", + "members": { + "Grantee": { + "target": "com.amazonaws.s3control#S3Grantee", + "traits": { + "smithy.api#documentation": "

" + } + }, + "Permission": { + "target": "com.amazonaws.s3control#S3Permission", + "traits": { + "smithy.api#documentation": "

" + } + } + }, + "traits": { + "smithy.api#documentation": "

" + } + }, + "com.amazonaws.s3control#S3GrantList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#S3Grant" + } + }, + "com.amazonaws.s3control#S3Grantee": { + "type": "structure", + "members": { + "TypeIdentifier": { + "target": "com.amazonaws.s3control#S3GranteeTypeIdentifier", + "traits": { + "smithy.api#documentation": "

" + } + }, + "Identifier": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

" + } + }, + "DisplayName": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

" + } + } + }, + "traits": { + "smithy.api#documentation": "

" + } + }, + "com.amazonaws.s3control#S3GranteeTypeIdentifier": { + "type": "enum", + "members": { + "CANONICAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "id" + } + }, + "EMAIL_ADDRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "emailAddress" + } + }, + "GROUP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "uri" + } + } + } + }, + "com.amazonaws.s3control#S3InitiateRestoreObjectOperation": { + "type": "structure", + "members": { + "ExpirationInDays": { + "target": "com.amazonaws.s3control#S3ExpirationInDays", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

This argument specifies how long the S3 Glacier or S3 Glacier Deep Archive object remains\n available in Amazon S3. S3 Initiate Restore Object jobs that target S3 Glacier and S3 Glacier Deep Archive\n objects require ExpirationInDays set to 1 or greater.

\n

Conversely, do not set ExpirationInDays when creating\n S3 Initiate Restore Object jobs that target S3 Intelligent-Tiering Archive Access and\n Deep Archive Access tier objects. Objects in S3 Intelligent-Tiering archive access tiers are\n not subject to restore expiry, so specifying ExpirationInDays results in\n restore request failure.

\n

S3 Batch Operations jobs can operate either on S3 Glacier and S3 Glacier Deep Archive storage class\n objects or on S3 Intelligent-Tiering Archive Access and Deep Archive Access storage tier\n objects, but not both types in the same job. If you need to restore objects of both types\n you must create separate Batch Operations jobs.

" + } + }, + "GlacierJobTier": { + "target": "com.amazonaws.s3control#S3GlacierJobTier", + "traits": { + "smithy.api#documentation": "

S3 Batch Operations supports STANDARD and BULK retrieval tiers, but\n not the EXPEDITED retrieval tier.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the configuration parameters for\n a\n POST Object restore job. S3 Batch Operations passes every object to the\n underlying\n RestoreObject\n API\n operation. For more information about the parameters for this operation,\n see RestoreObject.

" + } + }, + "com.amazonaws.s3control#S3JobManifestGenerator": { + "type": "structure", + "members": { + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID that owns the bucket the generated manifest is written to. If\n provided the generated manifest bucket's owner Amazon Web Services account ID must match this value, else\n the job fails.

" + } + }, + "SourceBucket": { + "target": "com.amazonaws.s3control#S3BucketArnString", + "traits": { + "smithy.api#documentation": "

The ARN of the source bucket used by the ManifestGenerator.

\n \n

\n Directory buckets - Directory buckets\n aren't supported as the source buckets used by S3JobManifestGenerator to\n generate the job manifest.

\n
", + "smithy.api#required": {} + } + }, + "ManifestOutputLocation": { + "target": "com.amazonaws.s3control#S3ManifestOutputLocation", + "traits": { + "smithy.api#documentation": "

Specifies the location the generated manifest will be written to. Manifests can't be\n written to directory buckets. For more information, see Directory\n buckets.

" + } + }, + "Filter": { + "target": "com.amazonaws.s3control#JobManifestGeneratorFilter", + "traits": { + "smithy.api#documentation": "

Specifies rules the S3JobManifestGenerator should use to decide whether an object in the\n source bucket should or should not be included in the generated job manifest.

" + } + }, + "EnableManifestOutput": { + "target": "com.amazonaws.s3control#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Determines whether or not to write the job's generated manifest to a bucket.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The container for the service that will create the S3 manifest.

" + } + }, + "com.amazonaws.s3control#S3KeyArnString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2000 + }, + "smithy.api#pattern": "^arn:[^:]+:s3:" + } + }, + "com.amazonaws.s3control#S3ManifestOutputLocation": { + "type": "structure", + "members": { + "ExpectedManifestBucketOwner": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Account ID that owns the bucket the generated manifest is written to.

" + } + }, + "Bucket": { + "target": "com.amazonaws.s3control#S3BucketArnString", + "traits": { + "smithy.api#documentation": "

The bucket ARN the generated manifest should be written to.

\n \n

\n Directory buckets - Directory buckets\n aren't supported as the buckets to store the generated manifest.

\n
", + "smithy.api#required": {} + } + }, + "ManifestPrefix": { + "target": "com.amazonaws.s3control#ManifestPrefixString", + "traits": { + "smithy.api#documentation": "

Prefix identifying one or more objects to which the manifest applies.

" + } + }, + "ManifestEncryption": { + "target": "com.amazonaws.s3control#GeneratedManifestEncryption", + "traits": { + "smithy.api#documentation": "

Specifies what encryption should be used when the generated manifest objects are\n written.

" + } + }, + "ManifestFormat": { + "target": "com.amazonaws.s3control#GeneratedManifestFormat", + "traits": { + "smithy.api#documentation": "

The format of the generated manifest.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Location details for where the generated manifest should be written.

" + } + }, + "com.amazonaws.s3control#S3MetadataDirective": { + "type": "enum", + "members": { + "COPY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COPY" + } + }, + "REPLACE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REPLACE" + } + } + } + }, + "com.amazonaws.s3control#S3ObjectLockLegalHold": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3control#S3ObjectLockLegalHoldStatus", + "traits": { + "smithy.api#documentation": "

The Object Lock legal hold status to be applied to all objects in the Batch Operations\n job.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Whether S3 Object Lock legal hold will be applied to objects in an S3 Batch Operations\n job.

" + } + }, + "com.amazonaws.s3control#S3ObjectLockLegalHoldStatus": { + "type": "enum", + "members": { + "OFF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OFF" + } + }, + "ON": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ON" + } + } + } + }, + "com.amazonaws.s3control#S3ObjectLockMode": { + "type": "enum", + "members": { + "COMPLIANCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLIANCE" + } + }, + "GOVERNANCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GOVERNANCE" + } + } + } + }, + "com.amazonaws.s3control#S3ObjectLockRetentionMode": { + "type": "enum", + "members": { + "COMPLIANCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLIANCE" + } + }, + "GOVERNANCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GOVERNANCE" + } + } + } + }, + "com.amazonaws.s3control#S3ObjectMetadata": { + "type": "structure", + "members": { + "CacheControl": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

" + } + }, + "ContentDisposition": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

" + } + }, + "ContentEncoding": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

" + } + }, + "ContentLanguage": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

" + } + }, + "UserMetadata": { + "target": "com.amazonaws.s3control#S3UserMetadata", + "traits": { + "smithy.api#documentation": "

" + } + }, + "ContentLength": { + "target": "com.amazonaws.s3control#S3ContentLength", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

\n This member has been deprecated.\n

\n

" + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

\n This member has been deprecated.\n

\n

" + } + }, + "ContentType": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

" + } + }, + "HttpExpiresDate": { + "target": "com.amazonaws.s3control#TimeStamp", + "traits": { + "smithy.api#documentation": "

" + } + }, + "RequesterCharged": { + "target": "com.amazonaws.s3control#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

\n This member has been deprecated.\n

\n

" + } + }, + "SSEAlgorithm": { + "target": "com.amazonaws.s3control#S3SSEAlgorithm", + "traits": { + "smithy.api#documentation": "

The server-side encryption algorithm used when storing objects in Amazon S3.

\n

\n Directory buckets -\n For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (KMS). For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide.\n For the Copy operation in Batch Operations, see S3CopyObjectOperation.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

" + } + }, + "com.amazonaws.s3control#S3ObjectOwner": { + "type": "structure", + "members": { + "ID": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

" + } + }, + "DisplayName": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String", + "traits": { + "smithy.api#documentation": "

" + } + } + }, + "traits": { + "smithy.api#documentation": "

" + } + }, + "com.amazonaws.s3control#S3ObjectVersionId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2000 + } + } + }, + "com.amazonaws.s3control#S3Permission": { + "type": "enum", + "members": { + "FULL_CONTROL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FULL_CONTROL" + } + }, + "READ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "READ" + } + }, + "WRITE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WRITE" + } + }, + "READ_ACP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "READ_ACP" + } + }, + "WRITE_ACP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WRITE_ACP" + } + } + } + }, + "com.amazonaws.s3control#S3Prefix": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2000 + }, + "smithy.api#pattern": "^.+$" + } + }, + "com.amazonaws.s3control#S3PrefixType": { + "type": "enum", + "members": { + "Object": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Object" + } + } + } + }, + "com.amazonaws.s3control#S3RegionalBucketArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 4, + "max": 128 + } + } + }, + "com.amazonaws.s3control#S3RegionalOrS3ExpressBucketArnString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^arn:[^:]+:(s3|s3express):" + } + }, + "com.amazonaws.s3control#S3ReplicateObjectOperation": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

Directs the specified job to invoke ReplicateObject on every object in the\n job's manifest.

" + } + }, + "com.amazonaws.s3control#S3ResourceArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1011 + }, + "smithy.api#pattern": "^arn:[^:]+:s3(express)?:[^:]" + } + }, + "com.amazonaws.s3control#S3Retention": { + "type": "structure", + "members": { + "RetainUntilDate": { + "target": "com.amazonaws.s3control#TimeStamp", + "traits": { + "smithy.api#documentation": "

The date when the applied Object Lock retention will expire on all objects set by the\n Batch Operations job.

" + } + }, + "Mode": { + "target": "com.amazonaws.s3control#S3ObjectLockRetentionMode", + "traits": { + "smithy.api#documentation": "

The Object Lock retention mode to be applied to all objects in the Batch Operations\n job.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the S3 Object Lock retention mode to be applied to all objects in the\n S3 Batch Operations job. If you don't provide Mode and RetainUntilDate\n data types in your operation, you will remove the retention from your objects. For more\n information, see Using S3 Object Lock retention\n with S3 Batch Operations in the Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3control#S3SSEAlgorithm": { + "type": "enum", + "members": { + "AES256": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AES256" + } + }, + "KMS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KMS" + } + } + } + }, + "com.amazonaws.s3control#S3SetObjectAclOperation": { + "type": "structure", + "members": { + "AccessControlPolicy": { + "target": "com.amazonaws.s3control#S3AccessControlPolicy", + "traits": { + "smithy.api#documentation": "

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the configuration parameters for a\n PUT\n Object ACL operation. S3 Batch Operations passes every object to the underlying\n PutObjectAcl\n API\n operation. For more information about the parameters for this operation,\n see PutObjectAcl.

" + } + }, + "com.amazonaws.s3control#S3SetObjectLegalHoldOperation": { + "type": "structure", + "members": { + "LegalHold": { + "target": "com.amazonaws.s3control#S3ObjectLockLegalHold", + "traits": { + "smithy.api#documentation": "

Contains the Object Lock legal hold status to be applied to all objects in the\n Batch Operations job.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the configuration for an S3 Object Lock legal hold operation that an\n S3 Batch Operations job passes\n to\n every object to the underlying\n PutObjectLegalHold\n API\n operation. For more information, see Using S3 Object Lock legal hold\n with S3 Batch Operations in the Amazon S3 User Guide.

\n \n

This functionality is not supported by directory buckets.

\n
" + } + }, + "com.amazonaws.s3control#S3SetObjectRetentionOperation": { + "type": "structure", + "members": { + "BypassGovernanceRetention": { + "target": "com.amazonaws.s3control#Boolean", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Indicates if the action should be applied to objects in the Batch Operations job even if they\n have Object Lock GOVERNANCE type in place.

" + } + }, + "Retention": { + "target": "com.amazonaws.s3control#S3Retention", + "traits": { + "smithy.api#documentation": "

Contains the Object Lock retention mode to be applied to all objects in the Batch Operations\n job. For more information, see Using S3 Object Lock retention\n with S3 Batch Operations in the Amazon S3 User Guide.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the configuration parameters for the Object Lock retention action for an\n S3 Batch Operations job. Batch Operations passes every object to the underlying\n PutObjectRetention\n API\n operation. For more information, see Using S3 Object Lock retention\n with S3 Batch Operations in the Amazon S3 User Guide.

\n \n

This functionality is not supported by directory buckets.

\n
" + } + }, + "com.amazonaws.s3control#S3SetObjectTaggingOperation": { + "type": "structure", + "members": { + "TagSet": { + "target": "com.amazonaws.s3control#S3TagSet", + "traits": { + "smithy.api#documentation": "

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the configuration parameters for a\n PUT\n Object Tagging operation. S3 Batch Operations passes every object to the underlying\n PutObjectTagging\n API\n operation. For more information about the parameters for this operation,\n see PutObjectTagging.

" + } + }, + "com.amazonaws.s3control#S3StorageClass": { + "type": "enum", + "members": { + "STANDARD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STANDARD" + } + }, + "STANDARD_IA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STANDARD_IA" + } + }, + "ONEZONE_IA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ONEZONE_IA" + } + }, + "GLACIER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GLACIER" + } + }, + "INTELLIGENT_TIERING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INTELLIGENT_TIERING" + } + }, + "DEEP_ARCHIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DEEP_ARCHIVE" + } + }, + "GLACIER_IR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GLACIER_IR" + } + } + } + }, + "com.amazonaws.s3control#S3Tag": { + "type": "structure", + "members": { + "Key": { + "target": "com.amazonaws.s3control#TagKeyString", + "traits": { + "smithy.api#documentation": "

Key of the tag

", + "smithy.api#required": {} + } + }, + "Value": { + "target": "com.amazonaws.s3control#TagValueString", + "traits": { + "smithy.api#documentation": "

Value of the tag

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for a key-value name pair.

" + } + }, + "com.amazonaws.s3control#S3TagSet": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#S3Tag" + } + }, + "com.amazonaws.s3control#S3UserMetadata": { + "type": "map", + "key": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength1024String" + }, + "value": { + "target": "com.amazonaws.s3control#MaxLength1024String" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 8192 + } + } + }, + "com.amazonaws.s3control#SSECFilter": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

A filter that returns objects that are encrypted by server-side encryption with customer-provided keys (SSE-C).

" + } + }, + "com.amazonaws.s3control#SSEKMS": { + "type": "structure", + "members": { + "KeyId": { + "target": "com.amazonaws.s3control#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

A container for the ARN of the SSE-KMS encryption. This property is read-only and\n follows the following format: \n arn:aws:kms:us-east-1:example-account-id:key/example-9a73-4afc-8d29-8f5900cef44e\n \n

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

", + "smithy.api#xmlName": "SSE-KMS" + } + }, + "com.amazonaws.s3control#SSEKMSEncryption": { + "type": "structure", + "members": { + "KeyId": { + "target": "com.amazonaws.s3control#KmsKeyArnString", + "traits": { + "smithy.api#documentation": "

Specifies the ID of the Amazon Web Services Key Management Service (Amazon Web Services KMS) symmetric encryption\n customer managed key to use for encrypting generated manifest objects.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Configuration for the use of SSE-KMS to encrypt generated manifest objects.

", + "smithy.api#xmlName": "SSE-KMS" + } + }, + "com.amazonaws.s3control#SSEKMSFilter": { + "type": "structure", + "members": { + "KmsKeyArn": { + "target": "com.amazonaws.s3control#NonEmptyKmsKeyArnString", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the customer managed KMS key to use for the filter \n to return objects that are encrypted by the specified key. For best performance, \n we recommend using the KMSKeyArn filter in conjunction with other object metadata filters, like MatchAnyPrefix, CreatedAfter, or \n MatchAnyStorageClass.

\n \n

You must provide the full KMS Key ARN. You can't use an alias name or alias ARN. \n For more information, see \n KMS keys in the Amazon Web Services Key Management Service Developer Guide.

\n
" + } + }, + "BucketKeyEnabled": { + "target": "com.amazonaws.s3control#Boolean", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption \n using Amazon Web Services Key Management Service (Amazon Web Services KMS) keys (SSE-KMS). If specified, will filter SSE-KMS encrypted objects by S3 Bucket Key status. \n For more information, see Reducing the cost of SSE-KMS with Amazon S3 Bucket Keys\n in the Amazon S3 User Guide.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A filter that returns objects that are encrypted by server-side encryption with Amazon Web Services KMS (SSE-KMS).

" + } + }, + "com.amazonaws.s3control#SSEKMSKeyId": { + "type": "string" + }, + "com.amazonaws.s3control#SSES3": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

", + "smithy.api#xmlName": "SSE-S3" + } + }, + "com.amazonaws.s3control#SSES3Encryption": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

Configuration for the use of SSE-S3 to encrypt generated manifest objects.

", + "smithy.api#xmlName": "SSE-S3" + } + }, + "com.amazonaws.s3control#SSES3Filter": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

A filter that returns objects that are encrypted by server-side encryption with Amazon S3 managed keys (SSE-S3).

" + } + }, + "com.amazonaws.s3control#Scope": { + "type": "structure", + "members": { + "Prefixes": { + "target": "com.amazonaws.s3control#PrefixesList", + "traits": { + "smithy.api#documentation": "

You can specify any amount of prefixes, but the total length of characters of all\n prefixes must be less than 256 bytes in size.

", + "smithy.api#xmlName": "Prefixes" + } + }, + "Permissions": { + "target": "com.amazonaws.s3control#ScopePermissionList", + "traits": { + "smithy.api#documentation": "

You can include one or more API operations as permissions.

", + "smithy.api#xmlName": "Permissions" + } + } + }, + "traits": { + "smithy.api#documentation": "

You can use the access point scope to restrict access to specific prefixes, API operations, or a\n combination of both.

\n

For more information, see Manage\n the scope of your access points for directory buckets.

" + } + }, + "com.amazonaws.s3control#ScopePermission": { + "type": "enum", + "members": { + "GetObject": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GetObject" + } + }, + "GetObjectAttributes": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GetObjectAttributes" + } + }, + "ListMultipartUploadParts": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ListMultipartUploadParts" + } + }, + "ListBucket": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ListBucket" + } + }, + "ListBucketMultipartUploads": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ListBucketMultipartUploads" + } + }, + "PutObject": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PutObject" + } + }, + "DeleteObject": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DeleteObject" + } + }, + "AbortMultipartUpload": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AbortMultipartUpload" + } + } + } + }, + "com.amazonaws.s3control#ScopePermissionList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#ScopePermission", + "traits": { + "smithy.api#xmlName": "Permission" + } + } + }, + "com.amazonaws.s3control#SecretAccessKey": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.s3control#SelectionCriteria": { + "type": "structure", + "members": { + "Delimiter": { + "target": "com.amazonaws.s3control#StorageLensPrefixLevelDelimiter", + "traits": { + "smithy.api#documentation": "

A container for the delimiter of the selection criteria being used.

" + } + }, + "MaxDepth": { + "target": "com.amazonaws.s3control#StorageLensPrefixLevelMaxDepth", + "traits": { + "smithy.api#documentation": "

The max depth of the selection criteria

" + } + }, + "MinStorageBytesPercentage": { + "target": "com.amazonaws.s3control#MinStorageBytesPercentage", + "traits": { + "smithy.api#documentation": "

The minimum number of storage bytes percentage whose metrics will be selected.

\n \n

You must choose a value greater than or equal to 1.0.

\n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

" + } + }, + "com.amazonaws.s3control#SessionToken": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.s3control#Setting": { + "type": "boolean", + "traits": { + "smithy.api#default": false + } + }, + "com.amazonaws.s3control#SourceSelectionCriteria": { + "type": "structure", + "members": { + "SseKmsEncryptedObjects": { + "target": "com.amazonaws.s3control#SseKmsEncryptedObjects", + "traits": { + "smithy.api#documentation": "

A filter that you can use to select Amazon S3 objects that are encrypted with server-side\n encryption by using Key Management Service (KMS) keys. If you include\n SourceSelectionCriteria in the replication configuration, this element is\n required.

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" + } + }, + "ReplicaModifications": { + "target": "com.amazonaws.s3control#ReplicaModifications", + "traits": { + "smithy.api#documentation": "

A filter that you can use to specify whether replica modification sync is enabled.\n S3 on Outposts replica modification sync can help you keep object metadata synchronized\n between replicas and source objects. By default, S3 on Outposts replicates metadata from the\n source objects to the replicas only. When replica modification sync is enabled,\n S3 on Outposts replicates metadata changes made to the replica copies back to the source\n object, making the replication bidirectional.

\n

To replicate object metadata modifications on replicas, you can specify this element and\n set the Status of this element to Enabled.

\n \n

You must enable replica modification sync on the source and destination buckets to\n replicate replica metadata changes between the source and the replicas.

\n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container that describes additional filters for identifying the source objects that\n you want to replicate. You can choose to enable or disable the replication of these\n objects.

" + } + }, + "com.amazonaws.s3control#SseKmsEncryptedObjects": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3control#SseKmsEncryptedObjectsStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether Amazon S3 replicates objects that are created with server-side encryption\n by using an KMS key stored in Key Management Service.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for filter information that you can use to select S3 objects that are\n encrypted with Key Management Service (KMS).

\n \n

This is not supported by Amazon S3 on Outposts buckets.

\n
" + } + }, + "com.amazonaws.s3control#SseKmsEncryptedObjectsStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.s3control#StorageClassList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#S3StorageClass" + } + }, + "com.amazonaws.s3control#StorageLensArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + }, + "smithy.api#pattern": "^arn:[a-z\\-]+:s3:[a-z0-9\\-]+:\\d{12}:storage\\-lens\\/" + } + }, + "com.amazonaws.s3control#StorageLensAwsOrg": { + "type": "structure", + "members": { + "Arn": { + "target": "com.amazonaws.s3control#AwsOrgArn", + "traits": { + "smithy.api#documentation": "

A container for the Amazon Resource Name (ARN) of the Amazon Web Services organization. This property\n is read-only and follows the following format: \n arn:aws:organizations:us-east-1:example-account-id:organization/o-ex2l495dck\n \n

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The Amazon Web Services organization for your S3 Storage Lens.

" + } + }, + "com.amazonaws.s3control#StorageLensConfiguration": { + "type": "structure", + "members": { + "Id": { + "target": "com.amazonaws.s3control#ConfigId", + "traits": { + "smithy.api#documentation": "

A container for the Amazon S3 Storage Lens configuration ID.

", + "smithy.api#required": {} + } + }, + "AccountLevel": { + "target": "com.amazonaws.s3control#AccountLevel", + "traits": { + "smithy.api#documentation": "

A container for all the account-level configurations of your S3 Storage Lens\n configuration.

", + "smithy.api#required": {} + } + }, + "Include": { + "target": "com.amazonaws.s3control#Include", + "traits": { + "smithy.api#documentation": "

A container for what is included in this configuration. This container can only be valid\n if there is no Exclude container submitted, and it's not empty.

" + } + }, + "Exclude": { + "target": "com.amazonaws.s3control#Exclude", + "traits": { + "smithy.api#documentation": "

A container for what is excluded in this configuration. This container can only be valid\n if there is no Include container submitted, and it's not empty.

" + } + }, + "DataExport": { + "target": "com.amazonaws.s3control#StorageLensDataExport", + "traits": { + "smithy.api#documentation": "

A container to specify the properties of your S3 Storage Lens metrics export including, the\n destination, schema and format.

" + } + }, + "IsEnabled": { + "target": "com.amazonaws.s3control#IsEnabled", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

A container for whether the S3 Storage Lens configuration is enabled.

", + "smithy.api#required": {} + } + }, + "AwsOrg": { + "target": "com.amazonaws.s3control#StorageLensAwsOrg", + "traits": { + "smithy.api#documentation": "

A container for the Amazon Web Services organization for this S3 Storage Lens configuration.

" + } + }, + "StorageLensArn": { + "target": "com.amazonaws.s3control#StorageLensArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the S3 Storage Lens configuration. This property is read-only\n and follows the following format: \n arn:aws:s3:us-east-1:example-account-id:storage-lens/your-dashboard-name\n \n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for the Amazon S3 Storage Lens configuration.

" + } + }, + "com.amazonaws.s3control#StorageLensConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#ListStorageLensConfigurationEntry", + "traits": { + "smithy.api#xmlName": "StorageLensConfiguration" + } + } + }, + "com.amazonaws.s3control#StorageLensDataExport": { + "type": "structure", + "members": { + "S3BucketDestination": { + "target": "com.amazonaws.s3control#S3BucketDestination", + "traits": { + "smithy.api#documentation": "

A container for the bucket where the S3 Storage Lens metrics export will be located.

\n \n

This bucket must be located in the same Region as the storage lens configuration.\n

\n
" + } + }, + "CloudWatchMetrics": { + "target": "com.amazonaws.s3control#CloudWatchMetrics", + "traits": { + "smithy.api#documentation": "

A container for enabling Amazon CloudWatch publishing for S3 Storage Lens metrics.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container to specify the properties of your S3 Storage Lens metrics export, including the\n destination, schema, and format.

" + } + }, + "com.amazonaws.s3control#StorageLensDataExportEncryption": { + "type": "structure", + "members": { + "SSES3": { + "target": "com.amazonaws.s3control#SSES3", + "traits": { + "smithy.api#documentation": "

", + "smithy.api#xmlName": "SSE-S3" + } + }, + "SSEKMS": { + "target": "com.amazonaws.s3control#SSEKMS", + "traits": { + "smithy.api#documentation": "

", + "smithy.api#xmlName": "SSE-KMS" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for the encryption of the S3 Storage Lens metrics exports.

" + } + }, + "com.amazonaws.s3control#StorageLensGroup": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.s3control#StorageLensGroupName", + "traits": { + "smithy.api#documentation": "

Contains the name of the Storage Lens group.

", + "smithy.api#required": {} + } + }, + "Filter": { + "target": "com.amazonaws.s3control#StorageLensGroupFilter", + "traits": { + "smithy.api#documentation": "

Sets the criteria for the Storage Lens group data that is displayed. For multiple filter\n conditions, the AND or OR logical operator is used.

", + "smithy.api#required": {} + } + }, + "StorageLensGroupArn": { + "target": "com.amazonaws.s3control#StorageLensGroupArn", + "traits": { + "smithy.api#documentation": "

Contains the Amazon Resource Name (ARN) of the Storage Lens group. This property is\n read-only.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A custom grouping of objects that include filters for prefixes, suffixes, object tags,\n object size, or object age. You can create an S3 Storage Lens group that includes a single\n filter or multiple filter conditions. To specify multiple filter conditions, you use\n AND or OR logical operators.

" + } + }, + "com.amazonaws.s3control#StorageLensGroupAndOperator": { + "type": "structure", + "members": { + "MatchAnyPrefix": { + "target": "com.amazonaws.s3control#MatchAnyPrefix", + "traits": { + "smithy.api#documentation": "

Contains a list of prefixes. At least one prefix must be specified. Up to 10 prefixes\n are allowed.

" + } + }, + "MatchAnySuffix": { + "target": "com.amazonaws.s3control#MatchAnySuffix", + "traits": { + "smithy.api#documentation": "

Contains a list of suffixes. At least one suffix must be specified. Up to 10 suffixes\n are allowed.

" + } + }, + "MatchAnyTag": { + "target": "com.amazonaws.s3control#MatchAnyTag", + "traits": { + "smithy.api#documentation": "

Contains the list of object tags. At least one object tag must be specified. Up to 10\n object tags are allowed.

" + } + }, + "MatchObjectAge": { + "target": "com.amazonaws.s3control#MatchObjectAge", + "traits": { + "smithy.api#documentation": "

Contains DaysGreaterThan and DaysLessThan to define the\n object age range (minimum and maximum number of days).

" + } + }, + "MatchObjectSize": { + "target": "com.amazonaws.s3control#MatchObjectSize", + "traits": { + "smithy.api#documentation": "

Contains BytesGreaterThan and BytesLessThan to define the\n object size range (minimum and maximum number of Bytes).

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A logical operator that allows multiple filter conditions to be joined for more complex\n comparisons of Storage Lens group data.

" + } + }, + "com.amazonaws.s3control#StorageLensGroupArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 4, + "max": 1024 + }, + "smithy.api#pattern": "^arn:[a-z\\-]+:s3:[a-z0-9\\-]+:\\d{12}:storage\\-lens\\-group\\/" + } + }, + "com.amazonaws.s3control#StorageLensGroupFilter": { + "type": "structure", + "members": { + "MatchAnyPrefix": { + "target": "com.amazonaws.s3control#MatchAnyPrefix", + "traits": { + "smithy.api#documentation": "

Contains a list of prefixes. At least one prefix must be specified. Up to 10 prefixes\n are allowed.

" + } + }, + "MatchAnySuffix": { + "target": "com.amazonaws.s3control#MatchAnySuffix", + "traits": { + "smithy.api#documentation": "

Contains a list of suffixes. At least one suffix must be specified. Up to 10 suffixes\n are allowed.

" + } + }, + "MatchAnyTag": { + "target": "com.amazonaws.s3control#MatchAnyTag", + "traits": { + "smithy.api#documentation": "

Contains the list of S3 object tags. At least one object tag must be specified. Up to\n 10 object tags are allowed.

" + } + }, + "MatchObjectAge": { + "target": "com.amazonaws.s3control#MatchObjectAge", + "traits": { + "smithy.api#documentation": "

Contains DaysGreaterThan and DaysLessThan to define the\n object age range (minimum and maximum number of days).

" + } + }, + "MatchObjectSize": { + "target": "com.amazonaws.s3control#MatchObjectSize", + "traits": { + "smithy.api#documentation": "

Contains BytesGreaterThan and BytesLessThan to define the\n object size range (minimum and maximum number of Bytes).

" + } + }, + "And": { + "target": "com.amazonaws.s3control#StorageLensGroupAndOperator", + "traits": { + "smithy.api#documentation": "

A logical operator that allows multiple filter conditions to be joined for more complex\n comparisons of Storage Lens group data. Objects must match all of the listed filter\n conditions that are joined by the And logical operator. Only one of each\n filter condition is allowed.

" + } + }, + "Or": { + "target": "com.amazonaws.s3control#StorageLensGroupOrOperator", + "traits": { + "smithy.api#documentation": "

A single logical operator that allows multiple filter conditions to be joined. Objects\n can match any of the listed filter conditions, which are joined by the Or\n logical operator. Only one of each filter condition is allowed.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The filter element sets the criteria for the Storage Lens group data that is displayed.\n For multiple filter conditions, the AND or OR logical operator is\n used.

" + } + }, + "com.amazonaws.s3control#StorageLensGroupLevel": { + "type": "structure", + "members": { + "SelectionCriteria": { + "target": "com.amazonaws.s3control#StorageLensGroupLevelSelectionCriteria", + "traits": { + "smithy.api#documentation": "

Indicates which Storage Lens group ARNs to include or exclude in the Storage Lens group\n aggregation. If this value is left null, then all Storage Lens groups are selected.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the Storage Lens groups to include in the Storage Lens group aggregation.\n

" + } + }, + "com.amazonaws.s3control#StorageLensGroupLevelExclude": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#StorageLensGroupArn", + "traits": { + "smithy.api#xmlName": "Arn" + } + } + }, + "com.amazonaws.s3control#StorageLensGroupLevelInclude": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#StorageLensGroupArn", + "traits": { + "smithy.api#xmlName": "Arn" + } + } + }, + "com.amazonaws.s3control#StorageLensGroupLevelSelectionCriteria": { + "type": "structure", + "members": { + "Include": { + "target": "com.amazonaws.s3control#StorageLensGroupLevelInclude", + "traits": { + "smithy.api#documentation": "

Indicates which Storage Lens group ARNs to include in the Storage Lens group\n aggregation.

" + } + }, + "Exclude": { + "target": "com.amazonaws.s3control#StorageLensGroupLevelExclude", + "traits": { + "smithy.api#documentation": "

Indicates which Storage Lens group ARNs to exclude from the Storage Lens group\n aggregation.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Indicates which Storage Lens group ARNs to include or exclude in the Storage Lens group\n aggregation. You can only attach Storage Lens groups to your Storage Lens dashboard if\n they're included in your Storage Lens group aggregation. If this value is left null, then\n all Storage Lens groups are selected.

" + } + }, + "com.amazonaws.s3control#StorageLensGroupList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#ListStorageLensGroupEntry", + "traits": { + "smithy.api#xmlName": "StorageLensGroup" + } + } + }, + "com.amazonaws.s3control#StorageLensGroupName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\-\\_]+$" + } + }, + "com.amazonaws.s3control#StorageLensGroupOrOperator": { + "type": "structure", + "members": { + "MatchAnyPrefix": { + "target": "com.amazonaws.s3control#MatchAnyPrefix", + "traits": { + "smithy.api#documentation": "

Filters objects that match any of the specified prefixes.

" + } + }, + "MatchAnySuffix": { + "target": "com.amazonaws.s3control#MatchAnySuffix", + "traits": { + "smithy.api#documentation": "

Filters objects that match any of the specified suffixes.

" + } + }, + "MatchAnyTag": { + "target": "com.amazonaws.s3control#MatchAnyTag", + "traits": { + "smithy.api#documentation": "

Filters objects that match any of the specified S3 object tags.

" + } + }, + "MatchObjectAge": { + "target": "com.amazonaws.s3control#MatchObjectAge", + "traits": { + "smithy.api#documentation": "

Filters objects that match the specified object age range.

" + } + }, + "MatchObjectSize": { + "target": "com.amazonaws.s3control#MatchObjectSize", + "traits": { + "smithy.api#documentation": "

Filters objects that match the specified object size range.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container element for specifying Or rule conditions. The rule conditions\n determine the subset of objects to which the Or rule applies. Objects can\n match any of the listed filter conditions, which are joined by the Or logical\n operator. Only one of each filter condition is allowed.

" + } + }, + "com.amazonaws.s3control#StorageLensPrefixLevelDelimiter": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1 + } + } + }, + "com.amazonaws.s3control#StorageLensPrefixLevelMaxDepth": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 10 + } + } + }, + "com.amazonaws.s3control#StorageLensTag": { + "type": "structure", + "members": { + "Key": { + "target": "com.amazonaws.s3control#TagKeyString", + "traits": { + "smithy.api#documentation": "

", + "smithy.api#required": {} + } + }, + "Value": { + "target": "com.amazonaws.s3control#TagValueString", + "traits": { + "smithy.api#documentation": "

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

" + } + }, + "com.amazonaws.s3control#StorageLensTags": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#StorageLensTag", + "traits": { + "smithy.api#xmlName": "Tag" + } + } + }, + "com.amazonaws.s3control#StringForNextToken": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + }, + "smithy.api#pattern": "^[A-Za-z0-9\\+\\:\\/\\=\\?\\#-_]+$" + } + }, + "com.amazonaws.s3control#SubmitMultiRegionAccessPointRoutes": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#SubmitMultiRegionAccessPointRoutesRequest" + }, + "output": { + "target": "com.amazonaws.s3control#SubmitMultiRegionAccessPointRoutesResult" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Submits an updated route configuration for a Multi-Region Access Point. This API operation updates the\n routing status for the specified Regions from active to passive, or from passive to active.\n A value of 0 indicates a passive status, which means that traffic won't be\n routed to the specified Region. A value of 100 indicates an active status,\n which means that traffic will be routed to the specified Region. At least one Region must\n be active at all times.

\n

When the routing configuration is changed, any in-progress operations (uploads, copies,\n deletes, and so on) to formerly active Regions will continue to run to their final\n completion state (success or failure). The routing configurations of any Regions that\n aren’t specified remain unchanged.

\n \n

Updated routing configurations might not be immediately applied. It can take up to 2\n minutes for your changes to take effect.

\n
\n

To submit routing control changes and failover requests, use the Amazon S3 failover control\n infrastructure endpoints in these five Amazon Web Services Regions:

\n
    \n
  • \n

    \n us-east-1\n

    \n
  • \n
  • \n

    \n us-west-2\n

    \n
  • \n
  • \n

    \n ap-southeast-2\n

    \n
  • \n
  • \n

    \n ap-northeast-1\n

    \n
  • \n
  • \n

    \n eu-west-1\n

    \n
  • \n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PATCH", + "uri": "/v20180820/mrap/instances/{Mrap+}/routes", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#SubmitMultiRegionAccessPointRoutesRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID for the owner of the Multi-Region Access Point.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "Mrap": { + "target": "com.amazonaws.s3control#MultiRegionAccessPointId", + "traits": { + "smithy.api#documentation": "

The Multi-Region Access Point ARN.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "RouteUpdates": { + "target": "com.amazonaws.s3control#RouteList", + "traits": { + "smithy.api#documentation": "

The different routes that make up the new route configuration. Active routes return a\n value of 100, and passive routes return a value of 0.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#SubmitMultiRegionAccessPointRoutesResult": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#Suffix": { + "type": "string" + }, + "com.amazonaws.s3control#SuspendedCause": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + } + } + }, + "com.amazonaws.s3control#SuspendedDate": { + "type": "timestamp" + }, + "com.amazonaws.s3control#Tag": { + "type": "structure", + "members": { + "Key": { + "target": "com.amazonaws.s3control#TagKeyString", + "traits": { + "smithy.api#documentation": "

The key of the key-value pair of a tag added to your Amazon Web Services resource. A tag key can be up\n to 128 Unicode characters in length and is case-sensitive. System created tags that begin\n with aws: aren’t supported.

", + "smithy.api#required": {} + } + }, + "Value": { + "target": "com.amazonaws.s3control#TagValueString", + "traits": { + "smithy.api#documentation": "

The value of the key-value pair of a tag added to your Amazon Web Services resource. A tag value can\n be up to 256 Unicode characters in length and is case-sensitive.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A key-value pair that you use to label your resources. You can add tags to new\n resources when you create them, or you can add tags to existing resources. Tags can help\n you organize, track costs for, and control access to resources.

" + } + }, + "com.amazonaws.s3control#TagKeyList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#TagKeyString" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 50 + } + } + }, + "com.amazonaws.s3control#TagKeyString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" + } + }, + "com.amazonaws.s3control#TagList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#Tag", + "traits": { + "smithy.api#xmlName": "Tag" + } + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 50 + } + } + }, + "com.amazonaws.s3control#TagResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#TagResourceRequest" + }, + "output": { + "target": "com.amazonaws.s3control#TagResourceResult" + }, + "traits": { + "smithy.api#documentation": "

Creates a new user-defined tag or updates an existing tag. Each tag is a label consisting of a key and value that is applied to your resource. Tags can help you organize, track costs for, and control access to your resources. You can add up to 50 Amazon Web Services resource tags for each S3 resource.

\n \n

This operation is only supported for the following Amazon S3 resource:

\n \n
\n \n

This operation is only supported for the following Amazon S3 resource:

\n \n
\n
\n
Permissions
\n
\n

For Storage Lens groups and S3 Access Grants, you must have the\n s3:TagResource permission to use this operation.

\n

For more information about the required Storage Lens Groups permissions, see\n Setting account permissions to use S3 Storage Lens groups.

\n
\n
Directory bucket permissions
\n
\n

For directory buckets and access points for directory buckets, you must have the s3express:TagResource permission to use this operation. For more information about directory buckets policies and permissions, see Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com.

\n
\n
\n

For information about S3 Tagging errors, see List of Amazon S3 Tagging error codes.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "POST", + "uri": "/v20180820/tags/{ResourceArn+}", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#TagResourceRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

\nThe Amazon Web Services account ID that created the S3 resource that you're trying to add tags to or the requester's account ID. \n

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "ResourceArn": { + "target": "com.amazonaws.s3control#S3ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the S3 resource that you're applying tags to. The\n tagged resource can be a directory bucket, S3 Storage Lens group or S3 Access Grants instance,\n registered location, or grant.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } + } + }, + "Tags": { + "target": "com.amazonaws.s3control#TagList", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services resource tags that you want to add to the specified S3 resource.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#TagResourceResult": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#TagValueString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 256 + }, + "smithy.api#pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$" + } + }, + "com.amazonaws.s3control#Tagging": { + "type": "structure", + "members": { + "TagSet": { + "target": "com.amazonaws.s3control#S3TagSet", + "traits": { + "smithy.api#documentation": "

A collection for a set of tags.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

" + } + }, + "com.amazonaws.s3control#TimeStamp": { + "type": "timestamp" + }, + "com.amazonaws.s3control#TooManyRequestsException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.s3control#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.s3control#TooManyTagsException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.s3control#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

Amazon S3 throws this exception if you have too many tags in your tag set.

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.s3control#TrafficDialPercentage": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 100 + } + } + }, + "com.amazonaws.s3control#Transition": { + "type": "structure", + "members": { + "Date": { + "target": "com.amazonaws.s3control#Date", + "traits": { + "smithy.api#documentation": "

Indicates when objects are transitioned to the specified storage class. The date value\n must be in ISO 8601 format. The time is always midnight UTC.

" + } + }, + "Days": { + "target": "com.amazonaws.s3control#Days", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

Indicates the number of days after creation when objects are transitioned to the\n specified storage class. The value must be a positive integer.

" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3control#TransitionStorageClass", + "traits": { + "smithy.api#documentation": "

The storage class to which you want the object to transition.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies when an object transitions to a specified storage class. For more information\n about Amazon S3 Lifecycle configuration rules, see \n Transitioning objects using Amazon S3 Lifecycle in the\n Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3control#TransitionList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3control#Transition", + "traits": { + "smithy.api#xmlName": "Transition" + } + } + }, + "com.amazonaws.s3control#TransitionStorageClass": { + "type": "enum", + "members": { + "GLACIER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GLACIER" + } + }, + "STANDARD_IA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STANDARD_IA" + } + }, + "ONEZONE_IA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ONEZONE_IA" + } + }, + "INTELLIGENT_TIERING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INTELLIGENT_TIERING" + } + }, + "DEEP_ARCHIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DEEP_ARCHIVE" + } + } + } + }, + "com.amazonaws.s3control#UntagResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#UntagResourceRequest" + }, + "output": { + "target": "com.amazonaws.s3control#UntagResourceResult" + }, + "traits": { + "smithy.api#documentation": "

This operation removes the specified user-defined tags from an S3 resource. You can pass\n one or more tag keys.

\n \n

This operation is only supported for the following Amazon S3 resources:

\n \n
\n
\n
Permissions
\n
\n

For Storage Lens groups and S3 Access Grants, you must have the\n s3:UntagResource permission to use this operation.

\n

For more information about the required Storage Lens Groups permissions, see\n Setting account permissions to use S3 Storage Lens groups.

\n
\n
Directory bucket permissions
\n
\n

For directory buckets and access points for directory buckets, you must have\n the s3express:UntagResource permission to use this operation.\n For more information about directory buckets policies and permissions, see Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com.

\n
\n
\n

For information about S3 Tagging errors, see List of Amazon S3\n Tagging error codes.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "DELETE", + "uri": "/v20180820/tags/{ResourceArn+}", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#UntagResourceRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID that owns the resource that you're trying to remove the tags from.\n

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "ResourceArn": { + "target": "com.amazonaws.s3control#S3ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the S3 resource that you're removing tags from. The\n tagged resource can be a directory bucket, S3 Storage Lens group or S3 Access Grants instance,\n registered location, or grant.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "ResourceArn" + } + } + }, + "TagKeys": { + "target": "com.amazonaws.s3control#TagKeyList", + "traits": { + "smithy.api#documentation": "

The array of tag key-value pairs that you're trying to remove from of the S3 resource.\n

", + "smithy.api#httpQuery": "tagKeys", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#UntagResourceResult": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#UpdateAccessGrantsLocation": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#UpdateAccessGrantsLocationRequest" + }, + "output": { + "target": "com.amazonaws.s3control#UpdateAccessGrantsLocationResult" + }, + "traits": { + "smithy.api#documentation": "

Updates the IAM role of a registered location in your S3 Access Grants instance.

\n
\n
Permissions
\n
\n

You must have the s3:UpdateAccessGrantsLocation permission to use\n this operation.

\n
\n
Additional Permissions
\n
\n

You must also have the following permission: iam:PassRole\n

\n
\n
\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/accessgrantsinstance/location/{AccessGrantsLocationId}", + "code": 200 + }, + "smithy.api#httpChecksumRequired": {}, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#UpdateAccessGrantsLocationRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID of the S3 Access Grants instance.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "AccessGrantsLocationId": { + "target": "com.amazonaws.s3control#AccessGrantsLocationId", + "traits": { + "smithy.api#documentation": "

The ID of the registered location that you are updating. S3 Access Grants assigns this ID when you\n register the location. S3 Access Grants assigns the ID default to the default location\n s3:// and assigns an auto-generated ID to other locations that you\n register.

\n

The ID of the registered location to which you are granting access. S3 Access Grants assigned this\n ID when you registered the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

\n

If you are passing the default location, you cannot create an access grant\n for the entire default location. You must also specify a bucket or a bucket and prefix in\n the Subprefix field.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "IAMRoleArn": { + "target": "com.amazonaws.s3control#IAMRoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants\n assumes this role to manage access to the registered location.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#UpdateAccessGrantsLocationResult": { + "type": "structure", + "members": { + "CreatedAt": { + "target": "com.amazonaws.s3control#CreationTimestamp", + "traits": { + "smithy.api#documentation": "

The date and time when you registered the location.

" + } + }, + "AccessGrantsLocationId": { + "target": "com.amazonaws.s3control#AccessGrantsLocationId", + "traits": { + "smithy.api#documentation": "

The ID of the registered location to which you are granting access. S3 Access Grants assigned this\n ID when you registered the location. S3 Access Grants assigns the ID default to the\n default location s3:// and assigns an auto-generated ID to other locations\n that you register.

" + } + }, + "AccessGrantsLocationArn": { + "target": "com.amazonaws.s3control#AccessGrantsLocationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the registered location that you are updating.

" + } + }, + "LocationScope": { + "target": "com.amazonaws.s3control#S3Prefix", + "traits": { + "smithy.api#documentation": "

The S3 URI path of the location that you are updating. You cannot update the scope of\n the registered location. The location scope can be the default S3 location\n s3://, the S3 path to a bucket s3://, or the S3\n path to a bucket and prefix s3:///.

" + } + }, + "IAMRoleArn": { + "target": "com.amazonaws.s3control#IAMRoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role of the registered location. S3 Access Grants\n assumes this role to manage access to the registered location.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#UpdateJobPriority": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#UpdateJobPriorityRequest" + }, + "output": { + "target": "com.amazonaws.s3control#UpdateJobPriorityResult" + }, + "errors": [ + { + "target": "com.amazonaws.s3control#BadRequestException" + }, + { + "target": "com.amazonaws.s3control#InternalServiceException" + }, + { + "target": "com.amazonaws.s3control#NotFoundException" + }, + { + "target": "com.amazonaws.s3control#TooManyRequestsException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates an existing S3 Batch Operations job's priority. For more information, see S3 Batch Operations in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

To use the UpdateJobPriority operation, you must have permission\n to perform the s3:UpdateJobPriority action.

\n
\n
\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "POST", + "uri": "/v20180820/jobs/{JobId}/priority", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#UpdateJobPriorityRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "JobId": { + "target": "com.amazonaws.s3control#JobId", + "traits": { + "smithy.api#documentation": "

The ID for the job whose priority you want to update.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Priority": { + "target": "com.amazonaws.s3control#JobPriority", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The priority you want to assign to this job.

", + "smithy.api#httpQuery": "priority", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#UpdateJobPriorityResult": { + "type": "structure", + "members": { + "JobId": { + "target": "com.amazonaws.s3control#JobId", + "traits": { + "smithy.api#documentation": "

The ID for the job whose priority Amazon S3 updated.

", + "smithy.api#required": {} + } + }, + "Priority": { + "target": "com.amazonaws.s3control#JobPriority", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The new priority assigned to the specified job.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#UpdateJobStatus": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#UpdateJobStatusRequest" + }, + "output": { + "target": "com.amazonaws.s3control#UpdateJobStatusResult" + }, + "errors": [ + { + "target": "com.amazonaws.s3control#BadRequestException" + }, + { + "target": "com.amazonaws.s3control#InternalServiceException" + }, + { + "target": "com.amazonaws.s3control#JobStatusException" + }, + { + "target": "com.amazonaws.s3control#NotFoundException" + }, + { + "target": "com.amazonaws.s3control#TooManyRequestsException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates the status for the specified job. Use this operation to confirm that you want to\n run a job or to cancel an existing job. For more information, see S3 Batch Operations in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

To use the UpdateJobStatus operation, you must have permission to\n perform the s3:UpdateJobStatus action.

\n
\n
\n

Related actions include:

\n \n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "POST", + "uri": "/v20180820/jobs/{JobId}/status", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#UpdateJobStatusRequest": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services account ID associated with the S3 Batch Operations job.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "JobId": { + "target": "com.amazonaws.s3control#JobId", + "traits": { + "smithy.api#documentation": "

The ID of the job whose status you want to update.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "RequestedJobStatus": { + "target": "com.amazonaws.s3control#RequestedJobStatus", + "traits": { + "smithy.api#documentation": "

The status that you want to move the specified job to.

", + "smithy.api#httpQuery": "requestedJobStatus", + "smithy.api#required": {} + } + }, + "StatusUpdateReason": { + "target": "com.amazonaws.s3control#JobStatusUpdateReason", + "traits": { + "smithy.api#documentation": "

A description of the reason why you want to change the specified job's status. This\n field can be any string up to the maximum length.

", + "smithy.api#httpQuery": "statusUpdateReason" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#UpdateJobStatusResult": { + "type": "structure", + "members": { + "JobId": { + "target": "com.amazonaws.s3control#JobId", + "traits": { + "smithy.api#documentation": "

The ID for the job whose status was updated.

" + } + }, + "Status": { + "target": "com.amazonaws.s3control#JobStatus", + "traits": { + "smithy.api#documentation": "

The current status for the specified job.

" + } + }, + "StatusUpdateReason": { + "target": "com.amazonaws.s3control#JobStatusUpdateReason", + "traits": { + "smithy.api#documentation": "

The reason that the specified job's status was updated.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3control#UpdateStorageLensGroup": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3control#UpdateStorageLensGroupRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

\nUpdates the existing Storage Lens group.

\n

To use this operation, you must have the permission to perform the\n s3:UpdateStorageLensGroup action. For more information about the required Storage Lens\n Groups permissions, see Setting account permissions to use S3 Storage Lens groups.

\n

For information about Storage Lens groups errors, see List of Amazon S3 Storage\n Lens error codes.

\n \n

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

\n
", + "smithy.api#endpoint": { + "hostPrefix": "{AccountId}." + }, + "smithy.api#http": { + "method": "PUT", + "uri": "/v20180820/storagelensgroup/{Name}", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "RequiresAccountId": { + "value": true + } + } + } + }, + "com.amazonaws.s3control#UpdateStorageLensGroupRequest": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.s3control#StorageLensGroupName", + "traits": { + "smithy.api#documentation": "

\nThe name of the Storage Lens group that you want to update.\n

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "AccountId": { + "target": "com.amazonaws.s3control#AccountId", + "traits": { + "smithy.api#documentation": "

\nThe Amazon Web Services account ID of the Storage Lens group owner.\n

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-account-id", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "AccountId" + } + } + }, + "StorageLensGroup": { + "target": "com.amazonaws.s3control#StorageLensGroup", + "traits": { + "smithy.api#documentation": "

\nThe JSON file that contains the Storage Lens group configuration.\n

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3control#UserArguments": { + "type": "map", + "key": { + "target": "com.amazonaws.s3control#NonEmptyMaxLength64String" + }, + "value": { + "target": "com.amazonaws.s3control#MaxLength1024String" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, + "com.amazonaws.s3control#VersioningConfiguration": { + "type": "structure", + "members": { + "MFADelete": { + "target": "com.amazonaws.s3control#MFADelete", + "traits": { + "smithy.api#documentation": "

Specifies whether MFA delete is enabled or disabled in the bucket versioning\n configuration for the S3 on Outposts bucket.

", + "smithy.api#xmlName": "MfaDelete" + } + }, + "Status": { + "target": "com.amazonaws.s3control#BucketVersioningStatus", + "traits": { + "smithy.api#documentation": "

Sets the versioning state of the S3 on Outposts bucket.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the versioning state of an Amazon S3 on Outposts bucket. For more information, see\n PutBucketVersioning.

" + } + }, + "com.amazonaws.s3control#VpcConfiguration": { + "type": "structure", + "members": { + "VpcId": { + "target": "com.amazonaws.s3control#VpcId", + "traits": { + "smithy.api#documentation": "

If this field is specified, this access point will only allow connections from the specified VPC\n ID.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The virtual private cloud (VPC) configuration for an access point.

" + } + }, + "com.amazonaws.s3control#VpcId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1024 + } + } } - } } - } } diff --git a/aws/sdk/aws-models/s3.json b/aws/sdk/aws-models/s3.json index e47f5190358..00f9ff32dc6 100644 --- a/aws/sdk/aws-models/s3.json +++ b/aws/sdk/aws-models/s3.json @@ -1,36687 +1,40250 @@ { - "smithy": "2.0", - "metadata": { - "suppressions": [ - { - "id": "HttpMethodSemantics", - "namespace": "*" - }, - { - "id": "HttpResponseCodeSemantics", - "namespace": "*" - }, - { - "id": "PaginatedTrait", - "namespace": "*" - }, - { - "id": "HttpHeaderTrait", - "namespace": "*" - }, - { - "id": "HttpUriConflict", - "namespace": "*" - }, - { - "id": "Service", - "namespace": "*" - } - ] - }, - "shapes": { - "com.amazonaws.s3#AbortDate": { - "type": "timestamp" - }, - "com.amazonaws.s3#AbortIncompleteMultipartUpload": { - "type": "structure", - "members": { - "DaysAfterInitiation": { - "target": "com.amazonaws.s3#DaysAfterInitiation", - "traits": { - "smithy.api#documentation": "

Specifies the number of days after which Amazon S3 aborts an incomplete multipart\n upload.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will\n wait before permanently removing all parts of the upload. For more information, see \n Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration in\n the Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3#AbortMultipartUpload": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#AbortMultipartUploadRequest" - }, - "output": { - "target": "com.amazonaws.s3#AbortMultipartUploadOutput" - }, - "errors": [ - { - "target": "com.amazonaws.s3#NoSuchUpload" - } - ], - "traits": { - "smithy.api#documentation": "

This operation aborts a multipart upload. After a multipart upload is aborted, no\n additional parts can be uploaded using that upload ID. The storage consumed by any\n previously uploaded parts will be freed. However, if any part uploads are currently in\n progress, those part uploads might or might not succeed. As a result, it might be necessary\n to abort a given multipart upload multiple times in order to completely free all storage\n consumed by all parts.

\n

To verify that all parts have been removed and prevent getting charged for the part\n storage, you should call the ListParts API operation and ensure\n that the parts list is empty.

\n \n
    \n
  • \n

    \n Directory buckets - If multipart\n uploads in a directory bucket are in progress, you can't delete the bucket until\n all the in-progress multipart uploads are aborted or completed. To delete these\n in-progress multipart uploads, use the ListMultipartUploads operation\n to list the in-progress multipart uploads in the bucket and use the\n AbortMultipartUpload operation to abort all the in-progress\n multipart uploads.

    \n
  • \n
  • \n

    \n Directory buckets -\n For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - For\n information about permissions required to use the multipart upload, see\n Multipart Upload and\n Permissions in the Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to AbortMultipartUpload:

\n ", - "smithy.api#examples": [ - { - "title": "To abort a multipart upload", - "documentation": "The following example aborts a multipart upload.", - "input": { - "Bucket": "examplebucket", - "Key": "bigobject", - "UploadId": "xadcOB_7YPBOJuoFiQ9cz4P3Pe6FIZwO4f7wN93uHsNBEw97pl5eNwzExg0LAT2dUN91cOmrEQHDsP3WA60CEg--" - }, - "output": {} - } - ], - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}/{Key+}?x-id=AbortMultipartUpload", - "code": 204 - } - } - }, - "com.amazonaws.s3#AbortMultipartUploadOutput": { - "type": "structure", - "members": { - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#AbortMultipartUploadRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name to which the upload was taking place.

\n

\n Directory buckets -\n When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Key of the object for which the multipart upload was initiated.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Key" - } - } - }, - "UploadId": { - "target": "com.amazonaws.s3#MultipartUploadId", - "traits": { - "smithy.api#documentation": "

Upload ID that identifies the multipart upload.

", - "smithy.api#httpQuery": "uploadId", - "smithy.api#required": {} - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "IfMatchInitiatedTime": { - "target": "com.amazonaws.s3#IfMatchInitiatedTime", - "traits": { - "smithy.api#documentation": "

If present, this header aborts an in progress multipart upload only if it was initiated on the provided timestamp.\n If the initiated timestamp of the multipart upload does not match the provided value, the operation returns a 412 Precondition Failed error. \n If the initiated timestamp matches or if the multipart upload doesn’t exist, the operation returns a 204 Success (No Content) response. \n

\n \n

This functionality is only supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-if-match-initiated-time" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#AbortRuleId": { - "type": "string" - }, - "com.amazonaws.s3#AccelerateConfiguration": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3#BucketAccelerateStatus", - "traits": { - "smithy.api#documentation": "

Specifies the transfer acceleration status of the bucket.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Configures the transfer acceleration state for an Amazon S3 bucket. For more information, see\n Amazon S3\n Transfer Acceleration in the Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3#AcceptRanges": { - "type": "string" - }, - "com.amazonaws.s3#AccessControlPolicy": { - "type": "structure", - "members": { - "Grants": { - "target": "com.amazonaws.s3#Grants", - "traits": { - "smithy.api#documentation": "

A list of grants.

", - "smithy.api#xmlName": "AccessControlList" - } - }, - "Owner": { - "target": "com.amazonaws.s3#Owner", - "traits": { - "smithy.api#documentation": "

Container for the bucket owner's display name and ID.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the elements that set the ACL permissions for an object per grantee.

" - } - }, - "com.amazonaws.s3#AccessControlTranslation": { - "type": "structure", - "members": { - "Owner": { - "target": "com.amazonaws.s3#OwnerOverride", - "traits": { - "smithy.api#documentation": "

Specifies the replica ownership. For default and valid values, see PUT bucket\n replication in the Amazon S3 API Reference.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for information about access control for replicas.

" - } - }, - "com.amazonaws.s3#AccessKeyIdValue": { - "type": "string" - }, - "com.amazonaws.s3#AccessPointAlias": { - "type": "boolean" - }, - "com.amazonaws.s3#AccessPointArn": { - "type": "string" - }, - "com.amazonaws.s3#AccountId": { - "type": "string" - }, - "com.amazonaws.s3#AllowQuotedRecordDelimiter": { - "type": "boolean" - }, - "com.amazonaws.s3#AllowedHeader": { - "type": "string" - }, - "com.amazonaws.s3#AllowedHeaders": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#AllowedHeader" - } - }, - "com.amazonaws.s3#AllowedMethod": { - "type": "string" - }, - "com.amazonaws.s3#AllowedMethods": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#AllowedMethod" - } - }, - "com.amazonaws.s3#AllowedOrigin": { - "type": "string" - }, - "com.amazonaws.s3#AllowedOrigins": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#AllowedOrigin" - } - }, - "com.amazonaws.s3#AmazonS3": { - "type": "service", - "version": "2006-03-01", - "operations": [ - { - "target": "com.amazonaws.s3#AbortMultipartUpload" - }, - { - "target": "com.amazonaws.s3#CompleteMultipartUpload" - }, - { - "target": "com.amazonaws.s3#CopyObject" - }, - { - "target": "com.amazonaws.s3#CreateBucket" - }, - { - "target": "com.amazonaws.s3#CreateBucketMetadataTableConfiguration" - }, - { - "target": "com.amazonaws.s3#CreateMultipartUpload" - }, - { - "target": "com.amazonaws.s3#CreateSession" - }, - { - "target": "com.amazonaws.s3#DeleteBucket" - }, - { - "target": "com.amazonaws.s3#DeleteBucketAnalyticsConfiguration" - }, - { - "target": "com.amazonaws.s3#DeleteBucketCors" - }, - { - "target": "com.amazonaws.s3#DeleteBucketEncryption" - }, - { - "target": "com.amazonaws.s3#DeleteBucketIntelligentTieringConfiguration" - }, - { - "target": "com.amazonaws.s3#DeleteBucketInventoryConfiguration" - }, - { - "target": "com.amazonaws.s3#DeleteBucketLifecycle" - }, - { - "target": "com.amazonaws.s3#DeleteBucketMetadataTableConfiguration" - }, - { - "target": "com.amazonaws.s3#DeleteBucketMetricsConfiguration" - }, - { - "target": "com.amazonaws.s3#DeleteBucketOwnershipControls" - }, - { - "target": "com.amazonaws.s3#DeleteBucketPolicy" - }, - { - "target": "com.amazonaws.s3#DeleteBucketReplication" - }, - { - "target": "com.amazonaws.s3#DeleteBucketTagging" - }, - { - "target": "com.amazonaws.s3#DeleteBucketWebsite" - }, - { - "target": "com.amazonaws.s3#DeleteObject" - }, - { - "target": "com.amazonaws.s3#DeleteObjects" - }, - { - "target": "com.amazonaws.s3#DeleteObjectTagging" - }, - { - "target": "com.amazonaws.s3#DeletePublicAccessBlock" - }, - { - "target": "com.amazonaws.s3#GetBucketAccelerateConfiguration" - }, - { - "target": "com.amazonaws.s3#GetBucketAcl" - }, - { - "target": "com.amazonaws.s3#GetBucketAnalyticsConfiguration" - }, - { - "target": "com.amazonaws.s3#GetBucketCors" - }, - { - "target": "com.amazonaws.s3#GetBucketEncryption" - }, - { - "target": "com.amazonaws.s3#GetBucketIntelligentTieringConfiguration" - }, - { - "target": "com.amazonaws.s3#GetBucketInventoryConfiguration" - }, - { - "target": "com.amazonaws.s3#GetBucketLifecycleConfiguration" - }, - { - "target": "com.amazonaws.s3#GetBucketLocation" - }, - { - "target": "com.amazonaws.s3#GetBucketLogging" - }, - { - "target": "com.amazonaws.s3#GetBucketMetadataTableConfiguration" - }, - { - "target": "com.amazonaws.s3#GetBucketMetricsConfiguration" - }, - { - "target": "com.amazonaws.s3#GetBucketNotificationConfiguration" - }, - { - "target": "com.amazonaws.s3#GetBucketOwnershipControls" - }, - { - "target": "com.amazonaws.s3#GetBucketPolicy" - }, - { - "target": "com.amazonaws.s3#GetBucketPolicyStatus" - }, - { - "target": "com.amazonaws.s3#GetBucketReplication" - }, - { - "target": "com.amazonaws.s3#GetBucketRequestPayment" - }, - { - "target": "com.amazonaws.s3#GetBucketTagging" - }, - { - "target": "com.amazonaws.s3#GetBucketVersioning" - }, - { - "target": "com.amazonaws.s3#GetBucketWebsite" - }, - { - "target": "com.amazonaws.s3#GetObject" - }, - { - "target": "com.amazonaws.s3#GetObjectAcl" - }, - { - "target": "com.amazonaws.s3#GetObjectAttributes" - }, - { - "target": "com.amazonaws.s3#GetObjectLegalHold" - }, - { - "target": "com.amazonaws.s3#GetObjectLockConfiguration" - }, - { - "target": "com.amazonaws.s3#GetObjectRetention" - }, - { - "target": "com.amazonaws.s3#GetObjectTagging" - }, - { - "target": "com.amazonaws.s3#GetObjectTorrent" - }, - { - "target": "com.amazonaws.s3#GetPublicAccessBlock" - }, - { - "target": "com.amazonaws.s3#HeadBucket" - }, - { - "target": "com.amazonaws.s3#HeadObject" - }, - { - "target": "com.amazonaws.s3#ListBucketAnalyticsConfigurations" - }, - { - "target": "com.amazonaws.s3#ListBucketIntelligentTieringConfigurations" - }, - { - "target": "com.amazonaws.s3#ListBucketInventoryConfigurations" - }, - { - "target": "com.amazonaws.s3#ListBucketMetricsConfigurations" - }, - { - "target": "com.amazonaws.s3#ListBuckets" - }, - { - "target": "com.amazonaws.s3#ListDirectoryBuckets" - }, - { - "target": "com.amazonaws.s3#ListMultipartUploads" - }, - { - "target": "com.amazonaws.s3#ListObjects" - }, - { - "target": "com.amazonaws.s3#ListObjectsV2" - }, - { - "target": "com.amazonaws.s3#ListObjectVersions" - }, - { - "target": "com.amazonaws.s3#ListParts" - }, - { - "target": "com.amazonaws.s3#PutBucketAccelerateConfiguration" - }, - { - "target": "com.amazonaws.s3#PutBucketAcl" - }, - { - "target": "com.amazonaws.s3#PutBucketAnalyticsConfiguration" - }, - { - "target": "com.amazonaws.s3#PutBucketCors" - }, - { - "target": "com.amazonaws.s3#PutBucketEncryption" - }, - { - "target": "com.amazonaws.s3#PutBucketIntelligentTieringConfiguration" - }, - { - "target": "com.amazonaws.s3#PutBucketInventoryConfiguration" - }, - { - "target": "com.amazonaws.s3#PutBucketLifecycleConfiguration" - }, - { - "target": "com.amazonaws.s3#PutBucketLogging" - }, - { - "target": "com.amazonaws.s3#PutBucketMetricsConfiguration" - }, - { - "target": "com.amazonaws.s3#PutBucketNotificationConfiguration" + "smithy": "2.0", + "metadata": { + "suppressions": [ + { + "id": "HttpMethodSemantics", + "namespace": "*" + }, + { + "id": "HttpResponseCodeSemantics", + "namespace": "*" + }, + { + "id": "PaginatedTrait", + "namespace": "*" + }, + { + "id": "HttpHeaderTrait", + "namespace": "*" + }, + { + "id": "HttpUriConflict", + "namespace": "*" + }, + { + "id": "Service", + "namespace": "*" + } + ] + }, + "shapes": { + "com.amazonaws.s3#AbortDate": { + "type": "timestamp" + }, + "com.amazonaws.s3#AbortIncompleteMultipartUpload": { + "type": "structure", + "members": { + "DaysAfterInitiation": { + "target": "com.amazonaws.s3#DaysAfterInitiation", + "traits": { + "smithy.api#documentation": "

Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before\n permanently removing all parts of the upload. For more information, see Aborting\n Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration in the\n Amazon S3 User Guide.

" + } }, - { - "target": "com.amazonaws.s3#PutBucketOwnershipControls" + "com.amazonaws.s3#AbortMultipartUpload": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#AbortMultipartUploadRequest" + }, + "output": { + "target": "com.amazonaws.s3#AbortMultipartUploadOutput" + }, + "errors": [ + { + "target": "com.amazonaws.s3#NoSuchUpload" + } + ], + "traits": { + "smithy.api#documentation": "

This operation aborts a multipart upload. After a multipart upload is aborted, no additional parts\n can be uploaded using that upload ID. The storage consumed by any previously uploaded parts will be\n freed. However, if any part uploads are currently in progress, those part uploads might or might not\n succeed. As a result, it might be necessary to abort a given multipart upload multiple times in order to\n completely free all storage consumed by all parts.

\n

To verify that all parts have been removed and prevent getting charged for the part storage, you\n should call the ListParts API operation and ensure that the parts list is empty.

\n \n
    \n
  • \n

    \n Directory buckets - If multipart uploads in a\n directory bucket are in progress, you can't delete the bucket until all the in-progress multipart\n uploads are aborted or completed. To delete these in-progress multipart uploads, use the\n ListMultipartUploads operation to list the in-progress multipart uploads in the\n bucket and use the AbortMultipartUpload operation to abort all the in-progress\n multipart uploads.

    \n
  • \n
  • \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - For information\n about permissions required to use the multipart upload, see Multipart Upload and Permissions in\n the Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to AbortMultipartUpload:

\n ", + "smithy.api#examples": [ + { + "title": "To abort a multipart upload", + "documentation": "The following example aborts a multipart upload.", + "input": { + "Bucket": "examplebucket", + "Key": "bigobject", + "UploadId": "xadcOB_7YPBOJuoFiQ9cz4P3Pe6FIZwO4f7wN93uHsNBEw97pl5eNwzExg0LAT2dUN91cOmrEQHDsP3WA60CEg--" + }, + "output": {} + } + ], + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}/{Key+}?x-id=AbortMultipartUpload", + "code": 204 + } + } }, - { - "target": "com.amazonaws.s3#PutBucketPolicy" + "com.amazonaws.s3#AbortMultipartUploadOutput": { + "type": "structure", + "members": { + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } + } + }, + "traits": { + "smithy.api#output": {} + } }, - { - "target": "com.amazonaws.s3#PutBucketReplication" + "com.amazonaws.s3#AbortMultipartUploadRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name to which the upload was taking place.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Key of the object for which the multipart upload was initiated.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Key" + } + } + }, + "UploadId": { + "target": "com.amazonaws.s3#MultipartUploadId", + "traits": { + "smithy.api#documentation": "

Upload ID that identifies the multipart upload.

", + "smithy.api#httpQuery": "uploadId", + "smithy.api#required": {} + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "IfMatchInitiatedTime": { + "target": "com.amazonaws.s3#IfMatchInitiatedTime", + "traits": { + "smithy.api#documentation": "

If present, this header aborts an in progress multipart upload only if it was initiated on the\n provided timestamp. If the initiated timestamp of the multipart upload does not match the provided\n value, the operation returns a 412 Precondition Failed error. If the initiated timestamp\n matches or if the multipart upload doesn’t exist, the operation returns a 204 Success (No\n Content) response.

\n \n

This functionality is only supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-if-match-initiated-time" + } + } + }, + "traits": { + "smithy.api#input": {} + } }, - { - "target": "com.amazonaws.s3#PutBucketRequestPayment" + "com.amazonaws.s3#AbortRuleId": { + "type": "string" }, - { - "target": "com.amazonaws.s3#PutBucketTagging" + "com.amazonaws.s3#AccelerateConfiguration": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3#BucketAccelerateStatus", + "traits": { + "smithy.api#documentation": "

Specifies the transfer acceleration status of the bucket.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Configures the transfer acceleration state for an Amazon S3 bucket. For more information, see Amazon S3 Transfer\n Acceleration in the Amazon S3 User Guide.

" + } }, - { - "target": "com.amazonaws.s3#PutBucketVersioning" + "com.amazonaws.s3#AcceptRanges": { + "type": "string" + }, + "com.amazonaws.s3#AccessControlPolicy": { + "type": "structure", + "members": { + "Grants": { + "target": "com.amazonaws.s3#Grants", + "traits": { + "smithy.api#documentation": "

A list of grants.

", + "smithy.api#xmlName": "AccessControlList" + } + }, + "Owner": { + "target": "com.amazonaws.s3#Owner", + "traits": { + "smithy.api#documentation": "

Container for the bucket owner's display name and ID.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the elements that set the ACL permissions for an object per grantee.

" + } }, - { - "target": "com.amazonaws.s3#PutBucketWebsite" + "com.amazonaws.s3#AccessControlTranslation": { + "type": "structure", + "members": { + "Owner": { + "target": "com.amazonaws.s3#OwnerOverride", + "traits": { + "smithy.api#documentation": "

Specifies the replica ownership. For default and valid values, see PUT bucket replication in the\n Amazon S3 API Reference.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for information about access control for replicas.

" + } }, - { - "target": "com.amazonaws.s3#PutObject" + "com.amazonaws.s3#AccessKeyIdValue": { + "type": "string" }, - { - "target": "com.amazonaws.s3#PutObjectAcl" + "com.amazonaws.s3#AccessPointAlias": { + "type": "boolean" }, - { - "target": "com.amazonaws.s3#PutObjectLegalHold" + "com.amazonaws.s3#AccessPointArn": { + "type": "string" }, - { - "target": "com.amazonaws.s3#PutObjectLockConfiguration" + "com.amazonaws.s3#AccountId": { + "type": "string" }, - { - "target": "com.amazonaws.s3#PutObjectRetention" + "com.amazonaws.s3#AllowQuotedRecordDelimiter": { + "type": "boolean" }, - { - "target": "com.amazonaws.s3#PutObjectTagging" + "com.amazonaws.s3#AllowedHeader": { + "type": "string" }, - { - "target": "com.amazonaws.s3#PutPublicAccessBlock" + "com.amazonaws.s3#AllowedHeaders": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#AllowedHeader" + } }, - { - "target": "com.amazonaws.s3#RestoreObject" + "com.amazonaws.s3#AllowedMethod": { + "type": "string" }, - { - "target": "com.amazonaws.s3#SelectObjectContent" + "com.amazonaws.s3#AllowedMethods": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#AllowedMethod" + } }, - { - "target": "com.amazonaws.s3#UploadPart" + "com.amazonaws.s3#AllowedOrigin": { + "type": "string" }, - { - "target": "com.amazonaws.s3#UploadPartCopy" + "com.amazonaws.s3#AllowedOrigins": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#AllowedOrigin" + } }, - { - "target": "com.amazonaws.s3#WriteGetObjectResponse" - } - ], - "traits": { - "aws.api#service": { - "sdkId": "S3", - "arnNamespace": "s3", - "cloudFormationName": "S3", - "cloudTrailEventSource": "s3.amazonaws.com", - "endpointPrefix": "s3" - }, - "aws.auth#sigv4": { - "name": "s3" - }, - "aws.protocols#restXml": { - "noErrorWrapping": true - }, - "smithy.api#documentation": "

", - "smithy.api#suppress": ["RuleSetAuthSchemes"], - "smithy.api#title": "Amazon Simple Storage Service", - "smithy.api#xmlNamespace": { - "uri": "http://s3.amazonaws.com/doc/2006-03-01/" - }, - "smithy.rules#clientContextParams": { - "ForcePathStyle": { - "documentation": "Forces this client to use path-style addressing for buckets.", - "type": "boolean" - }, - "UseArnRegion": { - "documentation": "Enables this client to use an ARN's region when constructing an endpoint instead of the client's configured region.", - "type": "boolean" - }, - "DisableMultiRegionAccessPoints": { - "documentation": "Disables this client's usage of Multi-Region Access Points.", - "type": "boolean" - }, - "Accelerate": { - "documentation": "Enables this client to use S3 Transfer Acceleration endpoints.", - "type": "boolean" - }, - "DisableS3ExpressSessionAuth": { - "documentation": "Disables this client's usage of Session Auth for S3Express buckets and reverts to using conventional SigV4 for those.", - "type": "boolean" - } - }, - "smithy.rules#endpointRuleSet": { - "version": "1.0", - "parameters": { - "Bucket": { - "required": false, - "documentation": "The S3 bucket used to send the request. This is an optional parameter that will be set automatically for operations that are scoped to an S3 bucket.", - "type": "String" - }, - "Region": { - "builtIn": "AWS::Region", - "required": false, - "documentation": "The AWS region used to dispatch the request.", - "type": "String" - }, - "UseFIPS": { - "builtIn": "AWS::UseFIPS", - "required": true, - "default": false, - "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", - "type": "Boolean" - }, - "UseDualStack": { - "builtIn": "AWS::UseDualStack", - "required": true, - "default": false, - "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", - "type": "Boolean" - }, - "Endpoint": { - "builtIn": "SDK::Endpoint", - "required": false, - "documentation": "Override the endpoint used to send this request", - "type": "String" - }, - "ForcePathStyle": { - "builtIn": "AWS::S3::ForcePathStyle", - "required": true, - "default": false, - "documentation": "When true, force a path-style endpoint to be used where the bucket name is part of the path.", - "type": "Boolean" - }, - "Accelerate": { - "builtIn": "AWS::S3::Accelerate", - "required": true, - "default": false, - "documentation": "When true, use S3 Accelerate. NOTE: Not all regions support S3 accelerate.", - "type": "Boolean" - }, - "UseGlobalEndpoint": { - "builtIn": "AWS::S3::UseGlobalEndpoint", - "required": true, - "default": false, - "documentation": "Whether the global endpoint should be used, rather then the regional endpoint for us-east-1.", - "type": "Boolean" - }, - "UseObjectLambdaEndpoint": { - "required": false, - "documentation": "Internal parameter to use object lambda endpoint for an operation (eg: WriteGetObjectResponse)", - "type": "Boolean" - }, - "Key": { - "required": false, - "documentation": "The S3 Key used to send the request. This is an optional parameter that will be set automatically for operations that are scoped to an S3 Key.", - "type": "String" - }, - "Prefix": { - "required": false, - "documentation": "The S3 Prefix used to send the request. This is an optional parameter that will be set automatically for operations that are scoped to an S3 Prefix.", - "type": "String" - }, - "CopySource": { - "required": false, - "documentation": "The Copy Source used for Copy Object request. This is an optional parameter that will be set automatically for operations that are scoped to Copy Source.", - "type": "String" - }, - "DisableAccessPoints": { - "required": false, - "documentation": "Internal parameter to disable Access Point Buckets", - "type": "Boolean" - }, - "DisableMultiRegionAccessPoints": { - "builtIn": "AWS::S3::DisableMultiRegionAccessPoints", - "required": true, - "default": false, - "documentation": "Whether multi-region access points (MRAP) should be disabled.", - "type": "Boolean" - }, - "UseArnRegion": { - "builtIn": "AWS::S3::UseArnRegion", - "required": false, - "documentation": "When an Access Point ARN is provided and this flag is enabled, the SDK MUST use the ARN's region when constructing the endpoint instead of the client's configured region.", - "type": "Boolean" - }, - "UseS3ExpressControlEndpoint": { - "required": false, - "documentation": "Internal parameter to indicate whether S3Express operation should use control plane, (ex. CreateBucket)", - "type": "Boolean" - }, - "DisableS3ExpressSessionAuth": { - "required": false, - "documentation": "Parameter to indicate whether S3Express session auth should be disabled", - "type": "Boolean" - } - }, - "rules": [ - { - "conditions": [ + "com.amazonaws.s3#AmazonS3": { + "type": "service", + "version": "2006-03-01", + "operations": [ { - "fn": "isSet", - "argv": [ - { - "ref": "Region" - } - ] - } - ], - "rules": [ + "target": "com.amazonaws.s3#AbortMultipartUpload" + }, { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "error": "Accelerate cannot be used with FIPS", - "type": "error" + "target": "com.amazonaws.s3#CompleteMultipartUpload" }, { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ], - "error": "Cannot set dual-stack in combination with a custom endpoint.", - "type": "error" + "target": "com.amazonaws.s3#CopyObject" }, { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "error": "A custom endpoint cannot be combined with FIPS", - "type": "error" + "target": "com.amazonaws.s3#CreateBucket" }, { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] - } - ], - "error": "A custom endpoint cannot be combined with S3 Accelerate", - "type": "error" + "target": "com.amazonaws.s3#CreateBucketMetadataConfiguration" }, { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "partitionResult" - }, - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "partitionResult" - }, - "name" - ] - }, - "aws-cn" - ] - } - ], - "error": "Partition does not support FIPS", - "type": "error" + "target": "com.amazonaws.s3#CreateBucketMetadataTableConfiguration" }, { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Bucket" - } - ] - }, - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 0, - 6, - true - ], - "assign": "bucketSuffix" - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "bucketSuffix" - }, - "--x-s3" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "S3Express does not support Dual-stack.", - "type": "error" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] - } - ], - "error": "S3Express does not support S3 Accelerate.", - "type": "error" + "target": "com.amazonaws.s3#CreateMultipartUpload" + }, + { + "target": "com.amazonaws.s3#CreateSession" + }, + { + "target": "com.amazonaws.s3#DeleteBucket" + }, + { + "target": "com.amazonaws.s3#DeleteBucketAnalyticsConfiguration" + }, + { + "target": "com.amazonaws.s3#DeleteBucketCors" + }, + { + "target": "com.amazonaws.s3#DeleteBucketEncryption" + }, + { + "target": "com.amazonaws.s3#DeleteBucketIntelligentTieringConfiguration" + }, + { + "target": "com.amazonaws.s3#DeleteBucketInventoryConfiguration" + }, + { + "target": "com.amazonaws.s3#DeleteBucketLifecycle" + }, + { + "target": "com.amazonaws.s3#DeleteBucketMetadataConfiguration" + }, + { + "target": "com.amazonaws.s3#DeleteBucketMetadataTableConfiguration" + }, + { + "target": "com.amazonaws.s3#DeleteBucketMetricsConfiguration" + }, + { + "target": "com.amazonaws.s3#DeleteBucketOwnershipControls" + }, + { + "target": "com.amazonaws.s3#DeleteBucketPolicy" + }, + { + "target": "com.amazonaws.s3#DeleteBucketReplication" + }, + { + "target": "com.amazonaws.s3#DeleteBucketTagging" + }, + { + "target": "com.amazonaws.s3#DeleteBucketWebsite" + }, + { + "target": "com.amazonaws.s3#DeleteObject" + }, + { + "target": "com.amazonaws.s3#DeleteObjects" + }, + { + "target": "com.amazonaws.s3#DeleteObjectTagging" + }, + { + "target": "com.amazonaws.s3#DeletePublicAccessBlock" + }, + { + "target": "com.amazonaws.s3#GetBucketAccelerateConfiguration" + }, + { + "target": "com.amazonaws.s3#GetBucketAcl" + }, + { + "target": "com.amazonaws.s3#GetBucketAnalyticsConfiguration" + }, + { + "target": "com.amazonaws.s3#GetBucketCors" + }, + { + "target": "com.amazonaws.s3#GetBucketEncryption" + }, + { + "target": "com.amazonaws.s3#GetBucketIntelligentTieringConfiguration" + }, + { + "target": "com.amazonaws.s3#GetBucketInventoryConfiguration" + }, + { + "target": "com.amazonaws.s3#GetBucketLifecycleConfiguration" + }, + { + "target": "com.amazonaws.s3#GetBucketLocation" + }, + { + "target": "com.amazonaws.s3#GetBucketLogging" + }, + { + "target": "com.amazonaws.s3#GetBucketMetadataConfiguration" + }, + { + "target": "com.amazonaws.s3#GetBucketMetadataTableConfiguration" + }, + { + "target": "com.amazonaws.s3#GetBucketMetricsConfiguration" + }, + { + "target": "com.amazonaws.s3#GetBucketNotificationConfiguration" + }, + { + "target": "com.amazonaws.s3#GetBucketOwnershipControls" + }, + { + "target": "com.amazonaws.s3#GetBucketPolicy" + }, + { + "target": "com.amazonaws.s3#GetBucketPolicyStatus" + }, + { + "target": "com.amazonaws.s3#GetBucketReplication" + }, + { + "target": "com.amazonaws.s3#GetBucketRequestPayment" + }, + { + "target": "com.amazonaws.s3#GetBucketTagging" + }, + { + "target": "com.amazonaws.s3#GetBucketVersioning" + }, + { + "target": "com.amazonaws.s3#GetBucketWebsite" + }, + { + "target": "com.amazonaws.s3#GetObject" + }, + { + "target": "com.amazonaws.s3#GetObjectAcl" + }, + { + "target": "com.amazonaws.s3#GetObjectAttributes" + }, + { + "target": "com.amazonaws.s3#GetObjectLegalHold" + }, + { + "target": "com.amazonaws.s3#GetObjectLockConfiguration" + }, + { + "target": "com.amazonaws.s3#GetObjectRetention" + }, + { + "target": "com.amazonaws.s3#GetObjectTagging" + }, + { + "target": "com.amazonaws.s3#GetObjectTorrent" + }, + { + "target": "com.amazonaws.s3#GetPublicAccessBlock" + }, + { + "target": "com.amazonaws.s3#HeadBucket" + }, + { + "target": "com.amazonaws.s3#HeadObject" + }, + { + "target": "com.amazonaws.s3#ListBucketAnalyticsConfigurations" + }, + { + "target": "com.amazonaws.s3#ListBucketIntelligentTieringConfigurations" + }, + { + "target": "com.amazonaws.s3#ListBucketInventoryConfigurations" + }, + { + "target": "com.amazonaws.s3#ListBucketMetricsConfigurations" + }, + { + "target": "com.amazonaws.s3#ListBuckets" + }, + { + "target": "com.amazonaws.s3#ListDirectoryBuckets" + }, + { + "target": "com.amazonaws.s3#ListMultipartUploads" + }, + { + "target": "com.amazonaws.s3#ListObjects" + }, + { + "target": "com.amazonaws.s3#ListObjectsV2" + }, + { + "target": "com.amazonaws.s3#ListObjectVersions" + }, + { + "target": "com.amazonaws.s3#ListParts" + }, + { + "target": "com.amazonaws.s3#PutBucketAccelerateConfiguration" + }, + { + "target": "com.amazonaws.s3#PutBucketAcl" + }, + { + "target": "com.amazonaws.s3#PutBucketAnalyticsConfiguration" + }, + { + "target": "com.amazonaws.s3#PutBucketCors" + }, + { + "target": "com.amazonaws.s3#PutBucketEncryption" + }, + { + "target": "com.amazonaws.s3#PutBucketIntelligentTieringConfiguration" + }, + { + "target": "com.amazonaws.s3#PutBucketInventoryConfiguration" + }, + { + "target": "com.amazonaws.s3#PutBucketLifecycleConfiguration" + }, + { + "target": "com.amazonaws.s3#PutBucketLogging" + }, + { + "target": "com.amazonaws.s3#PutBucketMetricsConfiguration" + }, + { + "target": "com.amazonaws.s3#PutBucketNotificationConfiguration" + }, + { + "target": "com.amazonaws.s3#PutBucketOwnershipControls" + }, + { + "target": "com.amazonaws.s3#PutBucketPolicy" + }, + { + "target": "com.amazonaws.s3#PutBucketReplication" + }, + { + "target": "com.amazonaws.s3#PutBucketRequestPayment" + }, + { + "target": "com.amazonaws.s3#PutBucketTagging" + }, + { + "target": "com.amazonaws.s3#PutBucketVersioning" + }, + { + "target": "com.amazonaws.s3#PutBucketWebsite" + }, + { + "target": "com.amazonaws.s3#PutObject" + }, + { + "target": "com.amazonaws.s3#PutObjectAcl" + }, + { + "target": "com.amazonaws.s3#PutObjectLegalHold" + }, + { + "target": "com.amazonaws.s3#PutObjectLockConfiguration" + }, + { + "target": "com.amazonaws.s3#PutObjectRetention" + }, + { + "target": "com.amazonaws.s3#PutObjectTagging" + }, + { + "target": "com.amazonaws.s3#PutPublicAccessBlock" + }, + { + "target": "com.amazonaws.s3#RenameObject" + }, + { + "target": "com.amazonaws.s3#RestoreObject" + }, + { + "target": "com.amazonaws.s3#SelectObjectContent" + }, + { + "target": "com.amazonaws.s3#UpdateBucketMetadataInventoryTableConfiguration" + }, + { + "target": "com.amazonaws.s3#UpdateBucketMetadataJournalTableConfiguration" + }, + { + "target": "com.amazonaws.s3#UploadPart" + }, + { + "target": "com.amazonaws.s3#UploadPartCopy" + }, + { + "target": "com.amazonaws.s3#WriteGetObjectResponse" + } + ], + "traits": { + "aws.api#service": { + "sdkId": "S3", + "arnNamespace": "s3", + "cloudFormationName": "S3", + "cloudTrailEventSource": "s3.amazonaws.com", + "endpointPrefix": "s3" + }, + "aws.auth#sigv4": { + "name": "s3" + }, + "aws.protocols#restXml": { + "noErrorWrapping": true + }, + "smithy.api#documentation": "

", + "smithy.api#suppress": [ + "RuleSetAuthSchemes" + ], + "smithy.api#title": "Amazon Simple Storage Service", + "smithy.api#xmlNamespace": { + "uri": "http://s3.amazonaws.com/doc/2006-03-01/" + }, + "smithy.rules#clientContextParams": { + "ForcePathStyle": { + "documentation": "Forces this client to use path-style addressing for buckets.", + "type": "boolean" }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] + "UseArnRegion": { + "documentation": "Enables this client to use an ARN's region when constructing an endpoint instead of the client's configured region.", + "type": "boolean" + }, + "DisableMultiRegionAccessPoints": { + "documentation": "Disables this client's usage of Multi-Region Access Points.", + "type": "boolean" + }, + "Accelerate": { + "documentation": "Enables this client to use S3 Transfer Acceleration endpoints.", + "type": "boolean" + }, + "DisableS3ExpressSessionAuth": { + "documentation": "Disables this client's usage of Session Auth for S3Express buckets and reverts to using conventional SigV4 for those.", + "type": "boolean" + } + }, + "smithy.rules#endpointRuleSet": { + "version": "1.0", + "parameters": { + "Bucket": { + "required": false, + "documentation": "The S3 bucket used to send the request. This is an optional parameter that will be set automatically for operations that are scoped to an S3 bucket.", + "type": "String" }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + }, + "ForcePathStyle": { + "builtIn": "AWS::S3::ForcePathStyle", + "required": true, + "default": false, + "documentation": "When true, force a path-style endpoint to be used where the bucket name is part of the path.", + "type": "Boolean" + }, + "Accelerate": { + "builtIn": "AWS::S3::Accelerate", + "required": true, + "default": false, + "documentation": "When true, use S3 Accelerate. NOTE: Not all regions support S3 accelerate.", + "type": "Boolean" + }, + "UseGlobalEndpoint": { + "builtIn": "AWS::S3::UseGlobalEndpoint", + "required": true, + "default": false, + "documentation": "Whether the global endpoint should be used, rather then the regional endpoint for us-east-1.", + "type": "Boolean" + }, + "UseObjectLambdaEndpoint": { + "required": false, + "documentation": "Internal parameter to use object lambda endpoint for an operation (eg: WriteGetObjectResponse)", + "type": "Boolean" + }, + "Key": { + "required": false, + "documentation": "The S3 Key used to send the request. This is an optional parameter that will be set automatically for operations that are scoped to an S3 Key.", + "type": "String" + }, + "Prefix": { + "required": false, + "documentation": "The S3 Prefix used to send the request. This is an optional parameter that will be set automatically for operations that are scoped to an S3 Prefix.", + "type": "String" + }, + "CopySource": { + "required": false, + "documentation": "The Copy Source used for Copy Object request. This is an optional parameter that will be set automatically for operations that are scoped to Copy Source.", + "type": "String" + }, + "DisableAccessPoints": { + "required": false, + "documentation": "Internal parameter to disable Access Point Buckets", + "type": "Boolean" + }, + "DisableMultiRegionAccessPoints": { + "builtIn": "AWS::S3::DisableMultiRegionAccessPoints", + "required": true, + "default": false, + "documentation": "Whether multi-region access points (MRAP) should be disabled.", + "type": "Boolean" + }, + "UseArnRegion": { + "builtIn": "AWS::S3::UseArnRegion", + "required": false, + "documentation": "When an Access Point ARN is provided and this flag is enabled, the SDK MUST use the ARN's region when constructing the endpoint instead of the client's configured region.", + "type": "Boolean" + }, + "UseS3ExpressControlEndpoint": { + "required": false, + "documentation": "Internal parameter to indicate whether S3Express operation should use control plane, (ex. CreateBucket)", + "type": "Boolean" + }, + "DisableS3ExpressSessionAuth": { + "required": false, + "documentation": "Parameter to indicate whether S3Express session auth should be disabled", + "type": "Boolean" } - ], - "rules": [ + }, + "rules": [ { - "conditions": [ - { - "fn": "isSet", - "argv": [ + "conditions": [ { - "ref": "DisableS3ExpressSessionAuth" + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] } - ] - }, - { - "fn": "booleanEquals", - "argv": [ + ], + "rules": [ { - "ref": "DisableS3ExpressSessionAuth" + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Accelerate cannot be used with FIPS", + "type": "error" }, - true - ] - } - ], - "rules": [ - { - "conditions": [ { - "fn": "booleanEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ + "conditions": [ { - "ref": "url" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] }, - "isIp" - ] - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "uriEncode", - "argv": [ { - "ref": "Bucket" + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] } - ], - "assign": "uri_encoded_bucket" - } - ], - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "{url#scheme}://{url#authority}/{uri_encoded_bucket}{url#path}", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "aws.isVirtualHostableS3Bucket", - "argv": [ - { - "ref": "Bucket" - }, - false - ] - } - ], - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "S3Express bucket name is not a valid virtual hostable name.", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "url" - }, - "isIp" - ] - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "uriEncode", - "argv": [ - { - "ref": "Bucket" - } - ], - "assign": "uri_encoded_bucket" - } - ], - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "{url#scheme}://{url#authority}/{uri_encoded_bucket}{url#path}", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "aws.isVirtualHostableS3Bucket", - "argv": [ - { - "ref": "Bucket" - }, - false - ] - } - ], - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "S3Express bucket name is not a valid virtual hostable name.", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "UseS3ExpressControlEndpoint" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseS3ExpressControlEndpoint" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "uriEncode", - "argv": [ - { - "ref": "Bucket" - } - ], - "assign": "uri_encoded_bucket" - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "endpoint": { - "url": "https://s3express-control-fips.{Region}.amazonaws.com/{uri_encoded_bucket}", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://s3express-control.{Region}.amazonaws.com/{uri_encoded_bucket}", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "aws.isVirtualHostableS3Bucket", - "argv": [ - { - "ref": "Bucket" - }, - false - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "DisableS3ExpressSessionAuth" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "DisableS3ExpressSessionAuth" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 6, - 14, - true - ], - "assign": "s3expressAvailabilityZoneId" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 14, - 16, - true - ], - "assign": "s3expressAvailabilityZoneDelim" + ], + "error": "Cannot set dual-stack in combination with a custom endpoint.", + "type": "error" }, { - "fn": "stringEquals", - "argv": [ - { - "ref": "s3expressAvailabilityZoneDelim" - }, - "--" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseFIPS" + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] }, - true - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 6, - 15, - true - ], - "assign": "s3expressAvailabilityZoneId" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 15, - 17, - true - ], - "assign": "s3expressAvailabilityZoneDelim" + ], + "error": "A custom endpoint cannot be combined with FIPS", + "type": "error" }, { - "fn": "stringEquals", - "argv": [ - { - "ref": "s3expressAvailabilityZoneDelim" - }, - "--" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseFIPS" + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] }, - true - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 6, - 19, - true - ], - "assign": "s3expressAvailabilityZoneId" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 19, - 21, - true - ], - "assign": "s3expressAvailabilityZoneDelim" + ], + "error": "A custom endpoint cannot be combined with S3 Accelerate", + "type": "error" }, { - "fn": "stringEquals", - "argv": [ - { - "ref": "s3expressAvailabilityZoneDelim" - }, - "--" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseFIPS" + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] }, - true - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + }, { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "partitionResult" + }, + "name" + ] + }, + "aws-cn" + ] } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 6, - 20, - true - ], - "assign": "s3expressAvailabilityZoneId" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 20, - 22, - true - ], - "assign": "s3expressAvailabilityZoneDelim" + ], + "error": "Partition does not support FIPS", + "type": "error" }, { - "fn": "stringEquals", - "argv": [ - { - "ref": "s3expressAvailabilityZoneDelim" - }, - "--" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + "conditions": [ { - "ref": "UseFIPS" + "fn": "isSet", + "argv": [ + { + "ref": "Bucket" + } + ] }, - true - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 0, + 6, + true + ], + "assign": "bucketSuffix" + }, { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" + "fn": "stringEquals", + "argv": [ + { + "ref": "bucketSuffix" + }, + "--x-s3" + ] } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 6, - 26, - true - ], - "assign": "s3expressAvailabilityZoneId" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 26, - 28, - true - ], - "assign": "s3expressAvailabilityZoneDelim" - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "s3expressAvailabilityZoneDelim" - }, - "--" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ + ], + "rules": [ { - "ref": "UseFIPS" + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "S3Express does not support Dual-stack.", + "type": "error" }, - true - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Unrecognized S3Express bucket name format.", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 6, - 14, - true - ], - "assign": "s3expressAvailabilityZoneId" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 14, - 16, - true - ], - "assign": "s3expressAvailabilityZoneDelim" - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "s3expressAvailabilityZoneDelim" - }, - "--" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 6, - 15, - true - ], - "assign": "s3expressAvailabilityZoneId" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 15, - 17, - true - ], - "assign": "s3expressAvailabilityZoneDelim" - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "s3expressAvailabilityZoneDelim" - }, - "--" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 6, - 19, - true - ], - "assign": "s3expressAvailabilityZoneId" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 19, - 21, - true - ], - "assign": "s3expressAvailabilityZoneDelim" - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "s3expressAvailabilityZoneDelim" - }, - "--" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 6, - 20, - true - ], - "assign": "s3expressAvailabilityZoneId" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 20, - 22, - true - ], - "assign": "s3expressAvailabilityZoneDelim" - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "s3expressAvailabilityZoneDelim" - }, - "--" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 6, - 26, - true - ], - "assign": "s3expressAvailabilityZoneId" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 26, - 28, - true - ], - "assign": "s3expressAvailabilityZoneDelim" - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "s3expressAvailabilityZoneDelim" - }, - "--" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Unrecognized S3Express bucket name format.", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "S3Express bucket name is not a valid virtual hostable name.", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Bucket" - } - ] - } - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "UseS3ExpressControlEndpoint" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseS3ExpressControlEndpoint" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#path}", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "endpoint": { - "url": "https://s3express-control-fips.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://s3express-control.{Region}.amazonaws.com", - "properties": { - "backend": "S3Express", - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Bucket" - } - ] - }, - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 49, - 50, - true - ], - "assign": "hardwareType" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 8, - 12, - true - ], - "assign": "regionPrefix" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 0, - 7, - true - ], - "assign": "bucketAliasSuffix" - }, - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" - }, - 32, - 49, - true - ], - "assign": "outpostId" - }, - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "regionPartition" - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "bucketAliasSuffix" - }, - "--op-s3" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "ref": "outpostId" - }, - false - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "hardwareType" - }, - "e" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "regionPrefix" - }, - "beta" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "not", - "argv": [ + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + } + ], + "error": "S3Express does not support S3 Accelerate.", + "type": "error" + }, { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - } - ], - "error": "Expected a endpoint to be specified but no endpoint was found", - "type": "error" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - } - ], - "endpoint": { - "url": "https://{Bucket}.ec2.{url#authority}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": ["*"] - }, - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.ec2.s3-outposts.{Region}.{regionPartition#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": ["*"] - }, - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "hardwareType" - }, - "o" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "regionPrefix" - }, - "beta" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - } - ], - "error": "Expected a endpoint to be specified but no endpoint was found", - "type": "error" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - } - ], - "endpoint": { - "url": "https://{Bucket}.op-{outpostId}.{url#authority}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": ["*"] - }, - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.op-{outpostId}.s3-outposts.{Region}.{regionPartition#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": ["*"] - }, - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Unrecognized hardware type: \"Expected hardware type o or e but got {hardwareType}\"", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`.", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Bucket" - } - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - } - ] - } - ], - "error": "Custom endpoint `{Endpoint}` was not a valid URI", - "type": "error" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "ForcePathStyle" - }, - false - ] - }, - { - "fn": "aws.isVirtualHostableS3Bucket", - "argv": [ - { - "ref": "Bucket" - }, - false - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "partitionResult" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "ref": "Region" - }, - false - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "DisableS3ExpressSessionAuth" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "DisableS3ExpressSessionAuth" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "url" + }, + "isIp" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "uriEncode", + "argv": [ + { + "ref": "Bucket" + } + ], + "assign": "uri_encoded_bucket" + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{url#authority}/{uri_encoded_bucket}{url#path}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "aws.isVirtualHostableS3Bucket", + "argv": [ + { + "ref": "Bucket" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "S3Express bucket name is not a valid virtual hostable name.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "url" + }, + "isIp" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "uriEncode", + "argv": [ + { + "ref": "Bucket" + } + ], + "assign": "uri_encoded_bucket" + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{url#authority}/{uri_encoded_bucket}{url#path}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "aws.isVirtualHostableS3Bucket", + "argv": [ + { + "ref": "Bucket" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "S3Express bucket name is not a valid virtual hostable name.", + "type": "error" + } + ], + "type": "tree" }, - true - ] - }, - { - "fn": "stringEquals", - "argv": [ { - "fn": "getAttr", - "argv": [ - { - "ref": "partitionResult" - }, - "name" - ] + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "UseS3ExpressControlEndpoint" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseS3ExpressControlEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "uriEncode", + "argv": [ + { + "ref": "Bucket" + } + ], + "assign": "uri_encoded_bucket" + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3express-control.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" }, - "aws-cn" - ] - } - ], - "error": "S3 Accelerate cannot be used in this region", - "type": "error" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ { - "ref": "UseDualStack" - }, - true - ] + "conditions": [ + { + "fn": "aws.isVirtualHostableS3Bucket", + "argv": [ + { + "ref": "Bucket" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "DisableS3ExpressSessionAuth" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "DisableS3ExpressSessionAuth" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 6, + 14, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 14, + 16, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 6, + 15, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 15, + 17, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 6, + 19, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 19, + 21, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 6, + 20, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 20, + 22, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 6, + 26, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 26, + 28, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Unrecognized S3Express bucket name format.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 6, + 14, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 14, + 16, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 6, + 15, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 15, + 17, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 6, + 19, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 19, + 21, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 6, + 20, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 20, + 22, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 6, + 26, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 26, + 28, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Unrecognized S3Express bucket name format.", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "S3Express bucket name is not a valid virtual hostable name.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Bucket" + } + ] + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 0, + 7, + true + ], + "assign": "accessPointSuffix" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "accessPointSuffix" + }, + "--xa-s3" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "S3Express does not support Dual-stack.", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + } + ], + "error": "S3Express does not support S3 Accelerate.", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "DisableS3ExpressSessionAuth" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "DisableS3ExpressSessionAuth" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "url" + }, + "isIp" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "uriEncode", + "argv": [ + { + "ref": "Bucket" + } + ], + "assign": "uri_encoded_bucket" + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{url#authority}/{uri_encoded_bucket}{url#path}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "aws.isVirtualHostableS3Bucket", + "argv": [ + { + "ref": "Bucket" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "S3Express bucket name is not a valid virtual hostable name.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "url" + }, + "isIp" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "uriEncode", + "argv": [ + { + "ref": "Bucket" + } + ], + "assign": "uri_encoded_bucket" + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{url#authority}/{uri_encoded_bucket}{url#path}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "aws.isVirtualHostableS3Bucket", + "argv": [ + { + "ref": "Bucket" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "S3Express bucket name is not a valid virtual hostable name.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "aws.isVirtualHostableS3Bucket", + "argv": [ + { + "ref": "Bucket" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "DisableS3ExpressSessionAuth" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "DisableS3ExpressSessionAuth" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 7, + 15, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 15, + 17, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 7, + 16, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 16, + 18, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 7, + 20, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 20, + 22, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 7, + 21, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 21, + 23, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 7, + 27, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 27, + 29, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Unrecognized S3Express bucket name format.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 7, + 15, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 15, + 17, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 7, + 16, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 16, + 18, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 7, + 20, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 20, + 22, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 7, + 21, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 21, + 23, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 7, + 27, + true + ], + "assign": "s3expressAvailabilityZoneId" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 27, + 29, + true + ], + "assign": "s3expressAvailabilityZoneDelim" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "s3expressAvailabilityZoneDelim" + }, + "--" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3express-fips-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3express-{s3expressAvailabilityZoneId}.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Unrecognized S3Express bucket name format.", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "S3Express bucket name is not a valid virtual hostable name.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Bucket" + } + ] + } + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "UseS3ExpressControlEndpoint" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseS3ExpressControlEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#path}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3express-control-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3express-control.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "backend": "S3Express", + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Bucket" + } + ] + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 49, + 50, + true + ], + "assign": "hardwareType" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 8, + 12, + true + ], + "assign": "regionPrefix" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 0, + 7, + true + ], + "assign": "bucketAliasSuffix" + }, + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 32, + 49, + true + ], + "assign": "outpostId" + }, + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "regionPartition" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "bucketAliasSuffix" + }, + "--op-s3" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "ref": "outpostId" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "hardwareType" + }, + "e" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "regionPrefix" + }, + "beta" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + } + ], + "error": "Expected a endpoint to be specified but no endpoint was found", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "endpoint": { + "url": "https://{Bucket}.ec2.{url#authority}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ] + }, + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.ec2.s3-outposts.{Region}.{regionPartition#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ] + }, + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "hardwareType" + }, + "o" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "regionPrefix" + }, + "beta" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + } + ], + "error": "Expected a endpoint to be specified but no endpoint was found", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "endpoint": { + "url": "https://{Bucket}.op-{outpostId}.{url#authority}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ] + }, + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.op-{outpostId}.s3-outposts.{Region}.{regionPartition#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ] + }, + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Unrecognized hardware type: \"Expected hardware type o or e but got {hardwareType}\"", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Bucket" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + } + ] + } + ], + "error": "Custom endpoint `{Endpoint}` was not a valid URI", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "ForcePathStyle" + }, + false + ] + }, + { + "fn": "aws.isVirtualHostableS3Bucket", + "argv": [ + { + "ref": "Bucket" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "ref": "Region" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "partitionResult" + }, + "name" + ] + }, + "aws-cn" + ] + } + ], + "error": "S3 Accelerate cannot be used in this region", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-fips.us-east-1.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-accelerate.dualstack.us-east-1.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3-accelerate.dualstack.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-accelerate.dualstack.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3.dualstack.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3.dualstack.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "url" + }, + "isIp" + ] + }, + true + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{Bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "url" + }, + "isIp" + ] + }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "url" + }, + "isIp" + ] + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "us-east-1" + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{Bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{Bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "url" + }, + "isIp" + ] + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "us-east-1" + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "url" + }, + "isIp" + ] + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{Bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "url" + }, + "isIp" + ] + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-accelerate.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "us-east-1" + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-accelerate.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3-accelerate.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3-accelerate.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "us-east-1" + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{Bucket}.s3.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://{Bucket}.s3.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid region: region was not a valid DNS name.", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "url" + }, + "scheme" + ] + }, + "http" + ] + }, + { + "fn": "aws.isVirtualHostableS3Bucket", + "argv": [ + { + "ref": "Bucket" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "ForcePathStyle" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "ref": "Region" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid region: region was not a valid DNS name.", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "ForcePathStyle" + }, + false + ] + }, + { + "fn": "aws.parseArn", + "argv": [ + { + "ref": "Bucket" + } + ], + "assign": "bucketArn" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "resourceId[0]" + ], + "assign": "arnType" + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "service" + ] + }, + "s3-object-lambda" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "accesspoint" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "resourceId[1]" + ], + "assign": "accessPointName" + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "accessPointName" + }, + "" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "S3 Object Lambda does not support Dual-stack", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + } + ], + "error": "S3 Object Lambda does not support S3 Accelerate", + "type": "error" + }, + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "region" + ] + }, + "" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "DisableAccessPoints" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "DisableAccessPoints" + }, + true + ] + } + ], + "error": "Access points are not supported for this operation", + "type": "error" + }, + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "resourceId[2]" + ] + } + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "UseArnRegion" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseArnRegion" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "region" + ] + }, + "{Region}" + ] + } + ] + } + ], + "error": "Invalid configuration: region from ARN `{bucketArn#region}` does not match client region `{Region}` and UseArnRegion is `false`", + "type": "error" + }, + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "region" + ] + } + ], + "assign": "bucketPartition" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketPartition" + }, + "name" + ] + }, + { + "fn": "getAttr", + "argv": [ + { + "ref": "partitionResult" + }, + "name" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "region" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "accountId" + ] + }, + "" + ] + } + ], + "error": "Invalid ARN: Missing account id", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "accountId" + ] + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "ref": "accessPointName" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "endpoint": { + "url": "{url#scheme}://{accessPointName}-{bucketArn#accountId}.{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "{bucketArn#region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{accessPointName}-{bucketArn#accountId}.s3-object-lambda-fips.{bucketArn#region}.{bucketPartition#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "{bucketArn#region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{accessPointName}-{bucketArn#accountId}.s3-object-lambda.{bucketArn#region}.{bucketPartition#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "{bucketArn#region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `{accessPointName}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Client was configured for partition `{partitionResult#name}` but ARN (`{Bucket}`) has `{bucketPartition#name}`", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`.", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: bucket ARN is missing a region", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: Expected a resource of the format `accesspoint:` but no name was provided", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: Object Lambda ARNs only support `accesspoint` arn types, but found: `{arnType}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "accesspoint" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "resourceId[1]" + ], + "assign": "accessPointName" + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "accessPointName" + }, + "" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "region" + ] + }, + "" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnType" + }, + "accesspoint" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "region" + ] + }, + "" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "DisableAccessPoints" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "DisableAccessPoints" + }, + true + ] + } + ], + "error": "Access points are not supported for this operation", + "type": "error" + }, + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "resourceId[2]" + ] + } + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "UseArnRegion" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseArnRegion" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "region" + ] + }, + "{Region}" + ] + } + ] + } + ], + "error": "Invalid configuration: region from ARN `{bucketArn#region}` does not match client region `{Region}` and UseArnRegion is `false`", + "type": "error" + }, + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "region" + ] + } + ], + "assign": "bucketPartition" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketPartition" + }, + "name" + ] + }, + "{partitionResult#name}" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "region" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "service" + ] + }, + "s3" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "accountId" + ] + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "ref": "accessPointName" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + } + ], + "error": "Access Points do not support S3 Accelerate", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint-fips.dualstack.{bucketArn#region}.{bucketPartition#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{bucketArn#region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + } + ], + "endpoint": { + "url": "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint-fips.{bucketArn#region}.{bucketPartition#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{bucketArn#region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "endpoint": { + "url": "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint.dualstack.{bucketArn#region}.{bucketPartition#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{bucketArn#region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "endpoint": { + "url": "{url#scheme}://{accessPointName}-{bucketArn#accountId}.{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{bucketArn#region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + } + ], + "endpoint": { + "url": "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint.{bucketArn#region}.{bucketPartition#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{bucketArn#region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `{accessPointName}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: The ARN was not for the S3 service, found: {bucketArn#service}", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Client was configured for partition `{partitionResult#name}` but ARN (`{Bucket}`) has `{bucketPartition#name}`", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`.", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "ref": "accessPointName" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "S3 MRAP does not support dual-stack", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "S3 MRAP does not support FIPS", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + } + ], + "error": "S3 MRAP does not support S3 Accelerate", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "DisableMultiRegionAccessPoints" + }, + true + ] + } + ], + "error": "Invalid configuration: Multi-Region Access Point ARNs are disabled.", + "type": "error" + }, + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "mrapPartition" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "mrapPartition" + }, + "name" + ] + }, + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "partition" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://{accessPointName}.accesspoint.s3-global.{mrapPartition#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4a", + "signingName": "s3", + "signingRegionSet": [ + "*" + ] + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Client was configured for partition `{mrapPartition#name}` but bucket referred to partition `{bucketArn#partition}`", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Access Point Name", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: Expected a resource of the format `accesspoint:` but no name was provided", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "service" + ] + }, + "s3-outposts" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "S3 Outposts does not support Dual-stack", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "S3 Outposts does not support FIPS", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + } + ], + "error": "S3 Outposts does not support S3 Accelerate", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "resourceId[4]" + ] + } + ] + } + ], + "error": "Invalid Arn: Outpost Access Point ARN contains sub resources", + "type": "error" + }, + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "resourceId[1]" + ], + "assign": "outpostId" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "ref": "outpostId" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "UseArnRegion" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseArnRegion" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "region" + ] + }, + "{Region}" + ] + } + ] + } + ], + "error": "Invalid configuration: region from ARN `{bucketArn#region}` does not match client region `{Region}` and UseArnRegion is `false`", + "type": "error" + }, + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "region" + ] + } + ], + "assign": "bucketPartition" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketPartition" + }, + "name" + ] + }, + { + "fn": "getAttr", + "argv": [ + { + "ref": "partitionResult" + }, + "name" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "region" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "accountId" + ] + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "resourceId[2]" + ], + "assign": "outpostType" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "bucketArn" + }, + "resourceId[3]" + ], + "assign": "accessPointName" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "outpostType" + }, + "accesspoint" + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "endpoint": { + "url": "https://{accessPointName}-{bucketArn#accountId}.{outpostId}.{url#authority}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ] + }, + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{bucketArn#region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://{accessPointName}-{bucketArn#accountId}.{outpostId}.s3-outposts.{bucketArn#region}.{bucketPartition#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ] + }, + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "{bucketArn#region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Expected an outpost type `accesspoint`, found {outpostType}", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: expected an access point name", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: Expected a 4-component resource", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Client was configured for partition `{partitionResult#name}` but ARN (`{Bucket}`) has `{bucketPartition#name}`", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: The outpost Id may only contain a-z, A-Z, 0-9 and `-`. Found: `{outpostId}`", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: The Outpost Id was not set", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: Unrecognized format: {Bucket} (type: {arnType})", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid ARN: No ARN type specified", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "substring", + "argv": [ + { + "ref": "Bucket" + }, + 0, + 4, + false + ], + "assign": "arnPrefix" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "arnPrefix" + }, + "arn:" + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "fn": "aws.parseArn", + "argv": [ + { + "ref": "Bucket" + } + ] + } + ] + } + ] + } + ], + "error": "Invalid ARN: `{Bucket}` was not a valid ARN", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "ForcePathStyle" + }, + true + ] + }, + { + "fn": "aws.parseArn", + "argv": [ + { + "ref": "Bucket" + } + ] + } + ], + "error": "Path-style addressing cannot be used with ARN buckets", + "type": "error" + }, + { + "conditions": [ + { + "fn": "uriEncode", + "argv": [ + { + "ref": "Bucket" + } + ], + "assign": "uri_encoded_bucket" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + false + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3-fips.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://s3-fips.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://s3-fips.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "us-east-1" + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "us-east-1" + ] + } + ], + "endpoint": { + "url": "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://s3.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Path-style addressing cannot be used with S3 Accelerate", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "UseObjectLambdaEndpoint" + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseObjectLambdaEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "ref": "Region" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "S3 Object Lambda does not support Dual-stack", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "Accelerate" + }, + true + ] + } + ], + "error": "S3 Object Lambda does not support S3 Accelerate", + "type": "error" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "endpoint": { + "url": "https://s3-object-lambda-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3-object-lambda.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid region: region was not a valid DNS name.", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Bucket" + } + ] + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "partitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "isValidHostLabel", + "argv": [ + { + "ref": "Region" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3-fips.us-east-1.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://s3-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://s3-fips.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "us-east-1" + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "{url#scheme}://{url#authority}{url#path}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ], + "endpoint": { + "url": "https://s3.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "us-east-1" + ] + } + ], + "endpoint": { + "url": "https://s3.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://s3.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + false + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + false + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ] + }, + { + "fn": "not", + "argv": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "aws-global" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseGlobalEndpoint" + }, + false + ] + } + ], + "endpoint": { + "url": "https://s3.{Region}.{partitionResult#dnsSuffix}", + "properties": { + "authSchemes": [ + { + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "{Region}" + } + ] + }, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid region: region was not a valid DNS name.", + "type": "error" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "A region must be set when sending requests to S3.", + "type": "error" + } + ] + }, + "smithy.rules#endpointTests": { + "testCases": [ + { + "documentation": "region is not a valid DNS-suffix", + "expect": { + "error": "Invalid region: region was not a valid DNS name." + }, + "params": { + "Region": "a b", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "Invalid access point ARN: Not S3", + "expect": { + "error": "Invalid ARN: The ARN was not for the S3 service, found: not-s3" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:not-s3:us-west-2:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Bucket": "arn:aws:not-s3:us-west-2:123456789012:accesspoint:myendpoint" + } + }, + { + "documentation": "Invalid access point ARN: invalid resource", + "expect": { + "error": "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint:more-data", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint:more-data" + } + }, + { + "documentation": "Invalid access point ARN: invalid no ap name", + "expect": { + "error": "Invalid ARN: Expected a resource of the format `accesspoint:` but no name was provided" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:" + } + }, + { + "documentation": "Invalid access point ARN: AccountId is invalid", + "expect": { + "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `123456_789012`" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456_789012:accesspoint:apname", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Bucket": "arn:aws:s3:us-west-2:123456_789012:accesspoint:apname" + } + }, + { + "documentation": "Invalid access point ARN: access point name is invalid", + "expect": { + "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `ap_name`" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:ap_name", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:ap_name" + } + }, + { + "documentation": "Access points (disable access points explicitly false)", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://myendpoint-123456789012.s3-accesspoint.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "DisableAccessPoints": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" + } + }, + { + "documentation": "Access points: partition does not support FIPS", + "expect": { + "error": "Partition does not support FIPS" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "Bucket": "arn:aws:s3:cn-north-1:123456789012:accesspoint:myendpoint" + } + }, + { + "documentation": "Bucket region is invalid", + "expect": { + "error": "Invalid region in ARN: `us-west -2` (invalid DNS name)" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west -2:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "DisableAccessPoints": false, + "Bucket": "arn:aws:s3:us-west -2:123456789012:accesspoint:myendpoint" + } + }, + { + "documentation": "Access points when Access points explicitly disabled (used for CreateBucket)", + "expect": { + "error": "Access points are not supported for this operation" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" + } + } + ], + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "DisableAccessPoints": true, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" + } + }, + { + "documentation": "missing arn type", + "expect": { + "error": "Invalid ARN: `arn:aws:s3:us-west-2:123456789012:` was not a valid ARN" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "DisableAccessPoints": true, + "Bucket": "arn:aws:s3:us-west-2:123456789012:" + } + }, + { + "documentation": "SDK::Host + access point + Dualstack is an error", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseDualStack": true, + "SDK::Endpoint": "https://beta.example.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Endpoint": "https://beta.example.com", + "Region": "cn-north-1", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "Access point ARN with FIPS & Dualstack", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://myendpoint-123456789012.s3-accesspoint-fips.dualstack.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true, + "Accelerate": false, + "DisableAccessPoints": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" + } + }, + { + "documentation": "Access point ARN with Dualstack", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://myendpoint-123456789012.s3-accesspoint.dualstack.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false, + "DisableAccessPoints": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" + } + }, + { + "documentation": "vanilla MRAP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4a", + "signingRegionSet": [ + "*" + ], + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://mfzwi23gnjvgw.mrap.accesspoint.s3-global.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Key": "key" + } + } + ], + "params": { + "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Region": "us-east-1", + "DisableMultiRegionAccessPoints": false, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "MRAP does not support FIPS", + "expect": { + "error": "S3 MRAP does not support FIPS" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Key": "key" + } + } + ], + "params": { + "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Region": "us-east-1", + "DisableMultiRegionAccessPoints": false, + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "MRAP does not support DualStack", + "expect": { + "error": "S3 MRAP does not support dual-stack" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Key": "key" + } + } + ], + "params": { + "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Region": "us-east-1", + "DisableMultiRegionAccessPoints": false, + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "MRAP does not support S3 Accelerate", + "expect": { + "error": "S3 MRAP does not support S3 Accelerate" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Key": "key" + } + } + ], + "params": { + "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Region": "us-east-1", + "DisableMultiRegionAccessPoints": false, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": true + } + }, + { + "documentation": "MRAP explicitly disabled", + "expect": { + "error": "Invalid configuration: Multi-Region Access Point ARNs are disabled." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::S3::DisableMultiRegionAccessPoints": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Key": "key" + } + } + ], + "params": { + "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Region": "us-east-1", + "DisableMultiRegionAccessPoints": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "Dual-stack endpoint with path-style forced", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.dualstack.us-west-2.amazonaws.com/bucketname" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseDualStack": true, + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucketname", + "Key": "key" + } + } + ], + "params": { + "Bucket": "bucketname", + "Region": "us-west-2", + "ForcePathStyle": true, + "UseFIPS": false, + "Accelerate": false, + "UseDualStack": true + } + }, + { + "documentation": "Dual-stack endpoint + SDK::Host is error", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseDualStack": true, + "SDK::Endpoint": "https://abc.com", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucketname", + "Key": "key" + } + } + ], + "params": { + "Bucket": "bucketname", + "Region": "us-west-2", + "ForcePathStyle": true, + "UseFIPS": false, + "Accelerate": false, + "UseDualStack": true, + "Endpoint": "https://abc.com" + } + }, + { + "documentation": "path style + ARN bucket", + "expect": { + "error": "Path-style addressing cannot be used with ARN buckets" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "ForcePathStyle": true, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "implicit path style bucket + dualstack", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.dualstack.us-west-2.amazonaws.com/99_ab" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseDualStack": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "99_ab", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "99_ab", + "Region": "us-west-2", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "implicit path style bucket + dualstack", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseDualStack": true, + "SDK::Endpoint": "http://abc.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "99_ab", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "99_ab", + "Region": "us-west-2", + "UseDualStack": true, + "UseFIPS": false, + "Endpoint": "http://abc.com" + } + }, + { + "documentation": "don't allow URL injections in the bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.us-west-2.amazonaws.com/example.com%23" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "example.com#", + "Key": "key" + } + } + ], + "params": { + "Bucket": "example.com#", + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false, + "Accelerate": false + } + }, + { + "documentation": "URI encode bucket names in the path", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.us-west-2.amazonaws.com/bucket%20name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket name", + "Key": "key" + } + } + ], + "params": { + "Bucket": "bucket name", + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false, + "Accelerate": false + } + }, + { + "documentation": "scheme is respected", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/99_ab" + } + }, + "params": { + "Accelerate": false, + "Bucket": "99_ab", + "Endpoint": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "scheme is respected (virtual addressing)", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "http://bucketname.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/foo" + } + }, + "params": { + "Accelerate": false, + "Bucket": "bucketname", + "Endpoint": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/foo", + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + implicit private link", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/99_ab" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "99_ab", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "99_ab", + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "invalid Endpoint override", + "expect": { + "error": "Custom endpoint `abcde://nota#url` was not a valid URI" + }, + "params": { + "Accelerate": false, + "Bucket": "bucketname", + "Endpoint": "abcde://nota#url", + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "using an IPv4 address forces path style", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://123.123.0.1/bucketname" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "SDK::Endpoint": "https://123.123.0.1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucketname", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucketname", + "Endpoint": "https://123.123.0.1", + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "vanilla access point arn with region mismatch and UseArnRegion=false", + "expect": { + "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::UseArnRegion": false + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-east-1:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:us-east-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "UseArnRegion": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "vanilla access point arn with region mismatch and UseArnRegion unset", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://myendpoint-123456789012.s3-accesspoint.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "us-east-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "vanilla access point arn with region mismatch and UseArnRegion=true", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://myendpoint-123456789012.s3-accesspoint.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::S3::UseArnRegion": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "UseArnRegion": true, + "Region": "us-east-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "subdomains are not allowed in virtual buckets", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://s3.us-east-1.amazonaws.com/bucket.name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket.name", + "Key": "key" + } + } + ], + "params": { + "Bucket": "bucket.name", + "Region": "us-east-1" + } + }, + { + "documentation": "bucket names with 3 characters are allowed in virtual buckets", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://aaa.s3.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "aaa", + "Key": "key" + } + } + ], + "params": { + "Bucket": "aaa", + "Region": "us-east-1" + } + }, + { + "documentation": "bucket names with fewer than 3 characters are not allowed in virtual host", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://s3.us-east-1.amazonaws.com/aa" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "aa", + "Key": "key" + } + } + ], + "params": { + "Bucket": "aa", + "Region": "us-east-1" + } + }, + { + "documentation": "bucket names with uppercase characters are not allowed in virtual host", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://s3.us-east-1.amazonaws.com/BucketName" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "BucketName", + "Key": "key" + } + } + ], + "params": { + "Bucket": "BucketName", + "Region": "us-east-1" + } + }, + { + "documentation": "subdomains are allowed in virtual buckets on http endpoints", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "http://bucket.name.example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "http://example.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket.name", + "Key": "key" + } + } + ], + "params": { + "Bucket": "bucket.name", + "Region": "us-east-1", + "Endpoint": "http://example.com" + } + }, + { + "documentation": "no region set", + "expect": { + "error": "A region must be set when sending requests to S3." + }, + "params": { + "Bucket": "bucket-name" + } + }, + { + "documentation": "UseGlobalEndpoints=true, region=us-east-1 uses the global endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "ListBuckets" + } + ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "UseGlobalEndpoints=true, region=us-west-2 uses the regional endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "ListBuckets" + } + ], + "params": { + "Region": "us-west-2", + "UseGlobalEndpoint": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "UseGlobalEndpoints=true, region=cn-north-1 uses the regional endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.cn-north-1.amazonaws.com.cn" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "ListBuckets" + } + ], + "params": { + "Region": "cn-north-1", + "UseGlobalEndpoint": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "UseGlobalEndpoints=true, region=us-east-1, fips=true uses the regional endpoint with fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-fips.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "ListBuckets" + } + ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "UseGlobalEndpoints=true, region=us-east-1, dualstack=true uses the regional endpoint with dualstack", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.dualstack.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true, + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "ListBuckets" + } + ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "UseGlobalEndpoints=true, region=us-east-1, dualstack and fips uses the regional endpoint with fips/dualstack", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true, + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "ListBuckets" + } + ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "UseFIPS": true, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "UseGlobalEndpoints=true, region=us-east-1 with custom endpoint, uses custom", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://example.com", + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "ListBuckets" + } + ], + "params": { + "Region": "us-east-1", + "Endpoint": "https://example.com", + "UseGlobalEndpoint": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "UseGlobalEndpoints=true, region=us-west-2 with custom endpoint, uses custom", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://example.com", + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "ListBuckets" + } + ], + "params": { + "Region": "us-west-2", + "Endpoint": "https://example.com", + "UseGlobalEndpoint": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "UseGlobalEndpoints=true, region=us-east-1 with accelerate on non bucket case uses the global endpoint and ignores accelerate", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::S3::Accelerate": true, + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "ListBuckets" + } + ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": true + } + }, + { + "documentation": "aws-global region uses the global endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global" + }, + "operationName": "ListBuckets" + } + ], + "params": { + "Region": "aws-global", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "aws-global region with fips uses the regional endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-fips.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global", + "AWS::UseFIPS": true + }, + "operationName": "ListBuckets" + } + ], + "params": { + "Region": "aws-global", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "aws-global region with dualstack uses the regional endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.dualstack.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global", + "AWS::UseDualStack": true + }, + "operationName": "ListBuckets" + } + ], + "params": { + "Region": "aws-global", + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "aws-global region with fips and dualstack uses the regional endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true + }, + "operationName": "ListBuckets" + } + ], + "params": { + "Region": "aws-global", + "UseFIPS": true, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "aws-global region with accelerate on non-bucket case, uses global endpoint and ignores accelerate", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global", + "AWS::S3::Accelerate": true + }, + "operationName": "ListBuckets" + } + ], + "params": { + "Region": "aws-global", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": true + } + }, + { + "documentation": "aws-global region with custom endpoint, uses custom", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global", + "SDK::Endpoint": "https://example.com" + }, + "operationName": "ListBuckets" + } + ], + "params": { + "Region": "aws-global", + "Endpoint": "https://example.com", + "UseGlobalEndpoint": false, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, aws-global region uses the global endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket-name.s3.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, aws-global region with Prefix, and Key uses the global endpoint. Prefix and Key parameters should not be used in endpoint evaluation.", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket-name.s3.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global" + }, + "operationName": "ListObjects", + "operationParams": { + "Bucket": "bucket-name", + "Prefix": "prefix" + } + } + ], + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Prefix": "prefix", + "Key": "key" + } + }, + { + "documentation": "virtual addressing, aws-global region with Copy Source, and Key uses the global endpoint. Copy Source and Key parameters should not be used in endpoint evaluation.", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket-name.s3.amazonaws.com" + } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "CopySource": "/copy/source", + "Key": "key" + } + }, + { + "documentation": "virtual addressing, aws-global region with fips uses the regional fips endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket-name.s3-fips.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, aws-global region with dualstack uses the regional dualstack endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket-name.s3.dualstack.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global", + "AWS::UseDualStack": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, aws-global region with fips/dualstack uses the regional fips/dualstack endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket-name.s3-fips.dualstack.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "UseFIPS": true, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, aws-global region with accelerate uses the global accelerate endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket-name.s3-accelerate.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global", + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": true + } + }, + { + "documentation": "virtual addressing, aws-global region with custom endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket-name.example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global", + "SDK::Endpoint": "https://example.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "aws-global", + "Endpoint": "https://example.com", + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region uses the global endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket-name.s3.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, UseGlobalEndpoint and us-west-2 region uses the regional endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket-name.s3.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "UseGlobalEndpoint": true, + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region and fips uses the regional fips endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket-name.s3-fips.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true, + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "Bucket": "bucket-name", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region and dualstack uses the regional dualstack endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket-name.s3.dualstack.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true, + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region and accelerate uses the global accelerate endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket-name.s3-accelerate.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::S3::Accelerate": true, + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": true + } + }, + { + "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region with custom endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket-name.example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://example.com", + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Endpoint": "https://example.com", + "UseGlobalEndpoint": true, + "Bucket": "bucket-name", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "ForcePathStyle, aws-global region uses the global endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.amazonaws.com/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "ForcePathStyle": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "ForcePathStyle, aws-global region with fips is invalid", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true, + "name": "sigv4" + } + ] + }, + "url": "https://s3-fips.us-east-1.amazonaws.com/bucket-name" + } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "ForcePathStyle": true, + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "ForcePathStyle, aws-global region with dualstack uses regional dualstack endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.dualstack.us-east-1.amazonaws.com/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global", + "AWS::UseDualStack": true, + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "aws-global", + "Bucket": "bucket-name", + "ForcePathStyle": true, + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "ForcePathStyle, aws-global region custom endpoint uses the custom endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://example.com/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global", + "SDK::Endpoint": "https://example.com", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "aws-global", + "Endpoint": "https://example.com", + "Bucket": "bucket-name", + "ForcePathStyle": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "ForcePathStyle, UseGlobalEndpoint us-east-1 region uses the global endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.amazonaws.com/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::S3::ForcePathStyle": true, + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "bucket-name", + "UseGlobalEndpoint": true, + "ForcePathStyle": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "ForcePathStyle, UseGlobalEndpoint us-west-2 region uses the regional endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.us-west-2.amazonaws.com/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::ForcePathStyle": true, + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "bucket-name", + "UseGlobalEndpoint": true, + "ForcePathStyle": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "ForcePathStyle, UseGlobalEndpoint us-east-1 region, dualstack uses the regional dualstack endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.dualstack.us-east-1.amazonaws.com/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true, + "AWS::S3::ForcePathStyle": true, + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "bucket-name", + "UseGlobalEndpoint": true, + "ForcePathStyle": true, + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false + } + }, + { + "documentation": "ForcePathStyle, UseGlobalEndpoint us-east-1 region custom endpoint uses the custom endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://example.com/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "SDK::Endpoint": "https://example.com", + "AWS::S3::ForcePathStyle": true, + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "bucket-name", + "Endpoint": "https://example.com", + "UseGlobalEndpoint": true, + "ForcePathStyle": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "ARN with aws-global region and UseArnRegion uses the regional endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ], + "disableDoubleEncoding": true + }, + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://reports-123456789012.op-01234567890123456.s3-outposts.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global", + "AWS::S3::UseArnRegion": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/accesspoint/reports", + "Key": "key" + } + } + ], + "params": { + "Region": "aws-global", + "UseArnRegion": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/accesspoint/reports" + } + }, + { + "documentation": "cross partition MRAP ARN is an error", + "expect": { + "error": "Client was configured for partition `aws` but bucket referred to partition `aws-cn`" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws-cn:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Key": "key" + } + } + ], + "params": { + "Bucket": "arn:aws-cn:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", + "Region": "us-west-1" + } + }, + { + "documentation": "Endpoint override, accesspoint with HTTP, port", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "http://myendpoint-123456789012.beta.example.com:1234" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "http://beta.example.com:1234" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Endpoint": "http://beta.example.com:1234", + "Region": "us-west-2", + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" + } + }, + { + "documentation": "Endpoint override, accesspoint with http, path, query, and port", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "http://myendpoint-123456789012.beta.example.com:1234/path" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Endpoint": "http://beta.example.com:1234/path", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "non-bucket endpoint override with FIPS = error", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, + "params": { + "Region": "us-west-2", + "Endpoint": "http://beta.example.com:1234/path", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "FIPS + dualstack + custom endpoint", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, + "params": { + "Region": "us-west-2", + "Endpoint": "http://beta.example.com:1234/path", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "dualstack + custom endpoint", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, + "params": { + "Region": "us-west-2", + "Endpoint": "http://beta.example.com:1234/path", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "custom endpoint without FIPS/dualstack", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "http://beta.example.com:1234/path" + } + }, + "params": { + "Region": "us-west-2", + "Endpoint": "http://beta.example.com:1234/path", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "s3 object lambda with access points disabled", + "expect": { + "error": "Access points are not supported for this operation" + }, + "params": { + "Region": "us-west-2", + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:myendpoint", + "DisableAccessPoints": true + } + }, + { + "documentation": "non bucket + FIPS", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-fips.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "standard non bucket endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "non bucket endpoint with FIPS + Dualstack", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-fips.dualstack.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "non bucket endpoint with dualstack", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.dualstack.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "use global endpoint + IP address endpoint override", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "http://127.0.0.1/bucket" + } + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "http://127.0.0.1", + "UseGlobalEndpoint": true + } + }, + { + "documentation": "non-dns endpoint + global endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://s3.amazonaws.com/bucket%21" + } + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket!", + "UseFIPS": false, + "UseDualStack": false, + "UseGlobalEndpoint": true + } + }, + { + "documentation": "endpoint override + use global endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "http://foo.com/bucket%21" + } + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket!", + "UseFIPS": false, + "UseDualStack": false, + "UseGlobalEndpoint": true, + "Endpoint": "http://foo.com" + } + }, + { + "documentation": "FIPS + dualstack + non-bucket endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21" + } + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket!", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "FIPS + dualstack + non-DNS endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21" + } + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket!", + "ForcePathStyle": true, + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "endpoint override + FIPS + dualstack (BUG)", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket!", + "ForcePathStyle": true, + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "http://foo.com" + } + }, + { + "documentation": "endpoint override + non-dns bucket + FIPS (BUG)", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket!", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "http://foo.com" + } + }, + { + "documentation": "FIPS + bucket endpoint + force path style", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://s3-fips.us-east-1.amazonaws.com/bucket%21" + } + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket!", + "ForcePathStyle": true, + "UseFIPS": true, + "UseDualStack": false, + "UseGlobalEndpoint": true + } + }, + { + "documentation": "bucket + FIPS + force path style", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket" + } + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket", + "ForcePathStyle": true, + "UseFIPS": true, + "UseDualStack": true, + "UseGlobalEndpoint": true + } + }, + { + "documentation": "FIPS + dualstack + use global endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://bucket.s3-fips.dualstack.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket", + "UseFIPS": true, + "UseDualStack": true, + "UseGlobalEndpoint": true + } + }, + { + "documentation": "URI encoded bucket + use global endpoint", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket!", + "UseFIPS": true, + "UseDualStack": false, + "UseGlobalEndpoint": true, + "Endpoint": "https://foo.com" + } + }, + { + "documentation": "FIPS + path based endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://s3-fips.us-east-1.amazonaws.com/bucket%21" + } + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket!", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseGlobalEndpoint": true + } + }, + { + "documentation": "accelerate + dualstack + global endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://bucket.s3-accelerate.dualstack.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket", + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": true, + "UseGlobalEndpoint": true + } + }, + { + "documentation": "dualstack + global endpoint + non URI safe bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + "url": "https://s3.dualstack.us-east-1.amazonaws.com/bucket%21" + } + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket!", + "Accelerate": false, + "UseDualStack": true, + "UseFIPS": false, + "UseGlobalEndpoint": true + } + }, + { + "documentation": "FIPS + uri encoded bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://s3-fips.us-east-1.amazonaws.com/bucket%21" + } + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket!", + "ForcePathStyle": true, + "Accelerate": false, + "UseDualStack": false, + "UseFIPS": true, + "UseGlobalEndpoint": true + } + }, + { + "documentation": "endpoint override + non-uri safe endpoint + force path style", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket!", + "ForcePathStyle": true, + "Accelerate": false, + "UseDualStack": false, + "UseFIPS": true, + "Endpoint": "http://foo.com", + "UseGlobalEndpoint": true + } + }, + { + "documentation": "FIPS + Dualstack + global endpoint + non-dns bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true, + "signingRegion": "us-east-1" + } + ] + }, + "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21" + } + }, + "params": { + "Region": "us-east-1", + "Bucket": "bucket!", + "Accelerate": false, + "UseDualStack": true, + "UseFIPS": true, + "UseGlobalEndpoint": true + } + }, + { + "documentation": "endpoint override + FIPS + dualstack", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, + "params": { + "Region": "us-east-1", + "UseDualStack": true, + "UseFIPS": true, + "UseGlobalEndpoint": true, + "Endpoint": "http://foo.com" + } + }, + { + "documentation": "non-bucket endpoint override + dualstack + global endpoint", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "UseGlobalEndpoint": true, + "Endpoint": "http://foo.com" + } + }, + { + "documentation": "Endpoint override + UseGlobalEndpoint + us-east-1", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "UseGlobalEndpoint": true, + "Endpoint": "http://foo.com" + } + }, + { + "documentation": "non-FIPS partition with FIPS set + custom endpoint", + "expect": { + "error": "Partition does not support FIPS" + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false, + "UseGlobalEndpoint": true + } + }, + { + "documentation": "aws-global signs as us-east-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21" + } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket!", + "UseFIPS": true, + "Accelerate": false, + "UseDualStack": true + } + }, + { + "documentation": "aws-global signs as us-east-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket.foo.com" + } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket", + "UseDualStack": false, + "UseFIPS": false, + "Accelerate": false, + "Endpoint": "https://foo.com" + } + }, + { + "documentation": "aws-global + dualstack + path-only bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.dualstack.us-east-1.amazonaws.com/bucket%21" + } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket!", + "UseDualStack": true, + "UseFIPS": false, + "Accelerate": false + } + }, + { + "documentation": "aws-global + path-only bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.amazonaws.com/bucket%21" + } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket!" + } + }, + { + "documentation": "aws-global + fips + custom endpoint", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket!", + "UseDualStack": false, + "UseFIPS": true, + "Accelerate": false, + "Endpoint": "http://foo.com" + } + }, + { + "documentation": "aws-global, endpoint override & path only-bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "url": "http://foo.com/bucket%21" + } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket!", + "UseDualStack": false, + "UseFIPS": false, + "Accelerate": false, + "Endpoint": "http://foo.com" + } + }, + { + "documentation": "aws-global + dualstack + custom endpoint", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, + "params": { + "Region": "aws-global", + "UseDualStack": true, + "UseFIPS": false, + "Accelerate": false, + "Endpoint": "http://foo.com" + } + }, + { + "documentation": "accelerate, dualstack + aws-global", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket.s3-accelerate.dualstack.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket", + "UseDualStack": true, + "UseFIPS": false, + "Accelerate": true + } + }, + { + "documentation": "FIPS + aws-global + path only bucket. This is not supported by S3 but we allow garbage in garbage out", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21" + } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket!", + "ForcePathStyle": true, + "UseDualStack": true, + "UseFIPS": true, + "Accelerate": false + } + }, + { + "documentation": "aws-global + FIPS + endpoint override.", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, + "params": { + "Region": "aws-global", + "UseFIPS": true, + "Endpoint": "http://foo.com" + } + }, + { + "documentation": "force path style, FIPS, aws-global & endpoint override", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket!", + "ForcePathStyle": true, + "UseFIPS": true, + "Endpoint": "http://foo.com" + } + }, + { + "documentation": "ip address causes path style to be forced", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "url": "http://192.168.1.1/bucket" + } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket", + "Endpoint": "http://192.168.1.1" + } + }, + { + "documentation": "endpoint override with aws-global region", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, + "params": { + "Region": "aws-global", + "UseFIPS": true, + "UseDualStack": true, + "Endpoint": "http://foo.com" + } + }, + { + "documentation": "FIPS + path-only (TODO: consider making this an error)", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-1", + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3-fips.us-east-1.amazonaws.com/bucket%21" + } + }, + "params": { + "Region": "aws-global", + "Bucket": "bucket!", + "UseFIPS": true + } + }, + { + "documentation": "empty arn type", + "expect": { + "error": "Invalid ARN: No ARN type specified" + }, + "params": { + "Region": "us-east-2", + "Bucket": "arn:aws:not-s3:us-west-2:123456789012::myendpoint" + } + }, + { + "documentation": "path style can't be used with accelerate", + "expect": { + "error": "Path-style addressing cannot be used with S3 Accelerate" + }, + "params": { + "Region": "us-east-2", + "Bucket": "bucket!", + "Accelerate": true + } + }, + { + "documentation": "invalid region", + "expect": { + "error": "Invalid region: region was not a valid DNS name." + }, + "params": { + "Region": "us-east-2!", + "Bucket": "bucket.subdomain", + "Endpoint": "http://foo.com" + } + }, + { + "documentation": "invalid region", + "expect": { + "error": "Invalid region: region was not a valid DNS name." + }, + "params": { + "Region": "us-east-2!", + "Bucket": "bucket", + "Endpoint": "http://foo.com" + } + }, + { + "documentation": "empty arn type", + "expect": { + "error": "Invalid Access Point Name" + }, + "params": { + "Region": "us-east-2", + "Bucket": "arn:aws:s3::123456789012:accesspoint:my_endpoint" + } + }, + { + "documentation": "empty arn type", + "expect": { + "error": "Client was configured for partition `aws` but ARN (`arn:aws:s3:cn-north-1:123456789012:accesspoint:my-endpoint`) has `aws-cn`" + }, + "params": { + "Region": "us-east-2", + "Bucket": "arn:aws:s3:cn-north-1:123456789012:accesspoint:my-endpoint", + "UseArnRegion": true + } + }, + { + "documentation": "invalid arn region", + "expect": { + "error": "Invalid region in ARN: `us-east_2` (invalid DNS name)" + }, + "params": { + "Region": "us-east-2", + "Bucket": "arn:aws:s3-object-lambda:us-east_2:123456789012:accesspoint:my-endpoint", + "UseArnRegion": true + } + }, + { + "documentation": "invalid ARN outpost", + "expect": { + "error": "Invalid ARN: The outpost Id may only contain a-z, A-Z, 0-9 and `-`. Found: `op_01234567890123456`" + }, + "params": { + "Region": "us-east-2", + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op_01234567890123456/accesspoint/reports", + "UseArnRegion": true + } + }, + { + "documentation": "invalid ARN", + "expect": { + "error": "Invalid ARN: expected an access point name" + }, + "params": { + "Region": "us-east-2", + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/reports" + } + }, + { + "documentation": "invalid ARN", + "expect": { + "error": "Invalid ARN: Expected a 4-component resource" + }, + "params": { + "Region": "us-east-2", + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456" + } + }, + { + "documentation": "invalid outpost type", + "expect": { + "error": "Expected an outpost type `accesspoint`, found not-accesspoint" + }, + "params": { + "Region": "us-east-2", + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/not-accesspoint/reports" + } + }, + { + "documentation": "invalid outpost type", + "expect": { + "error": "Invalid region in ARN: `us-east_1` (invalid DNS name)" + }, + "params": { + "Region": "us-east-2", + "Bucket": "arn:aws:s3-outposts:us-east_1:123456789012:outpost/op-01234567890123456/not-accesspoint/reports" + } + }, + { + "documentation": "invalid outpost type", + "expect": { + "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `12345_789012`" + }, + "params": { + "Region": "us-east-2", + "Bucket": "arn:aws:s3-outposts:us-east-1:12345_789012:outpost/op-01234567890123456/not-accesspoint/reports" + } + }, + { + "documentation": "invalid outpost type", + "expect": { + "error": "Invalid ARN: The Outpost Id was not set" + }, + "params": { + "Region": "us-east-2", + "Bucket": "arn:aws:s3-outposts:us-east-1:12345789012:outpost" + } + }, + { + "documentation": "use global endpoint virtual addressing", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-2", + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "url": "http://bucket.example.com" + } + }, + "params": { + "Region": "us-east-2", + "Bucket": "bucket", + "Endpoint": "http://example.com", + "UseGlobalEndpoint": true + } + }, + { + "documentation": "global endpoint + ip address", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-2", + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "url": "http://192.168.0.1/bucket" + } + }, + "params": { + "Region": "us-east-2", + "Bucket": "bucket", + "Endpoint": "http://192.168.0.1", + "UseGlobalEndpoint": true + } + }, + { + "documentation": "invalid outpost type", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-2", + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://s3.us-east-2.amazonaws.com/bucket%21" + } + }, + "params": { + "Region": "us-east-2", + "Bucket": "bucket!", + "UseGlobalEndpoint": true + } + }, + { + "documentation": "invalid outpost type", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-2", + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket.s3-accelerate.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", + "Bucket": "bucket", + "Accelerate": true, + "UseGlobalEndpoint": true + } + }, + { + "documentation": "use global endpoint + custom endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-2", + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "url": "http://foo.com/bucket%21" + } + }, + "params": { + "Region": "us-east-2", + "Bucket": "bucket!", + "UseGlobalEndpoint": true, + "Endpoint": "http://foo.com" + } + }, + { + "documentation": "use global endpoint, not us-east-1, force path style", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingRegion": "us-east-2", + "name": "sigv4", + "signingName": "s3", + "disableDoubleEncoding": true + } + ] + }, + "url": "http://foo.com/bucket%21" + } + }, + "params": { + "Region": "us-east-2", + "Bucket": "bucket!", + "UseGlobalEndpoint": true, + "ForcePathStyle": true, + "Endpoint": "http://foo.com" + } + }, + { + "documentation": "vanilla virtual addressing@us-west-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] + "url": "https://bucket-name.s3.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "virtual addressing + dualstack@us-west-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - } - ] + ] }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] + "url": "https://bucket-name.s3.dualstack.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseDualStack": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } - ], - "endpoint": { - "url": "https://{Bucket}.s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "accelerate + dualstack@us-west-2", + "expect": { + "endpoint": { "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] }, - "headers": {} - }, - "type": "endpoint" - }, + "url": "https://bucket-name.s3-accelerate.dualstack.amazonaws.com" + } + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseDualStack": true, + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "accelerate (dualstack=false)@us-west-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "url": "https://bucket-name.s3-accelerate.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "virtual addressing + fips@us-west-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - } - ] + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "url": "https://bucket-name.s3-fips.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "virtual addressing + dualstack + fips@us-west-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] + "url": "https://bucket-name.s3-fips.dualstack.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } - ], - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": true, + "UseFIPS": true + } + }, + { + "documentation": "accelerate + fips = error@us-west-2", + "expect": { + "error": "Accelerate cannot be used with FIPS" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true, + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "vanilla virtual addressing@cn-north-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" + "name": "sigv4", + "signingName": "s3", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true } - ] - }, - "headers": {} - }, - "type": "endpoint" + ] + }, + "url": "https://bucket-name.s3.cn-north-1.amazonaws.com.cn" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } - ], - "type": "tree" - }, + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "virtual addressing + dualstack@cn-north-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://bucket-name.s3.dualstack.cn-north-1.amazonaws.com.cn" + } + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseDualStack": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "cn-north-1", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "accelerate (dualstack=false)@cn-north-1", + "expect": { + "error": "S3 Accelerate cannot be used in this region" + }, + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "virtual addressing + fips@cn-north-1", + "expect": { + "error": "Partition does not support FIPS" + }, + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "vanilla virtual addressing@af-south-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + "url": "https://bucket-name.s3.af-south-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1" }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "virtual addressing + dualstack@af-south-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "url": "https://bucket-name.s3.dualstack.af-south-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseDualStack": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "accelerate + dualstack@af-south-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true } - ] - } - ] + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "url": "https://bucket-name.s3-accelerate.dualstack.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseDualStack": true, + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "accelerate (dualstack=false)@af-south-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] + "url": "https://bucket-name.s3-accelerate.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } - ], - "endpoint": { - "url": "https://{Bucket}.s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", + } + ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "virtual addressing + fips@af-south-1", + "expect": { + "endpoint": { "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] }, - "headers": {} - }, - "type": "endpoint" - }, + "url": "https://bucket-name.s3-fips.af-south-1.amazonaws.com" + } + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "virtual addressing + dualstack + fips@af-south-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + "url": "https://bucket-name.s3-fips.dualstack.af-south-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": true, + "UseFIPS": true + } + }, + { + "documentation": "accelerate + fips = error@af-south-1", + "expect": { + "error": "Accelerate cannot be used with FIPS" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseFIPS": true, + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "vanilla path style@us-west-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] + "url": "https://s3.us-west-2.amazonaws.com/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "fips@us-gov-west-2, bucket is not S3-dns-compatible (subdomains)", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "signingName": "s3", + "signingRegion": "us-gov-west-1", + "disableDoubleEncoding": true, + "name": "sigv4" + } + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "url": "https://s3-fips.us-gov-west-1.amazonaws.com/bucket.with.dots" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-gov-west-1", + "AWS::UseFIPS": true, + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket.with.dots", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket.with.dots", + "Region": "us-gov-west-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "path style + accelerate = error@us-west-2", + "expect": { + "error": "Path-style addressing cannot be used with S3 Accelerate" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::ForcePathStyle": true, + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + dualstack@us-west-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - } - ] + ] }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] + "url": "https://s3.dualstack.us-west-2.amazonaws.com/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseDualStack": true, + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Region": "us-west-2", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "path style + arn is error@us-west-2", + "expect": { + "error": "Path-style addressing cannot be used with ARN buckets" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Key": "key" } - ], - "endpoint": { - "url": "https://{Bucket}.s3-fips.us-east-1.{partitionResult#dnsSuffix}", + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "ForcePathStyle": true, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + invalid DNS name@us-west-2", + "expect": { + "endpoint": { "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] }, - "headers": {} - }, - "type": "endpoint" - }, + "url": "https://s3.us-west-2.amazonaws.com/99a_b" + } + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "99a_b", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "99a_b", + "ForcePathStyle": true, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "no path style + invalid DNS name@us-west-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - } - ] + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "url": "https://s3.us-west-2.amazonaws.com/99a_b" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] + "operationName": "GetObject", + "operationParams": { + "Bucket": "99a_b", + "Key": "key" } - ], - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3-fips.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ + } + ], + "params": { + "Accelerate": false, + "Bucket": "99a_b", + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "vanilla path style@cn-north-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" + "name": "sigv4", + "signingName": "s3", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true } - ] - }, - "headers": {} - }, - "type": "endpoint" + ] + }, + "url": "https://s3.cn-north-1.amazonaws.com.cn/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } - ], - "type": "tree" - }, + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + fips@cn-north-1", + "expect": { + "error": "Partition does not support FIPS" + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true, + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "path style + accelerate = error@cn-north-1", + "expect": { + "error": "Path-style addressing cannot be used with S3 Accelerate" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::S3::ForcePathStyle": true, + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + dualstack@cn-north-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] + "url": "https://s3.dualstack.cn-north-1.amazonaws.com.cn/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseDualStack": true, + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } - ], - "endpoint": { - "url": "https://{Bucket}.s3-fips.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Region": "cn-north-1", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "path style + arn is error@cn-north-1", + "expect": { + "error": "Path-style addressing cannot be used with ARN buckets" + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "ForcePathStyle": true, + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + invalid DNS name@cn-north-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true } - ] - } - ] + ] }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] + "url": "https://s3.cn-north-1.amazonaws.com.cn/99a_b" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "99a_b", + "Key": "key" } - ], - "endpoint": { - "url": "https://{Bucket}.s3-accelerate.dualstack.us-east-1.{partitionResult#dnsSuffix}", + } + ], + "params": { + "Accelerate": false, + "Bucket": "99a_b", + "ForcePathStyle": true, + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "no path style + invalid DNS name@cn-north-1", + "expect": { + "endpoint": { "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true + } + ] }, - "headers": {} - }, - "type": "endpoint" - }, + "url": "https://s3.cn-north-1.amazonaws.com.cn/99a_b" + } + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] + "builtInParams": { + "AWS::Region": "cn-north-1" }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "operationName": "GetObject", + "operationParams": { + "Bucket": "99a_b", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "99a_b", + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "vanilla path style@af-south-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] + "url": "https://s3.af-south-1.amazonaws.com/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } - ], - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3-accelerate.dualstack.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + fips@af-south-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true, + "name": "sigv4" } - ] - }, - "headers": {} - }, - "type": "endpoint" + ] + }, + "url": "https://s3-fips.af-south-1.amazonaws.com/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseFIPS": true, + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } - ], - "type": "tree" - }, + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "path style + accelerate = error@af-south-1", + "expect": { + "error": "Path-style addressing cannot be used with S3 Accelerate" + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::S3::ForcePathStyle": true, + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + dualstack@af-south-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true } - ] - } - ] + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "url": "https://s3.dualstack.af-south-1.amazonaws.com/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseDualStack": true, + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Region": "af-south-1", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "path style + arn is error@af-south-1", + "expect": { + "error": "Path-style addressing cannot be used with ARN buckets" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", + "ForcePathStyle": true, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + invalid DNS name@af-south-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] + "url": "https://s3.af-south-1.amazonaws.com/99a_b" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "99a_b", + "Key": "key" } - ], - "endpoint": { - "url": "https://{Bucket}.s3-accelerate.dualstack.{partitionResult#dnsSuffix}", + } + ], + "params": { + "Accelerate": false, + "Bucket": "99a_b", + "ForcePathStyle": true, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "no path style + invalid DNS name@af-south-1", + "expect": { + "endpoint": { "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] }, - "headers": {} - }, - "type": "endpoint" - }, + "url": "https://s3.af-south-1.amazonaws.com/99a_b" + } + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] + "builtInParams": { + "AWS::Region": "af-south-1" }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "operationName": "GetObject", + "operationParams": { + "Bucket": "99a_b", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "99a_b", + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "virtual addressing + private link@us-west-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - } - ] + ] }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] + "url": "http://bucket-name.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } - ], - "endpoint": { - "url": "https://{Bucket}.s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Endpoint": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + private link@us-west-2", + "expect": { + "endpoint": { "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] }, - "headers": {} - }, - "type": "endpoint" - }, + "url": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/bucket-name" + } + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "SDK::Host + FIPS@us-west-2", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true, + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "SDK::Host + DualStack@us-west-2", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseDualStack": true, + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "us-west-2", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "SDK::HOST + accelerate@us-west-2", + "expect": { + "error": "A custom endpoint cannot be combined with S3 Accelerate" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Endpoint": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "SDK::Host + access point ARN@us-west-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - } - ] + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "url": "https://myendpoint-123456789012.beta.example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://beta.example.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Endpoint": "https://beta.example.com", + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "virtual addressing + private link@cn-north-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "name": "sigv4", + "signingName": "s3", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] + "url": "https://bucket-name.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } - ], - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3.dualstack.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + private link@cn-north-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" + "name": "sigv4", + "signingName": "s3", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true } - ] - }, - "headers": {} - }, - "type": "endpoint" + ] + }, + "url": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/bucket-name" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } - ], - "type": "tree" - }, + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "FIPS@cn-north-1", + "expect": { + "error": "Partition does not support FIPS" + }, + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "SDK::Host + DualStack@cn-north-1", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseDualStack": true, + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "cn-north-1", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "SDK::HOST + accelerate@cn-north-1", + "expect": { + "error": "A custom endpoint cannot be combined with S3 Accelerate" + }, + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "SDK::Host + access point ARN@cn-north-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true } - ] - } - ] + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "url": "https://myendpoint-123456789012.beta.example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "SDK::Endpoint": "https://beta.example.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Endpoint": "https://beta.example.com", + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "virtual addressing + private link@af-south-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] + "url": "https://bucket-name.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" } - ], - "endpoint": { - "url": "https://{Bucket}.s3.dualstack.{Region}.{partitionResult#dnsSuffix}", + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "path style + private link@af-south-1", + "expect": { + "endpoint": { "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] }, - "headers": {} - }, - "type": "endpoint" - }, + "url": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/bucket-name" + } + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - }, - { - "fn": "booleanEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ + "builtInParams": { + "AWS::Region": "af-south-1", + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "AWS::S3::ForcePathStyle": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": true, + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "SDK::Host + FIPS@af-south-1", + "expect": { + "error": "A custom endpoint cannot be combined with FIPS" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseFIPS": true, + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "SDK::Host + DualStack@af-south-1", + "expect": { + "error": "Cannot set dual-stack in combination with a custom endpoint." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseDualStack": true, + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "af-south-1", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "SDK::HOST + accelerate@af-south-1", + "expect": { + "error": "A custom endpoint cannot be combined with S3 Accelerate" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "bucket-name", + "Key": "key" + } + } + ], + "params": { + "Accelerate": true, + "Bucket": "bucket-name", + "ForcePathStyle": false, + "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "SDK::Host + access point ARN@af-south-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "url" - }, - "isIp" - ] - }, - true - ] + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] + "url": "https://myendpoint-123456789012.beta.example.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "SDK::Endpoint": "https://beta.example.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", + "Key": "key" } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{Bucket}", + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Endpoint": "https://beta.example.com", + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "vanilla access point arn@us-west-2", + "expect": { + "endpoint": { "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] }, - "headers": {} - }, - "type": "endpoint" - }, + "url": "https://myendpoint-123456789012.s3-accesspoint.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" + "builtInParams": { + "AWS::Region": "us-west-2" }, - { - "fn": "booleanEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "access point arn + FIPS@us-west-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "url" - }, - "isIp" - ] - }, - false - ] + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] + "url": "https://myendpoint-123456789012.s3-accesspoint-fips.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "access point arn + accelerate = error@us-west-2", + "expect": { + "error": "Access Points do not support S3 Accelerate" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Key": "key" } - ], - "endpoint": { - "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", + } + ], + "params": { + "Accelerate": true, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "access point arn + FIPS + DualStack@us-west-2", + "expect": { + "endpoint": { "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] }, - "headers": {} - }, - "type": "endpoint" - }, + "url": "https://myendpoint-123456789012.s3-accesspoint-fips.dualstack.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": true, + "UseFIPS": true + } + }, + { + "documentation": "vanilla access point arn@cn-north-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] + "url": "https://myendpoint-123456789012.s3-accesspoint.cn-north-1.amazonaws.com.cn" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1" }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "access point arn + FIPS@cn-north-1", + "expect": { + "error": "Partition does not support FIPS" + }, + "params": { + "Accelerate": false, + "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "access point arn + accelerate = error@cn-north-1", + "expect": { + "error": "Access Points do not support S3 Accelerate" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": true, + "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "cn-north-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "access point arn + FIPS + DualStack@cn-north-1", + "expect": { + "error": "Partition does not support FIPS" + }, + "params": { + "Accelerate": false, + "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "cn-north-1", + "UseDualStack": true, + "UseFIPS": true + } + }, + { + "documentation": "vanilla access point arn@af-south-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" + "url": "https://myendpoint-123456789012.s3-accesspoint.af-south-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1" }, - { - "fn": "booleanEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "access point arn + FIPS@af-south-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "url" - }, - "isIp" - ] - }, - true - ] + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "url": "https://myendpoint-123456789012.s3-accesspoint-fips.af-south-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "access point arn + accelerate = error@af-south-1", + "expect": { + "error": "Access Points do not support S3 Accelerate" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": true, + "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "access point arn + FIPS + DualStack@af-south-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "name": "sigv4", + "signingName": "s3", + "signingRegion": "af-south-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] + "url": "https://myendpoint-123456789012.s3-accesspoint-fips.dualstack.af-south-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "af-south-1", + "AWS::UseFIPS": true, + "AWS::UseDualStack": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", + "Key": "key" } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", + "ForcePathStyle": false, + "Region": "af-south-1", + "UseDualStack": true, + "UseFIPS": true + } + }, + { + "documentation": "S3 outposts vanilla test", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ], + "disableDoubleEncoding": true }, - "us-east-1" - ] - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{Bucket}", - "properties": { - "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - }, - "headers": {} - }, - "type": "endpoint" + ] }, - { - "conditions": [], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{Bucket}", - "properties": { - "authSchemes": [ + "url": "https://reports-123456789012.op-01234567890123456.s3-outposts.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports" + } + }, + { + "documentation": "S3 outposts custom endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ], + "disableDoubleEncoding": true + }, + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - }, - "headers": {} - }, - "type": "endpoint" + ] + }, + "url": "https://reports-123456789012.op-01234567890123456.example.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://example.amazonaws.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports", + "Key": "key" } - ], - "type": "tree" - }, + } + ], + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports", + "Endpoint": "https://example.amazonaws.com" + } + }, + { + "documentation": "outposts arn with region mismatch and UseArnRegion=false", + "expect": { + "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - }, - { - "fn": "booleanEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::UseArnRegion": false + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "ForcePathStyle": false, + "UseArnRegion": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "outposts arn with region mismatch, custom region and UseArnRegion=false", + "expect": { + "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://example.com", + "AWS::S3::UseArnRegion": false + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "Endpoint": "https://example.com", + "ForcePathStyle": false, + "UseArnRegion": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "outposts arn with region mismatch and UseArnRegion=true", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "url" + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ], + "disableDoubleEncoding": true }, - "isIp" - ] - }, - false - ] + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "url": "https://myaccesspoint-123456789012.op-01234567890123456.s3-outposts.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::UseArnRegion": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "ForcePathStyle": false, + "UseArnRegion": true, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "outposts arn with region mismatch and UseArnRegion unset", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ], + "disableDoubleEncoding": true }, - "aws-global" - ] - } - ] + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] + "url": "https://myaccesspoint-123456789012.op-01234567890123456.s3-outposts.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "Key": "key" } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "ForcePathStyle": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "outposts arn with partition mismatch and UseArnRegion=true", + "expect": { + "error": "Client was configured for partition `aws` but ARN (`arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint`) has `aws-cn`" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::UseArnRegion": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", + "ForcePathStyle": false, + "UseArnRegion": true, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "ARN with UseGlobalEndpoint and use-east-1 region uses the regional endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ], + "disableDoubleEncoding": true }, - "us-east-1" - ] - } - ], - "endpoint": { - "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", - "properties": { - "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true } - ] - }, - "headers": {} - }, - "type": "endpoint" + ] }, - { - "conditions": [], - "endpoint": { - "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, + "url": "https://reports-123456789012.op-01234567890123456.s3-outposts.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - }, - { - "fn": "booleanEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::S3::UseGlobalEndpoint": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/accesspoint/reports", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "UseGlobalEndpoint": true, + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/accesspoint/reports" + } + }, + { + "documentation": "S3 outposts does not support dualstack", + "expect": { + "error": "S3 Outposts does not support Dual-stack" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports" + } + }, + { + "documentation": "S3 outposts does not support fips", + "expect": { + "error": "S3 Outposts does not support FIPS" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports" + } + }, + { + "documentation": "S3 outposts does not support accelerate", + "expect": { + "error": "S3 Outposts does not support S3 Accelerate" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": true, + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports" + } + }, + { + "documentation": "validates against subresource", + "expect": { + "error": "Invalid Arn: Outpost Access Point ARN contains sub resources" + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:mybucket:object:foo" + } + }, + { + "documentation": "object lambda @us-east-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "url" - }, - "isIp" - ] - }, - true - ] + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "url": "https://mybanner-123456789012.s3-object-lambda.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::S3::UseArnRegion": false + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda @us-west-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] + "url": "https://mybanner-123456789012.s3-object-lambda.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::UseArnRegion": false + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", + "Key": "key" } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{Bucket}", + } + ], + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda, colon resource deliminator @us-west-2", + "expect": { + "endpoint": { "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ] }, - "headers": {} - }, - "type": "endpoint" - }, + "url": "https://mybanner-123456789012.s3-object-lambda.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - }, - { - "fn": "booleanEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::UseArnRegion": false + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:mybanner", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:mybanner" + } + }, + { + "documentation": "object lambda @us-east-1, client region us-west-2, useArnRegion=true", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "url" - }, - "isIp" - ] - }, - false - ] + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "url": "https://mybanner-123456789012.s3-object-lambda.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::UseArnRegion": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": true, + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda @us-east-1, client region s3-external-1, useArnRegion=true", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] + "url": "https://mybanner-123456789012.s3-object-lambda.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "s3-external-1", + "AWS::S3::UseArnRegion": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", + "Key": "key" + } + } + ], + "params": { + "Region": "s3-external-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": true, + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda @us-east-1, client region s3-external-1, useArnRegion=false", + "expect": { + "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `s3-external-1` and UseArnRegion is `false`" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "s3-external-1", + "AWS::S3::UseArnRegion": false + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", + "Key": "key" } - ], - "endpoint": { - "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", + } + ], + "params": { + "Region": "s3-external-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda @us-east-1, client region aws-global, useArnRegion=true", + "expect": { + "endpoint": { "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] }, - "headers": {} - }, - "type": "endpoint" - }, + "url": "https://mybanner-123456789012.s3-object-lambda.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] + "builtInParams": { + "AWS::Region": "aws-global", + "AWS::S3::UseArnRegion": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", + "Key": "key" + } + } + ], + "params": { + "Region": "aws-global", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": true, + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda @us-east-1, client region aws-global, useArnRegion=false", + "expect": { + "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `aws-global` and UseArnRegion is `false`" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global", + "AWS::S3::UseArnRegion": false + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", + "Key": "key" + } + } + ], + "params": { + "Region": "aws-global", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda @cn-north-1, client region us-west-2 (cross partition), useArnRegion=true", + "expect": { + "error": "Client was configured for partition `aws` but ARN (`arn:aws-cn:s3-object-lambda:cn-north-1:123456789012:accesspoint/mybanner`) has `aws-cn`" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "aws-global", + "AWS::S3::UseArnRegion": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws-cn:s3-object-lambda:cn-north-1:123456789012:accesspoint/mybanner", + "Key": "key" + } + } + ], + "params": { + "Region": "aws-global", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": true, + "Bucket": "arn:aws-cn:s3-object-lambda:cn-north-1:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda with dualstack", + "expect": { + "error": "S3 Object Lambda does not support Dual-stack" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseDualStack": true, + "AWS::S3::UseArnRegion": false + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda @us-gov-east-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "us-gov-east-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] + "url": "https://mybanner-123456789012.s3-object-lambda.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws-us-gov:s3-object-lambda:us-gov-east-1:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda @us-gov-east-1, with fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "us-gov-east-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "url": "https://mybanner-123456789012.s3-object-lambda-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws-us-gov:s3-object-lambda:us-gov-east-1:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda @cn-north-1, with fips", + "expect": { + "error": "Partition does not support FIPS" + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws-cn:s3-object-lambda:cn-north-1:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda with accelerate", + "expect": { + "error": "S3 Object Lambda does not support S3 Accelerate" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::Accelerate": true, + "AWS::S3::UseArnRegion": false + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": true, + "UseArnRegion": false, + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda with invalid arn - bad service and someresource", + "expect": { + "error": "Invalid ARN: Unrecognized format: arn:aws:sqs:us-west-2:123456789012:someresource (type: someresource)" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::UseArnRegion": false + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:sqs:us-west-2:123456789012:someresource", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws:sqs:us-west-2:123456789012:someresource" + } + }, + { + "documentation": "object lambda with invalid arn - invalid resource", + "expect": { + "error": "Invalid ARN: Object Lambda ARNs only support `accesspoint` arn types, but found: `bucket_name`" + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:bucket_name:mybucket" + } + }, + { + "documentation": "object lambda with invalid arn - missing region", + "expect": { + "error": "Invalid ARN: bucket ARN is missing a region" + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws:s3-object-lambda::123456789012:accesspoint/mybanner" + } + }, + { + "documentation": "object lambda with invalid arn - missing account-id", + "expect": { + "error": "Invalid ARN: Missing account id" + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": true, + "Bucket": "arn:aws:s3-object-lambda:us-west-2::accesspoint/mybanner" + } + }, + { + "documentation": "object lambda with invalid arn - account id contains invalid characters", + "expect": { + "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `123.45678.9012`" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::UseArnRegion": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123.45678.9012:accesspoint:mybucket", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": true, + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123.45678.9012:accesspoint:mybucket" + } + }, + { + "documentation": "object lambda with invalid arn - missing access point name", + "expect": { + "error": "Invalid ARN: Expected a resource of the format `accesspoint:` but no name was provided" + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": true, + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint" + } + }, + { + "documentation": "object lambda with invalid arn - access point name contains invalid character: *", + "expect": { + "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `*`" + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": true, + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:*" + } + }, + { + "documentation": "object lambda with invalid arn - access point name contains invalid character: .", + "expect": { + "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `my.bucket`" + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": true, + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:my.bucket" + } + }, + { + "documentation": "object lambda with invalid arn - access point name contains sub resources", + "expect": { + "error": "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`." + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": true, + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:mybucket:object:foo" + } + }, + { + "documentation": "object lambda with custom endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - } - ] + ] }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] + "url": "https://mybanner-123456789012.my-endpoint.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://my-endpoint.com", + "AWS::S3::UseArnRegion": false + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", + "Key": "key" } - ], - "endpoint": { - "url": "https://{Bucket}.s3-accelerate.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + } + ], + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseArnRegion": false, + "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", + "Endpoint": "https://my-endpoint.com" + } + }, + { + "documentation": "object lambda arn with region mismatch and UseArnRegion=false", + "expect": { + "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::S3::UseArnRegion": false + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", + "Key": "key" + } + } + ], + "params": { + "Accelerate": false, + "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", + "ForcePathStyle": false, + "UseArnRegion": false, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "WriteGetObjectResponse @ us-west-2", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - } - ] + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "url": "https://s3-object-lambda.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] + "operationName": "WriteGetObjectResponse", + "operationParams": { + "RequestRoute": "RequestRoute", + "RequestToken": "RequestToken" } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-east-1" - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3-accelerate.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ + } + ], + "params": { + "Accelerate": false, + "UseObjectLambdaEndpoint": true, + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "WriteGetObjectResponse with custom endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - }, - "headers": {} - }, - "type": "endpoint" + ] }, - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3-accelerate.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, + "url": "https://my-endpoint.com" + } + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://my-endpoint.com" + }, + "operationName": "WriteGetObjectResponse", + "operationParams": { + "RequestRoute": "RequestRoute", + "RequestToken": "RequestToken" + } + } + ], + "params": { + "Accelerate": false, + "UseObjectLambdaEndpoint": true, + "Endpoint": "https://my-endpoint.com", + "Region": "us-west-2", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "WriteGetObjectResponse @ us-east-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true } - ] - } - ] + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "url": "https://s3-object-lambda.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] + "operationName": "WriteGetObjectResponse", + "operationParams": { + "RequestRoute": "RequestRoute", + "RequestToken": "RequestToken" } - ], - "endpoint": { - "url": "https://{Bucket}.s3-accelerate.{partitionResult#dnsSuffix}", + } + ], + "params": { + "Accelerate": false, + "UseObjectLambdaEndpoint": true, + "Region": "us-east-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "WriteGetObjectResponse with fips", + "expect": { + "endpoint": { "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3-object-lambda", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true } - ] - } - ] + ] }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] + "url": "https://s3-object-lambda-fips.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "WriteGetObjectResponse", + "operationParams": { + "RequestRoute": "RequestRoute", + "RequestToken": "RequestToken" } - ], - "endpoint": { - "url": "https://{Bucket}.s3.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + } + ], + "params": { + "Accelerate": false, + "UseObjectLambdaEndpoint": true, + "Region": "us-east-1", + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "WriteGetObjectResponse with dualstack", + "expect": { + "error": "S3 Object Lambda does not support Dual-stack" + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true + }, + "operationName": "WriteGetObjectResponse", + "operationParams": { + "RequestRoute": "RequestRoute", + "RequestToken": "RequestToken" + } + } + ], + "params": { + "Accelerate": false, + "UseObjectLambdaEndpoint": true, + "Region": "us-east-1", + "UseDualStack": true, + "UseFIPS": false + } + }, + { + "documentation": "WriteGetObjectResponse with accelerate", + "expect": { + "error": "S3 Object Lambda does not support S3 Accelerate" + }, + "params": { + "Accelerate": true, + "UseObjectLambdaEndpoint": true, + "Region": "us-east-1", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "WriteGetObjectResponse with fips in CN", + "expect": { + "error": "Partition does not support FIPS" + }, + "params": { + "Accelerate": false, + "Region": "cn-north-1", + "UseObjectLambdaEndpoint": true, + "UseDualStack": false, + "UseFIPS": true + } + }, + { + "documentation": "WriteGetObjectResponse with invalid partition", + "expect": { + "error": "Invalid region: region was not a valid DNS name." + }, + "params": { + "Accelerate": false, + "UseObjectLambdaEndpoint": true, + "Region": "not a valid DNS name", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "WriteGetObjectResponse with an unknown partition", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3-object-lambda", + "disableDoubleEncoding": true, + "signingRegion": "us-east.special" } - ] - } - ] + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "url": "https://s3-object-lambda.us-east.special.amazonaws.com" + } + }, + "params": { + "Accelerate": false, + "UseObjectLambdaEndpoint": true, + "Region": "us-east.special", + "UseDualStack": false, + "UseFIPS": false + } + }, + { + "documentation": "S3 Outposts bucketAlias Real Outpost Prod us-west-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ], + "disableDoubleEncoding": true }, - "aws-global" - ] - } - ] + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-west-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ + "url": "https://test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3.op-0b1d075431d83bebd.s3-outposts.us-west-1.amazonaws.com" + } + }, + "params": { + "Region": "us-west-1", + "Bucket": "test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "S3 Outposts bucketAlias Real Outpost Prod ap-east-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ], + "disableDoubleEncoding": true }, - "us-east-1" - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "ap-east-1", + "disableDoubleEncoding": true } - ] - }, - "headers": {} - }, - "type": "endpoint" + ] }, - { - "conditions": [], - "endpoint": { - "url": "https://{Bucket}.s3.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ + "url": "https://test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3.op-0b1d075431d83bebd.s3-outposts.ap-east-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-east-1", + "Bucket": "test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "S3 Outposts bucketAlias Ec2 Outpost Prod us-east-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ], + "disableDoubleEncoding": true + }, { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true } - ] - } - ] + ] }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "url": "https://test-accessp-e0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3.ec2.s3-outposts.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "Bucket": "test-accessp-e0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "S3 Outposts bucketAlias Ec2 Outpost Prod me-south-1", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ], + "disableDoubleEncoding": true }, - "aws-global" - ] - } - ] + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "me-south-1", + "disableDoubleEncoding": true + } + ] }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] - } - ], - "endpoint": { - "url": "https://{Bucket}.s3.{Region}.{partitionResult#dnsSuffix}", + "url": "https://test-accessp-e0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3.ec2.s3-outposts.me-south-1.amazonaws.com" + } + }, + "params": { + "Region": "me-south-1", + "Bucket": "test-accessp-e0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, + { + "documentation": "S3 Outposts bucketAlias Real Outpost Beta", + "expect": { + "endpoint": { "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] + "authSchemes": [ + { + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ], + "disableDoubleEncoding": true + }, + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] }, - "headers": {} - }, - "type": "endpoint" + "url": "https://test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kbeta0--op-s3.op-0b1d075431d83bebd.example.amazonaws.com" } - ], - "type": "tree" }, - { - "conditions": [], - "error": "Invalid region: region was not a valid DNS name.", - "type": "error" + "params": { + "Region": "us-east-1", + "Bucket": "test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kbeta0--op-s3", + "Endpoint": "https://example.amazonaws.com", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false } - ], - "type": "tree" - } - ], - "type": "tree" - }, - { - "conditions": [ + }, { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" + "documentation": "S3 Outposts bucketAlias Ec2 Outpost Beta", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4a", + "signingName": "s3-outposts", + "signingRegionSet": [ + "*" + ], + "disableDoubleEncoding": true + }, + { + "name": "sigv4", + "signingName": "s3-outposts", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://161743052723-e00000136899934034jeahy1t8gpzpbwjj8kb7beta0--op-s3.ec2.example.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "Bucket": "161743052723-e00000136899934034jeahy1t8gpzpbwjj8kb7beta0--op-s3", + "Endpoint": "https://example.amazonaws.com", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false } - ] }, { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" + "documentation": "S3 Outposts bucketAlias - No endpoint set for beta", + "expect": { + "error": "Expected a endpoint to be specified but no endpoint was found" + }, + "params": { + "Region": "us-east-1", + "Bucket": "test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kbeta0--op-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false } - ], - "assign": "url" }, { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "url" - }, - "scheme" - ] + "documentation": "S3 Outposts bucketAlias Invalid hardware type", + "expect": { + "error": "Unrecognized hardware type: \"Expected hardware type o or e but got h\"" }, - "http" - ] + "params": { + "Region": "us-east-1", + "Bucket": "test-accessp-h0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } }, { - "fn": "aws.isVirtualHostableS3Bucket", - "argv": [ - { - "ref": "Bucket" + "documentation": "S3 Outposts bucketAlias Special character in Outpost Arn", + "expect": { + "error": "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`." }, - true - ] + "params": { + "Region": "us-east-1", + "Bucket": "test-accessp-o00000754%1d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } }, { - "fn": "booleanEquals", - "argv": [ - { - "ref": "ForcePathStyle" + "documentation": "S3 Outposts bucketAlias - No endpoint set for beta", + "expect": { + "error": "Expected a endpoint to be specified but no endpoint was found" }, - false - ] + "params": { + "Region": "us-east-1", + "Bucket": "test-accessp-e0b1d075431d83bebde8xz5w8ijx1qzlbp3i3ebeta0--op-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } }, { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" + "documentation": "S3 Snow with bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "snow", + "disableDoubleEncoding": true + } + ] + }, + "url": "http://10.0.1.12:433/bucketName" + } }, - false - ] + "params": { + "Region": "snow", + "Bucket": "bucketName", + "Endpoint": "http://10.0.1.12:433", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } }, { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" + "documentation": "S3 Snow without bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "snow", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://10.0.1.12:433" + } }, - false - ] + "params": { + "Region": "snow", + "Endpoint": "https://10.0.1.12:433", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } }, { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" + "documentation": "S3 Snow no port", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "snow", + "disableDoubleEncoding": true + } + ] + }, + "url": "http://10.0.1.12/bucketName" + } }, - false - ] - } - ], - "rules": [ + "params": { + "Region": "snow", + "Bucket": "bucketName", + "Endpoint": "http://10.0.1.12", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false + } + }, { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" + "documentation": "S3 Snow dns endpoint", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3", + "signingRegion": "snow", + "disableDoubleEncoding": true + } + ] + }, + "url": "https://amazonaws.com/bucketName" } - ], - "assign": "partitionResult" + }, + "params": { + "Region": "snow", + "Bucket": "bucketName", + "Endpoint": "https://amazonaws.com", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "ref": "Region" + }, + { + "documentation": "Data Plane with short zone name", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" }, - false - ] + "url": "https://mybucket--abcd-ab1--x-s3.s3express-abcd-ab1.us-east-1.amazonaws.com" } - ], - "rules": [ + }, + "operationInputs": [ { - "conditions": [], - "endpoint": { - "url": "{url#scheme}://{Bucket}.{url#authority}{url#path}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] + "builtInParams": { + "AWS::Region": "us-east-1" }, - "headers": {} - }, - "type": "endpoint" + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--abcd-ab1--x-s3", + "Key": "key" + } } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid region: region was not a valid DNS name.", - "type": "error" + ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--abcd-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false } - ], - "type": "tree" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "ForcePathStyle" - }, - false - ] }, { - "fn": "aws.parseArn", - "argv": [ - { - "ref": "Bucket" - } - ], - "assign": "bucketArn" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "resourceId[0]" - ], - "assign": "arnType" + "documentation": "Data Plane with short zone name china region", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--abcd-ab1--x-s3.s3express-abcd-ab1.cn-north-1.amazonaws.com.cn" + } }, - { - "fn": "not", - "argv": [ + "operationInputs": [ { - "fn": "stringEquals", - "argv": [ - { - "ref": "arnType" + "builtInParams": { + "AWS::Region": "cn-north-1" }, - "" - ] + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--abcd-ab1--x-s3", + "Key": "key" + } } - ] + ], + "params": { + "Region": "cn-north-1", + "Bucket": "mybucket--abcd-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "service" - ] + }, + { + "documentation": "Data Plane with short zone name with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" }, - "s3-object-lambda" - ] + "url": "https://myaccesspoint--abcd-ab1--xa-s3.s3express-abcd-ab1.us-east-1.amazonaws.com" } - ], - "rules": [ + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "arnType" - }, - "accesspoint" - ] + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--abcd-ab1--xa-s3", + "Key": "key" } - ], - "rules": [ - { - "conditions": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "resourceId[1]" - ], - "assign": "accessPointName" - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "accessPointName" - }, - "" - ] - } - ] - } - ], - "rules": [ - { - "conditions": [ + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "myaccesspoint--abcd-ab1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone name with AP china region", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true } - ], - "error": "S3 Object Lambda does not support Dual-stack", - "type": "error" - }, - { - "conditions": [ + ], + "backend": "S3Express" + }, + "url": "https://myaccesspoint--abcd-ab1--xa-s3.s3express-abcd-ab1.cn-north-1.amazonaws.com.cn" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--abcd-ab1--xa-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "cn-north-1", + "Bucket": "myaccesspoint--abcd-ab1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone names (13 chars)", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ], - "error": "S3 Object Lambda does not support S3 Accelerate", - "type": "error" - }, - { - "conditions": [ + ], + "backend": "S3Express" + }, + "url": "https://mybucket--test-zone-ab1--x-s3.s3express-test-zone-ab1.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--test-zone-ab1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test-zone-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone names (13 chars) with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "region" - ] - }, - "" - ] - } - ] + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "DisableAccessPoints" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "DisableAccessPoints" - }, - true - ] - } - ], - "error": "Access points are not supported for this operation", - "type": "error" - }, - { - "conditions": [ - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "resourceId[2]" - ] - } - ] - } - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "UseArnRegion" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseArnRegion" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "region" - ] - }, - "{Region}" - ] - } - ] - } - ], - "error": "Invalid configuration: region from ARN `{bucketArn#region}` does not match client region `{Region}` and UseArnRegion is `false`", - "type": "error" - }, - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "region" - ] - } - ], - "assign": "bucketPartition" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "partitionResult" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketPartition" - }, - "name" - ] - }, - { - "fn": "getAttr", - "argv": [ - { - "ref": "partitionResult" - }, - "name" - ] - } - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "region" - ] - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "accountId" - ] - }, - "" - ] - } - ], - "error": "Invalid ARN: Missing account id", - "type": "error" - }, - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "accountId" - ] - }, - false - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "ref": "accessPointName" - }, - false - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - } - ], - "endpoint": { - "url": "{url#scheme}://{accessPointName}-{bucketArn#accountId}.{url#authority}{url#path}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "{bucketArn#region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "endpoint": { - "url": "https://{accessPointName}-{bucketArn#accountId}.s3-object-lambda-fips.{bucketArn#region}.{bucketPartition#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "{bucketArn#region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://{accessPointName}-{bucketArn#accountId}.s3-object-lambda.{bucketArn#region}.{bucketPartition#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "{bucketArn#region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `{accessPointName}`", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Client was configured for partition `{partitionResult#name}` but ARN (`{Bucket}`) has `{bucketPartition#name}`", - "type": "error" - } - ], - "type": "tree" - } - ], - "type": "tree" - } - ], - "type": "tree" - }, + ], + "backend": "S3Express" + }, + "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-test-zone-ab1.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with medium zone names (14 chars)", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "conditions": [], - "error": "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`.", - "type": "error" + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: bucket ARN is missing a region", - "type": "error" - } - ], - "type": "tree" + ], + "backend": "S3Express" }, - { - "conditions": [], - "error": "Invalid ARN: Expected a resource of the format `accesspoint:` but no name was provided", - "type": "error" + "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-test1-zone-ab1.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--test1-zone-ab1--x-s3", + "Key": "key" } - ], - "type": "tree" - }, + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-zone-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with medium zone names (14 chars) with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-test1-zone-ab1.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ { - "conditions": [], - "error": "Invalid ARN: Object Lambda ARNs only support `accesspoint` arn types, but found: `{arnType}`", - "type": "error" + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long zone names (20 chars)", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-test1-long1-zone-ab1.us-west-2.amazonaws.com" } - ], - "type": "tree" }, - { - "conditions": [ + "operationInputs": [ { - "fn": "stringEquals", - "argv": [ - { - "ref": "arnType" + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long zone names (20 chars)", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" }, - "accesspoint" - ] + "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-test1-long1-zone-ab1.us-west-2.amazonaws.com" } - ], - "rules": [ + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "resourceId[1]" - ], - "assign": "accessPointName" + "builtInParams": { + "AWS::Region": "us-west-2" }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "accessPointName" - }, - "" - ] - } - ] + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--test-ab1--x-s3.s3express-fips-test-ab1.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--test-ab1--x-s3", + "Key": "key" } - ], - "rules": [ - { - "conditions": [ - { - "fn": "not", - "argv": [ + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--test-ab1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone fips china region", + "expect": { + "error": "Partition does not support FIPS" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--test-ab1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "cn-north-1", + "Bucket": "mybucket--test-ab1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone fips with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "region" - ] - }, - "" - ] + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true } - ] - } - ], - "rules": [ - { - "conditions": [ + ], + "backend": "S3Express" + }, + "url": "https://myaccesspoint--test-ab1--xa-s3.s3express-fips-test-ab1.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test-ab1--xa-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "myaccesspoint--test-ab1--xa-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone fips with AP china region", + "expect": { + "error": "Partition does not support FIPS" + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test-ab1--xa-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "cn-north-1", + "Bucket": "myaccesspoint--test-ab1--xa-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone (13 chars) fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "fn": "stringEquals", - "argv": [ - { - "ref": "arnType" - }, - "accesspoint" - ] + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ], - "rules": [ + ], + "backend": "S3Express" + }, + "url": "https://mybucket--test-zone-ab1--x-s3.s3express-fips-test-zone-ab1.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--test-zone-ab1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test-zone-ab1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with short zone (13 chars) fips with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "conditions": [ - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "region" - ] - }, - "" - ] - } - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "DisableAccessPoints" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "DisableAccessPoints" - }, - true - ] - } - ], - "error": "Access points are not supported for this operation", - "type": "error" - }, - { - "conditions": [ - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "resourceId[2]" - ] - } - ] - } - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "UseArnRegion" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseArnRegion" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "region" - ] - }, - "{Region}" - ] - } - ] - } - ], - "error": "Invalid configuration: region from ARN `{bucketArn#region}` does not match client region `{Region}` and UseArnRegion is `false`", - "type": "error" - }, - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "region" - ] - } - ], - "assign": "bucketPartition" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "partitionResult" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketPartition" - }, - "name" - ] - }, - "{partitionResult#name}" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "region" - ] - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "service" - ] - }, - "s3" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "accountId" - ] - }, - false - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "ref": "accessPointName" - }, - false - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] - } - ], - "error": "Access Points do not support S3 Accelerate", - "type": "error" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "endpoint": { - "url": "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint-fips.dualstack.{bucketArn#region}.{bucketPartition#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{bucketArn#region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - } - ], - "endpoint": { - "url": "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint-fips.{bucketArn#region}.{bucketPartition#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{bucketArn#region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "endpoint": { - "url": "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint.dualstack.{bucketArn#region}.{bucketPartition#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{bucketArn#region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - } - ], - "endpoint": { - "url": "{url#scheme}://{accessPointName}-{bucketArn#accountId}.{url#authority}{url#path}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{bucketArn#region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - } - ], - "endpoint": { - "url": "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint.{bucketArn#region}.{bucketPartition#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{bucketArn#region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `{accessPointName}`", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: The ARN was not for the S3 service, found: {bucketArn#service}", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Client was configured for partition `{partitionResult#name}` but ARN (`{Bucket}`) has `{bucketPartition#name}`", - "type": "error" - } - ], - "type": "tree" - } - ], - "type": "tree" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`.", - "type": "error" - } - ], - "type": "tree" + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ], - "type": "tree" - } - ], - "type": "tree" + ], + "backend": "S3Express" }, - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ + "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-fips-test-zone-ab1.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with medium zone (14 chars) fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "accessPointName" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-fips-test1-zone-ab1.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--test1-zone-ab1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-zone-ab1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with medium zone (14 chars) fips with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ], - "error": "S3 MRAP does not support dual-stack", - "type": "error" - }, - { - "conditions": [ + ], + "backend": "S3Express" + }, + "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-fips-test1-zone-ab1.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long zone (20 chars) fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ], - "error": "S3 MRAP does not support FIPS", - "type": "error" - }, - { - "conditions": [ + ], + "backend": "S3Express" + }, + "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-fips-test1-long1-zone-ab1.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long zone (20 chars) fips with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ], - "error": "S3 MRAP does not support S3 Accelerate", - "type": "error" - }, - { - "conditions": [ + ], + "backend": "S3Express" + }, + "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-fips-test1-long1-zone-ab1.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long AZ", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "DisableMultiRegionAccessPoints" - }, - true - ] + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ], - "error": "Invalid configuration: Multi-Region Access Point ARNs are disabled.", - "type": "error" - }, - { - "conditions": [ + ], + "backend": "S3Express" + }, + "url": "https://mybucket--test1-az1--x-s3.s3express-test1-az1.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--test1-az1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long AZ with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "mrapPartition" + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "mrapPartition" - }, - "name" - ] - }, - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "partition" - ] - } - ] - } - ], - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://{accessPointName}.accesspoint.s3-global.{mrapPartition#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4a", - "signingName": "s3", - "signingRegionSet": [ - "*" - ] - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, + ], + "backend": "S3Express" + }, + "url": "https://myaccesspoint--test1-az1--xa-s3.s3express-test1-az1.us-west-2.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test1-az1--xa-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-az1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long AZ fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "conditions": [], - "error": "Client was configured for partition `{mrapPartition#name}` but bucket referred to partition `{bucketArn#partition}`", - "type": "error" + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ], - "type": "tree" - } - ], - "type": "tree" + ], + "backend": "S3Express" }, - { - "conditions": [], - "error": "Invalid Access Point Name", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: Expected a resource of the format `accesspoint:` but no name was provided", - "type": "error" + "url": "https://mybucket--test1-az1--x-s3.s3express-fips-test1-az1.us-west-2.amazonaws.com" } - ], - "type": "tree" }, - { - "conditions": [ + "operationInputs": [ { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "service" - ] + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--test1-az1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-az1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data Plane with long AZ fips with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" }, - "s3-outposts" - ] + "url": "https://myaccesspoint--test1-az1--xa-s3.s3express-fips-test1-az1.us-west-2.amazonaws.com" } - ], - "rules": [ + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] + "builtInParams": { + "AWS::Region": "us-west-2", + "AWS::UseFIPS": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test1-az1--xa-s3", + "Key": "key" } - ], - "error": "S3 Outposts does not support Dual-stack", - "type": "error" - }, + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-az1--xa-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Control plane with short AZ bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://s3express-control.us-east-1.amazonaws.com/mybucket--test-ab1--x-s3" + } + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "mybucket--test-ab1--x-s3" } - ], - "error": "S3 Outposts does not support FIPS", - "type": "error" - }, + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--test-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": false + } + }, + { + "documentation": "Control plane with short AZ bucket china region", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "cn-north-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://s3express-control.cn-north-1.amazonaws.com.cn/mybucket--test-ab1--x-s3" + } + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] + "builtInParams": { + "AWS::Region": "cn-north-1" + }, + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "mybucket--test-ab1--x-s3" } - ], - "error": "S3 Outposts does not support S3 Accelerate", - "type": "error" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "fn": "getAttr", - "argv": [ + } + ], + "params": { + "Region": "cn-north-1", + "Bucket": "mybucket--test-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": false + } + }, + { + "documentation": "Control plane with short AZ bucket and fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "bucketArn" - }, - "resourceId[4]" - ] - } - ] + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://s3express-control-fips.us-east-1.amazonaws.com/mybucket--test-ab1--x-s3" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "mybucket--test-ab1--x-s3" } - ], - "error": "Invalid Arn: Outpost Access Point ARN contains sub resources", - "type": "error" - }, + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--test-ab1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": false + } + }, + { + "documentation": "Control plane with short AZ bucket and fips china region", + "expect": { + "error": "Partition does not support FIPS" + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "resourceId[1]" - ], - "assign": "outpostId" + "builtInParams": { + "AWS::Region": "cn-north-1", + "AWS::UseFIPS": true + }, + "operationName": "CreateBucket", + "operationParams": { + "Bucket": "mybucket--test-ab1--x-s3" } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "ref": "outpostId" - }, - false - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "UseArnRegion" - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseArnRegion" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "region" - ] - }, - "{Region}" - ] - } - ] - } - ], - "error": "Invalid configuration: region from ARN `{bucketArn#region}` does not match client region `{Region}` and UseArnRegion is `false`", - "type": "error" - }, - { - "conditions": [ + } + ], + "params": { + "Region": "cn-north-1", + "Bucket": "mybucket--test-ab1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": false + } + }, + { + "documentation": "Control plane without bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "fn": "aws.partition", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "region" - ] - } - ], - "assign": "bucketPartition" + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true } - ], - "rules": [ - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "partitionResult" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketPartition" - }, - "name" - ] - }, - { - "fn": "getAttr", - "argv": [ - { - "ref": "partitionResult" - }, - "name" - ] - } - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "region" - ] - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "accountId" - ] - }, - false - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "resourceId[2]" - ], - "assign": "outpostType" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "getAttr", - "argv": [ - { - "ref": "bucketArn" - }, - "resourceId[3]" - ], - "assign": "accessPointName" - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "outpostType" - }, - "accesspoint" - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - } - ], - "endpoint": { - "url": "https://{accessPointName}-{bucketArn#accountId}.{outpostId}.{url#authority}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": [ - "*" - ] - }, - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{bucketArn#region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://{accessPointName}-{bucketArn#accountId}.{outpostId}.s3-outposts.{bucketArn#region}.{bucketPartition#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": [ - "*" - ] - }, - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "{bucketArn#region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Expected an outpost type `accesspoint`, found {outpostType}", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: expected an access point name", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: Expected a 4-component resource", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Client was configured for partition `{partitionResult#name}` but ARN (`{Bucket}`) has `{bucketPartition#name}`", - "type": "error" - } - ], - "type": "tree" + ], + "backend": "S3Express" + }, + "url": "https://s3express-control.us-east-1.amazonaws.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "ListDirectoryBuckets" + } + ], + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": false + } + }, + { + "documentation": "Control plane without bucket and fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-east-1", + "disableDoubleEncoding": true } - ], - "type": "tree" - } - ], - "type": "tree" + ], + "backend": "S3Express" }, - { - "conditions": [], - "error": "Invalid ARN: The outpost Id may only contain a-z, A-Z, 0-9 and `-`. Found: `{outpostId}`", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid ARN: The Outpost Id was not set", - "type": "error" + "url": "https://s3express-control-fips.us-east-1.amazonaws.com" } - ], - "type": "tree" }, - { - "conditions": [], - "error": "Invalid ARN: Unrecognized format: {Bucket} (type: {arnType})", - "type": "error" + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseFIPS": true + }, + "operationName": "ListDirectoryBuckets" + } + ], + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": false } - ], - "type": "tree" }, { - "conditions": [], - "error": "Invalid ARN: No ARN type specified", - "type": "error" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "substring", - "argv": [ - { - "ref": "Bucket" + "documentation": "Data Plane sigv4 auth with short AZ", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--usw2-az1--x-s3.s3express-usw2-az1.us-west-2.amazonaws.com" + } }, - 0, - 4, - false - ], - "assign": "arnPrefix" + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--usw2-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "DisableS3ExpressSessionAuth": true + } }, { - "fn": "stringEquals", - "argv": [ - { - "ref": "arnPrefix" + "documentation": "Data Plane sigv4 auth with short AZ with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://myaccesspoint--usw2-az1--xa-s3.s3express-usw2-az1.us-west-2.amazonaws.com" + } }, - "arn:" - ] + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--usw2-az1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "DisableS3ExpressSessionAuth": true + } }, { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "fn": "aws.parseArn", - "argv": [ - { - "ref": "Bucket" - } - ] + "documentation": "Data Plane sigv4 auth with short zone (13 chars)", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--test-zone-ab1--x-s3.s3express-test-zone-ab1.us-west-2.amazonaws.com" } - ] + }, + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test-zone-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "DisableS3ExpressSessionAuth": true } - ] - } - ], - "error": "Invalid ARN: `{Bucket}` was not a valid ARN", - "type": "error" - }, - { - "conditions": [ + }, { - "fn": "booleanEquals", - "argv": [ - { - "ref": "ForcePathStyle" + "documentation": "Data Plane sigv4 auth with short zone (13 chars) with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-test-zone-ab1.us-west-2.amazonaws.com" + } }, - true - ] + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "DisableS3ExpressSessionAuth": true + } }, { - "fn": "aws.parseArn", - "argv": [ - { - "ref": "Bucket" + "documentation": "Data Plane sigv4 auth with short AZ fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--usw2-az1--x-s3.s3express-fips-usw2-az1.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--usw2-az1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "DisableS3ExpressSessionAuth": true } - ] - } - ], - "error": "Path-style addressing cannot be used with ARN buckets", - "type": "error" - }, - { - "conditions": [ + }, { - "fn": "uriEncode", - "argv": [ - { - "ref": "Bucket" + "documentation": "Data Plane sigv4 auth with short AZ fips with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://myaccesspoint--usw2-az1--xa-s3.s3express-fips-usw2-az1.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--usw2-az1--xa-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "DisableS3ExpressSessionAuth": true } - ], - "assign": "uri_encoded_bucket" - } - ], - "rules": [ + }, { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" + "documentation": "Data Plane sigv4 auth with short zone (13 chars) fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" + }, + "url": "https://mybucket--test-zone-ab1--x-s3.s3express-fips-test-zone-ab1.us-west-2.amazonaws.com" } - ], - "assign": "partitionResult" + }, + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test-zone-ab1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "DisableS3ExpressSessionAuth": true } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" + }, + { + "documentation": "Data Plane sigv4 auth with short zone (13 chars) fips with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" }, - false - ] + "url": "https://myaccesspoint--test-zone-ab1--xa-s3.s3express-fips-test-zone-ab1.us-west-2.amazonaws.com" } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] + }, + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test-zone-ab1--xa-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "Data Plane sigv4 auth with long AZ", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "url": "https://mybucket--test1-az1--x-s3.s3express-test1-az1.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "Data Plane sigv4 auth with long AZ with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - } - ] + ], + "backend": "S3Express" }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + "url": "https://myaccesspoint--test1-az1--xa-s3.s3express-test1-az1.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-az1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "Data Plane sigv4 auth with medium zone(14 chars)", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-test1-zone-ab1.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-zone-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "Data Plane sigv4 auth with medium zone(14 chars) with AP", + "expect": { + "endpoint": { "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] + "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-test1-zone-ab1.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "Data Plane sigv4 auth with long zone(20 chars)", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-test1-long1-zone-ab1.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "Data Plane sigv4 auth with long zone(20 chars) with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - } - ] + ], + "backend": "S3Express" }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-test1-long1-zone-ab1.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "Data Plane sigv4 auth with long AZ fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "url": "https://mybucket--test1-az1--x-s3.s3express-fips-test1-az1.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-az1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "Data Plane sigv4 auth with long AZ fips with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ + "url": "https://myaccesspoint--test1-az1--xa-s3.s3express-fips-test1-az1.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-az1--xa-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "Data Plane sigv4 auth with medium zone (14 chars) fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] + ], + "backend": "S3Express" }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-fips-test1-zone-ab1.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-zone-ab1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "Data Plane sigv4 auth with medium zone (14 chars) fips with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - } - ] + ], + "backend": "S3Express" }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + "url": "https://myaccesspoint--test1-zone-ab1--xa-s3.s3express-fips-test1-zone-ab1.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-zone-ab1--xa-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "Data Plane sigv4 auth with long zone (20 chars) fips", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-fips-test1-long1-zone-ab1.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "Data Plane sigv4 auth with long zone (20 chars) fips with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] - } - ], - "endpoint": { - "url": "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "url": "https://myaccesspoint--test1-long1-zone-ab1--xa-s3.s3express-fips-test1-long1-zone-ab1.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--test1-long1-zone-ab1--xa-s3", + "UseFIPS": true, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "Control Plane host override", + "expect": { + "endpoint": { "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] + "url": "https://mybucket--usw2-az1--x-s3.custom.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--usw2-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": true, + "Endpoint": "https://custom.com" + } + }, + { + "documentation": "Control Plane host override with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ + { + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "url": "https://myaccesspoint--usw2-az1--xa-s3.custom.com" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--usw2-az1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": true, + "Endpoint": "https://custom.com" + } + }, + { + "documentation": "Control Plane host override no bucket", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + ], + "backend": "S3Express" }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://s3-fips.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + "url": "https://custom.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": true, + "Endpoint": "https://custom.com" + } + }, + { + "documentation": "Data plane host override non virtual session auth", + "expect": { + "endpoint": { "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + ], + "backend": "S3Express" }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "url": "https://10.0.0.1/mybucket--usw2-az1--x-s3" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://10.0.0.1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--usw2-az1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--usw2-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Endpoint": "https://10.0.0.1" + } + }, + { + "documentation": "Data plane host override non virtual session auth with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] + "url": "https://10.0.0.1/myaccesspoint--usw2-az1--xa-s3" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://10.0.0.1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--usw2-az1--xa-s3", + "Key": "key" } - ], - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://s3-fips.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--usw2-az1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Endpoint": "https://10.0.0.1" + } + }, + { + "documentation": "Control Plane host override ip", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] + ], + "backend": "S3Express" }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "url": "https://10.0.0.1/mybucket--usw2-az1--x-s3" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--usw2-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": true, + "Endpoint": "https://10.0.0.1" + } + }, + { + "documentation": "Control Plane host override ip with AP", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] + ], + "backend": "S3Express" }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ + "url": "https://10.0.0.1/myaccesspoint--usw2-az1--xa-s3" + } + }, + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--usw2-az1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": true, + "DisableS3ExpressSessionAuth": true, + "Endpoint": "https://10.0.0.1" + } + }, + { + "documentation": "Data plane host override", + "expect": { + "endpoint": { + "properties": { + "authSchemes": [ { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true + } + ], + "backend": "S3Express" }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] + "url": "https://mybucket--usw2-az1--x-s3.custom.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://custom.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--usw2-az1--x-s3", + "Key": "key" } - ], - "endpoint": { - "url": "https://s3-fips.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "mybucket--usw2-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Endpoint": "https://custom.com" + } + }, + { + "documentation": "Data plane host override with AP", + "expect": { + "endpoint": { "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ + "authSchemes": [ { - "ref": "Endpoint" + "name": "sigv4-s3express", + "signingName": "s3express", + "signingRegion": "us-west-2", + "disableDoubleEncoding": true } - ] - } - ] + ], + "backend": "S3Express" }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] + "url": "https://myaccesspoint--usw2-az1--xa-s3.custom.com" + } + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://custom.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--usw2-az1--xa-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "myaccesspoint--usw2-az1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Endpoint": "https://custom.com" + } + }, + { + "documentation": "bad format error", + "expect": { + "error": "Unrecognized S3Express bucket name format." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--usaz1--x-s3", + "Key": "key" } - ], - "endpoint": { - "url": "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--usaz1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "bad AP format error", + "expect": { + "error": "Unrecognized S3Express bucket name format." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" }, - "headers": {} - }, - "type": "endpoint" - }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--usaz1--xa-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "myaccesspoint--usaz1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "bad format error no session auth", + "expect": { + "error": "Unrecognized S3Express bucket name format." + }, + "operationInputs": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] + "builtInParams": { + "AWS::Region": "us-east-1" }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--usaz1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--usaz1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "bad AP format error no session auth", + "expect": { + "error": "Unrecognized S3Express bucket name format." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--usaz1--xa-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "myaccesspoint--usaz1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false, + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "dual-stack error", + "expect": { + "error": "S3Express does not support Dual-stack." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--test-ab1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--test-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "dual-stack error with AP", + "expect": { + "error": "S3Express does not support Dual-stack." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::UseDualStack": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test-ab1--xa-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "myaccesspoint--test-ab1--xa-s3", + "UseFIPS": false, + "UseDualStack": true, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "accelerate error", + "expect": { + "error": "S3Express does not support S3 Accelerate." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "mybucket--test-ab1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "mybucket--test-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": true, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "accelerate error with AP", + "expect": { + "error": "S3Express does not support S3 Accelerate." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1", + "AWS::S3::Accelerate": true + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "myaccesspoint--test-ab1--xa-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "myaccesspoint--test-ab1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": true, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data plane bucket format error", + "expect": { + "error": "S3Express bucket name is not a valid virtual hostable name." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "my.bucket--test-ab1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "my.bucket--test-ab1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "Data plane AP format error", + "expect": { + "error": "S3Express bucket name is not a valid virtual hostable name." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-east-1" }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "my.myaccesspoint--test-ab1--xa-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-east-1", + "Bucket": "my.myaccesspoint--test-ab1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "UseS3ExpressControlEndpoint": false + } + }, + { + "documentation": "host override data plane bucket error session auth", + "expect": { + "error": "S3Express bucket name is not a valid virtual hostable name." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://custom.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "my.bucket--usw2-az1--x-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "my.bucket--usw2-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Endpoint": "https://custom.com" + } + }, + { + "documentation": "host override data plane AP error session auth", + "expect": { + "error": "S3Express bucket name is not a valid virtual hostable name." + }, + "operationInputs": [ + { + "builtInParams": { + "AWS::Region": "us-west-2", + "SDK::Endpoint": "https://custom.com" + }, + "operationName": "GetObject", + "operationParams": { + "Bucket": "my.myaccesspoint--usw2-az1--xa-s3", + "Key": "key" + } + } + ], + "params": { + "Region": "us-west-2", + "Bucket": "my.myaccesspoint--usw2-az1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Endpoint": "https://custom.com" + } + }, + { + "documentation": "host override data plane bucket error", + "expect": { + "error": "S3Express bucket name is not a valid virtual hostable name." + }, + "params": { + "Region": "us-west-2", + "Bucket": "my.bucket--usw2-az1--x-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Endpoint": "https://custom.com", + "DisableS3ExpressSessionAuth": true + } + }, + { + "documentation": "host override data plane AP error", + "expect": { + "error": "S3Express bucket name is not a valid virtual hostable name." + }, + "params": { + "Region": "us-west-2", + "Bucket": "my.myaccesspoint--usw2-az1--xa-s3", + "UseFIPS": false, + "UseDualStack": false, + "Accelerate": false, + "Endpoint": "https://custom.com", + "DisableS3ExpressSessionAuth": true + } + } + ], + "version": "1.0" + } + } + }, + "com.amazonaws.s3#AnalyticsAndOperator": { + "type": "structure", + "members": { + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

The prefix to use when evaluating an AND predicate: The prefix that an object must have to be\n included in the metrics results.

" + } + }, + "Tags": { + "target": "com.amazonaws.s3#TagSet", + "traits": { + "smithy.api#documentation": "

The list of tags to use when evaluating an AND predicate.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Tag" + } + } + }, + "traits": { + "smithy.api#documentation": "

A conjunction (logical AND) of predicates, which is used in evaluating a metrics filter. The\n operator must have at least two predicates in any combination, and an object must match all of the\n predicates for the filter to apply.

" + } + }, + "com.amazonaws.s3#AnalyticsConfiguration": { + "type": "structure", + "members": { + "Id": { + "target": "com.amazonaws.s3#AnalyticsId", + "traits": { + "smithy.api#documentation": "

The ID that identifies the analytics configuration.

", + "smithy.api#required": {} + } + }, + "Filter": { + "target": "com.amazonaws.s3#AnalyticsFilter", + "traits": { + "smithy.api#documentation": "

The filter used to describe a set of objects for analyses. A filter must have exactly one prefix,\n one tag, or one conjunction (AnalyticsAndOperator). If no filter is provided, all objects will be\n considered in any analysis.

" + } + }, + "StorageClassAnalysis": { + "target": "com.amazonaws.s3#StorageClassAnalysis", + "traits": { + "smithy.api#documentation": "

Contains data related to access patterns to be collected and made available to analyze the\n tradeoffs between different storage classes.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket.

" + } + }, + "com.amazonaws.s3#AnalyticsConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#AnalyticsConfiguration" + } + }, + "com.amazonaws.s3#AnalyticsExportDestination": { + "type": "structure", + "members": { + "S3BucketDestination": { + "target": "com.amazonaws.s3#AnalyticsS3BucketDestination", + "traits": { + "smithy.api#documentation": "

A destination signifying output to an S3 bucket.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Where to publish the analytics results.

" + } + }, + "com.amazonaws.s3#AnalyticsFilter": { + "type": "union", + "members": { + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

The prefix to use when evaluating an analytics filter.

" + } + }, + "Tag": { + "target": "com.amazonaws.s3#Tag", + "traits": { + "smithy.api#documentation": "

The tag to use when evaluating an analytics filter.

" + } + }, + "And": { + "target": "com.amazonaws.s3#AnalyticsAndOperator", + "traits": { + "smithy.api#documentation": "

A conjunction (logical AND) of predicates, which is used in evaluating an analytics filter. The\n operator must have at least two predicates.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The filter used to describe a set of objects for analyses. A filter must have exactly one prefix,\n one tag, or one conjunction (AnalyticsAndOperator). If no filter is provided, all objects will be\n considered in any analysis.

" + } + }, + "com.amazonaws.s3#AnalyticsId": { + "type": "string" + }, + "com.amazonaws.s3#AnalyticsS3BucketDestination": { + "type": "structure", + "members": { + "Format": { + "target": "com.amazonaws.s3#AnalyticsS3ExportFileFormat", + "traits": { + "smithy.api#documentation": "

Specifies the file format used when exporting data to Amazon S3.

", + "smithy.api#required": {} + } + }, + "BucketAccountId": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID that owns the destination S3 bucket. If no account ID is provided, the owner is not\n validated before exporting data.

\n \n

Although this value is optional, we strongly recommend that you set it to help prevent problems\n if the destination bucket ownership changes.

\n
" + } + }, + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the bucket to which data is exported.

", + "smithy.api#required": {} + } + }, + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

The prefix to use when exporting data. The prefix is prepended to all results.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about where to publish the analytics results.

" + } + }, + "com.amazonaws.s3#AnalyticsS3ExportFileFormat": { + "type": "enum", + "members": { + "CSV": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CSV" + } + } + } + }, + "com.amazonaws.s3#ArchiveStatus": { + "type": "enum", + "members": { + "ARCHIVE_ACCESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ARCHIVE_ACCESS" + } + }, + "DEEP_ARCHIVE_ACCESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DEEP_ARCHIVE_ACCESS" + } + } + } + }, + "com.amazonaws.s3#Body": { + "type": "blob" + }, + "com.amazonaws.s3#Bucket": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket.

" + } + }, + "CreationDate": { + "target": "com.amazonaws.s3#CreationDate", + "traits": { + "smithy.api#documentation": "

Date the bucket was created. This date can change when making changes to your bucket, such as\n editing its bucket policy.

" + } + }, + "BucketRegion": { + "target": "com.amazonaws.s3#BucketRegion", + "traits": { + "smithy.api#documentation": "

\n BucketRegion indicates the Amazon Web Services region where the bucket is located. If the request\n contains at least one valid parameter, it is included in the response.

" + } + }, + "BucketArn": { + "target": "com.amazonaws.s3#S3RegionalOrS3ExpressBucketArnString", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the S3 bucket. ARNs uniquely identify Amazon Web Services resources across all\n of Amazon Web Services.

\n \n

This parameter is only supported for S3 directory buckets. For more information, see Using tags with\n directory buckets.

\n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

In terms of implementation, a Bucket is a resource.

" + } + }, + "com.amazonaws.s3#BucketAccelerateStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Suspended": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Suspended" + } + } + } + }, + "com.amazonaws.s3#BucketAlreadyExists": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

The requested bucket name is not available. The bucket namespace is shared by all users of the\n system. Select a different name and try again.

", + "smithy.api#error": "client", + "smithy.api#httpError": 409 + } + }, + "com.amazonaws.s3#BucketAlreadyOwnedByYou": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

The bucket you tried to create already exists, and you own it. Amazon S3 returns this error in all Amazon Web Services\n Regions except in the North Virginia Region. For legacy compatibility, if you re-create an existing\n bucket that you already own in the North Virginia Region, Amazon S3 returns 200 OK and resets the bucket\n access control lists (ACLs).

", + "smithy.api#error": "client", + "smithy.api#httpError": 409 + } + }, + "com.amazonaws.s3#BucketCannedACL": { + "type": "enum", + "members": { + "private": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "private" + } + }, + "public_read": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "public-read" + } + }, + "public_read_write": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "public-read-write" + } + }, + "authenticated_read": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "authenticated-read" + } + } + } + }, + "com.amazonaws.s3#BucketInfo": { + "type": "structure", + "members": { + "DataRedundancy": { + "target": "com.amazonaws.s3#DataRedundancy", + "traits": { + "smithy.api#documentation": "

The number of Zone (Availability Zone or Local Zone) that's used for redundancy for the bucket.

" + } + }, + "Type": { + "target": "com.amazonaws.s3#BucketType", + "traits": { + "smithy.api#documentation": "

The type of bucket.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the information about the bucket that will be created. For more information about\n directory buckets, see Directory buckets in the\n Amazon S3 User Guide.

\n \n

This functionality is only supported by directory buckets.

\n
" + } + }, + "com.amazonaws.s3#BucketKeyEnabled": { + "type": "boolean" + }, + "com.amazonaws.s3#BucketLifecycleConfiguration": { + "type": "structure", + "members": { + "Rules": { + "target": "com.amazonaws.s3#LifecycleRules", + "traits": { + "smithy.api#documentation": "

A lifecycle rule for individual objects in an Amazon S3 bucket.

", + "smithy.api#required": {}, + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Rule" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the lifecycle configuration for objects in an Amazon S3 bucket. For more information, see\n Object Lifecycle\n Management in the Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3#BucketLocationConstraint": { + "type": "enum", + "members": { + "af_south_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "af-south-1" + } + }, + "ap_east_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-east-1" + } + }, + "ap_northeast_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-northeast-1" + } + }, + "ap_northeast_2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-northeast-2" + } + }, + "ap_northeast_3": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-northeast-3" + } + }, + "ap_south_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-south-1" + } + }, + "ap_south_2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-south-2" + } + }, + "ap_southeast_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-southeast-1" + } + }, + "ap_southeast_2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-southeast-2" + } + }, + "ap_southeast_3": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-southeast-3" + } + }, + "ap_southeast_4": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-southeast-4" + } + }, + "ap_southeast_5": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ap-southeast-5" + } + }, + "ca_central_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ca-central-1" + } + }, + "cn_north_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "cn-north-1" + } + }, + "cn_northwest_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "cn-northwest-1" + } + }, + "EU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EU" + } + }, + "eu_central_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "eu-central-1" + } + }, + "eu_central_2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "eu-central-2" + } + }, + "eu_north_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "eu-north-1" + } + }, + "eu_south_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "eu-south-1" + } + }, + "eu_south_2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "eu-south-2" + } + }, + "eu_west_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "eu-west-1" + } + }, + "eu_west_2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "eu-west-2" + } + }, + "eu_west_3": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "eu-west-3" + } + }, + "il_central_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "il-central-1" + } + }, + "me_central_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "me-central-1" + } + }, + "me_south_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "me-south-1" + } + }, + "sa_east_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "sa-east-1" + } + }, + "us_east_2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "us-east-2" + } + }, + "us_gov_east_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "us-gov-east-1" + } + }, + "us_gov_west_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "us-gov-west-1" + } + }, + "us_west_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "us-west-1" + } + }, + "us_west_2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "us-west-2" + } + } + } + }, + "com.amazonaws.s3#BucketLocationName": { + "type": "string" + }, + "com.amazonaws.s3#BucketLoggingStatus": { + "type": "structure", + "members": { + "LoggingEnabled": { + "target": "com.amazonaws.s3#LoggingEnabled" + } + }, + "traits": { + "smithy.api#documentation": "

Container for logging status information.

" + } + }, + "com.amazonaws.s3#BucketLogsPermission": { + "type": "enum", + "members": { + "FULL_CONTROL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FULL_CONTROL" + } + }, + "READ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "READ" + } + }, + "WRITE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WRITE" + } + } + } + }, + "com.amazonaws.s3#BucketName": { + "type": "string" + }, + "com.amazonaws.s3#BucketRegion": { + "type": "string" + }, + "com.amazonaws.s3#BucketType": { + "type": "enum", + "members": { + "Directory": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Directory" + } + } + } + }, + "com.amazonaws.s3#BucketVersioningStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Suspended": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Suspended" + } + } + } + }, + "com.amazonaws.s3#Buckets": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#Bucket", + "traits": { + "smithy.api#xmlName": "Bucket" + } + } + }, + "com.amazonaws.s3#BypassGovernanceRetention": { + "type": "boolean" + }, + "com.amazonaws.s3#BytesProcessed": { + "type": "long" + }, + "com.amazonaws.s3#BytesReturned": { + "type": "long" + }, + "com.amazonaws.s3#BytesScanned": { + "type": "long" + }, + "com.amazonaws.s3#CORSConfiguration": { + "type": "structure", + "members": { + "CORSRules": { + "target": "com.amazonaws.s3#CORSRules", + "traits": { + "smithy.api#documentation": "

A set of origins and methods (cross-origin access that you want to allow). You can add up to 100\n rules to the configuration.

", + "smithy.api#required": {}, + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "CORSRule" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the cross-origin access configuration for objects in an Amazon S3 bucket. For more information,\n see Enabling Cross-Origin Resource\n Sharing in the Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3#CORSRule": { + "type": "structure", + "members": { + "ID": { + "target": "com.amazonaws.s3#ID", + "traits": { + "smithy.api#documentation": "

Unique identifier for the rule. The value cannot be longer than 255 characters.

" + } + }, + "AllowedHeaders": { + "target": "com.amazonaws.s3#AllowedHeaders", + "traits": { + "smithy.api#documentation": "

Headers that are specified in the Access-Control-Request-Headers header. These headers\n are allowed in a preflight OPTIONS request. In response to any preflight OPTIONS request, Amazon S3 returns\n any requested headers that are allowed.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "AllowedHeader" + } + }, + "AllowedMethods": { + "target": "com.amazonaws.s3#AllowedMethods", + "traits": { + "smithy.api#documentation": "

An HTTP method that you allow the origin to execute. Valid values are GET,\n PUT, HEAD, POST, and DELETE.

", + "smithy.api#required": {}, + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "AllowedMethod" + } + }, + "AllowedOrigins": { + "target": "com.amazonaws.s3#AllowedOrigins", + "traits": { + "smithy.api#documentation": "

One or more origins you want customers to be able to access the bucket from.

", + "smithy.api#required": {}, + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "AllowedOrigin" + } + }, + "ExposeHeaders": { + "target": "com.amazonaws.s3#ExposeHeaders", + "traits": { + "smithy.api#documentation": "

One or more headers in the response that you want customers to be able to access from their\n applications (for example, from a JavaScript XMLHttpRequest object).

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "ExposeHeader" + } + }, + "MaxAgeSeconds": { + "target": "com.amazonaws.s3#MaxAgeSeconds", + "traits": { + "smithy.api#documentation": "

The time in seconds that your browser is to cache the preflight response for the specified\n resource.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies a cross-origin access rule for an Amazon S3 bucket.

" + } + }, + "com.amazonaws.s3#CORSRules": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#CORSRule" + } + }, + "com.amazonaws.s3#CSVInput": { + "type": "structure", + "members": { + "FileHeaderInfo": { + "target": "com.amazonaws.s3#FileHeaderInfo", + "traits": { + "smithy.api#documentation": "

Describes the first line of input. Valid values are:

\n
    \n
  • \n

    \n NONE: First line is not a header.

    \n
  • \n
  • \n

    \n IGNORE: First line is a header, but you can't use the header values to indicate the\n column in an expression. You can use column position (such as _1, _2, …) to indicate the column\n (SELECT s._1 FROM OBJECT s).

    \n
  • \n
  • \n

    \n Use: First line is a header, and you can use the header value to identify a column\n in an expression (SELECT \"name\" FROM OBJECT).

    \n
  • \n
" + } + }, + "Comments": { + "target": "com.amazonaws.s3#Comments", + "traits": { + "smithy.api#documentation": "

A single character used to indicate that a row should be ignored when the character is present at\n the start of that row. You can specify any character to indicate a comment line. The default character\n is #.

\n

Default: #\n

" + } + }, + "QuoteEscapeCharacter": { + "target": "com.amazonaws.s3#QuoteEscapeCharacter", + "traits": { + "smithy.api#documentation": "

A single character used for escaping the quotation mark character inside an already escaped value.\n For example, the value \"\"\" a , b \"\"\" is parsed as \" a , b \".

" + } + }, + "RecordDelimiter": { + "target": "com.amazonaws.s3#RecordDelimiter", + "traits": { + "smithy.api#documentation": "

A single character used to separate individual records in the input. Instead of the default value,\n you can specify an arbitrary delimiter.

" + } + }, + "FieldDelimiter": { + "target": "com.amazonaws.s3#FieldDelimiter", + "traits": { + "smithy.api#documentation": "

A single character used to separate individual fields in a record. You can specify an arbitrary\n delimiter.

" + } + }, + "QuoteCharacter": { + "target": "com.amazonaws.s3#QuoteCharacter", + "traits": { + "smithy.api#documentation": "

A single character used for escaping when the field delimiter is part of the value. For example, if\n the value is a, b, Amazon S3 wraps this field value in quotation marks, as follows: \" a ,\n b \".

\n

Type: String

\n

Default: \"\n

\n

Ancestors: CSV\n

" + } + }, + "AllowQuotedRecordDelimiter": { + "target": "com.amazonaws.s3#AllowQuotedRecordDelimiter", + "traits": { + "smithy.api#documentation": "

Specifies that CSV field values may contain quoted record delimiters and such records should be\n allowed. Default value is FALSE. Setting this value to TRUE may lower performance.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes how an uncompressed comma-separated values (CSV)-formatted input object is\n formatted.

" + } + }, + "com.amazonaws.s3#CSVOutput": { + "type": "structure", + "members": { + "QuoteFields": { + "target": "com.amazonaws.s3#QuoteFields", + "traits": { + "smithy.api#documentation": "

Indicates whether to use quotation marks around output fields.

\n
    \n
  • \n

    \n ALWAYS: Always use quotation marks for output fields.

    \n
  • \n
  • \n

    \n ASNEEDED: Use quotation marks for output fields when needed.

    \n
  • \n
" + } + }, + "QuoteEscapeCharacter": { + "target": "com.amazonaws.s3#QuoteEscapeCharacter", + "traits": { + "smithy.api#documentation": "

The single character used for escaping the quote character inside an already escaped value.

" + } + }, + "RecordDelimiter": { + "target": "com.amazonaws.s3#RecordDelimiter", + "traits": { + "smithy.api#documentation": "

A single character used to separate individual records in the output. Instead of the default value,\n you can specify an arbitrary delimiter.

" + } + }, + "FieldDelimiter": { + "target": "com.amazonaws.s3#FieldDelimiter", + "traits": { + "smithy.api#documentation": "

The value used to separate individual fields in a record. You can specify an arbitrary\n delimiter.

" + } + }, + "QuoteCharacter": { + "target": "com.amazonaws.s3#QuoteCharacter", + "traits": { + "smithy.api#documentation": "

A single character used for escaping when the field delimiter is part of the value. For example, if\n the value is a, b, Amazon S3 wraps this field value in quotation marks, as follows: \" a ,\n b \".

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes how uncompressed comma-separated values (CSV)-formatted results are formatted.

" + } + }, + "com.amazonaws.s3#CacheControl": { + "type": "string" + }, + "com.amazonaws.s3#Checksum": { + "type": "structure", + "members": { + "ChecksumCRC32": { + "target": "com.amazonaws.s3#ChecksumCRC32", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32 checksum of the object. This checksum is only be present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

" + } + }, + "ChecksumCRC32C": { + "target": "com.amazonaws.s3#ChecksumCRC32C", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32C checksum of the object. This checksum is only present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

" + } + }, + "ChecksumCRC64NVME": { + "target": "com.amazonaws.s3#ChecksumCRC64NVME", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC64NVME checksum of the object. This checksum is present\n if the object was uploaded with the CRC64NVME checksum algorithm, or if the object was\n uploaded without a checksum (and Amazon S3 added the default checksum, CRC64NVME, to the\n uploaded object). For more information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + }, + "ChecksumSHA1": { + "target": "com.amazonaws.s3#ChecksumSHA1", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA1 digest of the object. This will only be present if the object was uploaded\n with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

" + } + }, + "ChecksumSHA256": { + "target": "com.amazonaws.s3#ChecksumSHA256", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA256 digest of the object. This will only be present if the object was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

" + } + }, + "ChecksumType": { + "target": "com.amazonaws.s3#ChecksumType", + "traits": { + "smithy.api#documentation": "

The checksum type that is used to calculate the object’s checksum value. For more information, see\n Checking\n object integrity in the Amazon S3 User Guide.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains all the possible checksum or digest values for an object.

" + } + }, + "com.amazonaws.s3#ChecksumAlgorithm": { + "type": "enum", + "members": { + "CRC32": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CRC32" + } + }, + "CRC32C": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CRC32C" + } + }, + "SHA1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SHA1" + } + }, + "SHA256": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SHA256" + } + }, + "CRC64NVME": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CRC64NVME" + } + } + } + }, + "com.amazonaws.s3#ChecksumAlgorithmList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#ChecksumAlgorithm" + } + }, + "com.amazonaws.s3#ChecksumCRC32": { + "type": "string" + }, + "com.amazonaws.s3#ChecksumCRC32C": { + "type": "string" + }, + "com.amazonaws.s3#ChecksumCRC64NVME": { + "type": "string" + }, + "com.amazonaws.s3#ChecksumMode": { + "type": "enum", + "members": { + "ENABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENABLED" + } + } + } + }, + "com.amazonaws.s3#ChecksumSHA1": { + "type": "string" + }, + "com.amazonaws.s3#ChecksumSHA256": { + "type": "string" + }, + "com.amazonaws.s3#ChecksumType": { + "type": "enum", + "members": { + "COMPOSITE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPOSITE" + } + }, + "FULL_OBJECT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FULL_OBJECT" + } + } + } + }, + "com.amazonaws.s3#ClientToken": { + "type": "string" + }, + "com.amazonaws.s3#Code": { + "type": "string" + }, + "com.amazonaws.s3#Comments": { + "type": "string" + }, + "com.amazonaws.s3#CommonPrefix": { + "type": "structure", + "members": { + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

Container for the specified common prefix.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for all (if there are any) keys between Prefix and the next occurrence of the string\n specified by a delimiter. CommonPrefixes lists keys that act like subdirectories in the directory\n specified by Prefix. For example, if the prefix is notes/ and the delimiter is a slash (/) as in\n notes/summer/july, the common prefix is notes/summer/.

" + } + }, + "com.amazonaws.s3#CommonPrefixList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#CommonPrefix" + } + }, + "com.amazonaws.s3#CompleteMultipartUpload": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#CompleteMultipartUploadRequest" + }, + "output": { + "target": "com.amazonaws.s3#CompleteMultipartUploadOutput" + }, + "traits": { + "smithy.api#documentation": "

Completes a multipart upload by assembling previously uploaded parts.

\n

You first initiate the multipart upload and then upload all parts using the UploadPart operation or the\n UploadPartCopy\n operation. After successfully uploading all relevant parts of an upload, you call this\n CompleteMultipartUpload operation to complete the upload. Upon receiving this request,\n Amazon S3 concatenates all the parts in ascending order by part number to create a new object. In the\n CompleteMultipartUpload request, you must provide the parts list and ensure that the parts list is\n complete. The CompleteMultipartUpload API operation concatenates the parts that you provide in the list.\n For each part in the list, you must provide the PartNumber value and the ETag\n value that are returned after that part was uploaded.

\n

The processing of a CompleteMultipartUpload request could take several minutes to finalize. After\n Amazon S3 begins processing the request, it sends an HTTP response header that specifies a 200\n OK response. While processing is in progress, Amazon S3 periodically sends white space characters to\n keep the connection from timing out. A request could fail after the initial 200 OK response\n has been sent. This means that a 200 OK response can contain either a success or an error.\n The error response might be embedded in the 200 OK response. If you call this API operation\n directly, make sure to design your application to parse the contents of the response and handle it\n appropriately. If you use Amazon Web Services SDKs, SDKs handle this condition. The SDKs detect the embedded error and\n apply error handling per your configuration settings (including automatically retrying the request as\n appropriate). If the condition persists, the SDKs throw an exception (or, for the SDKs that don't use\n exceptions, they return an error).

\n

Note that if CompleteMultipartUpload fails, applications should be prepared to retry\n any failed requests (including 500 error responses). For more information, see Amazon S3 Error Best\n Practices.

\n \n

You can't use Content-Type: application/x-www-form-urlencoded for the\n CompleteMultipartUpload requests. Also, if you don't provide a Content-Type header,\n CompleteMultipartUpload can still return a 200 OK response.

\n
\n

For more information about multipart uploads, see Uploading Objects Using Multipart Upload in\n the Amazon S3 User Guide.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - For information\n about permissions required to use the multipart upload API, see Multipart Upload and Permissions in\n the Amazon S3 User Guide.

    \n

    If you provide an additional checksum value in your MultipartUpload requests and the\n object is encrypted with Key Management Service, you must have permission to use the\n kms:Decrypt action for the CompleteMultipartUpload request to\n succeed.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n

    If the object is encrypted with SSE-KMS, you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions in IAM\n identity-based policies and KMS key policies for the KMS key.

    \n
  • \n
\n
\n
Special errors
\n
\n
    \n
  • \n

    Error Code: EntityTooSmall\n

    \n
      \n
    • \n

      Description: Your proposed upload is smaller than the minimum allowed object size.\n Each part must be at least 5 MB in size, except the last part.

      \n
    • \n
    • \n

      HTTP Status Code: 400 Bad Request

      \n
    • \n
    \n
  • \n
  • \n

    Error Code: InvalidPart\n

    \n
      \n
    • \n

      Description: One or more of the specified parts could not be found. The part might not\n have been uploaded, or the specified ETag might not have matched the uploaded part's\n ETag.

      \n
    • \n
    • \n

      HTTP Status Code: 400 Bad Request

      \n
    • \n
    \n
  • \n
  • \n

    Error Code: InvalidPartOrder\n

    \n
      \n
    • \n

      Description: The list of parts was not in ascending order. The parts list must be\n specified in order by part number.

      \n
    • \n
    • \n

      HTTP Status Code: 400 Bad Request

      \n
    • \n
    \n
  • \n
  • \n

    Error Code: NoSuchUpload\n

    \n
      \n
    • \n

      Description: The specified multipart upload does not exist. The upload ID might be\n invalid, or the multipart upload might have been aborted or completed.

      \n
    • \n
    • \n

      HTTP Status Code: 404 Not Found

      \n
    • \n
    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to CompleteMultipartUpload:

\n ", + "smithy.api#examples": [ + { + "title": "To complete multipart upload", + "documentation": "The following example completes a multipart upload.", + "input": { + "Bucket": "examplebucket", + "Key": "bigobject", + "MultipartUpload": { + "Parts": [ { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "PartNumber": 1, + "ETag": "\"d8c2eafd90c266e19ab9dcacc479f8af\"" }, { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "PartNumber": 2, + "ETag": "\"d8c2eafd90c266e19ab9dcacc479f8af\"" } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, + ] + }, + "UploadId": "7YPBOJuoFiQ9cz4P3Pe6FIZwO4f7wN93uHsNBEw97pl5eNwzExg0LAT2dUN91cOmrEQHDsP3WA60CEg--" + }, + "output": { + "ETag": "\"4d9031c7644d8081c2829f4ea23c55f7-2\"", + "Bucket": "acexamplebucket", + "Location": "https://examplebucket.s3..amazonaws.com/bigobject", + "Key": "bigobject" + } + } + ], + "smithy.api#http": { + "method": "POST", + "uri": "/{Bucket}/{Key+}", + "code": 200 + } + } + }, + "com.amazonaws.s3#CompleteMultipartUploadOutput": { + "type": "structure", + "members": { + "Location": { + "target": "com.amazonaws.s3#Location", + "traits": { + "smithy.api#documentation": "

The URI that identifies the newly created object.

" + } + }, + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket that contains the newly created object. Does not return the access point ARN or access point\n alias if used.

\n \n

Access points are not supported by directory buckets.

\n
" + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The object key of the newly created object.

" + } + }, + "Expiration": { + "target": "com.amazonaws.s3#Expiration", + "traits": { + "smithy.api#documentation": "

If the object expiration is configured, this will contain the expiration date\n (expiry-date) and rule ID (rule-id). The value of rule-id is\n URL-encoded.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-expiration" + } + }, + "ETag": { + "target": "com.amazonaws.s3#ETag", + "traits": { + "smithy.api#documentation": "

Entity tag that identifies the newly created object's data. Objects with different object data will\n have different entity tags. The entity tag is an opaque string. The entity tag may or may not be an MD5\n digest of the object data. If the entity tag is not an MD5 digest of the object data, it will contain\n one or more nonhexadecimal characters and/or will consist of less than 32 or more than 32 hexadecimal\n digits. For more information about how the entity tag is calculated, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + }, + "ChecksumCRC32": { + "target": "com.amazonaws.s3#ChecksumCRC32", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32 checksum of the object. This checksum is only be present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

" + } + }, + "ChecksumCRC32C": { + "target": "com.amazonaws.s3#ChecksumCRC32C", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32C checksum of the object. This checksum is only present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

" + } + }, + "ChecksumCRC64NVME": { + "target": "com.amazonaws.s3#ChecksumCRC64NVME", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data\n that was originally sent. This header specifies the Base64 encoded, 64-bit CRC64NVME\n checksum of the object. The CRC64NVME checksum is always a full object checksum. For more\n information, see Checking object integrity in the Amazon S3\n User Guide.

" + } + }, + "ChecksumSHA1": { + "target": "com.amazonaws.s3#ChecksumSHA1", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA1 digest of the object. This will only be present if the object was uploaded\n with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

" + } + }, + "ChecksumSHA256": { + "target": "com.amazonaws.s3#ChecksumSHA256", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA256 digest of the object. This will only be present if the object was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

" + } + }, + "ChecksumType": { + "target": "com.amazonaws.s3#ChecksumType", + "traits": { + "smithy.api#documentation": "

The checksum type, which determines how part-level checksums are combined to create an object-level\n checksum for multipart objects. You can use this header as a data integrity check to verify that the\n checksum type that is received is the same checksum type that was specified during the\n CreateMultipartUpload request. For more information, see Checking object integrity in the Amazon S3\n User Guide.

" + } + }, + "ServerSideEncryption": { + "target": "com.amazonaws.s3#ServerSideEncryption", + "traits": { + "smithy.api#documentation": "

The server-side encryption algorithm used when storing this object in Amazon S3.

\n \n

When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side\n encryption option is aws:fsx.

\n
\n

", + "smithy.api#httpHeader": "x-amz-server-side-encryption" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

Version ID of the newly created object, in case the bucket has versioning turned on.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-version-id" + } + }, + "SSEKMSKeyId": { + "target": "com.amazonaws.s3#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

If present, indicates the ID of the KMS key that was used for object encryption.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" + } + }, + "BucketKeyEnabled": { + "target": "com.amazonaws.s3#BucketKeyEnabled", + "traits": { + "smithy.api#documentation": "

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with\n Key Management Service (KMS) keys (SSE-KMS).

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "CompleteMultipartUploadResult" + } + }, + "com.amazonaws.s3#CompleteMultipartUploadRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

Name of the bucket to which the multipart upload was initiated.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Object key for which the multipart upload was initiated.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Key" + } + } + }, + "MultipartUpload": { + "target": "com.amazonaws.s3#CompletedMultipartUpload", + "traits": { + "smithy.api#documentation": "

The container for the multipart upload request information.

", + "smithy.api#httpPayload": {}, + "smithy.api#xmlName": "CompleteMultipartUpload" + } + }, + "UploadId": { + "target": "com.amazonaws.s3#MultipartUploadId", + "traits": { + "smithy.api#documentation": "

ID for the initiated multipart upload.

", + "smithy.api#httpQuery": "uploadId", + "smithy.api#required": {} + } + }, + "ChecksumCRC32": { + "target": "com.amazonaws.s3#ChecksumCRC32", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 32-bit CRC32 checksum of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc32" + } + }, + "ChecksumCRC32C": { + "target": "com.amazonaws.s3#ChecksumCRC32C", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 32-bit CRC32C checksum of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc32c" + } + }, + "ChecksumCRC64NVME": { + "target": "com.amazonaws.s3#ChecksumCRC64NVME", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data\n that was originally sent. This header specifies the Base64 encoded, 64-bit CRC64NVME\n checksum of the object. The CRC64NVME checksum is always a full object checksum. For more\n information, see Checking object integrity in the Amazon S3\n User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc64nvme" + } + }, + "ChecksumSHA1": { + "target": "com.amazonaws.s3#ChecksumSHA1", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 160-bit SHA1 digest of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-sha1" + } + }, + "ChecksumSHA256": { + "target": "com.amazonaws.s3#ChecksumSHA256", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 256-bit SHA256 digest of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-sha256" + } + }, + "ChecksumType": { + "target": "com.amazonaws.s3#ChecksumType", + "traits": { + "smithy.api#documentation": "

This header specifies the checksum type of the object, which determines how part-level checksums are\n combined to create an object-level checksum for multipart objects. You can use this header as a data\n integrity check to verify that the checksum type that is received is the same checksum that was\n specified. If the checksum type doesn’t match the checksum type that was specified for the object during\n the CreateMultipartUpload request, it’ll result in a BadDigest error. For more\n information, see Checking object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-type" + } + }, + "MpuObjectSize": { + "target": "com.amazonaws.s3#MpuObjectSize", + "traits": { + "smithy.api#documentation": "

The expected total object size of the multipart upload request. If there’s a mismatch between the\n specified object size value and the actual object size value, it results in an HTTP 400\n InvalidRequest error.

", + "smithy.api#httpHeader": "x-amz-mp-object-size" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "IfMatch": { + "target": "com.amazonaws.s3#IfMatch", + "traits": { + "smithy.api#documentation": "

Uploads the object only if the ETag (entity tag) value provided during the WRITE operation matches\n the ETag of the object in S3. If the ETag values do not match, the operation returns a 412\n Precondition Failed error.

\n

If a conflicting operation occurs during the upload S3 returns a 409\n ConditionalRequestConflict response. On a 409 failure you should fetch the object's ETag,\n re-initiate the multipart upload with CreateMultipartUpload, and re-upload each\n part.

\n

Expects the ETag value as a string.

\n

For more information about conditional requests, see RFC 7232, or Conditional requests in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "If-Match" + } + }, + "IfNoneMatch": { + "target": "com.amazonaws.s3#IfNoneMatch", + "traits": { + "smithy.api#documentation": "

Uploads the object only if the object key name does not already exist in the bucket specified.\n Otherwise, Amazon S3 returns a 412 Precondition Failed error.

\n

If a conflicting operation occurs during the upload S3 returns a 409\n ConditionalRequestConflict response. On a 409 failure you should re-initiate the multipart\n upload with CreateMultipartUpload and re-upload each part.

\n

Expects the '*' (asterisk) character.

\n

For more information about conditional requests, see RFC 7232, or Conditional requests in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "If-None-Match" + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is required\n only when the object was created using a checksum algorithm or if your bucket policy requires the use of\n SSE-C. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKey": { + "target": "com.amazonaws.s3#SSECustomerKey", + "traits": { + "smithy.api#documentation": "

The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. \n For more information, see\n Protecting data using SSE-C keys in the\n Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum \n algorithm. For more information,\n see Protecting data using SSE-C keys in the\n Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#CompletedMultipartUpload": { + "type": "structure", + "members": { + "Parts": { + "target": "com.amazonaws.s3#CompletedPartList", + "traits": { + "smithy.api#documentation": "

Array of CompletedPart data types.

\n

If you do not supply a valid Part with your request, the service sends back an HTTP 400\n response.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Part" + } + } + }, + "traits": { + "smithy.api#documentation": "

The container for the completed multipart upload details.

" + } + }, + "com.amazonaws.s3#CompletedPart": { + "type": "structure", + "members": { + "ETag": { + "target": "com.amazonaws.s3#ETag", + "traits": { + "smithy.api#documentation": "

Entity tag returned when the part was uploaded.

" + } + }, + "ChecksumCRC32": { + "target": "com.amazonaws.s3#ChecksumCRC32", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32 checksum of the part. This checksum is present if the\n multipart upload request was created with the CRC32 checksum algorithm. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + }, + "ChecksumCRC32C": { + "target": "com.amazonaws.s3#ChecksumCRC32C", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32C checksum of the part. This checksum is present if the\n multipart upload request was created with the CRC32C checksum algorithm. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + }, + "ChecksumCRC64NVME": { + "target": "com.amazonaws.s3#ChecksumCRC64NVME", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC64NVME checksum of the part. This checksum is present if\n the multipart upload request was created with the CRC64NVME checksum algorithm to the\n uploaded object). For more information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + }, + "ChecksumSHA1": { + "target": "com.amazonaws.s3#ChecksumSHA1", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA1 checksum of the part. This checksum is present if the\n multipart upload request was created with the SHA1 checksum algorithm. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + }, + "ChecksumSHA256": { + "target": "com.amazonaws.s3#ChecksumSHA256", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA256 checksum of the part. This checksum is present if\n the multipart upload request was created with the SHA256 checksum algorithm. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + }, + "PartNumber": { + "target": "com.amazonaws.s3#PartNumber", + "traits": { + "smithy.api#documentation": "

Part number that identifies the part. This is a positive integer between 1 and 10,000.

\n \n
    \n
  • \n

    \n General purpose buckets - In\n CompleteMultipartUpload, when a additional checksum (including\n x-amz-checksum-crc32, x-amz-checksum-crc32c,\n x-amz-checksum-sha1, or x-amz-checksum-sha256) is applied to each\n part, the PartNumber must start at 1 and the part numbers must be consecutive.\n Otherwise, Amazon S3 generates an HTTP 400 Bad Request status code and an\n InvalidPartOrder error code.

    \n
  • \n
  • \n

    \n Directory buckets - In\n CompleteMultipartUpload, the PartNumber must start at 1 and the part\n numbers must be consecutive.

    \n
  • \n
\n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

Details of the parts that were uploaded.

" + } + }, + "com.amazonaws.s3#CompletedPartList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#CompletedPart" + } + }, + "com.amazonaws.s3#CompressionType": { + "type": "enum", + "members": { + "NONE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NONE" + } + }, + "GZIP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GZIP" + } + }, + "BZIP2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BZIP2" + } + } + } + }, + "com.amazonaws.s3#Condition": { + "type": "structure", + "members": { + "HttpErrorCodeReturnedEquals": { + "target": "com.amazonaws.s3#HttpErrorCodeReturnedEquals", + "traits": { + "smithy.api#documentation": "

The HTTP error code when the redirect is applied. In the event of an error, if the error code equals\n this value, then the specified redirect is applied. Required when parent element Condition\n is specified and sibling KeyPrefixEquals is not specified. If both are specified, then both\n must be true for the redirect to be applied.

" + } + }, + "KeyPrefixEquals": { + "target": "com.amazonaws.s3#KeyPrefixEquals", + "traits": { + "smithy.api#documentation": "

The object key name prefix when the redirect is applied. For example, to redirect requests for\n ExamplePage.html, the key prefix will be ExamplePage.html. To redirect\n request for all pages with the prefix docs/, the key prefix will be /docs,\n which identifies all objects in the docs/ folder. Required when the parent element\n Condition is specified and sibling HttpErrorCodeReturnedEquals is not\n specified. If both conditions are specified, both must be true for the redirect to be applied.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for describing a condition that must be met for the specified redirect to apply. For\n example, 1. If request is for pages in the /docs folder, redirect to the\n /documents folder. 2. If request results in HTTP error 4xx, redirect request to another\n host where you might process the error.

" + } + }, + "com.amazonaws.s3#ConfirmRemoveSelfBucketAccess": { + "type": "boolean" + }, + "com.amazonaws.s3#ContentDisposition": { + "type": "string" + }, + "com.amazonaws.s3#ContentEncoding": { + "type": "string" + }, + "com.amazonaws.s3#ContentLanguage": { + "type": "string" + }, + "com.amazonaws.s3#ContentLength": { + "type": "long" + }, + "com.amazonaws.s3#ContentMD5": { + "type": "string" + }, + "com.amazonaws.s3#ContentRange": { + "type": "string" + }, + "com.amazonaws.s3#ContentType": { + "type": "string" + }, + "com.amazonaws.s3#ContinuationEvent": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

" + } + }, + "com.amazonaws.s3#CopyObject": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#CopyObjectRequest" + }, + "output": { + "target": "com.amazonaws.s3#CopyObjectOutput" + }, + "errors": [ + { + "target": "com.amazonaws.s3#ObjectNotInActiveTierError" + } + ], + "traits": { + "smithy.api#documentation": "\n

End of support notice: Beginning October 1, 2025, Amazon S3 will discontinue support for creating new Email Grantee Access Control Lists (ACL). \n Email Grantee ACLs created prior to this date will continue to work and remain accessible through the Amazon Web Services Management Console, Command Line Interface (CLI), SDKs, \n and REST API. However, you will no longer be able to create new Email Grantee ACLs.\n

\n

This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region, \n Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.

\n
\n

Creates a copy of an object that is already stored in Amazon S3.

\n \n

You can store individual objects of up to 5 TB in Amazon S3. You create a copy of your object up to 5\n GB in size in a single atomic action using this API. However, to copy an object greater than 5 GB, you\n must use the multipart upload Upload Part - Copy (UploadPartCopy) API. For more information, see\n Copy Object\n Using the REST Multipart Upload API.

\n
\n

You can copy individual objects between general purpose buckets, between directory buckets, and between\n general purpose buckets and directory buckets.

\n \n
    \n
  • \n

    Amazon S3 supports copy operations using Multi-Region Access Points only as a destination when\n using the Multi-Region Access Point ARN.

    \n
  • \n
  • \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

    \n
  • \n
  • \n

    VPC endpoints don't support cross-Region requests (including copies). If you're using VPC\n endpoints, your source and destination buckets should be in the same Amazon Web Services Region as your VPC\n endpoint.

    \n
  • \n
\n
\n

Both the Region that you want to copy the object from and the Region that you want to copy the\n object to must be enabled for your account. For more information about how to enable a Region for your\n account, see Enable\n or disable a Region for standalone accounts in the Amazon Web Services Account Management\n Guide.

\n \n

Amazon S3 transfer acceleration does not support cross-Region copies. If you request a cross-Region\n copy using a transfer acceleration endpoint, you get a 400 Bad Request error. For more\n information, see Transfer Acceleration.

\n
\n
\n
Authentication and authorization
\n
\n

All CopyObject requests must be authenticated and signed by using IAM\n credentials (access key ID and secret access key for the IAM identities). All headers with the\n x-amz- prefix, including x-amz-copy-source, must be signed. For more\n information, see REST Authentication.

\n

\n Directory buckets - You must use the IAM\n credentials to authenticate and authorize your access to the CopyObject API\n operation, instead of using the temporary security credentials through the\n CreateSession API operation.

\n

Amazon Web Services CLI or SDKs handles authentication and authorization on your behalf.

\n
\n
Permissions
\n
\n

You must have read access to the source object and\n write access to the destination bucket.

\n
    \n
  • \n

    \n General purpose bucket permissions - You must have\n permissions in an IAM policy based on the source and destination bucket types in a\n CopyObject operation.

    \n
      \n
    • \n

      If the source object is in a general purpose bucket, you must have \n s3:GetObject\n permission to read the source object that is\n being copied.

      \n
    • \n
    • \n

      If the destination bucket is a general purpose bucket, you must have \n s3:PutObject\n permission to write the object copy to the\n destination bucket.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions - You must have\n permissions in a bucket policy or an IAM identity-based policy based on the source and destination bucket types\n in a CopyObject operation.

    \n
      \n
    • \n

      If the source object that you want to copy is in a directory bucket, you must have\n the \n s3express:CreateSession\n permission in\n the Action element of a policy to read the object. By default, the session is\n in the ReadWrite mode. If you want to restrict the access, you can explicitly\n set the s3express:SessionMode condition key to ReadOnly on the\n copy source bucket.

      \n
    • \n
    • \n

      If the copy destination is a directory bucket, you must have the \n s3express:CreateSession\n permission in the\n Action element of a policy to write the object to the destination. The\n s3express:SessionMode condition key can't be set to ReadOnly\n on the copy destination bucket.

      \n
    • \n
    \n

    If the object is encrypted with SSE-KMS, you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions in IAM\n identity-based policies and KMS key policies for the KMS key.

    \n

    For example policies, see Example\n bucket policies for S3 Express One Zone and Amazon Web Services\n Identity and Access Management (IAM) identity-based policies for S3 Express One Zone in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n
Response and special errors
\n
\n

When the request is an HTTP 1.1 request, the response is chunk encoded. When the request is\n not an HTTP 1.1 request, the response would not contain the Content-Length. You\n always need to read the entire response body to check if the copy succeeds.

\n
    \n
  • \n

    If the copy is successful, you receive a response with information about the copied\n object.

    \n
  • \n
  • \n

    A copy request might return an error when Amazon S3 receives the copy request or while Amazon S3 is\n copying the files. A 200 OK response can contain either a success or an\n error.

    \n
      \n
    • \n

      If the error occurs before the copy action starts, you receive a standard Amazon S3\n error.

      \n
    • \n
    • \n

      If the error occurs during the copy operation, the error response is embedded in the\n 200 OK response. For example, in a cross-region copy, you may encounter\n throttling and receive a 200 OK response. For more information, see Resolve the Error\n 200 response when copying objects to Amazon S3. The 200 OK status code\n means the copy was accepted, but it doesn't mean the copy is complete. Another example is\n when you disconnect from Amazon S3 before the copy is complete, Amazon S3 might cancel the copy and\n you may receive a 200 OK response. You must stay connected to Amazon S3 until the\n entire response is successfully received and processed.

      \n

      If you call this API operation directly, make sure to design your application to parse\n the content of the response and handle it appropriately. If you use Amazon Web Services SDKs, SDKs\n handle this condition. The SDKs detect the embedded error and apply error handling per\n your configuration settings (including automatically retrying the request as appropriate).\n If the condition persists, the SDKs throw an exception (or, for the SDKs that don't use\n exceptions, they return an error).

      \n
    • \n
    \n
  • \n
\n
\n
Charge
\n
\n

The copy request charge is based on the storage class and Region that you specify for the\n destination object. The request can also result in a data retrieval charge for the source if the\n source storage class bills for data retrieval. If the copy source is in a different region, the\n data transfer is billed to the copy source account. For pricing information, see Amazon S3 pricing.

\n
\n
HTTP Host header syntax
\n
\n
    \n
  • \n

    \n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

    \n
  • \n
  • \n

    \n Amazon S3 on Outposts - When you use this action with\n S3 on Outposts through the REST API, you must direct requests to the S3 on Outposts hostname. The\n S3 on Outposts hostname takes the form\n \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com.\n The hostname isn't required when you use the Amazon Web Services CLI or SDKs.

    \n
  • \n
\n
\n
\n

The following operations are related to CopyObject:

\n ", + "smithy.api#examples": [ + { + "title": "To copy an object", + "documentation": "The following example copies an object from one bucket to another.", + "input": { + "Bucket": "destinationbucket", + "CopySource": "/sourcebucket/HappyFacejpg", + "Key": "HappyFaceCopyjpg" + }, + "output": { + "CopyObjectResult": { + "LastModified": "2016-12-15T17:38:53.000Z", + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"" + } + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}/{Key+}?x-id=CopyObject", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "DisableS3ExpressSessionAuth": { + "value": true + } + } + } + }, + "com.amazonaws.s3#CopyObjectOutput": { + "type": "structure", + "members": { + "CopyObjectResult": { + "target": "com.amazonaws.s3#CopyObjectResult", + "traits": { + "smithy.api#documentation": "

Container for all response elements.

", + "smithy.api#httpPayload": {} + } + }, + "Expiration": { + "target": "com.amazonaws.s3#Expiration", + "traits": { + "smithy.api#documentation": "

If the object expiration is configured, the response includes this header.

\n \n

Object expiration information is not returned in directory buckets and this header returns the\n value \"NotImplemented\" in all responses for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-expiration" + } + }, + "CopySourceVersionId": { + "target": "com.amazonaws.s3#CopySourceVersionId", + "traits": { + "smithy.api#documentation": "

Version ID of the source object that was copied.

\n \n

This functionality is not supported when the source object is in a directory bucket.

\n
", + "smithy.api#httpHeader": "x-amz-copy-source-version-id" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

Version ID of the newly created copy.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-version-id" + } + }, + "ServerSideEncryption": { + "target": "com.amazonaws.s3#ServerSideEncryption", + "traits": { + "smithy.api#documentation": "

The server-side encryption algorithm used when you store this object in Amazon S3 or Amazon FSx.

\n \n

When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side\n encryption option is aws:fsx.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption" + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the response will\n include this header to confirm the encryption algorithm that's used.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the response will\n include this header to provide the round-trip message integrity verification of the customer-provided\n encryption key.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } + }, + "SSEKMSKeyId": { + "target": "com.amazonaws.s3#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

If present, indicates the ID of the KMS key that was used for object encryption.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" + } + }, + "SSEKMSEncryptionContext": { + "target": "com.amazonaws.s3#SSEKMSEncryptionContext", + "traits": { + "smithy.api#documentation": "

If present, indicates the Amazon Web Services KMS Encryption Context to use for object encryption. The value of\n this header is a Base64 encoded UTF-8 string holding JSON with the encryption context key-value\n pairs.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-context" + } + }, + "BucketKeyEnabled": { + "target": "com.amazonaws.s3#BucketKeyEnabled", + "traits": { + "smithy.api#documentation": "

Indicates whether the copied object uses an S3 Bucket Key for server-side encryption with Key Management Service\n (KMS) keys (SSE-KMS).

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#CopyObjectRequest": { + "type": "structure", + "members": { + "ACL": { + "target": "com.amazonaws.s3#ObjectCannedACL", + "traits": { + "smithy.api#documentation": "

The canned access control list (ACL) to apply to the object.

\n

When you copy an object, the ACL metadata is not preserved and is set to private by\n default. Only the owner has full access control. To override the default ACL setting, specify a new ACL\n when you generate a copy request. For more information, see Using ACLs.

\n

If the destination bucket that you're copying objects to uses the bucket owner enforced setting for\n S3 Object Ownership, ACLs are disabled and no longer affect permissions. Buckets that use this setting\n only accept PUT requests that don't specify an ACL or PUT requests that\n specify bucket owner full control ACLs, such as the bucket-owner-full-control canned ACL or\n an equivalent form of this ACL expressed in the XML format. For more information, see Controlling ownership\n of objects and disabling ACLs in the Amazon S3 User Guide.

\n \n
    \n
  • \n

    If your destination bucket uses the bucket owner enforced setting for Object Ownership, all\n objects written to the bucket by any account will be owned by the bucket owner.

    \n
  • \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-acl" + } + }, + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the destination bucket.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n \n

Copying objects across different Amazon Web Services Regions isn't supported when the source or destination\n bucket is in Amazon Web Services Local Zones. The source and destination buckets must have the same parent Amazon Web Services Region.\n Otherwise, you get an HTTP 400 Bad Request error with the error code\n InvalidRequest.

\n
\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with S3 on Outposts,\n you must use the Outpost bucket access point ARN or the access point alias for the destination bucket.\n You can only copy objects within the same Outpost bucket. It's not supported to copy objects across\n different Amazon Web Services Outposts, between buckets on the same Outposts, or between Outposts buckets and any\n other bucket types. For more information about S3 on Outposts, see What is S3 on Outposts? in the\n S3 on Outposts guide. When you use this action with S3 on Outposts through the REST\n API, you must direct requests to the S3 on Outposts hostname, in the format\n \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com.\n The hostname isn't required when you use the Amazon Web Services CLI or SDKs.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "CacheControl": { + "target": "com.amazonaws.s3#CacheControl", + "traits": { + "smithy.api#documentation": "

Specifies the caching behavior along the request/reply chain.

", + "smithy.api#httpHeader": "Cache-Control" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm that you want Amazon S3 to use to create the checksum for the object. For more information, see\n Checking object integrity in\n the Amazon S3 User Guide.

\n

When you copy an object, if the source object has a checksum, that checksum value will be copied to\n the new object by default. If the CopyObject request does not include this\n x-amz-checksum-algorithm header, the checksum algorithm will be copied from the source\n object to the destination object (if it's present on the source object). You can optionally specify a\n different checksum algorithm to use with the x-amz-checksum-algorithm header. Unrecognized\n or unsupported values will respond with the HTTP status code 400 Bad Request.

\n \n

For directory buckets, when you use Amazon Web Services SDKs, CRC32 is the default checksum algorithm that's used for performance.

\n
", + "smithy.api#httpHeader": "x-amz-checksum-algorithm" + } + }, + "ContentDisposition": { + "target": "com.amazonaws.s3#ContentDisposition", + "traits": { + "smithy.api#documentation": "

Specifies presentational information for the object. Indicates whether an object should be displayed\n in a web browser or downloaded as a file. It allows specifying the desired filename for the downloaded\n file.

", + "smithy.api#httpHeader": "Content-Disposition" + } + }, + "ContentEncoding": { + "target": "com.amazonaws.s3#ContentEncoding", + "traits": { + "smithy.api#documentation": "

Specifies what content encodings have been applied to the object and thus what decoding mechanisms\n must be applied to obtain the media-type referenced by the Content-Type header field.

\n \n

For directory buckets, only the aws-chunked value is supported in this header field.

\n
", + "smithy.api#httpHeader": "Content-Encoding" + } + }, + "ContentLanguage": { + "target": "com.amazonaws.s3#ContentLanguage", + "traits": { + "smithy.api#documentation": "

The language the content is in.

", + "smithy.api#httpHeader": "Content-Language" + } + }, + "ContentType": { + "target": "com.amazonaws.s3#ContentType", + "traits": { + "smithy.api#documentation": "

A standard MIME type that describes the format of the object data.

", + "smithy.api#httpHeader": "Content-Type" + } + }, + "CopySource": { + "target": "com.amazonaws.s3#CopySource", + "traits": { + "smithy.api#documentation": "

Specifies the source object for the copy operation. The source object can be up to 5 GB. If the\n source object is an object that was uploaded by using a multipart upload, the object copy will be a\n single part object after the source object is copied to the destination bucket.

\n

You specify the value of the copy source in one of two formats, depending on whether you want to\n access the source object through an access point:

\n
    \n
  • \n

    For objects not accessed through an access point, specify the name of the source bucket and the key of\n the source object, separated by a slash (/). For example, to copy the object\n reports/january.pdf from the general purpose bucket awsexamplebucket, use\n awsexamplebucket/reports/january.pdf. The value must be URL-encoded. To copy the\n object reports/january.pdf from the directory bucket\n awsexamplebucket--use1-az5--x-s3, use\n awsexamplebucket--use1-az5--x-s3/reports/january.pdf. The value must be\n URL-encoded.

    \n
  • \n
  • \n

    For objects accessed through access points, specify the Amazon Resource Name (ARN) of the object as accessed through the access point, in the format arn:aws:s3:::accesspoint//object/. For example, to copy the object reports/january.pdf through access point my-access-point owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf. The value must be URL encoded.

    \n \n
      \n
    • \n

      Amazon S3 supports copy operations using Access points only when the source and destination buckets are in the same Amazon Web Services Region.

      \n
    • \n
    • \n

      Access points are not supported by directory buckets.

      \n
    • \n
    \n
    \n

    Alternatively, for objects accessed through Amazon S3 on Outposts, specify the ARN of the object as accessed in the format arn:aws:s3-outposts:::outpost//object/. For example, to copy the object reports/january.pdf through outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf. The value must be URL-encoded.

    \n
  • \n
\n

If your source bucket versioning is enabled, the x-amz-copy-source header by default\n identifies the current version of an object to copy. If the current version is a delete marker, Amazon S3\n behaves as if the object was deleted. To copy a different version, use the versionId query\n parameter. Specifically, append ?versionId= to the value (for example,\n awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893). If\n you don't specify a version ID, Amazon S3 copies the latest version of the source object.

\n

If you enable versioning on the destination bucket, Amazon S3 generates a unique version ID for the\n copied object. This version ID is different from the version ID of the source object. Amazon S3 returns the\n version ID of the copied object in the x-amz-version-id response header in the\n response.

\n

If you do not enable versioning or suspend it on the destination bucket, the version ID that Amazon S3\n generates in the x-amz-version-id response header is always null.

\n \n

\n Directory buckets - S3 Versioning isn't enabled and supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-copy-source", + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "CopySource" + } + } + }, + "CopySourceIfMatch": { + "target": "com.amazonaws.s3#CopySourceIfMatch", + "traits": { + "smithy.api#documentation": "

Copies the object if its entity tag (ETag) matches the specified tag.

\n

If both the x-amz-copy-source-if-match and\n x-amz-copy-source-if-unmodified-since headers are present in the request and evaluate as\n follows, Amazon S3 returns 200 OK and copies the data:

\n
    \n
  • \n

    \n x-amz-copy-source-if-match condition evaluates to true

    \n
  • \n
  • \n

    \n x-amz-copy-source-if-unmodified-since condition evaluates to false

    \n
  • \n
", + "smithy.api#httpHeader": "x-amz-copy-source-if-match" + } + }, + "CopySourceIfModifiedSince": { + "target": "com.amazonaws.s3#CopySourceIfModifiedSince", + "traits": { + "smithy.api#documentation": "

Copies the object if it has been modified since the specified time.

\n

If both the x-amz-copy-source-if-none-match and\n x-amz-copy-source-if-modified-since headers are present in the request and evaluate as\n follows, Amazon S3 returns the 412 Precondition Failed response code:

\n
    \n
  • \n

    \n x-amz-copy-source-if-none-match condition evaluates to false

    \n
  • \n
  • \n

    \n x-amz-copy-source-if-modified-since condition evaluates to true

    \n
  • \n
", + "smithy.api#httpHeader": "x-amz-copy-source-if-modified-since" + } + }, + "CopySourceIfNoneMatch": { + "target": "com.amazonaws.s3#CopySourceIfNoneMatch", + "traits": { + "smithy.api#documentation": "

Copies the object if its entity tag (ETag) is different than the specified ETag.

\n

If both the x-amz-copy-source-if-none-match and\n x-amz-copy-source-if-modified-since headers are present in the request and evaluate as\n follows, Amazon S3 returns the 412 Precondition Failed response code:

\n
    \n
  • \n

    \n x-amz-copy-source-if-none-match condition evaluates to false

    \n
  • \n
  • \n

    \n x-amz-copy-source-if-modified-since condition evaluates to true

    \n
  • \n
", + "smithy.api#httpHeader": "x-amz-copy-source-if-none-match" + } + }, + "CopySourceIfUnmodifiedSince": { + "target": "com.amazonaws.s3#CopySourceIfUnmodifiedSince", + "traits": { + "smithy.api#documentation": "

Copies the object if it hasn't been modified since the specified time.

\n

If both the x-amz-copy-source-if-match and\n x-amz-copy-source-if-unmodified-since headers are present in the request and evaluate as\n follows, Amazon S3 returns 200 OK and copies the data:

\n
    \n
  • \n

    \n x-amz-copy-source-if-match condition evaluates to true

    \n
  • \n
  • \n

    \n x-amz-copy-source-if-unmodified-since condition evaluates to false

    \n
  • \n
", + "smithy.api#httpHeader": "x-amz-copy-source-if-unmodified-since" + } + }, + "Expires": { + "target": "com.amazonaws.s3#Expires", + "traits": { + "smithy.api#documentation": "

The date and time at which the object is no longer cacheable.

", + "smithy.api#httpHeader": "Expires" + } + }, + "GrantFullControl": { + "target": "com.amazonaws.s3#GrantFullControl", + "traits": { + "smithy.api#documentation": "

Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-grant-full-control" + } + }, + "GrantRead": { + "target": "com.amazonaws.s3#GrantRead", + "traits": { + "smithy.api#documentation": "

Allows grantee to read the object data and its metadata.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-grant-read" + } + }, + "GrantReadACP": { + "target": "com.amazonaws.s3#GrantReadACP", + "traits": { + "smithy.api#documentation": "

Allows grantee to read the object ACL.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-grant-read-acp" + } + }, + "GrantWriteACP": { + "target": "com.amazonaws.s3#GrantWriteACP", + "traits": { + "smithy.api#documentation": "

Allows grantee to write the ACL for the applicable object.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-grant-write-acp" + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The key of the destination object.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Key" + } + } + }, + "Metadata": { + "target": "com.amazonaws.s3#Metadata", + "traits": { + "smithy.api#documentation": "

A map of metadata to store with the object in S3.

", + "smithy.api#httpPrefixHeaders": "x-amz-meta-" + } + }, + "MetadataDirective": { + "target": "com.amazonaws.s3#MetadataDirective", + "traits": { + "smithy.api#documentation": "

Specifies whether the metadata is copied from the source object or replaced with metadata that's\n provided in the request. When copying an object, you can preserve all metadata (the default) or specify\n new metadata. If this header isn’t specified, COPY is the default behavior.

\n

\n General purpose bucket - For general purpose buckets, when you grant\n permissions, you can use the s3:x-amz-metadata-directive condition key to enforce certain\n metadata behavior when objects are uploaded. For more information, see Amazon S3 condition key examples in the\n Amazon S3 User Guide.

\n \n

\n x-amz-website-redirect-location is unique to each object and is not copied when using\n the x-amz-metadata-directive header. To copy the value, you must specify\n x-amz-website-redirect-location in the request header.

\n
", + "smithy.api#httpHeader": "x-amz-metadata-directive" + } + }, + "TaggingDirective": { + "target": "com.amazonaws.s3#TaggingDirective", + "traits": { + "smithy.api#documentation": "

Specifies whether the object tag-set is copied from the source object or replaced with the tag-set\n that's provided in the request.

\n

The default value is COPY.

\n \n

\n Directory buckets - For directory buckets in a CopyObject operation, only the empty tag-set is supported. Any requests that attempt to write non-empty tags into directory buckets will receive a 501 Not Implemented status code. \nWhen the destination bucket is a directory bucket, you will receive a 501 Not Implemented response in any of the following situations:

\n
    \n
  • \n

    When you attempt to COPY the tag-set from an S3 source object that has non-empty tags.

    \n
  • \n
  • \n

    When you attempt to REPLACE the tag-set of a source object and set a non-empty value to x-amz-tagging.

    \n
  • \n
  • \n

    When you don't set the x-amz-tagging-directive header and the source object has non-empty tags. This is because the default value of x-amz-tagging-directive is COPY.

    \n
  • \n
\n

Because only the empty tag-set is supported for directory buckets in a CopyObject operation, the following situations are allowed:

\n
    \n
  • \n

    When you attempt to COPY the tag-set from a directory bucket source object that has no tags to a general purpose bucket. It copies an empty tag-set to the destination object.

    \n
  • \n
  • \n

    When you attempt to REPLACE the tag-set of a directory bucket source object and set the x-amz-tagging value of the directory bucket destination object to empty.

    \n
  • \n
  • \n

    When you attempt to REPLACE the tag-set of a general purpose bucket source object that has non-empty tags and set the x-amz-tagging value of the directory bucket destination object to empty.

    \n
  • \n
  • \n

    When you attempt to REPLACE the tag-set of a directory bucket source object and don't set the x-amz-tagging value of the directory bucket destination object. This is because the default value of x-amz-tagging is the empty value.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-tagging-directive" + } + }, + "ServerSideEncryption": { + "target": "com.amazonaws.s3#ServerSideEncryption", + "traits": { + "smithy.api#documentation": "

The server-side encryption algorithm used when storing this object in Amazon S3. Unrecognized or\n unsupported values won’t write a destination object and will receive a 400 Bad Request\n response.

\n

Amazon S3 automatically encrypts all new objects that are copied to an S3 bucket. When copying an object,\n if you don't specify encryption information in your copy request, the encryption setting of the target\n object is set to the default encryption configuration of the destination bucket. By default, all buckets\n have a base level of encryption configuration that uses server-side encryption with Amazon S3 managed keys\n (SSE-S3). If the destination bucket has a different default encryption configuration, Amazon S3 uses the\n corresponding encryption key to encrypt the target object copy.

\n

With server-side encryption, Amazon S3 encrypts your data as it writes your data to disks in its data\n centers and decrypts the data when you access it. For more information about server-side encryption, see\n Using Server-Side\n Encryption in the Amazon S3 User Guide.

\n

\n General purpose buckets \n

\n
    \n
  • \n

    For general purpose buckets, there are the following supported options for server-side encryption:\n server-side encryption with Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side encryption with\n Amazon Web Services KMS keys (DSSE-KMS), and server-side encryption with customer-provided encryption keys\n (SSE-C). Amazon S3 uses the corresponding KMS key, or a customer-provided key to encrypt the target\n object copy.

    \n
  • \n
  • \n

    When you perform a CopyObject operation, if you want to use a different type of\n encryption setting for the target object, you can specify appropriate encryption-related headers to\n encrypt the target object with an Amazon S3 managed key, a KMS key, or a customer-provided key. If the\n encryption setting in your request is different from the default encryption configuration of the\n destination bucket, the encryption setting in your request takes precedence.

    \n
  • \n
\n

\n Directory buckets \n

\n
    \n
  • \n

    For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your \n CreateSession requests or PUT object requests. Then, new objects \n are automatically encrypted with the desired encryption settings. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide. For more information about the encryption overriding behaviors in directory buckets, see Specifying server-side encryption with KMS for new object uploads.

    \n
  • \n
  • \n

    To encrypt new object copies to a directory bucket with SSE-KMS, we recommend you specify\n SSE-KMS as the directory bucket's default encryption configuration with a KMS key\n (specifically, a customer managed key). The Amazon Web Services managed key (aws/s3) isn't supported. Your SSE-KMS configuration can\n only support 1 customer managed key per\n directory bucket for the lifetime of the bucket. After you specify a customer managed key for SSE-KMS, you\n can't override the customer managed key for the bucket's SSE-KMS configuration. Then, when you\n perform a CopyObject operation and want to specify server-side encryption settings for\n new object copies with SSE-KMS in the encryption-related request headers, you must ensure the\n encryption key is the same customer managed key that you specified for the directory bucket's default\n encryption configuration.\n

    \n
  • \n
  • \n

    \n S3 access points for Amazon FSx - When accessing data stored in\n Amazon FSx file systems using S3 access points, the only valid server side encryption option is\n aws:fsx. All Amazon FSx file systems have encryption configured by default and are\n encrypted at rest. Data is automatically encrypted before being written to the file system, and\n automatically decrypted as it is read. These processes are handled transparently by Amazon FSx.

    \n
  • \n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3#StorageClass", + "traits": { + "smithy.api#documentation": "

If the x-amz-storage-class header is not used, the copied object will be stored in the\n STANDARD Storage Class by default. The STANDARD storage class provides high\n durability and high availability. Depending on performance needs, you can specify a different Storage\n Class.

\n \n
    \n
  • \n

    \n Directory buckets -\n Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones. \nUnsupported storage class values won't write a destination object and will respond with the HTTP status code 400 Bad Request.

    \n
  • \n
  • \n

    \n Amazon S3 on Outposts - S3 on Outposts only uses the\n OUTPOSTS Storage Class.

    \n
  • \n
\n
\n

You can use the CopyObject action to change the storage class of an object that is\n already stored in Amazon S3 by using the x-amz-storage-class header. For more information, see\n Storage Classes\n in the Amazon S3 User Guide.

\n

Before using an object as a source object for the copy operation, you must restore a copy of it if\n it meets any of the following conditions:

\n
    \n
  • \n

    The storage class of the source object is GLACIER or\n DEEP_ARCHIVE.

    \n
  • \n
  • \n

    The storage class of the source object is INTELLIGENT_TIERING and it's S3\n Intelligent-Tiering access tier is Archive Access or Deep Archive\n Access.

    \n
  • \n
\n

For more information, see RestoreObject and Copying Objects in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-storage-class" + } + }, + "WebsiteRedirectLocation": { + "target": "com.amazonaws.s3#WebsiteRedirectLocation", + "traits": { + "smithy.api#documentation": "

If the destination bucket is configured as a website, redirects requests for this object copy to\n another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the\n object metadata. This value is unique to each object and is not copied when using the\n x-amz-metadata-directive header. Instead, you may opt to provide this header in\n combination with the x-amz-metadata-directive header.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-website-redirect-location" + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

\n

When you perform a CopyObject operation, if you want to use a different type of\n encryption setting for the target object, you can specify appropriate encryption-related headers to\n encrypt the target object with an Amazon S3 managed key, a KMS key, or a customer-provided key. If the\n encryption setting in your request is different from the default encryption configuration of the\n destination bucket, the encryption setting in your request takes precedence.

\n \n

This functionality is not supported when the destination bucket is a directory bucket.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKey": { + "target": "com.amazonaws.s3#SSECustomerKey", + "traits": { + "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is\n used to store the object and then it is discarded. Amazon S3 does not store the encryption key. The key must\n be appropriate for use with the algorithm specified in the\n x-amz-server-side-encryption-customer-algorithm header.

\n \n

This functionality is not supported when the destination bucket is a directory bucket.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header\n for a message integrity check to ensure that the encryption key was transmitted without error.

\n \n

This functionality is not supported when the destination bucket is a directory bucket.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } + }, + "SSEKMSKeyId": { + "target": "com.amazonaws.s3#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

Specifies the KMS key ID (Key ID, Key ARN, or Key Alias) to use for object encryption. All GET and\n PUT requests for an object protected by KMS will fail if they're not made via SSL or using SigV4. For\n information about configuring any of the officially supported Amazon Web Services SDKs and Amazon Web Services CLI, see Specifying\n the Signature Version in Request Authentication in the\n Amazon S3 User Guide.

\n

\n Directory buckets -\n To encrypt data using SSE-KMS, it's recommended to specify the \nx-amz-server-side-encryption header to aws:kms. Then, the x-amz-server-side-encryption-aws-kms-key-id header implicitly uses \nthe bucket's default KMS customer managed key ID. If you want to explicitly set the \n x-amz-server-side-encryption-aws-kms-key-id header, it must match the bucket's default customer managed key (using key ID or ARN, not alias). Your SSE-KMS configuration can only support 1 customer managed key per directory bucket's lifetime. \nThe Amazon Web Services managed key (aws/s3) isn't supported. \n \n Incorrect key specification results in an HTTP 400 Bad Request error.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" + } + }, + "SSEKMSEncryptionContext": { + "target": "com.amazonaws.s3#SSEKMSEncryptionContext", + "traits": { + "smithy.api#documentation": "

Specifies the Amazon Web Services KMS Encryption Context as an additional encryption context to use for the\n destination object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON\n with the encryption context key-value pairs.

\n

\n General purpose buckets - This value must be explicitly added to\n specify encryption context for CopyObject requests if you want an additional encryption\n context for your destination object. The additional encryption context of the source object won't be\n copied to the destination object. For more information, see Encryption context\n in the Amazon S3 User Guide.

\n

\n Directory buckets - You can optionally provide an explicit encryption context value. The value must match the default encryption context - the bucket Amazon Resource Name (ARN). An additional encryption context value is not supported.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-context" + } + }, + "BucketKeyEnabled": { + "target": "com.amazonaws.s3#BucketKeyEnabled", + "traits": { + "smithy.api#documentation": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption\n using Key Management Service (KMS) keys (SSE-KMS). If a target object uses SSE-KMS, you can enable an S3 Bucket Key\n for the object.

\n

Setting this header to true causes Amazon S3 to use an S3 Bucket Key for object encryption\n with SSE-KMS. Specifying this header with a COPY action doesn’t affect bucket-level settings for S3\n Bucket Key.

\n

For more information, see Amazon S3\n Bucket Keys in the Amazon S3 User Guide.

\n \n

\n Directory buckets -\n S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets \nto directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through CopyObject. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" + } + }, + "CopySourceSSECustomerAlgorithm": { + "target": "com.amazonaws.s3#CopySourceSSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

Specifies the algorithm to use when decrypting the source object (for example,\n AES256).

\n

If the source object for the copy is stored in Amazon S3 using SSE-C, you must provide the necessary\n encryption information in your request so that Amazon S3 can decrypt the object for copying.

\n \n

This functionality is not supported when the source object is in a directory bucket.

\n
", + "smithy.api#httpHeader": "x-amz-copy-source-server-side-encryption-customer-algorithm" + } + }, + "CopySourceSSECustomerKey": { + "target": "com.amazonaws.s3#CopySourceSSECustomerKey", + "traits": { + "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use to decrypt the source object. The\n encryption key provided in this header must be the same one that was used when the source object was\n created.

\n

If the source object for the copy is stored in Amazon S3 using SSE-C, you must provide the necessary\n encryption information in your request so that Amazon S3 can decrypt the object for copying.

\n \n

This functionality is not supported when the source object is in a directory bucket.

\n
", + "smithy.api#httpHeader": "x-amz-copy-source-server-side-encryption-customer-key" + } + }, + "CopySourceSSECustomerKeyMD5": { + "target": "com.amazonaws.s3#CopySourceSSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header\n for a message integrity check to ensure that the encryption key was transmitted without error.

\n

If the source object for the copy is stored in Amazon S3 using SSE-C, you must provide the necessary\n encryption information in your request so that Amazon S3 can decrypt the object for copying.

\n \n

This functionality is not supported when the source object is in a directory bucket.

\n
", + "smithy.api#httpHeader": "x-amz-copy-source-server-side-encryption-customer-key-MD5" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "Tagging": { + "target": "com.amazonaws.s3#TaggingHeader", + "traits": { + "smithy.api#documentation": "

The tag-set for the object copy in the destination bucket. This value must be used in conjunction\n with the x-amz-tagging-directive if you choose REPLACE for the\n x-amz-tagging-directive. If you choose COPY for the\n x-amz-tagging-directive, you don't need to set the x-amz-tagging header,\n because the tag-set will be copied from the source object directly. The tag-set must be encoded as URL\n Query parameters.

\n

The default value is the empty value.

\n \n

\n Directory buckets - For directory buckets in a CopyObject operation, only the empty tag-set is supported. Any requests that attempt to write non-empty tags into directory buckets will receive a 501 Not Implemented status code. \nWhen the destination bucket is a directory bucket, you will receive a 501 Not Implemented response in any of the following situations:

\n
    \n
  • \n

    When you attempt to COPY the tag-set from an S3 source object that has non-empty tags.

    \n
  • \n
  • \n

    When you attempt to REPLACE the tag-set of a source object and set a non-empty value to x-amz-tagging.

    \n
  • \n
  • \n

    When you don't set the x-amz-tagging-directive header and the source object has non-empty tags. This is because the default value of x-amz-tagging-directive is COPY.

    \n
  • \n
\n

Because only the empty tag-set is supported for directory buckets in a CopyObject operation, the following situations are allowed:

\n
    \n
  • \n

    When you attempt to COPY the tag-set from a directory bucket source object that has no tags to a general purpose bucket. It copies an empty tag-set to the destination object.

    \n
  • \n
  • \n

    When you attempt to REPLACE the tag-set of a directory bucket source object and set the x-amz-tagging value of the directory bucket destination object to empty.

    \n
  • \n
  • \n

    When you attempt to REPLACE the tag-set of a general purpose bucket source object that has non-empty tags and set the x-amz-tagging value of the directory bucket destination object to empty.

    \n
  • \n
  • \n

    When you attempt to REPLACE the tag-set of a directory bucket source object and don't set the x-amz-tagging value of the directory bucket destination object. This is because the default value of x-amz-tagging is the empty value.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-tagging" + } + }, + "ObjectLockMode": { + "target": "com.amazonaws.s3#ObjectLockMode", + "traits": { + "smithy.api#documentation": "

The Object Lock mode that you want to apply to the object copy.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-object-lock-mode" + } + }, + "ObjectLockRetainUntilDate": { + "target": "com.amazonaws.s3#ObjectLockRetainUntilDate", + "traits": { + "smithy.api#documentation": "

The date and time when you want the Object Lock of the object copy to expire.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-object-lock-retain-until-date" + } + }, + "ObjectLockLegalHoldStatus": { + "target": "com.amazonaws.s3#ObjectLockLegalHoldStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether you want to apply a legal hold to the object copy.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-object-lock-legal-hold" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected destination bucket owner. If the account ID that you provide does not match the actual owner of the destination bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "ExpectedSourceBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected source bucket owner. If the account ID that you provide does not match the actual owner of the source bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-source-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#CopyObjectResult": { + "type": "structure", + "members": { + "ETag": { + "target": "com.amazonaws.s3#ETag", + "traits": { + "smithy.api#documentation": "

Returns the ETag of the new object. The ETag reflects only changes to the contents of an object, not\n its metadata.

" + } + }, + "LastModified": { + "target": "com.amazonaws.s3#LastModified", + "traits": { + "smithy.api#documentation": "

Creation date of the object.

" + } + }, + "ChecksumType": { + "target": "com.amazonaws.s3#ChecksumType", + "traits": { + "smithy.api#documentation": "

The checksum type that is used to calculate the object’s checksum value. For more information, see\n Checking\n object integrity in the Amazon S3 User Guide.

" + } + }, + "ChecksumCRC32": { + "target": "com.amazonaws.s3#ChecksumCRC32", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32 checksum of the object. This checksum is only present if the object was uploaded\n with the object. For more information, see \n Checking object integrity in the Amazon S3 User Guide.

" + } + }, + "ChecksumCRC32C": { + "target": "com.amazonaws.s3#ChecksumCRC32C", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32C checksum of the object. This will only be present if the object was uploaded\n with the object. For more information, see \n Checking object integrity in the Amazon S3 User Guide.

" + } + }, + "ChecksumCRC64NVME": { + "target": "com.amazonaws.s3#ChecksumCRC64NVME", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC64NVME checksum of the object. This checksum is present\n if the object being copied was uploaded with the CRC64NVME checksum algorithm, or if the\n object was uploaded without a checksum (and Amazon S3 added the default checksum, CRC64NVME, to\n the uploaded object). For more information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + }, + "ChecksumSHA1": { + "target": "com.amazonaws.s3#ChecksumSHA1", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA1 digest of the object. This will only be present if the object was uploaded\n with the object. For more information, see \n Checking object integrity in the Amazon S3 User Guide.

" + } + }, + "ChecksumSHA256": { + "target": "com.amazonaws.s3#ChecksumSHA256", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA256 digest of the object. This will only be present if the object was uploaded\n with the object. For more information, see \n Checking object integrity in the Amazon S3 User Guide.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for all response elements.

" + } + }, + "com.amazonaws.s3#CopyPartResult": { + "type": "structure", + "members": { + "ETag": { + "target": "com.amazonaws.s3#ETag", + "traits": { + "smithy.api#documentation": "

Entity tag of the object.

" + } + }, + "LastModified": { + "target": "com.amazonaws.s3#LastModified", + "traits": { + "smithy.api#documentation": "

Date and time at which the object was uploaded.

" + } + }, + "ChecksumCRC32": { + "target": "com.amazonaws.s3#ChecksumCRC32", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data\n that was originally sent. This header specifies the Base64 encoded, 32-bit CRC32 checksum\n of the part. For more information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + }, + "ChecksumCRC32C": { + "target": "com.amazonaws.s3#ChecksumCRC32C", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data\n that was originally sent. This header specifies the Base64 encoded, 32-bit CRC32C checksum\n of the part. For more information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + }, + "ChecksumCRC64NVME": { + "target": "com.amazonaws.s3#ChecksumCRC64NVME", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC64NVME checksum of the part. This checksum is present if\n the multipart upload request was created with the CRC64NVME checksum algorithm to the\n uploaded object). For more information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + }, + "ChecksumSHA1": { + "target": "com.amazonaws.s3#ChecksumSHA1", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data\n that was originally sent. This header specifies the Base64 encoded, 160-bit SHA1 checksum\n of the part. For more information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + }, + "ChecksumSHA256": { + "target": "com.amazonaws.s3#ChecksumSHA256", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data\n that was originally sent. This header specifies the Base64 encoded, 256-bit SHA256 checksum\n of the part. For more information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for all response elements.

" + } + }, + "com.amazonaws.s3#CopySource": { + "type": "string", + "traits": { + "smithy.api#pattern": "^\\/?.+\\/.+$" + } + }, + "com.amazonaws.s3#CopySourceIfMatch": { + "type": "string" + }, + "com.amazonaws.s3#CopySourceIfModifiedSince": { + "type": "timestamp" + }, + "com.amazonaws.s3#CopySourceIfNoneMatch": { + "type": "string" + }, + "com.amazonaws.s3#CopySourceIfUnmodifiedSince": { + "type": "timestamp" + }, + "com.amazonaws.s3#CopySourceRange": { + "type": "string" + }, + "com.amazonaws.s3#CopySourceSSECustomerAlgorithm": { + "type": "string" + }, + "com.amazonaws.s3#CopySourceSSECustomerKey": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.s3#CopySourceSSECustomerKeyMD5": { + "type": "string" + }, + "com.amazonaws.s3#CopySourceVersionId": { + "type": "string" + }, + "com.amazonaws.s3#CreateBucket": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#CreateBucketRequest" + }, + "output": { + "target": "com.amazonaws.s3#CreateBucketOutput" + }, + "errors": [ + { + "target": "com.amazonaws.s3#BucketAlreadyExists" + }, + { + "target": "com.amazonaws.s3#BucketAlreadyOwnedByYou" + } + ], + "traits": { + "smithy.api#documentation": "\n

End of support notice: Beginning October 1, 2025, Amazon S3 will discontinue support for creating new Email Grantee Access Control Lists (ACL). \n Email Grantee ACLs created prior to this date will continue to work and remain accessible through the Amazon Web Services Management Console, Command Line Interface (CLI), SDKs, \n and REST API. However, you will no longer be able to create new Email Grantee ACLs.\n

\n

This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region, \n Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.

\n
\n \n

End of support notice: Beginning October 1, 2025, Amazon S3 will stop returning DisplayName. Update your applications to use canonical IDs (unique identifier for \n Amazon Web Services accounts), Amazon Web Services account ID (12 digit identifier) or IAM ARNs (full resource naming) as a direct replacement of DisplayName.\n

\n

This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region, \n Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.

\n
\n \n

This action creates an Amazon S3 bucket. To create an Amazon S3 on Outposts bucket, see \n CreateBucket\n .

\n
\n

Creates a new S3 bucket. To create a bucket, you must set up Amazon S3 and have a valid Amazon Web Services Access Key\n ID to authenticate requests. Anonymous requests are never allowed to create buckets. By creating the\n bucket, you become the bucket owner.

\n

There are two types of buckets: general purpose buckets and directory buckets. For more information about\n these bucket types, see Creating, configuring, and working with Amazon S3\n buckets in the Amazon S3 User Guide.

\n \n
    \n
  • \n

    \n General purpose buckets - If you send your\n CreateBucket request to the s3.amazonaws.com global endpoint, the\n request goes to the us-east-1 Region. So the signature calculations in Signature\n Version 4 must use us-east-1 as the Region, even if the location constraint in the\n request specifies another Region where the bucket is to be created. If you create a bucket in a\n Region other than US East (N. Virginia), your application must be able to handle 307 redirect. For\n more information, see Virtual hosting of buckets in the Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - In addition to the\n s3:CreateBucket permission, the following permissions are required in a policy\n when your CreateBucket request includes specific headers:

    \n
      \n
    • \n

      \n Access control lists (ACLs) - In your\n CreateBucket request, if you specify an access control list (ACL) and set\n it to public-read, public-read-write,\n authenticated-read, or if you explicitly specify any other custom ACLs,\n both s3:CreateBucket and s3:PutBucketAcl permissions are\n required. In your CreateBucket request, if you set the ACL to\n private, or if you don't specify any ACLs, only the\n s3:CreateBucket permission is required.

      \n
    • \n
    • \n

      \n Object Lock - In your\n CreateBucket request, if you set\n x-amz-bucket-object-lock-enabled to true, the\n s3:PutBucketObjectLockConfiguration and s3:PutBucketVersioning\n permissions are required.

      \n
    • \n
    • \n

      \n S3 Object Ownership - If your\n CreateBucket request includes the x-amz-object-ownership\n header, then the s3:PutBucketOwnershipControls permission is required.

      \n \n

      To set an ACL on a bucket as part of a CreateBucket request, you must\n explicitly set S3 Object Ownership for the bucket to a different value than the default,\n BucketOwnerEnforced. Additionally, if your desired bucket ACL grants\n public access, you must first create the bucket (without the bucket ACL) and then\n explicitly disable Block Public Access on the bucket before using\n PutBucketAcl to set the ACL. If you try to create a bucket with a public\n ACL, the request will fail.

      \n

      For the majority of modern use cases in S3, we recommend that you keep all Block\n Public Access settings enabled and keep ACLs disabled. If you would like to share data\n with users outside of your account, you can use bucket policies as needed. For more\n information, see Controlling ownership of\n objects and disabling ACLs for your bucket and Blocking\n public access to your Amazon S3 storage in the\n Amazon S3 User Guide.

      \n
      \n
    • \n
    • \n

      \n S3 Block Public Access - If your specific use\n case requires granting public access to your S3 resources, you can disable Block Public\n Access. Specifically, you can create a new bucket with Block Public Access enabled, then\n separately call the \n DeletePublicAccessBlock\n API. To use this operation, you must have the\n s3:PutBucketPublicAccessBlock permission. For more information about S3\n Block Public Access, see Blocking public\n access to your Amazon S3 storage in the Amazon S3 User Guide.\n

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions - You must have the\n s3express:CreateBucket permission in an IAM identity-based policy instead of a bucket policy.\n Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

    \n \n

    The permissions for ACLs, Object Lock, S3 Object Ownership, and S3 Block Public Access\n are not supported for directory buckets. For directory buckets, all Block Public Access\n settings are enabled at the bucket level and S3 Object Ownership is set to Bucket owner\n enforced (ACLs disabled). These settings can't be modified.

    \n

    For more information about permissions for creating and working with directory buckets,\n see Directory buckets\n in the Amazon S3 User Guide. For more information about supported S3\n features for directory buckets, see Features of\n S3 Express One Zone in the Amazon S3 User Guide.

    \n
    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to CreateBucket:

\n ", + "smithy.api#examples": [ + { + "title": "To create a bucket in a specific region", + "documentation": "The following example creates a bucket. The request specifies an AWS region where to create the bucket.", + "input": { + "Bucket": "examplebucket", + "CreateBucketConfiguration": { + "LocationConstraint": "eu-west-1" + } + }, + "output": { + "Location": "http://examplebucket..s3.amazonaws.com/" + } + }, + { + "title": "To create a bucket ", + "documentation": "The following example creates a bucket.", + "input": { + "Bucket": "examplebucket" + }, + "output": { + "Location": "/examplebucket" + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + }, + "DisableAccessPoints": { + "value": true + } + } + } + }, + "com.amazonaws.s3#CreateBucketConfiguration": { + "type": "structure", + "members": { + "LocationConstraint": { + "target": "com.amazonaws.s3#BucketLocationConstraint", + "traits": { + "smithy.api#documentation": "

Specifies the Region where the bucket will be created. You might choose a Region to optimize\n latency, minimize costs, or address regulatory requirements. For example, if you reside in Europe, you\n will probably find it advantageous to create buckets in the Europe (Ireland) Region.

\n

If you don't specify a Region, the bucket is created in the US East (N. Virginia) Region (us-east-1)\n by default. Configurations using the value EU will create a bucket in\n eu-west-1.

\n

For a list of the valid values for all of the Amazon Web Services Regions, see Regions and Endpoints.

\n \n

This functionality is not supported for directory buckets.

\n
" + } + }, + "Location": { + "target": "com.amazonaws.s3#LocationInfo", + "traits": { + "smithy.api#documentation": "

Specifies the location where the bucket will be created.

\n

\n Directory buckets - The location type is Availability Zone or Local Zone. To\n use the Local Zone location type, your account must be enabled\n for Local Zones. Otherwise, you get an HTTP 403 Forbidden error with the error code\n AccessDenied. To learn more,\n see Enable\n accounts for Local Zones in the Amazon S3 User Guide.

\n \n

This functionality is only supported by directory buckets.

\n
" + } + }, + "Bucket": { + "target": "com.amazonaws.s3#BucketInfo", + "traits": { + "smithy.api#documentation": "

Specifies the information about the bucket that will be created.

\n \n

This functionality is only supported by directory buckets.

\n
" + } + }, + "Tags": { + "target": "com.amazonaws.s3#TagSet", + "traits": { + "smithy.api#documentation": "

An array of tags that you can apply to the bucket that you're creating. Tags are key-value pairs of\n metadata used to categorize and organize your buckets, track costs, and control access.

\n \n

This parameter is only supported for S3 directory buckets. For more information, see Using tags with\n directory buckets.

\n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration information for the bucket.

" + } + }, + "com.amazonaws.s3#CreateBucketMetadataConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#CreateBucketMetadataConfigurationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "

Creates an S3 Metadata V2 metadata configuration for a general purpose bucket. For more information, see\n Accelerating\n data discovery with S3 Metadata in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

To use this operation, you must have the following permissions. For more information, see\n Setting up permissions for configuring metadata tables in the\n Amazon S3 User Guide.

\n

If you want to encrypt your metadata tables with server-side encryption with Key Management Service\n (KMS) keys (SSE-KMS), you need additional permissions in your KMS key policy. For more\n information, see \n Setting up permissions for configuring metadata tables in the\n Amazon S3 User Guide.

\n

If you also want to integrate your table bucket with Amazon Web Services analytics services so that you can\n query your metadata table, you need additional permissions. For more information, see Integrating\n Amazon S3 Tables with Amazon Web Services analytics services in the\n Amazon S3 User Guide.

\n

To query your metadata tables, you need additional permissions. For more information, see \n \n Permissions for querying metadata tables in the Amazon S3 User Guide.

\n
    \n
  • \n

    \n s3:CreateBucketMetadataTableConfiguration\n

    \n \n

    The IAM policy action name is the same for the V1 and V2 API operations.

    \n
    \n
  • \n
  • \n

    \n s3tables:CreateTableBucket\n

    \n
  • \n
  • \n

    \n s3tables:CreateNamespace\n

    \n
  • \n
  • \n

    \n s3tables:GetTable\n

    \n
  • \n
  • \n

    \n s3tables:CreateTable\n

    \n
  • \n
  • \n

    \n s3tables:PutTablePolicy\n

    \n
  • \n
  • \n

    \n s3tables:PutTableEncryption\n

    \n
  • \n
  • \n

    \n kms:DescribeKey\n

    \n
  • \n
\n
\n
\n

The following operations are related to CreateBucketMetadataConfiguration:

\n ", + "smithy.api#http": { + "method": "POST", + "uri": "/{Bucket}?metadataConfiguration", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#CreateBucketMetadataConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

\n The general purpose bucket that you want to create the metadata configuration for.\n

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

\n The Content-MD5 header for the metadata configuration.\n

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

\n The checksum algorithm to use with your metadata configuration.\n

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "MetadataConfiguration": { + "target": "com.amazonaws.s3#MetadataConfiguration", + "traits": { + "smithy.api#documentation": "

\n The contents of your metadata configuration.\n

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "MetadataConfiguration" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

\n The expected owner of the general purpose bucket that corresponds to your metadata configuration.\n

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#CreateBucketMetadataTableConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#CreateBucketMetadataTableConfigurationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "\n

\n We recommend that you create your S3 Metadata configurations by using the V2 \n CreateBucketMetadataConfiguration API operation. We no longer recommend using the V1 \n CreateBucketMetadataTableConfiguration API operation.\n

\n

If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete \n and re-create your configuration by using CreateBucketMetadataConfiguration so that you can expire journal table records and create \n a live inventory table.

\n
\n

Creates a V1 S3 Metadata configuration for a general purpose bucket. For more information, see\n Accelerating\n data discovery with S3 Metadata in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

To use this operation, you must have the following permissions. For more information, see\n Setting up permissions for configuring metadata tables in the\n Amazon S3 User Guide.

\n

If you want to encrypt your metadata tables with server-side encryption with Key Management Service\n (KMS) keys (SSE-KMS), you need additional permissions. For more\n information, see \n Setting up permissions for configuring metadata tables in the\n Amazon S3 User Guide.

\n

If you also want to integrate your table bucket with Amazon Web Services analytics services so that you can\n query your metadata table, you need additional permissions. For more information, see Integrating\n Amazon S3 Tables with Amazon Web Services analytics services in the\n Amazon S3 User Guide.

\n
    \n
  • \n

    \n s3:CreateBucketMetadataTableConfiguration\n

    \n
  • \n
  • \n

    \n s3tables:CreateNamespace\n

    \n
  • \n
  • \n

    \n s3tables:GetTable\n

    \n
  • \n
  • \n

    \n s3tables:CreateTable\n

    \n
  • \n
  • \n

    \n s3tables:PutTablePolicy\n

    \n
  • \n
\n
\n
\n

The following operations are related to CreateBucketMetadataTableConfiguration:

\n ", + "smithy.api#http": { + "method": "POST", + "uri": "/{Bucket}?metadataTable", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#CreateBucketMetadataTableConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The general purpose bucket that you want to create the metadata table configuration for.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The Content-MD5 header for the metadata table configuration.

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

The checksum algorithm to use with your metadata table configuration.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "MetadataTableConfiguration": { + "target": "com.amazonaws.s3#MetadataTableConfiguration", + "traits": { + "smithy.api#documentation": "

The contents of your metadata table configuration.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "MetadataTableConfiguration" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The expected owner of the general purpose bucket that corresponds to your metadata table configuration.\n

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#CreateBucketOutput": { + "type": "structure", + "members": { + "Location": { + "target": "com.amazonaws.s3#Location", + "traits": { + "smithy.api#documentation": "

A forward slash followed by the name of the bucket.

", + "smithy.api#httpHeader": "Location" + } + }, + "BucketArn": { + "target": "com.amazonaws.s3#S3RegionalOrS3ExpressBucketArnString", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the S3 bucket. ARNs uniquely identify Amazon Web Services resources across all\n of Amazon Web Services.

\n \n

This parameter is only supported for S3 directory buckets. For more information, see Using tags with\n directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-bucket-arn" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#CreateBucketRequest": { + "type": "structure", + "members": { + "ACL": { + "target": "com.amazonaws.s3#BucketCannedACL", + "traits": { + "smithy.api#documentation": "

The canned ACL to apply to the bucket.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-acl" + } + }, + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket to create.

\n

\n General purpose buckets - For information about bucket naming\n restrictions, see Bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must also follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide\n

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "CreateBucketConfiguration": { + "target": "com.amazonaws.s3#CreateBucketConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration information for the bucket.

", + "smithy.api#httpPayload": {}, + "smithy.api#xmlName": "CreateBucketConfiguration" + } + }, + "GrantFullControl": { + "target": "com.amazonaws.s3#GrantFullControl", + "traits": { + "smithy.api#documentation": "

Allows grantee the read, write, read ACP, and write ACP permissions on the bucket.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-grant-full-control" + } + }, + "GrantRead": { + "target": "com.amazonaws.s3#GrantRead", + "traits": { + "smithy.api#documentation": "

Allows grantee to list the objects in the bucket.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-grant-read" + } + }, + "GrantReadACP": { + "target": "com.amazonaws.s3#GrantReadACP", + "traits": { + "smithy.api#documentation": "

Allows grantee to read the bucket ACL.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-grant-read-acp" + } + }, + "GrantWrite": { + "target": "com.amazonaws.s3#GrantWrite", + "traits": { + "smithy.api#documentation": "

Allows grantee to create new objects in the bucket.

\n

For the bucket and object owners of existing objects, also allows deletions and overwrites of those\n objects.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-grant-write" + } + }, + "GrantWriteACP": { + "target": "com.amazonaws.s3#GrantWriteACP", + "traits": { + "smithy.api#documentation": "

Allows grantee to write the ACL for the applicable bucket.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-grant-write-acp" + } + }, + "ObjectLockEnabledForBucket": { + "target": "com.amazonaws.s3#ObjectLockEnabledForBucket", + "traits": { + "smithy.api#documentation": "

Specifies whether you want S3 Object Lock to be enabled for the new bucket.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-bucket-object-lock-enabled" + } + }, + "ObjectOwnership": { + "target": "com.amazonaws.s3#ObjectOwnership", + "traits": { + "smithy.api#httpHeader": "x-amz-object-ownership" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#CreateMultipartUpload": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#CreateMultipartUploadRequest" + }, + "output": { + "target": "com.amazonaws.s3#CreateMultipartUploadOutput" + }, + "traits": { + "smithy.api#documentation": "\n

End of support notice: Beginning October 1, 2025, Amazon S3 will discontinue support for creating new Email Grantee Access Control Lists (ACL). \n Email Grantee ACLs created prior to this date will continue to work and remain accessible through the Amazon Web Services Management Console, Command Line Interface (CLI), SDKs, \n and REST API. However, you will no longer be able to create new Email Grantee ACLs.\n

\n

This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region, \n Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.

\n
\n

This action initiates a multipart upload and returns an upload ID. This upload ID is used to\n associate all of the parts in the specific multipart upload. You specify this upload ID in each of your\n subsequent upload part requests (see UploadPart). You also include this upload ID in\n the final request to either complete or abort the multipart upload request. For more information about\n multipart uploads, see Multipart\n Upload Overview in the Amazon S3 User Guide.

\n \n

After you initiate a multipart upload and upload one or more parts, to stop being charged for\n storing the uploaded parts, you must either complete or abort the multipart upload. Amazon S3 frees up the\n space used to store the parts and stops charging you for storing them only after you either complete\n or abort a multipart upload.

\n
\n

If you have configured a lifecycle rule to abort incomplete multipart uploads, the created multipart\n upload must be completed within the number of days specified in the bucket lifecycle configuration.\n Otherwise, the incomplete multipart upload becomes eligible for an abort action and Amazon S3 aborts the\n multipart upload. For more information, see Aborting\n Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration.

\n \n
    \n
  • \n

    \n Directory buckets -\n S3 Lifecycle is not supported by directory buckets.

    \n
  • \n
  • \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n
\n
Request signing
\n
\n

For request signing, multipart upload is just a series of regular requests. You initiate a\n multipart upload, send one or more requests to upload parts, and then complete the multipart\n upload process. You sign each request individually. There is nothing special about signing\n multipart upload requests. For more information about signing, see Authenticating Requests (Amazon Web Services\n Signature Version 4) in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - To perform a\n multipart upload with encryption using an Key Management Service (KMS) KMS key, the requester must have\n permission to the kms:Decrypt and kms:GenerateDataKey actions on the\n key. The requester must also have permissions for the kms:GenerateDataKey action\n for the CreateMultipartUpload API. Then, the requester needs permissions for the\n kms:Decrypt action on the UploadPart and\n UploadPartCopy APIs. These permissions are required because Amazon S3 must decrypt\n and read data from the encrypted file parts before it completes the multipart upload. For more\n information, see Multipart upload API and\n permissions and Protecting data using server-side\n encryption with Amazon Web Services KMS in the Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
Encryption
\n
\n
    \n
  • \n

    \n General purpose buckets - Server-side encryption is for\n data encryption at rest. Amazon S3 encrypts your data as it writes it to disks in its data centers\n and decrypts it when you access it. Amazon S3 automatically encrypts all new objects that are\n uploaded to an S3 bucket. When doing a multipart upload, if you don't specify encryption\n information in your request, the encryption setting of the uploaded parts is set to the\n default encryption configuration of the destination bucket. By default, all buckets have a\n base level of encryption configuration that uses server-side encryption with Amazon S3 managed keys\n (SSE-S3). If the destination bucket has a default encryption configuration that uses\n server-side encryption with an Key Management Service (KMS) key (SSE-KMS), or a customer-provided\n encryption key (SSE-C), Amazon S3 uses the corresponding KMS key, or a customer-provided key to\n encrypt the uploaded parts. When you perform a CreateMultipartUpload operation, if you want to\n use a different type of encryption setting for the uploaded parts, you can request that Amazon S3\n encrypts the object with a different encryption key (such as an Amazon S3 managed key, a KMS key,\n or a customer-provided key). When the encryption setting in your request is different from the\n default encryption configuration of the destination bucket, the encryption setting in your\n request takes precedence. If you choose to provide your own encryption key, the request\n headers you provide in UploadPart and UploadPartCopy requests must match the headers you used in the\n CreateMultipartUpload request.

    \n
      \n
    • \n

      Use KMS keys (SSE-KMS) that include the Amazon Web Services managed key (aws/s3) and\n KMS customer managed keys stored in Key Management Service (KMS) – If you want Amazon Web Services to manage the keys used\n to encrypt data, specify the following headers in the request.

      \n
        \n
      • \n

        \n x-amz-server-side-encryption\n

        \n
      • \n
      • \n

        \n x-amz-server-side-encryption-aws-kms-key-id\n

        \n
      • \n
      • \n

        \n x-amz-server-side-encryption-context\n

        \n
      • \n
      \n \n
        \n
      • \n

        If you specify x-amz-server-side-encryption:aws:kms, but don't\n provide x-amz-server-side-encryption-aws-kms-key-id, Amazon S3 uses the\n Amazon Web Services managed key (aws/s3 key) in KMS to protect the data.

        \n
      • \n
      • \n

        To perform a multipart upload with encryption by using an Amazon Web Services KMS key, the\n requester must have permission to the kms:Decrypt and\n kms:GenerateDataKey* actions on the key. These permissions are\n required because Amazon S3 must decrypt and read data from the encrypted file parts\n before it completes the multipart upload. For more information, see Multipart\n upload API and permissions and Protecting data using\n server-side encryption with Amazon Web Services KMS in the\n Amazon S3 User Guide.

        \n
      • \n
      • \n

        If your Identity and Access Management (IAM) user or role is in the same Amazon Web Services account as the\n KMS key, then you must have these permissions on the key policy. If your IAM\n user or role is in a different account from the key, then you must have the\n permissions on both the key policy and your IAM user or role.

        \n
      • \n
      • \n

        All GET and PUT requests for an object protected by\n KMS fail if you don't make them by using Secure Sockets Layer (SSL), Transport\n Layer Security (TLS), or Signature Version 4. For information about configuring any\n of the officially supported Amazon Web Services SDKs and Amazon Web Services CLI, see Specifying the Signature Version in Request\n Authentication in the Amazon S3 User Guide.

        \n
      • \n
      \n
      \n

      For more information about server-side encryption with KMS keys (SSE-KMS), see\n Protecting Data Using Server-Side Encryption with KMS keys in the\n Amazon S3 User Guide.

      \n
    • \n
    • \n

      Use customer-provided encryption keys (SSE-C) – If you want to manage your own\n encryption keys, provide all the following headers in the request.

      \n
        \n
      • \n

        \n x-amz-server-side-encryption-customer-algorithm\n

        \n
      • \n
      • \n

        \n x-amz-server-side-encryption-customer-key\n

        \n
      • \n
      • \n

        \n x-amz-server-side-encryption-customer-key-MD5\n

        \n
      • \n
      \n

      For more information about server-side encryption with customer-provided encryption\n keys (SSE-C), see Protecting data\n using server-side encryption with customer-provided encryption keys (SSE-C) in\n the Amazon S3 User Guide.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory buckets -\n For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your \n CreateSession requests or PUT object requests. Then, new objects \n are automatically encrypted with the desired encryption settings. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide. For more information about the encryption overriding behaviors in directory buckets, see Specifying server-side encryption with KMS for new object uploads.

    \n

    In the Zonal endpoint API calls (except CopyObject and UploadPartCopy) using the REST API, the encryption request headers must match the encryption settings that are specified in the CreateSession request. \n You can't override the values of the encryption settings (x-amz-server-side-encryption, x-amz-server-side-encryption-aws-kms-key-id, x-amz-server-side-encryption-context, and x-amz-server-side-encryption-bucket-key-enabled) that are specified in the CreateSession request. \n You don't need to explicitly specify these encryption settings values in Zonal endpoint API calls, and \n Amazon S3 will use the encryption settings values from the CreateSession request to protect new objects in the directory bucket. \n

    \n \n

    When you use the CLI or the Amazon Web Services SDKs, for CreateSession, the session token refreshes automatically to avoid service interruptions when a session expires. The CLI or the Amazon Web Services SDKs use the bucket's default encryption configuration for the \n CreateSession request. It's not supported to override the encryption settings values in the CreateSession request. \n So in the Zonal endpoint API calls (except CopyObject and UploadPartCopy), \n the encryption request headers must match the default encryption configuration of the directory bucket.\n\n

    \n
    \n \n

    For directory buckets, when you perform a CreateMultipartUpload operation\n and an UploadPartCopy operation, the request headers you provide in the\n CreateMultipartUpload request must match the default encryption configuration\n of the destination bucket.

    \n
    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to CreateMultipartUpload:

\n ", + "smithy.api#examples": [ + { + "title": "To initiate a multipart upload", + "documentation": "The following example initiates a multipart upload.", + "input": { + "Bucket": "examplebucket", + "Key": "largeobject" + }, + "output": { + "Bucket": "examplebucket", + "UploadId": "ibZBv_75gd9r8lH_gqXatLdxMVpAlj6ZQjEs.OwyF3953YdwbcQnMA2BLGn8Lx12fQNICtMw5KyteFeHw.Sjng--", + "Key": "largeobject" + } + } + ], + "smithy.api#http": { + "method": "POST", + "uri": "/{Bucket}/{Key+}?uploads", + "code": 200 + } + } + }, + "com.amazonaws.s3#CreateMultipartUploadOutput": { + "type": "structure", + "members": { + "AbortDate": { + "target": "com.amazonaws.s3#AbortDate", + "traits": { + "smithy.api#documentation": "

If the bucket has a lifecycle rule configured with an action to abort incomplete multipart uploads\n and the prefix in the lifecycle rule matches the object name in the request, the response includes this\n header. The header indicates when the initiated multipart upload becomes eligible for an abort\n operation. For more information, see Aborting\n Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration in the\n Amazon S3 User Guide.

\n

The response also includes the x-amz-abort-rule-id header that provides the ID of the\n lifecycle configuration rule that defines the abort action.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-abort-date" + } + }, + "AbortRuleId": { + "target": "com.amazonaws.s3#AbortRuleId", + "traits": { + "smithy.api#documentation": "

This header is returned along with the x-amz-abort-date header. It identifies the\n applicable lifecycle configuration rule that defines the action to abort incomplete multipart\n uploads.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-abort-rule-id" + } + }, + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket to which the multipart upload was initiated. Does not return the access point ARN or\n access point alias if used.

\n \n

Access points are not supported by directory buckets.

\n
", + "smithy.api#xmlName": "Bucket" + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Object key for which the multipart upload was initiated.

" + } + }, + "UploadId": { + "target": "com.amazonaws.s3#MultipartUploadId", + "traits": { + "smithy.api#documentation": "

ID for the initiated multipart upload.

" + } + }, + "ServerSideEncryption": { + "target": "com.amazonaws.s3#ServerSideEncryption", + "traits": { + "smithy.api#documentation": "

The server-side encryption algorithm used when you store this object in Amazon S3 or Amazon FSx.

\n \n

When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side\n encryption option is aws:fsx.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption" + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the response will\n include this header to confirm the encryption algorithm that's used.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the response will\n include this header to provide the round-trip message integrity verification of the customer-provided\n encryption key.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } + }, + "SSEKMSKeyId": { + "target": "com.amazonaws.s3#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

If present, indicates the ID of the KMS key that was used for object encryption.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" + } + }, + "SSEKMSEncryptionContext": { + "target": "com.amazonaws.s3#SSEKMSEncryptionContext", + "traits": { + "smithy.api#documentation": "

If present, indicates the Amazon Web Services KMS Encryption Context to use for object encryption. The value of\n this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-context" + } + }, + "BucketKeyEnabled": { + "target": "com.amazonaws.s3#BucketKeyEnabled", + "traits": { + "smithy.api#documentation": "

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with\n Key Management Service (KMS) keys (SSE-KMS).

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

The algorithm that was used to create a checksum of the object.

", + "smithy.api#httpHeader": "x-amz-checksum-algorithm" + } + }, + "ChecksumType": { + "target": "com.amazonaws.s3#ChecksumType", + "traits": { + "smithy.api#documentation": "

Indicates the checksum type that you want Amazon S3 to use to calculate the object’s checksum\n value. For more information, see Checking object integrity in the Amazon S3\n User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-type" + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "InitiateMultipartUploadResult" + } + }, + "com.amazonaws.s3#CreateMultipartUploadRequest": { + "type": "structure", + "members": { + "ACL": { + "target": "com.amazonaws.s3#ObjectCannedACL", + "traits": { + "smithy.api#documentation": "

The canned ACL to apply to the object. Amazon S3 supports a set of predefined ACLs, known as\n canned ACLs. Each canned ACL has a predefined set of grantees and permissions.\n For more information, see Canned ACL in the\n Amazon S3 User Guide.

\n

By default, all objects are private. Only the owner has full access control. When uploading an\n object, you can grant access permissions to individual Amazon Web Services accounts or to predefined groups defined by\n Amazon S3. These permissions are then added to the access control list (ACL) on the new object. For more\n information, see Using\n ACLs. One way to grant the permissions using the request headers is to specify a canned ACL\n with the x-amz-acl request header.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-acl" + } + }, + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket where the multipart upload is initiated and where the object is\n uploaded.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "CacheControl": { + "target": "com.amazonaws.s3#CacheControl", + "traits": { + "smithy.api#documentation": "

Specifies caching behavior along the request/reply chain.

", + "smithy.api#httpHeader": "Cache-Control" + } + }, + "ContentDisposition": { + "target": "com.amazonaws.s3#ContentDisposition", + "traits": { + "smithy.api#documentation": "

Specifies presentational information for the object.

", + "smithy.api#httpHeader": "Content-Disposition" + } + }, + "ContentEncoding": { + "target": "com.amazonaws.s3#ContentEncoding", + "traits": { + "smithy.api#documentation": "

Specifies what content encodings have been applied to the object and thus what decoding mechanisms\n must be applied to obtain the media-type referenced by the Content-Type header field.

\n \n

For directory buckets, only the aws-chunked value is supported in this header field.

\n
", + "smithy.api#httpHeader": "Content-Encoding" + } + }, + "ContentLanguage": { + "target": "com.amazonaws.s3#ContentLanguage", + "traits": { + "smithy.api#documentation": "

The language that the content is in.

", + "smithy.api#httpHeader": "Content-Language" + } + }, + "ContentType": { + "target": "com.amazonaws.s3#ContentType", + "traits": { + "smithy.api#documentation": "

A standard MIME type describing the format of the object data.

", + "smithy.api#httpHeader": "Content-Type" + } + }, + "Expires": { + "target": "com.amazonaws.s3#Expires", + "traits": { + "smithy.api#documentation": "

The date and time at which the object is no longer cacheable.

", + "smithy.api#httpHeader": "Expires" + } + }, + "GrantFullControl": { + "target": "com.amazonaws.s3#GrantFullControl", + "traits": { + "smithy.api#documentation": "

Specify access permissions explicitly to give the grantee READ, READ_ACP, and WRITE_ACP permissions\n on the object.

\n

By default, all objects are private. Only the owner has full access control. When uploading an\n object, you can use this header to explicitly grant access permissions to specific Amazon Web Services accounts or\n groups. This header maps to specific permissions that Amazon S3 supports in an ACL. For more information, see\n Access Control List (ACL)\n Overview in the Amazon S3 User Guide.

\n

You specify each grantee as a type=value pair, where the type is one of the following:

\n
    \n
  • \n

    \n id – if the value specified is the canonical user ID of an Amazon Web Services account

    \n
  • \n
  • \n

    \n uri – if you are granting permissions to a predefined group

    \n
  • \n
  • \n

    \n emailAddress – if the value specified is the email address of an\n Amazon Web Services account

    \n \n

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    \n
      \n
    • \n

      US East (N. Virginia)

      \n
    • \n
    • \n

      US West (N. California)

      \n
    • \n
    • \n

      US West (Oregon)

      \n
    • \n
    • \n

      Asia Pacific (Singapore)

      \n
    • \n
    • \n

      Asia Pacific (Sydney)

      \n
    • \n
    • \n

      Asia Pacific (Tokyo)

      \n
    • \n
    • \n

      Europe (Ireland)

      \n
    • \n
    • \n

      South America (São Paulo)

      \n
    • \n
    \n

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

    \n
    \n
  • \n
\n

For example, the following x-amz-grant-read header grants the Amazon Web Services accounts identified by account IDs permissions to read object data and its metadata:

\n

\n x-amz-grant-read: id=\"11112222333\", id=\"444455556666\" \n

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-grant-full-control" + } + }, + "GrantRead": { + "target": "com.amazonaws.s3#GrantRead", + "traits": { + "smithy.api#documentation": "

Specify access permissions explicitly to allow grantee to read the object data and its\n metadata.

\n

By default, all objects are private. Only the owner has full access control. When uploading an\n object, you can use this header to explicitly grant access permissions to specific Amazon Web Services accounts or\n groups. This header maps to specific permissions that Amazon S3 supports in an ACL. For more information, see\n Access Control List (ACL)\n Overview in the Amazon S3 User Guide.

\n

You specify each grantee as a type=value pair, where the type is one of the following:

\n
    \n
  • \n

    \n id – if the value specified is the canonical user ID of an Amazon Web Services account

    \n
  • \n
  • \n

    \n uri – if you are granting permissions to a predefined group

    \n
  • \n
  • \n

    \n emailAddress – if the value specified is the email address of an\n Amazon Web Services account

    \n \n

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    \n
      \n
    • \n

      US East (N. Virginia)

      \n
    • \n
    • \n

      US West (N. California)

      \n
    • \n
    • \n

      US West (Oregon)

      \n
    • \n
    • \n

      Asia Pacific (Singapore)

      \n
    • \n
    • \n

      Asia Pacific (Sydney)

      \n
    • \n
    • \n

      Asia Pacific (Tokyo)

      \n
    • \n
    • \n

      Europe (Ireland)

      \n
    • \n
    • \n

      South America (São Paulo)

      \n
    • \n
    \n

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

    \n
    \n
  • \n
\n

For example, the following x-amz-grant-read header grants the Amazon Web Services accounts identified by account IDs permissions to read object data and its metadata:

\n

\n x-amz-grant-read: id=\"11112222333\", id=\"444455556666\" \n

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-grant-read" + } + }, + "GrantReadACP": { + "target": "com.amazonaws.s3#GrantReadACP", + "traits": { + "smithy.api#documentation": "

Specify access permissions explicitly to allows grantee to read the object ACL.

\n

By default, all objects are private. Only the owner has full access control. When uploading an\n object, you can use this header to explicitly grant access permissions to specific Amazon Web Services accounts or\n groups. This header maps to specific permissions that Amazon S3 supports in an ACL. For more information, see\n Access Control List (ACL)\n Overview in the Amazon S3 User Guide.

\n

You specify each grantee as a type=value pair, where the type is one of the following:

\n
    \n
  • \n

    \n id – if the value specified is the canonical user ID of an Amazon Web Services account

    \n
  • \n
  • \n

    \n uri – if you are granting permissions to a predefined group

    \n
  • \n
  • \n

    \n emailAddress – if the value specified is the email address of an\n Amazon Web Services account

    \n \n

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    \n
      \n
    • \n

      US East (N. Virginia)

      \n
    • \n
    • \n

      US West (N. California)

      \n
    • \n
    • \n

      US West (Oregon)

      \n
    • \n
    • \n

      Asia Pacific (Singapore)

      \n
    • \n
    • \n

      Asia Pacific (Sydney)

      \n
    • \n
    • \n

      Asia Pacific (Tokyo)

      \n
    • \n
    • \n

      Europe (Ireland)

      \n
    • \n
    • \n

      South America (São Paulo)

      \n
    • \n
    \n

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

    \n
    \n
  • \n
\n

For example, the following x-amz-grant-read header grants the Amazon Web Services accounts identified by account IDs permissions to read object data and its metadata:

\n

\n x-amz-grant-read: id=\"11112222333\", id=\"444455556666\" \n

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-grant-read-acp" + } + }, + "GrantWriteACP": { + "target": "com.amazonaws.s3#GrantWriteACP", + "traits": { + "smithy.api#documentation": "

Specify access permissions explicitly to allows grantee to allow grantee to write the ACL for the\n applicable object.

\n

By default, all objects are private. Only the owner has full access control. When uploading an\n object, you can use this header to explicitly grant access permissions to specific Amazon Web Services accounts or\n groups. This header maps to specific permissions that Amazon S3 supports in an ACL. For more information, see\n Access Control List (ACL)\n Overview in the Amazon S3 User Guide.

\n

You specify each grantee as a type=value pair, where the type is one of the following:

\n
    \n
  • \n

    \n id – if the value specified is the canonical user ID of an Amazon Web Services account

    \n
  • \n
  • \n

    \n uri – if you are granting permissions to a predefined group

    \n
  • \n
  • \n

    \n emailAddress – if the value specified is the email address of an\n Amazon Web Services account

    \n \n

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    \n
      \n
    • \n

      US East (N. Virginia)

      \n
    • \n
    • \n

      US West (N. California)

      \n
    • \n
    • \n

      US West (Oregon)

      \n
    • \n
    • \n

      Asia Pacific (Singapore)

      \n
    • \n
    • \n

      Asia Pacific (Sydney)

      \n
    • \n
    • \n

      Asia Pacific (Tokyo)

      \n
    • \n
    • \n

      Europe (Ireland)

      \n
    • \n
    • \n

      South America (São Paulo)

      \n
    • \n
    \n

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

    \n
    \n
  • \n
\n

For example, the following x-amz-grant-read header grants the Amazon Web Services accounts identified by account IDs permissions to read object data and its metadata:

\n

\n x-amz-grant-read: id=\"11112222333\", id=\"444455556666\" \n

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-grant-write-acp" + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Object key for which the multipart upload is to be initiated.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Key" + } + } + }, + "Metadata": { + "target": "com.amazonaws.s3#Metadata", + "traits": { + "smithy.api#documentation": "

A map of metadata to store with the object in S3.

", + "smithy.api#httpPrefixHeaders": "x-amz-meta-" + } + }, + "ServerSideEncryption": { + "target": "com.amazonaws.s3#ServerSideEncryption", + "traits": { + "smithy.api#documentation": "

The server-side encryption algorithm used when you store this object in Amazon S3 or Amazon FSx.

\n
    \n
  • \n

    \n Directory buckets -\n For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your \n CreateSession requests or PUT object requests. Then, new objects \n are automatically encrypted with the desired encryption settings. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide. For more information about the encryption overriding behaviors in directory buckets, see Specifying server-side encryption with KMS for new object uploads.

    \n

    In the Zonal endpoint API calls (except CopyObject and UploadPartCopy) using the REST API, the encryption request headers must match the encryption settings that are specified in the CreateSession request. \n You can't override the values of the encryption settings (x-amz-server-side-encryption, x-amz-server-side-encryption-aws-kms-key-id, x-amz-server-side-encryption-context, and x-amz-server-side-encryption-bucket-key-enabled) that are specified in the CreateSession request. \n You don't need to explicitly specify these encryption settings values in Zonal endpoint API calls, and \n Amazon S3 will use the encryption settings values from the CreateSession request to protect new objects in the directory bucket. \n

    \n \n

    When you use the CLI or the Amazon Web Services SDKs, for CreateSession, the session token refreshes automatically to avoid service interruptions when a session expires. The CLI or the Amazon Web Services SDKs use the bucket's default encryption configuration for the \n CreateSession request. It's not supported to override the encryption settings values in the CreateSession request. \n So in the Zonal endpoint API calls (except CopyObject and UploadPartCopy), \n the encryption request headers must match the default encryption configuration of the directory bucket.\n\n

    \n
    \n
  • \n
  • \n

    \n S3 access points for Amazon FSx - When accessing data stored in\n Amazon FSx file systems using S3 access points, the only valid server side encryption option is\n aws:fsx. All Amazon FSx file systems have encryption configured by default and are\n encrypted at rest. Data is automatically encrypted before being written to the file system, and\n automatically decrypted as it is read. These processes are handled transparently by Amazon FSx.

    \n
  • \n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3#StorageClass", + "traits": { + "smithy.api#documentation": "

By default, Amazon S3 uses the STANDARD Storage Class to store newly created objects. The STANDARD\n storage class provides high durability and high availability. Depending on performance needs, you can\n specify a different Storage Class. For more information, see Storage Classes in the\n Amazon S3 User Guide.

\n \n
    \n
  • \n

    Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in\n Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in\n Dedicated Local Zones.

    \n
  • \n
  • \n

    Amazon S3 on Outposts only uses the OUTPOSTS Storage Class.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-storage-class" + } + }, + "WebsiteRedirectLocation": { + "target": "com.amazonaws.s3#WebsiteRedirectLocation", + "traits": { + "smithy.api#documentation": "

If the bucket is configured as a website, redirects requests for this object to another object in\n the same bucket or to an external URL. Amazon S3 stores the value of this header in the object\n metadata.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-website-redirect-location" + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKey": { + "target": "com.amazonaws.s3#SSECustomerKey", + "traits": { + "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is\n used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must\n be appropriate for use with the algorithm specified in the\n x-amz-server-side-encryption-customer-algorithm header.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the customer-provided encryption key according to RFC 1321. Amazon S3\n uses this header for a message integrity check to ensure that the encryption key was transmitted without\n error.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } + }, + "SSEKMSKeyId": { + "target": "com.amazonaws.s3#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

Specifies the KMS key ID (Key ID, Key ARN, or Key Alias) to use for object encryption. If the KMS key doesn't exist in the same\n account that's issuing the command, you must use the full Key ARN not the Key ID.

\n

\n General purpose buckets - If you specify x-amz-server-side-encryption with aws:kms or aws:kms:dsse, this header specifies the ID (Key ID, Key ARN, or Key Alias) of the KMS \n key to use. If you specify\n x-amz-server-side-encryption:aws:kms or\n x-amz-server-side-encryption:aws:kms:dsse, but do not provide x-amz-server-side-encryption-aws-kms-key-id, Amazon S3 uses the Amazon Web Services managed key\n (aws/s3) to protect the data.

\n

\n Directory buckets - To encrypt data using SSE-KMS, it's recommended to specify the \nx-amz-server-side-encryption header to aws:kms. Then, the x-amz-server-side-encryption-aws-kms-key-id header implicitly uses \nthe bucket's default KMS customer managed key ID. If you want to explicitly set the \n x-amz-server-side-encryption-aws-kms-key-id header, it must match the bucket's default customer managed key (using key ID or ARN, not alias). Your SSE-KMS configuration can only support 1 customer managed key per directory bucket's lifetime. \nThe Amazon Web Services managed key (aws/s3) isn't supported. \n \n Incorrect key specification results in an HTTP 400 Bad Request error.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" + } + }, + "SSEKMSEncryptionContext": { + "target": "com.amazonaws.s3#SSEKMSEncryptionContext", + "traits": { + "smithy.api#documentation": "

Specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of\n this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs.

\n

\n Directory buckets - You can optionally provide an explicit encryption context value. The value must match the default encryption context - the bucket Amazon Resource Name (ARN). An additional encryption context value is not supported.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-context" + } + }, + "BucketKeyEnabled": { + "target": "com.amazonaws.s3#BucketKeyEnabled", + "traits": { + "smithy.api#documentation": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with\n server-side encryption using Key Management Service (KMS) keys (SSE-KMS).

\n

\n General purpose buckets - Setting this header to\n true causes Amazon S3 to use an S3 Bucket Key for object encryption with\n SSE-KMS. Also, specifying this header with a PUT action doesn't affect bucket-level settings for S3\n Bucket Key.

\n

\n Directory buckets - S3 Bucket Keys are always enabled for GET and PUT operations in a directory bucket and can’t be disabled. S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets \nto directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through CopyObject, UploadPartCopy, the Copy operation in Batch Operations, or \n the import jobs. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "Tagging": { + "target": "com.amazonaws.s3#TaggingHeader", + "traits": { + "smithy.api#documentation": "

The tag-set for the object. The tag-set must be encoded as URL Query parameters.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-tagging" + } + }, + "ObjectLockMode": { + "target": "com.amazonaws.s3#ObjectLockMode", + "traits": { + "smithy.api#documentation": "

Specifies the Object Lock mode that you want to apply to the uploaded object.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-object-lock-mode" + } + }, + "ObjectLockRetainUntilDate": { + "target": "com.amazonaws.s3#ObjectLockRetainUntilDate", + "traits": { + "smithy.api#documentation": "

Specifies the date and time when you want the Object Lock to expire.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-object-lock-retain-until-date" + } + }, + "ObjectLockLegalHoldStatus": { + "target": "com.amazonaws.s3#ObjectLockLegalHoldStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether you want to apply a legal hold to the uploaded object.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-object-lock-legal-hold" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm that you want Amazon S3 to use to create the checksum for the object. For more information, see\n Checking object integrity in\n the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-algorithm" + } + }, + "ChecksumType": { + "target": "com.amazonaws.s3#ChecksumType", + "traits": { + "smithy.api#documentation": "

Indicates the checksum type that you want Amazon S3 to use to calculate the object’s checksum value. For\n more information, see Checking object integrity in the Amazon S3\n User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-type" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#CreateSession": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#CreateSessionRequest" + }, + "output": { + "target": "com.amazonaws.s3#CreateSessionOutput" + }, + "errors": [ + { + "target": "com.amazonaws.s3#NoSuchBucket" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a session that establishes temporary security credentials to support fast authentication and\n authorization for the Zonal endpoint API operations on directory buckets. For more information about Zonal endpoint API operations that\n include the Availability Zone in the request endpoint, see S3 Express One Zone APIs in the\n Amazon S3 User Guide.

\n

To make Zonal endpoint API requests on a directory bucket, use the CreateSession API\n operation. Specifically, you grant s3express:CreateSession permission to a bucket in\n a bucket policy or an IAM identity-based policy. Then, you use IAM credentials to make the CreateSession\n API request on the bucket, which returns temporary security credentials that include the access key ID,\n secret access key, session token, and expiration. These credentials have associated permissions to\n access the Zonal endpoint API operations. After the session is created, you don’t need to use other policies to grant\n permissions to each Zonal endpoint API individually. Instead, in your Zonal endpoint API requests, you sign your\n requests by applying the temporary security credentials of the session to the request headers and\n following the SigV4 protocol for authentication. You also apply the session token to the\n x-amz-s3session-token request header for authorization. Temporary security credentials\n are scoped to the bucket and expire after 5 minutes. After the expiration time, any calls that you make\n with those credentials will fail. You must use IAM credentials again to make a\n CreateSession API request that generates a new set of temporary credentials for use.\n Temporary credentials cannot be extended or refreshed beyond the original specified interval.

\n

If you use Amazon Web Services SDKs, SDKs handle the session token refreshes automatically to avoid service\n interruptions when a session expires. We recommend that you use the Amazon Web Services SDKs to initiate and manage\n requests to the CreateSession API. For more information, see Performance guidelines and design patterns in the\n Amazon S3 User Guide.

\n \n
    \n
  • \n

    You must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n \n CopyObject API operation - Unlike other\n Zonal endpoint API operations, the CopyObject API operation doesn't use the temporary security\n credentials returned from the CreateSession API operation for authentication and\n authorization. For information about authentication and authorization of the\n CopyObject API operation on directory buckets, see CopyObject.

    \n
  • \n
  • \n

    \n \n HeadBucket API operation - Unlike other\n Zonal endpoint API operations, the HeadBucket API operation doesn't use the temporary security\n credentials returned from the CreateSession API operation for authentication and\n authorization. For information about authentication and authorization of the\n HeadBucket API operation on directory buckets, see HeadBucket.

    \n
  • \n
\n
\n
\n
Permissions
\n
\n

To obtain temporary security credentials, you must create a bucket policy or an IAM identity-based policy that\n grants s3express:CreateSession permission to the bucket. In a policy, you can have\n the s3express:SessionMode condition key to control who can create a\n ReadWrite or ReadOnly session. For more information about\n ReadWrite or ReadOnly sessions, see \n x-amz-create-session-mode\n . For example policies, see Example\n bucket policies for S3 Express One Zone and Amazon Web Services Identity\n and Access Management (IAM) identity-based policies for S3 Express One Zone in the\n Amazon S3 User Guide.

\n

To grant cross-account access to Zonal endpoint API operations, the bucket policy should also grant both\n accounts the s3express:CreateSession permission.

\n

If you want to encrypt objects with SSE-KMS, you must also have the\n kms:GenerateDataKey and the kms:Decrypt permissions in IAM\n identity-based policies and KMS key policies for the target KMS key.

\n
\n
Encryption
\n
\n

For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your \n CreateSession requests or PUT object requests. Then, new objects \n are automatically encrypted with the desired encryption settings. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide. For more information about the encryption overriding behaviors in directory buckets, see Specifying server-side encryption with KMS for new object uploads.

\n

For Zonal endpoint (object-level) API operations except CopyObject and UploadPartCopy, \nyou authenticate and authorize requests through CreateSession for low latency. \n To encrypt new objects in a directory bucket with SSE-KMS, you must specify SSE-KMS as the directory bucket's default encryption configuration with a KMS key (specifically, a customer managed key). Then, when a session is created for Zonal endpoint API operations, new objects are automatically encrypted and decrypted with SSE-KMS and S3 Bucket Keys during the session.

\n \n

\n Only 1 customer managed key is supported per directory bucket for the lifetime of the bucket. The Amazon Web Services managed key (aws/s3) isn't supported. \n After you specify SSE-KMS as your bucket's default encryption configuration with a customer managed key, you can't change the customer managed key for the bucket's SSE-KMS configuration.\n

\n
\n

In the Zonal endpoint API calls (except CopyObject and UploadPartCopy) using the REST API, \n you can't override the values of the encryption settings (x-amz-server-side-encryption, x-amz-server-side-encryption-aws-kms-key-id, x-amz-server-side-encryption-context, and x-amz-server-side-encryption-bucket-key-enabled) from the CreateSession request. \n You don't need to explicitly specify these encryption settings values in Zonal endpoint API calls, and \n Amazon S3 will use the encryption settings values from the CreateSession request to protect new objects in the directory bucket. \n

\n \n

When you use the CLI or the Amazon Web Services SDKs, for CreateSession, the session token refreshes automatically to avoid service interruptions when a session expires. The CLI or the Amazon Web Services SDKs use the bucket's default encryption configuration for the \n CreateSession request. It's not supported to override the encryption settings values in the CreateSession request. \n Also, in the Zonal endpoint API calls (except CopyObject and UploadPartCopy), \n it's not supported to override the values of the encryption settings from the CreateSession request. \n\n

\n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?session", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "DisableS3ExpressSessionAuth": { + "value": true + } + } + } + }, + "com.amazonaws.s3#CreateSessionOutput": { + "type": "structure", + "members": { + "ServerSideEncryption": { + "target": "com.amazonaws.s3#ServerSideEncryption", + "traits": { + "smithy.api#documentation": "

The server-side encryption algorithm used when you store objects in the directory bucket.

\n \n

When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side\n encryption option is aws:fsx.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption" + } + }, + "SSEKMSKeyId": { + "target": "com.amazonaws.s3#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

If you specify x-amz-server-side-encryption with aws:kms, this header indicates the ID of the KMS \n symmetric encryption customer managed key that was used for object encryption.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" + } + }, + "SSEKMSEncryptionContext": { + "target": "com.amazonaws.s3#SSEKMSEncryptionContext", + "traits": { + "smithy.api#documentation": "

If present, indicates the Amazon Web Services KMS Encryption Context to use for object encryption. The value of\n this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs. \n This value is stored as object metadata and automatically gets\n passed on to Amazon Web Services KMS for future GetObject \n operations on this object.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-context" + } + }, + "BucketKeyEnabled": { + "target": "com.amazonaws.s3#BucketKeyEnabled", + "traits": { + "smithy.api#documentation": "

Indicates whether to use an S3 Bucket Key for server-side encryption\n with KMS keys (SSE-KMS).

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" + } + }, + "Credentials": { + "target": "com.amazonaws.s3#SessionCredentials", + "traits": { + "smithy.api#documentation": "

The established temporary security credentials for the created session.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "Credentials" + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "CreateSessionResult" + } + }, + "com.amazonaws.s3#CreateSessionRequest": { + "type": "structure", + "members": { + "SessionMode": { + "target": "com.amazonaws.s3#SessionMode", + "traits": { + "smithy.api#documentation": "

Specifies the mode of the session that will be created, either ReadWrite or\n ReadOnly. By default, a ReadWrite session is created. A\n ReadWrite session is capable of executing all the Zonal endpoint API operations on a directory bucket. A\n ReadOnly session is constrained to execute the following Zonal endpoint API operations:\n GetObject, HeadObject, ListObjectsV2,\n GetObjectAttributes, ListParts, and\n ListMultipartUploads.

", + "smithy.api#httpHeader": "x-amz-create-session-mode" + } + }, + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket that you create a session for.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ServerSideEncryption": { + "target": "com.amazonaws.s3#ServerSideEncryption", + "traits": { + "smithy.api#documentation": "

The server-side encryption algorithm to use when you store objects in the directory bucket.

\n

For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms). By default, Amazon S3 encrypts data with SSE-S3. \n For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide.

\n

\n S3 access points for Amazon FSx - When accessing data stored in Amazon FSx\n file systems using S3 access points, the only valid server side encryption option is aws:fsx. All\n Amazon FSx file systems have encryption configured by default and are encrypted at rest. Data is\n automatically encrypted before being written to the file system, and automatically decrypted as it is\n read. These processes are handled transparently by Amazon FSx.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption" + } + }, + "SSEKMSKeyId": { + "target": "com.amazonaws.s3#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

If you specify x-amz-server-side-encryption with aws:kms, you must specify the \n x-amz-server-side-encryption-aws-kms-key-id header with the ID (Key ID or Key ARN) of the KMS \n symmetric encryption customer managed key to use. Otherwise, you get an HTTP 400 Bad Request error. Only use the key ID or key ARN. The key alias format of the KMS key isn't supported. Also, if the KMS key doesn't exist in the same\n account that't issuing the command, you must use the full Key ARN not the Key ID.

\n

Your SSE-KMS configuration can only support 1 customer managed key per directory bucket's lifetime. \nThe Amazon Web Services managed key (aws/s3) isn't supported. \n

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" + } + }, + "SSEKMSEncryptionContext": { + "target": "com.amazonaws.s3#SSEKMSEncryptionContext", + "traits": { + "smithy.api#documentation": "

Specifies the Amazon Web Services KMS Encryption Context as an additional encryption context to use for object encryption. The value of\n this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs. \n This value is stored as object metadata and automatically gets passed on\n to Amazon Web Services KMS for future GetObject operations on\n this object.

\n

\n General purpose buckets - This value must be explicitly added during CopyObject operations if you want an additional encryption context for your object. For more information, see Encryption context in the Amazon S3 User Guide.

\n

\n Directory buckets - You can optionally provide an explicit encryption context value. The value must match the default encryption context - the bucket Amazon Resource Name (ARN). An additional encryption context value is not supported.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-context" + } + }, + "BucketKeyEnabled": { + "target": "com.amazonaws.s3#BucketKeyEnabled", + "traits": { + "smithy.api#documentation": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with\n server-side encryption using KMS keys (SSE-KMS).

\n

S3 Bucket Keys are always enabled for GET and PUT operations in a directory bucket and can’t be disabled. S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets \nto directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through CopyObject, UploadPartCopy, the Copy operation in Batch Operations, or \n the import jobs. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#CreationDate": { + "type": "timestamp" + }, + "com.amazonaws.s3#DataRedundancy": { + "type": "enum", + "members": { + "SingleAvailabilityZone": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SingleAvailabilityZone" + } + }, + "SingleLocalZone": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SingleLocalZone" + } + } + } + }, + "com.amazonaws.s3#Date": { + "type": "timestamp", + "traits": { + "smithy.api#timestampFormat": "date-time" + } + }, + "com.amazonaws.s3#Days": { + "type": "integer" + }, + "com.amazonaws.s3#DaysAfterInitiation": { + "type": "integer" + }, + "com.amazonaws.s3#DefaultRetention": { + "type": "structure", + "members": { + "Mode": { + "target": "com.amazonaws.s3#ObjectLockRetentionMode", + "traits": { + "smithy.api#documentation": "

The default Object Lock retention mode you want to apply to new objects placed in the specified\n bucket. Must be used with either Days or Years.

" + } + }, + "Days": { + "target": "com.amazonaws.s3#Days", + "traits": { + "smithy.api#documentation": "

The number of days that you want to specify for the default retention period. Must be used with\n Mode.

" + } + }, + "Years": { + "target": "com.amazonaws.s3#Years", + "traits": { + "smithy.api#documentation": "

The number of years that you want to specify for the default retention period. Must be used with\n Mode.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The container element for optionally specifying the default Object Lock retention settings for new\n objects placed in the specified bucket.

\n \n
    \n
  • \n

    The DefaultRetention settings require both a mode and a period.

    \n
  • \n
  • \n

    The DefaultRetention period can be either Days or Years\n but you must select one. You cannot specify Days and Years at the same\n time.

    \n
  • \n
\n
" + } + }, + "com.amazonaws.s3#Delete": { + "type": "structure", + "members": { + "Objects": { + "target": "com.amazonaws.s3#ObjectIdentifierList", + "traits": { + "smithy.api#documentation": "

The object to delete.

\n \n

\n Directory buckets - For directory buckets, an object\n that's composed entirely of whitespace characters is not supported by the DeleteObjects\n API operation. The request will receive a 400 Bad Request error and none of the objects\n in the request will be deleted.

\n
", + "smithy.api#required": {}, + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Object" + } + }, + "Quiet": { + "target": "com.amazonaws.s3#Quiet", + "traits": { + "smithy.api#documentation": "

Element to enable quiet mode for the request. When you add this element, you must set its value to\n true.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for the objects to delete.

" + } + }, + "com.amazonaws.s3#DeleteBucket": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteBucketRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Deletes the S3 bucket. All objects (including all object versions and delete markers) in the bucket\n must be deleted before the bucket itself can be deleted.

\n \n
    \n
  • \n

    \n Directory buckets - If multipart uploads in a\n directory bucket are in progress, you can't delete the bucket until all the in-progress multipart\n uploads are aborted or completed.

    \n
  • \n
  • \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - You must have the\n s3:DeleteBucket permission on the specified bucket in a policy.

    \n
  • \n
  • \n

    \n Directory bucket permissions - You must have the\n s3express:DeleteBucket permission in an IAM identity-based policy instead of a bucket policy.\n Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to DeleteBucket:

\n ", + "smithy.api#examples": [ + { + "title": "To delete a bucket", + "documentation": "The following example deletes the specified bucket.", + "input": { + "Bucket": "forrandall2" + } + } + ], + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#DeleteBucketAnalyticsConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteBucketAnalyticsConfigurationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Deletes an analytics configuration for the bucket (specified by the analytics configuration\n ID).

\n

To use this operation, you must have permissions to perform the\n s3:PutAnalyticsConfiguration action. The bucket owner has this permission by default. The\n bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3\n Resources.

\n

For information about the Amazon S3 analytics feature, see Amazon S3 Analytics – Storage Class\n Analysis.

\n

The following operations are related to DeleteBucketAnalyticsConfiguration:

\n ", + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}?analytics", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#DeleteBucketAnalyticsConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket from which an analytics configuration is deleted.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Id": { + "target": "com.amazonaws.s3#AnalyticsId", + "traits": { + "smithy.api#documentation": "

The ID that identifies the analytics configuration.

", + "smithy.api#httpQuery": "id", + "smithy.api#required": {} + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeleteBucketCors": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteBucketCorsRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Deletes the cors configuration information set for the bucket.

\n

To use this operation, you must have permission to perform the s3:PutBucketCORS action.\n The bucket owner has this permission by default and can grant this permission to others.

\n

For information about cors, see Enabling Cross-Origin Resource Sharing in the\n Amazon S3 User Guide.

\n

\n Related Resources\n

\n ", + "smithy.api#examples": [ + { + "title": "To delete cors configuration on a bucket.", + "documentation": "The following example deletes CORS configuration on a bucket.", + "input": { + "Bucket": "examplebucket" + } + } + ], + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}?cors", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#DeleteBucketCorsRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

Specifies the bucket whose cors configuration is being deleted.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeleteBucketEncryption": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteBucketEncryptionRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

This implementation of the DELETE action resets the default encryption for the bucket as server-side\n encryption with Amazon S3 managed keys (SSE-S3).

\n \n \n \n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The\n s3:PutEncryptionConfiguration permission is required in a policy. The bucket\n owner has this permission by default. The bucket owner can grant this permission to others.\n For more information about permissions, see Permissions Related to Bucket Operations and Managing Access Permissions to Your\n Amazon S3 Resources.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to\n this API operation, you must have the s3express:PutEncryptionConfiguration\n permission in an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.\n For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to DeleteBucketEncryption:

\n ", + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}?encryption", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#DeleteBucketEncryptionRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket containing the server-side encryption configuration to delete.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must also follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide\n

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code \n501 Not Implemented.

\n
", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeleteBucketIntelligentTieringConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteBucketIntelligentTieringConfigurationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Deletes the S3 Intelligent-Tiering configuration from the specified bucket.

\n

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.

\n

The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.

\n

For more information, see Storage class for automatically optimizing frequently and infrequently accessed objects.

\n

Operations related to DeleteBucketIntelligentTieringConfiguration include:

\n ", + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}?intelligent-tiering", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#DeleteBucketIntelligentTieringConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the Amazon S3 bucket whose configuration you want to modify or retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Id": { + "target": "com.amazonaws.s3#IntelligentTieringId", + "traits": { + "smithy.api#documentation": "

The ID used to identify the S3 Intelligent-Tiering configuration.

", + "smithy.api#httpQuery": "id", + "smithy.api#required": {} + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeleteBucketInventoryConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteBucketInventoryConfigurationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Deletes an S3 Inventory configuration (identified by the inventory ID) from the bucket.

\n

To use this operation, you must have permissions to perform the\n s3:PutInventoryConfiguration action. The bucket owner has this permission by default. The\n bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3\n Resources.

\n

For information about the Amazon S3 inventory feature, see Amazon S3 Inventory.

\n

Operations related to DeleteBucketInventoryConfiguration include:

\n ", + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}?inventory", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#DeleteBucketInventoryConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket containing the inventory configuration to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Id": { + "target": "com.amazonaws.s3#InventoryId", + "traits": { + "smithy.api#documentation": "

The ID used to identify the inventory configuration.

", + "smithy.api#httpQuery": "id", + "smithy.api#required": {} + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeleteBucketLifecycle": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteBucketLifecycleRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Deletes the lifecycle configuration from the specified bucket. Amazon S3 removes all the lifecycle\n configuration rules in the lifecycle subresource associated with the bucket. Your objects never expire,\n and Amazon S3 no longer automatically deletes any objects on the basis of rules contained in the deleted\n lifecycle configuration.

\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - By default, all Amazon S3\n resources are private, including buckets, objects, and related subresources (for example,\n lifecycle configuration and website configuration). Only the resource owner (that is, the\n Amazon Web Services account that created it) can access the resource. The resource owner can optionally\n grant access permissions to others by writing an access policy. For this operation, a user\n must have the s3:PutLifecycleConfiguration permission.

    \n

    For more information about permissions, see Managing Access Permissions to Your\n Amazon S3 Resources.

    \n
  • \n
\n
    \n
  • \n

    \n Directory bucket permissions - You must have the\n s3express:PutLifecycleConfiguration permission in an IAM identity-based policy\n to use this operation. Cross-account access to this API operation isn't supported. The\n resource owner can optionally grant access permissions to others by creating a role or user\n for them as long as they are within the same account as the owner and resource.

    \n

    For more information about directory bucket policies and permissions, see Authorizing Regional endpoint APIs with IAM in the Amazon S3 User\n Guide.

    \n \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

    \n
    \n
  • \n
\n
\n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is\n s3express-control.region.amazonaws.com.

\n
\n
\n

For more information about the object expiration, see Elements to\n Describe Lifecycle Actions.

\n

Related actions include:

\n ", + "smithy.api#examples": [ + { + "title": "To delete lifecycle configuration on a bucket.", + "documentation": "The following example deletes lifecycle configuration on a bucket.", + "input": { + "Bucket": "examplebucket" + } + } + ], + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}?lifecycle", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#DeleteBucketLifecycleRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name of the lifecycle to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

This parameter applies to general purpose buckets only. It is not supported for directory bucket\n lifecycle configurations.

\n
", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeleteBucketMetadataConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteBucketMetadataConfigurationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Deletes an S3 Metadata configuration from a general purpose bucket. For more information, see\n Accelerating\n data discovery with S3 Metadata in the Amazon S3 User Guide.

\n \n

You can use the V2 DeleteBucketMetadataConfiguration API operation with V1 or V2 \n metadata configurations. However, if you try to use the V1 \n DeleteBucketMetadataTableConfiguration API operation with V2 configurations, you\n will receive an HTTP 405 Method Not Allowed error.

\n
\n
\n
Permissions
\n
\n

To use this operation, you must have the\n s3:DeleteBucketMetadataTableConfiguration permission. For more information, see\n Setting up permissions for configuring metadata tables in the\n Amazon S3 User Guide.

\n \n

The IAM policy action name is the same for the V1 and V2 API operations.

\n
\n
\n
\n

The following operations are related to DeleteBucketMetadataConfiguration:

\n ", + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}?metadataConfiguration", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#DeleteBucketMetadataConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

\n The general purpose bucket that you want to remove the metadata configuration from.\n

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

\n The expected bucket owner of the general purpose bucket that you want to remove the metadata table\n configuration from.\n

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeleteBucketMetadataTableConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteBucketMetadataTableConfigurationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

\n We recommend that you delete your S3 Metadata configurations by using the V2 \n DeleteBucketMetadataTableConfiguration API operation. We no longer recommend using \n the V1 DeleteBucketMetadataTableConfiguration API operation.\n

\n

If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete \n and re-create your configuration by using CreateBucketMetadataConfiguration so that you can expire journal table records and create \n a live inventory table.

\n
\n

Deletes a V1 S3 Metadata configuration from a general purpose bucket. For more information, see\n Accelerating\n data discovery with S3 Metadata in the Amazon S3 User Guide.

\n \n

You can use the V2 DeleteBucketMetadataConfiguration API operation with V1 or V2 \n metadata table configurations. However, if you try to use the V1 \n DeleteBucketMetadataTableConfiguration API operation with V2 configurations, you\n will receive an HTTP 405 Method Not Allowed error.

\n

Make sure that you update your processes to use the new V2 API operations\n (CreateBucketMetadataConfiguration, GetBucketMetadataConfiguration, and\n DeleteBucketMetadataConfiguration) instead of the V1 API operations.

\n
\n
\n
Permissions
\n
\n

To use this operation, you must have the\n s3:DeleteBucketMetadataTableConfiguration permission. For more information, see\n Setting up permissions for configuring metadata tables in the\n Amazon S3 User Guide.

\n
\n
\n

The following operations are related to DeleteBucketMetadataTableConfiguration:

\n ", + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}?metadataTable", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#DeleteBucketMetadataTableConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The general purpose bucket that you want to remove the metadata table configuration from.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The expected bucket owner of the general purpose bucket that you want to remove the metadata table\n configuration from.

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeleteBucketMetricsConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteBucketMetricsConfigurationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Deletes a metrics configuration for the Amazon CloudWatch request metrics (specified by the metrics\n configuration ID) from the bucket. Note that this doesn't include the daily storage metrics.

\n

To use this operation, you must have permissions to perform the\n s3:PutMetricsConfiguration action. The bucket owner has this permission by default. The\n bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3\n Resources.

\n

For information about CloudWatch request metrics for Amazon S3, see Monitoring Metrics with Amazon CloudWatch.

\n

The following operations are related to DeleteBucketMetricsConfiguration:

\n ", + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}?metrics", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#DeleteBucketMetricsConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket containing the metrics configuration to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Id": { + "target": "com.amazonaws.s3#MetricsId", + "traits": { + "smithy.api#documentation": "

The ID used to identify the metrics configuration. The ID has a 64 character limit and can only\n contain letters, numbers, periods, dashes, and underscores.

", + "smithy.api#httpQuery": "id", + "smithy.api#required": {} + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeleteBucketOwnershipControls": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteBucketOwnershipControlsRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Removes OwnershipControls for an Amazon S3 bucket. To use this operation, you must have the\n s3:PutBucketOwnershipControls permission. For more information about Amazon S3 permissions,\n see Specifying\n Permissions in a Policy.

\n

For information about Amazon S3 Object Ownership, see Using Object Ownership.

\n

The following operations are related to DeleteBucketOwnershipControls:

\n ", + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}?ownershipControls", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#DeleteBucketOwnershipControlsRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The Amazon S3 bucket whose OwnershipControls you want to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeleteBucketPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteBucketPolicyRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "

Deletes the policy of a specified bucket.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n

If you are using an identity other than the root user of the Amazon Web Services account that owns the\n bucket, the calling identity must both have the DeleteBucketPolicy permissions on the\n specified bucket and belong to the bucket owner's account in order to use this operation.

\n

If you don't have DeleteBucketPolicy permissions, Amazon S3 returns a 403 Access\n Denied error. If you have the correct permissions, but you're not using an identity that\n belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not Allowed\n error.

\n \n

To ensure that bucket owners don't inadvertently lock themselves out of their own buckets,\n the root principal in a bucket owner's Amazon Web Services account can perform the\n GetBucketPolicy, PutBucketPolicy, and\n DeleteBucketPolicy API actions, even if their bucket policy explicitly denies the\n root principal's access. Bucket owner root principals can only be blocked from performing these\n API actions by VPC endpoint policies and Amazon Web Services Organizations policies.

\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The\n s3:DeleteBucketPolicy permission is required in a policy. For more information\n about general purpose buckets bucket policies, see Using Bucket Policies and User\n Policies in the Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to\n this API operation, you must have the s3express:DeleteBucketPolicy permission in\n an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.\n For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to DeleteBucketPolicy\n

\n ", + "smithy.api#examples": [ + { + "title": "To delete bucket policy", + "documentation": "The following example deletes bucket policy on the specified bucket.", + "input": { + "Bucket": "examplebucket" + } + } + ], + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}?policy", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#DeleteBucketPolicyRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must also follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide\n

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code \n501 Not Implemented.

\n
", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeleteBucketReplication": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteBucketReplicationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Deletes the replication configuration from the bucket.

\n

To use this operation, you must have permissions to perform the\n s3:PutReplicationConfiguration action. The bucket owner has these permissions by default\n and can grant it to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3\n Resources.

\n \n

It can take a while for the deletion of a replication configuration to fully propagate.

\n
\n

For information about replication configuration, see Replication in the\n Amazon S3 User Guide.

\n

The following operations are related to DeleteBucketReplication:

\n ", + "smithy.api#examples": [ + { + "title": "To delete bucket replication configuration", + "documentation": "The following example deletes replication configuration set on bucket.", + "input": { + "Bucket": "example" + } + } + ], + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}?replication", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#DeleteBucketReplicationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeleteBucketRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

Specifies the bucket being deleted.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must also follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide\n

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code \n501 Not Implemented.

\n
", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeleteBucketTagging": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteBucketTaggingRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Deletes the tags from the bucket.

\n

To use this operation, you must have permission to perform the s3:PutBucketTagging\n action. By default, the bucket owner has this permission and can grant this permission to others.

\n

The following operations are related to DeleteBucketTagging:

\n ", + "smithy.api#examples": [ + { + "title": "To delete bucket tags", + "documentation": "The following example deletes bucket tags.", + "input": { + "Bucket": "examplebucket" + } + } + ], + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}?tagging", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#DeleteBucketTaggingRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket that has the tag set to be removed.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeleteBucketWebsite": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteBucketWebsiteRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

This action removes the website configuration for a bucket. Amazon S3 returns a 200 OK\n response upon successfully deleting a website configuration on the specified bucket. You will get a\n 200 OK response if the website configuration you are trying to delete does not exist on\n the bucket. Amazon S3 returns a 404 response if the bucket specified in the request does not\n exist.

\n

This DELETE action requires the S3:DeleteBucketWebsite permission. By default, only the\n bucket owner can delete the website configuration attached to a bucket. However, bucket owners can grant\n other users permission to delete the website configuration by writing a bucket policy granting them the\n S3:DeleteBucketWebsite permission.

\n

For more information about hosting websites, see Hosting Websites on Amazon S3.

\n

The following operations are related to DeleteBucketWebsite:

\n ", + "smithy.api#examples": [ + { + "title": "To delete bucket website configuration", + "documentation": "The following example deletes bucket website configuration.", + "input": { + "Bucket": "examplebucket" + } + } + ], + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}?website", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#DeleteBucketWebsiteRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name for which you want to remove the website configuration.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeleteMarker": { + "type": "boolean" + }, + "com.amazonaws.s3#DeleteMarkerEntry": { + "type": "structure", + "members": { + "Owner": { + "target": "com.amazonaws.s3#Owner", + "traits": { + "smithy.api#documentation": "

The account that created the delete marker.

" + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The object key.

" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

Version ID of an object.

" + } + }, + "IsLatest": { + "target": "com.amazonaws.s3#IsLatest", + "traits": { + "smithy.api#documentation": "

Specifies whether the object is (true) or is not (false) the latest version of an object.

" + } + }, + "LastModified": { + "target": "com.amazonaws.s3#LastModified", + "traits": { + "smithy.api#documentation": "

Date and time when the object was last modified.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about the delete marker.

" + } + }, + "com.amazonaws.s3#DeleteMarkerReplication": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3#DeleteMarkerReplicationStatus", + "traits": { + "smithy.api#documentation": "

Indicates whether to replicate delete markers.

\n \n

Indicates whether to replicate delete markers.

\n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies whether Amazon S3 replicates delete markers. If you specify a Filter in your\n replication configuration, you must also include a DeleteMarkerReplication element. If your\n Filter includes a Tag element, the DeleteMarkerReplication\n Status must be set to Disabled, because Amazon S3 does not support replicating delete markers\n for tag-based rules. For an example configuration, see Basic Rule\n Configuration.

\n

For more information about delete marker replication, see Basic Rule Configuration.

\n \n

If you are using an earlier version of the replication configuration, Amazon S3 handles replication of\n delete markers differently. For more information, see Backward Compatibility.

\n
" + } + }, + "com.amazonaws.s3#DeleteMarkerReplicationStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.s3#DeleteMarkerVersionId": { + "type": "string" + }, + "com.amazonaws.s3#DeleteMarkers": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#DeleteMarkerEntry" + } + }, + "com.amazonaws.s3#DeleteObject": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteObjectRequest" + }, + "output": { + "target": "com.amazonaws.s3#DeleteObjectOutput" + }, + "traits": { + "smithy.api#documentation": "

Removes an object from a bucket. The behavior depends on the bucket's versioning state:

\n
    \n
  • \n

    If bucket versioning is not enabled, the operation permanently deletes the object.

    \n
  • \n
  • \n

    If bucket versioning is enabled, the operation inserts a delete marker, which becomes the\n current version of the object. To permanently delete an object in a versioned bucket, you must\n include the object’s versionId in the request. For more information about\n versioning-enabled buckets, see Deleting object versions from a\n versioning-enabled bucket.

    \n
  • \n
  • \n

    If bucket versioning is suspended, the operation removes the object that has a null\n versionId, if there is one, and inserts a delete marker that becomes the current\n version of the object. If there isn't an object with a null versionId, and all versions\n of the object have a versionId, Amazon S3 does not remove the object and only inserts a\n delete marker. To permanently delete an object that has a versionId, you must include\n the object’s versionId in the request. For more information about versioning-suspended\n buckets, see Deleting\n objects from versioning-suspended buckets.

    \n
  • \n
\n \n
    \n
  • \n

    \n Directory buckets - S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the null value of the version ID is supported by directory buckets.\n You can only specify null to the versionId query parameter in the\n request.

    \n
  • \n
  • \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n

To remove a specific version, you must use the versionId query parameter. Using this\n query parameter permanently deletes the version. If the object deleted is a delete marker, Amazon S3 sets the\n response header x-amz-delete-marker to true.

\n

If the object you want to delete is in a bucket where the bucket versioning configuration is MFA\n Delete enabled, you must include the x-amz-mfa request header in the DELETE\n versionId request. Requests that include x-amz-mfa must use HTTPS. For more\n information about MFA Delete, see Using MFA Delete in the Amazon S3 User\n Guide. To see sample requests that use versioning, see Sample Request.

\n \n

\n Directory buckets - MFA delete is not supported by directory buckets.

\n
\n

You can delete objects by explicitly calling DELETE Object or calling (PutBucketLifecycle) to enable Amazon S3 to\n remove them for you. If you want to block users or accounts from removing or deleting objects from your\n bucket, you must deny them the s3:DeleteObject, s3:DeleteObjectVersion, and\n s3:PutLifeCycleConfiguration actions.

\n \n

\n Directory buckets -\n S3 Lifecycle is not supported by directory buckets.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The following\n permissions are required in your policies when your DeleteObjects request\n includes specific headers.

    \n
      \n
    • \n

      \n \n s3:DeleteObject\n - To delete an\n object from a bucket, you must always have the s3:DeleteObject\n permission.

      \n
    • \n
    • \n

      \n \n s3:DeleteObjectVersion\n - To delete a specific version of an object from a versioning-enabled\n bucket, you must have the s3:DeleteObjectVersion permission.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following action is related to DeleteObject:

\n ", + "smithy.api#examples": [ + { + "title": "To delete an object (from a non-versioned bucket)", + "documentation": "The following example deletes an object from a non-versioned bucket.", + "input": { + "Bucket": "ExampleBucket", + "Key": "HappyFace.jpg" + } + }, + { + "title": "To delete an object", + "documentation": "The following example deletes an object from an S3 bucket.", + "input": { + "Bucket": "examplebucket", + "Key": "objectkey.jpg" + }, + "output": {} + } + ], + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}/{Key+}?x-id=DeleteObject", + "code": 204 + } + } + }, + "com.amazonaws.s3#DeleteObjectOutput": { + "type": "structure", + "members": { + "DeleteMarker": { + "target": "com.amazonaws.s3#DeleteMarker", + "traits": { + "smithy.api#documentation": "

Indicates whether the specified object version that was permanently deleted was (true) or was not\n (false) a delete marker before deletion. In a simple DELETE, this header indicates whether (true) or not\n (false) the current version of the object is a delete marker. To learn more about delete markers, see\n Working with delete\n markers.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-delete-marker" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

Returns the version ID of the delete marker created as a result of the DELETE operation.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-version-id" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#DeleteObjectRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name of the bucket containing the object.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Key name of the object to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Key" + } + } + }, + "MFA": { + "target": "com.amazonaws.s3#MFA", + "traits": { + "smithy.api#documentation": "

The concatenation of the authentication device's serial number, a space, and the value that is\n displayed on your authentication device. Required to permanently delete a versioned object if versioning\n is configured with MFA delete enabled.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-mfa" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

Version ID used to reference a specific version of the object.

\n \n

For directory buckets in this API operation, only the null value of the version ID is supported.

\n
", + "smithy.api#httpQuery": "versionId" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "BypassGovernanceRetention": { + "target": "com.amazonaws.s3#BypassGovernanceRetention", + "traits": { + "smithy.api#documentation": "

Indicates whether S3 Object Lock should bypass Governance-mode restrictions to process this\n operation. To use this header, you must have the s3:BypassGovernanceRetention\n permission.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-bypass-governance-retention" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "IfMatch": { + "target": "com.amazonaws.s3#IfMatch", + "traits": { + "smithy.api#documentation": "

The If-Match header field makes the request method conditional on ETags. If the ETag\n value does not match, the operation returns a 412 Precondition Failed error. If the ETag\n matches or if the object doesn't exist, the operation will return a 204 Success (No Content)\n response.

\n

For more information about conditional requests, see RFC 7232.

\n \n

This functionality is only supported for directory buckets.

\n
", + "smithy.api#httpHeader": "If-Match" + } + }, + "IfMatchLastModifiedTime": { + "target": "com.amazonaws.s3#IfMatchLastModifiedTime", + "traits": { + "smithy.api#documentation": "

If present, the object is deleted only if its modification times matches the provided\n Timestamp. If the Timestamp values do not match, the operation returns a\n 412 Precondition Failed error. If the Timestamp matches or if the object\n doesn’t exist, the operation returns a 204 Success (No Content) response.

\n \n

This functionality is only supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-if-match-last-modified-time" + } + }, + "IfMatchSize": { + "target": "com.amazonaws.s3#IfMatchSize", + "traits": { + "smithy.api#documentation": "

If present, the object is deleted only if its size matches the provided size in bytes. If the\n Size value does not match, the operation returns a 412 Precondition Failed\n error. If the Size matches or if the object doesn’t exist, the operation returns a\n 204 Success (No Content) response.

\n \n

This functionality is only supported for directory buckets.

\n
\n \n

You can use the If-Match, x-amz-if-match-last-modified-time and\n x-amz-if-match-size conditional headers in conjunction with each-other or\n individually.

\n
", + "smithy.api#httpHeader": "x-amz-if-match-size" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeleteObjectTagging": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteObjectTaggingRequest" + }, + "output": { + "target": "com.amazonaws.s3#DeleteObjectTaggingOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Removes the entire tag set from the specified object. For more information about managing object\n tags, see Object\n Tagging.

\n

To use this operation, you must have permission to perform the s3:DeleteObjectTagging\n action.

\n

To delete tags of a specific object version, add the versionId query parameter in the\n request. You will need permission for the s3:DeleteObjectVersionTagging action.

\n

The following operations are related to DeleteObjectTagging:

\n ", + "smithy.api#examples": [ + { + "title": "To remove tag set from an object", + "documentation": "The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the operation removes tag set from the latest object version.", + "input": { + "Bucket": "examplebucket", + "Key": "HappyFace.jpg" + }, + "output": { + "VersionId": "null" + } + }, + { + "title": "To remove tag set from an object version", + "documentation": "The following example removes tag set associated with the specified object version. The request specifies both the object key and object version.", + "input": { + "Bucket": "examplebucket", + "Key": "HappyFace.jpg", + "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" + }, + "output": { + "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" + } + } + ], + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}/{Key+}?tagging", + "code": 204 + } + } + }, + "com.amazonaws.s3#DeleteObjectTaggingOutput": { + "type": "structure", + "members": { + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

The versionId of the object the tag-set was removed from.

", + "smithy.api#httpHeader": "x-amz-version-id" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#DeleteObjectTaggingRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name containing the objects from which to remove the tags.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The key that identifies the object in the bucket from which to remove all tags.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

The versionId of the object that the tag-set will be removed from.

", + "smithy.api#httpQuery": "versionId" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeleteObjects": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeleteObjectsRequest" + }, + "output": { + "target": "com.amazonaws.s3#DeleteObjectsOutput" + }, + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "

This operation enables you to delete multiple objects from a bucket using a single HTTP request. If\n you know the object keys that you want to delete, then this operation provides a suitable alternative to\n sending individual delete requests, reducing per-request overhead.

\n

The request can contain a list of up to 1,000 keys that you want to delete. In the XML, you provide\n the object key names, and optionally, version IDs if you want to delete a specific version of the object\n from a versioning-enabled bucket. For each key, Amazon S3 performs a delete operation and returns the result\n of that delete, success or failure, in the response. If the object specified in the request isn't found,\n Amazon S3 confirms the deletion by returning the result as deleted.

\n \n
    \n
  • \n

    \n Directory buckets -\n S3 Versioning isn't enabled and supported for directory buckets.

    \n
  • \n
  • \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n

The operation supports two modes for the response: verbose and quiet. By default, the operation uses\n verbose mode in which the response includes the result of deletion of each key in your request. In quiet\n mode the response includes only keys where the delete operation encountered an error. For a successful\n deletion in a quiet mode, the operation does not return any information about the delete in the response\n body.

\n

When performing this action on an MFA Delete enabled bucket, that attempts to delete any versioned\n objects, you must include an MFA token. If you do not provide one, the entire request will fail, even if\n there are non-versioned objects you are trying to delete. If you provide an invalid token, whether there\n are versioned keys in the request or not, the entire Multi-Object Delete request will fail. For\n information about MFA Delete, see MFA Delete in the\n Amazon S3 User Guide.

\n \n

\n Directory buckets - MFA delete is not supported by directory buckets.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The following\n permissions are required in your policies when your DeleteObjects request\n includes specific headers.

    \n
      \n
    • \n

      \n \n s3:DeleteObject\n - To delete an\n object from a bucket, you must always specify the s3:DeleteObject\n permission.

      \n
    • \n
    • \n

      \n \n s3:DeleteObjectVersion\n - To delete a specific version of an object from a versioning-enabled\n bucket, you must specify the s3:DeleteObjectVersion permission.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
Content-MD5 request header
\n
\n
    \n
  • \n

    \n General purpose bucket - The Content-MD5 request header\n is required for all Multi-Object Delete requests. Amazon S3 uses the header value to ensure that\n your request body has not been altered in transit.

    \n
  • \n
  • \n

    \n Directory bucket - The Content-MD5 request header\n or a additional checksum request header (including x-amz-checksum-crc32,\n x-amz-checksum-crc32c, x-amz-checksum-sha1, or\n x-amz-checksum-sha256) is required for all Multi-Object Delete requests.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to DeleteObjects:

\n ", + "smithy.api#examples": [ + { + "title": "To delete multiple object versions from a versioned bucket", + "documentation": "The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object versions and returns the key and versions of deleted objects in the response.", + "input": { + "Bucket": "examplebucket", + "Delete": { + "Objects": [ { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "Key": "HappyFace.jpg", + "VersionId": "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b" }, { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] + "Key": "HappyFace.jpg", + "VersionId": "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd" } - ], - "endpoint": { - "url": "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + ], + "Quiet": false + } + }, + "output": { + "Deleted": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "VersionId": "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd", + "Key": "HappyFace.jpg" }, { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] - } - ], - "rules": [ + "VersionId": "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b", + "Key": "HappyFace.jpg" + } + ] + } + }, + { + "title": "To delete multiple objects from a versioned bucket", + "documentation": "The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.", + "input": { + "Bucket": "examplebucket", + "Delete": { + "Objects": [ { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-east-1" - ] - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "Key": "objectkey1" }, { - "conditions": [], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "Key": "objectkey2" } - ], - "type": "tree" - }, + ], + "Quiet": false + } + }, + "output": { + "Deleted": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "DeleteMarkerVersionId": "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F", + "Key": "objectkey1", + "DeleteMarker": true }, { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + "DeleteMarkerVersionId": "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt", + "Key": "objectkey2", + "DeleteMarker": true + } + ] + } + } + ], + "smithy.api#http": { + "method": "POST", + "uri": "/{Bucket}?delete", + "code": 200 + } + } + }, + "com.amazonaws.s3#DeleteObjectsOutput": { + "type": "structure", + "members": { + "Deleted": { + "target": "com.amazonaws.s3#DeletedObjects", + "traits": { + "smithy.api#documentation": "

Container element for a successful delete. It identifies the object that was successfully\n deleted.

", + "smithy.api#xmlFlattened": {} + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } + }, + "Errors": { + "target": "com.amazonaws.s3#Errors", + "traits": { + "smithy.api#documentation": "

Container for a failed delete action that describes the object that Amazon S3 attempted to delete and the\n error it encountered.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Error" + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "DeleteResult" + } + }, + "com.amazonaws.s3#DeleteObjectsRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name containing the objects to delete.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Delete": { + "target": "com.amazonaws.s3#Delete", + "traits": { + "smithy.api#documentation": "

Container for the request.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "Delete" + } + }, + "MFA": { + "target": "com.amazonaws.s3#MFA", + "traits": { + "smithy.api#documentation": "

The concatenation of the authentication device's serial number, a space, and the value that is\n displayed on your authentication device. Required to permanently delete a versioned object if versioning\n is configured with MFA delete enabled.

\n

When performing the DeleteObjects operation on an MFA delete enabled bucket, which\n attempts to delete the specified versioned objects, you must include an MFA token. If you don't provide\n an MFA token, the entire request will fail, even if there are non-versioned objects that you are trying\n to delete. If you provide an invalid token, whether there are versioned object keys in the request or\n not, the entire Multi-Object Delete request will fail. For information about MFA Delete, see MFA\n Delete in the Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-mfa" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "BypassGovernanceRetention": { + "target": "com.amazonaws.s3#BypassGovernanceRetention", + "traits": { + "smithy.api#documentation": "

Specifies whether you want to delete this object even if it has a Governance-type Object Lock in\n place. To use this header, you must have the s3:BypassGovernanceRetention\n permission.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-bypass-governance-retention" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum-algorithm\n or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request.

\n

For the x-amz-checksum-algorithm\n header, replace \n algorithm\n with the supported algorithm from the following list:

\n
    \n
  • \n

    \n CRC32\n

    \n
  • \n
  • \n

    \n CRC32C\n

    \n
  • \n
  • \n

    \n CRC64NVME\n

    \n
  • \n
  • \n

    \n SHA1\n

    \n
  • \n
  • \n

    \n SHA256\n

    \n
  • \n
\n

For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If the individual checksum value you provide through x-amz-checksum-algorithm\n doesn't match the checksum algorithm you set through x-amz-sdk-checksum-algorithm, Amazon S3 fails the request with a BadDigest error.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeletePublicAccessBlock": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#DeletePublicAccessBlockRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Removes the PublicAccessBlock configuration for an Amazon S3 bucket. To use this operation,\n you must have the s3:PutBucketPublicAccessBlock permission. For more information about\n permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3\n Resources.

\n

The following operations are related to DeletePublicAccessBlock:

\n ", + "smithy.api#http": { + "method": "DELETE", + "uri": "/{Bucket}?publicAccessBlock", + "code": 204 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#DeletePublicAccessBlockRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The Amazon S3 bucket whose PublicAccessBlock configuration you want to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#DeletedObject": { + "type": "structure", + "members": { + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The name of the deleted object.

" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

The version ID of the deleted object.

\n \n

This functionality is not supported for directory buckets.

\n
" + } + }, + "DeleteMarker": { + "target": "com.amazonaws.s3#DeleteMarker", + "traits": { + "smithy.api#documentation": "

Indicates whether the specified object version that was permanently deleted was (true) or was not\n (false) a delete marker before deletion. In a simple DELETE, this header indicates whether (true) or not\n (false) the current version of the object is a delete marker. To learn more about delete markers, see\n Working with delete\n markers.

\n \n

This functionality is not supported for directory buckets.

\n
" + } + }, + "DeleteMarkerVersionId": { + "target": "com.amazonaws.s3#DeleteMarkerVersionId", + "traits": { + "smithy.api#documentation": "

The version ID of the delete marker created as a result of the DELETE operation. If you delete a\n specific object version, the value returned by this header is the version ID of the object version\n deleted.

\n \n

This functionality is not supported for directory buckets.

\n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about the deleted object.

" + } + }, + "com.amazonaws.s3#DeletedObjects": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#DeletedObject" + } + }, + "com.amazonaws.s3#Delimiter": { + "type": "string" + }, + "com.amazonaws.s3#Description": { + "type": "string" + }, + "com.amazonaws.s3#Destination": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the bucket where you want Amazon S3 to store the results.

", + "smithy.api#required": {} + } + }, + "Account": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

Destination bucket owner account ID. In a cross-account scenario, if you direct Amazon S3 to change\n replica ownership to the Amazon Web Services account that owns the destination bucket by specifying the\n AccessControlTranslation property, this is the account ID of the destination bucket\n owner. For more information, see Replication Additional Configuration: Changing\n the Replica Owner in the Amazon S3 User Guide.

" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3#StorageClass", + "traits": { + "smithy.api#documentation": "

The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. By\n default, Amazon S3 uses the storage class of the source object to create the object replica.

\n

For valid values, see the StorageClass element of the PUT Bucket replication action in the\n Amazon S3 API Reference.

\n

\n FSX_OPENZFS is not an accepted value when replicating objects.

" + } + }, + "AccessControlTranslation": { + "target": "com.amazonaws.s3#AccessControlTranslation", + "traits": { + "smithy.api#documentation": "

Specify this only in a cross-account scenario (where source and destination bucket owners are not\n the same), and you want to change replica ownership to the Amazon Web Services account that owns the destination\n bucket. If this is not specified in the replication configuration, the replicas are owned by same\n Amazon Web Services account that owns the source object.

" + } + }, + "EncryptionConfiguration": { + "target": "com.amazonaws.s3#EncryptionConfiguration", + "traits": { + "smithy.api#documentation": "

A container that provides information about encryption. If SourceSelectionCriteria is\n specified, you must specify this element.

" + } + }, + "ReplicationTime": { + "target": "com.amazonaws.s3#ReplicationTime", + "traits": { + "smithy.api#documentation": "

A container specifying S3 Replication Time Control (S3 RTC), including whether S3 RTC is enabled and the time when all\n objects and operations on objects must be replicated. Must be specified together with a\n Metrics block.

" + } + }, + "Metrics": { + "target": "com.amazonaws.s3#Metrics", + "traits": { + "smithy.api#documentation": "

A container specifying replication metrics-related settings enabling replication metrics and\n events.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket\n and S3 Replication Time Control (S3 RTC).

" + } + }, + "com.amazonaws.s3#DestinationResult": { + "type": "structure", + "members": { + "TableBucketType": { + "target": "com.amazonaws.s3#S3TablesBucketType", + "traits": { + "smithy.api#documentation": "

\n The type of the table bucket where the metadata configuration is stored. The aws \n value indicates an Amazon Web Services managed table bucket, and the customer value indicates a \n customer-managed table bucket. V2 metadata configurations are stored in Amazon Web Services managed table \n buckets, and V1 metadata configurations are stored in customer-managed table buckets. \n

" + } + }, + "TableBucketArn": { + "target": "com.amazonaws.s3#S3TablesBucketArn", + "traits": { + "smithy.api#documentation": "

\n The Amazon Resource Name (ARN) of the table bucket where the metadata configuration is stored.\n

" + } + }, + "TableNamespace": { + "target": "com.amazonaws.s3#S3TablesNamespace", + "traits": { + "smithy.api#documentation": "

\n The namespace in the table bucket where the metadata tables for a metadata configuration are \n stored.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

\n The destination information for the S3 Metadata configuration.\n

" + } + }, + "com.amazonaws.s3#DirectoryBucketToken": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1024 + } + } + }, + "com.amazonaws.s3#DisplayName": { + "type": "string" + }, + "com.amazonaws.s3#ETag": { + "type": "string" + }, + "com.amazonaws.s3#EmailAddress": { + "type": "string" + }, + "com.amazonaws.s3#EnableRequestProgress": { + "type": "boolean" + }, + "com.amazonaws.s3#EncodingType": { + "type": "enum", + "members": { + "url": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "url" + } + } + }, + "traits": { + "smithy.api#documentation": "

Encoding type used by Amazon S3 to encode the object keys in the response. Responses are\n encoded only in UTF-8. An object key can contain any Unicode character. However, the XML 1.0 parser\n can't parse certain characters, such as characters with an ASCII value from 0 to 10. For characters that\n aren't supported in XML 1.0, you can add this parameter to request that Amazon S3 encode the keys in the\n response. For more information about characters to avoid in object key names, see Object key\n naming guidelines.

\n \n

When using the URL encoding type, non-ASCII characters that are used in an object's key name will\n be percent-encoded according to UTF-8 code values. For example, the object\n test_file(3).png will appear as test_file%283%29.png.

\n
" + } + }, + "com.amazonaws.s3#Encryption": { + "type": "structure", + "members": { + "EncryptionType": { + "target": "com.amazonaws.s3#ServerSideEncryption", + "traits": { + "smithy.api#documentation": "

The server-side encryption algorithm used when storing job results in Amazon S3 (for example, AES256,\n aws:kms).

", + "smithy.api#required": {} + } + }, + "KMSKeyId": { + "target": "com.amazonaws.s3#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

If the encryption type is aws:kms, this optional value specifies the ID of the\n symmetric encryption customer managed key to use for encryption of job results. Amazon S3 only supports symmetric\n encryption KMS keys. For more information, see Asymmetric keys in KMS in the\n Amazon Web Services Key Management Service Developer Guide.

" + } + }, + "KMSContext": { + "target": "com.amazonaws.s3#KMSContext", + "traits": { + "smithy.api#documentation": "

If the encryption type is aws:kms, this optional value can be used to specify the\n encryption context for the restore results.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the type of server-side encryption used.

" + } + }, + "com.amazonaws.s3#EncryptionConfiguration": { + "type": "structure", + "members": { + "ReplicaKmsKeyID": { + "target": "com.amazonaws.s3#ReplicaKmsKeyID", + "traits": { + "smithy.api#documentation": "

Specifies the ID (Key ARN or Alias ARN) of the customer managed Amazon Web Services KMS key stored in Amazon Web Services Key\n Management Service (KMS) for the destination bucket. Amazon S3 uses this key to encrypt replica objects. Amazon S3\n only supports symmetric encryption KMS keys. For more information, see Asymmetric keys in Amazon Web Services KMS in the\n Amazon Web Services Key Management Service Developer Guide.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated\n objects.

\n \n

If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key\n ARN. If you use a KMS key alias instead, then KMS resolves the key within the requester’s account.\n This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and\n not the bucket owner.

\n
" + } + }, + "com.amazonaws.s3#EncryptionTypeMismatch": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

The existing object was created with a different encryption type. Subsequent write requests must\n include the appropriate encryption parameters in the request or while creating the session.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.s3#End": { + "type": "long" + }, + "com.amazonaws.s3#EndEvent": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

A message that indicates the request is complete and no more messages will be sent. You should not\n assume that the request is complete until the client receives an EndEvent.

" + } + }, + "com.amazonaws.s3#Error": { + "type": "structure", + "members": { + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The error key.

" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

The version ID of the error.

\n \n

This functionality is not supported for directory buckets.

\n
" + } + }, + "Code": { + "target": "com.amazonaws.s3#Code", + "traits": { + "smithy.api#documentation": "

The error code is a string that uniquely identifies an error condition. It is meant to be read and\n understood by programs that detect and handle errors by type. The following is a list of Amazon S3 error\n codes. For more information, see Error responses.

\n
    \n
  • \n
      \n
    • \n

      \n Code: AccessDenied

      \n
    • \n
    • \n

      \n Description: Access Denied

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: AccountProblem

      \n
    • \n
    • \n

      \n Description: There is a problem with your Amazon Web Services account that prevents\n the action from completing successfully. Contact Amazon Web Services Support for further assistance.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: AllAccessDisabled

      \n
    • \n
    • \n

      \n Description: All access to this Amazon S3 resource has been disabled.\n Contact Amazon Web Services Support for further assistance.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: AmbiguousGrantByEmailAddress

      \n
    • \n
    • \n

      \n Description: The email address you provided is associated with more\n than one account.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: AuthorizationHeaderMalformed

      \n
    • \n
    • \n

      \n Description: The authorization header you provided is invalid.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n HTTP Status Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: BadDigest

      \n
    • \n
    • \n

      \n Description: The Content-MD5 you specified did not match what we\n received.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: BucketAlreadyExists

      \n
    • \n
    • \n

      \n Description: The requested bucket name is not available. The bucket\n namespace is shared by all users of the system. Please select a different name and try\n again.

      \n
    • \n
    • \n

      \n HTTP Status Code: 409 Conflict

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: BucketAlreadyOwnedByYou

      \n
    • \n
    • \n

      \n Description: The bucket you tried to create already exists, and you own\n it. Amazon S3 returns this error in all Amazon Web Services Regions except in the North Virginia Region. For legacy\n compatibility, if you re-create an existing bucket that you already own in the North Virginia\n Region, Amazon S3 returns 200 OK and resets the bucket access control lists (ACLs).

      \n
    • \n
    • \n

      \n Code: 409 Conflict (in all Regions except the North Virginia Region)\n

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: BucketNotEmpty

      \n
    • \n
    • \n

      \n Description: The bucket you tried to delete is not empty.

      \n
    • \n
    • \n

      \n HTTP Status Code: 409 Conflict

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: CredentialsNotSupported

      \n
    • \n
    • \n

      \n Description: This request does not support credentials.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: CrossLocationLoggingProhibited

      \n
    • \n
    • \n

      \n Description: Cross-location logging not allowed. Buckets in one\n geographic location cannot log information to a bucket in another location.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: EntityTooSmall

      \n
    • \n
    • \n

      \n Description: Your proposed upload is smaller than the minimum allowed\n object size.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: EntityTooLarge

      \n
    • \n
    • \n

      \n Description: Your proposed upload exceeds the maximum allowed object\n size.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: ExpiredToken

      \n
    • \n
    • \n

      \n Description: The provided token has expired.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: IllegalVersioningConfigurationException

      \n
    • \n
    • \n

      \n Description: Indicates that the versioning configuration specified in\n the request is invalid.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: IncompleteBody

      \n
    • \n
    • \n

      \n Description: You did not provide the number of bytes specified by the\n Content-Length HTTP header

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: IncorrectNumberOfFilesInPostRequest

      \n
    • \n
    • \n

      \n Description: POST requires exactly one file upload per request.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InlineDataTooLarge

      \n
    • \n
    • \n

      \n Description: Inline data exceeds the maximum allowed size.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InternalError

      \n
    • \n
    • \n

      \n Description: We encountered an internal error. Please try again.

      \n
    • \n
    • \n

      \n HTTP Status Code: 500 Internal Server Error

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Server

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidAccessKeyId

      \n
    • \n
    • \n

      \n Description: The Amazon Web Services access key ID you provided does not exist in our\n records.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidAddressingHeader

      \n
    • \n
    • \n

      \n Description: You must specify the Anonymous role.

      \n
    • \n
    • \n

      \n HTTP Status Code: N/A

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidArgument

      \n
    • \n
    • \n

      \n Description: Invalid Argument

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidBucketName

      \n
    • \n
    • \n

      \n Description: The specified bucket is not valid.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidBucketState

      \n
    • \n
    • \n

      \n Description: The request is not valid with the current state of the\n bucket.

      \n
    • \n
    • \n

      \n HTTP Status Code: 409 Conflict

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidDigest

      \n
    • \n
    • \n

      \n Description: The Content-MD5 you specified is not valid.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidEncryptionAlgorithmError

      \n
    • \n
    • \n

      \n Description: The encryption request you specified is not valid. The\n valid value is AES256.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidLocationConstraint

      \n
    • \n
    • \n

      \n Description: The specified location constraint is not valid. For more\n information about Regions, see How to Select a Region for Your\n Buckets.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidObjectState

      \n
    • \n
    • \n

      \n Description: The action is not valid for the current state of the\n object.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidPart

      \n
    • \n
    • \n

      \n Description: One or more of the specified parts could not be found. The\n part might not have been uploaded, or the specified entity tag might not have matched the part's\n entity tag.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidPartOrder

      \n
    • \n
    • \n

      \n Description: The list of parts was not in ascending order. Parts list\n must be specified in order by part number.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidPayer

      \n
    • \n
    • \n

      \n Description: All access to this object has been disabled. Please\n contact Amazon Web Services Support for further assistance.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidPolicyDocument

      \n
    • \n
    • \n

      \n Description: The content of the form does not meet the conditions\n specified in the policy document.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRange

      \n
    • \n
    • \n

      \n Description: The requested range cannot be satisfied.

      \n
    • \n
    • \n

      \n HTTP Status Code: 416 Requested Range Not Satisfiable

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: Please use AWS4-HMAC-SHA256.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: SOAP requests must be made over an HTTPS\n connection.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: Amazon S3 Transfer Acceleration is not supported for buckets\n with non-DNS compliant names.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: Amazon S3 Transfer Acceleration is not supported for buckets\n with periods (.) in their names.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: Amazon S3 Transfer Accelerate endpoint only supports virtual\n style requests.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: Amazon S3 Transfer Accelerate is not configured on this\n bucket.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: Amazon S3 Transfer Accelerate is disabled on this\n bucket.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: Amazon S3 Transfer Acceleration is not supported on this\n bucket. Contact Amazon Web Services Support for more information.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: Amazon S3 Transfer Acceleration cannot be enabled on this\n bucket. Contact Amazon Web Services Support for more information.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidSecurity

      \n
    • \n
    • \n

      \n Description: The provided security credentials are not valid.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidSOAPRequest

      \n
    • \n
    • \n

      \n Description: The SOAP request body is invalid.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidStorageClass

      \n
    • \n
    • \n

      \n Description: The storage class you specified is not valid.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidTargetBucketForLogging

      \n
    • \n
    • \n

      \n Description: The target bucket for logging does not exist, is not owned\n by you, or does not have the appropriate grants for the log-delivery group.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidToken

      \n
    • \n
    • \n

      \n Description: The provided token is malformed or otherwise\n invalid.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidURI

      \n
    • \n
    • \n

      \n Description: Couldn't parse the specified URI.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: KeyTooLongError

      \n
    • \n
    • \n

      \n Description: Your key is too long.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MalformedACLError

      \n
    • \n
    • \n

      \n Description: The XML you provided was not well-formed or did not\n validate against our published schema.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MalformedPOSTRequest

      \n
    • \n
    • \n

      \n Description: The body of your POST request is not well-formed\n multipart/form-data.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MalformedXML

      \n
    • \n
    • \n

      \n Description: This happens when the user sends malformed XML (XML that\n doesn't conform to the published XSD) for the configuration. The error message is, \"The XML you\n provided was not well-formed or did not validate against our published schema.\"

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MaxMessageLengthExceeded

      \n
    • \n
    • \n

      \n Description: Your request was too big.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MaxPostPreDataLengthExceededError

      \n
    • \n
    • \n

      \n Description: Your POST request fields preceding the upload file were\n too large.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MetadataTooLarge

      \n
    • \n
    • \n

      \n Description: Your metadata headers exceed the maximum allowed metadata\n size.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MethodNotAllowed

      \n
    • \n
    • \n

      \n Description: The specified method is not allowed against this\n resource.

      \n
    • \n
    • \n

      \n HTTP Status Code: 405 Method Not Allowed

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MissingAttachment

      \n
    • \n
    • \n

      \n Description: A SOAP attachment was expected, but none were\n found.

      \n
    • \n
    • \n

      \n HTTP Status Code: N/A

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MissingContentLength

      \n
    • \n
    • \n

      \n Description: You must provide the Content-Length HTTP header.

      \n
    • \n
    • \n

      \n HTTP Status Code: 411 Length Required

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MissingRequestBodyError

      \n
    • \n
    • \n

      \n Description: This happens when the user sends an empty XML document as\n a request. The error message is, \"Request body is empty.\"

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MissingSecurityElement

      \n
    • \n
    • \n

      \n Description: The SOAP 1.1 request is missing a security element.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MissingSecurityHeader

      \n
    • \n
    • \n

      \n Description: Your request is missing a required header.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NoLoggingStatusForKey

      \n
    • \n
    • \n

      \n Description: There is no such thing as a logging status subresource for\n a key.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NoSuchBucket

      \n
    • \n
    • \n

      \n Description: The specified bucket does not exist.

      \n
    • \n
    • \n

      \n HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NoSuchBucketPolicy

      \n
    • \n
    • \n

      \n Description: The specified bucket does not have a bucket policy.

      \n
    • \n
    • \n

      \n HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NoSuchKey

      \n
    • \n
    • \n

      \n Description: The specified key does not exist.

      \n
    • \n
    • \n

      \n HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NoSuchLifecycleConfiguration

      \n
    • \n
    • \n

      \n Description: The lifecycle configuration does not exist.

      \n
    • \n
    • \n

      \n HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NoSuchUpload

      \n
    • \n
    • \n

      \n Description: The specified multipart upload does not exist. The upload\n ID might be invalid, or the multipart upload might have been aborted or completed.

      \n
    • \n
    • \n

      \n HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NoSuchVersion

      \n
    • \n
    • \n

      \n Description: Indicates that the version ID specified in the request\n does not match an existing version.

      \n
    • \n
    • \n

      \n HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NotImplemented

      \n
    • \n
    • \n

      \n Description: A header you provided implies functionality that is not\n implemented.

      \n
    • \n
    • \n

      \n HTTP Status Code: 501 Not Implemented

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Server

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NotSignedUp

      \n
    • \n
    • \n

      \n Description: Your account is not signed up for the Amazon S3 service. You\n must sign up before you can use Amazon S3. You can sign up at the following URL: Amazon S3\n

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: OperationAborted

      \n
    • \n
    • \n

      \n Description: A conflicting conditional action is currently in progress\n against this resource. Try again.

      \n
    • \n
    • \n

      \n HTTP Status Code: 409 Conflict

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: PermanentRedirect

      \n
    • \n
    • \n

      \n Description: The bucket you are attempting to access must be addressed\n using the specified endpoint. Send all future requests to this endpoint.

      \n
    • \n
    • \n

      \n HTTP Status Code: 301 Moved Permanently

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: PreconditionFailed

      \n
    • \n
    • \n

      \n Description: At least one of the preconditions you specified did not\n hold.

      \n
    • \n
    • \n

      \n HTTP Status Code: 412 Precondition Failed

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: Redirect

      \n
    • \n
    • \n

      \n Description: Temporary redirect.

      \n
    • \n
    • \n

      \n HTTP Status Code: 307 Moved Temporarily

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: RestoreAlreadyInProgress

      \n
    • \n
    • \n

      \n Description: Object restore is already in progress.

      \n
    • \n
    • \n

      \n HTTP Status Code: 409 Conflict

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: RequestIsNotMultiPartContent

      \n
    • \n
    • \n

      \n Description: Bucket POST must be of the enclosure-type\n multipart/form-data.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: RequestTimeout

      \n
    • \n
    • \n

      \n Description: Your socket connection to the server was not read from or\n written to within the timeout period.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: RequestTimeTooSkewed

      \n
    • \n
    • \n

      \n Description: The difference between the request time and the server's\n time is too large.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: RequestTorrentOfBucketError

      \n
    • \n
    • \n

      \n Description: Requesting the torrent file of a bucket is not\n permitted.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: SignatureDoesNotMatch

      \n
    • \n
    • \n

      \n Description: The request signature we calculated does not match the\n signature you provided. Check your Amazon Web Services secret access key and signing method. For more\n information, see REST Authentication and SOAP Authentication for\n details.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: ServiceUnavailable

      \n
    • \n
    • \n

      \n Description: Service is unable to handle request.

      \n
    • \n
    • \n

      \n HTTP Status Code: 503 Service Unavailable

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Server

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: SlowDown

      \n
    • \n
    • \n

      \n Description: Reduce your request rate.

      \n
    • \n
    • \n

      \n HTTP Status Code: 503 Slow Down

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Server

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: TemporaryRedirect

      \n
    • \n
    • \n

      \n Description: You are being redirected to the bucket while DNS\n updates.

      \n
    • \n
    • \n

      \n HTTP Status Code: 307 Moved Temporarily

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: TokenRefreshRequired

      \n
    • \n
    • \n

      \n Description: The provided token must be refreshed.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: TooManyBuckets

      \n
    • \n
    • \n

      \n Description: You have attempted to create more buckets than\n allowed.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: UnexpectedContent

      \n
    • \n
    • \n

      \n Description: This request does not support content.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: UnresolvableGrantByEmailAddress

      \n
    • \n
    • \n

      \n Description: The email address you provided does not match any account\n on record.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: UserKeyMustBeSpecified

      \n
    • \n
    • \n

      \n Description: The bucket POST must contain the specified field name. If\n it is specified, check the order of the fields.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
\n

" + } + }, + "Message": { + "target": "com.amazonaws.s3#Message", + "traits": { + "smithy.api#documentation": "

The error message contains a generic description of the error condition in English. It is intended\n for a human audience. Simple programs display the message directly to the end user if they encounter an\n error condition they don't know how or don't care to handle. Sophisticated programs with more exhaustive\n error handling and proper internationalization are more likely to ignore the error message.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for all error elements.

" + } + }, + "com.amazonaws.s3#ErrorCode": { + "type": "string" + }, + "com.amazonaws.s3#ErrorDetails": { + "type": "structure", + "members": { + "ErrorCode": { + "target": "com.amazonaws.s3#ErrorCode", + "traits": { + "smithy.api#documentation": "

If the V1 CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was\n unable to create the table, this structure contains the error code. The possible error codes and error\n messages are as follows:

\n
    \n
  • \n

    \n AccessDeniedCreatingResources - You don't have sufficient permissions to create the\n required resources. Make sure that you have s3tables:CreateNamespace,\n s3tables:CreateTable, s3tables:GetTable and\n s3tables:PutTablePolicy permissions, and then try again. To create a new metadata\n table, you must delete the metadata configuration for this bucket, and then create a new metadata\n configuration.

    \n
  • \n
  • \n

    \n AccessDeniedWritingToTable - Unable to write to the metadata table because of\n missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata\n table. To create a new metadata table, you must delete the metadata configuration for this bucket,\n and then create a new metadata configuration.

    \n
  • \n
  • \n

    \n DestinationTableNotFound - The destination table doesn't exist. To create a new\n metadata table, you must delete the metadata configuration for this bucket, and then create a new\n metadata configuration.

    \n
  • \n
  • \n

    \n ServerInternalError - An internal error has occurred. To create a new metadata\n table, you must delete the metadata configuration for this bucket, and then create a new metadata\n configuration.

    \n
  • \n
  • \n

    \n TableAlreadyExists - The table that you specified already exists in the table\n bucket's namespace. Specify a different table name. To create a new metadata table, you must delete\n the metadata configuration for this bucket, and then create a new metadata configuration.

    \n
  • \n
  • \n

    \n TableBucketNotFound - The table bucket that you specified doesn't exist in this\n Amazon Web Services Region and account. Create or choose a different table bucket. To create a new metadata table,\n you must delete the metadata configuration for this bucket, and then create a new metadata\n configuration.

    \n
  • \n
\n

If the V2 CreateBucketMetadataConfiguration request succeeds, but S3 Metadata was\n unable to create the table, this structure contains the error code. The possible error codes and error\n messages are as follows:

\n
    \n
  • \n

    \n AccessDeniedCreatingResources - You don't have sufficient permissions to create \n the required resources. Make sure that you have s3tables:CreateTableBucket, \n s3tables:CreateNamespace, s3tables:CreateTable, \n s3tables:GetTable, s3tables:PutTablePolicy, \n kms:DescribeKey, and s3tables:PutTableEncryption permissions. \n Additionally, ensure that the KMS key used to encrypt the table still exists, is active and \n has a resource policy granting access to the S3 service principals \n 'maintenance.s3tables.amazonaws.com' and 'metadata.s3.amazonaws.com'. \n To create a new metadata table, you must delete the metadata configuration for this bucket, and \n then create a new metadata configuration.

    \n
  • \n
  • \n

    \n AccessDeniedWritingToTable - Unable to write to the metadata table because of\n missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata\n table. To create a new metadata table, you must delete the metadata configuration for this bucket,\n and then create a new metadata configuration.

    \n
  • \n
  • \n

    \n DestinationTableNotFound - The destination table doesn't exist. To create a new\n metadata table, you must delete the metadata configuration for this bucket, and then create a new\n metadata configuration.

    \n
  • \n
  • \n

    \n ServerInternalError - An internal error has occurred. To create a new metadata\n table, you must delete the metadata configuration for this bucket, and then create a new metadata\n configuration.

    \n
  • \n
  • \n

    \n JournalTableAlreadyExists - A journal table already exists in the Amazon Web Services managed table bucket's \n namespace. Delete the journal table, and then try again. To create a new metadata table, you must delete\n the metadata configuration for this bucket, and then create a new metadata configuration.

    \n
  • \n
  • \n

    \n InventoryTableAlreadyExists - An inventory table already exists in the Amazon Web Services managed table \n bucket's namespace. Delete the inventory table, and then try again. To create a new metadata table, you must delete\n the metadata configuration for this bucket, and then create a new metadata configuration.

    \n
  • \n
  • \n

    \n JournalTableNotAvailable - The journal table that the inventory table relies on \n has a FAILED status. An inventory table requires a journal table with an \n ACTIVE status. To create a new journal or inventory table, you must delete the metadata \n configuration for this bucket, along with any journal or inventory tables, and then create a new \n metadata configuration.

    \n
  • \n
  • \n

    \n NoSuchBucket - The specified general purpose bucket does not exist.

    \n
  • \n
" + } + }, + "ErrorMessage": { + "target": "com.amazonaws.s3#ErrorMessage", + "traits": { + "smithy.api#documentation": "

If the V1 CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was\n unable to create the table, this structure contains the error message. The possible error codes and\n error messages are as follows:

\n
    \n
  • \n

    \n AccessDeniedCreatingResources - You don't have sufficient permissions to create the\n required resources. Make sure that you have s3tables:CreateNamespace,\n s3tables:CreateTable, s3tables:GetTable and\n s3tables:PutTablePolicy permissions, and then try again. To create a new metadata\n table, you must delete the metadata configuration for this bucket, and then create a new metadata\n configuration.

    \n
  • \n
  • \n

    \n AccessDeniedWritingToTable - Unable to write to the metadata table because of\n missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata\n table. To create a new metadata table, you must delete the metadata configuration for this bucket,\n and then create a new metadata configuration.

    \n
  • \n
  • \n

    \n DestinationTableNotFound - The destination table doesn't exist. To create a new\n metadata table, you must delete the metadata configuration for this bucket, and then create a new\n metadata configuration.

    \n
  • \n
  • \n

    \n ServerInternalError - An internal error has occurred. To create a new metadata\n table, you must delete the metadata configuration for this bucket, and then create a new metadata\n configuration.

    \n
  • \n
  • \n

    \n TableAlreadyExists - The table that you specified already exists in the table\n bucket's namespace. Specify a different table name. To create a new metadata table, you must delete\n the metadata configuration for this bucket, and then create a new metadata configuration.

    \n
  • \n
  • \n

    \n TableBucketNotFound - The table bucket that you specified doesn't exist in this\n Amazon Web Services Region and account. Create or choose a different table bucket. To create a new metadata table,\n you must delete the metadata configuration for this bucket, and then create a new metadata\n configuration.

    \n
  • \n
\n

If the V2 CreateBucketMetadataConfiguration request succeeds, but S3 Metadata was\n unable to create the table, this structure contains the error code. The possible error codes and error\n messages are as follows:

\n
    \n
  • \n

    \n AccessDeniedCreatingResources - You don't have sufficient permissions to create \n the required resources. Make sure that you have s3tables:CreateTableBucket, \n s3tables:CreateNamespace, s3tables:CreateTable, \n s3tables:GetTable, s3tables:PutTablePolicy, \n kms:DescribeKey, and s3tables:PutTableEncryption permissions. \n Additionally, ensure that the KMS key used to encrypt the table still exists, is active and \n has a resource policy granting access to the S3 service principals \n 'maintenance.s3tables.amazonaws.com' and 'metadata.s3.amazonaws.com'. \n To create a new metadata table, you must delete the metadata configuration for this bucket, and \n then create a new metadata configuration.

    \n
  • \n
  • \n

    \n AccessDeniedWritingToTable - Unable to write to the metadata table because of\n missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new metadata\n table. To create a new metadata table, you must delete the metadata configuration for this bucket,\n and then create a new metadata configuration.

    \n
  • \n
  • \n

    \n DestinationTableNotFound - The destination table doesn't exist. To create a new\n metadata table, you must delete the metadata configuration for this bucket, and then create a new\n metadata configuration.

    \n
  • \n
  • \n

    \n ServerInternalError - An internal error has occurred. To create a new metadata\n table, you must delete the metadata configuration for this bucket, and then create a new metadata\n configuration.

    \n
  • \n
  • \n

    \n JournalTableAlreadyExists - A journal table already exists in the Amazon Web Services managed table bucket's \n namespace. Delete the journal table, and then try again. To create a new metadata table, you must delete\n the metadata configuration for this bucket, and then create a new metadata configuration.

    \n
  • \n
  • \n

    \n InventoryTableAlreadyExists - An inventory table already exists in the Amazon Web Services managed table \n bucket's namespace. Delete the inventory table, and then try again. To create a new metadata table, you must delete\n the metadata configuration for this bucket, and then create a new metadata configuration.

    \n
  • \n
  • \n

    \n JournalTableNotAvailable - The journal table that the inventory table relies on \n has a FAILED status. An inventory table requires a journal table with an \n ACTIVE status. To create a new journal or inventory table, you must delete the metadata \n configuration for this bucket, along with any journal or inventory tables, and then create a new \n metadata configuration.

    \n
  • \n
  • \n

    \n NoSuchBucket - The specified general purpose bucket does not exist.

    \n
  • \n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

If an S3 Metadata V1 CreateBucketMetadataTableConfiguration or V2 \n CreateBucketMetadataConfiguration request succeeds, but S3 Metadata was\n unable to create the table, this structure contains the error code and error message.

\n \n

If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete \n and re-create your configuration by using CreateBucketMetadataConfiguration so that you can expire journal table records and create \n a live inventory table.

\n
" + } + }, + "com.amazonaws.s3#ErrorDocument": { + "type": "structure", + "members": { + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The object key name to use when a 4XX class error occurs.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The error information.

" + } + }, + "com.amazonaws.s3#ErrorMessage": { + "type": "string" + }, + "com.amazonaws.s3#Errors": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#Error" + } + }, + "com.amazonaws.s3#Event": { + "type": "enum", + "members": { + "s3_ReducedRedundancyLostObject": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:ReducedRedundancyLostObject" + } + }, + "s3_ObjectCreated_": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:ObjectCreated:*" + } + }, + "s3_ObjectCreated_Put": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:ObjectCreated:Put" + } + }, + "s3_ObjectCreated_Post": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:ObjectCreated:Post" + } + }, + "s3_ObjectCreated_Copy": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:ObjectCreated:Copy" + } + }, + "s3_ObjectCreated_CompleteMultipartUpload": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:ObjectCreated:CompleteMultipartUpload" + } + }, + "s3_ObjectRemoved_": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:ObjectRemoved:*" + } + }, + "s3_ObjectRemoved_Delete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:ObjectRemoved:Delete" + } + }, + "s3_ObjectRemoved_DeleteMarkerCreated": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:ObjectRemoved:DeleteMarkerCreated" + } + }, + "s3_ObjectRestore_": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:ObjectRestore:*" + } + }, + "s3_ObjectRestore_Post": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:ObjectRestore:Post" + } + }, + "s3_ObjectRestore_Completed": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:ObjectRestore:Completed" + } + }, + "s3_Replication_": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:Replication:*" + } + }, + "s3_Replication_OperationFailedReplication": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:Replication:OperationFailedReplication" + } + }, + "s3_Replication_OperationNotTracked": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:Replication:OperationNotTracked" + } + }, + "s3_Replication_OperationMissedThreshold": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:Replication:OperationMissedThreshold" + } + }, + "s3_Replication_OperationReplicatedAfterThreshold": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:Replication:OperationReplicatedAfterThreshold" + } + }, + "s3_ObjectRestore_Delete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:ObjectRestore:Delete" + } + }, + "s3_LifecycleTransition": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:LifecycleTransition" + } + }, + "s3_IntelligentTiering": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:IntelligentTiering" + } + }, + "s3_ObjectAcl_Put": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:ObjectAcl:Put" + } + }, + "s3_LifecycleExpiration_": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:LifecycleExpiration:*" + } + }, + "s3_LifecycleExpiration_Delete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:LifecycleExpiration:Delete" + } + }, + "s3_LifecycleExpiration_DeleteMarkerCreated": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:LifecycleExpiration:DeleteMarkerCreated" + } + }, + "s3_ObjectTagging_": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:ObjectTagging:*" + } + }, + "s3_ObjectTagging_Put": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:ObjectTagging:Put" + } + }, + "s3_ObjectTagging_Delete": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "s3:ObjectTagging:Delete" + } + } + }, + "traits": { + "smithy.api#documentation": "

The bucket event for which to send notifications.

" + } + }, + "com.amazonaws.s3#EventBridgeConfiguration": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

A container for specifying the configuration for Amazon EventBridge.

" + } + }, + "com.amazonaws.s3#EventList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#Event" + } + }, + "com.amazonaws.s3#ExistingObjectReplication": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3#ExistingObjectReplicationStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether Amazon S3 replicates existing source bucket objects.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Optional configuration to replicate existing source bucket objects.

\n \n

This parameter is no longer supported. To replicate existing objects, see Replicating\n existing objects with S3 Batch Replication in the\n Amazon S3 User Guide.

\n
" + } + }, + "com.amazonaws.s3#ExistingObjectReplicationStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.s3#Expiration": { + "type": "string" + }, + "com.amazonaws.s3#ExpirationState": { + "type": "enum", + "members": { + "ENABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENABLED" + } + }, + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED" + } + } + } + }, + "com.amazonaws.s3#ExpirationStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.s3#ExpiredObjectDeleteMarker": { + "type": "boolean" + }, + "com.amazonaws.s3#Expires": { + "type": "string" + }, + "com.amazonaws.s3#ExposeHeader": { + "type": "string" + }, + "com.amazonaws.s3#ExposeHeaders": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#ExposeHeader" + } + }, + "com.amazonaws.s3#Expression": { + "type": "string" + }, + "com.amazonaws.s3#ExpressionType": { + "type": "enum", + "members": { + "SQL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SQL" + } + } + } + }, + "com.amazonaws.s3#FetchOwner": { + "type": "boolean" + }, + "com.amazonaws.s3#FieldDelimiter": { + "type": "string" + }, + "com.amazonaws.s3#FileHeaderInfo": { + "type": "enum", + "members": { + "USE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "USE" + } + }, + "IGNORE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IGNORE" + } + }, + "NONE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NONE" + } + } + } + }, + "com.amazonaws.s3#FilterRule": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.s3#FilterRuleName", + "traits": { + "smithy.api#documentation": "

The object key name prefix or suffix identifying one or more objects to which the filtering rule\n applies. The maximum length is 1,024 characters. Overlapping prefixes and suffixes are not supported.\n For more information, see Configuring Event Notifications in the Amazon S3 User Guide.

" + } + }, + "Value": { + "target": "com.amazonaws.s3#FilterRuleValue", + "traits": { + "smithy.api#documentation": "

The value that the filter searches for in object key names.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the Amazon S3 object key name to filter on. An object key name is the name assigned to an\n object in your Amazon S3 bucket. You specify whether to filter on the suffix or prefix of the object key\n name. A prefix is a specific string of characters at the beginning of an object key name, which you can\n use to organize objects. For example, you can start the key names of related objects with a prefix, such\n as 2023- or engineering/. Then, you can use FilterRule to find\n objects in a bucket with key names that have the same prefix. A suffix is similar to a prefix, but it is\n at the end of the object key name instead of at the beginning.

" + } + }, + "com.amazonaws.s3#FilterRuleList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#FilterRule" + }, + "traits": { + "smithy.api#documentation": "

A list of containers for the key-value pair that defines the criteria for the filter rule.

" + } + }, + "com.amazonaws.s3#FilterRuleName": { + "type": "enum", + "members": { + "prefix": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "prefix" + } + }, + "suffix": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "suffix" + } + } + } + }, + "com.amazonaws.s3#FilterRuleValue": { + "type": "string" + }, + "com.amazonaws.s3#GetBucketAccelerateConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketAccelerateConfigurationRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketAccelerateConfigurationOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

This implementation of the GET action uses the accelerate subresource to return the\n Transfer Acceleration state of a bucket, which is either Enabled or Suspended.\n Amazon S3 Transfer Acceleration is a bucket-level feature that enables you to perform faster data transfers\n to and from Amazon S3.

\n

To use this operation, you must have permission to perform the\n s3:GetAccelerateConfiguration action. The bucket owner has this permission by default.\n The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to your Amazon S3\n Resources in the Amazon S3 User Guide.

\n

You set the Transfer Acceleration state of an existing bucket to Enabled or\n Suspended by using the PutBucketAccelerateConfiguration operation.

\n

A GET accelerate request does not return a state value for a bucket that has no\n transfer acceleration state. A bucket has no Transfer Acceleration state if a state has never been set\n on the bucket.

\n

For more information about transfer acceleration, see Transfer Acceleration in the\n Amazon S3 User Guide.

\n

The following operations are related to GetBucketAccelerateConfiguration:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?accelerate", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketAccelerateConfigurationOutput": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3#BucketAccelerateStatus", + "traits": { + "smithy.api#documentation": "

The accelerate configuration of the bucket.

" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "AccelerateConfiguration" + } + }, + "com.amazonaws.s3#GetBucketAccelerateConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket for which the accelerate configuration is retrieved.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketAcl": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketAclRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketAclOutput" + }, + "traits": { + "smithy.api#documentation": "\n

End of support notice: Beginning October 1, 2025, Amazon S3 will stop returning DisplayName. Update your applications to use canonical IDs (unique identifier for \n Amazon Web Services accounts), Amazon Web Services account ID (12 digit identifier) or IAM ARNs (full resource naming) as a direct replacement of DisplayName.\n

\n

This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region, \n Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.

\n
\n \n

This operation is not supported for directory buckets.

\n
\n

This implementation of the GET action uses the acl subresource to return\n the access control list (ACL) of a bucket. To use GET to return the ACL of the bucket, you\n must have the READ_ACP access to the bucket. If READ_ACP permission is granted\n to the anonymous user, you can return the ACL of the bucket without using an authorization\n header.

\n

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

\n \n

If your bucket uses the bucket owner enforced setting for S3 Object Ownership, requests to read\n ACLs are still supported and return the bucket-owner-full-control ACL with the owner\n being the account that created the bucket. For more information, see Controlling object ownership and\n disabling ACLs in the Amazon S3 User Guide.

\n
\n

The following operations are related to GetBucketAcl:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?acl", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketAclOutput": { + "type": "structure", + "members": { + "Owner": { + "target": "com.amazonaws.s3#Owner", + "traits": { + "smithy.api#documentation": "

Container for the bucket owner's display name and ID.

" + } + }, + "Grants": { + "target": "com.amazonaws.s3#Grants", + "traits": { + "smithy.api#documentation": "

A list of grants.

", + "smithy.api#xmlName": "AccessControlList" + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "AccessControlPolicy" + } + }, + "com.amazonaws.s3#GetBucketAclRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

Specifies the S3 bucket whose ACL is being requested.

\n

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketAnalyticsConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketAnalyticsConfigurationRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketAnalyticsConfigurationOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

This implementation of the GET action returns an analytics configuration (identified by the\n analytics configuration ID) from the bucket.

\n

To use this operation, you must have permissions to perform the\n s3:GetAnalyticsConfiguration action. The bucket owner has this permission by default. The\n bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3\n Resources in the Amazon S3 User Guide.

\n

For information about Amazon S3 analytics feature, see Amazon S3 Analytics – Storage Class Analysis\n in the Amazon S3 User Guide.

\n

The following operations are related to GetBucketAnalyticsConfiguration:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?analytics&x-id=GetBucketAnalyticsConfiguration", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketAnalyticsConfigurationOutput": { + "type": "structure", + "members": { + "AnalyticsConfiguration": { + "target": "com.amazonaws.s3#AnalyticsConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration and any analyses for the analytics filter.

", + "smithy.api#httpPayload": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#GetBucketAnalyticsConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket from which an analytics configuration is retrieved.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Id": { + "target": "com.amazonaws.s3#AnalyticsId", + "traits": { + "smithy.api#documentation": "

The ID that identifies the analytics configuration.

", + "smithy.api#httpQuery": "id", + "smithy.api#required": {} + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketCors": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketCorsRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketCorsOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the Cross-Origin Resource Sharing (CORS) configuration information set for the\n bucket.

\n

To use this operation, you must have permission to perform the s3:GetBucketCORS\n action. By default, the bucket owner has this permission and can grant it to others.

\n

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

\n

For more information about CORS, see Enabling Cross-Origin Resource Sharing.

\n

The following operations are related to GetBucketCors:

\n ", + "smithy.api#examples": [ + { + "title": "To get cors configuration set on a bucket", + "documentation": "The following example returns cross-origin resource sharing (CORS) configuration set on a bucket.", + "input": { + "Bucket": "examplebucket" + }, + "output": { + "CORSRules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-east-1" - ] - } - ], - "endpoint": { - "url": "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://s3.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, + "AllowedHeaders": [ + "Authorization" + ], + "MaxAgeSeconds": 3000, + "AllowedMethods": [ + "GET" + ], + "AllowedOrigins": [ + "*" + ] + } + ] + } + } + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?cors", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketCorsOutput": { + "type": "structure", + "members": { + "CORSRules": { + "target": "com.amazonaws.s3#CORSRules", + "traits": { + "smithy.api#documentation": "

A set of origins and methods (cross-origin access that you want to allow). You can add up to 100\n rules to the configuration.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "CORSRule" + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "CORSConfiguration" + } + }, + "com.amazonaws.s3#GetBucketCorsRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name for which to get the cors configuration.

\n

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketEncryption": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketEncryptionRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketEncryptionOutput" + }, + "traits": { + "smithy.api#documentation": "

Returns the default encryption configuration for an Amazon S3 bucket. By default, all buckets have a\n default encryption configuration that uses server-side encryption with Amazon S3 managed keys (SSE-S3).

\n \n \n \n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The\n s3:GetEncryptionConfiguration permission is required in a policy. The bucket\n owner has this permission by default. The bucket owner can grant this permission to others.\n For more information about permissions, see Permissions Related to Bucket Operations and Managing Access Permissions to Your\n Amazon S3 Resources.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to\n this API operation, you must have the s3express:GetEncryptionConfiguration\n permission in an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.\n For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to GetBucketEncryption:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?encryption", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketEncryptionOutput": { + "type": "structure", + "members": { + "ServerSideEncryptionConfiguration": { + "target": "com.amazonaws.s3#ServerSideEncryptionConfiguration", + "traits": { + "smithy.api#httpPayload": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#GetBucketEncryptionRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket from which the server-side encryption configuration is retrieved.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must also follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide\n

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code \n501 Not Implemented.

\n
", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketIntelligentTieringConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketIntelligentTieringConfigurationRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketIntelligentTieringConfigurationOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Gets the S3 Intelligent-Tiering configuration from the specified bucket.

\n

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.

\n

The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.

\n

For more information, see Storage class for automatically optimizing frequently and infrequently accessed objects.

\n

Operations related to GetBucketIntelligentTieringConfiguration include:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?intelligent-tiering&x-id=GetBucketIntelligentTieringConfiguration", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketIntelligentTieringConfigurationOutput": { + "type": "structure", + "members": { + "IntelligentTieringConfiguration": { + "target": "com.amazonaws.s3#IntelligentTieringConfiguration", + "traits": { + "smithy.api#documentation": "

Container for S3 Intelligent-Tiering configuration.

", + "smithy.api#httpPayload": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#GetBucketIntelligentTieringConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the Amazon S3 bucket whose configuration you want to modify or retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Id": { + "target": "com.amazonaws.s3#IntelligentTieringId", + "traits": { + "smithy.api#documentation": "

The ID used to identify the S3 Intelligent-Tiering configuration.

", + "smithy.api#httpQuery": "id", + "smithy.api#required": {} + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketInventoryConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketInventoryConfigurationRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketInventoryConfigurationOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns an S3 Inventory configuration (identified by the inventory configuration ID) from the\n bucket.

\n

To use this operation, you must have permissions to perform the\n s3:GetInventoryConfiguration action. The bucket owner has this permission by default and\n can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3\n Resources.

\n

For information about the Amazon S3 inventory feature, see Amazon S3 Inventory.

\n

The following operations are related to GetBucketInventoryConfiguration:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?inventory&x-id=GetBucketInventoryConfiguration", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketInventoryConfigurationOutput": { + "type": "structure", + "members": { + "InventoryConfiguration": { + "target": "com.amazonaws.s3#InventoryConfiguration", + "traits": { + "smithy.api#documentation": "

Specifies the inventory configuration.

", + "smithy.api#httpPayload": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#GetBucketInventoryConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket containing the inventory configuration to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Id": { + "target": "com.amazonaws.s3#InventoryId", + "traits": { + "smithy.api#documentation": "

The ID used to identify the inventory configuration.

", + "smithy.api#httpQuery": "id", + "smithy.api#required": {} + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketLifecycleConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketLifecycleConfigurationRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketLifecycleConfigurationOutput" + }, + "traits": { + "smithy.api#documentation": "

Returns the lifecycle configuration information set on the bucket. For information about lifecycle\n configuration, see Object Lifecycle Management.

\n

Bucket lifecycle configuration now supports specifying a lifecycle rule using an object key name\n prefix, one or more object tags, object size, or any combination of these. Accordingly, this section\n describes the latest API, which is compatible with the new functionality. The previous version of the\n API supported filtering based only on an object key name prefix, which is supported for general purpose\n buckets for backward compatibility. For the related API description, see GetBucketLifecycle.

\n \n

Lifecyle configurations for directory buckets only support expiring objects and cancelling\n multipart uploads. Expiring of versioned objects, transitions and tag filters are not\n supported.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - By default, all Amazon S3\n resources are private, including buckets, objects, and related subresources (for example,\n lifecycle configuration and website configuration). Only the resource owner (that is, the\n Amazon Web Services account that created it) can access the resource. The resource owner can optionally\n grant access permissions to others by writing an access policy. For this operation, a user\n must have the s3:GetLifecycleConfiguration permission.

    \n

    For more information about permissions, see Managing Access Permissions to Your\n Amazon S3 Resources.

    \n
  • \n
\n
    \n
  • \n

    \n Directory bucket permissions - You must have the\n s3express:GetLifecycleConfiguration permission in an IAM identity-based policy\n to use this operation. Cross-account access to this API operation isn't supported. The\n resource owner can optionally grant access permissions to others by creating a role or user\n for them as long as they are within the same account as the owner and resource.

    \n

    For more information about directory bucket policies and permissions, see Authorizing Regional endpoint APIs with IAM in the Amazon S3 User\n Guide.

    \n \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

    \n
    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is\n s3express-control.region.amazonaws.com.

\n
\n
\n

\n GetBucketLifecycleConfiguration has the following special error:

\n
    \n
  • \n

    Error code: NoSuchLifecycleConfiguration\n

    \n
      \n
    • \n

      Description: The lifecycle configuration does not exist.

      \n
    • \n
    • \n

      HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
\n

The following operations are related to GetBucketLifecycleConfiguration:

\n ", + "smithy.api#examples": [ + { + "title": "To get lifecycle configuration on a bucket", + "documentation": "The following example retrieves lifecycle configuration on set on a bucket. ", + "input": { + "Bucket": "examplebucket" + }, + "output": { + "Rules": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "not", - "argv": [ + "Prefix": "TaxDocs", + "Status": "Enabled", + "Transitions": [ { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] + "Days": 365, + "StorageClass": "STANDARD_IA" } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" + ], + "ID": "Rule for TaxDocs/" + } + ] + } + } + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?lifecycle", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketLifecycleConfigurationOutput": { + "type": "structure", + "members": { + "Rules": { + "target": "com.amazonaws.s3#LifecycleRules", + "traits": { + "smithy.api#documentation": "

Container for a lifecycle rule.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Rule" + } + }, + "TransitionDefaultMinimumObjectSize": { + "target": "com.amazonaws.s3#TransitionDefaultMinimumObjectSize", + "traits": { + "smithy.api#documentation": "

Indicates which default minimum object size behavior is applied to the lifecycle\n configuration.

\n \n

This parameter applies to general purpose buckets only. It isn't supported for directory bucket\n lifecycle configurations.

\n
\n
    \n
  • \n

    \n all_storage_classes_128K - Objects smaller than 128 KB will not transition to\n any storage class by default.

    \n
  • \n
  • \n

    \n varies_by_storage_class - Objects smaller than 128 KB will transition to Glacier\n Flexible Retrieval or Glacier Deep Archive storage classes. By default, all other storage classes\n will prevent transitions smaller than 128 KB.

    \n
  • \n
\n

To customize the minimum object size for any transition you can add a filter that specifies a custom\n ObjectSizeGreaterThan or ObjectSizeLessThan in the body of your transition\n rule. Custom filters always take precedence over the default transition behavior.

", + "smithy.api#httpHeader": "x-amz-transition-default-minimum-object-size" + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "LifecycleConfiguration" + } + }, + "com.amazonaws.s3#GetBucketLifecycleConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket for which to get the lifecycle information.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

This parameter applies to general purpose buckets only. It is not supported for directory bucket\n lifecycle configurations.

\n
", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketLocation": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketLocationRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketLocationOutput" + }, + "traits": { + "aws.customizations#s3UnwrappedXmlOutput": {}, + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the Region the bucket resides in. You set the bucket's Region using the\n LocationConstraint request parameter in a CreateBucket request. For more\n information, see CreateBucket.

\n

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

\n \n

We recommend that you use HeadBucket to return the Region that a bucket\n resides in. For backward compatibility, Amazon S3 continues to support GetBucketLocation.

\n
\n

The following operations are related to GetBucketLocation:

\n ", + "smithy.api#examples": [ + { + "title": "To get bucket location", + "documentation": "The following example returns bucket location.", + "input": { + "Bucket": "examplebucket" + }, + "output": { + "LocationConstraint": "us-west-2" + } + } + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?location", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketLocationOutput": { + "type": "structure", + "members": { + "LocationConstraint": { + "target": "com.amazonaws.s3#BucketLocationConstraint", + "traits": { + "smithy.api#documentation": "

Specifies the Region where the bucket resides. For a list of all the Amazon S3 supported location\n constraints by Region, see Regions and Endpoints.

\n

Buckets in Region us-east-1 have a LocationConstraint of null. Buckets\n with a LocationConstraint of EU reside in eu-west-1.

" + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "LocationConstraint" + } + }, + "com.amazonaws.s3#GetBucketLocationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket for which to get the location.

\n

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketLogging": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketLoggingRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketLoggingOutput" + }, + "traits": { + "smithy.api#documentation": "\n

End of support notice: Beginning October 1, 2025, Amazon S3 will stop returning DisplayName. Update your applications to use canonical IDs (unique identifier for \n Amazon Web Services accounts), Amazon Web Services account ID (12 digit identifier) or IAM ARNs (full resource naming) as a direct replacement of DisplayName.\n

\n

This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region, \n Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.

\n
\n \n

This operation is not supported for directory buckets.

\n
\n

Returns the logging status of a bucket and the permissions users have to view and modify that\n status.

\n

The following operations are related to GetBucketLogging:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?logging", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketLoggingOutput": { + "type": "structure", + "members": { + "LoggingEnabled": { + "target": "com.amazonaws.s3#LoggingEnabled" + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "BucketLoggingStatus" + } + }, + "com.amazonaws.s3#GetBucketLoggingRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name for which to get the logging information.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketMetadataConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketMetadataConfigurationRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketMetadataConfigurationOutput" + }, + "traits": { + "smithy.api#documentation": "

Retrieves the S3 Metadata configuration for a general purpose bucket. For more information, see\n Accelerating\n data discovery with S3 Metadata in the Amazon S3 User Guide.

\n \n

You can use the V2 GetBucketMetadataConfiguration API operation with V1 or V2 \n metadata configurations. However, if you try to use the V1 \n GetBucketMetadataTableConfiguration API operation with V2 configurations, you\n will receive an HTTP 405 Method Not Allowed error.

\n
\n
\n
Permissions
\n
\n

To use this operation, you must have the s3:GetBucketMetadataTableConfiguration\n permission. For more information, see Setting up permissions for\n configuring metadata tables in the Amazon S3 User Guide.

\n \n

The IAM policy action name is the same for the V1 and V2 API operations.

\n
\n
\n
\n

The following operations are related to GetBucketMetadataConfiguration:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?metadataConfiguration", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketMetadataConfigurationOutput": { + "type": "structure", + "members": { + "GetBucketMetadataConfigurationResult": { + "target": "com.amazonaws.s3#GetBucketMetadataConfigurationResult", + "traits": { + "smithy.api#documentation": "

\n The metadata configuration for the general purpose bucket.\n

", + "smithy.api#httpPayload": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#GetBucketMetadataConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

\n The general purpose bucket that corresponds to the metadata configuration that you want to\n retrieve.\n

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

\n The expected owner of the general purpose bucket that you want to retrieve the metadata table\n configuration for.\n

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketMetadataConfigurationResult": { + "type": "structure", + "members": { + "MetadataConfigurationResult": { + "target": "com.amazonaws.s3#MetadataConfigurationResult", + "traits": { + "smithy.api#documentation": "

\n The metadata configuration for a general purpose bucket.\n

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

\n The S3 Metadata configuration for a general purpose bucket.\n

" + } + }, + "com.amazonaws.s3#GetBucketMetadataTableConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketMetadataTableConfigurationRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketMetadataTableConfigurationOutput" + }, + "traits": { + "smithy.api#documentation": "\n

\n We recommend that you retrieve your S3 Metadata configurations by using the V2 \n GetBucketMetadataTableConfiguration API operation. We no longer recommend using the V1 \n GetBucketMetadataTableConfiguration API operation.\n

\n

If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete \n and re-create your configuration by using CreateBucketMetadataConfiguration so that you can expire journal table records and create \n a live inventory table.

\n
\n

Retrieves the V1 S3 Metadata configuration for a general purpose bucket. For more information, see\n Accelerating\n data discovery with S3 Metadata in the Amazon S3 User Guide.

\n \n

You can use the V2 GetBucketMetadataConfiguration API operation with V1 or V2 \n metadata table configurations. However, if you try to use the V1 \n GetBucketMetadataTableConfiguration API operation with V2 configurations, you\n will receive an HTTP 405 Method Not Allowed error.

\n

Make sure that you update your processes to use the new V2 API operations\n (CreateBucketMetadataConfiguration, GetBucketMetadataConfiguration, and\n DeleteBucketMetadataConfiguration) instead of the V1 API operations.

\n
\n
\n
Permissions
\n
\n

To use this operation, you must have the s3:GetBucketMetadataTableConfiguration\n permission. For more information, see Setting up permissions for\n configuring metadata tables in the Amazon S3 User Guide.

\n
\n
\n

The following operations are related to GetBucketMetadataTableConfiguration:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?metadataTable", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketMetadataTableConfigurationOutput": { + "type": "structure", + "members": { + "GetBucketMetadataTableConfigurationResult": { + "target": "com.amazonaws.s3#GetBucketMetadataTableConfigurationResult", + "traits": { + "smithy.api#documentation": "

The metadata table configuration for the general purpose bucket.

", + "smithy.api#httpPayload": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#GetBucketMetadataTableConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The general purpose bucket that corresponds to the metadata table configuration that you want to\n retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The expected owner of the general purpose bucket that you want to retrieve the metadata table\n configuration for.

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketMetadataTableConfigurationResult": { + "type": "structure", + "members": { + "MetadataTableConfigurationResult": { + "target": "com.amazonaws.s3#MetadataTableConfigurationResult", + "traits": { + "smithy.api#documentation": "

The V1 S3 Metadata configuration for a general purpose bucket.

", + "smithy.api#required": {} + } + }, + "Status": { + "target": "com.amazonaws.s3#MetadataTableStatus", + "traits": { + "smithy.api#documentation": "

The status of the metadata table. The status values are:

\n
    \n
  • \n

    \n CREATING - The metadata table is in the process of being created in the specified\n table bucket.

    \n
  • \n
  • \n

    \n ACTIVE - The metadata table has been created successfully, and records are being\n delivered to the table.

    \n
  • \n
  • \n

    \n FAILED - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver\n records. See ErrorDetails for details.

    \n
  • \n
", + "smithy.api#required": {} + } + }, + "Error": { + "target": "com.amazonaws.s3#ErrorDetails", + "traits": { + "smithy.api#documentation": "

If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was\n unable to create the table, this structure contains the error code and error message.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The V1 S3 Metadata configuration for a general purpose bucket.

\n \n

If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete \n and re-create your configuration by using CreateBucketMetadataConfiguration so that you can expire journal table records and create \n a live inventory table.

\n
" + } + }, + "com.amazonaws.s3#GetBucketMetricsConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketMetricsConfigurationRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketMetricsConfigurationOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Gets a metrics configuration (specified by the metrics configuration ID) from the bucket. Note that\n this doesn't include the daily storage metrics.

\n

To use this operation, you must have permissions to perform the\n s3:GetMetricsConfiguration action. The bucket owner has this permission by default. The\n bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3\n Resources.

\n

For information about CloudWatch request metrics for Amazon S3, see Monitoring Metrics with Amazon\n CloudWatch.

\n

The following operations are related to GetBucketMetricsConfiguration:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?metrics&x-id=GetBucketMetricsConfiguration", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketMetricsConfigurationOutput": { + "type": "structure", + "members": { + "MetricsConfiguration": { + "target": "com.amazonaws.s3#MetricsConfiguration", + "traits": { + "smithy.api#documentation": "

Specifies the metrics configuration.

", + "smithy.api#httpPayload": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#GetBucketMetricsConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket containing the metrics configuration to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Id": { + "target": "com.amazonaws.s3#MetricsId", + "traits": { + "smithy.api#documentation": "

The ID used to identify the metrics configuration. The ID has a 64 character limit and can only\n contain letters, numbers, periods, dashes, and underscores.

", + "smithy.api#httpQuery": "id", + "smithy.api#required": {} + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketNotificationConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketNotificationConfigurationRequest" + }, + "output": { + "target": "com.amazonaws.s3#NotificationConfiguration" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the notification configuration of a bucket.

\n

If notifications are not enabled on the bucket, the action returns an empty\n NotificationConfiguration element.

\n

By default, you must be the bucket owner to read the notification configuration of a bucket.\n However, the bucket owner can use a bucket policy to grant permission to other users to read this\n configuration with the s3:GetBucketNotification permission.

\n

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

\n

For more information about setting and reading the notification configuration on a bucket, see\n Setting Up Notification\n of Bucket Events. For more information about bucket policies, see Using Bucket Policies.

\n

The following action is related to GetBucketNotification:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?notification", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketNotificationConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket for which to get the notification configuration.

\n

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketOwnershipControls": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketOwnershipControlsRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketOwnershipControlsOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Retrieves OwnershipControls for an Amazon S3 bucket. To use this operation, you must have\n the s3:GetBucketOwnershipControls permission. For more information about Amazon S3 permissions,\n see Specifying\n permissions in a policy.

\n \n

A bucket doesn't have OwnershipControls settings in the following cases:

\n
    \n
  • \n

    The bucket was created before the BucketOwnerEnforced ownership setting was\n introduced and you've never explicitly applied this value

    \n
  • \n
  • \n

    You've manually deleted the bucket ownership control value using the\n DeleteBucketOwnershipControls API operation.

    \n
  • \n
\n

By default, Amazon S3 sets OwnershipControls for all newly created buckets.

\n
\n

For information about Amazon S3 Object Ownership, see Using Object Ownership.

\n

The following operations are related to GetBucketOwnershipControls:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?ownershipControls", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketOwnershipControlsOutput": { + "type": "structure", + "members": { + "OwnershipControls": { + "target": "com.amazonaws.s3#OwnershipControls", + "traits": { + "smithy.api#documentation": "

The OwnershipControls (BucketOwnerEnforced, BucketOwnerPreferred, or ObjectWriter)\n currently in effect for this Amazon S3 bucket.

", + "smithy.api#httpPayload": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#GetBucketOwnershipControlsRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the Amazon S3 bucket whose OwnershipControls you want to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketPolicyRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketPolicyOutput" + }, + "traits": { + "smithy.api#documentation": "

Returns the policy of a specified bucket.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n

If you are using an identity other than the root user of the Amazon Web Services account that owns the\n bucket, the calling identity must both have the GetBucketPolicy permissions on the\n specified bucket and belong to the bucket owner's account in order to use this operation.

\n

If you don't have GetBucketPolicy permissions, Amazon S3 returns a 403 Access\n Denied error. If you have the correct permissions, but you're not using an identity that\n belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not Allowed\n error.

\n \n

To ensure that bucket owners don't inadvertently lock themselves out of their own buckets,\n the root principal in a bucket owner's Amazon Web Services account can perform the\n GetBucketPolicy, PutBucketPolicy, and\n DeleteBucketPolicy API actions, even if their bucket policy explicitly denies the\n root principal's access. Bucket owner root principals can only be blocked from performing these\n API actions by VPC endpoint policies and Amazon Web Services Organizations policies.

\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The\n s3:GetBucketPolicy permission is required in a policy. For more information\n about general purpose buckets bucket policies, see Using Bucket Policies and User\n Policies in the Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to\n this API operation, you must have the s3express:GetBucketPolicy permission in\n an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.\n For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

    \n
  • \n
\n
\n
Example bucket policies
\n
\n

\n General purpose buckets example bucket policies - See Bucket policy\n examples in the Amazon S3 User Guide.

\n

\n Directory bucket example bucket policies - See Example\n bucket policies for S3 Express One Zone in the Amazon S3 User Guide.

\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.

\n
\n
\n

The following action is related to GetBucketPolicy:

\n ", + "smithy.api#examples": [ + { + "title": "To get bucket policy", + "documentation": "The following example returns bucket policy associated with a bucket.", + "input": { + "Bucket": "examplebucket" + }, + "output": { + "Policy": "{\"Version\":\"2008-10-17\",\"Id\":\"LogPolicy\",\"Statement\":[{\"Sid\":\"Enables the log delivery group to publish logs to your bucket \",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"111122223333\"},\"Action\":[\"s3:GetBucketAcl\",\"s3:GetObjectAcl\",\"s3:PutObject\"],\"Resource\":[\"arn:aws:s3:::policytest1/*\",\"arn:aws:s3:::policytest1\"]}]}" + } + } + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?policy", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketPolicyOutput": { + "type": "structure", + "members": { + "Policy": { + "target": "com.amazonaws.s3#Policy", + "traits": { + "smithy.api#documentation": "

The bucket policy as a JSON document.

", + "smithy.api#httpPayload": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#GetBucketPolicyRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name to get the bucket policy for.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must also follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide\n

\n

\n Access points - When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

\n Object Lambda access points - When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code \n501 Not Implemented.

\n
", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketPolicyStatus": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketPolicyStatusRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketPolicyStatusOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Retrieves the policy status for an Amazon S3 bucket, indicating whether the bucket is public. In order to\n use this operation, you must have the s3:GetBucketPolicyStatus permission. For more\n information about Amazon S3 permissions, see Specifying Permissions in a\n Policy.

\n

For more information about when Amazon S3 considers a bucket public, see The Meaning of \"Public\".

\n

The following operations are related to GetBucketPolicyStatus:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?policyStatus", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketPolicyStatusOutput": { + "type": "structure", + "members": { + "PolicyStatus": { + "target": "com.amazonaws.s3#PolicyStatus", + "traits": { + "smithy.api#documentation": "

The policy status for the specified bucket.

", + "smithy.api#httpPayload": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#GetBucketPolicyStatusRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the Amazon S3 bucket whose policy status you want to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketReplication": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketReplicationRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketReplicationOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the replication configuration of a bucket.

\n \n

It can take a while to propagate the put or delete a replication configuration to all Amazon S3\n systems. Therefore, a get request soon after put or delete can return a wrong result.

\n
\n

For information about replication configuration, see Replication in the\n Amazon S3 User Guide.

\n

This action requires permissions for the s3:GetReplicationConfiguration action. For\n more information about permissions, see Using Bucket Policies and User\n Policies.

\n

If you include the Filter element in a replication configuration, you must also include\n the DeleteMarkerReplication and Priority elements. The response also returns\n those elements.

\n

For information about GetBucketReplication errors, see List of replication-related\n error codes\n

\n

The following operations are related to GetBucketReplication:

\n ", + "smithy.api#examples": [ + { + "title": "To get replication configuration set on a bucket", + "documentation": "The following example returns replication configuration set on a bucket.", + "input": { + "Bucket": "examplebucket" + }, + "output": { + "ReplicationConfiguration": { + "Rules": [ + { + "Status": "Enabled", + "Prefix": "Tax", + "Destination": { + "Bucket": "arn:aws:s3:::destination-bucket" }, - false - ] + "ID": "MWIwNTkwZmItMTE3MS00ZTc3LWJkZDEtNzRmODQwYzc1OTQy" } - ], - "endpoint": { - "url": "https://s3.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Path-style addressing cannot be used with S3 Accelerate", - "type": "error" + ], + "Role": "arn:aws:iam::acct-id:role/example-role" } - ], - "type": "tree" } - ], - "type": "tree" } - ], - "type": "tree" + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?replication", + "code": 200 }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "UseObjectLambdaEndpoint" + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketReplicationOutput": { + "type": "structure", + "members": { + "ReplicationConfiguration": { + "target": "com.amazonaws.s3#ReplicationConfiguration", + "traits": { + "smithy.api#httpPayload": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#GetBucketReplicationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name for which to get the replication information.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" } - ] - }, + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketRequestPayment": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketRequestPaymentRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketRequestPaymentOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the request payment configuration of a bucket. To use this version of the operation, you\n must be the bucket owner. For more information, see Requester Pays Buckets.

\n

The following operations are related to GetBucketRequestPayment:

\n ", + "smithy.api#examples": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseObjectLambdaEndpoint" + "title": "To get bucket versioning configuration", + "documentation": "The following example retrieves bucket versioning configuration.", + "input": { + "Bucket": "examplebucket" }, - true - ] + "output": { + "Payer": "BucketOwner" + } } - ], - "rules": [ - { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" - } - ], - "assign": "partitionResult" + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?requestPayment", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketRequestPaymentOutput": { + "type": "structure", + "members": { + "Payer": { + "target": "com.amazonaws.s3#Payer", + "traits": { + "smithy.api#documentation": "

Specifies who pays for the download and request fees.

" + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "RequestPaymentConfiguration" + } + }, + "com.amazonaws.s3#GetBucketRequestPaymentRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket for which to get the payment request configuration

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "ref": "Region" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "S3 Object Lambda does not support Dual-stack", - "type": "error" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "Accelerate" - }, - true - ] - } - ], - "error": "S3 Object Lambda does not support S3 Accelerate", - "type": "error" - }, - { - "conditions": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#path}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketTagging": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketTaggingRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketTaggingOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the tag set associated with the bucket.

\n

To use this operation, you must have permission to perform the s3:GetBucketTagging\n action. By default, the bucket owner has this permission and can grant this permission to others.

\n

\n GetBucketTagging has the following special error:

\n
    \n
  • \n

    Error code: NoSuchTagSet\n

    \n
      \n
    • \n

      Description: There is no tag set associated with the bucket.

      \n
    • \n
    \n
  • \n
\n

The following operations are related to GetBucketTagging:

\n ", + "smithy.api#examples": [ + { + "title": "To get tag set associated with a bucket", + "documentation": "The following example returns tag set associated with a bucket", + "input": { + "Bucket": "examplebucket" + }, + "output": { + "TagSet": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "endpoint": { - "url": "https://s3-object-lambda-fips.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "{Region}" - } - ] + "Value": "value1", + "Key": "key1" }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://s3-object-lambda.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid region: region was not a valid DNS name.", - "type": "error" + { + "Value": "value2", + "Key": "key2" + } + ] } - ], - "type": "tree" } - ], - "type": "tree" + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?tagging", + "code": 200 }, - { - "conditions": [ + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketTaggingOutput": { + "type": "structure", + "members": { + "TagSet": { + "target": "com.amazonaws.s3#TagSet", + "traits": { + "smithy.api#documentation": "

Contains the tag set.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "Tagging" + } + }, + "com.amazonaws.s3#GetBucketTaggingRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket for which to get the tagging information.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketVersioning": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketVersioningRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketVersioningOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the versioning state of a bucket.

\n

To retrieve the versioning state of a bucket, you must be the bucket owner.

\n

This implementation also returns the MFA Delete status of the versioning state. If the MFA Delete\n status is enabled, the bucket owner must use an authentication device to change the\n versioning state of the bucket.

\n

The following operations are related to GetBucketVersioning:

\n ", + "smithy.api#examples": [ { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Bucket" - } - ] + "title": "To get bucket versioning configuration", + "documentation": "The following example retrieves bucket versioning configuration.", + "input": { + "Bucket": "examplebucket" + }, + "output": { + "Status": "Enabled", + "MFADelete": "Disabled" + } + } + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?versioning", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketVersioningOutput": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3#BucketVersioningStatus", + "traits": { + "smithy.api#documentation": "

The versioning state of the bucket.

" + } + }, + "MFADelete": { + "target": "com.amazonaws.s3#MFADeleteStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether MFA delete is enabled in the bucket versioning configuration. This element is only\n returned if the bucket has been configured with MFA delete. If the bucket has never been so configured,\n this element is not returned.

", + "smithy.api#xmlName": "MfaDelete" + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "VersioningConfiguration" + } + }, + "com.amazonaws.s3#GetBucketVersioningRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket for which to get the versioning information.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" } - ] } - ], - "rules": [ + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetBucketWebsite": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetBucketWebsiteRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetBucketWebsiteOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the website configuration for a bucket. To host website on Amazon S3, you can configure a bucket\n as website by adding a website configuration. For more information about hosting websites, see Hosting Websites on Amazon S3.

\n

This GET action requires the S3:GetBucketWebsite permission. By default, only the\n bucket owner can read the bucket website configuration. However, bucket owners can allow other users to\n read the website configuration by writing a bucket policy granting them the\n S3:GetBucketWebsite permission.

\n

The following operations are related to GetBucketWebsite:

\n ", + "smithy.api#examples": [ { - "conditions": [ - { - "fn": "aws.partition", - "argv": [ - { - "ref": "Region" + "title": "To get bucket website configuration", + "documentation": "The following example retrieves website configuration of a bucket.", + "input": { + "Bucket": "examplebucket" + }, + "output": { + "IndexDocument": { + "Suffix": "index.html" + }, + "ErrorDocument": { + "Key": "error.html" } - ], - "assign": "partitionResult" } - ], - "rules": [ - { - "conditions": [ - { - "fn": "isValidHostLabel", - "argv": [ - { - "ref": "Region" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] - } - ], - "endpoint": { - "url": "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://s3-fips.us-east-1.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://s3-fips.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] - } - ], - "endpoint": { - "url": "https://s3-fips.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + } + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?website", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetBucketWebsiteOutput": { + "type": "structure", + "members": { + "RedirectAllRequestsTo": { + "target": "com.amazonaws.s3#RedirectAllRequestsTo", + "traits": { + "smithy.api#documentation": "

Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.

" + } + }, + "IndexDocument": { + "target": "com.amazonaws.s3#IndexDocument", + "traits": { + "smithy.api#documentation": "

The name of the index document for the website (for example index.html).

" + } + }, + "ErrorDocument": { + "target": "com.amazonaws.s3#ErrorDocument", + "traits": { + "smithy.api#documentation": "

The object key name of the website error document to use for 4XX class errors.

" + } + }, + "RoutingRules": { + "target": "com.amazonaws.s3#RoutingRules", + "traits": { + "smithy.api#documentation": "

Rules that define when a redirect is applied and the redirect behavior.

" + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "WebsiteConfiguration" + } + }, + "com.amazonaws.s3#GetBucketWebsiteRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name for which to get the website configuration.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetObject": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetObjectRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetObjectOutput" + }, + "errors": [ + { + "target": "com.amazonaws.s3#InvalidObjectState" + }, + { + "target": "com.amazonaws.s3#NoSuchKey" + } + ], + "traits": { + "aws.protocols#httpChecksum": { + "requestValidationModeMember": "ChecksumMode", + "responseAlgorithms": [ + "CRC64NVME", + "CRC32", + "CRC32C", + "SHA256", + "SHA1" + ] + }, + "smithy.api#documentation": "

Retrieves an object from Amazon S3.

\n

In the GetObject request, specify the full key name for the object.

\n

\n General purpose buckets - Both the virtual-hosted-style requests\n and the path-style requests are supported. For a virtual hosted-style request example, if you have the\n object photos/2006/February/sample.jpg, specify the object key name as\n /photos/2006/February/sample.jpg. For a path-style request example, if you have the\n object photos/2006/February/sample.jpg in the bucket named examplebucket,\n specify the object key name as /examplebucket/photos/2006/February/sample.jpg. For more\n information about request types, see HTTP Host Header Bucket\n Specification in the Amazon S3 User Guide.

\n

\n Directory buckets -\n Only virtual-hosted-style requests are supported. For a virtual hosted-style request example, if you have the object photos/2006/February/sample.jpg in the bucket named amzn-s3-demo-bucket--usw2-az1--x-s3, specify the object key name as /photos/2006/February/sample.jpg. Also, when you make requests to this API operation, your requests are sent to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - You must have the\n required permissions in a policy. To use GetObject, you must have the\n READ access to the object (or version). If you grant READ access\n to the anonymous user, the GetObject operation returns the object without using\n an authorization header. For more information, see Specifying permissions in a\n policy in the Amazon S3 User Guide.

    \n

    If you include a versionId in your request header, you must have the\n s3:GetObjectVersion permission to access a specific version of an object. The\n s3:GetObject permission is not required in this scenario.

    \n

    If you request the current version of an object without a specific versionId\n in the request header, only the s3:GetObject permission is required. The\n s3:GetObjectVersion permission is not required in this scenario.

    \n

    If the object that you request doesn’t exist, the error that Amazon S3 returns depends on\n whether you also have the s3:ListBucket permission.

    \n
      \n
    • \n

      If you have the s3:ListBucket permission on the bucket, Amazon S3 returns an\n HTTP status code 404 Not Found error.

      \n
    • \n
    • \n

      If you don’t have the s3:ListBucket permission, Amazon S3 returns an HTTP\n status code 403 Access Denied error.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n

    If the object is\n encrypted using SSE-KMS, you must also have the kms:GenerateDataKey and\n kms:Decrypt permissions in IAM identity-based policies and KMS key policies\n for the KMS key.

    \n
  • \n
\n
\n
Storage classes
\n
\n

If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval storage class,\n the S3 Glacier Deep Archive storage class, the S3 Intelligent-Tiering Archive Access tier, or the\n S3 Intelligent-Tiering Deep Archive Access tier, before you can retrieve the object you must first restore a\n copy using RestoreObject. Otherwise, this operation returns an InvalidObjectState\n error. For information about restoring archived objects, see Restoring Archived Objects in the\n Amazon S3 User Guide.

\n

\n Directory buckets -\n Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones. \nUnsupported storage class values won't write a destination object and will respond with the HTTP status code 400 Bad Request.

\n
\n
Encryption
\n
\n

Encryption request headers, like x-amz-server-side-encryption, should not be sent\n for the GetObject requests, if your object uses server-side encryption with Amazon S3\n managed encryption keys (SSE-S3), server-side encryption with Key Management Service (KMS) keys (SSE-KMS), or\n dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS). If you include the header in\n your GetObject requests for the object that uses these types of keys, you’ll get an\n HTTP 400 Bad Request error.

\n

\n Directory buckets -\n For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS. SSE-C isn't supported. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide.

\n
\n
Overriding response header values through the request
\n
\n

There are times when you want to override certain response header values of a\n GetObject response. For example, you might override the\n Content-Disposition response header value through your GetObject\n request.

\n

You can override values for a set of response headers. These modified response header values\n are included only in a successful response, that is, when the HTTP status code 200 OK\n is returned. The headers you can override using the following query parameters in the request are\n a subset of the headers that Amazon S3 accepts when you create an object.

\n

The response headers that you can override for the GetObject response are\n Cache-Control, Content-Disposition, Content-Encoding,\n Content-Language, Content-Type, and Expires.

\n

To override values for a set of response headers in the GetObject response, you\n can use the following query parameters in the request.

\n
    \n
  • \n

    \n response-cache-control\n

    \n
  • \n
  • \n

    \n response-content-disposition\n

    \n
  • \n
  • \n

    \n response-content-encoding\n

    \n
  • \n
  • \n

    \n response-content-language\n

    \n
  • \n
  • \n

    \n response-content-type\n

    \n
  • \n
  • \n

    \n response-expires\n

    \n
  • \n
\n \n

When you use these parameters, you must sign the request by using either an Authorization\n header or a presigned URL. These parameters cannot be used with an unsigned (anonymous)\n request.

\n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to GetObject:

\n ", + "smithy.api#examples": [ + { + "title": "To retrieve a byte range of an object ", + "documentation": "The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a specific byte range.", + "input": { + "Bucket": "examplebucket", + "Key": "SampleFile.txt", + "Range": "bytes=0-9" + }, + "output": { + "AcceptRanges": "bytes", + "ContentType": "text/plain", + "LastModified": "2014-10-09T22:57:28.000Z", + "ContentLength": 10, + "VersionId": "null", + "ETag": "\"0d94420ffd0bc68cd3d152506b97a9cc\"", + "ContentRange": "bytes 0-9/43", + "Metadata": {} + } + }, + { + "title": "To retrieve an object", + "documentation": "The following example retrieves an object for an S3 bucket.", + "input": { + "Bucket": "examplebucket", + "Key": "HappyFace.jpg" + }, + "output": { + "AcceptRanges": "bytes", + "ContentType": "image/jpeg", + "LastModified": "2016-12-15T01:19:41.000Z", + "ContentLength": 3191, + "VersionId": "null", + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", + "TagCount": 2, + "Metadata": {} + } + } + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}/{Key+}?x-id=GetObject", + "code": 200 + } + } + }, + "com.amazonaws.s3#GetObjectAcl": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetObjectAclRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetObjectAclOutput" + }, + "errors": [ + { + "target": "com.amazonaws.s3#NoSuchKey" + } + ], + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the access control list (ACL) of an object. To use this operation, you must have\n s3:GetObjectAcl permissions or READ_ACP access to the object. For more\n information, see Mapping of ACL\n permissions and access policy permissions in the Amazon S3 User Guide\n

\n

This functionality is not supported for Amazon S3 on Outposts.

\n

By default, GET returns ACL information about the current version of an object. To return ACL\n information about a different version, use the versionId subresource.

\n \n

If your bucket uses the bucket owner enforced setting for S3 Object Ownership, requests to read\n ACLs are still supported and return the bucket-owner-full-control ACL with the owner\n being the account that created the bucket. For more information, see Controlling object ownership and\n disabling ACLs in the Amazon S3 User Guide.

\n
\n

The following operations are related to GetObjectAcl:

\n ", + "smithy.api#examples": [ + { + "title": "To retrieve object ACL", + "documentation": "The following example retrieves access control list (ACL) of an object.", + "input": { + "Bucket": "examplebucket", + "Key": "HappyFace.jpg" + }, + "output": { + "Owner": { + "DisplayName": "owner-display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, + "Grants": [ { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" + "Grantee": { + "Type": "CanonicalUser", + "DisplayName": "owner-display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, - "aws-global" - ] - } - ], - "endpoint": { - "url": "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] + "Permission": "WRITE" }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" + "Grantee": { + "Type": "CanonicalUser", + "DisplayName": "owner-display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, - false - ] + "Permission": "WRITE_ACP" }, { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" + "Grantee": { + "Type": "CanonicalUser", + "DisplayName": "owner-display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "Permission": "READ" }, { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" + "Grantee": { + "Type": "CanonicalUser", + "DisplayName": "owner-display-name", + "ID": "852b113eexamplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" }, - true - ] + "Permission": "READ_ACP" } - ], - "rules": [ + ] + } + } + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}/{Key+}?acl", + "code": 200 + } + } + }, + "com.amazonaws.s3#GetObjectAclOutput": { + "type": "structure", + "members": { + "Owner": { + "target": "com.amazonaws.s3#Owner", + "traits": { + "smithy.api#documentation": "

Container for the bucket owner's display name and ID.

" + } + }, + "Grants": { + "target": "com.amazonaws.s3#Grants", + "traits": { + "smithy.api#documentation": "

A list of grants.

", + "smithy.api#xmlName": "AccessControlList" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "AccessControlPolicy" + } + }, + "com.amazonaws.s3#GetObjectAclRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name that contains the object for which to get the ACL information.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The key of the object for which to get the ACL information.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Key" + } + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

Version ID used to reference a specific version of the object.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpQuery": "versionId" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetObjectAttributes": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetObjectAttributesRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetObjectAttributesOutput" + }, + "errors": [ + { + "target": "com.amazonaws.s3#NoSuchKey" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves all of the metadata from an object without returning the object itself. This operation is\n useful if you're interested only in an object's metadata.

\n

\n GetObjectAttributes combines the functionality of HeadObject and\n ListParts. All of the data returned with both of those individual calls can be returned\n with a single call to GetObjectAttributes.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - To use\n GetObjectAttributes, you must have READ access to the object.

    \n

    The other permissions that you need to use this operation depend on whether the bucket is\n versioned and if a version ID is passed in the GetObjectAttributes request.

    \n
      \n
    • \n

      If you pass a version ID in your request, you need both the\n s3:GetObjectVersion and s3:GetObjectVersionAttributes\n permissions.

      \n
    • \n
    • \n

      If you do not pass a version ID in your request, you need the\n s3:GetObject and s3:GetObjectAttributes permissions.

      \n
    • \n
    \n

    For more information, see Specifying Permissions in a\n Policy in the Amazon S3 User Guide.

    \n

    If the object that you request does not exist, the error Amazon S3 returns depends on whether\n you also have the s3:ListBucket permission.

    \n
      \n
    • \n

      If you have the s3:ListBucket permission on the bucket, Amazon S3 returns an\n HTTP status code 404 Not Found (\"no such key\") error.

      \n
    • \n
    • \n

      If you don't have the s3:ListBucket permission, Amazon S3 returns an HTTP\n status code 403 Forbidden (\"access denied\") error.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n

    If\n the\n object is encrypted with SSE-KMS, you must also have the kms:GenerateDataKey and\n kms:Decrypt permissions in IAM identity-based policies and KMS key policies\n for the KMS key.

    \n
  • \n
\n
\n
Encryption
\n
\n \n

Encryption request headers, like x-amz-server-side-encryption, should not be\n sent for HEAD requests if your object uses server-side encryption with Key Management Service\n (KMS) keys (SSE-KMS), dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or\n server-side encryption with Amazon S3 managed encryption keys (SSE-S3). The\n x-amz-server-side-encryption header is used when you PUT an object\n to S3 and want to specify the encryption method. If you include this header in a\n GET request for an object that uses these types of keys, you’ll get an HTTP\n 400 Bad Request error. It's because the encryption method can't be changed when\n you retrieve the object.

\n
\n

If you encrypted an object when you stored the object in Amazon S3 by using server-side encryption\n with customer-provided encryption keys (SSE-C), then when you retrieve the metadata from the\n object, you must use the following headers. These headers provide the server with the encryption\n key required to retrieve the object's metadata. The headers are:

\n
    \n
  • \n

    \n x-amz-server-side-encryption-customer-algorithm\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key-MD5\n

    \n
  • \n
\n

For more information about SSE-C, see Server-Side Encryption (Using\n Customer-Provided Encryption Keys) in the Amazon S3 User Guide.

\n \n

\n Directory bucket permissions -\n For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your \n CreateSession requests or PUT object requests. Then, new objects \n are automatically encrypted with the desired encryption settings. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide. For more information about the encryption overriding behaviors in directory buckets, see Specifying server-side encryption with KMS for new object uploads.

\n
\n
\n
Versioning
\n
\n

\n Directory buckets - S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the null value of the version ID is supported by directory buckets.\n You can only specify null to the versionId query parameter in the\n request.

\n
\n
Conditional request headers
\n
\n

Consider the following when using request headers:

\n
    \n
  • \n

    If both of the If-Match and If-Unmodified-Since headers are\n present in the request as follows, then Amazon S3 returns the HTTP status code 200 OK\n and the data requested:

    \n
      \n
    • \n

      \n If-Match condition evaluates to true.

      \n
    • \n
    • \n

      \n If-Unmodified-Since condition evaluates to false.

      \n
    • \n
    \n

    For more information about conditional requests, see RFC 7232.

    \n
  • \n
  • \n

    If both of the If-None-Match and If-Modified-Since headers are\n present in the request as follows, then Amazon S3 returns the HTTP status code 304 Not\n Modified:

    \n
      \n
    • \n

      \n If-None-Match condition evaluates to false.

      \n
    • \n
    • \n

      \n If-Modified-Since condition evaluates to true.

      \n
    • \n
    \n

    For more information about conditional requests, see RFC 7232.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following actions are related to GetObjectAttributes:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}/{Key+}?attributes", + "code": 200 + } + } + }, + "com.amazonaws.s3#GetObjectAttributesOutput": { + "type": "structure", + "members": { + "DeleteMarker": { + "target": "com.amazonaws.s3#DeleteMarker", + "traits": { + "smithy.api#documentation": "

Specifies whether the object retrieved was (true) or was not (false) a\n delete marker. If false, this response header does not appear in the response. To learn\n more about delete markers, see Working with delete markers.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-delete-marker" + } + }, + "LastModified": { + "target": "com.amazonaws.s3#LastModified", + "traits": { + "smithy.api#documentation": "

Date and time when the object was last modified.

", + "smithy.api#httpHeader": "Last-Modified" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

The version ID of the object.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-version-id" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } + }, + "ETag": { + "target": "com.amazonaws.s3#ETag", + "traits": { + "smithy.api#documentation": "

An ETag is an opaque identifier assigned by a web server to a specific version of a resource found\n at a URL.

" + } + }, + "Checksum": { + "target": "com.amazonaws.s3#Checksum", + "traits": { + "smithy.api#documentation": "

The checksum or digest of the object.

" + } + }, + "ObjectParts": { + "target": "com.amazonaws.s3#GetObjectAttributesParts", + "traits": { + "smithy.api#documentation": "

A collection of parts associated with a multipart upload.

" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3#StorageClass", + "traits": { + "smithy.api#documentation": "

Provides the storage class information of the object. Amazon S3 returns this header for all objects\n except for S3 Standard storage class objects.

\n

For more information, see Storage Classes.

\n \n

\n Directory buckets -\n Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.

\n
" + } + }, + "ObjectSize": { + "target": "com.amazonaws.s3#ObjectSize", + "traits": { + "smithy.api#documentation": "

The size of the object in bytes.

" + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "GetObjectAttributesResponse" + } + }, + "com.amazonaws.s3#GetObjectAttributesParts": { + "type": "structure", + "members": { + "TotalPartsCount": { + "target": "com.amazonaws.s3#PartsCount", + "traits": { + "smithy.api#documentation": "

The total number of parts.

", + "smithy.api#xmlName": "PartsCount" + } + }, + "PartNumberMarker": { + "target": "com.amazonaws.s3#PartNumberMarker", + "traits": { + "smithy.api#documentation": "

The marker for the current part.

" + } + }, + "NextPartNumberMarker": { + "target": "com.amazonaws.s3#NextPartNumberMarker", + "traits": { + "smithy.api#documentation": "

When a list is truncated, this element specifies the last part in the list, as well as the value to\n use for the PartNumberMarker request parameter in a subsequent request.

" + } + }, + "MaxParts": { + "target": "com.amazonaws.s3#MaxParts", + "traits": { + "smithy.api#documentation": "

The maximum number of parts allowed in the response.

" + } + }, + "IsTruncated": { + "target": "com.amazonaws.s3#IsTruncated", + "traits": { + "smithy.api#documentation": "

Indicates whether the returned list of parts is truncated. A value of true indicates\n that the list was truncated. A list can be truncated if the number of parts exceeds the limit returned\n in the MaxParts element.

" + } + }, + "Parts": { + "target": "com.amazonaws.s3#PartsList", + "traits": { + "smithy.api#documentation": "

A container for elements related to a particular part. A response can contain zero or more\n Parts elements.

\n \n
    \n
  • \n

    \n General purpose buckets - For\n GetObjectAttributes, if an additional checksum (including\n x-amz-checksum-crc32, x-amz-checksum-crc32c,\n x-amz-checksum-sha1, or x-amz-checksum-sha256) isn't applied to the\n object specified in the request, the response doesn't return the Part element.

    \n
  • \n
  • \n

    \n Directory buckets - For\n GetObjectAttributes, regardless of whether an additional checksum is applied to the\n object specified in the request, the response returns the Part element.

    \n
  • \n
\n
", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Part" + } + } + }, + "traits": { + "smithy.api#documentation": "

A collection of parts associated with a multipart upload.

" + } + }, + "com.amazonaws.s3#GetObjectAttributesRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket that contains the object.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The object key.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

The version ID used to reference a specific version of the object.

\n \n

S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the null value of the version ID is supported by directory buckets. You can only specify null to the\n versionId query parameter in the request.

\n
", + "smithy.api#httpQuery": "versionId" + } + }, + "MaxParts": { + "target": "com.amazonaws.s3#MaxParts", + "traits": { + "smithy.api#documentation": "

Sets the maximum number of parts to return. For more information, see Uploading and copying objects using multipart upload\n in Amazon S3 in the Amazon Simple Storage Service user guide.

", + "smithy.api#httpHeader": "x-amz-max-parts" + } + }, + "PartNumberMarker": { + "target": "com.amazonaws.s3#PartNumberMarker", + "traits": { + "smithy.api#documentation": "

Specifies the part after which listing should begin. Only parts with higher part numbers will be\n listed. For more information, see Uploading and copying objects using multipart upload\n in Amazon S3 in the Amazon Simple Storage Service user guide.

", + "smithy.api#httpHeader": "x-amz-part-number-marker" + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKey": { + "target": "com.amazonaws.s3#SSECustomerKey", + "traits": { + "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is\n used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must\n be appropriate for use with the algorithm specified in the\n x-amz-server-side-encryption-customer-algorithm header.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header\n for a message integrity check to ensure that the encryption key was transmitted without error.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "ObjectAttributes": { + "target": "com.amazonaws.s3#ObjectAttributesList", + "traits": { + "smithy.api#documentation": "

Specifies the fields at the root level that you want returned in the response. Fields that you do\n not specify are not returned.

", + "smithy.api#httpHeader": "x-amz-object-attributes", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetObjectLegalHold": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetObjectLegalHoldRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetObjectLegalHoldOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Gets an object's current legal hold status. For more information, see Locking Objects.

\n

This functionality is not supported for Amazon S3 on Outposts.

\n

The following action is related to GetObjectLegalHold:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}/{Key+}?legal-hold", + "code": 200 + } + } + }, + "com.amazonaws.s3#GetObjectLegalHoldOutput": { + "type": "structure", + "members": { + "LegalHold": { + "target": "com.amazonaws.s3#ObjectLockLegalHold", + "traits": { + "smithy.api#documentation": "

The current legal hold status for the specified object.

", + "smithy.api#httpPayload": {}, + "smithy.api#xmlName": "LegalHold" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#GetObjectLegalHoldRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name containing the object whose legal hold status you want to retrieve.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The key name for the object whose legal hold status you want to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

The version ID of the object whose legal hold status you want to retrieve.

", + "smithy.api#httpQuery": "versionId" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetObjectLockConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetObjectLockConfigurationRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetObjectLockConfigurationOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Gets the Object Lock configuration for a bucket. The rule specified in the Object Lock configuration\n will be applied by default to every new object placed in the specified bucket. For more information, see\n Locking Objects.

\n

The following action is related to GetObjectLockConfiguration:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?object-lock", + "code": 200 + } + } + }, + "com.amazonaws.s3#GetObjectLockConfigurationOutput": { + "type": "structure", + "members": { + "ObjectLockConfiguration": { + "target": "com.amazonaws.s3#ObjectLockConfiguration", + "traits": { + "smithy.api#documentation": "

The specified bucket's Object Lock configuration.

", + "smithy.api#httpPayload": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#GetObjectLockConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket whose Object Lock configuration you want to retrieve.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetObjectOutput": { + "type": "structure", + "members": { + "Body": { + "target": "com.amazonaws.s3#StreamingBlob", + "traits": { + "smithy.api#default": "", + "smithy.api#documentation": "

Object data.

", + "smithy.api#httpPayload": {} + } + }, + "DeleteMarker": { + "target": "com.amazonaws.s3#DeleteMarker", + "traits": { + "smithy.api#documentation": "

Indicates whether the object retrieved was (true) or was not (false) a Delete Marker. If false, this\n response header does not appear in the response.

\n \n
    \n
  • \n

    If the current version of the object is a delete marker, Amazon S3 behaves as if the object was\n deleted and includes x-amz-delete-marker: true in the response.

    \n
  • \n
  • \n

    If the specified version in the request is a delete marker, the response returns a 405\n Method Not Allowed error and the Last-Modified: timestamp response\n header.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-delete-marker" + } + }, + "AcceptRanges": { + "target": "com.amazonaws.s3#AcceptRanges", + "traits": { + "smithy.api#documentation": "

Indicates that a range of bytes was specified in the request.

", + "smithy.api#httpHeader": "accept-ranges" + } + }, + "Expiration": { + "target": "com.amazonaws.s3#Expiration", + "traits": { + "smithy.api#documentation": "

If the object expiration is configured (see \n PutBucketLifecycleConfiguration\n ), the response includes this header. It\n includes the expiry-date and rule-id key-value pairs providing object\n expiration information. The value of the rule-id is URL-encoded.

\n \n

Object expiration information is not returned in directory buckets and this header returns the\n value \"NotImplemented\" in all responses for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-expiration" + } + }, + "Restore": { + "target": "com.amazonaws.s3#Restore", + "traits": { + "smithy.api#documentation": "

Provides information about object restoration action and expiration time of the restored object\n copy.

\n \n

This functionality is not supported for directory buckets. Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.

\n
", + "smithy.api#httpHeader": "x-amz-restore" + } + }, + "LastModified": { + "target": "com.amazonaws.s3#LastModified", + "traits": { + "smithy.api#documentation": "

Date and time when the object was last modified.

\n

\n General purpose buckets - When you specify a\n versionId of the object in your request, if the specified version in the request is a\n delete marker, the response returns a 405 Method Not Allowed error and the\n Last-Modified: timestamp response header.

", + "smithy.api#httpHeader": "Last-Modified" + } + }, + "ContentLength": { + "target": "com.amazonaws.s3#ContentLength", + "traits": { + "smithy.api#documentation": "

Size of the body in bytes.

", + "smithy.api#httpHeader": "Content-Length" + } + }, + "ETag": { + "target": "com.amazonaws.s3#ETag", + "traits": { + "smithy.api#documentation": "

An entity tag (ETag) is an opaque identifier assigned by a web server to a specific version of a\n resource found at a URL.

", + "smithy.api#httpHeader": "ETag" + } + }, + "ChecksumCRC32": { + "target": "com.amazonaws.s3#ChecksumCRC32", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32 checksum of the object. This checksum is only present if the object was uploaded\n with the object. For more information, see \n Checking object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc32" + } + }, + "ChecksumCRC32C": { + "target": "com.amazonaws.s3#ChecksumCRC32C", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32C checksum of the object. This will only be present if the object was uploaded\n with the object. For more information, see \n Checking object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc32c" + } + }, + "ChecksumCRC64NVME": { + "target": "com.amazonaws.s3#ChecksumCRC64NVME", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC64NVME checksum of the object. For more information, see\n Checking\n object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc64nvme" + } + }, + "ChecksumSHA1": { + "target": "com.amazonaws.s3#ChecksumSHA1", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA1 digest of the object. This will only be present if the object was uploaded\n with the object. For more information, see \n Checking object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-sha1" + } + }, + "ChecksumSHA256": { + "target": "com.amazonaws.s3#ChecksumSHA256", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA256 digest of the object. This will only be present if the object was uploaded\n with the object. For more information, see \n Checking object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-sha256" + } + }, + "ChecksumType": { + "target": "com.amazonaws.s3#ChecksumType", + "traits": { + "smithy.api#documentation": "

The checksum type, which determines how part-level checksums are combined to create an object-level\n checksum for multipart objects. You can use this header response to verify that the checksum type that\n is received is the same checksum type that was specified in the CreateMultipartUpload\n request. For more information, see Checking object integrity in\n the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-type" + } + }, + "MissingMeta": { + "target": "com.amazonaws.s3#MissingMeta", + "traits": { + "smithy.api#documentation": "

This is set to the number of metadata entries not returned in the headers that are prefixed with\n x-amz-meta-. This can happen if you create metadata using an API like SOAP that supports\n more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values\n are not legal HTTP headers.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-missing-meta" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

Version ID of the object.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-version-id" + } + }, + "CacheControl": { + "target": "com.amazonaws.s3#CacheControl", + "traits": { + "smithy.api#documentation": "

Specifies caching behavior along the request/reply chain.

", + "smithy.api#httpHeader": "Cache-Control" + } + }, + "ContentDisposition": { + "target": "com.amazonaws.s3#ContentDisposition", + "traits": { + "smithy.api#documentation": "

Specifies presentational information for the object.

", + "smithy.api#httpHeader": "Content-Disposition" + } + }, + "ContentEncoding": { + "target": "com.amazonaws.s3#ContentEncoding", + "traits": { + "smithy.api#documentation": "

Indicates what content encodings have been applied to the object and thus what decoding mechanisms\n must be applied to obtain the media-type referenced by the Content-Type header field.

", + "smithy.api#httpHeader": "Content-Encoding" + } + }, + "ContentLanguage": { + "target": "com.amazonaws.s3#ContentLanguage", + "traits": { + "smithy.api#documentation": "

The language the content is in.

", + "smithy.api#httpHeader": "Content-Language" + } + }, + "ContentRange": { + "target": "com.amazonaws.s3#ContentRange", + "traits": { + "smithy.api#documentation": "

The portion of the object returned in the response.

", + "smithy.api#httpHeader": "Content-Range" + } + }, + "ContentType": { + "target": "com.amazonaws.s3#ContentType", + "traits": { + "smithy.api#documentation": "

A standard MIME type describing the format of the object data.

", + "smithy.api#httpHeader": "Content-Type" + } + }, + "Expires": { + "target": "com.amazonaws.s3#Expires", + "traits": { + "smithy.api#documentation": "

The date and time at which the object is no longer cacheable.

", + "smithy.api#httpHeader": "Expires" + } + }, + "WebsiteRedirectLocation": { + "target": "com.amazonaws.s3#WebsiteRedirectLocation", + "traits": { + "smithy.api#documentation": "

If the bucket is configured as a website, redirects requests for this object to another object in\n the same bucket or to an external URL. Amazon S3 stores the value of this header in the object\n metadata.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-website-redirect-location" + } + }, + "ServerSideEncryption": { + "target": "com.amazonaws.s3#ServerSideEncryption", + "traits": { + "smithy.api#documentation": "

The server-side encryption algorithm used when you store this object in Amazon S3 or Amazon FSx.

\n \n

When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side\n encryption option is aws:fsx.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption" + } + }, + "Metadata": { + "target": "com.amazonaws.s3#Metadata", + "traits": { + "smithy.api#documentation": "

A map of metadata to store with the object in S3.

", + "smithy.api#httpPrefixHeaders": "x-amz-meta-" + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the response will\n include this header to confirm the encryption algorithm that's used.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the response will\n include this header to provide the round-trip message integrity verification of the customer-provided\n encryption key.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } + }, + "SSEKMSKeyId": { + "target": "com.amazonaws.s3#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

If present, indicates the ID of the KMS key that was used for object encryption.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" + } + }, + "BucketKeyEnabled": { + "target": "com.amazonaws.s3#BucketKeyEnabled", + "traits": { + "smithy.api#documentation": "

Indicates whether the object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS)\n keys (SSE-KMS).

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3#StorageClass", + "traits": { + "smithy.api#documentation": "

Provides storage class information of the object. Amazon S3 returns this header for all objects except\n for S3 Standard storage class objects.

\n \n

\n Directory buckets -\n Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.

\n
", + "smithy.api#httpHeader": "x-amz-storage-class" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } + }, + "ReplicationStatus": { + "target": "com.amazonaws.s3#ReplicationStatus", + "traits": { + "smithy.api#documentation": "

Amazon S3 can return this if your request involves a bucket that is either a source or destination in a\n replication rule.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-replication-status" + } + }, + "PartsCount": { + "target": "com.amazonaws.s3#PartsCount", + "traits": { + "smithy.api#documentation": "

The count of parts this object has. This value is only returned if you specify\n partNumber in your request and the object was uploaded as a multipart upload.

", + "smithy.api#httpHeader": "x-amz-mp-parts-count" + } + }, + "TagCount": { + "target": "com.amazonaws.s3#TagCount", + "traits": { + "smithy.api#documentation": "

The number of tags, if any, on the object, when you have the relevant permission to read object\n tags.

\n

You can use GetObjectTagging to retrieve the tag set associated with an object.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-tagging-count" + } + }, + "ObjectLockMode": { + "target": "com.amazonaws.s3#ObjectLockMode", + "traits": { + "smithy.api#documentation": "

The Object Lock mode that's currently in place for this object.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-object-lock-mode" + } + }, + "ObjectLockRetainUntilDate": { + "target": "com.amazonaws.s3#ObjectLockRetainUntilDate", + "traits": { + "smithy.api#documentation": "

The date and time when this object's Object Lock will expire.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-object-lock-retain-until-date" + } + }, + "ObjectLockLegalHoldStatus": { + "target": "com.amazonaws.s3#ObjectLockLegalHoldStatus", + "traits": { + "smithy.api#documentation": "

Indicates whether this object has an active legal hold. This field is only returned if you have\n permission to view an object's legal hold status.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-object-lock-legal-hold" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#GetObjectRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name containing the object.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n

\n Object Lambda access points - When you use this action with an Object Lambda access point, you must direct requests to the Object Lambda access point hostname. The Object Lambda access point hostname takes the form AccessPointName-AccountId.s3-object-lambda.Region.amazonaws.com.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "IfMatch": { + "target": "com.amazonaws.s3#IfMatch", + "traits": { + "smithy.api#documentation": "

Return the object only if its entity tag (ETag) is the same as the one specified in this header;\n otherwise, return a 412 Precondition Failed error.

\n

If both of the If-Match and If-Unmodified-Since headers are present in the\n request as follows: If-Match condition evaluates to true, and;\n If-Unmodified-Since condition evaluates to false; then, S3 returns 200\n OK and the data requested.

\n

For more information about conditional requests, see RFC 7232.

", + "smithy.api#httpHeader": "If-Match" + } + }, + "IfModifiedSince": { + "target": "com.amazonaws.s3#IfModifiedSince", + "traits": { + "smithy.api#documentation": "

Return the object only if it has been modified since the specified time; otherwise, return a\n 304 Not Modified error.

\n

If both of the If-None-Match and If-Modified-Since headers are present in\n the request as follows: If-None-Match condition evaluates to false, and;\n If-Modified-Since condition evaluates to true; then, S3 returns 304\n Not Modified status code.

\n

For more information about conditional requests, see RFC 7232.

", + "smithy.api#httpHeader": "If-Modified-Since" + } + }, + "IfNoneMatch": { + "target": "com.amazonaws.s3#IfNoneMatch", + "traits": { + "smithy.api#documentation": "

Return the object only if its entity tag (ETag) is different from the one specified in this header;\n otherwise, return a 304 Not Modified error.

\n

If both of the If-None-Match and If-Modified-Since headers are present in\n the request as follows: If-None-Match condition evaluates to false, and;\n If-Modified-Since condition evaluates to true; then, S3 returns 304\n Not Modified HTTP status code.

\n

For more information about conditional requests, see RFC 7232.

", + "smithy.api#httpHeader": "If-None-Match" + } + }, + "IfUnmodifiedSince": { + "target": "com.amazonaws.s3#IfUnmodifiedSince", + "traits": { + "smithy.api#documentation": "

Return the object only if it has not been modified since the specified time; otherwise, return a\n 412 Precondition Failed error.

\n

If both of the If-Match and If-Unmodified-Since headers are present in the\n request as follows: If-Match condition evaluates to true, and;\n If-Unmodified-Since condition evaluates to false; then, S3 returns 200\n OK and the data requested.

\n

For more information about conditional requests, see RFC 7232.

", + "smithy.api#httpHeader": "If-Unmodified-Since" + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Key of the object to get.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Key" + } + } + }, + "Range": { + "target": "com.amazonaws.s3#Range", + "traits": { + "smithy.api#documentation": "

Downloads the specified byte range of an object. For more information about the HTTP Range header,\n see https://www.rfc-editor.org/rfc/rfc9110.html#name-range.

\n \n

Amazon S3 doesn't support retrieving multiple ranges of data per GET request.

\n
", + "smithy.api#httpHeader": "Range" + } + }, + "ResponseCacheControl": { + "target": "com.amazonaws.s3#ResponseCacheControl", + "traits": { + "smithy.api#documentation": "

Sets the Cache-Control header of the response.

", + "smithy.api#httpQuery": "response-cache-control" + } + }, + "ResponseContentDisposition": { + "target": "com.amazonaws.s3#ResponseContentDisposition", + "traits": { + "smithy.api#documentation": "

Sets the Content-Disposition header of the response.

", + "smithy.api#httpQuery": "response-content-disposition" + } + }, + "ResponseContentEncoding": { + "target": "com.amazonaws.s3#ResponseContentEncoding", + "traits": { + "smithy.api#documentation": "

Sets the Content-Encoding header of the response.

", + "smithy.api#httpQuery": "response-content-encoding" + } + }, + "ResponseContentLanguage": { + "target": "com.amazonaws.s3#ResponseContentLanguage", + "traits": { + "smithy.api#documentation": "

Sets the Content-Language header of the response.

", + "smithy.api#httpQuery": "response-content-language" + } + }, + "ResponseContentType": { + "target": "com.amazonaws.s3#ResponseContentType", + "traits": { + "smithy.api#documentation": "

Sets the Content-Type header of the response.

", + "smithy.api#httpQuery": "response-content-type" + } + }, + "ResponseExpires": { + "target": "com.amazonaws.s3#ResponseExpires", + "traits": { + "smithy.api#documentation": "

Sets the Expires header of the response.

", + "smithy.api#httpQuery": "response-expires" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

Version ID used to reference a specific version of the object.

\n

By default, the GetObject operation returns the current version of an object. To return\n a different version, use the versionId subresource.

\n \n
    \n
  • \n

    If you include a versionId in your request header, you must have the\n s3:GetObjectVersion permission to access a specific version of an object. The\n s3:GetObject permission is not required in this scenario.

    \n
  • \n
  • \n

    If you request the current version of an object without a specific versionId in\n the request header, only the s3:GetObject permission is required. The\n s3:GetObjectVersion permission is not required in this scenario.

    \n
  • \n
  • \n

    \n Directory buckets - S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the null value of the version ID is supported by directory buckets.\n You can only specify null to the versionId query parameter in the\n request.

    \n
  • \n
\n
\n

For more information about versioning, see PutBucketVersioning.

", + "smithy.api#httpQuery": "versionId" + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

Specifies the algorithm to use when decrypting the object (for example, AES256).

\n

If you encrypt an object by using server-side encryption with customer-provided encryption keys\n (SSE-C) when you store the object in Amazon S3, then when you GET the object, you must use the following\n headers:

\n
    \n
  • \n

    \n x-amz-server-side-encryption-customer-algorithm\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key-MD5\n

    \n
  • \n
\n

For more information about SSE-C, see Server-Side Encryption (Using\n Customer-Provided Encryption Keys) in the Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKey": { + "target": "com.amazonaws.s3#SSECustomerKey", + "traits": { + "smithy.api#documentation": "

Specifies the customer-provided encryption key that you originally provided for Amazon S3 to encrypt the\n data before storing it. This value is used to decrypt the object when recovering it and must match the\n one used when storing the data. The key must be appropriate for use with the algorithm specified in the\n x-amz-server-side-encryption-customer-algorithm header.

\n

If you encrypt an object by using server-side encryption with customer-provided encryption keys\n (SSE-C) when you store the object in Amazon S3, then when you GET the object, you must use the following\n headers:

\n
    \n
  • \n

    \n x-amz-server-side-encryption-customer-algorithm\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key-MD5\n

    \n
  • \n
\n

For more information about SSE-C, see Server-Side Encryption (Using\n Customer-Provided Encryption Keys) in the Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the customer-provided encryption key according to RFC 1321. Amazon S3\n uses this header for a message integrity check to ensure that the encryption key was transmitted without\n error.

\n

If you encrypt an object by using server-side encryption with customer-provided encryption keys\n (SSE-C) when you store the object in Amazon S3, then when you GET the object, you must use the following\n headers:

\n
    \n
  • \n

    \n x-amz-server-side-encryption-customer-algorithm\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key-MD5\n

    \n
  • \n
\n

For more information about SSE-C, see Server-Side Encryption (Using\n Customer-Provided Encryption Keys) in the Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "PartNumber": { + "target": "com.amazonaws.s3#PartNumber", + "traits": { + "smithy.api#documentation": "

Part number of the object being read. This is a positive integer between 1 and 10,000. Effectively\n performs a 'ranged' GET request for the part specified. Useful for downloading just a part of an\n object.

", + "smithy.api#httpQuery": "partNumber" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "ChecksumMode": { + "target": "com.amazonaws.s3#ChecksumMode", + "traits": { + "smithy.api#documentation": "

To retrieve the checksum, this mode must be enabled.

", + "smithy.api#httpHeader": "x-amz-checksum-mode" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetObjectResponseStatusCode": { + "type": "integer" + }, + "com.amazonaws.s3#GetObjectRetention": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetObjectRetentionRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetObjectRetentionOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Retrieves an object's retention settings. For more information, see Locking Objects.

\n

This functionality is not supported for Amazon S3 on Outposts.

\n

The following action is related to GetObjectRetention:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}/{Key+}?retention", + "code": 200 + } + } + }, + "com.amazonaws.s3#GetObjectRetentionOutput": { + "type": "structure", + "members": { + "Retention": { + "target": "com.amazonaws.s3#ObjectLockRetention", + "traits": { + "smithy.api#documentation": "

The container element for an object's retention settings.

", + "smithy.api#httpPayload": {}, + "smithy.api#xmlName": "Retention" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#GetObjectRetentionRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name containing the object whose retention settings you want to retrieve.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The key name for the object whose retention settings you want to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

The version ID for the object whose retention settings you want to retrieve.

", + "smithy.api#httpQuery": "versionId" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetObjectTagging": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetObjectTaggingRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetObjectTaggingOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the tag-set of an object. You send the GET request against the tagging subresource\n associated with the object.

\n

To use this operation, you must have permission to perform the s3:GetObjectTagging\n action. By default, the GET action returns information about current version of an object. For a\n versioned bucket, you can have multiple versions of an object in your bucket. To retrieve tags of any\n other version, use the versionId query parameter. You also need permission for the\n s3:GetObjectVersionTagging action.

\n

By default, the bucket owner has this permission and can grant this permission to others.

\n

For information about the Amazon S3 object tagging feature, see Object Tagging.

\n

The following actions are related to GetObjectTagging:

\n ", + "smithy.api#examples": [ + { + "title": "To retrieve tag set of a specific object version", + "documentation": "The following example retrieves tag set of an object. The request specifies object version.", + "input": { + "Bucket": "examplebucket", + "Key": "exampleobject", + "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" + }, + "output": { + "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI", + "TagSet": [ { - "conditions": [], - "endpoint": { - "url": "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "Value": "Value1", + "Key": "Key1" } - ], - "type": "tree" - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, + ] + } + }, + { + "title": "To retrieve tag set of an object", + "documentation": "The following example retrieves tag set of an object.", + "input": { + "Bucket": "examplebucket", + "Key": "HappyFace.jpg" + }, + "output": { + "VersionId": "null", + "TagSet": [ { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] + "Value": "Value4", + "Key": "Key4" }, { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] + "Value": "Value3", + "Key": "Key3" } - ], - "endpoint": { - "url": "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + ] + } + } + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}/{Key+}?tagging", + "code": 200 + } + } + }, + "com.amazonaws.s3#GetObjectTaggingOutput": { + "type": "structure", + "members": { + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

The versionId of the object for which you got the tagging information.

", + "smithy.api#httpHeader": "x-amz-version-id" + } + }, + "TagSet": { + "target": "com.amazonaws.s3#TagSet", + "traits": { + "smithy.api#documentation": "

Contains the tag set.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "Tagging" + } + }, + "com.amazonaws.s3#GetObjectTaggingRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name containing the object for which to get the tagging information.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Object key for which to get the tagging information.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

The versionId of the object for which to get the tagging information.

", + "smithy.api#httpQuery": "versionId" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetObjectTorrent": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetObjectTorrentRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetObjectTorrentOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns torrent files from a bucket. BitTorrent can save you bandwidth when you're distributing\n large files.

\n \n

You can get torrent only for objects that are less than 5 GB in size, and that are not encrypted\n using server-side encryption with a customer-provided encryption key.

\n
\n

To use GET, you must have READ access to the object.

\n

This functionality is not supported for Amazon S3 on Outposts.

\n

The following action is related to GetObjectTorrent:

\n ", + "smithy.api#examples": [ + { + "title": "To retrieve torrent files for an object", + "documentation": "The following example retrieves torrent files of an object.", + "input": { + "Bucket": "examplebucket", + "Key": "HappyFace.jpg" + }, + "output": {} + } + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}/{Key+}?torrent", + "code": 200 + } + } + }, + "com.amazonaws.s3#GetObjectTorrentOutput": { + "type": "structure", + "members": { + "Body": { + "target": "com.amazonaws.s3#StreamingBlob", + "traits": { + "smithy.api#default": "", + "smithy.api#documentation": "

A Bencoded dictionary as defined by the BitTorrent specification

", + "smithy.api#httpPayload": {} + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#GetObjectTorrentRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket containing the object for which to get the torrent files.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The object key for which to get the information.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GetPublicAccessBlock": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#GetPublicAccessBlockRequest" + }, + "output": { + "target": "com.amazonaws.s3#GetPublicAccessBlockOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Retrieves the PublicAccessBlock configuration for an Amazon S3 bucket. To use this\n operation, you must have the s3:GetBucketPublicAccessBlock permission. For more information\n about Amazon S3 permissions, see Specifying Permissions in a\n Policy.

\n \n

When Amazon S3 evaluates the PublicAccessBlock configuration for a bucket or an object, it\n checks the PublicAccessBlock configuration for both the bucket (or the bucket that\n contains the object) and the bucket owner's account. If the PublicAccessBlock settings\n are different between the bucket and the account, Amazon S3 uses the most restrictive combination of the\n bucket-level and account-level settings.

\n
\n

For more information about when Amazon S3 considers a bucket or an object public, see The Meaning of \"Public\".

\n

The following operations are related to GetPublicAccessBlock:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?publicAccessBlock", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#GetPublicAccessBlockOutput": { + "type": "structure", + "members": { + "PublicAccessBlockConfiguration": { + "target": "com.amazonaws.s3#PublicAccessBlockConfiguration", + "traits": { + "smithy.api#documentation": "

The PublicAccessBlock configuration currently in effect for this Amazon S3 bucket.

", + "smithy.api#httpPayload": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#GetPublicAccessBlockRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the Amazon S3 bucket whose PublicAccessBlock configuration you want to retrieve.\n

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#GlacierJobParameters": { + "type": "structure", + "members": { + "Tier": { + "target": "com.amazonaws.s3#Tier", + "traits": { + "smithy.api#documentation": "

Retrieval tier at which the restore will be processed.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for S3 Glacier job parameters.

" + } + }, + "com.amazonaws.s3#Grant": { + "type": "structure", + "members": { + "Grantee": { + "target": "com.amazonaws.s3#Grantee", + "traits": { + "smithy.api#documentation": "

The person being granted permissions.

", + "smithy.api#xmlNamespace": { + "uri": "http://www.w3.org/2001/XMLSchema-instance", + "prefix": "xsi" + } + } + }, + "Permission": { + "target": "com.amazonaws.s3#Permission", + "traits": { + "smithy.api#documentation": "

Specifies the permission given to the grantee.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for grant information.

" + } + }, + "com.amazonaws.s3#GrantFullControl": { + "type": "string" + }, + "com.amazonaws.s3#GrantRead": { + "type": "string" + }, + "com.amazonaws.s3#GrantReadACP": { + "type": "string" + }, + "com.amazonaws.s3#GrantWrite": { + "type": "string" + }, + "com.amazonaws.s3#GrantWriteACP": { + "type": "string" + }, + "com.amazonaws.s3#Grantee": { + "type": "structure", + "members": { + "DisplayName": { + "target": "com.amazonaws.s3#DisplayName", + "traits": { + "smithy.api#documentation": "

Screen name of the grantee.

" + } + }, + "EmailAddress": { + "target": "com.amazonaws.s3#EmailAddress", + "traits": { + "smithy.api#documentation": "

Email address of the grantee.

\n \n

Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

\n
    \n
  • \n

    US East (N. Virginia)

    \n
  • \n
  • \n

    US West (N. California)

    \n
  • \n
  • \n

    US West (Oregon)

    \n
  • \n
  • \n

    Asia Pacific (Singapore)

    \n
  • \n
  • \n

    Asia Pacific (Sydney)

    \n
  • \n
  • \n

    Asia Pacific (Tokyo)

    \n
  • \n
  • \n

    Europe (Ireland)

    \n
  • \n
  • \n

    South America (São Paulo)

    \n
  • \n
\n

For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

\n
" + } + }, + "ID": { + "target": "com.amazonaws.s3#ID", + "traits": { + "smithy.api#documentation": "

The canonical user ID of the grantee.

" + } + }, + "URI": { + "target": "com.amazonaws.s3#URI", + "traits": { + "smithy.api#documentation": "

URI of the grantee group.

" + } + }, + "Type": { + "target": "com.amazonaws.s3#Type", + "traits": { + "smithy.api#documentation": "

Type of grantee

", + "smithy.api#required": {}, + "smithy.api#xmlAttribute": {}, + "smithy.api#xmlName": "xsi:type" + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for the person being granted permissions.

" + } + }, + "com.amazonaws.s3#Grants": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#Grant", + "traits": { + "smithy.api#xmlName": "Grant" + } + } + }, + "com.amazonaws.s3#HeadBucket": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#HeadBucketRequest" + }, + "output": { + "target": "com.amazonaws.s3#HeadBucketOutput" + }, + "errors": [ + { + "target": "com.amazonaws.s3#NotFound" + } + ], + "traits": { + "smithy.api#documentation": "

You can use this operation to determine if a bucket exists and if you have permission to access it.\n The action returns a 200 OK if the bucket exists and you have permission to access\n it.

\n \n

If the bucket does not exist or you do not have permission to access it, the HEAD\n request returns a generic 400 Bad Request, 403 Forbidden or 404 Not\n Found code. A message body is not included, so you cannot determine the exception beyond\n these HTTP response codes.

\n
\n
\n
Authentication and authorization
\n
\n

\n General purpose buckets - Request to public buckets that\n grant the s3:ListBucket permission publicly do not need to be signed. All other\n HeadBucket requests must be authenticated and signed by using IAM credentials\n (access key ID and secret access key for the IAM identities). All headers with the\n x-amz- prefix, including x-amz-copy-source, must be signed. For more\n information, see REST Authentication.

\n

\n Directory buckets - You must use IAM credentials to\n authenticate and authorize your access to the HeadBucket API operation, instead of\n using the temporary security credentials through the CreateSession API\n operation.

\n

Amazon Web Services CLI or SDKs handles authentication and authorization on your behalf.

\n
\n
Permissions
\n
\n

\n \n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n \n

You must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

\n
\n
\n
", + "smithy.api#examples": [ + { + "title": "To determine if bucket exists", + "documentation": "This operation checks to see if a bucket exists.", + "input": { + "Bucket": "acl1" + } + } + ], + "smithy.api#http": { + "method": "HEAD", + "uri": "/{Bucket}", + "code": 200 + }, + "smithy.waiters#waitable": { + "BucketExists": { + "acceptors": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] + "state": "success", + "matcher": { + "success": true } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#path}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" }, { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-east-1" - ] - } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#path}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#path}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "state": "retry", + "matcher": { + "errorType": "NotFound" } - ], - "type": "tree" - }, + } + ], + "minDelay": 5 + }, + "BucketNotExists": { + "acceptors": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] + "state": "success", + "matcher": { + "errorType": "NotFound" } - ], - "endpoint": { - "url": "{url#scheme}://{url#authority}{url#path}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, + } + ], + "minDelay": 5 + } + } + } + }, + "com.amazonaws.s3#HeadBucketOutput": { + "type": "structure", + "members": { + "BucketArn": { + "target": "com.amazonaws.s3#S3RegionalOrS3ExpressBucketArnString", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the S3 bucket. ARNs uniquely identify Amazon Web Services resources across all\n of Amazon Web Services.

\n \n

This parameter is only supported for S3 directory buckets. For more information, see Using tags with\n directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-bucket-arn" + } + }, + "BucketLocationType": { + "target": "com.amazonaws.s3#LocationType", + "traits": { + "smithy.api#documentation": "

The type of location where the bucket is created.

\n \n

This functionality is only supported by directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-bucket-location-type" + } + }, + "BucketLocationName": { + "target": "com.amazonaws.s3#BucketLocationName", + "traits": { + "smithy.api#documentation": "

The name of the location where the bucket will be created.

\n

For directory buckets, the Zone ID of the Availability Zone or the Local Zone where the bucket is created. An example\n Zone ID value for an Availability Zone is usw2-az1.

\n \n

This functionality is only supported by directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-bucket-location-name" + } + }, + "BucketRegion": { + "target": "com.amazonaws.s3#Region", + "traits": { + "smithy.api#documentation": "

The Region that the bucket is located.

", + "smithy.api#httpHeader": "x-amz-bucket-region" + } + }, + "AccessPointAlias": { + "target": "com.amazonaws.s3#AccessPointAlias", + "traits": { + "smithy.api#documentation": "

Indicates whether the bucket name used in the request is an access point alias.

\n \n

For directory buckets, the value of this field is false.

\n
", + "smithy.api#httpHeader": "x-amz-access-point-alias" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#HeadBucketRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n

\n Object Lambda access points - When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#HeadObject": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#HeadObjectRequest" + }, + "output": { + "target": "com.amazonaws.s3#HeadObjectOutput" + }, + "errors": [ + { + "target": "com.amazonaws.s3#NotFound" + } + ], + "traits": { + "smithy.api#documentation": "

The HEAD operation retrieves metadata from an object without returning the object\n itself. This operation is useful if you're interested only in an object's metadata.

\n \n

A HEAD request has the same options as a GET operation on an object. The\n response is identical to the GET response except that there is no response body. Because\n of this, if the HEAD request generates an error, it returns a generic code, such as\n 400 Bad Request, 403 Forbidden, 404 Not Found, 405\n Method Not Allowed, 412 Precondition Failed, or 304 Not Modified.\n It's not possible to retrieve the exact exception of these error codes.

\n
\n

Request headers are limited to 8 KB in size. For more information, see Common Request Headers.

\n
\n
Permissions
\n
\n

\n
    \n
  • \n

    \n General purpose bucket permissions - To use\n HEAD, you must have the s3:GetObject permission. You need the\n relevant read object (or version) permission for this operation. For more information, see\n Actions, resources,\n and condition keys for Amazon S3 in the Amazon S3 User Guide. For more\n information about the permissions to S3 API operations by S3 resource types, see Required permissions for\n Amazon S3 API operations in the Amazon S3 User Guide.

    \n

    If the object you request doesn't exist, the error that Amazon S3 returns depends on whether\n you also have the s3:ListBucket permission.

    \n
      \n
    • \n

      If you have the s3:ListBucket permission on the bucket, Amazon S3 returns an\n HTTP status code 404 Not Found error.

      \n
    • \n
    • \n

      If you don’t have the s3:ListBucket permission, Amazon S3 returns an HTTP\n status code 403 Forbidden error.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n

    If you enable x-amz-checksum-mode in the request and the object is encrypted\n with Amazon Web Services Key Management Service (Amazon Web Services KMS), you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions in IAM\n identity-based policies and KMS key policies for the KMS key to retrieve the checksum of\n the object.

    \n
  • \n
\n
\n
Encryption
\n
\n \n

Encryption request headers, like x-amz-server-side-encryption, should not be\n sent for HEAD requests if your object uses server-side encryption with Key Management Service\n (KMS) keys (SSE-KMS), dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or\n server-side encryption with Amazon S3 managed encryption keys (SSE-S3). The\n x-amz-server-side-encryption header is used when you PUT an object\n to S3 and want to specify the encryption method. If you include this header in a\n HEAD request for an object that uses these types of keys, you’ll get an HTTP\n 400 Bad Request error. It's because the encryption method can't be changed when\n you retrieve the object.

\n
\n

If you encrypt an object by using server-side encryption with customer-provided encryption\n keys (SSE-C) when you store the object in Amazon S3, then when you retrieve the metadata from the\n object, you must use the following headers to provide the encryption key for the server to be able\n to retrieve the object's metadata. The headers are:

\n
    \n
  • \n

    \n x-amz-server-side-encryption-customer-algorithm\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key-MD5\n

    \n
  • \n
\n

For more information about SSE-C, see Server-Side Encryption (Using\n Customer-Provided Encryption Keys) in the Amazon S3 User Guide.

\n \n

\n Directory bucket -\n For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS. SSE-C isn't supported. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide.

\n
\n
\n
Versioning
\n
\n
    \n
  • \n

    If the current version of the object is a delete marker, Amazon S3 behaves as if the object was\n deleted and includes x-amz-delete-marker: true in the response.

    \n
  • \n
  • \n

    If the specified version is a delete marker, the response returns a 405 Method Not\n Allowed error and the Last-Modified: timestamp response header.

    \n
  • \n
\n \n
    \n
  • \n

    \n Directory buckets -\n Delete marker is not supported for directory buckets.

    \n
  • \n
  • \n

    \n Directory buckets -\n S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the null value of the version ID is supported by directory buckets. You can only specify null to the\n versionId query parameter in the request.

    \n
  • \n
\n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n \n

For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

\n
\n
\n
\n

The following actions are related to HeadObject:

\n ", + "smithy.api#examples": [ + { + "title": "To retrieve metadata of an object without returning the object itself", + "documentation": "The following example retrieves an object metadata.", + "input": { + "Bucket": "examplebucket", + "Key": "HappyFace.jpg" + }, + "output": { + "AcceptRanges": "bytes", + "ContentType": "image/jpeg", + "LastModified": "2016-12-15T01:19:41.000Z", + "ContentLength": 3191, + "VersionId": "null", + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", + "Metadata": {} + } + } + ], + "smithy.api#http": { + "method": "HEAD", + "uri": "/{Bucket}/{Key+}", + "code": 200 + }, + "smithy.waiters#waitable": { + "ObjectExists": { + "acceptors": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] + "state": "success", + "matcher": { + "success": true } - ], - "endpoint": { - "url": "https://s3.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1" - } - ] - }, - "headers": {} - }, - "type": "endpoint" }, { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - true - ] - } - ], - "rules": [ - { - "conditions": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "us-east-1" - ] - } - ], - "endpoint": { - "url": "https://s3.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" - }, - { - "conditions": [], - "endpoint": { - "url": "https://s3.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" + "state": "retry", + "matcher": { + "errorType": "NotFound" } - ], - "type": "tree" - }, + } + ], + "minDelay": 5 + }, + "ObjectNotExists": { + "acceptors": [ { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - false - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - false - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "isSet", - "argv": [ - { - "ref": "Endpoint" - } - ] - } - ] - }, - { - "fn": "not", - "argv": [ - { - "fn": "stringEquals", - "argv": [ - { - "ref": "Region" - }, - "aws-global" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseGlobalEndpoint" - }, - false - ] + "state": "success", + "matcher": { + "errorType": "NotFound" } - ], - "endpoint": { - "url": "https://s3.{Region}.{partitionResult#dnsSuffix}", - "properties": { - "authSchemes": [ - { - "disableDoubleEncoding": true, - "name": "sigv4", - "signingName": "s3", - "signingRegion": "{Region}" - } - ] - }, - "headers": {} - }, - "type": "endpoint" } - ], - "type": "tree" - }, - { - "conditions": [], - "error": "Invalid region: region was not a valid DNS name.", - "type": "error" + ], + "minDelay": 5 + } + } + } + }, + "com.amazonaws.s3#HeadObjectOutput": { + "type": "structure", + "members": { + "DeleteMarker": { + "target": "com.amazonaws.s3#DeleteMarker", + "traits": { + "smithy.api#documentation": "

Specifies whether the object retrieved was (true) or was not (false) a Delete Marker. If false, this\n response header does not appear in the response.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-delete-marker" + } + }, + "AcceptRanges": { + "target": "com.amazonaws.s3#AcceptRanges", + "traits": { + "smithy.api#documentation": "

Indicates that a range of bytes was specified.

", + "smithy.api#httpHeader": "accept-ranges" + } + }, + "Expiration": { + "target": "com.amazonaws.s3#Expiration", + "traits": { + "smithy.api#documentation": "

If the object expiration is configured (see \n PutBucketLifecycleConfiguration\n ), the response includes this header. It\n includes the expiry-date and rule-id key-value pairs providing object\n expiration information. The value of the rule-id is URL-encoded.

\n \n

Object expiration information is not returned in directory buckets and this header returns the\n value \"NotImplemented\" in all responses for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-expiration" + } + }, + "Restore": { + "target": "com.amazonaws.s3#Restore", + "traits": { + "smithy.api#documentation": "

If the object is an archived object (an object whose storage class is GLACIER), the response\n includes this header if either the archive restoration is in progress (see RestoreObject or an archive copy is already\n restored.

\n

If an archive copy is already restored, the header value indicates when Amazon S3 is scheduled to delete\n the object copy. For example:

\n

\n x-amz-restore: ongoing-request=\"false\", expiry-date=\"Fri, 21 Dec 2012 00:00:00\n GMT\"\n

\n

If the object restoration is in progress, the header returns the value\n ongoing-request=\"true\".

\n

For more information about archiving objects, see Transitioning Objects: General Considerations.

\n \n

This functionality is not supported for directory buckets. Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.

\n
", + "smithy.api#httpHeader": "x-amz-restore" + } + }, + "ArchiveStatus": { + "target": "com.amazonaws.s3#ArchiveStatus", + "traits": { + "smithy.api#documentation": "

The archive state of the head object.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-archive-status" + } + }, + "LastModified": { + "target": "com.amazonaws.s3#LastModified", + "traits": { + "smithy.api#documentation": "

Date and time when the object was last modified.

", + "smithy.api#httpHeader": "Last-Modified" + } + }, + "ContentLength": { + "target": "com.amazonaws.s3#ContentLength", + "traits": { + "smithy.api#documentation": "

Size of the body in bytes.

", + "smithy.api#httpHeader": "Content-Length" + } + }, + "ChecksumCRC32": { + "target": "com.amazonaws.s3#ChecksumCRC32", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32 checksum of the object. This checksum is only be present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc32" + } + }, + "ChecksumCRC32C": { + "target": "com.amazonaws.s3#ChecksumCRC32C", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32C checksum of the object. This checksum is only present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc32c" + } + }, + "ChecksumCRC64NVME": { + "target": "com.amazonaws.s3#ChecksumCRC64NVME", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC64NVME checksum of the object. For more information, see\n Checking\n object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc64nvme" + } + }, + "ChecksumSHA1": { + "target": "com.amazonaws.s3#ChecksumSHA1", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA1 digest of the object. This will only be present if the object was uploaded\n with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-sha1" + } + }, + "ChecksumSHA256": { + "target": "com.amazonaws.s3#ChecksumSHA256", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA256 digest of the object. This will only be present if the object was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-sha256" + } + }, + "ChecksumType": { + "target": "com.amazonaws.s3#ChecksumType", + "traits": { + "smithy.api#documentation": "

The checksum type, which determines how part-level checksums are combined to create an object-level\n checksum for multipart objects. You can use this header response to verify that the checksum type that\n is received is the same checksum type that was specified in CreateMultipartUpload request.\n For more information, see Checking object integrity in the Amazon S3\n User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-type" + } + }, + "ETag": { + "target": "com.amazonaws.s3#ETag", + "traits": { + "smithy.api#documentation": "

An entity tag (ETag) is an opaque identifier assigned by a web server to a specific version of a\n resource found at a URL.

", + "smithy.api#httpHeader": "ETag" + } + }, + "MissingMeta": { + "target": "com.amazonaws.s3#MissingMeta", + "traits": { + "smithy.api#documentation": "

This is set to the number of metadata entries not returned in x-amz-meta headers. This\n can happen if you create metadata using an API like SOAP that supports more flexible metadata than the\n REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP\n headers.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-missing-meta" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

Version ID of the object.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-version-id" + } + }, + "CacheControl": { + "target": "com.amazonaws.s3#CacheControl", + "traits": { + "smithy.api#documentation": "

Specifies caching behavior along the request/reply chain.

", + "smithy.api#httpHeader": "Cache-Control" + } + }, + "ContentDisposition": { + "target": "com.amazonaws.s3#ContentDisposition", + "traits": { + "smithy.api#documentation": "

Specifies presentational information for the object.

", + "smithy.api#httpHeader": "Content-Disposition" + } + }, + "ContentEncoding": { + "target": "com.amazonaws.s3#ContentEncoding", + "traits": { + "smithy.api#documentation": "

Indicates what content encodings have been applied to the object and thus what decoding mechanisms\n must be applied to obtain the media-type referenced by the Content-Type header field.

", + "smithy.api#httpHeader": "Content-Encoding" + } + }, + "ContentLanguage": { + "target": "com.amazonaws.s3#ContentLanguage", + "traits": { + "smithy.api#documentation": "

The language the content is in.

", + "smithy.api#httpHeader": "Content-Language" + } + }, + "ContentType": { + "target": "com.amazonaws.s3#ContentType", + "traits": { + "smithy.api#documentation": "

A standard MIME type describing the format of the object data.

", + "smithy.api#httpHeader": "Content-Type" + } + }, + "ContentRange": { + "target": "com.amazonaws.s3#ContentRange", + "traits": { + "smithy.api#documentation": "

The portion of the object returned in the response for a GET request.

", + "smithy.api#httpHeader": "Content-Range" + } + }, + "Expires": { + "target": "com.amazonaws.s3#Expires", + "traits": { + "smithy.api#documentation": "

The date and time at which the object is no longer cacheable.

", + "smithy.api#httpHeader": "Expires" + } + }, + "WebsiteRedirectLocation": { + "target": "com.amazonaws.s3#WebsiteRedirectLocation", + "traits": { + "smithy.api#documentation": "

If the bucket is configured as a website, redirects requests for this object to another object in\n the same bucket or to an external URL. Amazon S3 stores the value of this header in the object\n metadata.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-website-redirect-location" + } + }, + "ServerSideEncryption": { + "target": "com.amazonaws.s3#ServerSideEncryption", + "traits": { + "smithy.api#documentation": "

The server-side encryption algorithm used when you store this object in Amazon S3 or Amazon FSx.

\n \n

When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side\n encryption option is aws:fsx.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption" + } + }, + "Metadata": { + "target": "com.amazonaws.s3#Metadata", + "traits": { + "smithy.api#documentation": "

A map of metadata to store with the object in S3.

", + "smithy.api#httpPrefixHeaders": "x-amz-meta-" + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the response will\n include this header to confirm the encryption algorithm that's used.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the response will\n include this header to provide the round-trip message integrity verification of the customer-provided\n encryption key.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } + }, + "SSEKMSKeyId": { + "target": "com.amazonaws.s3#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

If present, indicates the ID of the KMS key that was used for object encryption.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" + } + }, + "BucketKeyEnabled": { + "target": "com.amazonaws.s3#BucketKeyEnabled", + "traits": { + "smithy.api#documentation": "

Indicates whether the object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS)\n keys (SSE-KMS).

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3#StorageClass", + "traits": { + "smithy.api#documentation": "

Provides storage class information of the object. Amazon S3 returns this header for all objects except\n for S3 Standard storage class objects.

\n

For more information, see Storage Classes.

\n \n

\n Directory buckets -\n Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.

\n
", + "smithy.api#httpHeader": "x-amz-storage-class" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } + }, + "ReplicationStatus": { + "target": "com.amazonaws.s3#ReplicationStatus", + "traits": { + "smithy.api#documentation": "

Amazon S3 can return this header if your request involves a bucket that is either a source or a\n destination in a replication rule.

\n

In replication, you have a source bucket on which you configure replication and destination bucket\n or buckets where Amazon S3 stores object replicas. When you request an object (GetObject) or\n object metadata (HeadObject) from these buckets, Amazon S3 will return the\n x-amz-replication-status header in the response as follows:

\n
    \n
  • \n

    \n If requesting an object from the source bucket, Amazon S3 will\n return the x-amz-replication-status header if the object in your request is eligible\n for replication.

    \n

    For example, suppose that in your replication configuration, you specify object prefix\n TaxDocs requesting Amazon S3 to replicate objects with key prefix TaxDocs.\n Any objects you upload with this key name prefix, for example TaxDocs/document1.pdf,\n are eligible for replication. For any object request with this key name prefix, Amazon S3 will return the\n x-amz-replication-status header with value PENDING, COMPLETED or FAILED indicating\n object replication status.

    \n
  • \n
  • \n

    \n If requesting an object from a destination bucket, Amazon S3 will\n return the x-amz-replication-status header with value REPLICA if the object in your\n request is a replica that Amazon S3 created and there is no replica modification replication in\n progress.

    \n
  • \n
  • \n

    \n When replicating objects to multiple destination buckets, the\n x-amz-replication-status header acts differently. The header of the source object\n will only return a value of COMPLETED when replication is successful to all destinations. The header\n will remain at value PENDING until replication has completed for all destinations. If one or more\n destinations fails replication the header will return FAILED.

    \n
  • \n
\n

For more information, see Replication.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-replication-status" + } + }, + "PartsCount": { + "target": "com.amazonaws.s3#PartsCount", + "traits": { + "smithy.api#documentation": "

The count of parts this object has. This value is only returned if you specify\n partNumber in your request and the object was uploaded as a multipart upload.

", + "smithy.api#httpHeader": "x-amz-mp-parts-count" + } + }, + "TagCount": { + "target": "com.amazonaws.s3#TagCount", + "traits": { + "smithy.api#documentation": "

The number of tags, if any, on the object, when you have the relevant permission to read object\n tags.

\n

You can use GetObjectTagging to retrieve the tag set associated with an object.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-tagging-count" + } + }, + "ObjectLockMode": { + "target": "com.amazonaws.s3#ObjectLockMode", + "traits": { + "smithy.api#documentation": "

The Object Lock mode, if any, that's in effect for this object. This header is only returned if the\n requester has the s3:GetObjectRetention permission. For more information about S3 Object\n Lock, see Object Lock.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-object-lock-mode" + } + }, + "ObjectLockRetainUntilDate": { + "target": "com.amazonaws.s3#ObjectLockRetainUntilDate", + "traits": { + "smithy.api#documentation": "

The date and time when the Object Lock retention period expires. This header is only returned if the\n requester has the s3:GetObjectRetention permission.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-object-lock-retain-until-date" + } + }, + "ObjectLockLegalHoldStatus": { + "target": "com.amazonaws.s3#ObjectLockLegalHoldStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether a legal hold is in effect for this object. This header is only returned if the\n requester has the s3:GetObjectLegalHold permission. This header is not returned if the\n specified version of this object has never had a legal hold applied. For more information about S3\n Object Lock, see Object\n Lock.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-object-lock-legal-hold" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#HeadObjectRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket that contains the object.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "IfMatch": { + "target": "com.amazonaws.s3#IfMatch", + "traits": { + "smithy.api#documentation": "

Return the object only if its entity tag (ETag) is the same as the one specified; otherwise, return\n a 412 (precondition failed) error.

\n

If both of the If-Match and If-Unmodified-Since headers are present in the\n request as follows:

\n
    \n
  • \n

    \n If-Match condition evaluates to true, and;

    \n
  • \n
  • \n

    \n If-Unmodified-Since condition evaluates to false;

    \n
  • \n
\n

Then Amazon S3 returns 200 OK and the data requested.

\n

For more information about conditional requests, see RFC 7232.

", + "smithy.api#httpHeader": "If-Match" + } + }, + "IfModifiedSince": { + "target": "com.amazonaws.s3#IfModifiedSince", + "traits": { + "smithy.api#documentation": "

Return the object only if it has been modified since the specified time; otherwise, return a 304\n (not modified) error.

\n

If both of the If-None-Match and If-Modified-Since headers are present in\n the request as follows:

\n
    \n
  • \n

    \n If-None-Match condition evaluates to false, and;

    \n
  • \n
  • \n

    \n If-Modified-Since condition evaluates to true;

    \n
  • \n
\n

Then Amazon S3 returns the 304 Not Modified response code.

\n

For more information about conditional requests, see RFC 7232.

", + "smithy.api#httpHeader": "If-Modified-Since" + } + }, + "IfNoneMatch": { + "target": "com.amazonaws.s3#IfNoneMatch", + "traits": { + "smithy.api#documentation": "

Return the object only if its entity tag (ETag) is different from the one specified; otherwise,\n return a 304 (not modified) error.

\n

If both of the If-None-Match and If-Modified-Since headers are present in\n the request as follows:

\n
    \n
  • \n

    \n If-None-Match condition evaluates to false, and;

    \n
  • \n
  • \n

    \n If-Modified-Since condition evaluates to true;

    \n
  • \n
\n

Then Amazon S3 returns the 304 Not Modified response code.

\n

For more information about conditional requests, see RFC 7232.

", + "smithy.api#httpHeader": "If-None-Match" + } + }, + "IfUnmodifiedSince": { + "target": "com.amazonaws.s3#IfUnmodifiedSince", + "traits": { + "smithy.api#documentation": "

Return the object only if it has not been modified since the specified time; otherwise, return a 412\n (precondition failed) error.

\n

If both of the If-Match and If-Unmodified-Since headers are present in the\n request as follows:

\n
    \n
  • \n

    \n If-Match condition evaluates to true, and;

    \n
  • \n
  • \n

    \n If-Unmodified-Since condition evaluates to false;

    \n
  • \n
\n

Then Amazon S3 returns 200 OK and the data requested.

\n

For more information about conditional requests, see RFC 7232.

", + "smithy.api#httpHeader": "If-Unmodified-Since" + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The object key.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Key" + } + } + }, + "Range": { + "target": "com.amazonaws.s3#Range", + "traits": { + "smithy.api#documentation": "

HeadObject returns only the metadata for an object. If the Range is satisfiable, only the\n ContentLength is affected in the response. If the Range is not satisfiable, S3 returns a\n 416 - Requested Range Not Satisfiable error.

", + "smithy.api#httpHeader": "Range" + } + }, + "ResponseCacheControl": { + "target": "com.amazonaws.s3#ResponseCacheControl", + "traits": { + "smithy.api#documentation": "

Sets the Cache-Control header of the response.

", + "smithy.api#httpQuery": "response-cache-control" + } + }, + "ResponseContentDisposition": { + "target": "com.amazonaws.s3#ResponseContentDisposition", + "traits": { + "smithy.api#documentation": "

Sets the Content-Disposition header of the response.

", + "smithy.api#httpQuery": "response-content-disposition" + } + }, + "ResponseContentEncoding": { + "target": "com.amazonaws.s3#ResponseContentEncoding", + "traits": { + "smithy.api#documentation": "

Sets the Content-Encoding header of the response.

", + "smithy.api#httpQuery": "response-content-encoding" + } + }, + "ResponseContentLanguage": { + "target": "com.amazonaws.s3#ResponseContentLanguage", + "traits": { + "smithy.api#documentation": "

Sets the Content-Language header of the response.

", + "smithy.api#httpQuery": "response-content-language" + } + }, + "ResponseContentType": { + "target": "com.amazonaws.s3#ResponseContentType", + "traits": { + "smithy.api#documentation": "

Sets the Content-Type header of the response.

", + "smithy.api#httpQuery": "response-content-type" + } + }, + "ResponseExpires": { + "target": "com.amazonaws.s3#ResponseExpires", + "traits": { + "smithy.api#documentation": "

Sets the Expires header of the response.

", + "smithy.api#httpQuery": "response-expires" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

Version ID used to reference a specific version of the object.

\n \n

For directory buckets in this API operation, only the null value of the version ID is supported.

\n
", + "smithy.api#httpQuery": "versionId" + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKey": { + "target": "com.amazonaws.s3#SSECustomerKey", + "traits": { + "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is\n used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must\n be appropriate for use with the algorithm specified in the\n x-amz-server-side-encryption-customer-algorithm header.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header\n for a message integrity check to ensure that the encryption key was transmitted without error.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "PartNumber": { + "target": "com.amazonaws.s3#PartNumber", + "traits": { + "smithy.api#documentation": "

Part number of the object being read. This is a positive integer between 1 and 10,000. Effectively\n performs a 'ranged' HEAD request for the part specified. Useful querying about the size of the part and\n the number of parts in this object.

", + "smithy.api#httpQuery": "partNumber" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "ChecksumMode": { + "target": "com.amazonaws.s3#ChecksumMode", + "traits": { + "smithy.api#documentation": "

To retrieve the checksum, this parameter must be enabled.

\n

\n General purpose buckets -\n If you enable checksum mode and the object is uploaded with a checksum and encrypted with\n an Key Management Service (KMS) key, you must have permission to use the kms:Decrypt action to\n retrieve the checksum.

\n

\n Directory buckets - If you enable ChecksumMode\n and the object is encrypted with Amazon Web Services Key Management Service (Amazon Web Services KMS), you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions in IAM identity-based\n policies and KMS key policies for the KMS key to retrieve the checksum of the object.

", + "smithy.api#httpHeader": "x-amz-checksum-mode" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#HostName": { + "type": "string" + }, + "com.amazonaws.s3#HttpErrorCodeReturnedEquals": { + "type": "string" + }, + "com.amazonaws.s3#HttpRedirectCode": { + "type": "string" + }, + "com.amazonaws.s3#ID": { + "type": "string" + }, + "com.amazonaws.s3#IdempotencyParameterMismatch": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

Parameters on this idempotent request are inconsistent with parameters used in previous request(s).

\n

For a list of error codes and more information on Amazon S3 errors, see Error codes.

\n \n

Idempotency ensures that an API request completes no more than one time. With an idempotent\n request, if the original request completes successfully, any subsequent retries complete successfully\n without performing any further actions.

\n
", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.s3#IfMatch": { + "type": "string" + }, + "com.amazonaws.s3#IfMatchInitiatedTime": { + "type": "timestamp", + "traits": { + "smithy.api#timestampFormat": "http-date" + } + }, + "com.amazonaws.s3#IfMatchLastModifiedTime": { + "type": "timestamp", + "traits": { + "smithy.api#timestampFormat": "http-date" + } + }, + "com.amazonaws.s3#IfMatchSize": { + "type": "long" + }, + "com.amazonaws.s3#IfModifiedSince": { + "type": "timestamp" + }, + "com.amazonaws.s3#IfNoneMatch": { + "type": "string" + }, + "com.amazonaws.s3#IfUnmodifiedSince": { + "type": "timestamp" + }, + "com.amazonaws.s3#IndexDocument": { + "type": "structure", + "members": { + "Suffix": { + "target": "com.amazonaws.s3#Suffix", + "traits": { + "smithy.api#documentation": "

A suffix that is appended to a request that is for a directory on the website endpoint. (For\n example, if the suffix is index.html and you make a request to\n samplebucket/images/, the data that is returned will be for the object with the key name\n images/index.html.) The suffix must not be empty and must not include a slash\n character.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for the Suffix element.

" + } + }, + "com.amazonaws.s3#Initiated": { + "type": "timestamp" + }, + "com.amazonaws.s3#Initiator": { + "type": "structure", + "members": { + "ID": { + "target": "com.amazonaws.s3#ID", + "traits": { + "smithy.api#documentation": "

If the principal is an Amazon Web Services account, it provides the Canonical User ID. If the principal is an\n IAM User, it provides a user ARN value.

\n \n

\n Directory buckets - If the principal is an Amazon Web Services account,\n it provides the Amazon Web Services account ID. If the principal is an IAM User, it provides a user ARN\n value.

\n
" + } + }, + "DisplayName": { + "target": "com.amazonaws.s3#DisplayName", + "traits": { + "smithy.api#documentation": "

Name of the Principal.

\n \n

This functionality is not supported for directory buckets.

\n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

Container element that identifies who initiated the multipart upload.

" + } + }, + "com.amazonaws.s3#InputSerialization": { + "type": "structure", + "members": { + "CSV": { + "target": "com.amazonaws.s3#CSVInput", + "traits": { + "smithy.api#documentation": "

Describes the serialization of a CSV-encoded object.

" + } + }, + "CompressionType": { + "target": "com.amazonaws.s3#CompressionType", + "traits": { + "smithy.api#documentation": "

Specifies object's compression format. Valid values: NONE, GZIP, BZIP2. Default Value: NONE.

" + } + }, + "JSON": { + "target": "com.amazonaws.s3#JSONInput", + "traits": { + "smithy.api#documentation": "

Specifies JSON as object's input serialization format.

" + } + }, + "Parquet": { + "target": "com.amazonaws.s3#ParquetInput", + "traits": { + "smithy.api#documentation": "

Specifies Parquet as object's input serialization format.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Describes the serialization format of the object.

" + } + }, + "com.amazonaws.s3#IntelligentTieringAccessTier": { + "type": "enum", + "members": { + "ARCHIVE_ACCESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ARCHIVE_ACCESS" + } + }, + "DEEP_ARCHIVE_ACCESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DEEP_ARCHIVE_ACCESS" + } + } + } + }, + "com.amazonaws.s3#IntelligentTieringAndOperator": { + "type": "structure", + "members": { + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

An object key name prefix that identifies the subset of objects to which the configuration\n applies.

" + } + }, + "Tags": { + "target": "com.amazonaws.s3#TagSet", + "traits": { + "smithy.api#documentation": "

All of these tags must exist in the object's tag set in order for the configuration to apply.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Tag" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container for specifying S3 Intelligent-Tiering filters. The filters determine the subset of\n objects to which the rule applies.

" + } + }, + "com.amazonaws.s3#IntelligentTieringConfiguration": { + "type": "structure", + "members": { + "Id": { + "target": "com.amazonaws.s3#IntelligentTieringId", + "traits": { + "smithy.api#documentation": "

The ID used to identify the S3 Intelligent-Tiering configuration.

", + "smithy.api#required": {} + } + }, + "Filter": { + "target": "com.amazonaws.s3#IntelligentTieringFilter", + "traits": { + "smithy.api#documentation": "

Specifies a bucket filter. The configuration only includes objects that meet the filter's\n criteria.

" + } + }, + "Status": { + "target": "com.amazonaws.s3#IntelligentTieringStatus", + "traits": { + "smithy.api#documentation": "

Specifies the status of the configuration.

", + "smithy.api#required": {} + } + }, + "Tierings": { + "target": "com.amazonaws.s3#TieringList", + "traits": { + "smithy.api#documentation": "

Specifies the S3 Intelligent-Tiering storage class tier of the configuration.

", + "smithy.api#required": {}, + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Tiering" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket.

\n

For information about the S3 Intelligent-Tiering storage class, see Storage class for\n automatically optimizing frequently and infrequently accessed objects.

" + } + }, + "com.amazonaws.s3#IntelligentTieringConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#IntelligentTieringConfiguration" + } + }, + "com.amazonaws.s3#IntelligentTieringDays": { + "type": "integer" + }, + "com.amazonaws.s3#IntelligentTieringFilter": { + "type": "structure", + "members": { + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

An object key name prefix that identifies the subset of objects to which the rule applies.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
" + } + }, + "Tag": { + "target": "com.amazonaws.s3#Tag" + }, + "And": { + "target": "com.amazonaws.s3#IntelligentTieringAndOperator", + "traits": { + "smithy.api#documentation": "

A conjunction (logical AND) of predicates, which is used in evaluating a metrics filter. The\n operator must have at least two predicates, and an object must match all of the predicates in order for\n the filter to apply.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The Filter is used to identify objects that the S3 Intelligent-Tiering configuration\n applies to.

" + } + }, + "com.amazonaws.s3#IntelligentTieringId": { + "type": "string" + }, + "com.amazonaws.s3#IntelligentTieringStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.s3#InvalidObjectState": { + "type": "structure", + "members": { + "StorageClass": { + "target": "com.amazonaws.s3#StorageClass" + }, + "AccessTier": { + "target": "com.amazonaws.s3#IntelligentTieringAccessTier" + } + }, + "traits": { + "smithy.api#documentation": "

Object is archived and inaccessible until restored.

\n

If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval storage class, the\n S3 Glacier Deep Archive storage class, the S3 Intelligent-Tiering Archive Access tier, or the\n S3 Intelligent-Tiering Deep Archive Access tier, before you can retrieve the object you must first restore a copy\n using RestoreObject. Otherwise, this operation returns an InvalidObjectState error. For\n information about restoring archived objects, see Restoring Archived Objects in the\n Amazon S3 User Guide.

", + "smithy.api#error": "client", + "smithy.api#httpError": 403 + } + }, + "com.amazonaws.s3#InvalidRequest": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

You may receive this error in multiple cases. Depending on the reason for the error, you may receive\n one of the messages below:

\n
    \n
  • \n

    Cannot specify both a write offset value and user-defined object metadata for existing\n objects.

    \n
  • \n
  • \n

    Checksum Type mismatch occurred, expected checksum Type: sha1, actual checksum Type:\n crc32c.

    \n
  • \n
  • \n

    Request body cannot be empty when 'write offset' is specified.

    \n
  • \n
", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.s3#InvalidWriteOffset": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

The write offset value that you specified does not match the current object size.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.s3#InventoryConfiguration": { + "type": "structure", + "members": { + "Destination": { + "target": "com.amazonaws.s3#InventoryDestination", + "traits": { + "smithy.api#documentation": "

Contains information about where to publish the inventory results.

", + "smithy.api#required": {} + } + }, + "IsEnabled": { + "target": "com.amazonaws.s3#IsEnabled", + "traits": { + "smithy.api#documentation": "

Specifies whether the inventory is enabled or disabled. If set to True, an inventory\n list is generated. If set to False, no inventory list is generated.

", + "smithy.api#required": {} + } + }, + "Filter": { + "target": "com.amazonaws.s3#InventoryFilter", + "traits": { + "smithy.api#documentation": "

Specifies an inventory filter. The inventory only includes objects that meet the filter's\n criteria.

" + } + }, + "Id": { + "target": "com.amazonaws.s3#InventoryId", + "traits": { + "smithy.api#documentation": "

The ID used to identify the inventory configuration.

", + "smithy.api#required": {} + } + }, + "IncludedObjectVersions": { + "target": "com.amazonaws.s3#InventoryIncludedObjectVersions", + "traits": { + "smithy.api#documentation": "

Object versions to include in the inventory list. If set to All, the list includes all\n the object versions, which adds the version-related fields VersionId,\n IsLatest, and DeleteMarker to the list. If set to Current, the\n list does not contain these version-related fields.

", + "smithy.api#required": {} + } + }, + "OptionalFields": { + "target": "com.amazonaws.s3#InventoryOptionalFields", + "traits": { + "smithy.api#documentation": "

Contains the optional fields that are included in the inventory results.

" + } + }, + "Schedule": { + "target": "com.amazonaws.s3#InventorySchedule", + "traits": { + "smithy.api#documentation": "

Specifies the schedule for generating inventory results.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the S3 Inventory configuration for an Amazon S3 bucket. For more information, see GET Bucket\n inventory in the Amazon S3 API Reference.

" + } + }, + "com.amazonaws.s3#InventoryConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#InventoryConfiguration" + } + }, + "com.amazonaws.s3#InventoryConfigurationState": { + "type": "enum", + "members": { + "ENABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENABLED" + } + }, + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED" + } + } + } + }, + "com.amazonaws.s3#InventoryDestination": { + "type": "structure", + "members": { + "S3BucketDestination": { + "target": "com.amazonaws.s3#InventoryS3BucketDestination", + "traits": { + "smithy.api#documentation": "

Contains the bucket name, file format, bucket owner (optional), and prefix (optional) where\n inventory results are published.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the S3 Inventory configuration for an Amazon S3 bucket.

" + } + }, + "com.amazonaws.s3#InventoryEncryption": { + "type": "structure", + "members": { + "SSES3": { + "target": "com.amazonaws.s3#SSES3", + "traits": { + "smithy.api#documentation": "

Specifies the use of SSE-S3 to encrypt delivered inventory reports.

", + "smithy.api#xmlName": "SSE-S3" + } + }, + "SSEKMS": { + "target": "com.amazonaws.s3#SSEKMS", + "traits": { + "smithy.api#documentation": "

Specifies the use of SSE-KMS to encrypt delivered inventory reports.

", + "smithy.api#xmlName": "SSE-KMS" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the type of server-side encryption used to encrypt the S3 Inventory results.

" + } + }, + "com.amazonaws.s3#InventoryFilter": { + "type": "structure", + "members": { + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

The prefix that an object must have to be included in the inventory results.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies an S3 Inventory filter. The inventory only includes objects that meet the filter's\n criteria.

" + } + }, + "com.amazonaws.s3#InventoryFormat": { + "type": "enum", + "members": { + "CSV": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CSV" + } + }, + "ORC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ORC" + } + }, + "Parquet": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Parquet" + } + } + } + }, + "com.amazonaws.s3#InventoryFrequency": { + "type": "enum", + "members": { + "Daily": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Daily" + } + }, + "Weekly": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Weekly" + } + } + } + }, + "com.amazonaws.s3#InventoryId": { + "type": "string" + }, + "com.amazonaws.s3#InventoryIncludedObjectVersions": { + "type": "enum", + "members": { + "All": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "All" + } + }, + "Current": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Current" + } + } + } + }, + "com.amazonaws.s3#InventoryOptionalField": { + "type": "enum", + "members": { + "Size": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Size" + } + }, + "LastModifiedDate": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LastModifiedDate" + } + }, + "StorageClass": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "StorageClass" + } + }, + "ETag": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ETag" + } + }, + "IsMultipartUploaded": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IsMultipartUploaded" + } + }, + "ReplicationStatus": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ReplicationStatus" + } + }, + "EncryptionStatus": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EncryptionStatus" + } + }, + "ObjectLockRetainUntilDate": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ObjectLockRetainUntilDate" + } + }, + "ObjectLockMode": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ObjectLockMode" + } + }, + "ObjectLockLegalHoldStatus": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ObjectLockLegalHoldStatus" + } + }, + "IntelligentTieringAccessTier": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IntelligentTieringAccessTier" + } + }, + "BucketKeyStatus": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BucketKeyStatus" + } + }, + "ChecksumAlgorithm": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ChecksumAlgorithm" + } + }, + "ObjectAccessControlList": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ObjectAccessControlList" + } + }, + "ObjectOwner": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ObjectOwner" + } + } + } + }, + "com.amazonaws.s3#InventoryOptionalFields": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#InventoryOptionalField", + "traits": { + "smithy.api#xmlName": "Field" + } + } + }, + "com.amazonaws.s3#InventoryS3BucketDestination": { + "type": "structure", + "members": { + "AccountId": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID that owns the destination S3 bucket. If no account ID is provided, the owner is not\n validated before exporting data.

\n \n

Although this value is optional, we strongly recommend that you set it to help prevent problems\n if the destination bucket ownership changes.

\n
" + } + }, + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the bucket where inventory results will be published.

", + "smithy.api#required": {} + } + }, + "Format": { + "target": "com.amazonaws.s3#InventoryFormat", + "traits": { + "smithy.api#documentation": "

Specifies the output format of the inventory results.

", + "smithy.api#required": {} + } + }, + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

The prefix that is prepended to all inventory results.

" + } + }, + "Encryption": { + "target": "com.amazonaws.s3#InventoryEncryption", + "traits": { + "smithy.api#documentation": "

Contains the type of server-side encryption used to encrypt the inventory results.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the bucket name, file format, bucket owner (optional), and prefix (optional) where\n S3 Inventory results are published.

" + } + }, + "com.amazonaws.s3#InventorySchedule": { + "type": "structure", + "members": { + "Frequency": { + "target": "com.amazonaws.s3#InventoryFrequency", + "traits": { + "smithy.api#documentation": "

Specifies how frequently inventory results are produced.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the schedule for generating S3 Inventory results.

" + } + }, + "com.amazonaws.s3#InventoryTableConfiguration": { + "type": "structure", + "members": { + "ConfigurationState": { + "target": "com.amazonaws.s3#InventoryConfigurationState", + "traits": { + "smithy.api#documentation": "

\n The configuration state of the inventory table, indicating whether the inventory table is enabled \n or disabled.\n

", + "smithy.api#required": {} + } + }, + "EncryptionConfiguration": { + "target": "com.amazonaws.s3#MetadataTableEncryptionConfiguration", + "traits": { + "smithy.api#documentation": "

\n The encryption configuration for the inventory table.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

\n The inventory table configuration for an S3 Metadata configuration.\n

" + } + }, + "com.amazonaws.s3#InventoryTableConfigurationResult": { + "type": "structure", + "members": { + "ConfigurationState": { + "target": "com.amazonaws.s3#InventoryConfigurationState", + "traits": { + "smithy.api#documentation": "

\n The configuration state of the inventory table, indicating whether the inventory table is enabled \n or disabled.\n

", + "smithy.api#required": {} + } + }, + "TableStatus": { + "target": "com.amazonaws.s3#MetadataTableStatus", + "traits": { + "smithy.api#documentation": "

The status of the inventory table. The status values are:

\n
    \n
  • \n

    \n CREATING - The inventory table is in the process of being created in the specified\n Amazon Web Services managed table bucket.

    \n
  • \n
  • \n

    \n BACKFILLING - The inventory table is in the process of being backfilled. When \n you enable the inventory table for your metadata configuration, the table goes through a \n process known as backfilling, during which Amazon S3 scans your general purpose bucket to retrieve \n the initial metadata for all objects in the bucket. Depending on the number of objects in your \n bucket, this process can take several hours. When the backfilling process is finished, the \n status of your inventory table changes from BACKFILLING to ACTIVE. \n After backfilling is completed, updates to your objects are reflected in the inventory table \n within one hour.

    \n
  • \n
  • \n

    \n ACTIVE - The inventory table has been created successfully, and records are being\n delivered to the table.

    \n
  • \n
  • \n

    \n FAILED - Amazon S3 is unable to create the inventory table, or Amazon S3 is unable to deliver\n records.

    \n
  • \n
" + } + }, + "Error": { + "target": "com.amazonaws.s3#ErrorDetails" + }, + "TableName": { + "target": "com.amazonaws.s3#S3TablesName", + "traits": { + "smithy.api#documentation": "

\n The name of the inventory table.\n

" + } + }, + "TableArn": { + "target": "com.amazonaws.s3#S3TablesArn", + "traits": { + "smithy.api#documentation": "

\n The Amazon Resource Name (ARN) for the inventory table.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

\n The inventory table configuration for an S3 Metadata configuration.\n

" + } + }, + "com.amazonaws.s3#InventoryTableConfigurationUpdates": { + "type": "structure", + "members": { + "ConfigurationState": { + "target": "com.amazonaws.s3#InventoryConfigurationState", + "traits": { + "smithy.api#documentation": "

\n The configuration state of the inventory table, indicating whether the inventory table is enabled \n or disabled.\n

", + "smithy.api#required": {} + } + }, + "EncryptionConfiguration": { + "target": "com.amazonaws.s3#MetadataTableEncryptionConfiguration", + "traits": { + "smithy.api#documentation": "

\n The encryption configuration for the inventory table.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

\n The specified updates to the S3 Metadata inventory table configuration.\n

" + } + }, + "com.amazonaws.s3#IsEnabled": { + "type": "boolean" + }, + "com.amazonaws.s3#IsLatest": { + "type": "boolean" + }, + "com.amazonaws.s3#IsPublic": { + "type": "boolean" + }, + "com.amazonaws.s3#IsRestoreInProgress": { + "type": "boolean" + }, + "com.amazonaws.s3#IsTruncated": { + "type": "boolean" + }, + "com.amazonaws.s3#JSONInput": { + "type": "structure", + "members": { + "Type": { + "target": "com.amazonaws.s3#JSONType", + "traits": { + "smithy.api#documentation": "

The type of JSON. Valid values: Document, Lines.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies JSON as object's input serialization format.

" + } + }, + "com.amazonaws.s3#JSONOutput": { + "type": "structure", + "members": { + "RecordDelimiter": { + "target": "com.amazonaws.s3#RecordDelimiter", + "traits": { + "smithy.api#documentation": "

The value used to separate individual records in the output. If no value is specified, Amazon S3 uses a\n newline character ('\\n').

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies JSON as request's output serialization format.

" + } + }, + "com.amazonaws.s3#JSONType": { + "type": "enum", + "members": { + "DOCUMENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DOCUMENT" + } + }, + "LINES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LINES" + } + } + } + }, + "com.amazonaws.s3#JournalTableConfiguration": { + "type": "structure", + "members": { + "RecordExpiration": { + "target": "com.amazonaws.s3#RecordExpiration", + "traits": { + "smithy.api#documentation": "

\n The journal table record expiration settings for the journal table.\n

", + "smithy.api#required": {} + } + }, + "EncryptionConfiguration": { + "target": "com.amazonaws.s3#MetadataTableEncryptionConfiguration", + "traits": { + "smithy.api#documentation": "

\n The encryption configuration for the journal table.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

\n The journal table configuration for an S3 Metadata configuration.\n

" + } + }, + "com.amazonaws.s3#JournalTableConfigurationResult": { + "type": "structure", + "members": { + "TableStatus": { + "target": "com.amazonaws.s3#MetadataTableStatus", + "traits": { + "smithy.api#documentation": "

The status of the journal table. The status values are:

\n
    \n
  • \n

    \n CREATING - The journal table is in the process of being created in the specified\n table bucket.

    \n
  • \n
  • \n

    \n ACTIVE - The journal table has been created successfully, and records are being\n delivered to the table.

    \n
  • \n
  • \n

    \n FAILED - Amazon S3 is unable to create the journal table, or Amazon S3 is unable to deliver\n records.

    \n
  • \n
", + "smithy.api#required": {} + } + }, + "Error": { + "target": "com.amazonaws.s3#ErrorDetails" + }, + "TableName": { + "target": "com.amazonaws.s3#S3TablesName", + "traits": { + "smithy.api#documentation": "

\n The name of the journal table.\n

", + "smithy.api#required": {} + } + }, + "TableArn": { + "target": "com.amazonaws.s3#S3TablesArn", + "traits": { + "smithy.api#documentation": "

\n The Amazon Resource Name (ARN) for the journal table.\n

" + } + }, + "RecordExpiration": { + "target": "com.amazonaws.s3#RecordExpiration", + "traits": { + "smithy.api#documentation": "

\n The journal table record expiration settings for the journal table.\n

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

\n The journal table configuration for the S3 Metadata configuration.\n

" + } + }, + "com.amazonaws.s3#JournalTableConfigurationUpdates": { + "type": "structure", + "members": { + "RecordExpiration": { + "target": "com.amazonaws.s3#RecordExpiration", + "traits": { + "smithy.api#documentation": "

\n The journal table record expiration settings for the journal table.\n

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

\n The specified updates to the S3 Metadata journal table configuration.\n

" + } + }, + "com.amazonaws.s3#KMSContext": { + "type": "string" + }, + "com.amazonaws.s3#KeyCount": { + "type": "integer" + }, + "com.amazonaws.s3#KeyMarker": { + "type": "string" + }, + "com.amazonaws.s3#KeyPrefixEquals": { + "type": "string" + }, + "com.amazonaws.s3#KmsKeyArn": { + "type": "string" + }, + "com.amazonaws.s3#LambdaFunctionArn": { + "type": "string" + }, + "com.amazonaws.s3#LambdaFunctionConfiguration": { + "type": "structure", + "members": { + "Id": { + "target": "com.amazonaws.s3#NotificationId" + }, + "LambdaFunctionArn": { + "target": "com.amazonaws.s3#LambdaFunctionArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Lambda function that Amazon S3 invokes when the specified event\n type occurs.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "CloudFunction" + } + }, + "Events": { + "target": "com.amazonaws.s3#EventList", + "traits": { + "smithy.api#documentation": "

The Amazon S3 bucket event for which to invoke the Lambda function. For more information, see Supported Event Types in\n the Amazon S3 User Guide.

", + "smithy.api#required": {}, + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Event" + } + }, + "Filter": { + "target": "com.amazonaws.s3#NotificationConfigurationFilter" + } + }, + "traits": { + "smithy.api#documentation": "

A container for specifying the configuration for Lambda notifications.

" + } + }, + "com.amazonaws.s3#LambdaFunctionConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#LambdaFunctionConfiguration" + } + }, + "com.amazonaws.s3#LastModified": { + "type": "timestamp" + }, + "com.amazonaws.s3#LastModifiedTime": { + "type": "timestamp", + "traits": { + "smithy.api#timestampFormat": "http-date" + } + }, + "com.amazonaws.s3#LifecycleExpiration": { + "type": "structure", + "members": { + "Date": { + "target": "com.amazonaws.s3#Date", + "traits": { + "smithy.api#documentation": "

Indicates at what date the object is to be moved or deleted. The date value must conform to the ISO\n 8601 format. The time is always midnight UTC.

\n \n

This parameter applies to general purpose buckets only. It is not supported for directory bucket\n lifecycle configurations.

\n
" + } + }, + "Days": { + "target": "com.amazonaws.s3#Days", + "traits": { + "smithy.api#documentation": "

Indicates the lifetime, in days, of the objects that are subject to the rule. The value must be a\n non-zero positive integer.

" + } + }, + "ExpiredObjectDeleteMarker": { + "target": "com.amazonaws.s3#ExpiredObjectDeleteMarker", + "traits": { + "smithy.api#documentation": "

Indicates whether Amazon S3 will remove a delete marker with no noncurrent versions. If set to true, the\n delete marker will be expired; if set to false the policy takes no action. This cannot be specified with\n Days or Date in a Lifecycle Expiration Policy.

\n \n

This parameter applies to general purpose buckets only. It is not supported for directory bucket\n lifecycle configurations.

\n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for the expiration for the lifecycle of the object.

\n

For more information see, Managing your storage lifecycle in\n the Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3#LifecycleRule": { + "type": "structure", + "members": { + "Expiration": { + "target": "com.amazonaws.s3#LifecycleExpiration", + "traits": { + "smithy.api#documentation": "

Specifies the expiration for the lifecycle of the object in the form of date, days and, whether the\n object has a delete marker.

" + } + }, + "ID": { + "target": "com.amazonaws.s3#ID", + "traits": { + "smithy.api#documentation": "

Unique identifier for the rule. The value cannot be longer than 255 characters.

" + } + }, + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#deprecated": {}, + "smithy.api#documentation": "

Prefix identifying one or more objects to which the rule applies. This is no\n longer used; use Filter instead.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
" + } + }, + "Filter": { + "target": "com.amazonaws.s3#LifecycleRuleFilter", + "traits": { + "smithy.api#documentation": "

The Filter is used to identify objects that a Lifecycle Rule applies to. A\n Filter must have exactly one of Prefix, Tag,\n ObjectSizeGreaterThan, ObjectSizeLessThan, or And specified.\n Filter is required if the LifecycleRule does not contain a\n Prefix element.

\n

For more information about Tag filters, see Adding filters to Lifecycle rules\n in the Amazon S3 User Guide.

\n \n

\n Tag filters are not supported for directory buckets.

\n
" + } + }, + "Status": { + "target": "com.amazonaws.s3#ExpirationStatus", + "traits": { + "smithy.api#documentation": "

If 'Enabled', the rule is currently being applied. If 'Disabled', the rule is not currently being\n applied.

", + "smithy.api#required": {} + } + }, + "Transitions": { + "target": "com.amazonaws.s3#TransitionList", + "traits": { + "smithy.api#documentation": "

Specifies when an Amazon S3 object transitions to a specified storage class.

\n \n

This parameter applies to general purpose buckets only. It is not supported for directory bucket\n lifecycle configurations.

\n
", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Transition" + } + }, + "NoncurrentVersionTransitions": { + "target": "com.amazonaws.s3#NoncurrentVersionTransitionList", + "traits": { + "smithy.api#documentation": "

Specifies the transition rule for the lifecycle rule that describes when noncurrent objects\n transition to a specific storage class. If your bucket is versioning-enabled (or versioning is\n suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to a\n specific storage class at a set period in the object's lifetime.

\n \n

This parameter applies to general purpose buckets only. It is not supported for directory bucket\n lifecycle configurations.

\n
", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "NoncurrentVersionTransition" + } + }, + "NoncurrentVersionExpiration": { + "target": "com.amazonaws.s3#NoncurrentVersionExpiration" + }, + "AbortIncompleteMultipartUpload": { + "target": "com.amazonaws.s3#AbortIncompleteMultipartUpload" + } + }, + "traits": { + "smithy.api#documentation": "

A lifecycle rule for individual objects in an Amazon S3 bucket.

\n

For more information see, Managing your storage lifecycle in\n the Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3#LifecycleRuleAndOperator": { + "type": "structure", + "members": { + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

Prefix identifying one or more objects to which the rule applies.

" + } + }, + "Tags": { + "target": "com.amazonaws.s3#TagSet", + "traits": { + "smithy.api#documentation": "

All of these tags must exist in the object's tag set in order for the rule to apply.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Tag" + } + }, + "ObjectSizeGreaterThan": { + "target": "com.amazonaws.s3#ObjectSizeGreaterThanBytes", + "traits": { + "smithy.api#documentation": "

Minimum object size to which the rule applies.

" + } + }, + "ObjectSizeLessThan": { + "target": "com.amazonaws.s3#ObjectSizeLessThanBytes", + "traits": { + "smithy.api#documentation": "

Maximum object size to which the rule applies.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

This is used in a Lifecycle Rule Filter to apply a logical AND to two or more predicates. The\n Lifecycle Rule will apply to any object matching all of the predicates configured inside the And\n operator.

" + } + }, + "com.amazonaws.s3#LifecycleRuleFilter": { + "type": "structure", + "members": { + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

Prefix identifying one or more objects to which the rule applies.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
" + } + }, + "Tag": { + "target": "com.amazonaws.s3#Tag", + "traits": { + "smithy.api#documentation": "

This tag must exist in the object's tag set in order for the rule to apply.

\n \n

This parameter applies to general purpose buckets only. It is not supported for directory bucket\n lifecycle configurations.

\n
" + } + }, + "ObjectSizeGreaterThan": { + "target": "com.amazonaws.s3#ObjectSizeGreaterThanBytes", + "traits": { + "smithy.api#documentation": "

Minimum object size to which the rule applies.

" + } + }, + "ObjectSizeLessThan": { + "target": "com.amazonaws.s3#ObjectSizeLessThanBytes", + "traits": { + "smithy.api#documentation": "

Maximum object size to which the rule applies.

" + } + }, + "And": { + "target": "com.amazonaws.s3#LifecycleRuleAndOperator" + } + }, + "traits": { + "smithy.api#documentation": "

The Filter is used to identify objects that a Lifecycle Rule applies to. A\n Filter can have exactly one of Prefix, Tag,\n ObjectSizeGreaterThan, ObjectSizeLessThan, or And specified. If\n the Filter element is left empty, the Lifecycle Rule applies to all objects in the\n bucket.

" + } + }, + "com.amazonaws.s3#LifecycleRules": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#LifecycleRule" + } + }, + "com.amazonaws.s3#ListBucketAnalyticsConfigurations": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#ListBucketAnalyticsConfigurationsRequest" + }, + "output": { + "target": "com.amazonaws.s3#ListBucketAnalyticsConfigurationsOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Lists the analytics configurations for the bucket. You can have up to 1,000 analytics configurations\n per bucket.

\n

This action supports list pagination and does not return more than 100 configurations at a time. You\n should always check the IsTruncated element in the response. If there are no more\n configurations to list, IsTruncated is set to false. If there are more configurations to\n list, IsTruncated is set to true, and there will be a value in\n NextContinuationToken. You use the NextContinuationToken value to continue\n the pagination of the list by passing the value in continuation-token in the request to GET\n the next page.

\n

To use this operation, you must have permissions to perform the\n s3:GetAnalyticsConfiguration action. The bucket owner has this permission by default. The\n bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3\n Resources.

\n

For information about Amazon S3 analytics feature, see Amazon S3 Analytics – Storage Class\n Analysis.

\n

The following operations are related to ListBucketAnalyticsConfigurations:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?analytics&x-id=ListBucketAnalyticsConfigurations", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#ListBucketAnalyticsConfigurationsOutput": { + "type": "structure", + "members": { + "IsTruncated": { + "target": "com.amazonaws.s3#IsTruncated", + "traits": { + "smithy.api#documentation": "

Indicates whether the returned list of analytics configurations is complete. A value of true\n indicates that the list is not complete and the NextContinuationToken will be provided for a subsequent\n request.

" + } + }, + "ContinuationToken": { + "target": "com.amazonaws.s3#Token", + "traits": { + "smithy.api#documentation": "

The marker that is used as a starting point for this analytics configuration list response. This\n value is present if it was sent in the request.

" + } + }, + "NextContinuationToken": { + "target": "com.amazonaws.s3#NextToken", + "traits": { + "smithy.api#documentation": "

\n NextContinuationToken is sent when isTruncated is true, which indicates\n that there are more analytics configurations to list. The next request must include this\n NextContinuationToken. The token is obfuscated and is not a usable value.

" + } + }, + "AnalyticsConfigurationList": { + "target": "com.amazonaws.s3#AnalyticsConfigurationList", + "traits": { + "smithy.api#documentation": "

The list of analytics configurations for a bucket.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "AnalyticsConfiguration" + } + } + }, + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "ListBucketAnalyticsConfigurationResult" + } + }, + "com.amazonaws.s3#ListBucketAnalyticsConfigurationsRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket from which analytics configurations are retrieved.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" } - ], - "type": "tree" } - ], - "type": "tree" + }, + "ContinuationToken": { + "target": "com.amazonaws.s3#Token", + "traits": { + "smithy.api#documentation": "

The ContinuationToken that represents a placeholder from where this request should\n begin.

", + "smithy.api#httpQuery": "continuation-token" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#ListBucketIntelligentTieringConfigurations": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#ListBucketIntelligentTieringConfigurationsRequest" + }, + "output": { + "target": "com.amazonaws.s3#ListBucketIntelligentTieringConfigurationsOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Lists the S3 Intelligent-Tiering configuration from the specified bucket.

\n

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.

\n

The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.

\n

For more information, see Storage class for automatically optimizing frequently and infrequently accessed objects.

\n

Operations related to ListBucketIntelligentTieringConfigurations include:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?intelligent-tiering&x-id=ListBucketIntelligentTieringConfigurations", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#ListBucketIntelligentTieringConfigurationsOutput": { + "type": "structure", + "members": { + "IsTruncated": { + "target": "com.amazonaws.s3#IsTruncated", + "traits": { + "smithy.api#documentation": "

Indicates whether the returned list of analytics configurations is complete. A value of\n true indicates that the list is not complete and the NextContinuationToken\n will be provided for a subsequent request.

" + } + }, + "ContinuationToken": { + "target": "com.amazonaws.s3#Token", + "traits": { + "smithy.api#documentation": "

The ContinuationToken that represents a placeholder from where this request should\n begin.

" + } + }, + "NextContinuationToken": { + "target": "com.amazonaws.s3#NextToken", + "traits": { + "smithy.api#documentation": "

The marker used to continue this inventory configuration listing. Use the\n NextContinuationToken from this response to continue the listing in a subsequent request.\n The continuation token is an opaque value that Amazon S3 understands.

" + } + }, + "IntelligentTieringConfigurationList": { + "target": "com.amazonaws.s3#IntelligentTieringConfigurationList", + "traits": { + "smithy.api#documentation": "

The list of S3 Intelligent-Tiering configurations for a bucket.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "IntelligentTieringConfiguration" + } } - ], - "type": "tree" }, - { - "conditions": [], - "error": "A region must be set when sending requests to S3.", - "type": "error" + "traits": { + "smithy.api#output": {} } - ] }, - "smithy.rules#endpointTests": { - "testCases": [ - { - "documentation": "region is not a valid DNS-suffix", - "expect": { - "error": "Invalid region: region was not a valid DNS name." - }, - "params": { - "Region": "a b", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "Invalid access point ARN: Not S3", - "expect": { - "error": "Invalid ARN: The ARN was not for the S3 service, found: not-s3" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:not-s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Bucket": "arn:aws:not-s3:us-west-2:123456789012:accesspoint:myendpoint" - } - }, - { - "documentation": "Invalid access point ARN: invalid resource", - "expect": { - "error": "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`." - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint:more-data", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint:more-data" - } - }, - { - "documentation": "Invalid access point ARN: invalid no ap name", - "expect": { - "error": "Invalid ARN: Expected a resource of the format `accesspoint:` but no name was provided" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:" - } - }, - { - "documentation": "Invalid access point ARN: AccountId is invalid", - "expect": { - "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `123456_789012`" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456_789012:accesspoint:apname", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456_789012:accesspoint:apname" - } - }, - { - "documentation": "Invalid access point ARN: access point name is invalid", - "expect": { - "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `ap_name`" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:ap_name", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:ap_name" - } - }, - { - "documentation": "Access points (disable access points explicitly false)", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myendpoint-123456789012.s3-accesspoint.us-west-2.amazonaws.com" + "com.amazonaws.s3#ListBucketIntelligentTieringConfigurationsRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the Amazon S3 bucket whose configuration you want to modify or retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContinuationToken": { + "target": "com.amazonaws.s3#Token", + "traits": { + "smithy.api#documentation": "

The ContinuationToken that represents a placeholder from where this request should\n begin.

", + "smithy.api#httpQuery": "continuation-token" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "DisableAccessPoints": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" - } - }, - { - "documentation": "Access points: partition does not support FIPS", - "expect": { - "error": "Partition does not support FIPS" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:cn-north-1:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Region": "cn-north-1", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "Bucket": "arn:aws:s3:cn-north-1:123456789012:accesspoint:myendpoint" - } - }, - { - "documentation": "Bucket region is invalid", - "expect": { - "error": "Invalid region in ARN: `us-west -2` (invalid DNS name)" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west -2:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "DisableAccessPoints": false, - "Bucket": "arn:aws:s3:us-west -2:123456789012:accesspoint:myendpoint" - } - }, - { - "documentation": "Access points when Access points explicitly disabled (used for CreateBucket)", - "expect": { - "error": "Access points are not supported for this operation" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "CreateBucket", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" - } - } - ], - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "DisableAccessPoints": true, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" - } - }, - { - "documentation": "missing arn type", - "expect": { - "error": "Invalid ARN: `arn:aws:s3:us-west-2:123456789012:` was not a valid ARN" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "DisableAccessPoints": true, - "Bucket": "arn:aws:s3:us-west-2:123456789012:" - } }, - { - "documentation": "SDK::Host + access point + Dualstack is an error", - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseDualStack": true, - "SDK::Endpoint": "https://beta.example.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Endpoint": "https://beta.example.com", - "Region": "cn-north-1", - "UseDualStack": true, - "UseFIPS": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#ListBucketInventoryConfigurations": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#ListBucketInventoryConfigurationsRequest" }, - { - "documentation": "Access point ARN with FIPS & Dualstack", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myendpoint-123456789012.s3-accesspoint-fips.dualstack.us-west-2.amazonaws.com" + "output": { + "target": "com.amazonaws.s3#ListBucketInventoryConfigurationsOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns a list of S3 Inventory configurations for the bucket. You can have up to 1,000 analytics\n configurations per bucket.

\n

This action supports list pagination and does not return more than 100 configurations at a time.\n Always check the IsTruncated element in the response. If there are no more configurations\n to list, IsTruncated is set to false. If there are more configurations to list,\n IsTruncated is set to true, and there is a value in NextContinuationToken.\n You use the NextContinuationToken value to continue the pagination of the list by passing\n the value in continuation-token in the request to GET the next page.

\n

To use this operation, you must have permissions to perform the\n s3:GetInventoryConfiguration action. The bucket owner has this permission by default. The\n bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3\n Resources.

\n

For information about the Amazon S3 inventory feature, see Amazon S3 Inventory\n

\n

The following operations are related to ListBucketInventoryConfigurations:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?inventory&x-id=ListBucketInventoryConfigurations", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "UseFIPS": true, - "UseDualStack": true, - "Accelerate": false, - "DisableAccessPoints": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" - } - }, - { - "documentation": "Access point ARN with Dualstack", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myendpoint-123456789012.s3-accesspoint.dualstack.us-west-2.amazonaws.com" + } + }, + "com.amazonaws.s3#ListBucketInventoryConfigurationsOutput": { + "type": "structure", + "members": { + "ContinuationToken": { + "target": "com.amazonaws.s3#Token", + "traits": { + "smithy.api#documentation": "

If sent in the request, the marker that is used as a starting point for this inventory configuration\n list response.

" + } + }, + "InventoryConfigurationList": { + "target": "com.amazonaws.s3#InventoryConfigurationList", + "traits": { + "smithy.api#documentation": "

The list of inventory configurations for a bucket.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "InventoryConfiguration" + } + }, + "IsTruncated": { + "target": "com.amazonaws.s3#IsTruncated", + "traits": { + "smithy.api#documentation": "

Tells whether the returned list of inventory configurations is complete. A value of true indicates\n that the list is not complete and the NextContinuationToken is provided for a subsequent request.

" + } + }, + "NextContinuationToken": { + "target": "com.amazonaws.s3#NextToken", + "traits": { + "smithy.api#documentation": "

The marker used to continue this inventory configuration listing. Use the\n NextContinuationToken from this response to continue the listing in a subsequent request.\n The continuation token is an opaque value that Amazon S3 understands.

" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseDualStack": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false, - "DisableAccessPoints": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" - } }, - { - "documentation": "vanilla MRAP", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4a", - "signingRegionSet": ["*"], - "signingName": "s3", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://mfzwi23gnjvgw.mrap.accesspoint.s3-global.amazonaws.com" + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "ListInventoryConfigurationsResult" + } + }, + "com.amazonaws.s3#ListBucketInventoryConfigurationsRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket containing the inventory configurations to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContinuationToken": { + "target": "com.amazonaws.s3#Token", + "traits": { + "smithy.api#documentation": "

The marker used to continue an inventory configuration listing that has been truncated. Use the\n NextContinuationToken from a previously truncated list response to continue the listing.\n The continuation token is an opaque value that Amazon S3 understands.

", + "smithy.api#httpQuery": "continuation-token" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "Key": "key" - } - } - ], - "params": { - "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "Region": "us-east-1", - "DisableMultiRegionAccessPoints": false, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } }, - { - "documentation": "MRAP does not support FIPS", - "expect": { - "error": "S3 MRAP does not support FIPS" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "Key": "key" - } - } - ], - "params": { - "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "Region": "us-east-1", - "DisableMultiRegionAccessPoints": false, - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "MRAP does not support DualStack", - "expect": { - "error": "S3 MRAP does not support dual-stack" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseDualStack": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "Key": "key" - } - } - ], - "params": { - "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "Region": "us-east-1", - "DisableMultiRegionAccessPoints": false, - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#ListBucketMetricsConfigurations": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#ListBucketMetricsConfigurationsRequest" }, - { - "documentation": "MRAP does not support S3 Accelerate", - "expect": { - "error": "S3 MRAP does not support S3 Accelerate" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::S3::Accelerate": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "Key": "key" - } - } - ], - "params": { - "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "Region": "us-east-1", - "DisableMultiRegionAccessPoints": false, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": true - } + "output": { + "target": "com.amazonaws.s3#ListBucketMetricsConfigurationsOutput" }, - { - "documentation": "MRAP explicitly disabled", - "expect": { - "error": "Invalid configuration: Multi-Region Access Point ARNs are disabled." - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::S3::DisableMultiRegionAccessPoints": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "Key": "key" - } - } - ], - "params": { - "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "Region": "us-east-1", - "DisableMultiRegionAccessPoints": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Lists the metrics configurations for the bucket. The metrics configurations are only for the request\n metrics of the bucket and do not provide information on daily storage metrics. You can have up to 1,000\n configurations per bucket.

\n

This action supports list pagination and does not return more than 100 configurations at a time.\n Always check the IsTruncated element in the response. If there are no more configurations\n to list, IsTruncated is set to false. If there are more configurations to list,\n IsTruncated is set to true, and there is a value in NextContinuationToken.\n You use the NextContinuationToken value to continue the pagination of the list by passing\n the value in continuation-token in the request to GET the next page.

\n

To use this operation, you must have permissions to perform the\n s3:GetMetricsConfiguration action. The bucket owner has this permission by default. The\n bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3\n Resources.

\n

For more information about metrics configurations and CloudWatch request metrics, see Monitoring Metrics with\n Amazon CloudWatch.

\n

The following operations are related to ListBucketMetricsConfigurations:

\n ", + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?metrics&x-id=ListBucketMetricsConfigurations", + "code": 200 + } + } + }, + "com.amazonaws.s3#ListBucketMetricsConfigurationsOutput": { + "type": "structure", + "members": { + "IsTruncated": { + "target": "com.amazonaws.s3#IsTruncated", + "traits": { + "smithy.api#documentation": "

Indicates whether the returned list of metrics configurations is complete. A value of true indicates\n that the list is not complete and the NextContinuationToken will be provided for a subsequent\n request.

" + } + }, + "ContinuationToken": { + "target": "com.amazonaws.s3#Token", + "traits": { + "smithy.api#documentation": "

The marker that is used as a starting point for this metrics configuration list response. This value\n is present if it was sent in the request.

" + } + }, + "NextContinuationToken": { + "target": "com.amazonaws.s3#NextToken", + "traits": { + "smithy.api#documentation": "

The marker used to continue a metrics configuration listing that has been truncated. Use the\n NextContinuationToken from a previously truncated list response to continue the listing.\n The continuation token is an opaque value that Amazon S3 understands.

" + } + }, + "MetricsConfigurationList": { + "target": "com.amazonaws.s3#MetricsConfigurationList", + "traits": { + "smithy.api#documentation": "

The list of metrics configurations for a bucket.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "MetricsConfiguration" + } + } }, - { - "documentation": "Dual-stack endpoint with path-style forced", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.dualstack.us-west-2.amazonaws.com/bucketname" + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "ListMetricsConfigurationsResult" + } + }, + "com.amazonaws.s3#ListBucketMetricsConfigurationsRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket containing the metrics configurations to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContinuationToken": { + "target": "com.amazonaws.s3#Token", + "traits": { + "smithy.api#documentation": "

The marker that is used to continue a metrics configuration listing that has been truncated. Use the\n NextContinuationToken from a previously truncated list response to continue the listing.\n The continuation token is an opaque value that Amazon S3 understands.

", + "smithy.api#httpQuery": "continuation-token" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true, - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucketname", - "Key": "key" - } - } - ], - "params": { - "Bucket": "bucketname", - "Region": "us-west-2", - "ForcePathStyle": true, - "UseFIPS": false, - "Accelerate": false, - "UseDualStack": true - } }, - { - "documentation": "Dual-stack endpoint + SDK::Host is error", - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true, - "SDK::Endpoint": "https://abc.com", - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucketname", - "Key": "key" - } - } - ], - "params": { - "Bucket": "bucketname", - "Region": "us-west-2", - "ForcePathStyle": true, - "UseFIPS": false, - "Accelerate": false, - "UseDualStack": true, - "Endpoint": "https://abc.com" - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#ListBuckets": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#ListBucketsRequest" }, - { - "documentation": "path style + ARN bucket", - "expect": { - "error": "Path-style addressing cannot be used with ARN buckets" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "ForcePathStyle": true, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } + "output": { + "target": "com.amazonaws.s3#ListBucketsOutput" }, - { - "documentation": "implicit path style bucket + dualstack", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.dualstack.us-west-2.amazonaws.com/99_ab" + "traits": { + "smithy.api#documentation": "\n

End of support notice: Beginning October 1, 2025, Amazon S3 will stop returning DisplayName. Update your applications to use canonical IDs (unique identifier for \n Amazon Web Services accounts), Amazon Web Services account ID (12 digit identifier) or IAM ARNs (full resource naming) as a direct replacement of DisplayName.\n

\n

This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region, \n Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.

\n
\n \n

This operation is not supported for directory buckets.

\n
\n

Returns a list of all buckets owned by the authenticated sender of the request. To grant IAM\n permission to use this operation, you must add the s3:ListAllMyBuckets policy action.

\n

For information about Amazon S3 buckets, see Creating, configuring, and working with Amazon S3\n buckets.

\n \n

We strongly recommend using only paginated ListBuckets requests. Unpaginated\n ListBuckets requests are only supported for Amazon Web Services accounts set to the default general\n purpose bucket quota of 10,000. If you have an approved general purpose bucket quota above 10,000, you\n must send paginated ListBuckets requests to list your account’s buckets. All unpaginated\n ListBuckets requests will be rejected for Amazon Web Services accounts with a general purpose bucket\n quota greater than 10,000.

\n
", + "smithy.api#examples": [ + { + "title": "To list all buckets", + "documentation": "The following example returns all the buckets owned by the sender of this request.", + "output": { + "Owner": { + "DisplayName": "own-display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31" + }, + "Buckets": [ + { + "CreationDate": "2012-02-15T21:03:02.000Z", + "Name": "examplebucket" + }, + { + "CreationDate": "2011-07-24T19:33:50.000Z", + "Name": "examplebucket2" + }, + { + "CreationDate": "2010-12-17T00:56:49.000Z", + "Name": "examplebucket3" + } + ] + } + } + ], + "smithy.api#http": { + "method": "GET", + "uri": "/?x-id=ListBuckets", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "ContinuationToken", + "outputToken": "ContinuationToken", + "items": "Buckets", + "pageSize": "MaxBuckets" } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "99_ab", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "99_ab", - "Region": "us-west-2", - "UseDualStack": true, - "UseFIPS": false - } - }, - { - "documentation": "implicit path style bucket + dualstack", - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true, - "SDK::Endpoint": "http://abc.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "99_ab", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "99_ab", - "Region": "us-west-2", - "UseDualStack": true, - "UseFIPS": false, - "Endpoint": "http://abc.com" - } - }, - { - "documentation": "don't allow URL injections in the bucket", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.us-west-2.amazonaws.com/example.com%23" + } + }, + "com.amazonaws.s3#ListBucketsOutput": { + "type": "structure", + "members": { + "Buckets": { + "target": "com.amazonaws.s3#Buckets", + "traits": { + "smithy.api#documentation": "

The list of buckets owned by the requester.

" + } + }, + "Owner": { + "target": "com.amazonaws.s3#Owner", + "traits": { + "smithy.api#documentation": "

The owner of the buckets listed.

" + } + }, + "ContinuationToken": { + "target": "com.amazonaws.s3#NextToken", + "traits": { + "smithy.api#documentation": "

\n ContinuationToken is included in the response when there are more buckets that can be\n listed with pagination. The next ListBuckets request to Amazon S3 can be continued with this\n ContinuationToken. ContinuationToken is obfuscated and is not a real\n bucket.

" + } + }, + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

If Prefix was sent with the request, it is included in the response.

\n

All bucket names in the response begin with the specified bucket name prefix.

" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "example.com#", - "Key": "key" - } - } - ], - "params": { - "Bucket": "example.com#", - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false, - "Accelerate": false - } }, - { - "documentation": "URI encode bucket names in the path", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.us-west-2.amazonaws.com/bucket%20name" + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "ListAllMyBucketsResult" + } + }, + "com.amazonaws.s3#ListBucketsRequest": { + "type": "structure", + "members": { + "MaxBuckets": { + "target": "com.amazonaws.s3#MaxBuckets", + "traits": { + "smithy.api#documentation": "

Maximum number of buckets to be returned in response. When the number is more than the count of\n buckets that are owned by an Amazon Web Services account, return all the buckets in response.

", + "smithy.api#httpQuery": "max-buckets" + } + }, + "ContinuationToken": { + "target": "com.amazonaws.s3#Token", + "traits": { + "smithy.api#documentation": "

\n ContinuationToken indicates to Amazon S3 that the list is being continued on this bucket\n with a token. ContinuationToken is obfuscated and is not a real key. You can use this\n ContinuationToken for pagination of the list results.

\n

Length Constraints: Minimum length of 0. Maximum length of 1024.

\n

Required: No.

\n \n

If you specify the bucket-region, prefix, or\n continuation-token query parameters without using max-buckets to set the\n maximum number of buckets returned in the response, Amazon S3 applies a default page size of 10,000 and\n provides a continuation token if there are more buckets.

\n
", + "smithy.api#httpQuery": "continuation-token" + } + }, + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

Limits the response to bucket names that begin with the specified bucket name prefix.

", + "smithy.api#httpQuery": "prefix" + } + }, + "BucketRegion": { + "target": "com.amazonaws.s3#BucketRegion", + "traits": { + "smithy.api#documentation": "

Limits the response to buckets that are located in the specified Amazon Web Services Region. The Amazon Web Services Region must\n be expressed according to the Amazon Web Services Region code, such as us-west-2 for the US West (Oregon)\n Region. For a list of the valid values for all of the Amazon Web Services Regions, see Regions and Endpoints.

\n \n

Requests made to a Regional endpoint that is different from the bucket-region\n parameter are not supported. For example, if you want to limit the response to your buckets in Region\n us-west-2, the request must be made to an endpoint in Region\n us-west-2.

\n
", + "smithy.api#httpQuery": "bucket-region" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket name", - "Key": "key" - } - } - ], - "params": { - "Bucket": "bucket name", - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false, - "Accelerate": false - } - }, - { - "documentation": "scheme is respected", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/99_ab" - } - }, - "params": { - "Accelerate": false, - "Bucket": "99_ab", - "Endpoint": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } }, - { - "documentation": "scheme is respected (virtual addressing)", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "http://bucketname.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/foo" - } - }, - "params": { - "Accelerate": false, - "Bucket": "bucketname", - "Endpoint": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/foo", - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#ListDirectoryBuckets": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#ListDirectoryBucketsRequest" }, - { - "documentation": "path style + implicit private link", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/99_ab" + "output": { + "target": "com.amazonaws.s3#ListDirectoryBucketsOutput" + }, + "traits": { + "smithy.api#documentation": "

Returns a list of all Amazon S3 directory buckets owned by the authenticated sender of the request. For\n more information about directory buckets, see Directory buckets in the\n Amazon S3 User Guide.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n

You must have the s3express:ListAllMyDirectoryBuckets permission in\n an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.\n For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is\n s3express-control.region.amazonaws.com.

\n
\n
\n \n

The BucketRegion response element is not part of the\n ListDirectoryBuckets Response Syntax.

\n
", + "smithy.api#http": { + "method": "GET", + "uri": "/?x-id=ListDirectoryBuckets", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "ContinuationToken", + "outputToken": "ContinuationToken", + "items": "Buckets", + "pageSize": "MaxDirectoryBuckets" + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#ListDirectoryBucketsOutput": { + "type": "structure", + "members": { + "Buckets": { + "target": "com.amazonaws.s3#Buckets", + "traits": { + "smithy.api#documentation": "

The list of buckets owned by the requester.

" + } + }, + "ContinuationToken": { + "target": "com.amazonaws.s3#DirectoryBucketToken", + "traits": { + "smithy.api#documentation": "

If ContinuationToken was sent with the request, it is included in the response. You can\n use the returned ContinuationToken for pagination of the list response.

" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "99_ab", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "99_ab", - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "invalid Endpoint override", - "expect": { - "error": "Custom endpoint `abcde://nota#url` was not a valid URI" - }, - "params": { - "Accelerate": false, - "Bucket": "bucketname", - "Endpoint": "abcde://nota#url", - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } }, - { - "documentation": "using an IPv4 address forces path style", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://123.123.0.1/bucketname" + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "ListAllMyDirectoryBucketsResult" + } + }, + "com.amazonaws.s3#ListDirectoryBucketsRequest": { + "type": "structure", + "members": { + "ContinuationToken": { + "target": "com.amazonaws.s3#DirectoryBucketToken", + "traits": { + "smithy.api#documentation": "

\n ContinuationToken indicates to Amazon S3 that the list is being continued on buckets in this\n account with a token. ContinuationToken is obfuscated and is not a real bucket name. You\n can use this ContinuationToken for the pagination of the list results.

", + "smithy.api#httpQuery": "continuation-token" + } + }, + "MaxDirectoryBuckets": { + "target": "com.amazonaws.s3#MaxDirectoryBuckets", + "traits": { + "smithy.api#documentation": "

Maximum number of buckets to be returned in response. When the number is more than the count of\n buckets that are owned by an Amazon Web Services account, return all the buckets in response.

", + "smithy.api#httpQuery": "max-directory-buckets" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "SDK::Endpoint": "https://123.123.0.1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucketname", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucketname", - "Endpoint": "https://123.123.0.1", - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } }, - { - "documentation": "vanilla access point arn with region mismatch and UseArnRegion=false", - "expect": { - "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::UseArnRegion": false - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-east-1:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:us-east-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "UseArnRegion": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#ListMultipartUploads": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#ListMultipartUploadsRequest" }, - { - "documentation": "vanilla access point arn with region mismatch and UseArnRegion unset", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myendpoint-123456789012.s3-accesspoint.us-west-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "us-east-1", - "UseDualStack": false, - "UseFIPS": false - } + "output": { + "target": "com.amazonaws.s3#ListMultipartUploadsOutput" }, - { - "documentation": "vanilla access point arn with region mismatch and UseArnRegion=true", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myendpoint-123456789012.s3-accesspoint.us-west-2.amazonaws.com" + "traits": { + "smithy.api#documentation": "\n

End of support notice: Beginning October 1, 2025, Amazon S3 will stop returning DisplayName. Update your applications to use canonical IDs (unique identifier for \n Amazon Web Services accounts), Amazon Web Services account ID (12 digit identifier) or IAM ARNs (full resource naming) as a direct replacement of DisplayName.\n

\n

This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region, \n Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.

\n
\n

This operation lists in-progress multipart uploads in a bucket. An in-progress multipart upload is a\n multipart upload that has been initiated by the CreateMultipartUpload request, but has not\n yet been completed or aborted.

\n \n

\n Directory buckets - If multipart uploads in a\n directory bucket are in progress, you can't delete the bucket until all the in-progress multipart\n uploads are aborted or completed. To delete these in-progress multipart uploads, use the\n ListMultipartUploads operation to list the in-progress multipart uploads in the bucket\n and use the AbortMultipartUpload operation to abort all the in-progress multipart\n uploads.

\n
\n

The ListMultipartUploads operation returns a maximum of 1,000 multipart uploads in the\n response. The limit of 1,000 multipart uploads is also the default value. You can further limit the\n number of uploads in a response by specifying the max-uploads request parameter. If there\n are more than 1,000 multipart uploads that satisfy your ListMultipartUploads request, the\n response returns an IsTruncated element with the value of true, a\n NextKeyMarker element, and a NextUploadIdMarker element. To list the\n remaining multipart uploads, you need to make subsequent ListMultipartUploads requests. In\n these requests, include two query parameters: key-marker and upload-id-marker.\n Set the value of key-marker to the NextKeyMarker value from the previous\n response. Similarly, set the value of upload-id-marker to the\n NextUploadIdMarker value from the previous response.

\n \n

\n Directory buckets - The upload-id-marker\n element and the NextUploadIdMarker element aren't supported by directory buckets. To\n list the additional multipart uploads, you only need to set the value of key-marker to\n the NextKeyMarker value from the previous response.

\n
\n

For more information about multipart uploads, see Uploading Objects Using Multipart Upload in\n the Amazon S3 User Guide.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - For information\n about permissions required to use the multipart upload API, see Multipart Upload and Permissions in\n the Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
Sorting of multipart uploads in response
\n
\n
    \n
  • \n

    \n General purpose bucket - In the\n ListMultipartUploads response, the multipart uploads are sorted based on two\n criteria:

    \n
      \n
    • \n

      Key-based sorting - Multipart uploads are initially sorted in ascending order\n based on their object keys.

      \n
    • \n
    • \n

      Time-based sorting - For uploads that share the same object key, they are\n further sorted in ascending order based on the upload initiation time. Among uploads with\n the same key, the one that was initiated first will appear before the ones that were\n initiated later.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket - In the\n ListMultipartUploads response, the multipart uploads aren't sorted\n lexicographically based on the object keys.\n \n

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to ListMultipartUploads:

\n ", + "smithy.api#examples": [ + { + "title": "List next set of multipart uploads when previous result is truncated", + "documentation": "The following example specifies the upload-id-marker and key-marker from previous truncated response to retrieve next setup of multipart uploads.", + "input": { + "Bucket": "examplebucket", + "KeyMarker": "nextkeyfrompreviousresponse", + "MaxUploads": 2, + "UploadIdMarker": "valuefrompreviousresponse" + }, + "output": { + "UploadIdMarker": "", + "NextKeyMarker": "someobjectkey", + "Bucket": "acl1", + "NextUploadIdMarker": "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--", + "Uploads": [ + { + "Initiator": { + "DisplayName": "ownder-display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + }, + "Initiated": "2014-05-01T05:40:58.000Z", + "UploadId": "gZ30jIqlUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--", + "StorageClass": "STANDARD", + "Key": "JavaFile", + "Owner": { + "DisplayName": "mohanataws", + "ID": "852b113e7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + } + }, + { + "Initiator": { + "DisplayName": "ownder-display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + }, + "Initiated": "2014-05-01T05:41:27.000Z", + "UploadId": "b7tZSqIlo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--", + "StorageClass": "STANDARD", + "Key": "JavaFile", + "Owner": { + "DisplayName": "ownder-display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + } + } + ], + "KeyMarker": "", + "MaxUploads": 2, + "IsTruncated": true + } + }, + { + "title": "To list in-progress multipart uploads on a bucket", + "documentation": "The following example lists in-progress multipart uploads on a specific bucket.", + "input": { + "Bucket": "examplebucket" + }, + "output": { + "Uploads": [ + { + "Initiator": { + "DisplayName": "display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + }, + "Initiated": "2014-05-01T05:40:58.000Z", + "UploadId": "examplelUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--", + "StorageClass": "STANDARD", + "Key": "JavaFile", + "Owner": { + "DisplayName": "display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + } + }, + { + "Initiator": { + "DisplayName": "display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + }, + "Initiated": "2014-05-01T05:41:27.000Z", + "UploadId": "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--", + "StorageClass": "STANDARD", + "Key": "JavaFile", + "Owner": { + "DisplayName": "display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + } + } + ] + } + } + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?uploads", + "code": 200 + } + } + }, + "com.amazonaws.s3#ListMultipartUploadsOutput": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket to which the multipart upload was initiated. Does not return the access point ARN or\n access point alias if used.

" + } + }, + "KeyMarker": { + "target": "com.amazonaws.s3#KeyMarker", + "traits": { + "smithy.api#documentation": "

The key at or after which the listing began.

" + } + }, + "UploadIdMarker": { + "target": "com.amazonaws.s3#UploadIdMarker", + "traits": { + "smithy.api#documentation": "

Together with key-marker, specifies the multipart upload after which listing should begin. If\n key-marker is not specified, the upload-id-marker parameter is ignored. Otherwise, any multipart uploads\n for a key equal to the key-marker might be included in the list only if they have an upload ID\n lexicographically greater than the specified upload-id-marker.

\n \n

This functionality is not supported for directory buckets.

\n
" + } + }, + "NextKeyMarker": { + "target": "com.amazonaws.s3#NextKeyMarker", + "traits": { + "smithy.api#documentation": "

When a list is truncated, this element specifies the value that should be used for the key-marker\n request parameter in a subsequent request.

" + } + }, + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

When a prefix is provided in the request, this field contains the specified prefix. The result\n contains only keys starting with the specified prefix.

\n \n

\n Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

\n
" + } + }, + "Delimiter": { + "target": "com.amazonaws.s3#Delimiter", + "traits": { + "smithy.api#documentation": "

Contains the delimiter you specified in the request. If you don't specify a delimiter in your\n request, this element is absent from the response.

\n \n

\n Directory buckets - For directory buckets, / is the only supported delimiter.

\n
" + } + }, + "NextUploadIdMarker": { + "target": "com.amazonaws.s3#NextUploadIdMarker", + "traits": { + "smithy.api#documentation": "

When a list is truncated, this element specifies the value that should be used for the\n upload-id-marker request parameter in a subsequent request.

\n \n

This functionality is not supported for directory buckets.

\n
" + } + }, + "MaxUploads": { + "target": "com.amazonaws.s3#MaxUploads", + "traits": { + "smithy.api#documentation": "

Maximum number of multipart uploads that could have been included in the response.

" + } + }, + "IsTruncated": { + "target": "com.amazonaws.s3#IsTruncated", + "traits": { + "smithy.api#documentation": "

Indicates whether the returned list of multipart uploads is truncated. A value of true indicates\n that the list was truncated. The list can be truncated if the number of multipart uploads exceeds the\n limit allowed or specified by max uploads.

" + } + }, + "Uploads": { + "target": "com.amazonaws.s3#MultipartUploadList", + "traits": { + "smithy.api#documentation": "

Container for elements related to a particular multipart upload. A response can contain zero or more\n Upload elements.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Upload" + } + }, + "CommonPrefixes": { + "target": "com.amazonaws.s3#CommonPrefixList", + "traits": { + "smithy.api#documentation": "

If you specify a delimiter in the request, then the result returns each distinct key prefix\n containing the delimiter in a CommonPrefixes element. The distinct key prefixes are\n returned in the Prefix child element.

\n \n

\n Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

\n
", + "smithy.api#xmlFlattened": {} + } + }, + "EncodingType": { + "target": "com.amazonaws.s3#EncodingType", + "traits": { + "smithy.api#documentation": "

Encoding type used by Amazon S3 to encode object keys in the response.

\n

If you specify the encoding-type request parameter, Amazon S3 includes this element in the\n response, and returns encoded key name values in the following response elements:

\n

\n Delimiter, KeyMarker, Prefix, NextKeyMarker,\n Key.

" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::S3::UseArnRegion": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "UseArnRegion": true, - "Region": "us-east-1", - "UseDualStack": false, - "UseFIPS": false - } }, - { - "documentation": "subdomains are not allowed in virtual buckets", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "https://s3.us-east-1.amazonaws.com/bucket.name" + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "ListMultipartUploadsResult" + } + }, + "com.amazonaws.s3#ListMultipartUploadsRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket to which the multipart upload was initiated.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Delimiter": { + "target": "com.amazonaws.s3#Delimiter", + "traits": { + "smithy.api#documentation": "

Character you use to group keys.

\n

All keys that contain the same string between the prefix, if specified, and the first occurrence of\n the delimiter after the prefix are grouped under a single result element, CommonPrefixes.\n If you don't specify the prefix parameter, then the substring starts at the beginning of the key. The\n keys that are grouped under CommonPrefixes result element are not returned elsewhere in the\n response.

\n

\n CommonPrefixes is filtered out from results if it is not lexicographically greater than\n the key-marker.

\n \n

\n Directory buckets - For directory buckets, / is the only supported delimiter.

\n
", + "smithy.api#httpQuery": "delimiter" + } + }, + "EncodingType": { + "target": "com.amazonaws.s3#EncodingType", + "traits": { + "smithy.api#httpQuery": "encoding-type" + } + }, + "KeyMarker": { + "target": "com.amazonaws.s3#KeyMarker", + "traits": { + "smithy.api#documentation": "

Specifies the multipart upload after which listing should begin.

\n \n
    \n
  • \n

    \n General purpose buckets - For general purpose buckets,\n key-marker is an object key. Together with upload-id-marker, this\n parameter specifies the multipart upload after which listing should begin.

    \n

    If upload-id-marker is not specified, only the keys lexicographically greater\n than the specified key-marker will be included in the list.

    \n

    If upload-id-marker is specified, any multipart uploads for a key equal to the\n key-marker might also be included, provided those multipart uploads have upload IDs\n lexicographically greater than the specified upload-id-marker.

    \n
  • \n
  • \n

    \n Directory buckets - For directory buckets,\n key-marker is obfuscated and isn't a real object key. The\n upload-id-marker parameter isn't supported by directory buckets. To list the\n additional multipart uploads, you only need to set the value of key-marker to the\n NextKeyMarker value from the previous response.

    \n

    In the ListMultipartUploads response, the multipart uploads aren't sorted\n lexicographically based on the object keys.\n \n

    \n
  • \n
\n
", + "smithy.api#httpQuery": "key-marker" + } + }, + "MaxUploads": { + "target": "com.amazonaws.s3#MaxUploads", + "traits": { + "smithy.api#documentation": "

Sets the maximum number of multipart uploads, from 1 to 1,000, to return in the response body. 1,000\n is the maximum number of uploads that can be returned in a response.

", + "smithy.api#httpQuery": "max-uploads" + } + }, + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

Lists in-progress uploads only for those keys that begin with the specified prefix. You can use\n prefixes to separate a bucket into different grouping of keys. (You can think of using\n prefix to make groups in the same way that you'd use a folder in a file system.)

\n \n

\n Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

\n
", + "smithy.api#httpQuery": "prefix", + "smithy.rules#contextParam": { + "name": "Prefix" + } + } + }, + "UploadIdMarker": { + "target": "com.amazonaws.s3#UploadIdMarker", + "traits": { + "smithy.api#documentation": "

Together with key-marker, specifies the multipart upload after which listing should begin. If\n key-marker is not specified, the upload-id-marker parameter is ignored. Otherwise, any multipart uploads\n for a key equal to the key-marker might be included in the list only if they have an upload ID\n lexicographically greater than the specified upload-id-marker.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpQuery": "upload-id-marker" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket.name", - "Key": "key" - } - } - ], - "params": { - "Bucket": "bucket.name", - "Region": "us-east-1" - } }, - { - "documentation": "bucket names with 3 characters are allowed in virtual buckets", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "https://aaa.s3.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "aaa", - "Key": "key" - } - } - ], - "params": { - "Bucket": "aaa", - "Region": "us-east-1" - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#ListObjectVersions": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#ListObjectVersionsRequest" }, - { - "documentation": "bucket names with fewer than 3 characters are not allowed in virtual host", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "https://s3.us-east-1.amazonaws.com/aa" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "aa", - "Key": "key" - } - } - ], - "params": { - "Bucket": "aa", - "Region": "us-east-1" - } + "output": { + "target": "com.amazonaws.s3#ListObjectVersionsOutput" }, - { - "documentation": "bucket names with uppercase characters are not allowed in virtual host", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "https://s3.us-east-1.amazonaws.com/BucketName" + "traits": { + "smithy.api#documentation": "\n

End of support notice: Beginning October 1, 2025, Amazon S3 will stop returning DisplayName. Update your applications to use canonical IDs (unique identifier for \n Amazon Web Services accounts), Amazon Web Services account ID (12 digit identifier) or IAM ARNs (full resource naming) as a direct replacement of DisplayName.\n

\n

This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region, \n Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.

\n
\n \n

This operation is not supported for directory buckets.

\n
\n

Returns metadata about all versions of the objects in a bucket. You can also use request parameters\n as selection criteria to return metadata about a subset of all the object versions.

\n \n

To use this operation, you must have permission to perform the s3:ListBucketVersions\n action. Be aware of the name difference.

\n
\n \n

A 200 OK response can contain valid or invalid XML. Make sure to design your\n application to parse the contents of the response and handle it appropriately.

\n
\n

To use this operation, you must have READ access to the bucket.

\n

The following operations are related to ListObjectVersions:

\n ", + "smithy.api#examples": [ + { + "title": "To list object versions", + "documentation": "The following example returns versions of an object with specific key name prefix.", + "input": { + "Bucket": "examplebucket", + "Prefix": "HappyFace.jpg" + }, + "output": { + "Versions": [ + { + "LastModified": "2016-12-15T01:19:41.000Z", + "VersionId": "null", + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", + "StorageClass": "STANDARD", + "Key": "HappyFace.jpg", + "Owner": { + "DisplayName": "owner-display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + }, + "IsLatest": true, + "Size": 3191 + }, + { + "LastModified": "2016-12-13T00:58:26.000Z", + "VersionId": "PHtexPGjH2y.zBgT8LmB7wwLI2mpbz.k", + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", + "StorageClass": "STANDARD", + "Key": "HappyFace.jpg", + "Owner": { + "DisplayName": "owner-display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + }, + "IsLatest": false, + "Size": 3191 + } + ] + } + } + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?versions", + "code": 200 } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "BucketName", - "Key": "key" - } - } - ], - "params": { - "Bucket": "BucketName", - "Region": "us-east-1" - } - }, - { - "documentation": "subdomains are allowed in virtual buckets on http endpoints", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "http://bucket.name.example.com" + } + }, + "com.amazonaws.s3#ListObjectVersionsOutput": { + "type": "structure", + "members": { + "IsTruncated": { + "target": "com.amazonaws.s3#IsTruncated", + "traits": { + "smithy.api#documentation": "

A flag that indicates whether Amazon S3 returned all of the results that satisfied the search criteria.\n If your results were truncated, you can make a follow-up paginated request by using the\n NextKeyMarker and NextVersionIdMarker response parameters as a starting\n place in another request to return the rest of the results.

" + } + }, + "KeyMarker": { + "target": "com.amazonaws.s3#KeyMarker", + "traits": { + "smithy.api#documentation": "

Marks the last key returned in a truncated response.

" + } + }, + "VersionIdMarker": { + "target": "com.amazonaws.s3#VersionIdMarker", + "traits": { + "smithy.api#documentation": "

Marks the last version of the key returned in a truncated response.

" + } + }, + "NextKeyMarker": { + "target": "com.amazonaws.s3#NextKeyMarker", + "traits": { + "smithy.api#documentation": "

When the number of responses exceeds the value of MaxKeys, NextKeyMarker\n specifies the first key not returned that satisfies the search criteria. Use this value for the\n key-marker request parameter in a subsequent request.

" + } + }, + "NextVersionIdMarker": { + "target": "com.amazonaws.s3#NextVersionIdMarker", + "traits": { + "smithy.api#documentation": "

When the number of responses exceeds the value of MaxKeys,\n NextVersionIdMarker specifies the first object version not returned that satisfies the\n search criteria. Use this value for the version-id-marker request parameter in a subsequent\n request.

" + } + }, + "Versions": { + "target": "com.amazonaws.s3#ObjectVersionList", + "traits": { + "smithy.api#documentation": "

Container for version information.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Version" + } + }, + "DeleteMarkers": { + "target": "com.amazonaws.s3#DeleteMarkers", + "traits": { + "smithy.api#documentation": "

Container for an object that is a delete marker. To learn more about delete markers, see Working with delete\n markers.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "DeleteMarker" + } + }, + "Name": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name.

" + } + }, + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

Selects objects that start with the value supplied by this parameter.

" + } + }, + "Delimiter": { + "target": "com.amazonaws.s3#Delimiter", + "traits": { + "smithy.api#documentation": "

The delimiter grouping the included keys. A delimiter is a character that you specify to group keys.\n All keys that contain the same string between the prefix and the first occurrence of the delimiter are\n grouped under a single result element in CommonPrefixes. These groups are counted as one\n result against the max-keys limitation. These keys are not returned elsewhere in the\n response.

" + } + }, + "MaxKeys": { + "target": "com.amazonaws.s3#MaxKeys", + "traits": { + "smithy.api#documentation": "

Specifies the maximum number of objects to return.

" + } + }, + "CommonPrefixes": { + "target": "com.amazonaws.s3#CommonPrefixList", + "traits": { + "smithy.api#documentation": "

All of the keys rolled up into a common prefix count as a single return when calculating the number\n of returns.

", + "smithy.api#xmlFlattened": {} + } + }, + "EncodingType": { + "target": "com.amazonaws.s3#EncodingType", + "traits": { + "smithy.api#documentation": "

Encoding type used by Amazon S3 to encode object key names in the XML response.

\n

If you specify the encoding-type request parameter, Amazon S3 includes this element in the\n response, and returns encoded key name values in the following response elements:

\n

\n KeyMarker, NextKeyMarker, Prefix, Key, and Delimiter.

" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "http://example.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket.name", - "Key": "key" - } - } - ], - "params": { - "Bucket": "bucket.name", - "Region": "us-east-1", - "Endpoint": "http://example.com" - } }, - { - "documentation": "no region set", - "expect": { - "error": "A region must be set when sending requests to S3." - }, - "params": { - "Bucket": "bucket-name" - } - }, - { - "documentation": "UseGlobalEndpoints=true, region=us-east-1 uses the global endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.amazonaws.com" + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "ListVersionsResult" + } + }, + "com.amazonaws.s3#ListObjectVersionsRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name that contains the objects.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Delimiter": { + "target": "com.amazonaws.s3#Delimiter", + "traits": { + "smithy.api#documentation": "

A delimiter is a character that you specify to group keys. All keys that contain the same string\n between the prefix and the first occurrence of the delimiter are grouped under a single\n result element in CommonPrefixes. These groups are counted as one result against the\n max-keys limitation. These keys are not returned elsewhere in the response.

\n

\n CommonPrefixes is filtered out from results if it is not lexicographically greater than\n the key-marker.

", + "smithy.api#httpQuery": "delimiter" + } + }, + "EncodingType": { + "target": "com.amazonaws.s3#EncodingType", + "traits": { + "smithy.api#httpQuery": "encoding-type" + } + }, + "KeyMarker": { + "target": "com.amazonaws.s3#KeyMarker", + "traits": { + "smithy.api#documentation": "

Specifies the key to start with when listing objects in a bucket.

", + "smithy.api#httpQuery": "key-marker" + } + }, + "MaxKeys": { + "target": "com.amazonaws.s3#MaxKeys", + "traits": { + "smithy.api#documentation": "

Sets the maximum number of keys returned in the response. By default, the action returns up to 1,000\n key names. The response might contain fewer keys but will never contain more. If additional keys satisfy\n the search criteria, but were not returned because max-keys was exceeded, the response\n contains true. To return the additional keys, see\n key-marker and version-id-marker.

", + "smithy.api#httpQuery": "max-keys" + } + }, + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

Use this parameter to select only those keys that begin with the specified prefix. You can use\n prefixes to separate a bucket into different groupings of keys. (You can think of using\n prefix to make groups in the same way that you'd use a folder in a file system.) You can\n use prefix with delimiter to roll up numerous objects into a single result\n under CommonPrefixes.

", + "smithy.api#httpQuery": "prefix", + "smithy.rules#contextParam": { + "name": "Prefix" + } + } + }, + "VersionIdMarker": { + "target": "com.amazonaws.s3#VersionIdMarker", + "traits": { + "smithy.api#documentation": "

Specifies the object version you want to start listing from.

", + "smithy.api#httpQuery": "version-id-marker" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "OptionalObjectAttributes": { + "target": "com.amazonaws.s3#OptionalObjectAttributesList", + "traits": { + "smithy.api#documentation": "

Specifies the optional fields that you want returned in the response. Fields that you do not specify\n are not returned.

", + "smithy.api#httpHeader": "x-amz-optional-object-attributes" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "ListBuckets" - } - ], - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } }, - { - "documentation": "UseGlobalEndpoints=true, region=us-west-2 uses the regional endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.us-west-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "ListBuckets" - } - ], - "params": { - "Region": "us-west-2", - "UseGlobalEndpoint": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#ListObjects": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#ListObjectsRequest" }, - { - "documentation": "UseGlobalEndpoints=true, region=cn-north-1 uses the regional endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.cn-north-1.amazonaws.com.cn" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "ListBuckets" - } - ], - "params": { - "Region": "cn-north-1", - "UseGlobalEndpoint": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } + "output": { + "target": "com.amazonaws.s3#ListObjectsOutput" }, - { - "documentation": "UseGlobalEndpoints=true, region=us-east-1, fips=true uses the regional endpoint with fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-fips.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ + "errors": [ { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true, - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "ListBuckets" - } - ], - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "UseGlobalEndpoints=true, region=us-east-1, dualstack=true uses the regional endpoint with dualstack", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.dualstack.us-east-1.amazonaws.com" + "target": "com.amazonaws.s3#NoSuchBucket" } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseDualStack": true, - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "ListBuckets" - } - ], - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false - } - }, - { - "documentation": "UseGlobalEndpoints=true, region=us-east-1, dualstack and fips uses the regional endpoint with fips/dualstack", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com" + ], + "traits": { + "smithy.api#documentation": "\n

End of support notice: Beginning October 1, 2025, Amazon S3 will stop returning DisplayName. Update your applications to use canonical IDs (unique identifier for \n Amazon Web Services accounts), Amazon Web Services account ID (12 digit identifier) or IAM ARNs (full resource naming) as a direct replacement of DisplayName.\n

\n

This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region, \n Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.

\n
\n \n

This operation is not supported for directory buckets.

\n
\n

Returns some or all (up to 1,000) of the objects in a bucket. You can use the request parameters as\n selection criteria to return a subset of the objects in a bucket. A 200 OK response can contain valid or\n invalid XML. Be sure to design your application to parse the contents of the response and handle it\n appropriately.

\n \n

This action has been revised. We recommend that you use the newer version, ListObjectsV2, when\n developing applications. For backward compatibility, Amazon S3 continues to support\n ListObjects.

\n
\n

The following operations are related to ListObjects:

\n ", + "smithy.api#examples": [ + { + "title": "To list objects in a bucket", + "documentation": "The following example list two objects in a bucket.", + "input": { + "Bucket": "examplebucket", + "MaxKeys": 2 + }, + "output": { + "NextMarker": "eyJNYXJrZXIiOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAyfQ==", + "Contents": [ + { + "LastModified": "2014-11-21T19:40:05.000Z", + "ETag": "\"70ee1738b6b21e2c8a43f3a5ab0eee71\"", + "StorageClass": "STANDARD", + "Key": "example1.jpg", + "Owner": { + "DisplayName": "myname", + "ID": "12345example25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + }, + "Size": 11 + }, + { + "LastModified": "2013-11-15T01:10:49.000Z", + "ETag": "\"9c8af9a76df052144598c115ef33e511\"", + "StorageClass": "STANDARD", + "Key": "example2.jpg", + "Owner": { + "DisplayName": "myname", + "ID": "12345example25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + }, + "Size": 713193 + } + ] + } + } + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}", + "code": 200 } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true, - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "ListBuckets" - } - ], - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "UseFIPS": true, - "UseDualStack": true, - "Accelerate": false - } - }, - { - "documentation": "UseGlobalEndpoints=true, region=us-east-1 with custom endpoint, uses custom", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://example.com" + } + }, + "com.amazonaws.s3#ListObjectsOutput": { + "type": "structure", + "members": { + "IsTruncated": { + "target": "com.amazonaws.s3#IsTruncated", + "traits": { + "smithy.api#documentation": "

A flag that indicates whether Amazon S3 returned all of the results that satisfied the search\n criteria.

" + } + }, + "Marker": { + "target": "com.amazonaws.s3#Marker", + "traits": { + "smithy.api#documentation": "

Indicates where in the bucket listing begins. Marker is included in the response if it was sent with\n the request.

" + } + }, + "NextMarker": { + "target": "com.amazonaws.s3#NextMarker", + "traits": { + "smithy.api#documentation": "

When the response is truncated (the IsTruncated element value in the response is\n true), you can use the key name in this field as the marker parameter in the\n subsequent request to get the next set of objects. Amazon S3 lists objects in alphabetical order.

\n \n

This element is returned only if you have the delimiter request parameter specified.\n If the response does not include the NextMarker element and it is truncated, you can use\n the value of the last Key element in the response as the marker parameter in\n the subsequent request to get the next set of object keys.

\n
" + } + }, + "Contents": { + "target": "com.amazonaws.s3#ObjectList", + "traits": { + "smithy.api#documentation": "

Metadata about each object returned.

", + "smithy.api#xmlFlattened": {} + } + }, + "Name": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name.

" + } + }, + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

Keys that begin with the indicated prefix.

" + } + }, + "Delimiter": { + "target": "com.amazonaws.s3#Delimiter", + "traits": { + "smithy.api#documentation": "

Causes keys that contain the same string between the prefix and the first occurrence of the\n delimiter to be rolled up into a single result element in the CommonPrefixes collection.\n These rolled-up keys are not returned elsewhere in the response. Each rolled-up result counts as only\n one return against the MaxKeys value.

" + } + }, + "MaxKeys": { + "target": "com.amazonaws.s3#MaxKeys", + "traits": { + "smithy.api#documentation": "

The maximum number of keys returned in the response body.

" + } + }, + "CommonPrefixes": { + "target": "com.amazonaws.s3#CommonPrefixList", + "traits": { + "smithy.api#documentation": "

All of the keys (up to 1,000) rolled up in a common prefix count as a single return when calculating\n the number of returns.

\n

A response can contain CommonPrefixes only if you specify a delimiter.

\n

\n CommonPrefixes contains all (if there are any) keys between Prefix and the\n next occurrence of the string specified by the delimiter.

\n

\n CommonPrefixes lists keys that act like subdirectories in the directory specified by\n Prefix.

\n

For example, if the prefix is notes/ and the delimiter is a slash (/), as\n in notes/summer/july, the common prefix is notes/summer/. All of the keys that\n roll up into a common prefix count as a single return when calculating the number of returns.

", + "smithy.api#xmlFlattened": {} + } + }, + "EncodingType": { + "target": "com.amazonaws.s3#EncodingType", + "traits": { + "smithy.api#documentation": "

Encoding type used by Amazon S3 to encode the object keys in the response. Responses are\n encoded only in UTF-8. An object key can contain any Unicode character. However, the XML 1.0 parser\n can't parse certain characters, such as characters with an ASCII value from 0 to 10. For characters that\n aren't supported in XML 1.0, you can add this parameter to request that Amazon S3 encode the keys in the\n response. For more information about characters to avoid in object key names, see Object key\n naming guidelines.

\n \n

When using the URL encoding type, non-ASCII characters that are used in an object's key name will\n be percent-encoded according to UTF-8 code values. For example, the object\n test_file(3).png will appear as test_file%283%29.png.

\n
" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://example.com", - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "ListBuckets" - } - ], - "params": { - "Region": "us-east-1", - "Endpoint": "https://example.com", - "UseGlobalEndpoint": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } }, - { - "documentation": "UseGlobalEndpoints=true, region=us-west-2 with custom endpoint, uses custom", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://example.com" + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "ListBucketResult" + } + }, + "com.amazonaws.s3#ListObjectsRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket containing the objects.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Delimiter": { + "target": "com.amazonaws.s3#Delimiter", + "traits": { + "smithy.api#documentation": "

A delimiter is a character that you use to group keys.

\n

\n CommonPrefixes is filtered out from results if it is not lexicographically greater than\n the key-marker.

", + "smithy.api#httpQuery": "delimiter" + } + }, + "EncodingType": { + "target": "com.amazonaws.s3#EncodingType", + "traits": { + "smithy.api#httpQuery": "encoding-type" + } + }, + "Marker": { + "target": "com.amazonaws.s3#Marker", + "traits": { + "smithy.api#documentation": "

Marker is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this specified\n key. Marker can be any key in the bucket.

", + "smithy.api#httpQuery": "marker" + } + }, + "MaxKeys": { + "target": "com.amazonaws.s3#MaxKeys", + "traits": { + "smithy.api#documentation": "

Sets the maximum number of keys returned in the response. By default, the action returns up to 1,000\n key names. The response might contain fewer keys but will never contain more.

", + "smithy.api#httpQuery": "max-keys" + } + }, + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

Limits the response to keys that begin with the specified prefix.

", + "smithy.api#httpQuery": "prefix", + "smithy.rules#contextParam": { + "name": "Prefix" + } + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#documentation": "

Confirms that the requester knows that she or he will be charged for the list objects request.\n Bucket owners need not specify this parameter in their requests.

", + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "OptionalObjectAttributes": { + "target": "com.amazonaws.s3#OptionalObjectAttributesList", + "traits": { + "smithy.api#documentation": "

Specifies the optional fields that you want returned in the response. Fields that you do not specify\n are not returned.

", + "smithy.api#httpHeader": "x-amz-optional-object-attributes" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://example.com", - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "ListBuckets" - } - ], - "params": { - "Region": "us-west-2", - "Endpoint": "https://example.com", - "UseGlobalEndpoint": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } }, - { - "documentation": "UseGlobalEndpoints=true, region=us-east-1 with accelerate on non bucket case uses the global endpoint and ignores accelerate", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::S3::Accelerate": true, - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "ListBuckets" - } - ], - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": true - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#ListObjectsV2": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#ListObjectsV2Request" }, - { - "documentation": "aws-global region uses the global endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global" - }, - "operationName": "ListBuckets" - } - ], - "params": { - "Region": "aws-global", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } + "output": { + "target": "com.amazonaws.s3#ListObjectsV2Output" }, - { - "documentation": "aws-global region with fips uses the regional endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-fips.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ + "errors": [ { - "builtInParams": { - "AWS::Region": "aws-global", - "AWS::UseFIPS": true - }, - "operationName": "ListBuckets" - } - ], - "params": { - "Region": "aws-global", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "aws-global region with dualstack uses the regional endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.dualstack.us-east-1.amazonaws.com" + "target": "com.amazonaws.s3#NoSuchBucket" } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global", - "AWS::UseDualStack": true - }, - "operationName": "ListBuckets" - } - ], - "params": { - "Region": "aws-global", - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false - } - }, - { - "documentation": "aws-global region with fips and dualstack uses the regional endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com" + ], + "traits": { + "smithy.api#documentation": "

Returns some or all (up to 1,000) of the objects in a bucket with each request. You can use the\n request parameters as selection criteria to return a subset of the objects in a bucket. A 200\n OK response can contain valid or invalid XML. Make sure to design your application to parse the\n contents of the response and handle it appropriately. For more information about listing objects, see\n Listing object\n keys programmatically in the Amazon S3 User Guide. To get a list of your\n buckets, see ListBuckets.

\n \n
    \n
  • \n

    \n General purpose bucket - For general purpose buckets,\n ListObjectsV2 doesn't return prefixes that are related only to in-progress\n multipart uploads.

    \n
  • \n
  • \n

    \n Directory buckets - For directory buckets,\n ListObjectsV2 response includes the prefixes that are related only to in-progress\n multipart uploads.

    \n
  • \n
  • \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - To use this\n operation, you must have READ access to the bucket. You must have permission to perform the\n s3:ListBucket action. The bucket owner has this permission by default and can\n grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access\n Permissions to Your Amazon S3 Resources in the\n Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
Sorting order of returned objects
\n
\n
    \n
  • \n

    \n General purpose bucket - For general purpose buckets,\n ListObjectsV2 returns objects in lexicographical order based on their key\n names.

    \n
  • \n
  • \n

    \n Directory bucket - For directory buckets,\n ListObjectsV2 does not return objects in lexicographical order.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n \n

This section describes the latest revision of this action. We recommend that you use this revised\n API operation for application development. For backward compatibility, Amazon S3 continues to support the\n prior version of this API operation, ListObjects.

\n
\n

The following operations are related to ListObjectsV2:

\n ", + "smithy.api#examples": [ + { + "title": "To get object list", + "documentation": "The following example retrieves object list. The request specifies max keys to limit response to include only 2 object keys. ", + "input": { + "Bucket": "DOC-EXAMPLE-BUCKET", + "MaxKeys": 2 + }, + "output": { + "Name": "DOC-EXAMPLE-BUCKET", + "MaxKeys": 2, + "Prefix": "", + "KeyCount": 2, + "NextContinuationToken": "1w41l63U0xa8q7smH50vCxyTQqdxo69O3EmK28Bi5PcROI4wI/EyIJg==", + "IsTruncated": true, + "Contents": [ + { + "LastModified": "2014-11-21T19:40:05.000Z", + "ETag": "\"70ee1738b6b21e2c8a43f3a5ab0eee71\"", + "StorageClass": "STANDARD", + "Key": "happyface.jpg", + "Size": 11 + }, + { + "LastModified": "2014-05-02T04:51:50.000Z", + "ETag": "\"becf17f89c30367a9a44495d62ed521a-1\"", + "StorageClass": "STANDARD", + "Key": "test.jpg", + "Size": 4192256 + } + ] + } + } + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}?list-type=2", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "ContinuationToken", + "outputToken": "NextContinuationToken", + "pageSize": "MaxKeys" + } + } + }, + "com.amazonaws.s3#ListObjectsV2Output": { + "type": "structure", + "members": { + "IsTruncated": { + "target": "com.amazonaws.s3#IsTruncated", + "traits": { + "smithy.api#documentation": "

Set to false if all of the results were returned. Set to true if more keys\n are available to return. If the number of results exceeds that specified by MaxKeys, all of\n the results might not be returned.

" + } + }, + "Contents": { + "target": "com.amazonaws.s3#ObjectList", + "traits": { + "smithy.api#documentation": "

Metadata about each object returned.

", + "smithy.api#xmlFlattened": {} + } + }, + "Name": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name.

" + } + }, + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

Keys that begin with the indicated prefix.

\n \n

\n Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

\n
" + } + }, + "Delimiter": { + "target": "com.amazonaws.s3#Delimiter", + "traits": { + "smithy.api#documentation": "

Causes keys that contain the same string between the prefix and the first occurrence of\n the delimiter to be rolled up into a single result element in the CommonPrefixes\n collection. These rolled-up keys are not returned elsewhere in the response. Each rolled-up result\n counts as only one return against the MaxKeys value.

\n \n

\n Directory buckets - For directory buckets, / is the only supported delimiter.

\n
" + } + }, + "MaxKeys": { + "target": "com.amazonaws.s3#MaxKeys", + "traits": { + "smithy.api#documentation": "

Sets the maximum number of keys returned in the response. By default, the action returns up to 1,000\n key names. The response might contain fewer keys but will never contain more.

" + } + }, + "CommonPrefixes": { + "target": "com.amazonaws.s3#CommonPrefixList", + "traits": { + "smithy.api#documentation": "

All of the keys (up to 1,000) that share the same prefix are grouped together. When counting the\n total numbers of returns by this API operation, this group of keys is considered as one item.

\n

A response can contain CommonPrefixes only if you specify a delimiter.

\n

\n CommonPrefixes contains all (if there are any) keys between Prefix and the\n next occurrence of the string specified by a delimiter.

\n

\n CommonPrefixes lists keys that act like subdirectories in the directory specified by\n Prefix.

\n

For example, if the prefix is notes/ and the delimiter is a slash (/) as\n in notes/summer/july, the common prefix is notes/summer/. All of the keys that\n roll up into a common prefix count as a single return when calculating the number of returns.

\n \n
    \n
  • \n

    \n Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

    \n
  • \n
  • \n

    \n Directory buckets - When you query\n ListObjectsV2 with a delimiter during in-progress multipart uploads, the\n CommonPrefixes response parameter contains the prefixes that are associated with\n the in-progress multipart uploads. For more information about multipart uploads, see Multipart Upload\n Overview in the Amazon S3 User Guide.

    \n
  • \n
\n
", + "smithy.api#xmlFlattened": {} + } + }, + "EncodingType": { + "target": "com.amazonaws.s3#EncodingType", + "traits": { + "smithy.api#documentation": "

Encoding type used by Amazon S3 to encode object key names in the XML response.

\n

If you specify the encoding-type request parameter, Amazon S3 includes this element in the\n response, and returns encoded key name values in the following response elements:

\n

\n Delimiter, Prefix, Key, and StartAfter.

" + } + }, + "KeyCount": { + "target": "com.amazonaws.s3#KeyCount", + "traits": { + "smithy.api#documentation": "

\n KeyCount is the number of keys returned with this request. KeyCount will\n always be less than or equal to the MaxKeys field. For example, if you ask for 50 keys,\n your result will include 50 keys or fewer.

" + } + }, + "ContinuationToken": { + "target": "com.amazonaws.s3#Token", + "traits": { + "smithy.api#documentation": "

If ContinuationToken was sent with the request, it is included in the response. You\n can use the returned ContinuationToken for pagination of the list response.

" + } + }, + "NextContinuationToken": { + "target": "com.amazonaws.s3#NextToken", + "traits": { + "smithy.api#documentation": "

\n NextContinuationToken is sent when isTruncated is true, which means there\n are more keys in the bucket that can be listed. The next list requests to Amazon S3 can be continued with\n this NextContinuationToken. NextContinuationToken is obfuscated and is not a\n real key

" + } + }, + "StartAfter": { + "target": "com.amazonaws.s3#StartAfter", + "traits": { + "smithy.api#documentation": "

If StartAfter was sent with the request, it is included in the response.

\n \n

This functionality is not supported for directory buckets.

\n
" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "operationName": "ListBuckets" - } - ], - "params": { - "Region": "aws-global", - "UseFIPS": true, - "UseDualStack": true, - "Accelerate": false - } }, - { - "documentation": "aws-global region with accelerate on non-bucket case, uses global endpoint and ignores accelerate", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.amazonaws.com" + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "ListBucketResult" + } + }, + "com.amazonaws.s3#ListObjectsV2Request": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Delimiter": { + "target": "com.amazonaws.s3#Delimiter", + "traits": { + "smithy.api#documentation": "

A delimiter is a character that you use to group keys.

\n

\n CommonPrefixes is filtered out from results if it is not lexicographically greater than\n the StartAfter value.

\n \n
    \n
  • \n

    \n Directory buckets - For directory buckets, / is the only supported delimiter.

    \n
  • \n
  • \n

    \n Directory buckets - When you query\n ListObjectsV2 with a delimiter during in-progress multipart uploads, the\n CommonPrefixes response parameter contains the prefixes that are associated with\n the in-progress multipart uploads. For more information about multipart uploads, see Multipart Upload\n Overview in the Amazon S3 User Guide.

    \n
  • \n
\n
", + "smithy.api#httpQuery": "delimiter" + } + }, + "EncodingType": { + "target": "com.amazonaws.s3#EncodingType", + "traits": { + "smithy.api#documentation": "

Encoding type used by Amazon S3 to encode the object keys in the response. Responses are\n encoded only in UTF-8. An object key can contain any Unicode character. However, the XML 1.0 parser\n can't parse certain characters, such as characters with an ASCII value from 0 to 10. For characters that\n aren't supported in XML 1.0, you can add this parameter to request that Amazon S3 encode the keys in the\n response. For more information about characters to avoid in object key names, see Object key\n naming guidelines.

\n \n

When using the URL encoding type, non-ASCII characters that are used in an object's key name will\n be percent-encoded according to UTF-8 code values. For example, the object\n test_file(3).png will appear as test_file%283%29.png.

\n
", + "smithy.api#httpQuery": "encoding-type" + } + }, + "MaxKeys": { + "target": "com.amazonaws.s3#MaxKeys", + "traits": { + "smithy.api#documentation": "

Sets the maximum number of keys returned in the response. By default, the action returns up to 1,000\n key names. The response might contain fewer keys but will never contain more.

", + "smithy.api#httpQuery": "max-keys" + } + }, + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

Limits the response to keys that begin with the specified prefix.

\n \n

\n Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

\n
", + "smithy.api#httpQuery": "prefix", + "smithy.rules#contextParam": { + "name": "Prefix" + } + } + }, + "ContinuationToken": { + "target": "com.amazonaws.s3#Token", + "traits": { + "smithy.api#documentation": "

\n ContinuationToken indicates to Amazon S3 that the list is being continued on this bucket\n with a token. ContinuationToken is obfuscated and is not a real key. You can use this\n ContinuationToken for pagination of the list results.

", + "smithy.api#httpQuery": "continuation-token" + } + }, + "FetchOwner": { + "target": "com.amazonaws.s3#FetchOwner", + "traits": { + "smithy.api#documentation": "

The owner field is not present in ListObjectsV2 by default. If you want to return the\n owner field with each key in the result, then set the FetchOwner field to\n true.

\n \n

\n Directory buckets - For directory buckets, the bucket\n owner is returned as the object owner for all objects.

\n
", + "smithy.api#httpQuery": "fetch-owner" + } + }, + "StartAfter": { + "target": "com.amazonaws.s3#StartAfter", + "traits": { + "smithy.api#documentation": "

StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this specified\n key. StartAfter can be any key in the bucket.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpQuery": "start-after" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#documentation": "

Confirms that the requester knows that she or he will be charged for the list objects request in V2\n style. Bucket owners need not specify this parameter in their requests.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "OptionalObjectAttributes": { + "target": "com.amazonaws.s3#OptionalObjectAttributesList", + "traits": { + "smithy.api#documentation": "

Specifies the optional fields that you want returned in the response. Fields that you do not specify\n are not returned.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-optional-object-attributes" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global", - "AWS::S3::Accelerate": true - }, - "operationName": "ListBuckets" - } - ], - "params": { - "Region": "aws-global", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": true - } }, - { - "documentation": "aws-global region with custom endpoint, uses custom", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://example.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global", - "SDK::Endpoint": "https://example.com" - }, - "operationName": "ListBuckets" - } - ], - "params": { - "Region": "aws-global", - "Endpoint": "https://example.com", - "UseGlobalEndpoint": false, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#ListParts": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#ListPartsRequest" }, - { - "documentation": "virtual addressing, aws-global region uses the global endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } + "output": { + "target": "com.amazonaws.s3#ListPartsOutput" }, - { - "documentation": "virtual addressing, aws-global region with Prefix, and Key uses the global endpoint. Prefix and Key parameters should not be used in endpoint evaluation.", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3.amazonaws.com" + "traits": { + "smithy.api#documentation": "\n

End of support notice: Beginning October 1, 2025, Amazon S3 will stop returning DisplayName. Update your applications to use canonical IDs (unique identifier for \n Amazon Web Services accounts), Amazon Web Services account ID (12 digit identifier) or IAM ARNs (full resource naming) as a direct replacement of DisplayName.\n

\n

This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region, \n Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.

\n
\n

Lists the parts that have been uploaded for a specific multipart upload.

\n

To use this operation, you must provide the upload ID in the request. You obtain this\n uploadID by sending the initiate multipart upload request through CreateMultipartUpload.

\n

The ListParts request returns a maximum of 1,000 uploaded parts. The limit of 1,000\n parts is also the default value. You can restrict the number of parts in a response by specifying the\n max-parts request parameter. If your multipart upload consists of more than 1,000 parts,\n the response returns an IsTruncated field with the value of true, and a\n NextPartNumberMarker element. To list remaining uploaded parts, in subsequent\n ListParts requests, include the part-number-marker query string parameter\n and set its value to the NextPartNumberMarker field value from the previous\n response.

\n

For more information on multipart uploads, see Uploading Objects Using Multipart Upload in\n the Amazon S3 User Guide.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - For information\n about permissions required to use the multipart upload API, see Multipart Upload and Permissions in\n the Amazon S3 User Guide.

    \n

    If the upload was created using server-side encryption with Key Management Service (KMS) keys\n (SSE-KMS) or dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), you must have\n permission to the kms:Decrypt action for the ListParts request to\n succeed.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to ListParts:

\n ", + "smithy.api#examples": [ + { + "title": "To list parts of a multipart upload.", + "documentation": "The following example lists parts uploaded for a specific multipart upload.", + "input": { + "Bucket": "examplebucket", + "Key": "bigobject", + "UploadId": "example7YPBOJuoFiQ9cz4P3Pe6FIZwO4f7wN93uHsNBEw97pl5eNwzExg0LAT2dUN91cOmrEQHDsP3WA60CEg--" + }, + "output": { + "Owner": { + "DisplayName": "owner-display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + }, + "Initiator": { + "DisplayName": "owner-display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + }, + "Parts": [ + { + "LastModified": "2016-12-16T00:11:42.000Z", + "PartNumber": 1, + "ETag": "\"d8c2eafd90c266e19ab9dcacc479f8af\"", + "Size": 26246026 + }, + { + "LastModified": "2016-12-16T00:15:01.000Z", + "PartNumber": 2, + "ETag": "\"d8c2eafd90c266e19ab9dcacc479f8af\"", + "Size": 26246026 + } + ], + "StorageClass": "STANDARD" + } + } + ], + "smithy.api#http": { + "method": "GET", + "uri": "/{Bucket}/{Key+}?x-id=ListParts", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "PartNumberMarker", + "outputToken": "NextPartNumberMarker", + "items": "Parts", + "pageSize": "MaxParts" } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global" - }, - "operationName": "ListObjects", - "operationParams": { - "Bucket": "bucket-name", - "Prefix": "prefix" - } - } - ], - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Prefix": "prefix", - "Key": "key" - } - }, - { - "documentation": "virtual addressing, aws-global region with Copy Source, and Key uses the global endpoint. Copy Source and Key parameters should not be used in endpoint evaluation.", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3.amazonaws.com" - } - }, - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "CopySource": "/copy/source", - "Key": "key" - } - }, - { - "documentation": "virtual addressing, aws-global region with fips uses the regional fips endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3-fips.us-east-1.amazonaws.com" + } + }, + "com.amazonaws.s3#ListPartsOutput": { + "type": "structure", + "members": { + "AbortDate": { + "target": "com.amazonaws.s3#AbortDate", + "traits": { + "smithy.api#documentation": "

If the bucket has a lifecycle rule configured with an action to abort incomplete multipart uploads\n and the prefix in the lifecycle rule matches the object name in the request, then the response includes\n this header indicating when the initiated multipart upload will become eligible for abort operation. For\n more information, see Aborting\n Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration.

\n

The response will also include the x-amz-abort-rule-id header that will provide the ID\n of the lifecycle configuration rule that defines this action.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-abort-date" + } + }, + "AbortRuleId": { + "target": "com.amazonaws.s3#AbortRuleId", + "traits": { + "smithy.api#documentation": "

This header is returned along with the x-amz-abort-date header. It identifies\n applicable lifecycle configuration rule that defines the action to abort incomplete multipart\n uploads.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-abort-rule-id" + } + }, + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket to which the multipart upload was initiated. Does not return the access point ARN or\n access point alias if used.

" + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Object key for which the multipart upload was initiated.

" + } + }, + "UploadId": { + "target": "com.amazonaws.s3#MultipartUploadId", + "traits": { + "smithy.api#documentation": "

Upload ID identifying the multipart upload whose parts are being listed.

" + } + }, + "PartNumberMarker": { + "target": "com.amazonaws.s3#PartNumberMarker", + "traits": { + "smithy.api#documentation": "

Specifies the part after which listing should begin. Only parts with higher part numbers will be\n listed.

" + } + }, + "NextPartNumberMarker": { + "target": "com.amazonaws.s3#NextPartNumberMarker", + "traits": { + "smithy.api#documentation": "

When a list is truncated, this element specifies the last part in the list, as well as the value to\n use for the part-number-marker request parameter in a subsequent request.

" + } + }, + "MaxParts": { + "target": "com.amazonaws.s3#MaxParts", + "traits": { + "smithy.api#documentation": "

Maximum number of parts that were allowed in the response.

" + } + }, + "IsTruncated": { + "target": "com.amazonaws.s3#IsTruncated", + "traits": { + "smithy.api#documentation": "

Indicates whether the returned list of parts is truncated. A true value indicates that the list was\n truncated. A list can be truncated if the number of parts exceeds the limit returned in the MaxParts\n element.

" + } + }, + "Parts": { + "target": "com.amazonaws.s3#Parts", + "traits": { + "smithy.api#documentation": "

Container for elements related to a particular part. A response can contain zero or more\n Part elements.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Part" + } + }, + "Initiator": { + "target": "com.amazonaws.s3#Initiator", + "traits": { + "smithy.api#documentation": "

Container element that identifies who initiated the multipart upload. If the initiator is an\n Amazon Web Services account, this element provides the same information as the Owner element. If the\n initiator is an IAM User, this element provides the user ARN and display name.

" + } + }, + "Owner": { + "target": "com.amazonaws.s3#Owner", + "traits": { + "smithy.api#documentation": "

Container element that identifies the object owner, after the object is created. If multipart upload\n is initiated by an IAM user, this element provides the parent account ID and display name.

\n \n

\n Directory buckets - The bucket owner is returned as the\n object owner for all the parts.

\n
" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3#StorageClass", + "traits": { + "smithy.api#documentation": "

The class of storage used to store the uploaded object.

\n \n

\n Directory buckets -\n Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.

\n
" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

The algorithm that was used to create a checksum of the object.

" + } + }, + "ChecksumType": { + "target": "com.amazonaws.s3#ChecksumType", + "traits": { + "smithy.api#documentation": "

The checksum type, which determines how part-level checksums are combined to create an object-level\n checksum for multipart objects. You can use this header response to verify that the checksum type that\n is received is the same checksum type that was specified in CreateMultipartUpload request.\n For more information, see Checking object integrity in the Amazon S3\n User Guide.

" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global", - "AWS::UseFIPS": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false - } }, - { - "documentation": "virtual addressing, aws-global region with dualstack uses the regional dualstack endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3.dualstack.us-east-1.amazonaws.com" + "traits": { + "smithy.api#output": {}, + "smithy.api#xmlName": "ListPartsResult" + } + }, + "com.amazonaws.s3#ListPartsRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket to which the parts are being uploaded.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Object key for which the multipart upload was initiated.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Key" + } + } + }, + "MaxParts": { + "target": "com.amazonaws.s3#MaxParts", + "traits": { + "smithy.api#documentation": "

Sets the maximum number of parts to return.

", + "smithy.api#httpQuery": "max-parts" + } + }, + "PartNumberMarker": { + "target": "com.amazonaws.s3#PartNumberMarker", + "traits": { + "smithy.api#documentation": "

Specifies the part after which listing should begin. Only parts with higher part numbers will be\n listed.

", + "smithy.api#httpQuery": "part-number-marker" + } + }, + "UploadId": { + "target": "com.amazonaws.s3#MultipartUploadId", + "traits": { + "smithy.api#documentation": "

Upload ID identifying the multipart upload whose parts are being listed.

", + "smithy.api#httpQuery": "uploadId", + "smithy.api#required": {} + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created \n using a checksum algorithm. For more information,\n see Protecting data using SSE-C keys in the\n Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKey": { + "target": "com.amazonaws.s3#SSECustomerKey", + "traits": { + "smithy.api#documentation": "

The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. \n For more information, see\n Protecting data using SSE-C keys in the\n Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum \n algorithm. For more information,\n see Protecting data using SSE-C keys in the\n Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global", - "AWS::UseDualStack": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false - } }, - { - "documentation": "virtual addressing, aws-global region with fips/dualstack uses the regional fips/dualstack endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3-fips.dualstack.us-east-1.amazonaws.com" + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#Location": { + "type": "string" + }, + "com.amazonaws.s3#LocationInfo": { + "type": "structure", + "members": { + "Type": { + "target": "com.amazonaws.s3#LocationType", + "traits": { + "smithy.api#documentation": "

The type of location where the bucket will be created.

" + } + }, + "Name": { + "target": "com.amazonaws.s3#LocationNameAsString", + "traits": { + "smithy.api#documentation": "

The name of the location where the bucket will be created.

\n

For directory buckets, the name of the location is the Zone ID of the Availability Zone (AZ) or Local Zone (LZ) where\n the bucket will be created. An example AZ ID value is usw2-az1.

" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "UseFIPS": true, - "UseDualStack": true, - "Accelerate": false - } }, - { - "documentation": "virtual addressing, aws-global region with accelerate uses the global accelerate endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3-accelerate.amazonaws.com" + "traits": { + "smithy.api#documentation": "

Specifies the location where the bucket will be created.

\n

For directory buckets, the location type is Availability Zone or Local Zone. For more information about\n directory buckets, see Working with\n directory buckets in the Amazon S3 User Guide.

\n \n

This functionality is only supported by directory buckets.

\n
" + } + }, + "com.amazonaws.s3#LocationNameAsString": { + "type": "string" + }, + "com.amazonaws.s3#LocationPrefix": { + "type": "string" + }, + "com.amazonaws.s3#LocationType": { + "type": "enum", + "members": { + "AvailabilityZone": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AvailabilityZone" + } + }, + "LocalZone": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LocalZone" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global", - "AWS::S3::Accelerate": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": true - } - }, - { - "documentation": "virtual addressing, aws-global region with custom endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.example.com" + } + }, + "com.amazonaws.s3#LoggingEnabled": { + "type": "structure", + "members": { + "TargetBucket": { + "target": "com.amazonaws.s3#TargetBucket", + "traits": { + "smithy.api#documentation": "

Specifies the bucket where you want Amazon S3 to store server access logs. You can have your logs\n delivered to any bucket that you own, including the same bucket that is being logged. You can also\n configure multiple buckets to deliver their logs to the same target bucket. In this case, you should\n choose a different TargetPrefix for each source bucket so that the delivered log files can\n be distinguished by key.

", + "smithy.api#required": {} + } + }, + "TargetGrants": { + "target": "com.amazonaws.s3#TargetGrants", + "traits": { + "smithy.api#documentation": "

Container for granting information.

\n

Buckets that use the bucket owner enforced setting for Object Ownership don't support target grants.\n For more information, see Permissions for server access log delivery in the\n Amazon S3 User Guide.

" + } + }, + "TargetPrefix": { + "target": "com.amazonaws.s3#TargetPrefix", + "traits": { + "smithy.api#documentation": "

A prefix for all log object keys. If you store log files from multiple Amazon S3 buckets in a single\n bucket, you can use a prefix to distinguish which log files came from which bucket.

", + "smithy.api#required": {} + } + }, + "TargetObjectKeyFormat": { + "target": "com.amazonaws.s3#TargetObjectKeyFormat", + "traits": { + "smithy.api#documentation": "

Amazon S3 key format for log objects.

" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global", - "SDK::Endpoint": "https://example.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "aws-global", - "Endpoint": "https://example.com", - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } }, - { - "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region uses the global endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3.amazonaws.com" + "traits": { + "smithy.api#documentation": "

Describes where logs are stored and the prefix that Amazon S3 assigns to all log object keys for a\n bucket. For more information, see PUT Bucket logging in the\n Amazon S3 API Reference.

" + } + }, + "com.amazonaws.s3#MFA": { + "type": "string" + }, + "com.amazonaws.s3#MFADelete": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "virtual addressing, UseGlobalEndpoint and us-west-2 region uses the regional endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3.us-west-2.amazonaws.com" + } + }, + "com.amazonaws.s3#MFADeleteStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "UseGlobalEndpoint": true, - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region and fips uses the regional fips endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3-fips.us-east-1.amazonaws.com" + } + }, + "com.amazonaws.s3#Marker": { + "type": "string" + }, + "com.amazonaws.s3#MaxAgeSeconds": { + "type": "integer" + }, + "com.amazonaws.s3#MaxBuckets": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 10000 } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true, - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "Bucket": "bucket-name", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region and dualstack uses the regional dualstack endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3.dualstack.us-east-1.amazonaws.com" + } + }, + "com.amazonaws.s3#MaxDirectoryBuckets": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 1000 } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseDualStack": true, - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false - } + } + }, + "com.amazonaws.s3#MaxKeys": { + "type": "integer" + }, + "com.amazonaws.s3#MaxParts": { + "type": "integer" + }, + "com.amazonaws.s3#MaxUploads": { + "type": "integer" + }, + "com.amazonaws.s3#Message": { + "type": "string" + }, + "com.amazonaws.s3#Metadata": { + "type": "map", + "key": { + "target": "com.amazonaws.s3#MetadataKey" }, - { - "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region and accelerate uses the global accelerate endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3-accelerate.amazonaws.com" + "value": { + "target": "com.amazonaws.s3#MetadataValue" + } + }, + "com.amazonaws.s3#MetadataConfiguration": { + "type": "structure", + "members": { + "JournalTableConfiguration": { + "target": "com.amazonaws.s3#JournalTableConfiguration", + "traits": { + "smithy.api#documentation": "

\n The journal table configuration for a metadata configuration.\n

", + "smithy.api#required": {} + } + }, + "InventoryTableConfiguration": { + "target": "com.amazonaws.s3#InventoryTableConfiguration", + "traits": { + "smithy.api#documentation": "

\n The inventory table configuration for a metadata configuration.\n

" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::S3::Accelerate": true, - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": true - } }, - { - "documentation": "virtual addressing, UseGlobalEndpoint and us-east-1 region with custom endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.example.com" + "traits": { + "smithy.api#documentation": "

\n The S3 Metadata configuration for a general purpose bucket.\n

" + } + }, + "com.amazonaws.s3#MetadataConfigurationResult": { + "type": "structure", + "members": { + "DestinationResult": { + "target": "com.amazonaws.s3#DestinationResult", + "traits": { + "smithy.api#documentation": "

\n The destination settings for a metadata configuration.\n

", + "smithy.api#required": {} + } + }, + "JournalTableConfigurationResult": { + "target": "com.amazonaws.s3#JournalTableConfigurationResult", + "traits": { + "smithy.api#documentation": "

\n The journal table configuration for a metadata configuration.\n

" + } + }, + "InventoryTableConfigurationResult": { + "target": "com.amazonaws.s3#InventoryTableConfigurationResult", + "traits": { + "smithy.api#documentation": "

\n The inventory table configuration for a metadata configuration.\n

" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://example.com", - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "Endpoint": "https://example.com", - "UseGlobalEndpoint": true, - "Bucket": "bucket-name", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } }, - { - "documentation": "ForcePathStyle, aws-global region uses the global endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.amazonaws.com/bucket-name" + "traits": { + "smithy.api#documentation": "

\n The S3 Metadata configuration for a general purpose bucket.\n

" + } + }, + "com.amazonaws.s3#MetadataDirective": { + "type": "enum", + "members": { + "COPY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COPY" + } + }, + "REPLACE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REPLACE" + } + } + } + }, + "com.amazonaws.s3#MetadataEntry": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.s3#MetadataKey", + "traits": { + "smithy.api#documentation": "

Name of the object.

" + } + }, + "Value": { + "target": "com.amazonaws.s3#MetadataValue", + "traits": { + "smithy.api#documentation": "

Value of the object.

" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global", - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "ForcePathStyle": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "ForcePathStyle, aws-global region with fips is invalid", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true, - "name": "sigv4" - } - ] - }, - "url": "https://s3-fips.us-east-1.amazonaws.com/bucket-name" - } - }, - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "ForcePathStyle": true, - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false - } }, - { - "documentation": "ForcePathStyle, aws-global region with dualstack uses regional dualstack endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.dualstack.us-east-1.amazonaws.com/bucket-name" + "traits": { + "smithy.api#documentation": "

A metadata key-value pair to store with an object.

" + } + }, + "com.amazonaws.s3#MetadataKey": { + "type": "string" + }, + "com.amazonaws.s3#MetadataTableConfiguration": { + "type": "structure", + "members": { + "S3TablesDestination": { + "target": "com.amazonaws.s3#S3TablesDestination", + "traits": { + "smithy.api#documentation": "

The destination information for the metadata table configuration. The destination table bucket must\n be in the same Region and Amazon Web Services account as the general purpose bucket. The specified metadata table name\n must be unique within the aws_s3_metadata namespace in the destination table bucket.\n

", + "smithy.api#required": {} + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global", - "AWS::UseDualStack": true, - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "aws-global", - "Bucket": "bucket-name", - "ForcePathStyle": true, - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false - } }, - { - "documentation": "ForcePathStyle, aws-global region custom endpoint uses the custom endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://example.com/bucket-name" + "traits": { + "smithy.api#documentation": "

The V1 S3 Metadata configuration for a general purpose bucket.

\n \n

If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete \n and re-create your configuration by using CreateBucketMetadataConfiguration so that you can expire journal table records and create \n a live inventory table.

\n
" + } + }, + "com.amazonaws.s3#MetadataTableConfigurationResult": { + "type": "structure", + "members": { + "S3TablesDestinationResult": { + "target": "com.amazonaws.s3#S3TablesDestinationResult", + "traits": { + "smithy.api#documentation": "

The destination information for the metadata table configuration. The destination table bucket must\n be in the same Region and Amazon Web Services account as the general purpose bucket. The specified metadata table name\n must be unique within the aws_s3_metadata namespace in the destination table bucket.\n

", + "smithy.api#required": {} + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global", - "SDK::Endpoint": "https://example.com", - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "aws-global", - "Endpoint": "https://example.com", - "Bucket": "bucket-name", - "ForcePathStyle": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } }, - { - "documentation": "ForcePathStyle, UseGlobalEndpoint us-east-1 region uses the global endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.amazonaws.com/bucket-name" + "traits": { + "smithy.api#documentation": "

The V1 S3 Metadata configuration for a general purpose bucket. The destination table bucket must be\n in the same Region and Amazon Web Services account as the general purpose bucket. The specified metadata table name\n must be unique within the aws_s3_metadata namespace in the destination table bucket.\n

\n \n

If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete \n and re-create your configuration by using CreateBucketMetadataConfiguration so that you can expire journal table records and create \n a live inventory table.

\n
" + } + }, + "com.amazonaws.s3#MetadataTableEncryptionConfiguration": { + "type": "structure", + "members": { + "SseAlgorithm": { + "target": "com.amazonaws.s3#TableSseAlgorithm", + "traits": { + "smithy.api#documentation": "

\n The encryption type specified for a metadata table. To specify server-side encryption with \n Key Management Service (KMS) keys (SSE-KMS), use the aws:kms value. To specify server-side \n encryption with Amazon S3 managed keys (SSE-S3), use the AES256 value. \n

", + "smithy.api#required": {} + } + }, + "KmsKeyArn": { + "target": "com.amazonaws.s3#KmsKeyArn", + "traits": { + "smithy.api#documentation": "

\n If server-side encryption with Key Management Service (KMS) keys (SSE-KMS) is specified, you must also\n specify the KMS key Amazon Resource Name (ARN). You must specify a customer-managed KMS key \n that's located in the same Region as the general purpose bucket that corresponds to the metadata \n table configuration.\n

" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::S3::ForcePathStyle": true, - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "Bucket": "bucket-name", - "UseGlobalEndpoint": true, - "ForcePathStyle": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } }, - { - "documentation": "ForcePathStyle, UseGlobalEndpoint us-west-2 region uses the regional endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.us-west-2.amazonaws.com/bucket-name" + "traits": { + "smithy.api#documentation": "

\n The encryption settings for an S3 Metadata journal table or inventory table configuration.\n

" + } + }, + "com.amazonaws.s3#MetadataTableStatus": { + "type": "string" + }, + "com.amazonaws.s3#MetadataValue": { + "type": "string" + }, + "com.amazonaws.s3#Metrics": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3#MetricsStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether the replication metrics are enabled.

", + "smithy.api#required": {} + } + }, + "EventThreshold": { + "target": "com.amazonaws.s3#ReplicationTimeValue", + "traits": { + "smithy.api#documentation": "

A container specifying the time threshold for emitting the\n s3:Replication:OperationMissedThreshold event.

" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::ForcePathStyle": true, - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "Bucket": "bucket-name", - "UseGlobalEndpoint": true, - "ForcePathStyle": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } }, - { - "documentation": "ForcePathStyle, UseGlobalEndpoint us-east-1 region, dualstack uses the regional dualstack endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.dualstack.us-east-1.amazonaws.com/bucket-name" + "traits": { + "smithy.api#documentation": "

A container specifying replication metrics-related settings enabling replication metrics and\n events.

" + } + }, + "com.amazonaws.s3#MetricsAndOperator": { + "type": "structure", + "members": { + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

The prefix used when evaluating an AND predicate.

" + } + }, + "Tags": { + "target": "com.amazonaws.s3#TagSet", + "traits": { + "smithy.api#documentation": "

The list of tags used when evaluating an AND predicate.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Tag" + } + }, + "AccessPointArn": { + "target": "com.amazonaws.s3#AccessPointArn", + "traits": { + "smithy.api#documentation": "

The access point ARN used when evaluating an AND predicate.

" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseDualStack": true, - "AWS::S3::ForcePathStyle": true, - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "Bucket": "bucket-name", - "UseGlobalEndpoint": true, - "ForcePathStyle": true, - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false - } }, - { - "documentation": "ForcePathStyle, UseGlobalEndpoint us-east-1 region custom endpoint uses the custom endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://example.com/bucket-name" + "traits": { + "smithy.api#documentation": "

A conjunction (logical AND) of predicates, which is used in evaluating a metrics filter. The\n operator must have at least two predicates, and an object must match all of the predicates in order for\n the filter to apply.

" + } + }, + "com.amazonaws.s3#MetricsConfiguration": { + "type": "structure", + "members": { + "Id": { + "target": "com.amazonaws.s3#MetricsId", + "traits": { + "smithy.api#documentation": "

The ID used to identify the metrics configuration. The ID has a 64 character limit and can only\n contain letters, numbers, periods, dashes, and underscores.

", + "smithy.api#required": {} + } + }, + "Filter": { + "target": "com.amazonaws.s3#MetricsFilter", + "traits": { + "smithy.api#documentation": "

Specifies a metrics configuration filter. The metrics configuration will only include objects that\n meet the filter's criteria. A filter must be a prefix, an object tag, an access point ARN, or a\n conjunction (MetricsAndOperator).

" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "SDK::Endpoint": "https://example.com", - "AWS::S3::ForcePathStyle": true, - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "Bucket": "bucket-name", - "Endpoint": "https://example.com", - "UseGlobalEndpoint": true, - "ForcePathStyle": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } }, - { - "documentation": "ARN with aws-global region and UseArnRegion uses the regional endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": ["*"], - "disableDoubleEncoding": true - }, - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://reports-123456789012.op-01234567890123456.s3-outposts.us-east-1.amazonaws.com" + "traits": { + "smithy.api#documentation": "

Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics\n configuration ID) from an Amazon S3 bucket. If you're updating an existing metrics configuration, note that\n this is a full replacement of the existing metrics configuration. If you don't include the elements you\n want to keep, they are erased. For more information, see PutBucketMetricsConfiguration.

" + } + }, + "com.amazonaws.s3#MetricsConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#MetricsConfiguration" + } + }, + "com.amazonaws.s3#MetricsFilter": { + "type": "union", + "members": { + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

The prefix used when evaluating a metrics filter.

" + } + }, + "Tag": { + "target": "com.amazonaws.s3#Tag", + "traits": { + "smithy.api#documentation": "

The tag used when evaluating a metrics filter.

" + } + }, + "AccessPointArn": { + "target": "com.amazonaws.s3#AccessPointArn", + "traits": { + "smithy.api#documentation": "

The access point ARN used when evaluating a metrics filter.

" + } + }, + "And": { + "target": "com.amazonaws.s3#MetricsAndOperator", + "traits": { + "smithy.api#documentation": "

A conjunction (logical AND) of predicates, which is used in evaluating a metrics filter. The\n operator must have at least two predicates, and an object must match all of the predicates in order for\n the filter to apply.

" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global", - "AWS::S3::UseArnRegion": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/accesspoint/reports", - "Key": "key" - } - } - ], - "params": { - "Region": "aws-global", - "UseArnRegion": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/accesspoint/reports" - } - }, - { - "documentation": "cross partition MRAP ARN is an error", - "expect": { - "error": "Client was configured for partition `aws` but bucket referred to partition `aws-cn`" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws-cn:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "Key": "key" - } - } - ], - "params": { - "Bucket": "arn:aws-cn:s3::123456789012:accesspoint:mfzwi23gnjvgw.mrap", - "Region": "us-west-1" - } }, - { - "documentation": "Endpoint override, accesspoint with HTTP, port", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "http://myendpoint-123456789012.beta.example.com:1234" + "traits": { + "smithy.api#documentation": "

Specifies a metrics configuration filter. The metrics configuration only includes objects that meet\n the filter's criteria. A filter must be a prefix, an object tag, an access point ARN, or a conjunction\n (MetricsAndOperator). For more information, see PutBucketMetricsConfiguration.

" + } + }, + "com.amazonaws.s3#MetricsId": { + "type": "string" + }, + "com.amazonaws.s3#MetricsStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "http://beta.example.com:1234" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Endpoint": "http://beta.example.com:1234", - "Region": "us-west-2", - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint" - } - }, - { - "documentation": "Endpoint override, accesspoint with http, path, query, and port", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "http://myendpoint-123456789012.beta.example.com:1234/path" - } - }, - "params": { - "Region": "us-west-2", - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Endpoint": "http://beta.example.com:1234/path", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "non-bucket endpoint override with FIPS = error", - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" - }, - "params": { - "Region": "us-west-2", - "Endpoint": "http://beta.example.com:1234/path", - "UseFIPS": true, - "UseDualStack": false - } - }, - { - "documentation": "FIPS + dualstack + custom endpoint", - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." - }, - "params": { - "Region": "us-west-2", - "Endpoint": "http://beta.example.com:1234/path", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "dualstack + custom endpoint", - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." - }, - "params": { - "Region": "us-west-2", - "Endpoint": "http://beta.example.com:1234/path", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "custom endpoint without FIPS/dualstack", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "http://beta.example.com:1234/path" + } + }, + "com.amazonaws.s3#Minutes": { + "type": "integer" + }, + "com.amazonaws.s3#MissingMeta": { + "type": "integer" + }, + "com.amazonaws.s3#MpuObjectSize": { + "type": "long" + }, + "com.amazonaws.s3#MultipartUpload": { + "type": "structure", + "members": { + "UploadId": { + "target": "com.amazonaws.s3#MultipartUploadId", + "traits": { + "smithy.api#documentation": "

Upload ID that identifies the multipart upload.

" + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Key of the object for which the multipart upload was initiated.

" + } + }, + "Initiated": { + "target": "com.amazonaws.s3#Initiated", + "traits": { + "smithy.api#documentation": "

Date and time at which the multipart upload was initiated.

" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3#StorageClass", + "traits": { + "smithy.api#documentation": "

The class of storage used to store the object.

\n \n

\n Directory buckets -\n Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.

\n
" + } + }, + "Owner": { + "target": "com.amazonaws.s3#Owner", + "traits": { + "smithy.api#documentation": "

Specifies the owner of the object that is part of the multipart upload.

\n \n

\n Directory buckets - The bucket owner is returned as the\n object owner for all the objects.

\n
" + } + }, + "Initiator": { + "target": "com.amazonaws.s3#Initiator", + "traits": { + "smithy.api#documentation": "

Identifies who initiated the multipart upload.

" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

The algorithm that was used to create a checksum of the object.

" + } + }, + "ChecksumType": { + "target": "com.amazonaws.s3#ChecksumType", + "traits": { + "smithy.api#documentation": "

The checksum type that is used to calculate the object’s checksum value. For more information, see\n Checking\n object integrity in the Amazon S3 User Guide.

" + } } - }, - "params": { - "Region": "us-west-2", - "Endpoint": "http://beta.example.com:1234/path", - "UseFIPS": false, - "UseDualStack": false - } - }, - { - "documentation": "s3 object lambda with access points disabled", - "expect": { - "error": "Access points are not supported for this operation" - }, - "params": { - "Region": "us-west-2", - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:myendpoint", - "DisableAccessPoints": true - } }, - { - "documentation": "non bucket + FIPS", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-fips.us-west-2.amazonaws.com" + "traits": { + "smithy.api#documentation": "

Container for the MultipartUpload for the Amazon S3 object.

" + } + }, + "com.amazonaws.s3#MultipartUploadId": { + "type": "string" + }, + "com.amazonaws.s3#MultipartUploadList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#MultipartUpload" + } + }, + "com.amazonaws.s3#NextKeyMarker": { + "type": "string" + }, + "com.amazonaws.s3#NextMarker": { + "type": "string" + }, + "com.amazonaws.s3#NextPartNumberMarker": { + "type": "string" + }, + "com.amazonaws.s3#NextToken": { + "type": "string" + }, + "com.amazonaws.s3#NextUploadIdMarker": { + "type": "string" + }, + "com.amazonaws.s3#NextVersionIdMarker": { + "type": "string" + }, + "com.amazonaws.s3#NoSuchBucket": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

The specified bucket does not exist.

", + "smithy.api#error": "client", + "smithy.api#httpError": 404 + } + }, + "com.amazonaws.s3#NoSuchKey": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

The specified key does not exist.

", + "smithy.api#error": "client", + "smithy.api#httpError": 404 + } + }, + "com.amazonaws.s3#NoSuchUpload": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

The specified multipart upload does not exist.

", + "smithy.api#error": "client", + "smithy.api#httpError": 404 + } + }, + "com.amazonaws.s3#NoncurrentVersionExpiration": { + "type": "structure", + "members": { + "NoncurrentDays": { + "target": "com.amazonaws.s3#Days", + "traits": { + "smithy.api#documentation": "

Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action.\n The value must be a non-zero positive integer. For information about the noncurrent days calculations,\n see How Amazon S3 Calculates\n When an Object Became Noncurrent in the Amazon S3 User Guide.

\n \n

This parameter applies to general purpose buckets only. It is not supported for directory bucket\n lifecycle configurations.

\n
" + } + }, + "NewerNoncurrentVersions": { + "target": "com.amazonaws.s3#VersionCount", + "traits": { + "smithy.api#documentation": "

Specifies how many noncurrent versions Amazon S3 will retain. You can specify up to 100 noncurrent\n versions to retain. Amazon S3 will permanently delete any additional noncurrent versions beyond the specified\n number to retain. For more information about noncurrent versions, see Lifecycle configuration elements in\n the Amazon S3 User Guide.

\n \n

This parameter applies to general purpose buckets only. It is not supported for directory bucket\n lifecycle configurations.

\n
" + } } - }, - "params": { - "Region": "us-west-2", - "UseFIPS": true, - "UseDualStack": false - } }, - { - "documentation": "standard non bucket endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.us-west-2.amazonaws.com" + "traits": { + "smithy.api#documentation": "

Specifies when noncurrent object versions expire. Upon expiration, Amazon S3 permanently deletes the\n noncurrent object versions. You set this lifecycle configuration action on a bucket that has versioning\n enabled (or suspended) to request that Amazon S3 delete noncurrent object versions at a specific period in\n the object's lifetime.

\n \n

This parameter applies to general purpose buckets only. It is not supported for directory bucket\n lifecycle configurations.

\n
" + } + }, + "com.amazonaws.s3#NoncurrentVersionTransition": { + "type": "structure", + "members": { + "NoncurrentDays": { + "target": "com.amazonaws.s3#Days", + "traits": { + "smithy.api#documentation": "

Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action.\n For information about the noncurrent days calculations, see How Amazon S3 Calculates\n How Long an Object Has Been Noncurrent in the Amazon S3 User Guide.

" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3#TransitionStorageClass", + "traits": { + "smithy.api#documentation": "

The class of storage used to store the object.

" + } + }, + "NewerNoncurrentVersions": { + "target": "com.amazonaws.s3#VersionCount", + "traits": { + "smithy.api#documentation": "

Specifies how many noncurrent versions Amazon S3 will retain in the same storage class before\n transitioning objects. You can specify up to 100 noncurrent versions to retain. Amazon S3 will transition any\n additional noncurrent versions beyond the specified number to retain. For more information about\n noncurrent versions, see Lifecycle configuration elements in\n the Amazon S3 User Guide.

" + } } - }, - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false - } }, - { - "documentation": "non bucket endpoint with FIPS + Dualstack", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-fips.dualstack.us-west-2.amazonaws.com" + "traits": { + "smithy.api#documentation": "

Container for the transition rule that describes when noncurrent objects transition to the\n STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING,\n GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your\n bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3\n transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA,\n INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or\n DEEP_ARCHIVE storage class at a specific period in the object's lifetime.

" + } + }, + "com.amazonaws.s3#NoncurrentVersionTransitionList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#NoncurrentVersionTransition" + } + }, + "com.amazonaws.s3#NotFound": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

The specified content does not exist.

", + "smithy.api#error": "client" + } + }, + "com.amazonaws.s3#NotificationConfiguration": { + "type": "structure", + "members": { + "TopicConfigurations": { + "target": "com.amazonaws.s3#TopicConfigurationList", + "traits": { + "smithy.api#documentation": "

The topic to which notifications are sent and the events for which notifications are\n generated.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "TopicConfiguration" + } + }, + "QueueConfigurations": { + "target": "com.amazonaws.s3#QueueConfigurationList", + "traits": { + "smithy.api#documentation": "

The Amazon Simple Queue Service queues to publish messages to and the events for which to publish\n messages.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "QueueConfiguration" + } + }, + "LambdaFunctionConfigurations": { + "target": "com.amazonaws.s3#LambdaFunctionConfigurationList", + "traits": { + "smithy.api#documentation": "

Describes the Lambda functions to invoke and the events for which to invoke them.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "CloudFunctionConfiguration" + } + }, + "EventBridgeConfiguration": { + "target": "com.amazonaws.s3#EventBridgeConfiguration", + "traits": { + "smithy.api#documentation": "

Enables delivery of events to Amazon EventBridge.

" + } } - }, - "params": { - "Region": "us-west-2", - "UseFIPS": true, - "UseDualStack": true - } }, - { - "documentation": "non bucket endpoint with dualstack", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.dualstack.us-west-2.amazonaws.com" + "traits": { + "smithy.api#documentation": "

A container for specifying the notification configuration of the bucket. If this element is empty,\n notifications are turned off for the bucket.

" + } + }, + "com.amazonaws.s3#NotificationConfigurationFilter": { + "type": "structure", + "members": { + "Key": { + "target": "com.amazonaws.s3#S3KeyFilter", + "traits": { + "smithy.api#xmlName": "S3Key" + } } - }, - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "use global endpoint + IP address endpoint override", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "http://127.0.0.1/bucket" - } - }, - "params": { - "Region": "us-east-1", - "Bucket": "bucket", - "UseFIPS": false, - "UseDualStack": false, - "Endpoint": "http://127.0.0.1", - "UseGlobalEndpoint": true - } - }, - { - "documentation": "non-dns endpoint + global endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "https://s3.amazonaws.com/bucket%21" - } - }, - "params": { - "Region": "us-east-1", - "Bucket": "bucket!", - "UseFIPS": false, - "UseDualStack": false, - "UseGlobalEndpoint": true - } - }, - { - "documentation": "endpoint override + use global endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "http://foo.com/bucket%21" - } - }, - "params": { - "Region": "us-east-1", - "Bucket": "bucket!", - "UseFIPS": false, - "UseDualStack": false, - "UseGlobalEndpoint": true, - "Endpoint": "http://foo.com" - } }, - { - "documentation": "FIPS + dualstack + non-bucket endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21" + "traits": { + "smithy.api#documentation": "

Specifies object key name filtering rules. For information about key name filtering, see Configuring\n event notifications using object key name filtering in the\n Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3#NotificationId": { + "type": "string", + "traits": { + "smithy.api#documentation": "

An optional unique identifier for configurations in a notification configuration. If you don't\n provide one, Amazon S3 will assign an ID.

" + } + }, + "com.amazonaws.s3#Object": { + "type": "structure", + "members": { + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The name that you assign to an object. You use the object key to retrieve the object.

" + } + }, + "LastModified": { + "target": "com.amazonaws.s3#LastModified", + "traits": { + "smithy.api#documentation": "

Creation date of the object.

" + } + }, + "ETag": { + "target": "com.amazonaws.s3#ETag", + "traits": { + "smithy.api#documentation": "

The entity tag is a hash of the object. The ETag reflects changes only to the contents of an object,\n not its metadata. The ETag may or may not be an MD5 digest of the object data. Whether or not it is\n depends on how the object was created and how it is encrypted as described below:

\n
    \n
  • \n

    Objects created by the PUT Object, POST Object, or Copy operation, or through the Amazon Web Services\n Management Console, and are encrypted by SSE-S3 or plaintext, have ETags that are an MD5 digest of\n their object data.

    \n
  • \n
  • \n

    Objects created by the PUT Object, POST Object, or Copy operation, or through the Amazon Web Services\n Management Console, and are encrypted by SSE-C or SSE-KMS, have ETags that are not an MD5 digest of\n their object data.

    \n
  • \n
  • \n

    If an object is created by either the Multipart Upload or Part Copy operation, the ETag is not\n an MD5 digest, regardless of the method of encryption. If an object is larger than 16 MB, the Amazon Web Services\n Management Console will upload or copy that object as a Multipart Upload, and therefore the ETag\n will not be an MD5 digest.

    \n
  • \n
\n \n

\n Directory buckets - MD5 is not supported by directory buckets.

\n
" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithmList", + "traits": { + "smithy.api#documentation": "

The algorithm that was used to create a checksum of the object.

", + "smithy.api#xmlFlattened": {} + } + }, + "ChecksumType": { + "target": "com.amazonaws.s3#ChecksumType", + "traits": { + "smithy.api#documentation": "

The checksum type that is used to calculate the object’s checksum value. For more information, see\n Checking\n object integrity in the Amazon S3 User Guide.

" + } + }, + "Size": { + "target": "com.amazonaws.s3#Size", + "traits": { + "smithy.api#documentation": "

Size in bytes of the object

" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3#ObjectStorageClass", + "traits": { + "smithy.api#documentation": "

The class of storage used to store the object.

\n \n

\n Directory buckets -\n Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.

\n
" + } + }, + "Owner": { + "target": "com.amazonaws.s3#Owner", + "traits": { + "smithy.api#documentation": "

The owner of the object

\n \n

\n Directory buckets - The bucket owner is returned as the\n object owner.

\n
" + } + }, + "RestoreStatus": { + "target": "com.amazonaws.s3#RestoreStatus", + "traits": { + "smithy.api#documentation": "

Specifies the restoration status of an object. Objects in certain storage classes must be restored\n before they can be retrieved. For more information about these storage classes and how to work with\n archived objects, see \n Working with archived objects in the Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets. Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.

\n
" + } } - }, - "params": { - "Region": "us-east-1", - "Bucket": "bucket!", - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "FIPS + dualstack + non-DNS endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21" - } - }, - "params": { - "Region": "us-east-1", - "Bucket": "bucket!", - "ForcePathStyle": true, - "UseFIPS": true, - "UseDualStack": true - } - }, - { - "documentation": "endpoint override + FIPS + dualstack (BUG)", - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" - }, - "params": { - "Region": "us-east-1", - "Bucket": "bucket!", - "ForcePathStyle": true, - "UseFIPS": true, - "UseDualStack": false, - "Endpoint": "http://foo.com" - } - }, - { - "documentation": "endpoint override + non-dns bucket + FIPS (BUG)", - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" - }, - "params": { - "Region": "us-east-1", - "Bucket": "bucket!", - "UseFIPS": true, - "UseDualStack": false, - "Endpoint": "http://foo.com" - } - }, - { - "documentation": "FIPS + bucket endpoint + force path style", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "https://s3-fips.us-east-1.amazonaws.com/bucket%21" - } - }, - "params": { - "Region": "us-east-1", - "Bucket": "bucket!", - "ForcePathStyle": true, - "UseFIPS": true, - "UseDualStack": false, - "UseGlobalEndpoint": true - } - }, - { - "documentation": "bucket + FIPS + force path style", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket" - } - }, - "params": { - "Region": "us-east-1", - "Bucket": "bucket", - "ForcePathStyle": true, - "UseFIPS": true, - "UseDualStack": true, - "UseGlobalEndpoint": true - } - }, - { - "documentation": "FIPS + dualstack + use global endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "https://bucket.s3-fips.dualstack.us-east-1.amazonaws.com" - } - }, - "params": { - "Region": "us-east-1", - "Bucket": "bucket", - "UseFIPS": true, - "UseDualStack": true, - "UseGlobalEndpoint": true - } - }, - { - "documentation": "URI encoded bucket + use global endpoint", - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" - }, - "params": { - "Region": "us-east-1", - "Bucket": "bucket!", - "UseFIPS": true, - "UseDualStack": false, - "UseGlobalEndpoint": true, - "Endpoint": "https://foo.com" - } - }, - { - "documentation": "FIPS + path based endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "https://s3-fips.us-east-1.amazonaws.com/bucket%21" - } - }, - "params": { - "Region": "us-east-1", - "Bucket": "bucket!", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseGlobalEndpoint": true - } - }, - { - "documentation": "accelerate + dualstack + global endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "https://bucket.s3-accelerate.dualstack.amazonaws.com" - } - }, - "params": { - "Region": "us-east-1", - "Bucket": "bucket", - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": true, - "UseGlobalEndpoint": true - } - }, - { - "documentation": "dualstack + global endpoint + non URI safe bucket", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "https://s3.dualstack.us-east-1.amazonaws.com/bucket%21" - } - }, - "params": { - "Region": "us-east-1", - "Bucket": "bucket!", - "Accelerate": false, - "UseDualStack": true, - "UseFIPS": false, - "UseGlobalEndpoint": true - } - }, - { - "documentation": "FIPS + uri encoded bucket", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "https://s3-fips.us-east-1.amazonaws.com/bucket%21" - } - }, - "params": { - "Region": "us-east-1", - "Bucket": "bucket!", - "ForcePathStyle": true, - "Accelerate": false, - "UseDualStack": false, - "UseFIPS": true, - "UseGlobalEndpoint": true - } - }, - { - "documentation": "endpoint override + non-uri safe endpoint + force path style", - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" - }, - "params": { - "Region": "us-east-1", - "Bucket": "bucket!", - "ForcePathStyle": true, - "Accelerate": false, - "UseDualStack": false, - "UseFIPS": true, - "Endpoint": "http://foo.com", - "UseGlobalEndpoint": true - } - }, - { - "documentation": "FIPS + Dualstack + global endpoint + non-dns bucket", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true, - "signingRegion": "us-east-1" - } - ] - }, - "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21" - } - }, - "params": { - "Region": "us-east-1", - "Bucket": "bucket!", - "Accelerate": false, - "UseDualStack": true, - "UseFIPS": true, - "UseGlobalEndpoint": true - } - }, - { - "documentation": "endpoint override + FIPS + dualstack", - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." - }, - "params": { - "Region": "us-east-1", - "UseDualStack": true, - "UseFIPS": true, - "UseGlobalEndpoint": true, - "Endpoint": "http://foo.com" - } - }, - { - "documentation": "non-bucket endpoint override + dualstack + global endpoint", - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." - }, - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": true, - "UseGlobalEndpoint": true, - "Endpoint": "http://foo.com" - } - }, - { - "documentation": "Endpoint override + UseGlobalEndpoint + us-east-1", - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" - }, - "params": { - "Region": "us-east-1", - "UseFIPS": true, - "UseDualStack": false, - "UseGlobalEndpoint": true, - "Endpoint": "http://foo.com" - } - }, - { - "documentation": "non-FIPS partition with FIPS set + custom endpoint", - "expect": { - "error": "Partition does not support FIPS" - }, - "params": { - "Region": "cn-north-1", - "UseFIPS": true, - "UseDualStack": false, - "UseGlobalEndpoint": true - } - }, - { - "documentation": "aws-global signs as us-east-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingRegion": "us-east-1", - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21" - } - }, - "params": { - "Region": "aws-global", - "Bucket": "bucket!", - "UseFIPS": true, - "Accelerate": false, - "UseDualStack": true - } - }, - { - "documentation": "aws-global signs as us-east-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingRegion": "us-east-1", - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket.foo.com" - } - }, - "params": { - "Region": "aws-global", - "Bucket": "bucket", - "UseDualStack": false, - "UseFIPS": false, - "Accelerate": false, - "Endpoint": "https://foo.com" - } }, - { - "documentation": "aws-global + dualstack + path-only bucket", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingRegion": "us-east-1", - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.dualstack.us-east-1.amazonaws.com/bucket%21" - } - }, - "params": { - "Region": "aws-global", - "Bucket": "bucket!", - "UseDualStack": true, - "UseFIPS": false, - "Accelerate": false - } - }, - { - "documentation": "aws-global + path-only bucket", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingRegion": "us-east-1", - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.amazonaws.com/bucket%21" + "traits": { + "smithy.api#documentation": "

An object consists of data and its descriptive metadata.

" + } + }, + "com.amazonaws.s3#ObjectAlreadyInActiveTierError": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

This action is not allowed against this storage tier.

", + "smithy.api#error": "client", + "smithy.api#httpError": 403 + } + }, + "com.amazonaws.s3#ObjectAttributes": { + "type": "enum", + "members": { + "ETAG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ETag" + } + }, + "CHECKSUM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Checksum" + } + }, + "OBJECT_PARTS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ObjectParts" + } + }, + "STORAGE_CLASS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "StorageClass" + } + }, + "OBJECT_SIZE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ObjectSize" + } + } + } + }, + "com.amazonaws.s3#ObjectAttributesList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#ObjectAttributes" + } + }, + "com.amazonaws.s3#ObjectCannedACL": { + "type": "enum", + "members": { + "private": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "private" + } + }, + "public_read": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "public-read" + } + }, + "public_read_write": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "public-read-write" + } + }, + "authenticated_read": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "authenticated-read" + } + }, + "aws_exec_read": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "aws-exec-read" + } + }, + "bucket_owner_read": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "bucket-owner-read" + } + }, + "bucket_owner_full_control": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "bucket-owner-full-control" + } + } + } + }, + "com.amazonaws.s3#ObjectIdentifier": { + "type": "structure", + "members": { + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Key name of the object.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
", + "smithy.api#required": {} + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

Version ID for the specific version of the object to delete.

\n \n

This functionality is not supported for directory buckets.

\n
" + } + }, + "ETag": { + "target": "com.amazonaws.s3#ETag", + "traits": { + "smithy.api#documentation": "

An entity tag (ETag) is an identifier assigned by a web server to a specific version of a resource\n found at a URL. This header field makes the request method conditional on ETags.

\n \n

Entity tags (ETags) for S3 Express One Zone are random alphanumeric strings unique to the object.\n

\n
" + } + }, + "LastModifiedTime": { + "target": "com.amazonaws.s3#LastModifiedTime", + "traits": { + "smithy.api#documentation": "

If present, the objects are deleted only if its modification times matches the provided\n Timestamp.

\n \n

This functionality is only supported for directory buckets.

\n
" + } + }, + "Size": { + "target": "com.amazonaws.s3#Size", + "traits": { + "smithy.api#documentation": "

If present, the objects are deleted only if its size matches the provided size in bytes.

\n \n

This functionality is only supported for directory buckets.

\n
" + } } - }, - "params": { - "Region": "aws-global", - "Bucket": "bucket!" - } - }, - { - "documentation": "aws-global + fips + custom endpoint", - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" - }, - "params": { - "Region": "aws-global", - "Bucket": "bucket!", - "UseDualStack": false, - "UseFIPS": true, - "Accelerate": false, - "Endpoint": "http://foo.com" - } - }, - { - "documentation": "aws-global, endpoint override & path only-bucket", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingRegion": "us-east-1", - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true - } - ] - }, - "url": "http://foo.com/bucket%21" - } - }, - "params": { - "Region": "aws-global", - "Bucket": "bucket!", - "UseDualStack": false, - "UseFIPS": false, - "Accelerate": false, - "Endpoint": "http://foo.com" - } - }, - { - "documentation": "aws-global + dualstack + custom endpoint", - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." - }, - "params": { - "Region": "aws-global", - "UseDualStack": true, - "UseFIPS": false, - "Accelerate": false, - "Endpoint": "http://foo.com" - } - }, - { - "documentation": "accelerate, dualstack + aws-global", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingRegion": "us-east-1", - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket.s3-accelerate.dualstack.us-east-1.amazonaws.com" - } - }, - "params": { - "Region": "aws-global", - "Bucket": "bucket", - "UseDualStack": true, - "UseFIPS": false, - "Accelerate": true - } - }, - { - "documentation": "FIPS + aws-global + path only bucket. This is not supported by S3 but we allow garbage in garbage out", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingRegion": "us-east-1", - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-fips.dualstack.us-east-1.amazonaws.com/bucket%21" - } - }, - "params": { - "Region": "aws-global", - "Bucket": "bucket!", - "ForcePathStyle": true, - "UseDualStack": true, - "UseFIPS": true, - "Accelerate": false - } - }, - { - "documentation": "aws-global + FIPS + endpoint override.", - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" - }, - "params": { - "Region": "aws-global", - "UseFIPS": true, - "Endpoint": "http://foo.com" - } - }, - { - "documentation": "force path style, FIPS, aws-global & endpoint override", - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" - }, - "params": { - "Region": "aws-global", - "Bucket": "bucket!", - "ForcePathStyle": true, - "UseFIPS": true, - "Endpoint": "http://foo.com" - } }, - { - "documentation": "ip address causes path style to be forced", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingRegion": "us-east-1", - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true - } - ] - }, - "url": "http://192.168.1.1/bucket" + "traits": { + "smithy.api#documentation": "

Object Identifier is unique value to identify objects.

" + } + }, + "com.amazonaws.s3#ObjectIdentifierList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#ObjectIdentifier" + } + }, + "com.amazonaws.s3#ObjectKey": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1 } - }, - "params": { - "Region": "aws-global", - "Bucket": "bucket", - "Endpoint": "http://192.168.1.1" - } - }, - { - "documentation": "endpoint override with aws-global region", - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." - }, - "params": { - "Region": "aws-global", - "UseFIPS": true, - "UseDualStack": true, - "Endpoint": "http://foo.com" - } - }, - { - "documentation": "FIPS + path-only (TODO: consider making this an error)", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingRegion": "us-east-1", - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-fips.us-east-1.amazonaws.com/bucket%21" + } + }, + "com.amazonaws.s3#ObjectList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#Object" + } + }, + "com.amazonaws.s3#ObjectLockConfiguration": { + "type": "structure", + "members": { + "ObjectLockEnabled": { + "target": "com.amazonaws.s3#ObjectLockEnabled", + "traits": { + "smithy.api#documentation": "

Indicates whether this bucket has an Object Lock configuration enabled. Enable\n ObjectLockEnabled when you apply ObjectLockConfiguration to a bucket.\n

" + } + }, + "Rule": { + "target": "com.amazonaws.s3#ObjectLockRule", + "traits": { + "smithy.api#documentation": "

Specifies the Object Lock rule for the specified object. Enable the this rule when you apply\n ObjectLockConfiguration to a bucket. Bucket settings require both a mode and a period.\n The period can be either Days or Years but you must select one. You cannot\n specify Days and Years at the same time.

" + } } - }, - "params": { - "Region": "aws-global", - "Bucket": "bucket!", - "UseFIPS": true - } - }, - { - "documentation": "empty arn type", - "expect": { - "error": "Invalid ARN: No ARN type specified" - }, - "params": { - "Region": "us-east-2", - "Bucket": "arn:aws:not-s3:us-west-2:123456789012::myendpoint" - } - }, - { - "documentation": "path style can't be used with accelerate", - "expect": { - "error": "Path-style addressing cannot be used with S3 Accelerate" - }, - "params": { - "Region": "us-east-2", - "Bucket": "bucket!", - "Accelerate": true - } - }, - { - "documentation": "invalid region", - "expect": { - "error": "Invalid region: region was not a valid DNS name." - }, - "params": { - "Region": "us-east-2!", - "Bucket": "bucket.subdomain", - "Endpoint": "http://foo.com" - } - }, - { - "documentation": "invalid region", - "expect": { - "error": "Invalid region: region was not a valid DNS name." - }, - "params": { - "Region": "us-east-2!", - "Bucket": "bucket", - "Endpoint": "http://foo.com" - } }, - { - "documentation": "empty arn type", - "expect": { - "error": "Invalid Access Point Name" - }, - "params": { - "Region": "us-east-2", - "Bucket": "arn:aws:s3::123456789012:accesspoint:my_endpoint" - } + "traits": { + "smithy.api#documentation": "

The container element for Object Lock configuration parameters.

" + } + }, + "com.amazonaws.s3#ObjectLockEnabled": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + } + } + }, + "com.amazonaws.s3#ObjectLockEnabledForBucket": { + "type": "boolean" + }, + "com.amazonaws.s3#ObjectLockLegalHold": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3#ObjectLockLegalHoldStatus", + "traits": { + "smithy.api#documentation": "

Indicates whether the specified object has a legal hold in place.

" + } + } }, - { - "documentation": "empty arn type", - "expect": { - "error": "Client was configured for partition `aws` but ARN (`arn:aws:s3:cn-north-1:123456789012:accesspoint:my-endpoint`) has `aws-cn`" - }, - "params": { - "Region": "us-east-2", - "Bucket": "arn:aws:s3:cn-north-1:123456789012:accesspoint:my-endpoint", - "UseArnRegion": true - } + "traits": { + "smithy.api#documentation": "

A legal hold configuration for an object.

" + } + }, + "com.amazonaws.s3#ObjectLockLegalHoldStatus": { + "type": "enum", + "members": { + "ON": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ON" + } + }, + "OFF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OFF" + } + } + } + }, + "com.amazonaws.s3#ObjectLockMode": { + "type": "enum", + "members": { + "GOVERNANCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GOVERNANCE" + } + }, + "COMPLIANCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLIANCE" + } + } + } + }, + "com.amazonaws.s3#ObjectLockRetainUntilDate": { + "type": "timestamp", + "traits": { + "smithy.api#timestampFormat": "date-time" + } + }, + "com.amazonaws.s3#ObjectLockRetention": { + "type": "structure", + "members": { + "Mode": { + "target": "com.amazonaws.s3#ObjectLockRetentionMode", + "traits": { + "smithy.api#documentation": "

Indicates the Retention mode for the specified object.

" + } + }, + "RetainUntilDate": { + "target": "com.amazonaws.s3#Date", + "traits": { + "smithy.api#documentation": "

The date on which this Object Lock Retention will expire.

" + } + } }, - { - "documentation": "invalid arn region", - "expect": { - "error": "Invalid region in ARN: `us-east_2` (invalid DNS name)" - }, - "params": { - "Region": "us-east-2", - "Bucket": "arn:aws:s3-object-lambda:us-east_2:123456789012:accesspoint:my-endpoint", - "UseArnRegion": true - } + "traits": { + "smithy.api#documentation": "

A Retention configuration for an object.

" + } + }, + "com.amazonaws.s3#ObjectLockRetentionMode": { + "type": "enum", + "members": { + "GOVERNANCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GOVERNANCE" + } + }, + "COMPLIANCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLIANCE" + } + } + } + }, + "com.amazonaws.s3#ObjectLockRule": { + "type": "structure", + "members": { + "DefaultRetention": { + "target": "com.amazonaws.s3#DefaultRetention", + "traits": { + "smithy.api#documentation": "

The default Object Lock retention mode and period that you want to apply to new objects placed in\n the specified bucket. Bucket settings require both a mode and a period. The period can be either\n Days or Years but you must select one. You cannot specify Days\n and Years at the same time.

" + } + } }, - { - "documentation": "invalid ARN outpost", - "expect": { - "error": "Invalid ARN: The outpost Id may only contain a-z, A-Z, 0-9 and `-`. Found: `op_01234567890123456`" - }, - "params": { - "Region": "us-east-2", - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op_01234567890123456/accesspoint/reports", - "UseArnRegion": true - } + "traits": { + "smithy.api#documentation": "

The container element for an Object Lock rule.

" + } + }, + "com.amazonaws.s3#ObjectLockToken": { + "type": "string" + }, + "com.amazonaws.s3#ObjectNotInActiveTierError": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

The source object of the COPY action is not in the active tier and is only stored in Amazon S3\n Glacier.

", + "smithy.api#error": "client", + "smithy.api#httpError": 403 + } + }, + "com.amazonaws.s3#ObjectOwnership": { + "type": "enum", + "members": { + "BucketOwnerPreferred": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BucketOwnerPreferred" + } + }, + "ObjectWriter": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ObjectWriter" + } + }, + "BucketOwnerEnforced": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BucketOwnerEnforced" + } + } }, - { - "documentation": "invalid ARN", - "expect": { - "error": "Invalid ARN: expected an access point name" - }, - "params": { - "Region": "us-east-2", - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/reports" - } + "traits": { + "smithy.api#documentation": "

The container element for object ownership for a bucket's ownership controls.

\n

\n BucketOwnerPreferred - Objects uploaded to the bucket change ownership to the bucket\n owner if the objects are uploaded with the bucket-owner-full-control canned ACL.

\n

\n ObjectWriter - The uploading account will own the object if the object is uploaded with\n the bucket-owner-full-control canned ACL.

\n

\n BucketOwnerEnforced - Access control lists (ACLs) are disabled and no longer affect\n permissions. The bucket owner automatically owns and has full control over every object in the bucket.\n The bucket only accepts PUT requests that don't specify an ACL or specify bucket owner full control ACLs\n (such as the predefined bucket-owner-full-control canned ACL or a custom ACL in XML format\n that grants the same permissions).

\n

By default, ObjectOwnership is set to BucketOwnerEnforced and ACLs are\n disabled. We recommend keeping ACLs disabled, except in uncommon use cases where you must control access\n for each object individually. For more information about S3 Object Ownership, see Controlling\n ownership of objects and disabling ACLs for your bucket in the\n Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets. Directory buckets use the bucket owner enforced setting for S3 Object Ownership.

\n
" + } + }, + "com.amazonaws.s3#ObjectPart": { + "type": "structure", + "members": { + "PartNumber": { + "target": "com.amazonaws.s3#PartNumber", + "traits": { + "smithy.api#documentation": "

The part number identifying the part. This value is a positive integer between 1 and 10,000.

" + } + }, + "Size": { + "target": "com.amazonaws.s3#Size", + "traits": { + "smithy.api#documentation": "

The size of the uploaded part in bytes.

" + } + }, + "ChecksumCRC32": { + "target": "com.amazonaws.s3#ChecksumCRC32", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32 checksum of the part. This checksum is present if the\n multipart upload request was created with the CRC32 checksum algorithm. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + }, + "ChecksumCRC32C": { + "target": "com.amazonaws.s3#ChecksumCRC32C", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32C checksum of the part. This checksum is present if the\n multipart upload request was created with the CRC32C checksum algorithm. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + }, + "ChecksumCRC64NVME": { + "target": "com.amazonaws.s3#ChecksumCRC64NVME", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC64NVME checksum of the part. This checksum is present if\n the multipart upload request was created with the CRC64NVME checksum algorithm, or if the\n object was uploaded without a checksum (and Amazon S3 added the default checksum, CRC64NVME, to\n the uploaded object). For more information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + }, + "ChecksumSHA1": { + "target": "com.amazonaws.s3#ChecksumSHA1", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA1 checksum of the part. This checksum is present if the\n multipart upload request was created with the SHA1 checksum algorithm. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + }, + "ChecksumSHA256": { + "target": "com.amazonaws.s3#ChecksumSHA256", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA256 checksum of the part. This checksum is present if\n the multipart upload request was created with the SHA256 checksum algorithm. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + } }, - { - "documentation": "invalid ARN", - "expect": { - "error": "Invalid ARN: Expected a 4-component resource" - }, - "params": { - "Region": "us-east-2", - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456" - } + "traits": { + "smithy.api#documentation": "

A container for elements related to an individual part.

" + } + }, + "com.amazonaws.s3#ObjectSize": { + "type": "long" + }, + "com.amazonaws.s3#ObjectSizeGreaterThanBytes": { + "type": "long" + }, + "com.amazonaws.s3#ObjectSizeLessThanBytes": { + "type": "long" + }, + "com.amazonaws.s3#ObjectStorageClass": { + "type": "enum", + "members": { + "STANDARD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STANDARD" + } + }, + "REDUCED_REDUNDANCY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REDUCED_REDUNDANCY" + } + }, + "GLACIER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GLACIER" + } + }, + "STANDARD_IA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STANDARD_IA" + } + }, + "ONEZONE_IA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ONEZONE_IA" + } + }, + "INTELLIGENT_TIERING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INTELLIGENT_TIERING" + } + }, + "DEEP_ARCHIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DEEP_ARCHIVE" + } + }, + "OUTPOSTS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OUTPOSTS" + } + }, + "GLACIER_IR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GLACIER_IR" + } + }, + "SNOW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SNOW" + } + }, + "EXPRESS_ONEZONE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EXPRESS_ONEZONE" + } + }, + "FSX_OPENZFS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FSX_OPENZFS" + } + } + } + }, + "com.amazonaws.s3#ObjectVersion": { + "type": "structure", + "members": { + "ETag": { + "target": "com.amazonaws.s3#ETag", + "traits": { + "smithy.api#documentation": "

The entity tag is an MD5 hash of that version of the object.

" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithmList", + "traits": { + "smithy.api#documentation": "

The algorithm that was used to create a checksum of the object.

", + "smithy.api#xmlFlattened": {} + } + }, + "ChecksumType": { + "target": "com.amazonaws.s3#ChecksumType", + "traits": { + "smithy.api#documentation": "

The checksum type that is used to calculate the object’s checksum value. For more information, see\n Checking\n object integrity in the Amazon S3 User Guide.

" + } + }, + "Size": { + "target": "com.amazonaws.s3#Size", + "traits": { + "smithy.api#documentation": "

Size in bytes of the object.

" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3#ObjectVersionStorageClass", + "traits": { + "smithy.api#documentation": "

The class of storage used to store the object.

" + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The object key.

" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

Version ID of an object.

" + } + }, + "IsLatest": { + "target": "com.amazonaws.s3#IsLatest", + "traits": { + "smithy.api#documentation": "

Specifies whether the object is (true) or is not (false) the latest version of an object.

" + } + }, + "LastModified": { + "target": "com.amazonaws.s3#LastModified", + "traits": { + "smithy.api#documentation": "

Date and time when the object was last modified.

" + } + }, + "Owner": { + "target": "com.amazonaws.s3#Owner", + "traits": { + "smithy.api#documentation": "

Specifies the owner of the object.

" + } + }, + "RestoreStatus": { + "target": "com.amazonaws.s3#RestoreStatus", + "traits": { + "smithy.api#documentation": "

Specifies the restoration status of an object. Objects in certain storage classes must be restored\n before they can be retrieved. For more information about these storage classes and how to work with\n archived objects, see \n Working with archived objects in the Amazon S3 User Guide.

" + } + } }, - { - "documentation": "invalid outpost type", - "expect": { - "error": "Expected an outpost type `accesspoint`, found not-accesspoint" - }, - "params": { - "Region": "us-east-2", - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/not-accesspoint/reports" - } + "traits": { + "smithy.api#documentation": "

The version of an object.

" + } + }, + "com.amazonaws.s3#ObjectVersionId": { + "type": "string" + }, + "com.amazonaws.s3#ObjectVersionList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#ObjectVersion" + } + }, + "com.amazonaws.s3#ObjectVersionStorageClass": { + "type": "enum", + "members": { + "STANDARD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STANDARD" + } + } + } + }, + "com.amazonaws.s3#OptionalObjectAttributes": { + "type": "enum", + "members": { + "RESTORE_STATUS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RestoreStatus" + } + } + } + }, + "com.amazonaws.s3#OptionalObjectAttributesList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#OptionalObjectAttributes" + } + }, + "com.amazonaws.s3#OutputLocation": { + "type": "structure", + "members": { + "S3": { + "target": "com.amazonaws.s3#S3Location", + "traits": { + "smithy.api#documentation": "

Describes an S3 location that will receive the results of the restore request.

" + } + } }, - { - "documentation": "invalid outpost type", - "expect": { - "error": "Invalid region in ARN: `us-east_1` (invalid DNS name)" - }, - "params": { - "Region": "us-east-2", - "Bucket": "arn:aws:s3-outposts:us-east_1:123456789012:outpost/op-01234567890123456/not-accesspoint/reports" - } + "traits": { + "smithy.api#documentation": "

Describes the location where the restore job's output is stored.

" + } + }, + "com.amazonaws.s3#OutputSerialization": { + "type": "structure", + "members": { + "CSV": { + "target": "com.amazonaws.s3#CSVOutput", + "traits": { + "smithy.api#documentation": "

Describes the serialization of CSV-encoded Select results.

" + } + }, + "JSON": { + "target": "com.amazonaws.s3#JSONOutput", + "traits": { + "smithy.api#documentation": "

Specifies JSON as request's output serialization format.

" + } + } }, - { - "documentation": "invalid outpost type", - "expect": { - "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `12345_789012`" - }, - "params": { - "Region": "us-east-2", - "Bucket": "arn:aws:s3-outposts:us-east-1:12345_789012:outpost/op-01234567890123456/not-accesspoint/reports" - } + "traits": { + "smithy.api#documentation": "

Describes how results of the Select job are serialized.

" + } + }, + "com.amazonaws.s3#Owner": { + "type": "structure", + "members": { + "DisplayName": { + "target": "com.amazonaws.s3#DisplayName", + "traits": { + "smithy.api#documentation": "

Container for the display name of the owner. This value is only supported in the following Amazon Web Services\n Regions:

\n
    \n
  • \n

    US East (N. Virginia)

    \n
  • \n
  • \n

    US West (N. California)

    \n
  • \n
  • \n

    US West (Oregon)

    \n
  • \n
  • \n

    Asia Pacific (Singapore)

    \n
  • \n
  • \n

    Asia Pacific (Sydney)

    \n
  • \n
  • \n

    Asia Pacific (Tokyo)

    \n
  • \n
  • \n

    Europe (Ireland)

    \n
  • \n
  • \n

    South America (São Paulo)

    \n
  • \n
\n \n

This functionality is not supported for directory buckets.

\n
" + } + }, + "ID": { + "target": "com.amazonaws.s3#ID", + "traits": { + "smithy.api#documentation": "

Container for the ID of the owner.

" + } + } }, - { - "documentation": "invalid outpost type", - "expect": { - "error": "Invalid ARN: The Outpost Id was not set" - }, - "params": { - "Region": "us-east-2", - "Bucket": "arn:aws:s3-outposts:us-east-1:12345789012:outpost" - } + "traits": { + "smithy.api#documentation": "\n

End of support notice: Beginning October 1, 2025, Amazon S3 will stop returning DisplayName. Update your applications to use canonical IDs (unique identifier for \n Amazon Web Services accounts), Amazon Web Services account ID (12 digit identifier) or IAM ARNs (full resource naming) as a direct replacement of DisplayName.\n

\n

This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region, \n Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.

\n
\n

Container for the owner's display name and ID.

" + } + }, + "com.amazonaws.s3#OwnerOverride": { + "type": "enum", + "members": { + "Destination": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Destination" + } + } + } + }, + "com.amazonaws.s3#OwnershipControls": { + "type": "structure", + "members": { + "Rules": { + "target": "com.amazonaws.s3#OwnershipControlsRules", + "traits": { + "smithy.api#documentation": "

The container element for an ownership control rule.

", + "smithy.api#required": {}, + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Rule" + } + } }, - { - "documentation": "use global endpoint virtual addressing", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingRegion": "us-east-2", - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true - } - ] - }, - "url": "http://bucket.example.com" + "traits": { + "smithy.api#documentation": "

The container element for a bucket's ownership controls.

" + } + }, + "com.amazonaws.s3#OwnershipControlsRule": { + "type": "structure", + "members": { + "ObjectOwnership": { + "target": "com.amazonaws.s3#ObjectOwnership", + "traits": { + "smithy.api#required": {} + } } - }, - "params": { - "Region": "us-east-2", - "Bucket": "bucket", - "Endpoint": "http://example.com", - "UseGlobalEndpoint": true - } }, - { - "documentation": "global endpoint + ip address", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingRegion": "us-east-2", - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true - } - ] - }, - "url": "http://192.168.0.1/bucket" + "traits": { + "smithy.api#documentation": "

The container element for an ownership control rule.

" + } + }, + "com.amazonaws.s3#OwnershipControlsRules": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#OwnershipControlsRule" + } + }, + "com.amazonaws.s3#ParquetInput": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

Container for Parquet.

" + } + }, + "com.amazonaws.s3#Part": { + "type": "structure", + "members": { + "PartNumber": { + "target": "com.amazonaws.s3#PartNumber", + "traits": { + "smithy.api#documentation": "

Part number identifying the part. This is a positive integer between 1 and 10,000.

" + } + }, + "LastModified": { + "target": "com.amazonaws.s3#LastModified", + "traits": { + "smithy.api#documentation": "

Date and time at which the part was uploaded.

" + } + }, + "ETag": { + "target": "com.amazonaws.s3#ETag", + "traits": { + "smithy.api#documentation": "

Entity tag returned when the part was uploaded.

" + } + }, + "Size": { + "target": "com.amazonaws.s3#Size", + "traits": { + "smithy.api#documentation": "

Size in bytes of the uploaded part data.

" + } + }, + "ChecksumCRC32": { + "target": "com.amazonaws.s3#ChecksumCRC32", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32 checksum of the part. This checksum is present if the\n object was uploaded with the CRC32 checksum algorithm. For more information, see Checking object\n integrity in the Amazon S3 User Guide.

" + } + }, + "ChecksumCRC32C": { + "target": "com.amazonaws.s3#ChecksumCRC32C", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32C checksum of the part. This checksum is present if the\n object was uploaded with the CRC32C checksum algorithm. For more information, see Checking object\n integrity in the Amazon S3 User Guide.

" + } + }, + "ChecksumCRC64NVME": { + "target": "com.amazonaws.s3#ChecksumCRC64NVME", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC64NVME checksum of the part. This checksum is present if\n the multipart upload request was created with the CRC64NVME checksum algorithm, or if the\n object was uploaded without a checksum (and Amazon S3 added the default checksum, CRC64NVME, to\n the uploaded object). For more information, see Checking object integrity in\n the Amazon S3 User Guide.

" + } + }, + "ChecksumSHA1": { + "target": "com.amazonaws.s3#ChecksumSHA1", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA1 checksum of the part. This checksum is present if the\n object was uploaded with the SHA1 checksum algorithm. For more information, see Checking object\n integrity in the Amazon S3 User Guide.

" + } + }, + "ChecksumSHA256": { + "target": "com.amazonaws.s3#ChecksumSHA256", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA256 checksum of the part. This checksum is present if\n the object was uploaded with the SHA256 checksum algorithm. For more information, see\n Checking\n object integrity in the Amazon S3 User Guide.

" + } } - }, - "params": { - "Region": "us-east-2", - "Bucket": "bucket", - "Endpoint": "http://192.168.0.1", - "UseGlobalEndpoint": true - } }, - { - "documentation": "invalid outpost type", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingRegion": "us-east-2", - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.us-east-2.amazonaws.com/bucket%21" + "traits": { + "smithy.api#documentation": "

Container for elements related to a part.

" + } + }, + "com.amazonaws.s3#PartNumber": { + "type": "integer" + }, + "com.amazonaws.s3#PartNumberMarker": { + "type": "string" + }, + "com.amazonaws.s3#PartitionDateSource": { + "type": "enum", + "members": { + "EventTime": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EventTime" + } + }, + "DeliveryTime": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DeliveryTime" + } + } + } + }, + "com.amazonaws.s3#PartitionedPrefix": { + "type": "structure", + "members": { + "PartitionDateSource": { + "target": "com.amazonaws.s3#PartitionDateSource", + "traits": { + "smithy.api#documentation": "

Specifies the partition date source for the partitioned prefix. PartitionDateSource can\n be EventTime or DeliveryTime.

\n

For DeliveryTime, the time in the log file names corresponds to the delivery time for\n the log files.

\n

For EventTime, The logs delivered are for a specific day only. The year, month, and\n day correspond to the day on which the event occurred, and the hour, minutes and seconds are set to 00\n in the key.

" + } } - }, - "params": { - "Region": "us-east-2", - "Bucket": "bucket!", - "UseGlobalEndpoint": true - } }, - { - "documentation": "invalid outpost type", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingRegion": "us-east-2", - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket.s3-accelerate.amazonaws.com" + "traits": { + "smithy.api#documentation": "

Amazon S3 keys for log objects are partitioned in the following format:

\n

\n [DestinationPrefix][SourceAccountId]/[SourceRegion]/[SourceBucket]/[YYYY]/[MM]/[DD]/[YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString]\n

\n

PartitionedPrefix defaults to EventTime delivery when server access logs are delivered.

", + "smithy.api#xmlName": "PartitionedPrefix" + } + }, + "com.amazonaws.s3#Parts": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#Part" + } + }, + "com.amazonaws.s3#PartsCount": { + "type": "integer" + }, + "com.amazonaws.s3#PartsList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#ObjectPart" + } + }, + "com.amazonaws.s3#Payer": { + "type": "enum", + "members": { + "Requester": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Requester" + } + }, + "BucketOwner": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BucketOwner" + } } - }, - "params": { - "Region": "us-east-2", - "Bucket": "bucket", - "Accelerate": true, - "UseGlobalEndpoint": true - } - }, - { - "documentation": "use global endpoint + custom endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingRegion": "us-east-2", - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true - } - ] - }, - "url": "http://foo.com/bucket%21" + } + }, + "com.amazonaws.s3#Permission": { + "type": "enum", + "members": { + "FULL_CONTROL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FULL_CONTROL" + } + }, + "WRITE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WRITE" + } + }, + "WRITE_ACP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WRITE_ACP" + } + }, + "READ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "READ" + } + }, + "READ_ACP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "READ_ACP" + } } - }, - "params": { - "Region": "us-east-2", - "Bucket": "bucket!", - "UseGlobalEndpoint": true, - "Endpoint": "http://foo.com" - } - }, - { - "documentation": "use global endpoint, not us-east-1, force path style", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingRegion": "us-east-2", - "name": "sigv4", - "signingName": "s3", - "disableDoubleEncoding": true - } - ] - }, - "url": "http://foo.com/bucket%21" - } - }, - "params": { - "Region": "us-east-2", - "Bucket": "bucket!", - "UseGlobalEndpoint": true, - "ForcePathStyle": true, - "Endpoint": "http://foo.com" - } - }, - { - "documentation": "vanilla virtual addressing@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3.us-west-2.amazonaws.com" + } + }, + "com.amazonaws.s3#Policy": { + "type": "string" + }, + "com.amazonaws.s3#PolicyStatus": { + "type": "structure", + "members": { + "IsPublic": { + "target": "com.amazonaws.s3#IsPublic", + "traits": { + "smithy.api#documentation": "

The policy status for this bucket. TRUE indicates that this bucket is public.\n FALSE indicates that the bucket is not public.

", + "smithy.api#xmlName": "IsPublic" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } }, - { - "documentation": "virtual addressing + dualstack@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3.dualstack.us-west-2.amazonaws.com" + "traits": { + "smithy.api#documentation": "

The container element for a bucket's policy status.

" + } + }, + "com.amazonaws.s3#Prefix": { + "type": "string" + }, + "com.amazonaws.s3#Priority": { + "type": "integer" + }, + "com.amazonaws.s3#Progress": { + "type": "structure", + "members": { + "BytesScanned": { + "target": "com.amazonaws.s3#BytesScanned", + "traits": { + "smithy.api#documentation": "

The current number of object bytes scanned.

" + } + }, + "BytesProcessed": { + "target": "com.amazonaws.s3#BytesProcessed", + "traits": { + "smithy.api#documentation": "

The current number of uncompressed object bytes processed.

" + } + }, + "BytesReturned": { + "target": "com.amazonaws.s3#BytesReturned", + "traits": { + "smithy.api#documentation": "

The current number of bytes of records payload data returned.

" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": true, - "UseFIPS": false - } }, - { - "documentation": "accelerate + dualstack@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3-accelerate.dualstack.amazonaws.com" + "traits": { + "smithy.api#documentation": "

This data type contains information about progress of an operation.

" + } + }, + "com.amazonaws.s3#ProgressEvent": { + "type": "structure", + "members": { + "Details": { + "target": "com.amazonaws.s3#Progress", + "traits": { + "smithy.api#documentation": "

The Progress event details.

", + "smithy.api#eventPayload": {} + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true, - "AWS::S3::Accelerate": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": true, - "UseFIPS": false - } }, - { - "documentation": "accelerate (dualstack=false)@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3-accelerate.amazonaws.com" + "traits": { + "smithy.api#documentation": "

This data type contains information about the progress event of an operation.

" + } + }, + "com.amazonaws.s3#Protocol": { + "type": "enum", + "members": { + "http": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "http" + } + }, + "https": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "https" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::Accelerate": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "virtual addressing + fips@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3-fips.us-west-2.amazonaws.com" + } + }, + "com.amazonaws.s3#PublicAccessBlockConfiguration": { + "type": "structure", + "members": { + "BlockPublicAcls": { + "target": "com.amazonaws.s3#Setting", + "traits": { + "smithy.api#documentation": "

Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects\n in this bucket. Setting this element to TRUE causes the following behavior:

\n
    \n
  • \n

    PUT Bucket ACL and PUT Object ACL calls fail if the specified ACL is public.

    \n
  • \n
  • \n

    PUT Object calls fail if the request includes a public ACL.

    \n
  • \n
  • \n

    PUT Bucket calls fail if the request includes a public ACL.

    \n
  • \n
\n

Enabling this setting doesn't affect existing policies or ACLs.

", + "smithy.api#xmlName": "BlockPublicAcls" + } + }, + "IgnorePublicAcls": { + "target": "com.amazonaws.s3#Setting", + "traits": { + "smithy.api#documentation": "

Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting\n this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in\n this bucket.

\n

Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new\n public ACLs from being set.

", + "smithy.api#xmlName": "IgnorePublicAcls" + } + }, + "BlockPublicPolicy": { + "target": "com.amazonaws.s3#Setting", + "traits": { + "smithy.api#documentation": "

Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to\n TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy\n allows public access.

\n

Enabling this setting doesn't affect existing bucket policies.

", + "smithy.api#xmlName": "BlockPublicPolicy" + } + }, + "RestrictPublicBuckets": { + "target": "com.amazonaws.s3#Setting", + "traits": { + "smithy.api#documentation": "

Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element\n to TRUE restricts access to this bucket to only Amazon Web Services service principals and\n authorized users within this account if the bucket has a public policy.

\n

Enabling this setting doesn't affect previously stored bucket policies, except that public and\n cross-account access within any public bucket policy, including non-public delegation to specific\n accounts, is blocked.

", + "smithy.api#xmlName": "RestrictPublicBuckets" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseFIPS": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": true - } }, - { - "documentation": "virtual addressing + dualstack + fips@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3-fips.dualstack.us-west-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": true, - "UseFIPS": true - } + "traits": { + "smithy.api#documentation": "

The PublicAccessBlock configuration that you want to apply to this Amazon S3 bucket. You can enable the\n configuration options in any combination. For more information about when Amazon S3 considers a bucket or\n object public, see The Meaning of \"Public\" in the Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3#PutBucketAccelerateConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketAccelerateConfigurationRequest" }, - { - "documentation": "accelerate + fips = error@us-west-2", - "expect": { - "error": "Accelerate cannot be used with FIPS" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseFIPS": true, - "AWS::S3::Accelerate": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": true - } + "output": { + "target": "smithy.api#Unit" }, - { - "documentation": "vanilla virtual addressing@cn-north-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3.cn-north-1.amazonaws.com.cn" + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm" + }, + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Sets the accelerate configuration of an existing bucket. Amazon S3 Transfer Acceleration is a\n bucket-level feature that enables you to perform faster data transfers to Amazon S3.

\n

To use this operation, you must have permission to perform the\n s3:PutAccelerateConfiguration action. The bucket owner has this permission by default.\n The bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3\n Resources.

\n

The Transfer Acceleration state of a bucket can be set to one of the following two values:

\n
    \n
  • \n

    Enabled – Enables accelerated data transfers to the bucket.

    \n
  • \n
  • \n

    Suspended – Disables accelerated data transfers to the bucket.

    \n
  • \n
\n

The GetBucketAccelerateConfiguration action returns the transfer acceleration state of a\n bucket.

\n

After setting the Transfer Acceleration state of a bucket to Enabled, it might take up to thirty\n minutes before the data transfer rates to the bucket increase.

\n

The name of the bucket used for Transfer Acceleration must be DNS-compliant and must not contain\n periods (\".\").

\n

For more information about transfer acceleration, see Transfer Acceleration.

\n

The following operations are related to PutBucketAccelerateConfiguration:

\n ", + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?accelerate", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "virtual addressing + dualstack@cn-north-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3.dualstack.cn-north-1.amazonaws.com.cn" + } + }, + "com.amazonaws.s3#PutBucketAccelerateConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket for which the accelerate configuration is set.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "AccelerateConfiguration": { + "target": "com.amazonaws.s3#AccelerateConfiguration", + "traits": { + "smithy.api#documentation": "

Container for setting the transfer acceleration state.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "AccelerateConfiguration" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the request when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseDualStack": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "cn-north-1", - "UseDualStack": true, - "UseFIPS": false - } }, - { - "documentation": "accelerate (dualstack=false)@cn-north-1", - "expect": { - "error": "S3 Accelerate cannot be used in this region" - }, - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutBucketAcl": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketAclRequest" }, - { - "documentation": "virtual addressing + fips@cn-north-1", - "expect": { - "error": "Partition does not support FIPS" - }, - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": true - } + "output": { + "target": "smithy.api#Unit" }, - { - "documentation": "vanilla virtual addressing@af-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3.af-south-1.amazonaws.com" + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "\n

End of support notice: Beginning October 1, 2025, Amazon S3 will discontinue support for creating new Email Grantee Access Control Lists (ACL). \n Email Grantee ACLs created prior to this date will continue to work and remain accessible through the Amazon Web Services Management Console, Command Line Interface (CLI), SDKs, \n and REST API. However, you will no longer be able to create new Email Grantee ACLs.\n

\n

This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region, \n Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.

\n
\n \n

This operation is not supported for directory buckets.

\n
\n

Sets the permissions on an existing bucket using access control lists (ACL). For more information,\n see Using ACLs. To\n set the ACL of a bucket, you must have the WRITE_ACP permission.

\n

You can use one of the following two ways to set a bucket's permissions:

\n
    \n
  • \n

    Specify the ACL in the request body

    \n
  • \n
  • \n

    Specify permissions using request headers

    \n
  • \n
\n \n

You cannot specify access permission using both the body and the request headers.

\n
\n

Depending on your application needs, you may choose to set the ACL on a bucket using either the\n request body or the headers. For example, if you have an existing application that updates a bucket ACL\n using the request body, then you can continue to use that approach.

\n \n

If your bucket uses the bucket owner enforced setting for S3 Object Ownership, ACLs are disabled\n and no longer affect permissions. You must use policies to grant access to your bucket and the objects\n in it. Requests to set ACLs or update ACLs fail and return the\n AccessControlListNotSupported error code. Requests to read ACLs are still supported.\n For more information, see Controlling object ownership in\n the Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n

You can set access permissions by using one of the following methods:

\n
    \n
  • \n

    Specify a canned ACL with the x-amz-acl request header. Amazon S3 supports a set\n of predefined ACLs, known as canned ACLs. Each canned ACL has a\n predefined set of grantees and permissions. Specify the canned ACL name as the value of\n x-amz-acl. If you use this header, you cannot use other access control-specific\n headers in your request. For more information, see Canned ACL.

    \n
  • \n
  • \n

    Specify access permissions explicitly with the x-amz-grant-read,\n x-amz-grant-read-acp, x-amz-grant-write-acp, and\n x-amz-grant-full-control headers. When using these headers, you specify\n explicit access permissions and grantees (Amazon Web Services accounts or Amazon S3 groups) who will receive the\n permission. If you use these ACL-specific headers, you cannot use the x-amz-acl\n header to set a canned ACL. These parameters map to the set of permissions that Amazon S3 supports\n in an ACL. For more information, see Access Control List (ACL)\n Overview.

    \n

    You specify each grantee as a type=value pair, where the type is one of the\n following:

    \n
      \n
    • \n

      \n id – if the value specified is the canonical user ID of an\n Amazon Web Services account

      \n
    • \n
    • \n

      \n uri – if you are granting permissions to a predefined group

      \n
    • \n
    • \n

      \n emailAddress – if the value specified is the email address of an\n Amazon Web Services account

      \n \n

      Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

      \n
        \n
      • \n

        US East (N. Virginia)

        \n
      • \n
      • \n

        US West (N. California)

        \n
      • \n
      • \n

        US West (Oregon)

        \n
      • \n
      • \n

        Asia Pacific (Singapore)

        \n
      • \n
      • \n

        Asia Pacific (Sydney)

        \n
      • \n
      • \n

        Asia Pacific (Tokyo)

        \n
      • \n
      • \n

        Europe (Ireland)

        \n
      • \n
      • \n

        South America (São Paulo)

        \n
      • \n
      \n

      For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

      \n
      \n
    • \n
    \n

    For example, the following x-amz-grant-write header grants create, overwrite,\n and delete objects permission to LogDelivery group predefined by Amazon S3 and two Amazon Web Services accounts\n identified by their email addresses.

    \n

    \n x-amz-grant-write: uri=\"http://acs.amazonaws.com/groups/s3/LogDelivery\",\n id=\"111122223333\", id=\"555566667777\" \n

    \n
  • \n
\n

You can use either a canned ACL or specify access permissions explicitly. You cannot do\n both.

\n
\n
Grantee Values
\n
\n

You can specify the person (grantee) to whom you're assigning access rights (using request\n elements) in the following ways. For examples of how to specify these grantee values in JSON\n format, see the Amazon Web Services CLI example in Enabling Amazon S3 server\n access logging in the Amazon S3 User Guide.

\n
    \n
  • \n

    By the person's ID:

    \n

    \n <>ID<><>GranteesEmail<>\n \n

    \n

    DisplayName is optional and ignored in the request

    \n
  • \n
  • \n

    By URI:

    \n

    \n <>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<>\n

    \n
  • \n
  • \n

    By Email address:

    \n

    \n <>Grantees@email.com<>&\n

    \n

    The grantee is resolved to the CanonicalUser and, in a response to a GET Object acl\n request, appears as the CanonicalUser.

    \n \n

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    \n
      \n
    • \n

      US East (N. Virginia)

      \n
    • \n
    • \n

      US West (N. California)

      \n
    • \n
    • \n

      US West (Oregon)

      \n
    • \n
    • \n

      Asia Pacific (Singapore)

      \n
    • \n
    • \n

      Asia Pacific (Sydney)

      \n
    • \n
    • \n

      Asia Pacific (Tokyo)

      \n
    • \n
    • \n

      Europe (Ireland)

      \n
    • \n
    • \n

      South America (São Paulo)

      \n
    • \n
    \n

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

    \n
    \n
  • \n
\n
\n
\n

The following operations are related to PutBucketAcl:

\n ", + "smithy.api#examples": [ + { + "title": "Put bucket acl", + "documentation": "The following example replaces existing ACL on a bucket. The ACL grants the bucket owner (specified using the owner ID) and write permission to the LogDelivery group. Because this is a replace operation, you must specify all the grants in your request. To incrementally add or remove ACL grants, you might use the console.", + "input": { + "Bucket": "examplebucket", + "GrantFullControl": "id=examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484", + "GrantWrite": "uri=http://acs.amazonaws.com/groups/s3/LogDelivery" + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?acl", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "virtual addressing + dualstack@af-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3.dualstack.af-south-1.amazonaws.com" + } + }, + "com.amazonaws.s3#PutBucketAclRequest": { + "type": "structure", + "members": { + "ACL": { + "target": "com.amazonaws.s3#BucketCannedACL", + "traits": { + "smithy.api#documentation": "

The canned ACL to apply to the bucket.

", + "smithy.api#httpHeader": "x-amz-acl" + } + }, + "AccessControlPolicy": { + "target": "com.amazonaws.s3#AccessControlPolicy", + "traits": { + "smithy.api#documentation": "

Contains the elements that set the ACL permissions for an object per grantee.

", + "smithy.api#httpPayload": {}, + "smithy.api#xmlName": "AccessControlPolicy" + } + }, + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket to which to apply the ACL.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the data. This header must be used as a\n message integrity check to verify that the request body was not corrupted in transit. For more\n information, go to RFC 1864.\n

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the request when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "GrantFullControl": { + "target": "com.amazonaws.s3#GrantFullControl", + "traits": { + "smithy.api#documentation": "

Allows grantee the read, write, read ACP, and write ACP permissions on the bucket.

", + "smithy.api#httpHeader": "x-amz-grant-full-control" + } + }, + "GrantRead": { + "target": "com.amazonaws.s3#GrantRead", + "traits": { + "smithy.api#documentation": "

Allows grantee to list the objects in the bucket.

", + "smithy.api#httpHeader": "x-amz-grant-read" + } + }, + "GrantReadACP": { + "target": "com.amazonaws.s3#GrantReadACP", + "traits": { + "smithy.api#documentation": "

Allows grantee to read the bucket ACL.

", + "smithy.api#httpHeader": "x-amz-grant-read-acp" + } + }, + "GrantWrite": { + "target": "com.amazonaws.s3#GrantWrite", + "traits": { + "smithy.api#documentation": "

Allows grantee to create new objects in the bucket.

\n

For the bucket and object owners of existing objects, also allows deletions and overwrites of those\n objects.

", + "smithy.api#httpHeader": "x-amz-grant-write" + } + }, + "GrantWriteACP": { + "target": "com.amazonaws.s3#GrantWriteACP", + "traits": { + "smithy.api#documentation": "

Allows grantee to write the ACL for the applicable bucket.

", + "smithy.api#httpHeader": "x-amz-grant-write-acp" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseDualStack": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": true, - "UseFIPS": false - } }, - { - "documentation": "accelerate + dualstack@af-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3-accelerate.dualstack.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseDualStack": true, - "AWS::S3::Accelerate": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": true, - "UseFIPS": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutBucketAnalyticsConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketAnalyticsConfigurationRequest" }, - { - "documentation": "accelerate (dualstack=false)@af-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3-accelerate.amazonaws.com" + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Sets an analytics configuration for the bucket (specified by the analytics configuration ID). You\n can have up to 1,000 analytics configurations per bucket.

\n

You can choose to have storage class analysis export analysis reports sent to a comma-separated\n values (CSV) flat file. See the DataExport request element. Reports are updated daily and\n are based on the object filters that you configure. When selecting data export, you specify a\n destination bucket and an optional destination prefix where the file is written. You can export the data\n to a destination bucket in a different account. However, the destination bucket must be in the same\n Region as the bucket that you are making the PUT analytics configuration to. For more information, see\n Amazon S3 Analytics –\n Storage Class Analysis.

\n \n

You must create a bucket policy on the destination bucket where the exported file is written to\n grant permissions to Amazon S3 to write objects to the bucket. For an example policy, see Granting\n Permissions for Amazon S3 Inventory and Storage Class Analysis.

\n
\n

To use this operation, you must have permissions to perform the\n s3:PutAnalyticsConfiguration action. The bucket owner has this permission by default. The\n bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3\n Resources.

\n

\n PutBucketAnalyticsConfiguration has the following special errors:

\n
    \n
  • \n
      \n
    • \n

      \n HTTP Error: HTTP 400 Bad Request\n

      \n
    • \n
    • \n

      \n Code: InvalidArgument\n

      \n
    • \n
    • \n

      \n Cause: Invalid argument.\n

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n HTTP Error: HTTP 400 Bad Request\n

      \n
    • \n
    • \n

      \n Code: TooManyConfigurations\n

      \n
    • \n
    • \n

      \n Cause: You are attempting to create a new configuration but have already reached\n the 1,000-configuration limit.\n

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n HTTP Error: HTTP 403 Forbidden\n

      \n
    • \n
    • \n

      \n Code: AccessDenied\n

      \n
    • \n
    • \n

      \n Cause: You are not the owner of the specified bucket, or you do not have the\n s3:PutAnalyticsConfiguration bucket permission to set the configuration on the\n bucket.\n

      \n
    • \n
    \n
  • \n
\n

The following operations are related to PutBucketAnalyticsConfiguration:

\n ", + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?analytics", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::S3::Accelerate": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "virtual addressing + fips@af-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3-fips.af-south-1.amazonaws.com" + } + }, + "com.amazonaws.s3#PutBucketAnalyticsConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket to which an analytics configuration is stored.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Id": { + "target": "com.amazonaws.s3#AnalyticsId", + "traits": { + "smithy.api#documentation": "

The ID that identifies the analytics configuration.

", + "smithy.api#httpQuery": "id", + "smithy.api#required": {} + } + }, + "AnalyticsConfiguration": { + "target": "com.amazonaws.s3#AnalyticsConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration and any analyses for the analytics filter.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "AnalyticsConfiguration" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseFIPS": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": true - } }, - { - "documentation": "virtual addressing + dualstack + fips@af-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.s3-fips.dualstack.af-south-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": true, - "UseFIPS": true - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutBucketCors": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketCorsRequest" }, - { - "documentation": "accelerate + fips = error@af-south-1", - "expect": { - "error": "Accelerate cannot be used with FIPS" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseFIPS": true, - "AWS::S3::Accelerate": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": true - } + "output": { + "target": "smithy.api#Unit" }, - { - "documentation": "vanilla path style@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.us-west-2.amazonaws.com/bucket-name" + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Sets the cors configuration for your bucket. If the configuration exists, Amazon S3 replaces\n it.

\n

To use this operation, you must be allowed to perform the s3:PutBucketCORS action. By\n default, the bucket owner has this permission and can grant it to others.

\n

You set this configuration on a bucket so that the bucket can service cross-origin requests. For\n example, you might want to enable a request whose origin is http://www.example.com to\n access your Amazon S3 bucket at my.example.bucket.com by using the browser's\n XMLHttpRequest capability.

\n

To enable cross-origin resource sharing (CORS) on a bucket, you add the cors\n subresource to the bucket. The cors subresource is an XML document in which you configure\n rules that identify origins and the HTTP methods that can be executed on your bucket. The document is\n limited to 64 KB in size.

\n

When Amazon S3 receives a cross-origin request (or a pre-flight OPTIONS request) against a bucket, it\n evaluates the cors configuration on the bucket and uses the first CORSRule\n rule that matches the incoming browser request to enable a cross-origin request. For a rule to match,\n the following conditions must be met:

\n
    \n
  • \n

    The request's Origin header must match AllowedOrigin elements.

    \n
  • \n
  • \n

    The request method (for example, GET, PUT, HEAD, and so on) or the\n Access-Control-Request-Method header in case of a pre-flight OPTIONS\n request must be one of the AllowedMethod elements.

    \n
  • \n
  • \n

    Every header specified in the Access-Control-Request-Headers request header of a\n pre-flight request must match an AllowedHeader element.

    \n
  • \n
\n

For more information about CORS, go to Enabling Cross-Origin Resource Sharing in the\n Amazon S3 User Guide.

\n

The following operations are related to PutBucketCors:

\n ", + "smithy.api#examples": [ + { + "title": "To set cors configuration on a bucket.", + "documentation": "The following example enables PUT, POST, and DELETE requests from www.example.com, and enables GET requests from any domain.", + "input": { + "Bucket": "", + "CORSConfiguration": { + "CORSRules": [ + { + "AllowedOrigins": [ + "http://www.example.com" + ], + "AllowedHeaders": [ + "*" + ], + "AllowedMethods": [ + "PUT", + "POST", + "DELETE" + ], + "MaxAgeSeconds": 3000, + "ExposeHeaders": [ + "x-amz-server-side-encryption" + ] + }, + { + "AllowedOrigins": [ + "*" + ], + "AllowedHeaders": [ + "Authorization" + ], + "AllowedMethods": [ + "GET" + ], + "MaxAgeSeconds": 3000 + } + ] + }, + "ContentMD5": "" + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?cors", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#PutBucketCorsRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

Specifies the bucket impacted by the corsconfiguration.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "CORSConfiguration": { + "target": "com.amazonaws.s3#CORSConfiguration", + "traits": { + "smithy.api#documentation": "

Describes the cross-origin access configuration for objects in an Amazon S3 bucket. For more information,\n see Enabling Cross-Origin Resource\n Sharing in the Amazon S3 User Guide.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "CORSConfiguration" + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the data. This header must be used as a\n message integrity check to verify that the request body was not corrupted in transit. For more\n information, go to RFC 1864.\n

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the request when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } }, - { - "documentation": "fips@us-gov-west-2, bucket is not S3-dns-compatible (subdomains)", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingName": "s3", - "signingRegion": "us-gov-west-1", - "disableDoubleEncoding": true, - "name": "sigv4" - } - ] - }, - "url": "https://s3-fips.us-gov-west-1.amazonaws.com/bucket.with.dots" + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutBucketEncryption": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketEncryptionRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "

This operation configures default encryption and Amazon S3 Bucket Keys for an existing bucket.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

\n
\n

By default, all buckets have a default encryption configuration that uses server-side encryption\n with Amazon S3 managed keys (SSE-S3).

\n \n
    \n
  • \n

    \n General purpose buckets\n

    \n
      \n
    • \n

      You can optionally configure default encryption for a bucket by using server-side\n encryption with Key Management Service (KMS) keys (SSE-KMS) or dual-layer server-side encryption with\n Amazon Web Services KMS keys (DSSE-KMS). If you specify default encryption by using SSE-KMS, you can also\n configure Amazon S3 Bucket\n Keys. For information about the bucket default encryption feature, see Amazon S3 Bucket Default\n Encryption in the Amazon S3 User Guide.

      \n
    • \n
    • \n

      If you use PutBucketEncryption to set your default bucket encryption to\n SSE-KMS, you should verify that your KMS key ID is correct. Amazon S3 doesn't validate the\n KMS key ID provided in PutBucketEncryption requests.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory buckets - You can optionally configure\n default encryption for a bucket by using server-side encryption with Key Management Service (KMS) keys\n (SSE-KMS).

    \n
      \n
    • \n

      We recommend that the bucket's default encryption uses the desired encryption\n configuration and you don't override the bucket default encryption in your\n CreateSession requests or PUT object requests. Then, new objects\n are automatically encrypted with the desired encryption settings.\n For more information about the encryption overriding behaviors in directory buckets, see Specifying server-side encryption with KMS for new object uploads.

      \n
    • \n
    • \n

      Your SSE-KMS configuration can only support 1 customer managed key per directory bucket's lifetime. \nThe Amazon Web Services managed key (aws/s3) isn't supported. \n

      \n
    • \n
    • \n

      S3 Bucket Keys are always enabled for GET and PUT operations in a directory bucket and can’t be disabled. S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets \nto directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through CopyObject, UploadPartCopy, the Copy operation in Batch Operations, or \n the import jobs. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.

      \n
    • \n
    • \n

      When you specify an KMS customer managed key for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported.

      \n
    • \n
    • \n

      For directory buckets, if you use PutBucketEncryption to set your default bucket\n encryption to SSE-KMS, Amazon S3 validates the KMS key ID provided in\n PutBucketEncryption requests.

      \n
    • \n
    \n
  • \n
\n
\n \n

If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key\n ARN. If you use a KMS key alias instead, then KMS resolves the key within the requester’s account.\n This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and\n not the bucket owner.

\n

Also, this action requires Amazon Web Services Signature Version 4. For more information, see Authenticating\n Requests (Amazon Web Services Signature Version 4).

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The\n s3:PutEncryptionConfiguration permission is required in a policy. The bucket\n owner has this permission by default. The bucket owner can grant this permission to others.\n For more information about permissions, see Permissions Related to Bucket Operations and Managing Access Permissions to Your\n Amazon S3 Resources in the Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to\n this API operation, you must have the s3express:PutEncryptionConfiguration\n permission in an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.\n For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

    \n

    To set a directory bucket default encryption with SSE-KMS, you must also have the\n kms:GenerateDataKey and the kms:Decrypt permissions in IAM\n identity-based policies and KMS key policies for the target KMS key.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to PutBucketEncryption:

\n ", + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?encryption", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#PutBucketEncryptionRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

Specifies default encryption for a bucket using server-side encryption with different key\n options.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must also follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide\n

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the server-side encryption\n configuration.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the request when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

\n \n

For directory buckets, when you use Amazon Web Services SDKs, CRC32 is the default checksum algorithm that's used for performance.

\n
", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "ServerSideEncryptionConfiguration": { + "target": "com.amazonaws.s3#ServerSideEncryptionConfiguration", + "traits": { + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "ServerSideEncryptionConfiguration" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code \n501 Not Implemented.

\n
", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-gov-west-1", - "AWS::UseFIPS": true, - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket.with.dots", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket.with.dots", - "Region": "us-gov-west-1", - "UseDualStack": false, - "UseFIPS": true - } }, - { - "documentation": "path style + accelerate = error@us-west-2", - "expect": { - "error": "Path-style addressing cannot be used with S3 Accelerate" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::ForcePathStyle": true, - "AWS::S3::Accelerate": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutBucketIntelligentTieringConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketIntelligentTieringConfigurationRequest" }, - { - "documentation": "path style + dualstack@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.dualstack.us-west-2.amazonaws.com/bucket-name" + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Puts a S3 Intelligent-Tiering configuration to the specified bucket. You can have up to 1,000\n S3 Intelligent-Tiering configurations per bucket.

\n

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.

\n

The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.

\n

For more information, see Storage class for automatically optimizing frequently and infrequently accessed objects.

\n

Operations related to PutBucketIntelligentTieringConfiguration include:

\n \n \n

You only need S3 Intelligent-Tiering enabled on a bucket if you want to automatically move objects\n stored in the S3 Intelligent-Tiering storage class to the Archive Access or Deep Archive Access\n tier.

\n
\n

\n PutBucketIntelligentTieringConfiguration has the following special errors:

\n
\n
HTTP 400 Bad Request Error
\n
\n

\n Code: InvalidArgument

\n

\n Cause: Invalid Argument

\n
\n
HTTP 400 Bad Request Error
\n
\n

\n Code: TooManyConfigurations

\n

\n Cause: You are attempting to create a new configuration but have already\n reached the 1,000-configuration limit.

\n
\n
HTTP 403 Forbidden Error
\n
\n

\n Cause: You are not the owner of the specified bucket, or you do not have\n the s3:PutIntelligentTieringConfiguration bucket permission to set the configuration\n on the bucket.

\n
\n
", + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?intelligent-tiering", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#PutBucketIntelligentTieringConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the Amazon S3 bucket whose configuration you want to modify or retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Id": { + "target": "com.amazonaws.s3#IntelligentTieringId", + "traits": { + "smithy.api#documentation": "

The ID used to identify the S3 Intelligent-Tiering configuration.

", + "smithy.api#httpQuery": "id", + "smithy.api#required": {} + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "IntelligentTieringConfiguration": { + "target": "com.amazonaws.s3#IntelligentTieringConfiguration", + "traits": { + "smithy.api#documentation": "

Container for S3 Intelligent-Tiering configuration.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "IntelligentTieringConfiguration" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true, - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "us-west-2", - "UseDualStack": true, - "UseFIPS": false - } - }, - { - "documentation": "path style + arn is error@us-west-2", - "expect": { - "error": "Path-style addressing cannot be used with ARN buckets" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "ForcePathStyle": true, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } }, - { - "documentation": "path style + invalid DNS name@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.us-west-2.amazonaws.com/99a_b" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "99a_b", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "99a_b", - "ForcePathStyle": true, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutBucketInventoryConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketInventoryConfigurationRequest" }, - { - "documentation": "no path style + invalid DNS name@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.us-west-2.amazonaws.com/99a_b" + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

This implementation of the PUT action adds an S3 Inventory configuration (identified by\n the inventory ID) to the bucket. You can have up to 1,000 inventory configurations per bucket.

\n

Amazon S3 inventory generates inventories of the objects in the bucket on a daily or weekly basis, and\n the results are published to a flat file. The bucket that is inventoried is called the\n source bucket, and the bucket where the inventory flat file is stored is called\n the destination bucket. The destination bucket must be in the\n same Amazon Web Services Region as the source bucket.

\n

When you configure an inventory for a source bucket, you specify the\n destination bucket where you want the inventory to be stored, and whether to\n generate the inventory daily or weekly. You can also configure what object metadata to include and\n whether to inventory all object versions or only current versions. For more information, see Amazon S3 Inventory in the\n Amazon S3 User Guide.

\n \n

You must create a bucket policy on the destination bucket to grant\n permissions to Amazon S3 to write objects to the bucket in the defined location. For an example policy, see\n Granting\n Permissions for Amazon S3 Inventory and Storage Class Analysis.

\n
\n
\n
Permissions
\n
\n

To use this operation, you must have permission to perform the\n s3:PutInventoryConfiguration action. The bucket owner has this permission by\n default and can grant this permission to others.

\n

The s3:PutInventoryConfiguration permission allows a user to create an S3 Inventory\n report that includes all object metadata fields available and to specify the destination bucket to\n store the inventory. A user with read access to objects in the destination bucket can also access\n all object metadata fields that are available in the inventory report.

\n

To restrict access to an inventory report, see Restricting access to an Amazon S3 Inventory report in the\n Amazon S3 User Guide. For more information about the metadata fields available\n in S3 Inventory, see Amazon S3 Inventory\n lists in the Amazon S3 User Guide. For more information about\n permissions, see Permissions related to bucket subresource operations and Identity and access management in\n Amazon S3 in the Amazon S3 User Guide.

\n
\n
\n

\n PutBucketInventoryConfiguration has the following special errors:

\n
\n
HTTP 400 Bad Request Error
\n
\n

\n Code: InvalidArgument

\n

\n Cause: Invalid Argument

\n
\n
HTTP 400 Bad Request Error
\n
\n

\n Code: TooManyConfigurations

\n

\n Cause: You are attempting to create a new configuration but have already\n reached the 1,000-configuration limit.

\n
\n
HTTP 403 Forbidden Error
\n
\n

\n Cause: You are not the owner of the specified bucket, or you do not have\n the s3:PutInventoryConfiguration bucket permission to set the configuration on the\n bucket.

\n
\n
\n

The following operations are related to PutBucketInventoryConfiguration:

\n ", + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?inventory", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "99a_b", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "99a_b", - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "vanilla path style@cn-north-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.cn-north-1.amazonaws.com.cn/bucket-name" + } + }, + "com.amazonaws.s3#PutBucketInventoryConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket where the inventory configuration will be stored.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Id": { + "target": "com.amazonaws.s3#InventoryId", + "traits": { + "smithy.api#documentation": "

The ID used to identify the inventory configuration.

", + "smithy.api#httpQuery": "id", + "smithy.api#required": {} + } + }, + "InventoryConfiguration": { + "target": "com.amazonaws.s3#InventoryConfiguration", + "traits": { + "smithy.api#documentation": "

Specifies the inventory configuration.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "InventoryConfiguration" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "path style + fips@cn-north-1", - "expect": { - "error": "Partition does not support FIPS" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseFIPS": true, - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": true - } }, - { - "documentation": "path style + accelerate = error@cn-north-1", - "expect": { - "error": "Path-style addressing cannot be used with S3 Accelerate" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::S3::ForcePathStyle": true, - "AWS::S3::Accelerate": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "path style + dualstack@cn-north-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.dualstack.cn-north-1.amazonaws.com.cn/bucket-name" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseDualStack": true, - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "cn-north-1", - "UseDualStack": true, - "UseFIPS": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutBucketLifecycleConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketLifecycleConfigurationRequest" }, - { - "documentation": "path style + arn is error@cn-north-1", - "expect": { - "error": "Path-style addressing cannot be used with ARN buckets" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "ForcePathStyle": true, - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false - } + "output": { + "target": "com.amazonaws.s3#PutBucketLifecycleConfigurationOutput" }, - { - "documentation": "path style + invalid DNS name@cn-north-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.cn-north-1.amazonaws.com.cn/99a_b" + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "

Creates a new lifecycle configuration for the bucket or replaces an existing lifecycle\n configuration. Keep in mind that this will overwrite an existing lifecycle configuration, so if you want\n to retain any configuration details, they must be included in the new lifecycle configuration. For\n information about lifecycle configuration, see Managing your storage\n lifecycle.

\n \n

Bucket lifecycle configuration now supports specifying a lifecycle rule using an object key name\n prefix, one or more object tags, object size, or any combination of these. Accordingly, this section\n describes the latest API. The previous version of the API supported filtering based only on an object\n key name prefix, which is supported for backward compatibility. For the related API description, see\n PutBucketLifecycle.

\n
\n
\n
Rules
\n
Permissions
\n
HTTP Host header syntax
\n
\n

You specify the lifecycle configuration in your request body. The lifecycle configuration is\n specified as XML consisting of one or more rules. An Amazon S3 Lifecycle configuration can have up to\n 1,000 rules. This limit is not adjustable.

\n

Bucket lifecycle configuration supports specifying a lifecycle rule using an object key name\n prefix, one or more object tags, object size, or any combination of these. Accordingly, this\n section describes the latest API. The previous version of the API supported filtering based only\n on an object key name prefix, which is supported for backward compatibility for general purpose\n buckets. For the related API description, see PutBucketLifecycle.

\n \n

Lifecyle configurations for directory buckets only support expiring objects and cancelling\n multipart uploads. Expiring of versioned objects,transitions and tag filters are not\n supported.

\n
\n

A lifecycle rule consists of the following:

\n
    \n
  • \n

    A filter identifying a subset of objects to which the rule applies. The filter can be\n based on a key name prefix, object tags, object size, or any combination of these.

    \n
  • \n
  • \n

    A status indicating whether the rule is in effect.

    \n
  • \n
  • \n

    One or more lifecycle transition and expiration actions that you want Amazon S3 to perform on\n the objects identified by the filter. If the state of your bucket is versioning-enabled or\n versioning-suspended, you can have many versions of the same object (one current version and\n zero or more noncurrent versions). Amazon S3 provides predefined actions that you can specify for\n current and noncurrent object versions.

    \n
  • \n
\n

For more information, see Object Lifecycle Management and\n Lifecycle\n Configuration Elements.

\n
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - By default, all Amazon S3\n resources are private, including buckets, objects, and related subresources (for example,\n lifecycle configuration and website configuration). Only the resource owner (that is, the\n Amazon Web Services account that created it) can access the resource. The resource owner can optionally\n grant access permissions to others by writing an access policy. For this operation, a user\n must have the s3:PutLifecycleConfiguration permission.

    \n

    You can also explicitly deny permissions. An explicit deny also supersedes any other\n permissions. If you want to block users or accounts from removing or deleting objects from\n your bucket, you must deny them permissions for the following actions:

    \n \n
  • \n
\n
    \n
  • \n

    \n Directory bucket permissions - You must have the\n s3express:PutLifecycleConfiguration permission in an IAM identity-based policy\n to use this operation. Cross-account access to this API operation isn't supported. The\n resource owner can optionally grant access permissions to others by creating a role or user\n for them as long as they are within the same account as the owner and resource.

    \n

    For more information about directory bucket policies and permissions, see Authorizing Regional endpoint APIs with IAM in the Amazon S3 User\n Guide.

    \n \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

    \n
    \n
  • \n
\n
\n
\n

\n Directory buckets - The HTTP Host header syntax is\n s3express-control.region.amazonaws.com.

\n

The following operations are related to PutBucketLifecycleConfiguration:

\n \n
\n
", + "smithy.api#examples": [ + { + "title": "Put bucket lifecycle", + "documentation": "The following example replaces existing lifecycle configuration, if any, on the specified bucket. ", + "input": { + "Bucket": "examplebucket", + "LifecycleConfiguration": { + "Rules": [ + { + "Filter": { + "Prefix": "documents/" + }, + "Status": "Enabled", + "Transitions": [ + { + "Days": 365, + "StorageClass": "GLACIER" + } + ], + "Expiration": { + "Days": 3650 + }, + "ID": "TestOnly" + } + ] + } + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?lifecycle", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "99a_b", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "99a_b", - "ForcePathStyle": true, - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "no path style + invalid DNS name@cn-north-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.cn-north-1.amazonaws.com.cn/99a_b" + } + }, + "com.amazonaws.s3#PutBucketLifecycleConfigurationOutput": { + "type": "structure", + "members": { + "TransitionDefaultMinimumObjectSize": { + "target": "com.amazonaws.s3#TransitionDefaultMinimumObjectSize", + "traits": { + "smithy.api#documentation": "

Indicates which default minimum object size behavior is applied to the lifecycle\n configuration.

\n \n

This parameter applies to general purpose buckets only. It is not supported for directory bucket\n lifecycle configurations.

\n
\n
    \n
  • \n

    \n all_storage_classes_128K - Objects smaller than 128 KB will not transition to\n any storage class by default.

    \n
  • \n
  • \n

    \n varies_by_storage_class - Objects smaller than 128 KB will transition to Glacier\n Flexible Retrieval or Glacier Deep Archive storage classes. By default, all other storage classes\n will prevent transitions smaller than 128 KB.

    \n
  • \n
\n

To customize the minimum object size for any transition you can add a filter that specifies a custom\n ObjectSizeGreaterThan or ObjectSizeLessThan in the body of your transition\n rule. Custom filters always take precedence over the default transition behavior.

", + "smithy.api#httpHeader": "x-amz-transition-default-minimum-object-size" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "99a_b", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "99a_b", - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false - } }, - { - "documentation": "vanilla path style@af-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.af-south-1.amazonaws.com/bucket-name" + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#PutBucketLifecycleConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket for which to set the configuration.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the request when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "LifecycleConfiguration": { + "target": "com.amazonaws.s3#BucketLifecycleConfiguration", + "traits": { + "smithy.api#documentation": "

Container for lifecycle rules. You can add as many as 1,000 rules.

", + "smithy.api#httpPayload": {}, + "smithy.api#xmlName": "LifecycleConfiguration" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

This parameter applies to general purpose buckets only. It is not supported for directory bucket\n lifecycle configurations.

\n
", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "TransitionDefaultMinimumObjectSize": { + "target": "com.amazonaws.s3#TransitionDefaultMinimumObjectSize", + "traits": { + "smithy.api#documentation": "

Indicates which default minimum object size behavior is applied to the lifecycle\n configuration.

\n \n

This parameter applies to general purpose buckets only. It is not supported for directory bucket\n lifecycle configurations.

\n
\n
    \n
  • \n

    \n all_storage_classes_128K - Objects smaller than 128 KB will not transition to\n any storage class by default.

    \n
  • \n
  • \n

    \n varies_by_storage_class - Objects smaller than 128 KB will transition to Glacier\n Flexible Retrieval or Glacier Deep Archive storage classes. By default, all other storage classes\n will prevent transitions smaller than 128 KB.

    \n
  • \n
\n

To customize the minimum object size for any transition you can add a filter that specifies a custom\n ObjectSizeGreaterThan or ObjectSizeLessThan in the body of your transition\n rule. Custom filters always take precedence over the default transition behavior.

", + "smithy.api#httpHeader": "x-amz-transition-default-minimum-object-size" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } }, - { - "documentation": "path style + fips@af-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true, - "name": "sigv4" - } - ] - }, - "url": "https://s3-fips.af-south-1.amazonaws.com/bucket-name" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseFIPS": true, - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": true - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutBucketLogging": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketLoggingRequest" }, - { - "documentation": "path style + accelerate = error@af-south-1", - "expect": { - "error": "Path-style addressing cannot be used with S3 Accelerate" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::S3::ForcePathStyle": true, - "AWS::S3::Accelerate": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } + "output": { + "target": "smithy.api#Unit" }, - { - "documentation": "path style + dualstack@af-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.dualstack.af-south-1.amazonaws.com/bucket-name" + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "\n

End of support notice: Beginning October 1, 2025, Amazon S3 will discontinue support for creating new Email Grantee Access Control Lists (ACL). \n Email Grantee ACLs created prior to this date will continue to work and remain accessible through the Amazon Web Services Management Console, Command Line Interface (CLI), SDKs, \n and REST API. However, you will no longer be able to create new Email Grantee ACLs.\n

\n

This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region, \n Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.

\n
\n \n

This operation is not supported for directory buckets.

\n
\n

Set the logging parameters for a bucket and to specify permissions for who can view and modify the\n logging parameters. All logs are saved to buckets in the same Amazon Web Services Region as the source bucket. To set\n the logging status of a bucket, you must be the bucket owner.

\n

The bucket owner is automatically granted FULL_CONTROL to all logs. You use the Grantee\n request element to grant access to other people. The Permissions request element specifies\n the kind of access the grantee has to the logs.

\n \n

If the target bucket for log delivery uses the bucket owner enforced setting for S3 Object\n Ownership, you can't use the Grantee request element to grant access to others.\n Permissions can only be granted using policies. For more information, see Permissions for server access log delivery in the\n Amazon S3 User Guide.

\n
\n
\n
Grantee Values
\n
\n

You can specify the person (grantee) to whom you're assigning access rights (by using request\n elements) in the following ways. For examples of how to specify these grantee values in JSON\n format, see the Amazon Web Services CLI example in Enabling Amazon S3 server\n access logging in the Amazon S3 User Guide.

\n
    \n
  • \n

    By the person's ID:

    \n

    \n <>ID<><>GranteesEmail<>\n \n

    \n

    \n DisplayName is optional and ignored in the request.

    \n
  • \n
  • \n

    By Email address:

    \n

    \n <>Grantees@email.com<>\n

    \n

    The grantee is resolved to the CanonicalUser and, in a response to a\n GETObjectAcl request, appears as the CanonicalUser.

    \n
  • \n
  • \n

    By URI:

    \n

    \n <>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<>\n

    \n
  • \n
\n
\n
\n

To enable logging, you use LoggingEnabled and its children request elements. To disable\n logging, you use an empty BucketLoggingStatus request element:

\n

\n \n

\n

For more information about server access logging, see Server Access Logging in the\n Amazon S3 User Guide.

\n

For more information about creating a bucket, see CreateBucket. For more information about\n returning the logging status of a bucket, see GetBucketLogging.

\n

The following operations are related to PutBucketLogging:

\n ", + "smithy.api#examples": [ + { + "title": "Set logging configuration for a bucket", + "documentation": "The following example sets logging policy on a bucket. For the Log Delivery group to deliver logs to the destination bucket, it needs permission for the READ_ACP action which the policy grants.", + "input": { + "Bucket": "sourcebucket", + "BucketLoggingStatus": { + "LoggingEnabled": { + "TargetBucket": "targetbucket", + "TargetPrefix": "MyBucketLogs/", + "TargetGrants": [ + { + "Grantee": { + "Type": "Group", + "URI": "http://acs.amazonaws.com/groups/global/AllUsers" + }, + "Permission": "READ" + } + ] + } + } + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?logging", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#PutBucketLoggingRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket for which to set the logging parameters.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "BucketLoggingStatus": { + "target": "com.amazonaws.s3#BucketLoggingStatus", + "traits": { + "smithy.api#documentation": "

Container for logging status information.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "BucketLoggingStatus" + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The MD5 hash of the PutBucketLogging request body.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the request when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseDualStack": true, - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Region": "af-south-1", - "UseDualStack": true, - "UseFIPS": false - } }, - { - "documentation": "path style + arn is error@af-south-1", - "expect": { - "error": "Path-style addressing cannot be used with ARN buckets" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:PARTITION:s3-outposts:REGION:123456789012:outpost:op-01234567890123456:bucket:mybucket", - "ForcePathStyle": true, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutBucketMetricsConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketMetricsConfigurationRequest" }, - { - "documentation": "path style + invalid DNS name@af-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.af-south-1.amazonaws.com/99a_b" + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Sets a metrics configuration (specified by the metrics configuration ID) for the bucket. You can\n have up to 1,000 metrics configurations per bucket. If you're updating an existing metrics\n configuration, note that this is a full replacement of the existing metrics configuration. If you don't\n include the elements you want to keep, they are erased.

\n

To use this operation, you must have permissions to perform the\n s3:PutMetricsConfiguration action. The bucket owner has this permission by default. The\n bucket owner can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3\n Resources.

\n

For information about CloudWatch request metrics for Amazon S3, see Monitoring Metrics with Amazon\n CloudWatch.

\n

The following operations are related to PutBucketMetricsConfiguration:

\n \n

\n PutBucketMetricsConfiguration has the following special error:

\n
    \n
  • \n

    Error code: TooManyConfigurations\n

    \n
      \n
    • \n

      Description: You are attempting to create a new configuration but have already reached the\n 1,000-configuration limit.

      \n
    • \n
    • \n

      HTTP Status Code: HTTP 400 Bad Request

      \n
    • \n
    \n
  • \n
", + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?metrics", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "99a_b", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "99a_b", - "ForcePathStyle": true, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "no path style + invalid DNS name@af-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3.af-south-1.amazonaws.com/99a_b" + } + }, + "com.amazonaws.s3#PutBucketMetricsConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket for which the metrics configuration is set.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Id": { + "target": "com.amazonaws.s3#MetricsId", + "traits": { + "smithy.api#documentation": "

The ID used to identify the metrics configuration. The ID has a 64 character limit and can only\n contain letters, numbers, periods, dashes, and underscores.

", + "smithy.api#httpQuery": "id", + "smithy.api#required": {} + } + }, + "MetricsConfiguration": { + "target": "com.amazonaws.s3#MetricsConfiguration", + "traits": { + "smithy.api#documentation": "

Specifies the metrics configuration.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "MetricsConfiguration" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "99a_b", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "99a_b", - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } }, - { - "documentation": "virtual addressing + private link@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "http://bucket-name.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Endpoint": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutBucketNotificationConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketNotificationConfigurationRequest" }, - { - "documentation": "path style + private link@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/bucket-name" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } + "output": { + "target": "smithy.api#Unit" }, - { - "documentation": "SDK::Host + FIPS@us-west-2", - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseFIPS": true, - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": true - } + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Enables notifications of specified events for a bucket. For more information about event\n notifications, see Configuring Event Notifications.

\n

Using this API, you can replace an existing notification configuration. The configuration is an XML\n file that defines the event types that you want Amazon S3 to publish and the destination where you want Amazon S3\n to publish an event notification when it detects an event of the specified type.

\n

By default, your bucket has no event notifications configured. That is, the notification\n configuration will be an empty NotificationConfiguration.

\n

\n \n

\n

\n \n

\n

This action replaces the existing notification configuration with the configuration you include in\n the request body.

\n

After Amazon S3 receives this request, it first verifies that any Amazon Simple Notification Service\n (Amazon SNS) or Amazon Simple Queue Service (Amazon SQS) destination exists, and that the bucket owner\n has permission to publish to it by sending a test notification. In the case of Lambda destinations,\n Amazon S3 verifies that the Lambda function permissions grant Amazon S3 permission to invoke the function from the\n Amazon S3 bucket. For more information, see Configuring Notifications for Amazon S3\n Events.

\n

You can disable notifications by adding the empty NotificationConfiguration element.

\n

For more information about the number of event notification configurations that you can create per\n bucket, see Amazon S3 service\n quotas in Amazon Web Services General Reference.

\n

By default, only the bucket owner can configure notifications on a bucket. However, bucket owners\n can use a bucket policy to grant permission to other users to set this configuration with the required\n s3:PutBucketNotification permission.

\n \n

The PUT notification is an atomic operation. For example, suppose your notification configuration\n includes SNS topic, SQS queue, and Lambda function configurations. When you send a PUT request with\n this configuration, Amazon S3 sends test messages to your SNS topic. If the message fails, the entire PUT\n action will fail, and Amazon S3 will not add the configuration to your bucket.

\n
\n

If the configuration in the request body includes only one TopicConfiguration\n specifying only the s3:ReducedRedundancyLostObject event type, the response will also\n include the x-amz-sns-test-message-id header containing the message ID of the test\n notification sent to the topic.

\n

The following action is related to PutBucketNotificationConfiguration:

\n ", + "smithy.api#examples": [ + { + "title": "Set notification configuration for a bucket", + "documentation": "The following example sets notification configuration on a bucket to publish the object created events to an SNS topic.", + "input": { + "Bucket": "examplebucket", + "NotificationConfiguration": { + "TopicConfigurations": [ + { + "TopicArn": "arn:aws:sns:us-west-2:123456789012:s3-notification-topic", + "Events": [ + "s3:ObjectCreated:*" + ] + } + ] + } + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?notification", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#PutBucketNotificationConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "NotificationConfiguration": { + "target": "com.amazonaws.s3#NotificationConfiguration", + "traits": { + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "NotificationConfiguration" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "SkipDestinationValidation": { + "target": "com.amazonaws.s3#SkipValidation", + "traits": { + "smithy.api#documentation": "

Skips validation of Amazon SQS, Amazon SNS, and Lambda destinations.\n True or false value.

", + "smithy.api#httpHeader": "x-amz-skip-destination-validation" + } + } }, - { - "documentation": "SDK::Host + DualStack@us-west-2", - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true, - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "us-west-2", - "UseDualStack": true, - "UseFIPS": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutBucketOwnershipControls": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketOwnershipControlsRequest" }, - { - "documentation": "SDK::HOST + accelerate@us-west-2", - "expect": { - "error": "A custom endpoint cannot be combined with S3 Accelerate" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "AWS::S3::Accelerate": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Endpoint": "http://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } + "output": { + "target": "smithy.api#Unit" }, - { - "documentation": "SDK::Host + access point ARN@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myendpoint-123456789012.beta.example.com" + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Creates or modifies OwnershipControls for an Amazon S3 bucket. To use this operation, you\n must have the s3:PutBucketOwnershipControls permission. For more information about Amazon S3\n permissions, see Specifying permissions in a policy.

\n

For information about Amazon S3 Object Ownership, see Using object ownership.

\n

The following operations are related to PutBucketOwnershipControls:

\n ", + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?ownershipControls", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://beta.example.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Endpoint": "https://beta.example.com", - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "virtual addressing + private link@cn-north-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + } + }, + "com.amazonaws.s3#PutBucketOwnershipControlsRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the Amazon S3 bucket whose OwnershipControls you want to set.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The MD5 hash of the OwnershipControls request body.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "OwnershipControls": { + "target": "com.amazonaws.s3#OwnershipControls", + "traits": { + "smithy.api#documentation": "

The OwnershipControls (BucketOwnerEnforced, BucketOwnerPreferred, or ObjectWriter) that\n you want to apply to this Amazon S3 bucket.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "OwnershipControls" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This\n header will not provide any additional functionality if you don't use the SDK. When you send this\n header, there must be a corresponding x-amz-checksum-algorithm\n header\n sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false - } }, - { - "documentation": "path style + private link@cn-north-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/bucket-name" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutBucketPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketPolicyRequest" }, - { - "documentation": "FIPS@cn-north-1", - "expect": { - "error": "Partition does not support FIPS" - }, - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": true - } + "output": { + "target": "smithy.api#Unit" }, - { - "documentation": "SDK::Host + DualStack@cn-north-1", - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::UseDualStack": true, - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "cn-north-1", - "UseDualStack": true, - "UseFIPS": false - } + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "

Applies an Amazon S3 bucket policy to an Amazon S3 bucket.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n

If you are using an identity other than the root user of the Amazon Web Services account that owns the\n bucket, the calling identity must both have the PutBucketPolicy permissions on the\n specified bucket and belong to the bucket owner's account in order to use this operation.

\n

If you don't have PutBucketPolicy permissions, Amazon S3 returns a 403 Access\n Denied error. If you have the correct permissions, but you're not using an identity that\n belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not Allowed\n error.

\n \n

To ensure that bucket owners don't inadvertently lock themselves out of their own buckets,\n the root principal in a bucket owner's Amazon Web Services account can perform the\n GetBucketPolicy, PutBucketPolicy, and\n DeleteBucketPolicy API actions, even if their bucket policy explicitly denies the\n root principal's access. Bucket owner root principals can only be blocked from performing these\n API actions by VPC endpoint policies and Amazon Web Services Organizations policies.

\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The\n s3:PutBucketPolicy permission is required in a policy. For more information\n about general purpose buckets bucket policies, see Using Bucket Policies and User\n Policies in the Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to\n this API operation, you must have the s3express:PutBucketPolicy permission in\n an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.\n For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

    \n
  • \n
\n
\n
Example bucket policies
\n
\n

\n General purpose buckets example bucket policies - See Bucket policy\n examples in the Amazon S3 User Guide.

\n

\n Directory bucket example bucket policies - See Example\n bucket policies for S3 Express One Zone in the Amazon S3 User Guide.

\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to PutBucketPolicy:

\n ", + "smithy.api#examples": [ + { + "title": "Set bucket policy", + "documentation": "The following example sets a permission policy on a bucket.", + "input": { + "Bucket": "examplebucket", + "Policy": "{\"Version\": \"2012-10-17\", \"Statement\": [{ \"Sid\": \"id-1\",\"Effect\": \"Allow\",\"Principal\": {\"AWS\": \"arn:aws:iam::123456789012:root\"}, \"Action\": [ \"s3:PutObject\",\"s3:PutObjectAcl\"], \"Resource\": [\"arn:aws:s3:::acl3/*\" ] } ]}" + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?policy", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#PutBucketPolicyRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must also follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide\n

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The MD5 hash of the request body.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the request when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum-algorithm\n or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request.

\n

For the x-amz-checksum-algorithm\n header, replace \n algorithm\n with the supported algorithm from the following list:

\n
    \n
  • \n

    \n CRC32\n

    \n
  • \n
  • \n

    \n CRC32C\n

    \n
  • \n
  • \n

    \n CRC64NVME\n

    \n
  • \n
  • \n

    \n SHA1\n

    \n
  • \n
  • \n

    \n SHA256\n

    \n
  • \n
\n

For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If the individual checksum value you provide through x-amz-checksum-algorithm\n doesn't match the checksum algorithm you set through x-amz-sdk-checksum-algorithm, Amazon S3 fails the request with a BadDigest error.

\n \n

For directory buckets, when you use Amazon Web Services SDKs, CRC32 is the default checksum algorithm that's used for performance.

\n
", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "ConfirmRemoveSelfBucketAccess": { + "target": "com.amazonaws.s3#ConfirmRemoveSelfBucketAccess", + "traits": { + "smithy.api#documentation": "

Set this parameter to true to confirm that you want to remove your permissions to change this bucket\n policy in the future.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-confirm-remove-self-bucket-access" + } + }, + "Policy": { + "target": "com.amazonaws.s3#Policy", + "traits": { + "smithy.api#documentation": "

The bucket policy as a JSON document.

\n

For directory buckets, the only IAM action supported in the bucket policy is\n s3express:CreateSession.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {} + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code \n501 Not Implemented.

\n
", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } }, - { - "documentation": "SDK::HOST + accelerate@cn-north-1", - "expect": { - "error": "A custom endpoint cannot be combined with S3 Accelerate" - }, - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutBucketReplication": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketReplicationRequest" }, - { - "documentation": "SDK::Host + access point ARN@cn-north-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myendpoint-123456789012.beta.example.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "SDK::Endpoint": "https://beta.example.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Endpoint": "https://beta.example.com", - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false - } + "output": { + "target": "smithy.api#Unit" }, - { - "documentation": "virtual addressing + private link@af-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://bucket-name.control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Creates a replication configuration or replaces an existing one. For more information, see Replication in the\n Amazon S3 User Guide.

\n

Specify the replication configuration in the request body. In the replication configuration, you\n provide the name of the destination bucket or buckets where you want Amazon S3 to replicate objects, the\n IAM role that Amazon S3 can assume to replicate objects on your behalf, and other relevant information. You\n can invoke this request for a specific Amazon Web Services Region by using the \n aws:RequestedRegion\n condition key.

\n

A replication configuration must include at least one rule, and can contain a maximum of 1,000. Each\n rule identifies a subset of objects to replicate by filtering the objects in the source bucket. To\n choose additional subsets of objects to replicate, add a rule for each subset.

\n

To specify a subset of the objects in the source bucket to apply a replication rule to, add the\n Filter element as a child of the Rule element. You can filter objects based on an object key prefix, one\n or more object tags, or both. When you add the Filter element in the configuration, you must also add\n the following elements: DeleteMarkerReplication, Status, and\n Priority.

\n \n

If you are using an earlier version of the replication configuration, Amazon S3 handles replication of\n delete markers differently. For more information, see Backward Compatibility.

\n
\n

For information about enabling versioning on a bucket, see Using Versioning.

\n
\n
Handling Replication of Encrypted Objects
\n
\n

By default, Amazon S3 doesn't replicate objects that are stored at rest using server-side\n encryption with KMS keys. To replicate Amazon Web Services KMS-encrypted objects, add the following:\n SourceSelectionCriteria, SseKmsEncryptedObjects, Status,\n EncryptionConfiguration, and ReplicaKmsKeyID. For information about\n replication configuration, see Replicating Objects Created\n with SSE Using KMS keys.

\n

For information on PutBucketReplication errors, see List of\n replication-related error codes\n

\n
\n
Permissions
\n
\n

To create a PutBucketReplication request, you must have\n s3:PutReplicationConfiguration permissions for the bucket.\n \n

\n

By default, a resource owner, in this case the Amazon Web Services account that created the bucket, can\n perform this operation. The resource owner can also grant others permissions to perform the\n operation. For more information about permissions, see Specifying Permissions in a Policy\n and Managing\n Access Permissions to Your Amazon S3 Resources.

\n \n

To perform this operation, the user or role performing the action must have the iam:PassRole permission.

\n
\n
\n
\n

The following operations are related to PutBucketReplication:

\n ", + "smithy.api#examples": [ + { + "title": "Set replication configuration on a bucket", + "documentation": "The following example sets replication configuration on a bucket.", + "input": { + "Bucket": "examplebucket", + "ReplicationConfiguration": { + "Role": "arn:aws:iam::123456789012:role/examplerole", + "Rules": [ + { + "Prefix": "", + "Status": "Enabled", + "Destination": { + "Bucket": "arn:aws:s3:::destinationbucket", + "StorageClass": "STANDARD" + } + } + ] + } + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?replication", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "path style + private link@af-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com/bucket-name" + } + }, + "com.amazonaws.s3#PutBucketReplicationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the data. You must use this header as a\n message integrity check to verify that the request body was not corrupted in transit. For more\n information, see RFC 1864.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the request when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "ReplicationConfiguration": { + "target": "com.amazonaws.s3#ReplicationConfiguration", + "traits": { + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "ReplicationConfiguration" + } + }, + "Token": { + "target": "com.amazonaws.s3#ObjectLockToken", + "traits": { + "smithy.api#documentation": "

A token to allow Object Lock to be enabled for an existing bucket.

", + "smithy.api#httpHeader": "x-amz-bucket-object-lock-token" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "AWS::S3::ForcePathStyle": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": true, - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "SDK::Host + FIPS@af-south-1", - "expect": { - "error": "A custom endpoint cannot be combined with FIPS" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseFIPS": true, - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": true - } }, - { - "documentation": "SDK::Host + DualStack@af-south-1", - "expect": { - "error": "Cannot set dual-stack in combination with a custom endpoint." - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseDualStack": true, - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "af-south-1", - "UseDualStack": true, - "UseFIPS": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutBucketRequestPayment": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketRequestPaymentRequest" }, - { - "documentation": "SDK::HOST + accelerate@af-south-1", - "expect": { - "error": "A custom endpoint cannot be combined with S3 Accelerate" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "SDK::Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "AWS::S3::Accelerate": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "bucket-name", - "Key": "key" - } - } - ], - "params": { - "Accelerate": true, - "Bucket": "bucket-name", - "ForcePathStyle": false, - "Endpoint": "https://control.vpce-1a2b3c4d-5e6f.s3.us-west-2.vpce.amazonaws.com", - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } + "output": { + "target": "smithy.api#Unit" }, - { - "documentation": "SDK::Host + access point ARN@af-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myendpoint-123456789012.beta.example.com" + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Sets the request payment configuration for a bucket. By default, the bucket owner pays for downloads\n from the bucket. This configuration parameter enables the bucket owner (only) to specify that the person\n requesting the download will be charged for the download. For more information, see Requester Pays\n Buckets.

\n

The following operations are related to PutBucketRequestPayment:

\n ", + "smithy.api#examples": [ + { + "title": "Set request payment configuration on a bucket.", + "documentation": "The following example sets request payment configuration on a bucket so that person requesting the download is charged.", + "input": { + "Bucket": "examplebucket", + "RequestPaymentConfiguration": { + "Payer": "Requester" + } + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?requestPayment", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "SDK::Endpoint": "https://beta.example.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Endpoint": "https://beta.example.com", - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "vanilla access point arn@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myendpoint-123456789012.s3-accesspoint.us-west-2.amazonaws.com" + } + }, + "com.amazonaws.s3#PutBucketRequestPaymentRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the data. You must use this header as a\n message integrity check to verify that the request body was not corrupted in transit. For more\n information, see RFC 1864.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the request when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "RequestPaymentConfiguration": { + "target": "com.amazonaws.s3#RequestPaymentConfiguration", + "traits": { + "smithy.api#documentation": "

Container for Payer.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "RequestPaymentConfiguration" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } }, - { - "documentation": "access point arn + FIPS@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myendpoint-123456789012.s3-accesspoint-fips.us-west-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseFIPS": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": true - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutBucketTagging": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketTaggingRequest" }, - { - "documentation": "access point arn + accelerate = error@us-west-2", - "expect": { - "error": "Access Points do not support S3 Accelerate" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::Accelerate": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": true, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } + "output": { + "target": "smithy.api#Unit" }, - { - "documentation": "access point arn + FIPS + DualStack@us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myendpoint-123456789012.s3-accesspoint-fips.dualstack.us-west-2.amazonaws.com" + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Sets the tags for a bucket.

\n

Use tags to organize your Amazon Web Services bill to reflect your own cost structure. To do this, sign up to get\n your Amazon Web Services account bill with tag key values included. Then, to see the cost of combined resources,\n organize your billing information according to resources with the same tag key values. For example, you\n can tag several resources with a specific application name, and then organize your billing information\n to see the total cost of that application across several services. For more information, see Cost Allocation and\n Tagging and Using Cost Allocation in Amazon S3 Bucket Tags.

\n \n

When this operation sets the tags for a bucket, it will overwrite any current tags the bucket\n already has. You cannot use this operation to add tags to an existing list of tags.

\n
\n

To use this operation, you must have permissions to perform the s3:PutBucketTagging\n action. The bucket owner has this permission by default and can grant this permission to others. For\n more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3\n Resources.

\n

\n PutBucketTagging has the following special errors. For more Amazon S3 errors see, Error Responses.

\n
    \n
  • \n

    \n InvalidTag - The tag provided was not a valid tag. This error can occur if\n the tag did not pass input validation. For more information, see Using Cost Allocation in Amazon S3 Bucket\n Tags.

    \n
  • \n
  • \n

    \n MalformedXML - The XML provided does not match the schema.

    \n
  • \n
  • \n

    \n OperationAborted - A conflicting conditional action is currently in progress\n against this resource. Please try again.

    \n
  • \n
  • \n

    \n InternalError - The service was unable to apply the provided tag to the\n bucket.

    \n
  • \n
\n

The following operations are related to PutBucketTagging:

\n ", + "smithy.api#examples": [ + { + "title": "Set tags on a bucket", + "documentation": "The following example sets tags on a bucket. Any existing tags are replaced.", + "input": { + "Bucket": "examplebucket", + "Tagging": { + "TagSet": [ + { + "Key": "Key1", + "Value": "Value1" + }, + { + "Key": "Key2", + "Value": "Value2" + } + ] + } + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?tagging", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:us-west-2:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": true, - "UseFIPS": true - } - }, - { - "documentation": "vanilla access point arn@cn-north-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "cn-north-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myendpoint-123456789012.s3-accesspoint.cn-north-1.amazonaws.com.cn" + } + }, + "com.amazonaws.s3#PutBucketTaggingRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the data. You must use this header as a\n message integrity check to verify that the request body was not corrupted in transit. For more\n information, see RFC 1864.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the request when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "Tagging": { + "target": "com.amazonaws.s3#Tagging", + "traits": { + "smithy.api#documentation": "

Container for the TagSet and Tag elements.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "Tagging" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "access point arn + FIPS@cn-north-1", - "expect": { - "error": "Partition does not support FIPS" - }, - "params": { - "Accelerate": false, - "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": true - } }, - { - "documentation": "access point arn + accelerate = error@cn-north-1", - "expect": { - "error": "Access Points do not support S3 Accelerate" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "cn-north-1", - "AWS::S3::Accelerate": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": true, - "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutBucketVersioning": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketVersioningRequest" }, - { - "documentation": "access point arn + FIPS + DualStack@cn-north-1", - "expect": { - "error": "Partition does not support FIPS" - }, - "params": { - "Accelerate": false, - "Bucket": "arn:aws-cn:s3:cn-north-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "cn-north-1", - "UseDualStack": true, - "UseFIPS": true - } + "output": { + "target": "smithy.api#Unit" }, - { - "documentation": "vanilla access point arn@af-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myendpoint-123456789012.s3-accesspoint.af-south-1.amazonaws.com" + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n \n

When you enable versioning on a bucket for the first time, it might take a short amount of time\n for the change to be fully propagated. While this change is propagating, you might encounter\n intermittent HTTP 404 NoSuchKey errors for requests to objects created or updated after\n enabling versioning. We recommend that you wait for 15 minutes after enabling versioning before\n issuing write operations (PUT or DELETE) on objects in the bucket.

\n
\n

Sets the versioning state of an existing bucket.

\n

You can set the versioning state with one of the following values:

\n

\n Enabled—Enables versioning for the objects in the bucket. All\n objects added to the bucket receive a unique version ID.

\n

\n Suspended—Disables versioning for the objects in the bucket. All\n objects added to the bucket receive the version ID null.

\n

If the versioning state has never been set on a bucket, it has no versioning state; a GetBucketVersioning request does not return a versioning state value.

\n

In order to enable MFA Delete, you must be the bucket owner. If you are the bucket owner and want to\n enable MFA Delete in the bucket versioning configuration, you must include the x-amz-mfa\n request header and the Status and the MfaDelete request elements in a\n request to set the versioning state of the bucket.

\n \n

If you have an object expiration lifecycle configuration in your non-versioned bucket and you want\n to maintain the same permanent delete behavior when you enable versioning, you must add a noncurrent\n expiration policy. The noncurrent expiration lifecycle configuration will manage the deletes of the\n noncurrent object versions in the version-enabled bucket. (A version-enabled bucket maintains one\n current and zero or more noncurrent object versions.) For more information, see Lifecycle and\n Versioning.

\n
\n

The following operations are related to PutBucketVersioning:

\n ", + "smithy.api#examples": [ + { + "title": "Set versioning configuration on a bucket", + "documentation": "The following example sets versioning configuration on bucket. The configuration enables versioning on the bucket.", + "input": { + "Bucket": "examplebucket", + "VersioningConfiguration": { + "MFADelete": "Disabled", + "Status": "Enabled" + } + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?versioning", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "access point arn + FIPS@af-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myendpoint-123456789012.s3-accesspoint-fips.af-south-1.amazonaws.com" + } + }, + "com.amazonaws.s3#PutBucketVersioningRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

>The Base64 encoded 128-bit MD5 digest of the data. You must use this header as a\n message integrity check to verify that the request body was not corrupted in transit. For more\n information, see RFC 1864.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the request when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "MFA": { + "target": "com.amazonaws.s3#MFA", + "traits": { + "smithy.api#documentation": "

The concatenation of the authentication device's serial number, a space, and the value that is\n displayed on your authentication device.

", + "smithy.api#httpHeader": "x-amz-mfa" + } + }, + "VersioningConfiguration": { + "target": "com.amazonaws.s3#VersioningConfiguration", + "traits": { + "smithy.api#documentation": "

Container for setting the versioning state.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "VersioningConfiguration" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseFIPS": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": true - } }, - { - "documentation": "access point arn + accelerate = error@af-south-1", - "expect": { - "error": "Access Points do not support S3 Accelerate" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::S3::Accelerate": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": true, - "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutBucketWebsite": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutBucketWebsiteRequest" }, - { - "documentation": "access point arn + FIPS + DualStack@af-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "af-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myendpoint-123456789012.s3-accesspoint-fips.dualstack.af-south-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "af-south-1", - "AWS::UseFIPS": true, - "AWS::UseDualStack": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3:af-south-1:123456789012:accesspoint:myendpoint", - "ForcePathStyle": false, - "Region": "af-south-1", - "UseDualStack": true, - "UseFIPS": true - } + "output": { + "target": "smithy.api#Unit" }, - { - "documentation": "S3 outposts vanilla test", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": ["*"], - "disableDoubleEncoding": true - }, - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://reports-123456789012.op-01234567890123456.s3-outposts.us-west-2.amazonaws.com" + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Sets the configuration of the website that is specified in the website subresource. To\n configure a bucket as a website, you can add this subresource on the bucket with website configuration\n information such as the file name of the index document and any redirect rules. For more information,\n see Hosting Websites on\n Amazon S3.

\n

This PUT action requires the S3:PutBucketWebsite permission. By default, only the\n bucket owner can configure the website attached to a bucket; however, bucket owners can allow other\n users to set the website configuration by writing a bucket policy that grants them the\n S3:PutBucketWebsite permission.

\n

To redirect all website requests sent to the bucket's website endpoint, you add a website\n configuration with the following elements. Because all requests are sent to another website, you don't\n need to provide index document name for the bucket.

\n
    \n
  • \n

    \n WebsiteConfiguration\n

    \n
  • \n
  • \n

    \n RedirectAllRequestsTo\n

    \n
  • \n
  • \n

    \n HostName\n

    \n
  • \n
  • \n

    \n Protocol\n

    \n
  • \n
\n

If you want granular control over redirects, you can use the following elements to add routing rules\n that describe conditions for redirecting requests and information about the redirect destination. In\n this case, the website configuration must provide an index document for the bucket, because some\n requests might not be redirected.

\n
    \n
  • \n

    \n WebsiteConfiguration\n

    \n
  • \n
  • \n

    \n IndexDocument\n

    \n
  • \n
  • \n

    \n Suffix\n

    \n
  • \n
  • \n

    \n ErrorDocument\n

    \n
  • \n
  • \n

    \n Key\n

    \n
  • \n
  • \n

    \n RoutingRules\n

    \n
  • \n
  • \n

    \n RoutingRule\n

    \n
  • \n
  • \n

    \n Condition\n

    \n
  • \n
  • \n

    \n HttpErrorCodeReturnedEquals\n

    \n
  • \n
  • \n

    \n KeyPrefixEquals\n

    \n
  • \n
  • \n

    \n Redirect\n

    \n
  • \n
  • \n

    \n Protocol\n

    \n
  • \n
  • \n

    \n HostName\n

    \n
  • \n
  • \n

    \n ReplaceKeyPrefixWith\n

    \n
  • \n
  • \n

    \n ReplaceKeyWith\n

    \n
  • \n
  • \n

    \n HttpRedirectCode\n

    \n
  • \n
\n

Amazon S3 has a limitation of 50 routing rules per website configuration. If you require more than 50\n routing rules, you can use object redirect. For more information, see Configuring an Object Redirect in the\n Amazon S3 User Guide.

\n

The maximum request length is limited to 128 KB.

", + "smithy.api#examples": [ + { + "title": "Set website configuration on a bucket", + "documentation": "The following example adds website configuration to a bucket.", + "input": { + "Bucket": "examplebucket", + "ContentMD5": "", + "WebsiteConfiguration": { + "IndexDocument": { + "Suffix": "index.html" + }, + "ErrorDocument": { + "Key": "error.html" + } + } + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?website", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports" - } - }, - { - "documentation": "S3 outposts custom endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": ["*"], - "disableDoubleEncoding": true - }, - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://reports-123456789012.op-01234567890123456.example.amazonaws.com" + } + }, + "com.amazonaws.s3#PutBucketWebsiteRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the data. You must use this header as a\n message integrity check to verify that the request body was not corrupted in transit. For more\n information, see RFC 1864.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the request when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "WebsiteConfiguration": { + "target": "com.amazonaws.s3#WebsiteConfiguration", + "traits": { + "smithy.api#documentation": "

Container for the request.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "WebsiteConfiguration" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://example.amazonaws.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports", - "Endpoint": "https://example.amazonaws.com" - } }, - { - "documentation": "outposts arn with region mismatch and UseArnRegion=false", - "expect": { - "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::UseArnRegion": false - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "ForcePathStyle": false, - "UseArnRegion": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutObject": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutObjectRequest" }, - { - "documentation": "outposts arn with region mismatch, custom region and UseArnRegion=false", - "expect": { - "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://example.com", - "AWS::S3::UseArnRegion": false - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "Endpoint": "https://example.com", - "ForcePathStyle": false, - "UseArnRegion": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } + "output": { + "target": "com.amazonaws.s3#PutObjectOutput" }, - { - "documentation": "outposts arn with region mismatch and UseArnRegion=true", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": ["*"], - "disableDoubleEncoding": true - }, - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myaccesspoint-123456789012.op-01234567890123456.s3-outposts.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ + "errors": [ { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::UseArnRegion": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "ForcePathStyle": false, - "UseArnRegion": true, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "outposts arn with region mismatch and UseArnRegion unset", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": ["*"], - "disableDoubleEncoding": true - }, - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://myaccesspoint-123456789012.op-01234567890123456.s3-outposts.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ + "target": "com.amazonaws.s3#EncryptionTypeMismatch" + }, { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "ForcePathStyle": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "outposts arn with partition mismatch and UseArnRegion=true", - "expect": { - "error": "Client was configured for partition `aws` but ARN (`arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint`) has `aws-cn`" - }, - "operationInputs": [ + "target": "com.amazonaws.s3#InvalidRequest" + }, { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::UseArnRegion": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:cn-north-1:123456789012:outpost:op-01234567890123456:accesspoint:myaccesspoint", - "ForcePathStyle": false, - "UseArnRegion": true, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "ARN with UseGlobalEndpoint and use-east-1 region uses the regional endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": ["*"], - "disableDoubleEncoding": true - }, - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://reports-123456789012.op-01234567890123456.s3-outposts.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ + "target": "com.amazonaws.s3#InvalidWriteOffset" + }, { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::S3::UseGlobalEndpoint": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/accesspoint/reports", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "UseGlobalEndpoint": true, - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:us-east-1:123456789012:outpost/op-01234567890123456/accesspoint/reports" - } - }, - { - "documentation": "S3 outposts does not support dualstack", - "expect": { - "error": "S3 Outposts does not support Dual-stack" - }, - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports" - } - }, - { - "documentation": "S3 outposts does not support fips", - "expect": { - "error": "S3 Outposts does not support FIPS" - }, - "params": { - "Region": "us-east-1", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports" - } - }, - { - "documentation": "S3 outposts does not support accelerate", - "expect": { - "error": "S3 Outposts does not support S3 Accelerate" - }, - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": true, - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost/op-01234567890123456/accesspoint/reports" - } - }, - { - "documentation": "validates against subresource", - "expect": { - "error": "Invalid Arn: Outpost Access Point ARN contains sub resources" - }, - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Bucket": "arn:aws:s3-outposts:us-west-2:123456789012:outpost:op-01234567890123456:accesspoint:mybucket:object:foo" - } + "target": "com.amazonaws.s3#TooManyParts" + } + ], + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm" + }, + "smithy.api#documentation": "\n

End of support notice: Beginning October 1, 2025, Amazon S3 will discontinue support for creating new Email Grantee Access Control Lists (ACL). \n Email Grantee ACLs created prior to this date will continue to work and remain accessible through the Amazon Web Services Management Console, Command Line Interface (CLI), SDKs, \n and REST API. However, you will no longer be able to create new Email Grantee ACLs.\n

\n

This change affects the following Amazon Web Services Regions: US East (N. Virginia) Region, US West (N. California) Region, US West (Oregon) Region, Asia Pacific (Singapore) Region, Asia Pacific (Sydney) Region, \n Asia Pacific (Tokyo) Region, Europe (Ireland) Region, and South America (São Paulo) Region.

\n
\n

Adds an object to a bucket.

\n \n
    \n
  • \n

    Amazon S3 never adds partial objects; if you receive a success response, Amazon S3 added the entire\n object to the bucket. You cannot use PutObject to only update a single piece of\n metadata for an existing object. You must put the entire object with updated metadata if you want\n to update some values.

    \n
  • \n
  • \n

    If your bucket uses the bucket owner enforced setting for Object Ownership, ACLs are disabled\n and no longer affect permissions. All objects written to the bucket by any account will be owned\n by the bucket owner.

    \n
  • \n
  • \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n

Amazon S3 is a distributed system. If it receives multiple write requests for the same object\n simultaneously, it overwrites all but the last object written. However, Amazon S3 provides features that can\n modify this behavior:

\n
    \n
  • \n

    \n S3 Object Lock - To prevent objects from being deleted\n or overwritten, you can use Amazon S3 Object Lock in the Amazon S3 User Guide.

    \n \n

    This functionality is not supported for directory buckets.

    \n
    \n
  • \n
  • \n

    \n If-None-Match - Uploads the object only if the object\n key name does not already exist in the specified bucket. Otherwise, Amazon S3 returns a 412\n Precondition Failed error. If a conflicting operation occurs during the upload, S3 returns\n a 409 ConditionalRequestConflict response. On a 409 failure, retry the upload.

    \n

    Expects the * character (asterisk).

    \n

    For more information, see Add preconditions to S3 operations with\n conditional requests in the Amazon S3 User Guide or RFC 7232.

    \n \n

    This functionality is not supported for S3 on Outposts.

    \n
    \n
  • \n
  • \n

    \n S3 Versioning - When you enable versioning for a bucket,\n if Amazon S3 receives multiple write requests for the same object simultaneously, it stores all versions\n of the objects. For each write request that is made to the same object, Amazon S3 automatically generates\n a unique version ID of that object being stored in Amazon S3. You can retrieve, replace, or delete any\n version of the object. For more information about versioning, see Adding Objects to\n Versioning-Enabled Buckets in the Amazon S3 User Guide. For information\n about returning the versioning state of a bucket, see GetBucketVersioning.

    \n \n

    This functionality is not supported for directory buckets.

    \n
    \n
  • \n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The following\n permissions are required in your policies when your PutObject request includes\n specific headers.

    \n
      \n
    • \n

      \n \n s3:PutObject\n - To successfully\n complete the PutObject request, you must always have the\n s3:PutObject permission on a bucket to add an object to it.

      \n
    • \n
    • \n

      \n \n s3:PutObjectAcl\n - To successfully change the objects ACL of your PutObject\n request, you must have the s3:PutObjectAcl.

      \n
    • \n
    • \n

      \n \n s3:PutObjectTagging\n - To successfully set the tag-set with your PutObject\n request, you must have the s3:PutObjectTagging.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n

    If the object is encrypted with SSE-KMS, you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions in IAM\n identity-based policies and KMS key policies for the KMS key.

    \n
  • \n
\n
\n
Data integrity with Content-MD5
\n
\n
    \n
  • \n

    \n General purpose bucket - To ensure that data is not\n corrupted traversing the network, use the Content-MD5 header. When you use this\n header, Amazon S3 checks the object against the provided MD5 value and, if they do not match, Amazon S3\n returns an error. Alternatively, when the object's ETag is its MD5 digest, you can calculate\n the MD5 while putting the object to Amazon S3 and compare the returned ETag to the calculated MD5\n value.

    \n
  • \n
  • \n

    \n Directory bucket -\n This functionality is not supported for directory buckets.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

For more information about related Amazon S3 APIs, see the following:

\n ", + "smithy.api#examples": [ + { + "title": "To create an object.", + "documentation": "The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.", + "input": { + "Body": "filetoupload", + "Bucket": "examplebucket", + "Key": "objectkey" + }, + "output": { + "VersionId": "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ", + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"" + } + }, + { + "title": "To upload an object (specify optional headers)", + "documentation": "The following example uploads an object. The request specifies optional request headers to directs S3 to use specific storage class and use server-side encryption.", + "input": { + "Body": "HappyFace.jpg", + "Bucket": "examplebucket", + "Key": "HappyFace.jpg", + "ServerSideEncryption": "AES256", + "StorageClass": "STANDARD_IA" + }, + "output": { + "VersionId": "CG612hodqujkf8FaaNfp8U..FIhLROcp", + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", + "ServerSideEncryption": "AES256" + } + }, + { + "title": "To upload an object", + "documentation": "The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file syntax. S3 returns VersionId of the newly created object.", + "input": { + "Body": "HappyFace.jpg", + "Bucket": "examplebucket", + "Key": "HappyFace.jpg" + }, + "output": { + "VersionId": "tpf3zF08nBplQK1XLOefGskR7mGDwcDk", + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"" + } + }, + { + "title": "To upload an object and specify canned ACL.", + "documentation": "The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.", + "input": { + "ACL": "authenticated-read", + "Body": "filetoupload", + "Bucket": "examplebucket", + "Key": "exampleobject" + }, + "output": { + "VersionId": "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr", + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"" + } + }, + { + "title": "To upload an object and specify optional tags", + "documentation": "The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore S3 returns version ID of the newly created object.", + "input": { + "Body": "c:\\HappyFace.jpg", + "Bucket": "examplebucket", + "Key": "HappyFace.jpg", + "Tagging": "key1=value1&key2=value2" + }, + "output": { + "VersionId": "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a", + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"" + } + }, + { + "title": "To upload an object and specify server-side encryption and object tags", + "documentation": "The following example uploads an object. The request specifies the optional server-side encryption option. The request also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.", + "input": { + "Body": "filetoupload", + "Bucket": "examplebucket", + "Key": "exampleobject", + "ServerSideEncryption": "AES256", + "Tagging": "key1=value1&key2=value2" + }, + "output": { + "VersionId": "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt", + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", + "ServerSideEncryption": "AES256" + } + }, + { + "title": "To upload object and specify user-defined metadata", + "documentation": "The following example creates an object. The request also specifies optional metadata. If the bucket is versioning enabled, S3 returns version ID in response.", + "input": { + "Body": "filetoupload", + "Bucket": "examplebucket", + "Key": "exampleobject", + "Metadata": { + "metadata1": "value1", + "metadata2": "value2" + } + }, + "output": { + "VersionId": "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0", + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"" + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}/{Key+}?x-id=PutObject", + "code": 200 + } + } + }, + "com.amazonaws.s3#PutObjectAcl": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutObjectAclRequest" }, - { - "documentation": "object lambda @us-east-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://mybanner-123456789012.s3-object-lambda.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::S3::UseArnRegion": false - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" - } + "output": { + "target": "com.amazonaws.s3#PutObjectAclOutput" }, - { - "documentation": "object lambda @us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://mybanner-123456789012.s3-object-lambda.us-west-2.amazonaws.com" - } - }, - "operationInputs": [ + "errors": [ { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::UseArnRegion": false - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner" - } - }, - { - "documentation": "object lambda, colon resource deliminator @us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://mybanner-123456789012.s3-object-lambda.us-west-2.amazonaws.com" + "target": "com.amazonaws.s3#NoSuchKey" } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::UseArnRegion": false - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:mybanner", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:mybanner" - } - }, - { - "documentation": "object lambda @us-east-1, client region us-west-2, useArnRegion=true", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://mybanner-123456789012.s3-object-lambda.us-east-1.amazonaws.com" + ], + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Uses the acl subresource to set the access control list (ACL) permissions for a new or\n existing object in an S3 bucket. You must have the WRITE_ACP permission to set the ACL of\n an object. For more information, see What permissions can I grant? in the\n Amazon S3 User Guide.

\n

This functionality is not supported for Amazon S3 on Outposts.

\n

Depending on your application needs, you can choose to set the ACL on an object using either the\n request body or the headers. For example, if you have an existing application that updates a bucket ACL\n using the request body, you can continue to use that approach. For more information, see Access Control List (ACL)\n Overview in the Amazon S3 User Guide.

\n \n

If your bucket uses the bucket owner enforced setting for S3 Object Ownership, ACLs are disabled\n and no longer affect permissions. You must use policies to grant access to your bucket and the objects\n in it. Requests to set ACLs or update ACLs fail and return the\n AccessControlListNotSupported error code. Requests to read ACLs are still supported.\n For more information, see Controlling object ownership in\n the Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n

You can set access permissions using one of the following methods:

\n
    \n
  • \n

    Specify a canned ACL with the x-amz-acl request header. Amazon S3 supports a set\n of predefined ACLs, known as canned ACLs. Each canned ACL has a predefined set of grantees and\n permissions. Specify the canned ACL name as the value of x-amz-acl. If you use\n this header, you cannot use other access control-specific headers in your request. For more\n information, see Canned ACL.

    \n
  • \n
  • \n

    Specify access permissions explicitly with the x-amz-grant-read,\n x-amz-grant-read-acp, x-amz-grant-write-acp, and\n x-amz-grant-full-control headers. When using these headers, you specify\n explicit access permissions and grantees (Amazon Web Services accounts or Amazon S3 groups) who will receive the\n permission. If you use these ACL-specific headers, you cannot use x-amz-acl\n header to set a canned ACL. These parameters map to the set of permissions that Amazon S3 supports\n in an ACL. For more information, see Access Control List (ACL)\n Overview.

    \n

    You specify each grantee as a type=value pair, where the type is one of the\n following:

    \n
      \n
    • \n

      \n id – if the value specified is the canonical user ID of an\n Amazon Web Services account

      \n
    • \n
    • \n

      \n uri – if you are granting permissions to a predefined group

      \n
    • \n
    • \n

      \n emailAddress – if the value specified is the email address of an\n Amazon Web Services account

      \n \n

      Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

      \n
        \n
      • \n

        US East (N. Virginia)

        \n
      • \n
      • \n

        US West (N. California)

        \n
      • \n
      • \n

        US West (Oregon)

        \n
      • \n
      • \n

        Asia Pacific (Singapore)

        \n
      • \n
      • \n

        Asia Pacific (Sydney)

        \n
      • \n
      • \n

        Asia Pacific (Tokyo)

        \n
      • \n
      • \n

        Europe (Ireland)

        \n
      • \n
      • \n

        South America (São Paulo)

        \n
      • \n
      \n

      For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

      \n
      \n
    • \n
    \n

    For example, the following x-amz-grant-read header grants list objects\n permission to the two Amazon Web Services accounts identified by their email addresses.

    \n

    \n x-amz-grant-read: emailAddress=\"xyz@amazon.com\", emailAddress=\"abc@amazon.com\"\n \n

    \n
  • \n
\n

You can use either a canned ACL or specify access permissions explicitly. You cannot do\n both.

\n
\n
Grantee Values
\n
\n

You can specify the person (grantee) to whom you're assigning access rights (using request\n elements) in the following ways. For examples of how to specify these grantee values in JSON\n format, see the Amazon Web Services CLI example in Enabling Amazon S3 server\n access logging in the Amazon S3 User Guide.

\n
    \n
  • \n

    By the person's ID:

    \n

    \n <>ID<><>GranteesEmail<>\n \n

    \n

    DisplayName is optional and ignored in the request.

    \n
  • \n
  • \n

    By URI:

    \n

    \n <>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<>\n

    \n
  • \n
  • \n

    By Email address:

    \n

    \n <>Grantees@email.com<>lt;/Grantee>\n

    \n

    The grantee is resolved to the CanonicalUser and, in a response to a GET Object acl\n request, appears as the CanonicalUser.

    \n \n

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    \n
      \n
    • \n

      US East (N. Virginia)

      \n
    • \n
    • \n

      US West (N. California)

      \n
    • \n
    • \n

      US West (Oregon)

      \n
    • \n
    • \n

      Asia Pacific (Singapore)

      \n
    • \n
    • \n

      Asia Pacific (Sydney)

      \n
    • \n
    • \n

      Asia Pacific (Tokyo)

      \n
    • \n
    • \n

      Europe (Ireland)

      \n
    • \n
    • \n

      South America (São Paulo)

      \n
    • \n
    \n

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

    \n
    \n
  • \n
\n
\n
Versioning
\n
\n

The ACL of an object is set at the object version level. By default, PUT sets the ACL of the\n current version of an object. To set the ACL of a different version, use the\n versionId subresource.

\n
\n
\n

The following operations are related to PutObjectAcl:

\n ", + "smithy.api#examples": [ + { + "title": "To grant permissions using object ACL", + "documentation": "The following example adds grants to an object ACL. The first permission grants user1 and user2 FULL_CONTROL and the AllUsers group READ permission.", + "input": { + "AccessControlPolicy": {}, + "Bucket": "examplebucket", + "GrantFullControl": "emailaddress=user1@example.com,emailaddress=user2@example.com", + "GrantRead": "uri=http://acs.amazonaws.com/groups/global/AllUsers", + "Key": "HappyFace.jpg" + }, + "output": {} + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}/{Key+}?acl", + "code": 200 } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::UseArnRegion": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": true, - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" - } - }, - { - "documentation": "object lambda @us-east-1, client region s3-external-1, useArnRegion=true", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://mybanner-123456789012.s3-object-lambda.us-east-1.amazonaws.com" + } + }, + "com.amazonaws.s3#PutObjectAclOutput": { + "type": "structure", + "members": { + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "s3-external-1", - "AWS::S3::UseArnRegion": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", - "Key": "key" - } - } - ], - "params": { - "Region": "s3-external-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": true, - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" - } - }, - { - "documentation": "object lambda @us-east-1, client region s3-external-1, useArnRegion=false", - "expect": { - "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `s3-external-1` and UseArnRegion is `false`" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "s3-external-1", - "AWS::S3::UseArnRegion": false - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", - "Key": "key" - } - } - ], - "params": { - "Region": "s3-external-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" - } }, - { - "documentation": "object lambda @us-east-1, client region aws-global, useArnRegion=true", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://mybanner-123456789012.s3-object-lambda.us-east-1.amazonaws.com" + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#PutObjectAclRequest": { + "type": "structure", + "members": { + "ACL": { + "target": "com.amazonaws.s3#ObjectCannedACL", + "traits": { + "smithy.api#documentation": "

The canned ACL to apply to the object. For more information, see Canned ACL.

", + "smithy.api#httpHeader": "x-amz-acl" + } + }, + "AccessControlPolicy": { + "target": "com.amazonaws.s3#AccessControlPolicy", + "traits": { + "smithy.api#documentation": "

Contains the elements that set the ACL permissions for an object per grantee.

", + "smithy.api#httpPayload": {}, + "smithy.api#xmlName": "AccessControlPolicy" + } + }, + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name that contains the object to which you want to attach the ACL.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the data. This header must be used as a\n message integrity check to verify that the request body was not corrupted in transit. For more\n information, go to RFC 1864.>\n

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "GrantFullControl": { + "target": "com.amazonaws.s3#GrantFullControl", + "traits": { + "smithy.api#documentation": "

Allows grantee the read, write, read ACP, and write ACP permissions on the bucket.

\n

This functionality is not supported for Amazon S3 on Outposts.

", + "smithy.api#httpHeader": "x-amz-grant-full-control" + } + }, + "GrantRead": { + "target": "com.amazonaws.s3#GrantRead", + "traits": { + "smithy.api#documentation": "

Allows grantee to list the objects in the bucket.

\n

This functionality is not supported for Amazon S3 on Outposts.

", + "smithy.api#httpHeader": "x-amz-grant-read" + } + }, + "GrantReadACP": { + "target": "com.amazonaws.s3#GrantReadACP", + "traits": { + "smithy.api#documentation": "

Allows grantee to read the bucket ACL.

\n

This functionality is not supported for Amazon S3 on Outposts.

", + "smithy.api#httpHeader": "x-amz-grant-read-acp" + } + }, + "GrantWrite": { + "target": "com.amazonaws.s3#GrantWrite", + "traits": { + "smithy.api#documentation": "

Allows grantee to create new objects in the bucket.

\n

For the bucket and object owners of existing objects, also allows deletions and overwrites of those\n objects.

", + "smithy.api#httpHeader": "x-amz-grant-write" + } + }, + "GrantWriteACP": { + "target": "com.amazonaws.s3#GrantWriteACP", + "traits": { + "smithy.api#documentation": "

Allows grantee to write the ACL for the applicable bucket.

\n

This functionality is not supported for Amazon S3 on Outposts.

", + "smithy.api#httpHeader": "x-amz-grant-write-acp" + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Key for which the PUT action was initiated.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Key" + } + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

Version ID used to reference a specific version of the object.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpQuery": "versionId" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global", - "AWS::S3::UseArnRegion": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", - "Key": "key" - } - } - ], - "params": { - "Region": "aws-global", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": true, - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" - } - }, - { - "documentation": "object lambda @us-east-1, client region aws-global, useArnRegion=false", - "expect": { - "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `aws-global` and UseArnRegion is `false`" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global", - "AWS::S3::UseArnRegion": false - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", - "Key": "key" - } - } - ], - "params": { - "Region": "aws-global", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner" - } - }, - { - "documentation": "object lambda @cn-north-1, client region us-west-2 (cross partition), useArnRegion=true", - "expect": { - "error": "Client was configured for partition `aws` but ARN (`arn:aws-cn:s3-object-lambda:cn-north-1:123456789012:accesspoint/mybanner`) has `aws-cn`" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "aws-global", - "AWS::S3::UseArnRegion": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws-cn:s3-object-lambda:cn-north-1:123456789012:accesspoint/mybanner", - "Key": "key" - } - } - ], - "params": { - "Region": "aws-global", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": true, - "Bucket": "arn:aws-cn:s3-object-lambda:cn-north-1:123456789012:accesspoint/mybanner" - } - }, - { - "documentation": "object lambda with dualstack", - "expect": { - "error": "S3 Object Lambda does not support Dual-stack" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseDualStack": true, - "AWS::S3::UseArnRegion": false - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner" - } - }, - { - "documentation": "object lambda @us-gov-east-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "us-gov-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://mybanner-123456789012.s3-object-lambda.us-gov-east-1.amazonaws.com" - } - }, - "params": { - "Region": "us-gov-east-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws-us-gov:s3-object-lambda:us-gov-east-1:123456789012:accesspoint/mybanner" - } - }, - { - "documentation": "object lambda @us-gov-east-1, with fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "us-gov-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://mybanner-123456789012.s3-object-lambda-fips.us-gov-east-1.amazonaws.com" - } - }, - "params": { - "Region": "us-gov-east-1", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws-us-gov:s3-object-lambda:us-gov-east-1:123456789012:accesspoint/mybanner" - } - }, - { - "documentation": "object lambda @cn-north-1, with fips", - "expect": { - "error": "Partition does not support FIPS" - }, - "params": { - "Region": "cn-north-1", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws-cn:s3-object-lambda:cn-north-1:123456789012:accesspoint/mybanner" - } - }, - { - "documentation": "object lambda with accelerate", - "expect": { - "error": "S3 Object Lambda does not support S3 Accelerate" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::Accelerate": true, - "AWS::S3::UseArnRegion": false - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": true, - "UseArnRegion": false, - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner" - } - }, - { - "documentation": "object lambda with invalid arn - bad service and someresource", - "expect": { - "error": "Invalid ARN: Unrecognized format: arn:aws:sqs:us-west-2:123456789012:someresource (type: someresource)" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::UseArnRegion": false - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:sqs:us-west-2:123456789012:someresource", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws:sqs:us-west-2:123456789012:someresource" - } - }, - { - "documentation": "object lambda with invalid arn - invalid resource", - "expect": { - "error": "Invalid ARN: Object Lambda ARNs only support `accesspoint` arn types, but found: `bucket_name`" - }, - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:bucket_name:mybucket" - } - }, - { - "documentation": "object lambda with invalid arn - missing region", - "expect": { - "error": "Invalid ARN: bucket ARN is missing a region" - }, - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws:s3-object-lambda::123456789012:accesspoint/mybanner" - } }, - { - "documentation": "object lambda with invalid arn - missing account-id", - "expect": { - "error": "Invalid ARN: Missing account id" - }, - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": true, - "Bucket": "arn:aws:s3-object-lambda:us-west-2::accesspoint/mybanner" - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutObjectLegalHold": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutObjectLegalHoldRequest" }, - { - "documentation": "object lambda with invalid arn - account id contains invalid characters", - "expect": { - "error": "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `123.45678.9012`" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::UseArnRegion": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123.45678.9012:accesspoint:mybucket", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": true, - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123.45678.9012:accesspoint:mybucket" - } + "output": { + "target": "com.amazonaws.s3#PutObjectLegalHoldOutput" }, - { - "documentation": "object lambda with invalid arn - missing access point name", - "expect": { - "error": "Invalid ARN: Expected a resource of the format `accesspoint:` but no name was provided" - }, - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": true, - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint" - } + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Applies a legal hold configuration to the specified object. For more information, see Locking Objects.

\n

This functionality is not supported for Amazon S3 on Outposts.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}/{Key+}?legal-hold", + "code": 200 + } + } + }, + "com.amazonaws.s3#PutObjectLegalHoldOutput": { + "type": "structure", + "members": { + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } + } }, - { - "documentation": "object lambda with invalid arn - access point name contains invalid character: *", - "expect": { - "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `*`" - }, - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": true, - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:*" - } + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#PutObjectLegalHoldRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name containing the object that you want to place a legal hold on.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The key name for the object that you want to place a legal hold on.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "LegalHold": { + "target": "com.amazonaws.s3#ObjectLockLegalHold", + "traits": { + "smithy.api#documentation": "

Container element for the legal hold configuration you want to apply to the specified object.

", + "smithy.api#httpPayload": {}, + "smithy.api#xmlName": "LegalHold" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

The version ID of the object that you want to place a legal hold on.

", + "smithy.api#httpQuery": "versionId" + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The MD5 hash for the request body.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } }, - { - "documentation": "object lambda with invalid arn - access point name contains invalid character: .", - "expect": { - "error": "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `my.bucket`" - }, - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": true, - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:my.bucket" - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutObjectLockConfiguration": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutObjectLockConfigurationRequest" }, - { - "documentation": "object lambda with invalid arn - access point name contains sub resources", - "expect": { - "error": "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`." - }, - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": true, - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint:mybucket:object:foo" - } + "output": { + "target": "com.amazonaws.s3#PutObjectLockConfigurationOutput" }, - { - "documentation": "object lambda with custom endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://mybanner-123456789012.my-endpoint.com" + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Places an Object Lock configuration on the specified bucket. The rule specified in the Object Lock\n configuration will be applied by default to every new object placed in the specified bucket. For more\n information, see Locking\n Objects.

\n \n
    \n
  • \n

    The DefaultRetention settings require both a mode and a period.

    \n
  • \n
  • \n

    The DefaultRetention period can be either Days or Years\n but you must select one. You cannot specify Days and Years at the same\n time.

    \n
  • \n
  • \n

    You can enable Object Lock for new or existing buckets. For more information, see Configuring\n Object Lock.

    \n
  • \n
\n
", + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?object-lock", + "code": 200 } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://my-endpoint.com", - "AWS::S3::UseArnRegion": false - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseArnRegion": false, - "Bucket": "arn:aws:s3-object-lambda:us-west-2:123456789012:accesspoint/mybanner", - "Endpoint": "https://my-endpoint.com" - } - }, - { - "documentation": "object lambda arn with region mismatch and UseArnRegion=false", - "expect": { - "error": "Invalid configuration: region from ARN `us-east-1` does not match client region `us-west-2` and UseArnRegion is `false`" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::S3::UseArnRegion": false - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", - "Key": "key" - } - } - ], - "params": { - "Accelerate": false, - "Bucket": "arn:aws:s3-object-lambda:us-east-1:123456789012:accesspoint/mybanner", - "ForcePathStyle": false, - "UseArnRegion": false, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "WriteGetObjectResponse @ us-west-2", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-object-lambda.us-west-2.amazonaws.com" + } + }, + "com.amazonaws.s3#PutObjectLockConfigurationOutput": { + "type": "structure", + "members": { + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "WriteGetObjectResponse", - "operationParams": { - "RequestRoute": "RequestRoute", - "RequestToken": "RequestToken" - } - } - ], - "params": { - "Accelerate": false, - "UseObjectLambdaEndpoint": true, - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } }, - { - "documentation": "WriteGetObjectResponse with custom endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://my-endpoint.com" + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#PutObjectLockConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket whose Object Lock configuration you want to create or replace.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ObjectLockConfiguration": { + "target": "com.amazonaws.s3#ObjectLockConfiguration", + "traits": { + "smithy.api#documentation": "

The Object Lock configuration that you want to apply to the specified bucket.

", + "smithy.api#httpPayload": {}, + "smithy.api#xmlName": "ObjectLockConfiguration" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "Token": { + "target": "com.amazonaws.s3#ObjectLockToken", + "traits": { + "smithy.api#documentation": "

A token to allow Object Lock to be enabled for an existing bucket.

", + "smithy.api#httpHeader": "x-amz-bucket-object-lock-token" + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The MD5 hash for the request body.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://my-endpoint.com" - }, - "operationName": "WriteGetObjectResponse", - "operationParams": { - "RequestRoute": "RequestRoute", - "RequestToken": "RequestToken" - } - } - ], - "params": { - "Accelerate": false, - "UseObjectLambdaEndpoint": true, - "Endpoint": "https://my-endpoint.com", - "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false - } }, - { - "documentation": "WriteGetObjectResponse @ us-east-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-object-lambda.us-east-1.amazonaws.com" + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutObjectOutput": { + "type": "structure", + "members": { + "Expiration": { + "target": "com.amazonaws.s3#Expiration", + "traits": { + "smithy.api#documentation": "

If the expiration is configured for the object (see PutBucketLifecycleConfiguration) in the Amazon S3 User Guide, the response\n includes this header. It includes the expiry-date and rule-id key-value pairs\n that provide information about object expiration. The value of the rule-id is\n URL-encoded.

\n \n

Object expiration information is not returned in directory buckets and this header returns the\n value \"NotImplemented\" in all responses for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-expiration" + } + }, + "ETag": { + "target": "com.amazonaws.s3#ETag", + "traits": { + "smithy.api#documentation": "

Entity tag for the uploaded object.

\n

\n General purpose buckets - To ensure that data is not corrupted\n traversing the network, for objects where the ETag is the MD5 digest of the object, you can calculate\n the MD5 while putting an object to Amazon S3 and compare the returned ETag to the calculated MD5\n value.

\n

\n Directory buckets - The ETag for the object in a\n directory bucket isn't the MD5 digest of the object.

", + "smithy.api#httpHeader": "ETag" + } + }, + "ChecksumCRC32": { + "target": "com.amazonaws.s3#ChecksumCRC32", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32 checksum of the object. This checksum is only be present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc32" + } + }, + "ChecksumCRC32C": { + "target": "com.amazonaws.s3#ChecksumCRC32C", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32C checksum of the object. This checksum is only present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc32c" + } + }, + "ChecksumCRC64NVME": { + "target": "com.amazonaws.s3#ChecksumCRC64NVME", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC64NVME checksum of the object. This header is present if\n the object was uploaded with the CRC64NVME checksum algorithm, or if it was uploaded\n without a checksum (and Amazon S3 added the default checksum, CRC64NVME, to the uploaded\n object). For more information about how checksums are calculated with multipart uploads, see Checking object\n integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc64nvme" + } + }, + "ChecksumSHA1": { + "target": "com.amazonaws.s3#ChecksumSHA1", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA1 digest of the object. This will only be present if the object was uploaded\n with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-sha1" + } + }, + "ChecksumSHA256": { + "target": "com.amazonaws.s3#ChecksumSHA256", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA256 digest of the object. This will only be present if the object was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-sha256" + } + }, + "ChecksumType": { + "target": "com.amazonaws.s3#ChecksumType", + "traits": { + "smithy.api#documentation": "

This header specifies the checksum type of the object, which determines how part-level checksums are\n combined to create an object-level checksum for multipart objects. For PutObject uploads,\n the checksum type is always FULL_OBJECT. You can use this header as a data integrity check\n to verify that the checksum type that is received is the same checksum that was specified. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-type" + } + }, + "ServerSideEncryption": { + "target": "com.amazonaws.s3#ServerSideEncryption", + "traits": { + "smithy.api#documentation": "

The server-side encryption algorithm used when you store this object in Amazon S3 or Amazon FSx.

\n \n

When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side\n encryption option is aws:fsx.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

Version ID of the object.

\n

If you enable versioning for a bucket, Amazon S3 automatically generates a unique version ID for the\n object being stored. Amazon S3 returns this ID in the response. When you enable versioning for a bucket, if\n Amazon S3 receives multiple write requests for the same object simultaneously, it stores all of the objects.\n For more information about versioning, see Adding Objects to\n Versioning-Enabled Buckets in the Amazon S3 User Guide. For information about\n returning the versioning state of a bucket, see GetBucketVersioning.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-version-id" + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the response will\n include this header to confirm the encryption algorithm that's used.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the response will\n include this header to provide the round-trip message integrity verification of the customer-provided\n encryption key.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } + }, + "SSEKMSKeyId": { + "target": "com.amazonaws.s3#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

If present, indicates the ID of the KMS key that was used for object encryption.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" + } + }, + "SSEKMSEncryptionContext": { + "target": "com.amazonaws.s3#SSEKMSEncryptionContext", + "traits": { + "smithy.api#documentation": "

If present, indicates the Amazon Web Services KMS Encryption Context to use for object encryption. The value of\n this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs. \n This value is stored as object metadata and automatically gets\n passed on to Amazon Web Services KMS for future GetObject \n operations on this object.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-context" + } + }, + "BucketKeyEnabled": { + "target": "com.amazonaws.s3#BucketKeyEnabled", + "traits": { + "smithy.api#documentation": "

Indicates whether the uploaded object uses an S3 Bucket Key for server-side encryption with\n Key Management Service (KMS) keys (SSE-KMS).

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" + } + }, + "Size": { + "target": "com.amazonaws.s3#Size", + "traits": { + "smithy.api#documentation": "

The size of the object in bytes. This value is only be present if you append to an object.

\n \n

This functionality is only supported for objects in the Amazon S3 Express One Zone storage class in\n directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-object-size" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "WriteGetObjectResponse", - "operationParams": { - "RequestRoute": "RequestRoute", - "RequestToken": "RequestToken" - } - } - ], - "params": { - "Accelerate": false, - "UseObjectLambdaEndpoint": true, - "Region": "us-east-1", - "UseDualStack": false, - "UseFIPS": false - } }, - { - "documentation": "WriteGetObjectResponse with fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-object-lambda", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://s3-object-lambda-fips.us-east-1.amazonaws.com" + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#PutObjectRequest": { + "type": "structure", + "members": { + "ACL": { + "target": "com.amazonaws.s3#ObjectCannedACL", + "traits": { + "smithy.api#documentation": "

The canned ACL to apply to the object. For more information, see Canned ACL in the\n Amazon S3 User Guide.

\n

When adding a new object, you can use headers to grant ACL-based permissions to individual\n Amazon Web Services accounts or to predefined groups defined by Amazon S3. These permissions are then added to the ACL on\n the object. By default, all objects are private. Only the owner has full access control. For more\n information, see Access Control\n List (ACL) Overview and Managing ACLs Using the REST API in the\n Amazon S3 User Guide.

\n

If the bucket that you're uploading objects to uses the bucket owner enforced setting for S3 Object\n Ownership, ACLs are disabled and no longer affect permissions. Buckets that use this setting only accept\n PUT requests that don't specify an ACL or PUT requests that specify bucket owner full control ACLs, such\n as the bucket-owner-full-control canned ACL or an equivalent form of this ACL expressed in\n the XML format. PUT requests that contain other ACLs (for example, custom grants to certain\n Amazon Web Services accounts) fail and return a 400 error with the error code\n AccessControlListNotSupported. For more information, see Controlling ownership of objects and\n disabling ACLs in the Amazon S3 User Guide.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-acl" + } + }, + "Body": { + "target": "com.amazonaws.s3#StreamingBlob", + "traits": { + "smithy.api#default": "", + "smithy.api#documentation": "

Object data.

", + "smithy.api#httpPayload": {} + } + }, + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name to which the PUT action was initiated.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "CacheControl": { + "target": "com.amazonaws.s3#CacheControl", + "traits": { + "smithy.api#documentation": "

Can be used to specify caching behavior along the request/reply chain. For more information, see\n http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.

", + "smithy.api#httpHeader": "Cache-Control" + } + }, + "ContentDisposition": { + "target": "com.amazonaws.s3#ContentDisposition", + "traits": { + "smithy.api#documentation": "

Specifies presentational information for the object. For more information, see https://www.rfc-editor.org/rfc/rfc6266#section-4.

", + "smithy.api#httpHeader": "Content-Disposition" + } + }, + "ContentEncoding": { + "target": "com.amazonaws.s3#ContentEncoding", + "traits": { + "smithy.api#documentation": "

Specifies what content encodings have been applied to the object and thus what decoding mechanisms\n must be applied to obtain the media-type referenced by the Content-Type header field. For more\n information, see https://www.rfc-editor.org/rfc/rfc9110.html#field.content-encoding.

", + "smithy.api#httpHeader": "Content-Encoding" + } + }, + "ContentLanguage": { + "target": "com.amazonaws.s3#ContentLanguage", + "traits": { + "smithy.api#documentation": "

The language the content is in.

", + "smithy.api#httpHeader": "Content-Language" + } + }, + "ContentLength": { + "target": "com.amazonaws.s3#ContentLength", + "traits": { + "smithy.api#documentation": "

Size of the body in bytes. This parameter is useful when the size of the body cannot be determined\n automatically. For more information, see https://www.rfc-editor.org/rfc/rfc9110.html#name-content-length.

", + "smithy.api#httpHeader": "Content-Length" + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the message (without the headers) according to\n RFC 1864. This header can be used as a message integrity check to verify that the data is the same data\n that was originally sent. Although it is optional, we recommend using the Content-MD5 mechanism as an\n end-to-end integrity check. For more information about REST request authentication, see REST\n Authentication.

\n \n

The Content-MD5 or x-amz-sdk-checksum-algorithm header is required for\n any request to upload an object with a retention period configured using Amazon S3 Object Lock. For more\n information, see Uploading objects\n to an Object Lock enabled bucket in the Amazon S3 User Guide.

\n
\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ContentType": { + "target": "com.amazonaws.s3#ContentType", + "traits": { + "smithy.api#documentation": "

A standard MIME type describing the format of the contents. For more information, see https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type.

", + "smithy.api#httpHeader": "Content-Type" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum-algorithm\n or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request.

\n

For the x-amz-checksum-algorithm\n header, replace \n algorithm\n with the supported algorithm from the following list:

\n
    \n
  • \n

    \n CRC32\n

    \n
  • \n
  • \n

    \n CRC32C\n

    \n
  • \n
  • \n

    \n CRC64NVME\n

    \n
  • \n
  • \n

    \n SHA1\n

    \n
  • \n
  • \n

    \n SHA256\n

    \n
  • \n
\n

For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If the individual checksum value you provide through x-amz-checksum-algorithm\n doesn't match the checksum algorithm you set through x-amz-sdk-checksum-algorithm, Amazon S3 fails the request with a BadDigest error.

\n \n

The Content-MD5 or x-amz-sdk-checksum-algorithm header is required for\n any request to upload an object with a retention period configured using Amazon S3 Object Lock. For more\n information, see Uploading objects\n to an Object Lock enabled bucket in the Amazon S3 User Guide.

\n
\n

For directory buckets, when you use Amazon Web Services SDKs, CRC32 is the default checksum algorithm that's used for performance.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "ChecksumCRC32": { + "target": "com.amazonaws.s3#ChecksumCRC32", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 32-bit CRC32 checksum of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc32" + } + }, + "ChecksumCRC32C": { + "target": "com.amazonaws.s3#ChecksumCRC32C", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 32-bit CRC32C checksum of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc32c" + } + }, + "ChecksumCRC64NVME": { + "target": "com.amazonaws.s3#ChecksumCRC64NVME", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data\n that was originally sent. This header specifies the Base64 encoded, 64-bit CRC64NVME\n checksum of the object. The CRC64NVME checksum is always a full object checksum. For more\n information, see Checking object integrity in the Amazon S3\n User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc64nvme" + } + }, + "ChecksumSHA1": { + "target": "com.amazonaws.s3#ChecksumSHA1", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 160-bit SHA1 digest of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-sha1" + } + }, + "ChecksumSHA256": { + "target": "com.amazonaws.s3#ChecksumSHA256", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 256-bit SHA256 digest of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-sha256" + } + }, + "Expires": { + "target": "com.amazonaws.s3#Expires", + "traits": { + "smithy.api#documentation": "

The date and time at which the object is no longer cacheable. For more information, see https://www.rfc-editor.org/rfc/rfc7234#section-5.3.

", + "smithy.api#httpHeader": "Expires" + } + }, + "IfMatch": { + "target": "com.amazonaws.s3#IfMatch", + "traits": { + "smithy.api#documentation": "

Uploads the object only if the ETag (entity tag) value provided during the WRITE operation matches\n the ETag of the object in S3. If the ETag values do not match, the operation returns a 412\n Precondition Failed error.

\n

If a conflicting operation occurs during the upload S3 returns a 409\n ConditionalRequestConflict response. On a 409 failure you should fetch the object's ETag and\n retry the upload.

\n

Expects the ETag value as a string.

\n

For more information about conditional requests, see RFC 7232, or Conditional requests in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "If-Match" + } + }, + "IfNoneMatch": { + "target": "com.amazonaws.s3#IfNoneMatch", + "traits": { + "smithy.api#documentation": "

Uploads the object only if the object key name does not already exist in the bucket specified.\n Otherwise, Amazon S3 returns a 412 Precondition Failed error.

\n

If a conflicting operation occurs during the upload S3 returns a 409\n ConditionalRequestConflict response. On a 409 failure you should retry the upload.

\n

Expects the '*' (asterisk) character.

\n

For more information about conditional requests, see RFC 7232, or Conditional requests in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "If-None-Match" + } + }, + "GrantFullControl": { + "target": "com.amazonaws.s3#GrantFullControl", + "traits": { + "smithy.api#documentation": "

Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-grant-full-control" + } + }, + "GrantRead": { + "target": "com.amazonaws.s3#GrantRead", + "traits": { + "smithy.api#documentation": "

Allows grantee to read the object data and its metadata.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-grant-read" + } + }, + "GrantReadACP": { + "target": "com.amazonaws.s3#GrantReadACP", + "traits": { + "smithy.api#documentation": "

Allows grantee to read the object ACL.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-grant-read-acp" + } + }, + "GrantWriteACP": { + "target": "com.amazonaws.s3#GrantWriteACP", + "traits": { + "smithy.api#documentation": "

Allows grantee to write the ACL for the applicable object.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-grant-write-acp" + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Object key for which the PUT action was initiated.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Key" + } + } + }, + "WriteOffsetBytes": { + "target": "com.amazonaws.s3#WriteOffsetBytes", + "traits": { + "smithy.api#documentation": "

Specifies the offset for appending data to existing objects in bytes. The offset must be equal to\n the size of the existing object being appended to. If no object exists, setting this header to 0 will\n create a new object.

\n \n

This functionality is only supported for objects in the Amazon S3 Express One Zone storage class in\n directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-write-offset-bytes" + } + }, + "Metadata": { + "target": "com.amazonaws.s3#Metadata", + "traits": { + "smithy.api#documentation": "

A map of metadata to store with the object in S3.

", + "smithy.api#httpPrefixHeaders": "x-amz-meta-" + } + }, + "ServerSideEncryption": { + "target": "com.amazonaws.s3#ServerSideEncryption", + "traits": { + "smithy.api#documentation": "

The server-side encryption algorithm that was used when you store this object in Amazon S3 or\n Amazon FSx.

\n
    \n
  • \n

    \n General purpose buckets - You have four mutually exclusive\n options to protect data using server-side encryption in Amazon S3, depending on how you choose to manage\n the encryption keys. Specifically, the encryption key options are Amazon S3 managed keys (SSE-S3),\n Amazon Web Services KMS keys (SSE-KMS or DSSE-KMS), and customer-provided keys (SSE-C). Amazon S3 encrypts data with\n server-side encryption by using Amazon S3 managed keys (SSE-S3) by default. You can optionally tell Amazon S3\n to encrypt data at rest by using server-side encryption with other key options. For more\n information, see Using Server-Side Encryption in\n the Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory buckets -\n For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your \n CreateSession requests or PUT object requests. Then, new objects \n are automatically encrypted with the desired encryption settings. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide. For more information about the encryption overriding behaviors in directory buckets, see Specifying server-side encryption with KMS for new object uploads.

    \n

    In the Zonal endpoint API calls (except CopyObject and UploadPartCopy) using the REST API, the encryption request headers must match the encryption settings that are specified in the CreateSession request. \n You can't override the values of the encryption settings (x-amz-server-side-encryption, x-amz-server-side-encryption-aws-kms-key-id, x-amz-server-side-encryption-context, and x-amz-server-side-encryption-bucket-key-enabled) that are specified in the CreateSession request. \n You don't need to explicitly specify these encryption settings values in Zonal endpoint API calls, and \n Amazon S3 will use the encryption settings values from the CreateSession request to protect new objects in the directory bucket. \n

    \n \n

    When you use the CLI or the Amazon Web Services SDKs, for CreateSession, the session token refreshes automatically to avoid service interruptions when a session expires. The CLI or the Amazon Web Services SDKs use the bucket's default encryption configuration for the \n CreateSession request. It's not supported to override the encryption settings values in the CreateSession request. \n So in the Zonal endpoint API calls (except CopyObject and UploadPartCopy), \n the encryption request headers must match the default encryption configuration of the directory bucket.\n\n

    \n
    \n
  • \n
  • \n

    \n S3 access points for Amazon FSx - When accessing data stored in\n Amazon FSx file systems using S3 access points, the only valid server side encryption option is\n aws:fsx. All Amazon FSx file systems have encryption configured by default and are\n encrypted at rest. Data is automatically encrypted before being written to the file system, and\n automatically decrypted as it is read. These processes are handled transparently by Amazon FSx.

    \n
  • \n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3#StorageClass", + "traits": { + "smithy.api#documentation": "

By default, Amazon S3 uses the STANDARD Storage Class to store newly created objects. The STANDARD\n storage class provides high durability and high availability. Depending on performance needs, you can\n specify a different Storage Class. For more information, see Storage Classes in the\n Amazon S3 User Guide.

\n \n
    \n
  • \n

    Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in\n Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in\n Dedicated Local Zones.

    \n
  • \n
  • \n

    Amazon S3 on Outposts only uses the OUTPOSTS Storage Class.

    \n
  • \n
\n
", + "smithy.api#httpHeader": "x-amz-storage-class" + } + }, + "WebsiteRedirectLocation": { + "target": "com.amazonaws.s3#WebsiteRedirectLocation", + "traits": { + "smithy.api#documentation": "

If the bucket is configured as a website, redirects requests for this object to another object in\n the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata. For\n information about object metadata, see Object Key and Metadata in the Amazon S3\n User Guide.

\n

In the following example, the request header sets the redirect to an object (anotherPage.html) in\n the same bucket:

\n

\n x-amz-website-redirect-location: /anotherPage.html\n

\n

In the following example, the request header sets the object redirect to another website:

\n

\n x-amz-website-redirect-location: http://www.example.com/\n

\n

For more information about website hosting in Amazon S3, see Hosting Websites on Amazon S3 and How to Configure Website Page\n Redirects in the Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-website-redirect-location" + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKey": { + "target": "com.amazonaws.s3#SSECustomerKey", + "traits": { + "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is\n used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must\n be appropriate for use with the algorithm specified in the\n x-amz-server-side-encryption-customer-algorithm header.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header\n for a message integrity check to ensure that the encryption key was transmitted without error.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } + }, + "SSEKMSKeyId": { + "target": "com.amazonaws.s3#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

Specifies the KMS key ID (Key ID, Key ARN, or Key Alias) to use for object encryption. If the KMS key doesn't exist in the same\n account that's issuing the command, you must use the full Key ARN not the Key ID.

\n

\n General purpose buckets - If you specify x-amz-server-side-encryption with aws:kms or aws:kms:dsse, this header specifies the ID (Key ID, Key ARN, or Key Alias) of the KMS \n key to use. If you specify\n x-amz-server-side-encryption:aws:kms or\n x-amz-server-side-encryption:aws:kms:dsse, but do not provide x-amz-server-side-encryption-aws-kms-key-id, Amazon S3 uses the Amazon Web Services managed key\n (aws/s3) to protect the data.

\n

\n Directory buckets - To encrypt data using SSE-KMS, it's recommended to specify the \nx-amz-server-side-encryption header to aws:kms. Then, the x-amz-server-side-encryption-aws-kms-key-id header implicitly uses \nthe bucket's default KMS customer managed key ID. If you want to explicitly set the \n x-amz-server-side-encryption-aws-kms-key-id header, it must match the bucket's default customer managed key (using key ID or ARN, not alias). Your SSE-KMS configuration can only support 1 customer managed key per directory bucket's lifetime. \nThe Amazon Web Services managed key (aws/s3) isn't supported. \n \n Incorrect key specification results in an HTTP 400 Bad Request error.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" + } + }, + "SSEKMSEncryptionContext": { + "target": "com.amazonaws.s3#SSEKMSEncryptionContext", + "traits": { + "smithy.api#documentation": "

Specifies the Amazon Web Services KMS Encryption Context as an additional encryption context to use for object encryption. The value of\n this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs. \n This value is stored as object metadata and automatically gets passed on\n to Amazon Web Services KMS for future GetObject operations on\n this object.

\n

\n General purpose buckets - This value must be explicitly added during CopyObject operations if you want an additional encryption context for your object. For more information, see Encryption context in the Amazon S3 User Guide.

\n

\n Directory buckets - You can optionally provide an explicit encryption context value. The value must match the default encryption context - the bucket Amazon Resource Name (ARN). An additional encryption context value is not supported.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-context" + } + }, + "BucketKeyEnabled": { + "target": "com.amazonaws.s3#BucketKeyEnabled", + "traits": { + "smithy.api#documentation": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with\n server-side encryption using Key Management Service (KMS) keys (SSE-KMS).

\n

\n General purpose buckets - Setting this header to\n true causes Amazon S3 to use an S3 Bucket Key for object encryption with\n SSE-KMS. Also, specifying this header with a PUT action doesn't affect bucket-level settings for S3\n Bucket Key.

\n

\n Directory buckets - S3 Bucket Keys are always enabled for GET and PUT operations in a directory bucket and can’t be disabled. S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets \nto directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through CopyObject, UploadPartCopy, the Copy operation in Batch Operations, or \n the import jobs. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "Tagging": { + "target": "com.amazonaws.s3#TaggingHeader", + "traits": { + "smithy.api#documentation": "

The tag-set for the object. The tag-set must be encoded as URL Query parameters. (For example,\n \"Key1=Value1\")

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-tagging" + } + }, + "ObjectLockMode": { + "target": "com.amazonaws.s3#ObjectLockMode", + "traits": { + "smithy.api#documentation": "

The Object Lock mode that you want to apply to this object.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-object-lock-mode" + } + }, + "ObjectLockRetainUntilDate": { + "target": "com.amazonaws.s3#ObjectLockRetainUntilDate", + "traits": { + "smithy.api#documentation": "

The date and time when you want this object's Object Lock to expire. Must be formatted as a\n timestamp parameter.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-object-lock-retain-until-date" + } + }, + "ObjectLockLegalHoldStatus": { + "target": "com.amazonaws.s3#ObjectLockLegalHoldStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether a legal hold will be applied to this object. For more information about S3 Object\n Lock, see Object Lock in\n the Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-object-lock-legal-hold" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "WriteGetObjectResponse", - "operationParams": { - "RequestRoute": "RequestRoute", - "RequestToken": "RequestToken" - } - } - ], - "params": { - "Accelerate": false, - "UseObjectLambdaEndpoint": true, - "Region": "us-east-1", - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "WriteGetObjectResponse with dualstack", - "expect": { - "error": "S3 Object Lambda does not support Dual-stack" - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseDualStack": true - }, - "operationName": "WriteGetObjectResponse", - "operationParams": { - "RequestRoute": "RequestRoute", - "RequestToken": "RequestToken" - } - } - ], - "params": { - "Accelerate": false, - "UseObjectLambdaEndpoint": true, - "Region": "us-east-1", - "UseDualStack": true, - "UseFIPS": false - } - }, - { - "documentation": "WriteGetObjectResponse with accelerate", - "expect": { - "error": "S3 Object Lambda does not support S3 Accelerate" - }, - "params": { - "Accelerate": true, - "UseObjectLambdaEndpoint": true, - "Region": "us-east-1", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "WriteGetObjectResponse with fips in CN", - "expect": { - "error": "Partition does not support FIPS" - }, - "params": { - "Accelerate": false, - "Region": "cn-north-1", - "UseObjectLambdaEndpoint": true, - "UseDualStack": false, - "UseFIPS": true - } - }, - { - "documentation": "WriteGetObjectResponse with invalid partition", - "expect": { - "error": "Invalid region: region was not a valid DNS name." - }, - "params": { - "Accelerate": false, - "UseObjectLambdaEndpoint": true, - "Region": "not a valid DNS name", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "WriteGetObjectResponse with an unknown partition", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3-object-lambda", - "disableDoubleEncoding": true, - "signingRegion": "us-east.special" - } - ] - }, - "url": "https://s3-object-lambda.us-east.special.amazonaws.com" - } - }, - "params": { - "Accelerate": false, - "UseObjectLambdaEndpoint": true, - "Region": "us-east.special", - "UseDualStack": false, - "UseFIPS": false - } - }, - { - "documentation": "S3 Outposts bucketAlias Real Outpost Prod us-west-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": ["*"], - "disableDoubleEncoding": true - }, - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-west-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3.op-0b1d075431d83bebd.s3-outposts.us-west-1.amazonaws.com" - } - }, - "params": { - "Region": "us-west-1", - "Bucket": "test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "S3 Outposts bucketAlias Real Outpost Prod ap-east-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": ["*"], - "disableDoubleEncoding": true - }, - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "ap-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3.op-0b1d075431d83bebd.s3-outposts.ap-east-1.amazonaws.com" - } - }, - "params": { - "Region": "ap-east-1", - "Bucket": "test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "S3 Outposts bucketAlias Ec2 Outpost Prod us-east-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": ["*"], - "disableDoubleEncoding": true - }, - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://test-accessp-e0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3.ec2.s3-outposts.us-east-1.amazonaws.com" - } - }, - "params": { - "Region": "us-east-1", - "Bucket": "test-accessp-e0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "S3 Outposts bucketAlias Ec2 Outpost Prod me-south-1", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": ["*"], - "disableDoubleEncoding": true - }, - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "me-south-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://test-accessp-e0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3.ec2.s3-outposts.me-south-1.amazonaws.com" - } - }, - "params": { - "Region": "me-south-1", - "Bucket": "test-accessp-e0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "S3 Outposts bucketAlias Real Outpost Beta", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": ["*"], - "disableDoubleEncoding": true - }, - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kbeta0--op-s3.op-0b1d075431d83bebd.example.amazonaws.com" - } - }, - "params": { - "Region": "us-east-1", - "Bucket": "test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kbeta0--op-s3", - "Endpoint": "https://example.amazonaws.com", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "S3 Outposts bucketAlias Ec2 Outpost Beta", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4a", - "signingName": "s3-outposts", - "signingRegionSet": ["*"], - "disableDoubleEncoding": true - }, - { - "name": "sigv4", - "signingName": "s3-outposts", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://161743052723-e00000136899934034jeahy1t8gpzpbwjj8kb7beta0--op-s3.ec2.example.amazonaws.com" - } - }, - "params": { - "Region": "us-east-1", - "Bucket": "161743052723-e00000136899934034jeahy1t8gpzpbwjj8kb7beta0--op-s3", - "Endpoint": "https://example.amazonaws.com", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "S3 Outposts bucketAlias - No endpoint set for beta", - "expect": { - "error": "Expected a endpoint to be specified but no endpoint was found" - }, - "params": { - "Region": "us-east-1", - "Bucket": "test-accessp-o0b1d075431d83bebde8xz5w8ijx1qzlbp3i3kbeta0--op-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "S3 Outposts bucketAlias Invalid hardware type", - "expect": { - "error": "Unrecognized hardware type: \"Expected hardware type o or e but got h\"" - }, - "params": { - "Region": "us-east-1", - "Bucket": "test-accessp-h0000075431d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "S3 Outposts bucketAlias Special character in Outpost Arn", - "expect": { - "error": "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`." - }, - "params": { - "Region": "us-east-1", - "Bucket": "test-accessp-o00000754%1d83bebde8xz5w8ijx1qzlbp3i3kuse10--op-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "S3 Outposts bucketAlias - No endpoint set for beta", - "expect": { - "error": "Expected a endpoint to be specified but no endpoint was found" - }, - "params": { - "Region": "us-east-1", - "Bucket": "test-accessp-e0b1d075431d83bebde8xz5w8ijx1qzlbp3i3ebeta0--op-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "S3 Snow with bucket", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "snow", - "disableDoubleEncoding": true - } - ] - }, - "url": "http://10.0.1.12:433/bucketName" - } - }, - "params": { - "Region": "snow", - "Bucket": "bucketName", - "Endpoint": "http://10.0.1.12:433", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "S3 Snow without bucket", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "snow", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://10.0.1.12:433" - } - }, - "params": { - "Region": "snow", - "Endpoint": "https://10.0.1.12:433", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } }, - { - "documentation": "S3 Snow no port", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "snow", - "disableDoubleEncoding": true - } - ] - }, - "url": "http://10.0.1.12/bucketName" - } - }, - "params": { - "Region": "snow", - "Bucket": "bucketName", - "Endpoint": "http://10.0.1.12", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } - }, - { - "documentation": "S3 Snow dns endpoint", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3", - "signingRegion": "snow", - "disableDoubleEncoding": true - } - ] - }, - "url": "https://amazonaws.com/bucketName" - } - }, - "params": { - "Region": "snow", - "Bucket": "bucketName", - "Endpoint": "https://amazonaws.com", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutObjectRetention": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutObjectRetentionRequest" }, - { - "documentation": "Data Plane with short zone name", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--abcd-ab1--x-s3.s3express-abcd-ab1.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--abcd-ab1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "Bucket": "mybucket--abcd-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false - } + "output": { + "target": "com.amazonaws.s3#PutObjectRetentionOutput" }, - { - "documentation": "Data Plane with short zone names (13 chars)", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--test-zone-ab1--x-s3.s3express-test-zone-ab1.us-west-2.amazonaws.com" + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Places an Object Retention configuration on an object. For more information, see Locking Objects. Users or\n accounts require the s3:PutObjectRetention permission in order to place an Object Retention\n configuration on objects. Bypassing a Governance Retention configuration requires the\n s3:BypassGovernanceRetention permission.

\n

This functionality is not supported for Amazon S3 on Outposts.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}/{Key+}?retention", + "code": 200 } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--test-zone-ab1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test-zone-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false - } - }, - { - "documentation": "Data Plane with medium zone names (14 chars)", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-test1-zone-ab1.us-west-2.amazonaws.com" + } + }, + "com.amazonaws.s3#PutObjectRetentionOutput": { + "type": "structure", + "members": { + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--test1-zone-ab1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-zone-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false - } }, - { - "documentation": "Data Plane with long zone names (20 chars)", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-test1-long1-zone-ab1.us-west-2.amazonaws.com" + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#PutObjectRetentionRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name that contains the object you want to apply this Object Retention configuration to.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The key name for the object that you want to apply this Object Retention configuration to.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Retention": { + "target": "com.amazonaws.s3#ObjectLockRetention", + "traits": { + "smithy.api#documentation": "

The container element for the Object Retention configuration.

", + "smithy.api#httpPayload": {}, + "smithy.api#xmlName": "Retention" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

The version ID for the object that you want to apply this Object Retention configuration to.

", + "smithy.api#httpQuery": "versionId" + } + }, + "BypassGovernanceRetention": { + "target": "com.amazonaws.s3#BypassGovernanceRetention", + "traits": { + "smithy.api#documentation": "

Indicates whether this action should bypass Governance-mode restrictions.

", + "smithy.api#httpHeader": "x-amz-bypass-governance-retention" + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The MD5 hash for the request body.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false - } }, - { - "documentation": "Data Plane with short zone fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--test-ab1--x-s3.s3express-fips-test-ab1.us-east-1.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--test-ab1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "Bucket": "mybucket--test-ab1--x-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutObjectTagging": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutObjectTaggingRequest" }, - { - "documentation": "Data Plane with short zone (13 chars) fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--test-zone-ab1--x-s3.s3express-fips-test-zone-ab1.us-west-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseFIPS": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--test-zone-ab1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test-zone-ab1--x-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false - } + "output": { + "target": "com.amazonaws.s3#PutObjectTaggingOutput" }, - { - "documentation": "Data Plane with medium zone (14 chars) fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-fips-test1-zone-ab1.us-west-2.amazonaws.com" + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Sets the supplied tag-set to an object that already exists in a bucket. A tag is a key-value pair.\n For more information, see Object Tagging.

\n

You can associate tags with an object by sending a PUT request against the tagging subresource that\n is associated with the object. You can retrieve tags by sending a GET request. For more information, see\n GetObjectTagging.

\n

For tagging-related restrictions related to characters and encodings, see Tag\n Restrictions. Note that Amazon S3 limits the maximum number of tags to 10 tags per object.

\n

To use this operation, you must have permission to perform the s3:PutObjectTagging\n action. By default, the bucket owner has this permission and can grant this permission to others.

\n

To put tags of any other version, use the versionId query parameter. You also need\n permission for the s3:PutObjectVersionTagging action.

\n

\n PutObjectTagging has the following special errors. For more Amazon S3 errors see, Error Responses.

\n
    \n
  • \n

    \n InvalidTag - The tag provided was not a valid tag. This error can occur if\n the tag did not pass input validation. For more information, see Object Tagging.

    \n
  • \n
  • \n

    \n MalformedXML - The XML provided does not match the schema.

    \n
  • \n
  • \n

    \n OperationAborted - A conflicting conditional action is currently in progress\n against this resource. Please try again.

    \n
  • \n
  • \n

    \n InternalError - The service was unable to apply the provided tag to the\n object.

    \n
  • \n
\n

The following operations are related to PutObjectTagging:

\n ", + "smithy.api#examples": [ + { + "title": "To add tags to an existing object", + "documentation": "The following example adds tags to an existing object.", + "input": { + "Bucket": "examplebucket", + "Key": "HappyFace.jpg", + "Tagging": { + "TagSet": [ + { + "Key": "Key3", + "Value": "Value3" + }, + { + "Key": "Key4", + "Value": "Value4" + } + ] + } + }, + "output": { + "VersionId": "null" + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}/{Key+}?tagging", + "code": 200 } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseFIPS": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--test1-zone-ab1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-zone-ab1--x-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false - } - }, - { - "documentation": "Data Plane with long zone (20 chars) fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-fips-test1-long1-zone-ab1.us-west-2.amazonaws.com" + } + }, + "com.amazonaws.s3#PutObjectTaggingOutput": { + "type": "structure", + "members": { + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

The versionId of the object the tag-set was added to.

", + "smithy.api#httpHeader": "x-amz-version-id" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseFIPS": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false - } }, - { - "documentation": "Data Plane with long AZ", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--test1-az1--x-s3.s3express-test1-az1.us-west-2.amazonaws.com" + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#PutObjectTaggingRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name containing the object.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Name of the object key.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

The versionId of the object that the tag-set will be added to.

", + "smithy.api#httpQuery": "versionId" + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The MD5 hash for the request body.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "Tagging": { + "target": "com.amazonaws.s3#Tagging", + "traits": { + "smithy.api#documentation": "

Container for the TagSet and Tag elements

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "Tagging" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--test1-az1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-az1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false - } }, - { - "documentation": "Data Plane with long AZ fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--test1-az1--x-s3.s3express-fips-test1-az1.us-west-2.amazonaws.com" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "AWS::UseFIPS": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--test1-az1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-az1--x-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#PutPublicAccessBlock": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#PutPublicAccessBlockRequest" }, - { - "documentation": "Control plane with short AZ bucket", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://s3express-control.us-east-1.amazonaws.com/mybucket--test-ab1--x-s3" - } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "CreateBucket", - "operationParams": { - "Bucket": "mybucket--test-ab1--x-s3" - } - } - ], - "params": { - "Region": "us-east-1", - "Bucket": "mybucket--test-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": true, - "DisableS3ExpressSessionAuth": false - } + "output": { + "target": "smithy.api#Unit" }, - { - "documentation": "Control plane with short AZ bucket and fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://s3express-control-fips.us-east-1.amazonaws.com/mybucket--test-ab1--x-s3" + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Creates or modifies the PublicAccessBlock configuration for an Amazon S3 bucket. To use this\n operation, you must have the s3:PutBucketPublicAccessBlock permission. For more information\n about Amazon S3 permissions, see Specifying Permissions in a\n Policy.

\n \n

When Amazon S3 evaluates the PublicAccessBlock configuration for a bucket or an object, it\n checks the PublicAccessBlock configuration for both the bucket (or the bucket that\n contains the object) and the bucket owner's account. If the PublicAccessBlock\n configurations are different between the bucket and the account, Amazon S3 uses the most restrictive\n combination of the bucket-level and account-level settings.

\n
\n

For more information about when Amazon S3 considers a bucket or an object public, see The Meaning of \"Public\".

\n

The following operations are related to PutPublicAccessBlock:

\n ", + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?publicAccessBlock", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "CreateBucket", - "operationParams": { - "Bucket": "mybucket--test-ab1--x-s3" - } - } - ], - "params": { - "Region": "us-east-1", - "Bucket": "mybucket--test-ab1--x-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": true, - "DisableS3ExpressSessionAuth": false - } - }, - { - "documentation": "Control plane without bucket", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://s3express-control.us-east-1.amazonaws.com" + } + }, + "com.amazonaws.s3#PutPublicAccessBlockRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the Amazon S3 bucket whose PublicAccessBlock configuration you want to\n set.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The MD5 hash of the PutPublicAccessBlock request body.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "PublicAccessBlockConfiguration": { + "target": "com.amazonaws.s3#PublicAccessBlockConfiguration", + "traits": { + "smithy.api#documentation": "

The PublicAccessBlock configuration that you want to apply to this Amazon S3 bucket. You can\n enable the configuration options in any combination. For more information about when Amazon S3 considers a\n bucket or object public, see The Meaning of \"Public\" in the Amazon S3 User Guide.

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "PublicAccessBlockConfiguration" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "ListDirectoryBuckets" - } - ], - "params": { - "Region": "us-east-1", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": true, - "DisableS3ExpressSessionAuth": false - } }, - { - "documentation": "Control plane without bucket and fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-east-1", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://s3express-control-fips.us-east-1.amazonaws.com" + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#QueueArn": { + "type": "string" + }, + "com.amazonaws.s3#QueueConfiguration": { + "type": "structure", + "members": { + "Id": { + "target": "com.amazonaws.s3#NotificationId" + }, + "QueueArn": { + "target": "com.amazonaws.s3#QueueArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it\n detects events of the specified type.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "Queue" + } + }, + "Events": { + "target": "com.amazonaws.s3#EventList", + "traits": { + "smithy.api#documentation": "

A collection of bucket events for which to send notifications

", + "smithy.api#required": {}, + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Event" + } + }, + "Filter": { + "target": "com.amazonaws.s3#NotificationConfigurationFilter" } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseFIPS": true - }, - "operationName": "ListDirectoryBuckets" - } - ], - "params": { - "Region": "us-east-1", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": true, - "DisableS3ExpressSessionAuth": false - } - }, - { - "documentation": "Data Plane sigv4 auth with short AZ", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--usw2-az1--x-s3.s3express-usw2-az1.us-west-2.amazonaws.com" - } - }, - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--usw2-az1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "DisableS3ExpressSessionAuth": true - } - }, - { - "documentation": "Data Plane sigv4 auth with short zone (13 chars)", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--test-zone-ab1--x-s3.s3express-test-zone-ab1.us-west-2.amazonaws.com" - } - }, - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test-zone-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "DisableS3ExpressSessionAuth": true - } - }, - { - "documentation": "Data Plane sigv4 auth with short AZ fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--usw2-az1--x-s3.s3express-fips-usw2-az1.us-west-2.amazonaws.com" - } - }, - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--usw2-az1--x-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "DisableS3ExpressSessionAuth": true - } - }, - { - "documentation": "Data Plane sigv4 auth with short zone (13 chars) fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--test-zone-ab1--x-s3.s3express-fips-test-zone-ab1.us-west-2.amazonaws.com" - } - }, - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test-zone-ab1--x-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "DisableS3ExpressSessionAuth": true - } - }, - { - "documentation": "Data Plane sigv4 auth with long AZ", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--test1-az1--x-s3.s3express-test1-az1.us-west-2.amazonaws.com" - } - }, - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-az1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false, - "DisableS3ExpressSessionAuth": true - } - }, - { - "documentation": "Data Plane sigv4 auth with medium zone(14 chars)", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-test1-zone-ab1.us-west-2.amazonaws.com" - } - }, - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-zone-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false, - "DisableS3ExpressSessionAuth": true - } - }, - { - "documentation": "Data Plane sigv4 auth with long zone(20 chars)", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-test1-long1-zone-ab1.us-west-2.amazonaws.com" - } - }, - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false, - "DisableS3ExpressSessionAuth": true - } - }, - { - "documentation": "Data Plane sigv4 auth with long AZ fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--test1-az1--x-s3.s3express-fips-test1-az1.us-west-2.amazonaws.com" - } - }, - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-az1--x-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false, - "DisableS3ExpressSessionAuth": true - } - }, - { - "documentation": "Data Plane sigv4 auth with medium zone (14 chars) fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--test1-zone-ab1--x-s3.s3express-fips-test1-zone-ab1.us-west-2.amazonaws.com" - } - }, - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-zone-ab1--x-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false, - "DisableS3ExpressSessionAuth": true - } - }, - { - "documentation": "Data Plane sigv4 auth with long zone (20 chars) fips", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--test1-long1-zone-ab1--x-s3.s3express-fips-test1-long1-zone-ab1.us-west-2.amazonaws.com" - } - }, - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--test1-long1-zone-ab1--x-s3", - "UseFIPS": true, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false, - "DisableS3ExpressSessionAuth": true - } }, - { - "documentation": "Control Plane host override", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--usw2-az1--x-s3.custom.com" - } - }, - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--usw2-az1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": true, - "DisableS3ExpressSessionAuth": true, - "Endpoint": "https://custom.com" - } + "traits": { + "smithy.api#documentation": "

Specifies the configuration for publishing messages to an Amazon Simple Queue Service (Amazon SQS)\n queue when Amazon S3 detects specified events.

" + } + }, + "com.amazonaws.s3#QueueConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#QueueConfiguration" + } + }, + "com.amazonaws.s3#Quiet": { + "type": "boolean" + }, + "com.amazonaws.s3#QuoteCharacter": { + "type": "string" + }, + "com.amazonaws.s3#QuoteEscapeCharacter": { + "type": "string" + }, + "com.amazonaws.s3#QuoteFields": { + "type": "enum", + "members": { + "ALWAYS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ALWAYS" + } + }, + "ASNEEDED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ASNEEDED" + } + } + } + }, + "com.amazonaws.s3#Range": { + "type": "string" + }, + "com.amazonaws.s3#RecordDelimiter": { + "type": "string" + }, + "com.amazonaws.s3#RecordExpiration": { + "type": "structure", + "members": { + "Expiration": { + "target": "com.amazonaws.s3#ExpirationState", + "traits": { + "smithy.api#documentation": "

\n Specifies whether journal table record expiration is enabled or disabled.\n

", + "smithy.api#required": {} + } + }, + "Days": { + "target": "com.amazonaws.s3#RecordExpirationDays", + "traits": { + "smithy.api#documentation": "

\n If you enable journal table record expiration, you can set the number of days to retain your \n journal table records. Journal table records must be retained for a minimum of 7 days. To set \n this value, specify any whole number from 7 to 2147483647. For example, \n to retain your journal table records for one year, set this value to 365.\n

" + } + } }, - { - "documentation": "Control Plane host override no bucket", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://custom.com" - } - }, - "params": { - "Region": "us-west-2", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": true, - "DisableS3ExpressSessionAuth": true, - "Endpoint": "https://custom.com" - } + "traits": { + "smithy.api#documentation": "

\n The journal table record expiration settings for a journal table in an S3 Metadata configuration.\n

" + } + }, + "com.amazonaws.s3#RecordExpirationDays": { + "type": "integer" + }, + "com.amazonaws.s3#RecordsEvent": { + "type": "structure", + "members": { + "Payload": { + "target": "com.amazonaws.s3#Body", + "traits": { + "smithy.api#documentation": "

The byte array of partial, one or more result records. S3 Select doesn't guarantee that a record\n will be self-contained in one record frame. To ensure continuous streaming of data, S3 Select might\n split the same record across multiple record frames instead of aggregating the results in memory. Some\n S3 clients (for example, the SDK for Java) handle this behavior by creating a\n ByteStream out of the response by default. Other clients might not handle this behavior\n by default. In those cases, you must aggregate the results on the client side and parse the\n response.

", + "smithy.api#eventPayload": {} + } + } }, - { - "documentation": "Data plane host override non virtual session auth", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://10.0.0.1/mybucket--usw2-az1--x-s3" + "traits": { + "smithy.api#documentation": "

The container for the records event.

" + } + }, + "com.amazonaws.s3#Redirect": { + "type": "structure", + "members": { + "HostName": { + "target": "com.amazonaws.s3#HostName", + "traits": { + "smithy.api#documentation": "

The host name to use in the redirect request.

" + } + }, + "HttpRedirectCode": { + "target": "com.amazonaws.s3#HttpRedirectCode", + "traits": { + "smithy.api#documentation": "

The HTTP redirect code to use on the response. Not required if one of the siblings is\n present.

" + } + }, + "Protocol": { + "target": "com.amazonaws.s3#Protocol", + "traits": { + "smithy.api#documentation": "

Protocol to use when redirecting requests. The default is the protocol that is used in the original\n request.

" + } + }, + "ReplaceKeyPrefixWith": { + "target": "com.amazonaws.s3#ReplaceKeyPrefixWith", + "traits": { + "smithy.api#documentation": "

The object key prefix to use in the redirect request. For example, to redirect requests for all\n pages with prefix docs/ (objects in the docs/ folder) to\n documents/, you can set a condition block with KeyPrefixEquals set to\n docs/ and in the Redirect set ReplaceKeyPrefixWith to\n /documents. Not required if one of the siblings is present. Can be present only if\n ReplaceKeyWith is not provided.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
" + } + }, + "ReplaceKeyWith": { + "target": "com.amazonaws.s3#ReplaceKeyWith", + "traits": { + "smithy.api#documentation": "

The specific object key to use in the redirect request. For example, redirect request to\n error.html. Not required if one of the siblings is present. Can be present only if\n ReplaceKeyPrefixWith is not provided.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
" + } } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://10.0.0.1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--usw2-az1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--usw2-az1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Endpoint": "https://10.0.0.1" - } }, - { - "documentation": "Control Plane host override ip", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://10.0.0.1/mybucket--usw2-az1--x-s3" - } - }, - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--usw2-az1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": true, - "DisableS3ExpressSessionAuth": true, - "Endpoint": "https://10.0.0.1" - } + "traits": { + "smithy.api#documentation": "

Specifies how requests are redirected. In the event of an error, you can specify a different error\n code to return.

" + } + }, + "com.amazonaws.s3#RedirectAllRequestsTo": { + "type": "structure", + "members": { + "HostName": { + "target": "com.amazonaws.s3#HostName", + "traits": { + "smithy.api#documentation": "

Name of the host where requests are redirected.

", + "smithy.api#required": {} + } + }, + "Protocol": { + "target": "com.amazonaws.s3#Protocol", + "traits": { + "smithy.api#documentation": "

Protocol to use when redirecting requests. The default is the protocol that is used in the original\n request.

" + } + } }, - { - "documentation": "Data plane host override", - "expect": { - "endpoint": { - "properties": { - "authSchemes": [ - { - "name": "sigv4-s3express", - "signingName": "s3express", - "signingRegion": "us-west-2", - "disableDoubleEncoding": true - } - ], - "backend": "S3Express" - }, - "url": "https://mybucket--usw2-az1--x-s3.custom.com" + "traits": { + "smithy.api#documentation": "

Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.

" + } + }, + "com.amazonaws.s3#Region": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 20 } - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://custom.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--usw2-az1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "Bucket": "mybucket--usw2-az1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Endpoint": "https://custom.com" - } + } + }, + "com.amazonaws.s3#RenameObject": { + "type": "operation", + "input": { + "target": "com.amazonaws.s3#RenameObjectRequest" }, - { - "documentation": "bad format error", - "expect": { - "error": "Unrecognized S3Express bucket name format." - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--usaz1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "Bucket": "mybucket--usaz1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false - } + "output": { + "target": "com.amazonaws.s3#RenameObjectOutput" }, - { - "documentation": "bad format error no session auth", - "expect": { - "error": "Unrecognized S3Express bucket name format." - }, - "operationInputs": [ + "errors": [ { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--usaz1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "Bucket": "mybucket--usaz1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false, - "DisableS3ExpressSessionAuth": true - } + "target": "com.amazonaws.s3#IdempotencyParameterMismatch" + } + ], + "traits": { + "smithy.api#documentation": "

Renames an existing object in a directory bucket that uses the S3 Express One Zone storage class.\n You can use RenameObject by specifying an existing object’s name as the source and the new\n name of the object as the destination within the same directory bucket.

\n \n

\n RenameObject is only supported for objects stored in the S3 Express One Zone storage\n class.

\n
\n

To prevent overwriting an object, you can use the If-None-Match conditional\n header.

\n
    \n
  • \n

    \n If-None-Match - Renames the object only if an object\n with the specified name does not already exist in the directory bucket. If you don't want to\n overwrite an existing object, you can add the If-None-Match conditional header with the\n value ‘*’ in the RenameObject request. Amazon S3 then returns a 412\n Precondition Failed error if the object with the specified name already exists. For more\n information, see RFC 7232.

    \n
  • \n
\n
\n
Permissions
\n
\n

To grant access to the RenameObject operation on a directory bucket, we\n recommend that you use the CreateSession operation for session-based authorization.\n Specifically, you grant the s3express:CreateSession permission to the directory\n bucket in a bucket policy or an IAM identity-based policy. Then, you make the\n CreateSession API call on the directory bucket to obtain a session token. With the\n session token in your request header, you can make API requests to this operation. After the\n session token expires, you make another CreateSession API call to generate a new\n session token for use. The Amazon Web Services CLI and SDKs will create and manage your session including\n refreshing the session token automatically to avoid service interruptions when a session expires.\n In your bucket policy, you can specify the s3express:SessionMode condition key to\n control who can create a ReadWrite or ReadOnly session. A\n ReadWrite session is required for executing all the Zonal endpoint API operations,\n including RenameObject. For more information about authorization, see \n CreateSession\n . To learn more about Zonal endpoint API operations, see\n Authorizing Zonal endpoint API operations with CreateSession in the Amazon S3 User\n Guide.

\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
", + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}/{Key+}?renameObject", + "code": 200 + } + } + }, + "com.amazonaws.s3#RenameObjectOutput": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#RenameObjectRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name of the directory bucket containing the object.

\n

You must use virtual-hosted-style requests in the format\n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not\n supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must\n follow the format bucket-base-name--zone-id--x-s3 (for example,\n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming restrictions, see\n Directory bucket naming rules in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Key name of the object to rename.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Key" + } + } + }, + "RenameSource": { + "target": "com.amazonaws.s3#RenameSource", + "traits": { + "smithy.api#documentation": "

Specifies the source for the rename operation. The value must be URL encoded.

", + "smithy.api#httpHeader": "x-amz-rename-source", + "smithy.api#required": {} + } + }, + "DestinationIfMatch": { + "target": "com.amazonaws.s3#IfMatch", + "traits": { + "smithy.api#documentation": "

Renames the object only if the ETag (entity tag) value provided during the operation matches the\n ETag of the object in S3. The If-Match header field makes the request method conditional on\n ETags. If the ETag values do not match, the operation returns a 412 Precondition Failed\n error.

\n

Expects the ETag value as a string.

", + "smithy.api#httpHeader": "If-Match" + } + }, + "DestinationIfNoneMatch": { + "target": "com.amazonaws.s3#IfNoneMatch", + "traits": { + "smithy.api#documentation": "

Renames the object only if the destination does not already exist in the specified directory\n bucket. If the object does exist when you send a request with If-None-Match:*, the S3 API\n will return a 412 Precondition Failed error, preventing an overwrite. The\n If-None-Match header prevents overwrites of existing data by validating that there's not\n an object with the same key name already in your directory bucket.

\n

Expects the * character (asterisk).

", + "smithy.api#httpHeader": "If-None-Match" + } + }, + "DestinationIfModifiedSince": { + "target": "com.amazonaws.s3#IfModifiedSince", + "traits": { + "smithy.api#documentation": "

Renames the object if the destination exists and if it has been modified since the specified\n time.

", + "smithy.api#httpHeader": "If-Modified-Since" + } + }, + "DestinationIfUnmodifiedSince": { + "target": "com.amazonaws.s3#IfUnmodifiedSince", + "traits": { + "smithy.api#documentation": "

Renames the object if it hasn't been modified since the specified time.

", + "smithy.api#httpHeader": "If-Unmodified-Since" + } + }, + "SourceIfMatch": { + "target": "com.amazonaws.s3#RenameSourceIfMatch", + "traits": { + "smithy.api#documentation": "

Renames the object if the source exists and if its entity tag (ETag) matches the specified ETag.\n

", + "smithy.api#httpHeader": "x-amz-rename-source-if-match" + } + }, + "SourceIfNoneMatch": { + "target": "com.amazonaws.s3#RenameSourceIfNoneMatch", + "traits": { + "smithy.api#documentation": "

Renames the object if the source exists and if its entity tag (ETag) is different than the specified\n ETag. If an asterisk (*) character is provided, the operation will fail and return a\n 412 Precondition Failed error.

", + "smithy.api#httpHeader": "x-amz-rename-source-if-none-match" + } + }, + "SourceIfModifiedSince": { + "target": "com.amazonaws.s3#RenameSourceIfModifiedSince", + "traits": { + "smithy.api#documentation": "

Renames the object if the source exists and if it has been modified since the specified time.

", + "smithy.api#httpHeader": "x-amz-rename-source-if-modified-since" + } + }, + "SourceIfUnmodifiedSince": { + "target": "com.amazonaws.s3#RenameSourceIfUnmodifiedSince", + "traits": { + "smithy.api#documentation": "

Renames the object if the source exists and hasn't been modified since the specified time.

", + "smithy.api#httpHeader": "x-amz-rename-source-if-unmodified-since" + } + }, + "ClientToken": { + "target": "com.amazonaws.s3#ClientToken", + "traits": { + "smithy.api#documentation": "

A unique string with a max of 64 ASCII characters in the ASCII range of 33 - 126.

\n \n

\n RenameObject supports idempotency using a client token. To make an idempotent API request\n using RenameObject, specify a client token in the request. You should not reuse the same\n client token for other API requests. If you retry a request that completed successfully using the same\n client token and the same parameters, the retry succeeds without performing any further actions. If\n you retry a successful request using the same client token, but one or more of the parameters are\n different, the retry fails and an IdempotentParameterMismatch error is returned.

\n
", + "smithy.api#httpHeader": "x-amz-client-token", + "smithy.api#idempotencyToken": {} + } + } }, - { - "documentation": "dual-stack error", - "expect": { - "error": "S3Express does not support Dual-stack." - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::UseDualStack": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--test-ab1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "Bucket": "mybucket--test-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": true, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#RenameSource": { + "type": "string", + "traits": { + "smithy.api#pattern": "^\\/?.+\\/.+$" + } + }, + "com.amazonaws.s3#RenameSourceIfMatch": { + "type": "string" + }, + "com.amazonaws.s3#RenameSourceIfModifiedSince": { + "type": "timestamp", + "traits": { + "smithy.api#timestampFormat": "http-date" + } + }, + "com.amazonaws.s3#RenameSourceIfNoneMatch": { + "type": "string" + }, + "com.amazonaws.s3#RenameSourceIfUnmodifiedSince": { + "type": "timestamp", + "traits": { + "smithy.api#timestampFormat": "http-date" + } + }, + "com.amazonaws.s3#ReplaceKeyPrefixWith": { + "type": "string" + }, + "com.amazonaws.s3#ReplaceKeyWith": { + "type": "string" + }, + "com.amazonaws.s3#ReplicaKmsKeyID": { + "type": "string" + }, + "com.amazonaws.s3#ReplicaModifications": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3#ReplicaModificationsStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether Amazon S3 replicates modifications on replicas.

", + "smithy.api#required": {} + } + } }, - { - "documentation": "accelerate error", - "expect": { - "error": "S3Express does not support S3 Accelerate." - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1", - "AWS::S3::Accelerate": true - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "mybucket--test-ab1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "Bucket": "mybucket--test-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": true, - "UseS3ExpressControlEndpoint": false - } + "traits": { + "smithy.api#documentation": "

A filter that you can specify for selection for modifications on replicas. Amazon S3 doesn't replicate\n replica modifications by default. In the latest version of replication configuration (when\n Filter is specified), you can specify this element and set the status to\n Enabled to replicate modifications on replicas.

\n \n

If you don't specify the Filter element, Amazon S3 assumes that the replication\n configuration is the earlier version, V1. In the earlier version, this element is not allowed.

\n
" + } + }, + "com.amazonaws.s3#ReplicaModificationsStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.s3#ReplicationConfiguration": { + "type": "structure", + "members": { + "Role": { + "target": "com.amazonaws.s3#Role", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that Amazon S3 assumes when replicating\n objects. For more information, see How to Set Up Replication in the\n Amazon S3 User Guide.

", + "smithy.api#required": {} + } + }, + "Rules": { + "target": "com.amazonaws.s3#ReplicationRules", + "traits": { + "smithy.api#documentation": "

A container for one or more replication rules. A replication configuration must have at least one\n rule and can contain a maximum of 1,000 rules.

", + "smithy.api#required": {}, + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Rule" + } + } }, - { - "documentation": "Data plane bucket format error", - "expect": { - "error": "S3Express bucket name is not a valid virtual hostable name." - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-east-1" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "my.bucket--test-ab1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-east-1", - "Bucket": "my.bucket--test-ab1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "UseS3ExpressControlEndpoint": false - } + "traits": { + "smithy.api#documentation": "

A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication\n configuration is 2 MB.

" + } + }, + "com.amazonaws.s3#ReplicationRule": { + "type": "structure", + "members": { + "ID": { + "target": "com.amazonaws.s3#ID", + "traits": { + "smithy.api#documentation": "

A unique identifier for the rule. The maximum value is 255 characters.

" + } + }, + "Priority": { + "target": "com.amazonaws.s3#Priority", + "traits": { + "smithy.api#documentation": "

The priority indicates which rule has precedence whenever two or more replication rules conflict.\n Amazon S3 will attempt to replicate objects according to all replication rules. However, if there are two or\n more rules with the same destination bucket, then objects will be replicated according to the rule with\n the highest priority. The higher the number, the higher the priority.

\n

For more information, see Replication in the Amazon S3 User Guide.

" + } + }, + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#deprecated": {}, + "smithy.api#documentation": "

An object key name prefix that identifies the object or objects to which the rule applies. The\n maximum prefix length is 1,024 characters. To include all objects in a bucket, specify an empty string.\n

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
" + } + }, + "Filter": { + "target": "com.amazonaws.s3#ReplicationRuleFilter" + }, + "Status": { + "target": "com.amazonaws.s3#ReplicationRuleStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether the rule is enabled.

", + "smithy.api#required": {} + } + }, + "SourceSelectionCriteria": { + "target": "com.amazonaws.s3#SourceSelectionCriteria", + "traits": { + "smithy.api#documentation": "

A container that describes additional filters for identifying the source objects that you want to\n replicate. You can choose to enable or disable the replication of these objects. Currently, Amazon S3\n supports only the filter that you can specify for objects created with server-side encryption using a\n customer managed key stored in Amazon Web Services Key Management Service (SSE-KMS).

" + } + }, + "ExistingObjectReplication": { + "target": "com.amazonaws.s3#ExistingObjectReplication", + "traits": { + "smithy.api#documentation": "

Optional configuration to replicate existing source bucket objects.

\n \n

This parameter is no longer supported. To replicate existing objects, see Replicating\n existing objects with S3 Batch Replication in the\n Amazon S3 User Guide.

\n
" + } + }, + "Destination": { + "target": "com.amazonaws.s3#Destination", + "traits": { + "smithy.api#documentation": "

A container for information about the replication destination and its configurations including\n enabling the S3 Replication Time Control (S3 RTC).

", + "smithy.api#required": {} + } + }, + "DeleteMarkerReplication": { + "target": "com.amazonaws.s3#DeleteMarkerReplication" + } }, - { - "documentation": "host override data plane bucket error session auth", - "expect": { - "error": "S3Express bucket name is not a valid virtual hostable name." - }, - "operationInputs": [ - { - "builtInParams": { - "AWS::Region": "us-west-2", - "SDK::Endpoint": "https://custom.com" - }, - "operationName": "GetObject", - "operationParams": { - "Bucket": "my.bucket--usw2-az1--x-s3", - "Key": "key" - } - } - ], - "params": { - "Region": "us-west-2", - "Bucket": "my.bucket--usw2-az1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Endpoint": "https://custom.com" - } + "traits": { + "smithy.api#documentation": "

Specifies which Amazon S3 objects to replicate and where to store the replicas.

" + } + }, + "com.amazonaws.s3#ReplicationRuleAndOperator": { + "type": "structure", + "members": { + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

An object key name prefix that identifies the subset of objects to which the rule applies.

" + } + }, + "Tags": { + "target": "com.amazonaws.s3#TagSet", + "traits": { + "smithy.api#documentation": "

An array of tags containing key and value pairs.

", + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Tag" + } + } }, - { - "documentation": "host override data plane bucket error", - "expect": { - "error": "S3Express bucket name is not a valid virtual hostable name." - }, - "params": { - "Region": "us-west-2", - "Bucket": "my.bucket--usw2-az1--x-s3", - "UseFIPS": false, - "UseDualStack": false, - "Accelerate": false, - "Endpoint": "https://custom.com", - "DisableS3ExpressSessionAuth": true - } - } - ], - "version": "1.0" - } - } - }, - "com.amazonaws.s3#AnalyticsAndOperator": { - "type": "structure", - "members": { - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

The prefix to use when evaluating an AND predicate: The prefix that an object must have\n to be included in the metrics results.

" - } - }, - "Tags": { - "target": "com.amazonaws.s3#TagSet", - "traits": { - "smithy.api#documentation": "

The list of tags to use when evaluating an AND predicate.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Tag" - } - } - }, - "traits": { - "smithy.api#documentation": "

A conjunction (logical AND) of predicates, which is used in evaluating a metrics filter.\n The operator must have at least two predicates in any combination, and an object must match\n all of the predicates for the filter to apply.

" - } - }, - "com.amazonaws.s3#AnalyticsConfiguration": { - "type": "structure", - "members": { - "Id": { - "target": "com.amazonaws.s3#AnalyticsId", - "traits": { - "smithy.api#documentation": "

The ID that identifies the analytics configuration.

", - "smithy.api#required": {} - } - }, - "Filter": { - "target": "com.amazonaws.s3#AnalyticsFilter", - "traits": { - "smithy.api#documentation": "

The filter used to describe a set of objects for analyses. A filter must have exactly\n one prefix, one tag, or one conjunction (AnalyticsAndOperator). If no filter is provided,\n all objects will be considered in any analysis.

" - } - }, - "StorageClassAnalysis": { - "target": "com.amazonaws.s3#StorageClassAnalysis", - "traits": { - "smithy.api#documentation": "

Contains data related to access patterns to be collected and made available to analyze\n the tradeoffs between different storage classes.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the configuration and any analyses for the analytics filter of an Amazon S3\n bucket.

" - } - }, - "com.amazonaws.s3#AnalyticsConfigurationList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#AnalyticsConfiguration" - } - }, - "com.amazonaws.s3#AnalyticsExportDestination": { - "type": "structure", - "members": { - "S3BucketDestination": { - "target": "com.amazonaws.s3#AnalyticsS3BucketDestination", - "traits": { - "smithy.api#documentation": "

A destination signifying output to an S3 bucket.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Where to publish the analytics results.

" - } - }, - "com.amazonaws.s3#AnalyticsFilter": { - "type": "union", - "members": { - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

The prefix to use when evaluating an analytics filter.

" - } - }, - "Tag": { - "target": "com.amazonaws.s3#Tag", - "traits": { - "smithy.api#documentation": "

The tag to use when evaluating an analytics filter.

" - } - }, - "And": { - "target": "com.amazonaws.s3#AnalyticsAndOperator", - "traits": { - "smithy.api#documentation": "

A conjunction (logical AND) of predicates, which is used in evaluating an analytics\n filter. The operator must have at least two predicates.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The filter used to describe a set of objects for analyses. A filter must have exactly\n one prefix, one tag, or one conjunction (AnalyticsAndOperator). If no filter is provided,\n all objects will be considered in any analysis.

" - } - }, - "com.amazonaws.s3#AnalyticsId": { - "type": "string" - }, - "com.amazonaws.s3#AnalyticsS3BucketDestination": { - "type": "structure", - "members": { - "Format": { - "target": "com.amazonaws.s3#AnalyticsS3ExportFileFormat", - "traits": { - "smithy.api#documentation": "

Specifies the file format used when exporting data to Amazon S3.

", - "smithy.api#required": {} - } - }, - "BucketAccountId": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID that owns the destination S3 bucket. If no account ID is provided, the\n owner is not validated before exporting data.

\n \n

Although this value is optional, we strongly recommend that you set it to help\n prevent problems if the destination bucket ownership changes.

\n
" - } - }, - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the bucket to which data is exported.

", - "smithy.api#required": {} - } - }, - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

The prefix to use when exporting data. The prefix is prepended to all results.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains information about where to publish the analytics results.

" - } - }, - "com.amazonaws.s3#AnalyticsS3ExportFileFormat": { - "type": "enum", - "members": { - "CSV": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CSV" - } - } - } - }, - "com.amazonaws.s3#ArchiveStatus": { - "type": "enum", - "members": { - "ARCHIVE_ACCESS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ARCHIVE_ACCESS" - } - }, - "DEEP_ARCHIVE_ACCESS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DEEP_ARCHIVE_ACCESS" - } - } - } - }, - "com.amazonaws.s3#Body": { - "type": "blob" - }, - "com.amazonaws.s3#Bucket": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket.

" - } - }, - "CreationDate": { - "target": "com.amazonaws.s3#CreationDate", - "traits": { - "smithy.api#documentation": "

Date the bucket was created. This date can change when making changes to your bucket,\n such as editing its bucket policy.

" - } - }, - "BucketRegion": { - "target": "com.amazonaws.s3#BucketRegion", - "traits": { - "smithy.api#documentation": "

\n BucketRegion indicates the Amazon Web Services region where the bucket is located. If the\n request contains at least one valid parameter, it is included in the response.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

In terms of implementation, a Bucket is a resource.

" - } - }, - "com.amazonaws.s3#BucketAccelerateStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Suspended": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Suspended" - } - } - } - }, - "com.amazonaws.s3#BucketAlreadyExists": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

The requested bucket name is not available. The bucket namespace is shared by all users\n of the system. Select a different name and try again.

", - "smithy.api#error": "client", - "smithy.api#httpError": 409 - } - }, - "com.amazonaws.s3#BucketAlreadyOwnedByYou": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

The bucket you tried to create already exists, and you own it. Amazon S3 returns this error\n in all Amazon Web Services Regions except in the North Virginia Region. For legacy compatibility, if you\n re-create an existing bucket that you already own in the North Virginia Region, Amazon S3\n returns 200 OK and resets the bucket access control lists (ACLs).

", - "smithy.api#error": "client", - "smithy.api#httpError": 409 - } - }, - "com.amazonaws.s3#BucketCannedACL": { - "type": "enum", - "members": { - "private": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "private" - } - }, - "public_read": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "public-read" - } - }, - "public_read_write": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "public-read-write" - } - }, - "authenticated_read": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "authenticated-read" - } - } - } - }, - "com.amazonaws.s3#BucketInfo": { - "type": "structure", - "members": { - "DataRedundancy": { - "target": "com.amazonaws.s3#DataRedundancy", - "traits": { - "smithy.api#documentation": "

The number of Zone (Availability Zone or Local Zone) that's used for redundancy for the bucket.

" - } - }, - "Type": { - "target": "com.amazonaws.s3#BucketType", - "traits": { - "smithy.api#documentation": "

The type of bucket.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the information about the bucket that will be created. For more information\n about directory buckets, see Directory buckets in the Amazon S3 User Guide.

\n \n

This functionality is only supported by directory buckets.

\n
" - } - }, - "com.amazonaws.s3#BucketKeyEnabled": { - "type": "boolean" - }, - "com.amazonaws.s3#BucketLifecycleConfiguration": { - "type": "structure", - "members": { - "Rules": { - "target": "com.amazonaws.s3#LifecycleRules", - "traits": { - "smithy.api#documentation": "

A lifecycle rule for individual objects in an Amazon S3 bucket.

", - "smithy.api#required": {}, - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Rule" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the lifecycle configuration for objects in an Amazon S3 bucket. For more\n information, see Object Lifecycle Management\n in the Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3#BucketLocationConstraint": { - "type": "enum", - "members": { - "af_south_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "af-south-1" - } - }, - "ap_east_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ap-east-1" - } - }, - "ap_northeast_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ap-northeast-1" - } - }, - "ap_northeast_2": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ap-northeast-2" - } - }, - "ap_northeast_3": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ap-northeast-3" - } - }, - "ap_south_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ap-south-1" - } - }, - "ap_south_2": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ap-south-2" - } - }, - "ap_southeast_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ap-southeast-1" - } - }, - "ap_southeast_2": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ap-southeast-2" - } - }, - "ap_southeast_3": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ap-southeast-3" - } - }, - "ca_central_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ca-central-1" - } - }, - "cn_north_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "cn-north-1" - } - }, - "cn_northwest_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "cn-northwest-1" - } - }, - "EU": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "EU" - } - }, - "eu_central_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "eu-central-1" - } - }, - "eu_north_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "eu-north-1" - } - }, - "eu_south_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "eu-south-1" - } - }, - "eu_south_2": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "eu-south-2" - } - }, - "eu_west_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "eu-west-1" - } - }, - "eu_west_2": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "eu-west-2" - } - }, - "eu_west_3": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "eu-west-3" - } - }, - "me_south_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "me-south-1" - } - }, - "sa_east_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "sa-east-1" - } - }, - "us_east_2": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "us-east-2" - } - }, - "us_gov_east_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "us-gov-east-1" - } - }, - "us_gov_west_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "us-gov-west-1" - } - }, - "us_west_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "us-west-1" - } - }, - "us_west_2": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "us-west-2" - } - } - } - }, - "com.amazonaws.s3#BucketLocationName": { - "type": "string" - }, - "com.amazonaws.s3#BucketLoggingStatus": { - "type": "structure", - "members": { - "LoggingEnabled": { - "target": "com.amazonaws.s3#LoggingEnabled" - } - }, - "traits": { - "smithy.api#documentation": "

Container for logging status information.

" - } - }, - "com.amazonaws.s3#BucketLogsPermission": { - "type": "enum", - "members": { - "FULL_CONTROL": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "FULL_CONTROL" - } - }, - "READ": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "READ" - } - }, - "WRITE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "WRITE" - } - } - } - }, - "com.amazonaws.s3#BucketName": { - "type": "string" - }, - "com.amazonaws.s3#BucketRegion": { - "type": "string" - }, - "com.amazonaws.s3#BucketType": { - "type": "enum", - "members": { - "Directory": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Directory" - } - } - } - }, - "com.amazonaws.s3#BucketVersioningStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Suspended": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Suspended" - } - } - } - }, - "com.amazonaws.s3#Buckets": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#Bucket", - "traits": { - "smithy.api#xmlName": "Bucket" - } - } - }, - "com.amazonaws.s3#BypassGovernanceRetention": { - "type": "boolean" - }, - "com.amazonaws.s3#BytesProcessed": { - "type": "long" - }, - "com.amazonaws.s3#BytesReturned": { - "type": "long" - }, - "com.amazonaws.s3#BytesScanned": { - "type": "long" - }, - "com.amazonaws.s3#CORSConfiguration": { - "type": "structure", - "members": { - "CORSRules": { - "target": "com.amazonaws.s3#CORSRules", - "traits": { - "smithy.api#documentation": "

A set of origins and methods (cross-origin access that you want to allow). You can add\n up to 100 rules to the configuration.

", - "smithy.api#required": {}, - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "CORSRule" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the cross-origin access configuration for objects in an Amazon S3 bucket. For more\n information, see Enabling\n Cross-Origin Resource Sharing in the\n Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3#CORSRule": { - "type": "structure", - "members": { - "ID": { - "target": "com.amazonaws.s3#ID", - "traits": { - "smithy.api#documentation": "

Unique identifier for the rule. The value cannot be longer than 255 characters.

" - } - }, - "AllowedHeaders": { - "target": "com.amazonaws.s3#AllowedHeaders", - "traits": { - "smithy.api#documentation": "

Headers that are specified in the Access-Control-Request-Headers header.\n These headers are allowed in a preflight OPTIONS request. In response to any preflight\n OPTIONS request, Amazon S3 returns any requested headers that are allowed.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "AllowedHeader" - } - }, - "AllowedMethods": { - "target": "com.amazonaws.s3#AllowedMethods", - "traits": { - "smithy.api#documentation": "

An HTTP method that you allow the origin to execute. Valid values are GET,\n PUT, HEAD, POST, and DELETE.

", - "smithy.api#required": {}, - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "AllowedMethod" - } - }, - "AllowedOrigins": { - "target": "com.amazonaws.s3#AllowedOrigins", - "traits": { - "smithy.api#documentation": "

One or more origins you want customers to be able to access the bucket from.

", - "smithy.api#required": {}, - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "AllowedOrigin" - } - }, - "ExposeHeaders": { - "target": "com.amazonaws.s3#ExposeHeaders", - "traits": { - "smithy.api#documentation": "

One or more headers in the response that you want customers to be able to access from\n their applications (for example, from a JavaScript XMLHttpRequest\n object).

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "ExposeHeader" - } - }, - "MaxAgeSeconds": { - "target": "com.amazonaws.s3#MaxAgeSeconds", - "traits": { - "smithy.api#documentation": "

The time in seconds that your browser is to cache the preflight response for the\n specified resource.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies a cross-origin access rule for an Amazon S3 bucket.

" - } - }, - "com.amazonaws.s3#CORSRules": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#CORSRule" - } - }, - "com.amazonaws.s3#CSVInput": { - "type": "structure", - "members": { - "FileHeaderInfo": { - "target": "com.amazonaws.s3#FileHeaderInfo", - "traits": { - "smithy.api#documentation": "

Describes the first line of input. Valid values are:

\n
    \n
  • \n

    \n NONE: First line is not a header.

    \n
  • \n
  • \n

    \n IGNORE: First line is a header, but you can't use the header values\n to indicate the column in an expression. You can use column position (such as _1, _2,\n …) to indicate the column (SELECT s._1 FROM OBJECT s).

    \n
  • \n
  • \n

    \n Use: First line is a header, and you can use the header value to\n identify a column in an expression (SELECT \"name\" FROM OBJECT).

    \n
  • \n
" - } - }, - "Comments": { - "target": "com.amazonaws.s3#Comments", - "traits": { - "smithy.api#documentation": "

A single character used to indicate that a row should be ignored when the character is\n present at the start of that row. You can specify any character to indicate a comment line.\n The default character is #.

\n

Default: #\n

" - } - }, - "QuoteEscapeCharacter": { - "target": "com.amazonaws.s3#QuoteEscapeCharacter", - "traits": { - "smithy.api#documentation": "

A single character used for escaping the quotation mark character inside an already\n escaped value. For example, the value \"\"\" a , b \"\"\" is parsed as \" a , b\n \".

" - } - }, - "RecordDelimiter": { - "target": "com.amazonaws.s3#RecordDelimiter", - "traits": { - "smithy.api#documentation": "

A single character used to separate individual records in the input. Instead of the\n default value, you can specify an arbitrary delimiter.

" - } - }, - "FieldDelimiter": { - "target": "com.amazonaws.s3#FieldDelimiter", - "traits": { - "smithy.api#documentation": "

A single character used to separate individual fields in a record. You can specify an\n arbitrary delimiter.

" - } - }, - "QuoteCharacter": { - "target": "com.amazonaws.s3#QuoteCharacter", - "traits": { - "smithy.api#documentation": "

A single character used for escaping when the field delimiter is part of the value. For\n example, if the value is a, b, Amazon S3 wraps this field value in quotation marks,\n as follows: \" a , b \".

\n

Type: String

\n

Default: \"\n

\n

Ancestors: CSV\n

" - } - }, - "AllowQuotedRecordDelimiter": { - "target": "com.amazonaws.s3#AllowQuotedRecordDelimiter", - "traits": { - "smithy.api#documentation": "

Specifies that CSV field values may contain quoted record delimiters and such records\n should be allowed. Default value is FALSE. Setting this value to TRUE may lower\n performance.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes how an uncompressed comma-separated values (CSV)-formatted input object is\n formatted.

" - } - }, - "com.amazonaws.s3#CSVOutput": { - "type": "structure", - "members": { - "QuoteFields": { - "target": "com.amazonaws.s3#QuoteFields", - "traits": { - "smithy.api#documentation": "

Indicates whether to use quotation marks around output fields.

\n
    \n
  • \n

    \n ALWAYS: Always use quotation marks for output fields.

    \n
  • \n
  • \n

    \n ASNEEDED: Use quotation marks for output fields when needed.

    \n
  • \n
" - } - }, - "QuoteEscapeCharacter": { - "target": "com.amazonaws.s3#QuoteEscapeCharacter", - "traits": { - "smithy.api#documentation": "

The single character used for escaping the quote character inside an already escaped\n value.

" - } - }, - "RecordDelimiter": { - "target": "com.amazonaws.s3#RecordDelimiter", - "traits": { - "smithy.api#documentation": "

A single character used to separate individual records in the output. Instead of the\n default value, you can specify an arbitrary delimiter.

" - } - }, - "FieldDelimiter": { - "target": "com.amazonaws.s3#FieldDelimiter", - "traits": { - "smithy.api#documentation": "

The value used to separate individual fields in a record. You can specify an arbitrary\n delimiter.

" - } - }, - "QuoteCharacter": { - "target": "com.amazonaws.s3#QuoteCharacter", - "traits": { - "smithy.api#documentation": "

A single character used for escaping when the field delimiter is part of the value. For\n example, if the value is a, b, Amazon S3 wraps this field value in quotation marks,\n as follows: \" a , b \".

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes how uncompressed comma-separated values (CSV)-formatted results are\n formatted.

" - } - }, - "com.amazonaws.s3#CacheControl": { - "type": "string" - }, - "com.amazonaws.s3#Checksum": { - "type": "structure", - "members": { - "ChecksumCRC32": { - "target": "com.amazonaws.s3#ChecksumCRC32", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32 checksum of the object. This checksum is only be present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumCRC32C": { - "target": "com.amazonaws.s3#ChecksumCRC32C", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32C checksum of the object. This checksum is only present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumCRC64NVME": { - "target": "com.amazonaws.s3#ChecksumCRC64NVME", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC-64NVME checksum of the object. This checksum is present\n if the object was uploaded with the CRC-64NVME checksum algorithm, or if the object was uploaded without a\n checksum (and Amazon S3 added the default checksum, CRC-64NVME, to the uploaded object). For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumSHA1": { - "target": "com.amazonaws.s3#ChecksumSHA1", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA-1 digest of the object. This will only be present if the object was uploaded\n with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumSHA256": { - "target": "com.amazonaws.s3#ChecksumSHA256", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA-256 digest of the object. This will only be present if the object was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumType": { - "target": "com.amazonaws.s3#ChecksumType", - "traits": { - "smithy.api#documentation": "

The checksum type that is used to calculate the object’s\n checksum value. For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains all the possible checksum or digest values for an object.

" - } - }, - "com.amazonaws.s3#ChecksumAlgorithm": { - "type": "enum", - "members": { - "CRC32": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CRC32" - } - }, - "CRC32C": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CRC32C" - } - }, - "SHA1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "SHA1" - } - }, - "SHA256": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "SHA256" - } - }, - "CRC64NVME": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CRC64NVME" - } - } - } - }, - "com.amazonaws.s3#ChecksumAlgorithmList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#ChecksumAlgorithm" - } - }, - "com.amazonaws.s3#ChecksumCRC32": { - "type": "string" - }, - "com.amazonaws.s3#ChecksumCRC32C": { - "type": "string" - }, - "com.amazonaws.s3#ChecksumCRC64NVME": { - "type": "string" - }, - "com.amazonaws.s3#ChecksumMode": { - "type": "enum", - "members": { - "ENABLED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ENABLED" - } - } - } - }, - "com.amazonaws.s3#ChecksumSHA1": { - "type": "string" - }, - "com.amazonaws.s3#ChecksumSHA256": { - "type": "string" - }, - "com.amazonaws.s3#ChecksumType": { - "type": "enum", - "members": { - "COMPOSITE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "COMPOSITE" - } - }, - "FULL_OBJECT": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "FULL_OBJECT" - } - } - } - }, - "com.amazonaws.s3#Code": { - "type": "string" - }, - "com.amazonaws.s3#Comments": { - "type": "string" - }, - "com.amazonaws.s3#CommonPrefix": { - "type": "structure", - "members": { - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

Container for the specified common prefix.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for all (if there are any) keys between Prefix and the next occurrence of the\n string specified by a delimiter. CommonPrefixes lists keys that act like subdirectories in\n the directory specified by Prefix. For example, if the prefix is notes/ and the delimiter\n is a slash (/) as in notes/summer/july, the common prefix is notes/summer/.

" - } - }, - "com.amazonaws.s3#CommonPrefixList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#CommonPrefix" - } - }, - "com.amazonaws.s3#CompleteMultipartUpload": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#CompleteMultipartUploadRequest" - }, - "output": { - "target": "com.amazonaws.s3#CompleteMultipartUploadOutput" - }, - "traits": { - "smithy.api#documentation": "

Completes a multipart upload by assembling previously uploaded parts.

\n

You first initiate the multipart upload and then upload all parts using the UploadPart\n operation or the UploadPartCopy operation.\n After successfully uploading all relevant parts of an upload, you call this\n CompleteMultipartUpload operation to complete the upload. Upon receiving\n this request, Amazon S3 concatenates all the parts in ascending order by part number to create a\n new object. In the CompleteMultipartUpload request, you must provide the parts list and\n ensure that the parts list is complete. The CompleteMultipartUpload API operation\n concatenates the parts that you provide in the list. For each part in the list, you must\n provide the PartNumber value and the ETag value that are returned\n after that part was uploaded.

\n

The processing of a CompleteMultipartUpload request could take several minutes to\n finalize. After Amazon S3 begins processing the request, it sends an HTTP response header that\n specifies a 200 OK response. While processing is in progress, Amazon S3\n periodically sends white space characters to keep the connection from timing out. A request\n could fail after the initial 200 OK response has been sent. This means that a\n 200 OK response can contain either a success or an error. The error\n response might be embedded in the 200 OK response. If you call this API\n operation directly, make sure to design your application to parse the contents of the\n response and handle it appropriately. If you use Amazon Web Services SDKs, SDKs handle this condition.\n The SDKs detect the embedded error and apply error handling per your configuration settings\n (including automatically retrying the request as appropriate). If the condition persists,\n the SDKs throw an exception (or, for the SDKs that don't use exceptions, they return an\n error).

\n

Note that if CompleteMultipartUpload fails, applications should be prepared\n to retry any failed requests (including 500 error responses). For more information, see\n Amazon S3 Error\n Best Practices.

\n \n

You can't use Content-Type: application/x-www-form-urlencoded for the\n CompleteMultipartUpload requests. Also, if you don't provide a Content-Type\n header, CompleteMultipartUpload can still return a 200 OK\n response.

\n
\n

For more information about multipart uploads, see Uploading Objects Using Multipart\n Upload in the Amazon S3 User Guide.

\n \n

\n Directory buckets -\n For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - For\n information about permissions required to use the multipart upload API, see\n Multipart Upload and\n Permissions in the Amazon S3 User Guide.

    \n

    If you provide an additional checksum\n value in your MultipartUpload requests and the\n object is encrypted with Key Management Service, you must have permission to use the\n kms:Decrypt action for the\n CompleteMultipartUpload request to succeed.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n

    If the object is encrypted with SSE-KMS, you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions\n in IAM identity-based policies and KMS key policies for the KMS\n key.

    \n
  • \n
\n
\n
Special errors
\n
\n
    \n
  • \n

    Error Code: EntityTooSmall\n

    \n
      \n
    • \n

      Description: Your proposed upload is smaller than the minimum\n allowed object size. Each part must be at least 5 MB in size, except\n the last part.

      \n
    • \n
    • \n

      HTTP Status Code: 400 Bad Request

      \n
    • \n
    \n
  • \n
  • \n

    Error Code: InvalidPart\n

    \n
      \n
    • \n

      Description: One or more of the specified parts could not be found.\n The part might not have been uploaded, or the specified ETag might not\n have matched the uploaded part's ETag.

      \n
    • \n
    • \n

      HTTP Status Code: 400 Bad Request

      \n
    • \n
    \n
  • \n
  • \n

    Error Code: InvalidPartOrder\n

    \n
      \n
    • \n

      Description: The list of parts was not in ascending order. The\n parts list must be specified in order by part number.

      \n
    • \n
    • \n

      HTTP Status Code: 400 Bad Request

      \n
    • \n
    \n
  • \n
  • \n

    Error Code: NoSuchUpload\n

    \n
      \n
    • \n

      Description: The specified multipart upload does not exist. The\n upload ID might be invalid, or the multipart upload might have been\n aborted or completed.

      \n
    • \n
    • \n

      HTTP Status Code: 404 Not Found

      \n
    • \n
    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to CompleteMultipartUpload:

\n ", - "smithy.api#examples": [ - { - "title": "To complete multipart upload", - "documentation": "The following example completes a multipart upload.", - "input": { - "Bucket": "examplebucket", - "Key": "bigobject", - "MultipartUpload": { - "Parts": [ - { - "PartNumber": 1, - "ETag": "\"d8c2eafd90c266e19ab9dcacc479f8af\"" - }, - { - "PartNumber": 2, - "ETag": "\"d8c2eafd90c266e19ab9dcacc479f8af\"" - } - ] - }, - "UploadId": "7YPBOJuoFiQ9cz4P3Pe6FIZwO4f7wN93uHsNBEw97pl5eNwzExg0LAT2dUN91cOmrEQHDsP3WA60CEg--" + "traits": { + "smithy.api#documentation": "

A container for specifying rule filters. The filters determine the subset of objects to which the\n rule applies. This element is required only if you specify more than one filter.

\n

For example:

\n
    \n
  • \n

    If you specify both a Prefix and a Tag filter, wrap these filters in\n an And tag.

    \n
  • \n
  • \n

    If you specify a filter based on multiple tags, wrap the Tag elements in an\n And tag.

    \n
  • \n
" + } + }, + "com.amazonaws.s3#ReplicationRuleFilter": { + "type": "structure", + "members": { + "Prefix": { + "target": "com.amazonaws.s3#Prefix", + "traits": { + "smithy.api#documentation": "

An object key name prefix that identifies the subset of objects to which the rule applies.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
" + } + }, + "Tag": { + "target": "com.amazonaws.s3#Tag", + "traits": { + "smithy.api#documentation": "

A container for specifying a tag key and value.

\n

The rule applies only to objects that have the tag in their tag set.

" + } + }, + "And": { + "target": "com.amazonaws.s3#ReplicationRuleAndOperator", + "traits": { + "smithy.api#documentation": "

A container for specifying rule filters. The filters determine the subset of objects to which the\n rule applies. This element is required only if you specify more than one filter. For example:

\n
    \n
  • \n

    If you specify both a Prefix and a Tag filter, wrap these filters in\n an And tag.

    \n
  • \n
  • \n

    If you specify a filter based on multiple tags, wrap the Tag elements in an\n And tag.

    \n
  • \n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

A filter that identifies the subset of objects to which the replication rule applies. A\n Filter must specify exactly one Prefix, Tag, or an\n And child element.

" + } + }, + "com.amazonaws.s3#ReplicationRuleStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.s3#ReplicationRules": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#ReplicationRule" + } + }, + "com.amazonaws.s3#ReplicationStatus": { + "type": "enum", + "members": { + "COMPLETE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLETE" + } + }, + "PENDING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PENDING" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" + } + }, + "REPLICA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REPLICA" + } + }, + "COMPLETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLETED" + } + } + } + }, + "com.amazonaws.s3#ReplicationTime": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3#ReplicationTimeStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether the replication time is enabled.

", + "smithy.api#required": {} + } + }, + "Time": { + "target": "com.amazonaws.s3#ReplicationTimeValue", + "traits": { + "smithy.api#documentation": "

A container specifying the time by which replication should be complete for all objects and\n operations on objects.

", + "smithy.api#required": {} + } + } }, - "output": { - "ETag": "\"4d9031c7644d8081c2829f4ea23c55f7-2\"", - "Bucket": "acexamplebucket", - "Location": "https://examplebucket.s3..amazonaws.com/bigobject", - "Key": "bigobject" - } - } - ], - "smithy.api#http": { - "method": "POST", - "uri": "/{Bucket}/{Key+}", - "code": 200 - } - } - }, - "com.amazonaws.s3#CompleteMultipartUploadOutput": { - "type": "structure", - "members": { - "Location": { - "target": "com.amazonaws.s3#Location", - "traits": { - "smithy.api#documentation": "

The URI that identifies the newly created object.

" - } - }, - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket that contains the newly created object. Does not return the access point\n ARN or access point alias if used.

\n \n

Access points are not supported by directory buckets.

\n
" - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The object key of the newly created object.

" - } - }, - "Expiration": { - "target": "com.amazonaws.s3#Expiration", - "traits": { - "smithy.api#documentation": "

If the object expiration is configured, this will contain the expiration date\n (expiry-date) and rule ID (rule-id). The value of\n rule-id is URL-encoded.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-expiration" - } - }, - "ETag": { - "target": "com.amazonaws.s3#ETag", - "traits": { - "smithy.api#documentation": "

Entity tag that identifies the newly created object's data. Objects with different\n object data will have different entity tags. The entity tag is an opaque string. The entity\n tag may or may not be an MD5 digest of the object data. If the entity tag is not an MD5\n digest of the object data, it will contain one or more nonhexadecimal characters and/or\n will consist of less than 32 or more than 32 hexadecimal digits. For more information about\n how the entity tag is calculated, see Checking object\n integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumCRC32": { - "target": "com.amazonaws.s3#ChecksumCRC32", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32 checksum of the object. This checksum is only be present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumCRC32C": { - "target": "com.amazonaws.s3#ChecksumCRC32C", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32C checksum of the object. This checksum is only present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumCRC64NVME": { - "target": "com.amazonaws.s3#ChecksumCRC64NVME", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is\n the same data that was originally sent. This header specifies the Base64 encoded, 64-bit\n CRC-64NVME checksum of the object. The CRC-64NVME checksum is\n always a full object checksum. For more information, see Checking object integrity\n in the Amazon S3 User Guide.

" - } - }, - "ChecksumSHA1": { - "target": "com.amazonaws.s3#ChecksumSHA1", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA-1 digest of the object. This will only be present if the object was uploaded\n with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumSHA256": { - "target": "com.amazonaws.s3#ChecksumSHA256", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA-256 digest of the object. This will only be present if the object was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumType": { - "target": "com.amazonaws.s3#ChecksumType", - "traits": { - "smithy.api#documentation": "

The checksum type, which determines how part-level checksums are combined to create an\n object-level checksum for multipart objects. You can use this header as a data integrity\n check to verify that the checksum type that is received is the same checksum type that was\n specified during the CreateMultipartUpload request. For more information, see\n Checking object integrity\n in the Amazon S3 User Guide.

" - } - }, - "ServerSideEncryption": { - "target": "com.amazonaws.s3#ServerSideEncryption", - "traits": { - "smithy.api#documentation": "

The server-side encryption algorithm used when storing this object in Amazon S3 (for example,\n AES256, aws:kms).

", - "smithy.api#httpHeader": "x-amz-server-side-encryption" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

Version ID of the newly created object, in case the bucket has versioning turned\n on.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-version-id" - } - }, - "SSEKMSKeyId": { - "target": "com.amazonaws.s3#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

If present, indicates the ID of the KMS key that was used for object encryption.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" - } - }, - "BucketKeyEnabled": { - "target": "com.amazonaws.s3#BucketKeyEnabled", - "traits": { - "smithy.api#documentation": "

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption\n with Key Management Service (KMS) keys (SSE-KMS).

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "CompleteMultipartUploadResult" - } - }, - "com.amazonaws.s3#CompleteMultipartUploadRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

Name of the bucket to which the multipart upload was initiated.

\n

\n Directory buckets -\n When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Object key for which the multipart upload was initiated.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Key" - } - } - }, - "MultipartUpload": { - "target": "com.amazonaws.s3#CompletedMultipartUpload", - "traits": { - "smithy.api#documentation": "

The container for the multipart upload request information.

", - "smithy.api#httpPayload": {}, - "smithy.api#xmlName": "CompleteMultipartUpload" - } - }, - "UploadId": { - "target": "com.amazonaws.s3#MultipartUploadId", - "traits": { - "smithy.api#documentation": "

ID for the initiated multipart upload.

", - "smithy.api#httpQuery": "uploadId", - "smithy.api#required": {} - } - }, - "ChecksumCRC32": { - "target": "com.amazonaws.s3#ChecksumCRC32", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 32-bit CRC-32 checksum of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc32" - } - }, - "ChecksumCRC32C": { - "target": "com.amazonaws.s3#ChecksumCRC32C", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 32-bit CRC-32C checksum of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc32c" - } - }, - "ChecksumCRC64NVME": { - "target": "com.amazonaws.s3#ChecksumCRC64NVME", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is\n the same data that was originally sent. This header specifies the Base64 encoded, 64-bit\n CRC-64NVME checksum of the object. The CRC-64NVME checksum is\n always a full object checksum. For more information, see Checking object integrity\n in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc64nvme" - } - }, - "ChecksumSHA1": { - "target": "com.amazonaws.s3#ChecksumSHA1", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 160-bit SHA-1 digest of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-sha1" - } - }, - "ChecksumSHA256": { - "target": "com.amazonaws.s3#ChecksumSHA256", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 256-bit SHA-256 digest of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-sha256" - } - }, - "ChecksumType": { - "target": "com.amazonaws.s3#ChecksumType", - "traits": { - "smithy.api#documentation": "

This header specifies the checksum type of the object, which determines how part-level\n checksums are combined to create an object-level checksum for multipart objects. You can\n use this header as a data integrity check to verify that the checksum type that is received\n is the same checksum that was specified. If the checksum type doesn’t match the checksum\n type that was specified for the object during the CreateMultipartUpload\n request, it’ll result in a BadDigest error. For more information, see Checking\n object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-type" - } - }, - "MpuObjectSize": { - "target": "com.amazonaws.s3#MpuObjectSize", - "traits": { - "smithy.api#documentation": "

The expected total object size of the multipart upload request. If there’s a mismatch\n between the specified object size value and the actual object size value, it results in an\n HTTP 400 InvalidRequest error.

", - "smithy.api#httpHeader": "x-amz-mp-object-size" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "IfMatch": { - "target": "com.amazonaws.s3#IfMatch", - "traits": { - "smithy.api#documentation": "

Uploads the object only if the ETag (entity tag) value provided during the WRITE\n operation matches the ETag of the object in S3. If the ETag values do not match, the\n operation returns a 412 Precondition Failed error.

\n

If a conflicting operation occurs during the upload S3 returns a 409\n ConditionalRequestConflict response. On a 409 failure you should fetch the object's ETag, re-initiate the\n multipart upload with CreateMultipartUpload, and re-upload each part.

\n

Expects the ETag value as a string.

\n

For more information about conditional requests, see RFC 7232, or Conditional requests in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "If-Match" - } - }, - "IfNoneMatch": { - "target": "com.amazonaws.s3#IfNoneMatch", - "traits": { - "smithy.api#documentation": "

Uploads the object only if the object key name does not already exist in the bucket\n specified. Otherwise, Amazon S3 returns a 412 Precondition Failed error.

\n

If a conflicting operation occurs during the upload S3 returns a 409\n ConditionalRequestConflict response. On a 409 failure you should re-initiate the\n multipart upload with CreateMultipartUpload and re-upload each part.

\n

Expects the '*' (asterisk) character.

\n

For more information about conditional requests, see RFC 7232, or Conditional requests in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "If-None-Match" - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is\n required only when the object was created using a checksum algorithm or if your bucket\n policy requires the use of SSE-C. For more information, see Protecting data using SSE-C keys in the Amazon S3 User\n Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKey": { - "target": "com.amazonaws.s3#SSECustomerKey", - "traits": { - "smithy.api#documentation": "

The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. \n For more information, see\n Protecting data using SSE-C keys in the\n Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum \n algorithm. For more information,\n see Protecting data using SSE-C keys in the\n Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#CompletedMultipartUpload": { - "type": "structure", - "members": { - "Parts": { - "target": "com.amazonaws.s3#CompletedPartList", - "traits": { - "smithy.api#documentation": "

Array of CompletedPart data types.

\n

If you do not supply a valid Part with your request, the service sends back\n an HTTP 400 response.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Part" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container for the completed multipart upload details.

" - } - }, - "com.amazonaws.s3#CompletedPart": { - "type": "structure", - "members": { - "ETag": { - "target": "com.amazonaws.s3#ETag", - "traits": { - "smithy.api#documentation": "

Entity tag returned when the part was uploaded.

" - } - }, - "ChecksumCRC32": { - "target": "com.amazonaws.s3#ChecksumCRC32", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32 checksum of the part. This checksum is present\n if the multipart upload request was created with the CRC-32 checksum algorithm. For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumCRC32C": { - "target": "com.amazonaws.s3#ChecksumCRC32C", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32C checksum of the part. This checksum is present\n if the multipart upload request was created with the CRC-32C checksum algorithm. For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumCRC64NVME": { - "target": "com.amazonaws.s3#ChecksumCRC64NVME", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC-64NVME checksum of the part. This checksum is present\n if the multipart upload request was created with the CRC-64NVME checksum algorithm to the uploaded object). For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumSHA1": { - "target": "com.amazonaws.s3#ChecksumSHA1", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA-1 checksum of the part. This checksum is present\n if the multipart upload request was created with the SHA-1 checksum algorithm. For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumSHA256": { - "target": "com.amazonaws.s3#ChecksumSHA256", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA-256 checksum of the part. This checksum is present\n if the multipart upload request was created with the SHA-256 checksum algorithm. For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "PartNumber": { - "target": "com.amazonaws.s3#PartNumber", - "traits": { - "smithy.api#documentation": "

Part number that identifies the part. This is a positive integer between 1 and\n 10,000.

\n \n
    \n
  • \n

    \n General purpose buckets - In\n CompleteMultipartUpload, when a additional checksum (including\n x-amz-checksum-crc32, x-amz-checksum-crc32c,\n x-amz-checksum-sha1, or x-amz-checksum-sha256) is\n applied to each part, the PartNumber must start at 1 and the part\n numbers must be consecutive. Otherwise, Amazon S3 generates an HTTP 400 Bad\n Request status code and an InvalidPartOrder error\n code.

    \n
  • \n
  • \n

    \n Directory buckets - In\n CompleteMultipartUpload, the PartNumber must start at\n 1 and the part numbers must be consecutive.

    \n
  • \n
\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

Details of the parts that were uploaded.

" - } - }, - "com.amazonaws.s3#CompletedPartList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#CompletedPart" - } - }, - "com.amazonaws.s3#CompressionType": { - "type": "enum", - "members": { - "NONE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "NONE" - } - }, - "GZIP": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GZIP" - } - }, - "BZIP2": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "BZIP2" - } - } - } - }, - "com.amazonaws.s3#Condition": { - "type": "structure", - "members": { - "HttpErrorCodeReturnedEquals": { - "target": "com.amazonaws.s3#HttpErrorCodeReturnedEquals", - "traits": { - "smithy.api#documentation": "

The HTTP error code when the redirect is applied. In the event of an error, if the error\n code equals this value, then the specified redirect is applied. Required when parent\n element Condition is specified and sibling KeyPrefixEquals is not\n specified. If both are specified, then both must be true for the redirect to be\n applied.

" - } - }, - "KeyPrefixEquals": { - "target": "com.amazonaws.s3#KeyPrefixEquals", - "traits": { - "smithy.api#documentation": "

The object key name prefix when the redirect is applied. For example, to redirect\n requests for ExamplePage.html, the key prefix will be\n ExamplePage.html. To redirect request for all pages with the prefix\n docs/, the key prefix will be /docs, which identifies all\n objects in the docs/ folder. Required when the parent element\n Condition is specified and sibling HttpErrorCodeReturnedEquals\n is not specified. If both conditions are specified, both must be true for the redirect to\n be applied.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for describing a condition that must be met for the specified redirect to\n apply. For example, 1. If request is for pages in the /docs folder, redirect\n to the /documents folder. 2. If request results in HTTP error 4xx, redirect\n request to another host where you might process the error.

" - } - }, - "com.amazonaws.s3#ConfirmRemoveSelfBucketAccess": { - "type": "boolean" - }, - "com.amazonaws.s3#ContentDisposition": { - "type": "string" - }, - "com.amazonaws.s3#ContentEncoding": { - "type": "string" - }, - "com.amazonaws.s3#ContentLanguage": { - "type": "string" - }, - "com.amazonaws.s3#ContentLength": { - "type": "long" - }, - "com.amazonaws.s3#ContentMD5": { - "type": "string" - }, - "com.amazonaws.s3#ContentRange": { - "type": "string" - }, - "com.amazonaws.s3#ContentType": { - "type": "string" - }, - "com.amazonaws.s3#ContinuationEvent": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

" - } - }, - "com.amazonaws.s3#CopyObject": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#CopyObjectRequest" - }, - "output": { - "target": "com.amazonaws.s3#CopyObjectOutput" - }, - "errors": [ - { - "target": "com.amazonaws.s3#ObjectNotInActiveTierError" - } - ], - "traits": { - "smithy.api#documentation": "

Creates a copy of an object that is already stored in Amazon S3.

\n \n

You can store individual objects of up to 5 TB in Amazon S3. You create a copy of your\n object up to 5 GB in size in a single atomic action using this API. However, to copy an\n object greater than 5 GB, you must use the multipart upload Upload Part - Copy\n (UploadPartCopy) API. For more information, see Copy Object Using the\n REST Multipart Upload API.

\n
\n

You can copy individual objects between general purpose buckets, between directory buckets,\n and between general purpose buckets and directory buckets.

\n \n
    \n
  • \n

    Amazon S3 supports copy operations using Multi-Region Access Points only as a\n destination when using the Multi-Region Access Point ARN.

    \n
  • \n
  • \n

    \n Directory buckets -\n For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

    \n
  • \n
  • \n

    VPC endpoints don't support cross-Region requests (including copies). If you're\n using VPC endpoints, your source and destination buckets should be in the same\n Amazon Web Services Region as your VPC endpoint.

    \n
  • \n
\n
\n

Both the Region that you want to copy the object from and the Region that you want to\n copy the object to must be enabled for your account. For more information about how to\n enable a Region for your account, see Enable or disable a Region for standalone accounts in the Amazon Web Services\n Account Management Guide.

\n \n

Amazon S3 transfer acceleration does not support cross-Region copies. If you request a\n cross-Region copy using a transfer acceleration endpoint, you get a 400 Bad\n Request error. For more information, see Transfer\n Acceleration.

\n
\n
\n
Authentication and authorization
\n
\n

All CopyObject requests must be authenticated and signed by using\n IAM credentials (access key ID and secret access key for the IAM identities).\n All headers with the x-amz- prefix, including\n x-amz-copy-source, must be signed. For more information, see\n REST Authentication.

\n

\n Directory buckets - You must use the\n IAM credentials to authenticate and authorize your access to the\n CopyObject API operation, instead of using the temporary security\n credentials through the CreateSession API operation.

\n

Amazon Web Services CLI or SDKs handles authentication and authorization on your\n behalf.

\n
\n
Permissions
\n
\n

You must have read access to the source object and\n write access to the destination bucket.

\n
    \n
  • \n

    \n General purpose bucket permissions - You\n must have permissions in an IAM policy based on the source and destination\n bucket types in a CopyObject operation.

    \n
      \n
    • \n

      If the source object is in a general purpose bucket, you must have\n \n s3:GetObject\n \n permission to read the source object that is being copied.

      \n
    • \n
    • \n

      If the destination bucket is a general purpose bucket, you must have\n \n s3:PutObject\n \n permission to write the object copy to the destination bucket.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions -\n You must have permissions in a bucket policy or an IAM identity-based policy based on the\n source and destination bucket types in a CopyObject\n operation.

    \n
      \n
    • \n

      If the source object that you want to copy is in a\n directory bucket, you must have the \n s3express:CreateSession\n permission in\n the Action element of a policy to read the object. By\n default, the session is in the ReadWrite mode. If you\n want to restrict the access, you can explicitly set the\n s3express:SessionMode condition key to\n ReadOnly on the copy source bucket.

      \n
    • \n
    • \n

      If the copy destination is a directory bucket, you must have the\n \n s3express:CreateSession\n permission in the\n Action element of a policy to write the object to the\n destination. The s3express:SessionMode condition key\n can't be set to ReadOnly on the copy destination bucket.\n

      \n
    • \n
    \n

    If the object is encrypted with SSE-KMS, you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions\n in IAM identity-based policies and KMS key policies for the KMS\n key.

    \n

    For example policies, see Example bucket policies for S3 Express One Zone and Amazon Web Services Identity and Access Management (IAM) identity-based policies for\n S3 Express One Zone in the Amazon S3 User Guide.

    \n
  • \n
\n
\n
Response and special errors
\n
\n

When the request is an HTTP 1.1 request, the response is chunk encoded. When\n the request is not an HTTP 1.1 request, the response would not contain the\n Content-Length. You always need to read the entire response body\n to check if the copy succeeds.

\n
    \n
  • \n

    If the copy is successful, you receive a response with information about\n the copied object.

    \n
  • \n
  • \n

    A copy request might return an error when Amazon S3 receives the copy request\n or while Amazon S3 is copying the files. A 200 OK response can\n contain either a success or an error.

    \n
      \n
    • \n

      If the error occurs before the copy action starts, you receive a\n standard Amazon S3 error.

      \n
    • \n
    • \n

      If the error occurs during the copy operation, the error response\n is embedded in the 200 OK response. For example, in a\n cross-region copy, you may encounter throttling and receive a\n 200 OK response. For more information, see Resolve the Error 200 response when copying objects to\n Amazon S3. The 200 OK status code means the copy\n was accepted, but it doesn't mean the copy is complete. Another\n example is when you disconnect from Amazon S3 before the copy is complete,\n Amazon S3 might cancel the copy and you may receive a 200 OK\n response. You must stay connected to Amazon S3 until the entire response is\n successfully received and processed.

      \n

      If you call this API operation directly, make sure to design your\n application to parse the content of the response and handle it\n appropriately. If you use Amazon Web Services SDKs, SDKs handle this condition. The\n SDKs detect the embedded error and apply error handling per your\n configuration settings (including automatically retrying the request\n as appropriate). If the condition persists, the SDKs throw an\n exception (or, for the SDKs that don't use exceptions, they return an\n error).

      \n
    • \n
    \n
  • \n
\n
\n
Charge
\n
\n

The copy request charge is based on the storage class and Region that you\n specify for the destination object. The request can also result in a data\n retrieval charge for the source if the source storage class bills for data\n retrieval. If the copy source is in a different region, the data transfer is\n billed to the copy source account. For pricing information, see Amazon S3 pricing.

\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to CopyObject:

\n ", - "smithy.api#examples": [ - { - "title": "To copy an object", - "documentation": "The following example copies an object from one bucket to another.", - "input": { - "Bucket": "destinationbucket", - "CopySource": "/sourcebucket/HappyFacejpg", - "Key": "HappyFaceCopyjpg" + "traits": { + "smithy.api#documentation": "

A container specifying S3 Replication Time Control (S3 RTC) related information, including whether S3 RTC is enabled and\n the time when all objects and operations on objects must be replicated. Must be specified together with\n a Metrics block.

" + } + }, + "com.amazonaws.s3#ReplicationTimeStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } + } + } + }, + "com.amazonaws.s3#ReplicationTimeValue": { + "type": "structure", + "members": { + "Minutes": { + "target": "com.amazonaws.s3#Minutes", + "traits": { + "smithy.api#documentation": "

Contains an integer specifying time in minutes.

\n

Valid value: 15

" + } + } }, - "output": { - "CopyObjectResult": { - "LastModified": "2016-12-15T17:38:53.000Z", - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"" - } - } - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}/{Key+}?x-id=CopyObject", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "DisableS3ExpressSessionAuth": { - "value": true - } - } - } - }, - "com.amazonaws.s3#CopyObjectOutput": { - "type": "structure", - "members": { - "CopyObjectResult": { - "target": "com.amazonaws.s3#CopyObjectResult", - "traits": { - "smithy.api#documentation": "

Container for all response elements.

", - "smithy.api#httpPayload": {} - } - }, - "Expiration": { - "target": "com.amazonaws.s3#Expiration", - "traits": { - "smithy.api#documentation": "

If the object expiration is configured, the response includes this header.

\n \n

Object expiration information is not returned in directory buckets and this header returns the value \"NotImplemented\" in all responses for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-expiration" - } - }, - "CopySourceVersionId": { - "target": "com.amazonaws.s3#CopySourceVersionId", - "traits": { - "smithy.api#documentation": "

Version ID of the source object that was copied.

\n \n

This functionality is not supported when the source object is in a directory bucket.

\n
", - "smithy.api#httpHeader": "x-amz-copy-source-version-id" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

Version ID of the newly created copy.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-version-id" - } - }, - "ServerSideEncryption": { - "target": "com.amazonaws.s3#ServerSideEncryption", - "traits": { - "smithy.api#documentation": "

The server-side encryption algorithm used when you store this object in Amazon S3 (for\n example, AES256, aws:kms, aws:kms:dsse).

", - "smithy.api#httpHeader": "x-amz-server-side-encryption" - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the\n response will include this header to confirm the encryption algorithm that's used.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the\n response will include this header to provide the round-trip message integrity verification\n of the customer-provided encryption key.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - }, - "SSEKMSKeyId": { - "target": "com.amazonaws.s3#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

If present, indicates the ID of the KMS key that was used for object encryption.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" - } - }, - "SSEKMSEncryptionContext": { - "target": "com.amazonaws.s3#SSEKMSEncryptionContext", - "traits": { - "smithy.api#documentation": "

If present, indicates the Amazon Web Services KMS Encryption Context to use for object encryption. The\n value of this header is a Base64 encoded UTF-8 string holding JSON with the encryption\n context key-value pairs.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-context" - } - }, - "BucketKeyEnabled": { - "target": "com.amazonaws.s3#BucketKeyEnabled", - "traits": { - "smithy.api#documentation": "

Indicates whether the copied object uses an S3 Bucket Key for server-side encryption\n with Key Management Service (KMS) keys (SSE-KMS).

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#CopyObjectRequest": { - "type": "structure", - "members": { - "ACL": { - "target": "com.amazonaws.s3#ObjectCannedACL", - "traits": { - "smithy.api#documentation": "

The canned access control list (ACL) to apply to the object.

\n

When you copy an object, the ACL metadata is not preserved and is set to\n private by default. Only the owner has full access control. To override the\n default ACL setting, specify a new ACL when you generate a copy request. For more\n information, see Using ACLs.

\n

If the destination bucket that you're copying objects to uses the bucket owner enforced\n setting for S3 Object Ownership, ACLs are disabled and no longer affect permissions.\n Buckets that use this setting only accept PUT requests that don't specify an\n ACL or PUT requests that specify bucket owner full control ACLs, such as the\n bucket-owner-full-control canned ACL or an equivalent form of this ACL\n expressed in the XML format. For more information, see Controlling ownership of\n objects and disabling ACLs in the Amazon S3 User Guide.

\n \n
    \n
  • \n

    If your destination bucket uses the bucket owner enforced setting for Object\n Ownership, all objects written to the bucket by any account will be owned by the\n bucket owner.

    \n
  • \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-acl" - } - }, - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the destination bucket.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n \n

Copying objects across different Amazon Web Services Regions isn't supported when the source or destination bucket is in Amazon Web Services Local Zones. The source and destination buckets must have the same parent Amazon Web Services Region. Otherwise, \n you get an HTTP 400 Bad Request error with the error code InvalidRequest.

\n
\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "CacheControl": { - "target": "com.amazonaws.s3#CacheControl", - "traits": { - "smithy.api#documentation": "

Specifies the caching behavior along the request/reply chain.

", - "smithy.api#httpHeader": "Cache-Control" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm that you want Amazon S3 to use to create the checksum for the object. For more information, see\n Checking object integrity in\n the Amazon S3 User Guide.

\n

When you copy an object, if the source object has a checksum, that checksum value will\n be copied to the new object by default. If the CopyObject request does not\n include this x-amz-checksum-algorithm header, the checksum algorithm will be\n copied from the source object to the destination object (if it's present on the source\n object). You can optionally specify a different checksum algorithm to use with the\n x-amz-checksum-algorithm header. Unrecognized or unsupported values will\n respond with the HTTP status code 400 Bad Request.

\n \n

For directory buckets, when you use Amazon Web Services SDKs, CRC32 is the default checksum algorithm that's used for performance.

\n
", - "smithy.api#httpHeader": "x-amz-checksum-algorithm" - } - }, - "ContentDisposition": { - "target": "com.amazonaws.s3#ContentDisposition", - "traits": { - "smithy.api#documentation": "

Specifies presentational information for the object. Indicates whether an object should\n be displayed in a web browser or downloaded as a file. It allows specifying the desired\n filename for the downloaded file.

", - "smithy.api#httpHeader": "Content-Disposition" - } - }, - "ContentEncoding": { - "target": "com.amazonaws.s3#ContentEncoding", - "traits": { - "smithy.api#documentation": "

Specifies what content encodings have been applied to the object and thus what decoding\n mechanisms must be applied to obtain the media-type referenced by the Content-Type header\n field.

\n \n

For directory buckets, only the aws-chunked value is supported in this header field.

\n
", - "smithy.api#httpHeader": "Content-Encoding" - } - }, - "ContentLanguage": { - "target": "com.amazonaws.s3#ContentLanguage", - "traits": { - "smithy.api#documentation": "

The language the content is in.

", - "smithy.api#httpHeader": "Content-Language" - } - }, - "ContentType": { - "target": "com.amazonaws.s3#ContentType", - "traits": { - "smithy.api#documentation": "

A standard MIME type that describes the format of the object data.

", - "smithy.api#httpHeader": "Content-Type" - } - }, - "CopySource": { - "target": "com.amazonaws.s3#CopySource", - "traits": { - "smithy.api#documentation": "

Specifies the source object for the copy operation. The source object can be up to 5 GB.\n If the source object is an object that was uploaded by using a multipart upload, the object\n copy will be a single part object after the source object is copied to the destination\n bucket.

\n

You specify the value of the copy source in one of two formats, depending on whether you\n want to access the source object through an access point:

\n
    \n
  • \n

    For objects not accessed through an access point, specify the name of the source bucket\n and the key of the source object, separated by a slash (/). For example, to copy the\n object reports/january.pdf from the general purpose bucket\n awsexamplebucket, use\n awsexamplebucket/reports/january.pdf. The value must be URL-encoded.\n To copy the object reports/january.pdf from the directory bucket\n awsexamplebucket--use1-az5--x-s3, use\n awsexamplebucket--use1-az5--x-s3/reports/january.pdf. The value must\n be URL-encoded.

    \n
  • \n
  • \n

    For objects accessed through access points, specify the Amazon Resource Name (ARN) of the object as accessed through the access point, in the format arn:aws:s3:::accesspoint//object/. For example, to copy the object reports/january.pdf through access point my-access-point owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf. The value must be URL encoded.

    \n \n
      \n
    • \n

      Amazon S3 supports copy operations using Access points only when the source and destination buckets are in the same Amazon Web Services Region.

      \n
    • \n
    • \n

      Access points are not supported by directory buckets.

      \n
    • \n
    \n
    \n

    Alternatively, for objects accessed through Amazon S3 on Outposts, specify the ARN of the object as accessed in the format arn:aws:s3-outposts:::outpost//object/. For example, to copy the object reports/january.pdf through outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf. The value must be URL-encoded.

    \n
  • \n
\n

If your source bucket versioning is enabled, the x-amz-copy-source header\n by default identifies the current version of an object to copy. If the current version is a\n delete marker, Amazon S3 behaves as if the object was deleted. To copy a different version, use\n the versionId query parameter. Specifically, append\n ?versionId= to the value (for example,\n awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893).\n If you don't specify a version ID, Amazon S3 copies the latest version of the source\n object.

\n

If you enable versioning on the destination bucket, Amazon S3 generates a unique version ID\n for the copied object. This version ID is different from the version ID of the source\n object. Amazon S3 returns the version ID of the copied object in the\n x-amz-version-id response header in the response.

\n

If you do not enable versioning or suspend it on the destination bucket, the version ID\n that Amazon S3 generates in the x-amz-version-id response header is always\n null.

\n \n

\n Directory buckets -\n S3 Versioning isn't enabled and supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-copy-source", - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "CopySource" - } - } - }, - "CopySourceIfMatch": { - "target": "com.amazonaws.s3#CopySourceIfMatch", - "traits": { - "smithy.api#documentation": "

Copies the object if its entity tag (ETag) matches the specified tag.

\n

If both the x-amz-copy-source-if-match and\n x-amz-copy-source-if-unmodified-since headers are present in the request\n and evaluate as follows, Amazon S3 returns 200 OK and copies the data:

\n
    \n
  • \n

    \n x-amz-copy-source-if-match condition evaluates to true

    \n
  • \n
  • \n

    \n x-amz-copy-source-if-unmodified-since condition evaluates to\n false

    \n
  • \n
", - "smithy.api#httpHeader": "x-amz-copy-source-if-match" - } - }, - "CopySourceIfModifiedSince": { - "target": "com.amazonaws.s3#CopySourceIfModifiedSince", - "traits": { - "smithy.api#documentation": "

Copies the object if it has been modified since the specified time.

\n

If both the x-amz-copy-source-if-none-match and\n x-amz-copy-source-if-modified-since headers are present in the request and\n evaluate as follows, Amazon S3 returns the 412 Precondition Failed response\n code:

\n
    \n
  • \n

    \n x-amz-copy-source-if-none-match condition evaluates to false

    \n
  • \n
  • \n

    \n x-amz-copy-source-if-modified-since condition evaluates to\n true

    \n
  • \n
", - "smithy.api#httpHeader": "x-amz-copy-source-if-modified-since" - } - }, - "CopySourceIfNoneMatch": { - "target": "com.amazonaws.s3#CopySourceIfNoneMatch", - "traits": { - "smithy.api#documentation": "

Copies the object if its entity tag (ETag) is different than the specified ETag.

\n

If both the x-amz-copy-source-if-none-match and\n x-amz-copy-source-if-modified-since headers are present in the request and\n evaluate as follows, Amazon S3 returns the 412 Precondition Failed response\n code:

\n
    \n
  • \n

    \n x-amz-copy-source-if-none-match condition evaluates to false

    \n
  • \n
  • \n

    \n x-amz-copy-source-if-modified-since condition evaluates to\n true

    \n
  • \n
", - "smithy.api#httpHeader": "x-amz-copy-source-if-none-match" - } - }, - "CopySourceIfUnmodifiedSince": { - "target": "com.amazonaws.s3#CopySourceIfUnmodifiedSince", - "traits": { - "smithy.api#documentation": "

Copies the object if it hasn't been modified since the specified time.

\n

If both the x-amz-copy-source-if-match and\n x-amz-copy-source-if-unmodified-since headers are present in the request\n and evaluate as follows, Amazon S3 returns 200 OK and copies the data:

\n
    \n
  • \n

    \n x-amz-copy-source-if-match condition evaluates to true

    \n
  • \n
  • \n

    \n x-amz-copy-source-if-unmodified-since condition evaluates to\n false

    \n
  • \n
", - "smithy.api#httpHeader": "x-amz-copy-source-if-unmodified-since" - } - }, - "Expires": { - "target": "com.amazonaws.s3#Expires", - "traits": { - "smithy.api#documentation": "

The date and time at which the object is no longer cacheable.

", - "smithy.api#httpHeader": "Expires" - } - }, - "GrantFullControl": { - "target": "com.amazonaws.s3#GrantFullControl", - "traits": { - "smithy.api#documentation": "

Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-grant-full-control" - } - }, - "GrantRead": { - "target": "com.amazonaws.s3#GrantRead", - "traits": { - "smithy.api#documentation": "

Allows grantee to read the object data and its metadata.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-grant-read" - } - }, - "GrantReadACP": { - "target": "com.amazonaws.s3#GrantReadACP", - "traits": { - "smithy.api#documentation": "

Allows grantee to read the object ACL.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-grant-read-acp" - } - }, - "GrantWriteACP": { - "target": "com.amazonaws.s3#GrantWriteACP", - "traits": { - "smithy.api#documentation": "

Allows grantee to write the ACL for the applicable object.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-grant-write-acp" - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The key of the destination object.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Key" - } - } - }, - "Metadata": { - "target": "com.amazonaws.s3#Metadata", - "traits": { - "smithy.api#documentation": "

A map of metadata to store with the object in S3.

", - "smithy.api#httpPrefixHeaders": "x-amz-meta-" - } - }, - "MetadataDirective": { - "target": "com.amazonaws.s3#MetadataDirective", - "traits": { - "smithy.api#documentation": "

Specifies whether the metadata is copied from the source object or replaced with\n metadata that's provided in the request. When copying an object, you can preserve all\n metadata (the default) or specify new metadata. If this header isn’t specified,\n COPY is the default behavior.

\n

\n General purpose bucket - For general purpose buckets, when you\n grant permissions, you can use the s3:x-amz-metadata-directive condition key\n to enforce certain metadata behavior when objects are uploaded. For more information, see\n Amazon S3\n condition key examples in the Amazon S3 User Guide.

\n \n

\n x-amz-website-redirect-location is unique to each object and is not\n copied when using the x-amz-metadata-directive header. To copy the value,\n you must specify x-amz-website-redirect-location in the request\n header.

\n
", - "smithy.api#httpHeader": "x-amz-metadata-directive" - } - }, - "TaggingDirective": { - "target": "com.amazonaws.s3#TaggingDirective", - "traits": { - "smithy.api#documentation": "

Specifies whether the object tag-set is copied from the source object or replaced with\n the tag-set that's provided in the request.

\n

The default value is COPY.

\n \n

\n Directory buckets - For directory buckets in a CopyObject operation, only the empty tag-set is supported. Any requests that attempt to write non-empty tags into directory buckets will receive a 501 Not Implemented status code. \nWhen the destination bucket is a directory bucket, you will receive a 501 Not Implemented response in any of the following situations:

\n
    \n
  • \n

    When you attempt to COPY the tag-set from an S3 source object that has non-empty tags.

    \n
  • \n
  • \n

    When you attempt to REPLACE the tag-set of a source object and set a non-empty value to x-amz-tagging.

    \n
  • \n
  • \n

    When you don't set the x-amz-tagging-directive header and the source object has non-empty tags. This is because the default value of x-amz-tagging-directive is COPY.

    \n
  • \n
\n

Because only the empty tag-set is supported for directory buckets in a CopyObject operation, the following situations are allowed:

\n
    \n
  • \n

    When you attempt to COPY the tag-set from a directory bucket source object that has no tags to a general purpose bucket. It copies an empty tag-set to the destination object.

    \n
  • \n
  • \n

    When you attempt to REPLACE the tag-set of a directory bucket source object and set the x-amz-tagging value of the directory bucket destination object to empty.

    \n
  • \n
  • \n

    When you attempt to REPLACE the tag-set of a general purpose bucket source object that has non-empty tags and set the x-amz-tagging value of the directory bucket destination object to empty.

    \n
  • \n
  • \n

    When you attempt to REPLACE the tag-set of a directory bucket source object and don't set the x-amz-tagging value of the directory bucket destination object. This is because the default value of x-amz-tagging is the empty value.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-tagging-directive" - } - }, - "ServerSideEncryption": { - "target": "com.amazonaws.s3#ServerSideEncryption", - "traits": { - "smithy.api#documentation": "

The server-side encryption algorithm used when storing this object in Amazon S3. Unrecognized\n or unsupported values won’t write a destination object and will receive a 400 Bad\n Request response.

\n

Amazon S3 automatically encrypts all new objects that are copied to an S3 bucket. When\n copying an object, if you don't specify encryption information in your copy request, the\n encryption setting of the target object is set to the default encryption configuration of\n the destination bucket. By default, all buckets have a base level of encryption\n configuration that uses server-side encryption with Amazon S3 managed keys (SSE-S3). If the\n destination bucket has a different default encryption configuration, Amazon S3 uses the\n corresponding encryption key to encrypt the target object copy.

\n

With server-side encryption, Amazon S3 encrypts your data as it writes your data to disks in\n its data centers and decrypts the data when you access it. For more information about\n server-side encryption, see Using Server-Side Encryption\n in the Amazon S3 User Guide.

\n

\n General purpose buckets \n

\n
    \n
  • \n

    For general purpose buckets, there are the following supported options for server-side\n encryption: server-side encryption with Key Management Service (KMS) keys (SSE-KMS), dual-layer\n server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), and server-side encryption\n with customer-provided encryption keys (SSE-C). Amazon S3 uses the corresponding\n KMS key, or a customer-provided key to encrypt the target object copy.

    \n
  • \n
  • \n

    When you perform a CopyObject operation, if you want to use a\n different type of encryption setting for the target object, you can specify\n appropriate encryption-related headers to encrypt the target object with an Amazon S3\n managed key, a KMS key, or a customer-provided key. If the encryption setting in\n your request is different from the default encryption configuration of the\n destination bucket, the encryption setting in your request takes precedence.

    \n
  • \n
\n

\n Directory buckets \n

\n
    \n
  • \n

    For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your \n CreateSession requests or PUT object requests. Then, new objects \n are automatically encrypted with the desired encryption settings. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide. For more information about the encryption overriding behaviors in directory buckets, see Specifying server-side encryption with KMS for new object uploads.

    \n
  • \n
  • \n

    To encrypt new object copies to a directory bucket with SSE-KMS, we recommend you\n specify SSE-KMS as the directory bucket's default encryption configuration with\n a KMS key (specifically, a customer managed key).\n The Amazon Web Services managed key (aws/s3) isn't supported. Your SSE-KMS\n configuration can only support 1 customer managed key per\n directory bucket for the lifetime of the bucket. After you specify a customer managed key for\n SSE-KMS, you can't override the customer managed key for the bucket's SSE-KMS\n configuration. Then, when you perform a CopyObject operation and want to\n specify server-side encryption settings for new object copies with SSE-KMS in the\n encryption-related request headers, you must ensure the encryption key is the same\n customer managed key that you specified for the directory bucket's default encryption\n configuration.\n

    \n
  • \n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3#StorageClass", - "traits": { - "smithy.api#documentation": "

If the x-amz-storage-class header is not used, the copied object will be\n stored in the STANDARD Storage Class by default. The STANDARD\n storage class provides high durability and high availability. Depending on performance\n needs, you can specify a different Storage Class.

\n \n
    \n
  • \n

    \n Directory buckets -\n For directory buckets, only the S3 Express One Zone storage class is supported to store newly created objects. \nUnsupported storage class values won't write a destination object and will respond with the HTTP status code 400 Bad Request.

    \n
  • \n
  • \n

    \n Amazon S3 on Outposts - S3 on Outposts only\n uses the OUTPOSTS Storage Class.

    \n
  • \n
\n
\n

You can use the CopyObject action to change the storage class of an object\n that is already stored in Amazon S3 by using the x-amz-storage-class header. For\n more information, see Storage Classes in the\n Amazon S3 User Guide.

\n

Before using an object as a source object for the copy operation, you must restore a\n copy of it if it meets any of the following conditions:

\n
    \n
  • \n

    The storage class of the source object is GLACIER or\n DEEP_ARCHIVE.

    \n
  • \n
  • \n

    The storage class of the source object is INTELLIGENT_TIERING and\n it's S3 Intelligent-Tiering access tier is Archive Access or\n Deep Archive Access.

    \n
  • \n
\n

For more information, see RestoreObject and Copying\n Objects in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-storage-class" - } - }, - "WebsiteRedirectLocation": { - "target": "com.amazonaws.s3#WebsiteRedirectLocation", - "traits": { - "smithy.api#documentation": "

If the destination bucket is configured as a website, redirects requests for this object\n copy to another object in the same bucket or to an external URL. Amazon S3 stores the value of\n this header in the object metadata. This value is unique to each object and is not copied\n when using the x-amz-metadata-directive header. Instead, you may opt to\n provide this header in combination with the x-amz-metadata-directive\n header.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-website-redirect-location" - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

Specifies the algorithm to use when encrypting the object (for example,\n AES256).

\n

When you perform a CopyObject operation, if you want to use a different\n type of encryption setting for the target object, you can specify appropriate\n encryption-related headers to encrypt the target object with an Amazon S3 managed key, a\n KMS key, or a customer-provided key. If the encryption setting in your request is\n different from the default encryption configuration of the destination bucket, the\n encryption setting in your request takes precedence.

\n \n

This functionality is not supported when the destination bucket is a directory bucket.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKey": { - "target": "com.amazonaws.s3#SSECustomerKey", - "traits": { - "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This\n value is used to store the object and then it is discarded. Amazon S3 does not store the\n encryption key. The key must be appropriate for use with the algorithm specified in the\n x-amz-server-side-encryption-customer-algorithm header.

\n \n

This functionality is not supported when the destination bucket is a directory bucket.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses\n this header for a message integrity check to ensure that the encryption key was transmitted\n without error.

\n \n

This functionality is not supported when the destination bucket is a directory bucket.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - }, - "SSEKMSKeyId": { - "target": "com.amazonaws.s3#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

Specifies the KMS key ID (Key ID, Key ARN, or Key Alias) to use for object encryption.\n All GET and PUT requests for an object protected by KMS will fail if they're not made via\n SSL or using SigV4. For information about configuring any of the officially supported Amazon Web Services\n SDKs and Amazon Web Services CLI, see Specifying the\n Signature Version in Request Authentication in the\n Amazon S3 User Guide.

\n

\n Directory buckets -\n If you specify x-amz-server-side-encryption with aws:kms, the \n x-amz-server-side-encryption-aws-kms-key-id header is implicitly assigned the ID of the KMS \n symmetric encryption customer managed key that's configured for your directory bucket's default encryption setting. \n If you want to specify the \n x-amz-server-side-encryption-aws-kms-key-id header explicitly, you can only specify it with the ID (Key ID or Key ARN) of the KMS \n customer managed key that's configured for your directory bucket's default encryption setting. Otherwise, you get an HTTP 400 Bad Request error. Only use the key ID or key ARN. The key alias format of the KMS key isn't supported. Your SSE-KMS configuration can only support 1 customer managed key per directory bucket for the lifetime of the bucket. \nThe Amazon Web Services managed key (aws/s3) isn't supported. \n

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" - } - }, - "SSEKMSEncryptionContext": { - "target": "com.amazonaws.s3#SSEKMSEncryptionContext", - "traits": { - "smithy.api#documentation": "

Specifies the Amazon Web Services KMS Encryption Context as an additional encryption context to use\n for the destination object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs.

\n

\n General purpose buckets - This value must be explicitly\n added to specify encryption context for CopyObject requests if you want an\n additional encryption context for your destination object. The additional encryption\n context of the source object won't be copied to the destination object. For more\n information, see Encryption\n context in the Amazon S3 User Guide.

\n

\n Directory buckets - You can optionally provide an explicit encryption context value. The value must match the default encryption context - the bucket Amazon Resource Name (ARN). An additional encryption context value is not supported.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-context" - } - }, - "BucketKeyEnabled": { - "target": "com.amazonaws.s3#BucketKeyEnabled", - "traits": { - "smithy.api#documentation": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with\n server-side encryption using Key Management Service (KMS) keys (SSE-KMS). If a target object uses\n SSE-KMS, you can enable an S3 Bucket Key for the object.

\n

Setting this header to true causes Amazon S3 to use an S3 Bucket Key for object\n encryption with SSE-KMS. Specifying this header with a COPY action doesn’t affect\n bucket-level settings for S3 Bucket Key.

\n

For more information, see Amazon S3 Bucket Keys in the\n Amazon S3 User Guide.

\n \n

\n Directory buckets -\n S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets \nto directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through CopyObject. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" - } - }, - "CopySourceSSECustomerAlgorithm": { - "target": "com.amazonaws.s3#CopySourceSSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

Specifies the algorithm to use when decrypting the source object (for example,\n AES256).

\n

If the source object for the copy is stored in Amazon S3 using SSE-C, you must provide the\n necessary encryption information in your request so that Amazon S3 can decrypt the object for\n copying.

\n \n

This functionality is not supported when the source object is in a directory bucket.

\n
", - "smithy.api#httpHeader": "x-amz-copy-source-server-side-encryption-customer-algorithm" - } - }, - "CopySourceSSECustomerKey": { - "target": "com.amazonaws.s3#CopySourceSSECustomerKey", - "traits": { - "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use to decrypt the source\n object. The encryption key provided in this header must be the same one that was used when\n the source object was created.

\n

If the source object for the copy is stored in Amazon S3 using SSE-C, you must provide the\n necessary encryption information in your request so that Amazon S3 can decrypt the object for\n copying.

\n \n

This functionality is not supported when the source object is in a directory bucket.

\n
", - "smithy.api#httpHeader": "x-amz-copy-source-server-side-encryption-customer-key" - } - }, - "CopySourceSSECustomerKeyMD5": { - "target": "com.amazonaws.s3#CopySourceSSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses\n this header for a message integrity check to ensure that the encryption key was transmitted\n without error.

\n

If the source object for the copy is stored in Amazon S3 using SSE-C, you must provide the\n necessary encryption information in your request so that Amazon S3 can decrypt the object for\n copying.

\n \n

This functionality is not supported when the source object is in a directory bucket.

\n
", - "smithy.api#httpHeader": "x-amz-copy-source-server-side-encryption-customer-key-MD5" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "Tagging": { - "target": "com.amazonaws.s3#TaggingHeader", - "traits": { - "smithy.api#documentation": "

The tag-set for the object copy in the destination bucket. This value must be used in\n conjunction with the x-amz-tagging-directive if you choose\n REPLACE for the x-amz-tagging-directive. If you choose\n COPY for the x-amz-tagging-directive, you don't need to set\n the x-amz-tagging header, because the tag-set will be copied from the source\n object directly. The tag-set must be encoded as URL Query parameters.

\n

The default value is the empty value.

\n \n

\n Directory buckets - For directory buckets in a CopyObject operation, only the empty tag-set is supported. Any requests that attempt to write non-empty tags into directory buckets will receive a 501 Not Implemented status code. \nWhen the destination bucket is a directory bucket, you will receive a 501 Not Implemented response in any of the following situations:

\n
    \n
  • \n

    When you attempt to COPY the tag-set from an S3 source object that has non-empty tags.

    \n
  • \n
  • \n

    When you attempt to REPLACE the tag-set of a source object and set a non-empty value to x-amz-tagging.

    \n
  • \n
  • \n

    When you don't set the x-amz-tagging-directive header and the source object has non-empty tags. This is because the default value of x-amz-tagging-directive is COPY.

    \n
  • \n
\n

Because only the empty tag-set is supported for directory buckets in a CopyObject operation, the following situations are allowed:

\n
    \n
  • \n

    When you attempt to COPY the tag-set from a directory bucket source object that has no tags to a general purpose bucket. It copies an empty tag-set to the destination object.

    \n
  • \n
  • \n

    When you attempt to REPLACE the tag-set of a directory bucket source object and set the x-amz-tagging value of the directory bucket destination object to empty.

    \n
  • \n
  • \n

    When you attempt to REPLACE the tag-set of a general purpose bucket source object that has non-empty tags and set the x-amz-tagging value of the directory bucket destination object to empty.

    \n
  • \n
  • \n

    When you attempt to REPLACE the tag-set of a directory bucket source object and don't set the x-amz-tagging value of the directory bucket destination object. This is because the default value of x-amz-tagging is the empty value.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-tagging" - } - }, - "ObjectLockMode": { - "target": "com.amazonaws.s3#ObjectLockMode", - "traits": { - "smithy.api#documentation": "

The Object Lock mode that you want to apply to the object copy.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-object-lock-mode" - } - }, - "ObjectLockRetainUntilDate": { - "target": "com.amazonaws.s3#ObjectLockRetainUntilDate", - "traits": { - "smithy.api#documentation": "

The date and time when you want the Object Lock of the object copy to expire.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-object-lock-retain-until-date" - } - }, - "ObjectLockLegalHoldStatus": { - "target": "com.amazonaws.s3#ObjectLockLegalHoldStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether you want to apply a legal hold to the object copy.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-object-lock-legal-hold" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected destination bucket owner. If the account ID that you provide does not match the actual owner of the destination bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "ExpectedSourceBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected source bucket owner. If the account ID that you provide does not match the actual owner of the source bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-source-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#CopyObjectResult": { - "type": "structure", - "members": { - "ETag": { - "target": "com.amazonaws.s3#ETag", - "traits": { - "smithy.api#documentation": "

Returns the ETag of the new object. The ETag reflects only changes to the contents of an\n object, not its metadata.

" - } - }, - "LastModified": { - "target": "com.amazonaws.s3#LastModified", - "traits": { - "smithy.api#documentation": "

Creation date of the object.

" - } - }, - "ChecksumType": { - "target": "com.amazonaws.s3#ChecksumType", - "traits": { - "smithy.api#documentation": "

The checksum type that is used to calculate the object’s\n checksum value. For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumCRC32": { - "target": "com.amazonaws.s3#ChecksumCRC32", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32 checksum of the object. This checksum is only present if the object was uploaded\n with the object. For more information, see \n Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumCRC32C": { - "target": "com.amazonaws.s3#ChecksumCRC32C", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32C checksum of the object. This will only be present if the object was uploaded\n with the object. For more information, see \n Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumCRC64NVME": { - "target": "com.amazonaws.s3#ChecksumCRC64NVME", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC-64NVME checksum of the object. This checksum is present\n if the object being copied was uploaded with the CRC-64NVME checksum algorithm, or if the object was uploaded without a\n checksum (and Amazon S3 added the default checksum, CRC-64NVME, to the uploaded object). For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumSHA1": { - "target": "com.amazonaws.s3#ChecksumSHA1", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA-1 digest of the object. This will only be present if the object was uploaded\n with the object. For more information, see \n Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumSHA256": { - "target": "com.amazonaws.s3#ChecksumSHA256", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA-256 digest of the object. This will only be present if the object was uploaded\n with the object. For more information, see \n Checking object integrity in the Amazon S3 User Guide.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for all response elements.

" - } - }, - "com.amazonaws.s3#CopyPartResult": { - "type": "structure", - "members": { - "ETag": { - "target": "com.amazonaws.s3#ETag", - "traits": { - "smithy.api#documentation": "

Entity tag of the object.

" - } - }, - "LastModified": { - "target": "com.amazonaws.s3#LastModified", - "traits": { - "smithy.api#documentation": "

Date and time at which the object was uploaded.

" - } - }, - "ChecksumCRC32": { - "target": "com.amazonaws.s3#ChecksumCRC32", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 32-bit CRC-32 checksum of the part. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

" - } - }, - "ChecksumCRC32C": { - "target": "com.amazonaws.s3#ChecksumCRC32C", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 32-bit CRC-32C checksum of the part. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

" - } - }, - "ChecksumCRC64NVME": { - "target": "com.amazonaws.s3#ChecksumCRC64NVME", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC-64NVME checksum of the part. This checksum is present\n if the multipart upload request was created with the CRC-64NVME checksum algorithm to the uploaded object). For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumSHA1": { - "target": "com.amazonaws.s3#ChecksumSHA1", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 160-bit SHA-1 checksum of the part. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

" - } - }, - "ChecksumSHA256": { - "target": "com.amazonaws.s3#ChecksumSHA256", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 256-bit SHA-256 checksum of the part. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for all response elements.

" - } - }, - "com.amazonaws.s3#CopySource": { - "type": "string", - "traits": { - "smithy.api#pattern": "^\\/?.+\\/.+$" - } - }, - "com.amazonaws.s3#CopySourceIfMatch": { - "type": "string" - }, - "com.amazonaws.s3#CopySourceIfModifiedSince": { - "type": "timestamp" - }, - "com.amazonaws.s3#CopySourceIfNoneMatch": { - "type": "string" - }, - "com.amazonaws.s3#CopySourceIfUnmodifiedSince": { - "type": "timestamp" - }, - "com.amazonaws.s3#CopySourceRange": { - "type": "string" - }, - "com.amazonaws.s3#CopySourceSSECustomerAlgorithm": { - "type": "string" - }, - "com.amazonaws.s3#CopySourceSSECustomerKey": { - "type": "string", - "traits": { - "smithy.api#sensitive": {} - } - }, - "com.amazonaws.s3#CopySourceSSECustomerKeyMD5": { - "type": "string" - }, - "com.amazonaws.s3#CopySourceVersionId": { - "type": "string" - }, - "com.amazonaws.s3#CreateBucket": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#CreateBucketRequest" - }, - "output": { - "target": "com.amazonaws.s3#CreateBucketOutput" - }, - "errors": [ - { - "target": "com.amazonaws.s3#BucketAlreadyExists" - }, - { - "target": "com.amazonaws.s3#BucketAlreadyOwnedByYou" - } - ], - "traits": { - "smithy.api#documentation": "\n

This action creates an Amazon S3 bucket. To create an Amazon S3 on Outposts bucket, see \n CreateBucket\n .

\n
\n

Creates a new S3 bucket. To create a bucket, you must set up Amazon S3 and have a valid Amazon Web Services\n Access Key ID to authenticate requests. Anonymous requests are never allowed to create\n buckets. By creating the bucket, you become the bucket owner.

\n

There are two types of buckets: general purpose buckets and directory buckets. For more\n information about these bucket types, see Creating, configuring, and\n working with Amazon S3 buckets in the Amazon S3 User Guide.

\n \n
    \n
  • \n

    \n General purpose buckets - If you send your\n CreateBucket request to the s3.amazonaws.com global\n endpoint, the request goes to the us-east-1 Region. So the signature\n calculations in Signature Version 4 must use us-east-1 as the Region,\n even if the location constraint in the request specifies another Region where the\n bucket is to be created. If you create a bucket in a Region other than US East (N.\n Virginia), your application must be able to handle 307 redirect. For more\n information, see Virtual hosting of\n buckets in the Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - In\n addition to the s3:CreateBucket permission, the following\n permissions are required in a policy when your CreateBucket\n request includes specific headers:

    \n
      \n
    • \n

      \n Access control lists (ACLs)\n - In your CreateBucket request, if you specify an\n access control list (ACL) and set it to public-read,\n public-read-write, authenticated-read, or\n if you explicitly specify any other custom ACLs, both\n s3:CreateBucket and s3:PutBucketAcl\n permissions are required. In your CreateBucket request,\n if you set the ACL to private, or if you don't specify\n any ACLs, only the s3:CreateBucket permission is\n required.

      \n
    • \n
    • \n

      \n Object Lock - In your\n CreateBucket request, if you set\n x-amz-bucket-object-lock-enabled to true, the\n s3:PutBucketObjectLockConfiguration and\n s3:PutBucketVersioning permissions are\n required.

      \n
    • \n
    • \n

      \n S3 Object Ownership - If\n your CreateBucket request includes the\n x-amz-object-ownership header, then the\n s3:PutBucketOwnershipControls permission is\n required.

      \n \n

      To set an ACL on a bucket as part of a\n CreateBucket request, you must explicitly set S3\n Object Ownership for the bucket to a different value than the\n default, BucketOwnerEnforced. Additionally, if your\n desired bucket ACL grants public access, you must first create the\n bucket (without the bucket ACL) and then explicitly disable Block\n Public Access on the bucket before using PutBucketAcl\n to set the ACL. If you try to create a bucket with a public ACL,\n the request will fail.

      \n

      For the majority of modern use cases in S3, we recommend that\n you keep all Block Public Access settings enabled and keep ACLs\n disabled. If you would like to share data with users outside of\n your account, you can use bucket policies as needed. For more\n information, see Controlling ownership of objects and disabling ACLs for your\n bucket and Blocking public access to your Amazon S3 storage in\n the Amazon S3 User Guide.

      \n
      \n
    • \n
    • \n

      \n S3 Block Public Access - If\n your specific use case requires granting public access to your S3\n resources, you can disable Block Public Access. Specifically, you can\n create a new bucket with Block Public Access enabled, then separately\n call the \n DeletePublicAccessBlock\n API. To use this operation, you must have the\n s3:PutBucketPublicAccessBlock permission. For more\n information about S3 Block Public Access, see Blocking public access to your Amazon S3 storage in the\n Amazon S3 User Guide.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions -\n You must have the s3express:CreateBucket permission in\n an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.\n For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

    \n \n

    The permissions for ACLs, Object Lock, S3 Object Ownership, and S3\n Block Public Access are not supported for directory buckets. For\n directory buckets, all Block Public Access settings are enabled at the\n bucket level and S3 Object Ownership is set to Bucket owner enforced\n (ACLs disabled). These settings can't be modified.

    \n

    For more information about permissions for creating and working with\n directory buckets, see Directory buckets in the\n Amazon S3 User Guide. For more information about\n supported S3 features for directory buckets, see Features of S3 Express One Zone in the\n Amazon S3 User Guide.

    \n
    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to CreateBucket:

\n ", - "smithy.api#examples": [ - { - "title": "To create a bucket in a specific region", - "documentation": "The following example creates a bucket. The request specifies an AWS region where to create the bucket.", - "input": { - "Bucket": "examplebucket", - "CreateBucketConfiguration": { - "LocationConstraint": "eu-west-1" - } + "traits": { + "smithy.api#documentation": "

A container specifying the time value for S3 Replication Time Control (S3 RTC) and replication metrics\n EventThreshold.

" + } + }, + "com.amazonaws.s3#RequestCharged": { + "type": "enum", + "members": { + "requester": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "requester" + } + } }, - "output": { - "Location": "http://examplebucket..s3.amazonaws.com/" + "traits": { + "smithy.api#documentation": "

If present, indicates that the requester was successfully charged for the request. For more\n information, see Using Requester Pays buckets for storage transfers and usage in the Amazon Simple\n Storage Service user guide.

\n \n

This functionality is not supported for directory buckets.

\n
" } - }, - { - "title": "To create a bucket ", - "documentation": "The following example creates a bucket.", - "input": { - "Bucket": "examplebucket" + }, + "com.amazonaws.s3#RequestPayer": { + "type": "enum", + "members": { + "requester": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "requester" + } + } }, - "output": { - "Location": "/examplebucket" - } - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - }, - "DisableAccessPoints": { - "value": true - } - } - } - }, - "com.amazonaws.s3#CreateBucketConfiguration": { - "type": "structure", - "members": { - "LocationConstraint": { - "target": "com.amazonaws.s3#BucketLocationConstraint", - "traits": { - "smithy.api#documentation": "

Specifies the Region where the bucket will be created. You might choose a Region to\n optimize latency, minimize costs, or address regulatory requirements. For example, if you\n reside in Europe, you will probably find it advantageous to create buckets in the Europe\n (Ireland) Region. For more information, see Accessing a\n bucket in the Amazon S3 User Guide.

\n

If you don't specify a Region, the bucket is created in the US East (N. Virginia) Region\n (us-east-1) by default.

\n \n

This functionality is not supported for directory buckets.

\n
" - } - }, - "Location": { - "target": "com.amazonaws.s3#LocationInfo", - "traits": { - "smithy.api#documentation": "

Specifies the location where the bucket will be created.

\n

\n Directory buckets - The location type is Availability Zone or Local Zone. \n When the location type is Local Zone, your Local Zone must be in opt-in status. Otherwise, you get an HTTP 400 Bad Request error with the \n error code Access denied. To learn more about opt-in Local Zones, see Opt-in Dedicated Local Zonesin the Amazon S3 User Guide.\n

\n \n

This functionality is only supported by directory buckets.

\n
" - } - }, - "Bucket": { - "target": "com.amazonaws.s3#BucketInfo", - "traits": { - "smithy.api#documentation": "

Specifies the information about the bucket that will be created.

\n \n

This functionality is only supported by directory buckets.

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

The configuration information for the bucket.

" - } - }, - "com.amazonaws.s3#CreateBucketMetadataTableConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#CreateBucketMetadataTableConfigurationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "

Creates a metadata table configuration for a general purpose bucket. For more\n information, see Accelerating data\n discovery with S3 Metadata in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

To use this operation, you must have the following permissions. For more\n information, see Setting up\n permissions for configuring metadata tables in the\n Amazon S3 User Guide.

\n

If you also want to integrate your table bucket with Amazon Web Services analytics services so that you \n can query your metadata table, you need additional permissions. For more information, see \n \n Integrating Amazon S3 Tables with Amazon Web Services analytics services in the \n Amazon S3 User Guide.

\n
    \n
  • \n

    \n s3:CreateBucketMetadataTableConfiguration\n

    \n
  • \n
  • \n

    \n s3tables:CreateNamespace\n

    \n
  • \n
  • \n

    \n s3tables:GetTable\n

    \n
  • \n
  • \n

    \n s3tables:CreateTable\n

    \n
  • \n
  • \n

    \n s3tables:PutTablePolicy\n

    \n
  • \n
\n
\n
\n

The following operations are related to CreateBucketMetadataTableConfiguration:

\n ", - "smithy.api#http": { - "method": "POST", - "uri": "/{Bucket}?metadataTable", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#CreateBucketMetadataTableConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

\n The general purpose bucket that you want to create the metadata table configuration in.\n

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

\n The Content-MD5 header for the metadata table configuration.\n

", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

\n The checksum algorithm to use with your metadata table configuration. \n

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "MetadataTableConfiguration": { - "target": "com.amazonaws.s3#MetadataTableConfiguration", - "traits": { - "smithy.api#documentation": "

\n The contents of your metadata table configuration. \n

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "MetadataTableConfiguration" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

\n The expected owner of the general purpose bucket that contains your metadata table configuration.\n

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#CreateBucketOutput": { - "type": "structure", - "members": { - "Location": { - "target": "com.amazonaws.s3#Location", - "traits": { - "smithy.api#documentation": "

A forward slash followed by the name of the bucket.

", - "smithy.api#httpHeader": "Location" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#CreateBucketRequest": { - "type": "structure", - "members": { - "ACL": { - "target": "com.amazonaws.s3#BucketCannedACL", - "traits": { - "smithy.api#documentation": "

The canned ACL to apply to the bucket.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-acl" - } - }, - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket to create.

\n

\n General purpose buckets - For information about bucket naming\n restrictions, see Bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must also follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide\n

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "CreateBucketConfiguration": { - "target": "com.amazonaws.s3#CreateBucketConfiguration", - "traits": { - "smithy.api#documentation": "

The configuration information for the bucket.

", - "smithy.api#httpPayload": {}, - "smithy.api#xmlName": "CreateBucketConfiguration" - } - }, - "GrantFullControl": { - "target": "com.amazonaws.s3#GrantFullControl", - "traits": { - "smithy.api#documentation": "

Allows grantee the read, write, read ACP, and write ACP permissions on the\n bucket.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-grant-full-control" - } - }, - "GrantRead": { - "target": "com.amazonaws.s3#GrantRead", - "traits": { - "smithy.api#documentation": "

Allows grantee to list the objects in the bucket.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-grant-read" - } - }, - "GrantReadACP": { - "target": "com.amazonaws.s3#GrantReadACP", - "traits": { - "smithy.api#documentation": "

Allows grantee to read the bucket ACL.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-grant-read-acp" - } - }, - "GrantWrite": { - "target": "com.amazonaws.s3#GrantWrite", - "traits": { - "smithy.api#documentation": "

Allows grantee to create new objects in the bucket.

\n

For the bucket and object owners of existing objects, also allows deletions and\n overwrites of those objects.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-grant-write" - } - }, - "GrantWriteACP": { - "target": "com.amazonaws.s3#GrantWriteACP", - "traits": { - "smithy.api#documentation": "

Allows grantee to write the ACL for the applicable bucket.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-grant-write-acp" - } - }, - "ObjectLockEnabledForBucket": { - "target": "com.amazonaws.s3#ObjectLockEnabledForBucket", - "traits": { - "smithy.api#documentation": "

Specifies whether you want S3 Object Lock to be enabled for the new bucket.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-bucket-object-lock-enabled" - } - }, - "ObjectOwnership": { - "target": "com.amazonaws.s3#ObjectOwnership", - "traits": { - "smithy.api#httpHeader": "x-amz-object-ownership" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#CreateMultipartUpload": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#CreateMultipartUploadRequest" - }, - "output": { - "target": "com.amazonaws.s3#CreateMultipartUploadOutput" - }, - "traits": { - "smithy.api#documentation": "

This action initiates a multipart upload and returns an upload ID. This upload ID is\n used to associate all of the parts in the specific multipart upload. You specify this\n upload ID in each of your subsequent upload part requests (see UploadPart). You also include this\n upload ID in the final request to either complete or abort the multipart upload request.\n For more information about multipart uploads, see Multipart Upload Overview in the\n Amazon S3 User Guide.

\n \n

After you initiate a multipart upload and upload one or more parts, to stop being\n charged for storing the uploaded parts, you must either complete or abort the multipart\n upload. Amazon S3 frees up the space used to store the parts and stops charging you for\n storing them only after you either complete or abort a multipart upload.

\n
\n

If you have configured a lifecycle rule to abort incomplete multipart uploads, the\n created multipart upload must be completed within the number of days specified in the\n bucket lifecycle configuration. Otherwise, the incomplete multipart upload becomes eligible\n for an abort action and Amazon S3 aborts the multipart upload. For more information, see Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle\n Configuration.

\n \n
    \n
  • \n

    \n Directory buckets -\n S3 Lifecycle is not supported by directory buckets.

    \n
  • \n
  • \n

    \n Directory buckets -\n For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n
\n
Request signing
\n
\n

For request signing, multipart upload is just a series of regular requests. You\n initiate a multipart upload, send one or more requests to upload parts, and then\n complete the multipart upload process. You sign each request individually. There\n is nothing special about signing multipart upload requests. For more information\n about signing, see Authenticating\n Requests (Amazon Web Services Signature Version 4) in the\n Amazon S3 User Guide.

\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - To\n perform a multipart upload with encryption using an Key Management Service (KMS)\n KMS key, the requester must have permission to the\n kms:Decrypt and kms:GenerateDataKey actions on\n the key. The requester must also have permissions for the\n kms:GenerateDataKey action for the\n CreateMultipartUpload API. Then, the requester needs\n permissions for the kms:Decrypt action on the\n UploadPart and UploadPartCopy APIs. These\n permissions are required because Amazon S3 must decrypt and read data from the\n encrypted file parts before it completes the multipart upload. For more\n information, see Multipart upload API and permissions and Protecting data\n using server-side encryption with Amazon Web Services KMS in the\n Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
Encryption
\n
\n
    \n
  • \n

    \n General purpose buckets - Server-side\n encryption is for data encryption at rest. Amazon S3 encrypts your data as it\n writes it to disks in its data centers and decrypts it when you access it.\n Amazon S3 automatically encrypts all new objects that are uploaded to an S3\n bucket. When doing a multipart upload, if you don't specify encryption\n information in your request, the encryption setting of the uploaded parts is\n set to the default encryption configuration of the destination bucket. By\n default, all buckets have a base level of encryption configuration that uses\n server-side encryption with Amazon S3 managed keys (SSE-S3). If the destination\n bucket has a default encryption configuration that uses server-side\n encryption with an Key Management Service (KMS) key (SSE-KMS), or a customer-provided\n encryption key (SSE-C), Amazon S3 uses the corresponding KMS key, or a\n customer-provided key to encrypt the uploaded parts. When you perform a\n CreateMultipartUpload operation, if you want to use a different type of\n encryption setting for the uploaded parts, you can request that Amazon S3\n encrypts the object with a different encryption key (such as an Amazon S3 managed\n key, a KMS key, or a customer-provided key). When the encryption setting\n in your request is different from the default encryption configuration of\n the destination bucket, the encryption setting in your request takes\n precedence. If you choose to provide your own encryption key, the request\n headers you provide in UploadPart and\n UploadPartCopy\n requests must match the headers you used in the\n CreateMultipartUpload request.

    \n
      \n
    • \n

      Use KMS keys (SSE-KMS) that include the Amazon Web Services managed key\n (aws/s3) and KMS customer managed keys stored in Key Management Service\n (KMS) – If you want Amazon Web Services to manage the keys used to encrypt data,\n specify the following headers in the request.

      \n
        \n
      • \n

        \n x-amz-server-side-encryption\n

        \n
      • \n
      • \n

        \n x-amz-server-side-encryption-aws-kms-key-id\n

        \n
      • \n
      • \n

        \n x-amz-server-side-encryption-context\n

        \n
      • \n
      \n \n
        \n
      • \n

        If you specify\n x-amz-server-side-encryption:aws:kms, but\n don't provide\n x-amz-server-side-encryption-aws-kms-key-id,\n Amazon S3 uses the Amazon Web Services managed key (aws/s3 key) in\n KMS to protect the data.

        \n
      • \n
      • \n

        To perform a multipart upload with encryption by using an\n Amazon Web Services KMS key, the requester must have permission to the\n kms:Decrypt and\n kms:GenerateDataKey* actions on the key.\n These permissions are required because Amazon S3 must decrypt and\n read data from the encrypted file parts before it completes\n the multipart upload. For more information, see Multipart upload API and permissions and Protecting data using server-side encryption with Amazon Web Services\n KMS in the\n Amazon S3 User Guide.

        \n
      • \n
      • \n

        If your Identity and Access Management (IAM) user or role is in the same\n Amazon Web Services account as the KMS key, then you must have these\n permissions on the key policy. If your IAM user or role is\n in a different account from the key, then you must have the\n permissions on both the key policy and your IAM user or\n role.

        \n
      • \n
      • \n

        All GET and PUT requests for an\n object protected by KMS fail if you don't make them by\n using Secure Sockets Layer (SSL), Transport Layer Security\n (TLS), or Signature Version 4. For information about\n configuring any of the officially supported Amazon Web Services SDKs and\n Amazon Web Services CLI, see Specifying the Signature Version in\n Request Authentication in the\n Amazon S3 User Guide.

        \n
      • \n
      \n
      \n

      For more information about server-side encryption with KMS keys\n (SSE-KMS), see Protecting\n Data Using Server-Side Encryption with KMS keys in the\n Amazon S3 User Guide.

      \n
    • \n
    • \n

      Use customer-provided encryption keys (SSE-C) – If you want to\n manage your own encryption keys, provide all the following headers in\n the request.

      \n
        \n
      • \n

        \n x-amz-server-side-encryption-customer-algorithm\n

        \n
      • \n
      • \n

        \n x-amz-server-side-encryption-customer-key\n

        \n
      • \n
      • \n

        \n x-amz-server-side-encryption-customer-key-MD5\n

        \n
      • \n
      \n

      For more information about server-side encryption with\n customer-provided encryption keys (SSE-C), see Protecting data using server-side encryption with\n customer-provided encryption keys (SSE-C) in the\n Amazon S3 User Guide.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory buckets -\n For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your \n CreateSession requests or PUT object requests. Then, new objects \n are automatically encrypted with the desired encryption settings. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide. For more information about the encryption overriding behaviors in directory buckets, see Specifying server-side encryption with KMS for new object uploads.

    \n

    In the Zonal endpoint API calls (except CopyObject and UploadPartCopy) using the REST API, the encryption request headers must match the encryption settings that are specified in the CreateSession request. \n You can't override the values of the encryption settings (x-amz-server-side-encryption, x-amz-server-side-encryption-aws-kms-key-id, x-amz-server-side-encryption-context, and x-amz-server-side-encryption-bucket-key-enabled) that are specified in the CreateSession request. \n You don't need to explicitly specify these encryption settings values in Zonal endpoint API calls, and \n Amazon S3 will use the encryption settings values from the CreateSession request to protect new objects in the directory bucket. \n

    \n \n

    When you use the CLI or the Amazon Web Services SDKs, for CreateSession, the session token refreshes automatically to avoid service interruptions when a session expires. The CLI or the Amazon Web Services SDKs use the bucket's default encryption configuration for the \n CreateSession request. It's not supported to override the encryption settings values in the CreateSession request. \n So in the Zonal endpoint API calls (except CopyObject and UploadPartCopy), \n the encryption request headers must match the default encryption configuration of the directory bucket.\n\n

    \n
    \n \n

    For directory buckets, when you perform a\n CreateMultipartUpload operation and an\n UploadPartCopy operation, the request headers you provide\n in the CreateMultipartUpload request must match the default\n encryption configuration of the destination bucket.

    \n
    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to CreateMultipartUpload:

\n ", - "smithy.api#examples": [ - { - "title": "To initiate a multipart upload", - "documentation": "The following example initiates a multipart upload.", + "traits": { + "smithy.api#documentation": "

Confirms that the requester knows that they will be charged for the request. Bucket owners need not\n specify this parameter in their requests. If either the source or destination S3 bucket has Requester\n Pays enabled, the requester will pay for corresponding charges to copy the object. For information about\n downloading objects from Requester Pays buckets, see Downloading Objects in Requester Pays\n Buckets in the Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
" + } + }, + "com.amazonaws.s3#RequestPaymentConfiguration": { + "type": "structure", + "members": { + "Payer": { + "target": "com.amazonaws.s3#Payer", + "traits": { + "smithy.api#documentation": "

Specifies who pays for the download and request fees.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for Payer.

" + } + }, + "com.amazonaws.s3#RequestProgress": { + "type": "structure", + "members": { + "Enabled": { + "target": "com.amazonaws.s3#EnableRequestProgress", + "traits": { + "smithy.api#documentation": "

Specifies whether periodic QueryProgress frames should be sent. Valid values: TRUE, FALSE. Default\n value: FALSE.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for specifying if periodic QueryProgress messages should be sent.

" + } + }, + "com.amazonaws.s3#RequestRoute": { + "type": "string" + }, + "com.amazonaws.s3#RequestToken": { + "type": "string" + }, + "com.amazonaws.s3#ResponseCacheControl": { + "type": "string" + }, + "com.amazonaws.s3#ResponseContentDisposition": { + "type": "string" + }, + "com.amazonaws.s3#ResponseContentEncoding": { + "type": "string" + }, + "com.amazonaws.s3#ResponseContentLanguage": { + "type": "string" + }, + "com.amazonaws.s3#ResponseContentType": { + "type": "string" + }, + "com.amazonaws.s3#ResponseExpires": { + "type": "timestamp", + "traits": { + "smithy.api#timestampFormat": "http-date" + } + }, + "com.amazonaws.s3#Restore": { + "type": "string" + }, + "com.amazonaws.s3#RestoreExpiryDate": { + "type": "timestamp" + }, + "com.amazonaws.s3#RestoreObject": { + "type": "operation", "input": { - "Bucket": "examplebucket", - "Key": "largeobject" + "target": "com.amazonaws.s3#RestoreObjectRequest" }, "output": { - "Bucket": "examplebucket", - "UploadId": "ibZBv_75gd9r8lH_gqXatLdxMVpAlj6ZQjEs.OwyF3953YdwbcQnMA2BLGn8Lx12fQNICtMw5KyteFeHw.Sjng--", - "Key": "largeobject" - } - } - ], - "smithy.api#http": { - "method": "POST", - "uri": "/{Bucket}/{Key+}?uploads", - "code": 200 - } - } - }, - "com.amazonaws.s3#CreateMultipartUploadOutput": { - "type": "structure", - "members": { - "AbortDate": { - "target": "com.amazonaws.s3#AbortDate", - "traits": { - "smithy.api#documentation": "

If the bucket has a lifecycle rule configured with an action to abort incomplete\n multipart uploads and the prefix in the lifecycle rule matches the object name in the\n request, the response includes this header. The header indicates when the initiated\n multipart upload becomes eligible for an abort operation. For more information, see \n Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration in\n the Amazon S3 User Guide.

\n

The response also includes the x-amz-abort-rule-id header that provides the\n ID of the lifecycle configuration rule that defines the abort action.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-abort-date" - } - }, - "AbortRuleId": { - "target": "com.amazonaws.s3#AbortRuleId", - "traits": { - "smithy.api#documentation": "

This header is returned along with the x-amz-abort-date header. It\n identifies the applicable lifecycle configuration rule that defines the action to abort\n incomplete multipart uploads.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-abort-rule-id" - } - }, - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket to which the multipart upload was initiated. Does not return the\n access point ARN or access point alias if used.

\n \n

Access points are not supported by directory buckets.

\n
", - "smithy.api#xmlName": "Bucket" - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Object key for which the multipart upload was initiated.

" - } - }, - "UploadId": { - "target": "com.amazonaws.s3#MultipartUploadId", - "traits": { - "smithy.api#documentation": "

ID for the initiated multipart upload.

" - } - }, - "ServerSideEncryption": { - "target": "com.amazonaws.s3#ServerSideEncryption", - "traits": { - "smithy.api#documentation": "

The server-side encryption algorithm used when you store this object in Amazon S3 (for\n example, AES256, aws:kms).

", - "smithy.api#httpHeader": "x-amz-server-side-encryption" - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the\n response will include this header to confirm the encryption algorithm that's used.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the\n response will include this header to provide the round-trip message integrity verification\n of the customer-provided encryption key.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - }, - "SSEKMSKeyId": { - "target": "com.amazonaws.s3#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

If present, indicates the ID of the KMS key that was used for object encryption.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" - } - }, - "SSEKMSEncryptionContext": { - "target": "com.amazonaws.s3#SSEKMSEncryptionContext", - "traits": { - "smithy.api#documentation": "

If present, indicates the Amazon Web Services KMS Encryption Context to use for object encryption. The value of\n this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-context" - } - }, - "BucketKeyEnabled": { - "target": "com.amazonaws.s3#BucketKeyEnabled", - "traits": { - "smithy.api#documentation": "

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption\n with Key Management Service (KMS) keys (SSE-KMS).

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

The algorithm that was used to create a checksum of the object.

", - "smithy.api#httpHeader": "x-amz-checksum-algorithm" - } - }, - "ChecksumType": { - "target": "com.amazonaws.s3#ChecksumType", - "traits": { - "smithy.api#documentation": "

Indicates the checksum type that you want Amazon S3 to use to calculate the object’s\n checksum value. For more information, see Checking object integrity\n in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-type" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "InitiateMultipartUploadResult" - } - }, - "com.amazonaws.s3#CreateMultipartUploadRequest": { - "type": "structure", - "members": { - "ACL": { - "target": "com.amazonaws.s3#ObjectCannedACL", - "traits": { - "smithy.api#documentation": "

The canned ACL to apply to the object. Amazon S3 supports a set of predefined ACLs, known as\n canned ACLs. Each canned ACL has a predefined set of grantees and\n permissions. For more information, see Canned ACL in the\n Amazon S3 User Guide.

\n

By default, all objects are private. Only the owner has full access control. When\n uploading an object, you can grant access permissions to individual Amazon Web Services accounts or to\n predefined groups defined by Amazon S3. These permissions are then added to the access control\n list (ACL) on the new object. For more information, see Using ACLs. One way to grant\n the permissions using the request headers is to specify a canned ACL with the\n x-amz-acl request header.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-acl" - } - }, - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket where the multipart upload is initiated and where the object is\n uploaded.

\n

\n Directory buckets -\n When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "CacheControl": { - "target": "com.amazonaws.s3#CacheControl", - "traits": { - "smithy.api#documentation": "

Specifies caching behavior along the request/reply chain.

", - "smithy.api#httpHeader": "Cache-Control" - } - }, - "ContentDisposition": { - "target": "com.amazonaws.s3#ContentDisposition", - "traits": { - "smithy.api#documentation": "

Specifies presentational information for the object.

", - "smithy.api#httpHeader": "Content-Disposition" - } - }, - "ContentEncoding": { - "target": "com.amazonaws.s3#ContentEncoding", - "traits": { - "smithy.api#documentation": "

Specifies what content encodings have been applied to the object and thus what decoding\n mechanisms must be applied to obtain the media-type referenced by the Content-Type header\n field.

\n \n

For directory buckets, only the aws-chunked value is supported in this header field.

\n
", - "smithy.api#httpHeader": "Content-Encoding" - } - }, - "ContentLanguage": { - "target": "com.amazonaws.s3#ContentLanguage", - "traits": { - "smithy.api#documentation": "

The language that the content is in.

", - "smithy.api#httpHeader": "Content-Language" - } - }, - "ContentType": { - "target": "com.amazonaws.s3#ContentType", - "traits": { - "smithy.api#documentation": "

A standard MIME type describing the format of the object data.

", - "smithy.api#httpHeader": "Content-Type" - } - }, - "Expires": { - "target": "com.amazonaws.s3#Expires", - "traits": { - "smithy.api#documentation": "

The date and time at which the object is no longer cacheable.

", - "smithy.api#httpHeader": "Expires" - } - }, - "GrantFullControl": { - "target": "com.amazonaws.s3#GrantFullControl", - "traits": { - "smithy.api#documentation": "

Specify access permissions explicitly to give the grantee READ, READ_ACP, and WRITE_ACP\n permissions on the object.

\n

By default, all objects are private. Only the owner has full access control. When\n uploading an object, you can use this header to explicitly grant access permissions to\n specific Amazon Web Services accounts or groups. This header maps to specific permissions that Amazon S3\n supports in an ACL. For more information, see Access Control List (ACL) Overview\n in the Amazon S3 User Guide.

\n

You specify each grantee as a type=value pair, where the type is one of the\n following:

\n
    \n
  • \n

    \n id – if the value specified is the canonical user ID of an\n Amazon Web Services account

    \n
  • \n
  • \n

    \n uri – if you are granting permissions to a predefined group

    \n
  • \n
  • \n

    \n emailAddress – if the value specified is the email address of an\n Amazon Web Services account

    \n \n

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    \n
      \n
    • \n

      US East (N. Virginia)

      \n
    • \n
    • \n

      US West (N. California)

      \n
    • \n
    • \n

      US West (Oregon)

      \n
    • \n
    • \n

      Asia Pacific (Singapore)

      \n
    • \n
    • \n

      Asia Pacific (Sydney)

      \n
    • \n
    • \n

      Asia Pacific (Tokyo)

      \n
    • \n
    • \n

      Europe (Ireland)

      \n
    • \n
    • \n

      South America (São Paulo)

      \n
    • \n
    \n

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

    \n
    \n
  • \n
\n

For example, the following x-amz-grant-read header grants the Amazon Web Services accounts identified by account IDs permissions to read object data and its metadata:

\n

\n x-amz-grant-read: id=\"11112222333\", id=\"444455556666\" \n

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-grant-full-control" - } - }, - "GrantRead": { - "target": "com.amazonaws.s3#GrantRead", - "traits": { - "smithy.api#documentation": "

Specify access permissions explicitly to allow grantee to read the object data and its\n metadata.

\n

By default, all objects are private. Only the owner has full access control. When\n uploading an object, you can use this header to explicitly grant access permissions to\n specific Amazon Web Services accounts or groups. This header maps to specific permissions that Amazon S3\n supports in an ACL. For more information, see Access Control List (ACL) Overview\n in the Amazon S3 User Guide.

\n

You specify each grantee as a type=value pair, where the type is one of the\n following:

\n
    \n
  • \n

    \n id – if the value specified is the canonical user ID of an\n Amazon Web Services account

    \n
  • \n
  • \n

    \n uri – if you are granting permissions to a predefined group

    \n
  • \n
  • \n

    \n emailAddress – if the value specified is the email address of an\n Amazon Web Services account

    \n \n

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    \n
      \n
    • \n

      US East (N. Virginia)

      \n
    • \n
    • \n

      US West (N. California)

      \n
    • \n
    • \n

      US West (Oregon)

      \n
    • \n
    • \n

      Asia Pacific (Singapore)

      \n
    • \n
    • \n

      Asia Pacific (Sydney)

      \n
    • \n
    • \n

      Asia Pacific (Tokyo)

      \n
    • \n
    • \n

      Europe (Ireland)

      \n
    • \n
    • \n

      South America (São Paulo)

      \n
    • \n
    \n

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

    \n
    \n
  • \n
\n

For example, the following x-amz-grant-read header grants the Amazon Web Services accounts identified by account IDs permissions to read object data and its metadata:

\n

\n x-amz-grant-read: id=\"11112222333\", id=\"444455556666\" \n

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-grant-read" - } - }, - "GrantReadACP": { - "target": "com.amazonaws.s3#GrantReadACP", - "traits": { - "smithy.api#documentation": "

Specify access permissions explicitly to allows grantee to read the object ACL.

\n

By default, all objects are private. Only the owner has full access control. When\n uploading an object, you can use this header to explicitly grant access permissions to\n specific Amazon Web Services accounts or groups. This header maps to specific permissions that Amazon S3\n supports in an ACL. For more information, see Access Control List (ACL) Overview\n in the Amazon S3 User Guide.

\n

You specify each grantee as a type=value pair, where the type is one of the\n following:

\n
    \n
  • \n

    \n id – if the value specified is the canonical user ID of an\n Amazon Web Services account

    \n
  • \n
  • \n

    \n uri – if you are granting permissions to a predefined group

    \n
  • \n
  • \n

    \n emailAddress – if the value specified is the email address of an\n Amazon Web Services account

    \n \n

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    \n
      \n
    • \n

      US East (N. Virginia)

      \n
    • \n
    • \n

      US West (N. California)

      \n
    • \n
    • \n

      US West (Oregon)

      \n
    • \n
    • \n

      Asia Pacific (Singapore)

      \n
    • \n
    • \n

      Asia Pacific (Sydney)

      \n
    • \n
    • \n

      Asia Pacific (Tokyo)

      \n
    • \n
    • \n

      Europe (Ireland)

      \n
    • \n
    • \n

      South America (São Paulo)

      \n
    • \n
    \n

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

    \n
    \n
  • \n
\n

For example, the following x-amz-grant-read header grants the Amazon Web Services accounts identified by account IDs permissions to read object data and its metadata:

\n

\n x-amz-grant-read: id=\"11112222333\", id=\"444455556666\" \n

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-grant-read-acp" - } - }, - "GrantWriteACP": { - "target": "com.amazonaws.s3#GrantWriteACP", - "traits": { - "smithy.api#documentation": "

Specify access permissions explicitly to allows grantee to allow grantee to write the\n ACL for the applicable object.

\n

By default, all objects are private. Only the owner has full access control. When\n uploading an object, you can use this header to explicitly grant access permissions to\n specific Amazon Web Services accounts or groups. This header maps to specific permissions that Amazon S3\n supports in an ACL. For more information, see Access Control List (ACL) Overview\n in the Amazon S3 User Guide.

\n

You specify each grantee as a type=value pair, where the type is one of the\n following:

\n
    \n
  • \n

    \n id – if the value specified is the canonical user ID of an\n Amazon Web Services account

    \n
  • \n
  • \n

    \n uri – if you are granting permissions to a predefined group

    \n
  • \n
  • \n

    \n emailAddress – if the value specified is the email address of an\n Amazon Web Services account

    \n \n

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    \n
      \n
    • \n

      US East (N. Virginia)

      \n
    • \n
    • \n

      US West (N. California)

      \n
    • \n
    • \n

      US West (Oregon)

      \n
    • \n
    • \n

      Asia Pacific (Singapore)

      \n
    • \n
    • \n

      Asia Pacific (Sydney)

      \n
    • \n
    • \n

      Asia Pacific (Tokyo)

      \n
    • \n
    • \n

      Europe (Ireland)

      \n
    • \n
    • \n

      South America (São Paulo)

      \n
    • \n
    \n

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

    \n
    \n
  • \n
\n

For example, the following x-amz-grant-read header grants the Amazon Web Services accounts identified by account IDs permissions to read object data and its metadata:

\n

\n x-amz-grant-read: id=\"11112222333\", id=\"444455556666\" \n

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-grant-write-acp" - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Object key for which the multipart upload is to be initiated.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Key" - } - } - }, - "Metadata": { - "target": "com.amazonaws.s3#Metadata", - "traits": { - "smithy.api#documentation": "

A map of metadata to store with the object in S3.

", - "smithy.api#httpPrefixHeaders": "x-amz-meta-" - } - }, - "ServerSideEncryption": { - "target": "com.amazonaws.s3#ServerSideEncryption", - "traits": { - "smithy.api#documentation": "

The server-side encryption algorithm used when you store this object in Amazon S3 (for\n example, AES256, aws:kms).

\n
    \n
  • \n

    \n Directory buckets -\n For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your \n CreateSession requests or PUT object requests. Then, new objects \n are automatically encrypted with the desired encryption settings. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide. For more information about the encryption overriding behaviors in directory buckets, see Specifying server-side encryption with KMS for new object uploads.

    \n

    In the Zonal endpoint API calls (except CopyObject and UploadPartCopy) using the REST API, the encryption request headers must match the encryption settings that are specified in the CreateSession request. \n You can't override the values of the encryption settings (x-amz-server-side-encryption, x-amz-server-side-encryption-aws-kms-key-id, x-amz-server-side-encryption-context, and x-amz-server-side-encryption-bucket-key-enabled) that are specified in the CreateSession request. \n You don't need to explicitly specify these encryption settings values in Zonal endpoint API calls, and \n Amazon S3 will use the encryption settings values from the CreateSession request to protect new objects in the directory bucket. \n

    \n \n

    When you use the CLI or the Amazon Web Services SDKs, for CreateSession, the session token refreshes automatically to avoid service interruptions when a session expires. The CLI or the Amazon Web Services SDKs use the bucket's default encryption configuration for the \n CreateSession request. It's not supported to override the encryption settings values in the CreateSession request. \n So in the Zonal endpoint API calls (except CopyObject and UploadPartCopy), \n the encryption request headers must match the default encryption configuration of the directory bucket.\n\n

    \n
    \n
  • \n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3#StorageClass", - "traits": { - "smithy.api#documentation": "

By default, Amazon S3 uses the STANDARD Storage Class to store newly created objects. The\n STANDARD storage class provides high durability and high availability. Depending on\n performance needs, you can specify a different Storage Class. For more information, see\n Storage\n Classes in the Amazon S3 User Guide.

\n \n
    \n
  • \n

    For directory buckets, only the S3 Express One Zone storage class is supported to store\n newly created objects.

    \n
  • \n
  • \n

    Amazon S3 on Outposts only uses the OUTPOSTS Storage Class.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-storage-class" - } - }, - "WebsiteRedirectLocation": { - "target": "com.amazonaws.s3#WebsiteRedirectLocation", - "traits": { - "smithy.api#documentation": "

If the bucket is configured as a website, redirects requests for this object to another\n object in the same bucket or to an external URL. Amazon S3 stores the value of this header in\n the object metadata.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-website-redirect-location" - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKey": { - "target": "com.amazonaws.s3#SSECustomerKey", - "traits": { - "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This\n value is used to store the object and then it is discarded; Amazon S3 does not store the\n encryption key. The key must be appropriate for use with the algorithm specified in the\n x-amz-server-side-encryption-customer-algorithm header.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the customer-provided encryption key according to\n RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption\n key was transmitted without error.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - }, - "SSEKMSKeyId": { - "target": "com.amazonaws.s3#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

Specifies the KMS key ID (Key ID, Key ARN, or Key Alias) to use for object encryption. If the KMS key doesn't exist in the same\n account that's issuing the command, you must use the full Key ARN not the Key ID.

\n

\n General purpose buckets - If you specify x-amz-server-side-encryption with aws:kms or aws:kms:dsse, this header specifies the ID (Key ID, Key ARN, or Key Alias) of the KMS \n key to use. If you specify\n x-amz-server-side-encryption:aws:kms or\n x-amz-server-side-encryption:aws:kms:dsse, but do not provide x-amz-server-side-encryption-aws-kms-key-id, Amazon S3 uses the Amazon Web Services managed key\n (aws/s3) to protect the data.

\n

\n Directory buckets - If you specify x-amz-server-side-encryption with aws:kms, the \n x-amz-server-side-encryption-aws-kms-key-id header is implicitly assigned the ID of the KMS \n symmetric encryption customer managed key that's configured for your directory bucket's default encryption setting. \n If you want to specify the \n x-amz-server-side-encryption-aws-kms-key-id header explicitly, you can only specify it with the ID (Key ID or Key ARN) of the KMS \n customer managed key that's configured for your directory bucket's default encryption setting. Otherwise, you get an HTTP 400 Bad Request error. Only use the key ID or key ARN. The key alias format of the KMS key isn't supported. Your SSE-KMS configuration can only support 1 customer managed key per directory bucket for the lifetime of the bucket. \nThe Amazon Web Services managed key (aws/s3) isn't supported. \n

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" - } - }, - "SSEKMSEncryptionContext": { - "target": "com.amazonaws.s3#SSEKMSEncryptionContext", - "traits": { - "smithy.api#documentation": "

Specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of\n this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs.

\n

\n Directory buckets - You can optionally provide an explicit encryption context value. The value must match the default encryption context - the bucket Amazon Resource Name (ARN). An additional encryption context value is not supported.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-context" - } - }, - "BucketKeyEnabled": { - "target": "com.amazonaws.s3#BucketKeyEnabled", - "traits": { - "smithy.api#documentation": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with\n server-side encryption using Key Management Service (KMS) keys (SSE-KMS).

\n

\n General purpose buckets - Setting this header to\n true causes Amazon S3 to use an S3 Bucket Key for object encryption with\n SSE-KMS. Also, specifying this header with a PUT action doesn't affect bucket-level settings for S3\n Bucket Key.

\n

\n Directory buckets - S3 Bucket Keys are always enabled for GET and PUT operations in a directory bucket and can’t be disabled. S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets \nto directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through CopyObject, UploadPartCopy, the Copy operation in Batch Operations, or \n the import jobs. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "Tagging": { - "target": "com.amazonaws.s3#TaggingHeader", - "traits": { - "smithy.api#documentation": "

The tag-set for the object. The tag-set must be encoded as URL Query parameters.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-tagging" - } - }, - "ObjectLockMode": { - "target": "com.amazonaws.s3#ObjectLockMode", - "traits": { - "smithy.api#documentation": "

Specifies the Object Lock mode that you want to apply to the uploaded object.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-object-lock-mode" - } - }, - "ObjectLockRetainUntilDate": { - "target": "com.amazonaws.s3#ObjectLockRetainUntilDate", - "traits": { - "smithy.api#documentation": "

Specifies the date and time when you want the Object Lock to expire.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-object-lock-retain-until-date" - } - }, - "ObjectLockLegalHoldStatus": { - "target": "com.amazonaws.s3#ObjectLockLegalHoldStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether you want to apply a legal hold to the uploaded object.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-object-lock-legal-hold" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm that you want Amazon S3 to use to create the checksum for the object. For more information, see\n Checking object integrity in\n the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-algorithm" - } - }, - "ChecksumType": { - "target": "com.amazonaws.s3#ChecksumType", - "traits": { - "smithy.api#documentation": "

Indicates the checksum type that you want Amazon S3 to use to calculate the object’s\n checksum value. For more information, see Checking object integrity\n in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-type" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#CreateSession": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#CreateSessionRequest" - }, - "output": { - "target": "com.amazonaws.s3#CreateSessionOutput" - }, - "errors": [ - { - "target": "com.amazonaws.s3#NoSuchBucket" - } - ], - "traits": { - "smithy.api#documentation": "

Creates a session that establishes temporary security credentials to support fast\n authentication and authorization for the Zonal endpoint API operations on directory buckets. For more\n information about Zonal endpoint API operations that include the Availability Zone in the request endpoint, see S3 Express One Zone\n APIs in the Amazon S3 User Guide.

\n

To make Zonal endpoint API requests on a directory bucket, use the CreateSession\n API operation. Specifically, you grant s3express:CreateSession permission to a\n bucket in a bucket policy or an IAM identity-based policy. Then, you use IAM credentials to make the\n CreateSession API request on the bucket, which returns temporary security\n credentials that include the access key ID, secret access key, session token, and\n expiration. These credentials have associated permissions to access the Zonal endpoint API operations. After\n the session is created, you don’t need to use other policies to grant permissions to each\n Zonal endpoint API individually. Instead, in your Zonal endpoint API requests, you sign your requests by\n applying the temporary security credentials of the session to the request headers and\n following the SigV4 protocol for authentication. You also apply the session token to the\n x-amz-s3session-token request header for authorization. Temporary security\n credentials are scoped to the bucket and expire after 5 minutes. After the expiration time,\n any calls that you make with those credentials will fail. You must use IAM credentials\n again to make a CreateSession API request that generates a new set of\n temporary credentials for use. Temporary credentials cannot be extended or refreshed beyond\n the original specified interval.

\n

If you use Amazon Web Services SDKs, SDKs handle the session token refreshes automatically to avoid\n service interruptions when a session expires. We recommend that you use the Amazon Web Services SDKs to\n initiate and manage requests to the CreateSession API. For more information, see Performance guidelines and design patterns in the\n Amazon S3 User Guide.

\n \n
    \n
  • \n

    You must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n \n CopyObject API operation -\n Unlike other Zonal endpoint API operations, the CopyObject API operation doesn't use\n the temporary security credentials returned from the CreateSession\n API operation for authentication and authorization. For information about\n authentication and authorization of the CopyObject API operation on\n directory buckets, see CopyObject.

    \n
  • \n
  • \n

    \n \n HeadBucket API operation -\n Unlike other Zonal endpoint API operations, the HeadBucket API operation doesn't use\n the temporary security credentials returned from the CreateSession\n API operation for authentication and authorization. For information about\n authentication and authorization of the HeadBucket API operation on\n directory buckets, see HeadBucket.

    \n
  • \n
\n
\n
\n
Permissions
\n
\n

To obtain temporary security credentials, you must create\n a bucket policy or an IAM identity-based policy that grants s3express:CreateSession\n permission to the bucket. In a policy, you can have the\n s3express:SessionMode condition key to control who can create a\n ReadWrite or ReadOnly session. For more information\n about ReadWrite or ReadOnly sessions, see \n x-amz-create-session-mode\n . For example policies, see\n Example bucket policies for S3 Express One Zone and Amazon Web Services Identity and Access Management (IAM) identity-based policies for\n S3 Express One Zone in the Amazon S3 User Guide.

\n

To grant cross-account access to Zonal endpoint API operations, the bucket policy should also\n grant both accounts the s3express:CreateSession permission.

\n

If you want to encrypt objects with SSE-KMS, you must also have the\n kms:GenerateDataKey and the kms:Decrypt permissions\n in IAM identity-based policies and KMS key policies for the target KMS\n key.

\n
\n
Encryption
\n
\n

For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your \n CreateSession requests or PUT object requests. Then, new objects \n are automatically encrypted with the desired encryption settings. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide. For more information about the encryption overriding behaviors in directory buckets, see Specifying server-side encryption with KMS for new object uploads.

\n

For Zonal endpoint (object-level) API operations except CopyObject and UploadPartCopy, \nyou authenticate and authorize requests through CreateSession for low latency. \n To encrypt new objects in a directory bucket with SSE-KMS, you must specify SSE-KMS as the directory bucket's default encryption configuration with a KMS key (specifically, a customer managed key). Then, when a session is created for Zonal endpoint API operations, new objects are automatically encrypted and decrypted with SSE-KMS and S3 Bucket Keys during the session.

\n \n

\n Only 1 customer managed key is supported per directory bucket for the lifetime of the bucket. The Amazon Web Services managed key (aws/s3) isn't supported. \n After you specify SSE-KMS as your bucket's default encryption configuration with a customer managed key, you can't change the customer managed key for the bucket's SSE-KMS configuration.\n

\n
\n

In the Zonal endpoint API calls (except CopyObject and UploadPartCopy) using the REST API, \n you can't override the values of the encryption settings (x-amz-server-side-encryption, x-amz-server-side-encryption-aws-kms-key-id, x-amz-server-side-encryption-context, and x-amz-server-side-encryption-bucket-key-enabled) from the CreateSession request. \n You don't need to explicitly specify these encryption settings values in Zonal endpoint API calls, and \n Amazon S3 will use the encryption settings values from the CreateSession request to protect new objects in the directory bucket. \n

\n \n

When you use the CLI or the Amazon Web Services SDKs, for CreateSession, the session token refreshes automatically to avoid service interruptions when a session expires. The CLI or the Amazon Web Services SDKs use the bucket's default encryption configuration for the \n CreateSession request. It's not supported to override the encryption settings values in the CreateSession request. \n Also, in the Zonal endpoint API calls (except CopyObject and UploadPartCopy), \n it's not supported to override the values of the encryption settings from the CreateSession request. \n\n

\n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?session", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "DisableS3ExpressSessionAuth": { - "value": true - } - } - } - }, - "com.amazonaws.s3#CreateSessionOutput": { - "type": "structure", - "members": { - "ServerSideEncryption": { - "target": "com.amazonaws.s3#ServerSideEncryption", - "traits": { - "smithy.api#documentation": "

The server-side encryption algorithm used when you store objects in the directory bucket.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption" - } - }, - "SSEKMSKeyId": { - "target": "com.amazonaws.s3#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

If you specify x-amz-server-side-encryption with aws:kms, this header indicates the ID of the KMS \n symmetric encryption customer managed key that was used for object encryption.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" - } - }, - "SSEKMSEncryptionContext": { - "target": "com.amazonaws.s3#SSEKMSEncryptionContext", - "traits": { - "smithy.api#documentation": "

If present, indicates the Amazon Web Services KMS Encryption Context to use for object encryption. The value of\n this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs. \n This value is stored as object metadata and automatically gets\n passed on to Amazon Web Services KMS for future GetObject \n operations on this object.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-context" - } - }, - "BucketKeyEnabled": { - "target": "com.amazonaws.s3#BucketKeyEnabled", - "traits": { - "smithy.api#documentation": "

Indicates whether to use an S3 Bucket Key for server-side encryption\n with KMS keys (SSE-KMS).

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" - } - }, - "Credentials": { - "target": "com.amazonaws.s3#SessionCredentials", - "traits": { - "smithy.api#documentation": "

The established temporary security credentials for the created session.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "Credentials" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "CreateSessionResult" - } - }, - "com.amazonaws.s3#CreateSessionRequest": { - "type": "structure", - "members": { - "SessionMode": { - "target": "com.amazonaws.s3#SessionMode", - "traits": { - "smithy.api#documentation": "

Specifies the mode of the session that will be created, either ReadWrite or\n ReadOnly. By default, a ReadWrite session is created. A\n ReadWrite session is capable of executing all the Zonal endpoint API operations on a\n directory bucket. A ReadOnly session is constrained to execute the following\n Zonal endpoint API operations: GetObject, HeadObject, ListObjectsV2,\n GetObjectAttributes, ListParts, and\n ListMultipartUploads.

", - "smithy.api#httpHeader": "x-amz-create-session-mode" - } - }, - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket that you create a session for.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ServerSideEncryption": { - "target": "com.amazonaws.s3#ServerSideEncryption", - "traits": { - "smithy.api#documentation": "

The server-side encryption algorithm to use when you store objects in the directory bucket.

\n

For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms). By default, Amazon S3 encrypts data with SSE-S3. \n For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption" - } - }, - "SSEKMSKeyId": { - "target": "com.amazonaws.s3#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

If you specify x-amz-server-side-encryption with aws:kms, you must specify the \n x-amz-server-side-encryption-aws-kms-key-id header with the ID (Key ID or Key ARN) of the KMS \n symmetric encryption customer managed key to use. Otherwise, you get an HTTP 400 Bad Request error. Only use the key ID or key ARN. The key alias format of the KMS key isn't supported. Also, if the KMS key doesn't exist in the same\n account that't issuing the command, you must use the full Key ARN not the Key ID.

\n

Your SSE-KMS configuration can only support 1 customer managed key per directory bucket for the lifetime of the bucket. \nThe Amazon Web Services managed key (aws/s3) isn't supported. \n

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" - } - }, - "SSEKMSEncryptionContext": { - "target": "com.amazonaws.s3#SSEKMSEncryptionContext", - "traits": { - "smithy.api#documentation": "

Specifies the Amazon Web Services KMS Encryption Context as an additional encryption context to use for object encryption. The value of\n this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs. \n This value is stored as object metadata and automatically gets passed on\n to Amazon Web Services KMS for future GetObject operations on\n this object.

\n

\n General purpose buckets - This value must be explicitly added during CopyObject operations if you want an additional encryption context for your object. For more information, see Encryption context in the Amazon S3 User Guide.

\n

\n Directory buckets - You can optionally provide an explicit encryption context value. The value must match the default encryption context - the bucket Amazon Resource Name (ARN). An additional encryption context value is not supported.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-context" - } - }, - "BucketKeyEnabled": { - "target": "com.amazonaws.s3#BucketKeyEnabled", - "traits": { - "smithy.api#documentation": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with\n server-side encryption using KMS keys (SSE-KMS).

\n

S3 Bucket Keys are always enabled for GET and PUT operations in a directory bucket and can’t be disabled. S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets \nto directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through CopyObject, UploadPartCopy, the Copy operation in Batch Operations, or \n the import jobs. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#CreationDate": { - "type": "timestamp" - }, - "com.amazonaws.s3#DataRedundancy": { - "type": "enum", - "members": { - "SingleAvailabilityZone": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "SingleAvailabilityZone" - } - }, - "SingleLocalZone": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "SingleLocalZone" - } - } - } - }, - "com.amazonaws.s3#Date": { - "type": "timestamp", - "traits": { - "smithy.api#timestampFormat": "date-time" - } - }, - "com.amazonaws.s3#Days": { - "type": "integer" - }, - "com.amazonaws.s3#DaysAfterInitiation": { - "type": "integer" - }, - "com.amazonaws.s3#DefaultRetention": { - "type": "structure", - "members": { - "Mode": { - "target": "com.amazonaws.s3#ObjectLockRetentionMode", - "traits": { - "smithy.api#documentation": "

The default Object Lock retention mode you want to apply to new objects placed in the\n specified bucket. Must be used with either Days or Years.

" - } - }, - "Days": { - "target": "com.amazonaws.s3#Days", - "traits": { - "smithy.api#documentation": "

The number of days that you want to specify for the default retention period. Must be\n used with Mode.

" - } - }, - "Years": { - "target": "com.amazonaws.s3#Years", - "traits": { - "smithy.api#documentation": "

The number of years that you want to specify for the default retention period. Must be\n used with Mode.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container element for optionally specifying the default Object Lock retention\n settings for new objects placed in the specified bucket.

\n \n
    \n
  • \n

    The DefaultRetention settings require both a mode and a\n period.

    \n
  • \n
  • \n

    The DefaultRetention period can be either Days or\n Years but you must select one. You cannot specify\n Days and Years at the same time.

    \n
  • \n
\n
" - } - }, - "com.amazonaws.s3#Delete": { - "type": "structure", - "members": { - "Objects": { - "target": "com.amazonaws.s3#ObjectIdentifierList", - "traits": { - "smithy.api#documentation": "

The object to delete.

\n \n

\n Directory buckets - For directory buckets,\n an object that's composed entirely of whitespace characters is not supported by the\n DeleteObjects API operation. The request will receive a 400 Bad\n Request error and none of the objects in the request will be deleted.

\n
", - "smithy.api#required": {}, - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Object" - } - }, - "Quiet": { - "target": "com.amazonaws.s3#Quiet", - "traits": { - "smithy.api#documentation": "

Element to enable quiet mode for the request. When you add this element, you must set\n its value to true.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for the objects to delete.

" - } - }, - "com.amazonaws.s3#DeleteBucket": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeleteBucketRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Deletes the S3 bucket. All objects (including all object versions and delete markers) in\n the bucket must be deleted before the bucket itself can be deleted.

\n \n
    \n
  • \n

    \n Directory buckets - If multipart\n uploads in a directory bucket are in progress, you can't delete the bucket until\n all the in-progress multipart uploads are aborted or completed.

    \n
  • \n
  • \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - You\n must have the s3:DeleteBucket permission on the specified\n bucket in a policy.

    \n
  • \n
  • \n

    \n Directory bucket permissions -\n You must have the s3express:DeleteBucket permission in\n an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.\n For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to DeleteBucket:

\n ", - "smithy.api#examples": [ - { - "title": "To delete a bucket", - "documentation": "The following example deletes the specified bucket.", - "input": { - "Bucket": "forrandall2" - } - } - ], - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#DeleteBucketAnalyticsConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeleteBucketAnalyticsConfigurationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Deletes an analytics configuration for the bucket (specified by the analytics\n configuration ID).

\n

To use this operation, you must have permissions to perform the\n s3:PutAnalyticsConfiguration action. The bucket owner has this permission\n by default. The bucket owner can grant this permission to others. For more information\n about permissions, see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources.

\n

For information about the Amazon S3 analytics feature, see Amazon S3 Analytics – Storage Class\n Analysis.

\n

The following operations are related to\n DeleteBucketAnalyticsConfiguration:

\n ", - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}?analytics", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#DeleteBucketAnalyticsConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket from which an analytics configuration is deleted.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Id": { - "target": "com.amazonaws.s3#AnalyticsId", - "traits": { - "smithy.api#documentation": "

The ID that identifies the analytics configuration.

", - "smithy.api#httpQuery": "id", - "smithy.api#required": {} - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeleteBucketCors": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeleteBucketCorsRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Deletes the cors configuration information set for the bucket.

\n

To use this operation, you must have permission to perform the\n s3:PutBucketCORS action. The bucket owner has this permission by default\n and can grant this permission to others.

\n

For information about cors, see Enabling Cross-Origin Resource Sharing in\n the Amazon S3 User Guide.

\n

\n Related Resources\n

\n ", - "smithy.api#examples": [ - { - "title": "To delete cors configuration on a bucket.", - "documentation": "The following example deletes CORS configuration on a bucket.", - "input": { - "Bucket": "examplebucket" - } - } - ], - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}?cors", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#DeleteBucketCorsRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

Specifies the bucket whose cors configuration is being deleted.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeleteBucketEncryption": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeleteBucketEncryptionRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

This implementation of the DELETE action resets the default encryption for the bucket as\n server-side encryption with Amazon S3 managed keys (SSE-S3).

\n \n \n \n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The\n s3:PutEncryptionConfiguration permission is required in a\n policy. The bucket owner has this permission by default. The bucket owner\n can grant this permission to others. For more information about permissions,\n see Permissions Related to Bucket Operations and Managing Access\n Permissions to Your Amazon S3 Resources.

    \n
  • \n
  • \n

    \n Directory bucket permissions -\n To grant access to this API operation, you must have the\n s3express:PutEncryptionConfiguration permission in\n an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.\n For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to DeleteBucketEncryption:

\n ", - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}?encryption", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#DeleteBucketEncryptionRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket containing the server-side encryption configuration to\n delete.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must also follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide\n

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code \n501 Not Implemented.

\n
", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeleteBucketIntelligentTieringConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeleteBucketIntelligentTieringConfigurationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Deletes the S3 Intelligent-Tiering configuration from the specified bucket.

\n

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.

\n

The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.

\n

For more information, see Storage class for automatically optimizing frequently and infrequently accessed objects.

\n

Operations related to DeleteBucketIntelligentTieringConfiguration include:

\n ", - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}?intelligent-tiering", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#DeleteBucketIntelligentTieringConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the Amazon S3 bucket whose configuration you want to modify or retrieve.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Id": { - "target": "com.amazonaws.s3#IntelligentTieringId", - "traits": { - "smithy.api#documentation": "

The ID used to identify the S3 Intelligent-Tiering configuration.

", - "smithy.api#httpQuery": "id", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeleteBucketInventoryConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeleteBucketInventoryConfigurationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Deletes an inventory configuration (identified by the inventory ID) from the\n bucket.

\n

To use this operation, you must have permissions to perform the\n s3:PutInventoryConfiguration action. The bucket owner has this permission\n by default. The bucket owner can grant this permission to others. For more information\n about permissions, see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources.

\n

For information about the Amazon S3 inventory feature, see Amazon S3 Inventory.

\n

Operations related to DeleteBucketInventoryConfiguration include:

\n ", - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}?inventory", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#DeleteBucketInventoryConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket containing the inventory configuration to delete.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Id": { - "target": "com.amazonaws.s3#InventoryId", - "traits": { - "smithy.api#documentation": "

The ID used to identify the inventory configuration.

", - "smithy.api#httpQuery": "id", - "smithy.api#required": {} - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeleteBucketLifecycle": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeleteBucketLifecycleRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Deletes the lifecycle configuration from the specified bucket. Amazon S3 removes all the\n lifecycle configuration rules in the lifecycle subresource associated with the bucket. Your\n objects never expire, and Amazon S3 no longer automatically deletes any objects on the basis of\n rules contained in the deleted lifecycle configuration.

\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - By\n default, all Amazon S3 resources are private, including buckets, objects, and\n related subresources (for example, lifecycle configuration and website\n configuration). Only the resource owner (that is, the Amazon Web Services account that\n created it) can access the resource. The resource owner can optionally grant\n access permissions to others by writing an access policy. For this\n operation, a user must have the s3:PutLifecycleConfiguration\n permission.

    \n

    For more information about permissions, see Managing Access\n Permissions to Your Amazon S3 Resources.

    \n
  • \n
\n
    \n
  • \n

    \n Directory bucket permissions -\n You must have the s3express:PutLifecycleConfiguration\n permission in an IAM identity-based policy to use this operation.\n Cross-account access to this API operation isn't supported. The resource\n owner can optionally grant access permissions to others by creating a role\n or user for them as long as they are within the same account as the owner\n and resource.

    \n

    For more information about directory bucket policies and permissions, see\n Authorizing Regional endpoint APIs with IAM in the\n Amazon S3 User Guide.

    \n \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

    \n
    \n
  • \n
\n
\n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host\n header syntax is\n s3express-control.region.amazonaws.com.

\n
\n
\n

For more information about the object expiration, see Elements to Describe Lifecycle Actions.

\n

Related actions include:

\n ", - "smithy.api#examples": [ - { - "title": "To delete lifecycle configuration on a bucket.", - "documentation": "The following example deletes lifecycle configuration on a bucket.", - "input": { - "Bucket": "examplebucket" - } - } - ], - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}?lifecycle", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#DeleteBucketLifecycleRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name of the lifecycle to delete.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

This parameter applies to general purpose buckets only. It is not supported for\n directory bucket lifecycle configurations.

\n
", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeleteBucketMetadataTableConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeleteBucketMetadataTableConfigurationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

\n Deletes a metadata table configuration from a general purpose bucket. For more\n information, see Accelerating data\n discovery with S3 Metadata in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

To use this operation, you must have the s3:DeleteBucketMetadataTableConfiguration permission. For more\n information, see Setting up\n permissions for configuring metadata tables in the\n Amazon S3 User Guide.

\n
\n
\n

The following operations are related to DeleteBucketMetadataTableConfiguration:

\n ", - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}?metadataTable", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#DeleteBucketMetadataTableConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

\n The general purpose bucket that you want to remove the metadata table configuration from.\n

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

\n The expected bucket owner of the general purpose bucket that you want to remove the \n metadata table configuration from.\n

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeleteBucketMetricsConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeleteBucketMetricsConfigurationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Deletes a metrics configuration for the Amazon CloudWatch request metrics (specified by the\n metrics configuration ID) from the bucket. Note that this doesn't include the daily storage\n metrics.

\n

To use this operation, you must have permissions to perform the\n s3:PutMetricsConfiguration action. The bucket owner has this permission by\n default. The bucket owner can grant this permission to others. For more information about\n permissions, see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources.

\n

For information about CloudWatch request metrics for Amazon S3, see Monitoring Metrics with\n Amazon CloudWatch.

\n

The following operations are related to\n DeleteBucketMetricsConfiguration:

\n ", - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}?metrics", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#DeleteBucketMetricsConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket containing the metrics configuration to delete.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Id": { - "target": "com.amazonaws.s3#MetricsId", - "traits": { - "smithy.api#documentation": "

The ID used to identify the metrics configuration. The ID has a 64 character limit and\n can only contain letters, numbers, periods, dashes, and underscores.

", - "smithy.api#httpQuery": "id", - "smithy.api#required": {} - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeleteBucketOwnershipControls": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeleteBucketOwnershipControlsRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Removes OwnershipControls for an Amazon S3 bucket. To use this operation, you\n must have the s3:PutBucketOwnershipControls permission. For more information\n about Amazon S3 permissions, see Specifying Permissions in a\n Policy.

\n

For information about Amazon S3 Object Ownership, see Using Object Ownership.

\n

The following operations are related to\n DeleteBucketOwnershipControls:

\n ", - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}?ownershipControls", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#DeleteBucketOwnershipControlsRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The Amazon S3 bucket whose OwnershipControls you want to delete.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeleteBucketPolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeleteBucketPolicyRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "

Deletes the policy of a specified bucket.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n

If you are using an identity other than the root user of the Amazon Web Services account that\n owns the bucket, the calling identity must both have the\n DeleteBucketPolicy permissions on the specified bucket and belong\n to the bucket owner's account in order to use this operation.

\n

If you don't have DeleteBucketPolicy permissions, Amazon S3 returns a\n 403 Access Denied error. If you have the correct permissions, but\n you're not using an identity that belongs to the bucket owner's account, Amazon S3\n returns a 405 Method Not Allowed error.

\n \n

To ensure that bucket owners don't inadvertently lock themselves out of\n their own buckets, the root principal in a bucket owner's Amazon Web Services account can\n perform the GetBucketPolicy, PutBucketPolicy, and\n DeleteBucketPolicy API actions, even if their bucket policy\n explicitly denies the root principal's access. Bucket owner root principals can\n only be blocked from performing these API actions by VPC endpoint policies and\n Amazon Web Services Organizations policies.

\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The\n s3:DeleteBucketPolicy permission is required in a policy.\n For more information about general purpose buckets bucket policies, see Using Bucket Policies and User Policies in the\n Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions -\n To grant access to this API operation, you must have the\n s3express:DeleteBucketPolicy permission in\n an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.\n For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to DeleteBucketPolicy\n

\n ", - "smithy.api#examples": [ - { - "title": "To delete bucket policy", - "documentation": "The following example deletes bucket policy on the specified bucket.", - "input": { - "Bucket": "examplebucket" - } - } - ], - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}?policy", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#DeleteBucketPolicyRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must also follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide\n

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code \n501 Not Implemented.

\n
", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeleteBucketReplication": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeleteBucketReplicationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Deletes the replication configuration from the bucket.

\n

To use this operation, you must have permissions to perform the\n s3:PutReplicationConfiguration action. The bucket owner has these\n permissions by default and can grant it to others. For more information about permissions,\n see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources.

\n \n

It can take a while for the deletion of a replication configuration to fully\n propagate.

\n
\n

For information about replication configuration, see Replication in the\n Amazon S3 User Guide.

\n

The following operations are related to DeleteBucketReplication:

\n ", - "smithy.api#examples": [ - { - "title": "To delete bucket replication configuration", - "documentation": "The following example deletes replication configuration set on bucket.", - "input": { - "Bucket": "example" - } - } - ], - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}?replication", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#DeleteBucketReplicationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeleteBucketRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

Specifies the bucket being deleted.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must also follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide\n

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code \n501 Not Implemented.

\n
", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeleteBucketTagging": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeleteBucketTaggingRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Deletes the tags from the bucket.

\n

To use this operation, you must have permission to perform the\n s3:PutBucketTagging action. By default, the bucket owner has this\n permission and can grant this permission to others.

\n

The following operations are related to DeleteBucketTagging:

\n ", - "smithy.api#examples": [ - { - "title": "To delete bucket tags", - "documentation": "The following example deletes bucket tags.", - "input": { - "Bucket": "examplebucket" - } - } - ], - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}?tagging", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#DeleteBucketTaggingRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket that has the tag set to be removed.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeleteBucketWebsite": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeleteBucketWebsiteRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

This action removes the website configuration for a bucket. Amazon S3 returns a 200\n OK response upon successfully deleting a website configuration on the specified\n bucket. You will get a 200 OK response if the website configuration you are\n trying to delete does not exist on the bucket. Amazon S3 returns a 404 response if\n the bucket specified in the request does not exist.

\n

This DELETE action requires the S3:DeleteBucketWebsite permission. By\n default, only the bucket owner can delete the website configuration attached to a bucket.\n However, bucket owners can grant other users permission to delete the website configuration\n by writing a bucket policy granting them the S3:DeleteBucketWebsite\n permission.

\n

For more information about hosting websites, see Hosting Websites on Amazon S3.

\n

The following operations are related to DeleteBucketWebsite:

\n ", - "smithy.api#examples": [ - { - "title": "To delete bucket website configuration", - "documentation": "The following example deletes bucket website configuration.", - "input": { - "Bucket": "examplebucket" - } - } - ], - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}?website", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#DeleteBucketWebsiteRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name for which you want to remove the website configuration.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeleteMarker": { - "type": "boolean" - }, - "com.amazonaws.s3#DeleteMarkerEntry": { - "type": "structure", - "members": { - "Owner": { - "target": "com.amazonaws.s3#Owner", - "traits": { - "smithy.api#documentation": "

The account that created the delete marker.>

" - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The object key.

" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

Version ID of an object.

" - } - }, - "IsLatest": { - "target": "com.amazonaws.s3#IsLatest", - "traits": { - "smithy.api#documentation": "

Specifies whether the object is (true) or is not (false) the latest version of an\n object.

" - } - }, - "LastModified": { - "target": "com.amazonaws.s3#LastModified", - "traits": { - "smithy.api#documentation": "

Date and time when the object was last modified.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Information about the delete marker.

" - } - }, - "com.amazonaws.s3#DeleteMarkerReplication": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3#DeleteMarkerReplicationStatus", - "traits": { - "smithy.api#documentation": "

Indicates whether to replicate delete markers.

\n \n

Indicates whether to replicate delete markers.

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies whether Amazon S3 replicates delete markers. If you specify a Filter\n in your replication configuration, you must also include a\n DeleteMarkerReplication element. If your Filter includes a\n Tag element, the DeleteMarkerReplication\n Status must be set to Disabled, because Amazon S3 does not support replicating\n delete markers for tag-based rules. For an example configuration, see Basic Rule Configuration.

\n

For more information about delete marker replication, see Basic Rule\n Configuration.

\n \n

If you are using an earlier version of the replication configuration, Amazon S3 handles\n replication of delete markers differently. For more information, see Backward Compatibility.

\n
" - } - }, - "com.amazonaws.s3#DeleteMarkerReplicationStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3#DeleteMarkerVersionId": { - "type": "string" - }, - "com.amazonaws.s3#DeleteMarkers": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#DeleteMarkerEntry" - } - }, - "com.amazonaws.s3#DeleteObject": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeleteObjectRequest" - }, - "output": { - "target": "com.amazonaws.s3#DeleteObjectOutput" - }, - "traits": { - "smithy.api#documentation": "

Removes an object from a bucket. The behavior depends on the bucket's versioning state:

\n
    \n
  • \n

    If bucket versioning is not enabled, the operation permanently deletes the object.

    \n
  • \n
  • \n

    If bucket versioning is enabled, the operation inserts a delete marker, which becomes the current version of the object. To permanently delete an object in a versioned bucket, you must include the object’s versionId in the request. For more information about versioning-enabled buckets, see Deleting object versions from a versioning-enabled bucket.

    \n
  • \n
  • \n

    If bucket versioning is suspended, the operation removes the object that has a null versionId, if there is one, and inserts a delete marker that becomes the current version of the object. If there isn't an object with a null versionId, and all versions of the object have a versionId, Amazon S3 does not remove the object and only inserts a delete marker. To permanently delete an object that has a versionId, you must include the object’s versionId in the request. For more information about versioning-suspended buckets, see Deleting objects from versioning-suspended buckets.

    \n
  • \n
\n \n
    \n
  • \n

    \n Directory buckets - S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the null value of the version ID is supported by directory buckets. You can only specify null \n to the versionId query parameter in the request.

    \n
  • \n
  • \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n

To remove a specific version, you must use the versionId query parameter. Using this\n query parameter permanently deletes the version. If the object deleted is a delete marker, Amazon S3\n sets the response header x-amz-delete-marker to true.

\n

If the object you want to delete is in a bucket where the bucket versioning\n configuration is MFA Delete enabled, you must include the x-amz-mfa request\n header in the DELETE versionId request. Requests that include\n x-amz-mfa must use HTTPS. For more information about MFA Delete, see Using MFA Delete in the Amazon S3\n User Guide. To see sample\n requests that use versioning, see Sample\n Request.

\n \n

\n Directory buckets - MFA delete is not supported by directory buckets.

\n
\n

You can delete objects by explicitly calling DELETE Object or calling \n (PutBucketLifecycle) to enable Amazon S3 to remove them for you. If you want to block\n users or accounts from removing or deleting objects from your bucket, you must deny them\n the s3:DeleteObject, s3:DeleteObjectVersion, and\n s3:PutLifeCycleConfiguration actions.

\n \n

\n Directory buckets - S3 Lifecycle is not supported by directory buckets.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The following permissions are required in your policies when your \n DeleteObjects request includes specific headers.

    \n
      \n
    • \n

      \n \n s3:DeleteObject\n - To delete an object from a bucket, you must always have the s3:DeleteObject permission.

      \n
    • \n
    • \n

      \n \n s3:DeleteObjectVersion\n - To delete a specific version of an object from a versioning-enabled bucket, you must have the s3:DeleteObjectVersion permission.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following action is related to DeleteObject:

\n ", - "smithy.api#examples": [ - { - "title": "To delete an object (from a non-versioned bucket)", - "documentation": "The following example deletes an object from a non-versioned bucket.", - "input": { - "Bucket": "ExampleBucket", - "Key": "HappyFace.jpg" + "target": "com.amazonaws.s3#RestoreObjectOutput" + }, + "errors": [ + { + "target": "com.amazonaws.s3#ObjectAlreadyInActiveTierError" + } + ], + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm" + }, + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Restores an archived copy of an object back into Amazon S3

\n

This functionality is not supported for Amazon S3 on Outposts.

\n

This action performs the following types of requests:

\n
    \n
  • \n

    \n restore an archive - Restore an archived object

    \n
  • \n
\n

For more information about the S3 structure in the request body, see the\n following:

\n \n
\n
Permissions
\n
\n

To use this operation, you must have permissions to perform the s3:RestoreObject\n action. The bucket owner has this permission by default and can grant this permission to others.\n For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3\n Resources in the Amazon S3 User Guide.

\n
\n
Restoring objects
\n
\n

Objects that you archive to the S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive\n storage class, and S3 Intelligent-Tiering Archive or S3 Intelligent-Tiering Deep Archive tiers, are not accessible in\n real time. For objects in the S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive\n storage classes, you must first initiate a restore request, and then wait until a temporary copy\n of the object is available. If you want a permanent copy of the object, create a copy of it in the\n Amazon S3 Standard storage class in your S3 bucket. To access an archived object, you must restore the\n object for the duration (number of days) that you specify. For objects in the Archive Access or\n Deep Archive Access tiers of S3 Intelligent-Tiering, you must first initiate a restore request, and\n then wait until the object is moved into the Frequent Access tier.

\n

To restore a specific object version, you can provide a version ID. If you don't provide a\n version ID, Amazon S3 restores the current version.

\n

When restoring an archived object, you can specify one of the following data access tier\n options in the Tier element of the request body:

\n
    \n
  • \n

    \n Expedited - Expedited retrievals allow you to quickly access your data stored\n in the S3 Glacier Flexible Retrieval storage class or S3 Intelligent-Tiering Archive tier when occasional\n urgent requests for restoring archives are required. For all but the largest archived objects\n (250 MB+), data accessed using Expedited retrievals is typically made available within 1–5\n minutes. Provisioned capacity ensures that retrieval capacity for Expedited retrievals is\n available when you need it. Expedited retrievals and provisioned capacity are not available\n for objects stored in the S3 Glacier Deep Archive storage class or\n S3 Intelligent-Tiering Deep Archive tier.

    \n
  • \n
  • \n

    \n Standard - Standard retrievals allow you to access any of your archived\n objects within several hours. This is the default option for retrieval requests that do not\n specify the retrieval option. Standard retrievals typically finish within 3–5 hours for\n objects stored in the S3 Glacier Flexible Retrieval storage class or S3 Intelligent-Tiering Archive tier.\n They typically finish within 12 hours for objects stored in the\n S3 Glacier Deep Archive storage class or S3 Intelligent-Tiering Deep Archive tier. Standard\n retrievals are free for objects stored in S3 Intelligent-Tiering.

    \n
  • \n
  • \n

    \n Bulk - Bulk retrievals free for objects stored in the S3 Glacier Flexible\n Retrieval and S3 Intelligent-Tiering storage classes, enabling you to retrieve large amounts,\n even petabytes, of data at no cost. Bulk retrievals typically finish within 5–12 hours for\n objects stored in the S3 Glacier Flexible Retrieval storage class or S3 Intelligent-Tiering Archive tier.\n Bulk retrievals are also the lowest-cost retrieval option when restoring objects from\n S3 Glacier Deep Archive. They typically finish within 48 hours for objects stored in\n the S3 Glacier Deep Archive storage class or S3 Intelligent-Tiering Deep Archive tier.

    \n
  • \n
\n

For more information about archive retrieval options and provisioned capacity for\n Expedited data access, see Restoring Archived Objects in the\n Amazon S3 User Guide.

\n

You can use Amazon S3 restore speed upgrade to change the restore speed to a faster speed while it\n is in progress. For more information, see \n Upgrading the speed of an in-progress restore in the\n Amazon S3 User Guide.

\n

To get the status of object restoration, you can send a HEAD request. Operations\n return the x-amz-restore header, which provides information about the restoration\n status, in the response. You can use Amazon S3 event notifications to notify you when a restore is\n initiated or completed. For more information, see Configuring Amazon S3 Event Notifications in\n the Amazon S3 User Guide.

\n

After restoring an archived object, you can update the restoration period by reissuing the\n request with a new period. Amazon S3 updates the restoration period relative to the current time and\n charges only for the request-there are no data transfer charges. You cannot update the\n restoration period when Amazon S3 is actively processing your current restore request for the\n object.

\n

If your bucket has a lifecycle configuration with a rule that includes an expiration action,\n the object expiration overrides the life span that you specify in a restore request. For example,\n if you restore an object copy for 10 days, but the object is scheduled to expire in 3 days, Amazon S3\n deletes the object in 3 days. For more information about lifecycle configuration, see PutBucketLifecycleConfiguration and Object Lifecycle Management in\n Amazon S3 User Guide.

\n
\n
Responses
\n
\n

A successful action returns either the 200 OK or 202 Accepted status\n code.

\n
    \n
  • \n

    If the object is not previously restored, then Amazon S3 returns 202 Accepted in\n the response.

    \n
  • \n
  • \n

    If the object is previously restored, Amazon S3 returns 200 OK in the response.\n

    \n
  • \n
\n
    \n
  • \n

    Special errors:

    \n
      \n
    • \n

      \n Code: RestoreAlreadyInProgress\n

      \n
    • \n
    • \n

      \n Cause: Object restore is already in progress.\n

      \n
    • \n
    • \n

      \n HTTP Status Code: 409 Conflict\n

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client\n

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: GlacierExpeditedRetrievalNotAvailable\n

      \n
    • \n
    • \n

      \n Cause: expedited retrievals are currently not available. Try again later.\n (Returned if there is insufficient capacity to process the Expedited request. This error\n applies only to Expedited retrievals and not to S3 Standard or Bulk\n retrievals.)\n

      \n
    • \n
    • \n

      \n HTTP Status Code: 503\n

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: N/A\n

      \n
    • \n
    \n
  • \n
\n
\n
\n

The following operations are related to RestoreObject:

\n ", + "smithy.api#examples": [ + { + "title": "To restore an archived object", + "documentation": "The following example restores for one day an archived copy of an object back into Amazon S3 bucket.", + "input": { + "Bucket": "examplebucket", + "Key": "archivedobjectkey", + "RestoreRequest": { + "Days": 1, + "GlacierJobParameters": { + "Tier": "Expedited" + } + } + }, + "output": {} + } + ], + "smithy.api#http": { + "method": "POST", + "uri": "/{Bucket}/{Key+}?restore", + "code": 200 + } } - }, - { - "title": "To delete an object", - "documentation": "The following example deletes an object from an S3 bucket.", - "input": { - "Bucket": "examplebucket", - "Key": "objectkey.jpg" - }, - "output": {} - } - ], - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}/{Key+}?x-id=DeleteObject", - "code": 204 - } - } - }, - "com.amazonaws.s3#DeleteObjectOutput": { - "type": "structure", - "members": { - "DeleteMarker": { - "target": "com.amazonaws.s3#DeleteMarker", - "traits": { - "smithy.api#documentation": "

Indicates whether the specified object version that was permanently deleted was (true)\n or was not (false) a delete marker before deletion. In a simple DELETE, this header\n indicates whether (true) or not (false) the current version of the object is a delete\n marker.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-delete-marker" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

Returns the version ID of the delete marker created as a result of the DELETE\n operation.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-version-id" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#DeleteObjectRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name of the bucket containing the object.

\n

\n Directory buckets -\n When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Key name of the object to delete.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Key" - } - } - }, - "MFA": { - "target": "com.amazonaws.s3#MFA", - "traits": { - "smithy.api#documentation": "

The concatenation of the authentication device's serial number, a space, and the value\n that is displayed on your authentication device. Required to permanently delete a versioned\n object if versioning is configured with MFA delete enabled.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-mfa" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

Version ID used to reference a specific version of the object.

\n \n

For directory buckets in this API operation, only the null value of the version ID is supported.

\n
", - "smithy.api#httpQuery": "versionId" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "BypassGovernanceRetention": { - "target": "com.amazonaws.s3#BypassGovernanceRetention", - "traits": { - "smithy.api#documentation": "

Indicates whether S3 Object Lock should bypass Governance-mode restrictions to process\n this operation. To use this header, you must have the\n s3:BypassGovernanceRetention permission.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-bypass-governance-retention" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "IfMatch": { - "target": "com.amazonaws.s3#IfMatch", - "traits": { - "smithy.api#documentation": "

The If-Match header field makes the request method conditional on ETags. If the ETag value does not match, the operation returns\n a 412 Precondition Failed error. If the ETag matches or if the object doesn't exist, the operation will return a 204 Success (No \n Content) response.

\n

For more information about conditional requests, see RFC 7232.

\n \n

This functionality is only supported for directory buckets.

\n
", - "smithy.api#httpHeader": "If-Match" - } - }, - "IfMatchLastModifiedTime": { - "target": "com.amazonaws.s3#IfMatchLastModifiedTime", - "traits": { - "smithy.api#documentation": "

If present, the object is deleted only if its modification times matches the provided\n Timestamp. If the Timestamp values do not match, the operation\n returns a 412 Precondition Failed error. If the Timestamp matches\n or if the object doesn’t exist, the operation returns a 204 Success (No\n Content) response.

\n \n

This functionality is only supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-if-match-last-modified-time" - } - }, - "IfMatchSize": { - "target": "com.amazonaws.s3#IfMatchSize", - "traits": { - "smithy.api#documentation": "

If present, the object is deleted only if its size matches the provided size in bytes. If the Size value does not match, the operation returns a 412 Precondition Failed error. If the Size matches or if the object doesn’t exist, \n the operation returns a 204 Success (No Content) response.

\n \n

This functionality is only supported for directory buckets.

\n
\n \n

You can use the If-Match, x-amz-if-match-last-modified-time and x-amz-if-match-size \n conditional headers in conjunction with each-other or individually.

\n
", - "smithy.api#httpHeader": "x-amz-if-match-size" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeleteObjectTagging": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeleteObjectTaggingRequest" - }, - "output": { - "target": "com.amazonaws.s3#DeleteObjectTaggingOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Removes the entire tag set from the specified object. For more information about\n managing object tags, see Object Tagging.

\n

To use this operation, you must have permission to perform the\n s3:DeleteObjectTagging action.

\n

To delete tags of a specific object version, add the versionId query\n parameter in the request. You will need permission for the\n s3:DeleteObjectVersionTagging action.

\n

The following operations are related to DeleteObjectTagging:

\n ", - "smithy.api#examples": [ - { - "title": "To remove tag set from an object", - "documentation": "The following example removes tag set associated with the specified object. If the bucket is versioning enabled, the operation removes tag set from the latest object version.", - "input": { - "Bucket": "examplebucket", - "Key": "HappyFace.jpg" + }, + "com.amazonaws.s3#RestoreObjectOutput": { + "type": "structure", + "members": { + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } + }, + "RestoreOutputPath": { + "target": "com.amazonaws.s3#RestoreOutputPath", + "traits": { + "smithy.api#documentation": "

Indicates the path in the provided S3 output location where Select results will be restored\n to.

", + "smithy.api#httpHeader": "x-amz-restore-output-path" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#RestoreObjectRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name containing the object to restore.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Object key for which the action was initiated.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

VersionId used to reference a specific version of the object.

", + "smithy.api#httpQuery": "versionId" + } + }, + "RestoreRequest": { + "target": "com.amazonaws.s3#RestoreRequest", + "traits": { + "smithy.api#httpPayload": {}, + "smithy.api#xmlName": "RestoreRequest" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } }, - "output": { - "VersionId": "null" + "traits": { + "smithy.api#input": {} } - }, - { - "title": "To remove tag set from an object version", - "documentation": "The following example removes tag set associated with the specified object version. The request specifies both the object key and object version.", - "input": { - "Bucket": "examplebucket", - "Key": "HappyFace.jpg", - "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" + }, + "com.amazonaws.s3#RestoreOutputPath": { + "type": "string" + }, + "com.amazonaws.s3#RestoreRequest": { + "type": "structure", + "members": { + "Days": { + "target": "com.amazonaws.s3#Days", + "traits": { + "smithy.api#documentation": "

Lifetime of the active copy in days. Do not use with restores that specify\n OutputLocation.

\n

The Days element is required for regular restores, and must not be provided for select\n requests.

" + } + }, + "GlacierJobParameters": { + "target": "com.amazonaws.s3#GlacierJobParameters", + "traits": { + "smithy.api#documentation": "

S3 Glacier related parameters pertaining to this job. Do not use with restores that specify\n OutputLocation.

" + } + }, + "Type": { + "target": "com.amazonaws.s3#RestoreRequestType", + "traits": { + "smithy.api#documentation": "\n

Amazon S3 Select is no longer available to new customers. Existing customers of Amazon S3 Select can\n continue to use the feature as usual. Learn more\n

\n
\n

Type of restore request.

" + } + }, + "Tier": { + "target": "com.amazonaws.s3#Tier", + "traits": { + "smithy.api#documentation": "

Retrieval tier at which the restore will be processed.

" + } + }, + "Description": { + "target": "com.amazonaws.s3#Description", + "traits": { + "smithy.api#documentation": "

The optional description for the job.

" + } + }, + "SelectParameters": { + "target": "com.amazonaws.s3#SelectParameters", + "traits": { + "smithy.api#documentation": "\n

Amazon S3 Select is no longer available to new customers. Existing customers of Amazon S3 Select can\n continue to use the feature as usual. Learn more\n

\n
\n

Describes the parameters for Select job types.

" + } + }, + "OutputLocation": { + "target": "com.amazonaws.s3#OutputLocation", + "traits": { + "smithy.api#documentation": "

Describes the location where the restore job's output is stored.

" + } + } }, - "output": { - "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" - } - } - ], - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}/{Key+}?tagging", - "code": 204 - } - } - }, - "com.amazonaws.s3#DeleteObjectTaggingOutput": { - "type": "structure", - "members": { - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

The versionId of the object the tag-set was removed from.

", - "smithy.api#httpHeader": "x-amz-version-id" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#DeleteObjectTaggingRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name containing the objects from which to remove the tags.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The key that identifies the object in the bucket from which to remove all tags.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

The versionId of the object that the tag-set will be removed from.

", - "smithy.api#httpQuery": "versionId" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeleteObjects": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeleteObjectsRequest" - }, - "output": { - "target": "com.amazonaws.s3#DeleteObjectsOutput" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "

This operation enables you to delete multiple objects from a bucket using a single HTTP\n request. If you know the object keys that you want to delete, then this operation provides\n a suitable alternative to sending individual delete requests, reducing per-request\n overhead.

\n

The request can contain a list of up to 1000 keys that you want to delete. In the XML,\n you provide the object key names, and optionally, version IDs if you want to delete a\n specific version of the object from a versioning-enabled bucket. For each key, Amazon S3\n performs a delete operation and returns the result of that delete, success or failure, in\n the response. Note that if the object specified in the request is not found, Amazon S3 returns\n the result as deleted.

\n \n
    \n
  • \n

    \n Directory buckets -\n S3 Versioning isn't enabled and supported for directory buckets.

    \n
  • \n
  • \n

    \n Directory buckets -\n For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n

The operation supports two modes for the response: verbose and quiet. By default, the\n operation uses verbose mode in which the response includes the result of deletion of each\n key in your request. In quiet mode the response includes only keys where the delete\n operation encountered an error. For a successful deletion in a quiet mode, the operation\n does not return any information about the delete in the response body.

\n

When performing this action on an MFA Delete enabled bucket, that attempts to delete any\n versioned objects, you must include an MFA token. If you do not provide one, the entire\n request will fail, even if there are non-versioned objects you are trying to delete. If you\n provide an invalid token, whether there are versioned keys in the request or not, the\n entire Multi-Object Delete request will fail. For information about MFA Delete, see MFA\n Delete in the Amazon S3 User Guide.

\n \n

\n Directory buckets -\n MFA delete is not supported by directory buckets.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The\n following permissions are required in your policies when your\n DeleteObjects request includes specific headers.

    \n
      \n
    • \n

      \n \n s3:DeleteObject\n \n - To delete an object from a bucket, you must always specify\n the s3:DeleteObject permission.

      \n
    • \n
    • \n

      \n \n s3:DeleteObjectVersion\n - To delete a specific version of an object from a\n versioning-enabled bucket, you must specify the\n s3:DeleteObjectVersion permission.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
Content-MD5 request header
\n
\n
    \n
  • \n

    \n General purpose bucket - The Content-MD5\n request header is required for all Multi-Object Delete requests. Amazon S3 uses\n the header value to ensure that your request body has not been altered in\n transit.

    \n
  • \n
  • \n

    \n Directory bucket - The\n Content-MD5 request header or a additional checksum request header\n (including x-amz-checksum-crc32,\n x-amz-checksum-crc32c, x-amz-checksum-sha1, or\n x-amz-checksum-sha256) is required for all Multi-Object\n Delete requests.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to DeleteObjects:

\n ", - "smithy.api#examples": [ - { - "title": "To delete multiple object versions from a versioned bucket", - "documentation": "The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object versions and returns the key and versions of deleted objects in the response.", - "input": { - "Bucket": "examplebucket", - "Delete": { - "Objects": [ - { - "Key": "HappyFace.jpg", - "VersionId": "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b" - }, - { - "Key": "HappyFace.jpg", - "VersionId": "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd" - } - ], - "Quiet": false - } + "traits": { + "smithy.api#documentation": "

Container for restore job parameters.

" + } + }, + "com.amazonaws.s3#RestoreRequestType": { + "type": "enum", + "members": { + "SELECT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SELECT" + } + } + } + }, + "com.amazonaws.s3#RestoreStatus": { + "type": "structure", + "members": { + "IsRestoreInProgress": { + "target": "com.amazonaws.s3#IsRestoreInProgress", + "traits": { + "smithy.api#documentation": "

Specifies whether the object is currently being restored. If the object restoration is in progress,\n the header returns the value TRUE. For example:

\n

\n x-amz-optional-object-attributes: IsRestoreInProgress=\"true\"\n

\n

If the object restoration has completed, the header returns the value FALSE. For\n example:

\n

\n x-amz-optional-object-attributes: IsRestoreInProgress=\"false\",\n RestoreExpiryDate=\"2012-12-21T00:00:00.000Z\"\n

\n

If the object hasn't been restored, there is no header response.

" + } + }, + "RestoreExpiryDate": { + "target": "com.amazonaws.s3#RestoreExpiryDate", + "traits": { + "smithy.api#documentation": "

Indicates when the restored copy will expire. This value is populated only if the object has already\n been restored. For example:

\n

\n x-amz-optional-object-attributes: IsRestoreInProgress=\"false\",\n RestoreExpiryDate=\"2012-12-21T00:00:00.000Z\"\n

" + } + } }, - "output": { - "Deleted": [ - { - "VersionId": "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd", - "Key": "HappyFace.jpg" + "traits": { + "smithy.api#documentation": "

Specifies the restoration status of an object. Objects in certain storage classes must be restored\n before they can be retrieved. For more information about these storage classes and how to work with\n archived objects, see \n Working with archived objects in the Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets. Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.

\n
" + } + }, + "com.amazonaws.s3#Role": { + "type": "string" + }, + "com.amazonaws.s3#RoutingRule": { + "type": "structure", + "members": { + "Condition": { + "target": "com.amazonaws.s3#Condition", + "traits": { + "smithy.api#documentation": "

A container for describing a condition that must be met for the specified redirect to apply. For\n example, 1. If request is for pages in the /docs folder, redirect to the\n /documents folder. 2. If request results in HTTP error 4xx, redirect request to another\n host where you might process the error.

" + } }, - { - "VersionId": "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b", - "Key": "HappyFace.jpg" + "Redirect": { + "target": "com.amazonaws.s3#Redirect", + "traits": { + "smithy.api#documentation": "

Container for redirect information. You can redirect requests to another host, to another page, or\n with another protocol. In the event of an error, you can specify a different error code to\n return.

", + "smithy.api#required": {} + } } - ] + }, + "traits": { + "smithy.api#documentation": "

Specifies the redirect behavior and when a redirect is applied. For more information about routing\n rules, see Configuring\n advanced conditional redirects in the Amazon S3 User Guide.

" } - }, - { - "title": "To delete multiple objects from a versioned bucket", - "documentation": "The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.", - "input": { - "Bucket": "examplebucket", - "Delete": { - "Objects": [ - { - "Key": "objectkey1" - }, - { - "Key": "objectkey2" - } - ], - "Quiet": false - } + }, + "com.amazonaws.s3#RoutingRules": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#RoutingRule", + "traits": { + "smithy.api#xmlName": "RoutingRule" + } + } + }, + "com.amazonaws.s3#S3KeyFilter": { + "type": "structure", + "members": { + "FilterRules": { + "target": "com.amazonaws.s3#FilterRuleList", + "traits": { + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "FilterRule" + } + } }, - "output": { - "Deleted": [ - { - "DeleteMarkerVersionId": "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F", - "Key": "objectkey1", - "DeleteMarker": true + "traits": { + "smithy.api#documentation": "

A container for object key name prefix and suffix filtering rules.

" + } + }, + "com.amazonaws.s3#S3Location": { + "type": "structure", + "members": { + "BucketName": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket where the restore results will be placed.

", + "smithy.api#required": {} + } }, - { - "DeleteMarkerVersionId": "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt", - "Key": "objectkey2", - "DeleteMarker": true - } - ] - } - } - ], - "smithy.api#http": { - "method": "POST", - "uri": "/{Bucket}?delete", - "code": 200 - } - } - }, - "com.amazonaws.s3#DeleteObjectsOutput": { - "type": "structure", - "members": { - "Deleted": { - "target": "com.amazonaws.s3#DeletedObjects", - "traits": { - "smithy.api#documentation": "

Container element for a successful delete. It identifies the object that was\n successfully deleted.

", - "smithy.api#xmlFlattened": {} - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - }, - "Errors": { - "target": "com.amazonaws.s3#Errors", - "traits": { - "smithy.api#documentation": "

Container for a failed delete action that describes the object that Amazon S3 attempted to\n delete and the error it encountered.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Error" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "DeleteResult" - } - }, - "com.amazonaws.s3#DeleteObjectsRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name containing the objects to delete.

\n

\n Directory buckets -\n When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Delete": { - "target": "com.amazonaws.s3#Delete", - "traits": { - "smithy.api#documentation": "

Container for the request.

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "Delete" - } - }, - "MFA": { - "target": "com.amazonaws.s3#MFA", - "traits": { - "smithy.api#documentation": "

The concatenation of the authentication device's serial number, a space, and the value\n that is displayed on your authentication device. Required to permanently delete a versioned\n object if versioning is configured with MFA delete enabled.

\n

When performing the DeleteObjects operation on an MFA delete enabled\n bucket, which attempts to delete the specified versioned objects, you must include an MFA\n token. If you don't provide an MFA token, the entire request will fail, even if there are\n non-versioned objects that you are trying to delete. If you provide an invalid token,\n whether there are versioned object keys in the request or not, the entire Multi-Object\n Delete request will fail. For information about MFA Delete, see MFA\n Delete in the Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-mfa" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "BypassGovernanceRetention": { - "target": "com.amazonaws.s3#BypassGovernanceRetention", - "traits": { - "smithy.api#documentation": "

Specifies whether you want to delete this object even if it has a Governance-type Object\n Lock in place. To use this header, you must have the\n s3:BypassGovernanceRetention permission.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-bypass-governance-retention" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum-algorithm\n or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request.

\n

For the x-amz-checksum-algorithm\n header, replace \n algorithm\n with the supported algorithm from the following list:

\n
    \n
  • \n

    \n CRC-32\n

    \n
  • \n
  • \n

    \n CRC-32C\n

    \n
  • \n
  • \n

    \n CRC-64NVME\n

    \n
  • \n
  • \n

    \n SHA-1\n

    \n
  • \n
  • \n

    \n SHA-256\n

    \n
  • \n
\n

For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If the individual checksum value you provide through x-amz-checksum-algorithm\n doesn't match the checksum algorithm you set through x-amz-sdk-checksum-algorithm, Amazon S3 fails the request with a BadDigest error.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeletePublicAccessBlock": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#DeletePublicAccessBlockRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Removes the PublicAccessBlock configuration for an Amazon S3 bucket. To use this\n operation, you must have the s3:PutBucketPublicAccessBlock permission. For\n more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources.

\n

The following operations are related to DeletePublicAccessBlock:

\n ", - "smithy.api#http": { - "method": "DELETE", - "uri": "/{Bucket}?publicAccessBlock", - "code": 204 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#DeletePublicAccessBlockRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The Amazon S3 bucket whose PublicAccessBlock configuration you want to delete.\n

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#DeletedObject": { - "type": "structure", - "members": { - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The name of the deleted object.

" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

The version ID of the deleted object.

\n \n

This functionality is not supported for directory buckets.

\n
" - } - }, - "DeleteMarker": { - "target": "com.amazonaws.s3#DeleteMarker", - "traits": { - "smithy.api#documentation": "

Indicates whether the specified object version that was permanently deleted was (true)\n or was not (false) a delete marker before deletion. In a simple DELETE, this header\n indicates whether (true) or not (false) the current version of the object is a delete\n marker.

\n \n

This functionality is not supported for directory buckets.

\n
" - } - }, - "DeleteMarkerVersionId": { - "target": "com.amazonaws.s3#DeleteMarkerVersionId", - "traits": { - "smithy.api#documentation": "

The version ID of the delete marker created as a result of the DELETE operation. If you\n delete a specific object version, the value returned by this header is the version ID of\n the object version deleted.

\n \n

This functionality is not supported for directory buckets.

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

Information about the deleted object.

" - } - }, - "com.amazonaws.s3#DeletedObjects": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#DeletedObject" - } - }, - "com.amazonaws.s3#Delimiter": { - "type": "string" - }, - "com.amazonaws.s3#Description": { - "type": "string" - }, - "com.amazonaws.s3#Destination": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the bucket where you want Amazon S3 to store the\n results.

", - "smithy.api#required": {} - } - }, - "Account": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

Destination bucket owner account ID. In a cross-account scenario, if you direct Amazon S3 to\n change replica ownership to the Amazon Web Services account that owns the destination bucket by\n specifying the AccessControlTranslation property, this is the account ID of\n the destination bucket owner. For more information, see Replication Additional\n Configuration: Changing the Replica Owner in the\n Amazon S3 User Guide.

" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3#StorageClass", - "traits": { - "smithy.api#documentation": "

The storage class to use when replicating objects, such as S3 Standard or reduced\n redundancy. By default, Amazon S3 uses the storage class of the source object to create the\n object replica.

\n

For valid values, see the StorageClass element of the PUT Bucket\n replication action in the Amazon S3 API Reference.

" - } - }, - "AccessControlTranslation": { - "target": "com.amazonaws.s3#AccessControlTranslation", - "traits": { - "smithy.api#documentation": "

Specify this only in a cross-account scenario (where source and destination bucket\n owners are not the same), and you want to change replica ownership to the Amazon Web Services account\n that owns the destination bucket. If this is not specified in the replication\n configuration, the replicas are owned by same Amazon Web Services account that owns the source\n object.

" - } - }, - "EncryptionConfiguration": { - "target": "com.amazonaws.s3#EncryptionConfiguration", - "traits": { - "smithy.api#documentation": "

A container that provides information about encryption. If\n SourceSelectionCriteria is specified, you must specify this element.

" - } - }, - "ReplicationTime": { - "target": "com.amazonaws.s3#ReplicationTime", - "traits": { - "smithy.api#documentation": "

A container specifying S3 Replication Time Control (S3 RTC), including whether S3 RTC is enabled and the time\n when all objects and operations on objects must be replicated. Must be specified together\n with a Metrics block.

" - } - }, - "Metrics": { - "target": "com.amazonaws.s3#Metrics", - "traits": { - "smithy.api#documentation": "

A container specifying replication metrics-related settings enabling replication\n metrics and events.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies information about where to publish analysis or configuration results for an\n Amazon S3 bucket and S3 Replication Time Control (S3 RTC).

" - } - }, - "com.amazonaws.s3#DirectoryBucketToken": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 1024 - } - } - }, - "com.amazonaws.s3#DisplayName": { - "type": "string" - }, - "com.amazonaws.s3#ETag": { - "type": "string" - }, - "com.amazonaws.s3#EmailAddress": { - "type": "string" - }, - "com.amazonaws.s3#EnableRequestProgress": { - "type": "boolean" - }, - "com.amazonaws.s3#EncodingType": { - "type": "enum", - "members": { - "url": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "url" - } - } - }, - "traits": { - "smithy.api#documentation": "

Encoding type used by Amazon S3 to encode the object keys in the response.\n Responses are encoded only in UTF-8. An object key can contain any Unicode character.\n However, the XML 1.0 parser can't parse certain characters, such as characters with an\n ASCII value from 0 to 10. For characters that aren't supported in XML 1.0, you can add this\n parameter to request that Amazon S3 encode the keys in the response. For more information about\n characters to avoid in object key names, see Object key naming\n guidelines.

\n \n

When using the URL encoding type, non-ASCII characters that are used in an object's\n key name will be percent-encoded according to UTF-8 code values. For example, the object\n test_file(3).png will appear as\n test_file%283%29.png.

\n
" - } - }, - "com.amazonaws.s3#Encryption": { - "type": "structure", - "members": { - "EncryptionType": { - "target": "com.amazonaws.s3#ServerSideEncryption", - "traits": { - "smithy.api#documentation": "

The server-side encryption algorithm used when storing job results in Amazon S3 (for example,\n AES256, aws:kms).

", - "smithy.api#required": {} - } - }, - "KMSKeyId": { - "target": "com.amazonaws.s3#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

If the encryption type is aws:kms, this optional value specifies the ID of\n the symmetric encryption customer managed key to use for encryption of job results. Amazon S3 only\n supports symmetric encryption KMS keys. For more information, see Asymmetric keys in KMS in the Amazon Web Services Key Management Service\n Developer Guide.

" - } - }, - "KMSContext": { - "target": "com.amazonaws.s3#KMSContext", - "traits": { - "smithy.api#documentation": "

If the encryption type is aws:kms, this optional value can be used to\n specify the encryption context for the restore results.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the type of server-side encryption used.

" - } - }, - "com.amazonaws.s3#EncryptionConfiguration": { - "type": "structure", - "members": { - "ReplicaKmsKeyID": { - "target": "com.amazonaws.s3#ReplicaKmsKeyID", - "traits": { - "smithy.api#documentation": "

Specifies the ID (Key ARN or Alias ARN) of the customer managed Amazon Web Services KMS key stored in\n Amazon Web Services Key Management Service (KMS) for the destination bucket. Amazon S3 uses this key to\n encrypt replica objects. Amazon S3 only supports symmetric encryption KMS keys. For more\n information, see Asymmetric keys in Amazon Web Services\n KMS in the Amazon Web Services Key Management Service Developer\n Guide.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies encryption-related information for an Amazon S3 bucket that is a destination for\n replicated objects.

\n \n

If you're specifying a customer managed KMS key, we recommend using a fully\n qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves the\n key within the requester’s account. This behavior can result in data that's encrypted\n with a KMS key that belongs to the requester, and not the bucket owner.

\n
" - } - }, - "com.amazonaws.s3#EncryptionTypeMismatch": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

\n The existing object was created with a different encryption type. \n Subsequent write requests must include the appropriate encryption \n parameters in the request or while creating the session.\n

", - "smithy.api#error": "client", - "smithy.api#httpError": 400 - } - }, - "com.amazonaws.s3#End": { - "type": "long" - }, - "com.amazonaws.s3#EndEvent": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

A message that indicates the request is complete and no more messages will be sent. You\n should not assume that the request is complete until the client receives an\n EndEvent.

" - } - }, - "com.amazonaws.s3#Error": { - "type": "structure", - "members": { - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The error key.

" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

The version ID of the error.

\n \n

This functionality is not supported for directory buckets.

\n
" - } - }, - "Code": { - "target": "com.amazonaws.s3#Code", - "traits": { - "smithy.api#documentation": "

The error code is a string that uniquely identifies an error condition. It is meant to\n be read and understood by programs that detect and handle errors by type. The following is\n a list of Amazon S3 error codes. For more information, see Error responses.

\n
    \n
  • \n
      \n
    • \n

      \n Code: AccessDenied

      \n
    • \n
    • \n

      \n Description: Access Denied

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: AccountProblem

      \n
    • \n
    • \n

      \n Description: There is a problem with your Amazon Web Services account\n that prevents the action from completing successfully. Contact Amazon Web Services Support\n for further assistance.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: AllAccessDisabled

      \n
    • \n
    • \n

      \n Description: All access to this Amazon S3 resource has been\n disabled. Contact Amazon Web Services Support for further assistance.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: AmbiguousGrantByEmailAddress

      \n
    • \n
    • \n

      \n Description: The email address you provided is\n associated with more than one account.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: AuthorizationHeaderMalformed

      \n
    • \n
    • \n

      \n Description: The authorization header you provided is\n invalid.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n HTTP Status Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: BadDigest

      \n
    • \n
    • \n

      \n Description: The Content-MD5 you specified did not\n match what we received.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: BucketAlreadyExists

      \n
    • \n
    • \n

      \n Description: The requested bucket name is not\n available. The bucket namespace is shared by all users of the system. Please\n select a different name and try again.

      \n
    • \n
    • \n

      \n HTTP Status Code: 409 Conflict

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: BucketAlreadyOwnedByYou

      \n
    • \n
    • \n

      \n Description: The bucket you tried to create already\n exists, and you own it. Amazon S3 returns this error in all Amazon Web Services Regions except in\n the North Virginia Region. For legacy compatibility, if you re-create an\n existing bucket that you already own in the North Virginia Region, Amazon S3 returns\n 200 OK and resets the bucket access control lists (ACLs).

      \n
    • \n
    • \n

      \n Code: 409 Conflict (in all Regions except the North\n Virginia Region)

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: BucketNotEmpty

      \n
    • \n
    • \n

      \n Description: The bucket you tried to delete is not\n empty.

      \n
    • \n
    • \n

      \n HTTP Status Code: 409 Conflict

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: CredentialsNotSupported

      \n
    • \n
    • \n

      \n Description: This request does not support\n credentials.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: CrossLocationLoggingProhibited

      \n
    • \n
    • \n

      \n Description: Cross-location logging not allowed.\n Buckets in one geographic location cannot log information to a bucket in\n another location.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: EntityTooSmall

      \n
    • \n
    • \n

      \n Description: Your proposed upload is smaller than the\n minimum allowed object size.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: EntityTooLarge

      \n
    • \n
    • \n

      \n Description: Your proposed upload exceeds the maximum\n allowed object size.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: ExpiredToken

      \n
    • \n
    • \n

      \n Description: The provided token has expired.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: IllegalVersioningConfigurationException

      \n
    • \n
    • \n

      \n Description: Indicates that the versioning\n configuration specified in the request is invalid.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: IncompleteBody

      \n
    • \n
    • \n

      \n Description: You did not provide the number of bytes\n specified by the Content-Length HTTP header

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: IncorrectNumberOfFilesInPostRequest

      \n
    • \n
    • \n

      \n Description: POST requires exactly one file upload per\n request.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InlineDataTooLarge

      \n
    • \n
    • \n

      \n Description: Inline data exceeds the maximum allowed\n size.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InternalError

      \n
    • \n
    • \n

      \n Description: We encountered an internal error. Please\n try again.

      \n
    • \n
    • \n

      \n HTTP Status Code: 500 Internal Server Error

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Server

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidAccessKeyId

      \n
    • \n
    • \n

      \n Description: The Amazon Web Services access key ID you provided does\n not exist in our records.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidAddressingHeader

      \n
    • \n
    • \n

      \n Description: You must specify the Anonymous\n role.

      \n
    • \n
    • \n

      \n HTTP Status Code: N/A

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidArgument

      \n
    • \n
    • \n

      \n Description: Invalid Argument

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidBucketName

      \n
    • \n
    • \n

      \n Description: The specified bucket is not valid.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidBucketState

      \n
    • \n
    • \n

      \n Description: The request is not valid with the current\n state of the bucket.

      \n
    • \n
    • \n

      \n HTTP Status Code: 409 Conflict

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidDigest

      \n
    • \n
    • \n

      \n Description: The Content-MD5 you specified is not\n valid.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidEncryptionAlgorithmError

      \n
    • \n
    • \n

      \n Description: The encryption request you specified is\n not valid. The valid value is AES256.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidLocationConstraint

      \n
    • \n
    • \n

      \n Description: The specified location constraint is not\n valid. For more information about Regions, see How to Select\n a Region for Your Buckets.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidObjectState

      \n
    • \n
    • \n

      \n Description: The action is not valid for the current\n state of the object.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidPart

      \n
    • \n
    • \n

      \n Description: One or more of the specified parts could\n not be found. The part might not have been uploaded, or the specified entity\n tag might not have matched the part's entity tag.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidPartOrder

      \n
    • \n
    • \n

      \n Description: The list of parts was not in ascending\n order. Parts list must be specified in order by part number.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidPayer

      \n
    • \n
    • \n

      \n Description: All access to this object has been\n disabled. Please contact Amazon Web Services Support for further assistance.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidPolicyDocument

      \n
    • \n
    • \n

      \n Description: The content of the form does not meet the\n conditions specified in the policy document.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRange

      \n
    • \n
    • \n

      \n Description: The requested range cannot be\n satisfied.

      \n
    • \n
    • \n

      \n HTTP Status Code: 416 Requested Range Not\n Satisfiable

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: Please use\n AWS4-HMAC-SHA256.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: SOAP requests must be made over an HTTPS\n connection.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: Amazon S3 Transfer Acceleration is not\n supported for buckets with non-DNS compliant names.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: Amazon S3 Transfer Acceleration is not\n supported for buckets with periods (.) in their names.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: Amazon S3 Transfer Accelerate endpoint only\n supports virtual style requests.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: Amazon S3 Transfer Accelerate is not configured\n on this bucket.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: Amazon S3 Transfer Accelerate is disabled on\n this bucket.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: Amazon S3 Transfer Acceleration is not\n supported on this bucket. Contact Amazon Web Services Support for more information.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidRequest

      \n
    • \n
    • \n

      \n Description: Amazon S3 Transfer Acceleration cannot be\n enabled on this bucket. Contact Amazon Web Services Support for more information.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n Code: N/A

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidSecurity

      \n
    • \n
    • \n

      \n Description: The provided security credentials are not\n valid.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidSOAPRequest

      \n
    • \n
    • \n

      \n Description: The SOAP request body is invalid.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidStorageClass

      \n
    • \n
    • \n

      \n Description: The storage class you specified is not\n valid.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidTargetBucketForLogging

      \n
    • \n
    • \n

      \n Description: The target bucket for logging does not\n exist, is not owned by you, or does not have the appropriate grants for the\n log-delivery group.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidToken

      \n
    • \n
    • \n

      \n Description: The provided token is malformed or\n otherwise invalid.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: InvalidURI

      \n
    • \n
    • \n

      \n Description: Couldn't parse the specified URI.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: KeyTooLongError

      \n
    • \n
    • \n

      \n Description: Your key is too long.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MalformedACLError

      \n
    • \n
    • \n

      \n Description: The XML you provided was not well-formed\n or did not validate against our published schema.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MalformedPOSTRequest

      \n
    • \n
    • \n

      \n Description: The body of your POST request is not\n well-formed multipart/form-data.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MalformedXML

      \n
    • \n
    • \n

      \n Description: This happens when the user sends malformed\n XML (XML that doesn't conform to the published XSD) for the configuration. The\n error message is, \"The XML you provided was not well-formed or did not validate\n against our published schema.\"

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MaxMessageLengthExceeded

      \n
    • \n
    • \n

      \n Description: Your request was too big.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MaxPostPreDataLengthExceededError

      \n
    • \n
    • \n

      \n Description: Your POST request fields preceding the\n upload file were too large.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MetadataTooLarge

      \n
    • \n
    • \n

      \n Description: Your metadata headers exceed the maximum\n allowed metadata size.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MethodNotAllowed

      \n
    • \n
    • \n

      \n Description: The specified method is not allowed\n against this resource.

      \n
    • \n
    • \n

      \n HTTP Status Code: 405 Method Not Allowed

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MissingAttachment

      \n
    • \n
    • \n

      \n Description: A SOAP attachment was expected, but none\n were found.

      \n
    • \n
    • \n

      \n HTTP Status Code: N/A

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MissingContentLength

      \n
    • \n
    • \n

      \n Description: You must provide the Content-Length HTTP\n header.

      \n
    • \n
    • \n

      \n HTTP Status Code: 411 Length Required

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MissingRequestBodyError

      \n
    • \n
    • \n

      \n Description: This happens when the user sends an empty\n XML document as a request. The error message is, \"Request body is empty.\"\n

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MissingSecurityElement

      \n
    • \n
    • \n

      \n Description: The SOAP 1.1 request is missing a security\n element.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: MissingSecurityHeader

      \n
    • \n
    • \n

      \n Description: Your request is missing a required\n header.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NoLoggingStatusForKey

      \n
    • \n
    • \n

      \n Description: There is no such thing as a logging status\n subresource for a key.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NoSuchBucket

      \n
    • \n
    • \n

      \n Description: The specified bucket does not\n exist.

      \n
    • \n
    • \n

      \n HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NoSuchBucketPolicy

      \n
    • \n
    • \n

      \n Description: The specified bucket does not have a\n bucket policy.

      \n
    • \n
    • \n

      \n HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NoSuchKey

      \n
    • \n
    • \n

      \n Description: The specified key does not exist.

      \n
    • \n
    • \n

      \n HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NoSuchLifecycleConfiguration

      \n
    • \n
    • \n

      \n Description: The lifecycle configuration does not\n exist.

      \n
    • \n
    • \n

      \n HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NoSuchUpload

      \n
    • \n
    • \n

      \n Description: The specified multipart upload does not\n exist. The upload ID might be invalid, or the multipart upload might have been\n aborted or completed.

      \n
    • \n
    • \n

      \n HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NoSuchVersion

      \n
    • \n
    • \n

      \n Description: Indicates that the version ID specified in\n the request does not match an existing version.

      \n
    • \n
    • \n

      \n HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NotImplemented

      \n
    • \n
    • \n

      \n Description: A header you provided implies\n functionality that is not implemented.

      \n
    • \n
    • \n

      \n HTTP Status Code: 501 Not Implemented

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Server

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: NotSignedUp

      \n
    • \n
    • \n

      \n Description: Your account is not signed up for the Amazon S3\n service. You must sign up before you can use Amazon S3. You can sign up at the\n following URL: Amazon S3\n

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: OperationAborted

      \n
    • \n
    • \n

      \n Description: A conflicting conditional action is\n currently in progress against this resource. Try again.

      \n
    • \n
    • \n

      \n HTTP Status Code: 409 Conflict

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: PermanentRedirect

      \n
    • \n
    • \n

      \n Description: The bucket you are attempting to access\n must be addressed using the specified endpoint. Send all future requests to\n this endpoint.

      \n
    • \n
    • \n

      \n HTTP Status Code: 301 Moved Permanently

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: PreconditionFailed

      \n
    • \n
    • \n

      \n Description: At least one of the preconditions you\n specified did not hold.

      \n
    • \n
    • \n

      \n HTTP Status Code: 412 Precondition Failed

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: Redirect

      \n
    • \n
    • \n

      \n Description: Temporary redirect.

      \n
    • \n
    • \n

      \n HTTP Status Code: 307 Moved Temporarily

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: RestoreAlreadyInProgress

      \n
    • \n
    • \n

      \n Description: Object restore is already in\n progress.

      \n
    • \n
    • \n

      \n HTTP Status Code: 409 Conflict

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: RequestIsNotMultiPartContent

      \n
    • \n
    • \n

      \n Description: Bucket POST must be of the enclosure-type\n multipart/form-data.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: RequestTimeout

      \n
    • \n
    • \n

      \n Description: Your socket connection to the server was\n not read from or written to within the timeout period.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: RequestTimeTooSkewed

      \n
    • \n
    • \n

      \n Description: The difference between the request time\n and the server's time is too large.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: RequestTorrentOfBucketError

      \n
    • \n
    • \n

      \n Description: Requesting the torrent file of a bucket is\n not permitted.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: SignatureDoesNotMatch

      \n
    • \n
    • \n

      \n Description: The request signature we calculated does\n not match the signature you provided. Check your Amazon Web Services secret access key and\n signing method. For more information, see REST\n Authentication and SOAP\n Authentication for details.

      \n
    • \n
    • \n

      \n HTTP Status Code: 403 Forbidden

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: ServiceUnavailable

      \n
    • \n
    • \n

      \n Description: Service is unable to handle\n request.

      \n
    • \n
    • \n

      \n HTTP Status Code: 503 Service Unavailable

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Server

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: SlowDown

      \n
    • \n
    • \n

      \n Description: Reduce your request rate.

      \n
    • \n
    • \n

      \n HTTP Status Code: 503 Slow Down

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Server

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: TemporaryRedirect

      \n
    • \n
    • \n

      \n Description: You are being redirected to the bucket\n while DNS updates.

      \n
    • \n
    • \n

      \n HTTP Status Code: 307 Moved Temporarily

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: TokenRefreshRequired

      \n
    • \n
    • \n

      \n Description: The provided token must be\n refreshed.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: TooManyBuckets

      \n
    • \n
    • \n

      \n Description: You have attempted to create more buckets\n than allowed.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: UnexpectedContent

      \n
    • \n
    • \n

      \n Description: This request does not support\n content.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: UnresolvableGrantByEmailAddress

      \n
    • \n
    • \n

      \n Description: The email address you provided does not\n match any account on record.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: UserKeyMustBeSpecified

      \n
    • \n
    • \n

      \n Description: The bucket POST must contain the specified\n field name. If it is specified, check the order of the fields.

      \n
    • \n
    • \n

      \n HTTP Status Code: 400 Bad Request

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
\n

" - } - }, - "Message": { - "target": "com.amazonaws.s3#Message", - "traits": { - "smithy.api#documentation": "

The error message contains a generic description of the error condition in English. It\n is intended for a human audience. Simple programs display the message directly to the end\n user if they encounter an error condition they don't know how or don't care to handle.\n Sophisticated programs with more exhaustive error handling and proper internationalization\n are more likely to ignore the error message.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for all error elements.

" - } - }, - "com.amazonaws.s3#ErrorCode": { - "type": "string" - }, - "com.amazonaws.s3#ErrorDetails": { - "type": "structure", - "members": { - "ErrorCode": { - "target": "com.amazonaws.s3#ErrorCode", - "traits": { - "smithy.api#documentation": "

\n If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was \n unable to create the table, this structure contains the error code. The possible error codes and \n error messages are as follows:\n

\n
    \n
  • \n

    \n AccessDeniedCreatingResources - You don't have sufficient permissions to \n create the required resources. Make sure that you have s3tables:CreateNamespace, \n s3tables:CreateTable, s3tables:GetTable and \n s3tables:PutTablePolicy permissions, and then try again. To create a new metadata \n table, you must delete the metadata configuration for this bucket, and then create a new \n metadata configuration.\n

    \n
  • \n
  • \n

    \n AccessDeniedWritingToTable - Unable to write to the metadata table because of \n missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new \n metadata table. To create a new metadata table, you must delete the metadata configuration for \n this bucket, and then create a new metadata configuration.

    \n
  • \n
  • \n

    \n DestinationTableNotFound - The destination table doesn't exist. To create a \n new metadata table, you must delete the metadata configuration for this bucket, and then \n create a new metadata configuration.

    \n
  • \n
  • \n

    \n ServerInternalError - An internal error has occurred. To create a new metadata \n table, you must delete the metadata configuration for this bucket, and then create a new \n metadata configuration.

    \n
  • \n
  • \n

    \n TableAlreadyExists - The table that you specified already exists in the table \n bucket's namespace. Specify a different table name. To create a new metadata table, you must \n delete the metadata configuration for this bucket, and then create a new metadata \n configuration.

    \n
  • \n
  • \n

    \n TableBucketNotFound - The table bucket that you specified doesn't exist in \n this Amazon Web Services Region and account. Create or choose a different table bucket. To create a new \n metadata table, you must delete the metadata configuration for this bucket, and then create \n a new metadata configuration.

    \n
  • \n
" - } - }, - "ErrorMessage": { - "target": "com.amazonaws.s3#ErrorMessage", - "traits": { - "smithy.api#documentation": "

\n If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was \n unable to create the table, this structure contains the error message. The possible error codes and \n error messages are as follows:\n

\n
    \n
  • \n

    \n AccessDeniedCreatingResources - You don't have sufficient permissions to \n create the required resources. Make sure that you have s3tables:CreateNamespace, \n s3tables:CreateTable, s3tables:GetTable and \n s3tables:PutTablePolicy permissions, and then try again. To create a new metadata \n table, you must delete the metadata configuration for this bucket, and then create a new \n metadata configuration.\n

    \n
  • \n
  • \n

    \n AccessDeniedWritingToTable - Unable to write to the metadata table because of \n missing resource permissions. To fix the resource policy, Amazon S3 needs to create a new \n metadata table. To create a new metadata table, you must delete the metadata configuration for \n this bucket, and then create a new metadata configuration.

    \n
  • \n
  • \n

    \n DestinationTableNotFound - The destination table doesn't exist. To create a \n new metadata table, you must delete the metadata configuration for this bucket, and then \n create a new metadata configuration.

    \n
  • \n
  • \n

    \n ServerInternalError - An internal error has occurred. To create a new metadata \n table, you must delete the metadata configuration for this bucket, and then create a new \n metadata configuration.

    \n
  • \n
  • \n

    \n TableAlreadyExists - The table that you specified already exists in the table \n bucket's namespace. Specify a different table name. To create a new metadata table, you must \n delete the metadata configuration for this bucket, and then create a new metadata \n configuration.

    \n
  • \n
  • \n

    \n TableBucketNotFound - The table bucket that you specified doesn't exist in \n this Amazon Web Services Region and account. Create or choose a different table bucket. To create a new \n metadata table, you must delete the metadata configuration for this bucket, and then create \n a new metadata configuration.

    \n
  • \n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

\n If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was \n unable to create the table, this structure contains the error code and error message.\n

" - } - }, - "com.amazonaws.s3#ErrorDocument": { - "type": "structure", - "members": { - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The object key name to use when a 4XX class error occurs.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

The error information.

" - } - }, - "com.amazonaws.s3#ErrorMessage": { - "type": "string" - }, - "com.amazonaws.s3#Errors": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#Error" - } - }, - "com.amazonaws.s3#Event": { - "type": "enum", - "members": { - "s3_ReducedRedundancyLostObject": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:ReducedRedundancyLostObject" - } - }, - "s3_ObjectCreated_": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:ObjectCreated:*" - } - }, - "s3_ObjectCreated_Put": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:ObjectCreated:Put" - } - }, - "s3_ObjectCreated_Post": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:ObjectCreated:Post" - } - }, - "s3_ObjectCreated_Copy": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:ObjectCreated:Copy" - } - }, - "s3_ObjectCreated_CompleteMultipartUpload": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:ObjectCreated:CompleteMultipartUpload" - } - }, - "s3_ObjectRemoved_": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:ObjectRemoved:*" - } - }, - "s3_ObjectRemoved_Delete": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:ObjectRemoved:Delete" - } - }, - "s3_ObjectRemoved_DeleteMarkerCreated": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:ObjectRemoved:DeleteMarkerCreated" - } - }, - "s3_ObjectRestore_": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:ObjectRestore:*" - } - }, - "s3_ObjectRestore_Post": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:ObjectRestore:Post" - } - }, - "s3_ObjectRestore_Completed": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:ObjectRestore:Completed" - } - }, - "s3_Replication_": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:Replication:*" - } - }, - "s3_Replication_OperationFailedReplication": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:Replication:OperationFailedReplication" - } - }, - "s3_Replication_OperationNotTracked": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:Replication:OperationNotTracked" - } - }, - "s3_Replication_OperationMissedThreshold": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:Replication:OperationMissedThreshold" - } - }, - "s3_Replication_OperationReplicatedAfterThreshold": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:Replication:OperationReplicatedAfterThreshold" - } - }, - "s3_ObjectRestore_Delete": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:ObjectRestore:Delete" - } - }, - "s3_LifecycleTransition": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:LifecycleTransition" - } - }, - "s3_IntelligentTiering": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:IntelligentTiering" - } - }, - "s3_ObjectAcl_Put": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:ObjectAcl:Put" - } - }, - "s3_LifecycleExpiration_": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:LifecycleExpiration:*" - } - }, - "s3_LifecycleExpiration_Delete": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:LifecycleExpiration:Delete" - } - }, - "s3_LifecycleExpiration_DeleteMarkerCreated": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:LifecycleExpiration:DeleteMarkerCreated" - } - }, - "s3_ObjectTagging_": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:ObjectTagging:*" - } - }, - "s3_ObjectTagging_Put": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:ObjectTagging:Put" - } - }, - "s3_ObjectTagging_Delete": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "s3:ObjectTagging:Delete" - } - } - }, - "traits": { - "smithy.api#documentation": "

The bucket event for which to send notifications.

" - } - }, - "com.amazonaws.s3#EventBridgeConfiguration": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

A container for specifying the configuration for Amazon EventBridge.

" - } - }, - "com.amazonaws.s3#EventList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#Event" - } - }, - "com.amazonaws.s3#ExistingObjectReplication": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3#ExistingObjectReplicationStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether Amazon S3 replicates existing source bucket objects.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Optional configuration to replicate existing source bucket objects.

\n \n

This parameter is no longer supported. To replicate existing objects, see Replicating existing objects with S3 Batch Replication in the\n Amazon S3 User Guide.

\n
" - } - }, - "com.amazonaws.s3#ExistingObjectReplicationStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3#Expiration": { - "type": "string" - }, - "com.amazonaws.s3#ExpirationStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3#ExpiredObjectDeleteMarker": { - "type": "boolean" - }, - "com.amazonaws.s3#Expires": { - "type": "timestamp" - }, - "com.amazonaws.s3#ExposeHeader": { - "type": "string" - }, - "com.amazonaws.s3#ExposeHeaders": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#ExposeHeader" - } - }, - "com.amazonaws.s3#Expression": { - "type": "string" - }, - "com.amazonaws.s3#ExpressionType": { - "type": "enum", - "members": { - "SQL": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "SQL" - } - } - } - }, - "com.amazonaws.s3#FetchOwner": { - "type": "boolean" - }, - "com.amazonaws.s3#FieldDelimiter": { - "type": "string" - }, - "com.amazonaws.s3#FileHeaderInfo": { - "type": "enum", - "members": { - "USE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "USE" - } - }, - "IGNORE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "IGNORE" - } - }, - "NONE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "NONE" - } - } - } - }, - "com.amazonaws.s3#FilterRule": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.s3#FilterRuleName", - "traits": { - "smithy.api#documentation": "

The object key name prefix or suffix identifying one or more objects to which the\n filtering rule applies. The maximum length is 1,024 characters. Overlapping prefixes and\n suffixes are not supported. For more information, see Configuring Event Notifications\n in the Amazon S3 User Guide.

" - } - }, - "Value": { - "target": "com.amazonaws.s3#FilterRuleValue", - "traits": { - "smithy.api#documentation": "

The value that the filter searches for in object key names.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the Amazon S3 object key name to filter on. An object key name is the name assigned\n to an object in your Amazon S3 bucket. You specify whether to filter on the suffix or prefix of\n the object key name. A prefix is a specific string of characters at the beginning of an\n object key name, which you can use to organize objects. For example, you can start the key\n names of related objects with a prefix, such as 2023- or\n engineering/. Then, you can use FilterRule to find objects in\n a bucket with key names that have the same prefix. A suffix is similar to a prefix, but it\n is at the end of the object key name instead of at the beginning.

" - } - }, - "com.amazonaws.s3#FilterRuleList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#FilterRule" - }, - "traits": { - "smithy.api#documentation": "

A list of containers for the key-value pair that defines the criteria for the filter\n rule.

" - } - }, - "com.amazonaws.s3#FilterRuleName": { - "type": "enum", - "members": { - "prefix": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "prefix" - } - }, - "suffix": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "suffix" - } - } - } - }, - "com.amazonaws.s3#FilterRuleValue": { - "type": "string" - }, - "com.amazonaws.s3#GetBucketAccelerateConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketAccelerateConfigurationRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketAccelerateConfigurationOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

This implementation of the GET action uses the accelerate subresource to\n return the Transfer Acceleration state of a bucket, which is either Enabled or\n Suspended. Amazon S3 Transfer Acceleration is a bucket-level feature that\n enables you to perform faster data transfers to and from Amazon S3.

\n

To use this operation, you must have permission to perform the\n s3:GetAccelerateConfiguration action. The bucket owner has this permission\n by default. The bucket owner can grant this permission to others. For more information\n about permissions, see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to your Amazon S3 Resources in the\n Amazon S3 User Guide.

\n

You set the Transfer Acceleration state of an existing bucket to Enabled or\n Suspended by using the PutBucketAccelerateConfiguration operation.

\n

A GET accelerate request does not return a state value for a bucket that\n has no transfer acceleration state. A bucket has no Transfer Acceleration state if a state\n has never been set on the bucket.

\n

For more information about transfer acceleration, see Transfer Acceleration in\n the Amazon S3 User Guide.

\n

The following operations are related to\n GetBucketAccelerateConfiguration:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?accelerate", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketAccelerateConfigurationOutput": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3#BucketAccelerateStatus", - "traits": { - "smithy.api#documentation": "

The accelerate configuration of the bucket.

" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "AccelerateConfiguration" - } - }, - "com.amazonaws.s3#GetBucketAccelerateConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket for which the accelerate configuration is retrieved.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketAcl": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketAclRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketAclOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

This implementation of the GET action uses the acl subresource\n to return the access control list (ACL) of a bucket. To use GET to return the\n ACL of the bucket, you must have the READ_ACP access to the bucket. If\n READ_ACP permission is granted to the anonymous user, you can return the\n ACL of the bucket without using an authorization header.

\n

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

\n \n

If your bucket uses the bucket owner enforced setting for S3 Object Ownership,\n requests to read ACLs are still supported and return the\n bucket-owner-full-control ACL with the owner being the account that\n created the bucket. For more information, see Controlling object\n ownership and disabling ACLs in the\n Amazon S3 User Guide.

\n
\n

The following operations are related to GetBucketAcl:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?acl", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketAclOutput": { - "type": "structure", - "members": { - "Owner": { - "target": "com.amazonaws.s3#Owner", - "traits": { - "smithy.api#documentation": "

Container for the bucket owner's display name and ID.

" - } - }, - "Grants": { - "target": "com.amazonaws.s3#Grants", - "traits": { - "smithy.api#documentation": "

A list of grants.

", - "smithy.api#xmlName": "AccessControlList" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "AccessControlPolicy" - } - }, - "com.amazonaws.s3#GetBucketAclRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

Specifies the S3 bucket whose ACL is being requested.

\n

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketAnalyticsConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketAnalyticsConfigurationRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketAnalyticsConfigurationOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

This implementation of the GET action returns an analytics configuration (identified by\n the analytics configuration ID) from the bucket.

\n

To use this operation, you must have permissions to perform the\n s3:GetAnalyticsConfiguration action. The bucket owner has this permission\n by default. The bucket owner can grant this permission to others. For more information\n about permissions, see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources in the\n Amazon S3 User Guide.

\n

For information about Amazon S3 analytics feature, see Amazon S3 Analytics – Storage Class\n Analysis in the Amazon S3 User Guide.

\n

The following operations are related to\n GetBucketAnalyticsConfiguration:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?analytics&x-id=GetBucketAnalyticsConfiguration", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketAnalyticsConfigurationOutput": { - "type": "structure", - "members": { - "AnalyticsConfiguration": { - "target": "com.amazonaws.s3#AnalyticsConfiguration", - "traits": { - "smithy.api#documentation": "

The configuration and any analyses for the analytics filter.

", - "smithy.api#httpPayload": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#GetBucketAnalyticsConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket from which an analytics configuration is retrieved.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Id": { - "target": "com.amazonaws.s3#AnalyticsId", - "traits": { - "smithy.api#documentation": "

The ID that identifies the analytics configuration.

", - "smithy.api#httpQuery": "id", - "smithy.api#required": {} - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketCors": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketCorsRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketCorsOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the Cross-Origin Resource Sharing (CORS) configuration information set for the\n bucket.

\n

To use this operation, you must have permission to perform the\n s3:GetBucketCORS action. By default, the bucket owner has this permission\n and can grant it to others.

\n

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

\n

For more information about CORS, see Enabling Cross-Origin Resource\n Sharing.

\n

The following operations are related to GetBucketCors:

\n ", - "smithy.api#examples": [ - { - "title": "To get cors configuration set on a bucket", - "documentation": "The following example returns cross-origin resource sharing (CORS) configuration set on a bucket.", - "input": { - "Bucket": "examplebucket" - }, - "output": { - "CORSRules": [ - { - "AllowedHeaders": ["Authorization"], - "MaxAgeSeconds": 3000, - "AllowedMethods": ["GET"], - "AllowedOrigins": ["*"] - } - ] - } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?cors", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketCorsOutput": { - "type": "structure", - "members": { - "CORSRules": { - "target": "com.amazonaws.s3#CORSRules", - "traits": { - "smithy.api#documentation": "

A set of origins and methods (cross-origin access that you want to allow). You can add\n up to 100 rules to the configuration.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "CORSRule" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "CORSConfiguration" - } - }, - "com.amazonaws.s3#GetBucketCorsRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name for which to get the cors configuration.

\n

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketEncryption": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketEncryptionRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketEncryptionOutput" - }, - "traits": { - "smithy.api#documentation": "

Returns the default encryption configuration for an Amazon S3 bucket. By default, all buckets\n have a default encryption configuration that uses server-side encryption with Amazon S3 managed\n keys (SSE-S3).

\n \n \n \n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The\n s3:GetEncryptionConfiguration permission is required in a\n policy. The bucket owner has this permission by default. The bucket owner\n can grant this permission to others. For more information about permissions,\n see Permissions Related to Bucket Operations and Managing Access\n Permissions to Your Amazon S3 Resources.

    \n
  • \n
  • \n

    \n Directory bucket permissions -\n To grant access to this API operation, you must have the\n s3express:GetEncryptionConfiguration permission in\n an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.\n For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to GetBucketEncryption:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?encryption", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketEncryptionOutput": { - "type": "structure", - "members": { - "ServerSideEncryptionConfiguration": { - "target": "com.amazonaws.s3#ServerSideEncryptionConfiguration", - "traits": { - "smithy.api#httpPayload": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#GetBucketEncryptionRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket from which the server-side encryption configuration is\n retrieved.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must also follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide\n

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code \n501 Not Implemented.

\n
", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketIntelligentTieringConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketIntelligentTieringConfigurationRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketIntelligentTieringConfigurationOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Gets the S3 Intelligent-Tiering configuration from the specified bucket.

\n

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.

\n

The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.

\n

For more information, see Storage class for automatically optimizing frequently and infrequently accessed objects.

\n

Operations related to GetBucketIntelligentTieringConfiguration include:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?intelligent-tiering&x-id=GetBucketIntelligentTieringConfiguration", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketIntelligentTieringConfigurationOutput": { - "type": "structure", - "members": { - "IntelligentTieringConfiguration": { - "target": "com.amazonaws.s3#IntelligentTieringConfiguration", - "traits": { - "smithy.api#documentation": "

Container for S3 Intelligent-Tiering configuration.

", - "smithy.api#httpPayload": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#GetBucketIntelligentTieringConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the Amazon S3 bucket whose configuration you want to modify or retrieve.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Id": { - "target": "com.amazonaws.s3#IntelligentTieringId", - "traits": { - "smithy.api#documentation": "

The ID used to identify the S3 Intelligent-Tiering configuration.

", - "smithy.api#httpQuery": "id", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketInventoryConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketInventoryConfigurationRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketInventoryConfigurationOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns an inventory configuration (identified by the inventory configuration ID) from\n the bucket.

\n

To use this operation, you must have permissions to perform the\n s3:GetInventoryConfiguration action. The bucket owner has this permission\n by default and can grant this permission to others. For more information about permissions,\n see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources.

\n

For information about the Amazon S3 inventory feature, see Amazon S3 Inventory.

\n

The following operations are related to\n GetBucketInventoryConfiguration:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?inventory&x-id=GetBucketInventoryConfiguration", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketInventoryConfigurationOutput": { - "type": "structure", - "members": { - "InventoryConfiguration": { - "target": "com.amazonaws.s3#InventoryConfiguration", - "traits": { - "smithy.api#documentation": "

Specifies the inventory configuration.

", - "smithy.api#httpPayload": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#GetBucketInventoryConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket containing the inventory configuration to retrieve.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Id": { - "target": "com.amazonaws.s3#InventoryId", - "traits": { - "smithy.api#documentation": "

The ID used to identify the inventory configuration.

", - "smithy.api#httpQuery": "id", - "smithy.api#required": {} - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketLifecycleConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketLifecycleConfigurationRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketLifecycleConfigurationOutput" - }, - "traits": { - "smithy.api#documentation": "

Returns the lifecycle configuration information set on the bucket. For information about\n lifecycle configuration, see Object Lifecycle\n Management.

\n

Bucket lifecycle configuration now supports specifying a lifecycle rule using an object\n key name prefix, one or more object tags, object size, or any combination of these.\n Accordingly, this section describes the latest API, which is compatible with the new\n functionality. The previous version of the API supported filtering based only on an object\n key name prefix, which is supported for general purpose buckets for backward compatibility.\n For the related API description, see GetBucketLifecycle.

\n \n

Lifecyle configurations for directory buckets only support expiring objects and\n cancelling multipart uploads. Expiring of versioned objects, transitions and tag filters\n are not supported.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - By\n default, all Amazon S3 resources are private, including buckets, objects, and\n related subresources (for example, lifecycle configuration and website\n configuration). Only the resource owner (that is, the Amazon Web Services account that\n created it) can access the resource. The resource owner can optionally grant\n access permissions to others by writing an access policy. For this\n operation, a user must have the s3:GetLifecycleConfiguration\n permission.

    \n

    For more information about permissions, see Managing Access\n Permissions to Your Amazon S3 Resources.

    \n
  • \n
\n
    \n
  • \n

    \n Directory bucket permissions -\n You must have the s3express:GetLifecycleConfiguration\n permission in an IAM identity-based policy to use this operation.\n Cross-account access to this API operation isn't supported. The resource\n owner can optionally grant access permissions to others by creating a role\n or user for them as long as they are within the same account as the owner\n and resource.

    \n

    For more information about directory bucket policies and permissions, see\n Authorizing Regional endpoint APIs with IAM in the\n Amazon S3 User Guide.

    \n \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

    \n
    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host\n header syntax is\n s3express-control.region.amazonaws.com.

\n
\n
\n

\n GetBucketLifecycleConfiguration has the following special error:

\n
    \n
  • \n

    Error code: NoSuchLifecycleConfiguration\n

    \n
      \n
    • \n

      Description: The lifecycle configuration does not exist.

      \n
    • \n
    • \n

      HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
\n

The following operations are related to\n GetBucketLifecycleConfiguration:

\n ", - "smithy.api#examples": [ - { - "title": "To get lifecycle configuration on a bucket", - "documentation": "The following example retrieves lifecycle configuration on set on a bucket. ", - "input": { - "Bucket": "examplebucket" + "Prefix": { + "target": "com.amazonaws.s3#LocationPrefix", + "traits": { + "smithy.api#documentation": "

The prefix that is prepended to the restore results for this request.

", + "smithy.api#required": {} + } + }, + "Encryption": { + "target": "com.amazonaws.s3#Encryption" + }, + "CannedACL": { + "target": "com.amazonaws.s3#ObjectCannedACL", + "traits": { + "smithy.api#documentation": "

The canned ACL to apply to the restore results.

" + } + }, + "AccessControlList": { + "target": "com.amazonaws.s3#Grants", + "traits": { + "smithy.api#documentation": "

A list of grants that control access to the staged results.

" + } + }, + "Tagging": { + "target": "com.amazonaws.s3#Tagging", + "traits": { + "smithy.api#documentation": "

The tag-set that is applied to the restore results.

" + } + }, + "UserMetadata": { + "target": "com.amazonaws.s3#UserMetadata", + "traits": { + "smithy.api#documentation": "

A list of metadata to store with the restore results in S3.

" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3#StorageClass", + "traits": { + "smithy.api#documentation": "

The class of storage used to store the restore results.

" + } + } }, - "output": { - "Rules": [ - { - "Prefix": "TaxDocs", - "Status": "Enabled", - "Transitions": [ - { - "Days": 365, - "StorageClass": "STANDARD_IA" + "traits": { + "smithy.api#documentation": "

Describes an Amazon S3 location that will receive the results of the restore request.

" + } + }, + "com.amazonaws.s3#S3RegionalOrS3ExpressBucketArnString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^arn:[^:]+:(s3|s3express):" + } + }, + "com.amazonaws.s3#S3TablesArn": { + "type": "string" + }, + "com.amazonaws.s3#S3TablesBucketArn": { + "type": "string" + }, + "com.amazonaws.s3#S3TablesBucketType": { + "type": "enum", + "members": { + "aws": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "aws" + } + }, + "customer": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "customer" } - ], - "ID": "Rule for TaxDocs/" } - ] } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?lifecycle", - "code": 200 }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketLifecycleConfigurationOutput": { - "type": "structure", - "members": { - "Rules": { - "target": "com.amazonaws.s3#LifecycleRules", - "traits": { - "smithy.api#documentation": "

Container for a lifecycle rule.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Rule" - } - }, - "TransitionDefaultMinimumObjectSize": { - "target": "com.amazonaws.s3#TransitionDefaultMinimumObjectSize", - "traits": { - "smithy.api#documentation": "

Indicates which default minimum object size behavior is applied to the lifecycle\n configuration.

\n \n

This parameter applies to general purpose buckets only. It isn't supported for\n directory bucket lifecycle configurations.

\n
\n
    \n
  • \n

    \n all_storage_classes_128K - Objects smaller than 128 KB will not transition to any storage class by default.

    \n
  • \n
  • \n

    \n varies_by_storage_class - Objects smaller than 128 KB will\n transition to Glacier Flexible Retrieval or Glacier Deep Archive storage classes. By\n default, all other storage classes will prevent transitions smaller than 128 KB.\n

    \n
  • \n
\n

To customize the minimum object size for any transition you can add a filter that\n specifies a custom ObjectSizeGreaterThan or ObjectSizeLessThan in\n the body of your transition rule. Custom filters always take precedence over the default\n transition behavior.

", - "smithy.api#httpHeader": "x-amz-transition-default-minimum-object-size" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "LifecycleConfiguration" - } - }, - "com.amazonaws.s3#GetBucketLifecycleConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket for which to get the lifecycle information.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

This parameter applies to general purpose buckets only. It is not supported for\n directory bucket lifecycle configurations.

\n
", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketLocation": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketLocationRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketLocationOutput" - }, - "traits": { - "aws.customizations#s3UnwrappedXmlOutput": {}, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the Region the bucket resides in. You set the bucket's Region using the\n LocationConstraint request parameter in a CreateBucket\n request. For more information, see CreateBucket.

\n

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

\n \n

We recommend that you use HeadBucket to return the Region\n that a bucket resides in. For backward compatibility, Amazon S3 continues to support\n GetBucketLocation.

\n
\n

The following operations are related to GetBucketLocation:

\n ", - "smithy.api#examples": [ - { - "title": "To get bucket location", - "documentation": "The following example returns bucket location.", - "input": { - "Bucket": "examplebucket" + "com.amazonaws.s3#S3TablesDestination": { + "type": "structure", + "members": { + "TableBucketArn": { + "target": "com.amazonaws.s3#S3TablesBucketArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the\n metadata table configuration. The destination table bucket must be in the same Region and Amazon Web Services account\n as the general purpose bucket.

", + "smithy.api#required": {} + } + }, + "TableName": { + "target": "com.amazonaws.s3#S3TablesName", + "traits": { + "smithy.api#documentation": "

The name for the metadata table in your metadata table configuration. The specified metadata table\n name must be unique within the aws_s3_metadata namespace in the destination table bucket.\n

", + "smithy.api#required": {} + } + } }, - "output": { - "LocationConstraint": "us-west-2" - } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?location", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketLocationOutput": { - "type": "structure", - "members": { - "LocationConstraint": { - "target": "com.amazonaws.s3#BucketLocationConstraint", - "traits": { - "smithy.api#documentation": "

Specifies the Region where the bucket resides. For a list of all the Amazon S3 supported\n location constraints by Region, see Regions and Endpoints. Buckets in\n Region us-east-1 have a LocationConstraint of null.

" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "LocationConstraint" - } - }, - "com.amazonaws.s3#GetBucketLocationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket for which to get the location.

\n

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketLogging": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketLoggingRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketLoggingOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the logging status of a bucket and the permissions users have to view and modify\n that status.

\n

The following operations are related to GetBucketLogging:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?logging", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketLoggingOutput": { - "type": "structure", - "members": { - "LoggingEnabled": { - "target": "com.amazonaws.s3#LoggingEnabled" - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "BucketLoggingStatus" - } - }, - "com.amazonaws.s3#GetBucketLoggingRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name for which to get the logging information.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketMetadataTableConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketMetadataTableConfigurationRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketMetadataTableConfigurationOutput" - }, - "traits": { - "smithy.api#documentation": "

\n Retrieves the metadata table configuration for a general purpose bucket. For more\n information, see Accelerating data\n discovery with S3 Metadata in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

To use this operation, you must have the s3:GetBucketMetadataTableConfiguration permission. For more\n information, see Setting up\n permissions for configuring metadata tables in the\n Amazon S3 User Guide.

\n
\n
\n

The following operations are related to GetBucketMetadataTableConfiguration:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?metadataTable", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketMetadataTableConfigurationOutput": { - "type": "structure", - "members": { - "GetBucketMetadataTableConfigurationResult": { - "target": "com.amazonaws.s3#GetBucketMetadataTableConfigurationResult", - "traits": { - "smithy.api#documentation": "

\n The metadata table configuration for the general purpose bucket.\n

", - "smithy.api#httpPayload": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#GetBucketMetadataTableConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

\n The general purpose bucket that contains the metadata table configuration that you want to retrieve.\n

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

\n The expected owner of the general purpose bucket that you want to retrieve the metadata table configuration from.\n

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketMetadataTableConfigurationResult": { - "type": "structure", - "members": { - "MetadataTableConfigurationResult": { - "target": "com.amazonaws.s3#MetadataTableConfigurationResult", - "traits": { - "smithy.api#documentation": "

\n The metadata table configuration for a general purpose bucket.\n

", - "smithy.api#required": {} - } - }, - "Status": { - "target": "com.amazonaws.s3#MetadataTableStatus", - "traits": { - "smithy.api#documentation": "

\n The status of the metadata table. The status values are:\n

\n
    \n
  • \n

    \n CREATING - The metadata table is in the process of being created in the \n specified table bucket.

    \n
  • \n
  • \n

    \n ACTIVE - The metadata table has been created successfully and records \n are being delivered to the table.\n

    \n
  • \n
  • \n

    \n FAILED - Amazon S3 is unable to create the metadata table, or Amazon S3 is unable to deliver \n records. See ErrorDetails for details.

    \n
  • \n
", - "smithy.api#required": {} - } - }, - "Error": { - "target": "com.amazonaws.s3#ErrorDetails", - "traits": { - "smithy.api#documentation": "

\n If the CreateBucketMetadataTableConfiguration request succeeds, but S3 Metadata was \n unable to create the table, this structure contains the error code and error message. \n

" - } - } - }, - "traits": { - "smithy.api#documentation": "

\n The metadata table configuration for a general purpose bucket.\n

" - } - }, - "com.amazonaws.s3#GetBucketMetricsConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketMetricsConfigurationRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketMetricsConfigurationOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Gets a metrics configuration (specified by the metrics configuration ID) from the\n bucket. Note that this doesn't include the daily storage metrics.

\n

To use this operation, you must have permissions to perform the\n s3:GetMetricsConfiguration action. The bucket owner has this permission by\n default. The bucket owner can grant this permission to others. For more information about\n permissions, see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources.

\n

For information about CloudWatch request metrics for Amazon S3, see Monitoring\n Metrics with Amazon CloudWatch.

\n

The following operations are related to\n GetBucketMetricsConfiguration:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?metrics&x-id=GetBucketMetricsConfiguration", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketMetricsConfigurationOutput": { - "type": "structure", - "members": { - "MetricsConfiguration": { - "target": "com.amazonaws.s3#MetricsConfiguration", - "traits": { - "smithy.api#documentation": "

Specifies the metrics configuration.

", - "smithy.api#httpPayload": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#GetBucketMetricsConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket containing the metrics configuration to retrieve.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Id": { - "target": "com.amazonaws.s3#MetricsId", - "traits": { - "smithy.api#documentation": "

The ID used to identify the metrics configuration. The ID has a 64 character limit and\n can only contain letters, numbers, periods, dashes, and underscores.

", - "smithy.api#httpQuery": "id", - "smithy.api#required": {} - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketNotificationConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketNotificationConfigurationRequest" - }, - "output": { - "target": "com.amazonaws.s3#NotificationConfiguration" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the notification configuration of a bucket.

\n

If notifications are not enabled on the bucket, the action returns an empty\n NotificationConfiguration element.

\n

By default, you must be the bucket owner to read the notification configuration of a\n bucket. However, the bucket owner can use a bucket policy to grant permission to other\n users to read this configuration with the s3:GetBucketNotification\n permission.

\n

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

\n

For more information about setting and reading the notification configuration on a\n bucket, see Setting Up Notification of Bucket Events. For more information about bucket\n policies, see Using Bucket Policies.

\n

The following action is related to GetBucketNotification:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?notification", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketNotificationConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket for which to get the notification configuration.

\n

When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketOwnershipControls": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketOwnershipControlsRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketOwnershipControlsOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Retrieves OwnershipControls for an Amazon S3 bucket. To use this operation, you\n must have the s3:GetBucketOwnershipControls permission. For more information\n about Amazon S3 permissions, see Specifying permissions in a\n policy.

\n

For information about Amazon S3 Object Ownership, see Using Object\n Ownership.

\n

The following operations are related to GetBucketOwnershipControls:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?ownershipControls", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketOwnershipControlsOutput": { - "type": "structure", - "members": { - "OwnershipControls": { - "target": "com.amazonaws.s3#OwnershipControls", - "traits": { - "smithy.api#documentation": "

The OwnershipControls (BucketOwnerEnforced, BucketOwnerPreferred, or\n ObjectWriter) currently in effect for this Amazon S3 bucket.

", - "smithy.api#httpPayload": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#GetBucketOwnershipControlsRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the Amazon S3 bucket whose OwnershipControls you want to retrieve.\n

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketPolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketPolicyRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketPolicyOutput" - }, - "traits": { - "smithy.api#documentation": "

Returns the policy of a specified bucket.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n

If you are using an identity other than the root user of the Amazon Web Services account that\n owns the bucket, the calling identity must both have the\n GetBucketPolicy permissions on the specified bucket and belong to\n the bucket owner's account in order to use this operation.

\n

If you don't have GetBucketPolicy permissions, Amazon S3 returns a\n 403 Access Denied error. If you have the correct permissions, but\n you're not using an identity that belongs to the bucket owner's account, Amazon S3\n returns a 405 Method Not Allowed error.

\n \n

To ensure that bucket owners don't inadvertently lock themselves out of\n their own buckets, the root principal in a bucket owner's Amazon Web Services account can\n perform the GetBucketPolicy, PutBucketPolicy, and\n DeleteBucketPolicy API actions, even if their bucket policy\n explicitly denies the root principal's access. Bucket owner root principals can\n only be blocked from performing these API actions by VPC endpoint policies and\n Amazon Web Services Organizations policies.

\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The\n s3:GetBucketPolicy permission is required in a policy. For\n more information about general purpose buckets bucket policies, see Using Bucket Policies and User Policies in the\n Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions -\n To grant access to this API operation, you must have the\n s3express:GetBucketPolicy permission in\n an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.\n For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

    \n
  • \n
\n
\n
Example bucket policies
\n
\n

\n General purpose buckets example bucket policies\n - See Bucket policy\n examples in the Amazon S3 User Guide.

\n

\n Directory bucket example bucket policies\n - See Example bucket policies for S3 Express One Zone in the\n Amazon S3 User Guide.

\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.

\n
\n
\n

The following action is related to GetBucketPolicy:

\n ", - "smithy.api#examples": [ - { - "title": "To get bucket policy", - "documentation": "The following example returns bucket policy associated with a bucket.", - "input": { - "Bucket": "examplebucket" + "traits": { + "smithy.api#documentation": "

The destination information for a V1 S3 Metadata configuration. The destination table bucket must\n be in the same Region and Amazon Web Services account as the general purpose bucket. The specified metadata table name\n must be unique within the aws_s3_metadata namespace in the destination table bucket.\n

\n \n

If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete \n and re-create your configuration by using CreateBucketMetadataConfiguration so that you can expire journal table records and create \n a live inventory table.

\n
" + } + }, + "com.amazonaws.s3#S3TablesDestinationResult": { + "type": "structure", + "members": { + "TableBucketArn": { + "target": "com.amazonaws.s3#S3TablesBucketArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the table bucket that's specified as the destination in the\n metadata table configuration. The destination table bucket must be in the same Region and Amazon Web Services account\n as the general purpose bucket.

", + "smithy.api#required": {} + } + }, + "TableName": { + "target": "com.amazonaws.s3#S3TablesName", + "traits": { + "smithy.api#documentation": "

The name for the metadata table in your metadata table configuration. The specified metadata table\n name must be unique within the aws_s3_metadata namespace in the destination table bucket.\n

", + "smithy.api#required": {} + } + }, + "TableArn": { + "target": "com.amazonaws.s3#S3TablesArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The\n specified metadata table name must be unique within the aws_s3_metadata namespace in the\n destination table bucket.

", + "smithy.api#required": {} + } + }, + "TableNamespace": { + "target": "com.amazonaws.s3#S3TablesNamespace", + "traits": { + "smithy.api#documentation": "

The table bucket namespace for the metadata table in your metadata table configuration. This value\n is always aws_s3_metadata.

", + "smithy.api#required": {} + } + } }, - "output": { - "Policy": "{\"Version\":\"2008-10-17\",\"Id\":\"LogPolicy\",\"Statement\":[{\"Sid\":\"Enables the log delivery group to publish logs to your bucket \",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"111122223333\"},\"Action\":[\"s3:GetBucketAcl\",\"s3:GetObjectAcl\",\"s3:PutObject\"],\"Resource\":[\"arn:aws:s3:::policytest1/*\",\"arn:aws:s3:::policytest1\"]}]}" - } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?policy", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketPolicyOutput": { - "type": "structure", - "members": { - "Policy": { - "target": "com.amazonaws.s3#Policy", - "traits": { - "smithy.api#documentation": "

The bucket policy as a JSON document.

", - "smithy.api#httpPayload": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#GetBucketPolicyRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name to get the bucket policy for.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must also follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide\n

\n

\n Access points - When you use this API operation with an access point, provide the alias of the access point in place of the bucket name.

\n

\n Object Lambda access points - When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code \n501 Not Implemented.

\n
", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketPolicyStatus": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketPolicyStatusRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketPolicyStatusOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Retrieves the policy status for an Amazon S3 bucket, indicating whether the bucket is public.\n In order to use this operation, you must have the s3:GetBucketPolicyStatus\n permission. For more information about Amazon S3 permissions, see Specifying Permissions in a\n Policy.

\n

For more information about when Amazon S3 considers a bucket public, see The Meaning of \"Public\".

\n

The following operations are related to GetBucketPolicyStatus:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?policyStatus", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketPolicyStatusOutput": { - "type": "structure", - "members": { - "PolicyStatus": { - "target": "com.amazonaws.s3#PolicyStatus", - "traits": { - "smithy.api#documentation": "

The policy status for the specified bucket.

", - "smithy.api#httpPayload": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#GetBucketPolicyStatusRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the Amazon S3 bucket whose policy status you want to retrieve.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketReplication": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketReplicationRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketReplicationOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the replication configuration of a bucket.

\n \n

It can take a while to propagate the put or delete a replication configuration to\n all Amazon S3 systems. Therefore, a get request soon after put or delete can return a wrong\n result.

\n
\n

For information about replication configuration, see Replication in the\n Amazon S3 User Guide.

\n

This action requires permissions for the s3:GetReplicationConfiguration\n action. For more information about permissions, see Using Bucket Policies and User\n Policies.

\n

If you include the Filter element in a replication configuration, you must\n also include the DeleteMarkerReplication and Priority elements.\n The response also returns those elements.

\n

For information about GetBucketReplication errors, see List of\n replication-related error codes\n

\n

The following operations are related to GetBucketReplication:

\n ", - "smithy.api#examples": [ - { - "title": "To get replication configuration set on a bucket", - "documentation": "The following example returns replication configuration set on a bucket.", - "input": { - "Bucket": "examplebucket" + "traits": { + "smithy.api#documentation": "

The destination information for a V1 S3 Metadata configuration. The destination table bucket must\n be in the same Region and Amazon Web Services account as the general purpose bucket. The specified metadata table name\n must be unique within the aws_s3_metadata namespace in the destination table bucket.\n

\n \n

If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete \n and re-create your configuration by using CreateBucketMetadataConfiguration so that you can expire journal table records and create \n a live inventory table.

\n
" + } + }, + "com.amazonaws.s3#S3TablesName": { + "type": "string" + }, + "com.amazonaws.s3#S3TablesNamespace": { + "type": "string" + }, + "com.amazonaws.s3#SSECustomerAlgorithm": { + "type": "string" + }, + "com.amazonaws.s3#SSECustomerKey": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.s3#SSECustomerKeyMD5": { + "type": "string" + }, + "com.amazonaws.s3#SSEKMS": { + "type": "structure", + "members": { + "KeyId": { + "target": "com.amazonaws.s3#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

Specifies the ID of the Key Management Service (KMS) symmetric encryption customer managed key to use for encrypting\n inventory reports.

", + "smithy.api#required": {} + } + } }, - "output": { - "ReplicationConfiguration": { - "Rules": [ - { - "Status": "Enabled", - "Prefix": "Tax", - "Destination": { - "Bucket": "arn:aws:s3:::destination-bucket" - }, - "ID": "MWIwNTkwZmItMTE3MS00ZTc3LWJkZDEtNzRmODQwYzc1OTQy" - } - ], - "Role": "arn:aws:iam::acct-id:role/example-role" - } - } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?replication", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketReplicationOutput": { - "type": "structure", - "members": { - "ReplicationConfiguration": { - "target": "com.amazonaws.s3#ReplicationConfiguration", - "traits": { - "smithy.api#httpPayload": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#GetBucketReplicationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name for which to get the replication information.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketRequestPayment": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketRequestPaymentRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketRequestPaymentOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the request payment configuration of a bucket. To use this version of the\n operation, you must be the bucket owner. For more information, see Requester Pays\n Buckets.

\n

The following operations are related to GetBucketRequestPayment:

\n ", - "smithy.api#examples": [ - { - "title": "To get bucket versioning configuration", - "documentation": "The following example retrieves bucket versioning configuration.", - "input": { - "Bucket": "examplebucket" + "traits": { + "smithy.api#documentation": "

Specifies the use of SSE-KMS to encrypt delivered inventory reports.

", + "smithy.api#xmlName": "SSE-KMS" + } + }, + "com.amazonaws.s3#SSEKMSEncryptionContext": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.s3#SSEKMSKeyId": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.s3#SSES3": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

Specifies the use of SSE-S3 to encrypt delivered inventory reports.

", + "smithy.api#xmlName": "SSE-S3" + } + }, + "com.amazonaws.s3#ScanRange": { + "type": "structure", + "members": { + "Start": { + "target": "com.amazonaws.s3#Start", + "traits": { + "smithy.api#documentation": "

Specifies the start of the byte range. This parameter is optional. Valid values: non-negative\n integers. The default value is 0. If only start is supplied, it means scan from that point\n to the end of the file. For example,\n 50 means scan from byte 50\n until the end of the file.

" + } + }, + "End": { + "target": "com.amazonaws.s3#End", + "traits": { + "smithy.api#documentation": "

Specifies the end of the byte range. This parameter is optional. Valid values: non-negative\n integers. The default value is one less than the size of the object being queried. If only the End\n parameter is supplied, it is interpreted to mean scan the last N bytes of the file. For example,\n 50 means scan the last 50\n bytes.

" + } + } }, - "output": { - "Payer": "BucketOwner" - } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?requestPayment", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketRequestPaymentOutput": { - "type": "structure", - "members": { - "Payer": { - "target": "com.amazonaws.s3#Payer", - "traits": { - "smithy.api#documentation": "

Specifies who pays for the download and request fees.

" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "RequestPaymentConfiguration" - } - }, - "com.amazonaws.s3#GetBucketRequestPaymentRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket for which to get the payment request configuration

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketTagging": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketTaggingRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketTaggingOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the tag set associated with the bucket.

\n

To use this operation, you must have permission to perform the\n s3:GetBucketTagging action. By default, the bucket owner has this\n permission and can grant this permission to others.

\n

\n GetBucketTagging has the following special error:

\n
    \n
  • \n

    Error code: NoSuchTagSet\n

    \n
      \n
    • \n

      Description: There is no tag set associated with the bucket.

      \n
    • \n
    \n
  • \n
\n

The following operations are related to GetBucketTagging:

\n ", - "smithy.api#examples": [ - { - "title": "To get tag set associated with a bucket", - "documentation": "The following example returns tag set associated with a bucket", + "traits": { + "smithy.api#documentation": "

Specifies the byte range of the object to get the records from. A record is processed when its first\n byte is contained by the range. This parameter is optional, but when specified, it must not be empty.\n See RFC 2616, Section 14.35.1 about how to specify the start and end of the range.

" + } + }, + "com.amazonaws.s3#SelectObjectContent": { + "type": "operation", "input": { - "Bucket": "examplebucket" + "target": "com.amazonaws.s3#SelectObjectContentRequest" }, "output": { - "TagSet": [ - { - "Value": "value1", - "Key": "key1" + "target": "com.amazonaws.s3#SelectObjectContentOutput" + }, + "traits": { + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

This action filters the contents of an Amazon S3 object based on a simple structured query language (SQL)\n statement. In the request, along with the SQL expression, you must also specify a data serialization\n format (JSON, CSV, or Apache Parquet) of the object. Amazon S3 uses this format to parse object data into\n records, and returns only records that match the specified SQL expression. You must also specify the\n data serialization format for the response.

\n

This functionality is not supported for Amazon S3 on Outposts.

\n

For more information about Amazon S3 Select, see Selecting Content from Objects\n and SELECT Command in\n the Amazon S3 User Guide.

\n

\n
\n
Permissions
\n
\n

You must have the s3:GetObject permission for this operation. Amazon S3 Select does\n not support anonymous access. For more information about permissions, see Specifying Permissions\n in a Policy in the Amazon S3 User Guide.

\n
\n
Object Data Formats
\n
\n

You can use Amazon S3 Select to query objects that have the following format properties:

\n
    \n
  • \n

    \n CSV, JSON, and Parquet - Objects must be in CSV, JSON, or Parquet\n format.

    \n
  • \n
  • \n

    \n UTF-8 - UTF-8 is the only encoding type Amazon S3 Select supports.

    \n
  • \n
  • \n

    \n GZIP or BZIP2 - CSV and JSON files can be compressed using GZIP or\n BZIP2. GZIP and BZIP2 are the only compression formats that Amazon S3 Select supports for CSV and\n JSON files. Amazon S3 Select supports columnar compression for Parquet using GZIP or Snappy. Amazon S3\n Select does not support whole-object compression for Parquet objects.

    \n
  • \n
  • \n

    \n Server-side encryption - Amazon S3 Select supports querying objects that\n are protected with server-side encryption.

    \n

    For objects that are encrypted with customer-provided encryption keys (SSE-C), you must\n use HTTPS, and you must use the headers that are documented in the GetObject. For more information about\n SSE-C, see Server-Side Encryption\n (Using Customer-Provided Encryption Keys) in the\n Amazon S3 User Guide.

    \n

    For objects that are encrypted with Amazon S3 managed keys (SSE-S3) and Amazon Web Services KMS keys\n (SSE-KMS), server-side encryption is handled transparently, so you don't need to specify\n anything. For more information about server-side encryption, including SSE-S3 and SSE-KMS, see\n Protecting\n Data Using Server-Side Encryption in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n
Working with the Response Body
\n
\n

Given the response size is unknown, Amazon S3 Select streams the response as a series of messages\n and includes a Transfer-Encoding header with chunked as its value in the\n response. For more information, see Appendix: SelectObjectContent\n Response.

\n
\n
GetObject Support
\n
\n

The SelectObjectContent action does not support the following\n GetObject functionality. For more information, see GetObject.

\n
    \n
  • \n

    \n Range: Although you can specify a scan range for an Amazon S3 Select request (see\n SelectObjectContentRequest - ScanRange in the request parameters), you\n cannot specify the range of bytes of an object to return.

    \n
  • \n
  • \n

    The GLACIER, DEEP_ARCHIVE, and REDUCED_REDUNDANCY\n storage classes, or the ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS\n access tiers of the INTELLIGENT_TIERING storage class: You cannot query objects\n in the GLACIER, DEEP_ARCHIVE, or REDUCED_REDUNDANCY\n storage classes, nor objects in the ARCHIVE_ACCESS or\n DEEP_ARCHIVE_ACCESS access tiers of the INTELLIGENT_TIERING\n storage class. For more information about storage classes, see Using Amazon S3 storage classes\n in the Amazon S3 User Guide.

    \n
  • \n
\n
\n
Special Errors
\n
\n

For a list of special errors for this operation, see List of SELECT\n Object Content Error Codes\n

\n
\n
\n

The following operations are related to SelectObjectContent:

\n ", + "smithy.api#http": { + "method": "POST", + "uri": "/{Bucket}/{Key+}?select&select-type=2", + "code": 200 + } + } + }, + "com.amazonaws.s3#SelectObjectContentEventStream": { + "type": "union", + "members": { + "Records": { + "target": "com.amazonaws.s3#RecordsEvent", + "traits": { + "smithy.api#documentation": "

The Records Event.

" + } }, - { - "Value": "value2", - "Key": "key2" - } - ] - } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?tagging", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketTaggingOutput": { - "type": "structure", - "members": { - "TagSet": { - "target": "com.amazonaws.s3#TagSet", - "traits": { - "smithy.api#documentation": "

Contains the tag set.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "Tagging" - } - }, - "com.amazonaws.s3#GetBucketTaggingRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket for which to get the tagging information.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketVersioning": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketVersioningRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketVersioningOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the versioning state of a bucket.

\n

To retrieve the versioning state of a bucket, you must be the bucket owner.

\n

This implementation also returns the MFA Delete status of the versioning state. If the\n MFA Delete status is enabled, the bucket owner must use an authentication\n device to change the versioning state of the bucket.

\n

The following operations are related to GetBucketVersioning:

\n ", - "smithy.api#examples": [ - { - "title": "To get bucket versioning configuration", - "documentation": "The following example retrieves bucket versioning configuration.", - "input": { - "Bucket": "examplebucket" + "Stats": { + "target": "com.amazonaws.s3#StatsEvent", + "traits": { + "smithy.api#documentation": "

The Stats Event.

" + } + }, + "Progress": { + "target": "com.amazonaws.s3#ProgressEvent", + "traits": { + "smithy.api#documentation": "

The Progress Event.

" + } + }, + "Cont": { + "target": "com.amazonaws.s3#ContinuationEvent", + "traits": { + "smithy.api#documentation": "

The Continuation Event.

" + } + }, + "End": { + "target": "com.amazonaws.s3#EndEvent", + "traits": { + "smithy.api#documentation": "

The End Event.

" + } + } }, - "output": { - "Status": "Enabled", - "MFADelete": "Disabled" - } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?versioning", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketVersioningOutput": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3#BucketVersioningStatus", - "traits": { - "smithy.api#documentation": "

The versioning state of the bucket.

" - } - }, - "MFADelete": { - "target": "com.amazonaws.s3#MFADeleteStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether MFA delete is enabled in the bucket versioning configuration. This\n element is only returned if the bucket has been configured with MFA delete. If the bucket\n has never been so configured, this element is not returned.

", - "smithy.api#xmlName": "MfaDelete" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "VersioningConfiguration" - } - }, - "com.amazonaws.s3#GetBucketVersioningRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket for which to get the versioning information.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetBucketWebsite": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetBucketWebsiteRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetBucketWebsiteOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the website configuration for a bucket. To host website on Amazon S3, you can\n configure a bucket as website by adding a website configuration. For more information about\n hosting websites, see Hosting Websites on Amazon S3.

\n

This GET action requires the S3:GetBucketWebsite permission. By default,\n only the bucket owner can read the bucket website configuration. However, bucket owners can\n allow other users to read the website configuration by writing a bucket policy granting\n them the S3:GetBucketWebsite permission.

\n

The following operations are related to GetBucketWebsite:

\n ", - "smithy.api#examples": [ - { - "title": "To get bucket website configuration", - "documentation": "The following example retrieves website configuration of a bucket.", - "input": { - "Bucket": "examplebucket" + "traits": { + "smithy.api#documentation": "

The container for selecting objects from a content event stream.

", + "smithy.api#streaming": {} + } + }, + "com.amazonaws.s3#SelectObjectContentOutput": { + "type": "structure", + "members": { + "Payload": { + "target": "com.amazonaws.s3#SelectObjectContentEventStream", + "traits": { + "smithy.api#documentation": "

The array of results.

", + "smithy.api#httpPayload": {} + } + } }, - "output": { - "IndexDocument": { - "Suffix": "index.html" - }, - "ErrorDocument": { - "Key": "error.html" - } - } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?website", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetBucketWebsiteOutput": { - "type": "structure", - "members": { - "RedirectAllRequestsTo": { - "target": "com.amazonaws.s3#RedirectAllRequestsTo", - "traits": { - "smithy.api#documentation": "

Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3\n bucket.

" - } - }, - "IndexDocument": { - "target": "com.amazonaws.s3#IndexDocument", - "traits": { - "smithy.api#documentation": "

The name of the index document for the website (for example\n index.html).

" - } - }, - "ErrorDocument": { - "target": "com.amazonaws.s3#ErrorDocument", - "traits": { - "smithy.api#documentation": "

The object key name of the website error document to use for 4XX class errors.

" - } - }, - "RoutingRules": { - "target": "com.amazonaws.s3#RoutingRules", - "traits": { - "smithy.api#documentation": "

Rules that define when a redirect is applied and the redirect behavior.

" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "WebsiteConfiguration" - } - }, - "com.amazonaws.s3#GetBucketWebsiteRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name for which to get the website configuration.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetObject": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetObjectRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetObjectOutput" - }, - "errors": [ - { - "target": "com.amazonaws.s3#InvalidObjectState" - }, - { - "target": "com.amazonaws.s3#NoSuchKey" - } - ], - "traits": { - "aws.protocols#httpChecksum": { - "requestValidationModeMember": "ChecksumMode", - "responseAlgorithms": [ - "CRC64NVME", - "CRC32", - "CRC32C", - "SHA256", - "SHA1" - ] - }, - "smithy.api#documentation": "

Retrieves an object from Amazon S3.

\n

In the GetObject request, specify the full key name for the object.

\n

\n General purpose buckets - Both the virtual-hosted-style\n requests and the path-style requests are supported. For a virtual hosted-style request\n example, if you have the object photos/2006/February/sample.jpg, specify the\n object key name as /photos/2006/February/sample.jpg. For a path-style request\n example, if you have the object photos/2006/February/sample.jpg in the bucket\n named examplebucket, specify the object key name as\n /examplebucket/photos/2006/February/sample.jpg. For more information about\n request types, see HTTP Host\n Header Bucket Specification in the Amazon S3 User Guide.

\n

\n Directory buckets -\n Only virtual-hosted-style requests are supported. For a virtual hosted-style request example, if you have the object photos/2006/February/sample.jpg in the bucket named examplebucket--use1-az5--x-s3, specify the object key name as /photos/2006/February/sample.jpg. Also, when you make requests to this API operation, your requests are sent to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - You\n must have the required permissions in a policy. To use\n GetObject, you must have the READ access to the\n object (or version). If you grant READ access to the anonymous\n user, the GetObject operation returns the object without using\n an authorization header. For more information, see Specifying permissions in a policy in the\n Amazon S3 User Guide.

    \n

    If you include a versionId in your request header, you must\n have the s3:GetObjectVersion permission to access a specific\n version of an object. The s3:GetObject permission is not\n required in this scenario.

    \n

    If you request the current version of an object without a specific\n versionId in the request header, only the\n s3:GetObject permission is required. The\n s3:GetObjectVersion permission is not required in this\n scenario.

    \n

    If the object that you request doesn’t exist, the error that Amazon S3 returns\n depends on whether you also have the s3:ListBucket\n permission.

    \n
      \n
    • \n

      If you have the s3:ListBucket permission on the\n bucket, Amazon S3 returns an HTTP status code 404 Not Found\n error.

      \n
    • \n
    • \n

      If you don’t have the s3:ListBucket permission, Amazon S3\n returns an HTTP status code 403 Access Denied\n error.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n

    If\n the\n object is encrypted using SSE-KMS, you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions\n in IAM identity-based policies and KMS key policies for the KMS\n key.

    \n
  • \n
\n
\n
Storage classes
\n
\n

If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval\n storage class, the S3 Glacier Deep Archive storage class, the\n S3 Intelligent-Tiering Archive Access tier, or the S3 Intelligent-Tiering Deep Archive Access tier,\n before you can retrieve the object you must first restore a copy using RestoreObject. Otherwise, this operation returns an\n InvalidObjectState error. For information about restoring archived\n objects, see Restoring Archived\n Objects in the Amazon S3 User Guide.

\n

\n Directory buckets -\n For directory buckets, only the S3 Express One Zone storage class is supported to store newly created objects. \nUnsupported storage class values won't write a destination object and will respond with the HTTP status code 400 Bad Request.

\n
\n
Encryption
\n
\n

Encryption request headers, like x-amz-server-side-encryption,\n should not be sent for the GetObject requests, if your object uses\n server-side encryption with Amazon S3 managed encryption keys (SSE-S3), server-side\n encryption with Key Management Service (KMS) keys (SSE-KMS), or dual-layer server-side\n encryption with Amazon Web Services KMS keys (DSSE-KMS). If you include the header in your\n GetObject requests for the object that uses these types of keys,\n you’ll get an HTTP 400 Bad Request error.

\n

\n Directory buckets -\n For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS. SSE-C isn't supported. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide.

\n
\n
Overriding response header values through the request
\n
\n

There are times when you want to override certain response header values of a\n GetObject response. For example, you might override the\n Content-Disposition response header value through your\n GetObject request.

\n

You can override values for a set of response headers. These modified response\n header values are included only in a successful response, that is, when the HTTP\n status code 200 OK is returned. The headers you can override using\n the following query parameters in the request are a subset of the headers that\n Amazon S3 accepts when you create an object.

\n

The response headers that you can override for the GetObject\n response are Cache-Control, Content-Disposition,\n Content-Encoding, Content-Language,\n Content-Type, and Expires.

\n

To override values for a set of response headers in the GetObject\n response, you can use the following query parameters in the request.

\n
    \n
  • \n

    \n response-cache-control\n

    \n
  • \n
  • \n

    \n response-content-disposition\n

    \n
  • \n
  • \n

    \n response-content-encoding\n

    \n
  • \n
  • \n

    \n response-content-language\n

    \n
  • \n
  • \n

    \n response-content-type\n

    \n
  • \n
  • \n

    \n response-expires\n

    \n
  • \n
\n \n

When you use these parameters, you must sign the request by using either an\n Authorization header or a presigned URL. These parameters cannot be used with\n an unsigned (anonymous) request.

\n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to GetObject:

\n ", - "smithy.api#examples": [ - { - "title": "To retrieve a byte range of an object ", - "documentation": "The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a specific byte range.", - "input": { - "Bucket": "examplebucket", - "Key": "SampleFile.txt", - "Range": "bytes=0-9" + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#SelectObjectContentRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The S3 bucket.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

The object key.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created \n using a checksum algorithm. For more information,\n see Protecting data using SSE-C keys in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKey": { + "target": "com.amazonaws.s3#SSECustomerKey", + "traits": { + "smithy.api#documentation": "

The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. \n For more information, see\n Protecting data using SSE-C keys in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum \n algorithm. For more information,\n see Protecting data using SSE-C keys in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } + }, + "Expression": { + "target": "com.amazonaws.s3#Expression", + "traits": { + "smithy.api#documentation": "

The expression that is used to query the object.

", + "smithy.api#required": {} + } + }, + "ExpressionType": { + "target": "com.amazonaws.s3#ExpressionType", + "traits": { + "smithy.api#documentation": "

The type of the provided expression (for example, SQL).

", + "smithy.api#required": {} + } + }, + "RequestProgress": { + "target": "com.amazonaws.s3#RequestProgress", + "traits": { + "smithy.api#documentation": "

Specifies if periodic request progress information should be enabled.

" + } + }, + "InputSerialization": { + "target": "com.amazonaws.s3#InputSerialization", + "traits": { + "smithy.api#documentation": "

Describes the format of the data in the object that is being queried.

", + "smithy.api#required": {} + } + }, + "OutputSerialization": { + "target": "com.amazonaws.s3#OutputSerialization", + "traits": { + "smithy.api#documentation": "

Describes the format of the data that you want Amazon S3 to return in response.

", + "smithy.api#required": {} + } + }, + "ScanRange": { + "target": "com.amazonaws.s3#ScanRange", + "traits": { + "smithy.api#documentation": "

Specifies the byte range of the object to get the records from. A record is processed when its first\n byte is contained by the range. This parameter is optional, but when specified, it must not be empty.\n See RFC 2616, Section 14.35.1 about how to specify the start and end of the range.

\n

\n ScanRangemay be used in the following ways:

\n
    \n
  • \n

    \n 50100\n - process only the records starting between the bytes 50 and 100 (inclusive, counting from\n zero)

    \n
  • \n
  • \n

    \n 50 - process only the\n records starting after the byte 50

    \n
  • \n
  • \n

    \n 50 - process only the\n records within the last 50 bytes of the file.

    \n
  • \n
" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } }, - "output": { - "AcceptRanges": "bytes", - "ContentType": "text/plain", - "LastModified": "2014-10-09T22:57:28.000Z", - "ContentLength": 10, - "VersionId": "null", - "ETag": "\"0d94420ffd0bc68cd3d152506b97a9cc\"", - "ContentRange": "bytes 0-9/43", - "Metadata": {} - } - }, - { - "title": "To retrieve an object", - "documentation": "The following example retrieves an object for an S3 bucket.", - "input": { - "Bucket": "examplebucket", - "Key": "HappyFace.jpg" + "traits": { + "smithy.api#documentation": "\n

Learn Amazon S3 Select is no longer available to new customers. Existing customers of Amazon S3\n Select can continue to use the feature as usual. Learn more\n

\n
\n

Request to filter the contents of an Amazon S3 object based on a simple Structured Query Language (SQL)\n statement. In the request, along with the SQL expression, you must specify a data serialization format\n (JSON or CSV) of the object. Amazon S3 uses this to parse object data into records. It returns only records\n that match the specified SQL expression. You must also specify the data serialization format for the\n response. For more information, see S3Select API Documentation.

", + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#SelectParameters": { + "type": "structure", + "members": { + "InputSerialization": { + "target": "com.amazonaws.s3#InputSerialization", + "traits": { + "smithy.api#documentation": "

Describes the serialization format of the object.

", + "smithy.api#required": {} + } + }, + "ExpressionType": { + "target": "com.amazonaws.s3#ExpressionType", + "traits": { + "smithy.api#documentation": "

The type of the provided expression (for example, SQL).

", + "smithy.api#required": {} + } + }, + "Expression": { + "target": "com.amazonaws.s3#Expression", + "traits": { + "smithy.api#documentation": "\n

Amazon S3 Select is no longer available to new customers. Existing customers of Amazon S3 Select can\n continue to use the feature as usual. Learn more\n

\n
\n

The expression that is used to query the object.

", + "smithy.api#required": {} + } + }, + "OutputSerialization": { + "target": "com.amazonaws.s3#OutputSerialization", + "traits": { + "smithy.api#documentation": "

Describes how the results of the Select job are serialized.

", + "smithy.api#required": {} + } + } }, - "output": { - "AcceptRanges": "bytes", - "ContentType": "image/jpeg", - "LastModified": "2016-12-15T01:19:41.000Z", - "ContentLength": 3191, - "VersionId": "null", - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "TagCount": 2, - "Metadata": {} - } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}/{Key+}?x-id=GetObject", - "code": 200 - } - } - }, - "com.amazonaws.s3#GetObjectAcl": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetObjectAclRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetObjectAclOutput" - }, - "errors": [ - { - "target": "com.amazonaws.s3#NoSuchKey" - } - ], - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the access control list (ACL) of an object. To use this operation, you must have\n s3:GetObjectAcl permissions or READ_ACP access to the object.\n For more information, see Mapping of ACL permissions and access policy permissions in the Amazon S3\n User Guide\n

\n

This functionality is not supported for Amazon S3 on Outposts.

\n

By default, GET returns ACL information about the current version of an object. To\n return ACL information about a different version, use the versionId subresource.

\n \n

If your bucket uses the bucket owner enforced setting for S3 Object Ownership,\n requests to read ACLs are still supported and return the\n bucket-owner-full-control ACL with the owner being the account that\n created the bucket. For more information, see Controlling object\n ownership and disabling ACLs in the\n Amazon S3 User Guide.

\n
\n

The following operations are related to GetObjectAcl:

\n ", - "smithy.api#examples": [ - { - "title": "To retrieve object ACL", - "documentation": "The following example retrieves access control list (ACL) of an object.", - "input": { - "Bucket": "examplebucket", - "Key": "HappyFace.jpg" + "traits": { + "smithy.api#documentation": "\n

Amazon S3 Select is no longer available to new customers. Existing customers of Amazon S3 Select can\n continue to use the feature as usual. Learn more\n

\n
\n

Describes the parameters for Select job types.

\n

Learn How to\n optimize querying your data in Amazon S3 using Amazon Athena, S3 Object Lambda, or client-side\n filtering.

" + } + }, + "com.amazonaws.s3#ServerSideEncryption": { + "type": "enum", + "members": { + "AES256": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AES256" + } + }, + "aws_fsx": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "aws:fsx" + } + }, + "aws_kms": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "aws:kms" + } + }, + "aws_kms_dsse": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "aws:kms:dsse" + } + } + } + }, + "com.amazonaws.s3#ServerSideEncryptionByDefault": { + "type": "structure", + "members": { + "SSEAlgorithm": { + "target": "com.amazonaws.s3#ServerSideEncryption", + "traits": { + "smithy.api#documentation": "

Server-side encryption algorithm to use for the default encryption.

\n \n

For directory buckets, there are only two supported values for server-side encryption: AES256 and aws:kms.

\n
", + "smithy.api#required": {} + } + }, + "KMSMasterKeyID": { + "target": "com.amazonaws.s3#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

Amazon Web Services Key Management Service (KMS) customer managed key ID to use for the default encryption.

\n \n
    \n
  • \n

    \n General purpose buckets - This parameter is allowed if and\n only if SSEAlgorithm is set to aws:kms or\n aws:kms:dsse.

    \n
  • \n
  • \n

    \n Directory buckets - This parameter is allowed if and\n only if SSEAlgorithm is set to aws:kms.

    \n
  • \n
\n
\n

You can specify the key ID, key alias, or the Amazon Resource Name (ARN) of the KMS key.

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN:\n arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key Alias: alias/alias-name\n

    \n
  • \n
\n

If you are using encryption with cross-account or Amazon Web Services service operations, you must use a fully\n qualified KMS key ARN. For more information, see Using\n encryption for cross-account operations.

\n \n
    \n
  • \n

    \n General purpose buckets - If you're specifying a customer\n managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key\n alias instead, then KMS resolves the key within the requester’s account. This behavior can\n result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket\n owner. Also, if you use a key ID, you can run into a LogDestination undeliverable error when\n creating a VPC flow log.

    \n
  • \n
  • \n

    \n Directory buckets -\n When you specify an KMS customer managed key for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported.

    \n
  • \n
\n
\n \n

Amazon S3 only supports symmetric encryption KMS keys. For more information, see Asymmetric keys in\n Amazon Web Services KMS in the Amazon Web Services Key Management Service Developer Guide.

\n
" + } + } }, - "output": { - "Owner": { - "DisplayName": "owner-display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - }, - "Grants": [ - { - "Grantee": { - "Type": "CanonicalUser", - "DisplayName": "owner-display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - }, - "Permission": "WRITE" + "traits": { + "smithy.api#documentation": "

Describes the default server-side encryption to apply to new objects in the bucket. If a PUT Object\n request doesn't specify any server-side encryption, this default encryption will be applied. For more\n information, see PutBucketEncryption.

\n \n
    \n
  • \n

    \n General purpose buckets - If you don't specify a customer managed key\n at configuration, Amazon S3 automatically creates an Amazon Web Services KMS key (aws/s3) in your Amazon Web Services\n account the first time that you add an object encrypted with SSE-KMS to a bucket. By default, Amazon S3\n uses this KMS key for SSE-KMS.

    \n
  • \n
  • \n

    \n Directory buckets -\n Your SSE-KMS configuration can only support 1 customer managed key per directory bucket's lifetime. \nThe Amazon Web Services managed key (aws/s3) isn't supported. \n

    \n
  • \n
  • \n

    \n Directory buckets -\n For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS.

    \n
  • \n
\n
" + } + }, + "com.amazonaws.s3#ServerSideEncryptionConfiguration": { + "type": "structure", + "members": { + "Rules": { + "target": "com.amazonaws.s3#ServerSideEncryptionRules", + "traits": { + "smithy.api#documentation": "

Container for information about a particular server-side encryption configuration rule.

", + "smithy.api#required": {}, + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Rule" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the default server-side-encryption configuration.

" + } + }, + "com.amazonaws.s3#ServerSideEncryptionRule": { + "type": "structure", + "members": { + "ApplyServerSideEncryptionByDefault": { + "target": "com.amazonaws.s3#ServerSideEncryptionByDefault", + "traits": { + "smithy.api#documentation": "

Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object\n request doesn't specify any server-side encryption, this default encryption will be applied.

" + } }, - { - "Grantee": { - "Type": "CanonicalUser", - "DisplayName": "owner-display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - }, - "Permission": "WRITE_ACP" + "BucketKeyEnabled": { + "target": "com.amazonaws.s3#BucketKeyEnabled", + "traits": { + "smithy.api#documentation": "

Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS)\n for new objects in the bucket. Existing objects are not affected. Setting the\n BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key.

\n \n
    \n
  • \n

    \n General purpose buckets - By default, S3 Bucket Key is not\n enabled. For more information, see Amazon S3 Bucket Keys in the\n Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory buckets -\n S3 Bucket Keys are always enabled for GET and PUT operations in a directory bucket and can’t be disabled. S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets \nto directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through CopyObject, UploadPartCopy, the Copy operation in Batch Operations, or \n the import jobs. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.

    \n
  • \n
\n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the default server-side encryption configuration.

\n \n
    \n
  • \n

    \n General purpose buckets - If you're specifying a customer\n managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key\n alias instead, then KMS resolves the key within the requester’s account. This behavior can\n result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket\n owner.

    \n
  • \n
  • \n

    \n Directory buckets -\n When you specify an KMS customer managed key for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported.

    \n
  • \n
\n
" + } + }, + "com.amazonaws.s3#ServerSideEncryptionRules": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#ServerSideEncryptionRule" + } + }, + "com.amazonaws.s3#SessionCredentialValue": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.s3#SessionCredentials": { + "type": "structure", + "members": { + "AccessKeyId": { + "target": "com.amazonaws.s3#AccessKeyIdValue", + "traits": { + "smithy.api#documentation": "

A unique identifier that's associated with a secret access key. The access key ID and the secret\n access key are used together to sign programmatic Amazon Web Services requests cryptographically.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "AccessKeyId" + } }, - { - "Grantee": { - "Type": "CanonicalUser", - "DisplayName": "owner-display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - }, - "Permission": "READ" + "SecretAccessKey": { + "target": "com.amazonaws.s3#SessionCredentialValue", + "traits": { + "smithy.api#documentation": "

A key that's used with the access key ID to cryptographically sign programmatic Amazon Web Services requests.\n Signing a request identifies the sender and prevents the request from being altered.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "SecretAccessKey" + } }, - { - "Grantee": { - "Type": "CanonicalUser", - "DisplayName": "owner-display-name", - "ID": "852b113eexamplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - }, - "Permission": "READ_ACP" - } - ] - } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}/{Key+}?acl", - "code": 200 - } - } - }, - "com.amazonaws.s3#GetObjectAclOutput": { - "type": "structure", - "members": { - "Owner": { - "target": "com.amazonaws.s3#Owner", - "traits": { - "smithy.api#documentation": "

Container for the bucket owner's display name and ID.

" - } - }, - "Grants": { - "target": "com.amazonaws.s3#Grants", - "traits": { - "smithy.api#documentation": "

A list of grants.

", - "smithy.api#xmlName": "AccessControlList" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "AccessControlPolicy" - } - }, - "com.amazonaws.s3#GetObjectAclRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name that contains the object for which to get the ACL information.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The key of the object for which to get the ACL information.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Key" - } - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

Version ID used to reference a specific version of the object.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpQuery": "versionId" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetObjectAttributes": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetObjectAttributesRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetObjectAttributesOutput" - }, - "errors": [ - { - "target": "com.amazonaws.s3#NoSuchKey" - } - ], - "traits": { - "smithy.api#documentation": "

Retrieves all the metadata from an object without returning the object itself. This\n operation is useful if you're interested only in an object's metadata.

\n

\n GetObjectAttributes combines the functionality of HeadObject\n and ListParts. All of the data returned with each of those individual calls\n can be returned with a single call to GetObjectAttributes.

\n \n

\n Directory buckets -\n For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - To\n use GetObjectAttributes, you must have READ access to the\n object. The permissions that you need to use this operation depend on\n whether the bucket is versioned. If the bucket is versioned, you need both\n the s3:GetObjectVersion and\n s3:GetObjectVersionAttributes permissions for this\n operation. If the bucket is not versioned, you need the\n s3:GetObject and s3:GetObjectAttributes\n permissions. For more information, see Specifying\n Permissions in a Policy in the\n Amazon S3 User Guide. If the object that you request does\n not exist, the error Amazon S3 returns depends on whether you also have the\n s3:ListBucket permission.

    \n
      \n
    • \n

      If you have the s3:ListBucket permission on the\n bucket, Amazon S3 returns an HTTP status code 404 Not Found\n (\"no such key\") error.

      \n
    • \n
    • \n

      If you don't have the s3:ListBucket permission, Amazon S3\n returns an HTTP status code 403 Forbidden (\"access\n denied\") error.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n

    If\n the\n object is encrypted with SSE-KMS, you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions\n in IAM identity-based policies and KMS key policies for the KMS\n key.

    \n
  • \n
\n
\n
Encryption
\n
\n \n

Encryption request headers, like x-amz-server-side-encryption,\n should not be sent for HEAD requests if your object uses\n server-side encryption with Key Management Service (KMS) keys (SSE-KMS), dual-layer\n server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or server-side\n encryption with Amazon S3 managed encryption keys (SSE-S3). The\n x-amz-server-side-encryption header is used when you\n PUT an object to S3 and want to specify the encryption method.\n If you include this header in a GET request for an object that\n uses these types of keys, you’ll get an HTTP 400 Bad Request\n error. It's because the encryption method can't be changed when you retrieve\n the object.

\n
\n

If you encrypt an object by using server-side encryption with customer-provided\n encryption keys (SSE-C) when you store the object in Amazon S3, then when you retrieve\n the metadata from the object, you must use the following headers to provide the\n encryption key for the server to be able to retrieve the object's metadata. The\n headers are:

\n
    \n
  • \n

    \n x-amz-server-side-encryption-customer-algorithm\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key-MD5\n

    \n
  • \n
\n

For more information about SSE-C, see Server-Side\n Encryption (Using Customer-Provided Encryption Keys) in the\n Amazon S3 User Guide.

\n \n

\n Directory bucket permissions -\n For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your \n CreateSession requests or PUT object requests. Then, new objects \n are automatically encrypted with the desired encryption settings. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide. For more information about the encryption overriding behaviors in directory buckets, see Specifying server-side encryption with KMS for new object uploads.

\n
\n
\n
Versioning
\n
\n

\n Directory buckets -\n S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the null value of the version ID is supported by directory buckets. You can only specify null to the\n versionId query parameter in the request.

\n
\n
Conditional request headers
\n
\n

Consider the following when using request headers:

\n
    \n
  • \n

    If both of the If-Match and If-Unmodified-Since\n headers are present in the request as follows, then Amazon S3 returns the HTTP\n status code 200 OK and the data requested:

    \n
      \n
    • \n

      \n If-Match condition evaluates to\n true.

      \n
    • \n
    • \n

      \n If-Unmodified-Since condition evaluates to\n false.

      \n
    • \n
    \n

    For more information about conditional requests, see RFC 7232.

    \n
  • \n
  • \n

    If both of the If-None-Match and\n If-Modified-Since headers are present in the request as\n follows, then Amazon S3 returns the HTTP status code 304 Not\n Modified:

    \n
      \n
    • \n

      \n If-None-Match condition evaluates to\n false.

      \n
    • \n
    • \n

      \n If-Modified-Since condition evaluates to\n true.

      \n
    • \n
    \n

    For more information about conditional requests, see RFC 7232.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following actions are related to GetObjectAttributes:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}/{Key+}?attributes", - "code": 200 - } - } - }, - "com.amazonaws.s3#GetObjectAttributesOutput": { - "type": "structure", - "members": { - "DeleteMarker": { - "target": "com.amazonaws.s3#DeleteMarker", - "traits": { - "smithy.api#documentation": "

Specifies whether the object retrieved was (true) or was not\n (false) a delete marker. If false, this response header does\n not appear in the response.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-delete-marker" - } - }, - "LastModified": { - "target": "com.amazonaws.s3#LastModified", - "traits": { - "smithy.api#documentation": "

Date and time when the object was last modified.

", - "smithy.api#httpHeader": "Last-Modified" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

The version ID of the object.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-version-id" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - }, - "ETag": { - "target": "com.amazonaws.s3#ETag", - "traits": { - "smithy.api#documentation": "

An ETag is an opaque identifier assigned by a web server to a specific version of a\n resource found at a URL.

" - } - }, - "Checksum": { - "target": "com.amazonaws.s3#Checksum", - "traits": { - "smithy.api#documentation": "

The checksum or digest of the object.

" - } - }, - "ObjectParts": { - "target": "com.amazonaws.s3#GetObjectAttributesParts", - "traits": { - "smithy.api#documentation": "

A collection of parts associated with a multipart upload.

" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3#StorageClass", - "traits": { - "smithy.api#documentation": "

Provides the storage class information of the object. Amazon S3 returns this header for all\n objects except for S3 Standard storage class objects.

\n

For more information, see Storage Classes.

\n \n

\n Directory buckets -\n Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

\n
" - } - }, - "ObjectSize": { - "target": "com.amazonaws.s3#ObjectSize", - "traits": { - "smithy.api#documentation": "

The size of the object in bytes.

" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "GetObjectAttributesResponse" - } - }, - "com.amazonaws.s3#GetObjectAttributesParts": { - "type": "structure", - "members": { - "TotalPartsCount": { - "target": "com.amazonaws.s3#PartsCount", - "traits": { - "smithy.api#documentation": "

The total number of parts.

", - "smithy.api#xmlName": "PartsCount" - } - }, - "PartNumberMarker": { - "target": "com.amazonaws.s3#PartNumberMarker", - "traits": { - "smithy.api#documentation": "

The marker for the current part.

" - } - }, - "NextPartNumberMarker": { - "target": "com.amazonaws.s3#NextPartNumberMarker", - "traits": { - "smithy.api#documentation": "

When a list is truncated, this element specifies the last part in the list, as well as\n the value to use for the PartNumberMarker request parameter in a subsequent\n request.

" - } - }, - "MaxParts": { - "target": "com.amazonaws.s3#MaxParts", - "traits": { - "smithy.api#documentation": "

The maximum number of parts allowed in the response.

" - } - }, - "IsTruncated": { - "target": "com.amazonaws.s3#IsTruncated", - "traits": { - "smithy.api#documentation": "

Indicates whether the returned list of parts is truncated. A value of true\n indicates that the list was truncated. A list can be truncated if the number of parts\n exceeds the limit returned in the MaxParts element.

" - } - }, - "Parts": { - "target": "com.amazonaws.s3#PartsList", - "traits": { - "smithy.api#documentation": "

A container for elements related to a particular part. A response can contain zero or\n more Parts elements.

\n \n
    \n
  • \n

    \n General purpose buckets - For\n GetObjectAttributes, if a additional checksum (including\n x-amz-checksum-crc32, x-amz-checksum-crc32c,\n x-amz-checksum-sha1, or x-amz-checksum-sha256) isn't\n applied to the object specified in the request, the response doesn't return\n Part.

    \n
  • \n
  • \n

    \n Directory buckets - For\n GetObjectAttributes, no matter whether a additional checksum is\n applied to the object specified in the request, the response returns\n Part.

    \n
  • \n
\n
", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Part" - } - } - }, - "traits": { - "smithy.api#documentation": "

A collection of parts associated with a multipart upload.

" - } - }, - "com.amazonaws.s3#GetObjectAttributesRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket that contains the object.

\n

\n Directory buckets -\n When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The object key.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

The version ID used to reference a specific version of the object.

\n \n

S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the null value of the version ID is supported by directory buckets. You can only specify null to the\n versionId query parameter in the request.

\n
", - "smithy.api#httpQuery": "versionId" - } - }, - "MaxParts": { - "target": "com.amazonaws.s3#MaxParts", - "traits": { - "smithy.api#documentation": "

Sets the maximum number of parts to return.

", - "smithy.api#httpHeader": "x-amz-max-parts" - } - }, - "PartNumberMarker": { - "target": "com.amazonaws.s3#PartNumberMarker", - "traits": { - "smithy.api#documentation": "

Specifies the part after which listing should begin. Only parts with higher part numbers\n will be listed.

", - "smithy.api#httpHeader": "x-amz-part-number-marker" - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKey": { - "target": "com.amazonaws.s3#SSECustomerKey", - "traits": { - "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This\n value is used to store the object and then it is discarded; Amazon S3 does not store the\n encryption key. The key must be appropriate for use with the algorithm specified in the\n x-amz-server-side-encryption-customer-algorithm header.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses\n this header for a message integrity check to ensure that the encryption key was transmitted\n without error.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "ObjectAttributes": { - "target": "com.amazonaws.s3#ObjectAttributesList", - "traits": { - "smithy.api#documentation": "

Specifies the fields at the root level that you want returned in the response. Fields\n that you do not specify are not returned.

", - "smithy.api#httpHeader": "x-amz-object-attributes", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetObjectLegalHold": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetObjectLegalHoldRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetObjectLegalHoldOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Gets an object's current legal hold status. For more information, see Locking\n Objects.

\n

This functionality is not supported for Amazon S3 on Outposts.

\n

The following action is related to GetObjectLegalHold:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}/{Key+}?legal-hold", - "code": 200 - } - } - }, - "com.amazonaws.s3#GetObjectLegalHoldOutput": { - "type": "structure", - "members": { - "LegalHold": { - "target": "com.amazonaws.s3#ObjectLockLegalHold", - "traits": { - "smithy.api#documentation": "

The current legal hold status for the specified object.

", - "smithy.api#httpPayload": {}, - "smithy.api#xmlName": "LegalHold" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#GetObjectLegalHoldRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name containing the object whose legal hold status you want to retrieve.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The key name for the object whose legal hold status you want to retrieve.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

The version ID of the object whose legal hold status you want to retrieve.

", - "smithy.api#httpQuery": "versionId" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetObjectLockConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetObjectLockConfigurationRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetObjectLockConfigurationOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Gets the Object Lock configuration for a bucket. The rule specified in the Object Lock\n configuration will be applied by default to every new object placed in the specified\n bucket. For more information, see Locking Objects.

\n

The following action is related to GetObjectLockConfiguration:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?object-lock", - "code": 200 - } - } - }, - "com.amazonaws.s3#GetObjectLockConfigurationOutput": { - "type": "structure", - "members": { - "ObjectLockConfiguration": { - "target": "com.amazonaws.s3#ObjectLockConfiguration", - "traits": { - "smithy.api#documentation": "

The specified bucket's Object Lock configuration.

", - "smithy.api#httpPayload": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#GetObjectLockConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket whose Object Lock configuration you want to retrieve.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetObjectOutput": { - "type": "structure", - "members": { - "Body": { - "target": "com.amazonaws.s3#StreamingBlob", - "traits": { - "smithy.api#default": "", - "smithy.api#documentation": "

Object data.

", - "smithy.api#httpPayload": {} - } - }, - "DeleteMarker": { - "target": "com.amazonaws.s3#DeleteMarker", - "traits": { - "smithy.api#documentation": "

Indicates whether the object retrieved was (true) or was not (false) a Delete Marker. If\n false, this response header does not appear in the response.

\n \n
    \n
  • \n

    If the current version of the object is a delete marker, Amazon S3 behaves as if the\n object was deleted and includes x-amz-delete-marker: true in the\n response.

    \n
  • \n
  • \n

    If the specified version in the request is a delete marker, the response\n returns a 405 Method Not Allowed error and the Last-Modified:\n timestamp response header.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-delete-marker" - } - }, - "AcceptRanges": { - "target": "com.amazonaws.s3#AcceptRanges", - "traits": { - "smithy.api#documentation": "

Indicates that a range of bytes was specified in the request.

", - "smithy.api#httpHeader": "accept-ranges" - } - }, - "Expiration": { - "target": "com.amazonaws.s3#Expiration", - "traits": { - "smithy.api#documentation": "

If the object expiration is configured (see \n PutBucketLifecycleConfiguration\n ), the response includes this\n header. It includes the expiry-date and rule-id key-value pairs\n providing object expiration information. The value of the rule-id is\n URL-encoded.

\n \n

Object expiration information is not returned in directory buckets and this header returns the value \"NotImplemented\" in all responses for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-expiration" - } - }, - "Restore": { - "target": "com.amazonaws.s3#Restore", - "traits": { - "smithy.api#documentation": "

Provides information about object restoration action and expiration time of the restored\n object copy.

\n \n

This functionality is not supported for directory buckets.\n Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

\n
", - "smithy.api#httpHeader": "x-amz-restore" - } - }, - "LastModified": { - "target": "com.amazonaws.s3#LastModified", - "traits": { - "smithy.api#documentation": "

Date and time when the object was last modified.

\n

\n General purpose buckets - When you specify a\n versionId of the object in your request, if the specified version in the\n request is a delete marker, the response returns a 405 Method Not Allowed\n error and the Last-Modified: timestamp response header.

", - "smithy.api#httpHeader": "Last-Modified" - } - }, - "ContentLength": { - "target": "com.amazonaws.s3#ContentLength", - "traits": { - "smithy.api#documentation": "

Size of the body in bytes.

", - "smithy.api#httpHeader": "Content-Length" - } - }, - "ETag": { - "target": "com.amazonaws.s3#ETag", - "traits": { - "smithy.api#documentation": "

An entity tag (ETag) is an opaque identifier assigned by a web server to a specific\n version of a resource found at a URL.

", - "smithy.api#httpHeader": "ETag" - } - }, - "ChecksumCRC32": { - "target": "com.amazonaws.s3#ChecksumCRC32", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32 checksum of the object. This checksum is only present if the object was uploaded\n with the object. For more information, see \n Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc32" - } - }, - "ChecksumCRC32C": { - "target": "com.amazonaws.s3#ChecksumCRC32C", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32C checksum of the object. This will only be present if the object was uploaded\n with the object. For more information, see \n Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc32c" - } - }, - "ChecksumCRC64NVME": { - "target": "com.amazonaws.s3#ChecksumCRC64NVME", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC-64NVME checksum of the object. For more\n information, see Checking object integrity\n in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc64nvme" - } - }, - "ChecksumSHA1": { - "target": "com.amazonaws.s3#ChecksumSHA1", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA-1 digest of the object. This will only be present if the object was uploaded\n with the object. For more information, see \n Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-sha1" - } - }, - "ChecksumSHA256": { - "target": "com.amazonaws.s3#ChecksumSHA256", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA-256 digest of the object. This will only be present if the object was uploaded\n with the object. For more information, see \n Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-sha256" - } - }, - "ChecksumType": { - "target": "com.amazonaws.s3#ChecksumType", - "traits": { - "smithy.api#documentation": "

The checksum type, which determines how part-level checksums are combined to create an\n object-level checksum for multipart objects. You can use this header response to verify\n that the checksum type that is received is the same checksum type that was specified in the\n CreateMultipartUpload request. For more information, see Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-type" - } - }, - "MissingMeta": { - "target": "com.amazonaws.s3#MissingMeta", - "traits": { - "smithy.api#documentation": "

This is set to the number of metadata entries not returned in the headers that are\n prefixed with x-amz-meta-. This can happen if you create metadata using an API\n like SOAP that supports more flexible metadata than the REST API. For example, using SOAP,\n you can create metadata whose values are not legal HTTP headers.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-missing-meta" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

Version ID of the object.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-version-id" - } - }, - "CacheControl": { - "target": "com.amazonaws.s3#CacheControl", - "traits": { - "smithy.api#documentation": "

Specifies caching behavior along the request/reply chain.

", - "smithy.api#httpHeader": "Cache-Control" - } - }, - "ContentDisposition": { - "target": "com.amazonaws.s3#ContentDisposition", - "traits": { - "smithy.api#documentation": "

Specifies presentational information for the object.

", - "smithy.api#httpHeader": "Content-Disposition" - } - }, - "ContentEncoding": { - "target": "com.amazonaws.s3#ContentEncoding", - "traits": { - "smithy.api#documentation": "

Indicates what content encodings have been applied to the object and thus what decoding\n mechanisms must be applied to obtain the media-type referenced by the Content-Type header\n field.

", - "smithy.api#httpHeader": "Content-Encoding" - } - }, - "ContentLanguage": { - "target": "com.amazonaws.s3#ContentLanguage", - "traits": { - "smithy.api#documentation": "

The language the content is in.

", - "smithy.api#httpHeader": "Content-Language" - } - }, - "ContentRange": { - "target": "com.amazonaws.s3#ContentRange", - "traits": { - "smithy.api#documentation": "

The portion of the object returned in the response.

", - "smithy.api#httpHeader": "Content-Range" - } - }, - "ContentType": { - "target": "com.amazonaws.s3#ContentType", - "traits": { - "smithy.api#documentation": "

A standard MIME type describing the format of the object data.

", - "smithy.api#httpHeader": "Content-Type" - } - }, - "Expires": { - "target": "com.amazonaws.s3#Expires", - "traits": { - "smithy.api#documentation": "

The date and time at which the object is no longer cacheable.

", - "smithy.api#httpHeader": "Expires" - } - }, - "WebsiteRedirectLocation": { - "target": "com.amazonaws.s3#WebsiteRedirectLocation", - "traits": { - "smithy.api#documentation": "

If the bucket is configured as a website, redirects requests for this object to another\n object in the same bucket or to an external URL. Amazon S3 stores the value of this header in\n the object metadata.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-website-redirect-location" - } - }, - "ServerSideEncryption": { - "target": "com.amazonaws.s3#ServerSideEncryption", - "traits": { - "smithy.api#documentation": "

The server-side encryption algorithm used when you store this object in Amazon S3.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption" - } - }, - "Metadata": { - "target": "com.amazonaws.s3#Metadata", - "traits": { - "smithy.api#documentation": "

A map of metadata to store with the object in S3.

", - "smithy.api#httpPrefixHeaders": "x-amz-meta-" - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the\n response will include this header to confirm the encryption algorithm that's used.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the\n response will include this header to provide the round-trip message integrity verification\n of the customer-provided encryption key.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - }, - "SSEKMSKeyId": { - "target": "com.amazonaws.s3#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

If present, indicates the ID of the KMS key that was used for object encryption.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" - } - }, - "BucketKeyEnabled": { - "target": "com.amazonaws.s3#BucketKeyEnabled", - "traits": { - "smithy.api#documentation": "

Indicates whether the object uses an S3 Bucket Key for server-side encryption with\n Key Management Service (KMS) keys (SSE-KMS).

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3#StorageClass", - "traits": { - "smithy.api#documentation": "

Provides storage class information of the object. Amazon S3 returns this header for all\n objects except for S3 Standard storage class objects.

\n \n

\n Directory buckets -\n Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

\n
", - "smithy.api#httpHeader": "x-amz-storage-class" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - }, - "ReplicationStatus": { - "target": "com.amazonaws.s3#ReplicationStatus", - "traits": { - "smithy.api#documentation": "

Amazon S3 can return this if your request involves a bucket that is either a source or\n destination in a replication rule.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-replication-status" - } - }, - "PartsCount": { - "target": "com.amazonaws.s3#PartsCount", - "traits": { - "smithy.api#documentation": "

The count of parts this object has. This value is only returned if you specify\n partNumber in your request and the object was uploaded as a multipart\n upload.

", - "smithy.api#httpHeader": "x-amz-mp-parts-count" - } - }, - "TagCount": { - "target": "com.amazonaws.s3#TagCount", - "traits": { - "smithy.api#documentation": "

The number of tags, if any, on the object, when you have the relevant permission to read\n object tags.

\n

You can use GetObjectTagging to retrieve\n the tag set associated with an object.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-tagging-count" - } - }, - "ObjectLockMode": { - "target": "com.amazonaws.s3#ObjectLockMode", - "traits": { - "smithy.api#documentation": "

The Object Lock mode that's currently in place for this object.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-object-lock-mode" - } - }, - "ObjectLockRetainUntilDate": { - "target": "com.amazonaws.s3#ObjectLockRetainUntilDate", - "traits": { - "smithy.api#documentation": "

The date and time when this object's Object Lock will expire.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-object-lock-retain-until-date" - } - }, - "ObjectLockLegalHoldStatus": { - "target": "com.amazonaws.s3#ObjectLockLegalHoldStatus", - "traits": { - "smithy.api#documentation": "

Indicates whether this object has an active legal hold. This field is only returned if\n you have permission to view an object's legal hold status.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-object-lock-legal-hold" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#GetObjectRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name containing the object.

\n

\n Directory buckets -\n When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n

\n Object Lambda access points - When you use this action with an Object Lambda access point, you must direct requests to the Object Lambda access point hostname. The Object Lambda access point hostname takes the form AccessPointName-AccountId.s3-object-lambda.Region.amazonaws.com.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "IfMatch": { - "target": "com.amazonaws.s3#IfMatch", - "traits": { - "smithy.api#documentation": "

Return the object only if its entity tag (ETag) is the same as the one specified in this\n header; otherwise, return a 412 Precondition Failed error.

\n

If both of the If-Match and If-Unmodified-Since headers are\n present in the request as follows: If-Match condition evaluates to\n true, and; If-Unmodified-Since condition evaluates to\n false; then, S3 returns 200 OK and the data requested.

\n

For more information about conditional requests, see RFC 7232.

", - "smithy.api#httpHeader": "If-Match" - } - }, - "IfModifiedSince": { - "target": "com.amazonaws.s3#IfModifiedSince", - "traits": { - "smithy.api#documentation": "

Return the object only if it has been modified since the specified time; otherwise,\n return a 304 Not Modified error.

\n

If both of the If-None-Match and If-Modified-Since headers are\n present in the request as follows: If-None-Match condition evaluates to\n false, and; If-Modified-Since condition evaluates to\n true; then, S3 returns 304 Not Modified status code.

\n

For more information about conditional requests, see RFC 7232.

", - "smithy.api#httpHeader": "If-Modified-Since" - } - }, - "IfNoneMatch": { - "target": "com.amazonaws.s3#IfNoneMatch", - "traits": { - "smithy.api#documentation": "

Return the object only if its entity tag (ETag) is different from the one specified in\n this header; otherwise, return a 304 Not Modified error.

\n

If both of the If-None-Match and If-Modified-Since headers are\n present in the request as follows: If-None-Match condition evaluates to\n false, and; If-Modified-Since condition evaluates to\n true; then, S3 returns 304 Not Modified HTTP status\n code.

\n

For more information about conditional requests, see RFC 7232.

", - "smithy.api#httpHeader": "If-None-Match" - } - }, - "IfUnmodifiedSince": { - "target": "com.amazonaws.s3#IfUnmodifiedSince", - "traits": { - "smithy.api#documentation": "

Return the object only if it has not been modified since the specified time; otherwise,\n return a 412 Precondition Failed error.

\n

If both of the If-Match and If-Unmodified-Since headers are\n present in the request as follows: If-Match condition evaluates to\n true, and; If-Unmodified-Since condition evaluates to\n false; then, S3 returns 200 OK and the data requested.

\n

For more information about conditional requests, see RFC 7232.

", - "smithy.api#httpHeader": "If-Unmodified-Since" - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Key of the object to get.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Key" - } - } - }, - "Range": { - "target": "com.amazonaws.s3#Range", - "traits": { - "smithy.api#documentation": "

Downloads the specified byte range of an object. For more information about the HTTP\n Range header, see https://www.rfc-editor.org/rfc/rfc9110.html#name-range.

\n \n

Amazon S3 doesn't support retrieving multiple ranges of data per GET\n request.

\n
", - "smithy.api#httpHeader": "Range" - } - }, - "ResponseCacheControl": { - "target": "com.amazonaws.s3#ResponseCacheControl", - "traits": { - "smithy.api#documentation": "

Sets the Cache-Control header of the response.

", - "smithy.api#httpQuery": "response-cache-control" - } - }, - "ResponseContentDisposition": { - "target": "com.amazonaws.s3#ResponseContentDisposition", - "traits": { - "smithy.api#documentation": "

Sets the Content-Disposition header of the response.

", - "smithy.api#httpQuery": "response-content-disposition" - } - }, - "ResponseContentEncoding": { - "target": "com.amazonaws.s3#ResponseContentEncoding", - "traits": { - "smithy.api#documentation": "

Sets the Content-Encoding header of the response.

", - "smithy.api#httpQuery": "response-content-encoding" - } - }, - "ResponseContentLanguage": { - "target": "com.amazonaws.s3#ResponseContentLanguage", - "traits": { - "smithy.api#documentation": "

Sets the Content-Language header of the response.

", - "smithy.api#httpQuery": "response-content-language" - } - }, - "ResponseContentType": { - "target": "com.amazonaws.s3#ResponseContentType", - "traits": { - "smithy.api#documentation": "

Sets the Content-Type header of the response.

", - "smithy.api#httpQuery": "response-content-type" - } - }, - "ResponseExpires": { - "target": "com.amazonaws.s3#ResponseExpires", - "traits": { - "smithy.api#documentation": "

Sets the Expires header of the response.

", - "smithy.api#httpQuery": "response-expires" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

Version ID used to reference a specific version of the object.

\n

By default, the GetObject operation returns the current version of an\n object. To return a different version, use the versionId subresource.

\n \n
    \n
  • \n

    If you include a versionId in your request header, you must have\n the s3:GetObjectVersion permission to access a specific version of an\n object. The s3:GetObject permission is not required in this\n scenario.

    \n
  • \n
  • \n

    If you request the current version of an object without a specific\n versionId in the request header, only the\n s3:GetObject permission is required. The\n s3:GetObjectVersion permission is not required in this\n scenario.

    \n
  • \n
  • \n

    \n Directory buckets -\n S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the null value of the version ID is supported by directory buckets. You can only specify null to the\n versionId query parameter in the request.

    \n
  • \n
\n
\n

For more information about versioning, see PutBucketVersioning.

", - "smithy.api#httpQuery": "versionId" - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

Specifies the algorithm to use when decrypting the object (for example,\n AES256).

\n

If you encrypt an object by using server-side encryption with customer-provided\n encryption keys (SSE-C) when you store the object in Amazon S3, then when you GET the object,\n you must use the following headers:

\n
    \n
  • \n

    \n x-amz-server-side-encryption-customer-algorithm\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key-MD5\n

    \n
  • \n
\n

For more information about SSE-C, see Server-Side Encryption\n (Using Customer-Provided Encryption Keys) in the\n Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKey": { - "target": "com.amazonaws.s3#SSECustomerKey", - "traits": { - "smithy.api#documentation": "

Specifies the customer-provided encryption key that you originally provided for Amazon S3 to\n encrypt the data before storing it. This value is used to decrypt the object when\n recovering it and must match the one used when storing the data. The key must be\n appropriate for use with the algorithm specified in the\n x-amz-server-side-encryption-customer-algorithm header.

\n

If you encrypt an object by using server-side encryption with customer-provided\n encryption keys (SSE-C) when you store the object in Amazon S3, then when you GET the object,\n you must use the following headers:

\n
    \n
  • \n

    \n x-amz-server-side-encryption-customer-algorithm\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key-MD5\n

    \n
  • \n
\n

For more information about SSE-C, see Server-Side Encryption\n (Using Customer-Provided Encryption Keys) in the\n Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the customer-provided encryption key according to\n RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption\n key was transmitted without error.

\n

If you encrypt an object by using server-side encryption with customer-provided\n encryption keys (SSE-C) when you store the object in Amazon S3, then when you GET the object,\n you must use the following headers:

\n
    \n
  • \n

    \n x-amz-server-side-encryption-customer-algorithm\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key-MD5\n

    \n
  • \n
\n

For more information about SSE-C, see Server-Side Encryption\n (Using Customer-Provided Encryption Keys) in the\n Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "PartNumber": { - "target": "com.amazonaws.s3#PartNumber", - "traits": { - "smithy.api#documentation": "

Part number of the object being read. This is a positive integer between 1 and 10,000.\n Effectively performs a 'ranged' GET request for the part specified. Useful for downloading\n just a part of an object.

", - "smithy.api#httpQuery": "partNumber" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "ChecksumMode": { - "target": "com.amazonaws.s3#ChecksumMode", - "traits": { - "smithy.api#documentation": "

To retrieve the checksum, this mode must be enabled.

\n

\n General purpose buckets - In addition, if you enable\n checksum mode and the object is uploaded with a checksum and encrypted with an\n Key Management Service (KMS) key, you must have permission to use the kms:Decrypt action\n to retrieve the checksum.

", - "smithy.api#httpHeader": "x-amz-checksum-mode" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetObjectResponseStatusCode": { - "type": "integer" - }, - "com.amazonaws.s3#GetObjectRetention": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetObjectRetentionRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetObjectRetentionOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Retrieves an object's retention settings. For more information, see Locking\n Objects.

\n

This functionality is not supported for Amazon S3 on Outposts.

\n

The following action is related to GetObjectRetention:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}/{Key+}?retention", - "code": 200 - } - } - }, - "com.amazonaws.s3#GetObjectRetentionOutput": { - "type": "structure", - "members": { - "Retention": { - "target": "com.amazonaws.s3#ObjectLockRetention", - "traits": { - "smithy.api#documentation": "

The container element for an object's retention settings.

", - "smithy.api#httpPayload": {}, - "smithy.api#xmlName": "Retention" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#GetObjectRetentionRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name containing the object whose retention settings you want to retrieve.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The key name for the object whose retention settings you want to retrieve.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

The version ID for the object whose retention settings you want to retrieve.

", - "smithy.api#httpQuery": "versionId" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetObjectTagging": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetObjectTaggingRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetObjectTaggingOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns the tag-set of an object. You send the GET request against the tagging\n subresource associated with the object.

\n

To use this operation, you must have permission to perform the\n s3:GetObjectTagging action. By default, the GET action returns information\n about current version of an object. For a versioned bucket, you can have multiple versions\n of an object in your bucket. To retrieve tags of any other version, use the versionId query\n parameter. You also need permission for the s3:GetObjectVersionTagging\n action.

\n

By default, the bucket owner has this permission and can grant this permission to\n others.

\n

For information about the Amazon S3 object tagging feature, see Object Tagging.

\n

The following actions are related to GetObjectTagging:

\n ", - "smithy.api#examples": [ - { - "title": "To retrieve tag set of a specific object version", - "documentation": "The following example retrieves tag set of an object. The request specifies object version.", - "input": { - "Bucket": "examplebucket", - "Key": "exampleobject", - "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI" + "SessionToken": { + "target": "com.amazonaws.s3#SessionCredentialValue", + "traits": { + "smithy.api#documentation": "

A part of the temporary security credentials. The session token is used to validate the temporary\n security credentials.\n \n

", + "smithy.api#required": {}, + "smithy.api#xmlName": "SessionToken" + } + }, + "Expiration": { + "target": "com.amazonaws.s3#SessionExpiration", + "traits": { + "smithy.api#documentation": "

Temporary security credentials expire after a specified interval. After temporary credentials\n expire, any calls that you make with those credentials will fail. So you must generate a new set of\n temporary credentials. Temporary credentials cannot be extended or refreshed beyond the original\n specified interval.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "Expiration" + } + } + }, + "traits": { + "smithy.api#documentation": "

The established temporary security credentials of the session.

\n \n

\n Directory buckets - These session credentials are only\n supported for the authentication and authorization of Zonal endpoint API operations on directory buckets.

\n
" + } + }, + "com.amazonaws.s3#SessionExpiration": { + "type": "timestamp" + }, + "com.amazonaws.s3#SessionMode": { + "type": "enum", + "members": { + "ReadOnly": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ReadOnly" + } + }, + "ReadWrite": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ReadWrite" + } + } + } + }, + "com.amazonaws.s3#Setting": { + "type": "boolean" + }, + "com.amazonaws.s3#SimplePrefix": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

To use simple format for S3 keys for log objects, set SimplePrefix to an empty object.

\n

\n [DestinationPrefix][YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString]\n

", + "smithy.api#xmlName": "SimplePrefix" + } + }, + "com.amazonaws.s3#Size": { + "type": "long" + }, + "com.amazonaws.s3#SkipValidation": { + "type": "boolean" + }, + "com.amazonaws.s3#SourceSelectionCriteria": { + "type": "structure", + "members": { + "SseKmsEncryptedObjects": { + "target": "com.amazonaws.s3#SseKmsEncryptedObjects", + "traits": { + "smithy.api#documentation": "

A container for filter information for the selection of Amazon S3 objects encrypted with Amazon Web Services KMS. If\n you include SourceSelectionCriteria in the replication configuration, this element is\n required.

" + } + }, + "ReplicaModifications": { + "target": "com.amazonaws.s3#ReplicaModifications", + "traits": { + "smithy.api#documentation": "

A filter that you can specify for selections for modifications on replicas. Amazon S3 doesn't replicate\n replica modifications by default. In the latest version of replication configuration (when\n Filter is specified), you can specify this element and set the status to\n Enabled to replicate modifications on replicas.

\n \n

If you don't specify the Filter element, Amazon S3 assumes that the replication\n configuration is the earlier version, V1. In the earlier version, this element is not allowed

\n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

A container that describes additional filters for identifying the source objects that you want to\n replicate. You can choose to enable or disable the replication of these objects. Currently, Amazon S3\n supports only the filter that you can specify for objects created with server-side encryption using a\n customer managed key stored in Amazon Web Services Key Management Service (SSE-KMS).

" + } + }, + "com.amazonaws.s3#SseKmsEncryptedObjects": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.s3#SseKmsEncryptedObjectsStatus", + "traits": { + "smithy.api#documentation": "

Specifies whether Amazon S3 replicates objects created with server-side encryption using an Amazon Web Services KMS key\n stored in Amazon Web Services Key Management Service.

", + "smithy.api#required": {} + } + } }, - "output": { - "VersionId": "ydlaNkwWm0SfKJR.T1b1fIdPRbldTYRI", - "TagSet": [ - { - "Value": "Value1", - "Key": "Key1" + "traits": { + "smithy.api#documentation": "

A container for filter information for the selection of S3 objects encrypted with Amazon Web Services KMS.

" + } + }, + "com.amazonaws.s3#SseKmsEncryptedObjectsStatus": { + "type": "enum", + "members": { + "Enabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Enabled" + } + }, + "Disabled": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Disabled" + } } - ] } - }, - { - "title": "To retrieve tag set of an object", - "documentation": "The following example retrieves tag set of an object.", - "input": { - "Bucket": "examplebucket", - "Key": "HappyFace.jpg" - }, - "output": { - "VersionId": "null", - "TagSet": [ - { - "Value": "Value4", - "Key": "Key4" + }, + "com.amazonaws.s3#Start": { + "type": "long" + }, + "com.amazonaws.s3#StartAfter": { + "type": "string" + }, + "com.amazonaws.s3#Stats": { + "type": "structure", + "members": { + "BytesScanned": { + "target": "com.amazonaws.s3#BytesScanned", + "traits": { + "smithy.api#documentation": "

The total number of object bytes scanned.

" + } }, - { - "Value": "Value3", - "Key": "Key3" + "BytesProcessed": { + "target": "com.amazonaws.s3#BytesProcessed", + "traits": { + "smithy.api#documentation": "

The total number of uncompressed object bytes processed.

" + } + }, + "BytesReturned": { + "target": "com.amazonaws.s3#BytesReturned", + "traits": { + "smithy.api#documentation": "

The total number of bytes of records payload data returned.

" + } } - ] + }, + "traits": { + "smithy.api#documentation": "

Container for the stats details.

" } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}/{Key+}?tagging", - "code": 200 - } - } - }, - "com.amazonaws.s3#GetObjectTaggingOutput": { - "type": "structure", - "members": { - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

The versionId of the object for which you got the tagging information.

", - "smithy.api#httpHeader": "x-amz-version-id" - } - }, - "TagSet": { - "target": "com.amazonaws.s3#TagSet", - "traits": { - "smithy.api#documentation": "

Contains the tag set.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "Tagging" - } - }, - "com.amazonaws.s3#GetObjectTaggingRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name containing the object for which to get the tagging information.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Object key for which to get the tagging information.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

The versionId of the object for which to get the tagging information.

", - "smithy.api#httpQuery": "versionId" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetObjectTorrent": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetObjectTorrentRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetObjectTorrentOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns torrent files from a bucket. BitTorrent can save you bandwidth when you're\n distributing large files.

\n \n

You can get torrent only for objects that are less than 5 GB in size, and that are\n not encrypted using server-side encryption with a customer-provided encryption\n key.

\n
\n

To use GET, you must have READ access to the object.

\n

This functionality is not supported for Amazon S3 on Outposts.

\n

The following action is related to GetObjectTorrent:

\n ", - "smithy.api#examples": [ - { - "title": "To retrieve torrent files for an object", - "documentation": "The following example retrieves torrent files of an object.", - "input": { - "Bucket": "examplebucket", - "Key": "HappyFace.jpg" - }, - "output": {} - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}/{Key+}?torrent", - "code": 200 - } - } - }, - "com.amazonaws.s3#GetObjectTorrentOutput": { - "type": "structure", - "members": { - "Body": { - "target": "com.amazonaws.s3#StreamingBlob", - "traits": { - "smithy.api#default": "", - "smithy.api#documentation": "

A Bencoded dictionary as defined by the BitTorrent specification

", - "smithy.api#httpPayload": {} - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#GetObjectTorrentRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket containing the object for which to get the torrent files.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The object key for which to get the information.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GetPublicAccessBlock": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#GetPublicAccessBlockRequest" - }, - "output": { - "target": "com.amazonaws.s3#GetPublicAccessBlockOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Retrieves the PublicAccessBlock configuration for an Amazon S3 bucket. To use\n this operation, you must have the s3:GetBucketPublicAccessBlock permission.\n For more information about Amazon S3 permissions, see Specifying Permissions in a\n Policy.

\n \n

When Amazon S3 evaluates the PublicAccessBlock configuration for a bucket or\n an object, it checks the PublicAccessBlock configuration for both the\n bucket (or the bucket that contains the object) and the bucket owner's account. If the\n PublicAccessBlock settings are different between the bucket and the\n account, Amazon S3 uses the most restrictive combination of the bucket-level and\n account-level settings.

\n
\n

For more information about when Amazon S3 considers a bucket or an object public, see The Meaning of \"Public\".

\n

The following operations are related to GetPublicAccessBlock:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?publicAccessBlock", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#GetPublicAccessBlockOutput": { - "type": "structure", - "members": { - "PublicAccessBlockConfiguration": { - "target": "com.amazonaws.s3#PublicAccessBlockConfiguration", - "traits": { - "smithy.api#documentation": "

The PublicAccessBlock configuration currently in effect for this Amazon S3\n bucket.

", - "smithy.api#httpPayload": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#GetPublicAccessBlockRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the Amazon S3 bucket whose PublicAccessBlock configuration you want\n to retrieve.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#GlacierJobParameters": { - "type": "structure", - "members": { - "Tier": { - "target": "com.amazonaws.s3#Tier", - "traits": { - "smithy.api#documentation": "

Retrieval tier at which the restore will be processed.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for S3 Glacier job parameters.

" - } - }, - "com.amazonaws.s3#Grant": { - "type": "structure", - "members": { - "Grantee": { - "target": "com.amazonaws.s3#Grantee", - "traits": { - "smithy.api#documentation": "

The person being granted permissions.

", - "smithy.api#xmlNamespace": { - "uri": "http://www.w3.org/2001/XMLSchema-instance", - "prefix": "xsi" - } - } - }, - "Permission": { - "target": "com.amazonaws.s3#Permission", - "traits": { - "smithy.api#documentation": "

Specifies the permission given to the grantee.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for grant information.

" - } - }, - "com.amazonaws.s3#GrantFullControl": { - "type": "string" - }, - "com.amazonaws.s3#GrantRead": { - "type": "string" - }, - "com.amazonaws.s3#GrantReadACP": { - "type": "string" - }, - "com.amazonaws.s3#GrantWrite": { - "type": "string" - }, - "com.amazonaws.s3#GrantWriteACP": { - "type": "string" - }, - "com.amazonaws.s3#Grantee": { - "type": "structure", - "members": { - "DisplayName": { - "target": "com.amazonaws.s3#DisplayName", - "traits": { - "smithy.api#documentation": "

Screen name of the grantee.

" - } - }, - "EmailAddress": { - "target": "com.amazonaws.s3#EmailAddress", - "traits": { - "smithy.api#documentation": "

Email address of the grantee.

\n \n

Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

\n
    \n
  • \n

    US East (N. Virginia)

    \n
  • \n
  • \n

    US West (N. California)

    \n
  • \n
  • \n

    US West (Oregon)

    \n
  • \n
  • \n

    Asia Pacific (Singapore)

    \n
  • \n
  • \n

    Asia Pacific (Sydney)

    \n
  • \n
  • \n

    Asia Pacific (Tokyo)

    \n
  • \n
  • \n

    Europe (Ireland)

    \n
  • \n
  • \n

    South America (São Paulo)

    \n
  • \n
\n

For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

\n
" - } - }, - "ID": { - "target": "com.amazonaws.s3#ID", - "traits": { - "smithy.api#documentation": "

The canonical user ID of the grantee.

" - } - }, - "URI": { - "target": "com.amazonaws.s3#URI", - "traits": { - "smithy.api#documentation": "

URI of the grantee group.

" - } - }, - "Type": { - "target": "com.amazonaws.s3#Type", - "traits": { - "smithy.api#documentation": "

Type of grantee

", - "smithy.api#required": {}, - "smithy.api#xmlAttribute": {}, - "smithy.api#xmlName": "xsi:type" - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for the person being granted permissions.

" - } - }, - "com.amazonaws.s3#Grants": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#Grant", - "traits": { - "smithy.api#xmlName": "Grant" - } - } - }, - "com.amazonaws.s3#HeadBucket": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#HeadBucketRequest" - }, - "output": { - "target": "com.amazonaws.s3#HeadBucketOutput" - }, - "errors": [ - { - "target": "com.amazonaws.s3#NotFound" - } - ], - "traits": { - "smithy.api#documentation": "

You can use this operation to determine if a bucket exists and if you have permission to\n access it. The action returns a 200 OK if the bucket exists and you have\n permission to access it.

\n \n

If the bucket does not exist or you do not have permission to access it, the\n HEAD request returns a generic 400 Bad Request, 403\n Forbidden or 404 Not Found code. A message body is not included,\n so you cannot determine the exception beyond these HTTP response codes.

\n
\n
\n
Authentication and authorization
\n
\n

\n General purpose buckets - Request to public\n buckets that grant the s3:ListBucket permission publicly do not need to be signed.\n All other HeadBucket requests must be authenticated and signed by\n using IAM credentials (access key ID and secret access key for the IAM\n identities). All headers with the x-amz- prefix, including\n x-amz-copy-source, must be signed. For more information, see\n REST Authentication.

\n

\n Directory buckets - You must use IAM\n credentials to authenticate and authorize your access to the\n HeadBucket API operation, instead of using the temporary security\n credentials through the CreateSession API operation.

\n

Amazon Web Services CLI or SDKs handles authentication and authorization on your\n behalf.

\n
\n
Permissions
\n
\n

\n \n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n \n

You must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

\n
\n
\n
", - "smithy.api#examples": [ - { - "title": "To determine if bucket exists", - "documentation": "This operation checks to see if a bucket exists.", - "input": { - "Bucket": "acl1" - } - } - ], - "smithy.api#http": { - "method": "HEAD", - "uri": "/{Bucket}", - "code": 200 - }, - "smithy.waiters#waitable": { - "BucketExists": { - "acceptors": [ - { - "state": "success", - "matcher": { - "success": true - } - }, - { - "state": "retry", - "matcher": { - "errorType": "NotFound" - } - } - ], - "minDelay": 5 - }, - "BucketNotExists": { - "acceptors": [ - { - "state": "success", - "matcher": { - "errorType": "NotFound" - } - } - ], - "minDelay": 5 - } - } - } - }, - "com.amazonaws.s3#HeadBucketOutput": { - "type": "structure", - "members": { - "BucketLocationType": { - "target": "com.amazonaws.s3#LocationType", - "traits": { - "smithy.api#documentation": "

The type of location where the bucket is created.

\n \n

This functionality is only supported by directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-bucket-location-type" - } - }, - "BucketLocationName": { - "target": "com.amazonaws.s3#BucketLocationName", - "traits": { - "smithy.api#documentation": "

The name of the location where the bucket will be created.

\n

For directory buckets, the Zone ID of the Availability Zone or the Local Zone where the bucket is created. An example Zone ID value for an Availability Zone is usw2-az1.

\n \n

This functionality is only supported by directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-bucket-location-name" - } - }, - "BucketRegion": { - "target": "com.amazonaws.s3#Region", - "traits": { - "smithy.api#documentation": "

The Region that the bucket is located.

", - "smithy.api#httpHeader": "x-amz-bucket-region" - } - }, - "AccessPointAlias": { - "target": "com.amazonaws.s3#AccessPointAlias", - "traits": { - "smithy.api#documentation": "

Indicates whether the bucket name used in the request is an access point alias.

\n \n

For directory buckets, the value of this field is false.

\n
", - "smithy.api#httpHeader": "x-amz-access-point-alias" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#HeadBucketRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name.

\n

\n Directory buckets -\n When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n

\n Object Lambda access points - When you use this API operation with an Object Lambda access point, provide the alias of the Object Lambda access point in place of the bucket name. \nIf the Object Lambda access point alias in a request is not valid, the error code InvalidAccessPointAliasError is returned. \nFor more information about InvalidAccessPointAliasError, see List of\n Error Codes.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#HeadObject": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#HeadObjectRequest" - }, - "output": { - "target": "com.amazonaws.s3#HeadObjectOutput" - }, - "errors": [ - { - "target": "com.amazonaws.s3#NotFound" - } - ], - "traits": { - "smithy.api#documentation": "

The HEAD operation retrieves metadata from an object without returning the\n object itself. This operation is useful if you're interested only in an object's\n metadata.

\n \n

A HEAD request has the same options as a GET operation on\n an object. The response is identical to the GET response except that there\n is no response body. Because of this, if the HEAD request generates an\n error, it returns a generic code, such as 400 Bad Request, 403\n Forbidden, 404 Not Found, 405 Method Not Allowed,\n 412 Precondition Failed, or 304 Not Modified. It's not\n possible to retrieve the exact exception of these error codes.

\n
\n

Request headers are limited to 8 KB in size. For more information, see Common\n Request Headers.

\n
\n
Permissions
\n
\n

\n
    \n
  • \n

    \n General purpose bucket permissions - To\n use HEAD, you must have the s3:GetObject\n permission. You need the relevant read object (or version) permission for\n this operation. For more information, see Actions, resources, and\n condition keys for Amazon S3 in the Amazon S3 User\n Guide. For more information about the permissions to S3 API\n operations by S3 resource types, see Required permissions for Amazon S3 API operations in the\n Amazon S3 User Guide.

    \n

    If the object you request doesn't exist, the error that Amazon S3 returns\n depends on whether you also have the s3:ListBucket\n permission.

    \n
      \n
    • \n

      If you have the s3:ListBucket permission on the\n bucket, Amazon S3 returns an HTTP status code 404 Not Found\n error.

      \n
    • \n
    • \n

      If you don’t have the s3:ListBucket permission, Amazon S3\n returns an HTTP status code 403 Forbidden error.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n

    If you enable x-amz-checksum-mode in the request and the\n object is encrypted with Amazon Web Services Key Management Service (Amazon Web Services KMS), you must\n also have the kms:GenerateDataKey and kms:Decrypt\n permissions in IAM identity-based policies and KMS key policies for the\n KMS key to retrieve the checksum of the object.

    \n
  • \n
\n
\n
Encryption
\n
\n \n

Encryption request headers, like x-amz-server-side-encryption,\n should not be sent for HEAD requests if your object uses\n server-side encryption with Key Management Service (KMS) keys (SSE-KMS), dual-layer\n server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), or server-side\n encryption with Amazon S3 managed encryption keys (SSE-S3). The\n x-amz-server-side-encryption header is used when you\n PUT an object to S3 and want to specify the encryption method.\n If you include this header in a HEAD request for an object that\n uses these types of keys, you’ll get an HTTP 400 Bad Request\n error. It's because the encryption method can't be changed when you retrieve\n the object.

\n
\n

If you encrypt an object by using server-side encryption with customer-provided\n encryption keys (SSE-C) when you store the object in Amazon S3, then when you retrieve\n the metadata from the object, you must use the following headers to provide the\n encryption key for the server to be able to retrieve the object's metadata. The\n headers are:

\n
    \n
  • \n

    \n x-amz-server-side-encryption-customer-algorithm\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key-MD5\n

    \n
  • \n
\n

For more information about SSE-C, see Server-Side\n Encryption (Using Customer-Provided Encryption Keys) in the\n Amazon S3 User Guide.

\n \n

\n Directory bucket -\n For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS. SSE-C isn't supported. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide.

\n
\n
\n
Versioning
\n
\n
    \n
  • \n

    If the current version of the object is a delete marker, Amazon S3 behaves as\n if the object was deleted and includes x-amz-delete-marker:\n true in the response.

    \n
  • \n
  • \n

    If the specified version is a delete marker, the response returns a\n 405 Method Not Allowed error and the Last-Modified:\n timestamp response header.

    \n
  • \n
\n \n
    \n
  • \n

    \n Directory buckets -\n Delete marker is not supported for directory buckets.

    \n
  • \n
  • \n

    \n Directory buckets -\n S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the null value of the version ID is supported by directory buckets. You can only specify null\n to the versionId query parameter in the request.

    \n
  • \n
\n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n \n

For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

\n
\n
\n
\n

The following actions are related to HeadObject:

\n ", - "smithy.api#examples": [ - { - "title": "To retrieve metadata of an object without returning the object itself", - "documentation": "The following example retrieves an object metadata.", - "input": { - "Bucket": "examplebucket", - "Key": "HappyFace.jpg" + }, + "com.amazonaws.s3#StatsEvent": { + "type": "structure", + "members": { + "Details": { + "target": "com.amazonaws.s3#Stats", + "traits": { + "smithy.api#documentation": "

The Stats event details.

", + "smithy.api#eventPayload": {} + } + } }, - "output": { - "AcceptRanges": "bytes", - "ContentType": "image/jpeg", - "LastModified": "2016-12-15T01:19:41.000Z", - "ContentLength": 3191, - "VersionId": "null", - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "Metadata": {} - } - } - ], - "smithy.api#http": { - "method": "HEAD", - "uri": "/{Bucket}/{Key+}", - "code": 200 - }, - "smithy.waiters#waitable": { - "ObjectExists": { - "acceptors": [ - { - "state": "success", - "matcher": { - "success": true - } - }, - { - "state": "retry", - "matcher": { - "errorType": "NotFound" - } - } - ], - "minDelay": 5 - }, - "ObjectNotExists": { - "acceptors": [ - { - "state": "success", - "matcher": { - "errorType": "NotFound" - } - } - ], - "minDelay": 5 - } - } - } - }, - "com.amazonaws.s3#HeadObjectOutput": { - "type": "structure", - "members": { - "DeleteMarker": { - "target": "com.amazonaws.s3#DeleteMarker", - "traits": { - "smithy.api#documentation": "

Specifies whether the object retrieved was (true) or was not (false) a Delete Marker. If\n false, this response header does not appear in the response.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-delete-marker" - } - }, - "AcceptRanges": { - "target": "com.amazonaws.s3#AcceptRanges", - "traits": { - "smithy.api#documentation": "

Indicates that a range of bytes was specified.

", - "smithy.api#httpHeader": "accept-ranges" - } - }, - "Expiration": { - "target": "com.amazonaws.s3#Expiration", - "traits": { - "smithy.api#documentation": "

If the object expiration is configured (see \n PutBucketLifecycleConfiguration\n ), the response includes this\n header. It includes the expiry-date and rule-id key-value pairs\n providing object expiration information. The value of the rule-id is\n URL-encoded.

\n \n

Object expiration information is not returned in directory buckets and this header returns the value \"NotImplemented\" in all responses for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-expiration" - } - }, - "Restore": { - "target": "com.amazonaws.s3#Restore", - "traits": { - "smithy.api#documentation": "

If the object is an archived object (an object whose storage class is GLACIER), the\n response includes this header if either the archive restoration is in progress (see RestoreObject or an archive copy is already restored.

\n

If an archive copy is already restored, the header value indicates when Amazon S3 is\n scheduled to delete the object copy. For example:

\n

\n x-amz-restore: ongoing-request=\"false\", expiry-date=\"Fri, 21 Dec 2012 00:00:00\n GMT\"\n

\n

If the object restoration is in progress, the header returns the value\n ongoing-request=\"true\".

\n

For more information about archiving objects, see Transitioning Objects: General Considerations.

\n \n

This functionality is not supported for directory buckets.\n Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

\n
", - "smithy.api#httpHeader": "x-amz-restore" - } - }, - "ArchiveStatus": { - "target": "com.amazonaws.s3#ArchiveStatus", - "traits": { - "smithy.api#documentation": "

The archive state of the head object.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-archive-status" - } - }, - "LastModified": { - "target": "com.amazonaws.s3#LastModified", - "traits": { - "smithy.api#documentation": "

Date and time when the object was last modified.

", - "smithy.api#httpHeader": "Last-Modified" - } - }, - "ContentLength": { - "target": "com.amazonaws.s3#ContentLength", - "traits": { - "smithy.api#documentation": "

Size of the body in bytes.

", - "smithy.api#httpHeader": "Content-Length" - } - }, - "ChecksumCRC32": { - "target": "com.amazonaws.s3#ChecksumCRC32", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32 checksum of the object. This checksum is only be present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc32" - } - }, - "ChecksumCRC32C": { - "target": "com.amazonaws.s3#ChecksumCRC32C", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32C checksum of the object. This checksum is only present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc32c" - } - }, - "ChecksumCRC64NVME": { - "target": "com.amazonaws.s3#ChecksumCRC64NVME", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC-64NVME checksum of the object. For more\n information, see Checking object integrity\n in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc64nvme" - } - }, - "ChecksumSHA1": { - "target": "com.amazonaws.s3#ChecksumSHA1", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA-1 digest of the object. This will only be present if the object was uploaded\n with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-sha1" - } - }, - "ChecksumSHA256": { - "target": "com.amazonaws.s3#ChecksumSHA256", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA-256 digest of the object. This will only be present if the object was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-sha256" - } - }, - "ChecksumType": { - "target": "com.amazonaws.s3#ChecksumType", - "traits": { - "smithy.api#documentation": "

The checksum type, which determines how part-level checksums are combined to create an\n object-level checksum for multipart objects. You can use this header response to verify\n that the checksum type that is received is the same checksum type that was specified in\n CreateMultipartUpload request. For more\n information, see Checking object integrity\n in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-type" - } - }, - "ETag": { - "target": "com.amazonaws.s3#ETag", - "traits": { - "smithy.api#documentation": "

An entity tag (ETag) is an opaque identifier assigned by a web server to a specific\n version of a resource found at a URL.

", - "smithy.api#httpHeader": "ETag" - } - }, - "MissingMeta": { - "target": "com.amazonaws.s3#MissingMeta", - "traits": { - "smithy.api#documentation": "

This is set to the number of metadata entries not returned in x-amz-meta\n headers. This can happen if you create metadata using an API like SOAP that supports more\n flexible metadata than the REST API. For example, using SOAP, you can create metadata whose\n values are not legal HTTP headers.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-missing-meta" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

Version ID of the object.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-version-id" - } - }, - "CacheControl": { - "target": "com.amazonaws.s3#CacheControl", - "traits": { - "smithy.api#documentation": "

Specifies caching behavior along the request/reply chain.

", - "smithy.api#httpHeader": "Cache-Control" - } - }, - "ContentDisposition": { - "target": "com.amazonaws.s3#ContentDisposition", - "traits": { - "smithy.api#documentation": "

Specifies presentational information for the object.

", - "smithy.api#httpHeader": "Content-Disposition" - } - }, - "ContentEncoding": { - "target": "com.amazonaws.s3#ContentEncoding", - "traits": { - "smithy.api#documentation": "

Indicates what content encodings have been applied to the object and thus what decoding\n mechanisms must be applied to obtain the media-type referenced by the Content-Type header\n field.

", - "smithy.api#httpHeader": "Content-Encoding" - } - }, - "ContentLanguage": { - "target": "com.amazonaws.s3#ContentLanguage", - "traits": { - "smithy.api#documentation": "

The language the content is in.

", - "smithy.api#httpHeader": "Content-Language" - } - }, - "ContentType": { - "target": "com.amazonaws.s3#ContentType", - "traits": { - "smithy.api#documentation": "

A standard MIME type describing the format of the object data.

", - "smithy.api#httpHeader": "Content-Type" - } - }, - "Expires": { - "target": "com.amazonaws.s3#Expires", - "traits": { - "smithy.api#documentation": "

The date and time at which the object is no longer cacheable.

", - "smithy.api#httpHeader": "Expires" - } - }, - "WebsiteRedirectLocation": { - "target": "com.amazonaws.s3#WebsiteRedirectLocation", - "traits": { - "smithy.api#documentation": "

If the bucket is configured as a website, redirects requests for this object to another\n object in the same bucket or to an external URL. Amazon S3 stores the value of this header in\n the object metadata.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-website-redirect-location" - } - }, - "ServerSideEncryption": { - "target": "com.amazonaws.s3#ServerSideEncryption", - "traits": { - "smithy.api#documentation": "

The server-side encryption algorithm used when you store this object in Amazon S3 (for\n example, AES256, aws:kms, aws:kms:dsse).

", - "smithy.api#httpHeader": "x-amz-server-side-encryption" - } - }, - "Metadata": { - "target": "com.amazonaws.s3#Metadata", - "traits": { - "smithy.api#documentation": "

A map of metadata to store with the object in S3.

", - "smithy.api#httpPrefixHeaders": "x-amz-meta-" - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the\n response will include this header to confirm the encryption algorithm that's used.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the\n response will include this header to provide the round-trip message integrity verification\n of the customer-provided encryption key.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - }, - "SSEKMSKeyId": { - "target": "com.amazonaws.s3#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

If present, indicates the ID of the KMS key that was used for object encryption.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" - } - }, - "BucketKeyEnabled": { - "target": "com.amazonaws.s3#BucketKeyEnabled", - "traits": { - "smithy.api#documentation": "

Indicates whether the object uses an S3 Bucket Key for server-side encryption with\n Key Management Service (KMS) keys (SSE-KMS).

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3#StorageClass", - "traits": { - "smithy.api#documentation": "

Provides storage class information of the object. Amazon S3 returns this header for all\n objects except for S3 Standard storage class objects.

\n

For more information, see Storage Classes.

\n \n

\n Directory buckets -\n Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

\n
", - "smithy.api#httpHeader": "x-amz-storage-class" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - }, - "ReplicationStatus": { - "target": "com.amazonaws.s3#ReplicationStatus", - "traits": { - "smithy.api#documentation": "

Amazon S3 can return this header if your request involves a bucket that is either a source or\n a destination in a replication rule.

\n

In replication, you have a source bucket on which you configure replication and\n destination bucket or buckets where Amazon S3 stores object replicas. When you request an object\n (GetObject) or object metadata (HeadObject) from these\n buckets, Amazon S3 will return the x-amz-replication-status header in the response\n as follows:

\n
    \n
  • \n

    \n If requesting an object from the source bucket,\n Amazon S3 will return the x-amz-replication-status header if the object in\n your request is eligible for replication.

    \n

    For example, suppose that in your replication configuration, you specify object\n prefix TaxDocs requesting Amazon S3 to replicate objects with key prefix\n TaxDocs. Any objects you upload with this key name prefix, for\n example TaxDocs/document1.pdf, are eligible for replication. For any\n object request with this key name prefix, Amazon S3 will return the\n x-amz-replication-status header with value PENDING, COMPLETED or\n FAILED indicating object replication status.

    \n
  • \n
  • \n

    \n If requesting an object from a destination\n bucket, Amazon S3 will return the x-amz-replication-status header\n with value REPLICA if the object in your request is a replica that Amazon S3 created and\n there is no replica modification replication in progress.

    \n
  • \n
  • \n

    \n When replicating objects to multiple destination\n buckets, the x-amz-replication-status header acts\n differently. The header of the source object will only return a value of COMPLETED\n when replication is successful to all destinations. The header will remain at value\n PENDING until replication has completed for all destinations. If one or more\n destinations fails replication the header will return FAILED.

    \n
  • \n
\n

For more information, see Replication.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-replication-status" - } - }, - "PartsCount": { - "target": "com.amazonaws.s3#PartsCount", - "traits": { - "smithy.api#documentation": "

The count of parts this object has. This value is only returned if you specify\n partNumber in your request and the object was uploaded as a multipart\n upload.

", - "smithy.api#httpHeader": "x-amz-mp-parts-count" - } - }, - "ObjectLockMode": { - "target": "com.amazonaws.s3#ObjectLockMode", - "traits": { - "smithy.api#documentation": "

The Object Lock mode, if any, that's in effect for this object. This header is only\n returned if the requester has the s3:GetObjectRetention permission. For more\n information about S3 Object Lock, see Object Lock.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-object-lock-mode" - } - }, - "ObjectLockRetainUntilDate": { - "target": "com.amazonaws.s3#ObjectLockRetainUntilDate", - "traits": { - "smithy.api#documentation": "

The date and time when the Object Lock retention period expires. This header is only\n returned if the requester has the s3:GetObjectRetention permission.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-object-lock-retain-until-date" - } - }, - "ObjectLockLegalHoldStatus": { - "target": "com.amazonaws.s3#ObjectLockLegalHoldStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether a legal hold is in effect for this object. This header is only\n returned if the requester has the s3:GetObjectLegalHold permission. This\n header is not returned if the specified version of this object has never had a legal hold\n applied. For more information about S3 Object Lock, see Object Lock.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-object-lock-legal-hold" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#HeadObjectRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket that contains the object.

\n

\n Directory buckets -\n When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "IfMatch": { - "target": "com.amazonaws.s3#IfMatch", - "traits": { - "smithy.api#documentation": "

Return the object only if its entity tag (ETag) is the same as the one specified;\n otherwise, return a 412 (precondition failed) error.

\n

If both of the If-Match and If-Unmodified-Since headers are\n present in the request as follows:

\n
    \n
  • \n

    \n If-Match condition evaluates to true, and;

    \n
  • \n
  • \n

    \n If-Unmodified-Since condition evaluates to false;

    \n
  • \n
\n

Then Amazon S3 returns 200 OK and the data requested.

\n

For more information about conditional requests, see RFC 7232.

", - "smithy.api#httpHeader": "If-Match" - } - }, - "IfModifiedSince": { - "target": "com.amazonaws.s3#IfModifiedSince", - "traits": { - "smithy.api#documentation": "

Return the object only if it has been modified since the specified time; otherwise,\n return a 304 (not modified) error.

\n

If both of the If-None-Match and If-Modified-Since headers are\n present in the request as follows:

\n
    \n
  • \n

    \n If-None-Match condition evaluates to false, and;

    \n
  • \n
  • \n

    \n If-Modified-Since condition evaluates to true;

    \n
  • \n
\n

Then Amazon S3 returns the 304 Not Modified response code.

\n

For more information about conditional requests, see RFC 7232.

", - "smithy.api#httpHeader": "If-Modified-Since" - } - }, - "IfNoneMatch": { - "target": "com.amazonaws.s3#IfNoneMatch", - "traits": { - "smithy.api#documentation": "

Return the object only if its entity tag (ETag) is different from the one specified;\n otherwise, return a 304 (not modified) error.

\n

If both of the If-None-Match and If-Modified-Since headers are\n present in the request as follows:

\n
    \n
  • \n

    \n If-None-Match condition evaluates to false, and;

    \n
  • \n
  • \n

    \n If-Modified-Since condition evaluates to true;

    \n
  • \n
\n

Then Amazon S3 returns the 304 Not Modified response code.

\n

For more information about conditional requests, see RFC 7232.

", - "smithy.api#httpHeader": "If-None-Match" - } - }, - "IfUnmodifiedSince": { - "target": "com.amazonaws.s3#IfUnmodifiedSince", - "traits": { - "smithy.api#documentation": "

Return the object only if it has not been modified since the specified time; otherwise,\n return a 412 (precondition failed) error.

\n

If both of the If-Match and If-Unmodified-Since headers are\n present in the request as follows:

\n
    \n
  • \n

    \n If-Match condition evaluates to true, and;

    \n
  • \n
  • \n

    \n If-Unmodified-Since condition evaluates to false;

    \n
  • \n
\n

Then Amazon S3 returns 200 OK and the data requested.

\n

For more information about conditional requests, see RFC 7232.

", - "smithy.api#httpHeader": "If-Unmodified-Since" - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The object key.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Key" - } - } - }, - "Range": { - "target": "com.amazonaws.s3#Range", - "traits": { - "smithy.api#documentation": "

HeadObject returns only the metadata for an object. If the Range is satisfiable, only\n the ContentLength is affected in the response. If the Range is not\n satisfiable, S3 returns a 416 - Requested Range Not Satisfiable error.

", - "smithy.api#httpHeader": "Range" - } - }, - "ResponseCacheControl": { - "target": "com.amazonaws.s3#ResponseCacheControl", - "traits": { - "smithy.api#documentation": "

Sets the Cache-Control header of the response.

", - "smithy.api#httpQuery": "response-cache-control" - } - }, - "ResponseContentDisposition": { - "target": "com.amazonaws.s3#ResponseContentDisposition", - "traits": { - "smithy.api#documentation": "

Sets the Content-Disposition header of the response.

", - "smithy.api#httpQuery": "response-content-disposition" - } - }, - "ResponseContentEncoding": { - "target": "com.amazonaws.s3#ResponseContentEncoding", - "traits": { - "smithy.api#documentation": "

Sets the Content-Encoding header of the response.

", - "smithy.api#httpQuery": "response-content-encoding" - } - }, - "ResponseContentLanguage": { - "target": "com.amazonaws.s3#ResponseContentLanguage", - "traits": { - "smithy.api#documentation": "

Sets the Content-Language header of the response.

", - "smithy.api#httpQuery": "response-content-language" - } - }, - "ResponseContentType": { - "target": "com.amazonaws.s3#ResponseContentType", - "traits": { - "smithy.api#documentation": "

Sets the Content-Type header of the response.

", - "smithy.api#httpQuery": "response-content-type" - } - }, - "ResponseExpires": { - "target": "com.amazonaws.s3#ResponseExpires", - "traits": { - "smithy.api#documentation": "

Sets the Expires header of the response.

", - "smithy.api#httpQuery": "response-expires" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

Version ID used to reference a specific version of the object.

\n \n

For directory buckets in this API operation, only the null value of the version ID is supported.

\n
", - "smithy.api#httpQuery": "versionId" - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKey": { - "target": "com.amazonaws.s3#SSECustomerKey", - "traits": { - "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This\n value is used to store the object and then it is discarded; Amazon S3 does not store the\n encryption key. The key must be appropriate for use with the algorithm specified in the\n x-amz-server-side-encryption-customer-algorithm header.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses\n this header for a message integrity check to ensure that the encryption key was transmitted\n without error.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "PartNumber": { - "target": "com.amazonaws.s3#PartNumber", - "traits": { - "smithy.api#documentation": "

Part number of the object being read. This is a positive integer between 1 and 10,000.\n Effectively performs a 'ranged' HEAD request for the part specified. Useful querying about\n the size of the part and the number of parts in this object.

", - "smithy.api#httpQuery": "partNumber" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "ChecksumMode": { - "target": "com.amazonaws.s3#ChecksumMode", - "traits": { - "smithy.api#documentation": "

To retrieve the checksum, this parameter must be enabled.

\n

\n General purpose buckets -\n If you enable checksum mode and the object is uploaded with a\n checksum\n and encrypted with an Key Management Service (KMS) key, you must have permission to use the\n kms:Decrypt action to retrieve the checksum.

\n

\n Directory buckets - If you enable\n ChecksumMode and the object is encrypted with Amazon Web Services Key Management Service\n (Amazon Web Services KMS), you must also have the kms:GenerateDataKey and\n kms:Decrypt permissions in IAM identity-based policies and KMS key\n policies for the KMS key to retrieve the checksum of the object.

", - "smithy.api#httpHeader": "x-amz-checksum-mode" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#HostName": { - "type": "string" - }, - "com.amazonaws.s3#HttpErrorCodeReturnedEquals": { - "type": "string" - }, - "com.amazonaws.s3#HttpRedirectCode": { - "type": "string" - }, - "com.amazonaws.s3#ID": { - "type": "string" - }, - "com.amazonaws.s3#IfMatch": { - "type": "string" - }, - "com.amazonaws.s3#IfMatchInitiatedTime": { - "type": "timestamp", - "traits": { - "smithy.api#timestampFormat": "http-date" - } - }, - "com.amazonaws.s3#IfMatchLastModifiedTime": { - "type": "timestamp", - "traits": { - "smithy.api#timestampFormat": "http-date" - } - }, - "com.amazonaws.s3#IfMatchSize": { - "type": "long" - }, - "com.amazonaws.s3#IfModifiedSince": { - "type": "timestamp" - }, - "com.amazonaws.s3#IfNoneMatch": { - "type": "string" - }, - "com.amazonaws.s3#IfUnmodifiedSince": { - "type": "timestamp" - }, - "com.amazonaws.s3#IndexDocument": { - "type": "structure", - "members": { - "Suffix": { - "target": "com.amazonaws.s3#Suffix", - "traits": { - "smithy.api#documentation": "

A suffix that is appended to a request that is for a directory on the website endpoint.\n (For example, if the suffix is index.html and you make a request to\n samplebucket/images/, the data that is returned will be for the object with\n the key name images/index.html.) The suffix must not be empty and must not\n include a slash character.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for the Suffix element.

" - } - }, - "com.amazonaws.s3#Initiated": { - "type": "timestamp" - }, - "com.amazonaws.s3#Initiator": { - "type": "structure", - "members": { - "ID": { - "target": "com.amazonaws.s3#ID", - "traits": { - "smithy.api#documentation": "

If the principal is an Amazon Web Services account, it provides the Canonical User ID. If the\n principal is an IAM User, it provides a user ARN value.

\n \n

\n Directory buckets - If the principal is an\n Amazon Web Services account, it provides the Amazon Web Services account ID. If the principal is an IAM User, it\n provides a user ARN value.

\n
" - } - }, - "DisplayName": { - "target": "com.amazonaws.s3#DisplayName", - "traits": { - "smithy.api#documentation": "

Name of the Principal.

\n \n

This functionality is not supported for directory buckets.

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

Container element that identifies who initiated the multipart upload.

" - } - }, - "com.amazonaws.s3#InputSerialization": { - "type": "structure", - "members": { - "CSV": { - "target": "com.amazonaws.s3#CSVInput", - "traits": { - "smithy.api#documentation": "

Describes the serialization of a CSV-encoded object.

" - } - }, - "CompressionType": { - "target": "com.amazonaws.s3#CompressionType", - "traits": { - "smithy.api#documentation": "

Specifies object's compression format. Valid values: NONE, GZIP, BZIP2. Default Value:\n NONE.

" - } - }, - "JSON": { - "target": "com.amazonaws.s3#JSONInput", - "traits": { - "smithy.api#documentation": "

Specifies JSON as object's input serialization format.

" - } - }, - "Parquet": { - "target": "com.amazonaws.s3#ParquetInput", - "traits": { - "smithy.api#documentation": "

Specifies Parquet as object's input serialization format.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the serialization format of the object.

" - } - }, - "com.amazonaws.s3#IntelligentTieringAccessTier": { - "type": "enum", - "members": { - "ARCHIVE_ACCESS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ARCHIVE_ACCESS" - } - }, - "DEEP_ARCHIVE_ACCESS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DEEP_ARCHIVE_ACCESS" - } - } - } - }, - "com.amazonaws.s3#IntelligentTieringAndOperator": { - "type": "structure", - "members": { - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

An object key name prefix that identifies the subset of objects to which the\n configuration applies.

" - } - }, - "Tags": { - "target": "com.amazonaws.s3#TagSet", - "traits": { - "smithy.api#documentation": "

All of these tags must exist in the object's tag set in order for the configuration to\n apply.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Tag" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for specifying S3 Intelligent-Tiering filters. The filters determine the\n subset of objects to which the rule applies.

" - } - }, - "com.amazonaws.s3#IntelligentTieringConfiguration": { - "type": "structure", - "members": { - "Id": { - "target": "com.amazonaws.s3#IntelligentTieringId", - "traits": { - "smithy.api#documentation": "

The ID used to identify the S3 Intelligent-Tiering configuration.

", - "smithy.api#required": {} - } - }, - "Filter": { - "target": "com.amazonaws.s3#IntelligentTieringFilter", - "traits": { - "smithy.api#documentation": "

Specifies a bucket filter. The configuration only includes objects that meet the\n filter's criteria.

" - } - }, - "Status": { - "target": "com.amazonaws.s3#IntelligentTieringStatus", - "traits": { - "smithy.api#documentation": "

Specifies the status of the configuration.

", - "smithy.api#required": {} - } - }, - "Tierings": { - "target": "com.amazonaws.s3#TieringList", - "traits": { - "smithy.api#documentation": "

Specifies the S3 Intelligent-Tiering storage class tier of the configuration.

", - "smithy.api#required": {}, - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Tiering" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket.

\n

For information about the S3 Intelligent-Tiering storage class, see Storage class\n for automatically optimizing frequently and infrequently accessed\n objects.

" - } - }, - "com.amazonaws.s3#IntelligentTieringConfigurationList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#IntelligentTieringConfiguration" - } - }, - "com.amazonaws.s3#IntelligentTieringDays": { - "type": "integer" - }, - "com.amazonaws.s3#IntelligentTieringFilter": { - "type": "structure", - "members": { - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

An object key name prefix that identifies the subset of objects to which the rule\n applies.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
" - } - }, - "Tag": { - "target": "com.amazonaws.s3#Tag" - }, - "And": { - "target": "com.amazonaws.s3#IntelligentTieringAndOperator", - "traits": { - "smithy.api#documentation": "

A conjunction (logical AND) of predicates, which is used in evaluating a metrics filter.\n The operator must have at least two predicates, and an object must match all of the\n predicates in order for the filter to apply.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The Filter is used to identify objects that the S3 Intelligent-Tiering\n configuration applies to.

" - } - }, - "com.amazonaws.s3#IntelligentTieringId": { - "type": "string" - }, - "com.amazonaws.s3#IntelligentTieringStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3#InvalidObjectState": { - "type": "structure", - "members": { - "StorageClass": { - "target": "com.amazonaws.s3#StorageClass" - }, - "AccessTier": { - "target": "com.amazonaws.s3#IntelligentTieringAccessTier" - } - }, - "traits": { - "smithy.api#documentation": "

Object is archived and inaccessible until restored.

\n

If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval storage\n class, the S3 Glacier Deep Archive storage class, the S3 Intelligent-Tiering Archive Access\n tier, or the S3 Intelligent-Tiering Deep Archive Access tier, before you can retrieve the object you\n must first restore a copy using RestoreObject. Otherwise, this\n operation returns an InvalidObjectState error. For information about restoring\n archived objects, see Restoring Archived Objects in\n the Amazon S3 User Guide.

", - "smithy.api#error": "client", - "smithy.api#httpError": 403 - } - }, - "com.amazonaws.s3#InvalidRequest": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

You may receive this error in multiple cases. Depending on the reason for the error, you may receive one of the messages below:

\n
    \n
  • \n

    Cannot specify both a write offset value and user-defined object metadata for existing objects.

    \n
  • \n
  • \n

    Checksum Type mismatch occurred, expected checksum Type: sha1, actual checksum Type: crc32c.

    \n
  • \n
  • \n

    Request body cannot be empty when 'write offset' is specified.

    \n
  • \n
", - "smithy.api#error": "client", - "smithy.api#httpError": 400 - } - }, - "com.amazonaws.s3#InvalidWriteOffset": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

\n The write offset value that you specified does not match the current object size.\n

", - "smithy.api#error": "client", - "smithy.api#httpError": 400 - } - }, - "com.amazonaws.s3#InventoryConfiguration": { - "type": "structure", - "members": { - "Destination": { - "target": "com.amazonaws.s3#InventoryDestination", - "traits": { - "smithy.api#documentation": "

Contains information about where to publish the inventory results.

", - "smithy.api#required": {} - } - }, - "IsEnabled": { - "target": "com.amazonaws.s3#IsEnabled", - "traits": { - "smithy.api#documentation": "

Specifies whether the inventory is enabled or disabled. If set to True, an\n inventory list is generated. If set to False, no inventory list is\n generated.

", - "smithy.api#required": {} - } - }, - "Filter": { - "target": "com.amazonaws.s3#InventoryFilter", - "traits": { - "smithy.api#documentation": "

Specifies an inventory filter. The inventory only includes objects that meet the\n filter's criteria.

" - } - }, - "Id": { - "target": "com.amazonaws.s3#InventoryId", - "traits": { - "smithy.api#documentation": "

The ID used to identify the inventory configuration.

", - "smithy.api#required": {} - } - }, - "IncludedObjectVersions": { - "target": "com.amazonaws.s3#InventoryIncludedObjectVersions", - "traits": { - "smithy.api#documentation": "

Object versions to include in the inventory list. If set to All, the list\n includes all the object versions, which adds the version-related fields\n VersionId, IsLatest, and DeleteMarker to the\n list. If set to Current, the list does not contain these version-related\n fields.

", - "smithy.api#required": {} - } - }, - "OptionalFields": { - "target": "com.amazonaws.s3#InventoryOptionalFields", - "traits": { - "smithy.api#documentation": "

Contains the optional fields that are included in the inventory results.

" - } - }, - "Schedule": { - "target": "com.amazonaws.s3#InventorySchedule", - "traits": { - "smithy.api#documentation": "

Specifies the schedule for generating inventory results.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the inventory configuration for an Amazon S3 bucket. For more information, see\n GET Bucket inventory in the Amazon S3 API Reference.

" - } - }, - "com.amazonaws.s3#InventoryConfigurationList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#InventoryConfiguration" - } - }, - "com.amazonaws.s3#InventoryDestination": { - "type": "structure", - "members": { - "S3BucketDestination": { - "target": "com.amazonaws.s3#InventoryS3BucketDestination", - "traits": { - "smithy.api#documentation": "

Contains the bucket name, file format, bucket owner (optional), and prefix (optional)\n where inventory results are published.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the inventory configuration for an Amazon S3 bucket.

" - } - }, - "com.amazonaws.s3#InventoryEncryption": { - "type": "structure", - "members": { - "SSES3": { - "target": "com.amazonaws.s3#SSES3", - "traits": { - "smithy.api#documentation": "

Specifies the use of SSE-S3 to encrypt delivered inventory reports.

", - "smithy.api#xmlName": "SSE-S3" - } - }, - "SSEKMS": { - "target": "com.amazonaws.s3#SSEKMS", - "traits": { - "smithy.api#documentation": "

Specifies the use of SSE-KMS to encrypt delivered inventory reports.

", - "smithy.api#xmlName": "SSE-KMS" - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the type of server-side encryption used to encrypt the inventory\n results.

" - } - }, - "com.amazonaws.s3#InventoryFilter": { - "type": "structure", - "members": { - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

The prefix that an object must have to be included in the inventory results.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies an inventory filter. The inventory only includes objects that meet the\n filter's criteria.

" - } - }, - "com.amazonaws.s3#InventoryFormat": { - "type": "enum", - "members": { - "CSV": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CSV" - } - }, - "ORC": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ORC" - } - }, - "Parquet": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Parquet" - } - } - } - }, - "com.amazonaws.s3#InventoryFrequency": { - "type": "enum", - "members": { - "Daily": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Daily" - } - }, - "Weekly": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Weekly" - } - } - } - }, - "com.amazonaws.s3#InventoryId": { - "type": "string" - }, - "com.amazonaws.s3#InventoryIncludedObjectVersions": { - "type": "enum", - "members": { - "All": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "All" - } - }, - "Current": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Current" - } - } - } - }, - "com.amazonaws.s3#InventoryOptionalField": { - "type": "enum", - "members": { - "Size": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Size" - } - }, - "LastModifiedDate": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "LastModifiedDate" - } - }, - "StorageClass": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "StorageClass" - } - }, - "ETag": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ETag" - } - }, - "IsMultipartUploaded": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "IsMultipartUploaded" - } - }, - "ReplicationStatus": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ReplicationStatus" - } - }, - "EncryptionStatus": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "EncryptionStatus" - } - }, - "ObjectLockRetainUntilDate": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ObjectLockRetainUntilDate" - } - }, - "ObjectLockMode": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ObjectLockMode" - } - }, - "ObjectLockLegalHoldStatus": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ObjectLockLegalHoldStatus" - } - }, - "IntelligentTieringAccessTier": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "IntelligentTieringAccessTier" - } - }, - "BucketKeyStatus": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "BucketKeyStatus" - } - }, - "ChecksumAlgorithm": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ChecksumAlgorithm" - } - }, - "ObjectAccessControlList": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ObjectAccessControlList" - } - }, - "ObjectOwner": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ObjectOwner" - } - } - } - }, - "com.amazonaws.s3#InventoryOptionalFields": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#InventoryOptionalField", - "traits": { - "smithy.api#xmlName": "Field" - } - } - }, - "com.amazonaws.s3#InventoryS3BucketDestination": { - "type": "structure", - "members": { - "AccountId": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID that owns the destination S3 bucket. If no account ID is provided, the\n owner is not validated before exporting data.

\n \n

Although this value is optional, we strongly recommend that you set it to help\n prevent problems if the destination bucket ownership changes.

\n
" - } - }, - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the bucket where inventory results will be\n published.

", - "smithy.api#required": {} - } - }, - "Format": { - "target": "com.amazonaws.s3#InventoryFormat", - "traits": { - "smithy.api#documentation": "

Specifies the output format of the inventory results.

", - "smithy.api#required": {} - } - }, - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

The prefix that is prepended to all inventory results.

" - } - }, - "Encryption": { - "target": "com.amazonaws.s3#InventoryEncryption", - "traits": { - "smithy.api#documentation": "

Contains the type of server-side encryption used to encrypt the inventory\n results.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Contains the bucket name, file format, bucket owner (optional), and prefix (optional)\n where inventory results are published.

" - } - }, - "com.amazonaws.s3#InventorySchedule": { - "type": "structure", - "members": { - "Frequency": { - "target": "com.amazonaws.s3#InventoryFrequency", - "traits": { - "smithy.api#documentation": "

Specifies how frequently inventory results are produced.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the schedule for generating inventory results.

" - } - }, - "com.amazonaws.s3#IsEnabled": { - "type": "boolean" - }, - "com.amazonaws.s3#IsLatest": { - "type": "boolean" - }, - "com.amazonaws.s3#IsPublic": { - "type": "boolean" - }, - "com.amazonaws.s3#IsRestoreInProgress": { - "type": "boolean" - }, - "com.amazonaws.s3#IsTruncated": { - "type": "boolean" - }, - "com.amazonaws.s3#JSONInput": { - "type": "structure", - "members": { - "Type": { - "target": "com.amazonaws.s3#JSONType", - "traits": { - "smithy.api#documentation": "

The type of JSON. Valid values: Document, Lines.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies JSON as object's input serialization format.

" - } - }, - "com.amazonaws.s3#JSONOutput": { - "type": "structure", - "members": { - "RecordDelimiter": { - "target": "com.amazonaws.s3#RecordDelimiter", - "traits": { - "smithy.api#documentation": "

The value used to separate individual records in the output. If no value is specified,\n Amazon S3 uses a newline character ('\\n').

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies JSON as request's output serialization format.

" - } - }, - "com.amazonaws.s3#JSONType": { - "type": "enum", - "members": { - "DOCUMENT": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DOCUMENT" - } - }, - "LINES": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "LINES" - } - } - } - }, - "com.amazonaws.s3#KMSContext": { - "type": "string" - }, - "com.amazonaws.s3#KeyCount": { - "type": "integer" - }, - "com.amazonaws.s3#KeyMarker": { - "type": "string" - }, - "com.amazonaws.s3#KeyPrefixEquals": { - "type": "string" - }, - "com.amazonaws.s3#LambdaFunctionArn": { - "type": "string" - }, - "com.amazonaws.s3#LambdaFunctionConfiguration": { - "type": "structure", - "members": { - "Id": { - "target": "com.amazonaws.s3#NotificationId" - }, - "LambdaFunctionArn": { - "target": "com.amazonaws.s3#LambdaFunctionArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Lambda function that Amazon S3 invokes when the\n specified event type occurs.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "CloudFunction" - } - }, - "Events": { - "target": "com.amazonaws.s3#EventList", - "traits": { - "smithy.api#documentation": "

The Amazon S3 bucket event for which to invoke the Lambda function. For more information,\n see Supported\n Event Types in the Amazon S3 User Guide.

", - "smithy.api#required": {}, - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Event" - } - }, - "Filter": { - "target": "com.amazonaws.s3#NotificationConfigurationFilter" - } - }, - "traits": { - "smithy.api#documentation": "

A container for specifying the configuration for Lambda notifications.

" - } - }, - "com.amazonaws.s3#LambdaFunctionConfigurationList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#LambdaFunctionConfiguration" - } - }, - "com.amazonaws.s3#LastModified": { - "type": "timestamp" - }, - "com.amazonaws.s3#LastModifiedTime": { - "type": "timestamp", - "traits": { - "smithy.api#timestampFormat": "http-date" - } - }, - "com.amazonaws.s3#LifecycleExpiration": { - "type": "structure", - "members": { - "Date": { - "target": "com.amazonaws.s3#Date", - "traits": { - "smithy.api#documentation": "

Indicates at what date the object is to be moved or deleted. The date value must conform\n to the ISO 8601 format. The time is always midnight UTC.

\n \n

This parameter applies to general purpose buckets only. It is not supported for\n directory bucket lifecycle configurations.

\n
" - } - }, - "Days": { - "target": "com.amazonaws.s3#Days", - "traits": { - "smithy.api#documentation": "

Indicates the lifetime, in days, of the objects that are subject to the rule. The value\n must be a non-zero positive integer.

" - } - }, - "ExpiredObjectDeleteMarker": { - "target": "com.amazonaws.s3#ExpiredObjectDeleteMarker", - "traits": { - "smithy.api#documentation": "

Indicates whether Amazon S3 will remove a delete marker with no noncurrent versions. If set\n to true, the delete marker will be expired; if set to false the policy takes no action.\n This cannot be specified with Days or Date in a Lifecycle Expiration Policy.

\n \n

This parameter applies to general purpose buckets only. It is not supported for\n directory bucket lifecycle configurations.

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for the expiration for the lifecycle of the object.

\n

For more information see, Managing your storage\n lifecycle in the Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3#LifecycleRule": { - "type": "structure", - "members": { - "Expiration": { - "target": "com.amazonaws.s3#LifecycleExpiration", - "traits": { - "smithy.api#documentation": "

Specifies the expiration for the lifecycle of the object in the form of date, days and,\n whether the object has a delete marker.

" - } - }, - "ID": { - "target": "com.amazonaws.s3#ID", - "traits": { - "smithy.api#documentation": "

Unique identifier for the rule. The value cannot be longer than 255 characters.

" - } - }, - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#deprecated": {}, - "smithy.api#documentation": "

Prefix identifying one or more objects to which the rule applies. This is\n no longer used; use Filter instead.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
" - } - }, - "Filter": { - "target": "com.amazonaws.s3#LifecycleRuleFilter", - "traits": { - "smithy.api#documentation": "

The Filter is used to identify objects that a Lifecycle Rule applies to. A\n Filter must have exactly one of Prefix, Tag, or\n And specified. Filter is required if the\n LifecycleRule does not contain a Prefix element.

\n \n

\n Tag filters are not supported for directory buckets.

\n
" - } - }, - "Status": { - "target": "com.amazonaws.s3#ExpirationStatus", - "traits": { - "smithy.api#documentation": "

If 'Enabled', the rule is currently being applied. If 'Disabled', the rule is not\n currently being applied.

", - "smithy.api#required": {} - } - }, - "Transitions": { - "target": "com.amazonaws.s3#TransitionList", - "traits": { - "smithy.api#documentation": "

Specifies when an Amazon S3 object transitions to a specified storage class.

\n \n

This parameter applies to general purpose buckets only. It is not supported for\n directory bucket lifecycle configurations.

\n
", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Transition" - } - }, - "NoncurrentVersionTransitions": { - "target": "com.amazonaws.s3#NoncurrentVersionTransitionList", - "traits": { - "smithy.api#documentation": "

Specifies the transition rule for the lifecycle rule that describes when noncurrent\n objects transition to a specific storage class. If your bucket is versioning-enabled (or\n versioning is suspended), you can set this action to request that Amazon S3 transition\n noncurrent object versions to a specific storage class at a set period in the object's\n lifetime.

\n \n

This parameter applies to general purpose buckets only. It is not supported for\n directory bucket lifecycle configurations.

\n
", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "NoncurrentVersionTransition" - } - }, - "NoncurrentVersionExpiration": { - "target": "com.amazonaws.s3#NoncurrentVersionExpiration" - }, - "AbortIncompleteMultipartUpload": { - "target": "com.amazonaws.s3#AbortIncompleteMultipartUpload" - } - }, - "traits": { - "smithy.api#documentation": "

A lifecycle rule for individual objects in an Amazon S3 bucket.

\n

For more information see, Managing your storage\n lifecycle in the Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3#LifecycleRuleAndOperator": { - "type": "structure", - "members": { - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

Prefix identifying one or more objects to which the rule applies.

" - } - }, - "Tags": { - "target": "com.amazonaws.s3#TagSet", - "traits": { - "smithy.api#documentation": "

All of these tags must exist in the object's tag set in order for the rule to\n apply.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Tag" - } - }, - "ObjectSizeGreaterThan": { - "target": "com.amazonaws.s3#ObjectSizeGreaterThanBytes", - "traits": { - "smithy.api#documentation": "

Minimum object size to which the rule applies.

" - } - }, - "ObjectSizeLessThan": { - "target": "com.amazonaws.s3#ObjectSizeLessThanBytes", - "traits": { - "smithy.api#documentation": "

Maximum object size to which the rule applies.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

This is used in a Lifecycle Rule Filter to apply a logical AND to two or more\n predicates. The Lifecycle Rule will apply to any object matching all of the predicates\n configured inside the And operator.

" - } - }, - "com.amazonaws.s3#LifecycleRuleFilter": { - "type": "structure", - "members": { - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

Prefix identifying one or more objects to which the rule applies.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
" - } - }, - "Tag": { - "target": "com.amazonaws.s3#Tag", - "traits": { - "smithy.api#documentation": "

This tag must exist in the object's tag set in order for the rule to apply.

\n \n

This parameter applies to general purpose buckets only. It is not supported for\n directory bucket lifecycle configurations.

\n
" - } - }, - "ObjectSizeGreaterThan": { - "target": "com.amazonaws.s3#ObjectSizeGreaterThanBytes", - "traits": { - "smithy.api#documentation": "

Minimum object size to which the rule applies.

" - } - }, - "ObjectSizeLessThan": { - "target": "com.amazonaws.s3#ObjectSizeLessThanBytes", - "traits": { - "smithy.api#documentation": "

Maximum object size to which the rule applies.

" - } - }, - "And": { - "target": "com.amazonaws.s3#LifecycleRuleAndOperator" - } - }, - "traits": { - "smithy.api#documentation": "

The Filter is used to identify objects that a Lifecycle Rule applies to. A\n Filter can have exactly one of Prefix, Tag,\n ObjectSizeGreaterThan, ObjectSizeLessThan, or And\n specified. If the Filter element is left empty, the Lifecycle Rule applies to\n all objects in the bucket.

" - } - }, - "com.amazonaws.s3#LifecycleRules": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#LifecycleRule" - } - }, - "com.amazonaws.s3#ListBucketAnalyticsConfigurations": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#ListBucketAnalyticsConfigurationsRequest" - }, - "output": { - "target": "com.amazonaws.s3#ListBucketAnalyticsConfigurationsOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Lists the analytics configurations for the bucket. You can have up to 1,000 analytics\n configurations per bucket.

\n

This action supports list pagination and does not return more than 100 configurations at\n a time. You should always check the IsTruncated element in the response. If\n there are no more configurations to list, IsTruncated is set to false. If\n there are more configurations to list, IsTruncated is set to true, and there\n will be a value in NextContinuationToken. You use the\n NextContinuationToken value to continue the pagination of the list by\n passing the value in continuation-token in the request to GET the next\n page.

\n

To use this operation, you must have permissions to perform the\n s3:GetAnalyticsConfiguration action. The bucket owner has this permission\n by default. The bucket owner can grant this permission to others. For more information\n about permissions, see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources.

\n

For information about Amazon S3 analytics feature, see Amazon S3 Analytics – Storage Class\n Analysis.

\n

The following operations are related to\n ListBucketAnalyticsConfigurations:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?analytics&x-id=ListBucketAnalyticsConfigurations", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#ListBucketAnalyticsConfigurationsOutput": { - "type": "structure", - "members": { - "IsTruncated": { - "target": "com.amazonaws.s3#IsTruncated", - "traits": { - "smithy.api#documentation": "

Indicates whether the returned list of analytics configurations is complete. A value of\n true indicates that the list is not complete and the NextContinuationToken will be provided\n for a subsequent request.

" - } - }, - "ContinuationToken": { - "target": "com.amazonaws.s3#Token", - "traits": { - "smithy.api#documentation": "

The marker that is used as a starting point for this analytics configuration list\n response. This value is present if it was sent in the request.

" - } - }, - "NextContinuationToken": { - "target": "com.amazonaws.s3#NextToken", - "traits": { - "smithy.api#documentation": "

\n NextContinuationToken is sent when isTruncated is true, which\n indicates that there are more analytics configurations to list. The next request must\n include this NextContinuationToken. The token is obfuscated and is not a\n usable value.

" - } - }, - "AnalyticsConfigurationList": { - "target": "com.amazonaws.s3#AnalyticsConfigurationList", - "traits": { - "smithy.api#documentation": "

The list of analytics configurations for a bucket.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "AnalyticsConfiguration" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "ListBucketAnalyticsConfigurationResult" - } - }, - "com.amazonaws.s3#ListBucketAnalyticsConfigurationsRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket from which analytics configurations are retrieved.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ContinuationToken": { - "target": "com.amazonaws.s3#Token", - "traits": { - "smithy.api#documentation": "

The ContinuationToken that represents a placeholder from where this request\n should begin.

", - "smithy.api#httpQuery": "continuation-token" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#ListBucketIntelligentTieringConfigurations": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#ListBucketIntelligentTieringConfigurationsRequest" - }, - "output": { - "target": "com.amazonaws.s3#ListBucketIntelligentTieringConfigurationsOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Lists the S3 Intelligent-Tiering configuration from the specified bucket.

\n

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.

\n

The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.

\n

For more information, see Storage class for automatically optimizing frequently and infrequently accessed objects.

\n

Operations related to ListBucketIntelligentTieringConfigurations include:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?intelligent-tiering&x-id=ListBucketIntelligentTieringConfigurations", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#ListBucketIntelligentTieringConfigurationsOutput": { - "type": "structure", - "members": { - "IsTruncated": { - "target": "com.amazonaws.s3#IsTruncated", - "traits": { - "smithy.api#documentation": "

Indicates whether the returned list of analytics configurations is complete. A value of\n true indicates that the list is not complete and the\n NextContinuationToken will be provided for a subsequent request.

" - } - }, - "ContinuationToken": { - "target": "com.amazonaws.s3#Token", - "traits": { - "smithy.api#documentation": "

The ContinuationToken that represents a placeholder from where this request\n should begin.

" - } - }, - "NextContinuationToken": { - "target": "com.amazonaws.s3#NextToken", - "traits": { - "smithy.api#documentation": "

The marker used to continue this inventory configuration listing. Use the\n NextContinuationToken from this response to continue the listing in a\n subsequent request. The continuation token is an opaque value that Amazon S3 understands.

" - } - }, - "IntelligentTieringConfigurationList": { - "target": "com.amazonaws.s3#IntelligentTieringConfigurationList", - "traits": { - "smithy.api#documentation": "

The list of S3 Intelligent-Tiering configurations for a bucket.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "IntelligentTieringConfiguration" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#ListBucketIntelligentTieringConfigurationsRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the Amazon S3 bucket whose configuration you want to modify or retrieve.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ContinuationToken": { - "target": "com.amazonaws.s3#Token", - "traits": { - "smithy.api#documentation": "

The ContinuationToken that represents a placeholder from where this request\n should begin.

", - "smithy.api#httpQuery": "continuation-token" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#ListBucketInventoryConfigurations": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#ListBucketInventoryConfigurationsRequest" - }, - "output": { - "target": "com.amazonaws.s3#ListBucketInventoryConfigurationsOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns a list of inventory configurations for the bucket. You can have up to 1,000\n analytics configurations per bucket.

\n

This action supports list pagination and does not return more than 100 configurations at\n a time. Always check the IsTruncated element in the response. If there are no\n more configurations to list, IsTruncated is set to false. If there are more\n configurations to list, IsTruncated is set to true, and there is a value in\n NextContinuationToken. You use the NextContinuationToken value\n to continue the pagination of the list by passing the value in continuation-token in the\n request to GET the next page.

\n

To use this operation, you must have permissions to perform the\n s3:GetInventoryConfiguration action. The bucket owner has this permission\n by default. The bucket owner can grant this permission to others. For more information\n about permissions, see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources.

\n

For information about the Amazon S3 inventory feature, see Amazon S3 Inventory\n

\n

The following operations are related to\n ListBucketInventoryConfigurations:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?inventory&x-id=ListBucketInventoryConfigurations", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#ListBucketInventoryConfigurationsOutput": { - "type": "structure", - "members": { - "ContinuationToken": { - "target": "com.amazonaws.s3#Token", - "traits": { - "smithy.api#documentation": "

If sent in the request, the marker that is used as a starting point for this inventory\n configuration list response.

" - } - }, - "InventoryConfigurationList": { - "target": "com.amazonaws.s3#InventoryConfigurationList", - "traits": { - "smithy.api#documentation": "

The list of inventory configurations for a bucket.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "InventoryConfiguration" - } - }, - "IsTruncated": { - "target": "com.amazonaws.s3#IsTruncated", - "traits": { - "smithy.api#documentation": "

Tells whether the returned list of inventory configurations is complete. A value of true\n indicates that the list is not complete and the NextContinuationToken is provided for a\n subsequent request.

" - } - }, - "NextContinuationToken": { - "target": "com.amazonaws.s3#NextToken", - "traits": { - "smithy.api#documentation": "

The marker used to continue this inventory configuration listing. Use the\n NextContinuationToken from this response to continue the listing in a\n subsequent request. The continuation token is an opaque value that Amazon S3 understands.

" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "ListInventoryConfigurationsResult" - } - }, - "com.amazonaws.s3#ListBucketInventoryConfigurationsRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket containing the inventory configurations to retrieve.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ContinuationToken": { - "target": "com.amazonaws.s3#Token", - "traits": { - "smithy.api#documentation": "

The marker used to continue an inventory configuration listing that has been truncated.\n Use the NextContinuationToken from a previously truncated list response to\n continue the listing. The continuation token is an opaque value that Amazon S3\n understands.

", - "smithy.api#httpQuery": "continuation-token" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#ListBucketMetricsConfigurations": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#ListBucketMetricsConfigurationsRequest" - }, - "output": { - "target": "com.amazonaws.s3#ListBucketMetricsConfigurationsOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Lists the metrics configurations for the bucket. The metrics configurations are only for\n the request metrics of the bucket and do not provide information on daily storage metrics.\n You can have up to 1,000 configurations per bucket.

\n

This action supports list pagination and does not return more than 100 configurations at\n a time. Always check the IsTruncated element in the response. If there are no\n more configurations to list, IsTruncated is set to false. If there are more\n configurations to list, IsTruncated is set to true, and there is a value in\n NextContinuationToken. You use the NextContinuationToken value\n to continue the pagination of the list by passing the value in\n continuation-token in the request to GET the next page.

\n

To use this operation, you must have permissions to perform the\n s3:GetMetricsConfiguration action. The bucket owner has this permission by\n default. The bucket owner can grant this permission to others. For more information about\n permissions, see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources.

\n

For more information about metrics configurations and CloudWatch request metrics, see\n Monitoring Metrics with Amazon CloudWatch.

\n

The following operations are related to\n ListBucketMetricsConfigurations:

\n ", - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?metrics&x-id=ListBucketMetricsConfigurations", - "code": 200 - } - } - }, - "com.amazonaws.s3#ListBucketMetricsConfigurationsOutput": { - "type": "structure", - "members": { - "IsTruncated": { - "target": "com.amazonaws.s3#IsTruncated", - "traits": { - "smithy.api#documentation": "

Indicates whether the returned list of metrics configurations is complete. A value of\n true indicates that the list is not complete and the NextContinuationToken will be provided\n for a subsequent request.

" - } - }, - "ContinuationToken": { - "target": "com.amazonaws.s3#Token", - "traits": { - "smithy.api#documentation": "

The marker that is used as a starting point for this metrics configuration list\n response. This value is present if it was sent in the request.

" - } - }, - "NextContinuationToken": { - "target": "com.amazonaws.s3#NextToken", - "traits": { - "smithy.api#documentation": "

The marker used to continue a metrics configuration listing that has been truncated. Use\n the NextContinuationToken from a previously truncated list response to\n continue the listing. The continuation token is an opaque value that Amazon S3\n understands.

" - } - }, - "MetricsConfigurationList": { - "target": "com.amazonaws.s3#MetricsConfigurationList", - "traits": { - "smithy.api#documentation": "

The list of metrics configurations for a bucket.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "MetricsConfiguration" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "ListMetricsConfigurationsResult" - } - }, - "com.amazonaws.s3#ListBucketMetricsConfigurationsRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket containing the metrics configurations to retrieve.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ContinuationToken": { - "target": "com.amazonaws.s3#Token", - "traits": { - "smithy.api#documentation": "

The marker that is used to continue a metrics configuration listing that has been\n truncated. Use the NextContinuationToken from a previously truncated list\n response to continue the listing. The continuation token is an opaque value that Amazon S3\n understands.

", - "smithy.api#httpQuery": "continuation-token" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#ListBuckets": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#ListBucketsRequest" - }, - "output": { - "target": "com.amazonaws.s3#ListBucketsOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns a list of all buckets owned by the authenticated sender of the request. To grant IAM permission to use\n this operation, you must add the s3:ListAllMyBuckets policy action.

\n

For information about Amazon S3 buckets, see Creating, configuring, and\n working with Amazon S3 buckets.

\n \n

We strongly recommend using only paginated ListBuckets requests. Unpaginated ListBuckets requests are only supported for \n Amazon Web Services accounts set to the default general purpose bucket quota of 10,000. If you have an approved \n general purpose bucket quota above 10,000, you must send paginated ListBuckets requests to list your account’s buckets. \n All unpaginated ListBuckets requests will be rejected for Amazon Web Services accounts with a general purpose bucket quota \n greater than 10,000.

\n
", - "smithy.api#examples": [ - { - "title": "To list all buckets", - "documentation": "The following example returns all the buckets owned by the sender of this request.", - "output": { - "Owner": { - "DisplayName": "own-display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31" - }, - "Buckets": [ - { - "CreationDate": "2012-02-15T21:03:02.000Z", - "Name": "examplebucket" + "traits": { + "smithy.api#documentation": "

Container for the Stats Event.

" + } + }, + "com.amazonaws.s3#StorageClass": { + "type": "enum", + "members": { + "STANDARD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STANDARD" + } }, - { - "CreationDate": "2011-07-24T19:33:50.000Z", - "Name": "examplebucket2" + "REDUCED_REDUNDANCY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REDUCED_REDUNDANCY" + } }, - { - "CreationDate": "2010-12-17T00:56:49.000Z", - "Name": "examplebucket3" - } - ] - } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/?x-id=ListBuckets", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "ContinuationToken", - "outputToken": "ContinuationToken", - "items": "Buckets", - "pageSize": "MaxBuckets" - } - } - }, - "com.amazonaws.s3#ListBucketsOutput": { - "type": "structure", - "members": { - "Buckets": { - "target": "com.amazonaws.s3#Buckets", - "traits": { - "smithy.api#documentation": "

The list of buckets owned by the requester.

" - } - }, - "Owner": { - "target": "com.amazonaws.s3#Owner", - "traits": { - "smithy.api#documentation": "

The owner of the buckets listed.

" - } - }, - "ContinuationToken": { - "target": "com.amazonaws.s3#NextToken", - "traits": { - "smithy.api#documentation": "

\n ContinuationToken is included in the response when there are more buckets\n that can be listed with pagination. The next ListBuckets request to Amazon S3 can\n be continued with this ContinuationToken. ContinuationToken is\n obfuscated and is not a real bucket.

" - } - }, - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

If Prefix was sent with the request, it is included in the response.

\n

All bucket names in the response begin with the specified bucket name prefix.

" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "ListAllMyBucketsResult" - } - }, - "com.amazonaws.s3#ListBucketsRequest": { - "type": "structure", - "members": { - "MaxBuckets": { - "target": "com.amazonaws.s3#MaxBuckets", - "traits": { - "smithy.api#documentation": "

Maximum number of buckets to be returned in response. When the number is more than the\n count of buckets that are owned by an Amazon Web Services account, return all the buckets in\n response.

", - "smithy.api#httpQuery": "max-buckets" - } - }, - "ContinuationToken": { - "target": "com.amazonaws.s3#Token", - "traits": { - "smithy.api#documentation": "

\n ContinuationToken indicates to Amazon S3 that the list is being continued on\n this bucket with a token. ContinuationToken is obfuscated and is not a real\n key. You can use this ContinuationToken for pagination of the list results.

\n

Length Constraints: Minimum length of 0. Maximum length of 1024.

\n

Required: No.

\n \n

If you specify the bucket-region, prefix, or continuation-token \n query parameters without using max-buckets to set the maximum number of buckets returned in the response, \n Amazon S3 applies a default page size of 10,000 and provides a continuation token if there are more buckets.

\n
", - "smithy.api#httpQuery": "continuation-token" - } - }, - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

Limits the response to bucket names that begin with the specified bucket name\n prefix.

", - "smithy.api#httpQuery": "prefix" - } - }, - "BucketRegion": { - "target": "com.amazonaws.s3#BucketRegion", - "traits": { - "smithy.api#documentation": "

Limits the response to buckets that are located in the specified Amazon Web Services Region. The Amazon Web Services\n Region must be expressed according to the Amazon Web Services Region code, such as us-west-2\n for the US West (Oregon) Region. For a list of the valid values for all of the Amazon Web Services\n Regions, see Regions and Endpoints.

\n \n

Requests made to a Regional endpoint that is different from the\n bucket-region parameter are not supported. For example, if you want to\n limit the response to your buckets in Region us-west-2, the request must be\n made to an endpoint in Region us-west-2.

\n
", - "smithy.api#httpQuery": "bucket-region" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#ListDirectoryBuckets": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#ListDirectoryBucketsRequest" - }, - "output": { - "target": "com.amazonaws.s3#ListDirectoryBucketsOutput" - }, - "traits": { - "smithy.api#documentation": "

Returns a list of all Amazon S3 directory buckets owned by the authenticated sender of the\n request. For more information about directory buckets, see Directory buckets in the Amazon S3 User Guide.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n

You must have the s3express:ListAllMyDirectoryBuckets permission\n in an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.\n For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host\n header syntax is\n s3express-control.region.amazonaws.com.

\n
\n
\n \n

The BucketRegion response element is not part of the\n ListDirectoryBuckets Response Syntax.

\n
", - "smithy.api#http": { - "method": "GET", - "uri": "/?x-id=ListDirectoryBuckets", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "ContinuationToken", - "outputToken": "ContinuationToken", - "items": "Buckets", - "pageSize": "MaxDirectoryBuckets" - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#ListDirectoryBucketsOutput": { - "type": "structure", - "members": { - "Buckets": { - "target": "com.amazonaws.s3#Buckets", - "traits": { - "smithy.api#documentation": "

The list of buckets owned by the requester.

" - } - }, - "ContinuationToken": { - "target": "com.amazonaws.s3#DirectoryBucketToken", - "traits": { - "smithy.api#documentation": "

If ContinuationToken was sent with the request, it is included in the\n response. You can use the returned ContinuationToken for pagination of the\n list response.

" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "ListAllMyDirectoryBucketsResult" - } - }, - "com.amazonaws.s3#ListDirectoryBucketsRequest": { - "type": "structure", - "members": { - "ContinuationToken": { - "target": "com.amazonaws.s3#DirectoryBucketToken", - "traits": { - "smithy.api#documentation": "

\n ContinuationToken indicates to Amazon S3 that the list is being continued on\n buckets in this account with a token. ContinuationToken is obfuscated and is\n not a real bucket name. You can use this ContinuationToken for the pagination\n of the list results.

", - "smithy.api#httpQuery": "continuation-token" - } - }, - "MaxDirectoryBuckets": { - "target": "com.amazonaws.s3#MaxDirectoryBuckets", - "traits": { - "smithy.api#documentation": "

Maximum number of buckets to be returned in response. When the number is more than the\n count of buckets that are owned by an Amazon Web Services account, return all the buckets in\n response.

", - "smithy.api#httpQuery": "max-directory-buckets" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#ListMultipartUploads": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#ListMultipartUploadsRequest" - }, - "output": { - "target": "com.amazonaws.s3#ListMultipartUploadsOutput" - }, - "traits": { - "smithy.api#documentation": "

This operation lists in-progress multipart uploads in a bucket. An in-progress multipart\n upload is a multipart upload that has been initiated by the\n CreateMultipartUpload request, but has not yet been completed or\n aborted.

\n \n

\n Directory buckets - If multipart uploads in\n a directory bucket are in progress, you can't delete the bucket until all the\n in-progress multipart uploads are aborted or completed. To delete these in-progress\n multipart uploads, use the ListMultipartUploads operation to list the\n in-progress multipart uploads in the bucket and use the\n AbortMultipartUpload operation to abort all the in-progress multipart\n uploads.

\n
\n

The ListMultipartUploads operation returns a maximum of 1,000 multipart\n uploads in the response. The limit of 1,000 multipart uploads is also the default value.\n You can further limit the number of uploads in a response by specifying the\n max-uploads request parameter. If there are more than 1,000 multipart\n uploads that satisfy your ListMultipartUploads request, the response returns\n an IsTruncated element with the value of true, a\n NextKeyMarker element, and a NextUploadIdMarker element. To\n list the remaining multipart uploads, you need to make subsequent\n ListMultipartUploads requests. In these requests, include two query\n parameters: key-marker and upload-id-marker. Set the value of\n key-marker to the NextKeyMarker value from the previous\n response. Similarly, set the value of upload-id-marker to the\n NextUploadIdMarker value from the previous response.

\n \n

\n Directory buckets - The\n upload-id-marker element and the NextUploadIdMarker element\n aren't supported by directory buckets. To list the additional multipart uploads, you\n only need to set the value of key-marker to the NextKeyMarker\n value from the previous response.

\n
\n

For more information about multipart uploads, see Uploading Objects Using Multipart\n Upload in the Amazon S3 User Guide.

\n \n

\n Directory buckets -\n For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - For\n information about permissions required to use the multipart upload API, see\n Multipart Upload and\n Permissions in the Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
Sorting of multipart uploads in response
\n
\n
    \n
  • \n

    \n General purpose bucket - In the\n ListMultipartUploads response, the multipart uploads are\n sorted based on two criteria:

    \n
      \n
    • \n

      Key-based sorting - Multipart uploads are initially sorted\n in ascending order based on their object keys.

      \n
    • \n
    • \n

      Time-based sorting - For uploads that share the same object\n key, they are further sorted in ascending order based on the upload\n initiation time. Among uploads with the same key, the one that was\n initiated first will appear before the ones that were initiated\n later.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket - In the\n ListMultipartUploads response, the multipart uploads aren't\n sorted lexicographically based on the object keys.\n \n

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to ListMultipartUploads:

\n ", - "smithy.api#examples": [ - { - "title": "List next set of multipart uploads when previous result is truncated", - "documentation": "The following example specifies the upload-id-marker and key-marker from previous truncated response to retrieve next setup of multipart uploads.", - "input": { - "Bucket": "examplebucket", - "KeyMarker": "nextkeyfrompreviousresponse", - "MaxUploads": 2, - "UploadIdMarker": "valuefrompreviousresponse" - }, - "output": { - "UploadIdMarker": "", - "NextKeyMarker": "someobjectkey", - "Bucket": "acl1", - "NextUploadIdMarker": "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--", - "Uploads": [ - { - "Initiator": { - "DisplayName": "ownder-display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - }, - "Initiated": "2014-05-01T05:40:58.000Z", - "UploadId": "gZ30jIqlUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--", - "StorageClass": "STANDARD", - "Key": "JavaFile", - "Owner": { - "DisplayName": "mohanataws", - "ID": "852b113e7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - } + "STANDARD_IA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STANDARD_IA" + } }, - { - "Initiator": { - "DisplayName": "ownder-display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - }, - "Initiated": "2014-05-01T05:41:27.000Z", - "UploadId": "b7tZSqIlo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--", - "StorageClass": "STANDARD", - "Key": "JavaFile", - "Owner": { - "DisplayName": "ownder-display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - } - } - ], - "KeyMarker": "", - "MaxUploads": 2, - "IsTruncated": true - } - }, - { - "title": "To list in-progress multipart uploads on a bucket", - "documentation": "The following example lists in-progress multipart uploads on a specific bucket.", - "input": { - "Bucket": "examplebucket" - }, - "output": { - "Uploads": [ - { - "Initiator": { - "DisplayName": "display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - }, - "Initiated": "2014-05-01T05:40:58.000Z", - "UploadId": "examplelUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--", - "StorageClass": "STANDARD", - "Key": "JavaFile", - "Owner": { - "DisplayName": "display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - } + "ONEZONE_IA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ONEZONE_IA" + } }, - { - "Initiator": { - "DisplayName": "display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - }, - "Initiated": "2014-05-01T05:41:27.000Z", - "UploadId": "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--", - "StorageClass": "STANDARD", - "Key": "JavaFile", - "Owner": { - "DisplayName": "display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - } - } - ] - } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?uploads", - "code": 200 - } - } - }, - "com.amazonaws.s3#ListMultipartUploadsOutput": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket to which the multipart upload was initiated. Does not return the\n access point ARN or access point alias if used.

" - } - }, - "KeyMarker": { - "target": "com.amazonaws.s3#KeyMarker", - "traits": { - "smithy.api#documentation": "

The key at or after which the listing began.

" - } - }, - "UploadIdMarker": { - "target": "com.amazonaws.s3#UploadIdMarker", - "traits": { - "smithy.api#documentation": "

Together with key-marker, specifies the multipart upload after which listing should\n begin. If key-marker is not specified, the upload-id-marker parameter is ignored.\n Otherwise, any multipart uploads for a key equal to the key-marker might be included in the\n list only if they have an upload ID lexicographically greater than the specified\n upload-id-marker.

\n \n

This functionality is not supported for directory buckets.

\n
" - } - }, - "NextKeyMarker": { - "target": "com.amazonaws.s3#NextKeyMarker", - "traits": { - "smithy.api#documentation": "

When a list is truncated, this element specifies the value that should be used for the\n key-marker request parameter in a subsequent request.

" - } - }, - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

When a prefix is provided in the request, this field contains the specified prefix. The\n result contains only keys starting with the specified prefix.

\n \n

\n Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

\n
" - } - }, - "Delimiter": { - "target": "com.amazonaws.s3#Delimiter", - "traits": { - "smithy.api#documentation": "

Contains the delimiter you specified in the request. If you don't specify a delimiter in\n your request, this element is absent from the response.

\n \n

\n Directory buckets - For directory buckets, / is the only supported delimiter.

\n
" - } - }, - "NextUploadIdMarker": { - "target": "com.amazonaws.s3#NextUploadIdMarker", - "traits": { - "smithy.api#documentation": "

When a list is truncated, this element specifies the value that should be used for the\n upload-id-marker request parameter in a subsequent request.

\n \n

This functionality is not supported for directory buckets.

\n
" - } - }, - "MaxUploads": { - "target": "com.amazonaws.s3#MaxUploads", - "traits": { - "smithy.api#documentation": "

Maximum number of multipart uploads that could have been included in the\n response.

" - } - }, - "IsTruncated": { - "target": "com.amazonaws.s3#IsTruncated", - "traits": { - "smithy.api#documentation": "

Indicates whether the returned list of multipart uploads is truncated. A value of true\n indicates that the list was truncated. The list can be truncated if the number of multipart\n uploads exceeds the limit allowed or specified by max uploads.

" - } - }, - "Uploads": { - "target": "com.amazonaws.s3#MultipartUploadList", - "traits": { - "smithy.api#documentation": "

Container for elements related to a particular multipart upload. A response can contain\n zero or more Upload elements.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Upload" - } - }, - "CommonPrefixes": { - "target": "com.amazonaws.s3#CommonPrefixList", - "traits": { - "smithy.api#documentation": "

If you specify a delimiter in the request, then the result returns each distinct key\n prefix containing the delimiter in a CommonPrefixes element. The distinct key\n prefixes are returned in the Prefix child element.

\n \n

\n Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

\n
", - "smithy.api#xmlFlattened": {} - } - }, - "EncodingType": { - "target": "com.amazonaws.s3#EncodingType", - "traits": { - "smithy.api#documentation": "

Encoding type used by Amazon S3 to encode object keys in the response.

\n

If you specify the encoding-type request parameter, Amazon S3 includes this\n element in the response, and returns encoded key name values in the following response\n elements:

\n

\n Delimiter, KeyMarker, Prefix,\n NextKeyMarker, Key.

" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "ListMultipartUploadsResult" - } - }, - "com.amazonaws.s3#ListMultipartUploadsRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket to which the multipart upload was initiated.

\n

\n Directory buckets -\n When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Delimiter": { - "target": "com.amazonaws.s3#Delimiter", - "traits": { - "smithy.api#documentation": "

Character you use to group keys.

\n

All keys that contain the same string between the prefix, if specified, and the first\n occurrence of the delimiter after the prefix are grouped under a single result element,\n CommonPrefixes. If you don't specify the prefix parameter, then the\n substring starts at the beginning of the key. The keys that are grouped under\n CommonPrefixes result element are not returned elsewhere in the\n response.

\n \n

\n Directory buckets - For directory buckets, / is the only supported delimiter.

\n
", - "smithy.api#httpQuery": "delimiter" - } - }, - "EncodingType": { - "target": "com.amazonaws.s3#EncodingType", - "traits": { - "smithy.api#httpQuery": "encoding-type" - } - }, - "KeyMarker": { - "target": "com.amazonaws.s3#KeyMarker", - "traits": { - "smithy.api#documentation": "

Specifies the multipart upload after which listing should begin.

\n \n
    \n
  • \n

    \n General purpose buckets - For\n general purpose buckets, key-marker is an object key. Together with\n upload-id-marker, this parameter specifies the multipart upload\n after which listing should begin.

    \n

    If upload-id-marker is not specified, only the keys\n lexicographically greater than the specified key-marker will be\n included in the list.

    \n

    If upload-id-marker is specified, any multipart uploads for a key\n equal to the key-marker might also be included, provided those\n multipart uploads have upload IDs lexicographically greater than the specified\n upload-id-marker.

    \n
  • \n
  • \n

    \n Directory buckets - For\n directory buckets, key-marker is obfuscated and isn't a real object\n key. The upload-id-marker parameter isn't supported by\n directory buckets. To list the additional multipart uploads, you only need to set\n the value of key-marker to the NextKeyMarker value from\n the previous response.

    \n

    In the ListMultipartUploads response, the multipart uploads aren't\n sorted lexicographically based on the object keys.\n \n

    \n
  • \n
\n
", - "smithy.api#httpQuery": "key-marker" - } - }, - "MaxUploads": { - "target": "com.amazonaws.s3#MaxUploads", - "traits": { - "smithy.api#documentation": "

Sets the maximum number of multipart uploads, from 1 to 1,000, to return in the response\n body. 1,000 is the maximum number of uploads that can be returned in a response.

", - "smithy.api#httpQuery": "max-uploads" - } - }, - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

Lists in-progress uploads only for those keys that begin with the specified prefix. You\n can use prefixes to separate a bucket into different grouping of keys. (You can think of\n using prefix to make groups in the same way that you'd use a folder in a file\n system.)

\n \n

\n Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

\n
", - "smithy.api#httpQuery": "prefix", - "smithy.rules#contextParam": { - "name": "Prefix" - } - } - }, - "UploadIdMarker": { - "target": "com.amazonaws.s3#UploadIdMarker", - "traits": { - "smithy.api#documentation": "

Together with key-marker, specifies the multipart upload after which listing should\n begin. If key-marker is not specified, the upload-id-marker parameter is ignored.\n Otherwise, any multipart uploads for a key equal to the key-marker might be included in the\n list only if they have an upload ID lexicographically greater than the specified\n upload-id-marker.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpQuery": "upload-id-marker" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#ListObjectVersions": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#ListObjectVersionsRequest" - }, - "output": { - "target": "com.amazonaws.s3#ListObjectVersionsOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns metadata about all versions of the objects in a bucket. You can also use request\n parameters as selection criteria to return metadata about a subset of all the object\n versions.

\n \n

To use this operation, you must have permission to perform the\n s3:ListBucketVersions action. Be aware of the name difference.

\n
\n \n

A 200 OK response can contain valid or invalid XML. Make sure to design\n your application to parse the contents of the response and handle it\n appropriately.

\n
\n

To use this operation, you must have READ access to the bucket.

\n

The following operations are related to ListObjectVersions:

\n ", - "smithy.api#examples": [ - { - "title": "To list object versions", - "documentation": "The following example returns versions of an object with specific key name prefix.", - "input": { - "Bucket": "examplebucket", - "Prefix": "HappyFace.jpg" - }, - "output": { - "Versions": [ - { - "LastModified": "2016-12-15T01:19:41.000Z", - "VersionId": "null", - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "StorageClass": "STANDARD", - "Key": "HappyFace.jpg", - "Owner": { - "DisplayName": "owner-display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - }, - "IsLatest": true, - "Size": 3191 + "INTELLIGENT_TIERING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INTELLIGENT_TIERING" + } }, - { - "LastModified": "2016-12-13T00:58:26.000Z", - "VersionId": "PHtexPGjH2y.zBgT8LmB7wwLI2mpbz.k", - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "StorageClass": "STANDARD", - "Key": "HappyFace.jpg", - "Owner": { - "DisplayName": "owner-display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - }, - "IsLatest": false, - "Size": 3191 - } - ] - } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?versions", - "code": 200 - } - } - }, - "com.amazonaws.s3#ListObjectVersionsOutput": { - "type": "structure", - "members": { - "IsTruncated": { - "target": "com.amazonaws.s3#IsTruncated", - "traits": { - "smithy.api#documentation": "

A flag that indicates whether Amazon S3 returned all of the results that satisfied the search\n criteria. If your results were truncated, you can make a follow-up paginated request by\n using the NextKeyMarker and NextVersionIdMarker response\n parameters as a starting place in another request to return the rest of the results.

" - } - }, - "KeyMarker": { - "target": "com.amazonaws.s3#KeyMarker", - "traits": { - "smithy.api#documentation": "

Marks the last key returned in a truncated response.

" - } - }, - "VersionIdMarker": { - "target": "com.amazonaws.s3#VersionIdMarker", - "traits": { - "smithy.api#documentation": "

Marks the last version of the key returned in a truncated response.

" - } - }, - "NextKeyMarker": { - "target": "com.amazonaws.s3#NextKeyMarker", - "traits": { - "smithy.api#documentation": "

When the number of responses exceeds the value of MaxKeys,\n NextKeyMarker specifies the first key not returned that satisfies the\n search criteria. Use this value for the key-marker request parameter in a subsequent\n request.

" - } - }, - "NextVersionIdMarker": { - "target": "com.amazonaws.s3#NextVersionIdMarker", - "traits": { - "smithy.api#documentation": "

When the number of responses exceeds the value of MaxKeys,\n NextVersionIdMarker specifies the first object version not returned that\n satisfies the search criteria. Use this value for the version-id-marker\n request parameter in a subsequent request.

" - } - }, - "Versions": { - "target": "com.amazonaws.s3#ObjectVersionList", - "traits": { - "smithy.api#documentation": "

Container for version information.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Version" - } - }, - "DeleteMarkers": { - "target": "com.amazonaws.s3#DeleteMarkers", - "traits": { - "smithy.api#documentation": "

Container for an object that is a delete marker.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "DeleteMarker" - } - }, - "Name": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name.

" - } - }, - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

Selects objects that start with the value supplied by this parameter.

" - } - }, - "Delimiter": { - "target": "com.amazonaws.s3#Delimiter", - "traits": { - "smithy.api#documentation": "

The delimiter grouping the included keys. A delimiter is a character that you specify to\n group keys. All keys that contain the same string between the prefix and the first\n occurrence of the delimiter are grouped under a single result element in\n CommonPrefixes. These groups are counted as one result against the\n max-keys limitation. These keys are not returned elsewhere in the\n response.

" - } - }, - "MaxKeys": { - "target": "com.amazonaws.s3#MaxKeys", - "traits": { - "smithy.api#documentation": "

Specifies the maximum number of objects to return.

" - } - }, - "CommonPrefixes": { - "target": "com.amazonaws.s3#CommonPrefixList", - "traits": { - "smithy.api#documentation": "

All of the keys rolled up into a common prefix count as a single return when calculating\n the number of returns.

", - "smithy.api#xmlFlattened": {} - } - }, - "EncodingType": { - "target": "com.amazonaws.s3#EncodingType", - "traits": { - "smithy.api#documentation": "

Encoding type used by Amazon S3 to encode object key names in the XML response.

\n

If you specify the encoding-type request parameter, Amazon S3 includes this\n element in the response, and returns encoded key name values in the following response\n elements:

\n

\n KeyMarker, NextKeyMarker, Prefix, Key, and Delimiter.

" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "ListVersionsResult" - } - }, - "com.amazonaws.s3#ListObjectVersionsRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name that contains the objects.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Delimiter": { - "target": "com.amazonaws.s3#Delimiter", - "traits": { - "smithy.api#documentation": "

A delimiter is a character that you specify to group keys. All keys that contain the\n same string between the prefix and the first occurrence of the delimiter are\n grouped under a single result element in CommonPrefixes. These groups are\n counted as one result against the max-keys limitation. These keys are not\n returned elsewhere in the response.

", - "smithy.api#httpQuery": "delimiter" - } - }, - "EncodingType": { - "target": "com.amazonaws.s3#EncodingType", - "traits": { - "smithy.api#httpQuery": "encoding-type" - } - }, - "KeyMarker": { - "target": "com.amazonaws.s3#KeyMarker", - "traits": { - "smithy.api#documentation": "

Specifies the key to start with when listing objects in a bucket.

", - "smithy.api#httpQuery": "key-marker" - } - }, - "MaxKeys": { - "target": "com.amazonaws.s3#MaxKeys", - "traits": { - "smithy.api#documentation": "

Sets the maximum number of keys returned in the response. By default, the action returns\n up to 1,000 key names. The response might contain fewer keys but will never contain more.\n If additional keys satisfy the search criteria, but were not returned because\n max-keys was exceeded, the response contains\n true. To return the additional keys,\n see key-marker and version-id-marker.

", - "smithy.api#httpQuery": "max-keys" - } - }, - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

Use this parameter to select only those keys that begin with the specified prefix. You\n can use prefixes to separate a bucket into different groupings of keys. (You can think of\n using prefix to make groups in the same way that you'd use a folder in a file\n system.) You can use prefix with delimiter to roll up numerous\n objects into a single result under CommonPrefixes.

", - "smithy.api#httpQuery": "prefix", - "smithy.rules#contextParam": { - "name": "Prefix" - } - } - }, - "VersionIdMarker": { - "target": "com.amazonaws.s3#VersionIdMarker", - "traits": { - "smithy.api#documentation": "

Specifies the object version you want to start listing from.

", - "smithy.api#httpQuery": "version-id-marker" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "OptionalObjectAttributes": { - "target": "com.amazonaws.s3#OptionalObjectAttributesList", - "traits": { - "smithy.api#documentation": "

Specifies the optional fields that you want returned in the response. Fields that you do\n not specify are not returned.

", - "smithy.api#httpHeader": "x-amz-optional-object-attributes" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#ListObjects": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#ListObjectsRequest" - }, - "output": { - "target": "com.amazonaws.s3#ListObjectsOutput" - }, - "errors": [ - { - "target": "com.amazonaws.s3#NoSuchBucket" - } - ], - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Returns some or all (up to 1,000) of the objects in a bucket. You can use the request\n parameters as selection criteria to return a subset of the objects in a bucket. A 200 OK\n response can contain valid or invalid XML. Be sure to design your application to parse the\n contents of the response and handle it appropriately.

\n \n

This action has been revised. We recommend that you use the newer version, ListObjectsV2, when developing applications. For backward compatibility,\n Amazon S3 continues to support ListObjects.

\n
\n

The following operations are related to ListObjects:

\n ", - "smithy.api#examples": [ - { - "title": "To list objects in a bucket", - "documentation": "The following example list two objects in a bucket.", - "input": { - "Bucket": "examplebucket", - "MaxKeys": 2 + "GLACIER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GLACIER" + } + }, + "DEEP_ARCHIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DEEP_ARCHIVE" + } + }, + "OUTPOSTS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OUTPOSTS" + } + }, + "GLACIER_IR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GLACIER_IR" + } + }, + "SNOW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SNOW" + } + }, + "EXPRESS_ONEZONE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EXPRESS_ONEZONE" + } + }, + "FSX_OPENZFS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FSX_OPENZFS" + } + } + } + }, + "com.amazonaws.s3#StorageClassAnalysis": { + "type": "structure", + "members": { + "DataExport": { + "target": "com.amazonaws.s3#StorageClassAnalysisDataExport", + "traits": { + "smithy.api#documentation": "

Specifies how data related to the storage class analysis for an Amazon S3 bucket should be\n exported.

" + } + } }, - "output": { - "NextMarker": "eyJNYXJrZXIiOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAyfQ==", - "Contents": [ - { - "LastModified": "2014-11-21T19:40:05.000Z", - "ETag": "\"70ee1738b6b21e2c8a43f3a5ab0eee71\"", - "StorageClass": "STANDARD", - "Key": "example1.jpg", - "Owner": { - "DisplayName": "myname", - "ID": "12345example25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - }, - "Size": 11 + "traits": { + "smithy.api#documentation": "

Specifies data related to access patterns to be collected and made available to analyze the\n tradeoffs between different storage classes for an Amazon S3 bucket.

" + } + }, + "com.amazonaws.s3#StorageClassAnalysisDataExport": { + "type": "structure", + "members": { + "OutputSchemaVersion": { + "target": "com.amazonaws.s3#StorageClassAnalysisSchemaVersion", + "traits": { + "smithy.api#documentation": "

The version of the output schema to use when exporting data. Must be V_1.

", + "smithy.api#required": {} + } }, - { - "LastModified": "2013-11-15T01:10:49.000Z", - "ETag": "\"9c8af9a76df052144598c115ef33e511\"", - "StorageClass": "STANDARD", - "Key": "example2.jpg", - "Owner": { - "DisplayName": "myname", - "ID": "12345example25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - }, - "Size": 713193 - } - ] - } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}", - "code": 200 - } - } - }, - "com.amazonaws.s3#ListObjectsOutput": { - "type": "structure", - "members": { - "IsTruncated": { - "target": "com.amazonaws.s3#IsTruncated", - "traits": { - "smithy.api#documentation": "

A flag that indicates whether Amazon S3 returned all of the results that satisfied the search\n criteria.

" - } - }, - "Marker": { - "target": "com.amazonaws.s3#Marker", - "traits": { - "smithy.api#documentation": "

Indicates where in the bucket listing begins. Marker is included in the response if it\n was sent with the request.

" - } - }, - "NextMarker": { - "target": "com.amazonaws.s3#NextMarker", - "traits": { - "smithy.api#documentation": "

When the response is truncated (the IsTruncated element value in the\n response is true), you can use the key name in this field as the\n marker parameter in the subsequent request to get the next set of objects.\n Amazon S3 lists objects in alphabetical order.

\n \n

This element is returned only if you have the delimiter request\n parameter specified. If the response does not include the NextMarker\n element and it is truncated, you can use the value of the last Key element\n in the response as the marker parameter in the subsequent request to get\n the next set of object keys.

\n
" - } - }, - "Contents": { - "target": "com.amazonaws.s3#ObjectList", - "traits": { - "smithy.api#documentation": "

Metadata about each object returned.

", - "smithy.api#xmlFlattened": {} - } - }, - "Name": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name.

" - } - }, - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

Keys that begin with the indicated prefix.

" - } - }, - "Delimiter": { - "target": "com.amazonaws.s3#Delimiter", - "traits": { - "smithy.api#documentation": "

Causes keys that contain the same string between the prefix and the first occurrence of\n the delimiter to be rolled up into a single result element in the\n CommonPrefixes collection. These rolled-up keys are not returned elsewhere\n in the response. Each rolled-up result counts as only one return against the\n MaxKeys value.

" - } - }, - "MaxKeys": { - "target": "com.amazonaws.s3#MaxKeys", - "traits": { - "smithy.api#documentation": "

The maximum number of keys returned in the response body.

" - } - }, - "CommonPrefixes": { - "target": "com.amazonaws.s3#CommonPrefixList", - "traits": { - "smithy.api#documentation": "

All of the keys (up to 1,000) rolled up in a common prefix count as a single return when\n calculating the number of returns.

\n

A response can contain CommonPrefixes only if you specify a\n delimiter.

\n

\n CommonPrefixes contains all (if there are any) keys between\n Prefix and the next occurrence of the string specified by the\n delimiter.

\n

\n CommonPrefixes lists keys that act like subdirectories in the directory\n specified by Prefix.

\n

For example, if the prefix is notes/ and the delimiter is a slash\n (/), as in notes/summer/july, the common prefix is\n notes/summer/. All of the keys that roll up into a common prefix count as a\n single return when calculating the number of returns.

", - "smithy.api#xmlFlattened": {} - } - }, - "EncodingType": { - "target": "com.amazonaws.s3#EncodingType", - "traits": { - "smithy.api#documentation": "

Encoding type used by Amazon S3 to encode the object keys in the response.\n Responses are encoded only in UTF-8. An object key can contain any Unicode character.\n However, the XML 1.0 parser can't parse certain characters, such as characters with an\n ASCII value from 0 to 10. For characters that aren't supported in XML 1.0, you can add this\n parameter to request that Amazon S3 encode the keys in the response. For more information about\n characters to avoid in object key names, see Object key naming\n guidelines.

\n \n

When using the URL encoding type, non-ASCII characters that are used in an object's\n key name will be percent-encoded according to UTF-8 code values. For example, the object\n test_file(3).png will appear as\n test_file%283%29.png.

\n
" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "ListBucketResult" - } - }, - "com.amazonaws.s3#ListObjectsRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket containing the objects.

\n

\n Directory buckets -\n When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Delimiter": { - "target": "com.amazonaws.s3#Delimiter", - "traits": { - "smithy.api#documentation": "

A delimiter is a character that you use to group keys.

", - "smithy.api#httpQuery": "delimiter" - } - }, - "EncodingType": { - "target": "com.amazonaws.s3#EncodingType", - "traits": { - "smithy.api#httpQuery": "encoding-type" - } - }, - "Marker": { - "target": "com.amazonaws.s3#Marker", - "traits": { - "smithy.api#documentation": "

Marker is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this\n specified key. Marker can be any key in the bucket.

", - "smithy.api#httpQuery": "marker" - } - }, - "MaxKeys": { - "target": "com.amazonaws.s3#MaxKeys", - "traits": { - "smithy.api#documentation": "

Sets the maximum number of keys returned in the response. By default, the action returns\n up to 1,000 key names. The response might contain fewer keys but will never contain more.\n

", - "smithy.api#httpQuery": "max-keys" - } - }, - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

Limits the response to keys that begin with the specified prefix.

", - "smithy.api#httpQuery": "prefix", - "smithy.rules#contextParam": { - "name": "Prefix" - } - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#documentation": "

Confirms that the requester knows that she or he will be charged for the list objects\n request. Bucket owners need not specify this parameter in their requests.

", - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "OptionalObjectAttributes": { - "target": "com.amazonaws.s3#OptionalObjectAttributesList", - "traits": { - "smithy.api#documentation": "

Specifies the optional fields that you want returned in the response. Fields that you do\n not specify are not returned.

", - "smithy.api#httpHeader": "x-amz-optional-object-attributes" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#ListObjectsV2": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#ListObjectsV2Request" - }, - "output": { - "target": "com.amazonaws.s3#ListObjectsV2Output" - }, - "errors": [ - { - "target": "com.amazonaws.s3#NoSuchBucket" - } - ], - "traits": { - "smithy.api#documentation": "

Returns some or all (up to 1,000) of the objects in a bucket with each request. You can\n use the request parameters as selection criteria to return a subset of the objects in a\n bucket. A 200 OK response can contain valid or invalid XML. Make sure to\n design your application to parse the contents of the response and handle it appropriately.\n For more information about listing objects, see Listing object keys\n programmatically in the Amazon S3 User Guide. To get a list of\n your buckets, see ListBuckets.

\n \n
    \n
  • \n

    \n General purpose bucket - For general purpose buckets,\n ListObjectsV2 doesn't return prefixes that are related only to\n in-progress multipart uploads.

    \n
  • \n
  • \n

    \n Directory buckets - For\n directory buckets, ListObjectsV2 response includes the prefixes that\n are related only to in-progress multipart uploads.

    \n
  • \n
  • \n

    \n Directory buckets -\n For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - To\n use this operation, you must have READ access to the bucket. You must have\n permission to perform the s3:ListBucket action. The bucket\n owner has this permission by default and can grant this permission to\n others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access\n Permissions to Your Amazon S3 Resources in the\n Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
Sorting order of returned objects
\n
\n
    \n
  • \n

    \n General purpose bucket - For\n general purpose buckets, ListObjectsV2 returns objects in\n lexicographical order based on their key names.

    \n
  • \n
  • \n

    \n Directory bucket - For\n directory buckets, ListObjectsV2 does not return objects in\n lexicographical order.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n \n

This section describes the latest revision of this action. We recommend that you use\n this revised API operation for application development. For backward compatibility, Amazon S3\n continues to support the prior version of this API operation, ListObjects.

\n
\n

The following operations are related to ListObjectsV2:

\n ", - "smithy.api#examples": [ - { - "title": "To get object list", - "documentation": "The following example retrieves object list. The request specifies max keys to limit response to include only 2 object keys. ", - "input": { - "Bucket": "DOC-EXAMPLE-BUCKET", - "MaxKeys": 2 + "Destination": { + "target": "com.amazonaws.s3#AnalyticsExportDestination", + "traits": { + "smithy.api#documentation": "

The place to store the data for an analysis.

", + "smithy.api#required": {} + } + } }, - "output": { - "Name": "DOC-EXAMPLE-BUCKET", - "MaxKeys": 2, - "Prefix": "", - "KeyCount": 2, - "NextContinuationToken": "1w41l63U0xa8q7smH50vCxyTQqdxo69O3EmK28Bi5PcROI4wI/EyIJg==", - "IsTruncated": true, - "Contents": [ - { - "LastModified": "2014-11-21T19:40:05.000Z", - "ETag": "\"70ee1738b6b21e2c8a43f3a5ab0eee71\"", - "StorageClass": "STANDARD", - "Key": "happyface.jpg", - "Size": 11 + "traits": { + "smithy.api#documentation": "

Container for data related to the storage class analysis for an Amazon S3 bucket for export.

" + } + }, + "com.amazonaws.s3#StorageClassAnalysisSchemaVersion": { + "type": "enum", + "members": { + "V_1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "V_1" + } + } + } + }, + "com.amazonaws.s3#StreamingBlob": { + "type": "blob", + "traits": { + "smithy.api#streaming": {} + } + }, + "com.amazonaws.s3#Suffix": { + "type": "string" + }, + "com.amazonaws.s3#TableSseAlgorithm": { + "type": "enum", + "members": { + "aws_kms": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "aws:kms" + } }, - { - "LastModified": "2014-05-02T04:51:50.000Z", - "ETag": "\"becf17f89c30367a9a44495d62ed521a-1\"", - "StorageClass": "STANDARD", - "Key": "test.jpg", - "Size": 4192256 - } - ] - } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}?list-type=2", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "ContinuationToken", - "outputToken": "NextContinuationToken", - "pageSize": "MaxKeys" - } - } - }, - "com.amazonaws.s3#ListObjectsV2Output": { - "type": "structure", - "members": { - "IsTruncated": { - "target": "com.amazonaws.s3#IsTruncated", - "traits": { - "smithy.api#documentation": "

Set to false if all of the results were returned. Set to true\n if more keys are available to return. If the number of results exceeds that specified by\n MaxKeys, all of the results might not be returned.

" - } - }, - "Contents": { - "target": "com.amazonaws.s3#ObjectList", - "traits": { - "smithy.api#documentation": "

Metadata about each object returned.

", - "smithy.api#xmlFlattened": {} - } - }, - "Name": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name.

" - } - }, - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

Keys that begin with the indicated prefix.

\n \n

\n Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

\n
" - } - }, - "Delimiter": { - "target": "com.amazonaws.s3#Delimiter", - "traits": { - "smithy.api#documentation": "

Causes keys that contain the same string between the prefix and the first\n occurrence of the delimiter to be rolled up into a single result element in the\n CommonPrefixes collection. These rolled-up keys are not returned elsewhere\n in the response. Each rolled-up result counts as only one return against the\n MaxKeys value.

\n \n

\n Directory buckets - For directory buckets, / is the only supported delimiter.

\n
" - } - }, - "MaxKeys": { - "target": "com.amazonaws.s3#MaxKeys", - "traits": { - "smithy.api#documentation": "

Sets the maximum number of keys returned in the response. By default, the action returns\n up to 1,000 key names. The response might contain fewer keys but will never contain\n more.

" - } - }, - "CommonPrefixes": { - "target": "com.amazonaws.s3#CommonPrefixList", - "traits": { - "smithy.api#documentation": "

All of the keys (up to 1,000) that share the same prefix are grouped together. When\n counting the total numbers of returns by this API operation, this group of keys is\n considered as one item.

\n

A response can contain CommonPrefixes only if you specify a\n delimiter.

\n

\n CommonPrefixes contains all (if there are any) keys between\n Prefix and the next occurrence of the string specified by a\n delimiter.

\n

\n CommonPrefixes lists keys that act like subdirectories in the directory\n specified by Prefix.

\n

For example, if the prefix is notes/ and the delimiter is a slash\n (/) as in notes/summer/july, the common prefix is\n notes/summer/. All of the keys that roll up into a common prefix count as a\n single return when calculating the number of returns.

\n \n
    \n
  • \n

    \n Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

    \n
  • \n
  • \n

    \n Directory buckets - When you query\n ListObjectsV2 with a delimiter during in-progress multipart\n uploads, the CommonPrefixes response parameter contains the prefixes\n that are associated with the in-progress multipart uploads. For more information\n about multipart uploads, see Multipart Upload Overview in\n the Amazon S3 User Guide.

    \n
  • \n
\n
", - "smithy.api#xmlFlattened": {} - } - }, - "EncodingType": { - "target": "com.amazonaws.s3#EncodingType", - "traits": { - "smithy.api#documentation": "

Encoding type used by Amazon S3 to encode object key names in the XML response.

\n

If you specify the encoding-type request parameter, Amazon S3 includes this\n element in the response, and returns encoded key name values in the following response\n elements:

\n

\n Delimiter, Prefix, Key, and StartAfter.

" - } - }, - "KeyCount": { - "target": "com.amazonaws.s3#KeyCount", - "traits": { - "smithy.api#documentation": "

\n KeyCount is the number of keys returned with this request.\n KeyCount will always be less than or equal to the MaxKeys\n field. For example, if you ask for 50 keys, your result will include 50 keys or\n fewer.

" - } - }, - "ContinuationToken": { - "target": "com.amazonaws.s3#Token", - "traits": { - "smithy.api#documentation": "

If ContinuationToken was sent with the request, it is included in the\n response. You can use the returned ContinuationToken for pagination of the\n list response. You can use this ContinuationToken for pagination of the list\n results.

" - } - }, - "NextContinuationToken": { - "target": "com.amazonaws.s3#NextToken", - "traits": { - "smithy.api#documentation": "

\n NextContinuationToken is sent when isTruncated is true, which\n means there are more keys in the bucket that can be listed. The next list requests to Amazon S3\n can be continued with this NextContinuationToken.\n NextContinuationToken is obfuscated and is not a real key

" - } - }, - "StartAfter": { - "target": "com.amazonaws.s3#StartAfter", - "traits": { - "smithy.api#documentation": "

If StartAfter was sent with the request, it is included in the response.

\n \n

This functionality is not supported for directory buckets.

\n
" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "ListBucketResult" - } - }, - "com.amazonaws.s3#ListObjectsV2Request": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

\n Directory buckets -\n When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Delimiter": { - "target": "com.amazonaws.s3#Delimiter", - "traits": { - "smithy.api#documentation": "

A delimiter is a character that you use to group keys.

\n \n
    \n
  • \n

    \n Directory buckets - For directory buckets, / is the only supported delimiter.

    \n
  • \n
  • \n

    \n Directory buckets - When you query\n ListObjectsV2 with a delimiter during in-progress multipart\n uploads, the CommonPrefixes response parameter contains the prefixes\n that are associated with the in-progress multipart uploads. For more information\n about multipart uploads, see Multipart Upload Overview in\n the Amazon S3 User Guide.

    \n
  • \n
\n
", - "smithy.api#httpQuery": "delimiter" - } - }, - "EncodingType": { - "target": "com.amazonaws.s3#EncodingType", - "traits": { - "smithy.api#documentation": "

Encoding type used by Amazon S3 to encode the object keys in the response.\n Responses are encoded only in UTF-8. An object key can contain any Unicode character.\n However, the XML 1.0 parser can't parse certain characters, such as characters with an\n ASCII value from 0 to 10. For characters that aren't supported in XML 1.0, you can add this\n parameter to request that Amazon S3 encode the keys in the response. For more information about\n characters to avoid in object key names, see Object key naming\n guidelines.

\n \n

When using the URL encoding type, non-ASCII characters that are used in an object's\n key name will be percent-encoded according to UTF-8 code values. For example, the object\n test_file(3).png will appear as\n test_file%283%29.png.

\n
", - "smithy.api#httpQuery": "encoding-type" - } - }, - "MaxKeys": { - "target": "com.amazonaws.s3#MaxKeys", - "traits": { - "smithy.api#documentation": "

Sets the maximum number of keys returned in the response. By default, the action returns\n up to 1,000 key names. The response might contain fewer keys but will never contain\n more.

", - "smithy.api#httpQuery": "max-keys" - } - }, - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

Limits the response to keys that begin with the specified prefix.

\n \n

\n Directory buckets - For directory buckets, only prefixes that end in a delimiter (/) are supported.

\n
", - "smithy.api#httpQuery": "prefix", - "smithy.rules#contextParam": { - "name": "Prefix" - } - } - }, - "ContinuationToken": { - "target": "com.amazonaws.s3#Token", - "traits": { - "smithy.api#documentation": "

\n ContinuationToken indicates to Amazon S3 that the list is being continued on\n this bucket with a token. ContinuationToken is obfuscated and is not a real\n key. You can use this ContinuationToken for pagination of the list results.\n

", - "smithy.api#httpQuery": "continuation-token" - } - }, - "FetchOwner": { - "target": "com.amazonaws.s3#FetchOwner", - "traits": { - "smithy.api#documentation": "

The owner field is not present in ListObjectsV2 by default. If you want to\n return the owner field with each key in the result, then set the FetchOwner\n field to true.

\n \n

\n Directory buckets - For directory buckets,\n the bucket owner is returned as the object owner for all objects.

\n
", - "smithy.api#httpQuery": "fetch-owner" - } - }, - "StartAfter": { - "target": "com.amazonaws.s3#StartAfter", - "traits": { - "smithy.api#documentation": "

StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this\n specified key. StartAfter can be any key in the bucket.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpQuery": "start-after" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#documentation": "

Confirms that the requester knows that she or he will be charged for the list objects\n request in V2 style. Bucket owners need not specify this parameter in their\n requests.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "OptionalObjectAttributes": { - "target": "com.amazonaws.s3#OptionalObjectAttributesList", - "traits": { - "smithy.api#documentation": "

Specifies the optional fields that you want returned in the response. Fields that you do\n not specify are not returned.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-optional-object-attributes" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#ListParts": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#ListPartsRequest" - }, - "output": { - "target": "com.amazonaws.s3#ListPartsOutput" - }, - "traits": { - "smithy.api#documentation": "

Lists the parts that have been uploaded for a specific multipart upload.

\n

To use this operation, you must provide the upload ID in the request. You\n obtain this uploadID by sending the initiate multipart upload request through CreateMultipartUpload.

\n

The ListParts request returns a maximum of 1,000 uploaded parts. The limit\n of 1,000 parts is also the default value. You can restrict the number of parts in a\n response by specifying the max-parts request parameter. If your multipart\n upload consists of more than 1,000 parts, the response returns an IsTruncated\n field with the value of true, and a NextPartNumberMarker element.\n To list remaining uploaded parts, in subsequent ListParts requests, include\n the part-number-marker query string parameter and set its value to the\n NextPartNumberMarker field value from the previous response.

\n

For more information on multipart uploads, see Uploading Objects Using Multipart\n Upload in the Amazon S3 User Guide.

\n \n

\n Directory buckets -\n For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - For\n information about permissions required to use the multipart upload API, see\n Multipart Upload and\n Permissions in the Amazon S3 User Guide.

    \n

    If the upload was created using server-side encryption with Key Management Service\n (KMS) keys (SSE-KMS) or dual-layer server-side encryption with\n Amazon Web Services KMS keys (DSSE-KMS), you must have permission to the\n kms:Decrypt action for the ListParts request to\n succeed.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to ListParts:

\n ", - "smithy.api#examples": [ - { - "title": "To list parts of a multipart upload.", - "documentation": "The following example lists parts uploaded for a specific multipart upload.", - "input": { - "Bucket": "examplebucket", - "Key": "bigobject", - "UploadId": "example7YPBOJuoFiQ9cz4P3Pe6FIZwO4f7wN93uHsNBEw97pl5eNwzExg0LAT2dUN91cOmrEQHDsP3WA60CEg--" + "AES256": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AES256" + } + } + } + }, + "com.amazonaws.s3#Tag": { + "type": "structure", + "members": { + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Name of the object key.

", + "smithy.api#required": {} + } + }, + "Value": { + "target": "com.amazonaws.s3#Value", + "traits": { + "smithy.api#documentation": "

Value of the tag.

", + "smithy.api#required": {} + } + } }, - "output": { - "Owner": { - "DisplayName": "owner-display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - }, - "Initiator": { - "DisplayName": "owner-display-name", - "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" - }, - "Parts": [ - { - "LastModified": "2016-12-16T00:11:42.000Z", - "PartNumber": 1, - "ETag": "\"d8c2eafd90c266e19ab9dcacc479f8af\"", - "Size": 26246026 + "traits": { + "smithy.api#documentation": "

A container of a key value name pair.

" + } + }, + "com.amazonaws.s3#TagCount": { + "type": "integer" + }, + "com.amazonaws.s3#TagSet": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#Tag", + "traits": { + "smithy.api#xmlName": "Tag" + } + } + }, + "com.amazonaws.s3#Tagging": { + "type": "structure", + "members": { + "TagSet": { + "target": "com.amazonaws.s3#TagSet", + "traits": { + "smithy.api#documentation": "

A collection for a set of tags

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for TagSet elements.

" + } + }, + "com.amazonaws.s3#TaggingDirective": { + "type": "enum", + "members": { + "COPY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COPY" + } }, - { - "LastModified": "2016-12-16T00:15:01.000Z", - "PartNumber": 2, - "ETag": "\"d8c2eafd90c266e19ab9dcacc479f8af\"", - "Size": 26246026 - } - ], - "StorageClass": "STANDARD" - } - } - ], - "smithy.api#http": { - "method": "GET", - "uri": "/{Bucket}/{Key+}?x-id=ListParts", - "code": 200 - }, - "smithy.api#paginated": { - "inputToken": "PartNumberMarker", - "outputToken": "NextPartNumberMarker", - "items": "Parts", - "pageSize": "MaxParts" - } - } - }, - "com.amazonaws.s3#ListPartsOutput": { - "type": "structure", - "members": { - "AbortDate": { - "target": "com.amazonaws.s3#AbortDate", - "traits": { - "smithy.api#documentation": "

If the bucket has a lifecycle rule configured with an action to abort incomplete\n multipart uploads and the prefix in the lifecycle rule matches the object name in the\n request, then the response includes this header indicating when the initiated multipart\n upload will become eligible for abort operation. For more information, see Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle\n Configuration.

\n

The response will also include the x-amz-abort-rule-id header that will\n provide the ID of the lifecycle configuration rule that defines this action.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-abort-date" - } - }, - "AbortRuleId": { - "target": "com.amazonaws.s3#AbortRuleId", - "traits": { - "smithy.api#documentation": "

This header is returned along with the x-amz-abort-date header. It\n identifies applicable lifecycle configuration rule that defines the action to abort\n incomplete multipart uploads.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-abort-rule-id" - } - }, - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket to which the multipart upload was initiated. Does not return the\n access point ARN or access point alias if used.

" - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Object key for which the multipart upload was initiated.

" - } - }, - "UploadId": { - "target": "com.amazonaws.s3#MultipartUploadId", - "traits": { - "smithy.api#documentation": "

Upload ID identifying the multipart upload whose parts are being listed.

" - } - }, - "PartNumberMarker": { - "target": "com.amazonaws.s3#PartNumberMarker", - "traits": { - "smithy.api#documentation": "

Specifies the part after which listing should begin. Only parts with higher part numbers\n will be listed.

" - } - }, - "NextPartNumberMarker": { - "target": "com.amazonaws.s3#NextPartNumberMarker", - "traits": { - "smithy.api#documentation": "

When a list is truncated, this element specifies the last part in the list, as well as\n the value to use for the part-number-marker request parameter in a subsequent\n request.

" - } - }, - "MaxParts": { - "target": "com.amazonaws.s3#MaxParts", - "traits": { - "smithy.api#documentation": "

Maximum number of parts that were allowed in the response.

" - } - }, - "IsTruncated": { - "target": "com.amazonaws.s3#IsTruncated", - "traits": { - "smithy.api#documentation": "

Indicates whether the returned list of parts is truncated. A true value indicates that\n the list was truncated. A list can be truncated if the number of parts exceeds the limit\n returned in the MaxParts element.

" - } - }, - "Parts": { - "target": "com.amazonaws.s3#Parts", - "traits": { - "smithy.api#documentation": "

Container for elements related to a particular part. A response can contain zero or more\n Part elements.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Part" - } - }, - "Initiator": { - "target": "com.amazonaws.s3#Initiator", - "traits": { - "smithy.api#documentation": "

Container element that identifies who initiated the multipart upload. If the initiator\n is an Amazon Web Services account, this element provides the same information as the Owner\n element. If the initiator is an IAM User, this element provides the user ARN and display\n name.

" - } - }, - "Owner": { - "target": "com.amazonaws.s3#Owner", - "traits": { - "smithy.api#documentation": "

Container element that identifies the object owner, after the object is created. If\n multipart upload is initiated by an IAM user, this element provides the parent account ID\n and display name.

\n \n

\n Directory buckets - The bucket owner is\n returned as the object owner for all the parts.

\n
" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3#StorageClass", - "traits": { - "smithy.api#documentation": "

The class of storage used to store the uploaded object.

\n \n

\n Directory buckets -\n Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

\n
" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

The algorithm that was used to create a checksum of the object.

" - } - }, - "ChecksumType": { - "target": "com.amazonaws.s3#ChecksumType", - "traits": { - "smithy.api#documentation": "

The checksum type, which determines how part-level checksums are combined to create an\n object-level checksum for multipart objects. You can use this header response to verify\n that the checksum type that is received is the same checksum type that was specified in\n CreateMultipartUpload request. For more\n information, see Checking object integrity\n in the Amazon S3 User Guide.

" - } - } - }, - "traits": { - "smithy.api#output": {}, - "smithy.api#xmlName": "ListPartsResult" - } - }, - "com.amazonaws.s3#ListPartsRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket to which the parts are being uploaded.

\n

\n Directory buckets -\n When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Object key for which the multipart upload was initiated.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Key" - } - } - }, - "MaxParts": { - "target": "com.amazonaws.s3#MaxParts", - "traits": { - "smithy.api#documentation": "

Sets the maximum number of parts to return.

", - "smithy.api#httpQuery": "max-parts" - } - }, - "PartNumberMarker": { - "target": "com.amazonaws.s3#PartNumberMarker", - "traits": { - "smithy.api#documentation": "

Specifies the part after which listing should begin. Only parts with higher part numbers\n will be listed.

", - "smithy.api#httpQuery": "part-number-marker" - } - }, - "UploadId": { - "target": "com.amazonaws.s3#MultipartUploadId", - "traits": { - "smithy.api#documentation": "

Upload ID identifying the multipart upload whose parts are being listed.

", - "smithy.api#httpQuery": "uploadId", - "smithy.api#required": {} - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created \n using a checksum algorithm. For more information,\n see Protecting data using SSE-C keys in the\n Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKey": { - "target": "com.amazonaws.s3#SSECustomerKey", - "traits": { - "smithy.api#documentation": "

The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. \n For more information, see\n Protecting data using SSE-C keys in the\n Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum \n algorithm. For more information,\n see Protecting data using SSE-C keys in the\n Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#Location": { - "type": "string" - }, - "com.amazonaws.s3#LocationInfo": { - "type": "structure", - "members": { - "Type": { - "target": "com.amazonaws.s3#LocationType", - "traits": { - "smithy.api#documentation": "

The type of location where the bucket will be created.

" - } - }, - "Name": { - "target": "com.amazonaws.s3#LocationNameAsString", - "traits": { - "smithy.api#documentation": "

The name of the location where the bucket will be created.

\n

For directory buckets, the name of the location is the Zone ID of the Availability Zone (AZ) or Local Zone (LZ) where the bucket will be created. An example AZ ID value is usw2-az1.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the location where the bucket will be created.

\n

For directory buckets, the location type is Availability Zone or Local Zone. For more information about directory buckets, see \n Directory buckets in the Amazon S3 User Guide.

\n \n

This functionality is only supported by directory buckets.

\n
" - } - }, - "com.amazonaws.s3#LocationNameAsString": { - "type": "string" - }, - "com.amazonaws.s3#LocationPrefix": { - "type": "string" - }, - "com.amazonaws.s3#LocationType": { - "type": "enum", - "members": { - "AvailabilityZone": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "AvailabilityZone" - } - }, - "LocalZone": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "LocalZone" - } - } - } - }, - "com.amazonaws.s3#LoggingEnabled": { - "type": "structure", - "members": { - "TargetBucket": { - "target": "com.amazonaws.s3#TargetBucket", - "traits": { - "smithy.api#documentation": "

Specifies the bucket where you want Amazon S3 to store server access logs. You can have your\n logs delivered to any bucket that you own, including the same bucket that is being logged.\n You can also configure multiple buckets to deliver their logs to the same target bucket. In\n this case, you should choose a different TargetPrefix for each source bucket\n so that the delivered log files can be distinguished by key.

", - "smithy.api#required": {} - } - }, - "TargetGrants": { - "target": "com.amazonaws.s3#TargetGrants", - "traits": { - "smithy.api#documentation": "

Container for granting information.

\n

Buckets that use the bucket owner enforced setting for Object Ownership don't support\n target grants. For more information, see Permissions for server access log delivery in the\n Amazon S3 User Guide.

" - } - }, - "TargetPrefix": { - "target": "com.amazonaws.s3#TargetPrefix", - "traits": { - "smithy.api#documentation": "

A prefix for all log object keys. If you store log files from multiple Amazon S3 buckets in a\n single bucket, you can use a prefix to distinguish which log files came from which\n bucket.

", - "smithy.api#required": {} - } - }, - "TargetObjectKeyFormat": { - "target": "com.amazonaws.s3#TargetObjectKeyFormat", - "traits": { - "smithy.api#documentation": "

Amazon S3 key format for log objects.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes where logs are stored and the prefix that Amazon S3 assigns to all log object keys\n for a bucket. For more information, see PUT Bucket logging in the\n Amazon S3 API Reference.

" - } - }, - "com.amazonaws.s3#MFA": { - "type": "string" - }, - "com.amazonaws.s3#MFADelete": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3#MFADeleteStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3#Marker": { - "type": "string" - }, - "com.amazonaws.s3#MaxAgeSeconds": { - "type": "integer" - }, - "com.amazonaws.s3#MaxBuckets": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 1, - "max": 10000 - } - } - }, - "com.amazonaws.s3#MaxDirectoryBuckets": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 0, - "max": 1000 - } - } - }, - "com.amazonaws.s3#MaxKeys": { - "type": "integer" - }, - "com.amazonaws.s3#MaxParts": { - "type": "integer" - }, - "com.amazonaws.s3#MaxUploads": { - "type": "integer" - }, - "com.amazonaws.s3#Message": { - "type": "string" - }, - "com.amazonaws.s3#Metadata": { - "type": "map", - "key": { - "target": "com.amazonaws.s3#MetadataKey" - }, - "value": { - "target": "com.amazonaws.s3#MetadataValue" - } - }, - "com.amazonaws.s3#MetadataDirective": { - "type": "enum", - "members": { - "COPY": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "COPY" - } - }, - "REPLACE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "REPLACE" - } - } - } - }, - "com.amazonaws.s3#MetadataEntry": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.s3#MetadataKey", - "traits": { - "smithy.api#documentation": "

Name of the object.

" - } - }, - "Value": { - "target": "com.amazonaws.s3#MetadataValue", - "traits": { - "smithy.api#documentation": "

Value of the object.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A metadata key-value pair to store with an object.

" - } - }, - "com.amazonaws.s3#MetadataKey": { - "type": "string" - }, - "com.amazonaws.s3#MetadataTableConfiguration": { - "type": "structure", - "members": { - "S3TablesDestination": { - "target": "com.amazonaws.s3#S3TablesDestination", - "traits": { - "smithy.api#documentation": "

\n The destination information for the metadata table configuration. The destination table bucket\n must be in the same Region and Amazon Web Services account as the general purpose bucket. The specified metadata\n table name must be unique within the aws_s3_metadata namespace in the destination \n table bucket.\n

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

\n The metadata table configuration for a general purpose bucket.\n

" - } - }, - "com.amazonaws.s3#MetadataTableConfigurationResult": { - "type": "structure", - "members": { - "S3TablesDestinationResult": { - "target": "com.amazonaws.s3#S3TablesDestinationResult", - "traits": { - "smithy.api#documentation": "

\n The destination information for the metadata table configuration. The destination table bucket\n must be in the same Region and Amazon Web Services account as the general purpose bucket. The specified metadata\n table name must be unique within the aws_s3_metadata namespace in the destination \n table bucket.\n

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

\n The metadata table configuration for a general purpose bucket. The destination table bucket\n must be in the same Region and Amazon Web Services account as the general purpose bucket. The specified metadata\n table name must be unique within the aws_s3_metadata namespace in the destination \n table bucket. \n

" - } - }, - "com.amazonaws.s3#MetadataTableStatus": { - "type": "string" - }, - "com.amazonaws.s3#MetadataValue": { - "type": "string" - }, - "com.amazonaws.s3#Metrics": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3#MetricsStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether the replication metrics are enabled.

", - "smithy.api#required": {} - } - }, - "EventThreshold": { - "target": "com.amazonaws.s3#ReplicationTimeValue", - "traits": { - "smithy.api#documentation": "

A container specifying the time threshold for emitting the\n s3:Replication:OperationMissedThreshold event.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container specifying replication metrics-related settings enabling replication\n metrics and events.

" - } - }, - "com.amazonaws.s3#MetricsAndOperator": { - "type": "structure", - "members": { - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

The prefix used when evaluating an AND predicate.

" - } - }, - "Tags": { - "target": "com.amazonaws.s3#TagSet", - "traits": { - "smithy.api#documentation": "

The list of tags used when evaluating an AND predicate.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Tag" - } - }, - "AccessPointArn": { - "target": "com.amazonaws.s3#AccessPointArn", - "traits": { - "smithy.api#documentation": "

The access point ARN used when evaluating an AND predicate.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A conjunction (logical AND) of predicates, which is used in evaluating a metrics filter.\n The operator must have at least two predicates, and an object must match all of the\n predicates in order for the filter to apply.

" - } - }, - "com.amazonaws.s3#MetricsConfiguration": { - "type": "structure", - "members": { - "Id": { - "target": "com.amazonaws.s3#MetricsId", - "traits": { - "smithy.api#documentation": "

The ID used to identify the metrics configuration. The ID has a 64 character limit and\n can only contain letters, numbers, periods, dashes, and underscores.

", - "smithy.api#required": {} - } - }, - "Filter": { - "target": "com.amazonaws.s3#MetricsFilter", - "traits": { - "smithy.api#documentation": "

Specifies a metrics configuration filter. The metrics configuration will only include\n objects that meet the filter's criteria. A filter must be a prefix, an object tag, an\n access point ARN, or a conjunction (MetricsAndOperator).

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies a metrics configuration for the CloudWatch request metrics (specified by the\n metrics configuration ID) from an Amazon S3 bucket. If you're updating an existing metrics\n configuration, note that this is a full replacement of the existing metrics configuration.\n If you don't include the elements you want to keep, they are erased. For more information,\n see PutBucketMetricsConfiguration.

" - } - }, - "com.amazonaws.s3#MetricsConfigurationList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#MetricsConfiguration" - } - }, - "com.amazonaws.s3#MetricsFilter": { - "type": "union", - "members": { - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

The prefix used when evaluating a metrics filter.

" - } - }, - "Tag": { - "target": "com.amazonaws.s3#Tag", - "traits": { - "smithy.api#documentation": "

The tag used when evaluating a metrics filter.

" - } - }, - "AccessPointArn": { - "target": "com.amazonaws.s3#AccessPointArn", - "traits": { - "smithy.api#documentation": "

The access point ARN used when evaluating a metrics filter.

" - } - }, - "And": { - "target": "com.amazonaws.s3#MetricsAndOperator", - "traits": { - "smithy.api#documentation": "

A conjunction (logical AND) of predicates, which is used in evaluating a metrics filter.\n The operator must have at least two predicates, and an object must match all of the\n predicates in order for the filter to apply.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies a metrics configuration filter. The metrics configuration only includes\n objects that meet the filter's criteria. A filter must be a prefix, an object tag, an\n access point ARN, or a conjunction (MetricsAndOperator). For more information, see PutBucketMetricsConfiguration.

" - } - }, - "com.amazonaws.s3#MetricsId": { - "type": "string" - }, - "com.amazonaws.s3#MetricsStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3#Minutes": { - "type": "integer" - }, - "com.amazonaws.s3#MissingMeta": { - "type": "integer" - }, - "com.amazonaws.s3#MpuObjectSize": { - "type": "string" - }, - "com.amazonaws.s3#MultipartUpload": { - "type": "structure", - "members": { - "UploadId": { - "target": "com.amazonaws.s3#MultipartUploadId", - "traits": { - "smithy.api#documentation": "

Upload ID that identifies the multipart upload.

" - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Key of the object for which the multipart upload was initiated.

" - } - }, - "Initiated": { - "target": "com.amazonaws.s3#Initiated", - "traits": { - "smithy.api#documentation": "

Date and time at which the multipart upload was initiated.

" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3#StorageClass", - "traits": { - "smithy.api#documentation": "

The class of storage used to store the object.

\n \n

\n Directory buckets -\n Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

\n
" - } - }, - "Owner": { - "target": "com.amazonaws.s3#Owner", - "traits": { - "smithy.api#documentation": "

Specifies the owner of the object that is part of the multipart upload.

\n \n

\n Directory buckets - The bucket owner is\n returned as the object owner for all the objects.

\n
" - } - }, - "Initiator": { - "target": "com.amazonaws.s3#Initiator", - "traits": { - "smithy.api#documentation": "

Identifies who initiated the multipart upload.

" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

The algorithm that was used to create a checksum of the object.

" - } - }, - "ChecksumType": { - "target": "com.amazonaws.s3#ChecksumType", - "traits": { - "smithy.api#documentation": "

The checksum type that is used to calculate the object’s\n checksum value. For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for the MultipartUpload for the Amazon S3 object.

" - } - }, - "com.amazonaws.s3#MultipartUploadId": { - "type": "string" - }, - "com.amazonaws.s3#MultipartUploadList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#MultipartUpload" - } - }, - "com.amazonaws.s3#NextKeyMarker": { - "type": "string" - }, - "com.amazonaws.s3#NextMarker": { - "type": "string" - }, - "com.amazonaws.s3#NextPartNumberMarker": { - "type": "string" - }, - "com.amazonaws.s3#NextToken": { - "type": "string" - }, - "com.amazonaws.s3#NextUploadIdMarker": { - "type": "string" - }, - "com.amazonaws.s3#NextVersionIdMarker": { - "type": "string" - }, - "com.amazonaws.s3#NoSuchBucket": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

The specified bucket does not exist.

", - "smithy.api#error": "client", - "smithy.api#httpError": 404 - } - }, - "com.amazonaws.s3#NoSuchKey": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

The specified key does not exist.

", - "smithy.api#error": "client", - "smithy.api#httpError": 404 - } - }, - "com.amazonaws.s3#NoSuchUpload": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

The specified multipart upload does not exist.

", - "smithy.api#error": "client", - "smithy.api#httpError": 404 - } - }, - "com.amazonaws.s3#NoncurrentVersionExpiration": { - "type": "structure", - "members": { - "NoncurrentDays": { - "target": "com.amazonaws.s3#Days", - "traits": { - "smithy.api#documentation": "

Specifies the number of days an object is noncurrent before Amazon S3 can perform the\n associated action. The value must be a non-zero positive integer. For information about the\n noncurrent days calculations, see How\n Amazon S3 Calculates When an Object Became Noncurrent in the\n Amazon S3 User Guide.

\n \n

This parameter applies to general purpose buckets only. It is not supported for\n directory bucket lifecycle configurations.

\n
" - } - }, - "NewerNoncurrentVersions": { - "target": "com.amazonaws.s3#VersionCount", - "traits": { - "smithy.api#documentation": "

Specifies how many noncurrent versions Amazon S3 will retain. You can specify up to 100\n noncurrent versions to retain. Amazon S3 will permanently delete any additional noncurrent\n versions beyond the specified number to retain. For more information about noncurrent\n versions, see Lifecycle configuration\n elements in the Amazon S3 User Guide.

\n \n

This parameter applies to general purpose buckets only. It is not supported for\n directory bucket lifecycle configurations.

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies when noncurrent object versions expire. Upon expiration, Amazon S3 permanently\n deletes the noncurrent object versions. You set this lifecycle configuration action on a\n bucket that has versioning enabled (or suspended) to request that Amazon S3 delete noncurrent\n object versions at a specific period in the object's lifetime.

\n \n

This parameter applies to general purpose buckets only. It is not supported for\n directory bucket lifecycle configurations.

\n
" - } - }, - "com.amazonaws.s3#NoncurrentVersionTransition": { - "type": "structure", - "members": { - "NoncurrentDays": { - "target": "com.amazonaws.s3#Days", - "traits": { - "smithy.api#documentation": "

Specifies the number of days an object is noncurrent before Amazon S3 can perform the\n associated action. For information about the noncurrent days calculations, see How\n Amazon S3 Calculates How Long an Object Has Been Noncurrent in the\n Amazon S3 User Guide.

" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3#TransitionStorageClass", - "traits": { - "smithy.api#documentation": "

The class of storage used to store the object.

" - } - }, - "NewerNoncurrentVersions": { - "target": "com.amazonaws.s3#VersionCount", - "traits": { - "smithy.api#documentation": "

Specifies how many noncurrent versions Amazon S3 will retain in the same storage class before\n transitioning objects. You can specify up to 100 noncurrent versions to retain. Amazon S3 will\n transition any additional noncurrent versions beyond the specified number to retain. For\n more information about noncurrent versions, see Lifecycle configuration\n elements in the Amazon S3 User Guide.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for the transition rule that describes when noncurrent objects transition to\n the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING,\n GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage\n class. If your bucket is versioning-enabled (or versioning is suspended), you can set this\n action to request that Amazon S3 transition noncurrent object versions to the\n STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING,\n GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage\n class at a specific period in the object's lifetime.

" - } - }, - "com.amazonaws.s3#NoncurrentVersionTransitionList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#NoncurrentVersionTransition" - } - }, - "com.amazonaws.s3#NotFound": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

The specified content does not exist.

", - "smithy.api#error": "client" - } - }, - "com.amazonaws.s3#NotificationConfiguration": { - "type": "structure", - "members": { - "TopicConfigurations": { - "target": "com.amazonaws.s3#TopicConfigurationList", - "traits": { - "smithy.api#documentation": "

The topic to which notifications are sent and the events for which notifications are\n generated.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "TopicConfiguration" - } - }, - "QueueConfigurations": { - "target": "com.amazonaws.s3#QueueConfigurationList", - "traits": { - "smithy.api#documentation": "

The Amazon Simple Queue Service queues to publish messages to and the events for which\n to publish messages.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "QueueConfiguration" - } - }, - "LambdaFunctionConfigurations": { - "target": "com.amazonaws.s3#LambdaFunctionConfigurationList", - "traits": { - "smithy.api#documentation": "

Describes the Lambda functions to invoke and the events for which to invoke\n them.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "CloudFunctionConfiguration" - } - }, - "EventBridgeConfiguration": { - "target": "com.amazonaws.s3#EventBridgeConfiguration", - "traits": { - "smithy.api#documentation": "

Enables delivery of events to Amazon EventBridge.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for specifying the notification configuration of the bucket. If this element\n is empty, notifications are turned off for the bucket.

" - } - }, - "com.amazonaws.s3#NotificationConfigurationFilter": { - "type": "structure", - "members": { - "Key": { - "target": "com.amazonaws.s3#S3KeyFilter", - "traits": { - "smithy.api#xmlName": "S3Key" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies object key name filtering rules. For information about key name filtering, see\n Configuring event\n notifications using object key name filtering in the\n Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3#NotificationId": { - "type": "string", - "traits": { - "smithy.api#documentation": "

An optional unique identifier for configurations in a notification configuration. If you\n don't provide one, Amazon S3 will assign an ID.

" - } - }, - "com.amazonaws.s3#Object": { - "type": "structure", - "members": { - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The name that you assign to an object. You use the object key to retrieve the\n object.

" - } - }, - "LastModified": { - "target": "com.amazonaws.s3#LastModified", - "traits": { - "smithy.api#documentation": "

Creation date of the object.

" - } - }, - "ETag": { - "target": "com.amazonaws.s3#ETag", - "traits": { - "smithy.api#documentation": "

The entity tag is a hash of the object. The ETag reflects changes only to the contents\n of an object, not its metadata. The ETag may or may not be an MD5 digest of the object\n data. Whether or not it is depends on how the object was created and how it is encrypted as\n described below:

\n
    \n
  • \n

    Objects created by the PUT Object, POST Object, or Copy operation, or through the\n Amazon Web Services Management Console, and are encrypted by SSE-S3 or plaintext, have ETags that\n are an MD5 digest of their object data.

    \n
  • \n
  • \n

    Objects created by the PUT Object, POST Object, or Copy operation, or through the\n Amazon Web Services Management Console, and are encrypted by SSE-C or SSE-KMS, have ETags that are\n not an MD5 digest of their object data.

    \n
  • \n
  • \n

    If an object is created by either the Multipart Upload or Part Copy operation, the\n ETag is not an MD5 digest, regardless of the method of encryption. If an object is\n larger than 16 MB, the Amazon Web Services Management Console will upload or copy that object as a\n Multipart Upload, and therefore the ETag will not be an MD5 digest.

    \n
  • \n
\n \n

\n Directory buckets - MD5 is not supported by directory buckets.

\n
" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithmList", - "traits": { - "smithy.api#documentation": "

The algorithm that was used to create a checksum of the object.

", - "smithy.api#xmlFlattened": {} - } - }, - "ChecksumType": { - "target": "com.amazonaws.s3#ChecksumType", - "traits": { - "smithy.api#documentation": "

The checksum type that is used to calculate the object’s\n checksum value. For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "Size": { - "target": "com.amazonaws.s3#Size", - "traits": { - "smithy.api#documentation": "

Size in bytes of the object

" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3#ObjectStorageClass", - "traits": { - "smithy.api#documentation": "

The class of storage used to store the object.

\n \n

\n Directory buckets -\n Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

\n
" - } - }, - "Owner": { - "target": "com.amazonaws.s3#Owner", - "traits": { - "smithy.api#documentation": "

The owner of the object

\n \n

\n Directory buckets - The bucket owner is\n returned as the object owner.

\n
" - } - }, - "RestoreStatus": { - "target": "com.amazonaws.s3#RestoreStatus", - "traits": { - "smithy.api#documentation": "

Specifies the restoration status of an object. Objects in certain storage classes must\n be restored before they can be retrieved. For more information about these storage classes\n and how to work with archived objects, see Working with archived\n objects in the Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.\n Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

An object consists of data and its descriptive metadata.

" - } - }, - "com.amazonaws.s3#ObjectAlreadyInActiveTierError": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

This action is not allowed against this storage tier.

", - "smithy.api#error": "client", - "smithy.api#httpError": 403 - } - }, - "com.amazonaws.s3#ObjectAttributes": { - "type": "enum", - "members": { - "ETAG": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ETag" - } - }, - "CHECKSUM": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Checksum" - } - }, - "OBJECT_PARTS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ObjectParts" - } - }, - "STORAGE_CLASS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "StorageClass" - } - }, - "OBJECT_SIZE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ObjectSize" - } - } - } - }, - "com.amazonaws.s3#ObjectAttributesList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#ObjectAttributes" - } - }, - "com.amazonaws.s3#ObjectCannedACL": { - "type": "enum", - "members": { - "private": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "private" - } - }, - "public_read": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "public-read" - } - }, - "public_read_write": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "public-read-write" - } - }, - "authenticated_read": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "authenticated-read" - } - }, - "aws_exec_read": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "aws-exec-read" - } - }, - "bucket_owner_read": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "bucket-owner-read" - } - }, - "bucket_owner_full_control": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "bucket-owner-full-control" - } - } - } - }, - "com.amazonaws.s3#ObjectIdentifier": { - "type": "structure", - "members": { - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Key name of the object.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
", - "smithy.api#required": {} - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

Version ID for the specific version of the object to delete.

\n \n

This functionality is not supported for directory buckets.

\n
" - } - }, - "ETag": { - "target": "com.amazonaws.s3#ETag", - "traits": { - "smithy.api#documentation": "

An entity tag (ETag) is an identifier assigned by a web server to a specific version of a resource found at a URL.\n This header field makes the request method conditional on ETags.

\n \n

Entity tags (ETags) for S3 Express One Zone are random alphanumeric strings unique to the object.

\n
" - } - }, - "LastModifiedTime": { - "target": "com.amazonaws.s3#LastModifiedTime", - "traits": { - "smithy.api#documentation": "

If present, the objects are deleted only if its modification times matches the provided Timestamp. \n

\n \n

This functionality is only supported for directory buckets.

\n
" - } - }, - "Size": { - "target": "com.amazonaws.s3#Size", - "traits": { - "smithy.api#documentation": "

If present, the objects are deleted only if its size matches the provided size in bytes.

\n \n

This functionality is only supported for directory buckets.

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

Object Identifier is unique value to identify objects.

" - } - }, - "com.amazonaws.s3#ObjectIdentifierList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#ObjectIdentifier" - } - }, - "com.amazonaws.s3#ObjectKey": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1 - } - } - }, - "com.amazonaws.s3#ObjectList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#Object" - } - }, - "com.amazonaws.s3#ObjectLockConfiguration": { - "type": "structure", - "members": { - "ObjectLockEnabled": { - "target": "com.amazonaws.s3#ObjectLockEnabled", - "traits": { - "smithy.api#documentation": "

Indicates whether this bucket has an Object Lock configuration enabled. Enable\n ObjectLockEnabled when you apply ObjectLockConfiguration to a\n bucket.

" - } - }, - "Rule": { - "target": "com.amazonaws.s3#ObjectLockRule", - "traits": { - "smithy.api#documentation": "

Specifies the Object Lock rule for the specified object. Enable the this rule when you\n apply ObjectLockConfiguration to a bucket. Bucket settings require both a mode\n and a period. The period can be either Days or Years but you must\n select one. You cannot specify Days and Years at the same\n time.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container element for Object Lock configuration parameters.

" - } - }, - "com.amazonaws.s3#ObjectLockEnabled": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - } - } - }, - "com.amazonaws.s3#ObjectLockEnabledForBucket": { - "type": "boolean" - }, - "com.amazonaws.s3#ObjectLockLegalHold": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3#ObjectLockLegalHoldStatus", - "traits": { - "smithy.api#documentation": "

Indicates whether the specified object has a legal hold in place.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A legal hold configuration for an object.

" - } - }, - "com.amazonaws.s3#ObjectLockLegalHoldStatus": { - "type": "enum", - "members": { - "ON": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ON" - } - }, - "OFF": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "OFF" - } - } - } - }, - "com.amazonaws.s3#ObjectLockMode": { - "type": "enum", - "members": { - "GOVERNANCE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GOVERNANCE" - } - }, - "COMPLIANCE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "COMPLIANCE" - } - } - } - }, - "com.amazonaws.s3#ObjectLockRetainUntilDate": { - "type": "timestamp", - "traits": { - "smithy.api#timestampFormat": "date-time" - } - }, - "com.amazonaws.s3#ObjectLockRetention": { - "type": "structure", - "members": { - "Mode": { - "target": "com.amazonaws.s3#ObjectLockRetentionMode", - "traits": { - "smithy.api#documentation": "

Indicates the Retention mode for the specified object.

" - } - }, - "RetainUntilDate": { - "target": "com.amazonaws.s3#Date", - "traits": { - "smithy.api#documentation": "

The date on which this Object Lock Retention will expire.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A Retention configuration for an object.

" - } - }, - "com.amazonaws.s3#ObjectLockRetentionMode": { - "type": "enum", - "members": { - "GOVERNANCE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GOVERNANCE" - } - }, - "COMPLIANCE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "COMPLIANCE" - } - } - } - }, - "com.amazonaws.s3#ObjectLockRule": { - "type": "structure", - "members": { - "DefaultRetention": { - "target": "com.amazonaws.s3#DefaultRetention", - "traits": { - "smithy.api#documentation": "

The default Object Lock retention mode and period that you want to apply to new objects\n placed in the specified bucket. Bucket settings require both a mode and a period. The\n period can be either Days or Years but you must select one. You\n cannot specify Days and Years at the same time.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container element for an Object Lock rule.

" - } - }, - "com.amazonaws.s3#ObjectLockToken": { - "type": "string" - }, - "com.amazonaws.s3#ObjectNotInActiveTierError": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

The source object of the COPY action is not in the active tier and is only stored in\n Amazon S3 Glacier.

", - "smithy.api#error": "client", - "smithy.api#httpError": 403 - } - }, - "com.amazonaws.s3#ObjectOwnership": { - "type": "enum", - "members": { - "BucketOwnerPreferred": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "BucketOwnerPreferred" - } - }, - "ObjectWriter": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ObjectWriter" - } - }, - "BucketOwnerEnforced": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "BucketOwnerEnforced" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container element for object ownership for a bucket's ownership controls.

\n

\n BucketOwnerPreferred - Objects uploaded to the bucket change ownership to\n the bucket owner if the objects are uploaded with the\n bucket-owner-full-control canned ACL.

\n

\n ObjectWriter - The uploading account will own the object if the object is\n uploaded with the bucket-owner-full-control canned ACL.

\n

\n BucketOwnerEnforced - Access control lists (ACLs) are disabled and no\n longer affect permissions. The bucket owner automatically owns and has full control over\n every object in the bucket. The bucket only accepts PUT requests that don't specify an ACL\n or specify bucket owner full control ACLs (such as the predefined\n bucket-owner-full-control canned ACL or a custom ACL in XML format that\n grants the same permissions).

\n

By default, ObjectOwnership is set to BucketOwnerEnforced and\n ACLs are disabled. We recommend keeping ACLs disabled, except in uncommon use cases where\n you must control access for each object individually. For more information about S3 Object\n Ownership, see Controlling ownership of\n objects and disabling ACLs for your bucket in the\n Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets. Directory buckets use the bucket owner enforced setting for S3 Object Ownership.

\n
" - } - }, - "com.amazonaws.s3#ObjectPart": { - "type": "structure", - "members": { - "PartNumber": { - "target": "com.amazonaws.s3#PartNumber", - "traits": { - "smithy.api#documentation": "

The part number identifying the part. This value is a positive integer between 1 and\n 10,000.

" - } - }, - "Size": { - "target": "com.amazonaws.s3#Size", - "traits": { - "smithy.api#documentation": "

The size of the uploaded part in bytes.

" - } - }, - "ChecksumCRC32": { - "target": "com.amazonaws.s3#ChecksumCRC32", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32 checksum of the part. This checksum is present\n if the multipart upload request was created with the CRC-32 checksum algorithm. For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumCRC32C": { - "target": "com.amazonaws.s3#ChecksumCRC32C", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32C checksum of the part. This checksum is present\n if the multipart upload request was created with the CRC-32C checksum algorithm. For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumCRC64NVME": { - "target": "com.amazonaws.s3#ChecksumCRC64NVME", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC-64NVME checksum of the part. This checksum is present\n if the multipart upload request was created with the CRC-64NVME checksum algorithm, or if the object was uploaded without a\n checksum (and Amazon S3 added the default checksum, CRC-64NVME, to the uploaded object). For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumSHA1": { - "target": "com.amazonaws.s3#ChecksumSHA1", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA-1 checksum of the part. This checksum is present\n if the multipart upload request was created with the SHA-1 checksum algorithm. For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumSHA256": { - "target": "com.amazonaws.s3#ChecksumSHA256", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA-256 checksum of the part. This checksum is present\n if the multipart upload request was created with the SHA-256 checksum algorithm. For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for elements related to an individual part.

" - } - }, - "com.amazonaws.s3#ObjectSize": { - "type": "long" - }, - "com.amazonaws.s3#ObjectSizeGreaterThanBytes": { - "type": "long" - }, - "com.amazonaws.s3#ObjectSizeLessThanBytes": { - "type": "long" - }, - "com.amazonaws.s3#ObjectStorageClass": { - "type": "enum", - "members": { - "STANDARD": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "STANDARD" - } - }, - "REDUCED_REDUNDANCY": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "REDUCED_REDUNDANCY" - } - }, - "GLACIER": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GLACIER" - } - }, - "STANDARD_IA": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "STANDARD_IA" - } - }, - "ONEZONE_IA": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ONEZONE_IA" - } - }, - "INTELLIGENT_TIERING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "INTELLIGENT_TIERING" - } - }, - "DEEP_ARCHIVE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DEEP_ARCHIVE" - } - }, - "OUTPOSTS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "OUTPOSTS" - } - }, - "GLACIER_IR": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GLACIER_IR" - } - }, - "SNOW": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "SNOW" - } - }, - "EXPRESS_ONEZONE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "EXPRESS_ONEZONE" - } - } - } - }, - "com.amazonaws.s3#ObjectVersion": { - "type": "structure", - "members": { - "ETag": { - "target": "com.amazonaws.s3#ETag", - "traits": { - "smithy.api#documentation": "

The entity tag is an MD5 hash of that version of the object.

" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithmList", - "traits": { - "smithy.api#documentation": "

The algorithm that was used to create a checksum of the object.

", - "smithy.api#xmlFlattened": {} - } - }, - "ChecksumType": { - "target": "com.amazonaws.s3#ChecksumType", - "traits": { - "smithy.api#documentation": "

The checksum type that is used to calculate the object’s\n checksum value. For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "Size": { - "target": "com.amazonaws.s3#Size", - "traits": { - "smithy.api#documentation": "

Size in bytes of the object.

" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3#ObjectVersionStorageClass", - "traits": { - "smithy.api#documentation": "

The class of storage used to store the object.

" - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The object key.

" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

Version ID of an object.

" - } - }, - "IsLatest": { - "target": "com.amazonaws.s3#IsLatest", - "traits": { - "smithy.api#documentation": "

Specifies whether the object is (true) or is not (false) the latest version of an\n object.

" - } - }, - "LastModified": { - "target": "com.amazonaws.s3#LastModified", - "traits": { - "smithy.api#documentation": "

Date and time when the object was last modified.

" - } - }, - "Owner": { - "target": "com.amazonaws.s3#Owner", - "traits": { - "smithy.api#documentation": "

Specifies the owner of the object.

" - } - }, - "RestoreStatus": { - "target": "com.amazonaws.s3#RestoreStatus", - "traits": { - "smithy.api#documentation": "

Specifies the restoration status of an object. Objects in certain storage classes must\n be restored before they can be retrieved. For more information about these storage classes\n and how to work with archived objects, see Working with archived\n objects in the Amazon S3 User Guide.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The version of an object.

" - } - }, - "com.amazonaws.s3#ObjectVersionId": { - "type": "string" - }, - "com.amazonaws.s3#ObjectVersionList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#ObjectVersion" - } - }, - "com.amazonaws.s3#ObjectVersionStorageClass": { - "type": "enum", - "members": { - "STANDARD": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "STANDARD" - } - } - } - }, - "com.amazonaws.s3#OptionalObjectAttributes": { - "type": "enum", - "members": { - "RESTORE_STATUS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "RestoreStatus" - } - } - } - }, - "com.amazonaws.s3#OptionalObjectAttributesList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#OptionalObjectAttributes" - } - }, - "com.amazonaws.s3#OutputLocation": { - "type": "structure", - "members": { - "S3": { - "target": "com.amazonaws.s3#S3Location", - "traits": { - "smithy.api#documentation": "

Describes an S3 location that will receive the results of the restore request.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the location where the restore job's output is stored.

" - } - }, - "com.amazonaws.s3#OutputSerialization": { - "type": "structure", - "members": { - "CSV": { - "target": "com.amazonaws.s3#CSVOutput", - "traits": { - "smithy.api#documentation": "

Describes the serialization of CSV-encoded Select results.

" - } - }, - "JSON": { - "target": "com.amazonaws.s3#JSONOutput", - "traits": { - "smithy.api#documentation": "

Specifies JSON as request's output serialization format.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes how results of the Select job are serialized.

" - } - }, - "com.amazonaws.s3#Owner": { - "type": "structure", - "members": { - "DisplayName": { - "target": "com.amazonaws.s3#DisplayName", - "traits": { - "smithy.api#documentation": "

Container for the display name of the owner. This value is only supported in the\n following Amazon Web Services Regions:

\n
    \n
  • \n

    US East (N. Virginia)

    \n
  • \n
  • \n

    US West (N. California)

    \n
  • \n
  • \n

    US West (Oregon)

    \n
  • \n
  • \n

    Asia Pacific (Singapore)

    \n
  • \n
  • \n

    Asia Pacific (Sydney)

    \n
  • \n
  • \n

    Asia Pacific (Tokyo)

    \n
  • \n
  • \n

    Europe (Ireland)

    \n
  • \n
  • \n

    South America (São Paulo)

    \n
  • \n
\n \n

This functionality is not supported for directory buckets.

\n
" - } - }, - "ID": { - "target": "com.amazonaws.s3#ID", - "traits": { - "smithy.api#documentation": "

Container for the ID of the owner.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for the owner's display name and ID.

" - } - }, - "com.amazonaws.s3#OwnerOverride": { - "type": "enum", - "members": { - "Destination": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Destination" - } - } - } - }, - "com.amazonaws.s3#OwnershipControls": { - "type": "structure", - "members": { - "Rules": { - "target": "com.amazonaws.s3#OwnershipControlsRules", - "traits": { - "smithy.api#documentation": "

The container element for an ownership control rule.

", - "smithy.api#required": {}, - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Rule" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container element for a bucket's ownership controls.

" - } - }, - "com.amazonaws.s3#OwnershipControlsRule": { - "type": "structure", - "members": { - "ObjectOwnership": { - "target": "com.amazonaws.s3#ObjectOwnership", - "traits": { - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

The container element for an ownership control rule.

" - } - }, - "com.amazonaws.s3#OwnershipControlsRules": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#OwnershipControlsRule" - } - }, - "com.amazonaws.s3#ParquetInput": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

Container for Parquet.

" - } - }, - "com.amazonaws.s3#Part": { - "type": "structure", - "members": { - "PartNumber": { - "target": "com.amazonaws.s3#PartNumber", - "traits": { - "smithy.api#documentation": "

Part number identifying the part. This is a positive integer between 1 and\n 10,000.

" - } - }, - "LastModified": { - "target": "com.amazonaws.s3#LastModified", - "traits": { - "smithy.api#documentation": "

Date and time at which the part was uploaded.

" - } - }, - "ETag": { - "target": "com.amazonaws.s3#ETag", - "traits": { - "smithy.api#documentation": "

Entity tag returned when the part was uploaded.

" - } - }, - "Size": { - "target": "com.amazonaws.s3#Size", - "traits": { - "smithy.api#documentation": "

Size in bytes of the uploaded part data.

" - } - }, - "ChecksumCRC32": { - "target": "com.amazonaws.s3#ChecksumCRC32", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32 checksum of the part. This checksum is present\n if the object was uploaded with the CRC-32 checksum algorithm. For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumCRC32C": { - "target": "com.amazonaws.s3#ChecksumCRC32C", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32C checksum of the part. This checksum is present\n if the object was uploaded with the CRC-32C checksum algorithm. For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumCRC64NVME": { - "target": "com.amazonaws.s3#ChecksumCRC64NVME", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC-64NVME checksum of the part. This checksum is present\n if the multipart upload request was created with the CRC-64NVME checksum algorithm, or if the object was uploaded without a\n checksum (and Amazon S3 added the default checksum, CRC-64NVME, to the uploaded object). For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumSHA1": { - "target": "com.amazonaws.s3#ChecksumSHA1", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA-1 checksum of the part. This checksum is present\n if the object was uploaded with the SHA-1 checksum algorithm. For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - }, - "ChecksumSHA256": { - "target": "com.amazonaws.s3#ChecksumSHA256", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA-256 checksum of the part. This checksum is present\n if the object was uploaded with the SHA-256 checksum algorithm. For more information, see Checking object integrity in the Amazon S3 User Guide.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for elements related to a part.

" - } - }, - "com.amazonaws.s3#PartNumber": { - "type": "integer" - }, - "com.amazonaws.s3#PartNumberMarker": { - "type": "string" - }, - "com.amazonaws.s3#PartitionDateSource": { - "type": "enum", - "members": { - "EventTime": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "EventTime" - } - }, - "DeliveryTime": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DeliveryTime" - } - } - } - }, - "com.amazonaws.s3#PartitionedPrefix": { - "type": "structure", - "members": { - "PartitionDateSource": { - "target": "com.amazonaws.s3#PartitionDateSource", - "traits": { - "smithy.api#documentation": "

Specifies the partition date source for the partitioned prefix.\n PartitionDateSource can be EventTime or\n DeliveryTime.

\n

For DeliveryTime, the time in the log file names corresponds to the\n delivery time for the log files.

\n

For EventTime, The logs delivered are for a specific day only. The year,\n month, and day correspond to the day on which the event occurred, and the hour, minutes and\n seconds are set to 00 in the key.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Amazon S3 keys for log objects are partitioned in the following format:

\n

\n [DestinationPrefix][SourceAccountId]/[SourceRegion]/[SourceBucket]/[YYYY]/[MM]/[DD]/[YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString]\n

\n

PartitionedPrefix defaults to EventTime delivery when server access logs are\n delivered.

", - "smithy.api#xmlName": "PartitionedPrefix" - } - }, - "com.amazonaws.s3#Parts": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#Part" - } - }, - "com.amazonaws.s3#PartsCount": { - "type": "integer" - }, - "com.amazonaws.s3#PartsList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#ObjectPart" - } - }, - "com.amazonaws.s3#Payer": { - "type": "enum", - "members": { - "Requester": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Requester" - } - }, - "BucketOwner": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "BucketOwner" - } - } - } - }, - "com.amazonaws.s3#Permission": { - "type": "enum", - "members": { - "FULL_CONTROL": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "FULL_CONTROL" - } - }, - "WRITE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "WRITE" - } - }, - "WRITE_ACP": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "WRITE_ACP" - } - }, - "READ": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "READ" - } - }, - "READ_ACP": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "READ_ACP" - } - } - } - }, - "com.amazonaws.s3#Policy": { - "type": "string" - }, - "com.amazonaws.s3#PolicyStatus": { - "type": "structure", - "members": { - "IsPublic": { - "target": "com.amazonaws.s3#IsPublic", - "traits": { - "smithy.api#documentation": "

The policy status for this bucket. TRUE indicates that this bucket is\n public. FALSE indicates that the bucket is not public.

", - "smithy.api#xmlName": "IsPublic" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container element for a bucket's policy status.

" - } - }, - "com.amazonaws.s3#Prefix": { - "type": "string" - }, - "com.amazonaws.s3#Priority": { - "type": "integer" - }, - "com.amazonaws.s3#Progress": { - "type": "structure", - "members": { - "BytesScanned": { - "target": "com.amazonaws.s3#BytesScanned", - "traits": { - "smithy.api#documentation": "

The current number of object bytes scanned.

" - } - }, - "BytesProcessed": { - "target": "com.amazonaws.s3#BytesProcessed", - "traits": { - "smithy.api#documentation": "

The current number of uncompressed object bytes processed.

" - } - }, - "BytesReturned": { - "target": "com.amazonaws.s3#BytesReturned", - "traits": { - "smithy.api#documentation": "

The current number of bytes of records payload data returned.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

This data type contains information about progress of an operation.

" - } - }, - "com.amazonaws.s3#ProgressEvent": { - "type": "structure", - "members": { - "Details": { - "target": "com.amazonaws.s3#Progress", - "traits": { - "smithy.api#documentation": "

The Progress event details.

", - "smithy.api#eventPayload": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

This data type contains information about the progress event of an operation.

" - } - }, - "com.amazonaws.s3#Protocol": { - "type": "enum", - "members": { - "http": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "http" - } - }, - "https": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "https" - } - } - } - }, - "com.amazonaws.s3#PublicAccessBlockConfiguration": { - "type": "structure", - "members": { - "BlockPublicAcls": { - "target": "com.amazonaws.s3#Setting", - "traits": { - "smithy.api#documentation": "

Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket\n and objects in this bucket. Setting this element to TRUE causes the following\n behavior:

\n
    \n
  • \n

    PUT Bucket ACL and PUT Object ACL calls fail if the specified ACL is\n public.

    \n
  • \n
  • \n

    PUT Object calls fail if the request includes a public ACL.

    \n
  • \n
  • \n

    PUT Bucket calls fail if the request includes a public ACL.

    \n
  • \n
\n

Enabling this setting doesn't affect existing policies or ACLs.

", - "smithy.api#xmlName": "BlockPublicAcls" - } - }, - "IgnorePublicAcls": { - "target": "com.amazonaws.s3#Setting", - "traits": { - "smithy.api#documentation": "

Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this\n bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on\n this bucket and objects in this bucket.

\n

Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't\n prevent new public ACLs from being set.

", - "smithy.api#xmlName": "IgnorePublicAcls" - } - }, - "BlockPublicPolicy": { - "target": "com.amazonaws.s3#Setting", - "traits": { - "smithy.api#documentation": "

Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this\n element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the\n specified bucket policy allows public access.

\n

Enabling this setting doesn't affect existing bucket policies.

", - "smithy.api#xmlName": "BlockPublicPolicy" - } - }, - "RestrictPublicBuckets": { - "target": "com.amazonaws.s3#Setting", - "traits": { - "smithy.api#documentation": "

Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting\n this element to TRUE restricts access to this bucket to only Amazon Web Services service principals and authorized users within this account if the bucket has\n a public policy.

\n

Enabling this setting doesn't affect previously stored bucket policies, except that\n public and cross-account access within any public bucket policy, including non-public\n delegation to specific accounts, is blocked.

", - "smithy.api#xmlName": "RestrictPublicBuckets" - } - } - }, - "traits": { - "smithy.api#documentation": "

The PublicAccessBlock configuration that you want to apply to this Amazon S3 bucket. You can\n enable the configuration options in any combination. For more information about when Amazon S3\n considers a bucket or object public, see The Meaning of \"Public\" in the Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3#PutBucketAccelerateConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketAccelerateConfigurationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm" - }, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Sets the accelerate configuration of an existing bucket. Amazon S3 Transfer Acceleration is a\n bucket-level feature that enables you to perform faster data transfers to Amazon S3.

\n

To use this operation, you must have permission to perform the\n s3:PutAccelerateConfiguration action. The bucket owner has this permission\n by default. The bucket owner can grant this permission to others. For more information\n about permissions, see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources.

\n

The Transfer Acceleration state of a bucket can be set to one of the following two\n values:

\n
    \n
  • \n

    Enabled – Enables accelerated data transfers to the bucket.

    \n
  • \n
  • \n

    Suspended – Disables accelerated data transfers to the bucket.

    \n
  • \n
\n

The GetBucketAccelerateConfiguration action returns the transfer acceleration state\n of a bucket.

\n

After setting the Transfer Acceleration state of a bucket to Enabled, it might take up\n to thirty minutes before the data transfer rates to the bucket increase.

\n

The name of the bucket used for Transfer Acceleration must be DNS-compliant and must\n not contain periods (\".\").

\n

For more information about transfer acceleration, see Transfer\n Acceleration.

\n

The following operations are related to\n PutBucketAccelerateConfiguration:

\n ", - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?accelerate", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketAccelerateConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket for which the accelerate configuration is set.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "AccelerateConfiguration": { - "target": "com.amazonaws.s3#AccelerateConfiguration", - "traits": { - "smithy.api#documentation": "

Container for setting the transfer acceleration state.

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "AccelerateConfiguration" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutBucketAcl": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketAclRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Sets the permissions on an existing bucket using access control lists (ACL). For more\n information, see Using ACLs. To set the ACL of a\n bucket, you must have the WRITE_ACP permission.

\n

You can use one of the following two ways to set a bucket's permissions:

\n
    \n
  • \n

    Specify the ACL in the request body

    \n
  • \n
  • \n

    Specify permissions using request headers

    \n
  • \n
\n \n

You cannot specify access permission using both the body and the request\n headers.

\n
\n

Depending on your application needs, you may choose to set the ACL on a bucket using\n either the request body or the headers. For example, if you have an existing application\n that updates a bucket ACL using the request body, then you can continue to use that\n approach.

\n \n

If your bucket uses the bucket owner enforced setting for S3 Object Ownership, ACLs\n are disabled and no longer affect permissions. You must use policies to grant access to\n your bucket and the objects in it. Requests to set ACLs or update ACLs fail and return\n the AccessControlListNotSupported error code. Requests to read ACLs are\n still supported. For more information, see Controlling object\n ownership in the Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n

You can set access permissions by using one of the following methods:

\n
    \n
  • \n

    Specify a canned ACL with the x-amz-acl request header. Amazon S3\n supports a set of predefined ACLs, known as canned\n ACLs. Each canned ACL has a predefined set of grantees and\n permissions. Specify the canned ACL name as the value of\n x-amz-acl. If you use this header, you cannot use other\n access control-specific headers in your request. For more information, see\n Canned\n ACL.

    \n
  • \n
  • \n

    Specify access permissions explicitly with the\n x-amz-grant-read, x-amz-grant-read-acp,\n x-amz-grant-write-acp, and\n x-amz-grant-full-control headers. When using these headers,\n you specify explicit access permissions and grantees (Amazon Web Services accounts or Amazon S3\n groups) who will receive the permission. If you use these ACL-specific\n headers, you cannot use the x-amz-acl header to set a canned\n ACL. These parameters map to the set of permissions that Amazon S3 supports in an\n ACL. For more information, see Access Control List (ACL)\n Overview.

    \n

    You specify each grantee as a type=value pair, where the type is one of\n the following:

    \n
      \n
    • \n

      \n id – if the value specified is the canonical user ID\n of an Amazon Web Services account

      \n
    • \n
    • \n

      \n uri – if you are granting permissions to a predefined\n group

      \n
    • \n
    • \n

      \n emailAddress – if the value specified is the email\n address of an Amazon Web Services account

      \n \n

      Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

      \n
        \n
      • \n

        US East (N. Virginia)

        \n
      • \n
      • \n

        US West (N. California)

        \n
      • \n
      • \n

        US West (Oregon)

        \n
      • \n
      • \n

        Asia Pacific (Singapore)

        \n
      • \n
      • \n

        Asia Pacific (Sydney)

        \n
      • \n
      • \n

        Asia Pacific (Tokyo)

        \n
      • \n
      • \n

        Europe (Ireland)

        \n
      • \n
      • \n

        South America (São Paulo)

        \n
      • \n
      \n

      For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

      \n
      \n
    • \n
    \n

    For example, the following x-amz-grant-write header grants\n create, overwrite, and delete objects permission to LogDelivery group\n predefined by Amazon S3 and two Amazon Web Services accounts identified by their email\n addresses.

    \n

    \n x-amz-grant-write:\n uri=\"http://acs.amazonaws.com/groups/s3/LogDelivery\", id=\"111122223333\",\n id=\"555566667777\" \n

    \n
  • \n
\n

You can use either a canned ACL or specify access permissions explicitly. You\n cannot do both.

\n
\n
Grantee Values
\n
\n

You can specify the person (grantee) to whom you're assigning access rights\n (using request elements) in the following ways:

\n
    \n
  • \n

    By the person's ID:

    \n

    \n <>ID<><>GranteesEmail<>\n \n

    \n

    DisplayName is optional and ignored in the request

    \n
  • \n
  • \n

    By URI:

    \n

    \n <>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<>\n

    \n
  • \n
  • \n

    By Email address:

    \n

    \n <>Grantees@email.com<>&\n

    \n

    The grantee is resolved to the CanonicalUser and, in a response to a GET\n Object acl request, appears as the CanonicalUser.

    \n \n

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    \n
      \n
    • \n

      US East (N. Virginia)

      \n
    • \n
    • \n

      US West (N. California)

      \n
    • \n
    • \n

      US West (Oregon)

      \n
    • \n
    • \n

      Asia Pacific (Singapore)

      \n
    • \n
    • \n

      Asia Pacific (Sydney)

      \n
    • \n
    • \n

      Asia Pacific (Tokyo)

      \n
    • \n
    • \n

      Europe (Ireland)

      \n
    • \n
    • \n

      South America (São Paulo)

      \n
    • \n
    \n

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

    \n
    \n
  • \n
\n
\n
\n

The following operations are related to PutBucketAcl:

\n ", - "smithy.api#examples": [ - { - "title": "Put bucket acl", - "documentation": "The following example replaces existing ACL on a bucket. The ACL grants the bucket owner (specified using the owner ID) and write permission to the LogDelivery group. Because this is a replace operation, you must specify all the grants in your request. To incrementally add or remove ACL grants, you might use the console.", - "input": { - "Bucket": "examplebucket", - "GrantFullControl": "id=examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484", - "GrantWrite": "uri=http://acs.amazonaws.com/groups/s3/LogDelivery" - } - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?acl", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketAclRequest": { - "type": "structure", - "members": { - "ACL": { - "target": "com.amazonaws.s3#BucketCannedACL", - "traits": { - "smithy.api#documentation": "

The canned ACL to apply to the bucket.

", - "smithy.api#httpHeader": "x-amz-acl" - } - }, - "AccessControlPolicy": { - "target": "com.amazonaws.s3#AccessControlPolicy", - "traits": { - "smithy.api#documentation": "

Contains the elements that set the ACL permissions for an object per grantee.

", - "smithy.api#httpPayload": {}, - "smithy.api#xmlName": "AccessControlPolicy" - } - }, - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket to which to apply the ACL.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the data. This header must be used as a message\n integrity check to verify that the request body was not corrupted in transit. For more\n information, go to RFC\n 1864.\n

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "GrantFullControl": { - "target": "com.amazonaws.s3#GrantFullControl", - "traits": { - "smithy.api#documentation": "

Allows grantee the read, write, read ACP, and write ACP permissions on the\n bucket.

", - "smithy.api#httpHeader": "x-amz-grant-full-control" - } - }, - "GrantRead": { - "target": "com.amazonaws.s3#GrantRead", - "traits": { - "smithy.api#documentation": "

Allows grantee to list the objects in the bucket.

", - "smithy.api#httpHeader": "x-amz-grant-read" - } - }, - "GrantReadACP": { - "target": "com.amazonaws.s3#GrantReadACP", - "traits": { - "smithy.api#documentation": "

Allows grantee to read the bucket ACL.

", - "smithy.api#httpHeader": "x-amz-grant-read-acp" - } - }, - "GrantWrite": { - "target": "com.amazonaws.s3#GrantWrite", - "traits": { - "smithy.api#documentation": "

Allows grantee to create new objects in the bucket.

\n

For the bucket and object owners of existing objects, also allows deletions and\n overwrites of those objects.

", - "smithy.api#httpHeader": "x-amz-grant-write" - } - }, - "GrantWriteACP": { - "target": "com.amazonaws.s3#GrantWriteACP", - "traits": { - "smithy.api#documentation": "

Allows grantee to write the ACL for the applicable bucket.

", - "smithy.api#httpHeader": "x-amz-grant-write-acp" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutBucketAnalyticsConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketAnalyticsConfigurationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Sets an analytics configuration for the bucket (specified by the analytics configuration\n ID). You can have up to 1,000 analytics configurations per bucket.

\n

You can choose to have storage class analysis export analysis reports sent to a\n comma-separated values (CSV) flat file. See the DataExport request element.\n Reports are updated daily and are based on the object filters that you configure. When\n selecting data export, you specify a destination bucket and an optional destination prefix\n where the file is written. You can export the data to a destination bucket in a different\n account. However, the destination bucket must be in the same Region as the bucket that you\n are making the PUT analytics configuration to. For more information, see Amazon S3\n Analytics – Storage Class Analysis.

\n \n

You must create a bucket policy on the destination bucket where the exported file is\n written to grant permissions to Amazon S3 to write objects to the bucket. For an example\n policy, see Granting Permissions for Amazon S3 Inventory and Storage Class Analysis.

\n
\n

To use this operation, you must have permissions to perform the\n s3:PutAnalyticsConfiguration action. The bucket owner has this permission\n by default. The bucket owner can grant this permission to others. For more information\n about permissions, see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources.

\n

\n PutBucketAnalyticsConfiguration has the following special errors:

\n
    \n
  • \n
      \n
    • \n

      \n HTTP Error: HTTP 400 Bad Request\n

      \n
    • \n
    • \n

      \n Code: InvalidArgument\n

      \n
    • \n
    • \n

      \n Cause: Invalid argument.\n

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n HTTP Error: HTTP 400 Bad Request\n

      \n
    • \n
    • \n

      \n Code: TooManyConfigurations\n

      \n
    • \n
    • \n

      \n Cause: You are attempting to create a new configuration but have\n already reached the 1,000-configuration limit.\n

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n HTTP Error: HTTP 403 Forbidden\n

      \n
    • \n
    • \n

      \n Code: AccessDenied\n

      \n
    • \n
    • \n

      \n Cause: You are not the owner of the specified bucket, or you do\n not have the s3:PutAnalyticsConfiguration bucket permission to set the\n configuration on the bucket.\n

      \n
    • \n
    \n
  • \n
\n

The following operations are related to\n PutBucketAnalyticsConfiguration:

\n ", - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?analytics", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketAnalyticsConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket to which an analytics configuration is stored.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Id": { - "target": "com.amazonaws.s3#AnalyticsId", - "traits": { - "smithy.api#documentation": "

The ID that identifies the analytics configuration.

", - "smithy.api#httpQuery": "id", - "smithy.api#required": {} - } - }, - "AnalyticsConfiguration": { - "target": "com.amazonaws.s3#AnalyticsConfiguration", - "traits": { - "smithy.api#documentation": "

The configuration and any analyses for the analytics filter.

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "AnalyticsConfiguration" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutBucketCors": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketCorsRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Sets the cors configuration for your bucket. If the configuration exists,\n Amazon S3 replaces it.

\n

To use this operation, you must be allowed to perform the s3:PutBucketCORS\n action. By default, the bucket owner has this permission and can grant it to others.

\n

You set this configuration on a bucket so that the bucket can service cross-origin\n requests. For example, you might want to enable a request whose origin is\n http://www.example.com to access your Amazon S3 bucket at\n my.example.bucket.com by using the browser's XMLHttpRequest\n capability.

\n

To enable cross-origin resource sharing (CORS) on a bucket, you add the\n cors subresource to the bucket. The cors subresource is an XML\n document in which you configure rules that identify origins and the HTTP methods that can\n be executed on your bucket. The document is limited to 64 KB in size.

\n

When Amazon S3 receives a cross-origin request (or a pre-flight OPTIONS request) against a\n bucket, it evaluates the cors configuration on the bucket and uses the first\n CORSRule rule that matches the incoming browser request to enable a\n cross-origin request. For a rule to match, the following conditions must be met:

\n
    \n
  • \n

    The request's Origin header must match AllowedOrigin\n elements.

    \n
  • \n
  • \n

    The request method (for example, GET, PUT, HEAD, and so on) or the\n Access-Control-Request-Method header in case of a pre-flight\n OPTIONS request must be one of the AllowedMethod\n elements.

    \n
  • \n
  • \n

    Every header specified in the Access-Control-Request-Headers request\n header of a pre-flight request must match an AllowedHeader element.\n

    \n
  • \n
\n

For more information about CORS, go to Enabling Cross-Origin Resource Sharing in\n the Amazon S3 User Guide.

\n

The following operations are related to PutBucketCors:

\n ", - "smithy.api#examples": [ - { - "title": "To set cors configuration on a bucket.", - "documentation": "The following example enables PUT, POST, and DELETE requests from www.example.com, and enables GET requests from any domain.", + "REPLACE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REPLACE" + } + } + } + }, + "com.amazonaws.s3#TaggingHeader": { + "type": "string" + }, + "com.amazonaws.s3#TargetBucket": { + "type": "string" + }, + "com.amazonaws.s3#TargetGrant": { + "type": "structure", + "members": { + "Grantee": { + "target": "com.amazonaws.s3#Grantee", + "traits": { + "smithy.api#documentation": "

Container for the person being granted permissions.

", + "smithy.api#xmlNamespace": { + "uri": "http://www.w3.org/2001/XMLSchema-instance", + "prefix": "xsi" + } + } + }, + "Permission": { + "target": "com.amazonaws.s3#BucketLogsPermission", + "traits": { + "smithy.api#documentation": "

Logging permissions assigned to the grantee for the bucket.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for granting information.

\n

Buckets that use the bucket owner enforced setting for Object Ownership don't support target grants.\n For more information, see Permissions server access log delivery in the Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3#TargetGrants": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#TargetGrant", + "traits": { + "smithy.api#xmlName": "Grant" + } + } + }, + "com.amazonaws.s3#TargetObjectKeyFormat": { + "type": "structure", + "members": { + "SimplePrefix": { + "target": "com.amazonaws.s3#SimplePrefix", + "traits": { + "smithy.api#documentation": "

To use the simple format for S3 keys for log objects. To specify SimplePrefix format, set\n SimplePrefix to {}.

", + "smithy.api#xmlName": "SimplePrefix" + } + }, + "PartitionedPrefix": { + "target": "com.amazonaws.s3#PartitionedPrefix", + "traits": { + "smithy.api#documentation": "

Partitioned S3 key for log objects.

", + "smithy.api#xmlName": "PartitionedPrefix" + } + } + }, + "traits": { + "smithy.api#documentation": "

Amazon S3 key format for log objects. Only one format, PartitionedPrefix or SimplePrefix, is\n allowed.

" + } + }, + "com.amazonaws.s3#TargetPrefix": { + "type": "string" + }, + "com.amazonaws.s3#Tier": { + "type": "enum", + "members": { + "Standard": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Standard" + } + }, + "Bulk": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Bulk" + } + }, + "Expedited": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Expedited" + } + } + } + }, + "com.amazonaws.s3#Tiering": { + "type": "structure", + "members": { + "Days": { + "target": "com.amazonaws.s3#IntelligentTieringDays", + "traits": { + "smithy.api#documentation": "

The number of consecutive days of no access after which an object will be eligible to be\n transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier\n must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to\n 2 years (730 days).

", + "smithy.api#required": {} + } + }, + "AccessTier": { + "target": "com.amazonaws.s3#IntelligentTieringAccessTier", + "traits": { + "smithy.api#documentation": "

S3 Intelligent-Tiering access tier. See Storage class for\n automatically optimizing frequently and infrequently accessed objects for a list of access\n tiers in the S3 Intelligent-Tiering storage class.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically\n moving data to the most cost-effective storage access tier, without additional operational\n overhead.

" + } + }, + "com.amazonaws.s3#TieringList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#Tiering" + } + }, + "com.amazonaws.s3#Token": { + "type": "string" + }, + "com.amazonaws.s3#TooManyParts": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

You have attempted to add more parts than the maximum of 10000 that are allowed for this object.\n You can use the CopyObject operation to copy this object to another and then add more data to the newly\n copied object.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.s3#TopicArn": { + "type": "string" + }, + "com.amazonaws.s3#TopicConfiguration": { + "type": "structure", + "members": { + "Id": { + "target": "com.amazonaws.s3#NotificationId" + }, + "TopicArn": { + "target": "com.amazonaws.s3#TopicArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it\n detects events of the specified type.

", + "smithy.api#required": {}, + "smithy.api#xmlName": "Topic" + } + }, + "Events": { + "target": "com.amazonaws.s3#EventList", + "traits": { + "smithy.api#documentation": "

The Amazon S3 bucket event about which to send notifications. For more information, see Supported Event Types in\n the Amazon S3 User Guide.

", + "smithy.api#required": {}, + "smithy.api#xmlFlattened": {}, + "smithy.api#xmlName": "Event" + } + }, + "Filter": { + "target": "com.amazonaws.s3#NotificationConfigurationFilter" + } + }, + "traits": { + "smithy.api#documentation": "

A container for specifying the configuration for publication of messages to an Amazon Simple\n Notification Service (Amazon SNS) topic when Amazon S3 detects specified events.

" + } + }, + "com.amazonaws.s3#TopicConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#TopicConfiguration" + } + }, + "com.amazonaws.s3#Transition": { + "type": "structure", + "members": { + "Date": { + "target": "com.amazonaws.s3#Date", + "traits": { + "smithy.api#documentation": "

Indicates when objects are transitioned to the specified storage class. The date value must be in\n ISO 8601 format. The time is always midnight UTC.

" + } + }, + "Days": { + "target": "com.amazonaws.s3#Days", + "traits": { + "smithy.api#documentation": "

Indicates the number of days after creation when objects are transitioned to the specified storage\n class. If the specified storage class is INTELLIGENT_TIERING, GLACIER_IR,\n GLACIER, or DEEP_ARCHIVE, valid values are 0 or positive\n integers. If the specified storage class is STANDARD_IA or ONEZONE_IA, valid\n values are positive integers greater than 30. Be aware that some storage classes have a\n minimum storage duration and that you're charged for transitioning objects before their minimum storage\n duration. For more information, see Constraints and considerations for transitions in the Amazon S3 User\n Guide.

" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3#TransitionStorageClass", + "traits": { + "smithy.api#documentation": "

The storage class to which you want the object to transition.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies when an object transitions to a specified storage class. For more information about Amazon S3\n lifecycle configuration rules, see Transitioning Objects Using\n Amazon S3 Lifecycle in the Amazon S3 User Guide.

" + } + }, + "com.amazonaws.s3#TransitionDefaultMinimumObjectSize": { + "type": "enum", + "members": { + "varies_by_storage_class": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "varies_by_storage_class" + } + }, + "all_storage_classes_128K": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "all_storage_classes_128K" + } + } + } + }, + "com.amazonaws.s3#TransitionList": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#Transition" + } + }, + "com.amazonaws.s3#TransitionStorageClass": { + "type": "enum", + "members": { + "GLACIER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GLACIER" + } + }, + "STANDARD_IA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STANDARD_IA" + } + }, + "ONEZONE_IA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ONEZONE_IA" + } + }, + "INTELLIGENT_TIERING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INTELLIGENT_TIERING" + } + }, + "DEEP_ARCHIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DEEP_ARCHIVE" + } + }, + "GLACIER_IR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GLACIER_IR" + } + } + } + }, + "com.amazonaws.s3#Type": { + "type": "enum", + "members": { + "CanonicalUser": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CanonicalUser" + } + }, + "AmazonCustomerByEmail": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AmazonCustomerByEmail" + } + }, + "Group": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Group" + } + } + } + }, + "com.amazonaws.s3#URI": { + "type": "string" + }, + "com.amazonaws.s3#UpdateBucketMetadataInventoryTableConfiguration": { + "type": "operation", "input": { - "Bucket": "", - "CORSConfiguration": { - "CORSRules": [ - { - "AllowedOrigins": ["http://www.example.com"], - "AllowedHeaders": ["*"], - "AllowedMethods": ["PUT", "POST", "DELETE"], - "MaxAgeSeconds": 3000, - "ExposeHeaders": ["x-amz-server-side-encryption"] - }, - { - "AllowedOrigins": ["*"], - "AllowedHeaders": ["Authorization"], - "AllowedMethods": ["GET"], - "MaxAgeSeconds": 3000 - } - ] - }, - "ContentMD5": "" - } - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?cors", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketCorsRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

Specifies the bucket impacted by the corsconfiguration.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "CORSConfiguration": { - "target": "com.amazonaws.s3#CORSConfiguration", - "traits": { - "smithy.api#documentation": "

Describes the cross-origin access configuration for objects in an Amazon S3 bucket. For more\n information, see Enabling\n Cross-Origin Resource Sharing in the\n Amazon S3 User Guide.

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "CORSConfiguration" - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the data. This header must be used as a message\n integrity check to verify that the request body was not corrupted in transit. For more\n information, go to RFC\n 1864.\n

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutBucketEncryption": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketEncryptionRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "

This operation configures default encryption and Amazon S3 Bucket Keys for an existing\n bucket.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

\n
\n

By default, all buckets have a default encryption configuration that uses server-side\n encryption with Amazon S3 managed keys (SSE-S3).

\n \n
    \n
  • \n

    \n General purpose buckets\n

    \n
      \n
    • \n

      You can optionally configure default encryption for a bucket by using\n server-side encryption with Key Management Service (KMS) keys (SSE-KMS) or dual-layer\n server-side encryption with Amazon Web Services KMS keys (DSSE-KMS). If you specify\n default encryption by using SSE-KMS, you can also configure Amazon S3\n Bucket Keys. For information about the bucket default encryption\n feature, see Amazon S3 Bucket Default\n Encryption in the Amazon S3 User Guide.

      \n
    • \n
    • \n

      If you use PutBucketEncryption to set your default bucket\n encryption to SSE-KMS, you should verify that your KMS key ID\n is correct. Amazon S3 doesn't validate the KMS key ID provided in\n PutBucketEncryption requests.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory buckets - You can\n optionally configure default encryption for a bucket by using server-side\n encryption with Key Management Service (KMS) keys (SSE-KMS).

    \n
      \n
    • \n

      We recommend that the bucket's default encryption uses the desired\n encryption configuration and you don't override the bucket default\n encryption in your CreateSession requests or PUT\n object requests. Then, new objects are automatically encrypted with the\n desired encryption settings.\n For more information about the encryption overriding behaviors in directory buckets, see Specifying server-side encryption with KMS for new object uploads.

      \n
    • \n
    • \n

      Your SSE-KMS configuration can only support 1 customer managed key per directory bucket for the lifetime of the bucket. \nThe Amazon Web Services managed key (aws/s3) isn't supported. \n

      \n
    • \n
    • \n

      S3 Bucket Keys are always enabled for GET and PUT operations in a directory bucket and can’t be disabled. S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets \nto directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through CopyObject, UploadPartCopy, the Copy operation in Batch Operations, or \n the import jobs. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.

      \n
    • \n
    • \n

      When you specify an KMS customer managed key for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported.

      \n
    • \n
    • \n

      For directory buckets, if you use PutBucketEncryption to set your default bucket encryption to SSE-KMS, Amazon S3 validates the\n KMS key ID provided in PutBucketEncryption requests.

      \n
    • \n
    \n
  • \n
\n
\n \n

If you're specifying a customer managed KMS key, we recommend using a fully\n qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves the\n key within the requester’s account. This behavior can result in data that's encrypted\n with a KMS key that belongs to the requester, and not the bucket owner.

\n

Also, this action requires Amazon Web Services Signature Version 4. For more information, see\n Authenticating\n Requests (Amazon Web Services Signature Version 4).

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The\n s3:PutEncryptionConfiguration permission is required in a\n policy. The bucket owner has this permission by default. The bucket owner\n can grant this permission to others. For more information about permissions,\n see Permissions Related to Bucket Operations and Managing Access\n Permissions to Your Amazon S3 Resources in the\n Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions -\n To grant access to this API operation, you must have the\n s3express:PutEncryptionConfiguration permission in\n an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.\n For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

    \n

    To set a directory bucket default encryption with SSE-KMS, you must also\n have the kms:GenerateDataKey and the kms:Decrypt\n permissions in IAM identity-based policies and KMS key policies for the\n target KMS key.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to PutBucketEncryption:

\n ", - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?encryption", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketEncryptionRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

Specifies default encryption for a bucket using server-side encryption with different\n key options.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must also follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide\n

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the server-side encryption\n configuration.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

\n \n

For directory buckets, when you use Amazon Web Services SDKs, CRC32 is the default checksum algorithm that's used for performance.

\n
", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "ServerSideEncryptionConfiguration": { - "target": "com.amazonaws.s3#ServerSideEncryptionConfiguration", - "traits": { - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "ServerSideEncryptionConfiguration" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code \n501 Not Implemented.

\n
", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutBucketIntelligentTieringConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketIntelligentTieringConfigurationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Puts a S3 Intelligent-Tiering configuration to the specified bucket. You can have up to\n 1,000 S3 Intelligent-Tiering configurations per bucket.

\n

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.

\n

The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.

\n

For more information, see Storage class for automatically optimizing frequently and infrequently accessed objects.

\n

Operations related to PutBucketIntelligentTieringConfiguration include:

\n \n \n

You only need S3 Intelligent-Tiering enabled on a bucket if you want to automatically\n move objects stored in the S3 Intelligent-Tiering storage class to the Archive Access\n or Deep Archive Access tier.

\n
\n

\n PutBucketIntelligentTieringConfiguration has the following special\n errors:

\n
\n
HTTP 400 Bad Request Error
\n
\n

\n Code: InvalidArgument

\n

\n Cause: Invalid Argument

\n
\n
HTTP 400 Bad Request Error
\n
\n

\n Code: TooManyConfigurations

\n

\n Cause: You are attempting to create a new configuration\n but have already reached the 1,000-configuration limit.

\n
\n
HTTP 403 Forbidden Error
\n
\n

\n Cause: You are not the owner of the specified bucket, or\n you do not have the s3:PutIntelligentTieringConfiguration bucket\n permission to set the configuration on the bucket.

\n
\n
", - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?intelligent-tiering", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketIntelligentTieringConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the Amazon S3 bucket whose configuration you want to modify or retrieve.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Id": { - "target": "com.amazonaws.s3#IntelligentTieringId", - "traits": { - "smithy.api#documentation": "

The ID used to identify the S3 Intelligent-Tiering configuration.

", - "smithy.api#httpQuery": "id", - "smithy.api#required": {} - } - }, - "IntelligentTieringConfiguration": { - "target": "com.amazonaws.s3#IntelligentTieringConfiguration", - "traits": { - "smithy.api#documentation": "

Container for S3 Intelligent-Tiering configuration.

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "IntelligentTieringConfiguration" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutBucketInventoryConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketInventoryConfigurationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

This implementation of the PUT action adds an inventory configuration\n (identified by the inventory ID) to the bucket. You can have up to 1,000 inventory\n configurations per bucket.

\n

Amazon S3 inventory generates inventories of the objects in the bucket on a daily or weekly\n basis, and the results are published to a flat file. The bucket that is inventoried is\n called the source bucket, and the bucket where the inventory flat file\n is stored is called the destination bucket. The\n destination bucket must be in the same Amazon Web Services Region as the\n source bucket.

\n

When you configure an inventory for a source bucket, you specify\n the destination bucket where you want the inventory to be stored, and\n whether to generate the inventory daily or weekly. You can also configure what object\n metadata to include and whether to inventory all object versions or only current versions.\n For more information, see Amazon S3 Inventory in the\n Amazon S3 User Guide.

\n \n

You must create a bucket policy on the destination bucket to\n grant permissions to Amazon S3 to write objects to the bucket in the defined location. For an\n example policy, see Granting Permissions for Amazon S3 Inventory and Storage Class Analysis.

\n
\n
\n
Permissions
\n
\n

To use this operation, you must have permission to perform the\n s3:PutInventoryConfiguration action. The bucket owner has this\n permission by default and can grant this permission to others.

\n

The s3:PutInventoryConfiguration permission allows a user to\n create an S3 Inventory\n report that includes all object metadata fields available and to specify the\n destination bucket to store the inventory. A user with read access to objects in\n the destination bucket can also access all object metadata fields that are\n available in the inventory report.

\n

To restrict access to an inventory report, see Restricting access to an Amazon S3 Inventory report in the\n Amazon S3 User Guide. For more information about the metadata\n fields available in S3 Inventory, see Amazon S3 Inventory lists in the Amazon S3 User Guide. For\n more information about permissions, see Permissions related to bucket subresource operations and Identity and access management in Amazon S3 in the\n Amazon S3 User Guide.

\n
\n
\n

\n PutBucketInventoryConfiguration has the following special errors:

\n
\n
HTTP 400 Bad Request Error
\n
\n

\n Code: InvalidArgument

\n

\n Cause: Invalid Argument

\n
\n
HTTP 400 Bad Request Error
\n
\n

\n Code: TooManyConfigurations

\n

\n Cause: You are attempting to create a new configuration\n but have already reached the 1,000-configuration limit.

\n
\n
HTTP 403 Forbidden Error
\n
\n

\n Cause: You are not the owner of the specified bucket, or\n you do not have the s3:PutInventoryConfiguration bucket permission to\n set the configuration on the bucket.

\n
\n
\n

The following operations are related to\n PutBucketInventoryConfiguration:

\n ", - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?inventory", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketInventoryConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket where the inventory configuration will be stored.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Id": { - "target": "com.amazonaws.s3#InventoryId", - "traits": { - "smithy.api#documentation": "

The ID used to identify the inventory configuration.

", - "smithy.api#httpQuery": "id", - "smithy.api#required": {} - } - }, - "InventoryConfiguration": { - "target": "com.amazonaws.s3#InventoryConfiguration", - "traits": { - "smithy.api#documentation": "

Specifies the inventory configuration.

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "InventoryConfiguration" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutBucketLifecycleConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketLifecycleConfigurationRequest" - }, - "output": { - "target": "com.amazonaws.s3#PutBucketLifecycleConfigurationOutput" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "

Creates a new lifecycle configuration for the bucket or replaces an existing lifecycle\n configuration. Keep in mind that this will overwrite an existing lifecycle configuration,\n so if you want to retain any configuration details, they must be included in the new\n lifecycle configuration. For information about lifecycle configuration, see Managing\n your storage lifecycle.

\n \n

Bucket lifecycle configuration now supports specifying a lifecycle rule using an object key name prefix, one or more object tags, object size, or any combination of these. Accordingly, this section describes the latest API. The previous version of the API supported filtering based only on an object key name prefix, which is supported for backward compatibility.\n For the related API description, see PutBucketLifecycle.

\n
\n
\n
Rules
\n
Permissions
\n
HTTP Host header syntax
\n
\n

You specify the lifecycle configuration in your request body. The lifecycle\n configuration is specified as XML consisting of one or more rules. An Amazon S3\n Lifecycle configuration can have up to 1,000 rules. This limit is not\n adjustable.

\n

Bucket lifecycle configuration supports specifying a lifecycle rule using an\n object key name prefix, one or more object tags, object size, or any combination\n of these. Accordingly, this section describes the latest API. The previous version\n of the API supported filtering based only on an object key name prefix, which is\n supported for backward compatibility for general purpose buckets. For the related\n API description, see PutBucketLifecycle.

\n \n

Lifecyle configurations for directory buckets only support expiring objects and\n cancelling multipart uploads. Expiring of versioned objects,transitions and tag\n filters are not supported.

\n
\n

A lifecycle rule consists of the following:

\n
    \n
  • \n

    A filter identifying a subset of objects to which the rule applies. The\n filter can be based on a key name prefix, object tags, object size, or any\n combination of these.

    \n
  • \n
  • \n

    A status indicating whether the rule is in effect.

    \n
  • \n
  • \n

    One or more lifecycle transition and expiration actions that you want\n Amazon S3 to perform on the objects identified by the filter. If the state of\n your bucket is versioning-enabled or versioning-suspended, you can have many\n versions of the same object (one current version and zero or more noncurrent\n versions). Amazon S3 provides predefined actions that you can specify for current\n and noncurrent object versions.

    \n
  • \n
\n

For more information, see Object Lifecycle\n Management and Lifecycle Configuration\n Elements.

\n
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - By\n default, all Amazon S3 resources are private, including buckets, objects, and\n related subresources (for example, lifecycle configuration and website\n configuration). Only the resource owner (that is, the Amazon Web Services account that\n created it) can access the resource. The resource owner can optionally grant\n access permissions to others by writing an access policy. For this\n operation, a user must have the s3:PutLifecycleConfiguration\n permission.

    \n

    You can also explicitly deny permissions. An explicit deny also\n supersedes any other permissions. If you want to block users or accounts\n from removing or deleting objects from your bucket, you must deny them\n permissions for the following actions:

    \n \n
  • \n
\n
    \n
  • \n

    \n Directory bucket permissions -\n You must have the s3express:PutLifecycleConfiguration\n permission in an IAM identity-based policy to use this operation.\n Cross-account access to this API operation isn't supported. The resource\n owner can optionally grant access permissions to others by creating a role\n or user for them as long as they are within the same account as the owner\n and resource.

    \n

    For more information about directory bucket policies and permissions, see\n Authorizing Regional endpoint APIs with IAM in the\n Amazon S3 User Guide.

    \n \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

    \n
    \n
  • \n
\n
\n
\n

\n Directory buckets - The HTTP Host\n header syntax is\n s3express-control.region.amazonaws.com.

\n

The following operations are related to\n PutBucketLifecycleConfiguration:

\n \n
\n
", - "smithy.api#examples": [ - { - "title": "Put bucket lifecycle", - "documentation": "The following example replaces existing lifecycle configuration, if any, on the specified bucket. ", + "target": "com.amazonaws.s3#UpdateBucketMetadataInventoryTableConfigurationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "

Enables or disables a live inventory table for an S3 Metadata configuration on a general \n purpose bucket. For more information, see\n Accelerating\n data discovery with S3 Metadata in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

To use this operation, you must have the following permissions. For more information, see\n Setting up permissions for configuring metadata tables in the\n Amazon S3 User Guide.

\n

If you want to encrypt your inventory table with server-side encryption with Key Management Service\n (KMS) keys (SSE-KMS), you need additional permissions in your KMS key policy. For more\n information, see \n Setting up permissions for configuring metadata tables in the\n Amazon S3 User Guide.

\n
    \n
  • \n

    \n s3:UpdateBucketMetadataInventoryTableConfiguration\n

    \n
  • \n
  • \n

    \n s3tables:CreateTableBucket\n

    \n
  • \n
  • \n

    \n s3tables:CreateNamespace\n

    \n
  • \n
  • \n

    \n s3tables:GetTable\n

    \n
  • \n
  • \n

    \n s3tables:CreateTable\n

    \n
  • \n
  • \n

    \n s3tables:PutTablePolicy\n

    \n
  • \n
  • \n

    \n s3tables:PutTableEncryption\n

    \n
  • \n
  • \n

    \n kms:DescribeKey\n

    \n
  • \n
\n
\n
\n

The following operations are related to UpdateBucketMetadataInventoryTableConfiguration:

\n ", + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?metadataInventoryTable", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#UpdateBucketMetadataInventoryTableConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

\n The general purpose bucket that corresponds to the metadata configuration that you want to \n enable or disable an inventory table for.\n

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

\n The Content-MD5 header for the inventory table configuration.\n

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

\n The checksum algorithm to use with your inventory table configuration.\n

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "InventoryTableConfiguration": { + "target": "com.amazonaws.s3#InventoryTableConfigurationUpdates", + "traits": { + "smithy.api#documentation": "

\n The contents of your inventory table configuration. \n

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "InventoryTableConfiguration" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

\n The expected owner of the general purpose bucket that corresponds to the metadata table \n configuration that you want to enable or disable an inventory table for.\n

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#UpdateBucketMetadataJournalTableConfiguration": { + "type": "operation", "input": { - "Bucket": "examplebucket", - "LifecycleConfiguration": { - "Rules": [ - { - "Filter": { - "Prefix": "documents/" - }, - "Status": "Enabled", - "Transitions": [ - { - "Days": 365, - "StorageClass": "GLACIER" - } - ], - "Expiration": { - "Days": 3650 - }, - "ID": "TestOnly" - } - ] - } - } - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?lifecycle", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketLifecycleConfigurationOutput": { - "type": "structure", - "members": { - "TransitionDefaultMinimumObjectSize": { - "target": "com.amazonaws.s3#TransitionDefaultMinimumObjectSize", - "traits": { - "smithy.api#documentation": "

Indicates which default minimum object size behavior is applied to the lifecycle\n configuration.

\n \n

This parameter applies to general purpose buckets only. It is not supported for\n directory bucket lifecycle configurations.

\n
\n
    \n
  • \n

    \n all_storage_classes_128K - Objects smaller than 128 KB will not\n transition to any storage class by default.

    \n
  • \n
  • \n

    \n varies_by_storage_class - Objects smaller than 128 KB will\n transition to Glacier Flexible Retrieval or Glacier Deep Archive storage classes. By\n default, all other storage classes will prevent transitions smaller than 128 KB.\n

    \n
  • \n
\n

To customize the minimum object size for any transition you can add a filter that\n specifies a custom ObjectSizeGreaterThan or ObjectSizeLessThan in\n the body of your transition rule. Custom filters always take precedence over the default\n transition behavior.

", - "smithy.api#httpHeader": "x-amz-transition-default-minimum-object-size" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#PutBucketLifecycleConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket for which to set the configuration.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "LifecycleConfiguration": { - "target": "com.amazonaws.s3#BucketLifecycleConfiguration", - "traits": { - "smithy.api#documentation": "

Container for lifecycle rules. You can add as many as 1,000 rules.

", - "smithy.api#httpPayload": {}, - "smithy.api#xmlName": "LifecycleConfiguration" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

This parameter applies to general purpose buckets only. It is not supported for\n directory bucket lifecycle configurations.

\n
", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "TransitionDefaultMinimumObjectSize": { - "target": "com.amazonaws.s3#TransitionDefaultMinimumObjectSize", - "traits": { - "smithy.api#documentation": "

Indicates which default minimum object size behavior is applied to the lifecycle\n configuration.

\n \n

This parameter applies to general purpose buckets only. It is not supported for\n directory bucket lifecycle configurations.

\n
\n
    \n
  • \n

    \n all_storage_classes_128K - Objects smaller than 128 KB will not\n transition to any storage class by default.

    \n
  • \n
  • \n

    \n varies_by_storage_class - Objects smaller than 128 KB will\n transition to Glacier Flexible Retrieval or Glacier Deep Archive storage classes. By\n default, all other storage classes will prevent transitions smaller than 128 KB.\n

    \n
  • \n
\n

To customize the minimum object size for any transition you can add a filter that\n specifies a custom ObjectSizeGreaterThan or ObjectSizeLessThan in\n the body of your transition rule. Custom filters always take precedence over the default\n transition behavior.

", - "smithy.api#httpHeader": "x-amz-transition-default-minimum-object-size" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutBucketLogging": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketLoggingRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Set the logging parameters for a bucket and to specify permissions for who can view and\n modify the logging parameters. All logs are saved to buckets in the same Amazon Web Services Region as\n the source bucket. To set the logging status of a bucket, you must be the bucket\n owner.

\n

The bucket owner is automatically granted FULL_CONTROL to all logs. You use the\n Grantee request element to grant access to other people. The\n Permissions request element specifies the kind of access the grantee has to\n the logs.

\n \n

If the target bucket for log delivery uses the bucket owner enforced setting for S3\n Object Ownership, you can't use the Grantee request element to grant access\n to others. Permissions can only be granted using policies. For more information, see\n Permissions for server access log delivery in the\n Amazon S3 User Guide.

\n
\n
\n
Grantee Values
\n
\n

You can specify the person (grantee) to whom you're assigning access rights (by\n using request elements) in the following ways:

\n
    \n
  • \n

    By the person's ID:

    \n

    \n <>ID<><>GranteesEmail<>\n \n

    \n

    \n DisplayName is optional and ignored in the request.

    \n
  • \n
  • \n

    By Email address:

    \n

    \n <>Grantees@email.com<>\n

    \n

    The grantee is resolved to the CanonicalUser and, in a\n response to a GETObjectAcl request, appears as the\n CanonicalUser.

    \n
  • \n
  • \n

    By URI:

    \n

    \n <>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<>\n

    \n
  • \n
\n
\n
\n

To enable logging, you use LoggingEnabled and its children request\n elements. To disable logging, you use an empty BucketLoggingStatus request\n element:

\n

\n \n

\n

For more information about server access logging, see Server Access Logging in the\n Amazon S3 User Guide.

\n

For more information about creating a bucket, see CreateBucket. For more\n information about returning the logging status of a bucket, see GetBucketLogging.

\n

The following operations are related to PutBucketLogging:

\n ", - "smithy.api#examples": [ - { - "title": "Set logging configuration for a bucket", - "documentation": "The following example sets logging policy on a bucket. For the Log Delivery group to deliver logs to the destination bucket, it needs permission for the READ_ACP action which the policy grants.", + "target": "com.amazonaws.s3#UpdateBucketMetadataJournalTableConfigurationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm", + "requestChecksumRequired": true + }, + "smithy.api#documentation": "

Enables or disables journal table record expiration for an S3 Metadata configuration on a general \n purpose bucket. For more information, see\n Accelerating\n data discovery with S3 Metadata in the Amazon S3 User Guide.

\n
\n
Permissions
\n
\n

To use this operation, you must have the s3:UpdateBucketMetadataJournalTableConfiguration\n permission. For more information, see Setting up permissions for\n configuring metadata tables in the Amazon S3 User Guide.

\n
\n
\n

The following operations are related to UpdateBucketMetadataJournalTableConfiguration:

\n ", + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}?metadataJournalTable", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseS3ExpressControlEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#UpdateBucketMetadataJournalTableConfigurationRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

\n The general purpose bucket that corresponds to the metadata configuration that you want to \n enable or disable journal table record expiration for.\n

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

\n The Content-MD5 header for the journal table configuration.\n

", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

\n The checksum algorithm to use with your journal table configuration.\n

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "JournalTableConfiguration": { + "target": "com.amazonaws.s3#JournalTableConfigurationUpdates", + "traits": { + "smithy.api#documentation": "

\n The contents of your journal table configuration.\n

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {}, + "smithy.api#xmlName": "JournalTableConfiguration" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

\n The expected owner of the general purpose bucket that corresponds to the metadata table \n configuration that you want to enable or disable journal table record expiration for. \n

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#UploadIdMarker": { + "type": "string" + }, + "com.amazonaws.s3#UploadPart": { + "type": "operation", "input": { - "Bucket": "sourcebucket", - "BucketLoggingStatus": { - "LoggingEnabled": { - "TargetBucket": "targetbucket", - "TargetPrefix": "MyBucketLogs/", - "TargetGrants": [ + "target": "com.amazonaws.s3#UploadPartRequest" + }, + "output": { + "target": "com.amazonaws.s3#UploadPartOutput" + }, + "traits": { + "aws.protocols#httpChecksum": { + "requestAlgorithmMember": "ChecksumAlgorithm" + }, + "smithy.api#documentation": "

Uploads a part in a multipart upload.

\n \n

In this operation, you provide new data as a part of an object in your request. However, you have\n an option to specify your existing Amazon S3 object as a data source for the part you are uploading. To\n upload a part from an existing object, you use the UploadPartCopy operation.

\n
\n

You must initiate a multipart upload (see CreateMultipartUpload) before you can\n upload any part. In response to your initiate request, Amazon S3 returns an upload ID, a unique identifier\n that you must include in your upload part request.

\n

Part numbers can be any number from 1 to 10,000, inclusive. A part number uniquely identifies a part\n and also defines its position within the object being created. If you upload a new part using the same\n part number that was used with a previous part, the previously uploaded part is overwritten.

\n

For information about maximum and minimum part sizes and other multipart upload specifications, see\n Multipart upload\n limits in the Amazon S3 User Guide.

\n \n

After you initiate multipart upload and upload one or more parts, you must either complete or\n abort multipart upload in order to stop getting charged for storage of the uploaded parts. Only after\n you either complete or abort multipart upload, Amazon S3 frees up the parts storage and stops charging you\n for the parts storage.

\n
\n

For more information on multipart uploads, go to Multipart Upload Overview in the\n Amazon S3 User Guide .

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - To perform a\n multipart upload with encryption using an Key Management Service key, the requester must have permission to\n the kms:Decrypt and kms:GenerateDataKey actions on the key. The\n requester must also have permissions for the kms:GenerateDataKey action for the\n CreateMultipartUpload API. Then, the requester needs permissions for the\n kms:Decrypt action on the UploadPart and\n UploadPartCopy APIs.

    \n

    These permissions are required because Amazon S3 must decrypt and read data from the encrypted\n file parts before it completes the multipart upload. For more information about KMS\n permissions, see Protecting data using server-side\n encryption with KMS in the Amazon S3 User Guide. For information\n about the permissions required to use the multipart upload API, see Multipart upload and\n permissions and Multipart upload API and\n permissions in the Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n

    If the object is encrypted with SSE-KMS, you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions in IAM\n identity-based policies and KMS key policies for the KMS key.

    \n
  • \n
\n
\n
Data integrity
\n
\n

\n General purpose bucket - To ensure that data is not corrupted\n traversing the network, specify the Content-MD5 header in the upload part request.\n Amazon S3 checks the part data against the provided MD5 value. If they do not match, Amazon S3 returns an\n error. If the upload request is signed with Signature Version 4, then Amazon Web Services S3 uses the\n x-amz-content-sha256 header as a checksum instead of Content-MD5. For\n more information see Authenticating Requests:\n Using the Authorization Header (Amazon Web Services Signature Version 4).

\n \n

\n Directory buckets - MD5 is not supported by directory buckets. You can use checksum algorithms to check object integrity.

\n
\n
\n
Encryption
\n
\n
    \n
  • \n

    \n General purpose bucket - Server-side encryption is for\n data encryption at rest. Amazon S3 encrypts your data as it writes it to disks in its data centers\n and decrypts it when you access it. You have mutually exclusive options to protect data using\n server-side encryption in Amazon S3, depending on how you choose to manage the encryption keys.\n Specifically, the encryption key options are Amazon S3 managed keys (SSE-S3), Amazon Web Services KMS keys\n (SSE-KMS), and Customer-Provided Keys (SSE-C). Amazon S3 encrypts data with server-side encryption\n using Amazon S3 managed keys (SSE-S3) by default. You can optionally tell Amazon S3 to encrypt data at\n rest using server-side encryption with other key options. The option you use depends on\n whether you want to use KMS keys (SSE-KMS) or provide your own encryption key\n (SSE-C).

    \n

    Server-side encryption is supported by the S3 Multipart Upload operations. Unless you are\n using a customer-provided encryption key (SSE-C), you don't need to specify the encryption\n parameters in each UploadPart request. Instead, you only need to specify the server-side\n encryption parameters in the initial Initiate Multipart request. For more information, see\n CreateMultipartUpload.

    \n

    If you request server-side encryption using a customer-provided encryption key (SSE-C) in\n your initiate multipart upload request, you must provide identical encryption information in\n each part upload using the following request headers.

    \n
      \n
    • \n

      x-amz-server-side-encryption-customer-algorithm

      \n
    • \n
    • \n

      x-amz-server-side-encryption-customer-key

      \n
    • \n
    • \n

      x-amz-server-side-encryption-customer-key-MD5

      \n
    • \n
    \n

    For more information, see Using Server-Side\n Encryption in the Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory buckets -\n For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms).

    \n
  • \n
\n
\n
Special errors
\n
\n
    \n
  • \n

    Error Code: NoSuchUpload\n

    \n
      \n
    • \n

      Description: The specified multipart upload does not exist. The upload ID might be\n invalid, or the multipart upload might have been aborted or completed.

      \n
    • \n
    • \n

      HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to UploadPart:

\n ", + "smithy.api#examples": [ { - "Grantee": { - "Type": "Group", - "URI": "http://acs.amazonaws.com/groups/global/AllUsers" - }, - "Permission": "READ" - } - ] - } - } - } - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?logging", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketLoggingRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket for which to set the logging parameters.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "BucketLoggingStatus": { - "target": "com.amazonaws.s3#BucketLoggingStatus", - "traits": { - "smithy.api#documentation": "

Container for logging status information.

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "BucketLoggingStatus" - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The MD5 hash of the PutBucketLogging request body.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutBucketMetricsConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketMetricsConfigurationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Sets a metrics configuration (specified by the metrics configuration ID) for the bucket.\n You can have up to 1,000 metrics configurations per bucket. If you're updating an existing\n metrics configuration, note that this is a full replacement of the existing metrics\n configuration. If you don't include the elements you want to keep, they are erased.

\n

To use this operation, you must have permissions to perform the\n s3:PutMetricsConfiguration action. The bucket owner has this permission by\n default. The bucket owner can grant this permission to others. For more information about\n permissions, see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources.

\n

For information about CloudWatch request metrics for Amazon S3, see Monitoring\n Metrics with Amazon CloudWatch.

\n

The following operations are related to\n PutBucketMetricsConfiguration:

\n \n

\n PutBucketMetricsConfiguration has the following special error:

\n
    \n
  • \n

    Error code: TooManyConfigurations\n

    \n
      \n
    • \n

      Description: You are attempting to create a new configuration but have\n already reached the 1,000-configuration limit.

      \n
    • \n
    • \n

      HTTP Status Code: HTTP 400 Bad Request

      \n
    • \n
    \n
  • \n
", - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?metrics", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketMetricsConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket for which the metrics configuration is set.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Id": { - "target": "com.amazonaws.s3#MetricsId", - "traits": { - "smithy.api#documentation": "

The ID used to identify the metrics configuration. The ID has a 64 character limit and\n can only contain letters, numbers, periods, dashes, and underscores.

", - "smithy.api#httpQuery": "id", - "smithy.api#required": {} - } - }, - "MetricsConfiguration": { - "target": "com.amazonaws.s3#MetricsConfiguration", - "traits": { - "smithy.api#documentation": "

Specifies the metrics configuration.

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "MetricsConfiguration" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutBucketNotificationConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketNotificationConfigurationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Enables notifications of specified events for a bucket. For more information about event\n notifications, see Configuring Event\n Notifications.

\n

Using this API, you can replace an existing notification configuration. The\n configuration is an XML file that defines the event types that you want Amazon S3 to publish and\n the destination where you want Amazon S3 to publish an event notification when it detects an\n event of the specified type.

\n

By default, your bucket has no event notifications configured. That is, the notification\n configuration will be an empty NotificationConfiguration.

\n

\n \n

\n

\n \n

\n

This action replaces the existing notification configuration with the configuration you\n include in the request body.

\n

After Amazon S3 receives this request, it first verifies that any Amazon Simple Notification\n Service (Amazon SNS) or Amazon Simple Queue Service (Amazon SQS) destination exists, and\n that the bucket owner has permission to publish to it by sending a test notification. In\n the case of Lambda destinations, Amazon S3 verifies that the Lambda function permissions\n grant Amazon S3 permission to invoke the function from the Amazon S3 bucket. For more information,\n see Configuring Notifications for Amazon S3 Events.

\n

You can disable notifications by adding the empty NotificationConfiguration\n element.

\n

For more information about the number of event notification configurations that you can\n create per bucket, see Amazon S3 service quotas in Amazon Web Services\n General Reference.

\n

By default, only the bucket owner can configure notifications on a bucket. However,\n bucket owners can use a bucket policy to grant permission to other users to set this\n configuration with the required s3:PutBucketNotification permission.

\n \n

The PUT notification is an atomic operation. For example, suppose your notification\n configuration includes SNS topic, SQS queue, and Lambda function configurations. When\n you send a PUT request with this configuration, Amazon S3 sends test messages to your SNS\n topic. If the message fails, the entire PUT action will fail, and Amazon S3 will not add the\n configuration to your bucket.

\n
\n

If the configuration in the request body includes only one\n TopicConfiguration specifying only the\n s3:ReducedRedundancyLostObject event type, the response will also include\n the x-amz-sns-test-message-id header containing the message ID of the test\n notification sent to the topic.

\n

The following action is related to\n PutBucketNotificationConfiguration:

\n ", - "smithy.api#examples": [ - { - "title": "Set notification configuration for a bucket", - "documentation": "The following example sets notification configuration on a bucket to publish the object created events to an SNS topic.", - "input": { - "Bucket": "examplebucket", - "NotificationConfiguration": { - "TopicConfigurations": [ - { - "TopicArn": "arn:aws:sns:us-west-2:123456789012:s3-notification-topic", - "Events": ["s3:ObjectCreated:*"] - } - ] - } - } - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?notification", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketNotificationConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "NotificationConfiguration": { - "target": "com.amazonaws.s3#NotificationConfiguration", - "traits": { - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "NotificationConfiguration" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "SkipDestinationValidation": { - "target": "com.amazonaws.s3#SkipValidation", - "traits": { - "smithy.api#documentation": "

Skips validation of Amazon SQS, Amazon SNS, and Lambda\n destinations. True or false value.

", - "smithy.api#httpHeader": "x-amz-skip-destination-validation" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutBucketOwnershipControls": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketOwnershipControlsRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestChecksumRequired": true - }, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Creates or modifies OwnershipControls for an Amazon S3 bucket. To use this\n operation, you must have the s3:PutBucketOwnershipControls permission. For\n more information about Amazon S3 permissions, see Specifying permissions in a\n policy.

\n

For information about Amazon S3 Object Ownership, see Using object\n ownership.

\n

The following operations are related to PutBucketOwnershipControls:

\n ", - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?ownershipControls", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketOwnershipControlsRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the Amazon S3 bucket whose OwnershipControls you want to set.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The MD5 hash of the OwnershipControls request body.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "OwnershipControls": { - "target": "com.amazonaws.s3#OwnershipControls", - "traits": { - "smithy.api#documentation": "

The OwnershipControls (BucketOwnerEnforced, BucketOwnerPreferred, or\n ObjectWriter) that you want to apply to this Amazon S3 bucket.

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "OwnershipControls" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutBucketPolicy": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketPolicyRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "

Applies an Amazon S3 bucket policy to an Amazon S3 bucket.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n

If you are using an identity other than the root user of the Amazon Web Services account that\n owns the bucket, the calling identity must both have the\n PutBucketPolicy permissions on the specified bucket and belong to\n the bucket owner's account in order to use this operation.

\n

If you don't have PutBucketPolicy permissions, Amazon S3 returns a\n 403 Access Denied error. If you have the correct permissions, but\n you're not using an identity that belongs to the bucket owner's account, Amazon S3\n returns a 405 Method Not Allowed error.

\n \n

To ensure that bucket owners don't inadvertently lock themselves out of\n their own buckets, the root principal in a bucket owner's Amazon Web Services account can\n perform the GetBucketPolicy, PutBucketPolicy, and\n DeleteBucketPolicy API actions, even if their bucket policy\n explicitly denies the root principal's access. Bucket owner root principals can\n only be blocked from performing these API actions by VPC endpoint policies and\n Amazon Web Services Organizations policies.

\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The\n s3:PutBucketPolicy permission is required in a policy. For\n more information about general purpose buckets bucket policies, see Using Bucket Policies and User Policies in the\n Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions -\n To grant access to this API operation, you must have the\n s3express:PutBucketPolicy permission in\n an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource.\n For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

    \n
  • \n
\n
\n
Example bucket policies
\n
\n

\n General purpose buckets example bucket policies\n - See Bucket policy\n examples in the Amazon S3 User Guide.

\n

\n Directory bucket example bucket policies\n - See Example bucket policies for S3 Express One Zone in the\n Amazon S3 User Guide.

\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to PutBucketPolicy:

\n ", - "smithy.api#examples": [ - { - "title": "Set bucket policy", - "documentation": "The following example sets a permission policy on a bucket.", - "input": { - "Bucket": "examplebucket", - "Policy": "{\"Version\": \"2012-10-17\", \"Statement\": [{ \"Sid\": \"id-1\",\"Effect\": \"Allow\",\"Principal\": {\"AWS\": \"arn:aws:iam::123456789012:root\"}, \"Action\": [ \"s3:PutObject\",\"s3:PutObjectAcl\"], \"Resource\": [\"arn:aws:s3:::acl3/*\" ] } ]}" - } - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?policy", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketPolicyRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use path-style requests in the format https://s3express-control.region-code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must also follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming restrictions, see Directory bucket naming rules in the Amazon S3 User Guide\n

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The MD5 hash of the request body.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum-algorithm\n or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request.

\n

For the x-amz-checksum-algorithm\n header, replace \n algorithm\n with the supported algorithm from the following list:

\n
    \n
  • \n

    \n CRC-32\n

    \n
  • \n
  • \n

    \n CRC-32C\n

    \n
  • \n
  • \n

    \n CRC-64NVME\n

    \n
  • \n
  • \n

    \n SHA-1\n

    \n
  • \n
  • \n

    \n SHA-256\n

    \n
  • \n
\n

For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If the individual checksum value you provide through x-amz-checksum-algorithm\n doesn't match the checksum algorithm you set through x-amz-sdk-checksum-algorithm, Amazon S3 fails the request with a BadDigest error.

\n \n

For directory buckets, when you use Amazon Web Services SDKs, CRC32 is the default checksum algorithm that's used for performance.

\n
", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "ConfirmRemoveSelfBucketAccess": { - "target": "com.amazonaws.s3#ConfirmRemoveSelfBucketAccess", - "traits": { - "smithy.api#documentation": "

Set this parameter to true to confirm that you want to remove your permissions to change\n this bucket policy in the future.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-confirm-remove-self-bucket-access" - } - }, - "Policy": { - "target": "com.amazonaws.s3#Policy", - "traits": { - "smithy.api#documentation": "

The bucket policy as a JSON document.

\n

For directory buckets, the only IAM action supported in the bucket policy is\n s3express:CreateSession.

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {} - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

\n \n

For directory buckets, this header is not supported in this API operation. If you specify this header, the request fails with the HTTP status code \n501 Not Implemented.

\n
", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutBucketReplication": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketReplicationRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Creates a replication configuration or replaces an existing one. For more information,\n see Replication in the Amazon S3 User Guide.

\n

Specify the replication configuration in the request body. In the replication\n configuration, you provide the name of the destination bucket or buckets where you want\n Amazon S3 to replicate objects, the IAM role that Amazon S3 can assume to replicate objects on your\n behalf, and other relevant information. You can invoke this request for a specific Amazon Web Services\n Region by using the \n aws:RequestedRegion\n condition key.

\n

A replication configuration must include at least one rule, and can contain a maximum of\n 1,000. Each rule identifies a subset of objects to replicate by filtering the objects in\n the source bucket. To choose additional subsets of objects to replicate, add a rule for\n each subset.

\n

To specify a subset of the objects in the source bucket to apply a replication rule to,\n add the Filter element as a child of the Rule element. You can filter objects based on an\n object key prefix, one or more object tags, or both. When you add the Filter element in the\n configuration, you must also add the following elements:\n DeleteMarkerReplication, Status, and\n Priority.

\n \n

If you are using an earlier version of the replication configuration, Amazon S3 handles\n replication of delete markers differently. For more information, see Backward Compatibility.

\n
\n

For information about enabling versioning on a bucket, see Using Versioning.

\n
\n
Handling Replication of Encrypted Objects
\n
\n

By default, Amazon S3 doesn't replicate objects that are stored at rest using\n server-side encryption with KMS keys. To replicate Amazon Web Services KMS-encrypted objects,\n add the following: SourceSelectionCriteria,\n SseKmsEncryptedObjects, Status,\n EncryptionConfiguration, and ReplicaKmsKeyID. For\n information about replication configuration, see Replicating\n Objects Created with SSE Using KMS keys.

\n

For information on PutBucketReplication errors, see List of\n replication-related error codes\n

\n
\n
Permissions
\n
\n

To create a PutBucketReplication request, you must have\n s3:PutReplicationConfiguration permissions for the bucket.\n \n

\n

By default, a resource owner, in this case the Amazon Web Services account that created the\n bucket, can perform this operation. The resource owner can also grant others\n permissions to perform the operation. For more information about permissions, see\n Specifying Permissions in\n a Policy and Managing Access\n Permissions to Your Amazon S3 Resources.

\n \n

To perform this operation, the user or role performing the action must have\n the iam:PassRole\n permission.

\n
\n
\n
\n

The following operations are related to PutBucketReplication:

\n ", - "smithy.api#examples": [ - { - "title": "Set replication configuration on a bucket", - "documentation": "The following example sets replication configuration on a bucket.", - "input": { - "Bucket": "examplebucket", - "ReplicationConfiguration": { - "Role": "arn:aws:iam::123456789012:role/examplerole", - "Rules": [ - { - "Prefix": "", - "Status": "Enabled", - "Destination": { - "Bucket": "arn:aws:s3:::destinationbucket", - "StorageClass": "STANDARD" - } - } - ] - } - } - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?replication", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketReplicationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the data. You must use this header as a message\n integrity check to verify that the request body was not corrupted in transit. For more\n information, see RFC 1864.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "ReplicationConfiguration": { - "target": "com.amazonaws.s3#ReplicationConfiguration", - "traits": { - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "ReplicationConfiguration" - } - }, - "Token": { - "target": "com.amazonaws.s3#ObjectLockToken", - "traits": { - "smithy.api#documentation": "

A token to allow Object Lock to be enabled for an existing bucket.

", - "smithy.api#httpHeader": "x-amz-bucket-object-lock-token" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutBucketRequestPayment": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketRequestPaymentRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Sets the request payment configuration for a bucket. By default, the bucket owner pays\n for downloads from the bucket. This configuration parameter enables the bucket owner (only)\n to specify that the person requesting the download will be charged for the download. For\n more information, see Requester Pays\n Buckets.

\n

The following operations are related to PutBucketRequestPayment:

\n ", - "smithy.api#examples": [ - { - "title": "Set request payment configuration on a bucket.", - "documentation": "The following example sets request payment configuration on a bucket so that person requesting the download is charged.", - "input": { - "Bucket": "examplebucket", - "RequestPaymentConfiguration": { - "Payer": "Requester" - } - } - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?requestPayment", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketRequestPaymentRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the data. You must use this header as a message\n integrity check to verify that the request body was not corrupted in transit. For more\n information, see RFC 1864.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "RequestPaymentConfiguration": { - "target": "com.amazonaws.s3#RequestPaymentConfiguration", - "traits": { - "smithy.api#documentation": "

Container for Payer.

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "RequestPaymentConfiguration" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutBucketTagging": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketTaggingRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Sets the tags for a bucket.

\n

Use tags to organize your Amazon Web Services bill to reflect your own cost structure. To do this,\n sign up to get your Amazon Web Services account bill with tag key values included. Then, to see the cost\n of combined resources, organize your billing information according to resources with the\n same tag key values. For example, you can tag several resources with a specific application\n name, and then organize your billing information to see the total cost of that application\n across several services. For more information, see Cost Allocation and\n Tagging and Using Cost Allocation in Amazon S3\n Bucket Tags.

\n \n

When this operation sets the tags for a bucket, it will overwrite any current tags\n the bucket already has. You cannot use this operation to add tags to an existing list of\n tags.

\n
\n

To use this operation, you must have permissions to perform the\n s3:PutBucketTagging action. The bucket owner has this permission by default\n and can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources.

\n

\n PutBucketTagging has the following special errors. For more Amazon S3 errors\n see, Error\n Responses.

\n
    \n
  • \n

    \n InvalidTag - The tag provided was not a valid tag. This error\n can occur if the tag did not pass input validation. For more information, see Using\n Cost Allocation in Amazon S3 Bucket Tags.

    \n
  • \n
  • \n

    \n MalformedXML - The XML provided does not match the\n schema.

    \n
  • \n
  • \n

    \n OperationAborted - A conflicting conditional action is\n currently in progress against this resource. Please try again.

    \n
  • \n
  • \n

    \n InternalError - The service was unable to apply the provided\n tag to the bucket.

    \n
  • \n
\n

The following operations are related to PutBucketTagging:

\n ", - "smithy.api#examples": [ - { - "title": "Set tags on a bucket", - "documentation": "The following example sets tags on a bucket. Any existing tags are replaced.", - "input": { - "Bucket": "examplebucket", - "Tagging": { - "TagSet": [ - { - "Key": "Key1", - "Value": "Value1" - }, - { - "Key": "Key2", - "Value": "Value2" - } - ] - } - } - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?tagging", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketTaggingRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the data. You must use this header as a message\n integrity check to verify that the request body was not corrupted in transit. For more\n information, see RFC 1864.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "Tagging": { - "target": "com.amazonaws.s3#Tagging", - "traits": { - "smithy.api#documentation": "

Container for the TagSet and Tag elements.

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "Tagging" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutBucketVersioning": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketVersioningRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n \n

When you enable versioning on a bucket for the first time, it might take a short\n amount of time for the change to be fully propagated. While this change is propagating,\n you might encounter intermittent HTTP 404 NoSuchKey errors for requests to\n objects created or updated after enabling versioning. We recommend that you wait for 15\n minutes after enabling versioning before issuing write operations (PUT or\n DELETE) on objects in the bucket.

\n
\n

Sets the versioning state of an existing bucket.

\n

You can set the versioning state with one of the following values:

\n

\n Enabled—Enables versioning for the objects in the\n bucket. All objects added to the bucket receive a unique version ID.

\n

\n Suspended—Disables versioning for the objects in the\n bucket. All objects added to the bucket receive the version ID null.

\n

If the versioning state has never been set on a bucket, it has no versioning state; a\n GetBucketVersioning request does not return a versioning state value.

\n

In order to enable MFA Delete, you must be the bucket owner. If you are the bucket owner\n and want to enable MFA Delete in the bucket versioning configuration, you must include the\n x-amz-mfa request header and the Status and the\n MfaDelete request elements in a request to set the versioning state of the\n bucket.

\n \n

If you have an object expiration lifecycle configuration in your non-versioned bucket\n and you want to maintain the same permanent delete behavior when you enable versioning,\n you must add a noncurrent expiration policy. The noncurrent expiration lifecycle\n configuration will manage the deletes of the noncurrent object versions in the\n version-enabled bucket. (A version-enabled bucket maintains one current and zero or more\n noncurrent object versions.) For more information, see Lifecycle and Versioning.

\n
\n

The following operations are related to PutBucketVersioning:

\n ", - "smithy.api#examples": [ - { - "title": "Set versioning configuration on a bucket", - "documentation": "The following example sets versioning configuration on bucket. The configuration enables versioning on the bucket.", - "input": { - "Bucket": "examplebucket", - "VersioningConfiguration": { - "MFADelete": "Disabled", - "Status": "Enabled" - } - } - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?versioning", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketVersioningRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

>The Base64 encoded 128-bit MD5 digest of the data. You must use this header as a\n message integrity check to verify that the request body was not corrupted in transit. For\n more information, see RFC\n 1864.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "MFA": { - "target": "com.amazonaws.s3#MFA", - "traits": { - "smithy.api#documentation": "

The concatenation of the authentication device's serial number, a space, and the value\n that is displayed on your authentication device.

", - "smithy.api#httpHeader": "x-amz-mfa" - } - }, - "VersioningConfiguration": { - "target": "com.amazonaws.s3#VersioningConfiguration", - "traits": { - "smithy.api#documentation": "

Container for setting the versioning state.

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "VersioningConfiguration" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutBucketWebsite": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutBucketWebsiteRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Sets the configuration of the website that is specified in the website\n subresource. To configure a bucket as a website, you can add this subresource on the bucket\n with website configuration information such as the file name of the index document and any\n redirect rules. For more information, see Hosting Websites on Amazon S3.

\n

This PUT action requires the S3:PutBucketWebsite permission. By default,\n only the bucket owner can configure the website attached to a bucket; however, bucket\n owners can allow other users to set the website configuration by writing a bucket policy\n that grants them the S3:PutBucketWebsite permission.

\n

To redirect all website requests sent to the bucket's website endpoint, you add a\n website configuration with the following elements. Because all requests are sent to another\n website, you don't need to provide index document name for the bucket.

\n
    \n
  • \n

    \n WebsiteConfiguration\n

    \n
  • \n
  • \n

    \n RedirectAllRequestsTo\n

    \n
  • \n
  • \n

    \n HostName\n

    \n
  • \n
  • \n

    \n Protocol\n

    \n
  • \n
\n

If you want granular control over redirects, you can use the following elements to add\n routing rules that describe conditions for redirecting requests and information about the\n redirect destination. In this case, the website configuration must provide an index\n document for the bucket, because some requests might not be redirected.

\n
    \n
  • \n

    \n WebsiteConfiguration\n

    \n
  • \n
  • \n

    \n IndexDocument\n

    \n
  • \n
  • \n

    \n Suffix\n

    \n
  • \n
  • \n

    \n ErrorDocument\n

    \n
  • \n
  • \n

    \n Key\n

    \n
  • \n
  • \n

    \n RoutingRules\n

    \n
  • \n
  • \n

    \n RoutingRule\n

    \n
  • \n
  • \n

    \n Condition\n

    \n
  • \n
  • \n

    \n HttpErrorCodeReturnedEquals\n

    \n
  • \n
  • \n

    \n KeyPrefixEquals\n

    \n
  • \n
  • \n

    \n Redirect\n

    \n
  • \n
  • \n

    \n Protocol\n

    \n
  • \n
  • \n

    \n HostName\n

    \n
  • \n
  • \n

    \n ReplaceKeyPrefixWith\n

    \n
  • \n
  • \n

    \n ReplaceKeyWith\n

    \n
  • \n
  • \n

    \n HttpRedirectCode\n

    \n
  • \n
\n

Amazon S3 has a limitation of 50 routing rules per website configuration. If you require more\n than 50 routing rules, you can use object redirect. For more information, see Configuring an\n Object Redirect in the Amazon S3 User Guide.

\n

The maximum request length is limited to 128 KB.

", - "smithy.api#examples": [ - { - "title": "Set website configuration on a bucket", - "documentation": "The following example adds website configuration to a bucket.", + "title": "To upload a part", + "documentation": "The following example uploads part 1 of a multipart upload. The example specifies a file name for the part data. The Upload ID is same that is returned by the initiate multipart upload.", + "input": { + "Body": "fileToUpload", + "Bucket": "examplebucket", + "Key": "examplelargeobject", + "PartNumber": 1, + "UploadId": "xadcOB_7YPBOJuoFiQ9cz4P3Pe6FIZwO4f7wN93uHsNBEw97pl5eNwzExg0LAT2dUN91cOmrEQHDsP3WA60CEg--" + }, + "output": { + "ETag": "\"d8c2eafd90c266e19ab9dcacc479f8af\"" + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}/{Key+}?x-id=UploadPart", + "code": 200 + } + } + }, + "com.amazonaws.s3#UploadPartCopy": { + "type": "operation", "input": { - "Bucket": "examplebucket", - "ContentMD5": "", - "WebsiteConfiguration": { - "IndexDocument": { - "Suffix": "index.html" + "target": "com.amazonaws.s3#UploadPartCopyRequest" + }, + "output": { + "target": "com.amazonaws.s3#UploadPartCopyOutput" + }, + "traits": { + "smithy.api#documentation": "

Uploads a part by copying data from an existing object as data source. To specify the data source,\n you add the request header x-amz-copy-source in your request. To specify a byte range, you\n add the request header x-amz-copy-source-range in your request.

\n

For information about maximum and minimum part sizes and other multipart upload specifications, see\n Multipart upload\n limits in the Amazon S3 User Guide.

\n \n

Instead of copying data from an existing object as part data, you might use the UploadPart action to\n upload new data as a part of an object in your request.

\n
\n

You must initiate a multipart upload before you can upload any part. In response to your initiate\n request, Amazon S3 returns the upload ID, a unique identifier that you must include in your upload part\n request.

\n

For conceptual information about multipart uploads, see Uploading Objects Using Multipart Upload in\n the Amazon S3 User Guide. For information about copying objects using a single atomic\n action vs. a multipart upload, see Operations on Objects in the\n Amazon S3 User Guide.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Concepts for directory buckets in Local Zones in the\n Amazon S3 User Guide.

\n
\n
\n
Authentication and authorization
\n
\n

All UploadPartCopy requests must be authenticated and signed by using IAM\n credentials (access key ID and secret access key for the IAM identities). All headers with the\n x-amz- prefix, including x-amz-copy-source, must be signed. For more\n information, see REST Authentication.

\n

\n Directory buckets - You must use IAM credentials to\n authenticate and authorize your access to the UploadPartCopy API operation, instead\n of using the temporary security credentials through the CreateSession API\n operation.

\n

Amazon Web Services CLI or SDKs handles authentication and authorization on your behalf.

\n
\n
Permissions
\n
\n

You must have READ access to the source object and WRITE access to\n the destination bucket.

\n
    \n
  • \n

    \n General purpose bucket permissions - You must have the\n permissions in a policy based on the bucket types of your source bucket and destination bucket\n in an UploadPartCopy operation.

    \n
      \n
    • \n

      If the source object is in a general purpose bucket, you must have the \n s3:GetObject\n permission to read the source object that is\n being copied.

      \n
    • \n
    • \n

      If the destination bucket is a general purpose bucket, you must have the \n s3:PutObject\n permission to write the object copy to\n the destination bucket.

      \n
    • \n
    • \n

      To perform a multipart upload with encryption using an Key Management Service key, the requester\n must have permission to the kms:Decrypt and kms:GenerateDataKey\n actions on the key. The requester must also have permissions for the\n kms:GenerateDataKey action for the CreateMultipartUpload API.\n Then, the requester needs permissions for the kms:Decrypt action on the\n UploadPart and UploadPartCopy APIs. These permissions are\n required because Amazon S3 must decrypt and read data from the encrypted file parts before it\n completes the multipart upload. For more information about KMS permissions, see Protecting\n data using server-side encryption with KMS in the\n Amazon S3 User Guide. For information about the permissions required to\n use the multipart upload API, see Multipart upload and\n permissions and Multipart upload API\n and permissions in the Amazon S3 User Guide.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions - You must have\n permissions in a bucket policy or an IAM identity-based policy based on the source and destination bucket types\n in an UploadPartCopy operation.

    \n
      \n
    • \n

      If the source object that you want to copy is in a directory bucket, you must have\n the \n s3express:CreateSession\n permission in\n the Action element of a policy to read the object. By default, the session is\n in the ReadWrite mode. If you want to restrict the access, you can explicitly\n set the s3express:SessionMode condition key to ReadOnly on the\n copy source bucket.

      \n
    • \n
    • \n

      If the copy destination is a directory bucket, you must have the \n s3express:CreateSession\n permission in the\n Action element of a policy to write the object to the destination. The\n s3express:SessionMode condition key cannot be set to ReadOnly\n on the copy destination.

      \n
    • \n
    \n

    If the object is encrypted with SSE-KMS, you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions in IAM\n identity-based policies and KMS key policies for the KMS key.

    \n

    For example policies, see Example\n bucket policies for S3 Express One Zone and Amazon Web Services\n Identity and Access Management (IAM) identity-based policies for S3 Express One Zone in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n
Encryption
\n
\n
    \n
  • \n

    \n General purpose buckets -\n For information about using server-side encryption with\n customer-provided encryption keys with the UploadPartCopy operation, see CopyObject and\n UploadPart.

    \n
  • \n
  • \n

    \n Directory buckets -\n For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms). For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide.

    \n \n

    For directory buckets, when you perform a CreateMultipartUpload operation\n and an UploadPartCopy operation, the request headers you provide in the\n CreateMultipartUpload request must match the default encryption configuration\n of the destination bucket.

    \n
    \n

    S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets \nto directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through UploadPartCopy. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.

    \n
  • \n
\n
\n
Special errors
\n
\n
    \n
  • \n

    Error Code: NoSuchUpload\n

    \n
      \n
    • \n

      Description: The specified multipart upload does not exist. The upload ID might be\n invalid, or the multipart upload might have been aborted or completed.

      \n
    • \n
    • \n

      HTTP Status Code: 404 Not Found

      \n
    • \n
    \n
  • \n
  • \n

    Error Code: InvalidRequest\n

    \n
      \n
    • \n

      Description: The specified copy source is not supported as a byte-range copy\n source.

      \n
    • \n
    • \n

      HTTP Status Code: 400 Bad Request

      \n
    • \n
    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to UploadPartCopy:

\n ", + "smithy.api#examples": [ + { + "title": "To upload a part by copying byte range from an existing object as data source", + "documentation": "The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as data source.", + "input": { + "Bucket": "examplebucket", + "CopySource": "/bucketname/sourceobjectkey", + "CopySourceRange": "bytes=1-100000", + "Key": "examplelargeobject", + "PartNumber": 2, + "UploadId": "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--" + }, + "output": { + "CopyPartResult": { + "LastModified": "2016-12-29T21:44:28.000Z", + "ETag": "\"65d16d19e65a7508a51f043180edcc36\"" + } + } + }, + { + "title": "To upload a part by copying data from an existing object as data source", + "documentation": "The following example uploads a part of a multipart upload by copying data from an existing object as data source.", + "input": { + "Bucket": "examplebucket", + "CopySource": "/bucketname/sourceobjectkey", + "Key": "examplelargeobject", + "PartNumber": 1, + "UploadId": "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--" + }, + "output": { + "CopyPartResult": { + "LastModified": "2016-12-29T21:24:43.000Z", + "ETag": "\"b0c6f0e7e054ab8fa2536a2677f8734d\"" + } + } + } + ], + "smithy.api#http": { + "method": "PUT", + "uri": "/{Bucket}/{Key+}?x-id=UploadPartCopy", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "DisableS3ExpressSessionAuth": { + "value": true + } + } + } + }, + "com.amazonaws.s3#UploadPartCopyOutput": { + "type": "structure", + "members": { + "CopySourceVersionId": { + "target": "com.amazonaws.s3#CopySourceVersionId", + "traits": { + "smithy.api#documentation": "

The version of the source object that was copied, if you have enabled versioning on the source\n bucket.

\n \n

This functionality is not supported when the source object is in a directory bucket.

\n
", + "smithy.api#httpHeader": "x-amz-copy-source-version-id" + } + }, + "CopyPartResult": { + "target": "com.amazonaws.s3#CopyPartResult", + "traits": { + "smithy.api#documentation": "

Container for all response elements.

", + "smithy.api#httpPayload": {} + } + }, + "ServerSideEncryption": { + "target": "com.amazonaws.s3#ServerSideEncryption", + "traits": { + "smithy.api#documentation": "

The server-side encryption algorithm used when you store this object in Amazon S3 or Amazon FSx.

\n \n

When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side\n encryption option is aws:fsx.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption" + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the response will\n include this header to confirm the encryption algorithm that's used.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the response will\n include this header to provide the round-trip message integrity verification of the customer-provided\n encryption key.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } + }, + "SSEKMSKeyId": { + "target": "com.amazonaws.s3#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

If present, indicates the ID of the KMS key that was used for object encryption.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" + } + }, + "BucketKeyEnabled": { + "target": "com.amazonaws.s3#BucketKeyEnabled", + "traits": { + "smithy.api#documentation": "

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with\n Key Management Service (KMS) keys (SSE-KMS).

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.s3#UploadPartCopyRequest": { + "type": "structure", + "members": { + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The bucket name.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n \n

Copying objects across different Amazon Web Services Regions isn't supported when the source or destination\n bucket is in Amazon Web Services Local Zones. The source and destination buckets must have the same parent Amazon Web Services Region.\n Otherwise, you get an HTTP 400 Bad Request error with the error code\n InvalidRequest.

\n
\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } }, - "ErrorDocument": { - "Key": "error.html" + "CopySource": { + "target": "com.amazonaws.s3#CopySource", + "traits": { + "smithy.api#documentation": "

Specifies the source object for the copy operation. You specify the value in one of two formats,\n depending on whether you want to access the source object through an access point:

\n
    \n
  • \n

    For objects not accessed through an access point, specify the name of the source bucket and key of the\n source object, separated by a slash (/). For example, to copy the object\n reports/january.pdf from the bucket awsexamplebucket, use\n awsexamplebucket/reports/january.pdf. The value must be URL-encoded.

    \n
  • \n
  • \n

    For objects accessed through access points, specify the Amazon Resource Name (ARN) of the object as accessed through the access point, in the format arn:aws:s3:::accesspoint//object/. For example, to copy the object reports/january.pdf through access point my-access-point owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf. The value must be URL encoded.

    \n \n
      \n
    • \n

      Amazon S3 supports copy operations using Access points only when the source and destination buckets are in the same Amazon Web Services Region.

      \n
    • \n
    • \n

      Access points are not supported by directory buckets.

      \n
    • \n
    \n
    \n

    Alternatively, for objects accessed through Amazon S3 on Outposts, specify the ARN of the object as accessed in the format arn:aws:s3-outposts:::outpost//object/. For example, to copy the object reports/january.pdf through outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf. The value must be URL-encoded.

    \n
  • \n
\n

If your bucket has versioning enabled, you could have multiple versions of the same object. By\n default, x-amz-copy-source identifies the current version of the source object to copy. To\n copy a specific version of the source object to copy, append ?versionId= to\n the x-amz-copy-source request header (for example, x-amz-copy-source:\n /awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893).

\n

If the current version is a delete marker and you don't specify a versionId in the\n x-amz-copy-source request header, Amazon S3 returns a 404 Not Found error,\n because the object does not exist. If you specify versionId in the x-amz-copy-source and\n the versionId is a delete marker, Amazon S3 returns an HTTP 400 Bad Request error, because you\n are not allowed to specify a delete marker as a version for the x-amz-copy-source.

\n \n

\n Directory buckets - S3 Versioning isn't enabled and supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-copy-source", + "smithy.api#required": {} + } + }, + "CopySourceIfMatch": { + "target": "com.amazonaws.s3#CopySourceIfMatch", + "traits": { + "smithy.api#documentation": "

Copies the object if its entity tag (ETag) matches the specified tag.

\n

If both of the x-amz-copy-source-if-match and\n x-amz-copy-source-if-unmodified-since headers are present in the request as\n follows:

\n

\n x-amz-copy-source-if-match condition evaluates to true, and;

\n

\n x-amz-copy-source-if-unmodified-since condition evaluates to false;

\n

Amazon S3 returns 200 OK and copies the data.\n

", + "smithy.api#httpHeader": "x-amz-copy-source-if-match" + } + }, + "CopySourceIfModifiedSince": { + "target": "com.amazonaws.s3#CopySourceIfModifiedSince", + "traits": { + "smithy.api#documentation": "

Copies the object if it has been modified since the specified time.

\n

If both of the x-amz-copy-source-if-none-match and\n x-amz-copy-source-if-modified-since headers are present in the request as follows:

\n

\n x-amz-copy-source-if-none-match condition evaluates to false, and;

\n

\n x-amz-copy-source-if-modified-since condition evaluates to true;

\n

Amazon S3 returns 412 Precondition Failed response code.\n

", + "smithy.api#httpHeader": "x-amz-copy-source-if-modified-since" + } + }, + "CopySourceIfNoneMatch": { + "target": "com.amazonaws.s3#CopySourceIfNoneMatch", + "traits": { + "smithy.api#documentation": "

Copies the object if its entity tag (ETag) is different than the specified ETag.

\n

If both of the x-amz-copy-source-if-none-match and\n x-amz-copy-source-if-modified-since headers are present in the request as follows:

\n

\n x-amz-copy-source-if-none-match condition evaluates to false, and;

\n

\n x-amz-copy-source-if-modified-since condition evaluates to true;

\n

Amazon S3 returns 412 Precondition Failed response code.\n

", + "smithy.api#httpHeader": "x-amz-copy-source-if-none-match" + } + }, + "CopySourceIfUnmodifiedSince": { + "target": "com.amazonaws.s3#CopySourceIfUnmodifiedSince", + "traits": { + "smithy.api#documentation": "

Copies the object if it hasn't been modified since the specified time.

\n

If both of the x-amz-copy-source-if-match and\n x-amz-copy-source-if-unmodified-since headers are present in the request as\n follows:

\n

\n x-amz-copy-source-if-match condition evaluates to true, and;

\n

\n x-amz-copy-source-if-unmodified-since condition evaluates to false;

\n

Amazon S3 returns 200 OK and copies the data.\n

", + "smithy.api#httpHeader": "x-amz-copy-source-if-unmodified-since" + } + }, + "CopySourceRange": { + "target": "com.amazonaws.s3#CopySourceRange", + "traits": { + "smithy.api#documentation": "

The range of bytes to copy from the source object. The range value must use the form\n bytes=first-last, where the first and last are the zero-based byte offsets to copy. For example,\n bytes=0-9 indicates that you want to copy the first 10 bytes of the source. You can copy a range only if\n the source object is greater than 5 MB.

", + "smithy.api#httpHeader": "x-amz-copy-source-range" + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Object key for which the multipart upload was initiated.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "PartNumber": { + "target": "com.amazonaws.s3#PartNumber", + "traits": { + "smithy.api#documentation": "

Part number of part being copied. This is a positive integer between 1 and 10,000.

", + "smithy.api#httpQuery": "partNumber", + "smithy.api#required": {} + } + }, + "UploadId": { + "target": "com.amazonaws.s3#MultipartUploadId", + "traits": { + "smithy.api#documentation": "

Upload ID identifying the multipart upload whose part is being copied.

", + "smithy.api#httpQuery": "uploadId", + "smithy.api#required": {} + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

\n \n

This functionality is not supported when the destination bucket is a directory bucket.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKey": { + "target": "com.amazonaws.s3#SSECustomerKey", + "traits": { + "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is\n used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must\n be appropriate for use with the algorithm specified in the\n x-amz-server-side-encryption-customer-algorithm header. This must be the same encryption\n key specified in the initiate multipart upload request.

\n \n

This functionality is not supported when the destination bucket is a directory bucket.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header\n for a message integrity check to ensure that the encryption key was transmitted without error.

\n \n

This functionality is not supported when the destination bucket is a directory bucket.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } + }, + "CopySourceSSECustomerAlgorithm": { + "target": "com.amazonaws.s3#CopySourceSSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

Specifies the algorithm to use when decrypting the source object (for example,\n AES256).

\n \n

This functionality is not supported when the source object is in a directory bucket.

\n
", + "smithy.api#httpHeader": "x-amz-copy-source-server-side-encryption-customer-algorithm" + } + }, + "CopySourceSSECustomerKey": { + "target": "com.amazonaws.s3#CopySourceSSECustomerKey", + "traits": { + "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use to decrypt the source object. The\n encryption key provided in this header must be one that was used when the source object was\n created.

\n \n

This functionality is not supported when the source object is in a directory bucket.

\n
", + "smithy.api#httpHeader": "x-amz-copy-source-server-side-encryption-customer-key" + } + }, + "CopySourceSSECustomerKeyMD5": { + "target": "com.amazonaws.s3#CopySourceSSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header\n for a message integrity check to ensure that the encryption key was transmitted without error.

\n \n

This functionality is not supported when the source object is in a directory bucket.

\n
", + "smithy.api#httpHeader": "x-amz-copy-source-server-side-encryption-customer-key-MD5" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected destination bucket owner. If the account ID that you provide does not match the actual owner of the destination bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + }, + "ExpectedSourceBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected source bucket owner. If the account ID that you provide does not match the actual owner of the source bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-source-expected-bucket-owner" + } } - } + }, + "traits": { + "smithy.api#input": {} } - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?website", - "code": 200 }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutBucketWebsiteRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the data. You must use this header as a message\n integrity check to verify that the request body was not corrupted in transit. For more\n information, see RFC 1864.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "WebsiteConfiguration": { - "target": "com.amazonaws.s3#WebsiteConfiguration", - "traits": { - "smithy.api#documentation": "

Container for the request.

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "WebsiteConfiguration" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutObject": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutObjectRequest" - }, - "output": { - "target": "com.amazonaws.s3#PutObjectOutput" - }, - "errors": [ - { - "target": "com.amazonaws.s3#EncryptionTypeMismatch" - }, - { - "target": "com.amazonaws.s3#InvalidRequest" - }, - { - "target": "com.amazonaws.s3#InvalidWriteOffset" - }, - { - "target": "com.amazonaws.s3#TooManyParts" - } - ], - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm" - }, - "smithy.api#documentation": "

Adds an object to a bucket.

\n \n
    \n
  • \n

    Amazon S3 never adds partial objects; if you receive a success response, Amazon S3 added\n the entire object to the bucket. You cannot use PutObject to only\n update a single piece of metadata for an existing object. You must put the entire\n object with updated metadata if you want to update some values.

    \n
  • \n
  • \n

    If your bucket uses the bucket owner enforced setting for Object Ownership,\n ACLs are disabled and no longer affect permissions. All objects written to the\n bucket by any account will be owned by the bucket owner.

    \n
  • \n
  • \n

    \n Directory buckets -\n For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n

Amazon S3 is a distributed system. If it receives multiple write requests for the same object\n simultaneously, it overwrites all but the last object written. However, Amazon S3 provides\n features that can modify this behavior:

\n
    \n
  • \n

    \n S3 Object Lock - To prevent objects from\n being deleted or overwritten, you can use Amazon S3 Object\n Lock in the Amazon S3 User Guide.

    \n \n

    This functionality is not supported for directory buckets.

    \n
    \n
  • \n
  • \n

    \n S3 Versioning - When you enable versioning\n for a bucket, if Amazon S3 receives multiple write requests for the same object\n simultaneously, it stores all versions of the objects. For each write request that is\n made to the same object, Amazon S3 automatically generates a unique version ID of that\n object being stored in Amazon S3. You can retrieve, replace, or delete any version of the\n object. For more information about versioning, see Adding\n Objects to Versioning-Enabled Buckets in the Amazon S3 User\n Guide. For information about returning the versioning state of a\n bucket, see GetBucketVersioning.

    \n \n

    This functionality is not supported for directory buckets.

    \n
    \n
  • \n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - The\n following permissions are required in your policies when your\n PutObject request includes specific headers.

    \n
      \n
    • \n

      \n \n s3:PutObject\n -\n To successfully complete the PutObject request, you must\n always have the s3:PutObject permission on a bucket to\n add an object to it.

      \n
    • \n
    • \n

      \n \n s3:PutObjectAcl\n - To successfully change the objects ACL of your\n PutObject request, you must have the\n s3:PutObjectAcl.

      \n
    • \n
    • \n

      \n \n s3:PutObjectTagging\n - To successfully set the tag-set with your\n PutObject request, you must have the\n s3:PutObjectTagging.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n

    If the object is encrypted with SSE-KMS, you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions\n in IAM identity-based policies and KMS key policies for the KMS\n key.

    \n
  • \n
\n
\n
Data integrity with Content-MD5
\n
\n
    \n
  • \n

    \n General purpose bucket - To ensure that\n data is not corrupted traversing the network, use the\n Content-MD5 header. When you use this header, Amazon S3 checks\n the object against the provided MD5 value and, if they do not match, Amazon S3\n returns an error. Alternatively, when the object's ETag is its MD5 digest,\n you can calculate the MD5 while putting the object to Amazon S3 and compare the\n returned ETag to the calculated MD5 value.

    \n
  • \n
  • \n

    \n Directory bucket -\n This functionality is not supported for directory buckets.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

For more information about related Amazon S3 APIs, see the following:

\n ", - "smithy.api#examples": [ - { - "title": "To create an object.", - "documentation": "The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.", - "input": { - "Body": "filetoupload", - "Bucket": "examplebucket", - "Key": "objectkey" + "com.amazonaws.s3#UploadPartOutput": { + "type": "structure", + "members": { + "ServerSideEncryption": { + "target": "com.amazonaws.s3#ServerSideEncryption", + "traits": { + "smithy.api#documentation": "

The server-side encryption algorithm used when you store this object in Amazon S3 or Amazon FSx.

\n \n

When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side\n encryption option is aws:fsx.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption" + } + }, + "ETag": { + "target": "com.amazonaws.s3#ETag", + "traits": { + "smithy.api#documentation": "

Entity tag for the uploaded object.

", + "smithy.api#httpHeader": "ETag" + } + }, + "ChecksumCRC32": { + "target": "com.amazonaws.s3#ChecksumCRC32", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32 checksum of the object. This checksum is only be present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc32" + } + }, + "ChecksumCRC32C": { + "target": "com.amazonaws.s3#ChecksumCRC32C", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC32C checksum of the object. This checksum is only present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc32c" + } + }, + "ChecksumCRC64NVME": { + "target": "com.amazonaws.s3#ChecksumCRC64NVME", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data\n that was originally sent. This header specifies the Base64 encoded, 64-bit CRC64NVME\n checksum of the part. For more information, see Checking object integrity in\n the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc64nvme" + } + }, + "ChecksumSHA1": { + "target": "com.amazonaws.s3#ChecksumSHA1", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA1 digest of the object. This will only be present if the object was uploaded\n with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-sha1" + } + }, + "ChecksumSHA256": { + "target": "com.amazonaws.s3#ChecksumSHA256", + "traits": { + "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA256 digest of the object. This will only be present if the object was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-sha256" + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the response will\n include this header to confirm the encryption algorithm that's used.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the response will\n include this header to provide the round-trip message integrity verification of the customer-provided\n encryption key.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } + }, + "SSEKMSKeyId": { + "target": "com.amazonaws.s3#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

If present, indicates the ID of the KMS key that was used for object encryption.

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" + } + }, + "BucketKeyEnabled": { + "target": "com.amazonaws.s3#BucketKeyEnabled", + "traits": { + "smithy.api#documentation": "

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with\n Key Management Service (KMS) keys (SSE-KMS).

", + "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-request-charged" + } + } }, - "output": { - "VersionId": "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ", - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"" + "traits": { + "smithy.api#output": {} } - }, - { - "title": "To upload an object (specify optional headers)", - "documentation": "The following example uploads an object. The request specifies optional request headers to directs S3 to use specific storage class and use server-side encryption.", - "input": { - "Body": "HappyFace.jpg", - "Bucket": "examplebucket", - "Key": "HappyFace.jpg", - "ServerSideEncryption": "AES256", - "StorageClass": "STANDARD_IA" - }, - "output": { - "VersionId": "CG612hodqujkf8FaaNfp8U..FIhLROcp", - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "ServerSideEncryption": "AES256" - } - }, - { - "title": "To upload an object", - "documentation": "The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file syntax. S3 returns VersionId of the newly created object.", - "input": { - "Body": "HappyFace.jpg", - "Bucket": "examplebucket", - "Key": "HappyFace.jpg" + }, + "com.amazonaws.s3#UploadPartRequest": { + "type": "structure", + "members": { + "Body": { + "target": "com.amazonaws.s3#StreamingBlob", + "traits": { + "smithy.api#default": "", + "smithy.api#documentation": "

Object data.

", + "smithy.api#httpPayload": {} + } + }, + "Bucket": { + "target": "com.amazonaws.s3#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the bucket to which the multipart upload was initiated.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n amzn-s3-demo-bucket--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the \n form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see What is S3 on Outposts? in the Amazon S3 User Guide.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Bucket" + } + } + }, + "ContentLength": { + "target": "com.amazonaws.s3#ContentLength", + "traits": { + "smithy.api#documentation": "

Size of the body in bytes. This parameter is useful when the size of the body cannot be determined\n automatically.

", + "smithy.api#httpHeader": "Content-Length" + } + }, + "ContentMD5": { + "target": "com.amazonaws.s3#ContentMD5", + "traits": { + "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the part data. This parameter is auto-populated when using\n the command from the CLI. This parameter is required if object lock parameters are specified.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "Content-MD5" + } + }, + "ChecksumAlgorithm": { + "target": "com.amazonaws.s3#ChecksumAlgorithm", + "traits": { + "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided ChecksumAlgorithm\n parameter.

\n

This checksum algorithm must be the same for all parts and it match the checksum value supplied in\n the CreateMultipartUpload request.

", + "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" + } + }, + "ChecksumCRC32": { + "target": "com.amazonaws.s3#ChecksumCRC32", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 32-bit CRC32 checksum of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc32" + } + }, + "ChecksumCRC32C": { + "target": "com.amazonaws.s3#ChecksumCRC32C", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 32-bit CRC32C checksum of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc32c" + } + }, + "ChecksumCRC64NVME": { + "target": "com.amazonaws.s3#ChecksumCRC64NVME", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data\n that was originally sent. This header specifies the Base64 encoded, 64-bit CRC64NVME\n checksum of the part. For more information, see Checking object integrity in\n the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-crc64nvme" + } + }, + "ChecksumSHA1": { + "target": "com.amazonaws.s3#ChecksumSHA1", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 160-bit SHA1 digest of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-sha1" + } + }, + "ChecksumSHA256": { + "target": "com.amazonaws.s3#ChecksumSHA256", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 256-bit SHA256 digest of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-checksum-sha256" + } + }, + "Key": { + "target": "com.amazonaws.s3#ObjectKey", + "traits": { + "smithy.api#documentation": "

Object key for which the multipart upload was initiated.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {}, + "smithy.rules#contextParam": { + "name": "Key" + } + } + }, + "PartNumber": { + "target": "com.amazonaws.s3#PartNumber", + "traits": { + "smithy.api#documentation": "

Part number of part being uploaded. This is a positive integer between 1 and 10,000.

", + "smithy.api#httpQuery": "partNumber", + "smithy.api#required": {} + } + }, + "UploadId": { + "target": "com.amazonaws.s3#MultipartUploadId", + "traits": { + "smithy.api#documentation": "

Upload ID identifying the multipart upload whose part is being uploaded.

", + "smithy.api#httpQuery": "uploadId", + "smithy.api#required": {} + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSECustomerKey": { + "target": "com.amazonaws.s3#SSECustomerKey", + "traits": { + "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is\n used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must\n be appropriate for use with the algorithm specified in the\n x-amz-server-side-encryption-customer-algorithm header. This must be the same encryption\n key specified in the initiate multipart upload request.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header\n for a message integrity check to ensure that the encryption key was transmitted without error.

\n \n

This functionality is not supported for directory buckets.

\n
", + "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" + } + }, + "RequestPayer": { + "target": "com.amazonaws.s3#RequestPayer", + "traits": { + "smithy.api#httpHeader": "x-amz-request-payer" + } + }, + "ExpectedBucketOwner": { + "target": "com.amazonaws.s3#AccountId", + "traits": { + "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", + "smithy.api#httpHeader": "x-amz-expected-bucket-owner" + } + } }, - "output": { - "VersionId": "tpf3zF08nBplQK1XLOefGskR7mGDwcDk", - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"" + "traits": { + "smithy.api#input": {} } - }, - { - "title": "To upload an object and specify canned ACL.", - "documentation": "The following example uploads and object. The request specifies optional canned ACL (access control list) to all READ access to authenticated users. If the bucket is versioning enabled, S3 returns version ID in response.", - "input": { - "ACL": "authenticated-read", - "Body": "filetoupload", - "Bucket": "examplebucket", - "Key": "exampleobject" - }, - "output": { - "VersionId": "Kirh.unyZwjQ69YxcQLA8z4F5j3kJJKr", - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"" + }, + "com.amazonaws.s3#UserMetadata": { + "type": "list", + "member": { + "target": "com.amazonaws.s3#MetadataEntry", + "traits": { + "smithy.api#xmlName": "MetadataEntry" + } } - }, - { - "title": "To upload an object and specify optional tags", - "documentation": "The following example uploads an object. The request specifies optional object tags. The bucket is versioned, therefore S3 returns version ID of the newly created object.", - "input": { - "Body": "c:\\HappyFace.jpg", - "Bucket": "examplebucket", - "Key": "HappyFace.jpg", - "Tagging": "key1=value1&key2=value2" + }, + "com.amazonaws.s3#Value": { + "type": "string" + }, + "com.amazonaws.s3#VersionCount": { + "type": "integer" + }, + "com.amazonaws.s3#VersionIdMarker": { + "type": "string" + }, + "com.amazonaws.s3#VersioningConfiguration": { + "type": "structure", + "members": { + "MFADelete": { + "target": "com.amazonaws.s3#MFADelete", + "traits": { + "smithy.api#documentation": "

Specifies whether MFA delete is enabled in the bucket versioning configuration. This element is only\n returned if the bucket has been configured with MFA delete. If the bucket has never been so configured,\n this element is not returned.

", + "smithy.api#xmlName": "MfaDelete" + } + }, + "Status": { + "target": "com.amazonaws.s3#BucketVersioningStatus", + "traits": { + "smithy.api#documentation": "

The versioning state of the bucket.

" + } + } }, - "output": { - "VersionId": "psM2sYY4.o1501dSx8wMvnkOzSBB.V4a", - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"" + "traits": { + "smithy.api#documentation": "

Describes the versioning state of an Amazon S3 bucket. For more information, see PUT Bucket\n versioning in the Amazon S3 API Reference.

" } - }, - { - "title": "To upload an object and specify server-side encryption and object tags", - "documentation": "The following example uploads an object. The request specifies the optional server-side encryption option. The request also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.", - "input": { - "Body": "filetoupload", - "Bucket": "examplebucket", - "Key": "exampleobject", - "ServerSideEncryption": "AES256", - "Tagging": "key1=value1&key2=value2" - }, - "output": { - "VersionId": "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt", - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", - "ServerSideEncryption": "AES256" - } - }, - { - "title": "To upload object and specify user-defined metadata", - "documentation": "The following example creates an object. The request also specifies optional metadata. If the bucket is versioning enabled, S3 returns version ID in response.", - "input": { - "Body": "filetoupload", - "Bucket": "examplebucket", - "Key": "exampleobject", - "Metadata": { - "metadata1": "value1", - "metadata2": "value2" - } - }, - "output": { - "VersionId": "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0", - "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"" - } - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}/{Key+}?x-id=PutObject", - "code": 200 - } - } - }, - "com.amazonaws.s3#PutObjectAcl": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutObjectAclRequest" - }, - "output": { - "target": "com.amazonaws.s3#PutObjectAclOutput" - }, - "errors": [ - { - "target": "com.amazonaws.s3#NoSuchKey" - } - ], - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Uses the acl subresource to set the access control list (ACL) permissions\n for a new or existing object in an S3 bucket. You must have the WRITE_ACP\n permission to set the ACL of an object. For more information, see What\n permissions can I grant? in the Amazon S3 User Guide.

\n

This functionality is not supported for Amazon S3 on Outposts.

\n

Depending on your application needs, you can choose to set the ACL on an object using\n either the request body or the headers. For example, if you have an existing application\n that updates a bucket ACL using the request body, you can continue to use that approach.\n For more information, see Access Control List (ACL) Overview\n in the Amazon S3 User Guide.

\n \n

If your bucket uses the bucket owner enforced setting for S3 Object Ownership, ACLs\n are disabled and no longer affect permissions. You must use policies to grant access to\n your bucket and the objects in it. Requests to set ACLs or update ACLs fail and return\n the AccessControlListNotSupported error code. Requests to read ACLs are\n still supported. For more information, see Controlling object\n ownership in the Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n

You can set access permissions using one of the following methods:

\n
    \n
  • \n

    Specify a canned ACL with the x-amz-acl request header. Amazon S3\n supports a set of predefined ACLs, known as canned ACLs. Each canned ACL has\n a predefined set of grantees and permissions. Specify the canned ACL name as\n the value of x-amz-acl. If you use this header, you cannot use\n other access control-specific headers in your request. For more information,\n see Canned\n ACL.

    \n
  • \n
  • \n

    Specify access permissions explicitly with the\n x-amz-grant-read, x-amz-grant-read-acp,\n x-amz-grant-write-acp, and\n x-amz-grant-full-control headers. When using these headers,\n you specify explicit access permissions and grantees (Amazon Web Services accounts or Amazon S3\n groups) who will receive the permission. If you use these ACL-specific\n headers, you cannot use x-amz-acl header to set a canned ACL.\n These parameters map to the set of permissions that Amazon S3 supports in an ACL.\n For more information, see Access Control List (ACL)\n Overview.

    \n

    You specify each grantee as a type=value pair, where the type is one of\n the following:

    \n
      \n
    • \n

      \n id – if the value specified is the canonical user ID\n of an Amazon Web Services account

      \n
    • \n
    • \n

      \n uri – if you are granting permissions to a predefined\n group

      \n
    • \n
    • \n

      \n emailAddress – if the value specified is the email\n address of an Amazon Web Services account

      \n \n

      Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

      \n
        \n
      • \n

        US East (N. Virginia)

        \n
      • \n
      • \n

        US West (N. California)

        \n
      • \n
      • \n

        US West (Oregon)

        \n
      • \n
      • \n

        Asia Pacific (Singapore)

        \n
      • \n
      • \n

        Asia Pacific (Sydney)

        \n
      • \n
      • \n

        Asia Pacific (Tokyo)

        \n
      • \n
      • \n

        Europe (Ireland)

        \n
      • \n
      • \n

        South America (São Paulo)

        \n
      • \n
      \n

      For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

      \n
      \n
    • \n
    \n

    For example, the following x-amz-grant-read header grants\n list objects permission to the two Amazon Web Services accounts identified by their email\n addresses.

    \n

    \n x-amz-grant-read: emailAddress=\"xyz@amazon.com\",\n emailAddress=\"abc@amazon.com\" \n

    \n
  • \n
\n

You can use either a canned ACL or specify access permissions explicitly. You\n cannot do both.

\n
\n
Grantee Values
\n
\n

You can specify the person (grantee) to whom you're assigning access rights\n (using request elements) in the following ways:

\n
    \n
  • \n

    By the person's ID:

    \n

    \n <>ID<><>GranteesEmail<>\n \n

    \n

    DisplayName is optional and ignored in the request.

    \n
  • \n
  • \n

    By URI:

    \n

    \n <>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<>\n

    \n
  • \n
  • \n

    By Email address:

    \n

    \n <>Grantees@email.com<>lt;/Grantee>\n

    \n

    The grantee is resolved to the CanonicalUser and, in a response to a GET\n Object acl request, appears as the CanonicalUser.

    \n \n

    Using email addresses to specify a grantee is only supported in the following Amazon Web Services Regions:

    \n
      \n
    • \n

      US East (N. Virginia)

      \n
    • \n
    • \n

      US West (N. California)

      \n
    • \n
    • \n

      US West (Oregon)

      \n
    • \n
    • \n

      Asia Pacific (Singapore)

      \n
    • \n
    • \n

      Asia Pacific (Sydney)

      \n
    • \n
    • \n

      Asia Pacific (Tokyo)

      \n
    • \n
    • \n

      Europe (Ireland)

      \n
    • \n
    • \n

      South America (São Paulo)

      \n
    • \n
    \n

    For a list of all the Amazon S3 supported Regions and endpoints, see Regions and Endpoints in the Amazon Web Services General Reference.

    \n
    \n
  • \n
\n
\n
Versioning
\n
\n

The ACL of an object is set at the object version level. By default, PUT sets\n the ACL of the current version of an object. To set the ACL of a different\n version, use the versionId subresource.

\n
\n
\n

The following operations are related to PutObjectAcl:

\n ", - "smithy.api#examples": [ - { - "title": "To grant permissions using object ACL", - "documentation": "The following example adds grants to an object ACL. The first permission grants user1 and user2 FULL_CONTROL and the AllUsers group READ permission.", - "input": { - "AccessControlPolicy": {}, - "Bucket": "examplebucket", - "GrantFullControl": "emailaddress=user1@example.com,emailaddress=user2@example.com", - "GrantRead": "uri=http://acs.amazonaws.com/groups/global/AllUsers", - "Key": "HappyFace.jpg" - }, - "output": {} - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}/{Key+}?acl", - "code": 200 - } - } - }, - "com.amazonaws.s3#PutObjectAclOutput": { - "type": "structure", - "members": { - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#PutObjectAclRequest": { - "type": "structure", - "members": { - "ACL": { - "target": "com.amazonaws.s3#ObjectCannedACL", - "traits": { - "smithy.api#documentation": "

The canned ACL to apply to the object. For more information, see Canned\n ACL.

", - "smithy.api#httpHeader": "x-amz-acl" - } - }, - "AccessControlPolicy": { - "target": "com.amazonaws.s3#AccessControlPolicy", - "traits": { - "smithy.api#documentation": "

Contains the elements that set the ACL permissions for an object per grantee.

", - "smithy.api#httpPayload": {}, - "smithy.api#xmlName": "AccessControlPolicy" - } - }, - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name that contains the object to which you want to attach the ACL.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the data. This header must be used as a message\n integrity check to verify that the request body was not corrupted in transit. For more\n information, go to RFC\n 1864.>\n

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "GrantFullControl": { - "target": "com.amazonaws.s3#GrantFullControl", - "traits": { - "smithy.api#documentation": "

Allows grantee the read, write, read ACP, and write ACP permissions on the\n bucket.

\n

This functionality is not supported for Amazon S3 on Outposts.

", - "smithy.api#httpHeader": "x-amz-grant-full-control" - } - }, - "GrantRead": { - "target": "com.amazonaws.s3#GrantRead", - "traits": { - "smithy.api#documentation": "

Allows grantee to list the objects in the bucket.

\n

This functionality is not supported for Amazon S3 on Outposts.

", - "smithy.api#httpHeader": "x-amz-grant-read" - } - }, - "GrantReadACP": { - "target": "com.amazonaws.s3#GrantReadACP", - "traits": { - "smithy.api#documentation": "

Allows grantee to read the bucket ACL.

\n

This functionality is not supported for Amazon S3 on Outposts.

", - "smithy.api#httpHeader": "x-amz-grant-read-acp" - } - }, - "GrantWrite": { - "target": "com.amazonaws.s3#GrantWrite", - "traits": { - "smithy.api#documentation": "

Allows grantee to create new objects in the bucket.

\n

For the bucket and object owners of existing objects, also allows deletions and\n overwrites of those objects.

", - "smithy.api#httpHeader": "x-amz-grant-write" - } - }, - "GrantWriteACP": { - "target": "com.amazonaws.s3#GrantWriteACP", - "traits": { - "smithy.api#documentation": "

Allows grantee to write the ACL for the applicable bucket.

\n

This functionality is not supported for Amazon S3 on Outposts.

", - "smithy.api#httpHeader": "x-amz-grant-write-acp" - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Key for which the PUT action was initiated.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Key" - } - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

Version ID used to reference a specific version of the object.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpQuery": "versionId" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutObjectLegalHold": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutObjectLegalHoldRequest" - }, - "output": { - "target": "com.amazonaws.s3#PutObjectLegalHoldOutput" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Applies a legal hold configuration to the specified object. For more information, see\n Locking\n Objects.

\n

This functionality is not supported for Amazon S3 on Outposts.

", - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}/{Key+}?legal-hold", - "code": 200 - } - } - }, - "com.amazonaws.s3#PutObjectLegalHoldOutput": { - "type": "structure", - "members": { - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#PutObjectLegalHoldRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name containing the object that you want to place a legal hold on.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The key name for the object that you want to place a legal hold on.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "LegalHold": { - "target": "com.amazonaws.s3#ObjectLockLegalHold", - "traits": { - "smithy.api#documentation": "

Container element for the legal hold configuration you want to apply to the specified\n object.

", - "smithy.api#httpPayload": {}, - "smithy.api#xmlName": "LegalHold" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

The version ID of the object that you want to place a legal hold on.

", - "smithy.api#httpQuery": "versionId" - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The MD5 hash for the request body.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutObjectLockConfiguration": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutObjectLockConfigurationRequest" - }, - "output": { - "target": "com.amazonaws.s3#PutObjectLockConfigurationOutput" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Places an Object Lock configuration on the specified bucket. The rule specified in the\n Object Lock configuration will be applied by default to every new object placed in the\n specified bucket. For more information, see Locking Objects.

\n \n
    \n
  • \n

    The DefaultRetention settings require both a mode and a\n period.

    \n
  • \n
  • \n

    The DefaultRetention period can be either Days or\n Years but you must select one. You cannot specify\n Days and Years at the same time.

    \n
  • \n
  • \n

    You can enable Object Lock for new or existing buckets. For more information,\n see Configuring Object\n Lock.

    \n
  • \n
\n
", - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?object-lock", - "code": 200 - } - } - }, - "com.amazonaws.s3#PutObjectLockConfigurationOutput": { - "type": "structure", - "members": { - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#PutObjectLockConfigurationRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket whose Object Lock configuration you want to create or replace.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ObjectLockConfiguration": { - "target": "com.amazonaws.s3#ObjectLockConfiguration", - "traits": { - "smithy.api#documentation": "

The Object Lock configuration that you want to apply to the specified bucket.

", - "smithy.api#httpPayload": {}, - "smithy.api#xmlName": "ObjectLockConfiguration" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "Token": { - "target": "com.amazonaws.s3#ObjectLockToken", - "traits": { - "smithy.api#documentation": "

A token to allow Object Lock to be enabled for an existing bucket.

", - "smithy.api#httpHeader": "x-amz-bucket-object-lock-token" - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The MD5 hash for the request body.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutObjectOutput": { - "type": "structure", - "members": { - "Expiration": { - "target": "com.amazonaws.s3#Expiration", - "traits": { - "smithy.api#documentation": "

If the expiration is configured for the object (see PutBucketLifecycleConfiguration) in the Amazon S3 User Guide,\n the response includes this header. It includes the expiry-date and\n rule-id key-value pairs that provide information about object expiration.\n The value of the rule-id is URL-encoded.

\n \n

Object expiration information is not returned in directory buckets and this header returns the value \"NotImplemented\" in all responses for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-expiration" - } - }, - "ETag": { - "target": "com.amazonaws.s3#ETag", - "traits": { - "smithy.api#documentation": "

Entity tag for the uploaded object.

\n

\n General purpose buckets - To ensure that data is not\n corrupted traversing the network, for objects where the ETag is the MD5 digest of the\n object, you can calculate the MD5 while putting an object to Amazon S3 and compare the returned\n ETag to the calculated MD5 value.

\n

\n Directory buckets - The ETag for the object in\n a directory bucket isn't the MD5 digest of the object.

", - "smithy.api#httpHeader": "ETag" - } - }, - "ChecksumCRC32": { - "target": "com.amazonaws.s3#ChecksumCRC32", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32 checksum of the object. This checksum is only be present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc32" - } - }, - "ChecksumCRC32C": { - "target": "com.amazonaws.s3#ChecksumCRC32C", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32C checksum of the object. This checksum is only present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc32c" - } - }, - "ChecksumCRC64NVME": { - "target": "com.amazonaws.s3#ChecksumCRC64NVME", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 64-bit CRC-64NVME checksum of the object. This header\n is present if the object was uploaded with the CRC-64NVME checksum algorithm, or if it\n was uploaded without a checksum (and Amazon S3 added the default checksum,\n CRC-64NVME, to the uploaded object). For more information about how\n checksums are calculated with multipart uploads, see Checking object integrity\n in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc64nvme" - } - }, - "ChecksumSHA1": { - "target": "com.amazonaws.s3#ChecksumSHA1", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA-1 digest of the object. This will only be present if the object was uploaded\n with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-sha1" - } - }, - "ChecksumSHA256": { - "target": "com.amazonaws.s3#ChecksumSHA256", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA-256 digest of the object. This will only be present if the object was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-sha256" - } - }, - "ChecksumType": { - "target": "com.amazonaws.s3#ChecksumType", - "traits": { - "smithy.api#documentation": "

This header specifies the checksum type of the object, which determines how part-level\n checksums are combined to create an object-level checksum for multipart objects. For\n PutObject uploads, the checksum type is always FULL_OBJECT. You can use this header as a\n data integrity check to verify that the checksum type that is received is the same checksum\n that was specified. For more information, see Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-type" - } - }, - "ServerSideEncryption": { - "target": "com.amazonaws.s3#ServerSideEncryption", - "traits": { - "smithy.api#documentation": "

The server-side encryption algorithm used when you store this object in Amazon S3.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

Version ID of the object.

\n

If you enable versioning for a bucket, Amazon S3 automatically generates a unique version ID\n for the object being stored. Amazon S3 returns this ID in the response. When you enable\n versioning for a bucket, if Amazon S3 receives multiple write requests for the same object\n simultaneously, it stores all of the objects. For more information about versioning, see\n Adding Objects to\n Versioning-Enabled Buckets in the Amazon S3 User Guide. For\n information about returning the versioning state of a bucket, see GetBucketVersioning.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-version-id" - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the\n response will include this header to confirm the encryption algorithm that's used.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the\n response will include this header to provide the round-trip message integrity verification\n of the customer-provided encryption key.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - }, - "SSEKMSKeyId": { - "target": "com.amazonaws.s3#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

If present, indicates the ID of the KMS key that was used for object encryption.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" - } - }, - "SSEKMSEncryptionContext": { - "target": "com.amazonaws.s3#SSEKMSEncryptionContext", - "traits": { - "smithy.api#documentation": "

If present, indicates the Amazon Web Services KMS Encryption Context to use for object encryption. The value of\n this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs. \n This value is stored as object metadata and automatically gets\n passed on to Amazon Web Services KMS for future GetObject \n operations on this object.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-context" - } - }, - "BucketKeyEnabled": { - "target": "com.amazonaws.s3#BucketKeyEnabled", - "traits": { - "smithy.api#documentation": "

Indicates whether the uploaded object uses an S3 Bucket Key for server-side encryption\n with Key Management Service (KMS) keys (SSE-KMS).

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" - } - }, - "Size": { - "target": "com.amazonaws.s3#Size", - "traits": { - "smithy.api#documentation": "

\n The size of the object in bytes. This value is only be present if you append to an object.\n

\n \n

This functionality is only supported for objects in the Amazon S3 Express One Zone storage class in directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-object-size" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#PutObjectRequest": { - "type": "structure", - "members": { - "ACL": { - "target": "com.amazonaws.s3#ObjectCannedACL", - "traits": { - "smithy.api#documentation": "

The canned ACL to apply to the object. For more information, see Canned\n ACL in the Amazon S3 User Guide.

\n

When adding a new object, you can use headers to grant ACL-based permissions to\n individual Amazon Web Services accounts or to predefined groups defined by Amazon S3. These permissions are\n then added to the ACL on the object. By default, all objects are private. Only the owner\n has full access control. For more information, see Access Control List (ACL) Overview\n and Managing\n ACLs Using the REST API in the Amazon S3 User Guide.

\n

If the bucket that you're uploading objects to uses the bucket owner enforced setting\n for S3 Object Ownership, ACLs are disabled and no longer affect permissions. Buckets that\n use this setting only accept PUT requests that don't specify an ACL or PUT requests that\n specify bucket owner full control ACLs, such as the bucket-owner-full-control\n canned ACL or an equivalent form of this ACL expressed in the XML format. PUT requests that\n contain other ACLs (for example, custom grants to certain Amazon Web Services accounts) fail and return a\n 400 error with the error code AccessControlListNotSupported.\n For more information, see Controlling ownership of\n objects and disabling ACLs in the Amazon S3 User Guide.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-acl" - } - }, - "Body": { - "target": "com.amazonaws.s3#StreamingBlob", - "traits": { - "smithy.api#default": "", - "smithy.api#documentation": "

Object data.

", - "smithy.api#httpPayload": {} - } - }, - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name to which the PUT action was initiated.

\n

\n Directory buckets -\n When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "CacheControl": { - "target": "com.amazonaws.s3#CacheControl", - "traits": { - "smithy.api#documentation": "

Can be used to specify caching behavior along the request/reply chain. For more\n information, see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.

", - "smithy.api#httpHeader": "Cache-Control" - } - }, - "ContentDisposition": { - "target": "com.amazonaws.s3#ContentDisposition", - "traits": { - "smithy.api#documentation": "

Specifies presentational information for the object. For more information, see https://www.rfc-editor.org/rfc/rfc6266#section-4.

", - "smithy.api#httpHeader": "Content-Disposition" - } - }, - "ContentEncoding": { - "target": "com.amazonaws.s3#ContentEncoding", - "traits": { - "smithy.api#documentation": "

Specifies what content encodings have been applied to the object and thus what decoding\n mechanisms must be applied to obtain the media-type referenced by the Content-Type header\n field. For more information, see https://www.rfc-editor.org/rfc/rfc9110.html#field.content-encoding.

", - "smithy.api#httpHeader": "Content-Encoding" - } - }, - "ContentLanguage": { - "target": "com.amazonaws.s3#ContentLanguage", - "traits": { - "smithy.api#documentation": "

The language the content is in.

", - "smithy.api#httpHeader": "Content-Language" - } - }, - "ContentLength": { - "target": "com.amazonaws.s3#ContentLength", - "traits": { - "smithy.api#documentation": "

Size of the body in bytes. This parameter is useful when the size of the body cannot be\n determined automatically. For more information, see https://www.rfc-editor.org/rfc/rfc9110.html#name-content-length.

", - "smithy.api#httpHeader": "Content-Length" - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the message (without the headers) according to\n RFC 1864. This header can be used as a message integrity check to verify that the data is\n the same data that was originally sent. Although it is optional, we recommend using the\n Content-MD5 mechanism as an end-to-end integrity check. For more information about REST\n request authentication, see REST Authentication.

\n \n

The Content-MD5 or x-amz-sdk-checksum-algorithm header is\n required for any request to upload an object with a retention period configured using\n Amazon S3 Object Lock. For more information, see Uploading objects to an Object Lock enabled bucket in the\n Amazon S3 User Guide.

\n
\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ContentType": { - "target": "com.amazonaws.s3#ContentType", - "traits": { - "smithy.api#documentation": "

A standard MIME type describing the format of the contents. For more information, see\n https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type.

", - "smithy.api#httpHeader": "Content-Type" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum-algorithm\n or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request.

\n

For the x-amz-checksum-algorithm\n header, replace \n algorithm\n with the supported algorithm from the following list:

\n
    \n
  • \n

    \n CRC-32\n

    \n
  • \n
  • \n

    \n CRC-32C\n

    \n
  • \n
  • \n

    \n CRC-64NVME\n

    \n
  • \n
  • \n

    \n SHA-1\n

    \n
  • \n
  • \n

    \n SHA-256\n

    \n
  • \n
\n

For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If the individual checksum value you provide through x-amz-checksum-algorithm\n doesn't match the checksum algorithm you set through x-amz-sdk-checksum-algorithm, Amazon S3 fails the request with a BadDigest error.

\n \n

The Content-MD5 or x-amz-sdk-checksum-algorithm header is\n required for any request to upload an object with a retention period configured using\n Amazon S3 Object Lock. For more information, see Uploading objects to an Object Lock enabled bucket in the\n Amazon S3 User Guide.

\n
\n

For directory buckets, when you use Amazon Web Services SDKs, CRC32 is the default checksum algorithm that's used for performance.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "ChecksumCRC32": { - "target": "com.amazonaws.s3#ChecksumCRC32", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 32-bit CRC-32 checksum of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc32" - } - }, - "ChecksumCRC32C": { - "target": "com.amazonaws.s3#ChecksumCRC32C", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 32-bit CRC-32C checksum of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc32c" - } - }, - "ChecksumCRC64NVME": { - "target": "com.amazonaws.s3#ChecksumCRC64NVME", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is\n the same data that was originally sent. This header specifies the Base64 encoded, 64-bit\n CRC-64NVME checksum of the object. The CRC-64NVME checksum is\n always a full object checksum. For more information, see Checking object integrity\n in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc64nvme" - } - }, - "ChecksumSHA1": { - "target": "com.amazonaws.s3#ChecksumSHA1", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 160-bit SHA-1 digest of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-sha1" - } - }, - "ChecksumSHA256": { - "target": "com.amazonaws.s3#ChecksumSHA256", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 256-bit SHA-256 digest of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-sha256" - } - }, - "Expires": { - "target": "com.amazonaws.s3#Expires", - "traits": { - "smithy.api#documentation": "

The date and time at which the object is no longer cacheable. For more information, see\n https://www.rfc-editor.org/rfc/rfc7234#section-5.3.

", - "smithy.api#httpHeader": "Expires" - } - }, - "IfMatch": { - "target": "com.amazonaws.s3#IfMatch", - "traits": { - "smithy.api#documentation": "

Uploads the object only if the ETag (entity tag) value provided during the WRITE\n operation matches the ETag of the object in S3. If the ETag values do not match, the\n operation returns a 412 Precondition Failed error.

\n

If a conflicting operation occurs during the upload S3 returns a 409 ConditionalRequestConflict response. On a 409 failure you should fetch the object's ETag and retry the upload.

\n

Expects the ETag value as a string.

\n

For more information about conditional requests, see RFC 7232, or Conditional requests in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "If-Match" - } - }, - "IfNoneMatch": { - "target": "com.amazonaws.s3#IfNoneMatch", - "traits": { - "smithy.api#documentation": "

Uploads the object only if the object key name does not already exist in the bucket\n specified. Otherwise, Amazon S3 returns a 412 Precondition Failed error.

\n

If a conflicting operation occurs during the upload S3 returns a 409\n ConditionalRequestConflict response. On a 409 failure you should retry the\n upload.

\n

Expects the '*' (asterisk) character.

\n

For more information about conditional requests, see RFC 7232, or Conditional requests in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "If-None-Match" - } - }, - "GrantFullControl": { - "target": "com.amazonaws.s3#GrantFullControl", - "traits": { - "smithy.api#documentation": "

Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-grant-full-control" - } - }, - "GrantRead": { - "target": "com.amazonaws.s3#GrantRead", - "traits": { - "smithy.api#documentation": "

Allows grantee to read the object data and its metadata.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-grant-read" - } - }, - "GrantReadACP": { - "target": "com.amazonaws.s3#GrantReadACP", - "traits": { - "smithy.api#documentation": "

Allows grantee to read the object ACL.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-grant-read-acp" - } - }, - "GrantWriteACP": { - "target": "com.amazonaws.s3#GrantWriteACP", - "traits": { - "smithy.api#documentation": "

Allows grantee to write the ACL for the applicable object.

\n \n
    \n
  • \n

    This functionality is not supported for directory buckets.

    \n
  • \n
  • \n

    This functionality is not supported for Amazon S3 on Outposts.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-grant-write-acp" - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Object key for which the PUT action was initiated.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Key" - } - } - }, - "WriteOffsetBytes": { - "target": "com.amazonaws.s3#WriteOffsetBytes", - "traits": { - "smithy.api#documentation": "

\n Specifies the offset for appending data to existing objects in bytes. \n The offset must be equal to the size of the existing object being appended to. \n If no object exists, setting this header to 0 will create a new object.\n

\n \n

This functionality is only supported for objects in the Amazon S3 Express One Zone storage class in directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-write-offset-bytes" - } - }, - "Metadata": { - "target": "com.amazonaws.s3#Metadata", - "traits": { - "smithy.api#documentation": "

A map of metadata to store with the object in S3.

", - "smithy.api#httpPrefixHeaders": "x-amz-meta-" - } - }, - "ServerSideEncryption": { - "target": "com.amazonaws.s3#ServerSideEncryption", - "traits": { - "smithy.api#documentation": "

The server-side encryption algorithm that was used when you store this object in Amazon S3\n (for example, AES256, aws:kms, aws:kms:dsse).

\n
    \n
  • \n

    \n General purpose buckets - You have four mutually\n exclusive options to protect data using server-side encryption in Amazon S3, depending on\n how you choose to manage the encryption keys. Specifically, the encryption key\n options are Amazon S3 managed keys (SSE-S3), Amazon Web Services KMS keys (SSE-KMS or DSSE-KMS), and\n customer-provided keys (SSE-C). Amazon S3 encrypts data with server-side encryption by\n using Amazon S3 managed keys (SSE-S3) by default. You can optionally tell Amazon S3 to encrypt\n data at rest by using server-side encryption with other key options. For more\n information, see Using Server-Side\n Encryption in the Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory buckets -\n For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your \n CreateSession requests or PUT object requests. Then, new objects \n are automatically encrypted with the desired encryption settings. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide. For more information about the encryption overriding behaviors in directory buckets, see Specifying server-side encryption with KMS for new object uploads.

    \n

    In the Zonal endpoint API calls (except CopyObject and UploadPartCopy) using the REST API, the encryption request headers must match the encryption settings that are specified in the CreateSession request. \n You can't override the values of the encryption settings (x-amz-server-side-encryption, x-amz-server-side-encryption-aws-kms-key-id, x-amz-server-side-encryption-context, and x-amz-server-side-encryption-bucket-key-enabled) that are specified in the CreateSession request. \n You don't need to explicitly specify these encryption settings values in Zonal endpoint API calls, and \n Amazon S3 will use the encryption settings values from the CreateSession request to protect new objects in the directory bucket. \n

    \n \n

    When you use the CLI or the Amazon Web Services SDKs, for CreateSession, the session token refreshes automatically to avoid service interruptions when a session expires. The CLI or the Amazon Web Services SDKs use the bucket's default encryption configuration for the \n CreateSession request. It's not supported to override the encryption settings values in the CreateSession request. \n So in the Zonal endpoint API calls (except CopyObject and UploadPartCopy), \n the encryption request headers must match the default encryption configuration of the directory bucket.\n\n

    \n
    \n
  • \n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3#StorageClass", - "traits": { - "smithy.api#documentation": "

By default, Amazon S3 uses the STANDARD Storage Class to store newly created objects. The\n STANDARD storage class provides high durability and high availability. Depending on\n performance needs, you can specify a different Storage Class. For more information, see\n Storage\n Classes in the Amazon S3 User Guide.

\n \n
    \n
  • \n

    For directory buckets, only the S3 Express One Zone storage class is supported to store\n newly created objects.

    \n
  • \n
  • \n

    Amazon S3 on Outposts only uses the OUTPOSTS Storage Class.

    \n
  • \n
\n
", - "smithy.api#httpHeader": "x-amz-storage-class" - } - }, - "WebsiteRedirectLocation": { - "target": "com.amazonaws.s3#WebsiteRedirectLocation", - "traits": { - "smithy.api#documentation": "

If the bucket is configured as a website, redirects requests for this object to another\n object in the same bucket or to an external URL. Amazon S3 stores the value of this header in\n the object metadata. For information about object metadata, see Object Key and Metadata in the\n Amazon S3 User Guide.

\n

In the following example, the request header sets the redirect to an object\n (anotherPage.html) in the same bucket:

\n

\n x-amz-website-redirect-location: /anotherPage.html\n

\n

In the following example, the request header sets the object redirect to another\n website:

\n

\n x-amz-website-redirect-location: http://www.example.com/\n

\n

For more information about website hosting in Amazon S3, see Hosting Websites on Amazon S3 and\n How to\n Configure Website Page Redirects in the Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-website-redirect-location" - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

Specifies the algorithm to use when encrypting the object (for example,\n AES256).

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKey": { - "target": "com.amazonaws.s3#SSECustomerKey", - "traits": { - "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This\n value is used to store the object and then it is discarded; Amazon S3 does not store the\n encryption key. The key must be appropriate for use with the algorithm specified in the\n x-amz-server-side-encryption-customer-algorithm header.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses\n this header for a message integrity check to ensure that the encryption key was transmitted\n without error.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - }, - "SSEKMSKeyId": { - "target": "com.amazonaws.s3#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

Specifies the KMS key ID (Key ID, Key ARN, or Key Alias) to use for object encryption. If the KMS key doesn't exist in the same\n account that's issuing the command, you must use the full Key ARN not the Key ID.

\n

\n General purpose buckets - If you specify x-amz-server-side-encryption with aws:kms or aws:kms:dsse, this header specifies the ID (Key ID, Key ARN, or Key Alias) of the KMS \n key to use. If you specify\n x-amz-server-side-encryption:aws:kms or\n x-amz-server-side-encryption:aws:kms:dsse, but do not provide x-amz-server-side-encryption-aws-kms-key-id, Amazon S3 uses the Amazon Web Services managed key\n (aws/s3) to protect the data.

\n

\n Directory buckets - If you specify x-amz-server-side-encryption with aws:kms, the \n x-amz-server-side-encryption-aws-kms-key-id header is implicitly assigned the ID of the KMS \n symmetric encryption customer managed key that's configured for your directory bucket's default encryption setting. \n If you want to specify the \n x-amz-server-side-encryption-aws-kms-key-id header explicitly, you can only specify it with the ID (Key ID or Key ARN) of the KMS \n customer managed key that's configured for your directory bucket's default encryption setting. Otherwise, you get an HTTP 400 Bad Request error. Only use the key ID or key ARN. The key alias format of the KMS key isn't supported. Your SSE-KMS configuration can only support 1 customer managed key per directory bucket for the lifetime of the bucket. \nThe Amazon Web Services managed key (aws/s3) isn't supported. \n

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" - } - }, - "SSEKMSEncryptionContext": { - "target": "com.amazonaws.s3#SSEKMSEncryptionContext", - "traits": { - "smithy.api#documentation": "

Specifies the Amazon Web Services KMS Encryption Context as an additional encryption context to use for object encryption. The value of\n this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs. \n This value is stored as object metadata and automatically gets passed on\n to Amazon Web Services KMS for future GetObject operations on\n this object.

\n

\n General purpose buckets - This value must be explicitly added during CopyObject operations if you want an additional encryption context for your object. For more information, see Encryption context in the Amazon S3 User Guide.

\n

\n Directory buckets - You can optionally provide an explicit encryption context value. The value must match the default encryption context - the bucket Amazon Resource Name (ARN). An additional encryption context value is not supported.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-context" - } - }, - "BucketKeyEnabled": { - "target": "com.amazonaws.s3#BucketKeyEnabled", - "traits": { - "smithy.api#documentation": "

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with\n server-side encryption using Key Management Service (KMS) keys (SSE-KMS).

\n

\n General purpose buckets - Setting this header to\n true causes Amazon S3 to use an S3 Bucket Key for object encryption with\n SSE-KMS. Also, specifying this header with a PUT action doesn't affect bucket-level settings for S3\n Bucket Key.

\n

\n Directory buckets - S3 Bucket Keys are always enabled for GET and PUT operations in a directory bucket and can’t be disabled. S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets \nto directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through CopyObject, UploadPartCopy, the Copy operation in Batch Operations, or \n the import jobs. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "Tagging": { - "target": "com.amazonaws.s3#TaggingHeader", - "traits": { - "smithy.api#documentation": "

The tag-set for the object. The tag-set must be encoded as URL Query parameters. (For\n example, \"Key1=Value1\")

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-tagging" - } - }, - "ObjectLockMode": { - "target": "com.amazonaws.s3#ObjectLockMode", - "traits": { - "smithy.api#documentation": "

The Object Lock mode that you want to apply to this object.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-object-lock-mode" - } - }, - "ObjectLockRetainUntilDate": { - "target": "com.amazonaws.s3#ObjectLockRetainUntilDate", - "traits": { - "smithy.api#documentation": "

The date and time when you want this object's Object Lock to expire. Must be formatted\n as a timestamp parameter.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-object-lock-retain-until-date" - } - }, - "ObjectLockLegalHoldStatus": { - "target": "com.amazonaws.s3#ObjectLockLegalHoldStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether a legal hold will be applied to this object. For more information\n about S3 Object Lock, see Object Lock in the\n Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-object-lock-legal-hold" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutObjectRetention": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutObjectRetentionRequest" - }, - "output": { - "target": "com.amazonaws.s3#PutObjectRetentionOutput" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Places an Object Retention configuration on an object. For more information, see Locking Objects.\n Users or accounts require the s3:PutObjectRetention permission in order to\n place an Object Retention configuration on objects. Bypassing a Governance Retention\n configuration requires the s3:BypassGovernanceRetention permission.

\n

This functionality is not supported for Amazon S3 on Outposts.

", - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}/{Key+}?retention", - "code": 200 - } - } - }, - "com.amazonaws.s3#PutObjectRetentionOutput": { - "type": "structure", - "members": { - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#PutObjectRetentionRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name that contains the object you want to apply this Object Retention\n configuration to.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The key name for the object that you want to apply this Object Retention configuration\n to.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "Retention": { - "target": "com.amazonaws.s3#ObjectLockRetention", - "traits": { - "smithy.api#documentation": "

The container element for the Object Retention configuration.

", - "smithy.api#httpPayload": {}, - "smithy.api#xmlName": "Retention" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

The version ID for the object that you want to apply this Object Retention configuration\n to.

", - "smithy.api#httpQuery": "versionId" - } - }, - "BypassGovernanceRetention": { - "target": "com.amazonaws.s3#BypassGovernanceRetention", - "traits": { - "smithy.api#documentation": "

Indicates whether this action should bypass Governance-mode restrictions.

", - "smithy.api#httpHeader": "x-amz-bypass-governance-retention" - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The MD5 hash for the request body.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutObjectTagging": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutObjectTaggingRequest" - }, - "output": { - "target": "com.amazonaws.s3#PutObjectTaggingOutput" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Sets the supplied tag-set to an object that already exists in a bucket. A tag is a\n key-value pair. For more information, see Object Tagging.

\n

You can associate tags with an object by sending a PUT request against the tagging\n subresource that is associated with the object. You can retrieve tags by sending a GET\n request. For more information, see GetObjectTagging.

\n

For tagging-related restrictions related to characters and encodings, see Tag\n Restrictions. Note that Amazon S3 limits the maximum number of tags to 10 tags per\n object.

\n

To use this operation, you must have permission to perform the\n s3:PutObjectTagging action. By default, the bucket owner has this\n permission and can grant this permission to others.

\n

To put tags of any other version, use the versionId query parameter. You\n also need permission for the s3:PutObjectVersionTagging action.

\n

\n PutObjectTagging has the following special errors. For more Amazon S3 errors\n see, Error\n Responses.

\n
    \n
  • \n

    \n InvalidTag - The tag provided was not a valid tag. This error\n can occur if the tag did not pass input validation. For more information, see Object\n Tagging.

    \n
  • \n
  • \n

    \n MalformedXML - The XML provided does not match the\n schema.

    \n
  • \n
  • \n

    \n OperationAborted - A conflicting conditional action is\n currently in progress against this resource. Please try again.

    \n
  • \n
  • \n

    \n InternalError - The service was unable to apply the provided\n tag to the object.

    \n
  • \n
\n

The following operations are related to PutObjectTagging:

\n ", - "smithy.api#examples": [ - { - "title": "To add tags to an existing object", - "documentation": "The following example adds tags to an existing object.", - "input": { - "Bucket": "examplebucket", - "Key": "HappyFace.jpg", - "Tagging": { - "TagSet": [ - { - "Key": "Key3", - "Value": "Value3" - }, - { - "Key": "Key4", - "Value": "Value4" - } - ] - } - }, - "output": { - "VersionId": "null" - } - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}/{Key+}?tagging", - "code": 200 - } - } - }, - "com.amazonaws.s3#PutObjectTaggingOutput": { - "type": "structure", - "members": { - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

The versionId of the object the tag-set was added to.

", - "smithy.api#httpHeader": "x-amz-version-id" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#PutObjectTaggingRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name containing the object.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Name of the object key.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

The versionId of the object that the tag-set will be added to.

", - "smithy.api#httpQuery": "versionId" - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The MD5 hash for the request body.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "Tagging": { - "target": "com.amazonaws.s3#Tagging", - "traits": { - "smithy.api#documentation": "

Container for the TagSet and Tag elements

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "Tagging" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#PutPublicAccessBlock": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#PutPublicAccessBlockRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm", - "requestChecksumRequired": true - }, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Creates or modifies the PublicAccessBlock configuration for an Amazon S3 bucket.\n To use this operation, you must have the s3:PutBucketPublicAccessBlock\n permission. For more information about Amazon S3 permissions, see Specifying Permissions in a\n Policy.

\n \n

When Amazon S3 evaluates the PublicAccessBlock configuration for a bucket or\n an object, it checks the PublicAccessBlock configuration for both the\n bucket (or the bucket that contains the object) and the bucket owner's account. If the\n PublicAccessBlock configurations are different between the bucket and\n the account, Amazon S3 uses the most restrictive combination of the bucket-level and\n account-level settings.

\n
\n

For more information about when Amazon S3 considers a bucket or an object public, see The Meaning of \"Public\".

\n

The following operations are related to PutPublicAccessBlock:

\n ", - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}?publicAccessBlock", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseS3ExpressControlEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#PutPublicAccessBlockRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the Amazon S3 bucket whose PublicAccessBlock configuration you want\n to set.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The MD5 hash of the PutPublicAccessBlock request body.

\n

For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.

", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "PublicAccessBlockConfiguration": { - "target": "com.amazonaws.s3#PublicAccessBlockConfiguration", - "traits": { - "smithy.api#documentation": "

The PublicAccessBlock configuration that you want to apply to this Amazon S3\n bucket. You can enable the configuration options in any combination. For more information\n about when Amazon S3 considers a bucket or object public, see The Meaning of \"Public\" in the Amazon S3 User Guide.

", - "smithy.api#httpPayload": {}, - "smithy.api#required": {}, - "smithy.api#xmlName": "PublicAccessBlockConfiguration" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#QueueArn": { - "type": "string" - }, - "com.amazonaws.s3#QueueConfiguration": { - "type": "structure", - "members": { - "Id": { - "target": "com.amazonaws.s3#NotificationId" - }, - "QueueArn": { - "target": "com.amazonaws.s3#QueueArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message\n when it detects events of the specified type.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "Queue" - } - }, - "Events": { - "target": "com.amazonaws.s3#EventList", - "traits": { - "smithy.api#documentation": "

A collection of bucket events for which to send notifications

", - "smithy.api#required": {}, - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Event" - } - }, - "Filter": { - "target": "com.amazonaws.s3#NotificationConfigurationFilter" - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the configuration for publishing messages to an Amazon Simple Queue Service\n (Amazon SQS) queue when Amazon S3 detects specified events.

" - } - }, - "com.amazonaws.s3#QueueConfigurationList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#QueueConfiguration" - } - }, - "com.amazonaws.s3#Quiet": { - "type": "boolean" - }, - "com.amazonaws.s3#QuoteCharacter": { - "type": "string" - }, - "com.amazonaws.s3#QuoteEscapeCharacter": { - "type": "string" - }, - "com.amazonaws.s3#QuoteFields": { - "type": "enum", - "members": { - "ALWAYS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ALWAYS" - } - }, - "ASNEEDED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ASNEEDED" - } - } - } - }, - "com.amazonaws.s3#Range": { - "type": "string" - }, - "com.amazonaws.s3#RecordDelimiter": { - "type": "string" - }, - "com.amazonaws.s3#RecordsEvent": { - "type": "structure", - "members": { - "Payload": { - "target": "com.amazonaws.s3#Body", - "traits": { - "smithy.api#documentation": "

The byte array of partial, one or more result records. S3 Select doesn't guarantee that\n a record will be self-contained in one record frame. To ensure continuous streaming of\n data, S3 Select might split the same record across multiple record frames instead of\n aggregating the results in memory. Some S3 clients (for example, the SDK for Java) handle this behavior by creating a ByteStream out of the response by\n default. Other clients might not handle this behavior by default. In those cases, you must\n aggregate the results on the client side and parse the response.

", - "smithy.api#eventPayload": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

The container for the records event.

" - } - }, - "com.amazonaws.s3#Redirect": { - "type": "structure", - "members": { - "HostName": { - "target": "com.amazonaws.s3#HostName", - "traits": { - "smithy.api#documentation": "

The host name to use in the redirect request.

" - } - }, - "HttpRedirectCode": { - "target": "com.amazonaws.s3#HttpRedirectCode", - "traits": { - "smithy.api#documentation": "

The HTTP redirect code to use on the response. Not required if one of the siblings is\n present.

" - } - }, - "Protocol": { - "target": "com.amazonaws.s3#Protocol", - "traits": { - "smithy.api#documentation": "

Protocol to use when redirecting requests. The default is the protocol that is used in\n the original request.

" - } - }, - "ReplaceKeyPrefixWith": { - "target": "com.amazonaws.s3#ReplaceKeyPrefixWith", - "traits": { - "smithy.api#documentation": "

The object key prefix to use in the redirect request. For example, to redirect requests\n for all pages with prefix docs/ (objects in the docs/ folder) to\n documents/, you can set a condition block with KeyPrefixEquals\n set to docs/ and in the Redirect set ReplaceKeyPrefixWith to\n /documents. Not required if one of the siblings is present. Can be present\n only if ReplaceKeyWith is not provided.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
" - } - }, - "ReplaceKeyWith": { - "target": "com.amazonaws.s3#ReplaceKeyWith", - "traits": { - "smithy.api#documentation": "

The specific object key to use in the redirect request. For example, redirect request to\n error.html. Not required if one of the siblings is present. Can be present\n only if ReplaceKeyPrefixWith is not provided.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies how requests are redirected. In the event of an error, you can specify a\n different error code to return.

" - } - }, - "com.amazonaws.s3#RedirectAllRequestsTo": { - "type": "structure", - "members": { - "HostName": { - "target": "com.amazonaws.s3#HostName", - "traits": { - "smithy.api#documentation": "

Name of the host where requests are redirected.

", - "smithy.api#required": {} - } - }, - "Protocol": { - "target": "com.amazonaws.s3#Protocol", - "traits": { - "smithy.api#documentation": "

Protocol to use when redirecting requests. The default is the protocol that is used in\n the original request.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3\n bucket.

" - } - }, - "com.amazonaws.s3#Region": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 0, - "max": 20 - } - } - }, - "com.amazonaws.s3#ReplaceKeyPrefixWith": { - "type": "string" - }, - "com.amazonaws.s3#ReplaceKeyWith": { - "type": "string" - }, - "com.amazonaws.s3#ReplicaKmsKeyID": { - "type": "string" - }, - "com.amazonaws.s3#ReplicaModifications": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3#ReplicaModificationsStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether Amazon S3 replicates modifications on replicas.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A filter that you can specify for selection for modifications on replicas. Amazon S3 doesn't\n replicate replica modifications by default. In the latest version of replication\n configuration (when Filter is specified), you can specify this element and set\n the status to Enabled to replicate modifications on replicas.

\n \n

If you don't specify the Filter element, Amazon S3 assumes that the\n replication configuration is the earlier version, V1. In the earlier version, this\n element is not allowed.

\n
" - } - }, - "com.amazonaws.s3#ReplicaModificationsStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3#ReplicationConfiguration": { - "type": "structure", - "members": { - "Role": { - "target": "com.amazonaws.s3#Role", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that Amazon S3 assumes when\n replicating objects. For more information, see How to Set Up Replication\n in the Amazon S3 User Guide.

", - "smithy.api#required": {} - } - }, - "Rules": { - "target": "com.amazonaws.s3#ReplicationRules", - "traits": { - "smithy.api#documentation": "

A container for one or more replication rules. A replication configuration must have at\n least one rule and can contain a maximum of 1,000 rules.

", - "smithy.api#required": {}, - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Rule" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for replication rules. You can add up to 1,000 rules. The maximum size of a\n replication configuration is 2 MB.

" - } - }, - "com.amazonaws.s3#ReplicationRule": { - "type": "structure", - "members": { - "ID": { - "target": "com.amazonaws.s3#ID", - "traits": { - "smithy.api#documentation": "

A unique identifier for the rule. The maximum value is 255 characters.

" - } - }, - "Priority": { - "target": "com.amazonaws.s3#Priority", - "traits": { - "smithy.api#documentation": "

The priority indicates which rule has precedence whenever two or more replication rules\n conflict. Amazon S3 will attempt to replicate objects according to all replication rules.\n However, if there are two or more rules with the same destination bucket, then objects will\n be replicated according to the rule with the highest priority. The higher the number, the\n higher the priority.

\n

For more information, see Replication in the\n Amazon S3 User Guide.

" - } - }, - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#deprecated": {}, - "smithy.api#documentation": "

An object key name prefix that identifies the object or objects to which the rule\n applies. The maximum prefix length is 1,024 characters. To include all objects in a bucket,\n specify an empty string.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
" - } - }, - "Filter": { - "target": "com.amazonaws.s3#ReplicationRuleFilter" - }, - "Status": { - "target": "com.amazonaws.s3#ReplicationRuleStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether the rule is enabled.

", - "smithy.api#required": {} - } - }, - "SourceSelectionCriteria": { - "target": "com.amazonaws.s3#SourceSelectionCriteria", - "traits": { - "smithy.api#documentation": "

A container that describes additional filters for identifying the source objects that\n you want to replicate. You can choose to enable or disable the replication of these\n objects. Currently, Amazon S3 supports only the filter that you can specify for objects created\n with server-side encryption using a customer managed key stored in Amazon Web Services Key Management Service\n (SSE-KMS).

" - } - }, - "ExistingObjectReplication": { - "target": "com.amazonaws.s3#ExistingObjectReplication", - "traits": { - "smithy.api#documentation": "

Optional configuration to replicate existing source bucket objects.

\n \n

This parameter is no longer supported. To replicate existing objects, see Replicating existing objects with S3 Batch Replication in the\n Amazon S3 User Guide.

\n
" - } - }, - "Destination": { - "target": "com.amazonaws.s3#Destination", - "traits": { - "smithy.api#documentation": "

A container for information about the replication destination and its configurations\n including enabling the S3 Replication Time Control (S3 RTC).

", - "smithy.api#required": {} - } - }, - "DeleteMarkerReplication": { - "target": "com.amazonaws.s3#DeleteMarkerReplication" - } - }, - "traits": { - "smithy.api#documentation": "

Specifies which Amazon S3 objects to replicate and where to store the replicas.

" - } - }, - "com.amazonaws.s3#ReplicationRuleAndOperator": { - "type": "structure", - "members": { - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

An object key name prefix that identifies the subset of objects to which the rule\n applies.

" - } - }, - "Tags": { - "target": "com.amazonaws.s3#TagSet", - "traits": { - "smithy.api#documentation": "

An array of tags containing key and value pairs.

", - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Tag" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for specifying rule filters. The filters determine the subset of objects to\n which the rule applies. This element is required only if you specify more than one filter.

\n

For example:

\n
    \n
  • \n

    If you specify both a Prefix and a Tag filter, wrap\n these filters in an And tag.

    \n
  • \n
  • \n

    If you specify a filter based on multiple tags, wrap the Tag elements\n in an And tag.

    \n
  • \n
" - } - }, - "com.amazonaws.s3#ReplicationRuleFilter": { - "type": "structure", - "members": { - "Prefix": { - "target": "com.amazonaws.s3#Prefix", - "traits": { - "smithy.api#documentation": "

An object key name prefix that identifies the subset of objects to which the rule\n applies.

\n \n

Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints.

\n
" - } - }, - "Tag": { - "target": "com.amazonaws.s3#Tag", - "traits": { - "smithy.api#documentation": "

A container for specifying a tag key and value.

\n

The rule applies only to objects that have the tag in their tag set.

" - } - }, - "And": { - "target": "com.amazonaws.s3#ReplicationRuleAndOperator", - "traits": { - "smithy.api#documentation": "

A container for specifying rule filters. The filters determine the subset of objects to\n which the rule applies. This element is required only if you specify more than one filter.\n For example:

\n
    \n
  • \n

    If you specify both a Prefix and a Tag filter, wrap\n these filters in an And tag.

    \n
  • \n
  • \n

    If you specify a filter based on multiple tags, wrap the Tag elements\n in an And tag.

    \n
  • \n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

A filter that identifies the subset of objects to which the replication rule applies. A\n Filter must specify exactly one Prefix, Tag, or\n an And child element.

" - } - }, - "com.amazonaws.s3#ReplicationRuleStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3#ReplicationRules": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#ReplicationRule" - } - }, - "com.amazonaws.s3#ReplicationStatus": { - "type": "enum", - "members": { - "COMPLETE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "COMPLETE" - } - }, - "PENDING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "PENDING" - } - }, - "FAILED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "FAILED" - } - }, - "REPLICA": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "REPLICA" - } - }, - "COMPLETED": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "COMPLETED" - } - } - } - }, - "com.amazonaws.s3#ReplicationTime": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3#ReplicationTimeStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether the replication time is enabled.

", - "smithy.api#required": {} - } - }, - "Time": { - "target": "com.amazonaws.s3#ReplicationTimeValue", - "traits": { - "smithy.api#documentation": "

A container specifying the time by which replication should be complete for all objects\n and operations on objects.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A container specifying S3 Replication Time Control (S3 RTC) related information, including whether S3 RTC is\n enabled and the time when all objects and operations on objects must be replicated. Must be\n specified together with a Metrics block.

" - } - }, - "com.amazonaws.s3#ReplicationTimeStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3#ReplicationTimeValue": { - "type": "structure", - "members": { - "Minutes": { - "target": "com.amazonaws.s3#Minutes", - "traits": { - "smithy.api#documentation": "

Contains an integer specifying time in minutes.

\n

Valid value: 15

" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container specifying the time value for S3 Replication Time Control (S3 RTC) and replication metrics\n EventThreshold.

" - } - }, - "com.amazonaws.s3#RequestCharged": { - "type": "enum", - "members": { - "requester": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "requester" - } - } - }, - "traits": { - "smithy.api#documentation": "

If present, indicates that the requester was successfully charged for the\n request.

\n \n

This functionality is not supported for directory buckets.

\n
" - } - }, - "com.amazonaws.s3#RequestPayer": { - "type": "enum", - "members": { - "requester": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "requester" - } - } - }, - "traits": { - "smithy.api#documentation": "

Confirms that the requester knows that they will be charged for the request. Bucket\n owners need not specify this parameter in their requests. If either the source or\n destination S3 bucket has Requester Pays enabled, the requester will pay for corresponding\n charges to copy the object. For information about downloading objects from Requester Pays\n buckets, see Downloading Objects in\n Requester Pays Buckets in the Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.

\n
" - } - }, - "com.amazonaws.s3#RequestPaymentConfiguration": { - "type": "structure", - "members": { - "Payer": { - "target": "com.amazonaws.s3#Payer", - "traits": { - "smithy.api#documentation": "

Specifies who pays for the download and request fees.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for Payer.

" - } - }, - "com.amazonaws.s3#RequestProgress": { - "type": "structure", - "members": { - "Enabled": { - "target": "com.amazonaws.s3#EnableRequestProgress", - "traits": { - "smithy.api#documentation": "

Specifies whether periodic QueryProgress frames should be sent. Valid values: TRUE,\n FALSE. Default value: FALSE.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for specifying if periodic QueryProgress messages should be\n sent.

" - } - }, - "com.amazonaws.s3#RequestRoute": { - "type": "string" - }, - "com.amazonaws.s3#RequestToken": { - "type": "string" - }, - "com.amazonaws.s3#ResponseCacheControl": { - "type": "string" - }, - "com.amazonaws.s3#ResponseContentDisposition": { - "type": "string" - }, - "com.amazonaws.s3#ResponseContentEncoding": { - "type": "string" - }, - "com.amazonaws.s3#ResponseContentLanguage": { - "type": "string" - }, - "com.amazonaws.s3#ResponseContentType": { - "type": "string" - }, - "com.amazonaws.s3#ResponseExpires": { - "type": "timestamp", - "traits": { - "smithy.api#timestampFormat": "http-date" - } - }, - "com.amazonaws.s3#Restore": { - "type": "string" - }, - "com.amazonaws.s3#RestoreExpiryDate": { - "type": "timestamp" - }, - "com.amazonaws.s3#RestoreObject": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#RestoreObjectRequest" - }, - "output": { - "target": "com.amazonaws.s3#RestoreObjectOutput" - }, - "errors": [ - { - "target": "com.amazonaws.s3#ObjectAlreadyInActiveTierError" - } - ], - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm" - }, - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Restores an archived copy of an object back into Amazon S3

\n

This functionality is not supported for Amazon S3 on Outposts.

\n

This action performs the following types of requests:

\n
    \n
  • \n

    \n restore an archive - Restore an archived object

    \n
  • \n
\n

For more information about the S3 structure in the request body, see the\n following:

\n \n
\n
Permissions
\n
\n

To use this operation, you must have permissions to perform the\n s3:RestoreObject action. The bucket owner has this permission by\n default and can grant this permission to others. For more information about\n permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources in the\n Amazon S3 User Guide.

\n
\n
Restoring objects
\n
\n

Objects that you archive to the S3 Glacier Flexible Retrieval Flexible Retrieval\n or S3 Glacier Deep Archive storage class, and S3 Intelligent-Tiering Archive or\n S3 Intelligent-Tiering Deep Archive tiers, are not accessible in real time. For objects in the\n S3 Glacier Flexible Retrieval Flexible Retrieval or S3 Glacier Deep Archive\n storage classes, you must first initiate a restore request, and then wait until a\n temporary copy of the object is available. If you want a permanent copy of the\n object, create a copy of it in the Amazon S3 Standard storage class in your S3 bucket.\n To access an archived object, you must restore the object for the duration (number\n of days) that you specify. For objects in the Archive Access or Deep Archive\n Access tiers of S3 Intelligent-Tiering, you must first initiate a restore request,\n and then wait until the object is moved into the Frequent Access tier.

\n

To restore a specific object version, you can provide a version ID. If you\n don't provide a version ID, Amazon S3 restores the current version.

\n

When restoring an archived object, you can specify one of the following data\n access tier options in the Tier element of the request body:

\n
    \n
  • \n

    \n Expedited - Expedited retrievals allow you to quickly access\n your data stored in the S3 Glacier Flexible Retrieval Flexible Retrieval\n storage class or S3 Intelligent-Tiering Archive tier when occasional urgent requests\n for restoring archives are required. For all but the largest archived\n objects (250 MB+), data accessed using Expedited retrievals is typically\n made available within 1–5 minutes. Provisioned capacity ensures that\n retrieval capacity for Expedited retrievals is available when you need it.\n Expedited retrievals and provisioned capacity are not available for objects\n stored in the S3 Glacier Deep Archive storage class or\n S3 Intelligent-Tiering Deep Archive tier.

    \n
  • \n
  • \n

    \n Standard - Standard retrievals allow you to access any of\n your archived objects within several hours. This is the default option for\n retrieval requests that do not specify the retrieval option. Standard\n retrievals typically finish within 3–5 hours for objects stored in the\n S3 Glacier Flexible Retrieval Flexible Retrieval storage class or\n S3 Intelligent-Tiering Archive tier. They typically finish within 12 hours for\n objects stored in the S3 Glacier Deep Archive storage class or\n S3 Intelligent-Tiering Deep Archive tier. Standard retrievals are free for objects stored\n in S3 Intelligent-Tiering.

    \n
  • \n
  • \n

    \n Bulk - Bulk retrievals free for objects stored in the\n S3 Glacier Flexible Retrieval and S3 Intelligent-Tiering storage classes,\n enabling you to retrieve large amounts, even petabytes, of data at no cost.\n Bulk retrievals typically finish within 5–12 hours for objects stored in the\n S3 Glacier Flexible Retrieval Flexible Retrieval storage class or\n S3 Intelligent-Tiering Archive tier. Bulk retrievals are also the lowest-cost\n retrieval option when restoring objects from\n S3 Glacier Deep Archive. They typically finish within 48 hours for\n objects stored in the S3 Glacier Deep Archive storage class or\n S3 Intelligent-Tiering Deep Archive tier.

    \n
  • \n
\n

For more information about archive retrieval options and provisioned capacity\n for Expedited data access, see Restoring Archived\n Objects in the Amazon S3 User Guide.

\n

You can use Amazon S3 restore speed upgrade to change the restore speed to a faster\n speed while it is in progress. For more information, see Upgrading the speed of an in-progress restore in the\n Amazon S3 User Guide.

\n

To get the status of object restoration, you can send a HEAD\n request. Operations return the x-amz-restore header, which provides\n information about the restoration status, in the response. You can use Amazon S3 event\n notifications to notify you when a restore is initiated or completed. For more\n information, see Configuring Amazon S3 Event\n Notifications in the Amazon S3 User Guide.

\n

After restoring an archived object, you can update the restoration period by\n reissuing the request with a new period. Amazon S3 updates the restoration period\n relative to the current time and charges only for the request-there are no\n data transfer charges. You cannot update the restoration period when Amazon S3 is\n actively processing your current restore request for the object.

\n

If your bucket has a lifecycle configuration with a rule that includes an\n expiration action, the object expiration overrides the life span that you specify\n in a restore request. For example, if you restore an object copy for 10 days, but\n the object is scheduled to expire in 3 days, Amazon S3 deletes the object in 3 days.\n For more information about lifecycle configuration, see PutBucketLifecycleConfiguration and Object Lifecycle\n Management in Amazon S3 User Guide.

\n
\n
Responses
\n
\n

A successful action returns either the 200 OK or 202\n Accepted status code.

\n
    \n
  • \n

    If the object is not previously restored, then Amazon S3 returns 202\n Accepted in the response.

    \n
  • \n
  • \n

    If the object is previously restored, Amazon S3 returns 200 OK in\n the response.

    \n
  • \n
\n
    \n
  • \n

    Special errors:

    \n
      \n
    • \n

      \n Code: RestoreAlreadyInProgress\n

      \n
    • \n
    • \n

      \n Cause: Object restore is already in progress.\n

      \n
    • \n
    • \n

      \n HTTP Status Code: 409 Conflict\n

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: Client\n

      \n
    • \n
    \n
  • \n
  • \n
      \n
    • \n

      \n Code: GlacierExpeditedRetrievalNotAvailable\n

      \n
    • \n
    • \n

      \n Cause: expedited retrievals are currently not available.\n Try again later. (Returned if there is insufficient capacity to\n process the Expedited request. This error applies only to Expedited\n retrievals and not to S3 Standard or Bulk retrievals.)\n

      \n
    • \n
    • \n

      \n HTTP Status Code: 503\n

      \n
    • \n
    • \n

      \n SOAP Fault Code Prefix: N/A\n

      \n
    • \n
    \n
  • \n
\n
\n
\n

The following operations are related to RestoreObject:

\n ", - "smithy.api#examples": [ - { - "title": "To restore an archived object", - "documentation": "The following example restores for one day an archived copy of an object back into Amazon S3 bucket.", - "input": { - "Bucket": "examplebucket", - "Key": "archivedobjectkey", - "RestoreRequest": { - "Days": 1, - "GlacierJobParameters": { - "Tier": "Expedited" + }, + "com.amazonaws.s3#WebsiteConfiguration": { + "type": "structure", + "members": { + "ErrorDocument": { + "target": "com.amazonaws.s3#ErrorDocument", + "traits": { + "smithy.api#documentation": "

The name of the error document for the website.

" + } + }, + "IndexDocument": { + "target": "com.amazonaws.s3#IndexDocument", + "traits": { + "smithy.api#documentation": "

The name of the index document for the website.

" + } + }, + "RedirectAllRequestsTo": { + "target": "com.amazonaws.s3#RedirectAllRequestsTo", + "traits": { + "smithy.api#documentation": "

The redirect behavior for every request to this bucket's website endpoint.

\n \n

If you specify this property, you can't specify any other property.

\n
" + } + }, + "RoutingRules": { + "target": "com.amazonaws.s3#RoutingRules", + "traits": { + "smithy.api#documentation": "

Rules that define when a redirect is applied and the redirect behavior.

" + } } - } }, - "output": {} - } - ], - "smithy.api#http": { - "method": "POST", - "uri": "/{Bucket}/{Key+}?restore", - "code": 200 - } - } - }, - "com.amazonaws.s3#RestoreObjectOutput": { - "type": "structure", - "members": { - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - }, - "RestoreOutputPath": { - "target": "com.amazonaws.s3#RestoreOutputPath", - "traits": { - "smithy.api#documentation": "

Indicates the path in the provided S3 output location where Select results will be\n restored to.

", - "smithy.api#httpHeader": "x-amz-restore-output-path" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#RestoreObjectRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name containing the object to restore.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Object key for which the action was initiated.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

VersionId used to reference a specific version of the object.

", - "smithy.api#httpQuery": "versionId" - } - }, - "RestoreRequest": { - "target": "com.amazonaws.s3#RestoreRequest", - "traits": { - "smithy.api#httpPayload": {}, - "smithy.api#xmlName": "RestoreRequest" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#RestoreOutputPath": { - "type": "string" - }, - "com.amazonaws.s3#RestoreRequest": { - "type": "structure", - "members": { - "Days": { - "target": "com.amazonaws.s3#Days", - "traits": { - "smithy.api#documentation": "

Lifetime of the active copy in days. Do not use with restores that specify\n OutputLocation.

\n

The Days element is required for regular restores, and must not be provided for select\n requests.

" - } - }, - "GlacierJobParameters": { - "target": "com.amazonaws.s3#GlacierJobParameters", - "traits": { - "smithy.api#documentation": "

S3 Glacier related parameters pertaining to this job. Do not use with restores that\n specify OutputLocation.

" - } - }, - "Type": { - "target": "com.amazonaws.s3#RestoreRequestType", - "traits": { - "smithy.api#documentation": "\n

Amazon S3 Select is no longer available to new customers. Existing customers of Amazon S3 Select can continue to use the feature as usual. Learn more\n

\n
\n

Type of restore request.

" - } - }, - "Tier": { - "target": "com.amazonaws.s3#Tier", - "traits": { - "smithy.api#documentation": "

Retrieval tier at which the restore will be processed.

" - } - }, - "Description": { - "target": "com.amazonaws.s3#Description", - "traits": { - "smithy.api#documentation": "

The optional description for the job.

" - } - }, - "SelectParameters": { - "target": "com.amazonaws.s3#SelectParameters", - "traits": { - "smithy.api#documentation": "\n

Amazon S3 Select is no longer available to new customers. Existing customers of Amazon S3 Select can continue to use the feature as usual. Learn more\n

\n
\n

Describes the parameters for Select job types.

" - } - }, - "OutputLocation": { - "target": "com.amazonaws.s3#OutputLocation", - "traits": { - "smithy.api#documentation": "

Describes the location where the restore job's output is stored.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for restore job parameters.

" - } - }, - "com.amazonaws.s3#RestoreRequestType": { - "type": "enum", - "members": { - "SELECT": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "SELECT" - } - } - } - }, - "com.amazonaws.s3#RestoreStatus": { - "type": "structure", - "members": { - "IsRestoreInProgress": { - "target": "com.amazonaws.s3#IsRestoreInProgress", - "traits": { - "smithy.api#documentation": "

Specifies whether the object is currently being restored. If the object restoration is\n in progress, the header returns the value TRUE. For example:

\n

\n x-amz-optional-object-attributes: IsRestoreInProgress=\"true\"\n

\n

If the object restoration has completed, the header returns the value\n FALSE. For example:

\n

\n x-amz-optional-object-attributes: IsRestoreInProgress=\"false\",\n RestoreExpiryDate=\"2012-12-21T00:00:00.000Z\"\n

\n

If the object hasn't been restored, there is no header response.

" - } - }, - "RestoreExpiryDate": { - "target": "com.amazonaws.s3#RestoreExpiryDate", - "traits": { - "smithy.api#documentation": "

Indicates when the restored copy will expire. This value is populated only if the object\n has already been restored. For example:

\n

\n x-amz-optional-object-attributes: IsRestoreInProgress=\"false\",\n RestoreExpiryDate=\"2012-12-21T00:00:00.000Z\"\n

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the restoration status of an object. Objects in certain storage classes must\n be restored before they can be retrieved. For more information about these storage classes\n and how to work with archived objects, see Working with archived\n objects in the Amazon S3 User Guide.

\n \n

This functionality is not supported for directory buckets.\n Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

\n
" - } - }, - "com.amazonaws.s3#Role": { - "type": "string" - }, - "com.amazonaws.s3#RoutingRule": { - "type": "structure", - "members": { - "Condition": { - "target": "com.amazonaws.s3#Condition", - "traits": { - "smithy.api#documentation": "

A container for describing a condition that must be met for the specified redirect to\n apply. For example, 1. If request is for pages in the /docs folder, redirect\n to the /documents folder. 2. If request results in HTTP error 4xx, redirect\n request to another host where you might process the error.

" - } - }, - "Redirect": { - "target": "com.amazonaws.s3#Redirect", - "traits": { - "smithy.api#documentation": "

Container for redirect information. You can redirect requests to another host, to\n another page, or with another protocol. In the event of an error, you can specify a\n different error code to return.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the redirect behavior and when a redirect is applied. For more information\n about routing rules, see Configuring advanced conditional redirects in the\n Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3#RoutingRules": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#RoutingRule", - "traits": { - "smithy.api#xmlName": "RoutingRule" - } - } - }, - "com.amazonaws.s3#S3KeyFilter": { - "type": "structure", - "members": { - "FilterRules": { - "target": "com.amazonaws.s3#FilterRuleList", - "traits": { - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "FilterRule" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for object key name prefix and suffix filtering rules.

" - } - }, - "com.amazonaws.s3#S3Location": { - "type": "structure", - "members": { - "BucketName": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket where the restore results will be placed.

", - "smithy.api#required": {} - } - }, - "Prefix": { - "target": "com.amazonaws.s3#LocationPrefix", - "traits": { - "smithy.api#documentation": "

The prefix that is prepended to the restore results for this request.

", - "smithy.api#required": {} - } - }, - "Encryption": { - "target": "com.amazonaws.s3#Encryption" - }, - "CannedACL": { - "target": "com.amazonaws.s3#ObjectCannedACL", - "traits": { - "smithy.api#documentation": "

The canned ACL to apply to the restore results.

" - } - }, - "AccessControlList": { - "target": "com.amazonaws.s3#Grants", - "traits": { - "smithy.api#documentation": "

A list of grants that control access to the staged results.

" - } - }, - "Tagging": { - "target": "com.amazonaws.s3#Tagging", - "traits": { - "smithy.api#documentation": "

The tag-set that is applied to the restore results.

" - } - }, - "UserMetadata": { - "target": "com.amazonaws.s3#UserMetadata", - "traits": { - "smithy.api#documentation": "

A list of metadata to store with the restore results in S3.

" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3#StorageClass", - "traits": { - "smithy.api#documentation": "

The class of storage used to store the restore results.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes an Amazon S3 location that will receive the results of the restore request.

" - } - }, - "com.amazonaws.s3#S3TablesArn": { - "type": "string" - }, - "com.amazonaws.s3#S3TablesBucketArn": { - "type": "string" - }, - "com.amazonaws.s3#S3TablesDestination": { - "type": "structure", - "members": { - "TableBucketArn": { - "target": "com.amazonaws.s3#S3TablesBucketArn", - "traits": { - "smithy.api#documentation": "

\n The Amazon Resource Name (ARN) for the table bucket that's specified as the \n destination in the metadata table configuration. The destination table bucket\n must be in the same Region and Amazon Web Services account as the general purpose bucket.\n

", - "smithy.api#required": {} - } - }, - "TableName": { - "target": "com.amazonaws.s3#S3TablesName", - "traits": { - "smithy.api#documentation": "

\n The name for the metadata table in your metadata table configuration. The specified metadata\n table name must be unique within the aws_s3_metadata namespace in the destination \n table bucket.\n

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

\n The destination information for the metadata table configuration. The destination table bucket\n must be in the same Region and Amazon Web Services account as the general purpose bucket. The specified metadata\n table name must be unique within the aws_s3_metadata namespace in the destination \n table bucket. \n

" - } - }, - "com.amazonaws.s3#S3TablesDestinationResult": { - "type": "structure", - "members": { - "TableBucketArn": { - "target": "com.amazonaws.s3#S3TablesBucketArn", - "traits": { - "smithy.api#documentation": "

\n The Amazon Resource Name (ARN) for the table bucket that's specified as the \n destination in the metadata table configuration. The destination table bucket\n must be in the same Region and Amazon Web Services account as the general purpose bucket.\n

", - "smithy.api#required": {} - } - }, - "TableName": { - "target": "com.amazonaws.s3#S3TablesName", - "traits": { - "smithy.api#documentation": "

\n The name for the metadata table in your metadata table configuration. The specified metadata\n table name must be unique within the aws_s3_metadata namespace in the destination \n table bucket.\n

", - "smithy.api#required": {} - } - }, - "TableArn": { - "target": "com.amazonaws.s3#S3TablesArn", - "traits": { - "smithy.api#documentation": "

\n The Amazon Resource Name (ARN) for the metadata table in the metadata table configuration. The \n specified metadata table name must be unique within the aws_s3_metadata namespace \n in the destination table bucket.\n

", - "smithy.api#required": {} - } - }, - "TableNamespace": { - "target": "com.amazonaws.s3#S3TablesNamespace", - "traits": { - "smithy.api#documentation": "

\n The table bucket namespace for the metadata table in your metadata table configuration. This value \n is always aws_s3_metadata.\n

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

\n The destination information for the metadata table configuration. The destination table bucket\n must be in the same Region and Amazon Web Services account as the general purpose bucket. The specified metadata\n table name must be unique within the aws_s3_metadata namespace in the destination \n table bucket.\n

" - } - }, - "com.amazonaws.s3#S3TablesName": { - "type": "string" - }, - "com.amazonaws.s3#S3TablesNamespace": { - "type": "string" - }, - "com.amazonaws.s3#SSECustomerAlgorithm": { - "type": "string" - }, - "com.amazonaws.s3#SSECustomerKey": { - "type": "string", - "traits": { - "smithy.api#sensitive": {} - } - }, - "com.amazonaws.s3#SSECustomerKeyMD5": { - "type": "string" - }, - "com.amazonaws.s3#SSEKMS": { - "type": "structure", - "members": { - "KeyId": { - "target": "com.amazonaws.s3#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

Specifies the ID of the Key Management Service (KMS) symmetric encryption customer managed key to use for\n encrypting inventory reports.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the use of SSE-KMS to encrypt delivered inventory reports.

", - "smithy.api#xmlName": "SSE-KMS" - } - }, - "com.amazonaws.s3#SSEKMSEncryptionContext": { - "type": "string", - "traits": { - "smithy.api#sensitive": {} - } - }, - "com.amazonaws.s3#SSEKMSKeyId": { - "type": "string", - "traits": { - "smithy.api#sensitive": {} - } - }, - "com.amazonaws.s3#SSES3": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

Specifies the use of SSE-S3 to encrypt delivered inventory reports.

", - "smithy.api#xmlName": "SSE-S3" - } - }, - "com.amazonaws.s3#ScanRange": { - "type": "structure", - "members": { - "Start": { - "target": "com.amazonaws.s3#Start", - "traits": { - "smithy.api#documentation": "

Specifies the start of the byte range. This parameter is optional. Valid values:\n non-negative integers. The default value is 0. If only start is supplied, it\n means scan from that point to the end of the file. For example,\n 50 means scan\n from byte 50 until the end of the file.

" - } - }, - "End": { - "target": "com.amazonaws.s3#End", - "traits": { - "smithy.api#documentation": "

Specifies the end of the byte range. This parameter is optional. Valid values:\n non-negative integers. The default value is one less than the size of the object being\n queried. If only the End parameter is supplied, it is interpreted to mean scan the last N\n bytes of the file. For example,\n 50 means scan the\n last 50 bytes.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the byte range of the object to get the records from. A record is processed\n when its first byte is contained by the range. This parameter is optional, but when\n specified, it must not be empty. See RFC 2616, Section 14.35.1 about how to specify the\n start and end of the range.

" - } - }, - "com.amazonaws.s3#SelectObjectContent": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#SelectObjectContentRequest" - }, - "output": { - "target": "com.amazonaws.s3#SelectObjectContentOutput" - }, - "traits": { - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

This action filters the contents of an Amazon S3 object based on a simple structured query\n language (SQL) statement. In the request, along with the SQL expression, you must also\n specify a data serialization format (JSON, CSV, or Apache Parquet) of the object. Amazon S3 uses\n this format to parse object data into records, and returns only records that match the\n specified SQL expression. You must also specify the data serialization format for the\n response.

\n

This functionality is not supported for Amazon S3 on Outposts.

\n

For more information about Amazon S3 Select, see Selecting Content from\n Objects and SELECT\n Command in the Amazon S3 User Guide.

\n

\n
\n
Permissions
\n
\n

You must have the s3:GetObject permission for this operation. Amazon S3\n Select does not support anonymous access. For more information about permissions,\n see Specifying Permissions in\n a Policy in the Amazon S3 User Guide.

\n
\n
Object Data Formats
\n
\n

You can use Amazon S3 Select to query objects that have the following format\n properties:

\n
    \n
  • \n

    \n CSV, JSON, and Parquet - Objects must be in CSV,\n JSON, or Parquet format.

    \n
  • \n
  • \n

    \n UTF-8 - UTF-8 is the only encoding type Amazon S3 Select\n supports.

    \n
  • \n
  • \n

    \n GZIP or BZIP2 - CSV and JSON files can be compressed\n using GZIP or BZIP2. GZIP and BZIP2 are the only compression formats that\n Amazon S3 Select supports for CSV and JSON files. Amazon S3 Select supports columnar\n compression for Parquet using GZIP or Snappy. Amazon S3 Select does not support\n whole-object compression for Parquet objects.

    \n
  • \n
  • \n

    \n Server-side encryption - Amazon S3 Select supports\n querying objects that are protected with server-side encryption.

    \n

    For objects that are encrypted with customer-provided encryption keys\n (SSE-C), you must use HTTPS, and you must use the headers that are\n documented in the GetObject. For more\n information about SSE-C, see Server-Side Encryption (Using Customer-Provided Encryption Keys)\n in the Amazon S3 User Guide.

    \n

    For objects that are encrypted with Amazon S3 managed keys (SSE-S3) and\n Amazon Web Services KMS keys (SSE-KMS), server-side encryption is handled transparently,\n so you don't need to specify anything. For more information about\n server-side encryption, including SSE-S3 and SSE-KMS, see Protecting Data Using Server-Side Encryption in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n
Working with the Response Body
\n
\n

Given the response size is unknown, Amazon S3 Select streams the response as a\n series of messages and includes a Transfer-Encoding header with\n chunked as its value in the response. For more information, see\n Appendix:\n SelectObjectContent\n Response.

\n
\n
GetObject Support
\n
\n

The SelectObjectContent action does not support the following\n GetObject functionality. For more information, see GetObject.

\n
    \n
  • \n

    \n Range: Although you can specify a scan range for an Amazon S3 Select\n request (see SelectObjectContentRequest - ScanRange in the request\n parameters), you cannot specify the range of bytes of an object to return.\n

    \n
  • \n
  • \n

    The GLACIER, DEEP_ARCHIVE, and\n REDUCED_REDUNDANCY storage classes, or the\n ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS access\n tiers of the INTELLIGENT_TIERING storage class: You cannot\n query objects in the GLACIER, DEEP_ARCHIVE, or\n REDUCED_REDUNDANCY storage classes, nor objects in the\n ARCHIVE_ACCESS or DEEP_ARCHIVE_ACCESS access\n tiers of the INTELLIGENT_TIERING storage class. For more\n information about storage classes, see Using Amazon S3\n storage classes in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n
Special Errors
\n
\n

For a list of special errors for this operation, see List of SELECT Object Content Error Codes\n

\n
\n
\n

The following operations are related to SelectObjectContent:

\n ", - "smithy.api#http": { - "method": "POST", - "uri": "/{Bucket}/{Key+}?select&select-type=2", - "code": 200 - } - } - }, - "com.amazonaws.s3#SelectObjectContentEventStream": { - "type": "union", - "members": { - "Records": { - "target": "com.amazonaws.s3#RecordsEvent", - "traits": { - "smithy.api#documentation": "

The Records Event.

" - } - }, - "Stats": { - "target": "com.amazonaws.s3#StatsEvent", - "traits": { - "smithy.api#documentation": "

The Stats Event.

" - } - }, - "Progress": { - "target": "com.amazonaws.s3#ProgressEvent", - "traits": { - "smithy.api#documentation": "

The Progress Event.

" - } - }, - "Cont": { - "target": "com.amazonaws.s3#ContinuationEvent", - "traits": { - "smithy.api#documentation": "

The Continuation Event.

" - } - }, - "End": { - "target": "com.amazonaws.s3#EndEvent", - "traits": { - "smithy.api#documentation": "

The End Event.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

The container for selecting objects from a content event stream.

", - "smithy.api#streaming": {} - } - }, - "com.amazonaws.s3#SelectObjectContentOutput": { - "type": "structure", - "members": { - "Payload": { - "target": "com.amazonaws.s3#SelectObjectContentEventStream", - "traits": { - "smithy.api#documentation": "

The array of results.

", - "smithy.api#httpPayload": {} - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#SelectObjectContentRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The S3 bucket.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

The object key.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created \n using a checksum algorithm. For more information,\n see Protecting data using SSE-C keys in the\n Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKey": { - "target": "com.amazonaws.s3#SSECustomerKey", - "traits": { - "smithy.api#documentation": "

The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. \n For more information, see\n Protecting data using SSE-C keys in the\n Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum \n algorithm. For more information,\n see Protecting data using SSE-C keys in the\n Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - }, - "Expression": { - "target": "com.amazonaws.s3#Expression", - "traits": { - "smithy.api#documentation": "

The expression that is used to query the object.

", - "smithy.api#required": {} - } - }, - "ExpressionType": { - "target": "com.amazonaws.s3#ExpressionType", - "traits": { - "smithy.api#documentation": "

The type of the provided expression (for example, SQL).

", - "smithy.api#required": {} - } - }, - "RequestProgress": { - "target": "com.amazonaws.s3#RequestProgress", - "traits": { - "smithy.api#documentation": "

Specifies if periodic request progress information should be enabled.

" - } - }, - "InputSerialization": { - "target": "com.amazonaws.s3#InputSerialization", - "traits": { - "smithy.api#documentation": "

Describes the format of the data in the object that is being queried.

", - "smithy.api#required": {} - } - }, - "OutputSerialization": { - "target": "com.amazonaws.s3#OutputSerialization", - "traits": { - "smithy.api#documentation": "

Describes the format of the data that you want Amazon S3 to return in response.

", - "smithy.api#required": {} - } - }, - "ScanRange": { - "target": "com.amazonaws.s3#ScanRange", - "traits": { - "smithy.api#documentation": "

Specifies the byte range of the object to get the records from. A record is processed\n when its first byte is contained by the range. This parameter is optional, but when\n specified, it must not be empty. See RFC 2616, Section 14.35.1 about how to specify the\n start and end of the range.

\n

\n ScanRangemay be used in the following ways:

\n
    \n
  • \n

    \n 50100\n - process only the records starting between the bytes 50 and 100 (inclusive, counting\n from zero)

    \n
  • \n
  • \n

    \n 50 -\n process only the records starting after the byte 50

    \n
  • \n
  • \n

    \n 50 -\n process only the records within the last 50 bytes of the file.

    \n
  • \n
" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#documentation": "\n

Learn Amazon S3 Select is no longer available to new customers. Existing customers of Amazon S3 Select can continue to use the feature as usual. Learn more\n

\n
\n

Request to filter the contents of an Amazon S3 object based on a simple Structured Query\n Language (SQL) statement. In the request, along with the SQL expression, you must specify a\n data serialization format (JSON or CSV) of the object. Amazon S3 uses this to parse object data\n into records. It returns only records that match the specified SQL expression. You must\n also specify the data serialization format for the response. For more information, see\n S3Select API Documentation.

", - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#SelectParameters": { - "type": "structure", - "members": { - "InputSerialization": { - "target": "com.amazonaws.s3#InputSerialization", - "traits": { - "smithy.api#documentation": "

Describes the serialization format of the object.

", - "smithy.api#required": {} - } - }, - "ExpressionType": { - "target": "com.amazonaws.s3#ExpressionType", - "traits": { - "smithy.api#documentation": "

The type of the provided expression (for example, SQL).

", - "smithy.api#required": {} - } - }, - "Expression": { - "target": "com.amazonaws.s3#Expression", - "traits": { - "smithy.api#documentation": "\n

Amazon S3 Select is no longer available to new customers. Existing customers of Amazon S3 Select can continue to use the feature as usual. Learn more\n

\n
\n

The expression that is used to query the object.

", - "smithy.api#required": {} - } - }, - "OutputSerialization": { - "target": "com.amazonaws.s3#OutputSerialization", - "traits": { - "smithy.api#documentation": "

Describes how the results of the Select job are serialized.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "\n

Amazon S3 Select is no longer available to new customers. Existing customers of Amazon S3 Select can continue to use the feature as usual. Learn more\n

\n
\n

Describes the parameters for Select job types.

\n

Learn How to optimize querying your data in Amazon S3 using\n Amazon Athena, S3 Object Lambda, or client-side filtering.

" - } - }, - "com.amazonaws.s3#ServerSideEncryption": { - "type": "enum", - "members": { - "AES256": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "AES256" - } - }, - "aws_kms": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "aws:kms" - } - }, - "aws_kms_dsse": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "aws:kms:dsse" - } - } - } - }, - "com.amazonaws.s3#ServerSideEncryptionByDefault": { - "type": "structure", - "members": { - "SSEAlgorithm": { - "target": "com.amazonaws.s3#ServerSideEncryption", - "traits": { - "smithy.api#documentation": "

Server-side encryption algorithm to use for the default encryption.

\n \n

For directory buckets, there are only two supported values for server-side encryption: AES256 and aws:kms.

\n
", - "smithy.api#required": {} - } - }, - "KMSMasterKeyID": { - "target": "com.amazonaws.s3#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

Amazon Web Services Key Management Service (KMS) customer managed key ID to use for the default\n encryption.

\n \n
    \n
  • \n

    \n General purpose buckets - This parameter is\n allowed if and only if SSEAlgorithm is set to aws:kms or\n aws:kms:dsse.

    \n
  • \n
  • \n

    \n Directory buckets - This parameter is\n allowed if and only if SSEAlgorithm is set to\n aws:kms.

    \n
  • \n
\n
\n

You can specify the key ID, key alias, or the Amazon Resource Name (ARN) of the KMS\n key.

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key ARN:\n arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\n

    \n
  • \n
  • \n

    Key Alias: alias/alias-name\n

    \n
  • \n
\n

If you are using encryption with cross-account or Amazon Web Services service operations, you must use\n a fully qualified KMS key ARN. For more information, see Using encryption for cross-account operations.

\n \n
    \n
  • \n

    \n General purpose buckets - If you're specifying\n a customer managed KMS key, we recommend using a fully qualified KMS key ARN.\n If you use a KMS key alias instead, then KMS resolves the key within the\n requester’s account. This behavior can result in data that's encrypted with a\n KMS key that belongs to the requester, and not the bucket owner. Also, if you\n use a key ID, you can run into a LogDestination undeliverable error when creating\n a VPC flow log.

    \n
  • \n
  • \n

    \n Directory buckets -\n When you specify an KMS customer managed key for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported.

    \n
  • \n
\n
\n \n

Amazon S3 only supports symmetric encryption KMS keys. For more information, see Asymmetric keys in Amazon Web Services KMS in the Amazon Web Services Key Management Service\n Developer Guide.

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the default server-side encryption to apply to new objects in the bucket. If a\n PUT Object request doesn't specify any server-side encryption, this default encryption will\n be applied. For more information, see PutBucketEncryption.

\n \n
    \n
  • \n

    \n General purpose buckets - If you don't specify\n a customer managed key at configuration, Amazon S3 automatically creates an Amazon Web Services KMS key\n (aws/s3) in your Amazon Web Services account the first time that you add an\n object encrypted with SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key\n for SSE-KMS.

    \n
  • \n
  • \n

    \n Directory buckets -\n Your SSE-KMS configuration can only support 1 customer managed key per directory bucket for the lifetime of the bucket. \nThe Amazon Web Services managed key (aws/s3) isn't supported. \n

    \n
  • \n
  • \n

    \n Directory buckets -\n For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS.

    \n
  • \n
\n
" - } - }, - "com.amazonaws.s3#ServerSideEncryptionConfiguration": { - "type": "structure", - "members": { - "Rules": { - "target": "com.amazonaws.s3#ServerSideEncryptionRules", - "traits": { - "smithy.api#documentation": "

Container for information about a particular server-side encryption configuration\n rule.

", - "smithy.api#required": {}, - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Rule" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the default server-side-encryption configuration.

" - } - }, - "com.amazonaws.s3#ServerSideEncryptionRule": { - "type": "structure", - "members": { - "ApplyServerSideEncryptionByDefault": { - "target": "com.amazonaws.s3#ServerSideEncryptionByDefault", - "traits": { - "smithy.api#documentation": "

Specifies the default server-side encryption to apply to new objects in the bucket. If a\n PUT Object request doesn't specify any server-side encryption, this default encryption will\n be applied.

" - } - }, - "BucketKeyEnabled": { - "target": "com.amazonaws.s3#BucketKeyEnabled", - "traits": { - "smithy.api#documentation": "

Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS\n (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the\n BucketKeyEnabled element to true causes Amazon S3 to use an S3\n Bucket Key.

\n \n
    \n
  • \n

    \n General purpose buckets - By default, S3\n Bucket Key is not enabled. For more information, see Amazon S3 Bucket Keys in the\n Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory buckets -\n S3 Bucket Keys are always enabled for GET and PUT operations in a directory bucket and can’t be disabled. S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets \nto directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through CopyObject, UploadPartCopy, the Copy operation in Batch Operations, or \n the import jobs. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.

    \n
  • \n
\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies the default server-side encryption configuration.

\n \n
    \n
  • \n

    \n General purpose buckets - If you're specifying\n a customer managed KMS key, we recommend using a fully qualified KMS key ARN.\n If you use a KMS key alias instead, then KMS resolves the key within the\n requester’s account. This behavior can result in data that's encrypted with a\n KMS key that belongs to the requester, and not the bucket owner.

    \n
  • \n
  • \n

    \n Directory buckets -\n When you specify an KMS customer managed key for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported.

    \n
  • \n
\n
" - } - }, - "com.amazonaws.s3#ServerSideEncryptionRules": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#ServerSideEncryptionRule" - } - }, - "com.amazonaws.s3#SessionCredentialValue": { - "type": "string", - "traits": { - "smithy.api#sensitive": {} - } - }, - "com.amazonaws.s3#SessionCredentials": { - "type": "structure", - "members": { - "AccessKeyId": { - "target": "com.amazonaws.s3#AccessKeyIdValue", - "traits": { - "smithy.api#documentation": "

A unique identifier that's associated with a secret access key. The access key ID and\n the secret access key are used together to sign programmatic Amazon Web Services requests\n cryptographically.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "AccessKeyId" - } - }, - "SecretAccessKey": { - "target": "com.amazonaws.s3#SessionCredentialValue", - "traits": { - "smithy.api#documentation": "

A key that's used with the access key ID to cryptographically sign programmatic Amazon Web Services\n requests. Signing a request identifies the sender and prevents the request from being\n altered.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "SecretAccessKey" - } - }, - "SessionToken": { - "target": "com.amazonaws.s3#SessionCredentialValue", - "traits": { - "smithy.api#documentation": "

A part of the temporary security credentials. The session token is used to validate the\n temporary security credentials.\n \n

", - "smithy.api#required": {}, - "smithy.api#xmlName": "SessionToken" - } - }, - "Expiration": { - "target": "com.amazonaws.s3#SessionExpiration", - "traits": { - "smithy.api#documentation": "

Temporary security credentials expire after a specified interval. After temporary\n credentials expire, any calls that you make with those credentials will fail. So you must\n generate a new set of temporary credentials. Temporary credentials cannot be extended or\n refreshed beyond the original specified interval.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "Expiration" - } - } - }, - "traits": { - "smithy.api#documentation": "

The established temporary security credentials of the session.

\n \n

\n Directory buckets - These session\n credentials are only supported for the authentication and authorization of Zonal endpoint API operations\n on directory buckets.

\n
" - } - }, - "com.amazonaws.s3#SessionExpiration": { - "type": "timestamp" - }, - "com.amazonaws.s3#SessionMode": { - "type": "enum", - "members": { - "ReadOnly": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ReadOnly" - } - }, - "ReadWrite": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ReadWrite" - } - } - } - }, - "com.amazonaws.s3#Setting": { - "type": "boolean" - }, - "com.amazonaws.s3#SimplePrefix": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

To use simple format for S3 keys for log objects, set SimplePrefix to an empty\n object.

\n

\n [DestinationPrefix][YYYY]-[MM]-[DD]-[hh]-[mm]-[ss]-[UniqueString]\n

", - "smithy.api#xmlName": "SimplePrefix" - } - }, - "com.amazonaws.s3#Size": { - "type": "long" - }, - "com.amazonaws.s3#SkipValidation": { - "type": "boolean" - }, - "com.amazonaws.s3#SourceSelectionCriteria": { - "type": "structure", - "members": { - "SseKmsEncryptedObjects": { - "target": "com.amazonaws.s3#SseKmsEncryptedObjects", - "traits": { - "smithy.api#documentation": "

A container for filter information for the selection of Amazon S3 objects encrypted with\n Amazon Web Services KMS. If you include SourceSelectionCriteria in the replication\n configuration, this element is required.

" - } - }, - "ReplicaModifications": { - "target": "com.amazonaws.s3#ReplicaModifications", - "traits": { - "smithy.api#documentation": "

A filter that you can specify for selections for modifications on replicas. Amazon S3 doesn't\n replicate replica modifications by default. In the latest version of replication\n configuration (when Filter is specified), you can specify this element and set\n the status to Enabled to replicate modifications on replicas.

\n \n

If you don't specify the Filter element, Amazon S3 assumes that the\n replication configuration is the earlier version, V1. In the earlier version, this\n element is not allowed

\n
" - } - } - }, - "traits": { - "smithy.api#documentation": "

A container that describes additional filters for identifying the source objects that\n you want to replicate. You can choose to enable or disable the replication of these\n objects. Currently, Amazon S3 supports only the filter that you can specify for objects created\n with server-side encryption using a customer managed key stored in Amazon Web Services Key Management Service\n (SSE-KMS).

" - } - }, - "com.amazonaws.s3#SseKmsEncryptedObjects": { - "type": "structure", - "members": { - "Status": { - "target": "com.amazonaws.s3#SseKmsEncryptedObjectsStatus", - "traits": { - "smithy.api#documentation": "

Specifies whether Amazon S3 replicates objects created with server-side encryption using an\n Amazon Web Services KMS key stored in Amazon Web Services Key Management Service.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A container for filter information for the selection of S3 objects encrypted with Amazon Web Services\n KMS.

" - } - }, - "com.amazonaws.s3#SseKmsEncryptedObjectsStatus": { - "type": "enum", - "members": { - "Enabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Enabled" - } - }, - "Disabled": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Disabled" - } - } - } - }, - "com.amazonaws.s3#Start": { - "type": "long" - }, - "com.amazonaws.s3#StartAfter": { - "type": "string" - }, - "com.amazonaws.s3#Stats": { - "type": "structure", - "members": { - "BytesScanned": { - "target": "com.amazonaws.s3#BytesScanned", - "traits": { - "smithy.api#documentation": "

The total number of object bytes scanned.

" - } - }, - "BytesProcessed": { - "target": "com.amazonaws.s3#BytesProcessed", - "traits": { - "smithy.api#documentation": "

The total number of uncompressed object bytes processed.

" - } - }, - "BytesReturned": { - "target": "com.amazonaws.s3#BytesReturned", - "traits": { - "smithy.api#documentation": "

The total number of bytes of records payload data returned.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for the stats details.

" - } - }, - "com.amazonaws.s3#StatsEvent": { - "type": "structure", - "members": { - "Details": { - "target": "com.amazonaws.s3#Stats", - "traits": { - "smithy.api#documentation": "

The Stats event details.

", - "smithy.api#eventPayload": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for the Stats Event.

" - } - }, - "com.amazonaws.s3#StorageClass": { - "type": "enum", - "members": { - "STANDARD": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "STANDARD" - } - }, - "REDUCED_REDUNDANCY": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "REDUCED_REDUNDANCY" - } - }, - "STANDARD_IA": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "STANDARD_IA" - } - }, - "ONEZONE_IA": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ONEZONE_IA" - } - }, - "INTELLIGENT_TIERING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "INTELLIGENT_TIERING" - } - }, - "GLACIER": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GLACIER" - } - }, - "DEEP_ARCHIVE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DEEP_ARCHIVE" - } - }, - "OUTPOSTS": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "OUTPOSTS" - } - }, - "GLACIER_IR": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GLACIER_IR" - } - }, - "SNOW": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "SNOW" - } - }, - "EXPRESS_ONEZONE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "EXPRESS_ONEZONE" - } - } - } - }, - "com.amazonaws.s3#StorageClassAnalysis": { - "type": "structure", - "members": { - "DataExport": { - "target": "com.amazonaws.s3#StorageClassAnalysisDataExport", - "traits": { - "smithy.api#documentation": "

Specifies how data related to the storage class analysis for an Amazon S3 bucket should be\n exported.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies data related to access patterns to be collected and made available to analyze\n the tradeoffs between different storage classes for an Amazon S3 bucket.

" - } - }, - "com.amazonaws.s3#StorageClassAnalysisDataExport": { - "type": "structure", - "members": { - "OutputSchemaVersion": { - "target": "com.amazonaws.s3#StorageClassAnalysisSchemaVersion", - "traits": { - "smithy.api#documentation": "

The version of the output schema to use when exporting data. Must be\n V_1.

", - "smithy.api#required": {} - } - }, - "Destination": { - "target": "com.amazonaws.s3#AnalyticsExportDestination", - "traits": { - "smithy.api#documentation": "

The place to store the data for an analysis.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for data related to the storage class analysis for an Amazon S3 bucket for\n export.

" - } - }, - "com.amazonaws.s3#StorageClassAnalysisSchemaVersion": { - "type": "enum", - "members": { - "V_1": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "V_1" - } - } - } - }, - "com.amazonaws.s3#StreamingBlob": { - "type": "blob", - "traits": { - "smithy.api#streaming": {} - } - }, - "com.amazonaws.s3#Suffix": { - "type": "string" - }, - "com.amazonaws.s3#Tag": { - "type": "structure", - "members": { - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Name of the object key.

", - "smithy.api#required": {} - } - }, - "Value": { - "target": "com.amazonaws.s3#Value", - "traits": { - "smithy.api#documentation": "

Value of the tag.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

A container of a key value name pair.

" - } - }, - "com.amazonaws.s3#TagCount": { - "type": "integer" - }, - "com.amazonaws.s3#TagSet": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#Tag", - "traits": { - "smithy.api#xmlName": "Tag" - } - } - }, - "com.amazonaws.s3#Tagging": { - "type": "structure", - "members": { - "TagSet": { - "target": "com.amazonaws.s3#TagSet", - "traits": { - "smithy.api#documentation": "

A collection for a set of tags

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for TagSet elements.

" - } - }, - "com.amazonaws.s3#TaggingDirective": { - "type": "enum", - "members": { - "COPY": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "COPY" - } - }, - "REPLACE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "REPLACE" - } - } - } - }, - "com.amazonaws.s3#TaggingHeader": { - "type": "string" - }, - "com.amazonaws.s3#TargetBucket": { - "type": "string" - }, - "com.amazonaws.s3#TargetGrant": { - "type": "structure", - "members": { - "Grantee": { - "target": "com.amazonaws.s3#Grantee", - "traits": { - "smithy.api#documentation": "

Container for the person being granted permissions.

", - "smithy.api#xmlNamespace": { - "uri": "http://www.w3.org/2001/XMLSchema-instance", - "prefix": "xsi" - } - } - }, - "Permission": { - "target": "com.amazonaws.s3#BucketLogsPermission", - "traits": { - "smithy.api#documentation": "

Logging permissions assigned to the grantee for the bucket.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Container for granting information.

\n

Buckets that use the bucket owner enforced setting for Object Ownership don't support\n target grants. For more information, see Permissions server access log delivery in the\n Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3#TargetGrants": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#TargetGrant", - "traits": { - "smithy.api#xmlName": "Grant" - } - } - }, - "com.amazonaws.s3#TargetObjectKeyFormat": { - "type": "structure", - "members": { - "SimplePrefix": { - "target": "com.amazonaws.s3#SimplePrefix", - "traits": { - "smithy.api#documentation": "

To use the simple format for S3 keys for log objects. To specify SimplePrefix format,\n set SimplePrefix to {}.

", - "smithy.api#xmlName": "SimplePrefix" - } - }, - "PartitionedPrefix": { - "target": "com.amazonaws.s3#PartitionedPrefix", - "traits": { - "smithy.api#documentation": "

Partitioned S3 key for log objects.

", - "smithy.api#xmlName": "PartitionedPrefix" - } - } - }, - "traits": { - "smithy.api#documentation": "

Amazon S3 key format for log objects. Only one format, PartitionedPrefix or\n SimplePrefix, is allowed.

" - } - }, - "com.amazonaws.s3#TargetPrefix": { - "type": "string" - }, - "com.amazonaws.s3#Tier": { - "type": "enum", - "members": { - "Standard": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Standard" - } - }, - "Bulk": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Bulk" - } - }, - "Expedited": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Expedited" - } - } - } - }, - "com.amazonaws.s3#Tiering": { - "type": "structure", - "members": { - "Days": { - "target": "com.amazonaws.s3#IntelligentTieringDays", - "traits": { - "smithy.api#documentation": "

The number of consecutive days of no access after which an object will be eligible to be\n transitioned to the corresponding tier. The minimum number of days specified for\n Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least\n 180 days. The maximum can be up to 2 years (730 days).

", - "smithy.api#required": {} - } - }, - "AccessTier": { - "target": "com.amazonaws.s3#IntelligentTieringAccessTier", - "traits": { - "smithy.api#documentation": "

S3 Intelligent-Tiering access tier. See Storage class\n for automatically optimizing frequently and infrequently accessed objects for a\n list of access tiers in the S3 Intelligent-Tiering storage class.

", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

The S3 Intelligent-Tiering storage class is designed to optimize storage costs by\n automatically moving data to the most cost-effective storage access tier, without\n additional operational overhead.

" - } - }, - "com.amazonaws.s3#TieringList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#Tiering" - } - }, - "com.amazonaws.s3#Token": { - "type": "string" - }, - "com.amazonaws.s3#TooManyParts": { - "type": "structure", - "members": {}, - "traits": { - "smithy.api#documentation": "

\n You have attempted to add more parts than the maximum of 10000 \n that are allowed for this object. You can use the CopyObject operation \n to copy this object to another and then add more data to the newly copied object.\n

", - "smithy.api#error": "client", - "smithy.api#httpError": 400 - } - }, - "com.amazonaws.s3#TopicArn": { - "type": "string" - }, - "com.amazonaws.s3#TopicConfiguration": { - "type": "structure", - "members": { - "Id": { - "target": "com.amazonaws.s3#NotificationId" - }, - "TopicArn": { - "target": "com.amazonaws.s3#TopicArn", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message\n when it detects events of the specified type.

", - "smithy.api#required": {}, - "smithy.api#xmlName": "Topic" - } - }, - "Events": { - "target": "com.amazonaws.s3#EventList", - "traits": { - "smithy.api#documentation": "

The Amazon S3 bucket event about which to send notifications. For more information, see\n Supported\n Event Types in the Amazon S3 User Guide.

", - "smithy.api#required": {}, - "smithy.api#xmlFlattened": {}, - "smithy.api#xmlName": "Event" - } - }, - "Filter": { - "target": "com.amazonaws.s3#NotificationConfigurationFilter" - } - }, - "traits": { - "smithy.api#documentation": "

A container for specifying the configuration for publication of messages to an Amazon\n Simple Notification Service (Amazon SNS) topic when Amazon S3 detects specified events.

" - } - }, - "com.amazonaws.s3#TopicConfigurationList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#TopicConfiguration" - } - }, - "com.amazonaws.s3#Transition": { - "type": "structure", - "members": { - "Date": { - "target": "com.amazonaws.s3#Date", - "traits": { - "smithy.api#documentation": "

Indicates when objects are transitioned to the specified storage class. The date value\n must be in ISO 8601 format. The time is always midnight UTC.

" - } - }, - "Days": { - "target": "com.amazonaws.s3#Days", - "traits": { - "smithy.api#documentation": "

Indicates the number of days after creation when objects are transitioned to the\n specified storage class. The value must be a positive integer.

" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3#TransitionStorageClass", - "traits": { - "smithy.api#documentation": "

The storage class to which you want the object to transition.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies when an object transitions to a specified storage class. For more information\n about Amazon S3 lifecycle configuration rules, see Transitioning\n Objects Using Amazon S3 Lifecycle in the Amazon S3 User Guide.

" - } - }, - "com.amazonaws.s3#TransitionDefaultMinimumObjectSize": { - "type": "enum", - "members": { - "varies_by_storage_class": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "varies_by_storage_class" - } - }, - "all_storage_classes_128K": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "all_storage_classes_128K" - } - } - } - }, - "com.amazonaws.s3#TransitionList": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#Transition" - } - }, - "com.amazonaws.s3#TransitionStorageClass": { - "type": "enum", - "members": { - "GLACIER": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GLACIER" - } - }, - "STANDARD_IA": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "STANDARD_IA" - } - }, - "ONEZONE_IA": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "ONEZONE_IA" - } - }, - "INTELLIGENT_TIERING": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "INTELLIGENT_TIERING" - } - }, - "DEEP_ARCHIVE": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "DEEP_ARCHIVE" - } - }, - "GLACIER_IR": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "GLACIER_IR" - } - } - } - }, - "com.amazonaws.s3#Type": { - "type": "enum", - "members": { - "CanonicalUser": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "CanonicalUser" - } - }, - "AmazonCustomerByEmail": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "AmazonCustomerByEmail" - } - }, - "Group": { - "target": "smithy.api#Unit", - "traits": { - "smithy.api#enumValue": "Group" - } - } - } - }, - "com.amazonaws.s3#URI": { - "type": "string" - }, - "com.amazonaws.s3#UploadIdMarker": { - "type": "string" - }, - "com.amazonaws.s3#UploadPart": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#UploadPartRequest" - }, - "output": { - "target": "com.amazonaws.s3#UploadPartOutput" - }, - "traits": { - "aws.protocols#httpChecksum": { - "requestAlgorithmMember": "ChecksumAlgorithm" - }, - "smithy.api#documentation": "

Uploads a part in a multipart upload.

\n \n

In this operation, you provide new data as a part of an object in your request.\n However, you have an option to specify your existing Amazon S3 object as a data source for\n the part you are uploading. To upload a part from an existing object, you use the UploadPartCopy operation.

\n
\n

You must initiate a multipart upload (see CreateMultipartUpload)\n before you can upload any part. In response to your initiate request, Amazon S3 returns an\n upload ID, a unique identifier that you must include in your upload part request.

\n

Part numbers can be any number from 1 to 10,000, inclusive. A part number uniquely\n identifies a part and also defines its position within the object being created. If you\n upload a new part using the same part number that was used with a previous part, the\n previously uploaded part is overwritten.

\n

For information about maximum and minimum part sizes and other multipart upload\n specifications, see Multipart upload limits in the Amazon S3 User Guide.

\n \n

After you initiate multipart upload and upload one or more parts, you must either\n complete or abort multipart upload in order to stop getting charged for storage of the\n uploaded parts. Only after you either complete or abort multipart upload, Amazon S3 frees up\n the parts storage and stops charging you for the parts storage.

\n
\n

For more information on multipart uploads, go to Multipart Upload Overview in the\n Amazon S3 User Guide .

\n \n

\n Directory buckets -\n For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - To\n perform a multipart upload with encryption using an Key Management Service key, the\n requester must have permission to the kms:Decrypt and\n kms:GenerateDataKey actions on the key. The requester must\n also have permissions for the kms:GenerateDataKey action for\n the CreateMultipartUpload API. Then, the requester needs\n permissions for the kms:Decrypt action on the\n UploadPart and UploadPartCopy APIs.

    \n

    These permissions are required because Amazon S3 must decrypt and read data\n from the encrypted file parts before it completes the multipart upload. For\n more information about KMS permissions, see Protecting data\n using server-side encryption with KMS in the\n Amazon S3 User Guide. For information about the\n permissions required to use the multipart upload API, see Multipart upload and permissions and Multipart upload API and permissions in the\n Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n

    If the object is encrypted with SSE-KMS, you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions\n in IAM identity-based policies and KMS key policies for the KMS\n key.

    \n
  • \n
\n
\n
Data integrity
\n
\n

\n General purpose bucket - To ensure that data\n is not corrupted traversing the network, specify the Content-MD5\n header in the upload part request. Amazon S3 checks the part data against the provided\n MD5 value. If they do not match, Amazon S3 returns an error. If the upload request is\n signed with Signature Version 4, then Amazon Web Services S3 uses the\n x-amz-content-sha256 header as a checksum instead of\n Content-MD5. For more information see Authenticating Requests: Using the Authorization Header (Amazon Web Services Signature\n Version 4).

\n \n

\n Directory buckets - MD5 is not supported by directory buckets. You can use checksum algorithms to check object integrity.

\n
\n
\n
Encryption
\n
\n
    \n
  • \n

    \n General purpose bucket - Server-side\n encryption is for data encryption at rest. Amazon S3 encrypts your data as it\n writes it to disks in its data centers and decrypts it when you access it.\n You have mutually exclusive options to protect data using server-side\n encryption in Amazon S3, depending on how you choose to manage the encryption\n keys. Specifically, the encryption key options are Amazon S3 managed keys\n (SSE-S3), Amazon Web Services KMS keys (SSE-KMS), and Customer-Provided Keys (SSE-C).\n Amazon S3 encrypts data with server-side encryption using Amazon S3 managed keys\n (SSE-S3) by default. You can optionally tell Amazon S3 to encrypt data at rest\n using server-side encryption with other key options. The option you use\n depends on whether you want to use KMS keys (SSE-KMS) or provide your own\n encryption key (SSE-C).

    \n

    Server-side encryption is supported by the S3 Multipart Upload\n operations. Unless you are using a customer-provided encryption key (SSE-C),\n you don't need to specify the encryption parameters in each UploadPart\n request. Instead, you only need to specify the server-side encryption\n parameters in the initial Initiate Multipart request. For more information,\n see CreateMultipartUpload.

    \n

    If you request server-side encryption using a customer-provided\n encryption key (SSE-C) in your initiate multipart upload request, you must\n provide identical encryption information in each part upload using the\n following request headers.

    \n
      \n
    • \n

      x-amz-server-side-encryption-customer-algorithm

      \n
    • \n
    • \n

      x-amz-server-side-encryption-customer-key

      \n
    • \n
    • \n

      x-amz-server-side-encryption-customer-key-MD5

      \n
    • \n
    \n

    For more information, see Using\n Server-Side Encryption in the\n Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory buckets -\n For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms).

    \n
  • \n
\n
\n
Special errors
\n
\n
    \n
  • \n

    Error Code: NoSuchUpload\n

    \n
      \n
    • \n

      Description: The specified multipart upload does not exist. The\n upload ID might be invalid, or the multipart upload might have been\n aborted or completed.

      \n
    • \n
    • \n

      HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to UploadPart:

\n ", - "smithy.api#examples": [ - { - "title": "To upload a part", - "documentation": "The following example uploads part 1 of a multipart upload. The example specifies a file name for the part data. The Upload ID is same that is returned by the initiate multipart upload.", + "traits": { + "smithy.api#documentation": "

Specifies website configuration parameters for an Amazon S3 bucket.

" + } + }, + "com.amazonaws.s3#WebsiteRedirectLocation": { + "type": "string" + }, + "com.amazonaws.s3#WriteGetObjectResponse": { + "type": "operation", "input": { - "Body": "fileToUpload", - "Bucket": "examplebucket", - "Key": "examplelargeobject", - "PartNumber": 1, - "UploadId": "xadcOB_7YPBOJuoFiQ9cz4P3Pe6FIZwO4f7wN93uHsNBEw97pl5eNwzExg0LAT2dUN91cOmrEQHDsP3WA60CEg--" + "target": "com.amazonaws.s3#WriteGetObjectResponseRequest" }, "output": { - "ETag": "\"d8c2eafd90c266e19ab9dcacc479f8af\"" - } - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}/{Key+}?x-id=UploadPart", - "code": 200 - } - } - }, - "com.amazonaws.s3#UploadPartCopy": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#UploadPartCopyRequest" - }, - "output": { - "target": "com.amazonaws.s3#UploadPartCopyOutput" - }, - "traits": { - "smithy.api#documentation": "

Uploads a part by copying data from an existing object as data source. To specify the\n data source, you add the request header x-amz-copy-source in your request. To\n specify a byte range, you add the request header x-amz-copy-source-range in\n your request.

\n

For information about maximum and minimum part sizes and other multipart upload\n specifications, see Multipart upload limits in the Amazon S3 User Guide.

\n \n

Instead of copying data from an existing object as part data, you might use the\n UploadPart action to upload new data as a part of an object in your\n request.

\n
\n

You must initiate a multipart upload before you can upload any part. In response to your\n initiate request, Amazon S3 returns the upload ID, a unique identifier that you must include in\n your upload part request.

\n

For conceptual information about multipart uploads, see Uploading Objects Using Multipart\n Upload in the Amazon S3 User Guide. For information about\n copying objects using a single atomic action vs. a multipart upload, see Operations on\n Objects in the Amazon S3 User Guide.

\n \n

\n Directory buckets -\n For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name\n . Path-style requests are not supported. For more information about endpoints in Availability Zones, see Regional and Zonal endpoints for directory buckets in Availability Zones in the\n Amazon S3 User Guide. For more information about endpoints in Local Zones, see Available Local Zone for directory buckets in the\n Amazon S3 User Guide.

\n
\n
\n
Authentication and authorization
\n
\n

All UploadPartCopy requests must be authenticated and signed by\n using IAM credentials (access key ID and secret access key for the IAM\n identities). All headers with the x-amz- prefix, including\n x-amz-copy-source, must be signed. For more information, see\n REST Authentication.

\n

\n Directory buckets - You must use IAM\n credentials to authenticate and authorize your access to the\n UploadPartCopy API operation, instead of using the temporary\n security credentials through the CreateSession API operation.

\n

Amazon Web Services CLI or SDKs handles authentication and authorization on your\n behalf.

\n
\n
Permissions
\n
\n

You must have READ access to the source object and\n WRITE access to the destination bucket.

\n
    \n
  • \n

    \n General purpose bucket permissions - You\n must have the permissions in a policy based on the bucket types of your\n source bucket and destination bucket in an UploadPartCopy\n operation.

    \n
      \n
    • \n

      If the source object is in a general purpose bucket, you must have the\n \n s3:GetObject\n \n permission to read the source object that is being copied.

      \n
    • \n
    • \n

      If the destination bucket is a general purpose bucket, you must have the\n \n s3:PutObject\n \n permission to write the object copy to the destination bucket.

      \n
    • \n
    • \n

      To perform a multipart upload with encryption using an Key Management Service\n key, the requester must have permission to the\n kms:Decrypt and kms:GenerateDataKey\n actions on the key. The requester must also have permissions for the\n kms:GenerateDataKey action for the\n CreateMultipartUpload API. Then, the requester needs\n permissions for the kms:Decrypt action on the\n UploadPart and UploadPartCopy APIs. These\n permissions are required because Amazon S3 must decrypt and read data from\n the encrypted file parts before it completes the multipart upload. For\n more information about KMS permissions, see Protecting\n data using server-side encryption with KMS in the\n Amazon S3 User Guide. For information about the\n permissions required to use the multipart upload API, see Multipart upload\n and permissions and Multipart upload API and permissions in the\n Amazon S3 User Guide.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions -\n You must have permissions in a bucket policy or an IAM identity-based policy based on the\n source and destination bucket types in an UploadPartCopy\n operation.

    \n
      \n
    • \n

      If the source object that you want to copy is in a\n directory bucket, you must have the \n s3express:CreateSession\n permission in\n the Action element of a policy to read the object. By\n default, the session is in the ReadWrite mode. If you\n want to restrict the access, you can explicitly set the\n s3express:SessionMode condition key to\n ReadOnly on the copy source bucket.

      \n
    • \n
    • \n

      If the copy destination is a directory bucket, you must have the\n \n s3express:CreateSession\n permission in the\n Action element of a policy to write the object to the\n destination. The s3express:SessionMode condition key\n cannot be set to ReadOnly on the copy destination.\n

      \n
    • \n
    \n

    If the object is encrypted with SSE-KMS, you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions\n in IAM identity-based policies and KMS key policies for the KMS\n key.

    \n

    For example policies, see Example bucket policies for S3 Express One Zone and Amazon Web Services Identity and Access Management (IAM) identity-based policies for\n S3 Express One Zone in the Amazon S3 User Guide.

    \n
  • \n
\n
\n
Encryption
\n
\n
    \n
  • \n

    \n General purpose buckets -\n For information about using\n server-side encryption with customer-provided encryption keys with the\n UploadPartCopy operation, see CopyObject and\n UploadPart.

    \n
  • \n
  • \n

    \n Directory buckets -\n For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms). For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide.

    \n \n

    For directory buckets, when you perform a\n CreateMultipartUpload operation and an\n UploadPartCopy operation, the request headers you provide\n in the CreateMultipartUpload request must match the default\n encryption configuration of the destination bucket.

    \n
    \n

    S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets \nto directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through UploadPartCopy. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.

    \n
  • \n
\n
\n
Special errors
\n
\n
    \n
  • \n

    Error Code: NoSuchUpload\n

    \n
      \n
    • \n

      Description: The specified multipart upload does not exist. The\n upload ID might be invalid, or the multipart upload might have been\n aborted or completed.

      \n
    • \n
    • \n

      HTTP Status Code: 404 Not Found

      \n
    • \n
    \n
  • \n
  • \n

    Error Code: InvalidRequest\n

    \n
      \n
    • \n

      Description: The specified copy source is not supported as a\n byte-range copy source.

      \n
    • \n
    • \n

      HTTP Status Code: 400 Bad Request

      \n
    • \n
    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket-name.s3express-zone-id.region-code.amazonaws.com.

\n
\n
\n

The following operations are related to UploadPartCopy:

\n ", - "smithy.api#examples": [ - { - "title": "To upload a part by copying byte range from an existing object as data source", - "documentation": "The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as data source.", - "input": { - "Bucket": "examplebucket", - "CopySource": "/bucketname/sourceobjectkey", - "CopySourceRange": "bytes=1-100000", - "Key": "examplelargeobject", - "PartNumber": 2, - "UploadId": "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--" + "target": "smithy.api#Unit" }, - "output": { - "CopyPartResult": { - "LastModified": "2016-12-29T21:44:28.000Z", - "ETag": "\"65d16d19e65a7508a51f043180edcc36\"" - } - } - }, - { - "title": "To upload a part by copying data from an existing object as data source", - "documentation": "The following example uploads a part of a multipart upload by copying data from an existing object as data source.", - "input": { - "Bucket": "examplebucket", - "CopySource": "/bucketname/sourceobjectkey", - "Key": "examplelargeobject", - "PartNumber": 1, - "UploadId": "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--" + "traits": { + "aws.auth#unsignedPayload": {}, + "smithy.api#auth": [ + "aws.auth#sigv4" + ], + "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Passes transformed objects to a GetObject operation when using Object Lambda access points. For information\n about Object Lambda access points, see Transforming objects with Object Lambda access points in the Amazon S3 User Guide.

\n

This operation supports metadata that can be returned by GetObject, in addition to\n RequestRoute, RequestToken, StatusCode, ErrorCode,\n and ErrorMessage. The GetObject response metadata is supported so that the\n WriteGetObjectResponse caller, typically an Lambda function, can provide the same\n metadata when it internally invokes GetObject. When WriteGetObjectResponse is\n called by a customer-owned Lambda function, the metadata returned to the end user GetObject\n call might differ from what Amazon S3 would normally return.

\n

You can include any number of metadata headers. When including a metadata header, it should be\n prefaced with x-amz-meta. For example, x-amz-meta-my-custom-header:\n MyCustomValue. The primary use case for this is to forward GetObject\n metadata.

\n

Amazon Web Services provides some prebuilt Lambda functions that you can use with S3 Object Lambda to detect and\n redact personally identifiable information (PII) and decompress S3 objects. These Lambda functions are\n available in the Amazon Web Services Serverless Application Repository, and can be selected through the Amazon Web Services\n Management Console when you create your Object Lambda access point.

\n

Example 1: PII Access Control - This Lambda function uses Amazon Comprehend, a natural\n language processing (NLP) service using machine learning to find insights and relationships in text. It\n automatically detects personally identifiable information (PII) such as names, addresses, dates, credit\n card numbers, and social security numbers from documents in your Amazon S3 bucket.

\n

Example 2: PII Redaction - This Lambda function uses Amazon Comprehend, a natural language\n processing (NLP) service using machine learning to find insights and relationships in text. It\n automatically redacts personally identifiable information (PII) such as names, addresses, dates, credit\n card numbers, and social security numbers from documents in your Amazon S3 bucket.

\n

Example 3: Decompression - The Lambda function S3ObjectLambdaDecompression, is equipped to\n decompress objects stored in S3 in one of six compressed file formats including bzip2, gzip, snappy,\n zlib, zstandard and ZIP.

\n

For information on how to view and use these functions, see Using Amazon Web Services built Lambda functions in the\n Amazon S3 User Guide.

", + "smithy.api#endpoint": { + "hostPrefix": "{RequestRoute}." + }, + "smithy.api#http": { + "method": "POST", + "uri": "/WriteGetObjectResponse", + "code": 200 + }, + "smithy.rules#staticContextParams": { + "UseObjectLambdaEndpoint": { + "value": true + } + } + } + }, + "com.amazonaws.s3#WriteGetObjectResponseRequest": { + "type": "structure", + "members": { + "RequestRoute": { + "target": "com.amazonaws.s3#RequestRoute", + "traits": { + "smithy.api#documentation": "

Route prefix to the HTTP URL generated.

", + "smithy.api#hostLabel": {}, + "smithy.api#httpHeader": "x-amz-request-route", + "smithy.api#required": {} + } + }, + "RequestToken": { + "target": "com.amazonaws.s3#RequestToken", + "traits": { + "smithy.api#documentation": "

A single use encrypted token that maps WriteGetObjectResponse to the end user\n GetObject request.

", + "smithy.api#httpHeader": "x-amz-request-token", + "smithy.api#required": {} + } + }, + "Body": { + "target": "com.amazonaws.s3#StreamingBlob", + "traits": { + "smithy.api#default": "", + "smithy.api#documentation": "

The object data.

", + "smithy.api#httpPayload": {} + } + }, + "StatusCode": { + "target": "com.amazonaws.s3#GetObjectResponseStatusCode", + "traits": { + "smithy.api#documentation": "

The integer status code for an HTTP response of a corresponding GetObject request. The\n following is a list of status codes.

\n
    \n
  • \n

    \n 200 - OK\n

    \n
  • \n
  • \n

    \n 206 - Partial Content\n

    \n
  • \n
  • \n

    \n 304 - Not Modified\n

    \n
  • \n
  • \n

    \n 400 - Bad Request\n

    \n
  • \n
  • \n

    \n 401 - Unauthorized\n

    \n
  • \n
  • \n

    \n 403 - Forbidden\n

    \n
  • \n
  • \n

    \n 404 - Not Found\n

    \n
  • \n
  • \n

    \n 405 - Method Not Allowed\n

    \n
  • \n
  • \n

    \n 409 - Conflict\n

    \n
  • \n
  • \n

    \n 411 - Length Required\n

    \n
  • \n
  • \n

    \n 412 - Precondition Failed\n

    \n
  • \n
  • \n

    \n 416 - Range Not Satisfiable\n

    \n
  • \n
  • \n

    \n 500 - Internal Server Error\n

    \n
  • \n
  • \n

    \n 503 - Service Unavailable\n

    \n
  • \n
", + "smithy.api#httpHeader": "x-amz-fwd-status" + } + }, + "ErrorCode": { + "target": "com.amazonaws.s3#ErrorCode", + "traits": { + "smithy.api#documentation": "

A string that uniquely identifies an error condition. Returned in the tag of the error\n XML response for a corresponding GetObject call. Cannot be used with a successful\n StatusCode header or when the transformed object is provided in the body. All error codes\n from S3 are sentence-cased. The regular expression (regex) value is\n \"^[A-Z][a-zA-Z]+$\".

", + "smithy.api#httpHeader": "x-amz-fwd-error-code" + } + }, + "ErrorMessage": { + "target": "com.amazonaws.s3#ErrorMessage", + "traits": { + "smithy.api#documentation": "

Contains a generic description of the error condition. Returned in the tag of the\n error XML response for a corresponding GetObject call. Cannot be used with a successful\n StatusCode header or when the transformed object is provided in body.

", + "smithy.api#httpHeader": "x-amz-fwd-error-message" + } + }, + "AcceptRanges": { + "target": "com.amazonaws.s3#AcceptRanges", + "traits": { + "smithy.api#documentation": "

Indicates that a range of bytes was specified.

", + "smithy.api#httpHeader": "x-amz-fwd-header-accept-ranges" + } + }, + "CacheControl": { + "target": "com.amazonaws.s3#CacheControl", + "traits": { + "smithy.api#documentation": "

Specifies caching behavior along the request/reply chain.

", + "smithy.api#httpHeader": "x-amz-fwd-header-Cache-Control" + } + }, + "ContentDisposition": { + "target": "com.amazonaws.s3#ContentDisposition", + "traits": { + "smithy.api#documentation": "

Specifies presentational information for the object.

", + "smithy.api#httpHeader": "x-amz-fwd-header-Content-Disposition" + } + }, + "ContentEncoding": { + "target": "com.amazonaws.s3#ContentEncoding", + "traits": { + "smithy.api#documentation": "

Specifies what content encodings have been applied to the object and thus what decoding mechanisms\n must be applied to obtain the media-type referenced by the Content-Type header field.

", + "smithy.api#httpHeader": "x-amz-fwd-header-Content-Encoding" + } + }, + "ContentLanguage": { + "target": "com.amazonaws.s3#ContentLanguage", + "traits": { + "smithy.api#documentation": "

The language the content is in.

", + "smithy.api#httpHeader": "x-amz-fwd-header-Content-Language" + } + }, + "ContentLength": { + "target": "com.amazonaws.s3#ContentLength", + "traits": { + "smithy.api#documentation": "

The size of the content body in bytes.

", + "smithy.api#httpHeader": "Content-Length" + } + }, + "ContentRange": { + "target": "com.amazonaws.s3#ContentRange", + "traits": { + "smithy.api#documentation": "

The portion of the object returned in the response.

", + "smithy.api#httpHeader": "x-amz-fwd-header-Content-Range" + } + }, + "ContentType": { + "target": "com.amazonaws.s3#ContentType", + "traits": { + "smithy.api#documentation": "

A standard MIME type describing the format of the object data.

", + "smithy.api#httpHeader": "x-amz-fwd-header-Content-Type" + } + }, + "ChecksumCRC32": { + "target": "com.amazonaws.s3#ChecksumCRC32", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data\n that was originally sent. This specifies the Base64 encoded, 32-bit CRC32 checksum of the\n object returned by the Object Lambda function. This may not match the checksum for the object stored in\n Amazon S3. Amazon S3 will perform validation of the checksum values only when the original GetObject\n request required checksum validation. For more information about checksums, see Checking object\n integrity in the Amazon S3 User Guide.

\n

Only one checksum header can be specified at a time. If you supply multiple checksum headers, this\n request will fail.

\n

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-checksum-crc32" + } + }, + "ChecksumCRC32C": { + "target": "com.amazonaws.s3#ChecksumCRC32C", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data\n that was originally sent. This specifies the Base64 encoded, 32-bit CRC32C checksum of the\n object returned by the Object Lambda function. This may not match the checksum for the object stored in\n Amazon S3. Amazon S3 will perform validation of the checksum values only when the original GetObject\n request required checksum validation. For more information about checksums, see Checking object\n integrity in the Amazon S3 User Guide.

\n

Only one checksum header can be specified at a time. If you supply multiple checksum headers, this\n request will fail.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-checksum-crc32c" + } + }, + "ChecksumCRC64NVME": { + "target": "com.amazonaws.s3#ChecksumCRC64NVME", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data\n that was originally sent. This header specifies the Base64 encoded, 64-bit CRC64NVME\n checksum of the part. For more information, see Checking object integrity in\n the Amazon S3 User Guide.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-checksum-crc64nvme" + } + }, + "ChecksumSHA1": { + "target": "com.amazonaws.s3#ChecksumSHA1", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data\n that was originally sent. This specifies the Base64 encoded, 160-bit SHA1 digest of the\n object returned by the Object Lambda function. This may not match the checksum for the object stored in\n Amazon S3. Amazon S3 will perform validation of the checksum values only when the original GetObject\n request required checksum validation. For more information about checksums, see Checking object\n integrity in the Amazon S3 User Guide.

\n

Only one checksum header can be specified at a time. If you supply multiple checksum headers, this\n request will fail.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-checksum-sha1" + } + }, + "ChecksumSHA256": { + "target": "com.amazonaws.s3#ChecksumSHA256", + "traits": { + "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data\n that was originally sent. This specifies the Base64 encoded, 256-bit SHA256 digest of the\n object returned by the Object Lambda function. This may not match the checksum for the object stored in\n Amazon S3. Amazon S3 will perform validation of the checksum values only when the original GetObject\n request required checksum validation. For more information about checksums, see Checking object\n integrity in the Amazon S3 User Guide.

\n

Only one checksum header can be specified at a time. If you supply multiple checksum headers, this\n request will fail.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-checksum-sha256" + } + }, + "DeleteMarker": { + "target": "com.amazonaws.s3#DeleteMarker", + "traits": { + "smithy.api#documentation": "

Specifies whether an object stored in Amazon S3 is (true) or is not (false) a\n delete marker. To learn more about delete markers, see Working with delete markers.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-delete-marker" + } + }, + "ETag": { + "target": "com.amazonaws.s3#ETag", + "traits": { + "smithy.api#documentation": "

An opaque identifier assigned by a web server to a specific version of a resource found at a URL.\n

", + "smithy.api#httpHeader": "x-amz-fwd-header-ETag" + } + }, + "Expires": { + "target": "com.amazonaws.s3#Expires", + "traits": { + "smithy.api#documentation": "

The date and time at which the object is no longer cacheable.

", + "smithy.api#httpHeader": "x-amz-fwd-header-Expires" + } + }, + "Expiration": { + "target": "com.amazonaws.s3#Expiration", + "traits": { + "smithy.api#documentation": "

If the object expiration is configured (see PUT Bucket lifecycle), the response includes this\n header. It includes the expiry-date and rule-id key-value pairs that provide\n the object expiration information. The value of the rule-id is URL-encoded.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-expiration" + } + }, + "LastModified": { + "target": "com.amazonaws.s3#LastModified", + "traits": { + "smithy.api#documentation": "

The date and time that the object was last modified.

", + "smithy.api#httpHeader": "x-amz-fwd-header-Last-Modified" + } + }, + "MissingMeta": { + "target": "com.amazonaws.s3#MissingMeta", + "traits": { + "smithy.api#documentation": "

Set to the number of metadata entries not returned in x-amz-meta headers. This can\n happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST\n API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-missing-meta" + } + }, + "Metadata": { + "target": "com.amazonaws.s3#Metadata", + "traits": { + "smithy.api#documentation": "

A map of metadata to store with the object in S3.

", + "smithy.api#httpPrefixHeaders": "x-amz-meta-" + } + }, + "ObjectLockMode": { + "target": "com.amazonaws.s3#ObjectLockMode", + "traits": { + "smithy.api#documentation": "

Indicates whether an object stored in Amazon S3 has Object Lock enabled. For more information about S3\n Object Lock, see Object\n Lock.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-object-lock-mode" + } + }, + "ObjectLockLegalHoldStatus": { + "target": "com.amazonaws.s3#ObjectLockLegalHoldStatus", + "traits": { + "smithy.api#documentation": "

Indicates whether an object stored in Amazon S3 has an active legal hold.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-object-lock-legal-hold" + } + }, + "ObjectLockRetainUntilDate": { + "target": "com.amazonaws.s3#ObjectLockRetainUntilDate", + "traits": { + "smithy.api#documentation": "

The date and time when Object Lock is configured to expire.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-object-lock-retain-until-date" + } + }, + "PartsCount": { + "target": "com.amazonaws.s3#PartsCount", + "traits": { + "smithy.api#documentation": "

The count of parts this object has.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-mp-parts-count" + } + }, + "ReplicationStatus": { + "target": "com.amazonaws.s3#ReplicationStatus", + "traits": { + "smithy.api#documentation": "

Indicates if request involves bucket that is either a source or destination in a Replication rule.\n For more information about S3 Replication, see Replication.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-replication-status" + } + }, + "RequestCharged": { + "target": "com.amazonaws.s3#RequestCharged", + "traits": { + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-request-charged" + } + }, + "Restore": { + "target": "com.amazonaws.s3#Restore", + "traits": { + "smithy.api#documentation": "

Provides information about object restoration operation and expiration time of the restored object\n copy.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-restore" + } + }, + "ServerSideEncryption": { + "target": "com.amazonaws.s3#ServerSideEncryption", + "traits": { + "smithy.api#documentation": "

The server-side encryption algorithm used when storing requested object in Amazon S3 or Amazon FSx.

\n \n

When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side\n encryption option is aws:fsx.

\n
", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-server-side-encryption" + } + }, + "SSECustomerAlgorithm": { + "target": "com.amazonaws.s3#SSECustomerAlgorithm", + "traits": { + "smithy.api#documentation": "

Encryption algorithm used if server-side encryption with a customer-provided encryption key was\n specified for object stored in Amazon S3.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-server-side-encryption-customer-algorithm" + } + }, + "SSEKMSKeyId": { + "target": "com.amazonaws.s3#SSEKMSKeyId", + "traits": { + "smithy.api#documentation": "

If present, specifies the ID (Key ID, Key ARN, or Key Alias) of the Amazon Web Services Key Management Service\n (Amazon Web Services KMS) symmetric encryption customer managed key that was used for stored in Amazon S3 object.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-server-side-encryption-aws-kms-key-id" + } + }, + "SSECustomerKeyMD5": { + "target": "com.amazonaws.s3#SSECustomerKeyMD5", + "traits": { + "smithy.api#documentation": "

128-bit MD5 digest of customer-provided encryption key used in Amazon S3 to encrypt data stored in S3.\n For more information, see Protecting data using\n server-side encryption with customer-provided encryption keys (SSE-C).

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-server-side-encryption-customer-key-MD5" + } + }, + "StorageClass": { + "target": "com.amazonaws.s3#StorageClass", + "traits": { + "smithy.api#documentation": "

Provides storage class information of the object. Amazon S3 returns this header for all objects except\n for S3 Standard storage class objects.

\n

For more information, see Storage Classes.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-storage-class" + } + }, + "TagCount": { + "target": "com.amazonaws.s3#TagCount", + "traits": { + "smithy.api#documentation": "

The number of tags, if any, on the object.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-tagging-count" + } + }, + "VersionId": { + "target": "com.amazonaws.s3#ObjectVersionId", + "traits": { + "smithy.api#documentation": "

An ID used to reference a specific version of the object.

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-version-id" + } + }, + "BucketKeyEnabled": { + "target": "com.amazonaws.s3#BucketKeyEnabled", + "traits": { + "smithy.api#documentation": "

Indicates whether the object stored in Amazon S3 uses an S3 bucket key for server-side encryption with\n Amazon Web Services KMS (SSE-KMS).

", + "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-server-side-encryption-bucket-key-enabled" + } + } }, - "output": { - "CopyPartResult": { - "LastModified": "2016-12-29T21:24:43.000Z", - "ETag": "\"b0c6f0e7e054ab8fa2536a2677f8734d\"" - } - } - } - ], - "smithy.api#http": { - "method": "PUT", - "uri": "/{Bucket}/{Key+}?x-id=UploadPartCopy", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "DisableS3ExpressSessionAuth": { - "value": true - } - } - } - }, - "com.amazonaws.s3#UploadPartCopyOutput": { - "type": "structure", - "members": { - "CopySourceVersionId": { - "target": "com.amazonaws.s3#CopySourceVersionId", - "traits": { - "smithy.api#documentation": "

The version of the source object that was copied, if you have enabled versioning on the\n source bucket.

\n \n

This functionality is not supported when the source object is in a directory bucket.

\n
", - "smithy.api#httpHeader": "x-amz-copy-source-version-id" - } - }, - "CopyPartResult": { - "target": "com.amazonaws.s3#CopyPartResult", - "traits": { - "smithy.api#documentation": "

Container for all response elements.

", - "smithy.api#httpPayload": {} - } - }, - "ServerSideEncryption": { - "target": "com.amazonaws.s3#ServerSideEncryption", - "traits": { - "smithy.api#documentation": "

The server-side encryption algorithm used when you store this object in Amazon S3 (for\n example, AES256, aws:kms).

", - "smithy.api#httpHeader": "x-amz-server-side-encryption" - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the\n response will include this header to confirm the encryption algorithm that's used.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the\n response will include this header to provide the round-trip message integrity verification\n of the customer-provided encryption key.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - }, - "SSEKMSKeyId": { - "target": "com.amazonaws.s3#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

If present, indicates the ID of the KMS key that was used for object encryption.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" - } - }, - "BucketKeyEnabled": { - "target": "com.amazonaws.s3#BucketKeyEnabled", - "traits": { - "smithy.api#documentation": "

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption\n with Key Management Service (KMS) keys (SSE-KMS).

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#UploadPartCopyRequest": { - "type": "structure", - "members": { - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The bucket name.

\n

\n Directory buckets - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n \n

Copying objects across different Amazon Web Services Regions isn't supported when the source or destination bucket is in Amazon Web Services Local Zones. The source and destination buckets must have the same parent Amazon Web Services Region. Otherwise, \n you get an HTTP 400 Bad Request error with the error code InvalidRequest.

\n
\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "CopySource": { - "target": "com.amazonaws.s3#CopySource", - "traits": { - "smithy.api#documentation": "

Specifies the source object for the copy operation. You specify the value in one of two\n formats, depending on whether you want to access the source object through an access point:

\n
    \n
  • \n

    For objects not accessed through an access point, specify the name of the source bucket\n and key of the source object, separated by a slash (/). For example, to copy the\n object reports/january.pdf from the bucket\n awsexamplebucket, use awsexamplebucket/reports/january.pdf.\n The value must be URL-encoded.

    \n
  • \n
  • \n

    For objects accessed through access points, specify the Amazon Resource Name (ARN) of the object as accessed through the access point, in the format arn:aws:s3:::accesspoint//object/. For example, to copy the object reports/january.pdf through access point my-access-point owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf. The value must be URL encoded.

    \n \n
      \n
    • \n

      Amazon S3 supports copy operations using Access points only when the source and destination buckets are in the same Amazon Web Services Region.

      \n
    • \n
    • \n

      Access points are not supported by directory buckets.

      \n
    • \n
    \n
    \n

    Alternatively, for objects accessed through Amazon S3 on Outposts, specify the ARN of the object as accessed in the format arn:aws:s3-outposts:::outpost//object/. For example, to copy the object reports/january.pdf through outpost my-outpost owned by account 123456789012 in Region us-west-2, use the URL encoding of arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf. The value must be URL-encoded.

    \n
  • \n
\n

If your bucket has versioning enabled, you could have multiple versions of the same\n object. By default, x-amz-copy-source identifies the current version of the\n source object to copy. To copy a specific version of the source object to copy, append\n ?versionId= to the x-amz-copy-source request\n header (for example, x-amz-copy-source:\n /awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893).

\n

If the current version is a delete marker and you don't specify a versionId in the\n x-amz-copy-source request header, Amazon S3 returns a 404 Not Found\n error, because the object does not exist. If you specify versionId in the\n x-amz-copy-source and the versionId is a delete marker, Amazon S3 returns an\n HTTP 400 Bad Request error, because you are not allowed to specify a delete\n marker as a version for the x-amz-copy-source.

\n \n

\n Directory buckets -\n S3 Versioning isn't enabled and supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-copy-source", - "smithy.api#required": {} - } - }, - "CopySourceIfMatch": { - "target": "com.amazonaws.s3#CopySourceIfMatch", - "traits": { - "smithy.api#documentation": "

Copies the object if its entity tag (ETag) matches the specified tag.

\n

If both of the x-amz-copy-source-if-match and\n x-amz-copy-source-if-unmodified-since headers are present in the request as\n follows:

\n

\n x-amz-copy-source-if-match condition evaluates to true,\n and;

\n

\n x-amz-copy-source-if-unmodified-since condition evaluates to\n false;

\n

Amazon S3 returns 200 OK and copies the data.\n

", - "smithy.api#httpHeader": "x-amz-copy-source-if-match" - } - }, - "CopySourceIfModifiedSince": { - "target": "com.amazonaws.s3#CopySourceIfModifiedSince", - "traits": { - "smithy.api#documentation": "

Copies the object if it has been modified since the specified time.

\n

If both of the x-amz-copy-source-if-none-match and\n x-amz-copy-source-if-modified-since headers are present in the request as\n follows:

\n

\n x-amz-copy-source-if-none-match condition evaluates to false,\n and;

\n

\n x-amz-copy-source-if-modified-since condition evaluates to\n true;

\n

Amazon S3 returns 412 Precondition Failed response code.\n

", - "smithy.api#httpHeader": "x-amz-copy-source-if-modified-since" - } - }, - "CopySourceIfNoneMatch": { - "target": "com.amazonaws.s3#CopySourceIfNoneMatch", - "traits": { - "smithy.api#documentation": "

Copies the object if its entity tag (ETag) is different than the specified ETag.

\n

If both of the x-amz-copy-source-if-none-match and\n x-amz-copy-source-if-modified-since headers are present in the request as\n follows:

\n

\n x-amz-copy-source-if-none-match condition evaluates to false,\n and;

\n

\n x-amz-copy-source-if-modified-since condition evaluates to\n true;

\n

Amazon S3 returns 412 Precondition Failed response code.\n

", - "smithy.api#httpHeader": "x-amz-copy-source-if-none-match" - } - }, - "CopySourceIfUnmodifiedSince": { - "target": "com.amazonaws.s3#CopySourceIfUnmodifiedSince", - "traits": { - "smithy.api#documentation": "

Copies the object if it hasn't been modified since the specified time.

\n

If both of the x-amz-copy-source-if-match and\n x-amz-copy-source-if-unmodified-since headers are present in the request as\n follows:

\n

\n x-amz-copy-source-if-match condition evaluates to true,\n and;

\n

\n x-amz-copy-source-if-unmodified-since condition evaluates to\n false;

\n

Amazon S3 returns 200 OK and copies the data.\n

", - "smithy.api#httpHeader": "x-amz-copy-source-if-unmodified-since" - } - }, - "CopySourceRange": { - "target": "com.amazonaws.s3#CopySourceRange", - "traits": { - "smithy.api#documentation": "

The range of bytes to copy from the source object. The range value must use the form\n bytes=first-last, where the first and last are the zero-based byte offsets to copy. For\n example, bytes=0-9 indicates that you want to copy the first 10 bytes of the source. You\n can copy a range only if the source object is greater than 5 MB.

", - "smithy.api#httpHeader": "x-amz-copy-source-range" - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Object key for which the multipart upload was initiated.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {} - } - }, - "PartNumber": { - "target": "com.amazonaws.s3#PartNumber", - "traits": { - "smithy.api#documentation": "

Part number of part being copied. This is a positive integer between 1 and\n 10,000.

", - "smithy.api#httpQuery": "partNumber", - "smithy.api#required": {} - } - }, - "UploadId": { - "target": "com.amazonaws.s3#MultipartUploadId", - "traits": { - "smithy.api#documentation": "

Upload ID identifying the multipart upload whose part is being copied.

", - "smithy.api#httpQuery": "uploadId", - "smithy.api#required": {} - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

\n \n

This functionality is not supported when the destination bucket is a directory bucket.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKey": { - "target": "com.amazonaws.s3#SSECustomerKey", - "traits": { - "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This\n value is used to store the object and then it is discarded; Amazon S3 does not store the\n encryption key. The key must be appropriate for use with the algorithm specified in the\n x-amz-server-side-encryption-customer-algorithm header. This must be the\n same encryption key specified in the initiate multipart upload request.

\n \n

This functionality is not supported when the destination bucket is a directory bucket.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses\n this header for a message integrity check to ensure that the encryption key was transmitted\n without error.

\n \n

This functionality is not supported when the destination bucket is a directory bucket.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - }, - "CopySourceSSECustomerAlgorithm": { - "target": "com.amazonaws.s3#CopySourceSSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

Specifies the algorithm to use when decrypting the source object (for example,\n AES256).

\n \n

This functionality is not supported when the source object is in a directory bucket.

\n
", - "smithy.api#httpHeader": "x-amz-copy-source-server-side-encryption-customer-algorithm" - } - }, - "CopySourceSSECustomerKey": { - "target": "com.amazonaws.s3#CopySourceSSECustomerKey", - "traits": { - "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use to decrypt the source\n object. The encryption key provided in this header must be one that was used when the\n source object was created.

\n \n

This functionality is not supported when the source object is in a directory bucket.

\n
", - "smithy.api#httpHeader": "x-amz-copy-source-server-side-encryption-customer-key" - } - }, - "CopySourceSSECustomerKeyMD5": { - "target": "com.amazonaws.s3#CopySourceSSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses\n this header for a message integrity check to ensure that the encryption key was transmitted\n without error.

\n \n

This functionality is not supported when the source object is in a directory bucket.

\n
", - "smithy.api#httpHeader": "x-amz-copy-source-server-side-encryption-customer-key-MD5" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected destination bucket owner. If the account ID that you provide does not match the actual owner of the destination bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - }, - "ExpectedSourceBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected source bucket owner. If the account ID that you provide does not match the actual owner of the source bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-source-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#UploadPartOutput": { - "type": "structure", - "members": { - "ServerSideEncryption": { - "target": "com.amazonaws.s3#ServerSideEncryption", - "traits": { - "smithy.api#documentation": "

The server-side encryption algorithm used when you store this object in Amazon S3 (for\n example, AES256, aws:kms).

", - "smithy.api#httpHeader": "x-amz-server-side-encryption" - } - }, - "ETag": { - "target": "com.amazonaws.s3#ETag", - "traits": { - "smithy.api#documentation": "

Entity tag for the uploaded object.

", - "smithy.api#httpHeader": "ETag" - } - }, - "ChecksumCRC32": { - "target": "com.amazonaws.s3#ChecksumCRC32", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32 checksum of the object. This checksum is only be present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc32" - } - }, - "ChecksumCRC32C": { - "target": "com.amazonaws.s3#ChecksumCRC32C", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 32-bit CRC-32C checksum of the object. This checksum is only present if the checksum was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc32c" - } - }, - "ChecksumCRC64NVME": { - "target": "com.amazonaws.s3#ChecksumCRC64NVME", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is\n the same data that was originally sent. This header specifies the Base64 encoded, 64-bit\n CRC-64NVME checksum of the part. For more information, see Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc64nvme" - } - }, - "ChecksumSHA1": { - "target": "com.amazonaws.s3#ChecksumSHA1", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 160-bit SHA-1 digest of the object. This will only be present if the object was uploaded\n with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-sha1" - } - }, - "ChecksumSHA256": { - "target": "com.amazonaws.s3#ChecksumSHA256", - "traits": { - "smithy.api#documentation": "

The Base64 encoded, 256-bit SHA-256 digest of the object. This will only be present if the object was uploaded\n with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated\n with multipart uploads, see \n Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-sha256" - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the\n response will include this header to confirm the encryption algorithm that's used.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

If server-side encryption with a customer-provided encryption key was requested, the\n response will include this header to provide the round-trip message integrity verification\n of the customer-provided encryption key.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - }, - "SSEKMSKeyId": { - "target": "com.amazonaws.s3#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

If present, indicates the ID of the KMS key that was used for object encryption.

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-aws-kms-key-id" - } - }, - "BucketKeyEnabled": { - "target": "com.amazonaws.s3#BucketKeyEnabled", - "traits": { - "smithy.api#documentation": "

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption\n with Key Management Service (KMS) keys (SSE-KMS).

", - "smithy.api#httpHeader": "x-amz-server-side-encryption-bucket-key-enabled" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-request-charged" - } - } - }, - "traits": { - "smithy.api#output": {} - } - }, - "com.amazonaws.s3#UploadPartRequest": { - "type": "structure", - "members": { - "Body": { - "target": "com.amazonaws.s3#StreamingBlob", - "traits": { - "smithy.api#default": "", - "smithy.api#documentation": "

Object data.

", - "smithy.api#httpPayload": {} - } - }, - "Bucket": { - "target": "com.amazonaws.s3#BucketName", - "traits": { - "smithy.api#documentation": "

The name of the bucket to which the multipart upload was initiated.

\n

\n Directory buckets -\n When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format \n Bucket-name.s3express-zone-id.region-code.amazonaws.com. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format \n bucket-base-name--zone-id--x-s3 (for example, \n DOC-EXAMPLE-BUCKET--usw2-az1--x-s3). For information about bucket naming\n restrictions, see Directory bucket naming\n rules in the Amazon S3 User Guide.

\n

\n Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

\n \n

Access points and Object Lambda access points are not supported by directory buckets.

\n
\n

\n S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form \n AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? in the Amazon S3 User Guide.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Bucket" - } - } - }, - "ContentLength": { - "target": "com.amazonaws.s3#ContentLength", - "traits": { - "smithy.api#documentation": "

Size of the body in bytes. This parameter is useful when the size of the body cannot be\n determined automatically.

", - "smithy.api#httpHeader": "Content-Length" - } - }, - "ContentMD5": { - "target": "com.amazonaws.s3#ContentMD5", - "traits": { - "smithy.api#documentation": "

The Base64 encoded 128-bit MD5 digest of the part data. This parameter is auto-populated\n when using the command from the CLI. This parameter is required if object lock parameters\n are specified.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "Content-MD5" - } - }, - "ChecksumAlgorithm": { - "target": "com.amazonaws.s3#ChecksumAlgorithm", - "traits": { - "smithy.api#documentation": "

Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any\n additional functionality if you don't use the SDK. When you send this header, there must be a corresponding x-amz-checksum or\n x-amz-trailer header sent. Otherwise, Amazon S3 fails the request with the HTTP status code 400 Bad Request. For more\n information, see Checking object integrity in\n the Amazon S3 User Guide.

\n

If you provide an individual checksum, Amazon S3 ignores any provided\n ChecksumAlgorithm parameter.

\n

This checksum algorithm must be the same for all parts and it match the checksum value\n supplied in the CreateMultipartUpload request.

", - "smithy.api#httpHeader": "x-amz-sdk-checksum-algorithm" - } - }, - "ChecksumCRC32": { - "target": "com.amazonaws.s3#ChecksumCRC32", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 32-bit CRC-32 checksum of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc32" - } - }, - "ChecksumCRC32C": { - "target": "com.amazonaws.s3#ChecksumCRC32C", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 32-bit CRC-32C checksum of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc32c" - } - }, - "ChecksumCRC64NVME": { - "target": "com.amazonaws.s3#ChecksumCRC64NVME", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is\n the same data that was originally sent. This header specifies the Base64 encoded, 64-bit\n CRC-64NVME checksum of the part. For more information, see Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-crc64nvme" - } - }, - "ChecksumSHA1": { - "target": "com.amazonaws.s3#ChecksumSHA1", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 160-bit SHA-1 digest of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-sha1" - } - }, - "ChecksumSHA256": { - "target": "com.amazonaws.s3#ChecksumSHA256", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent.\n This header specifies the Base64 encoded, 256-bit SHA-256 digest of the object. For more information, see\n Checking object integrity in the\n Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-checksum-sha256" - } - }, - "Key": { - "target": "com.amazonaws.s3#ObjectKey", - "traits": { - "smithy.api#documentation": "

Object key for which the multipart upload was initiated.

", - "smithy.api#httpLabel": {}, - "smithy.api#required": {}, - "smithy.rules#contextParam": { - "name": "Key" - } - } - }, - "PartNumber": { - "target": "com.amazonaws.s3#PartNumber", - "traits": { - "smithy.api#documentation": "

Part number of part being uploaded. This is a positive integer between 1 and\n 10,000.

", - "smithy.api#httpQuery": "partNumber", - "smithy.api#required": {} - } - }, - "UploadId": { - "target": "com.amazonaws.s3#MultipartUploadId", - "traits": { - "smithy.api#documentation": "

Upload ID identifying the multipart upload whose part is being uploaded.

", - "smithy.api#httpQuery": "uploadId", - "smithy.api#required": {} - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

Specifies the algorithm to use when encrypting the object (for example, AES256).

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSECustomerKey": { - "target": "com.amazonaws.s3#SSECustomerKey", - "traits": { - "smithy.api#documentation": "

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This\n value is used to store the object and then it is discarded; Amazon S3 does not store the\n encryption key. The key must be appropriate for use with the algorithm specified in the\n x-amz-server-side-encryption-customer-algorithm header. This must be the\n same encryption key specified in the initiate multipart upload request.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses\n this header for a message integrity check to ensure that the encryption key was transmitted\n without error.

\n \n

This functionality is not supported for directory buckets.

\n
", - "smithy.api#httpHeader": "x-amz-server-side-encryption-customer-key-MD5" - } - }, - "RequestPayer": { - "target": "com.amazonaws.s3#RequestPayer", - "traits": { - "smithy.api#httpHeader": "x-amz-request-payer" - } - }, - "ExpectedBucketOwner": { - "target": "com.amazonaws.s3#AccountId", - "traits": { - "smithy.api#documentation": "

The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

", - "smithy.api#httpHeader": "x-amz-expected-bucket-owner" - } - } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#UserMetadata": { - "type": "list", - "member": { - "target": "com.amazonaws.s3#MetadataEntry", - "traits": { - "smithy.api#xmlName": "MetadataEntry" - } - } - }, - "com.amazonaws.s3#Value": { - "type": "string" - }, - "com.amazonaws.s3#VersionCount": { - "type": "integer" - }, - "com.amazonaws.s3#VersionIdMarker": { - "type": "string" - }, - "com.amazonaws.s3#VersioningConfiguration": { - "type": "structure", - "members": { - "MFADelete": { - "target": "com.amazonaws.s3#MFADelete", - "traits": { - "smithy.api#documentation": "

Specifies whether MFA delete is enabled in the bucket versioning configuration. This\n element is only returned if the bucket has been configured with MFA delete. If the bucket\n has never been so configured, this element is not returned.

", - "smithy.api#xmlName": "MfaDelete" - } - }, - "Status": { - "target": "com.amazonaws.s3#BucketVersioningStatus", - "traits": { - "smithy.api#documentation": "

The versioning state of the bucket.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Describes the versioning state of an Amazon S3 bucket. For more information, see PUT\n Bucket versioning in the Amazon S3 API Reference.

" - } - }, - "com.amazonaws.s3#WebsiteConfiguration": { - "type": "structure", - "members": { - "ErrorDocument": { - "target": "com.amazonaws.s3#ErrorDocument", - "traits": { - "smithy.api#documentation": "

The name of the error document for the website.

" - } - }, - "IndexDocument": { - "target": "com.amazonaws.s3#IndexDocument", - "traits": { - "smithy.api#documentation": "

The name of the index document for the website.

" - } - }, - "RedirectAllRequestsTo": { - "target": "com.amazonaws.s3#RedirectAllRequestsTo", - "traits": { - "smithy.api#documentation": "

The redirect behavior for every request to this bucket's website endpoint.

\n \n

If you specify this property, you can't specify any other property.

\n
" - } - }, - "RoutingRules": { - "target": "com.amazonaws.s3#RoutingRules", - "traits": { - "smithy.api#documentation": "

Rules that define when a redirect is applied and the redirect behavior.

" - } - } - }, - "traits": { - "smithy.api#documentation": "

Specifies website configuration parameters for an Amazon S3 bucket.

" - } - }, - "com.amazonaws.s3#WebsiteRedirectLocation": { - "type": "string" - }, - "com.amazonaws.s3#WriteGetObjectResponse": { - "type": "operation", - "input": { - "target": "com.amazonaws.s3#WriteGetObjectResponseRequest" - }, - "output": { - "target": "smithy.api#Unit" - }, - "traits": { - "aws.auth#unsignedPayload": {}, - "smithy.api#auth": ["aws.auth#sigv4"], - "smithy.api#documentation": "\n

This operation is not supported for directory buckets.

\n
\n

Passes transformed objects to a GetObject operation when using Object Lambda access points. For\n information about Object Lambda access points, see Transforming objects with\n Object Lambda access points in the Amazon S3 User Guide.

\n

This operation supports metadata that can be returned by GetObject, in addition to\n RequestRoute, RequestToken, StatusCode,\n ErrorCode, and ErrorMessage. The GetObject\n response metadata is supported so that the WriteGetObjectResponse caller,\n typically an Lambda function, can provide the same metadata when it internally invokes\n GetObject. When WriteGetObjectResponse is called by a\n customer-owned Lambda function, the metadata returned to the end user\n GetObject call might differ from what Amazon S3 would normally return.

\n

You can include any number of metadata headers. When including a metadata header, it\n should be prefaced with x-amz-meta. For example,\n x-amz-meta-my-custom-header: MyCustomValue. The primary use case for this\n is to forward GetObject metadata.

\n

Amazon Web Services provides some prebuilt Lambda functions that you can use with S3 Object Lambda to\n detect and redact personally identifiable information (PII) and decompress S3 objects.\n These Lambda functions are available in the Amazon Web Services Serverless Application Repository, and\n can be selected through the Amazon Web Services Management Console when you create your Object Lambda access point.

\n

Example 1: PII Access Control - This Lambda function uses Amazon Comprehend, a\n natural language processing (NLP) service using machine learning to find insights and\n relationships in text. It automatically detects personally identifiable information (PII)\n such as names, addresses, dates, credit card numbers, and social security numbers from\n documents in your Amazon S3 bucket.

\n

Example 2: PII Redaction - This Lambda function uses Amazon Comprehend, a natural\n language processing (NLP) service using machine learning to find insights and relationships\n in text. It automatically redacts personally identifiable information (PII) such as names,\n addresses, dates, credit card numbers, and social security numbers from documents in your\n Amazon S3 bucket.

\n

Example 3: Decompression - The Lambda function S3ObjectLambdaDecompression, is\n equipped to decompress objects stored in S3 in one of six compressed file formats including\n bzip2, gzip, snappy, zlib, zstandard and ZIP.

\n

For information on how to view and use these functions, see Using Amazon Web Services built Lambda\n functions in the Amazon S3 User Guide.

", - "smithy.api#endpoint": { - "hostPrefix": "{RequestRoute}." - }, - "smithy.api#http": { - "method": "POST", - "uri": "/WriteGetObjectResponse", - "code": 200 - }, - "smithy.rules#staticContextParams": { - "UseObjectLambdaEndpoint": { - "value": true - } - } - } - }, - "com.amazonaws.s3#WriteGetObjectResponseRequest": { - "type": "structure", - "members": { - "RequestRoute": { - "target": "com.amazonaws.s3#RequestRoute", - "traits": { - "smithy.api#documentation": "

Route prefix to the HTTP URL generated.

", - "smithy.api#hostLabel": {}, - "smithy.api#httpHeader": "x-amz-request-route", - "smithy.api#required": {} - } - }, - "RequestToken": { - "target": "com.amazonaws.s3#RequestToken", - "traits": { - "smithy.api#documentation": "

A single use encrypted token that maps WriteGetObjectResponse to the end\n user GetObject request.

", - "smithy.api#httpHeader": "x-amz-request-token", - "smithy.api#required": {} - } - }, - "Body": { - "target": "com.amazonaws.s3#StreamingBlob", - "traits": { - "smithy.api#default": "", - "smithy.api#documentation": "

The object data.

", - "smithy.api#httpPayload": {} - } - }, - "StatusCode": { - "target": "com.amazonaws.s3#GetObjectResponseStatusCode", - "traits": { - "smithy.api#documentation": "

The integer status code for an HTTP response of a corresponding GetObject\n request. The following is a list of status codes.

\n
    \n
  • \n

    \n 200 - OK\n

    \n
  • \n
  • \n

    \n 206 - Partial Content\n

    \n
  • \n
  • \n

    \n 304 - Not Modified\n

    \n
  • \n
  • \n

    \n 400 - Bad Request\n

    \n
  • \n
  • \n

    \n 401 - Unauthorized\n

    \n
  • \n
  • \n

    \n 403 - Forbidden\n

    \n
  • \n
  • \n

    \n 404 - Not Found\n

    \n
  • \n
  • \n

    \n 405 - Method Not Allowed\n

    \n
  • \n
  • \n

    \n 409 - Conflict\n

    \n
  • \n
  • \n

    \n 411 - Length Required\n

    \n
  • \n
  • \n

    \n 412 - Precondition Failed\n

    \n
  • \n
  • \n

    \n 416 - Range Not Satisfiable\n

    \n
  • \n
  • \n

    \n 500 - Internal Server Error\n

    \n
  • \n
  • \n

    \n 503 - Service Unavailable\n

    \n
  • \n
", - "smithy.api#httpHeader": "x-amz-fwd-status" - } - }, - "ErrorCode": { - "target": "com.amazonaws.s3#ErrorCode", - "traits": { - "smithy.api#documentation": "

A string that uniquely identifies an error condition. Returned in the tag\n of the error XML response for a corresponding GetObject call. Cannot be used\n with a successful StatusCode header or when the transformed object is provided\n in the body. All error codes from S3 are sentence-cased. The regular expression (regex)\n value is \"^[A-Z][a-zA-Z]+$\".

", - "smithy.api#httpHeader": "x-amz-fwd-error-code" - } - }, - "ErrorMessage": { - "target": "com.amazonaws.s3#ErrorMessage", - "traits": { - "smithy.api#documentation": "

Contains a generic description of the error condition. Returned in the \n tag of the error XML response for a corresponding GetObject call. Cannot be\n used with a successful StatusCode header or when the transformed object is\n provided in body.

", - "smithy.api#httpHeader": "x-amz-fwd-error-message" - } - }, - "AcceptRanges": { - "target": "com.amazonaws.s3#AcceptRanges", - "traits": { - "smithy.api#documentation": "

Indicates that a range of bytes was specified.

", - "smithy.api#httpHeader": "x-amz-fwd-header-accept-ranges" - } - }, - "CacheControl": { - "target": "com.amazonaws.s3#CacheControl", - "traits": { - "smithy.api#documentation": "

Specifies caching behavior along the request/reply chain.

", - "smithy.api#httpHeader": "x-amz-fwd-header-Cache-Control" - } - }, - "ContentDisposition": { - "target": "com.amazonaws.s3#ContentDisposition", - "traits": { - "smithy.api#documentation": "

Specifies presentational information for the object.

", - "smithy.api#httpHeader": "x-amz-fwd-header-Content-Disposition" - } - }, - "ContentEncoding": { - "target": "com.amazonaws.s3#ContentEncoding", - "traits": { - "smithy.api#documentation": "

Specifies what content encodings have been applied to the object and thus what decoding\n mechanisms must be applied to obtain the media-type referenced by the Content-Type header\n field.

", - "smithy.api#httpHeader": "x-amz-fwd-header-Content-Encoding" - } - }, - "ContentLanguage": { - "target": "com.amazonaws.s3#ContentLanguage", - "traits": { - "smithy.api#documentation": "

The language the content is in.

", - "smithy.api#httpHeader": "x-amz-fwd-header-Content-Language" - } - }, - "ContentLength": { - "target": "com.amazonaws.s3#ContentLength", - "traits": { - "smithy.api#documentation": "

The size of the content body in bytes.

", - "smithy.api#httpHeader": "Content-Length" - } - }, - "ContentRange": { - "target": "com.amazonaws.s3#ContentRange", - "traits": { - "smithy.api#documentation": "

The portion of the object returned in the response.

", - "smithy.api#httpHeader": "x-amz-fwd-header-Content-Range" - } - }, - "ContentType": { - "target": "com.amazonaws.s3#ContentType", - "traits": { - "smithy.api#documentation": "

A standard MIME type describing the format of the object data.

", - "smithy.api#httpHeader": "x-amz-fwd-header-Content-Type" - } - }, - "ChecksumCRC32": { - "target": "com.amazonaws.s3#ChecksumCRC32", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is\n the same data that was originally sent. This specifies the Base64 encoded, 32-bit CRC-32\n checksum of the object returned by the Object Lambda function. This may not match the\n checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values\n only when the original GetObject request required checksum validation. For\n more information about checksums, see Checking object\n integrity in the Amazon S3 User Guide.

\n

Only one checksum header can be specified at a time. If you supply multiple checksum\n headers, this request will fail.

\n

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-checksum-crc32" - } - }, - "ChecksumCRC32C": { - "target": "com.amazonaws.s3#ChecksumCRC32C", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is\n the same data that was originally sent. This specifies the Base64 encoded, 32-bit CRC-32C\n checksum of the object returned by the Object Lambda function. This may not match the\n checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values\n only when the original GetObject request required checksum validation. For\n more information about checksums, see Checking object\n integrity in the Amazon S3 User Guide.

\n

Only one checksum header can be specified at a time. If you supply multiple checksum\n headers, this request will fail.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-checksum-crc32c" - } - }, - "ChecksumCRC64NVME": { - "target": "com.amazonaws.s3#ChecksumCRC64NVME", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is\n the same data that was originally sent. This header specifies the Base64 encoded, 64-bit\n CRC-64NVME checksum of the part. For more information, see Checking object integrity in the Amazon S3 User Guide.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-checksum-crc64nvme" - } - }, - "ChecksumSHA1": { - "target": "com.amazonaws.s3#ChecksumSHA1", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is\n the same data that was originally sent. This specifies the Base64 encoded, 160-bit SHA-1\n digest of the object returned by the Object Lambda function. This may not match the\n checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values\n only when the original GetObject request required checksum validation. For\n more information about checksums, see Checking object\n integrity in the Amazon S3 User Guide.

\n

Only one checksum header can be specified at a time. If you supply multiple checksum\n headers, this request will fail.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-checksum-sha1" - } - }, - "ChecksumSHA256": { - "target": "com.amazonaws.s3#ChecksumSHA256", - "traits": { - "smithy.api#documentation": "

This header can be used as a data integrity check to verify that the data received is\n the same data that was originally sent. This specifies the Base64 encoded, 256-bit SHA-256\n digest of the object returned by the Object Lambda function. This may not match the\n checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values\n only when the original GetObject request required checksum validation. For\n more information about checksums, see Checking object\n integrity in the Amazon S3 User Guide.

\n

Only one checksum header can be specified at a time. If you supply multiple checksum\n headers, this request will fail.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-checksum-sha256" - } - }, - "DeleteMarker": { - "target": "com.amazonaws.s3#DeleteMarker", - "traits": { - "smithy.api#documentation": "

Specifies whether an object stored in Amazon S3 is (true) or is not\n (false) a delete marker.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-delete-marker" - } - }, - "ETag": { - "target": "com.amazonaws.s3#ETag", - "traits": { - "smithy.api#documentation": "

An opaque identifier assigned by a web server to a specific version of a resource found\n at a URL.

", - "smithy.api#httpHeader": "x-amz-fwd-header-ETag" - } - }, - "Expires": { - "target": "com.amazonaws.s3#Expires", - "traits": { - "smithy.api#documentation": "

The date and time at which the object is no longer cacheable.

", - "smithy.api#httpHeader": "x-amz-fwd-header-Expires" - } - }, - "Expiration": { - "target": "com.amazonaws.s3#Expiration", - "traits": { - "smithy.api#documentation": "

If the object expiration is configured (see PUT Bucket lifecycle), the response includes\n this header. It includes the expiry-date and rule-id key-value\n pairs that provide the object expiration information. The value of the rule-id\n is URL-encoded.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-expiration" - } - }, - "LastModified": { - "target": "com.amazonaws.s3#LastModified", - "traits": { - "smithy.api#documentation": "

The date and time that the object was last modified.

", - "smithy.api#httpHeader": "x-amz-fwd-header-Last-Modified" - } - }, - "MissingMeta": { - "target": "com.amazonaws.s3#MissingMeta", - "traits": { - "smithy.api#documentation": "

Set to the number of metadata entries not returned in x-amz-meta headers.\n This can happen if you create metadata using an API like SOAP that supports more flexible\n metadata than the REST API. For example, using SOAP, you can create metadata whose values\n are not legal HTTP headers.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-missing-meta" - } - }, - "Metadata": { - "target": "com.amazonaws.s3#Metadata", - "traits": { - "smithy.api#documentation": "

A map of metadata to store with the object in S3.

", - "smithy.api#httpPrefixHeaders": "x-amz-meta-" - } - }, - "ObjectLockMode": { - "target": "com.amazonaws.s3#ObjectLockMode", - "traits": { - "smithy.api#documentation": "

Indicates whether an object stored in Amazon S3 has Object Lock enabled. For more information\n about S3 Object Lock, see Object Lock.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-object-lock-mode" - } - }, - "ObjectLockLegalHoldStatus": { - "target": "com.amazonaws.s3#ObjectLockLegalHoldStatus", - "traits": { - "smithy.api#documentation": "

Indicates whether an object stored in Amazon S3 has an active legal hold.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-object-lock-legal-hold" - } - }, - "ObjectLockRetainUntilDate": { - "target": "com.amazonaws.s3#ObjectLockRetainUntilDate", - "traits": { - "smithy.api#documentation": "

The date and time when Object Lock is configured to expire.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-object-lock-retain-until-date" - } - }, - "PartsCount": { - "target": "com.amazonaws.s3#PartsCount", - "traits": { - "smithy.api#documentation": "

The count of parts this object has.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-mp-parts-count" - } - }, - "ReplicationStatus": { - "target": "com.amazonaws.s3#ReplicationStatus", - "traits": { - "smithy.api#documentation": "

Indicates if request involves bucket that is either a source or destination in a\n Replication rule. For more information about S3 Replication, see Replication.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-replication-status" - } - }, - "RequestCharged": { - "target": "com.amazonaws.s3#RequestCharged", - "traits": { - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-request-charged" - } - }, - "Restore": { - "target": "com.amazonaws.s3#Restore", - "traits": { - "smithy.api#documentation": "

Provides information about object restoration operation and expiration time of the\n restored object copy.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-restore" - } - }, - "ServerSideEncryption": { - "target": "com.amazonaws.s3#ServerSideEncryption", - "traits": { - "smithy.api#documentation": "

The server-side encryption algorithm used when storing requested object in Amazon S3 (for\n example, AES256, aws:kms).

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-server-side-encryption" - } - }, - "SSECustomerAlgorithm": { - "target": "com.amazonaws.s3#SSECustomerAlgorithm", - "traits": { - "smithy.api#documentation": "

Encryption algorithm used if server-side encryption with a customer-provided encryption\n key was specified for object stored in Amazon S3.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-server-side-encryption-customer-algorithm" - } - }, - "SSEKMSKeyId": { - "target": "com.amazonaws.s3#SSEKMSKeyId", - "traits": { - "smithy.api#documentation": "

If present, specifies the ID (Key ID, Key ARN, or Key Alias) of the Amazon Web Services Key\n Management Service (Amazon Web Services KMS) symmetric encryption customer managed key that was used for stored in\n Amazon S3 object.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-server-side-encryption-aws-kms-key-id" - } - }, - "SSECustomerKeyMD5": { - "target": "com.amazonaws.s3#SSECustomerKeyMD5", - "traits": { - "smithy.api#documentation": "

128-bit MD5 digest of customer-provided encryption key used in Amazon S3 to encrypt data\n stored in S3. For more information, see Protecting data\n using server-side encryption with customer-provided encryption keys\n (SSE-C).

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-server-side-encryption-customer-key-MD5" - } - }, - "StorageClass": { - "target": "com.amazonaws.s3#StorageClass", - "traits": { - "smithy.api#documentation": "

Provides storage class information of the object. Amazon S3 returns this header for all\n objects except for S3 Standard storage class objects.

\n

For more information, see Storage Classes.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-storage-class" - } - }, - "TagCount": { - "target": "com.amazonaws.s3#TagCount", - "traits": { - "smithy.api#documentation": "

The number of tags, if any, on the object.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-tagging-count" - } - }, - "VersionId": { - "target": "com.amazonaws.s3#ObjectVersionId", - "traits": { - "smithy.api#documentation": "

An ID used to reference a specific version of the object.

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-version-id" - } - }, - "BucketKeyEnabled": { - "target": "com.amazonaws.s3#BucketKeyEnabled", - "traits": { - "smithy.api#documentation": "

Indicates whether the object stored in Amazon S3 uses an S3 bucket key for server-side\n encryption with Amazon Web Services KMS (SSE-KMS).

", - "smithy.api#httpHeader": "x-amz-fwd-header-x-amz-server-side-encryption-bucket-key-enabled" - } + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.s3#WriteOffsetBytes": { + "type": "long" + }, + "com.amazonaws.s3#Years": { + "type": "integer" } - }, - "traits": { - "smithy.api#input": {} - } - }, - "com.amazonaws.s3#WriteOffsetBytes": { - "type": "long" - }, - "com.amazonaws.s3#Years": { - "type": "integer" } - } } diff --git a/aws/sdk/aws-models/sdk-endpoints.json b/aws/sdk/aws-models/sdk-endpoints.json index ac677b380c9..cee6898479e 100644 --- a/aws/sdk/aws-models/sdk-endpoints.json +++ b/aws/sdk/aws-models/sdk-endpoints.json @@ -21,7 +21,7 @@ "dnsSuffix" : "amazonaws.com", "partition" : "aws", "partitionName" : "AWS Standard", - "regionRegex" : "^(us|eu|ap|sa|ca|me|af|il)\\-\\w+\\-\\d+$", + "regionRegex" : "^(us|eu|ap|sa|ca|me|af|il|mx)\\-\\w+\\-\\d+$", "regions" : { "af-south-1" : { "description" : "Africa (Cape Town)" @@ -29,6 +29,9 @@ "ap-east-1" : { "description" : "Asia Pacific (Hong Kong)" }, + "ap-east-2" : { + "description" : "Asia Pacific (Taipei)" + }, "ap-northeast-1" : { "description" : "Asia Pacific (Tokyo)" }, @@ -56,6 +59,15 @@ "ap-southeast-4" : { "description" : "Asia Pacific (Melbourne)" }, + "ap-southeast-5" : { + "description" : "Asia Pacific (Malaysia)" + }, + "ap-southeast-6" : { + "description" : "Asia Pacific (New Zealand)" + }, + "ap-southeast-7" : { + "description" : "Asia Pacific (Thailand)" + }, "ca-central-1" : { "description" : "Canada (Central)" }, @@ -95,6 +107,9 @@ "me-south-1" : { "description" : "Middle East (Bahrain)" }, + "mx-central-1" : { + "description" : "Mexico (Central)" + }, "sa-east-1" : { "description" : "South America (Sao Paulo)" }, @@ -114,37 +129,158 @@ "services" : { "access-analyzer" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "access-analyzer.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "access-analyzer.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "access-analyzer.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "access-analyzer.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "access-analyzer.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "access-analyzer.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "access-analyzer.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "access-analyzer.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "access-analyzer.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "access-analyzer.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "access-analyzer.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "access-analyzer.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "access-analyzer.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ca-central-1" : { "variants" : [ { "hostname" : "access-analyzer-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "access-analyzer-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "access-analyzer.ca-central-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "ca-west-1" : { "variants" : [ { "hostname" : "access-analyzer-fips.ca-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "access-analyzer-fips.ca-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "access-analyzer.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "access-analyzer.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "access-analyzer.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "access-analyzer.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "access-analyzer.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "access-analyzer.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "access-analyzer.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "access-analyzer.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "access-analyzer.eu-west-3.api.aws", + "tags" : [ "dualstack" ] } ] }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, "fips-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -187,32 +323,82 @@ "deprecated" : true, "hostname" : "access-analyzer-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "access-analyzer.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "access-analyzer.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "access-analyzer.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "access-analyzer.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "access-analyzer.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "access-analyzer-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "access-analyzer-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "access-analyzer.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "access-analyzer-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "access-analyzer-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "access-analyzer.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "access-analyzer-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "access-analyzer-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "access-analyzer.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "access-analyzer-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "access-analyzer-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "access-analyzer.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -233,6 +419,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -242,6 +429,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "acm-fips.ca-central-1.amazonaws.com", @@ -279,6 +469,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -341,6 +532,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -350,6 +542,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "acm-pca-fips.ca-central-1.amazonaws.com", @@ -415,6 +610,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -444,7 +640,12 @@ }, "agreement-marketplace" : { "endpoints" : { - "us-east-1" : { } + "us-east-1" : { + "variants" : [ { + "hostname" : "agreement-marketplace.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + } } }, "airflow" : { @@ -453,16 +654,26 @@ "ap-east-1" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, + "ap-northeast-3" : { }, "ap-south-1" : { }, + "ap-south-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-3" : { }, + "ap-southeast-4" : { }, + "ap-southeast-5" : { }, "ca-central-1" : { }, + "ca-west-1" : { }, "eu-central-1" : { }, + "eu-central-2" : { }, "eu-north-1" : { }, "eu-south-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "il-central-1" : { }, + "me-central-1" : { }, "me-south-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, @@ -543,16 +754,27 @@ }, "aoss" : { "endpoints" : { + "ap-east-1" : { }, "ap-northeast-1" : { }, + "ap-northeast-2" : { }, + "ap-northeast-3" : { }, "ap-south-1" : { }, + "ap-south-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ca-central-1" : { }, "eu-central-1" : { }, + "eu-central-2" : { }, + "eu-north-1" : { }, + "eu-south-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, + "us-west-1" : { }, "us-west-2" : { } } }, @@ -561,17 +783,58 @@ "protocols" : [ "https" ] }, "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-south-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "detective.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "detective.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "detective.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "detective.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "detective.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "detective.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "detective.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ca-central-1" : { "variants" : [ { "hostname" : "api.detective-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "detective-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "detective.ca-central-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "ca-central-1-fips" : { @@ -581,19 +844,70 @@ "deprecated" : true, "hostname" : "api.detective-fips.ca-central-1.amazonaws.com" }, - "eu-central-1" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, - "il-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "detective.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "detective.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "detective.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "detective.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "detective.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "detective.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "il-central-1" : { + "variants" : [ { + "hostname" : "detective.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "detective.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "detective.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "api.detective-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "detective-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "detective.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-1-fips" : { @@ -607,6 +921,12 @@ "variants" : [ { "hostname" : "api.detective-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "detective-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "detective.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2-fips" : { @@ -620,6 +940,12 @@ "variants" : [ { "hostname" : "api.detective-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "detective-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "detective.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1-fips" : { @@ -633,6 +959,12 @@ "variants" : [ { "hostname" : "api.detective-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "detective-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "detective.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2-fips" : { @@ -656,79 +988,153 @@ "credentialScope" : { "region" : "af-south-1" }, - "hostname" : "api.ecr.af-south-1.amazonaws.com" + "hostname" : "api.ecr.af-south-1.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-east-1" : { "credentialScope" : { "region" : "ap-east-1" }, - "hostname" : "api.ecr.ap-east-1.amazonaws.com" + "hostname" : "api.ecr.ap-east-1.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, + "ap-east-2" : { }, "ap-northeast-1" : { "credentialScope" : { "region" : "ap-northeast-1" }, - "hostname" : "api.ecr.ap-northeast-1.amazonaws.com" + "hostname" : "api.ecr.ap-northeast-1.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-northeast-2" : { "credentialScope" : { "region" : "ap-northeast-2" }, - "hostname" : "api.ecr.ap-northeast-2.amazonaws.com" + "hostname" : "api.ecr.ap-northeast-2.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-northeast-3" : { "credentialScope" : { "region" : "ap-northeast-3" }, - "hostname" : "api.ecr.ap-northeast-3.amazonaws.com" + "hostname" : "api.ecr.ap-northeast-3.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-south-1" : { "credentialScope" : { "region" : "ap-south-1" }, - "hostname" : "api.ecr.ap-south-1.amazonaws.com" + "hostname" : "api.ecr.ap-south-1.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-south-2" : { "credentialScope" : { "region" : "ap-south-2" }, - "hostname" : "api.ecr.ap-south-2.amazonaws.com" + "hostname" : "api.ecr.ap-south-2.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-southeast-1" : { "credentialScope" : { "region" : "ap-southeast-1" }, - "hostname" : "api.ecr.ap-southeast-1.amazonaws.com" + "hostname" : "api.ecr.ap-southeast-1.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-southeast-2" : { "credentialScope" : { "region" : "ap-southeast-2" }, - "hostname" : "api.ecr.ap-southeast-2.amazonaws.com" + "hostname" : "api.ecr.ap-southeast-2.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-southeast-3" : { "credentialScope" : { "region" : "ap-southeast-3" }, - "hostname" : "api.ecr.ap-southeast-3.amazonaws.com" + "hostname" : "api.ecr.ap-southeast-3.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-southeast-4" : { "credentialScope" : { "region" : "ap-southeast-4" }, - "hostname" : "api.ecr.ap-southeast-4.amazonaws.com" + "hostname" : "api.ecr.ap-southeast-4.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "credentialScope" : { + "region" : "ap-southeast-5" + }, + "hostname" : "api.ecr.ap-southeast-5.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "credentialScope" : { + "region" : "ap-southeast-7" + }, + "hostname" : "api.ecr.ap-southeast-7.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" }, - "hostname" : "api.ecr.ca-central-1.amazonaws.com" + "hostname" : "api.ecr.ca-central-1.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ca-west-1" : { "credentialScope" : { "region" : "ca-west-1" }, - "hostname" : "api.ecr.ca-west-1.amazonaws.com" + "hostname" : "api.ecr.ca-west-1.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "dkr-us-east-1" : { "credentialScope" : { @@ -774,49 +1180,81 @@ "credentialScope" : { "region" : "eu-central-1" }, - "hostname" : "api.ecr.eu-central-1.amazonaws.com" + "hostname" : "api.ecr.eu-central-1.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-central-2" : { "credentialScope" : { "region" : "eu-central-2" }, - "hostname" : "api.ecr.eu-central-2.amazonaws.com" + "hostname" : "api.ecr.eu-central-2.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-north-1" : { "credentialScope" : { "region" : "eu-north-1" }, - "hostname" : "api.ecr.eu-north-1.amazonaws.com" + "hostname" : "api.ecr.eu-north-1.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-south-1" : { "credentialScope" : { "region" : "eu-south-1" }, - "hostname" : "api.ecr.eu-south-1.amazonaws.com" + "hostname" : "api.ecr.eu-south-1.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-south-2" : { "credentialScope" : { "region" : "eu-south-2" }, - "hostname" : "api.ecr.eu-south-2.amazonaws.com" + "hostname" : "api.ecr.eu-south-2.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-west-1" : { "credentialScope" : { "region" : "eu-west-1" }, - "hostname" : "api.ecr.eu-west-1.amazonaws.com" + "hostname" : "api.ecr.eu-west-1.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-west-2" : { "credentialScope" : { "region" : "eu-west-2" }, - "hostname" : "api.ecr.eu-west-2.amazonaws.com" + "hostname" : "api.ecr.eu-west-2.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-west-3" : { "credentialScope" : { "region" : "eu-west-3" }, - "hostname" : "api.ecr.eu-west-3.amazonaws.com" + "hostname" : "api.ecr.eu-west-3.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] }, "fips-dkr-us-east-1" : { "credentialScope" : { @@ -878,25 +1316,51 @@ "credentialScope" : { "region" : "il-central-1" }, - "hostname" : "api.ecr.il-central-1.amazonaws.com" + "hostname" : "api.ecr.il-central-1.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "me-central-1" : { "credentialScope" : { "region" : "me-central-1" }, - "hostname" : "api.ecr.me-central-1.amazonaws.com" + "hostname" : "api.ecr.me-central-1.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "me-south-1" : { "credentialScope" : { "region" : "me-south-1" }, - "hostname" : "api.ecr.me-south-1.amazonaws.com" + "hostname" : "api.ecr.me-south-1.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { + "credentialScope" : { + "region" : "mx-central-1" + }, + "hostname" : "api.ecr.mx-central-1.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "sa-east-1" : { "credentialScope" : { "region" : "sa-east-1" }, - "hostname" : "api.ecr.sa-east-1.amazonaws.com" + "hostname" : "api.ecr.sa-east-1.amazonaws.com", + "variants" : [ { + "hostname" : "ecr.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "us-east-1" : { "credentialScope" : { @@ -906,6 +1370,12 @@ "variants" : [ { "hostname" : "ecr-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ecr-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "ecr.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { @@ -916,6 +1386,12 @@ "variants" : [ { "hostname" : "ecr-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ecr-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "ecr.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { @@ -926,6 +1402,12 @@ "variants" : [ { "hostname" : "ecr-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ecr-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "ecr.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { @@ -936,6 +1418,12 @@ "variants" : [ { "hostname" : "ecr-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ecr-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "ecr.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -946,7 +1434,11 @@ "credentialScope" : { "region" : "us-east-1" }, - "hostname" : "api.ecr-public.us-east-1.amazonaws.com" + "hostname" : "api.ecr-public.us-east-1.amazonaws.com", + "variants" : [ { + "hostname" : "ecr-public.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "us-west-2" : { "credentialScope" : { @@ -956,28 +1448,6 @@ } } }, - "api.elastic-inference" : { - "endpoints" : { - "ap-northeast-1" : { - "hostname" : "api.elastic-inference.ap-northeast-1.amazonaws.com" - }, - "ap-northeast-2" : { - "hostname" : "api.elastic-inference.ap-northeast-2.amazonaws.com" - }, - "eu-west-1" : { - "hostname" : "api.elastic-inference.eu-west-1.amazonaws.com" - }, - "us-east-1" : { - "hostname" : "api.elastic-inference.us-east-1.amazonaws.com" - }, - "us-east-2" : { - "hostname" : "api.elastic-inference.us-east-2.amazonaws.com" - }, - "us-west-2" : { - "hostname" : "api.elastic-inference.us-west-2.amazonaws.com" - } - } - }, "api.fleethub.iot" : { "endpoints" : { "ap-northeast-1" : { }, @@ -1162,6 +1632,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -1171,8 +1642,34 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "api-fips.sagemaker.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ca-central-1-fips" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "api-fips.sagemaker.ca-central-1.amazonaws.com" + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "api-fips.sagemaker.ca-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ca-west-1-fips" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "deprecated" : true, + "hostname" : "api-fips.sagemaker.ca-west-1.amazonaws.com" + }, "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, @@ -1184,6 +1681,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -1242,28 +1740,100 @@ "api.tunneling.iot" : { "defaults" : { "variants" : [ { + "dnsSuffix" : "amazonaws.com", "hostname" : "api.tunneling.iot-fips.{region}.{dnsSuffix}", "tags" : [ "fips" ] + }, { + "dnsSuffix" : "api.aws", + "hostname" : "api.iot-tunneling-fips.{region}.{dnsSuffix}", + "tags" : [ "dualstack", "fips" ] + }, { + "dnsSuffix" : "api.aws", + "hostname" : "api.iot-tunneling.{region}.{dnsSuffix}", + "tags" : [ "dualstack" ] } ] }, "endpoints" : { - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-south-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "api.iot-tunneling.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "api.iot-tunneling.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "api.iot-tunneling.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "api.iot-tunneling.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "api.iot-tunneling.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "api.iot-tunneling.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { }, "ca-central-1" : { "variants" : [ { + "hostname" : "api.iot-tunneling-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "api.iot-tunneling.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + }, { "hostname" : "api.tunneling.iot-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] } ] }, - "eu-central-1" : { }, - "eu-north-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "api.iot-tunneling.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "api.iot-tunneling.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "api.iot-tunneling.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "api.iot-tunneling.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "api.iot-tunneling.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "fips-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -1299,29 +1869,68 @@ "deprecated" : true, "hostname" : "api.tunneling.iot-fips.us-west-2.amazonaws.com" }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "me-central-1" : { + "variants" : [ { + "hostname" : "api.iot-tunneling.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "api.iot-tunneling.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "api.iot-tunneling.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { + "hostname" : "api.iot-tunneling-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "api.iot-tunneling.us-east-1.api.aws", + "tags" : [ "dualstack" ] + }, { "hostname" : "api.tunneling.iot-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] } ] }, "us-east-2" : { "variants" : [ { + "hostname" : "api.iot-tunneling-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "api.iot-tunneling.us-east-2.api.aws", + "tags" : [ "dualstack" ] + }, { "hostname" : "api.tunneling.iot-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] } ] }, "us-west-1" : { "variants" : [ { + "hostname" : "api.iot-tunneling-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "api.iot-tunneling.us-west-1.api.aws", + "tags" : [ "dualstack" ] + }, { "hostname" : "api.tunneling.iot-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] } ] }, "us-west-2" : { "variants" : [ { + "hostname" : "api.iot-tunneling-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "api.iot-tunneling.us-west-2.api.aws", + "tags" : [ "dualstack" ] + }, { "hostname" : "api.tunneling.iot-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] } ] @@ -1332,6 +1941,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -1341,6 +1951,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "apigateway-fips.ca-central-1.amazonaws.com", @@ -1406,6 +2019,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -1451,6 +2065,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -1460,6 +2075,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -1473,6 +2091,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -1484,6 +2103,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -1493,6 +2113,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -1506,6 +2129,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -1588,6 +2212,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -1597,6 +2222,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -1610,6 +2238,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -1619,32 +2248,258 @@ }, "applicationinsights" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ca-central-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } + "af-south-1" : { + "variants" : [ { + "hostname" : "applicationinsights.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "applicationinsights.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "applicationinsights.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "applicationinsights.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "applicationinsights.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "applicationinsights.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "applicationinsights.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "applicationinsights.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "applicationinsights.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "applicationinsights.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "applicationinsights.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "applicationinsights-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "applicationinsights-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "applicationinsights.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "applicationinsights-fips.ca-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "applicationinsights-fips.ca-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "applicationinsights.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "applicationinsights.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "applicationinsights.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "applicationinsights.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "applicationinsights.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "applicationinsights.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "applicationinsights.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "applicationinsights.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "applicationinsights.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "applicationinsights-fips.ca-central-1.amazonaws.com" + }, + "fips-ca-west-1" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "deprecated" : true, + "hostname" : "applicationinsights-fips.ca-west-1.amazonaws.com" + }, + "fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "applicationinsights-fips.us-east-1.amazonaws.com" + }, + "fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "applicationinsights-fips.us-east-2.amazonaws.com" + }, + "fips-us-west-1" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "deprecated" : true, + "hostname" : "applicationinsights-fips.us-west-1.amazonaws.com" + }, + "fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "applicationinsights-fips.us-west-2.amazonaws.com" + }, + "il-central-1" : { + "variants" : [ { + "hostname" : "applicationinsights.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "applicationinsights.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "applicationinsights.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "applicationinsights.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { + "variants" : [ { + "hostname" : "applicationinsights-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "applicationinsights-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "applicationinsights.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "applicationinsights-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "applicationinsights-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "applicationinsights.us-east-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "applicationinsights-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "applicationinsights-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "applicationinsights.us-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "applicationinsights-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "applicationinsights-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "applicationinsights.us-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + } } }, "appmesh" : { @@ -1728,6 +2583,12 @@ "tags" : [ "dualstack" ] } ] }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "appmesh.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "eu-north-1" : { "variants" : [ { "hostname" : "appmesh.eu-north-1.api.aws", @@ -1740,6 +2601,12 @@ "tags" : [ "dualstack" ] } ] }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "appmesh.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "eu-west-1" : { "variants" : [ { "hostname" : "appmesh.eu-west-1.api.aws", @@ -1922,6 +2789,7 @@ "eu-central-1" : { }, "eu-west-1" : { }, "eu-west-2" : { }, + "eu-west-3" : { }, "fips" : { "credentialScope" : { "region" : "us-west-2" @@ -1960,62 +2828,317 @@ } }, "appsync" : { + "endpoints" : { + "af-south-1" : { + "variants" : [ { + "hostname" : "appsync.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "appsync.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "appsync.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "appsync.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "appsync.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "appsync.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "appsync.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "appsync.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "appsync.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "appsync.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "appsync.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "appsync.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-west-1" : { }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "appsync.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "appsync.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "appsync.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "appsync.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "appsync.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "appsync.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "appsync.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "appsync.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "il-central-1" : { + "variants" : [ { + "hostname" : "appsync.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "appsync.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "appsync.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "appsync.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { + "variants" : [ { + "hostname" : "appsync.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "appsync.us-east-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "appsync.us-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "appsync.us-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + } + } + }, + "apptest" : { + "endpoints" : { + "ap-southeast-2" : { }, + "eu-central-1" : { }, + "fips-us-east-1" : { + "deprecated" : true + }, + "sa-east-1" : { }, + "us-east-1" : { + "variants" : [ { + "tags" : [ "fips" ] + } ] + } + } + }, + "aps" : { + "defaults" : { + "protocols" : [ "https" ] + }, "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, "ap-northeast-3" : { }, - "ap-south-1" : { }, + "ap-south-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, + "ap-southeast-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, - "eu-central-1" : { }, + "ca-west-1" : { }, + "eu-central-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, "eu-central-2" : { }, - "eu-north-1" : { }, + "eu-north-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, "eu-south-1" : { }, "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, + "eu-west-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, - "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, + "mx-central-1" : { }, + "sa-east-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + }, { + "tags" : [ "dualstack", "fips" ] + }, { + "tags" : [ "fips" ] + } ] + }, + "us-east-1-fips" : { + "deprecated" : true + }, + "us-east-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + }, { + "tags" : [ "dualstack", "fips" ] + }, { + "tags" : [ "fips" ] + } ] + }, + "us-east-2-fips" : { + "deprecated" : true + }, "us-west-1" : { }, - "us-west-2" : { } - } - }, - "aps" : { - "defaults" : { - "protocols" : [ "https" ] - }, - "endpoints" : { - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-south-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "eu-central-1" : { }, - "eu-north-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, - "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-2" : { } + "us-west-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + }, { + "tags" : [ "dualstack", "fips" ] + }, { + "tags" : [ "fips" ] + } ] + }, + "us-west-2-fips" : { + "deprecated" : true + } } }, "arc-zonal-shift" : { "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -2025,6 +3148,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -2038,6 +3164,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -2059,6 +3186,7 @@ "tags" : [ "dualstack" ] } ] }, + "ap-east-2" : { }, "ap-northeast-1" : { "variants" : [ { "hostname" : "athena.ap-northeast-1.api.aws", @@ -2113,14 +3241,33 @@ "tags" : [ "dualstack" ] } ] }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "athena.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { + "hostname" : "athena-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "athena-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { "hostname" : "athena.ca-central-1.api.aws", "tags" : [ "dualstack" ] } ] }, "ca-west-1" : { "variants" : [ { + "hostname" : "athena-fips.ca-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "athena-fips.ca-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { "hostname" : "athena.ca-west-1.api.aws", "tags" : [ "dualstack" ] } ] @@ -2173,6 +3320,20 @@ "tags" : [ "dualstack" ] } ] }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "athena-fips.ca-central-1.amazonaws.com" + }, + "fips-ca-west-1" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "deprecated" : true, + "hostname" : "athena-fips.ca-west-1.amazonaws.com" + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -2219,6 +3380,7 @@ "tags" : [ "dualstack" ] } ] }, + "mx-central-1" : { }, "sa-east-1" : { "variants" : [ { "hostname" : "athena.sa-east-1.api.aws", @@ -2346,6 +3508,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -2355,6 +3518,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "autoscaling-fips.ca-central-1.amazonaws.com", @@ -2420,6 +3586,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -2480,6 +3647,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -2489,6 +3657,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -2502,6 +3673,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -2534,37 +3706,6 @@ "us-west-2" : { } } }, - "backupstorage" : { - "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } - } - }, "batch" : { "defaults" : { "variants" : [ { @@ -2575,6 +3716,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -2584,6 +3726,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -2625,6 +3770,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -2654,22 +3800,48 @@ }, "bedrock" : { "endpoints" : { + "ap-east-2" : { }, "ap-northeast-1" : { }, + "ap-northeast-2" : { }, + "ap-northeast-3" : { }, "ap-south-1" : { }, + "ap-south-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-3" : { }, + "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "bedrock-ap-northeast-1" : { "credentialScope" : { "region" : "ap-northeast-1" }, "hostname" : "bedrock.ap-northeast-1.amazonaws.com" }, + "bedrock-ap-northeast-2" : { + "credentialScope" : { + "region" : "ap-northeast-2" + }, + "hostname" : "bedrock.ap-northeast-2.amazonaws.com" + }, + "bedrock-ap-northeast-3" : { + "credentialScope" : { + "region" : "ap-northeast-3" + }, + "hostname" : "bedrock.ap-northeast-3.amazonaws.com" + }, "bedrock-ap-south-1" : { "credentialScope" : { "region" : "ap-south-1" }, "hostname" : "bedrock.ap-south-1.amazonaws.com" }, + "bedrock-ap-south-2" : { + "credentialScope" : { + "region" : "ap-south-2" + }, + "hostname" : "bedrock.ap-south-2.amazonaws.com" + }, "bedrock-ap-southeast-1" : { "credentialScope" : { "region" : "ap-southeast-1" @@ -2694,6 +3866,30 @@ }, "hostname" : "bedrock.eu-central-1.amazonaws.com" }, + "bedrock-eu-central-2" : { + "credentialScope" : { + "region" : "eu-central-2" + }, + "hostname" : "bedrock.eu-central-2.amazonaws.com" + }, + "bedrock-eu-north-1" : { + "credentialScope" : { + "region" : "eu-north-1" + }, + "hostname" : "bedrock.eu-north-1.amazonaws.com" + }, + "bedrock-eu-south-1" : { + "credentialScope" : { + "region" : "eu-south-1" + }, + "hostname" : "bedrock.eu-south-1.amazonaws.com" + }, + "bedrock-eu-south-2" : { + "credentialScope" : { + "region" : "eu-south-2" + }, + "hostname" : "bedrock.eu-south-2.amazonaws.com" + }, "bedrock-eu-west-1" : { "credentialScope" : { "region" : "eu-west-1" @@ -2712,12 +3908,24 @@ }, "hostname" : "bedrock.eu-west-3.amazonaws.com" }, + "bedrock-fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "hostname" : "bedrock-fips.ca-central-1.amazonaws.com" + }, "bedrock-fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" }, "hostname" : "bedrock-fips.us-east-1.amazonaws.com" }, + "bedrock-fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "hostname" : "bedrock-fips.us-east-2.amazonaws.com" + }, "bedrock-fips-us-west-2" : { "credentialScope" : { "region" : "us-west-2" @@ -2730,12 +3938,30 @@ }, "hostname" : "bedrock-runtime.ap-northeast-1.amazonaws.com" }, + "bedrock-runtime-ap-northeast-2" : { + "credentialScope" : { + "region" : "ap-northeast-2" + }, + "hostname" : "bedrock-runtime.ap-northeast-2.amazonaws.com" + }, + "bedrock-runtime-ap-northeast-3" : { + "credentialScope" : { + "region" : "ap-northeast-3" + }, + "hostname" : "bedrock-runtime.ap-northeast-3.amazonaws.com" + }, "bedrock-runtime-ap-south-1" : { "credentialScope" : { "region" : "ap-south-1" }, "hostname" : "bedrock-runtime.ap-south-1.amazonaws.com" }, + "bedrock-runtime-ap-south-2" : { + "credentialScope" : { + "region" : "ap-south-2" + }, + "hostname" : "bedrock-runtime.ap-south-2.amazonaws.com" + }, "bedrock-runtime-ap-southeast-1" : { "credentialScope" : { "region" : "ap-southeast-1" @@ -2760,6 +3986,30 @@ }, "hostname" : "bedrock-runtime.eu-central-1.amazonaws.com" }, + "bedrock-runtime-eu-central-2" : { + "credentialScope" : { + "region" : "eu-central-2" + }, + "hostname" : "bedrock-runtime.eu-central-2.amazonaws.com" + }, + "bedrock-runtime-eu-north-1" : { + "credentialScope" : { + "region" : "eu-north-1" + }, + "hostname" : "bedrock-runtime.eu-north-1.amazonaws.com" + }, + "bedrock-runtime-eu-south-1" : { + "credentialScope" : { + "region" : "eu-south-1" + }, + "hostname" : "bedrock-runtime.eu-south-1.amazonaws.com" + }, + "bedrock-runtime-eu-south-2" : { + "credentialScope" : { + "region" : "eu-south-2" + }, + "hostname" : "bedrock-runtime.eu-south-2.amazonaws.com" + }, "bedrock-runtime-eu-west-1" : { "credentialScope" : { "region" : "eu-west-1" @@ -2778,12 +4028,24 @@ }, "hostname" : "bedrock-runtime.eu-west-3.amazonaws.com" }, + "bedrock-runtime-fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "hostname" : "bedrock-runtime-fips.ca-central-1.amazonaws.com" + }, "bedrock-runtime-fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" }, "hostname" : "bedrock-runtime-fips.us-east-1.amazonaws.com" }, + "bedrock-runtime-fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "hostname" : "bedrock-runtime-fips.us-east-2.amazonaws.com" + }, "bedrock-runtime-fips-us-west-2" : { "credentialScope" : { "region" : "us-west-2" @@ -2802,6 +4064,12 @@ }, "hostname" : "bedrock-runtime.us-east-1.amazonaws.com" }, + "bedrock-runtime-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "hostname" : "bedrock-runtime.us-east-2.amazonaws.com" + }, "bedrock-runtime-us-west-2" : { "credentialScope" : { "region" : "us-west-2" @@ -2820,6 +4088,12 @@ }, "hostname" : "bedrock.us-east-1.amazonaws.com" }, + "bedrock-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "hostname" : "bedrock.us-east-2.amazonaws.com" + }, "bedrock-us-west-2" : { "credentialScope" : { "region" : "us-west-2" @@ -2828,11 +4102,19 @@ }, "ca-central-1" : { }, "eu-central-1" : { }, + "eu-central-2" : { }, + "eu-north-1" : { }, + "eu-south-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "il-central-1" : { }, + "me-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, + "us-east-2" : { }, + "us-west-1" : { }, "us-west-2" : { } } }, @@ -2850,11 +4132,36 @@ }, "braket" : { "endpoints" : { - "eu-north-1" : { }, - "eu-west-2" : { }, - "us-east-1" : { }, - "us-west-1" : { }, - "us-west-2" : { } + "eu-north-1" : { + "variants" : [ { + "hostname" : "braket.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "braket.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { + "variants" : [ { + "hostname" : "braket.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "braket.us-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "braket.us-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + } } }, "budgets" : { @@ -2898,6 +4205,7 @@ }, "cassandra" : { "endpoints" : { + "af-south-1" : { }, "ap-east-1" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, @@ -2977,17 +4285,111 @@ }, "cleanrooms" : { "endpoints" : { - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "eu-central-1" : { }, - "eu-north-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-2" : { } + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "cleanrooms.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "cleanrooms.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "cleanrooms.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "cleanrooms.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "cleanrooms.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "cleanrooms.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "cleanrooms.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "cleanrooms.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "cleanrooms-fips.us-east-1.amazonaws.com" + }, + "fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "cleanrooms-fips.us-east-2.amazonaws.com" + }, + "fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "cleanrooms-fips.us-west-2.amazonaws.com" + }, + "us-east-1" : { + "variants" : [ { + "hostname" : "cleanrooms-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "cleanrooms-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "cleanrooms.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "cleanrooms-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "cleanrooms-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "cleanrooms.us-east-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "cleanrooms-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "cleanrooms-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "cleanrooms.us-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + } } }, "cloud9" : { @@ -3035,6 +4437,12 @@ "ca-central-1" : { "variants" : [ { "tags" : [ "dualstack" ] + }, { + "hostname" : "cloud9-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "cloud9-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "eu-central-1" : { @@ -3067,6 +4475,41 @@ "tags" : [ "dualstack" ] } ] }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "cloud9-fips.ca-central-1.amazonaws.com" + }, + "fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "cloud9-fips.us-east-1.amazonaws.com" + }, + "fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "cloud9-fips.us-east-2.amazonaws.com" + }, + "fips-us-west-1" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "deprecated" : true, + "hostname" : "cloud9-fips.us-west-1.amazonaws.com" + }, + "fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "cloud9-fips.us-west-2.amazonaws.com" + }, "il-central-1" : { "variants" : [ { "tags" : [ "dualstack" ] @@ -3085,58 +4528,203 @@ "us-east-1" : { "variants" : [ { "tags" : [ "dualstack" ] + }, { + "hostname" : "cloud9-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "cloud9-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "us-east-2" : { "variants" : [ { "tags" : [ "dualstack" ] + }, { + "hostname" : "cloud9-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "cloud9-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "us-west-1" : { "variants" : [ { "tags" : [ "dualstack" ] + }, { + "hostname" : "cloud9-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "cloud9-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "us-west-2" : { "variants" : [ { "tags" : [ "dualstack" ] + }, { + "hostname" : "cloud9-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "cloud9-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] } ] } } }, "cloudcontrolapi" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ca-central-1" : { "variants" : [ { "hostname" : "cloudcontrolapi-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "cloudcontrolapi-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "cloudcontrolapi.ca-central-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "ca-west-1" : { "variants" : [ { "hostname" : "cloudcontrolapi-fips.ca-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "cloudcontrolapi-fips.ca-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "cloudcontrolapi.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.eu-west-3.api.aws", + "tags" : [ "dualstack" ] } ] }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, "fips-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -3179,32 +4767,82 @@ "deprecated" : true, "hostname" : "cloudcontrolapi-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "cloudcontrolapi-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "cloudcontrolapi-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "cloudcontrolapi.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "cloudcontrolapi-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "cloudcontrolapi-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "cloudcontrolapi.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "cloudcontrolapi-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "cloudcontrolapi-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "cloudcontrolapi.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "cloudcontrolapi-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "cloudcontrolapi-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "cloudcontrolapi.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -3226,6 +4864,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -3235,6 +4874,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -3248,6 +4890,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -3328,74 +4971,209 @@ } }, "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ca-central-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } - } - }, - "cloudsearch" : { - "endpoints" : { - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "eu-central-1" : { }, - "eu-west-1" : { }, - "sa-east-1" : { }, - "us-east-1" : { }, - "us-west-1" : { }, - "us-west-2" : { } - } - }, - "cloudtrail" : { - "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, - "fips-us-east-1" : { - "credentialScope" : { - "region" : "us-east-1" + "af-south-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "cloudhsmv2.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "cloudhsmv2.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "cloudhsmv2.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "cloudhsmv2.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "cloudhsmv2.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "cloudhsmv2.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "cloudhsmv2.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "cloudhsmv2.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "il-central-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "cloudhsmv2.us-east-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.us-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "cloudhsmv2.us-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + } + } + }, + "cloudsearch" : { + "endpoints" : { + "ap-northeast-1" : { }, + "ap-northeast-2" : { }, + "ap-southeast-1" : { }, + "ap-southeast-2" : { }, + "eu-central-1" : { }, + "eu-west-1" : { }, + "sa-east-1" : { }, + "us-east-1" : { }, + "us-west-1" : { }, + "us-west-2" : { } + } + }, + "cloudtrail" : { + "endpoints" : { + "af-south-1" : { }, + "ap-east-1" : { }, + "ap-east-2" : { }, + "ap-northeast-1" : { }, + "ap-northeast-2" : { }, + "ap-northeast-3" : { }, + "ap-south-1" : { }, + "ap-south-2" : { }, + "ap-southeast-1" : { }, + "ap-southeast-2" : { }, + "ap-southeast-3" : { }, + "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, + "ca-central-1" : { }, + "ca-west-1" : { }, + "eu-central-1" : { }, + "eu-central-2" : { }, + "eu-north-1" : { }, + "eu-south-1" : { }, + "eu-south-2" : { }, + "eu-west-1" : { }, + "eu-west-2" : { }, + "eu-west-3" : { }, + "fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" }, "deprecated" : true, "hostname" : "cloudtrail-fips.us-east-1.amazonaws.com" @@ -3424,6 +5202,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -3684,6 +5463,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -3693,6 +5473,8 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -3706,6 +5488,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -3761,6 +5544,20 @@ } } }, + "codeguru-profiler" : { + "endpoints" : { + "ap-northeast-1" : { }, + "ap-southeast-1" : { }, + "ap-southeast-2" : { }, + "eu-central-1" : { }, + "eu-north-1" : { }, + "eu-west-1" : { }, + "eu-west-2" : { }, + "us-east-1" : { }, + "us-east-2" : { }, + "us-west-2" : { } + } + }, "codeguru-reviewer" : { "endpoints" : { "ap-northeast-1" : { }, @@ -3788,6 +5585,7 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "codepipeline-fips.ca-central-1.amazonaws.com", @@ -3867,23 +5665,6 @@ } } }, - "codestar" : { - "endpoints" : { - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ca-central-1" : { }, - "eu-central-1" : { }, - "eu-north-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } - } - }, "codestar-connections" : { "endpoints" : { "ap-northeast-1" : { }, @@ -3929,25 +5710,139 @@ }, "cognito-identity" : { "endpoints" : { - "af-south-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "cognito-identity.af-south-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "cognito-identity.ap-east-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "cognito-identity.ap-northeast-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "cognito-identity.ap-northeast-2.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "cognito-identity.ap-northeast-3.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "cognito-identity.ap-south-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "cognito-identity.ap-south-2.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "cognito-identity.ap-southeast-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "cognito-identity.ap-southeast-2.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "cognito-identity.ap-southeast-3.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "cognito-identity.ap-southeast-4.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "cognito-identity.ap-southeast-5.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-7" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "cognito-identity.ca-central-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "cognito-identity.ca-west-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "cognito-identity.eu-central-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "cognito-identity.eu-central-2.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "cognito-identity.eu-north-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "cognito-identity.eu-south-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "cognito-identity.eu-south-2.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "cognito-identity.eu-west-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "cognito-identity.eu-west-2.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "cognito-identity.eu-west-3.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -3976,57 +5871,216 @@ "deprecated" : true, "hostname" : "cognito-identity-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "cognito-identity.il-central-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "cognito-identity.me-central-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "cognito-identity.me-south-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "cognito-identity.sa-east-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { + "hostname" : "cognito-identity-fips.us-east-1.amazonaws.com", + "tags" : [ "dualstack", "fips" ] + }, { "hostname" : "cognito-identity-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "cognito-identity.us-east-1.amazonaws.com", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { + "hostname" : "cognito-identity-fips.us-east-2.amazonaws.com", + "tags" : [ "dualstack", "fips" ] + }, { "hostname" : "cognito-identity-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "cognito-identity.us-east-2.amazonaws.com", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { + "hostname" : "cognito-identity-fips.us-west-1.amazonaws.com", + "tags" : [ "dualstack", "fips" ] + }, { "hostname" : "cognito-identity-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "cognito-identity.us-west-1.amazonaws.com", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { + "hostname" : "cognito-identity-fips.us-west-2.amazonaws.com", + "tags" : [ "dualstack", "fips" ] + }, { "hostname" : "cognito-identity-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "cognito-identity.us-west-2.amazonaws.com", + "tags" : [ "dualstack" ] } ] } } }, "cognito-idp" : { "endpoints" : { - "af-south-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "cognito-idp.af-south-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "cognito-idp.ap-east-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "cognito-idp.ap-northeast-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "cognito-idp.ap-northeast-2.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "cognito-idp.ap-northeast-3.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "cognito-idp.ap-south-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "cognito-idp.ap-south-2.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "cognito-idp.ap-southeast-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "cognito-idp.ap-southeast-2.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "cognito-idp.ap-southeast-3.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "cognito-idp.ap-southeast-4.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "cognito-idp.ap-southeast-5.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-7" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "cognito-idp.ca-central-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "cognito-idp.ca-west-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "cognito-idp.eu-central-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "cognito-idp.eu-central-2.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "cognito-idp.eu-north-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "cognito-idp.eu-south-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "cognito-idp.eu-south-2.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "cognito-idp.eu-west-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "cognito-idp.eu-west-2.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "cognito-idp.eu-west-3.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -4055,32 +6109,77 @@ "deprecated" : true, "hostname" : "cognito-idp-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, - "us-east-1" : { + "il-central-1" : { "variants" : [ { - "hostname" : "cognito-idp-fips.us-east-1.amazonaws.com", - "tags" : [ "fips" ] + "hostname" : "cognito-idp.il-central-1.amazonaws.com", + "tags" : [ "dualstack" ] } ] }, - "us-east-2" : { + "me-central-1" : { + "variants" : [ { + "hostname" : "cognito-idp.me-central-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "cognito-idp.me-south-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "cognito-idp.sa-east-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { + "variants" : [ { + "hostname" : "cognito-idp-fips.us-east-1.amazonaws.com", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "cognito-idp-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "cognito-idp.us-east-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-2" : { "variants" : [ { + "hostname" : "cognito-idp-fips.us-east-2.amazonaws.com", + "tags" : [ "dualstack", "fips" ] + }, { "hostname" : "cognito-idp-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "cognito-idp.us-east-2.amazonaws.com", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { + "hostname" : "cognito-idp-fips.us-west-1.amazonaws.com", + "tags" : [ "dualstack", "fips" ] + }, { "hostname" : "cognito-idp-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "cognito-idp.us-west-1.amazonaws.com", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { + "hostname" : "cognito-idp-fips.us-west-2.amazonaws.com", + "tags" : [ "dualstack", "fips" ] + }, { "hostname" : "cognito-idp-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "cognito-idp.us-west-2.amazonaws.com", + "tags" : [ "dualstack" ] } ] } } @@ -4105,15 +6204,73 @@ "protocols" : [ "https" ] }, "endpoints" : { - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-south-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ca-central-1" : { }, - "eu-central-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "comprehend.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "comprehend.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "comprehend.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "comprehend.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "comprehend.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "comprehend-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "comprehend-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "comprehend.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "comprehend.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "comprehend.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "comprehend.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "comprehend-fips.ca-central-1.amazonaws.com" + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -4139,18 +6296,36 @@ "variants" : [ { "hostname" : "comprehend-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "comprehend-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "comprehend.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "comprehend-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "comprehend-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "comprehend.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "comprehend-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "comprehend-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "comprehend.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -4390,6 +6565,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -4399,6 +6575,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -4440,6 +6619,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -4474,9 +6654,21 @@ "ap-northeast-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, - "ca-central-1" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "connect-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, "eu-central-1" : { }, "eu-west-2" : { }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "connect-fips.ca-central-1.amazonaws.com" + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -4507,6 +6699,10 @@ }, "connect-campaigns" : { "endpoints" : { + "af-south-1" : { }, + "ap-northeast-1" : { }, + "ap-northeast-2" : { }, + "ap-southeast-1" : { }, "ap-southeast-2" : { }, "ca-central-1" : { }, "eu-central-1" : { }, @@ -4557,6 +6753,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -4566,6 +6763,8 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "controltower-fips.ca-central-1.amazonaws.com", @@ -4603,6 +6802,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -4687,6 +6887,7 @@ "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-5" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "data.iot-fips.ca-central-1.amazonaws.com", @@ -4695,6 +6896,7 @@ }, "eu-central-1" : { }, "eu-north-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, @@ -4858,6 +7060,7 @@ "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-5" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "data.jobs.iot-fips.ca-central-1.amazonaws.com", @@ -4866,6 +7069,7 @@ }, "eu-central-1" : { }, "eu-north-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, @@ -4904,6 +7108,7 @@ "deprecated" : true, "hostname" : "data.jobs.iot-fips.us-west-2.amazonaws.com" }, + "me-central-1" : { }, "me-south-1" : { }, "sa-east-1" : { }, "us-east-1" : { @@ -5042,37 +7247,158 @@ }, "datasync" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "datasync.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "datasync.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "datasync.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "datasync.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "datasync.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "datasync.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "datasync.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "datasync.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "datasync.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "datasync.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "datasync.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "datasync.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "datasync.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ca-central-1" : { "variants" : [ { "hostname" : "datasync-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "datasync-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "datasync.ca-central-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "ca-west-1" : { "variants" : [ { "hostname" : "datasync-fips.ca-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "datasync-fips.ca-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "datasync.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "datasync.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "datasync.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "datasync.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "datasync.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "datasync.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "datasync.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "datasync.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "datasync.eu-west-3.api.aws", + "tags" : [ "dualstack" ] } ] }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, "fips-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -5115,32 +7441,82 @@ "deprecated" : true, "hostname" : "datasync-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "datasync.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "datasync.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "datasync.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "datasync.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "datasync.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "datasync-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "datasync-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "datasync.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "datasync-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "datasync-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "datasync.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "datasync-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "datasync-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "datasync.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "datasync-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "datasync-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "datasync.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -5155,12 +7531,8 @@ } ] }, "endpoints" : { - "af-south-1" : { - "hostname" : "datazone.af-south-1.api.aws" - }, - "ap-east-1" : { - "hostname" : "datazone.ap-east-1.api.aws" - }, + "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { "hostname" : "datazone.ap-northeast-1.api.aws" }, @@ -5188,6 +7560,13 @@ "ap-southeast-4" : { "hostname" : "datazone.ap-southeast-4.api.aws" }, + "ap-southeast-5" : { + "hostname" : "datazone.ap-southeast-5.api.aws" + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "hostname" : "datazone.ap-southeast-7.api.aws" + }, "ca-central-1" : { "hostname" : "datazone.ca-central-1.api.aws", "variants" : [ { @@ -5201,18 +7580,13 @@ "eu-central-1" : { "hostname" : "datazone.eu-central-1.api.aws" }, - "eu-central-2" : { - "hostname" : "datazone.eu-central-2.api.aws" - }, + "eu-central-2" : { }, "eu-north-1" : { "hostname" : "datazone.eu-north-1.api.aws" }, "eu-south-1" : { "hostname" : "datazone.eu-south-1.api.aws" }, - "eu-south-2" : { - "hostname" : "datazone.eu-south-2.api.aws" - }, "eu-west-1" : { "hostname" : "datazone.eu-west-1.api.aws" }, @@ -5231,6 +7605,9 @@ "me-south-1" : { "hostname" : "datazone.me-south-1.api.aws" }, + "mx-central-1" : { + "hostname" : "datazone.mx-central-1.api.aws" + }, "sa-east-1" : { "hostname" : "datazone.sa-east-1.api.aws" }, @@ -5267,6 +7644,8 @@ "ap-southeast-1" : { }, "ap-southeast-2" : { }, "eu-central-1" : { }, + "eu-north-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, @@ -5369,6 +7748,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -5378,6 +7758,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "directconnect-fips.ca-central-1.amazonaws.com", @@ -5443,6 +7826,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -5483,41 +7867,225 @@ }, "dlm" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } + "af-south-1" : { + "variants" : [ { + "hostname" : "dlm.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "dlm.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "dlm.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "dlm.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "dlm.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "dlm.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "dlm.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "dlm.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "dlm.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "dlm.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "dlm.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "dlm.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "dlm.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "dlm-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "dlm.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "dlm-fips.ca-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "dlm.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "dlm.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "dlm.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "dlm.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "dlm.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "dlm.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "dlm.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "dlm.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "dlm.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "il-central-1" : { + "variants" : [ { + "hostname" : "dlm.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "dlm.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "dlm.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "dlm.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "dlm.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { + "variants" : [ { + "hostname" : "dlm-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "dlm.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "dlm-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "dlm.us-east-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "dlm-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "dlm.us-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "dlm-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "dlm.us-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + } } }, "dms" : { "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -5527,6 +8095,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "dms" : { @@ -5557,6 +8128,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -5793,6 +8365,8 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "ds-fips.ca-central-1.amazonaws.com", @@ -5858,6 +8432,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -5892,6 +8467,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -5901,6 +8477,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "dynamodb-fips.ca-central-1.amazonaws.com", @@ -5945,6 +8524,7 @@ }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -6004,6 +8584,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -6013,6 +8594,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "ebs-fips.ca-central-1.amazonaws.com", @@ -6078,6 +8662,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -6110,10 +8695,31 @@ "protocols" : [ "http", "https" ] }, "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "ec2.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "ec2.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "ec2.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "ec2.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ap-northeast-3" : { }, "ap-south-1" : { "variants" : [ { @@ -6122,14 +8728,30 @@ } ] }, "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "ec2.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "ec2.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "ec2-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ec2.ca-central-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "ca-west-1" : { @@ -6138,10 +8760,25 @@ "tags" : [ "fips" ] } ] }, - "eu-central-1" : { }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "ec2.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "ec2.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "ec2.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "eu-south-2" : { }, "eu-west-1" : { "variants" : [ { @@ -6149,8 +8786,18 @@ "tags" : [ "dualstack" ] } ] }, - "eu-west-2" : { }, - "eu-west-3" : { }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "ec2.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "ec2.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "fips-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -6195,7 +8842,13 @@ }, "il-central-1" : { }, "me-central-1" : { }, - "me-south-1" : { }, + "me-south-1" : { + "variants" : [ { + "hostname" : "ec2.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { }, "sa-east-1" : { "variants" : [ { "hostname" : "ec2.sa-east-1.api.aws", @@ -6224,6 +8877,9 @@ "variants" : [ { "hostname" : "ec2-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ec2.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { @@ -6241,6 +8897,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -6250,6 +8907,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -6291,6 +8951,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -6339,6 +9000,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -6348,6 +9010,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -6389,6 +9054,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -6432,6 +9098,7 @@ "ap-east-1" : { "hostname" : "eks-auth.ap-east-1.api.aws" }, + "ap-east-2" : { }, "ap-northeast-1" : { "hostname" : "eks-auth.ap-northeast-1.api.aws" }, @@ -6459,6 +9126,13 @@ "ap-southeast-4" : { "hostname" : "eks-auth.ap-southeast-4.api.aws" }, + "ap-southeast-5" : { + "hostname" : "eks-auth.ap-southeast-5.api.aws" + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "hostname" : "eks-auth.ap-southeast-7.api.aws" + }, "ca-central-1" : { "hostname" : "eks-auth.ca-central-1.api.aws" }, @@ -6498,6 +9172,9 @@ "me-south-1" : { "hostname" : "eks-auth.me-south-1.api.aws" }, + "mx-central-1" : { + "hostname" : "eks-auth.mx-central-1.api.aws" + }, "sa-east-1" : { "hostname" : "eks-auth.sa-east-1.api.aws" }, @@ -6519,6 +9196,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -6528,6 +9206,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -6548,6 +9229,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -6605,22 +9287,105 @@ }, "elasticbeanstalk" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ca-central-1" : { }, - "eu-central-1" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -6649,31 +9414,71 @@ "deprecated" : true, "hostname" : "elasticbeanstalk-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { }, + "me-south-1" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "elasticbeanstalk-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "elasticbeanstalk-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "elasticbeanstalk.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "elasticbeanstalk-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "elasticbeanstalk-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "elasticbeanstalk.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "elasticbeanstalk-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "elasticbeanstalk-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "elasticbeanstalk.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "elasticbeanstalk-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "elasticbeanstalk-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "elasticbeanstalk.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -6692,6 +9497,7 @@ "tags" : [ "fips" ] } ] }, + "ap-east-2" : { }, "ap-northeast-1" : { "variants" : [ { "hostname" : "elasticfilesystem-fips.ap-northeast-1.amazonaws.com", @@ -6746,6 +9552,19 @@ "tags" : [ "fips" ] } ] }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "elasticfilesystem-fips.ap-southeast-5.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "elasticfilesystem-fips.ap-southeast-7.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, "ca-central-1" : { "variants" : [ { "hostname" : "elasticfilesystem-fips.ca-central-1.amazonaws.com", @@ -6883,6 +9702,20 @@ "deprecated" : true, "hostname" : "elasticfilesystem-fips.ap-southeast-4.amazonaws.com" }, + "fips-ap-southeast-5" : { + "credentialScope" : { + "region" : "ap-southeast-5" + }, + "deprecated" : true, + "hostname" : "elasticfilesystem-fips.ap-southeast-5.amazonaws.com" + }, + "fips-ap-southeast-7" : { + "credentialScope" : { + "region" : "ap-southeast-7" + }, + "deprecated" : true, + "hostname" : "elasticfilesystem-fips.ap-southeast-7.amazonaws.com" + }, "fips-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -6974,6 +9807,13 @@ "deprecated" : true, "hostname" : "elasticfilesystem-fips.me-south-1.amazonaws.com" }, + "fips-mx-central-1" : { + "credentialScope" : { + "region" : "mx-central-1" + }, + "deprecated" : true, + "hostname" : "elasticfilesystem-fips.mx-central-1.amazonaws.com" + }, "fips-sa-east-1" : { "credentialScope" : { "region" : "sa-east-1" @@ -7027,6 +9867,12 @@ "tags" : [ "fips" ] } ] }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "elasticfilesystem-fips.mx-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, "sa-east-1" : { "variants" : [ { "hostname" : "elasticfilesystem-fips.sa-east-1.amazonaws.com", @@ -7066,6 +9912,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -7075,6 +9922,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -7116,6 +9966,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -7151,6 +10002,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -7160,6 +10012,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "elasticmapreduce-fips.ca-central-1.amazonaws.com", @@ -7227,6 +10082,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "sslCommonName" : "{service}.{region}.{dnsSuffix}", @@ -7277,6 +10133,7 @@ "ap-northeast-2" : { }, "ap-northeast-3" : { }, "ap-south-1" : { }, + "ap-south-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, "ap-southeast-3" : { }, @@ -7287,6 +10144,7 @@ } ] }, "eu-central-1" : { }, + "eu-central-2" : { }, "eu-north-1" : { }, "eu-south-1" : { }, "eu-west-1" : { }, @@ -7328,6 +10186,7 @@ "hostname" : "email-fips.us-west-2.amazonaws.com" }, "il-central-1" : { }, + "me-central-1" : { }, "me-south-1" : { }, "sa-east-1" : { }, "us-east-1" : { @@ -7364,6 +10223,7 @@ "ap-northeast-2" : { }, "ap-northeast-3" : { }, "ap-south-1" : { }, + "ap-south-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, "ap-southeast-3" : { }, @@ -7374,6 +10234,7 @@ } ] }, "eu-central-1" : { }, + "eu-central-2" : { }, "eu-north-1" : { }, "eu-south-1" : { }, "eu-south-2" : { }, @@ -7415,6 +10276,7 @@ "deprecated" : true, "hostname" : "emr-containers-fips.us-west-2.amazonaws.com" }, + "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, "sa-east-1" : { }, @@ -7455,13 +10317,16 @@ "ap-southeast-1" : { }, "ap-southeast-2" : { }, "ap-southeast-3" : { }, + "ap-southeast-4" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "emr-serverless-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] } ] }, + "ca-west-1" : { }, "eu-central-1" : { }, + "eu-central-2" : { }, "eu-north-1" : { }, "eu-south-1" : { }, "eu-south-2" : { }, @@ -7503,6 +10368,7 @@ "deprecated" : true, "hostname" : "emr-serverless-fips.us-west-2.amazonaws.com" }, + "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, "sa-east-1" : { }, @@ -7539,7 +10405,12 @@ } }, "endpoints" : { - "us-east-1" : { } + "us-east-1" : { + "variants" : [ { + "hostname" : "entitlement-marketplace.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + } } }, "es" : { @@ -7556,6 +10427,7 @@ "tags" : [ "dualstack" ] } ] }, + "ap-east-2" : { }, "ap-northeast-1" : { "variants" : [ { "hostname" : "aos.ap-northeast-1.api.aws", @@ -7610,6 +10482,19 @@ "tags" : [ "dualstack" ] } ] }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "aos.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "aos.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ca-central-1" : { "variants" : [ { "hostname" : "aos.ca-central-1.api.aws", @@ -7695,6 +10580,12 @@ "tags" : [ "dualstack" ] } ] }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "aos.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "sa-east-1" : { "variants" : [ { "hostname" : "aos.sa-east-1.api.aws", @@ -7769,27 +10660,146 @@ }, "events" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "events.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "events.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "events.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "events.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "events.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "events.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "events.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "events.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "events.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "events.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "events.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "events.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "events.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "events.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "events.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "events.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "events.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "events.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "events.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "events.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "events.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "events.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "events.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -7818,32 +10828,82 @@ "deprecated" : true, "hostname" : "events-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "events.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "events.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "events.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "events.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "events.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "events-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "events-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "events.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "events-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "events-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "events.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "events-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "events-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "events.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "events-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "events-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "events.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -7904,27 +10964,141 @@ }, "firehose" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "firehose.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "firehose.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "firehose.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "firehose.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "firehose.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "firehose.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "firehose.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "firehose.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "firehose.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "firehose.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "firehose.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "firehose.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "firehose.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "firehose.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "firehose.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "firehose.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "firehose.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "firehose.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "firehose.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "firehose.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "firehose.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "firehose.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -7953,32 +11127,82 @@ "deprecated" : true, "hostname" : "firehose-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "firehose.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "firehose.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "firehose.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "firehose.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "firehose.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "firehose-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "firehose-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "firehose.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "firehose-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "firehose-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "firehose.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "firehose-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "firehose-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "firehose.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "firehose-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "firehose-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "firehose.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -8000,6 +11224,7 @@ "tags" : [ "fips" ] } ] }, + "ap-east-2" : { }, "ap-northeast-1" : { "variants" : [ { "hostname" : "fms-fips.ap-northeast-1.amazonaws.com", @@ -8034,6 +11259,8 @@ }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "fms-fips.ca-central-1.amazonaws.com", @@ -8227,6 +11454,7 @@ "tags" : [ "fips" ] } ] }, + "mx-central-1" : { }, "sa-east-1" : { "variants" : [ { "hostname" : "fms-fips.sa-east-1.amazonaws.com", @@ -8373,6 +11601,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -8382,6 +11611,8 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "fsx-fips.ca-central-1.amazonaws.com", @@ -8489,6 +11720,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "prod-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -8586,6 +11818,8 @@ "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "eu-central-1" : { }, "eu-north-1" : { }, @@ -8601,15 +11835,127 @@ "us-west-2" : { } } }, + "gameliftstreams" : { + "defaults" : { + "dnsSuffix" : "api.aws", + "variants" : [ { + "dnsSuffix" : "api.aws", + "hostname" : "{service}-fips.{region}.{dnsSuffix}", + "tags" : [ "fips" ] + } ] + }, + "endpoints" : { + "af-south-1" : { + "hostname" : "gameliftstreams.af-south-1.api.aws" + }, + "ap-east-1" : { + "hostname" : "gameliftstreams.ap-east-1.api.aws" + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "hostname" : "gameliftstreams.ap-northeast-1.api.aws" + }, + "ap-northeast-2" : { + "hostname" : "gameliftstreams.ap-northeast-2.api.aws" + }, + "ap-northeast-3" : { + "hostname" : "gameliftstreams.ap-northeast-3.api.aws" + }, + "ap-south-1" : { + "hostname" : "gameliftstreams.ap-south-1.api.aws" + }, + "ap-south-2" : { + "hostname" : "gameliftstreams.ap-south-2.api.aws" + }, + "ap-southeast-1" : { + "hostname" : "gameliftstreams.ap-southeast-1.api.aws" + }, + "ap-southeast-2" : { + "hostname" : "gameliftstreams.ap-southeast-2.api.aws" + }, + "ap-southeast-3" : { + "hostname" : "gameliftstreams.ap-southeast-3.api.aws" + }, + "ap-southeast-4" : { + "hostname" : "gameliftstreams.ap-southeast-4.api.aws" + }, + "ap-southeast-5" : { + "hostname" : "gameliftstreams.ap-southeast-5.api.aws" + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "hostname" : "gameliftstreams.ap-southeast-7.api.aws" + }, + "ca-central-1" : { + "hostname" : "gameliftstreams.ca-central-1.api.aws" + }, + "ca-west-1" : { + "hostname" : "gameliftstreams.ca-west-1.api.aws" + }, + "eu-central-1" : { + "hostname" : "gameliftstreams.eu-central-1.api.aws" + }, + "eu-central-2" : { + "hostname" : "gameliftstreams.eu-central-2.api.aws" + }, + "eu-north-1" : { + "hostname" : "gameliftstreams.eu-north-1.api.aws" + }, + "eu-south-1" : { + "hostname" : "gameliftstreams.eu-south-1.api.aws" + }, + "eu-south-2" : { + "hostname" : "gameliftstreams.eu-south-2.api.aws" + }, + "eu-west-1" : { + "hostname" : "gameliftstreams.eu-west-1.api.aws" + }, + "eu-west-2" : { + "hostname" : "gameliftstreams.eu-west-2.api.aws" + }, + "eu-west-3" : { + "hostname" : "gameliftstreams.eu-west-3.api.aws" + }, + "il-central-1" : { + "hostname" : "gameliftstreams.il-central-1.api.aws" + }, + "me-central-1" : { + "hostname" : "gameliftstreams.me-central-1.api.aws" + }, + "me-south-1" : { + "hostname" : "gameliftstreams.me-south-1.api.aws" + }, + "mx-central-1" : { + "hostname" : "gameliftstreams.mx-central-1.api.aws" + }, + "sa-east-1" : { + "hostname" : "gameliftstreams.sa-east-1.api.aws" + }, + "us-east-1" : { + "hostname" : "gameliftstreams.us-east-1.api.aws" + }, + "us-east-2" : { + "hostname" : "gameliftstreams.us-east-2.api.aws" + }, + "us-west-1" : { + "hostname" : "gameliftstreams.us-west-1.api.aws" + }, + "us-west-2" : { + "hostname" : "gameliftstreams.us-west-2.api.aws" + } + } + }, "geo" : { "endpoints" : { "ap-northeast-1" : { }, "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-5" : { }, "ca-central-1" : { }, "eu-central-1" : { }, "eu-north-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "sa-east-1" : { }, @@ -8707,29 +12053,157 @@ } } }, + "globalaccelerator" : { + "endpoints" : { + "fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "hostname" : "globalaccelerator-fips.us-west-2.amazonaws.com" + } + } + }, "glue" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "glue.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "glue.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "glue.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "glue.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "glue.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "glue.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "glue.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "glue.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "glue.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "glue.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "glue.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "glue.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "glue.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "glue.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "glue.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "glue.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "glue.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "glue.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "glue.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "glue.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "glue.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "glue.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "glue.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -8758,32 +12232,82 @@ "deprecated" : true, "hostname" : "glue-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "glue.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "glue.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "glue.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "glue.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "glue.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "glue-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "glue-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "glue.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "glue-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "glue-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "glue.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "glue-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "glue-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "glue.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "glue-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "glue-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "glue.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -8862,6 +12386,7 @@ "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-5" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "greengrass-fips.ca-central-1.amazonaws.com", @@ -8869,6 +12394,7 @@ } ] }, "eu-central-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "fips-ca-central-1" : { @@ -8922,13 +12448,41 @@ }, "groundstation" : { "endpoints" : { - "af-south-1" : { }, - "ap-northeast-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "eu-central-1" : { }, - "eu-north-1" : { }, - "eu-west-1" : { }, + "af-south-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -8950,24 +12504,47 @@ "deprecated" : true, "hostname" : "groundstation-fips.us-west-2.amazonaws.com" }, - "me-south-1" : { }, - "sa-east-1" : { }, + "me-south-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { + "tags" : [ "dualstack" ] + }, { "hostname" : "groundstation-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "groundstation-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "us-east-2" : { "variants" : [ { + "tags" : [ "dualstack" ] + }, { "hostname" : "groundstation-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "groundstation-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "us-west-2" : { "variants" : [ { + "tags" : [ "dualstack" ] + }, { "hostname" : "groundstation-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "groundstation-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] } ] } } @@ -8979,6 +12556,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -8988,8 +12566,22 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, - "ca-west-1" : { }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "guardduty-fips.ca-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ca-west-1-fips" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "deprecated" : true, + "hostname" : "guardduty-fips.ca-west-1.amazonaws.com" + }, "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, @@ -9001,6 +12593,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -9096,6 +12689,9 @@ }, "endpoints" : { "ap-south-1" : { }, + "ap-southeast-2" : { }, + "eu-west-1" : { }, + "eu-west-2" : { }, "us-east-1" : { }, "us-east-2" : { }, "us-west-2" : { } @@ -9111,6 +12707,9 @@ "variants" : [ { "hostname" : "iam-fips.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "iam.global.api.aws", + "tags" : [ "dualstack" ] } ] }, "aws-global-fips" : { @@ -9172,6 +12771,8 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -9185,6 +12786,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -9209,6 +12811,7 @@ "ingest.timestream" : { "endpoints" : { "ap-northeast-1" : { }, + "ap-south-1" : { }, "ap-southeast-2" : { }, "eu-central-1" : { }, "eu-west-1" : { }, @@ -9340,14 +12943,20 @@ "ap-northeast-2" : { }, "ap-northeast-3" : { }, "ap-south-1" : { }, + "ap-south-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, "ap-southeast-3" : { }, + "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, + "ca-west-1" : { }, "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, "eu-south-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, @@ -9379,7 +12988,10 @@ "deprecated" : true, "hostname" : "inspector2-fips.us-west-2.amazonaws.com" }, + "il-central-1" : { }, + "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -9418,89 +13030,200 @@ }, "endpoints" : { "af-south-1" : { - "hostname" : "internetmonitor.af-south-1.api.aws" + "hostname" : "internetmonitor.af-south-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-east-1" : { - "hostname" : "internetmonitor.ap-east-1.api.aws" + "hostname" : "internetmonitor.ap-east-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, + "ap-east-2" : { }, "ap-northeast-1" : { - "hostname" : "internetmonitor.ap-northeast-1.api.aws" + "hostname" : "internetmonitor.ap-northeast-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-northeast-2" : { - "hostname" : "internetmonitor.ap-northeast-2.api.aws" + "hostname" : "internetmonitor.ap-northeast-2.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-northeast-3" : { - "hostname" : "internetmonitor.ap-northeast-3.api.aws" + "hostname" : "internetmonitor.ap-northeast-3.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-south-1" : { - "hostname" : "internetmonitor.ap-south-1.api.aws" + "hostname" : "internetmonitor.ap-south-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-south-2" : { - "hostname" : "internetmonitor.ap-south-2.api.aws" + "hostname" : "internetmonitor.ap-south-2.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-southeast-1" : { - "hostname" : "internetmonitor.ap-southeast-1.api.aws" + "hostname" : "internetmonitor.ap-southeast-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-southeast-2" : { - "hostname" : "internetmonitor.ap-southeast-2.api.aws" + "hostname" : "internetmonitor.ap-southeast-2.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-southeast-3" : { - "hostname" : "internetmonitor.ap-southeast-3.api.aws" + "hostname" : "internetmonitor.ap-southeast-3.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] }, "ap-southeast-4" : { - "hostname" : "internetmonitor.ap-southeast-4.api.aws" + "hostname" : "internetmonitor.ap-southeast-4.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "hostname" : "internetmonitor.ap-southeast-5.api.aws" + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "hostname" : "internetmonitor.ap-southeast-7.api.aws" }, "ca-central-1" : { "hostname" : "internetmonitor.ca-central-1.api.aws", "variants" : [ { "hostname" : "internetmonitor-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "internetmonitor-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "internetmonitor.ca-central-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "ca-west-1" : { "hostname" : "internetmonitor.ca-west-1.api.aws" }, "eu-central-1" : { - "hostname" : "internetmonitor.eu-central-1.api.aws" + "hostname" : "internetmonitor.eu-central-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-central-2" : { - "hostname" : "internetmonitor.eu-central-2.api.aws" + "hostname" : "internetmonitor.eu-central-2.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-north-1" : { - "hostname" : "internetmonitor.eu-north-1.api.aws" + "hostname" : "internetmonitor.eu-north-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-south-1" : { - "hostname" : "internetmonitor.eu-south-1.api.aws" + "hostname" : "internetmonitor.eu-south-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-south-2" : { - "hostname" : "internetmonitor.eu-south-2.api.aws" + "hostname" : "internetmonitor.eu-south-2.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-west-1" : { - "hostname" : "internetmonitor.eu-west-1.api.aws" + "hostname" : "internetmonitor.eu-west-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-west-2" : { - "hostname" : "internetmonitor.eu-west-2.api.aws" + "hostname" : "internetmonitor.eu-west-2.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, "eu-west-3" : { - "hostname" : "internetmonitor.eu-west-3.api.aws" + "hostname" : "internetmonitor.eu-west-3.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] }, "il-central-1" : { "hostname" : "internetmonitor.il-central-1.api.aws" }, "me-central-1" : { - "hostname" : "internetmonitor.me-central-1.api.aws" + "hostname" : "internetmonitor.me-central-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "me-south-1" : { - "hostname" : "internetmonitor.me-south-1.api.aws" + "hostname" : "internetmonitor.me-south-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { + "hostname" : "internetmonitor.mx-central-1.api.aws" }, "sa-east-1" : { - "hostname" : "internetmonitor.sa-east-1.api.aws" + "hostname" : "internetmonitor.sa-east-1.api.aws", + "variants" : [ { + "hostname" : "internetmonitor.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, "us-east-1" : { "hostname" : "internetmonitor.us-east-1.api.aws", "variants" : [ { "hostname" : "internetmonitor-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "internetmonitor-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "internetmonitor.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { @@ -9508,6 +13231,12 @@ "variants" : [ { "hostname" : "internetmonitor-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "internetmonitor-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "internetmonitor.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { @@ -9515,6 +13244,12 @@ "variants" : [ { "hostname" : "internetmonitor-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "internetmonitor-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "internetmonitor.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { @@ -9522,6 +13257,12 @@ "variants" : [ { "hostname" : "internetmonitor-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "internetmonitor-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "internetmonitor.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -9534,6 +13275,7 @@ "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-5" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "iot-fips.ca-central-1.amazonaws.com", @@ -9542,6 +13284,7 @@ }, "eu-central-1" : { }, "eu-north-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, @@ -9792,8 +13535,21 @@ }, "iotfleetwise" : { "endpoints" : { - "eu-central-1" : { }, - "us-east-1" : { } + "ap-south-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + } } }, "iotsecuredtunneling" : { @@ -10202,6 +13958,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -10211,6 +13968,8 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "kafka-fips.ca-central-1.amazonaws.com", @@ -10276,6 +14035,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -10305,17 +14065,24 @@ }, "kafkaconnect" : { "endpoints" : { + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-south-1" : { }, + "ap-south-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, + "ca-west-1" : { }, "eu-central-1" : { }, "eu-north-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -10401,6 +14168,7 @@ "ap-east-1" : { "hostname" : "kendra-ranking.ap-east-1.api.aws" }, + "ap-east-2" : { }, "ap-northeast-1" : { "hostname" : "kendra-ranking.ap-northeast-1.api.aws" }, @@ -10428,6 +14196,13 @@ "ap-southeast-4" : { "hostname" : "kendra-ranking.ap-southeast-4.api.aws" }, + "ap-southeast-5" : { + "hostname" : "kendra-ranking.ap-southeast-5.api.aws" + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "hostname" : "kendra-ranking.ap-southeast-7.api.aws" + }, "ca-central-1" : { "hostname" : "kendra-ranking.ca-central-1.api.aws", "variants" : [ { @@ -10465,6 +14240,9 @@ "me-south-1" : { "hostname" : "kendra-ranking.me-south-1.api.aws" }, + "mx-central-1" : { + "hostname" : "kendra-ranking.mx-central-1.api.aws" + }, "sa-east-1" : { "hostname" : "kendra-ranking.sa-east-1.api.aws" }, @@ -10498,6 +14276,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -10507,6 +14286,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -10548,6 +14330,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -10579,6 +14362,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -10588,8 +14372,20 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "kinesisanalytics-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "kinesisanalytics-fips.ca-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, @@ -10598,14 +14394,77 @@ "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "kinesisanalytics-fips.ca-central-1.amazonaws.com" + }, + "fips-ca-west-1" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "deprecated" : true, + "hostname" : "kinesisanalytics-fips.ca-west-1.amazonaws.com" + }, + "fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "kinesisanalytics-fips.us-east-1.amazonaws.com" + }, + "fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "kinesisanalytics-fips.us-east-2.amazonaws.com" + }, + "fips-us-west-1" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "deprecated" : true, + "hostname" : "kinesisanalytics-fips.us-west-1.amazonaws.com" + }, + "fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "kinesisanalytics-fips.us-west-2.amazonaws.com" + }, "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } + "us-east-1" : { + "variants" : [ { + "hostname" : "kinesisanalytics-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "kinesisanalytics-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "kinesisanalytics-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "kinesisanalytics-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + } } }, "kinesisvideo" : { @@ -10617,11 +14476,14 @@ "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-5" : { }, "ca-central-1" : { }, "eu-central-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "me-south-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -10663,6 +14525,7 @@ "deprecated" : true, "hostname" : "kms-fips.ap-east-1.amazonaws.com" }, + "ap-east-2" : { }, "ap-northeast-1" : { "variants" : [ { "hostname" : "kms-fips.ap-northeast-1.amazonaws.com", @@ -10780,6 +14643,33 @@ "deprecated" : true, "hostname" : "kms-fips.ap-southeast-4.amazonaws.com" }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "kms-fips.ap-southeast-5.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ap-southeast-5-fips" : { + "credentialScope" : { + "region" : "ap-southeast-5" + }, + "deprecated" : true, + "hostname" : "kms-fips.ap-southeast-5.amazonaws.com" + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "kms-fips.ap-southeast-7.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ap-southeast-7-fips" : { + "credentialScope" : { + "region" : "ap-southeast-7" + }, + "deprecated" : true, + "hostname" : "kms-fips.ap-southeast-7.amazonaws.com" + }, "ca-central-1" : { "variants" : [ { "hostname" : "kms-fips.ca-central-1.amazonaws.com", @@ -10949,6 +14839,19 @@ "deprecated" : true, "hostname" : "kms-fips.me-south-1.amazonaws.com" }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "kms-fips.mx-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "mx-central-1-fips" : { + "credentialScope" : { + "region" : "mx-central-1" + }, + "deprecated" : true, + "hostname" : "kms-fips.mx-central-1.amazonaws.com" + }, "sa-east-1" : { "variants" : [ { "hostname" : "kms-fips.sa-east-1.amazonaws.com", @@ -11018,27 +14921,145 @@ }, "lakeformation" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "lakeformation.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "lakeformation.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "lakeformation.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "lakeformation.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "lakeformation.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "lakeformation.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "lakeformation.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "lakeformation.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "lakeformation.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "lakeformation.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "lakeformation.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "lakeformation.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "lakeformation.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "lakeformation.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "lakeformation.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "lakeformation.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "lakeformation.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "lakeformation.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "lakeformation.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "lakeformation.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "lakeformation.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "lakeformation.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "lakeformation.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -11067,32 +15088,82 @@ "deprecated" : true, "hostname" : "lakeformation-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "lakeformation.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "lakeformation.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "lakeformation.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "lakeformation.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "lakeformation.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "lakeformation-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "lakeformation-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "lakeformation.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "lakeformation-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "lakeformation-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "lakeformation.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "lakeformation-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "lakeformation-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "lakeformation.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "lakeformation-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "lakeformation-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "lakeformation.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -11111,6 +15182,7 @@ "tags" : [ "dualstack" ] } ] }, + "ap-east-2" : { }, "ap-northeast-1" : { "variants" : [ { "hostname" : "lambda.ap-northeast-1.api.aws", @@ -11165,6 +15237,19 @@ "tags" : [ "dualstack" ] } ] }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "lambda.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "lambda.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ca-central-1" : { "variants" : [ { "hostname" : "lambda.ca-central-1.api.aws", @@ -11271,6 +15356,12 @@ "tags" : [ "dualstack" ] } ] }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "lambda.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "sa-east-1" : { "variants" : [ { "hostname" : "lambda.sa-east-1.api.aws", @@ -11319,6 +15410,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -11328,6 +15420,8 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -11369,6 +15463,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -11400,6 +15495,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -11409,6 +15505,8 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -11450,6 +15548,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -11481,6 +15580,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -11490,6 +15590,8 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -11531,6 +15633,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -11565,6 +15668,7 @@ "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-3" : { }, "ca-central-1" : { }, "eu-central-1" : { }, "eu-north-1" : { }, @@ -11590,6 +15694,7 @@ "tags" : [ "dualstack" ] } ] }, + "ap-east-2" : { }, "ap-northeast-1" : { "variants" : [ { "hostname" : "logs.ap-northeast-1.api.aws", @@ -11644,6 +15749,9 @@ "tags" : [ "dualstack" ] } ] }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "logs-fips.ca-central-1.amazonaws.com", @@ -11770,6 +15878,7 @@ "tags" : [ "dualstack" ] } ] }, + "mx-central-1" : { }, "sa-east-1" : { "variants" : [ { "hostname" : "logs.sa-east-1.api.aws", @@ -11913,21 +16022,96 @@ }, "macie2" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ca-central-1" : { }, - "eu-central-1" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "macie2.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "macie2.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "macie2.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "macie2.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "macie2.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "macie2.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "macie2.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "macie2.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "macie2.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "macie2.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "macie2.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "macie2.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "macie2.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "macie2.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "macie2.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -11956,31 +16140,70 @@ "deprecated" : true, "hostname" : "macie2-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "macie2.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "macie2.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "macie2.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "macie2-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "macie2-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "macie2.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "macie2-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "macie2-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "macie2.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "macie2-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "macie2-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "macie2.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "macie2-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "macie2-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "macie2.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -12071,25 +16294,96 @@ }, "mediaconvert" : { "endpoints" : { - "af-south-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-4" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "mediaconvert.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "mediaconvert.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "mediaconvert.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "mediaconvert.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "mediaconvert.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "mediaconvert.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "mediaconvert.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "mediaconvert.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ca-central-1" : { "variants" : [ { "hostname" : "mediaconvert-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "mediaconvert-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "mediaconvert.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "mediaconvert.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "mediaconvert.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "mediaconvert.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "mediaconvert.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "mediaconvert.eu-west-3.api.aws", + "tags" : [ "dualstack" ] } ] }, - "eu-central-1" : { }, - "eu-north-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, "fips-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -12125,30 +16419,64 @@ "deprecated" : true, "hostname" : "mediaconvert-fips.us-west-2.amazonaws.com" }, - "me-central-1" : { }, - "sa-east-1" : { }, + "me-central-1" : { + "variants" : [ { + "hostname" : "mediaconvert.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "mediaconvert.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "mediaconvert-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "mediaconvert-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "mediaconvert.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "mediaconvert-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "mediaconvert-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "mediaconvert.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "mediaconvert-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "mediaconvert-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "mediaconvert.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "mediaconvert-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "mediaconvert-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "mediaconvert.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -12240,6 +16568,7 @@ "ap-northeast-2" : { }, "ap-northeast-3" : { }, "ap-south-1" : { }, + "ap-south-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, "ap-southeast-4" : { }, @@ -12249,6 +16578,7 @@ "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "me-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -12262,20 +16592,82 @@ "ap-northeast-2" : { }, "ap-northeast-3" : { }, "ap-south-1" : { }, + "ap-south-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, "ap-southeast-4" : { }, - "ca-central-1" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "mediapackagev2-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, "eu-central-1" : { }, "eu-north-1" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "mediapackagev2-fips.ca-central-1.amazonaws.com" + }, + "fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "mediapackagev2-fips.us-east-1.amazonaws.com" + }, + "fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "mediapackagev2-fips.us-east-2.amazonaws.com" + }, + "fips-us-west-1" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "deprecated" : true, + "hostname" : "mediapackagev2-fips.us-west-1.amazonaws.com" + }, + "fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "mediapackagev2-fips.us-west-2.amazonaws.com" + }, + "me-central-1" : { }, "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } + "us-east-1" : { + "variants" : [ { + "hostname" : "mediapackagev2-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "mediapackagev2-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "mediapackagev2-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "mediapackagev2-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + } } }, "mediastore" : { @@ -12293,12 +16685,25 @@ }, "meetings-chime" : { "endpoints" : { + "af-south-1" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, - "ca-central-1" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "meetings-chime-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ca-central-1-fips" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "meetings-chime-fips.ca-central-1.amazonaws.com" + }, "eu-central-1" : { }, "eu-west-2" : { }, "il-central-1" : { }, @@ -12342,6 +16747,7 @@ "eu-central-1" : { }, "eu-north-1" : { }, "eu-south-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, @@ -12383,40 +16789,181 @@ } }, "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } + "af-south-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "metering-marketplace.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "metering-marketplace.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "metering-marketplace.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "metering-marketplace.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "metering-marketplace.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "metering-marketplace.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "metering-marketplace.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "metering-marketplace.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "metering-marketplace.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "metering-marketplace.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "il-central-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "metering-marketplace.us-east-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.us-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "metering-marketplace.us-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + } } }, "metrics.sagemaker" : { "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -12426,8 +16973,34 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "metrics-fips.sagemaker.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ca-central-1-fips" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "metrics-fips.sagemaker.ca-central-1.amazonaws.com" + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "metrics-fips.sagemaker.ca-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ca-west-1-fips" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "deprecated" : true, + "hostname" : "metrics-fips.sagemaker.ca-west-1.amazonaws.com" + }, "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, @@ -12439,11 +17012,60 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } + "us-east-1" : { + "variants" : [ { + "hostname" : "metrics-fips.sagemaker.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-east-1-fips" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "metrics-fips.sagemaker.us-east-1.amazonaws.com" + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "metrics-fips.sagemaker.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-east-2-fips" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "metrics-fips.sagemaker.us-east-2.amazonaws.com" + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "metrics-fips.sagemaker.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-1-fips" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "deprecated" : true, + "hostname" : "metrics-fips.sagemaker.us-west-1.amazonaws.com" + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "metrics-fips.sagemaker.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-2-fips" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "metrics-fips.sagemaker.us-west-2.amazonaws.com" + } } }, "mgh" : { @@ -12470,6 +17092,8 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "eu-central-1" : { }, "eu-central-2" : { }, @@ -12631,6 +17255,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -12640,6 +17265,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -12681,6 +17309,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -12712,6 +17341,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -12721,7 +17351,10 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, + "ca-west-1" : { }, "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, @@ -12761,6 +17394,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -12913,6 +17547,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -12922,12 +17557,15 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "network-firewall-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] } ] }, + "ca-west-1" : { }, "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, @@ -12974,6 +17612,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -13011,6 +17650,12 @@ "variants" : [ { "hostname" : "networkmanager-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "networkmanager-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "networkmanager.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "fips-aws-global" : { @@ -13024,25 +17669,133 @@ "isRegionalized" : false, "partitionEndpoint" : "aws-global" }, - "nimble" : { + "notifications" : { + "defaults" : { + "dnsSuffix" : "api.aws", + "variants" : [ { + "dnsSuffix" : "api.aws", + "hostname" : "{service}-fips.{region}.{dnsSuffix}", + "tags" : [ "fips" ] + } ] + }, "endpoints" : { - "ap-northeast-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ca-central-1" : { }, - "eu-central-1" : { }, - "eu-north-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-2" : { } + "af-south-1" : { + "hostname" : "notifications.af-south-1.api.aws" + }, + "ap-east-1" : { + "hostname" : "notifications.ap-east-1.api.aws" + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "hostname" : "notifications.ap-northeast-1.api.aws" + }, + "ap-northeast-2" : { + "hostname" : "notifications.ap-northeast-2.api.aws" + }, + "ap-northeast-3" : { + "hostname" : "notifications.ap-northeast-3.api.aws" + }, + "ap-south-1" : { + "hostname" : "notifications.ap-south-1.api.aws" + }, + "ap-south-2" : { + "hostname" : "notifications.ap-south-2.api.aws" + }, + "ap-southeast-1" : { + "hostname" : "notifications.ap-southeast-1.api.aws" + }, + "ap-southeast-2" : { + "hostname" : "notifications.ap-southeast-2.api.aws" + }, + "ap-southeast-3" : { + "hostname" : "notifications.ap-southeast-3.api.aws" + }, + "ap-southeast-4" : { + "hostname" : "notifications.ap-southeast-4.api.aws" + }, + "ap-southeast-5" : { + "hostname" : "notifications.ap-southeast-5.api.aws" + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "hostname" : "notifications.ap-southeast-7.api.aws" + }, + "ca-central-1" : { + "hostname" : "notifications.ca-central-1.api.aws" + }, + "ca-west-1" : { + "hostname" : "notifications.ca-west-1.api.aws" + }, + "eu-central-1" : { + "hostname" : "notifications.eu-central-1.api.aws" + }, + "eu-central-2" : { + "hostname" : "notifications.eu-central-2.api.aws" + }, + "eu-north-1" : { + "hostname" : "notifications.eu-north-1.api.aws" + }, + "eu-south-1" : { + "hostname" : "notifications.eu-south-1.api.aws" + }, + "eu-south-2" : { + "hostname" : "notifications.eu-south-2.api.aws" + }, + "eu-west-1" : { + "hostname" : "notifications.eu-west-1.api.aws" + }, + "eu-west-2" : { + "hostname" : "notifications.eu-west-2.api.aws" + }, + "eu-west-3" : { + "hostname" : "notifications.eu-west-3.api.aws" + }, + "il-central-1" : { + "hostname" : "notifications.il-central-1.api.aws" + }, + "me-central-1" : { + "hostname" : "notifications.me-central-1.api.aws" + }, + "me-south-1" : { + "hostname" : "notifications.me-south-1.api.aws" + }, + "mx-central-1" : { + "hostname" : "notifications.mx-central-1.api.aws" + }, + "sa-east-1" : { + "hostname" : "notifications.sa-east-1.api.aws" + }, + "us-east-1" : { + "hostname" : "notifications.us-east-1.api.aws" + }, + "us-east-2" : { + "hostname" : "notifications.us-east-2.api.aws" + }, + "us-west-1" : { + "hostname" : "notifications.us-west-1.api.aws" + }, + "us-west-2" : { + "hostname" : "notifications.us-west-2.api.aws" + } } }, + "notifications-contacts" : { + "endpoints" : { + "aws-global" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "hostname" : "notifications-contacts.us-east-1.api.aws" + } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-global" + }, "oam" : { "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -13052,6 +17805,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -13065,6 +17821,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -13140,12 +17897,25 @@ }, "hostname" : "oidc.ap-southeast-4.amazonaws.com" }, + "ap-southeast-5" : { + "credentialScope" : { + "region" : "ap-southeast-5" + }, + "hostname" : "oidc.ap-southeast-5.amazonaws.com" + }, + "ap-southeast-7" : { }, "ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" }, "hostname" : "oidc.ca-central-1.amazonaws.com" }, + "ca-west-1" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "hostname" : "oidc.ca-west-1.amazonaws.com" + }, "eu-central-1" : { "credentialScope" : { "region" : "eu-central-1" @@ -13212,6 +17982,7 @@ }, "hostname" : "oidc.me-south-1.amazonaws.com" }, + "mx-central-1" : { }, "sa-east-1" : { "credentialScope" : { "region" : "sa-east-1" @@ -13246,6 +18017,7 @@ }, "omics" : { "endpoints" : { + "ap-northeast-2" : { }, "ap-southeast-1" : { "credentialScope" : { "region" : "ap-southeast-1" @@ -13312,38 +18084,6 @@ } } }, - "opsworks" : { - "endpoints" : { - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-south-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ca-central-1" : { }, - "eu-central-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, - "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } - } - }, - "opsworks-cm" : { - "endpoints" : { - "ap-northeast-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "eu-central-1" : { }, - "eu-west-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } - } - }, "organizations" : { "endpoints" : { "aws-global" : { @@ -13377,6 +18117,7 @@ "ca-central-1" : { }, "eu-central-1" : { }, "eu-north-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "sa-east-1" : { }, @@ -13406,6 +18147,7 @@ "eu-central-1" : { }, "eu-north-1" : { }, "eu-south-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, @@ -13447,6 +18189,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -13529,35 +18272,310 @@ }, "pi" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } + "af-south-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "pi-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "pi.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-west-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi-fips.ca-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "pi-fips.ca-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "pi.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "pi-fips.ca-central-1.amazonaws.com" + }, + "fips-ca-west-1" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "deprecated" : true, + "hostname" : "pi-fips.ca-west-1.amazonaws.com" + }, + "fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "pi-fips.us-east-1.amazonaws.com" + }, + "fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "pi-fips.us-east-2.amazonaws.com" + }, + "fips-us-west-1" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "deprecated" : true, + "hostname" : "pi-fips.us-west-1.amazonaws.com" + }, + "fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "pi-fips.us-west-2.amazonaws.com" + }, + "il-central-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "pi-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "pi.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-2" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "pi-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "pi.us-east-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "pi-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "pi.us-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-2" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "pi-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "pi.us-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + } } }, "pinpoint" : { @@ -13677,94 +18695,223 @@ }, "polly" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ca-central-1" : { }, - "eu-central-1" : { }, - "eu-north-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, - "fips-us-east-1" : { - "credentialScope" : { - "region" : "us-east-1" - }, - "deprecated" : true, - "hostname" : "polly-fips.us-east-1.amazonaws.com" + "af-south-1" : { + "variants" : [ { + "hostname" : "polly.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, - "fips-us-east-2" : { - "credentialScope" : { - "region" : "us-east-2" - }, - "deprecated" : true, - "hostname" : "polly-fips.us-east-2.amazonaws.com" + "ap-east-1" : { + "variants" : [ { + "hostname" : "polly.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, - "fips-us-west-1" : { - "credentialScope" : { - "region" : "us-west-1" - }, - "deprecated" : true, - "hostname" : "polly-fips.us-west-1.amazonaws.com" + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "polly.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, - "fips-us-west-2" : { - "credentialScope" : { - "region" : "us-west-2" - }, - "deprecated" : true, - "hostname" : "polly-fips.us-west-2.amazonaws.com" + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "polly.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, - "me-south-1" : { }, - "sa-east-1" : { }, - "us-east-1" : { + "ap-northeast-3" : { "variants" : [ { - "hostname" : "polly-fips.us-east-1.amazonaws.com", - "tags" : [ "fips" ] + "hostname" : "polly.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] } ] }, - "us-east-2" : { + "ap-south-1" : { "variants" : [ { - "hostname" : "polly-fips.us-east-2.amazonaws.com", - "tags" : [ "fips" ] + "hostname" : "polly.ap-south-1.api.aws", + "tags" : [ "dualstack" ] } ] }, - "us-west-1" : { + "ap-southeast-1" : { "variants" : [ { - "hostname" : "polly-fips.us-west-1.amazonaws.com", - "tags" : [ "fips" ] + "hostname" : "polly.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] } ] }, - "us-west-2" : { + "ap-southeast-2" : { "variants" : [ { - "hostname" : "polly-fips.us-west-2.amazonaws.com", - "tags" : [ "fips" ] + "hostname" : "polly.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] } ] - } - } - }, - "portal.sso" : { - "endpoints" : { - "af-south-1" : { - "credentialScope" : { - "region" : "af-south-1" - }, - "hostname" : "portal.sso.af-south-1.amazonaws.com" }, - "ap-east-1" : { - "credentialScope" : { - "region" : "ap-east-1" - }, - "hostname" : "portal.sso.ap-east-1.amazonaws.com" + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "polly.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] }, - "ap-northeast-1" : { - "credentialScope" : { - "region" : "ap-northeast-1" - }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "polly-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "polly-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "polly.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "polly.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "polly.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "polly.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "polly.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "polly.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "polly.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "polly-fips.ca-central-1.amazonaws.com" + }, + "fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "polly-fips.us-east-1.amazonaws.com" + }, + "fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "polly-fips.us-east-2.amazonaws.com" + }, + "fips-us-west-1" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "deprecated" : true, + "hostname" : "polly-fips.us-west-1.amazonaws.com" + }, + "fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "polly-fips.us-west-2.amazonaws.com" + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "polly.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "polly.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { + "variants" : [ { + "hostname" : "polly-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "polly-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "polly.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "polly-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "polly-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "polly.us-east-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "polly-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "polly-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "polly.us-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "polly-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "polly-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "polly.us-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + } + } + }, + "portal.sso" : { + "endpoints" : { + "af-south-1" : { + "credentialScope" : { + "region" : "af-south-1" + }, + "hostname" : "portal.sso.af-south-1.amazonaws.com" + }, + "ap-east-1" : { + "credentialScope" : { + "region" : "ap-east-1" + }, + "hostname" : "portal.sso.ap-east-1.amazonaws.com" + }, + "ap-northeast-1" : { + "credentialScope" : { + "region" : "ap-northeast-1" + }, "hostname" : "portal.sso.ap-northeast-1.amazonaws.com" }, "ap-northeast-2" : { @@ -13815,12 +18962,25 @@ }, "hostname" : "portal.sso.ap-southeast-4.amazonaws.com" }, + "ap-southeast-5" : { + "credentialScope" : { + "region" : "ap-southeast-5" + }, + "hostname" : "portal.sso.ap-southeast-5.amazonaws.com" + }, + "ap-southeast-7" : { }, "ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" }, "hostname" : "portal.sso.ca-central-1.amazonaws.com" }, + "ca-west-1" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "hostname" : "portal.sso.ca-west-1.amazonaws.com" + }, "eu-central-1" : { "credentialScope" : { "region" : "eu-central-1" @@ -13887,6 +19047,7 @@ }, "hostname" : "portal.sso.me-south-1.amazonaws.com" }, + "mx-central-1" : { }, "sa-east-1" : { "credentialScope" : { "region" : "sa-east-1" @@ -13919,13 +19080,6 @@ } } }, - "private-networks" : { - "endpoints" : { - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-2" : { } - } - }, "profile" : { "endpoints" : { "af-south-1" : { }, @@ -13976,17 +19130,6 @@ } } }, - "projects.iot1click" : { - "endpoints" : { - "ap-northeast-1" : { }, - "eu-central-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-2" : { } - } - }, "proton" : { "endpoints" : { "ap-northeast-1" : { }, @@ -14018,6 +19161,7 @@ "ap-east-1" : { "hostname" : "qbusiness.ap-east-1.api.aws" }, + "ap-east-2" : { }, "ap-northeast-1" : { "hostname" : "qbusiness.ap-northeast-1.api.aws" }, @@ -14045,6 +19189,13 @@ "ap-southeast-4" : { "hostname" : "qbusiness.ap-southeast-4.api.aws" }, + "ap-southeast-5" : { + "hostname" : "qbusiness.ap-southeast-5.api.aws" + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "hostname" : "qbusiness.ap-southeast-7.api.aws" + }, "ca-central-1" : { "hostname" : "qbusiness.ca-central-1.api.aws" }, @@ -14084,6 +19235,9 @@ "me-south-1" : { "hostname" : "qbusiness.me-south-1.api.aws" }, + "mx-central-1" : { + "hostname" : "qbusiness.mx-central-1.api.aws" + }, "sa-east-1" : { "hostname" : "qbusiness.sa-east-1.api.aws" }, @@ -14164,6 +19318,18 @@ } } }, + "query.timestream" : { + "endpoints" : { + "ap-northeast-1" : { }, + "ap-south-1" : { }, + "ap-southeast-2" : { }, + "eu-central-1" : { }, + "eu-west-1" : { }, + "us-east-1" : { }, + "us-east-2" : { }, + "us-west-2" : { } + } + }, "quicksight" : { "endpoints" : { "af-south-1" : { }, @@ -14173,15 +19339,17 @@ "ap-southeast-1" : { }, "ap-southeast-2" : { }, "ap-southeast-3" : { }, - "api" : { }, "ca-central-1" : { }, "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, "eu-south-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "il-central-1" : { }, + "me-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -14190,37 +19358,135 @@ }, "ram" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, + "af-south-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, "ca-central-1" : { "variants" : [ { + "tags" : [ "dualstack" ] + }, { "hostname" : "ram-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ram-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "ca-west-1" : { "variants" : [ { + "tags" : [ "dualstack" ] + }, { "hostname" : "ram-fips.ca-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ram-fips.ca-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "tags" : [ "dualstack" ] } ] }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, "fips-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -14263,69 +19529,226 @@ "deprecated" : true, "hostname" : "ram-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { + "tags" : [ "dualstack" ] + }, { "hostname" : "ram-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ram-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "us-east-2" : { "variants" : [ { + "tags" : [ "dualstack" ] + }, { "hostname" : "ram-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ram-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "us-west-1" : { "variants" : [ { + "tags" : [ "dualstack" ] + }, { "hostname" : "ram-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ram-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "us-west-2" : { "variants" : [ { + "tags" : [ "dualstack" ] + }, { "hostname" : "ram-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ram-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] } ] } } }, "rbin" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "rbin.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "rbin.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "rbin.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "rbin.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "rbin.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "rbin.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "rbin.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "rbin.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "rbin.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "rbin.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "rbin.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "rbin.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "rbin-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "rbin-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "rbin.ca-central-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "ca-west-1" : { "variants" : [ { "hostname" : "rbin-fips.ca-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "rbin-fips.ca-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "rbin.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "rbin.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "rbin.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "rbin.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "rbin.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "rbin.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "rbin.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "rbin.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "rbin.eu-west-3.api.aws", + "tags" : [ "dualstack" ] } ] }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, "fips-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -14368,40 +19791,86 @@ "deprecated" : true, "hostname" : "rbin-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, - "us-east-1" : { + "il-central-1" : { "variants" : [ { - "hostname" : "rbin-fips.us-east-1.amazonaws.com", - "tags" : [ "fips" ] + "hostname" : "rbin.il-central-1.api.aws", + "tags" : [ "dualstack" ] } ] }, - "us-east-2" : { + "me-central-1" : { "variants" : [ { - "hostname" : "rbin-fips.us-east-2.amazonaws.com", - "tags" : [ "fips" ] + "hostname" : "rbin.me-central-1.api.aws", + "tags" : [ "dualstack" ] } ] }, - "us-west-1" : { + "me-south-1" : { "variants" : [ { - "hostname" : "rbin-fips.us-west-1.amazonaws.com", - "tags" : [ "fips" ] + "hostname" : "rbin.me-south-1.api.aws", + "tags" : [ "dualstack" ] } ] }, - "us-west-2" : { + "mx-central-1" : { }, + "sa-east-1" : { "variants" : [ { - "hostname" : "rbin-fips.us-west-2.amazonaws.com", - "tags" : [ "fips" ] + "hostname" : "rbin.sa-east-1.api.aws", + "tags" : [ "dualstack" ] } ] - } - } - }, - "rds" : { + }, + "us-east-1" : { + "variants" : [ { + "hostname" : "rbin-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "rbin-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "rbin.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "rbin-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "rbin-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "rbin.us-east-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "rbin-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "rbin-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "rbin.us-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "rbin-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "rbin-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "rbin.us-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + } + } + }, + "rds" : { "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -14411,6 +19880,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "rds-fips.ca-central-1.amazonaws.com", @@ -14448,6 +19920,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "rds-fips.ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -14676,6 +20149,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -14685,6 +20159,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "redshift-fips.ca-central-1.amazonaws.com", @@ -14750,6 +20227,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -14779,11 +20257,17 @@ }, "redshift-serverless" : { "endpoints" : { + "af-south-1" : { }, + "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-south-1" : { }, + "ap-south-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-3" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "redshift-serverless-fips.ca-central-1.amazonaws.com", @@ -14793,6 +20277,7 @@ "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, + "eu-south-1" : { }, "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, @@ -14832,7 +20317,9 @@ "deprecated" : true, "hostname" : "redshift-serverless-fips.us-west-2.amazonaws.com" }, + "il-central-1" : { }, "me-central-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -14862,15 +20349,46 @@ }, "rekognition" : { "endpoints" : { - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-south-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "rekognition.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "rekognition.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "rekognition.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "rekognition.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "rekognition.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ca-central-1" : { "variants" : [ { "hostname" : "rekognition-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "rekognition-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "rekognition.ca-central-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "ca-central-1-fips" : { @@ -14880,10 +20398,36 @@ "deprecated" : true, "hostname" : "rekognition-fips.ca-central-1.amazonaws.com" }, - "eu-central-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "il-central-1" : { }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "rekognition.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "rekognition.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "rekognition.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "rekognition.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "il-central-1" : { + "variants" : [ { + "hostname" : "rekognition.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "rekognition-fips.ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -14973,6 +20517,12 @@ "variants" : [ { "hostname" : "rekognition-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "rekognition-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "rekognition.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-1-fips" : { @@ -14986,6 +20536,12 @@ "variants" : [ { "hostname" : "rekognition-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "rekognition-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "rekognition.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2-fips" : { @@ -14999,6 +20555,12 @@ "variants" : [ { "hostname" : "rekognition-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "rekognition-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "rekognition.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1-fips" : { @@ -15012,6 +20574,12 @@ "variants" : [ { "hostname" : "rekognition-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "rekognition-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "rekognition.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2-fips" : { @@ -15024,66 +20592,261 @@ } }, "resiliencehub" : { + "endpoints" : { + "af-south-1" : { + "variants" : [ { + "hostname" : "resiliencehub.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "resiliencehub.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "resiliencehub.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "resiliencehub.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "resiliencehub.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "resiliencehub.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "resiliencehub.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "resiliencehub.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "resiliencehub.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "resiliencehub.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "resiliencehub.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "resiliencehub.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "resiliencehub.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "resiliencehub.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "resiliencehub.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "resiliencehub.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { + "variants" : [ { + "hostname" : "resiliencehub.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "resiliencehub.us-east-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "resiliencehub.us-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "resiliencehub.us-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + } + } + }, + "resource-explorer-2" : { "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, + "ap-northeast-3" : { }, "ap-south-1" : { }, + "ap-south-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, - "ca-central-1" : { }, + "ap-southeast-3" : { }, + "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "resource-explorer-2-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "resource-explorer-2-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "resource-explorer-2-fips.ca-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "resource-explorer-2-fips.ca-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + } ] + }, "eu-central-1" : { }, + "eu-central-2" : { }, "eu-north-1" : { }, "eu-south-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "resource-explorer-2-fips.ca-central-1.amazonaws.com" + }, + "fips-ca-west-1" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "deprecated" : true, + "hostname" : "resource-explorer-2-fips.ca-west-1.amazonaws.com" + }, + "fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "resource-explorer-2-fips.us-east-1.amazonaws.com" + }, + "fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "resource-explorer-2-fips.us-east-2.amazonaws.com" + }, + "fips-us-west-1" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "deprecated" : true, + "hostname" : "resource-explorer-2-fips.us-west-1.amazonaws.com" + }, + "fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "resource-explorer-2-fips.us-west-2.amazonaws.com" + }, + "il-central-1" : { }, + "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } + "us-east-1" : { + "variants" : [ { + "hostname" : "resource-explorer-2-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "resource-explorer-2-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "resource-explorer-2-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "resource-explorer-2-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "resource-explorer-2-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "resource-explorer-2-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "resource-explorer-2-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "resource-explorer-2-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + } ] + } } }, - "resource-explorer-2" : { - "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } - } - }, - "resource-groups" : { + "resource-groups" : { "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -15093,6 +20856,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -15134,6 +20900,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -15176,6 +20943,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -15185,6 +20953,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -15226,6 +20997,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -15291,45 +21063,488 @@ "us-east-1" : { } } }, + "route53profiles" : { + "endpoints" : { + "af-south-1" : { + "variants" : [ { + "hostname" : "route53profiles.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "route53profiles.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "route53profiles.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "route53profiles.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "route53profiles.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "route53profiles.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "route53profiles.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "route53profiles.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "route53profiles.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "route53profiles.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "route53profiles.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "route53profiles-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "route53profiles.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "route53profiles-fips.ca-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "route53profiles.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "route53profiles.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "route53profiles.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "route53profiles.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "route53profiles.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "route53profiles.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "route53profiles.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "route53profiles.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "route53profiles.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "il-central-1" : { + "variants" : [ { + "hostname" : "route53profiles.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "route53profiles.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "route53profiles.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "route53profiles.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { + "variants" : [ { + "hostname" : "route53profiles-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "route53profiles.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "route53profiles-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "route53profiles.us-east-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "route53profiles-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "route53profiles.us-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "route53profiles-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "route53profiles.us-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + } + } + }, "route53resolver" : { "defaults" : { "protocols" : [ "https" ] }, "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-1" : { }, - "us-west-2" : { } + "af-south-1" : { + "variants" : [ { + "hostname" : "route53resolver.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "route53resolver.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "route53resolver.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "route53resolver.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "route53resolver.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "route53resolver.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "route53resolver.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "route53resolver.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "route53resolver.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "route53resolver.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "route53resolver.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "route53resolver.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "route53resolver.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "route53resolver-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "route53resolver-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "route53resolver.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1-fips" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "route53resolver-fips.ca-central-1.amazonaws.com" + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "route53resolver-fips.ca-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "route53resolver-fips.ca-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "route53resolver.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-west-1-fips" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "deprecated" : true, + "hostname" : "route53resolver-fips.ca-west-1.amazonaws.com" + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "route53resolver.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "route53resolver.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "route53resolver.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "route53resolver.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "route53resolver.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "route53resolver.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "route53resolver.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "route53resolver.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "il-central-1" : { + "variants" : [ { + "hostname" : "route53resolver.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "route53resolver.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "route53resolver.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "route53resolver.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "route53resolver.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { + "variants" : [ { + "hostname" : "route53resolver-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "route53resolver-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "route53resolver.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1-fips" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "route53resolver-fips.us-east-1.amazonaws.com" + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "route53resolver-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "route53resolver-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "route53resolver.us-east-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-2-fips" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "route53resolver-fips.us-east-2.amazonaws.com" + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "route53resolver-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "route53resolver-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "route53resolver.us-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-1-fips" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "deprecated" : true, + "hostname" : "route53resolver-fips.us-west-1.amazonaws.com" + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "route53resolver-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "route53resolver-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "route53resolver.us-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-2-fips" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "route53resolver-fips.us-west-2.amazonaws.com" + } } }, "rum" : { "endpoints" : { "af-south-1" : { }, + "ap-east-1" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -15339,7 +21554,10 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, + "ca-west-1" : { }, "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, @@ -15348,8 +21566,10 @@ "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -15427,6 +21647,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -15436,6 +21657,8 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -15449,6 +21672,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -15531,6 +21755,7 @@ "tags" : [ "dualstack" ] } ] }, + "ap-east-2" : { }, "ap-northeast-1" : { "hostname" : "s3.ap-northeast-1.amazonaws.com", "signatureVersions" : [ "s3", "s3v4" ], @@ -15591,6 +21816,19 @@ "tags" : [ "dualstack" ] } ] }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "s3.dualstack.ap-southeast-5.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "s3.dualstack.ap-southeast-7.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, "aws-global" : { "credentialScope" : { "region" : "us-east-1" @@ -15732,6 +21970,12 @@ "tags" : [ "dualstack" ] } ] }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "s3.dualstack.mx-central-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, "s3-external-1" : { "credentialScope" : { "region" : "us-east-1" @@ -16400,6 +22644,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -16409,7 +22654,11 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, + "ca-west-1" : { }, "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, @@ -16418,8 +22667,10 @@ "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -16486,6 +22737,7 @@ "tags" : [ "dualstack" ] } ] }, + "ap-east-2" : { }, "ap-northeast-1" : { "variants" : [ { "tags" : [ "dualstack" ] @@ -16531,6 +22783,17 @@ "tags" : [ "dualstack" ] } ] }, + "ap-southeast-5" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, "ca-central-1" : { "variants" : [ { "tags" : [ "dualstack" ] @@ -16610,6 +22873,11 @@ "tags" : [ "dualstack" ] } ] }, + "mx-central-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, "sa-east-1" : { "variants" : [ { "tags" : [ "dualstack" ] @@ -16667,27 +22935,146 @@ }, "securityhub" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "securityhub.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "securityhub.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "securityhub.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "securityhub.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "securityhub.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "securityhub.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "securityhub.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "securityhub.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "securityhub.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "securityhub.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "securityhub.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "securityhub.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "securityhub.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "securityhub.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "securityhub.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "securityhub.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "securityhub.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "securityhub.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "securityhub.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "securityhub.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "securityhub.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "securityhub.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "securityhub.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -16716,32 +23103,70 @@ "deprecated" : true, "hostname" : "securityhub-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "securityhub.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "securityhub.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "securityhub.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "securityhub.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "securityhub.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "securityhub-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "securityhub.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "securityhub-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "securityhub.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "securityhub-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "securityhub.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "securityhub-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "securityhub.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -16793,24 +23218,36 @@ "variants" : [ { "hostname" : "securitylake-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "securitylake-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "securitylake-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "securitylake-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "securitylake-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "securitylake-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "securitylake-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "securitylake-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] } ] } } @@ -16839,7 +23276,18 @@ "protocols" : [ "https" ] }, "ca-central-1" : { - "protocols" : [ "https" ] + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "serverlessrepo-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ca-central-1-fips" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "serverlessrepo-fips.ca-central-1.amazonaws.com" }, "eu-central-1" : { "protocols" : [ "https" ] @@ -17107,6 +23555,7 @@ "tags" : [ "dualstack" ] } ] }, + "ap-east-2" : { }, "ap-northeast-1" : { "variants" : [ { "hostname" : "servicediscovery.ap-northeast-1.api.aws", @@ -17161,6 +23610,19 @@ "tags" : [ "dualstack" ] } ] }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "servicediscovery.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "servicediscovery.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ca-central-1" : { "variants" : [ { "hostname" : "servicediscovery-fips.ca-central-1.amazonaws.com", @@ -17265,6 +23727,12 @@ "tags" : [ "dualstack" ] } ] }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "servicediscovery.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "sa-east-1" : { "variants" : [ { "hostname" : "servicediscovery.sa-east-1.api.aws", @@ -17356,6 +23824,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -17365,6 +23834,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -17378,6 +23850,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -17691,49 +24164,140 @@ "us-west-2" : { } } }, - "sms" : { + "sms-voice" : { "endpoints" : { - "fips-us-west-2" : { - "credentialScope" : { - "region" : "us-west-2" - }, - "deprecated" : true, - "hostname" : "sms-fips.us-west-2.amazonaws.com" + "af-south-1" : { + "variants" : [ { + "hostname" : "sms-voice.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, - "us-west-2" : { + "ap-northeast-1" : { "variants" : [ { - "hostname" : "sms-fips.us-west-2.amazonaws.com", - "tags" : [ "fips" ] + "hostname" : "sms-voice.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] } ] - } - } - }, - "sms-voice" : { - "endpoints" : { - "af-south-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "sms-voice.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "sms-voice.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "sms-voice.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "sms-voice.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "sms-voice.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "sms-voice.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "sms-voice.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "sms-voice.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ca-central-1" : { "variants" : [ { "hostname" : "sms-voice-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "sms-voice-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "sms-voice.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "sms-voice-fips.ca-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "sms-voice-fips.ca-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "sms-voice.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "sms-voice.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "sms-voice.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "sms-voice.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "sms-voice.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "sms-voice.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "sms-voice.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "sms-voice.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "sms-voice.eu-west-3.api.aws", + "tags" : [ "dualstack" ] } ] }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, "fips-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -17741,6 +24305,13 @@ "deprecated" : true, "hostname" : "sms-voice-fips.ca-central-1.amazonaws.com" }, + "fips-ca-west-1" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "deprecated" : true, + "hostname" : "sms-voice-fips.ca-west-1.amazonaws.com" + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -17769,109 +24340,289 @@ "deprecated" : true, "hostname" : "sms-voice-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "sms-voice.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "sms-voice.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "sms-voice.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "sms-voice.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "sms-voice-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "sms-voice-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "sms-voice.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "sms-voice-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "sms-voice-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "sms-voice.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "sms-voice-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "sms-voice-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "sms-voice.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "sms-voice-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "sms-voice-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "sms-voice.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } }, "snowball" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "snowball-fips.af-south-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.af-south-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "snowball-fips.ap-east-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.ap-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ap-northeast-1" : { "variants" : [ { "hostname" : "snowball-fips.ap-northeast-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.ap-northeast-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "ap-northeast-2" : { "variants" : [ { "hostname" : "snowball-fips.ap-northeast-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.ap-northeast-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "ap-northeast-3" : { "variants" : [ { "hostname" : "snowball-fips.ap-northeast-3.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.ap-northeast-3.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] } ] }, "ap-south-1" : { "variants" : [ { "hostname" : "snowball-fips.ap-south-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.ap-south-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.ap-south-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "ap-southeast-1" : { "variants" : [ { "hostname" : "snowball-fips.ap-southeast-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.ap-southeast-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "ap-southeast-2" : { "variants" : [ { "hostname" : "snowball-fips.ap-southeast-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.ap-southeast-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "snowball-fips.ap-southeast-3.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.ap-southeast-3.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] } ] }, - "ap-southeast-3" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "snowball-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.ca-central-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "eu-central-1" : { "variants" : [ { "hostname" : "snowball-fips.eu-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.eu-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "snowball-fips.eu-north-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.eu-north-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "snowball-fips.eu-south-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.eu-south-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.eu-south-1.api.aws", + "tags" : [ "dualstack" ] } ] }, - "eu-north-1" : { }, - "eu-south-1" : { }, "eu-west-1" : { "variants" : [ { "hostname" : "snowball-fips.eu-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.eu-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.eu-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "eu-west-2" : { "variants" : [ { "hostname" : "snowball-fips.eu-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.eu-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.eu-west-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "eu-west-3" : { "variants" : [ { "hostname" : "snowball-fips.eu-west-3.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.eu-west-3.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.eu-west-3.api.aws", + "tags" : [ "dualstack" ] } ] }, + "fips-af-south-1" : { + "credentialScope" : { + "region" : "af-south-1" + }, + "deprecated" : true, + "hostname" : "snowball-fips.af-south-1.amazonaws.com" + }, + "fips-ap-east-1" : { + "credentialScope" : { + "region" : "ap-east-1" + }, + "deprecated" : true, + "hostname" : "snowball-fips.ap-east-1.amazonaws.com" + }, "fips-ap-northeast-1" : { "credentialScope" : { "region" : "ap-northeast-1" @@ -17914,6 +24665,13 @@ "deprecated" : true, "hostname" : "snowball-fips.ap-southeast-2.amazonaws.com" }, + "fips-ap-southeast-3" : { + "credentialScope" : { + "region" : "ap-southeast-3" + }, + "deprecated" : true, + "hostname" : "snowball-fips.ap-southeast-3.amazonaws.com" + }, "fips-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -17928,6 +24686,20 @@ "deprecated" : true, "hostname" : "snowball-fips.eu-central-1.amazonaws.com" }, + "fips-eu-north-1" : { + "credentialScope" : { + "region" : "eu-north-1" + }, + "deprecated" : true, + "hostname" : "snowball-fips.eu-north-1.amazonaws.com" + }, + "fips-eu-south-1" : { + "credentialScope" : { + "region" : "eu-south-1" + }, + "deprecated" : true, + "hostname" : "snowball-fips.eu-south-1.amazonaws.com" + }, "fips-eu-west-1" : { "credentialScope" : { "region" : "eu-west-1" @@ -17949,6 +24721,20 @@ "deprecated" : true, "hostname" : "snowball-fips.eu-west-3.amazonaws.com" }, + "fips-il-central-1" : { + "credentialScope" : { + "region" : "il-central-1" + }, + "deprecated" : true, + "hostname" : "snowball-fips.il-central-1.amazonaws.com" + }, + "fips-me-central-1" : { + "credentialScope" : { + "region" : "me-central-1" + }, + "deprecated" : true, + "hostname" : "snowball-fips.me-central-1.amazonaws.com" + }, "fips-sa-east-1" : { "credentialScope" : { "region" : "sa-east-1" @@ -17984,36 +24770,88 @@ "deprecated" : true, "hostname" : "snowball-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "snowball-fips.il-central-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.il-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "snowball-fips.me-central-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.me-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "sa-east-1" : { "variants" : [ { "hostname" : "snowball-fips.sa-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.sa-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.sa-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-1" : { "variants" : [ { "hostname" : "snowball-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "snowball-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "snowball-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "snowball-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -18023,32 +24861,149 @@ "protocols" : [ "http", "https" ] }, "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "sns.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "sns.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "sns.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "sns.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "sns.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "sns.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "sns.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "sns.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "sns.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "sns.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "sns.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "sns.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "sns.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "sns.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ca-west-1" : { "variants" : [ { "hostname" : "sns-fips.ca-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "sns.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "sns.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "sns.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "sns.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "sns.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "sns.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "sns.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "sns.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "sns.eu-west-3.api.aws", + "tags" : [ "dualstack" ] } ] }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, "fips-ca-west-1" : { "credentialScope" : { "region" : "ca-west-1" @@ -18084,32 +25039,70 @@ "deprecated" : true, "hostname" : "sns-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "sns.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "sns.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "sns.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "sns.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "sns.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "sns-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "sns.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "sns-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "sns.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "sns-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "sns.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "sns-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "sns.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -18120,108 +25113,289 @@ "sslCommonName" : "{region}.queue.{dnsSuffix}" }, "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, - "fips-us-east-1" : { - "credentialScope" : { - "region" : "us-east-1" - }, - "deprecated" : true, - "hostname" : "sqs-fips.us-east-1.amazonaws.com" + "af-south-1" : { + "variants" : [ { + "hostname" : "sqs.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, - "fips-us-east-2" : { - "credentialScope" : { - "region" : "us-east-2" - }, - "deprecated" : true, - "hostname" : "sqs-fips.us-east-2.amazonaws.com" + "ap-east-1" : { + "variants" : [ { + "hostname" : "sqs.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, - "fips-us-west-1" : { - "credentialScope" : { - "region" : "us-west-1" - }, - "deprecated" : true, - "hostname" : "sqs-fips.us-west-1.amazonaws.com" + "ap-east-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "sqs.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] }, - "fips-us-west-2" : { - "credentialScope" : { - "region" : "us-west-2" - }, - "deprecated" : true, - "hostname" : "sqs-fips.us-west-2.amazonaws.com" + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "sqs.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, - "us-east-1" : { - "sslCommonName" : "queue.{dnsSuffix}", + "ap-northeast-3" : { "variants" : [ { - "hostname" : "sqs-fips.us-east-1.amazonaws.com", - "tags" : [ "fips" ] + "hostname" : "sqs.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] } ] }, - "us-east-2" : { + "ap-south-1" : { "variants" : [ { - "hostname" : "sqs-fips.us-east-2.amazonaws.com", - "tags" : [ "fips" ] + "hostname" : "sqs.ap-south-1.api.aws", + "tags" : [ "dualstack" ] } ] }, - "us-west-1" : { + "ap-south-2" : { "variants" : [ { - "hostname" : "sqs-fips.us-west-1.amazonaws.com", - "tags" : [ "fips" ] + "hostname" : "sqs.ap-south-2.api.aws", + "tags" : [ "dualstack" ] } ] }, - "us-west-2" : { + "ap-southeast-1" : { "variants" : [ { - "hostname" : "sqs-fips.us-west-2.amazonaws.com", - "tags" : [ "fips" ] + "hostname" : "sqs.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] } ] - } - } - }, - "ssm" : { - "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "sqs.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "sqs.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "sqs.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "sqs.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "sqs.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ca-central-1" : { "variants" : [ { - "hostname" : "ssm-fips.ca-central-1.amazonaws.com", + "hostname" : "sqs-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "sqs.ca-central-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "ca-west-1" : { "variants" : [ { - "hostname" : "ssm-fips.ca-west-1.amazonaws.com", + "hostname" : "sqs-fips.ca-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "sqs.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "sqs.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "sqs.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "sqs.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "sqs.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "sqs.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "sqs.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "sqs.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "sqs.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "sqs-fips.ca-central-1.amazonaws.com" + }, + "fips-ca-west-1" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "deprecated" : true, + "hostname" : "sqs-fips.ca-west-1.amazonaws.com" + }, + "fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "sqs-fips.us-east-1.amazonaws.com" + }, + "fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "sqs-fips.us-east-2.amazonaws.com" + }, + "fips-us-west-1" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "deprecated" : true, + "hostname" : "sqs-fips.us-west-1.amazonaws.com" + }, + "fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "sqs-fips.us-west-2.amazonaws.com" + }, + "il-central-1" : { + "variants" : [ { + "hostname" : "sqs.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "sqs.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "sqs.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "sqs.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "sqs.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { + "sslCommonName" : "queue.{dnsSuffix}", + "variants" : [ { + "hostname" : "sqs-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "sqs.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "sqs-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "sqs.us-east-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "sqs-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "sqs.us-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "sqs-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "sqs.us-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + } + } + }, + "ssm" : { + "endpoints" : { + "af-south-1" : { }, + "ap-east-1" : { }, + "ap-east-2" : { }, + "ap-northeast-1" : { }, + "ap-northeast-2" : { }, + "ap-northeast-3" : { }, + "ap-south-1" : { }, + "ap-south-2" : { }, + "ap-southeast-1" : { }, + "ap-southeast-2" : { }, + "ap-southeast-3" : { }, + "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "ssm-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "ssm-fips.ca-west-1.amazonaws.com", "tags" : [ "fips" ] } ] }, @@ -18278,6 +25452,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -18375,22 +25550,78 @@ }, "ssm-incidents" : { "endpoints" : { - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-south-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "ssm-incidents.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "ssm-incidents.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "ssm-incidents.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "ssm-incidents.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "ssm-incidents.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ca-central-1" : { "variants" : [ { "hostname" : "ssm-incidents-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ssm-incidents-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "ssm-incidents.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "ssm-incidents.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "ssm-incidents.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "ssm-incidents.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "ssm-incidents.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "ssm-incidents.eu-west-3.api.aws", + "tags" : [ "dualstack" ] } ] }, - "eu-central-1" : { }, - "eu-north-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, "fips-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -18426,56 +25657,270 @@ "deprecated" : true, "hostname" : "ssm-incidents-fips.us-west-2.amazonaws.com" }, - "sa-east-1" : { }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "ssm-incidents.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "ssm-incidents-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ssm-incidents-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "ssm-incidents.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "ssm-incidents-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ssm-incidents-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "ssm-incidents.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "ssm-incidents-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ssm-incidents-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "ssm-incidents.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "ssm-incidents-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ssm-incidents-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "ssm-incidents.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } }, - "ssm-sap" : { + "ssm-quicksetup" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, - "ap-northeast-3" : { }, "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, - "ap-southeast-3" : { }, "ca-central-1" : { "variants" : [ { - "hostname" : "ssm-sap-fips.ca-central-1.amazonaws.com", + "hostname" : "ssm-quicksetup-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] } ] }, "eu-central-1" : { }, "eu-north-1" : { }, - "eu-south-1" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "ssm-quicksetup-fips.ca-central-1.amazonaws.com" + }, + "fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "ssm-quicksetup-fips.us-east-1.amazonaws.com" + }, + "fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "ssm-quicksetup-fips.us-east-2.amazonaws.com" + }, + "fips-us-west-1" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "deprecated" : true, + "hostname" : "ssm-quicksetup-fips.us-west-1.amazonaws.com" + }, + "fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "ssm-quicksetup-fips.us-west-2.amazonaws.com" + }, + "sa-east-1" : { }, + "us-east-1" : { + "variants" : [ { + "hostname" : "ssm-quicksetup-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "ssm-quicksetup-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-1" : { + "variants" : [ { + "hostname" : "ssm-quicksetup-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "ssm-quicksetup-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + } + } + }, + "ssm-sap" : { + "endpoints" : { + "af-south-1" : { + "variants" : [ { + "hostname" : "ssm-sap.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "ssm-sap.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "ssm-sap.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "ssm-sap.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "ssm-sap.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "ssm-sap.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "ssm-sap.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "ssm-sap.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "ssm-sap.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "ssm-sap.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "ssm-sap.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "ssm-sap-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "ssm-sap-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "ssm-sap.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "ssm-sap.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "ssm-sap.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "ssm-sap.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "ssm-sap.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "ssm-sap.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "ssm-sap.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "ssm-sap.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "ssm-sap.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "fips-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -18511,30 +25956,76 @@ "deprecated" : true, "hostname" : "ssm-sap-fips.us-west-2.amazonaws.com" }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "ssm-sap.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "ssm-sap.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "ssm-sap.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "ssm-sap.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "ssm-sap-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ssm-sap-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "ssm-sap.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "ssm-sap-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ssm-sap-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "ssm-sap.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "ssm-sap-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ssm-sap-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "ssm-sap.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "ssm-sap-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ssm-sap-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "ssm-sap.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -18552,7 +26043,10 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, + "ca-west-1" : { }, "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, @@ -18564,6 +26058,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -18575,6 +26070,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -18584,8 +26080,21 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "states-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "states-fips.ca-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, @@ -18594,6 +26103,20 @@ "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "states-fips.ca-central-1.amazonaws.com" + }, + "fips-ca-west-1" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "deprecated" : true, + "hostname" : "states-fips.ca-west-1.amazonaws.com" + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -18625,6 +26148,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -18656,6 +26180,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -18665,6 +26190,8 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "storagegateway-fips.ca-central-1.amazonaws.com", @@ -18702,6 +26229,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -18767,6 +26295,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -18776,6 +26305,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -18796,6 +26328,7 @@ }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -18807,6 +26340,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -18816,6 +26350,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "aws-global" : { "credentialScope" : { "region" : "us-east-1" @@ -18835,6 +26372,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -18913,6 +26451,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -18922,8 +26461,21 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "swf-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "swf-fips.ca-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, @@ -18932,6 +26484,20 @@ "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "swf-fips.ca-central-1.amazonaws.com" + }, + "fips-ca-west-1" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "deprecated" : true, + "hostname" : "swf-fips.ca-west-1.amazonaws.com" + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -18963,6 +26529,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -18992,27 +26559,172 @@ }, "synthetics" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "synthetics.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "synthetics.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-2" : { }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "synthetics.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "synthetics.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "synthetics.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "synthetics.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "synthetics.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "synthetics.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "synthetics.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "synthetics.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "synthetics.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-5" : { + "variants" : [ { + "hostname" : "synthetics.ap-southeast-5.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { + "variants" : [ { + "hostname" : "synthetics.ap-southeast-7.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "synthetics-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "synthetics-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "synthetics.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "synthetics-fips.ca-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "synthetics-fips.ca-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "synthetics.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "synthetics.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "synthetics.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "synthetics.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "synthetics.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "synthetics.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "synthetics.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "synthetics.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "synthetics.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "synthetics-fips.ca-central-1.amazonaws.com" + }, + "fips-ca-west-1" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "deprecated" : true, + "hostname" : "synthetics-fips.ca-west-1.amazonaws.com" + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -19041,32 +26753,82 @@ "deprecated" : true, "hostname" : "synthetics-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "synthetics.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "synthetics.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "synthetics.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "mx-central-1" : { + "variants" : [ { + "hostname" : "synthetics.mx-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "synthetics.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "synthetics-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "synthetics-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "synthetics.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "synthetics-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "synthetics-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "synthetics.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "synthetics-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "synthetics-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "synthetics.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "synthetics-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "synthetics-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "synthetics.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -19075,6 +26837,7 @@ "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -19084,6 +26847,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -19097,6 +26863,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -19104,22 +26871,86 @@ "us-west-2" : { } } }, + "tax" : { + "endpoints" : { + "aws-global" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "hostname" : "tax.us-east-1.amazonaws.com" + } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-global" + }, "textract" : { "endpoints" : { - "ap-northeast-2" : { }, - "ap-south-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "textract.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "textract.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "textract.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "textract.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ca-central-1" : { "variants" : [ { "hostname" : "textract-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "textract-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "textract.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "textract.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "textract.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "textract.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "textract.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "textract.eu-west-3.api.aws", + "tags" : [ "dualstack" ] } ] }, - "eu-central-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, "fips-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -19159,24 +26990,48 @@ "variants" : [ { "hostname" : "textract-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "textract-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "textract.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "textract-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "textract-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "textract.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "textract-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "textract-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "textract.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "textract-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "textract-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "textract.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -19215,24 +27070,90 @@ } ] }, "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-south-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "transcribe.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "transcribe.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "transcribe.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "transcribe.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "transcribe.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "transcribe.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "transcribe.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "ca-central-1" : { "variants" : [ { "hostname" : "fips.transcribe.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "transcribe-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "transcribe.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "transcribe.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "transcribe.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "transcribe.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "transcribe.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "transcribe.eu-west-3.api.aws", + "tags" : [ "dualstack" ] } ] }, - "eu-central-1" : { }, - "eu-north-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, "fips-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -19268,124 +27189,213 @@ "deprecated" : true, "hostname" : "fips.transcribe.us-west-2.amazonaws.com" }, - "me-south-1" : { }, - "sa-east-1" : { }, + "me-south-1" : { + "variants" : [ { + "hostname" : "transcribe.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "transcribe.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "fips.transcribe.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "transcribe-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "transcribe.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "fips.transcribe.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "transcribe-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "transcribe.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "fips.transcribe.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "transcribe-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "transcribe.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "fips.transcribe.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "transcribe-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "transcribe.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } }, "transcribestreaming" : { "endpoints" : { - "af-south-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-south-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ca-central-1" : { }, - "eu-central-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "sa-east-1" : { }, - "transcribestreaming-ca-central-1" : { - "credentialScope" : { - "region" : "ca-central-1" - }, - "deprecated" : true, + "af-south-1" : { + "variants" : [ { + "hostname" : "transcribestreaming.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "transcribestreaming.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "transcribestreaming.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "transcribestreaming.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "transcribestreaming.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "transcribestreaming.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { "variants" : [ { "hostname" : "transcribestreaming-fips.ca-central-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "transcribestreaming-fips.ca-central-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "transcribestreaming.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "transcribestreaming.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "transcribestreaming.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "transcribestreaming.eu-west-2.api.aws", + "tags" : [ "dualstack" ] } ] }, - "transcribestreaming-fips-ca-central-1" : { + "fips-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" }, "deprecated" : true, "hostname" : "transcribestreaming-fips.ca-central-1.amazonaws.com" }, - "transcribestreaming-fips-us-east-1" : { + "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" }, "deprecated" : true, "hostname" : "transcribestreaming-fips.us-east-1.amazonaws.com" }, - "transcribestreaming-fips-us-east-2" : { + "fips-us-east-2" : { "credentialScope" : { "region" : "us-east-2" }, "deprecated" : true, "hostname" : "transcribestreaming-fips.us-east-2.amazonaws.com" }, - "transcribestreaming-fips-us-west-2" : { + "fips-us-west-2" : { "credentialScope" : { "region" : "us-west-2" }, "deprecated" : true, "hostname" : "transcribestreaming-fips.us-west-2.amazonaws.com" }, - "transcribestreaming-us-east-1" : { - "credentialScope" : { - "region" : "us-east-1" - }, - "deprecated" : true, + "sa-east-1" : { + "variants" : [ { + "hostname" : "transcribestreaming.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { "variants" : [ { "hostname" : "transcribestreaming-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "transcribestreaming-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "transcribestreaming.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, - "transcribestreaming-us-east-2" : { - "credentialScope" : { - "region" : "us-east-2" - }, - "deprecated" : true, + "us-east-2" : { "variants" : [ { "hostname" : "transcribestreaming-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "transcribestreaming-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "transcribestreaming.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, - "transcribestreaming-us-west-2" : { - "credentialScope" : { - "region" : "us-west-2" - }, - "deprecated" : true, + "us-west-2" : { "variants" : [ { "hostname" : "transcribestreaming-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "transcribestreaming-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "transcribestreaming.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] - }, - "us-east-1" : { }, - "us-east-2" : { }, - "us-west-2" : { } + } } }, "transfer" : { "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -19395,6 +27405,8 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "transfer-fips.ca-central-1.amazonaws.com", @@ -19460,6 +27472,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -19492,35 +27505,107 @@ "protocols" : [ "https" ] }, "endpoints" : { - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-south-1" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ca-central-1" : { }, - "eu-central-1" : { }, - "eu-north-1" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, - "us-east-1" : { + "ap-east-1" : { "variants" : [ { - "hostname" : "translate-fips.us-east-1.amazonaws.com", - "tags" : [ "fips" ] + "hostname" : "translate.ap-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, - "us-east-1-fips" : { - "credentialScope" : { - "region" : "us-east-1" - }, - "deprecated" : true, - "hostname" : "translate-fips.us-east-1.amazonaws.com" - }, - "us-east-2" : { + "ap-northeast-1" : { "variants" : [ { - "hostname" : "translate-fips.us-east-2.amazonaws.com", + "hostname" : "translate.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "translate.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "translate.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "translate.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "translate.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "translate.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "translate.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "translate.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "translate.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "translate.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "translate.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1" : { + "variants" : [ { + "hostname" : "translate-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "translate-fips.us-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "translate.us-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-east-1-fips" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "translate-fips.us-east-1.amazonaws.com" + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "translate-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "translate-fips.us-east-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "translate.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2-fips" : { @@ -19530,11 +27615,35 @@ "deprecated" : true, "hostname" : "translate-fips.us-east-2.amazonaws.com" }, - "us-west-1" : { }, + "us-west-1" : { + "variants" : [ { + "hostname" : "translate-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "translate-fips.us-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "translate.us-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-west-1-fips" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "deprecated" : true, + "hostname" : "translate-fips.us-west-1.amazonaws.com" + }, "us-west-2" : { "variants" : [ { "hostname" : "translate-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "translate-fips.us-west-2.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "translate.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2-fips" : { @@ -19546,10 +27655,39 @@ } } }, + "trustedadvisor" : { + "endpoints" : { + "ap-northeast-2" : { }, + "ap-southeast-2" : { }, + "eu-west-1" : { }, + "fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "hostname" : "trustedadvisor-fips.us-east-1.api.aws" + }, + "fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "hostname" : "trustedadvisor-fips.us-east-2.api.aws" + }, + "fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "hostname" : "trustedadvisor-fips.us-west-2.api.aws" + }, + "us-east-1" : { }, + "us-east-2" : { }, + "us-west-2" : { } + } + }, "verifiedpermissions" : { "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -19559,6 +27697,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "verifiedpermissions-fips.ca-central-1.amazonaws.com", @@ -19624,6 +27765,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -19751,17 +27893,29 @@ }, "vpc-lattice" : { "endpoints" : { + "af-south-1" : { }, + "ap-east-1" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, + "ap-northeast-3" : { }, "ap-south-1" : { }, + "ap-south-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-3" : { }, + "ap-southeast-4" : { }, "ca-central-1" : { }, + "ca-west-1" : { }, "eu-central-1" : { }, + "eu-central-2" : { }, "eu-north-1" : { }, + "eu-south-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "me-central-1" : { }, + "me-south-1" : { }, "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, @@ -20311,6 +28465,7 @@ "tags" : [ "fips" ] } ] }, + "ap-east-2" : { }, "ap-northeast-1" : { "credentialScope" : { "region" : "ap-northeast-1" @@ -20401,6 +28556,26 @@ "tags" : [ "fips" ] } ] }, + "ap-southeast-5" : { + "credentialScope" : { + "region" : "ap-southeast-5" + }, + "hostname" : "wafv2.ap-southeast-5.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.ap-southeast-5.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ap-southeast-7" : { + "credentialScope" : { + "region" : "ap-southeast-7" + }, + "hostname" : "wafv2.ap-southeast-7.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.ap-southeast-7.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, "ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -20578,6 +28753,20 @@ "deprecated" : true, "hostname" : "wafv2-fips.ap-southeast-4.amazonaws.com" }, + "fips-ap-southeast-5" : { + "credentialScope" : { + "region" : "ap-southeast-5" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.ap-southeast-5.amazonaws.com" + }, + "fips-ap-southeast-7" : { + "credentialScope" : { + "region" : "ap-southeast-7" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.ap-southeast-7.amazonaws.com" + }, "fips-ca-central-1" : { "credentialScope" : { "region" : "ca-central-1" @@ -20669,6 +28858,13 @@ "deprecated" : true, "hostname" : "wafv2-fips.me-south-1.amazonaws.com" }, + "fips-mx-central-1" : { + "credentialScope" : { + "region" : "mx-central-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.mx-central-1.amazonaws.com" + }, "fips-sa-east-1" : { "credentialScope" : { "region" : "sa-east-1" @@ -20734,6 +28930,16 @@ "tags" : [ "fips" ] } ] }, + "mx-central-1" : { + "credentialScope" : { + "region" : "mx-central-1" + }, + "hostname" : "wafv2.mx-central-1.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.mx-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, "sa-east-1" : { "credentialScope" : { "region" : "sa-east-1" @@ -20814,9 +29020,16 @@ "ap-northeast-2" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, - "ca-central-1" : { }, + "ca-central-1" : { + "variants" : [ { + "tags" : [ "fips" ] + } ] + }, "eu-central-1" : { }, "eu-west-2" : { }, + "fips-ca-central-1" : { + "deprecated" : true + }, "fips-us-east-1" : { "deprecated" : true }, @@ -20900,6 +29113,7 @@ "eu-central-1" : { }, "eu-west-1" : { }, "eu-west-2" : { }, + "eu-west-3" : { }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -20940,14 +29154,39 @@ "eu-central-1" : { }, "eu-west-1" : { }, "eu-west-2" : { }, - "us-east-1" : { }, - "us-west-2" : { } + "fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "workspaces-web-fips.us-east-1.amazonaws.com" + }, + "fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "workspaces-web-fips.us-west-2.amazonaws.com" + }, + "us-east-1" : { + "variants" : [ { + "hostname" : "workspaces-web-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "workspaces-web-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + } } }, "xray" : { "endpoints" : { "af-south-1" : { }, "ap-east-1" : { }, + "ap-east-2" : { }, "ap-northeast-1" : { }, "ap-northeast-2" : { }, "ap-northeast-3" : { }, @@ -20957,6 +29196,9 @@ "ap-southeast-2" : { }, "ap-southeast-3" : { }, "ap-southeast-4" : { }, + "ap-southeast-5" : { }, + "ap-southeast-6" : { }, + "ap-southeast-7" : { }, "ca-central-1" : { }, "ca-west-1" : { }, "eu-central-1" : { }, @@ -20998,6 +29240,7 @@ "il-central-1" : { }, "me-central-1" : { }, "me-south-1" : { }, + "mx-central-1" : { }, "sa-east-1" : { }, "us-east-1" : { "variants" : [ { @@ -21060,8 +29303,18 @@ "services" : { "access-analyzer" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "access-analyzer.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "access-analyzer.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "account" : { @@ -21082,6 +29335,15 @@ "cn-northwest-1" : { } } }, + "acm-pca" : { + "defaults" : { + "protocols" : [ "https" ] + }, + "endpoints" : { + "cn-north-1" : { }, + "cn-northwest-1" : { } + } + }, "airflow" : { "endpoints" : { "cn-north-1" : { }, @@ -21094,13 +29356,21 @@ "credentialScope" : { "region" : "cn-north-1" }, - "hostname" : "api.ecr.cn-north-1.amazonaws.com.cn" + "hostname" : "api.ecr.cn-north-1.amazonaws.com.cn", + "variants" : [ { + "hostname" : "ecr.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] }, "cn-northwest-1" : { "credentialScope" : { "region" : "cn-northwest-1" }, - "hostname" : "api.ecr.cn-northwest-1.amazonaws.com.cn" + "hostname" : "api.ecr.cn-northwest-1.amazonaws.com.cn", + "variants" : [ { + "hostname" : "ecr.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] } } }, @@ -21121,9 +29391,34 @@ } }, "api.tunneling.iot" : { + "defaults" : { + "variants" : [ { + "dnsSuffix" : "amazonaws.com.cn", + "hostname" : "api.tunneling.iot-fips.{region}.{dnsSuffix}", + "tags" : [ "fips" ] + }, { + "dnsSuffix" : "api.amazonwebservices.com.cn", + "hostname" : "api.iot-tunneling-fips.{region}.{dnsSuffix}", + "tags" : [ "dualstack", "fips" ] + }, { + "dnsSuffix" : "api.amazonwebservices.com.cn", + "hostname" : "api.iot-tunneling.{region}.{dnsSuffix}", + "tags" : [ "dualstack" ] + } ] + }, "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "api.iot-tunneling.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "api.iot-tunneling.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "apigateway" : { @@ -21155,8 +29450,18 @@ }, "applicationinsights" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "applicationinsights.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "applicationinsights.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "appmesh" : { @@ -21177,8 +29482,18 @@ }, "appsync" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "appsync.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "appsync.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "arc-zonal-shift" : { @@ -21227,12 +29542,6 @@ "cn-northwest-1" : { } } }, - "backupstorage" : { - "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } - } - }, "batch" : { "endpoints" : { "cn-north-1" : { }, @@ -21271,8 +29580,18 @@ }, "cloudcontrolapi" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "cloudcontrolapi.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "cloudformation" : { @@ -21326,7 +29645,12 @@ }, "cognito-identity" : { "endpoints" : { - "cn-north-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "cognito-identity.cn-north-1.amazonaws.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "compute-optimizer" : { @@ -21397,8 +29721,18 @@ }, "datasync" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "datasync.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "datasync.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "datazone" : { @@ -21433,8 +29767,18 @@ }, "dlm" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "dlm.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "dlm.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "dms" : { @@ -21524,8 +29868,18 @@ }, "elasticbeanstalk" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "elasticbeanstalk.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "elasticfilesystem" : { @@ -21605,7 +29959,11 @@ "region" : "cn-northwest-1" }, "hostname" : "entitlement-marketplace.cn-northwest-1.amazonaws.com.cn", - "protocols" : [ "https" ] + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "entitlement-marketplace.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] } } }, @@ -21627,8 +29985,18 @@ }, "events" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "events.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "events.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "firehose" : { @@ -21668,6 +30036,24 @@ "cn-northwest-1" : { } } }, + "gameliftstreams" : { + "defaults" : { + "dnsSuffix" : "api.amazonwebservices.com.cn", + "variants" : [ { + "dnsSuffix" : "api.amazonwebservices.com.cn", + "hostname" : "{service}-fips.{region}.{dnsSuffix}", + "tags" : [ "fips" ] + } ] + }, + "endpoints" : { + "cn-north-1" : { + "hostname" : "gameliftstreams.cn-north-1.api.amazonwebservices.com.cn" + }, + "cn-northwest-1" : { + "hostname" : "gameliftstreams.cn-northwest-1.api.amazonwebservices.com.cn" + } + } + }, "glacier" : { "defaults" : { "protocols" : [ "http", "https" ] @@ -21679,8 +30065,18 @@ }, "glue" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "glue.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "glue.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "greengrass" : { @@ -21820,6 +30216,12 @@ "cn-northwest-1" : { } } }, + "kafkaconnect" : { + "endpoints" : { + "cn-north-1" : { }, + "cn-northwest-1" : { } + } + }, "kendra-ranking" : { "defaults" : { "dnsSuffix" : "api.amazonwebservices.com.cn", @@ -21863,8 +30265,18 @@ }, "lakeformation" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "lakeformation.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "lakeformation.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "lambda" : { @@ -21897,17 +30309,27 @@ }, "logs" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "logs.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "logs.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "mediaconvert" : { "endpoints" : { "cn-northwest-1" : { - "credentialScope" : { - "region" : "cn-northwest-1" - }, - "hostname" : "mediaconvert.cn-northwest-1.amazonaws.com.cn" + "variants" : [ { + "hostname" : "mediaconvert.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] } } }, @@ -21917,6 +30339,16 @@ "cn-northwest-1" : { } } }, + "metering.marketplace" : { + "defaults" : { + "credentialScope" : { + "service" : "aws-marketplace" + } + }, + "endpoints" : { + "cn-northwest-1" : { } + } + }, "metrics.sagemaker" : { "endpoints" : { "cn-north-1" : { }, @@ -21960,6 +30392,24 @@ "cn-northwest-1" : { } } }, + "notifications" : { + "defaults" : { + "dnsSuffix" : "api.amazonwebservices.com.cn", + "variants" : [ { + "dnsSuffix" : "api.amazonwebservices.com.cn", + "hostname" : "{service}-fips.{region}.{dnsSuffix}", + "tags" : [ "fips" ] + } ] + }, + "endpoints" : { + "cn-north-1" : { + "hostname" : "notifications.cn-north-1.api.amazonwebservices.com.cn" + }, + "cn-northwest-1" : { + "hostname" : "notifications.cn-northwest-1.api.amazonwebservices.com.cn" + } + } + }, "oam" : { "endpoints" : { "cn-north-1" : { }, @@ -22001,8 +30451,20 @@ }, "pi" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "pipes" : { @@ -22013,7 +30475,12 @@ }, "polly" : { "endpoints" : { - "cn-northwest-1" : { } + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "polly.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "portal.sso" : { @@ -22057,14 +30524,32 @@ }, "ram" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "tags" : [ "dualstack" ] + } ] + } } }, "rbin" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "rbin.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "rbin.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "rds" : { @@ -22109,13 +30594,29 @@ "isRegionalized" : false, "partitionEndpoint" : "aws-cn-global" }, + "route53profiles" : { + "endpoints" : { + "cn-north-1" : { }, + "cn-northwest-1" : { } + } + }, "route53resolver" : { "defaults" : { "protocols" : [ "https" ] }, "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "route53resolver.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "route53resolver.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "runtime.sagemaker" : { @@ -22201,6 +30702,12 @@ }, "isRegionalized" : true }, + "scheduler" : { + "endpoints" : { + "cn-north-1" : { }, + "cn-northwest-1" : { } + } + }, "schemas" : { "endpoints" : { "cn-north-1" : { }, @@ -22289,11 +30796,6 @@ } } }, - "sms" : { - "endpoints" : { - "cn-north-1" : { } - } - }, "snowball" : { "endpoints" : { "cn-north-1" : { @@ -22329,8 +30831,18 @@ "protocols" : [ "http", "https" ] }, "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "sns.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "sns.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "sqs" : { @@ -22339,8 +30851,18 @@ "sslCommonName" : "{region}.queue.{dnsSuffix}" }, "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "sqs.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "sqs.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "ssm" : { @@ -22414,8 +30936,18 @@ }, "synthetics" : { "endpoints" : { - "cn-north-1" : { }, - "cn-northwest-1" : { } + "cn-north-1" : { + "variants" : [ { + "hostname" : "synthetics.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "synthetics.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } } }, "tagging" : { @@ -22433,23 +30965,47 @@ "credentialScope" : { "region" : "cn-north-1" }, - "hostname" : "cn.transcribe.cn-north-1.amazonaws.com.cn" + "hostname" : "cn.transcribe.cn-north-1.amazonaws.com.cn", + "variants" : [ { + "hostname" : "transcribe.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] }, "cn-northwest-1" : { "credentialScope" : { "region" : "cn-northwest-1" }, - "hostname" : "cn.transcribe.cn-northwest-1.amazonaws.com.cn" + "hostname" : "cn.transcribe.cn-northwest-1.amazonaws.com.cn", + "variants" : [ { + "hostname" : "transcribe.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] } } }, "transcribestreaming" : { + "endpoints" : { + "cn-north-1" : { + "variants" : [ { + "hostname" : "transcribestreaming.cn-north-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + }, + "cn-northwest-1" : { + "variants" : [ { + "hostname" : "transcribestreaming.cn-northwest-1.api.amazonwebservices.com.cn", + "tags" : [ "dualstack" ] + } ] + } + } + }, + "transfer" : { "endpoints" : { "cn-north-1" : { }, "cn-northwest-1" : { } } }, - "transfer" : { + "verifiedpermissions" : { "endpoints" : { "cn-north-1" : { }, "cn-northwest-1" : { } @@ -22585,6 +31141,12 @@ "variants" : [ { "hostname" : "access-analyzer.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "access-analyzer.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] + }, { + "hostname" : "access-analyzer.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "us-gov-east-1-fips" : { @@ -22602,6 +31164,12 @@ "variants" : [ { "hostname" : "access-analyzer.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "access-analyzer.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] + }, { + "hostname" : "access-analyzer.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "us-gov-west-1-fips" : { @@ -22672,6 +31240,12 @@ } } }, + "aoss" : { + "endpoints" : { + "us-gov-east-1" : { }, + "us-gov-west-1" : { } + } + }, "api.detective" : { "defaults" : { "protocols" : [ "https" ] @@ -22681,6 +31255,12 @@ "variants" : [ { "hostname" : "api.detective-fips.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "detective-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "detective.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-east-1-fips" : { @@ -22694,6 +31274,12 @@ "variants" : [ { "hostname" : "api.detective-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "detective-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "detective.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1-fips" : { @@ -22769,6 +31355,12 @@ "variants" : [ { "hostname" : "ecr-fips.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ecr-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "ecr.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1" : { @@ -22779,6 +31371,12 @@ "variants" : [ { "hostname" : "ecr-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ecr-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "ecr.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -22791,7 +31389,19 @@ } ] }, "endpoints" : { - "us-gov-east-1" : { }, + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "api-fips.sagemaker.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-gov-east-1-fips" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "deprecated" : true, + "hostname" : "api-fips.sagemaker.us-gov-east-1.amazonaws.com" + }, "us-gov-west-1" : { "variants" : [ { "hostname" : "api-fips.sagemaker.us-gov-west-1.amazonaws.com", @@ -22827,8 +31437,17 @@ "api.tunneling.iot" : { "defaults" : { "variants" : [ { + "dnsSuffix" : "amazonaws.com", "hostname" : "api.tunneling.iot-fips.{region}.{dnsSuffix}", "tags" : [ "fips" ] + }, { + "dnsSuffix" : "api.aws", + "hostname" : "api.iot-tunneling-fips.{region}.{dnsSuffix}", + "tags" : [ "dualstack", "fips" ] + }, { + "dnsSuffix" : "api.aws", + "hostname" : "api.iot-tunneling.{region}.{dnsSuffix}", + "tags" : [ "dualstack" ] } ] }, "endpoints" : { @@ -22848,12 +31467,24 @@ }, "us-gov-east-1" : { "variants" : [ { + "hostname" : "api.iot-tunneling-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "api.iot-tunneling.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] + }, { "hostname" : "api.tunneling.iot-fips.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] } ] }, "us-gov-west-1" : { "variants" : [ { + "hostname" : "api.iot-tunneling-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "api.iot-tunneling.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] + }, { "hostname" : "api.tunneling.iot-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] } ] @@ -22961,17 +31592,43 @@ }, "applicationinsights" : { "endpoints" : { - "us-gov-east-1" : { + "fips-us-gov-east-1" : { "credentialScope" : { "region" : "us-gov-east-1" }, - "hostname" : "applicationinsights.us-gov-east-1.amazonaws.com" + "deprecated" : true, + "hostname" : "applicationinsights-fips.us-gov-east-1.amazonaws.com" }, - "us-gov-west-1" : { + "fips-us-gov-west-1" : { "credentialScope" : { "region" : "us-gov-west-1" }, - "hostname" : "applicationinsights.us-gov-west-1.amazonaws.com" + "deprecated" : true, + "hostname" : "applicationinsights-fips.us-gov-west-1.amazonaws.com" + }, + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "applicationinsights-fips.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "applicationinsights-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "applicationinsights.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-gov-west-1" : { + "variants" : [ { + "hostname" : "applicationinsights-fips.us-gov-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "applicationinsights-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "applicationinsights.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] } } }, @@ -23018,6 +31675,12 @@ } } }, + "aps" : { + "endpoints" : { + "us-gov-east-1" : { }, + "us-gov-west-1" : { } + } + }, "arc-zonal-shift" : { "endpoints" : { "us-gov-east-1" : { }, @@ -23088,8 +31751,6 @@ }, "endpoints" : { "us-gov-east-1" : { - "hostname" : "autoscaling-plans.us-gov-east-1.amazonaws.com", - "protocols" : [ "http", "https" ], "variants" : [ { "hostname" : "autoscaling-plans.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] @@ -23101,8 +31762,6 @@ "protocols" : [ "http", "https" ] }, "us-gov-west-1" : { - "hostname" : "autoscaling-plans.us-gov-west-1.amazonaws.com", - "protocols" : [ "http", "https" ], "variants" : [ { "hostname" : "autoscaling-plans.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] @@ -23127,12 +31786,6 @@ "us-gov-west-1" : { } } }, - "backupstorage" : { - "endpoints" : { - "us-gov-east-1" : { }, - "us-gov-west-1" : { } - } - }, "batch" : { "defaults" : { "variants" : [ { @@ -23171,18 +31824,55 @@ }, "bedrock" : { "endpoints" : { + "bedrock-fips-us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "hostname" : "bedrock-fips.us-gov-east-1.amazonaws.com" + }, + "bedrock-fips-us-gov-west-1" : { + "credentialScope" : { + "region" : "us-gov-west-1" + }, + "hostname" : "bedrock-fips.us-gov-west-1.amazonaws.com" + }, + "bedrock-runtime-fips-us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "hostname" : "bedrock-runtime-fips.us-gov-east-1.amazonaws.com" + }, + "bedrock-runtime-fips-us-gov-west-1" : { + "credentialScope" : { + "region" : "us-gov-west-1" + }, + "hostname" : "bedrock-runtime-fips.us-gov-west-1.amazonaws.com" + }, + "bedrock-runtime-us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "hostname" : "bedrock-runtime.us-gov-east-1.amazonaws.com" + }, "bedrock-runtime-us-gov-west-1" : { "credentialScope" : { "region" : "us-gov-west-1" }, "hostname" : "bedrock-runtime.us-gov-west-1.amazonaws.com" }, + "bedrock-us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "hostname" : "bedrock.us-gov-east-1.amazonaws.com" + }, "bedrock-us-gov-west-1" : { "credentialScope" : { "region" : "us-gov-west-1" }, "hostname" : "bedrock.us-gov-west-1.amazonaws.com" }, + "us-gov-east-1" : { }, "us-gov-west-1" : { } } }, @@ -23244,12 +31934,24 @@ "variants" : [ { "hostname" : "cloudcontrolapi-fips.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "cloudcontrolapi-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "cloudcontrolapi.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1" : { "variants" : [ { "hostname" : "cloudcontrolapi-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "cloudcontrolapi-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "cloudcontrolapi.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -23321,8 +32023,18 @@ } }, "endpoints" : { - "us-gov-east-1" : { }, - "us-gov-west-1" : { } + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-gov-west-1" : { + "variants" : [ { + "hostname" : "cloudhsmv2.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + } } }, "cloudtrail" : { @@ -23502,10 +32214,22 @@ "deprecated" : true, "hostname" : "cognito-identity-fips.us-gov-west-1.amazonaws.com" }, + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "cognito-identity.us-gov-east-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, "us-gov-west-1" : { "variants" : [ { + "hostname" : "cognito-identity-fips.us-gov-west-1.amazonaws.com", + "tags" : [ "dualstack", "fips" ] + }, { "hostname" : "cognito-identity-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "cognito-identity.us-gov-west-1.amazonaws.com", + "tags" : [ "dualstack" ] } ] } } @@ -23519,10 +32243,22 @@ "deprecated" : true, "hostname" : "cognito-idp-fips.us-gov-west-1.amazonaws.com" }, + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "cognito-idp.us-gov-east-1.amazonaws.com", + "tags" : [ "dualstack" ] + } ] + }, "us-gov-west-1" : { "variants" : [ { + "hostname" : "cognito-idp-fips.us-gov-west-1.amazonaws.com", + "tags" : [ "dualstack", "fips" ] + }, { "hostname" : "cognito-idp-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "cognito-idp.us-gov-west-1.amazonaws.com", + "tags" : [ "dualstack" ] } ] } } @@ -23543,6 +32279,12 @@ "variants" : [ { "hostname" : "comprehend-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "comprehend-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "comprehend.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -23802,12 +32544,24 @@ "variants" : [ { "hostname" : "datasync-fips.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "datasync-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "datasync.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1" : { "variants" : [ { "hostname" : "datasync-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "datasync-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "datasync.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -23832,17 +32586,31 @@ }, "directconnect" : { "endpoints" : { - "us-gov-east-1" : { + "fips-us-gov-east-1" : { "credentialScope" : { "region" : "us-gov-east-1" }, - "hostname" : "directconnect.us-gov-east-1.amazonaws.com" + "deprecated" : true, + "hostname" : "directconnect-fips.us-gov-east-1.amazonaws.com" }, - "us-gov-west-1" : { + "fips-us-gov-west-1" : { "credentialScope" : { "region" : "us-gov-west-1" }, - "hostname" : "directconnect.us-gov-west-1.amazonaws.com" + "deprecated" : true, + "hostname" : "directconnect-fips.us-gov-west-1.amazonaws.com" + }, + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "directconnect-fips.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-gov-west-1" : { + "variants" : [ { + "hostname" : "directconnect-fips.us-gov-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] } } }, @@ -23850,8 +32618,14 @@ "endpoints" : { "us-gov-east-1" : { "variants" : [ { + "hostname" : "dlm-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { "hostname" : "dlm.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "dlm.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-east-1-fips" : { @@ -23863,8 +32637,14 @@ }, "us-gov-west-1" : { "variants" : [ { + "hostname" : "dlm-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { "hostname" : "dlm.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "dlm.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1-fips" : { @@ -24009,7 +32789,7 @@ "endpoints" : { "us-gov-east-1" : { "variants" : [ { - "hostname" : "dynamodb.us-gov-east-1.amazonaws.com", + "hostname" : "dynamodb-fips.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] } ] }, @@ -24018,11 +32798,11 @@ "region" : "us-gov-east-1" }, "deprecated" : true, - "hostname" : "dynamodb.us-gov-east-1.amazonaws.com" + "hostname" : "dynamodb-fips.us-gov-east-1.amazonaws.com" }, "us-gov-west-1" : { "variants" : [ { - "hostname" : "dynamodb.us-gov-west-1.amazonaws.com", + "hostname" : "dynamodb-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] } ] }, @@ -24031,7 +32811,7 @@ "region" : "us-gov-west-1" }, "deprecated" : true, - "hostname" : "dynamodb.us-gov-west-1.amazonaws.com" + "hostname" : "dynamodb-fips.us-gov-west-1.amazonaws.com" } } }, @@ -24197,6 +32977,9 @@ "variants" : [ { "hostname" : "elasticbeanstalk.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "elasticbeanstalk.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-east-1-fips" : { @@ -24214,6 +32997,9 @@ "variants" : [ { "hostname" : "elasticbeanstalk.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "elasticbeanstalk.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1-fips" : { @@ -24625,6 +33411,24 @@ } } }, + "gameliftstreams" : { + "defaults" : { + "dnsSuffix" : "api.aws", + "variants" : [ { + "dnsSuffix" : "api.aws", + "hostname" : "{service}-fips.{region}.{dnsSuffix}", + "tags" : [ "fips" ] + } ] + }, + "endpoints" : { + "us-gov-east-1" : { + "hostname" : "gameliftstreams.us-gov-east-1.api.aws" + }, + "us-gov-west-1" : { + "hostname" : "gameliftstreams.us-gov-west-1.api.aws" + } + } + }, "geo" : { "endpoints" : { "fips-us-gov-west-1" : { @@ -25270,8 +34074,70 @@ }, "kinesisanalytics" : { "endpoints" : { - "us-gov-east-1" : { }, - "us-gov-west-1" : { } + "fips-us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "deprecated" : true, + "hostname" : "kinesisanalytics-fips.us-gov-east-1.amazonaws.com" + }, + "fips-us-gov-west-1" : { + "credentialScope" : { + "region" : "us-gov-west-1" + }, + "deprecated" : true, + "hostname" : "kinesisanalytics-fips.us-gov-west-1.amazonaws.com" + }, + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "kinesisanalytics-fips.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-gov-west-1" : { + "variants" : [ { + "hostname" : "kinesisanalytics-fips.us-gov-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + } + } + }, + "kinesisvideo" : { + "endpoints" : { + "fips-us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "deprecated" : true, + "hostname" : "kinesisvideo-fips.us-gov-east-1.amazonaws.com" + }, + "fips-us-gov-west-1" : { + "credentialScope" : { + "region" : "us-gov-west-1" + }, + "deprecated" : true, + "hostname" : "kinesisvideo-fips.us-gov-west-1.amazonaws.com" + }, + "us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "hostname" : "kinesisvideo-fips.us-gov-east-1.amazonaws.com", + "variants" : [ { + "hostname" : "kinesisvideo-fips.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-gov-west-1" : { + "credentialScope" : { + "region" : "us-gov-west-1" + }, + "hostname" : "kinesisvideo-fips.us-gov-west-1.amazonaws.com", + "variants" : [ { + "hostname" : "kinesisvideo-fips.us-gov-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + } } }, "kms" : { @@ -25451,12 +34317,18 @@ "variants" : [ { "hostname" : "logs.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "logs.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1" : { "variants" : [ { "hostname" : "logs.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "logs.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -25499,6 +34371,12 @@ "variants" : [ { "hostname" : "mediaconvert.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "mediaconvert.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] + }, { + "hostname" : "mediaconvert.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] } ] } } @@ -25533,6 +34411,12 @@ } } }, + "memory-db" : { + "endpoints" : { + "us-gov-east-1" : { }, + "us-gov-west-1" : { } + } + }, "metering.marketplace" : { "defaults" : { "credentialScope" : { @@ -25540,8 +34424,18 @@ } }, "endpoints" : { - "us-gov-east-1" : { }, - "us-gov-west-1" : { } + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-gov-west-1" : { + "variants" : [ { + "hostname" : "metering-marketplace.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + } } }, "metrics.sagemaker" : { @@ -25733,6 +34627,12 @@ "variants" : [ { "hostname" : "networkmanager.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "networkmanager.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] + }, { + "hostname" : "networkmanager.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "fips-aws-us-gov-global" : { @@ -25746,6 +34646,30 @@ "isRegionalized" : false, "partitionEndpoint" : "aws-us-gov-global" }, + "notifications" : { + "defaults" : { + "dnsSuffix" : "api.aws", + "variants" : [ { + "dnsSuffix" : "api.aws", + "hostname" : "{service}-fips.{region}.{dnsSuffix}", + "tags" : [ "fips" ] + } ] + }, + "endpoints" : { + "us-gov-east-1" : { + "hostname" : "notifications.us-gov-east-1.api.aws" + }, + "us-gov-west-1" : { + "hostname" : "notifications.us-gov-west-1.api.aws" + } + } + }, + "oam" : { + "endpoints" : { + "us-gov-east-1" : { }, + "us-gov-west-1" : { } + } + }, "oidc" : { "endpoints" : { "us-gov-east-1" : { @@ -25834,8 +34758,46 @@ }, "pi" : { "endpoints" : { - "us-gov-east-1" : { }, - "us-gov-west-1" : { } + "fips-us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "deprecated" : true, + "hostname" : "pi-fips.us-gov-east-1.amazonaws.com" + }, + "fips-us-gov-west-1" : { + "credentialScope" : { + "region" : "us-gov-west-1" + }, + "deprecated" : true, + "hostname" : "pi-fips.us-gov-west-1.amazonaws.com" + }, + "us-gov-east-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi-fips.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "pi-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "pi.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-gov-west-1" : { + "protocols" : [ "https" ], + "variants" : [ { + "hostname" : "pi-fips.us-gov-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "pi-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "pi.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + } } }, "pinpoint" : { @@ -25877,6 +34839,12 @@ "variants" : [ { "hostname" : "polly-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "polly-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "polly.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -25915,9 +34883,14 @@ } } }, + "query.timestream" : { + "endpoints" : { + "us-gov-west-1" : { } + } + }, "quicksight" : { "endpoints" : { - "api" : { }, + "us-gov-east-1" : { }, "us-gov-west-1" : { } } }, @@ -25929,8 +34902,13 @@ }, "hostname" : "ram.us-gov-east-1.amazonaws.com", "variants" : [ { + "tags" : [ "dualstack" ] + }, { "hostname" : "ram.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ramus-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "us-gov-east-1-fips" : { @@ -25946,8 +34924,13 @@ }, "hostname" : "ram.us-gov-west-1.amazonaws.com", "variants" : [ { + "tags" : [ "dualstack" ] + }, { "hostname" : "ram.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "ramus-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "us-gov-west-1-fips" : { @@ -25979,12 +34962,24 @@ "variants" : [ { "hostname" : "rbin-fips.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "rbin-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "rbin.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1" : { "variants" : [ { "hostname" : "rbin-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "rbin-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "rbin.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -26055,6 +35050,36 @@ } } }, + "redshift-serverless" : { + "endpoints" : { + "fips-us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "deprecated" : true, + "hostname" : "redshift-serverless-fips.us-gov-east-1.amazonaws.com" + }, + "fips-us-gov-west-1" : { + "credentialScope" : { + "region" : "us-gov-west-1" + }, + "deprecated" : true, + "hostname" : "redshift-serverless-fips.us-gov-west-1.amazonaws.com" + }, + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "redshift-serverless-fips.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-gov-west-1" : { + "variants" : [ { + "hostname" : "redshift-serverless-fips.us-gov-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + } + } + }, "rekognition" : { "endpoints" : { "rekognition-fips.us-gov-west-1" : { @@ -26078,6 +35103,12 @@ "variants" : [ { "hostname" : "rekognition-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "rekognition-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "rekognition.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1-fips" : { @@ -26109,12 +35140,24 @@ "variants" : [ { "hostname" : "resiliencehub-fips.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "resiliencehub-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "resiliencehub.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1" : { "variants" : [ { "hostname" : "resiliencehub-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "resiliencehub-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "resiliencehub.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -26213,12 +35256,40 @@ "isRegionalized" : false, "partitionEndpoint" : "aws-us-gov-global" }, + "route53profiles" : { + "endpoints" : { + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "route53profiles-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "route53profiles.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-gov-west-1" : { + "variants" : [ { + "hostname" : "route53profiles-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "route53profiles.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + } + } + }, "route53resolver" : { "endpoints" : { "us-gov-east-1" : { "variants" : [ { "hostname" : "route53resolver.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "route53resolver.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] + }, { + "hostname" : "route53resolver.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "us-gov-east-1-fips" : { @@ -26229,6 +35300,12 @@ "variants" : [ { "hostname" : "route53resolver.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "route53resolver.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] + }, { + "hostname" : "route53resolver.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] } ] }, "us-gov-west-1-fips" : { @@ -26237,6 +35314,12 @@ } } }, + "rum" : { + "endpoints" : { + "us-gov-east-1" : { }, + "us-gov-west-1" : { } + } + }, "runtime-v2-lex" : { "endpoints" : { "us-gov-west-1" : { } @@ -26439,6 +35522,18 @@ } } }, + "scheduler" : { + "endpoints" : { + "us-gov-east-1" : { }, + "us-gov-west-1" : { } + } + }, + "schemas" : { + "endpoints" : { + "us-gov-east-1" : { }, + "us-gov-west-1" : { } + } + }, "secretsmanager" : { "endpoints" : { "us-gov-east-1" : { @@ -26487,16 +35582,58 @@ "variants" : [ { "hostname" : "securityhub-fips.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "securityhub.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1" : { "variants" : [ { "hostname" : "securityhub-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "securityhub.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } }, + "securitylake" : { + "endpoints" : { + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "securitylake.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "securitylake.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + } ] + }, + "us-gov-east-1-fips" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "deprecated" : true, + "hostname" : "securitylake.us-gov-east-1.amazonaws.com" + }, + "us-gov-west-1" : { + "variants" : [ { + "hostname" : "securitylake.us-gov-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "securitylake.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + } ] + }, + "us-gov-west-1-fips" : { + "credentialScope" : { + "region" : "us-gov-west-1" + }, + "deprecated" : true, + "hostname" : "securitylake.us-gov-west-1.amazonaws.com" + } + } + }, "serverlessrepo" : { "defaults" : { "protocols" : [ "https" ] @@ -26754,23 +35891,6 @@ } } }, - "sms" : { - "endpoints" : { - "fips-us-gov-west-1" : { - "credentialScope" : { - "region" : "us-gov-west-1" - }, - "deprecated" : true, - "hostname" : "sms-fips.us-gov-west-1.amazonaws.com" - }, - "us-gov-west-1" : { - "variants" : [ { - "hostname" : "sms-fips.us-gov-west-1.amazonaws.com", - "tags" : [ "fips" ] - } ] - } - } - }, "sms-voice" : { "endpoints" : { "fips-us-gov-east-1" : { @@ -26791,12 +35911,24 @@ "variants" : [ { "hostname" : "sms-voice-fips.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "sms-voice-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "sms-voice.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1" : { "variants" : [ { "hostname" : "sms-voice-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "sms-voice-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "sms-voice.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -26821,12 +35953,24 @@ "variants" : [ { "hostname" : "snowball-fips.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1" : { "variants" : [ { "hostname" : "snowball-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "snowball-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "snowball.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -26870,19 +36014,33 @@ } ] }, "endpoints" : { - "us-gov-east-1" : { + "fips-us-gov-east-1" : { "credentialScope" : { "region" : "us-gov-east-1" }, + "deprecated" : true, "hostname" : "sqs.us-gov-east-1.amazonaws.com" }, - "us-gov-west-1" : { + "fips-us-gov-west-1" : { "credentialScope" : { "region" : "us-gov-west-1" }, - "hostname" : "sqs.us-gov-west-1.amazonaws.com", + "deprecated" : true, + "hostname" : "sqs.us-gov-west-1.amazonaws.com" + }, + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "sqs.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-gov-west-1" : { "protocols" : [ "http", "https" ], - "sslCommonName" : "{region}.queue.{dnsSuffix}" + "sslCommonName" : "{region}.queue.{dnsSuffix}", + "variants" : [ { + "hostname" : "sqs.us-gov-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] } } }, @@ -27038,32 +36196,8 @@ } ] }, "endpoints" : { - "us-gov-east-1" : { - "variants" : [ { - "hostname" : "streams.dynamodb.us-gov-east-1.amazonaws.com", - "tags" : [ "fips" ] - } ] - }, - "us-gov-east-1-fips" : { - "credentialScope" : { - "region" : "us-gov-east-1" - }, - "deprecated" : true, - "hostname" : "streams.dynamodb.us-gov-east-1.amazonaws.com" - }, - "us-gov-west-1" : { - "variants" : [ { - "hostname" : "streams.dynamodb.us-gov-west-1.amazonaws.com", - "tags" : [ "fips" ] - } ] - }, - "us-gov-west-1-fips" : { - "credentialScope" : { - "region" : "us-gov-west-1" - }, - "deprecated" : true, - "hostname" : "streams.dynamodb.us-gov-west-1.amazonaws.com" - } + "us-gov-east-1" : { }, + "us-gov-west-1" : { } } }, "sts" : { @@ -27188,12 +36322,24 @@ "variants" : [ { "hostname" : "synthetics-fips.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "synthetics-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "synthetics.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1" : { "variants" : [ { "hostname" : "synthetics-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "synthetics-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "synthetics.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -27224,12 +36370,24 @@ "variants" : [ { "hostname" : "textract-fips.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "textract-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "textract.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1" : { "variants" : [ { "hostname" : "textract-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "textract-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "textract.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } @@ -27261,20 +36419,68 @@ "variants" : [ { "hostname" : "fips.transcribe.us-gov-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "transcribe-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "transcribe.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1" : { "variants" : [ { "hostname" : "fips.transcribe.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "transcribe-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "transcribe.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] } } }, "transcribestreaming" : { "endpoints" : { - "us-gov-east-1" : { }, - "us-gov-west-1" : { } + "fips-us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "deprecated" : true, + "hostname" : "transcribestreaming-fips.us-gov-east-1.amazonaws.com" + }, + "fips-us-gov-west-1" : { + "credentialScope" : { + "region" : "us-gov-west-1" + }, + "deprecated" : true, + "hostname" : "transcribestreaming-fips.us-gov-west-1.amazonaws.com" + }, + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "transcribestreaming-fips.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "transcribestreaming-fips.us-gov-east-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "transcribestreaming.us-gov-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "us-gov-west-1" : { + "variants" : [ { + "hostname" : "transcribestreaming-fips.us-gov-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "transcribestreaming-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "transcribestreaming.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + } } }, "transfer" : { @@ -27316,6 +36522,12 @@ "variants" : [ { "hostname" : "translate-fips.us-gov-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "translate-fips.us-gov-west-1.api.aws", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "translate.us-gov-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-gov-west-1-fips" : { @@ -27524,6 +36736,23 @@ } }, "services" : { + "agreement-marketplace" : { + "endpoints" : { + "fips-us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "deprecated" : true, + "hostname" : "agreement-marketplace-fips.us-iso-east-1.c2s.ic.gov" + }, + "us-iso-east-1" : { + "variants" : [ { + "hostname" : "agreement-marketplace-fips.us-iso-east-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + } + } + }, "api.ecr" : { "endpoints" : { "us-iso-east-1" : { @@ -27557,7 +36786,8 @@ }, "apigateway" : { "endpoints" : { - "us-iso-east-1" : { } + "us-iso-east-1" : { }, + "us-iso-west-1" : { } } }, "appconfig" : { @@ -27600,6 +36830,65 @@ "us-iso-west-1" : { } } }, + "backup" : { + "endpoints" : { + "us-iso-east-1" : { }, + "us-iso-west-1" : { } + } + }, + "batch" : { + "endpoints" : { + "us-iso-east-1" : { }, + "us-iso-west-1" : { } + } + }, + "bedrock" : { + "endpoints" : { + "bedrock-runtime-us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "hostname" : "bedrock-runtime.us-iso-east-1.c2s.ic.gov" + }, + "bedrock-us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "hostname" : "bedrock.us-iso-east-1.c2s.ic.gov" + }, + "us-iso-east-1" : { } + } + }, + "budgets" : { + "endpoints" : { + "aws-iso-global" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "hostname" : "budgets.c2s.ic.gov" + }, + "us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "hostname" : "budgets.c2s.ic.gov" + } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-iso-global" + }, + "ce" : { + "endpoints" : { + "aws-iso-global" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "hostname" : "ce.us-iso-east-1.c2s.ic.gov" + } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-iso-global" + }, "cloudcontrolapi" : { "endpoints" : { "us-iso-east-1" : { }, @@ -27613,6 +36902,36 @@ } }, "cloudtrail" : { + "endpoints" : { + "fips-us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "deprecated" : true, + "hostname" : "cloudtrail-fips.us-iso-east-1.c2s.ic.gov" + }, + "fips-us-iso-west-1" : { + "credentialScope" : { + "region" : "us-iso-west-1" + }, + "deprecated" : true, + "hostname" : "cloudtrail-fips.us-iso-west-1.c2s.ic.gov" + }, + "us-iso-east-1" : { + "variants" : [ { + "hostname" : "cloudtrail-fips.us-iso-east-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + }, + "us-iso-west-1" : { + "variants" : [ { + "hostname" : "cloudtrail-fips.us-iso-west-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + } + } + }, + "codebuild" : { "endpoints" : { "us-iso-east-1" : { }, "us-iso-west-1" : { } @@ -27629,13 +36948,49 @@ "protocols" : [ "https" ] }, "endpoints" : { - "us-iso-east-1" : { } + "fips-us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "deprecated" : true, + "hostname" : "comprehend-fips.us-iso-east-1.c2s.ic.gov" + }, + "us-iso-east-1" : { + "variants" : [ { + "hostname" : "comprehend-fips.us-iso-east-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + } } }, "config" : { "endpoints" : { - "us-iso-east-1" : { }, - "us-iso-west-1" : { } + "fips-us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "deprecated" : true, + "hostname" : "config-fips.us-iso-east-1.c2s.ic.gov" + }, + "fips-us-iso-west-1" : { + "credentialScope" : { + "region" : "us-iso-west-1" + }, + "deprecated" : true, + "hostname" : "config-fips.us-iso-west-1.c2s.ic.gov" + }, + "us-iso-east-1" : { + "variants" : [ { + "hostname" : "config-fips.us-iso-east-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + }, + "us-iso-west-1" : { + "variants" : [ { + "hostname" : "config-fips.us-iso-west-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + } } }, "datapipeline" : { @@ -27740,8 +37095,32 @@ }, "ds" : { "endpoints" : { - "us-iso-east-1" : { }, - "us-iso-west-1" : { } + "fips-us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "deprecated" : true, + "hostname" : "ds-fips.us-iso-east-1.c2s.ic.gov" + }, + "fips-us-iso-west-1" : { + "credentialScope" : { + "region" : "us-iso-west-1" + }, + "deprecated" : true, + "hostname" : "ds-fips.us-iso-west-1.c2s.ic.gov" + }, + "us-iso-east-1" : { + "variants" : [ { + "hostname" : "ds-fips.us-iso-east-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + }, + "us-iso-west-1" : { + "variants" : [ { + "hostname" : "ds-fips.us-iso-west-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + } } }, "dynamodb" : { @@ -27903,15 +37282,39 @@ "hostname" : "fsx-fips.us-iso-east-1.c2s.ic.gov", "tags" : [ "fips" ] } ] - } + }, + "us-iso-west-1" : { } } }, "glacier" : { "endpoints" : { + "fips-us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "deprecated" : true, + "hostname" : "glacier-fips.us-iso-east-1.c2s.ic.gov" + }, + "fips-us-iso-west-1" : { + "credentialScope" : { + "region" : "us-iso-west-1" + }, + "deprecated" : true, + "hostname" : "glacier-fips.us-iso-west-1.c2s.ic.gov" + }, "us-iso-east-1" : { - "protocols" : [ "http", "https" ] + "protocols" : [ "http", "https" ], + "variants" : [ { + "hostname" : "glacier-fips.us-iso-east-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] }, - "us-iso-west-1" : { } + "us-iso-west-1" : { + "variants" : [ { + "hostname" : "glacier-fips.us-iso-west-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + } } }, "glue" : { @@ -27951,6 +37354,16 @@ "us-iso-west-1" : { } } }, + "kinesisanalytics" : { + "endpoints" : { + "us-iso-east-1" : { } + } + }, + "kinesisvideo" : { + "endpoints" : { + "us-iso-east-1" : { } + } + }, "kms" : { "endpoints" : { "ProdFips" : { @@ -27988,6 +37401,11 @@ } } }, + "lakeformation" : { + "endpoints" : { + "us-iso-east-1" : { } + } + }, "lambda" : { "endpoints" : { "us-iso-east-1" : { }, @@ -28008,7 +37426,19 @@ }, "medialive" : { "endpoints" : { - "us-iso-east-1" : { } + "fips-us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "deprecated" : true, + "hostname" : "medialive-fips.us-iso-east-1.c2s.ic.gov" + }, + "us-iso-east-1" : { + "variants" : [ { + "hostname" : "medialive-fips.us-iso-east-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + } } }, "mediapackage" : { @@ -28027,11 +37457,44 @@ "us-iso-west-1" : { } } }, + "network-firewall" : { + "endpoints" : { + "us-iso-east-1" : { } + } + }, + "oam" : { + "endpoints" : { + "us-iso-east-1" : { }, + "us-iso-west-1" : { } + } + }, + "organizations" : { + "endpoints" : { + "aws-iso-global" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "hostname" : "organizations.us-iso-east-1.c2s.ic.gov" + } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-iso-global" + }, "outposts" : { "endpoints" : { "us-iso-east-1" : { } } }, + "pi" : { + "endpoints" : { + "us-iso-east-1" : { + "protocols" : [ "https" ] + }, + "us-iso-west-1" : { + "protocols" : [ "https" ] + } + } + }, "ram" : { "endpoints" : { "us-iso-east-1" : { }, @@ -28114,31 +37577,17 @@ }, "redshift" : { "endpoints" : { - "fips-us-iso-east-1" : { + "us-iso-east-1" : { "credentialScope" : { "region" : "us-iso-east-1" }, - "deprecated" : true, - "hostname" : "redshift-fips.us-iso-east-1.c2s.ic.gov" + "hostname" : "redshift.us-iso-east-1.c2s.ic.gov" }, - "fips-us-iso-west-1" : { + "us-iso-west-1" : { "credentialScope" : { "region" : "us-iso-west-1" }, - "deprecated" : true, - "hostname" : "redshift-fips.us-iso-west-1.c2s.ic.gov" - }, - "us-iso-east-1" : { - "variants" : [ { - "hostname" : "redshift-fips.us-iso-east-1.c2s.ic.gov", - "tags" : [ "fips" ] - } ] - }, - "us-iso-west-1" : { - "variants" : [ { - "hostname" : "redshift-fips.us-iso-west-1.c2s.ic.gov", - "tags" : [ "fips" ] - } ] + "hostname" : "redshift.us-iso-west-1.c2s.ic.gov" } } }, @@ -28282,7 +37731,45 @@ } } }, + "scheduler" : { + "endpoints" : { + "us-iso-east-1" : { }, + "us-iso-west-1" : { } + } + }, "secretsmanager" : { + "endpoints" : { + "us-iso-east-1" : { + "variants" : [ { + "tags" : [ "fips" ] + } ] + }, + "us-iso-east-1-fips" : { + "deprecated" : true + }, + "us-iso-west-1" : { + "variants" : [ { + "tags" : [ "fips" ] + } ] + }, + "us-iso-west-1-fips" : { + "deprecated" : true + } + } + }, + "securityhub" : { + "endpoints" : { + "us-iso-east-1" : { }, + "us-iso-west-1" : { } + } + }, + "servicediscovery" : { + "endpoints" : { + "us-iso-east-1" : { }, + "us-iso-west-1" : { } + } + }, + "servicequotas" : { "endpoints" : { "us-iso-east-1" : { }, "us-iso-west-1" : { } @@ -28304,10 +37791,33 @@ }, "sqs" : { "endpoints" : { + "fips-us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "deprecated" : true, + "hostname" : "sqs.us-iso-east-1.c2s.ic.gov" + }, + "fips-us-iso-west-1" : { + "credentialScope" : { + "region" : "us-iso-west-1" + }, + "deprecated" : true, + "hostname" : "sqs.us-iso-west-1.c2s.ic.gov" + }, "us-iso-east-1" : { - "protocols" : [ "http", "https" ] + "protocols" : [ "http", "https" ], + "variants" : [ { + "hostname" : "sqs.us-iso-east-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] }, - "us-iso-west-1" : { } + "us-iso-west-1" : { + "variants" : [ { + "hostname" : "sqs.us-iso-west-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + } } }, "ssm" : { @@ -28317,6 +37827,36 @@ } }, "states" : { + "endpoints" : { + "fips-us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "deprecated" : true, + "hostname" : "states-fips.us-iso-east-1.c2s.ic.gov" + }, + "fips-us-iso-west-1" : { + "credentialScope" : { + "region" : "us-iso-west-1" + }, + "deprecated" : true, + "hostname" : "states-fips.us-iso-west-1.c2s.ic.gov" + }, + "us-iso-east-1" : { + "variants" : [ { + "hostname" : "states-fips.us-iso-east-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + }, + "us-iso-west-1" : { + "variants" : [ { + "hostname" : "states-fips.us-iso-west-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + } + } + }, + "storagegateway" : { "endpoints" : { "us-iso-east-1" : { }, "us-iso-west-1" : { } @@ -28352,8 +37892,32 @@ }, "swf" : { "endpoints" : { - "us-iso-east-1" : { }, - "us-iso-west-1" : { } + "fips-us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "deprecated" : true, + "hostname" : "swf-fips.us-iso-east-1.c2s.ic.gov" + }, + "fips-us-iso-west-1" : { + "credentialScope" : { + "region" : "us-iso-west-1" + }, + "deprecated" : true, + "hostname" : "swf-fips.us-iso-west-1.c2s.ic.gov" + }, + "us-iso-east-1" : { + "variants" : [ { + "hostname" : "swf-fips.us-iso-east-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + }, + "us-iso-west-1" : { + "variants" : [ { + "hostname" : "swf-fips.us-iso-west-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + } } }, "synthetics" : { @@ -28377,58 +37941,1578 @@ "defaults" : { "protocols" : [ "https" ] }, + "endpoints" : { + "fips-us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "deprecated" : true, + "hostname" : "fips.transcribe.us-iso-east-1.c2s.ic.gov" + }, + "us-iso-east-1" : { + "variants" : [ { + "hostname" : "fips.transcribe.us-iso-east-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + } + } + }, + "transcribestreaming" : { + "endpoints" : { + "us-iso-east-1" : { } + } + }, + "translate" : { + "defaults" : { + "protocols" : [ "https" ] + }, + "endpoints" : { + "us-iso-east-1" : { + "variants" : [ { + "hostname" : "translate-fips.us-iso-east-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + }, + "us-iso-east-1-fips" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "deprecated" : true, + "hostname" : "translate-fips.us-iso-east-1.c2s.ic.gov" + } + } + }, + "wafv2" : { "endpoints" : { "us-iso-east-1" : { } } }, - "transcribestreaming" : { + "workspaces" : { + "endpoints" : { + "fips-us-iso-east-1" : { + "credentialScope" : { + "region" : "us-iso-east-1" + }, + "deprecated" : true, + "hostname" : "workspaces-fips.us-iso-east-1.c2s.ic.gov" + }, + "fips-us-iso-west-1" : { + "credentialScope" : { + "region" : "us-iso-west-1" + }, + "deprecated" : true, + "hostname" : "workspaces-fips.us-iso-west-1.c2s.ic.gov" + }, + "us-iso-east-1" : { + "variants" : [ { + "hostname" : "workspaces-fips.us-iso-east-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + }, + "us-iso-west-1" : { + "variants" : [ { + "hostname" : "workspaces-fips.us-iso-west-1.c2s.ic.gov", + "tags" : [ "fips" ] + } ] + } + } + }, + "xray" : { + "endpoints" : { + "us-iso-east-1" : { }, + "us-iso-west-1" : { } + } + } + } + }, { + "defaults" : { + "hostname" : "{service}.{region}.{dnsSuffix}", + "protocols" : [ "https" ], + "signatureVersions" : [ "v4" ], + "variants" : [ { + "dnsSuffix" : "sc2s.sgov.gov", + "hostname" : "{service}-fips.{region}.{dnsSuffix}", + "tags" : [ "fips" ] + } ] + }, + "dnsSuffix" : "sc2s.sgov.gov", + "partition" : "aws-iso-b", + "partitionName" : "AWS ISOB (US)", + "regionRegex" : "^us\\-isob\\-\\w+\\-\\d+$", + "regions" : { + "us-isob-east-1" : { + "description" : "US ISOB East (Ohio)" + } + }, + "services" : { + "api.ecr" : { + "endpoints" : { + "us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "hostname" : "api.ecr.us-isob-east-1.sc2s.sgov.gov" + } + } + }, + "api.pricing" : { + "defaults" : { + "credentialScope" : { + "service" : "pricing" + } + }, + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "api.sagemaker" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "apigateway" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "appconfig" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "appconfigdata" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "application-autoscaling" : { + "defaults" : { + "protocols" : [ "http", "https" ] + }, + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "arc-zonal-shift" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "athena" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "autoscaling" : { + "defaults" : { + "protocols" : [ "http", "https" ] + }, + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "backup" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "batch" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "budgets" : { + "endpoints" : { + "aws-iso-b-global" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "hostname" : "budgets.global.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "hostname" : "budgets.global.sc2s.sgov.gov" + } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-iso-b-global" + }, + "ce" : { + "endpoints" : { + "aws-iso-b-global" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "hostname" : "ce.us-isob-east-1.sc2s.sgov.gov" + } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-iso-b-global" + }, + "cloudcontrolapi" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "cloudformation" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "cloudtrail" : { + "endpoints" : { + "fips-us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "cloudtrail-fips.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "cloudtrail-fips.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + } + } + }, + "codebuild" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "codedeploy" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "config" : { + "endpoints" : { + "fips-us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "config-fips.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "config-fips.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + } + } + }, + "datasync" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "directconnect" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "dlm" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "dms" : { + "defaults" : { + "variants" : [ { + "hostname" : "dms.{region}.{dnsSuffix}", + "tags" : [ "fips" ] + } ] + }, + "endpoints" : { + "dms" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "variants" : [ { + "hostname" : "dms.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + }, + "dms-fips" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "dms.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "dms.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + }, + "us-isob-east-1-fips" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "dms.us-isob-east-1.sc2s.sgov.gov" + } + } + }, + "ds" : { + "endpoints" : { + "fips-us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "ds-fips.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "ds-fips.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + } + } + }, + "dynamodb" : { + "defaults" : { + "protocols" : [ "http", "https" ] + }, + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "ebs" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "ec2" : { + "defaults" : { + "protocols" : [ "http", "https" ] + }, + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "ecs" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "eks" : { + "defaults" : { + "protocols" : [ "http", "https" ] + }, + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "elasticache" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "elasticfilesystem" : { + "endpoints" : { + "fips-us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "elasticfilesystem-fips.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "elasticfilesystem-fips.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + } + } + }, + "elasticloadbalancing" : { + "endpoints" : { + "us-isob-east-1" : { + "protocols" : [ "https" ] + } + } + }, + "elasticmapreduce" : { + "endpoints" : { + "fips-us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "elasticmapreduce.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "elasticmapreduce.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + } + } + }, + "es" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "events" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "firehose" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "fsx" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "glacier" : { + "endpoints" : { + "fips-us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "glacier-fips.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "glacier-fips.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + } + } + }, + "glue" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "guardduty" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "health" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "iam" : { + "endpoints" : { + "aws-iso-b-global" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "hostname" : "iam.us-isob-east-1.sc2s.sgov.gov" + } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-iso-b-global" + }, + "kinesis" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "kinesisanalytics" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "kms" : { + "endpoints" : { + "ProdFips" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "kms-fips.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "kms-fips.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + }, + "us-isob-east-1-fips" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "kms-fips.us-isob-east-1.sc2s.sgov.gov" + } + } + }, + "lakeformation" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "lambda" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "license-manager" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "logs" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "medialive" : { + "endpoints" : { + "fips-us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "medialive-fips.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "medialive-fips.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + } + } + }, + "mediapackage" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "metering.marketplace" : { + "defaults" : { + "credentialScope" : { + "service" : "aws-marketplace" + } + }, + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "metrics.sagemaker" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "monitoring" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "network-firewall" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "oam" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "organizations" : { + "endpoints" : { + "aws-iso-b-global" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "hostname" : "organizations.us-isob-east-1.sc2s.sgov.gov" + } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-iso-b-global" + }, + "outposts" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "pi" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "ram" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "rbin" : { + "endpoints" : { + "fips-us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "rbin-fips.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "rbin-fips.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + } + } + }, + "rds" : { + "endpoints" : { + "rds.us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "rds.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "rds.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + }, + "us-isob-east-1-fips" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "rds.us-isob-east-1.sc2s.sgov.gov" + } + } + }, + "redshift" : { + "endpoints" : { + "us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "hostname" : "redshift.us-isob-east-1.sc2s.sgov.gov" + } + } + }, + "resource-groups" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "route53" : { + "endpoints" : { + "aws-iso-b-global" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "hostname" : "route53.sc2s.sgov.gov" + } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-iso-b-global" + }, + "route53resolver" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "runtime.sagemaker" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "s3" : { + "defaults" : { + "protocols" : [ "http", "https" ], + "signatureVersions" : [ "s3v4" ] + }, + "endpoints" : { + "fips-us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "s3-fips.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "s3-fips.dualstack.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "s3-fips.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + } + } + }, + "s3-control" : { + "defaults" : { + "protocols" : [ "https" ], + "signatureVersions" : [ "s3v4" ] + }, + "endpoints" : { + "us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "hostname" : "s3-control.us-isob-east-1.sc2s.sgov.gov", + "signatureVersions" : [ "s3v4" ], + "variants" : [ { + "hostname" : "s3-control-fips.dualstack.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "dualstack", "fips" ] + }, { + "hostname" : "s3-control-fips.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + }, { + "hostname" : "s3-control.dualstack.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "dualstack" ] + } ] + }, + "us-isob-east-1-fips" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "s3-control-fips.us-isob-east-1.sc2s.sgov.gov", + "signatureVersions" : [ "s3v4" ] + } + } + }, + "s3-outposts" : { + "endpoints" : { + "fips-us-isob-east-1" : { + "deprecated" : true + }, + "us-isob-east-1" : { + "variants" : [ { + "tags" : [ "fips" ] + } ] + } + } + }, + "scheduler" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "secretsmanager" : { + "endpoints" : { + "us-isob-east-1" : { + "variants" : [ { + "tags" : [ "fips" ] + } ] + }, + "us-isob-east-1-fips" : { + "deprecated" : true + } + } + }, + "securityhub" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "servicediscovery" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "servicequotas" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "snowball" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "sns" : { + "defaults" : { + "protocols" : [ "http", "https" ] + }, + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "sqs" : { + "defaults" : { + "protocols" : [ "http", "https" ], + "sslCommonName" : "{region}.queue.{dnsSuffix}" + }, + "endpoints" : { + "fips-us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "sqs.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "sqs.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + } + } + }, + "ssm" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "states" : { + "endpoints" : { + "fips-us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "states-fips.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "states-fips.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + } + } + }, + "storagegateway" : { + "endpoints" : { + "fips" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "storagegateway-fips.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "storagegateway-fips.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + }, + "us-isob-east-1-fips" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "storagegateway-fips.us-isob-east-1.sc2s.sgov.gov" + } + } + }, + "streams.dynamodb" : { + "defaults" : { + "credentialScope" : { + "service" : "dynamodb" + }, + "protocols" : [ "http", "https" ] + }, + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "sts" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "support" : { + "endpoints" : { + "aws-iso-b-global" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "hostname" : "support.us-isob-east-1.sc2s.sgov.gov" + } + }, + "partitionEndpoint" : "aws-iso-b-global" + }, + "swf" : { + "endpoints" : { + "fips-us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "swf-fips.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "swf-fips.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + } + } + }, + "synthetics" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "tagging" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "wafv2" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, + "workspaces" : { + "endpoints" : { + "fips-us-isob-east-1" : { + "credentialScope" : { + "region" : "us-isob-east-1" + }, + "deprecated" : true, + "hostname" : "workspaces-fips.us-isob-east-1.sc2s.sgov.gov" + }, + "us-isob-east-1" : { + "variants" : [ { + "hostname" : "workspaces-fips.us-isob-east-1.sc2s.sgov.gov", + "tags" : [ "fips" ] + } ] + } + } + }, + "xray" : { + "endpoints" : { + "us-isob-east-1" : { } + } + } + } + }, { + "defaults" : { + "hostname" : "{service}.{region}.{dnsSuffix}", + "protocols" : [ "https" ], + "signatureVersions" : [ "v4" ], + "variants" : [ { + "dnsSuffix" : "cloud.adc-e.uk", + "hostname" : "{service}-fips.{region}.{dnsSuffix}", + "tags" : [ "fips" ] + } ] + }, + "dnsSuffix" : "cloud.adc-e.uk", + "partition" : "aws-iso-e", + "partitionName" : "AWS ISOE (Europe)", + "regionRegex" : "^eu\\-isoe\\-\\w+\\-\\d+$", + "regions" : { + "eu-isoe-west-1" : { + "description" : "EU ISOE West" + } + }, + "services" : { + "access-analyzer" : { + "endpoints" : { + "eu-isoe-west-1" : { + "variants" : [ { + "hostname" : "access-analyzer.eu-isoe-west-1.api.cloud-aws.adc-e.uk", + "tags" : [ "dualstack" ] + } ] + } + } + }, + "acm" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "acm-pca" : { + "defaults" : { + "protocols" : [ "https" ] + }, + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "api.ecr" : { + "endpoints" : { + "eu-isoe-west-1" : { + "credentialScope" : { + "region" : "eu-isoe-west-1" + }, + "hostname" : "api.ecr.eu-isoe-west-1.cloud.adc-e.uk" + } + } + }, + "api.pricing" : { + "defaults" : { + "credentialScope" : { + "service" : "pricing" + } + }, + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "appconfig" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "appconfigdata" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "application-autoscaling" : { + "defaults" : { + "protocols" : [ "http", "https" ] + }, + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "arc-zonal-shift" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "athena" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "autoscaling" : { + "defaults" : { + "protocols" : [ "http", "https" ] + }, + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "batch" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "budgets" : { + "endpoints" : { + "aws-iso-e-global" : { + "credentialScope" : { + "region" : "eu-isoe-west-1" + }, + "hostname" : "budgets.global.cloud.adc-e.uk" + }, + "eu-isoe-west-1" : { + "credentialScope" : { + "region" : "eu-isoe-west-1" + }, + "hostname" : "budgets.global.cloud.adc-e.uk" + } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-iso-e-global" + }, + "cloudcontrolapi" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "cloudformation" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "cloudtrail" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "cloudtrail-data" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "codedeploy" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "compute-optimizer" : { + "endpoints" : { + "eu-isoe-west-1" : { + "credentialScope" : { + "region" : "eu-isoe-west-1" + }, + "hostname" : "compute-optimizer.eu-isoe-west-1.cloud.adc-e.uk" + } + } + }, + "config" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "cost-optimization-hub" : { + "endpoints" : { + "eu-isoe-west-1" : { + "credentialScope" : { + "region" : "eu-isoe-west-1" + }, + "hostname" : "cost-optimization-hub.eu-isoe-west-1.cloud.adc-e.uk" + } + } + }, + "directconnect" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "dlm" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "dms" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "ds" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "dynamodb" : { + "defaults" : { + "protocols" : [ "http", "https" ] + }, + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "ebs" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "ec2" : { + "defaults" : { + "protocols" : [ "https" ] + }, + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "ecs" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "eks" : { + "defaults" : { + "protocols" : [ "http", "https" ] + }, + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "elasticache" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "elasticfilesystem" : { + "endpoints" : { + "eu-isoe-west-1" : { + "variants" : [ { + "hostname" : "elasticfilesystem-fips.eu-isoe-west-1.cloud.adc-e.uk", + "tags" : [ "fips" ] + } ] + }, + "fips-eu-isoe-west-1" : { + "credentialScope" : { + "region" : "eu-isoe-west-1" + }, + "deprecated" : true, + "hostname" : "elasticfilesystem-fips.eu-isoe-west-1.cloud.adc-e.uk" + } + } + }, + "elasticloadbalancing" : { + "defaults" : { + "protocols" : [ "https" ] + }, + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "elasticmapreduce" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "emr-serverless" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "es" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "events" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "firehose" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "glue" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "kinesis" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "kms" : { + "endpoints" : { + "ProdFips" : { + "credentialScope" : { + "region" : "eu-isoe-west-1" + }, + "deprecated" : true, + "hostname" : "kms-fips.eu-isoe-west-1.cloud.adc-e.uk" + }, + "eu-isoe-west-1" : { + "variants" : [ { + "hostname" : "kms-fips.eu-isoe-west-1.cloud.adc-e.uk", + "tags" : [ "fips" ] + } ] + }, + "eu-isoe-west-1-fips" : { + "credentialScope" : { + "region" : "eu-isoe-west-1" + }, + "deprecated" : true, + "hostname" : "kms-fips.eu-isoe-west-1.cloud.adc-e.uk" + } + } + }, + "lakeformation" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "lambda" : { + "endpoints" : { + "eu-isoe-west-1" : { + "variants" : [ { + "hostname" : "lambda.eu-isoe-west-1.api.cloud-aws.adc-e.uk", + "tags" : [ "dualstack" ] + } ] + } + } + }, + "license-manager" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "logs" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "monitoring" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "oam" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "organizations" : { + "endpoints" : { + "aws-iso-e-global" : { + "credentialScope" : { + "region" : "eu-isoe-west-1" + }, + "hostname" : "organizations.eu-isoe-west-1.cloud.adc-e.uk" + } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-iso-e-global" + }, + "pi" : { + "endpoints" : { + "eu-isoe-west-1" : { + "protocols" : [ "https" ] + } + } + }, + "pipes" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "ram" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "rbin" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "rds" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "redshift" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "redshift-serverless" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "resource-groups" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "route53" : { + "endpoints" : { + "aws-iso-e-global" : { + "credentialScope" : { + "region" : "eu-isoe-west-1" + }, + "hostname" : "route53.cloud.adc-e.uk" + } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-iso-e-global" + }, + "route53profiles" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "route53resolver" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "s3" : { + "defaults" : { + "protocols" : [ "http", "https" ], + "signatureVersions" : [ "s3v4" ] + }, + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "savingsplans" : { + "endpoints" : { + "aws-iso-e-global" : { + "credentialScope" : { + "region" : "eu-isoe-west-1" + }, + "hostname" : "savingsplans.cloud.adc-e.uk" + } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-iso-e-global" + }, + "scheduler" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "schemas" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "secretsmanager" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "servicecatalog" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "servicediscovery" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "servicequotas" : { + "defaults" : { + "protocols" : [ "https" ] + }, + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "sns" : { + "defaults" : { + "protocols" : [ "http", "https" ] + }, + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "sqs" : { + "defaults" : { + "protocols" : [ "http", "https" ], + "sslCommonName" : "{region}.queue.{dnsSuffix}" + }, + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "ssm" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "states" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "streams.dynamodb" : { + "defaults" : { + "credentialScope" : { + "service" : "dynamodb" + }, + "protocols" : [ "http", "https" ] + }, + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "sts" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "swf" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "synthetics" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "tagging" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "trustedadvisor" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + }, + "xray" : { + "endpoints" : { + "eu-isoe-west-1" : { } + } + } + } + }, { + "defaults" : { + "hostname" : "{service}.{region}.{dnsSuffix}", + "protocols" : [ "https" ], + "signatureVersions" : [ "v4" ], + "variants" : [ { + "dnsSuffix" : "csp.hci.ic.gov", + "hostname" : "{service}-fips.{region}.{dnsSuffix}", + "tags" : [ "fips" ] + } ] + }, + "dnsSuffix" : "csp.hci.ic.gov", + "partition" : "aws-iso-f", + "partitionName" : "AWS ISOF", + "regionRegex" : "^us\\-isof\\-\\w+\\-\\d+$", + "regions" : { + "us-isof-east-1" : { + "description" : "US ISOF EAST" + }, + "us-isof-south-1" : { + "description" : "US ISOF SOUTH" + } + }, + "services" : { + "access-analyzer" : { + "endpoints" : { + "us-isof-east-1" : { + "variants" : [ { + "hostname" : "access-analyzer.us-isof-east-1.api.aws.hci.ic.gov", + "tags" : [ "dualstack" ] + } ] + }, + "us-isof-south-1" : { + "variants" : [ { + "hostname" : "access-analyzer.us-isof-south-1.api.aws.hci.ic.gov", + "tags" : [ "dualstack" ] + } ] + } + } + }, + "acm" : { "endpoints" : { - "us-iso-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, - "translate" : { + "acm-pca" : { "defaults" : { "protocols" : [ "https" ] }, "endpoints" : { - "us-iso-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, - "workspaces" : { - "endpoints" : { - "us-iso-east-1" : { }, - "us-iso-west-1" : { } - } - } - } - }, { - "defaults" : { - "hostname" : "{service}.{region}.{dnsSuffix}", - "protocols" : [ "https" ], - "signatureVersions" : [ "v4" ], - "variants" : [ { - "dnsSuffix" : "sc2s.sgov.gov", - "hostname" : "{service}-fips.{region}.{dnsSuffix}", - "tags" : [ "fips" ] - } ] - }, - "dnsSuffix" : "sc2s.sgov.gov", - "partition" : "aws-iso-b", - "partitionName" : "AWS ISOB (US)", - "regionRegex" : "^us\\-isob\\-\\w+\\-\\d+$", - "regions" : { - "us-isob-east-1" : { - "description" : "US ISOB East (Ohio)" - } - }, - "services" : { "api.ecr" : { "endpoints" : { - "us-isob-east-1" : { + "us-isof-east-1" : { "credentialScope" : { - "region" : "us-isob-east-1" + "region" : "us-isof-east-1" }, - "hostname" : "api.ecr.us-isob-east-1.sc2s.sgov.gov" + "hostname" : "api.ecr.us-isof-east-1.csp.hci.ic.gov" + }, + "us-isof-south-1" : { + "credentialScope" : { + "region" : "us-isof-south-1" + }, + "hostname" : "api.ecr.us-isof-south-1.csp.hci.ic.gov" } } }, @@ -28439,22 +39523,25 @@ } }, "endpoints" : { - "us-isob-east-1" : { } + "us-isof-south-1" : { } } }, "api.sagemaker" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "appconfig" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "appconfigdata" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "application-autoscaling" : { @@ -28462,12 +39549,20 @@ "protocols" : [ "http", "https" ] }, "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "arc-zonal-shift" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, + "athena" : { + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "autoscaling" : { @@ -28475,87 +39570,193 @@ "protocols" : [ "http", "https" ] }, "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, + "backup" : { + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, + "batch" : { + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, + "budgets" : { + "endpoints" : { + "aws-iso-f-global" : { + "credentialScope" : { + "region" : "us-isof-south-1" + }, + "hostname" : "budgets.global.csp.hci.ic.gov" + }, + "us-isof-south-1" : { + "credentialScope" : { + "region" : "us-isof-south-1" + }, + "hostname" : "budgets.global.csp.hci.ic.gov" + } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-iso-f-global" + }, + "ce" : { + "endpoints" : { + "aws-iso-f-global" : { + "credentialScope" : { + "region" : "us-isof-south-1" + }, + "hostname" : "ce.us-isof-south-1.csp.hci.ic.gov" + } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-iso-f-global" + }, "cloudcontrolapi" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "cloudformation" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "cloudtrail" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, + "cloudtrail-data" : { + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, + "codebuild" : { + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "codedeploy" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, + "codepipeline" : { + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, + "comprehend" : { + "defaults" : { + "protocols" : [ "https" ] + }, + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, + "compute-optimizer" : { + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { + "credentialScope" : { + "region" : "us-isof-south-1" + }, + "hostname" : "compute-optimizer.us-isof-south-1.csp.hci.ic.gov" + } } }, "config" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, + "cost-optimization-hub" : { + "endpoints" : { + "us-isof-south-1" : { + "credentialScope" : { + "region" : "us-isof-south-1" + }, + "hostname" : "cost-optimization-hub.us-isof-south-1.csp.hci.ic.gov" + } } }, "directconnect" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "dlm" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "dms" : { - "defaults" : { - "variants" : [ { - "hostname" : "dms.{region}.{dnsSuffix}", - "tags" : [ "fips" ] - } ] - }, "endpoints" : { "dms" : { "credentialScope" : { - "region" : "us-isob-east-1" + "region" : "us-isof-east-1" }, "deprecated" : true, "variants" : [ { - "hostname" : "dms.us-isob-east-1.sc2s.sgov.gov", + "hostname" : "dms.us-isof-east-1.csp.hci.ic.gov", "tags" : [ "fips" ] } ] }, "dms-fips" : { "credentialScope" : { - "region" : "us-isob-east-1" + "region" : "us-isof-east-1" }, "deprecated" : true, - "hostname" : "dms.us-isob-east-1.sc2s.sgov.gov" + "hostname" : "dms.us-isof-east-1.csp.hci.ic.gov" }, - "us-isob-east-1" : { + "us-isof-east-1" : { "variants" : [ { - "hostname" : "dms.us-isob-east-1.sc2s.sgov.gov", + "hostname" : "dms.us-isof-east-1.csp.hci.ic.gov", "tags" : [ "fips" ] } ] }, - "us-isob-east-1-fips" : { + "us-isof-east-1-fips" : { "credentialScope" : { - "region" : "us-isob-east-1" + "region" : "us-isof-east-1" }, "deprecated" : true, - "hostname" : "dms.us-isob-east-1.sc2s.sgov.gov" + "hostname" : "dms.us-isof-east-1.csp.hci.ic.gov" + }, + "us-isof-south-1" : { + "variants" : [ { + "hostname" : "dms.us-isof-south-1.csp.hci.ic.gov", + "tags" : [ "fips" ] + } ] + }, + "us-isof-south-1-fips" : { + "credentialScope" : { + "region" : "us-isof-south-1" + }, + "deprecated" : true, + "hostname" : "dms.us-isof-south-1.csp.hci.ic.gov" } } }, "ds" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "dynamodb" : { @@ -28563,25 +39764,29 @@ "protocols" : [ "http", "https" ] }, "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "ebs" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "ec2" : { "defaults" : { - "protocols" : [ "http", "https" ] + "protocols" : [ "https" ] }, "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "ecs" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "eks" : { @@ -28589,259 +39794,312 @@ "protocols" : [ "http", "https" ] }, "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "elasticache" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "elasticfilesystem" : { "endpoints" : { - "fips-us-isob-east-1" : { + "fips-us-isof-east-1" : { "credentialScope" : { - "region" : "us-isob-east-1" + "region" : "us-isof-east-1" }, "deprecated" : true, - "hostname" : "elasticfilesystem-fips.us-isob-east-1.sc2s.sgov.gov" + "hostname" : "elasticfilesystem-fips.us-isof-east-1.csp.hci.ic.gov" }, - "us-isob-east-1" : { + "fips-us-isof-south-1" : { + "credentialScope" : { + "region" : "us-isof-south-1" + }, + "deprecated" : true, + "hostname" : "elasticfilesystem-fips.us-isof-south-1.csp.hci.ic.gov" + }, + "us-isof-east-1" : { "variants" : [ { - "hostname" : "elasticfilesystem-fips.us-isob-east-1.sc2s.sgov.gov", + "hostname" : "elasticfilesystem-fips.us-isof-east-1.csp.hci.ic.gov", + "tags" : [ "fips" ] + } ] + }, + "us-isof-south-1" : { + "variants" : [ { + "hostname" : "elasticfilesystem-fips.us-isof-south-1.csp.hci.ic.gov", "tags" : [ "fips" ] } ] } } }, "elasticloadbalancing" : { + "defaults" : { + "protocols" : [ "https" ] + }, "endpoints" : { - "us-isob-east-1" : { - "protocols" : [ "https" ] - } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "elasticmapreduce" : { "endpoints" : { - "fips-us-isob-east-1" : { - "credentialScope" : { - "region" : "us-isob-east-1" - }, - "deprecated" : true, - "hostname" : "elasticmapreduce.us-isob-east-1.sc2s.sgov.gov" - }, - "us-isob-east-1" : { - "variants" : [ { - "hostname" : "elasticmapreduce.us-isob-east-1.sc2s.sgov.gov", - "tags" : [ "fips" ] - } ] - } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "es" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "events" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "firehose" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, - "glacier" : { + "fsx" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, - "health" : { + "glue" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, + "guardduty" : { + "defaults" : { + "protocols" : [ "https" ] + }, + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + }, + "isRegionalized" : true + }, "iam" : { "endpoints" : { - "aws-iso-b-global" : { + "aws-iso-f-global" : { "credentialScope" : { - "region" : "us-isob-east-1" + "region" : "us-isof-south-1" }, - "hostname" : "iam.us-isob-east-1.sc2s.sgov.gov" + "hostname" : "iam.us-isof-south-1.csp.hci.ic.gov" } }, "isRegionalized" : false, - "partitionEndpoint" : "aws-iso-b-global" + "partitionEndpoint" : "aws-iso-f-global" }, "kinesis" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "kms" : { "endpoints" : { "ProdFips" : { "credentialScope" : { - "region" : "us-isob-east-1" + "region" : "us-isof-east-1" }, "deprecated" : true, - "hostname" : "kms-fips.us-isob-east-1.sc2s.sgov.gov" + "hostname" : "kms-fips.us-isof-east-1.csp.hci.ic.gov" }, - "us-isob-east-1" : { + "us-isof-east-1" : { "variants" : [ { - "hostname" : "kms-fips.us-isob-east-1.sc2s.sgov.gov", + "hostname" : "kms-fips.us-isof-east-1.csp.hci.ic.gov", "tags" : [ "fips" ] } ] }, - "us-isob-east-1-fips" : { + "us-isof-east-1-fips" : { "credentialScope" : { - "region" : "us-isob-east-1" + "region" : "us-isof-east-1" }, "deprecated" : true, - "hostname" : "kms-fips.us-isob-east-1.sc2s.sgov.gov" + "hostname" : "kms-fips.us-isof-east-1.csp.hci.ic.gov" + }, + "us-isof-south-1" : { + "variants" : [ { + "hostname" : "kms-fips.us-isof-south-1.csp.hci.ic.gov", + "tags" : [ "fips" ] + } ] + }, + "us-isof-south-1-fips" : { + "credentialScope" : { + "region" : "us-isof-south-1" + }, + "deprecated" : true, + "hostname" : "kms-fips.us-isof-south-1.csp.hci.ic.gov" } } }, + "lakeformation" : { + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, "lambda" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { + "variants" : [ { + "hostname" : "lambda.us-isof-east-1.api.aws.hci.ic.gov", + "tags" : [ "dualstack" ] + } ] + }, + "us-isof-south-1" : { + "variants" : [ { + "hostname" : "lambda.us-isof-south-1.api.aws.hci.ic.gov", + "tags" : [ "dualstack" ] + } ] + } } }, "license-manager" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "logs" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, - "medialive" : { + "metrics.sagemaker" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, - "mediapackage" : { + "monitoring" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, - "metering.marketplace" : { - "defaults" : { - "credentialScope" : { - "service" : "aws-marketplace" - } - }, + "oam" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, - "metrics.sagemaker" : { + "organizations" : { "endpoints" : { - "us-isob-east-1" : { } + "aws-iso-f-global" : { + "credentialScope" : { + "region" : "us-isof-south-1" + }, + "hostname" : "organizations.us-isof-south-1.csp.hci.ic.gov" + } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-iso-f-global" + }, + "pi" : { + "endpoints" : { + "us-isof-east-1" : { + "protocols" : [ "https" ] + }, + "us-isof-south-1" : { + "protocols" : [ "https" ] + } } }, - "monitoring" : { + "pipes" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, - "outposts" : { + "quicksight" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "ram" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "rbin" : { "endpoints" : { - "fips-us-isob-east-1" : { - "credentialScope" : { - "region" : "us-isob-east-1" - }, - "deprecated" : true, - "hostname" : "rbin-fips.us-isob-east-1.sc2s.sgov.gov" - }, - "us-isob-east-1" : { - "variants" : [ { - "hostname" : "rbin-fips.us-isob-east-1.sc2s.sgov.gov", - "tags" : [ "fips" ] - } ] - } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "rds" : { "endpoints" : { - "rds.us-isob-east-1" : { - "credentialScope" : { - "region" : "us-isob-east-1" - }, - "deprecated" : true, - "hostname" : "rds.us-isob-east-1.sc2s.sgov.gov" - }, - "us-isob-east-1" : { - "variants" : [ { - "hostname" : "rds.us-isob-east-1.sc2s.sgov.gov", - "tags" : [ "fips" ] - } ] - }, - "us-isob-east-1-fips" : { - "credentialScope" : { - "region" : "us-isob-east-1" - }, - "deprecated" : true, - "hostname" : "rds.us-isob-east-1.sc2s.sgov.gov" - } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "redshift" : { "endpoints" : { - "fips-us-isob-east-1" : { - "credentialScope" : { - "region" : "us-isob-east-1" - }, - "deprecated" : true, - "hostname" : "redshift-fips.us-isob-east-1.sc2s.sgov.gov" - }, - "us-isob-east-1" : { - "variants" : [ { - "hostname" : "redshift-fips.us-isob-east-1.sc2s.sgov.gov", - "tags" : [ "fips" ] - } ] - } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, + "redshift-serverless" : { + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, + "rekognition" : { + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "resource-groups" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "route53" : { "endpoints" : { - "aws-iso-b-global" : { + "aws-iso-f-global" : { "credentialScope" : { - "region" : "us-isob-east-1" + "region" : "us-isof-south-1" }, - "hostname" : "route53.sc2s.sgov.gov" + "hostname" : "route53.csp.hci.ic.gov" } }, "isRegionalized" : false, - "partitionEndpoint" : "aws-iso-b-global" + "partitionEndpoint" : "aws-iso-f-global" + }, + "route53profiles" : { + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } }, "route53resolver" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "runtime.sagemaker" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "s3" : { @@ -28850,77 +40108,53 @@ "signatureVersions" : [ "s3v4" ] }, "endpoints" : { - "fips-us-isob-east-1" : { - "credentialScope" : { - "region" : "us-isob-east-1" - }, - "deprecated" : true, - "hostname" : "s3-fips.us-isob-east-1.sc2s.sgov.gov" - }, - "us-isob-east-1" : { - "variants" : [ { - "hostname" : "s3-fips.dualstack.us-isob-east-1.sc2s.sgov.gov", - "tags" : [ "dualstack", "fips" ] - }, { - "hostname" : "s3-fips.us-isob-east-1.sc2s.sgov.gov", - "tags" : [ "fips" ] - } ] - } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, - "s3-control" : { - "defaults" : { - "protocols" : [ "https" ], - "signatureVersions" : [ "s3v4" ] - }, + "savingsplans" : { "endpoints" : { - "us-isob-east-1" : { - "credentialScope" : { - "region" : "us-isob-east-1" - }, - "hostname" : "s3-control.us-isob-east-1.sc2s.sgov.gov", - "signatureVersions" : [ "s3v4" ], - "variants" : [ { - "hostname" : "s3-control-fips.dualstack.us-isob-east-1.sc2s.sgov.gov", - "tags" : [ "dualstack", "fips" ] - }, { - "hostname" : "s3-control-fips.us-isob-east-1.sc2s.sgov.gov", - "tags" : [ "fips" ] - }, { - "hostname" : "s3-control.dualstack.us-isob-east-1.sc2s.sgov.gov", - "tags" : [ "dualstack" ] - } ] - }, - "us-isob-east-1-fips" : { + "aws-iso-f-global" : { "credentialScope" : { - "region" : "us-isob-east-1" + "region" : "us-isof-south-1" }, - "deprecated" : true, - "hostname" : "s3-control-fips.us-isob-east-1.sc2s.sgov.gov", - "signatureVersions" : [ "s3v4" ] + "hostname" : "savingsplans.csp.hci.ic.gov" } + }, + "isRegionalized" : false, + "partitionEndpoint" : "aws-iso-f-global" + }, + "scheduler" : { + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, - "s3-outposts" : { + "schemas" : { "endpoints" : { - "fips-us-isob-east-1" : { - "deprecated" : true - }, - "us-isob-east-1" : { - "variants" : [ { - "tags" : [ "fips" ] - } ] - } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "secretsmanager" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, - "snowball" : { + "servicediscovery" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, + "servicequotas" : { + "defaults" : { + "protocols" : [ "https" ] + }, + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "sns" : { @@ -28928,7 +40162,8 @@ "protocols" : [ "http", "https" ] }, "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "sqs" : { @@ -28937,43 +40172,46 @@ "sslCommonName" : "{region}.queue.{dnsSuffix}" }, "endpoints" : { - "us-isob-east-1" : { } - } - }, - "ssm" : { - "endpoints" : { - "us-isob-east-1" : { } - } - }, - "states" : { - "endpoints" : { - "us-isob-east-1" : { } - } - }, - "storagegateway" : { - "endpoints" : { - "fips" : { + "fips-us-isof-east-1" : { "credentialScope" : { - "region" : "us-isob-east-1" + "region" : "us-isof-east-1" }, "deprecated" : true, - "hostname" : "storagegateway-fips.us-isob-east-1.sc2s.sgov.gov" + "hostname" : "sqs.us-isof-east-1.csp.hci.ic.gov" }, - "us-isob-east-1" : { + "fips-us-isof-south-1" : { + "credentialScope" : { + "region" : "us-isof-south-1" + }, + "deprecated" : true, + "hostname" : "sqs.us-isof-south-1.csp.hci.ic.gov" + }, + "us-isof-east-1" : { "variants" : [ { - "hostname" : "storagegateway-fips.us-isob-east-1.sc2s.sgov.gov", + "hostname" : "sqs.us-isof-east-1.csp.hci.ic.gov", "tags" : [ "fips" ] } ] }, - "us-isob-east-1-fips" : { - "credentialScope" : { - "region" : "us-isob-east-1" - }, - "deprecated" : true, - "hostname" : "storagegateway-fips.us-isob-east-1.sc2s.sgov.gov" + "us-isof-south-1" : { + "variants" : [ { + "hostname" : "sqs.us-isof-south-1.csp.hci.ic.gov", + "tags" : [ "fips" ] + } ] } } }, + "ssm" : { + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, + "states" : { + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, "streams.dynamodb" : { "defaults" : { "credentialScope" : { @@ -28982,43 +40220,73 @@ "protocols" : [ "http", "https" ] }, "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "sts" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, - "support" : { - "endpoints" : { - "aws-iso-b-global" : { - "credentialScope" : { - "region" : "us-isob-east-1" - }, - "hostname" : "support.us-isob-east-1.sc2s.sgov.gov" - } - }, - "partitionEndpoint" : "aws-iso-b-global" - }, "swf" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "synthetics" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, "tagging" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } }, - "workspaces" : { + "textract" : { "endpoints" : { - "us-isob-east-1" : { } + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, + "transcribe" : { + "defaults" : { + "protocols" : [ "https" ] + }, + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, + "transcribestreaming" : { + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, + "translate" : { + "defaults" : { + "protocols" : [ "https" ] + }, + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } + } + }, + "trustedadvisor" : { + "endpoints" : { + "us-isof-south-1" : { } + } + }, + "xray" : { + "endpoints" : { + "us-isof-east-1" : { }, + "us-isof-south-1" : { } } } } @@ -29028,38 +40296,21 @@ "protocols" : [ "https" ], "signatureVersions" : [ "v4" ], "variants" : [ { - "dnsSuffix" : "cloud.adc-e.uk", + "dnsSuffix" : "amazonaws.eu", "hostname" : "{service}-fips.{region}.{dnsSuffix}", "tags" : [ "fips" ] } ] }, - "dnsSuffix" : "cloud.adc-e.uk", - "partition" : "aws-iso-e", - "partitionName" : "AWS ISOE (Europe)", - "regionRegex" : "^eu\\-isoe\\-\\w+\\-\\d+$", + "dnsSuffix" : "amazonaws.eu", + "partition" : "aws-eusc", + "partitionName" : "AWS EUSC", + "regionRegex" : "^eusc\\-(de)\\-\\w+\\-\\d+$", "regions" : { - "eu-isoe-west-1" : { - "description" : "EU ISOE West" + "eusc-de-east-1" : { + "description" : "EU (Germany)" } }, "services" : { } - }, { - "defaults" : { - "hostname" : "{service}.{region}.{dnsSuffix}", - "protocols" : [ "https" ], - "signatureVersions" : [ "v4" ], - "variants" : [ { - "dnsSuffix" : "csp.hci.ic.gov", - "hostname" : "{service}-fips.{region}.{dnsSuffix}", - "tags" : [ "fips" ] - } ] - }, - "dnsSuffix" : "csp.hci.ic.gov", - "partition" : "aws-iso-f", - "partitionName" : "AWS ISOF", - "regionRegex" : "^us\\-isof\\-\\w+\\-\\d+$", - "regions" : { }, - "services" : { } } ], "version" : 3 } diff --git a/aws/sdk/aws-models/sdk-partitions.json b/aws/sdk/aws-models/sdk-partitions.json index a7657ab07a1..73204082a9c 100644 --- a/aws/sdk/aws-models/sdk-partitions.json +++ b/aws/sdk/aws-models/sdk-partitions.json @@ -9,7 +9,7 @@ "supportsDualStack" : true, "supportsFIPS" : true }, - "regionRegex" : "^(us|eu|ap|sa|ca|me|af|il)\\-\\w+\\-\\d+$", + "regionRegex" : "^(us|eu|ap|sa|ca|me|af|il|mx)\\-\\w+\\-\\d+$", "regions" : { "af-south-1" : { "description" : "Africa (Cape Town)" @@ -17,6 +17,9 @@ "ap-east-1" : { "description" : "Asia Pacific (Hong Kong)" }, + "ap-east-2" : { + "description" : "Asia Pacific (Taipei)" + }, "ap-northeast-1" : { "description" : "Asia Pacific (Tokyo)" }, @@ -44,8 +47,17 @@ "ap-southeast-4" : { "description" : "Asia Pacific (Melbourne)" }, + "ap-southeast-5" : { + "description" : "Asia Pacific (Malaysia)" + }, + "ap-southeast-6" : { + "description" : "Asia Pacific (New Zealand)" + }, + "ap-southeast-7" : { + "description" : "Asia Pacific (Thailand)" + }, "aws-global" : { - "description" : "AWS Standard global region" + "description" : "aws global region" }, "ca-central-1" : { "description" : "Canada (Central)" @@ -86,6 +98,9 @@ "me-south-1" : { "description" : "Middle East (Bahrain)" }, + "mx-central-1" : { + "description" : "Mexico (Central)" + }, "sa-east-1" : { "description" : "South America (Sao Paulo)" }, @@ -115,7 +130,7 @@ "regionRegex" : "^cn\\-\\w+\\-\\d+$", "regions" : { "aws-cn-global" : { - "description" : "AWS China global region" + "description" : "aws-cn global region" }, "cn-north-1" : { "description" : "China (Beijing)" @@ -125,41 +140,35 @@ } } }, { - "id" : "aws-us-gov", + "id" : "aws-eusc", "outputs" : { - "dnsSuffix" : "amazonaws.com", - "dualStackDnsSuffix" : "api.aws", - "implicitGlobalRegion" : "us-gov-west-1", - "name" : "aws-us-gov", + "dnsSuffix" : "amazonaws.eu", + "dualStackDnsSuffix" : "api.amazonwebservices.eu", + "implicitGlobalRegion" : "eusc-de-east-1", + "name" : "aws-eusc", "supportsDualStack" : true, "supportsFIPS" : true }, - "regionRegex" : "^us\\-gov\\-\\w+\\-\\d+$", + "regionRegex" : "^eusc\\-(de)\\-\\w+\\-\\d+$", "regions" : { - "aws-us-gov-global" : { - "description" : "AWS GovCloud (US) global region" - }, - "us-gov-east-1" : { - "description" : "AWS GovCloud (US-East)" - }, - "us-gov-west-1" : { - "description" : "AWS GovCloud (US-West)" + "eusc-de-east-1" : { + "description" : "EU (Germany)" } } }, { "id" : "aws-iso", "outputs" : { "dnsSuffix" : "c2s.ic.gov", - "dualStackDnsSuffix" : "c2s.ic.gov", + "dualStackDnsSuffix" : "api.aws.ic.gov", "implicitGlobalRegion" : "us-iso-east-1", "name" : "aws-iso", - "supportsDualStack" : false, + "supportsDualStack" : true, "supportsFIPS" : true }, "regionRegex" : "^us\\-iso\\-\\w+\\-\\d+$", "regions" : { "aws-iso-global" : { - "description" : "AWS ISO (US) global region" + "description" : "aws-iso global region" }, "us-iso-east-1" : { "description" : "US ISO East" @@ -172,16 +181,16 @@ "id" : "aws-iso-b", "outputs" : { "dnsSuffix" : "sc2s.sgov.gov", - "dualStackDnsSuffix" : "sc2s.sgov.gov", + "dualStackDnsSuffix" : "api.aws.scloud", "implicitGlobalRegion" : "us-isob-east-1", "name" : "aws-iso-b", - "supportsDualStack" : false, + "supportsDualStack" : true, "supportsFIPS" : true }, "regionRegex" : "^us\\-isob\\-\\w+\\-\\d+$", "regions" : { "aws-iso-b-global" : { - "description" : "AWS ISOB (US) global region" + "description" : "aws-iso-b global region" }, "us-isob-east-1" : { "description" : "US ISOB East (Ohio)" @@ -191,14 +200,17 @@ "id" : "aws-iso-e", "outputs" : { "dnsSuffix" : "cloud.adc-e.uk", - "dualStackDnsSuffix" : "cloud.adc-e.uk", + "dualStackDnsSuffix" : "api.cloud-aws.adc-e.uk", "implicitGlobalRegion" : "eu-isoe-west-1", "name" : "aws-iso-e", - "supportsDualStack" : false, + "supportsDualStack" : true, "supportsFIPS" : true }, "regionRegex" : "^eu\\-isoe\\-\\w+\\-\\d+$", "regions" : { + "aws-iso-e-global" : { + "description" : "aws-iso-e global region" + }, "eu-isoe-west-1" : { "description" : "EU ISOE West" } @@ -207,14 +219,46 @@ "id" : "aws-iso-f", "outputs" : { "dnsSuffix" : "csp.hci.ic.gov", - "dualStackDnsSuffix" : "csp.hci.ic.gov", + "dualStackDnsSuffix" : "api.aws.hci.ic.gov", "implicitGlobalRegion" : "us-isof-south-1", "name" : "aws-iso-f", - "supportsDualStack" : false, + "supportsDualStack" : true, "supportsFIPS" : true }, "regionRegex" : "^us\\-isof\\-\\w+\\-\\d+$", - "regions" : { } + "regions" : { + "aws-iso-f-global" : { + "description" : "aws-iso-f global region" + }, + "us-isof-east-1" : { + "description" : "US ISOF EAST" + }, + "us-isof-south-1" : { + "description" : "US ISOF SOUTH" + } + } + }, { + "id" : "aws-us-gov", + "outputs" : { + "dnsSuffix" : "amazonaws.com", + "dualStackDnsSuffix" : "api.aws", + "implicitGlobalRegion" : "us-gov-west-1", + "name" : "aws-us-gov", + "supportsDualStack" : true, + "supportsFIPS" : true + }, + "regionRegex" : "^us\\-gov\\-\\w+\\-\\d+$", + "regions" : { + "aws-us-gov-global" : { + "description" : "aws-us-gov global region" + }, + "us-gov-east-1" : { + "description" : "AWS GovCloud (US-East)" + }, + "us-gov-west-1" : { + "description" : "AWS GovCloud (US-West)" + } + } } ], "version" : "1.1" } diff --git a/aws/sdk/aws-models/sso-oidc.json b/aws/sdk/aws-models/sso-oidc.json index ad40043c8de..f3283f25f0a 100644 --- a/aws/sdk/aws-models/sso-oidc.json +++ b/aws/sdk/aws-models/sso-oidc.json @@ -58,7 +58,7 @@ "name": "sso-oauth" }, "aws.protocols#restJson1": {}, - "smithy.api#documentation": "

IAM Identity Center OpenID Connect (OIDC) is a web service that enables a client (such as CLI\n or a native application) to register with IAM Identity Center. The service also enables the client to\n fetch the user’s access token upon successful authentication and authorization with\n IAM Identity Center.

\n \n

IAM Identity Center uses the sso and identitystore API namespaces.

\n
\n

\n Considerations for Using This Guide\n

\n

Before you begin using this guide, we recommend that you first review the following\n important information about how the IAM Identity Center OIDC service works.

\n
    \n
  • \n

    The IAM Identity Center OIDC service currently implements only the portions of the OAuth 2.0 Device\n Authorization Grant standard (https://tools.ietf.org/html/rfc8628) that are necessary to enable single\n sign-on authentication with the CLI.

    \n
  • \n
  • \n

    With older versions of the CLI, the service only emits OIDC access tokens, so to\n obtain a new token, users must explicitly re-authenticate. To access the OIDC flow that\n supports token refresh and doesn’t require re-authentication, update to the latest CLI\n version (1.27.10 for CLI V1 and 2.9.0 for CLI V2) with support for OIDC token refresh and\n configurable IAM Identity Center session durations. For more information, see Configure Amazon Web Services access portal session duration .

    \n
  • \n
  • \n

    The access tokens provided by this service grant access to all Amazon Web Services account\n entitlements assigned to an IAM Identity Center user, not just a particular application.

    \n
  • \n
  • \n

    The documentation in this guide does not describe the mechanism to convert the access\n token into Amazon Web Services Auth (“sigv4”) credentials for use with IAM-protected Amazon Web Services service\n endpoints. For more information, see GetRoleCredentials in the IAM Identity Center Portal API Reference\n Guide.

    \n
  • \n
\n

For general information about IAM Identity Center, see What is\n IAM Identity Center? in the IAM Identity Center User Guide.

", + "smithy.api#documentation": "

IAM Identity Center OpenID Connect (OIDC) is a web service that enables a client (such as CLI or a\n native application) to register with IAM Identity Center. The service also enables the client to fetch the\n user’s access token upon successful authentication and authorization with IAM Identity Center.

\n

\n API namespaces\n

\n

IAM Identity Center uses the sso and identitystore API namespaces. IAM Identity Center\n OpenID Connect uses the sso-oauth namespace.

\n

\n Considerations for using this guide\n

\n

Before you begin using this guide, we recommend that you first review the following\n important information about how the IAM Identity Center OIDC service works.

\n
    \n
  • \n

    The IAM Identity Center OIDC service currently implements only the portions of the OAuth 2.0 Device\n Authorization Grant standard (https://tools.ietf.org/html/rfc8628) that are necessary to enable single\n sign-on authentication with the CLI.

    \n
  • \n
  • \n

    With older versions of the CLI, the service only emits OIDC access tokens, so to\n obtain a new token, users must explicitly re-authenticate. To access the OIDC flow that\n supports token refresh and doesn’t require re-authentication, update to the latest CLI\n version (1.27.10 for CLI V1 and 2.9.0 for CLI V2) with support for OIDC token refresh\n and configurable IAM Identity Center session durations. For more information, see Configure Amazon Web Services access portal session duration .

    \n
  • \n
  • \n

    The access tokens provided by this service grant access to all Amazon Web Services account\n entitlements assigned to an IAM Identity Center user, not just a particular application.

    \n
  • \n
  • \n

    The documentation in this guide does not describe the mechanism to convert the access\n token into Amazon Web Services Auth (“sigv4”) credentials for use with IAM-protected Amazon Web Services service\n endpoints. For more information, see GetRoleCredentials in the IAM Identity Center Portal API Reference\n Guide.

    \n
  • \n
\n

For general information about IAM Identity Center, see What is\n IAM Identity Center? in the IAM Identity Center User Guide.

", "smithy.api#title": "AWS SSO OIDC", "smithy.rules#endpointRuleSet": { "version": "1.0", @@ -804,17 +804,6 @@ "UseDualStack": true } }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -828,17 +817,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -852,17 +830,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -876,17 +843,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -968,13 +924,19 @@ "error": { "target": "com.amazonaws.ssooidc#Error", "traits": { - "smithy.api#documentation": "

Single error code.\n For this exception the value will be access_denied.

" + "smithy.api#documentation": "

Single error code. For this exception the value will be access_denied.

" + } + }, + "reason": { + "target": "com.amazonaws.ssooidc#AccessDeniedExceptionReason", + "traits": { + "smithy.api#documentation": "

A string that uniquely identifies a reason for the error.

" } }, "error_description": { "target": "com.amazonaws.ssooidc#ErrorDescription", "traits": { - "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the\n client developer in understanding the error that occurred.

" + "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the client developer\n in understanding the error that occurred.

" } } }, @@ -984,6 +946,17 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.ssooidc#AccessDeniedExceptionReason": { + "type": "enum", + "members": { + "KMS_ACCESS_DENIED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KMS_AccessDeniedException" + } + } + } + }, "com.amazonaws.ssooidc#AccessToken": { "type": "string", "traits": { @@ -1008,13 +981,13 @@ "error": { "target": "com.amazonaws.ssooidc#Error", "traits": { - "smithy.api#documentation": "

Single error code.\n For this exception the value will be authorization_pending.

" + "smithy.api#documentation": "

Single error code. For this exception the value will be\n authorization_pending.

" } }, "error_description": { "target": "com.amazonaws.ssooidc#ErrorDescription", "traits": { - "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the\n client developer in understanding the error that occurred.

" + "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the client developer\n in understanding the error that occurred.

" } } }, @@ -1024,6 +997,20 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.ssooidc#AwsAdditionalDetails": { + "type": "structure", + "members": { + "identityContext": { + "target": "com.amazonaws.ssooidc#IdentityContext", + "traits": { + "smithy.api#documentation": "

The trusted context assertion is signed and encrypted by STS. It provides access to\n sts:identity_context claim in the idToken without JWT\n parsing

\n

Identity context comprises information that Amazon Web Services services use to make authorization\n decisions when they receive requests.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

This structure contains Amazon Web Services-specific parameter extensions and the identity context.

" + } + }, "com.amazonaws.ssooidc#ClientId": { "type": "string" }, @@ -1090,7 +1077,7 @@ ], "traits": { "smithy.api#auth": [], - "smithy.api#documentation": "

Creates and returns access and refresh tokens for clients that are authenticated using\n client secrets. The access token can be used to fetch short-term credentials for the assigned\n AWS accounts or to access application APIs using bearer authentication.

", + "smithy.api#documentation": "

Creates and returns access and refresh tokens for clients that are authenticated using\n client secrets. The access token can be used to fetch short-lived credentials for the assigned\n AWS accounts or to access application APIs using bearer authentication.

", "smithy.api#examples": [ { "title": "Call OAuth/OIDC /token endpoint for Device Code grant with Secret authentication", @@ -1156,44 +1143,44 @@ "grantType": { "target": "com.amazonaws.ssooidc#GrantType", "traits": { - "smithy.api#documentation": "

Supports the following OAuth grant types: Device Code and Refresh Token.\n Specify either of the following values, depending on the grant type that you want:

\n

* Device Code - urn:ietf:params:oauth:grant-type:device_code\n

\n

* Refresh Token - refresh_token\n

\n

For information about how to obtain the device code, see the StartDeviceAuthorization topic.

", + "smithy.api#documentation": "

Supports the following OAuth grant types: Authorization Code, Device Code, and Refresh\n Token. Specify one of the following values, depending on the grant type that you want:

\n

* Authorization Code - authorization_code\n

\n

* Device Code - urn:ietf:params:oauth:grant-type:device_code\n

\n

* Refresh Token - refresh_token\n

", "smithy.api#required": {} } }, "deviceCode": { "target": "com.amazonaws.ssooidc#DeviceCode", "traits": { - "smithy.api#documentation": "

Used only when calling this API for the Device Code grant type. This short-term code is\n used to identify this authorization request. This comes from the result of the\n StartDeviceAuthorization API.

" + "smithy.api#documentation": "

Used only when calling this API for the Device Code grant type. This short-lived code is\n used to identify this authorization request. This comes from the result of the StartDeviceAuthorization API.

" } }, "code": { "target": "com.amazonaws.ssooidc#AuthCode", "traits": { - "smithy.api#documentation": "

Used only when calling this API for the Authorization Code grant type. The short-term code is\n used to identify this authorization request. This grant type is currently unsupported for the\n CreateToken API.

" + "smithy.api#documentation": "

Used only when calling this API for the Authorization Code grant type. The short-lived\n code is used to identify this authorization request.

" } }, "refreshToken": { "target": "com.amazonaws.ssooidc#RefreshToken", "traits": { - "smithy.api#documentation": "

Used only when calling this API for the Refresh Token grant type. This token is used to\n refresh short-term tokens, such as the access token, that might expire.

\n

For more information about the features and limitations of the current IAM Identity Center OIDC\n implementation, see Considerations for Using this Guide in the IAM Identity Center\n OIDC API Reference.

" + "smithy.api#documentation": "

Used only when calling this API for the Refresh Token grant type. This token is used to\n refresh short-lived tokens, such as the access token, that might expire.

\n

For more information about the features and limitations of the current IAM Identity Center OIDC\n implementation, see Considerations for Using this Guide in the IAM Identity Center\n OIDC API Reference.

" } }, "scope": { "target": "com.amazonaws.ssooidc#Scopes", "traits": { - "smithy.api#documentation": "

The list of scopes for which authorization is requested. The access token that is issued\n is limited to the scopes that are granted. If this value is not specified, IAM Identity Center authorizes\n all scopes that are configured for the client during the call to\n RegisterClient.

" + "smithy.api#documentation": "

The list of scopes for which authorization is requested. This parameter has no effect; the access token will always include all scopes configured during client registration.

" } }, "redirectUri": { "target": "com.amazonaws.ssooidc#URI", "traits": { - "smithy.api#documentation": "

Used only when calling this API for the Authorization Code grant type. This value specifies\n the location of the client or application that has registered to receive the authorization\n code.

" + "smithy.api#documentation": "

Used only when calling this API for the Authorization Code grant type. This value\n specifies the location of the client or application that has registered to receive the\n authorization code.

" } }, "codeVerifier": { "target": "com.amazonaws.ssooidc#CodeVerifier", "traits": { - "smithy.api#documentation": "

Used only when calling this API for the Authorization Code grant type. This value is generated\n by the client and presented to validate the original code challenge value the client passed at\n authorization time.

" + "smithy.api#documentation": "

Used only when calling this API for the Authorization Code grant type. This value is\n generated by the client and presented to validate the original code challenge value the client\n passed at authorization time.

" } } }, @@ -1226,13 +1213,13 @@ "refreshToken": { "target": "com.amazonaws.ssooidc#RefreshToken", "traits": { - "smithy.api#documentation": "

A token that, if present, can be used to refresh a previously issued access token that\n might have expired.

\n

For more\n information about the features and limitations of the current IAM Identity Center OIDC implementation,\n see Considerations for Using this Guide in the IAM Identity Center\n OIDC API Reference.

" + "smithy.api#documentation": "

A token that, if present, can be used to refresh a previously issued access token that\n might have expired.

\n

For more information about the features and limitations of the current IAM Identity Center OIDC\n implementation, see Considerations for Using this Guide in the IAM Identity Center\n OIDC API Reference.

" } }, "idToken": { "target": "com.amazonaws.ssooidc#IdToken", "traits": { - "smithy.api#documentation": "

The idToken is not implemented or supported. For more information about the\n features and limitations of the current IAM Identity Center OIDC implementation, see Considerations\n for Using this Guide in the IAM Identity Center\n OIDC API Reference.

\n

A JSON Web Token (JWT) that identifies who is associated with the issued access token.\n

" + "smithy.api#documentation": "

The idToken is not implemented or supported. For more information about the\n features and limitations of the current IAM Identity Center OIDC implementation, see\n Considerations for Using this Guide in the IAM Identity Center\n OIDC API Reference.

\n

A JSON Web Token (JWT) that identifies who is associated with the issued access token.\n

" } } }, @@ -1287,7 +1274,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates and returns access and refresh tokens for clients and applications that are\n authenticated using IAM entities. The access token can be used to fetch short-term credentials\n for the assigned Amazon Web Services accounts or to access application APIs using bearer\n authentication.

", + "smithy.api#documentation": "

Creates and returns access and refresh tokens for authorized client applications that are\n authenticated using any IAM entity, such as a service\n role or user. These tokens might contain defined scopes that specify permissions such as read:profile or write:data. Through downscoping, you can use the scopes parameter to request tokens with reduced permissions compared to the original client application's permissions or, if applicable, the refresh token's scopes. The access token can be used to fetch short-lived credentials for the assigned\n Amazon Web Services accounts or to access application APIs using bearer authentication.

\n \n

This API is used with Signature Version 4. For more information, see Amazon Web Services Signature\n Version 4 for API Requests.

\n
", "smithy.api#examples": [ { "title": "Call OAuth/OIDC /token endpoint for Authorization Code grant with IAM authentication", @@ -1314,44 +1301,50 @@ "openid", "aws", "sts:identity_context" - ] + ], + "awsAdditionalDetails": { + "identityContext": "EXAMPLEIDENTITYCONTEXT" + } } }, { - "title": "Call OAuth/OIDC /token endpoint for Refresh Token grant with IAM authentication", + "title": "Call OAuth/OIDC /token endpoint for JWT Bearer grant with IAM authentication", "documentation": "", "input": { "clientId": "arn:aws:sso::123456789012:application/ssoins-111111111111/apl-222222222222", - "grantType": "refresh_token", - "refreshToken": "aorvJYubGpU6i91YnH7Mfo-AT2fIVa1zCfA_Rvq9yjVKIP3onFmmykuQ7E93y2I-9Nyj-A_sVvMufaLNL0bqnDRtgAkc0:MGUCMFrRsktMRVlWaOR70XGMFGLL0SlcCw4DiYveIiOVx1uK9BbD0gvAddsW3UTLozXKMgIxAJ3qxUvjpnlLIOaaKOoa/FuNgqJVvr9GMwDtnAtlh9iZzAkEXAMPLEREFRESHTOKEN" + "grantType": "urn:ietf:params:oauth:grant-type:jwt-bearer", + "assertion": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IjFMVE16YWtpaGlSbGFfOHoyQkVKVlhlV01xbyJ9.eyJ2ZXIiOiIyLjAiLCJpc3MiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vOTEyMjA0MGQtNmM2Ny00YzViLWIxMTItMzZhMzA0YjY2ZGFkL3YyLjAiLCJzdWIiOiJBQUFBQUFBQUFBQUFBQUFBQUFBQUFJa3pxRlZyU2FTYUZIeTc4MmJidGFRIiwiYXVkIjoiNmNiMDQwMTgtYTNmNS00NmE3LWI5OTUtOTQwYzc4ZjVhZWYzIiwiZXhwIjoxNTM2MzYxNDExLCJpYXQiOjE1MzYyNzQ3MTEsIm5iZiI6MTUzNjI3NDcxMSwibmFtZSI6IkFiZSBMaW5jb2xuIiwicHJlZmVycmVkX3VzZXJuYW1lIjoiQWJlTGlAbWljcm9zb2Z0LmNvbSIsIm9pZCI6IjAwMDAwMDAwLTAwMDAtMDAwMC02NmYzLTMzMzJlY2E3ZWE4MSIsInRpZCI6IjkxMjIwNDBkLTZjNjctNGM1Yi1iMTEyLTM2YTMwNGI2NmRhZCIsIm5vbmNlIjoiMTIzNTIzIiwiYWlvIjoiRGYyVVZYTDFpeCFsTUNXTVNPSkJjRmF0emNHZnZGR2hqS3Y4cTVnMHg3MzJkUjVNQjVCaXN2R1FPN1lXQnlqZDhpUURMcSFlR2JJRGFreXA1bW5PcmNkcUhlWVNubHRlcFFtUnA2QUlaOGpZIn0.1AFWW-Ck5nROwSlltm7GzZvDwUkqvhSQpm55TQsmVo9Y59cLhRXpvB8n-55HCr9Z6G_31_UbeUkoz612I2j_Sm9FFShSDDjoaLQr54CreGIJvjtmS3EkK9a7SJBbcpL1MpUtlfygow39tFjY7EVNW9plWUvRrTgVk7lYLprvfzw-CIqw3gHC-T7IK_m_xkr08INERBtaecwhTeN4chPC4W3jdmw_lIxzC48YoQ0dB1L9-ImX98Egypfrlbm0IBL5spFzL6JDZIRRJOu8vecJvj1mq-IUhGt0MacxX8jdxYLP-KUu2d9MbNKpCKJuZ7p8gwTL5B7NlUdh_dmSviPWrw" }, "output": { "accessToken": "aoal-YigITUDiNX1xZwOMXM5MxOWDL0E0jg9P6_C_jKQPxS_SKCP6f0kh1Up4g7TtvQqkMnD-GJiU_S1gvug6SrggAkc0:MGYCMQD3IatVjV7jAJU91kK3PkS/SfA2wtgWzOgZWDOR7sDGN9t0phCZz5It/aes/3C1Zj0CMQCKWOgRaiz6AIhza3DSXQNMLjRKXC8F8ceCsHlgYLMZ7hZidEXAMPLEACCESSTOKEN", "tokenType": "Bearer", "expiresIn": 1579729529, "refreshToken": "aorvJYubGpU6i91YnH7Mfo-AT2fIVa1zCfA_Rvq9yjVKIP3onFmmykuQ7E93y2I-9Nyj-A_sVvMufaLNL0bqnDRtgAkc0:MGUCMFrRsktMRVlWaOR70XGMFGLL0SlcCw4DiYveIiOVx1uK9BbD0gvAddsW3UTLozXKMgIxAJ3qxUvjpnlLIOaaKOoa/FuNgqJVvr9GMwDtnAtlh9iZzAkEXAMPLEREFRESHTOKEN", + "idToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhd3M6aWRlbnRpdHlfc3RvcmVfaWQiOiJkLTMzMzMzMzMzMzMiLCJzdWIiOiI3MzA0NDhmMi1lMGExLTcwYTctYzk1NC0wMDAwMDAwMDAwMDAiLCJhd3M6aW5zdGFuY2VfYWNjb3VudCI6IjExMTExMTExMTExMSIsInN0czppZGVudGl0eV9jb250ZXh0IjoiRVhBTVBMRUlERU5USVRZQ09OVEVYVCIsInN0czphdWRpdF9jb250ZXh0IjoiRVhBTVBMRUFVRElUQ09OVEVYVCIsImlzcyI6Imh0dHBzOi8vaWRlbnRpdHljZW50ZXIuYW1hem9uYXdzLmNvbS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmlkZW50aXR5X3N0b3JlX2FybiI6ImFybjphd3M6aWRlbnRpdHlzdG9yZTo6MTExMTExMTExMTExOmlkZW50aXR5c3RvcmUvZC0zMzMzMzMzMzMzIiwiYXVkIjoiYXJuOmF3czpzc286OjEyMzQ1Njc4OTAxMjphcHBsaWNhdGlvbi9zc29pbnMtMTExMTExMTExMTExL2FwbC0yMjIyMjIyMjIyMjIiLCJhd3M6aW5zdGFuY2VfYXJuIjoiYXJuOmF3czpzc286OjppbnN0YW5jZS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmNyZWRlbnRpYWxfaWQiOiJfWlIyTjZhVkJqMjdGUEtheWpfcEtwVjc3QVBERl80MXB4ZXRfWWpJdUpONlVJR2RBdkpFWEFNUExFQ1JFRElEIiwiYXV0aF90aW1lIjoiMjAyMC0wMS0yMlQxMjo0NToyOVoiLCJleHAiOjE1Nzk3Mjk1MjksImlhdCI6MTU3OTcyNTkyOX0.Xyah6qbk78qThzJ41iFU2yfGuRqqtKXHrJYwQ8L9Ip0", "issuedTokenType": "urn:ietf:params:oauth:token-type:refresh_token", "scope": [ "openid", "aws", "sts:identity_context" - ] + ], + "awsAdditionalDetails": { + "identityContext": "EXAMPLEIDENTITYCONTEXT" + } } }, { - "title": "Call OAuth/OIDC /token endpoint for JWT Bearer grant with IAM authentication", + "title": "Call OAuth/OIDC /token endpoint for Refresh Token grant with IAM authentication", "documentation": "", "input": { "clientId": "arn:aws:sso::123456789012:application/ssoins-111111111111/apl-222222222222", - "grantType": "urn:ietf:params:oauth:grant-type:jwt-bearer", - "assertion": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IjFMVE16YWtpaGlSbGFfOHoyQkVKVlhlV01xbyJ9.eyJ2ZXIiOiIyLjAiLCJpc3MiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vOTEyMjA0MGQtNmM2Ny00YzViLWIxMTItMzZhMzA0YjY2ZGFkL3YyLjAiLCJzdWIiOiJBQUFBQUFBQUFBQUFBQUFBQUFBQUFJa3pxRlZyU2FTYUZIeTc4MmJidGFRIiwiYXVkIjoiNmNiMDQwMTgtYTNmNS00NmE3LWI5OTUtOTQwYzc4ZjVhZWYzIiwiZXhwIjoxNTM2MzYxNDExLCJpYXQiOjE1MzYyNzQ3MTEsIm5iZiI6MTUzNjI3NDcxMSwibmFtZSI6IkFiZSBMaW5jb2xuIiwicHJlZmVycmVkX3VzZXJuYW1lIjoiQWJlTGlAbWljcm9zb2Z0LmNvbSIsIm9pZCI6IjAwMDAwMDAwLTAwMDAtMDAwMC02NmYzLTMzMzJlY2E3ZWE4MSIsInRpZCI6IjkxMjIwNDBkLTZjNjctNGM1Yi1iMTEyLTM2YTMwNGI2NmRhZCIsIm5vbmNlIjoiMTIzNTIzIiwiYWlvIjoiRGYyVVZYTDFpeCFsTUNXTVNPSkJjRmF0emNHZnZGR2hqS3Y4cTVnMHg3MzJkUjVNQjVCaXN2R1FPN1lXQnlqZDhpUURMcSFlR2JJRGFreXA1bW5PcmNkcUhlWVNubHRlcFFtUnA2QUlaOGpZIn0.1AFWW-Ck5nROwSlltm7GzZvDwUkqvhSQpm55TQsmVo9Y59cLhRXpvB8n-55HCr9Z6G_31_UbeUkoz612I2j_Sm9FFShSDDjoaLQr54CreGIJvjtmS3EkK9a7SJBbcpL1MpUtlfygow39tFjY7EVNW9plWUvRrTgVk7lYLprvfzw-CIqw3gHC-T7IK_m_xkr08INERBtaecwhTeN4chPC4W3jdmw_lIxzC48YoQ0dB1L9-ImX98Egypfrlbm0IBL5spFzL6JDZIRRJOu8vecJvj1mq-IUhGt0MacxX8jdxYLP-KUu2d9MbNKpCKJuZ7p8gwTL5B7NlUdh_dmSviPWrw" + "grantType": "refresh_token", + "refreshToken": "aorvJYubGpU6i91YnH7Mfo-AT2fIVa1zCfA_Rvq9yjVKIP3onFmmykuQ7E93y2I-9Nyj-A_sVvMufaLNL0bqnDRtgAkc0:MGUCMFrRsktMRVlWaOR70XGMFGLL0SlcCw4DiYveIiOVx1uK9BbD0gvAddsW3UTLozXKMgIxAJ3qxUvjpnlLIOaaKOoa/FuNgqJVvr9GMwDtnAtlh9iZzAkEXAMPLEREFRESHTOKEN" }, "output": { "accessToken": "aoal-YigITUDiNX1xZwOMXM5MxOWDL0E0jg9P6_C_jKQPxS_SKCP6f0kh1Up4g7TtvQqkMnD-GJiU_S1gvug6SrggAkc0:MGYCMQD3IatVjV7jAJU91kK3PkS/SfA2wtgWzOgZWDOR7sDGN9t0phCZz5It/aes/3C1Zj0CMQCKWOgRaiz6AIhza3DSXQNMLjRKXC8F8ceCsHlgYLMZ7hZidEXAMPLEACCESSTOKEN", "tokenType": "Bearer", "expiresIn": 1579729529, "refreshToken": "aorvJYubGpU6i91YnH7Mfo-AT2fIVa1zCfA_Rvq9yjVKIP3onFmmykuQ7E93y2I-9Nyj-A_sVvMufaLNL0bqnDRtgAkc0:MGUCMFrRsktMRVlWaOR70XGMFGLL0SlcCw4DiYveIiOVx1uK9BbD0gvAddsW3UTLozXKMgIxAJ3qxUvjpnlLIOaaKOoa/FuNgqJVvr9GMwDtnAtlh9iZzAkEXAMPLEREFRESHTOKEN", - "idToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhd3M6aWRlbnRpdHlfc3RvcmVfaWQiOiJkLTMzMzMzMzMzMzMiLCJzdWIiOiI3MzA0NDhmMi1lMGExLTcwYTctYzk1NC0wMDAwMDAwMDAwMDAiLCJhd3M6aW5zdGFuY2VfYWNjb3VudCI6IjExMTExMTExMTExMSIsInN0czppZGVudGl0eV9jb250ZXh0IjoiRVhBTVBMRUlERU5USVRZQ09OVEVYVCIsInN0czphdWRpdF9jb250ZXh0IjoiRVhBTVBMRUFVRElUQ09OVEVYVCIsImlzcyI6Imh0dHBzOi8vaWRlbnRpdHljZW50ZXIuYW1hem9uYXdzLmNvbS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmlkZW50aXR5X3N0b3JlX2FybiI6ImFybjphd3M6aWRlbnRpdHlzdG9yZTo6MTExMTExMTExMTExOmlkZW50aXR5c3RvcmUvZC0zMzMzMzMzMzMzIiwiYXVkIjoiYXJuOmF3czpzc286OjEyMzQ1Njc4OTAxMjphcHBsaWNhdGlvbi9zc29pbnMtMTExMTExMTExMTExL2FwbC0yMjIyMjIyMjIyMjIiLCJhd3M6aW5zdGFuY2VfYXJuIjoiYXJuOmF3czpzc286OjppbnN0YW5jZS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmNyZWRlbnRpYWxfaWQiOiJfWlIyTjZhVkJqMjdGUEtheWpfcEtwVjc3QVBERl80MXB4ZXRfWWpJdUpONlVJR2RBdkpFWEFNUExFQ1JFRElEIiwiYXV0aF90aW1lIjoiMjAyMC0wMS0yMlQxMjo0NToyOVoiLCJleHAiOjE1Nzk3Mjk1MjksImlhdCI6MTU3OTcyNTkyOX0.Xyah6qbk78qThzJ41iFU2yfGuRqqtKXHrJYwQ8L9Ip0", "issuedTokenType": "urn:ietf:params:oauth:token-type:refresh_token", "scope": [ "openid", @@ -1380,7 +1373,10 @@ "openid", "aws", "sts:identity_context" - ] + ], + "awsAdditionalDetails": { + "identityContext": "EXAMPLEIDENTITYCONTEXT" + } } } ], @@ -1411,37 +1407,37 @@ "code": { "target": "com.amazonaws.ssooidc#AuthCode", "traits": { - "smithy.api#documentation": "

Used only when calling this API for the Authorization Code grant type. This short-term\n code is used to identify this authorization request. The code is obtained through a redirect\n from IAM Identity Center to a redirect URI persisted in the Authorization Code GrantOptions for the\n application.

" + "smithy.api#documentation": "

Used only when calling this API for the Authorization Code grant type. This short-lived\n code is used to identify this authorization request. The code is obtained through a redirect\n from IAM Identity Center to a redirect URI persisted in the Authorization Code GrantOptions for the\n application.

" } }, "refreshToken": { "target": "com.amazonaws.ssooidc#RefreshToken", "traits": { - "smithy.api#documentation": "

Used only when calling this API for the Refresh Token grant type. This token is used to\n refresh short-term tokens, such as the access token, that might expire.

\n

For more information about the features and limitations of the current IAM Identity Center OIDC\n implementation, see Considerations for Using this Guide in the IAM Identity Center\n OIDC API Reference.

" + "smithy.api#documentation": "

Used only when calling this API for the Refresh Token grant type. This token is used to\n refresh short-lived tokens, such as the access token, that might expire.

\n

For more information about the features and limitations of the current IAM Identity Center OIDC\n implementation, see Considerations for Using this Guide in the IAM Identity Center\n OIDC API Reference.

" } }, "assertion": { "target": "com.amazonaws.ssooidc#Assertion", "traits": { - "smithy.api#documentation": "

Used only when calling this API for the JWT Bearer grant type. This value specifies the JSON\n Web Token (JWT) issued by a trusted token issuer. To authorize a trusted token issuer,\n configure the JWT Bearer GrantOptions for the application.

" + "smithy.api#documentation": "

Used only when calling this API for the JWT Bearer grant type. This value specifies the\n JSON Web Token (JWT) issued by a trusted token issuer. To authorize a trusted token issuer,\n configure the JWT Bearer GrantOptions for the application.

" } }, "scope": { "target": "com.amazonaws.ssooidc#Scopes", "traits": { - "smithy.api#documentation": "

The list of scopes for which authorization is requested. The access token that is issued\n is limited to the scopes that are granted. If the value is not specified, IAM Identity Center authorizes all\n scopes configured for the application, including the following default scopes:\n openid, aws, sts:identity_context.

" + "smithy.api#documentation": "

The list of scopes for which authorization is requested. The access token that is issued\n is limited to the scopes that are granted. If the value is not specified, IAM Identity Center authorizes all\n scopes configured for the application, including the following default scopes:\n openid, aws, sts:identity_context.

" } }, "redirectUri": { "target": "com.amazonaws.ssooidc#URI", "traits": { - "smithy.api#documentation": "

Used only when calling this API for the Authorization Code grant type. This value specifies\n the location of the client or application that has registered to receive the authorization code.\n

" + "smithy.api#documentation": "

Used only when calling this API for the Authorization Code grant type. This value\n specifies the location of the client or application that has registered to receive the\n authorization code.

" } }, "subjectToken": { "target": "com.amazonaws.ssooidc#SubjectToken", "traits": { - "smithy.api#documentation": "

Used only when calling this API for the Token Exchange grant type. This value specifies\n the subject of the exchange. The value of the subject token must be an access token issued by\n IAM Identity Center to a different client or application. The access token must have authorized scopes\n that indicate the requested application as a target audience.

" + "smithy.api#documentation": "

Used only when calling this API for the Token Exchange grant type. This value specifies\n the subject of the exchange. The value of the subject token must be an access token issued by\n IAM Identity Center to a different client or application. The access token must have authorized scopes that\n indicate the requested application as a target audience.

" } }, "subjectTokenType": { @@ -1459,7 +1455,7 @@ "codeVerifier": { "target": "com.amazonaws.ssooidc#CodeVerifier", "traits": { - "smithy.api#documentation": "

Used only when calling this API for the Authorization Code grant type. This value is generated\n by the client and presented to validate the original code challenge value the client passed at\n authorization time.

" + "smithy.api#documentation": "

Used only when calling this API for the Authorization Code grant type. This value is\n generated by the client and presented to validate the original code challenge value the client\n passed at authorization time.

" } } }, @@ -1492,25 +1488,31 @@ "refreshToken": { "target": "com.amazonaws.ssooidc#RefreshToken", "traits": { - "smithy.api#documentation": "

A token that, if present, can be used to refresh a previously issued access token that\n might have expired.

\n

For more\n information about the features and limitations of the current IAM Identity Center OIDC implementation,\n see Considerations for Using this Guide in the IAM Identity Center\n OIDC API Reference.

" + "smithy.api#documentation": "

A token that, if present, can be used to refresh a previously issued access token that\n might have expired.

\n

For more information about the features and limitations of the current IAM Identity Center OIDC\n implementation, see Considerations for Using this Guide in the IAM Identity Center\n OIDC API Reference.

" } }, "idToken": { "target": "com.amazonaws.ssooidc#IdToken", "traits": { - "smithy.api#documentation": "

A JSON Web Token (JWT) that identifies the user associated with the issued access token.\n

" + "smithy.api#documentation": "

A JSON Web Token (JWT) that identifies the user associated with the issued access token.\n

" } }, "issuedTokenType": { "target": "com.amazonaws.ssooidc#TokenTypeURI", "traits": { - "smithy.api#documentation": "

Indicates the type of tokens that are issued by IAM Identity Center. The following values are supported:\n

\n

* Access Token - urn:ietf:params:oauth:token-type:access_token\n

\n

* Refresh Token - urn:ietf:params:oauth:token-type:refresh_token\n

" + "smithy.api#documentation": "

Indicates the type of tokens that are issued by IAM Identity Center. The following values are supported:

\n

* Access Token - urn:ietf:params:oauth:token-type:access_token\n

\n

* Refresh Token - urn:ietf:params:oauth:token-type:refresh_token\n

" } }, "scope": { "target": "com.amazonaws.ssooidc#Scopes", "traits": { - "smithy.api#documentation": "

The list of scopes for which authorization is granted. The access token that is issued\n is limited to the scopes that are granted.

" + "smithy.api#documentation": "

The list of scopes for which authorization is granted. The access token that is issued is\n limited to the scopes that are granted.

" + } + }, + "awsAdditionalDetails": { + "target": "com.amazonaws.ssooidc#AwsAdditionalDetails", + "traits": { + "smithy.api#documentation": "

A structure containing information from IAM Identity Center managed user and group\n information.

" } } }, @@ -1539,13 +1541,13 @@ "error": { "target": "com.amazonaws.ssooidc#Error", "traits": { - "smithy.api#documentation": "

Single error code.\n For this exception the value will be expired_token.

" + "smithy.api#documentation": "

Single error code. For this exception the value will be expired_token.

" } }, "error_description": { "target": "com.amazonaws.ssooidc#ErrorDescription", "traits": { - "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the\n client developer in understanding the error that occurred.

" + "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the client developer\n in understanding the error that occurred.

" } } }, @@ -1570,19 +1572,22 @@ "smithy.api#sensitive": {} } }, + "com.amazonaws.ssooidc#IdentityContext": { + "type": "string" + }, "com.amazonaws.ssooidc#InternalServerException": { "type": "structure", "members": { "error": { "target": "com.amazonaws.ssooidc#Error", "traits": { - "smithy.api#documentation": "

Single error code.\n For this exception the value will be server_error.

" + "smithy.api#documentation": "

Single error code. For this exception the value will be server_error.

" } }, "error_description": { "target": "com.amazonaws.ssooidc#ErrorDescription", "traits": { - "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the\n client developer in understanding the error that occurred.

" + "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the client developer\n in understanding the error that occurred.

" } } }, @@ -1604,13 +1609,13 @@ "error": { "target": "com.amazonaws.ssooidc#Error", "traits": { - "smithy.api#documentation": "

Single error code.\n For this exception the value will be invalid_client.

" + "smithy.api#documentation": "

Single error code. For this exception the value will be\n invalid_client.

" } }, "error_description": { "target": "com.amazonaws.ssooidc#ErrorDescription", "traits": { - "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the\n client developer in understanding the error that occurred.

" + "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the client developer\n in understanding the error that occurred.

" } } }, @@ -1626,13 +1631,13 @@ "error": { "target": "com.amazonaws.ssooidc#Error", "traits": { - "smithy.api#documentation": "

Single error code.\n For this exception the value will be invalid_client_metadata.

" + "smithy.api#documentation": "

Single error code. For this exception the value will be\n invalid_client_metadata.

" } }, "error_description": { "target": "com.amazonaws.ssooidc#ErrorDescription", "traits": { - "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the\n client developer in understanding the error that occurred.

" + "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the client developer\n in understanding the error that occurred.

" } } }, @@ -1648,13 +1653,13 @@ "error": { "target": "com.amazonaws.ssooidc#Error", "traits": { - "smithy.api#documentation": "

Single error code.\n For this exception the value will be invalid_grant.

" + "smithy.api#documentation": "

Single error code. For this exception the value will be invalid_grant.

" } }, "error_description": { "target": "com.amazonaws.ssooidc#ErrorDescription", "traits": { - "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the\n client developer in understanding the error that occurred.

" + "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the client developer\n in understanding the error that occurred.

" } } }, @@ -1670,18 +1675,18 @@ "error": { "target": "com.amazonaws.ssooidc#Error", "traits": { - "smithy.api#documentation": "

Single error code.\n For this exception the value will be invalid_redirect_uri.

" + "smithy.api#documentation": "

Single error code. For this exception the value will be\n invalid_redirect_uri.

" } }, "error_description": { "target": "com.amazonaws.ssooidc#ErrorDescription", "traits": { - "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the\n client developer in understanding the error that occurred.

" + "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the client developer\n in understanding the error that occurred.

" } } }, "traits": { - "smithy.api#documentation": "

Indicates that one or more redirect URI in the request is not supported for this operation.

", + "smithy.api#documentation": "

Indicates that one or more redirect URI in the request is not supported for this\n operation.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -1692,13 +1697,19 @@ "error": { "target": "com.amazonaws.ssooidc#Error", "traits": { - "smithy.api#documentation": "

Single error code.\n For this exception the value will be invalid_request.

" + "smithy.api#documentation": "

Single error code. For this exception the value will be\n invalid_request.

" + } + }, + "reason": { + "target": "com.amazonaws.ssooidc#InvalidRequestExceptionReason", + "traits": { + "smithy.api#documentation": "

A string that uniquely identifies a reason for the error.

" } }, "error_description": { "target": "com.amazonaws.ssooidc#ErrorDescription", "traits": { - "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the\n client developer in understanding the error that occurred.

" + "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the client developer\n in understanding the error that occurred.

" } } }, @@ -1708,19 +1719,48 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.ssooidc#InvalidRequestExceptionReason": { + "type": "enum", + "members": { + "KMS_KEY_NOT_FOUND": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KMS_NotFoundException" + } + }, + "KMS_INVALID_KEY_USAGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KMS_InvalidKeyUsageException" + } + }, + "KMS_INVALID_STATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KMS_InvalidStateException" + } + }, + "KMS_DISABLED_KEY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KMS_DisabledException" + } + } + } + }, "com.amazonaws.ssooidc#InvalidRequestRegionException": { "type": "structure", "members": { "error": { "target": "com.amazonaws.ssooidc#Error", "traits": { - "smithy.api#documentation": "

Single error code.\n For this exception the value will be invalid_request.

" + "smithy.api#documentation": "

Single error code. For this exception the value will be\n invalid_request.

" } }, "error_description": { "target": "com.amazonaws.ssooidc#ErrorDescription", "traits": { - "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the\n client developer in understanding the error that occurred.

" + "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the client developer\n in understanding the error that occurred.

" } }, "endpoint": { @@ -1748,13 +1788,13 @@ "error": { "target": "com.amazonaws.ssooidc#Error", "traits": { - "smithy.api#documentation": "

Single error code.\n For this exception the value will be invalid_scope.

" + "smithy.api#documentation": "

Single error code. For this exception the value will be invalid_scope.

" } }, "error_description": { "target": "com.amazonaws.ssooidc#ErrorDescription", "traits": { - "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the\n client developer in understanding the error that occurred.

" + "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the client developer\n in understanding the error that occurred.

" } } }, @@ -1812,13 +1852,16 @@ { "target": "com.amazonaws.ssooidc#InvalidScopeException" }, + { + "target": "com.amazonaws.ssooidc#SlowDownException" + }, { "target": "com.amazonaws.ssooidc#UnsupportedGrantTypeException" } ], "traits": { "smithy.api#auth": [], - "smithy.api#documentation": "

Registers a client with IAM Identity Center. This allows clients to initiate device authorization.\n The output should be persisted for reuse through many authentication requests.

", + "smithy.api#documentation": "

Registers a public client with IAM Identity Center. This allows clients to perform authorization using\n the authorization code grant with Proof Key for Code Exchange (PKCE) or the device\n code grant.

", "smithy.api#examples": [ { "title": "Call OAuth/OIDC /register-client endpoint", @@ -1888,19 +1931,19 @@ "grantTypes": { "target": "com.amazonaws.ssooidc#GrantTypes", "traits": { - "smithy.api#documentation": "

The list of OAuth 2.0 grant types that are defined by the client. This list is used to\n restrict the token granting flows available to the client.

" + "smithy.api#documentation": "

The list of OAuth 2.0 grant types that are defined by the client. This list is used to\n restrict the token granting flows available to the client. Supports the following OAuth 2.0\n grant types: Authorization Code, Device Code, and Refresh Token.

\n

* Authorization Code - authorization_code\n

\n

* Device Code - urn:ietf:params:oauth:grant-type:device_code\n

\n

* Refresh Token - refresh_token\n

" } }, "issuerUrl": { "target": "com.amazonaws.ssooidc#URI", "traits": { - "smithy.api#documentation": "

The IAM Identity Center Issuer URL associated with an instance of IAM Identity Center. This value is needed for user access to resources through the client.

" + "smithy.api#documentation": "

The IAM Identity Center Issuer URL associated with an instance of IAM Identity Center. This value is needed for user\n access to resources through the client.

" } }, "entitledApplicationArn": { "target": "com.amazonaws.ssooidc#ArnType", "traits": { - "smithy.api#documentation": "

This IAM Identity Center application ARN is used to define administrator-managed configuration for public client access to resources. At\n authorization, the scopes, grants, and redirect URI available to this client will be restricted by this application resource.

" + "smithy.api#documentation": "

This IAM Identity Center application ARN is used to define administrator-managed configuration for\n public client access to resources. At authorization, the scopes, grants, and redirect URI\n available to this client will be restricted by this application resource.

" } } }, @@ -1969,13 +2012,13 @@ "error": { "target": "com.amazonaws.ssooidc#Error", "traits": { - "smithy.api#documentation": "

Single error code.\n For this exception the value will be slow_down.

" + "smithy.api#documentation": "

Single error code. For this exception the value will be slow_down.

" } }, "error_description": { "target": "com.amazonaws.ssooidc#ErrorDescription", "traits": { - "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the\n client developer in understanding the error that occurred.

" + "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the client developer\n in understanding the error that occurred.

" } } }, @@ -2025,8 +2068,8 @@ "output": { "deviceCode": "yJraWQiOiJrZXktMTU2Njk2ODA4OCIsImFsZyI6IkhTMzIn0EXAMPLEDEVICECODE", "userCode": "makdfsk83yJraWQiOiJrZXktMTU2Njk2sImFsZyI6IkhTMzIn0EXAMPLEUSERCODE", - "verificationUri": "https://device.sso.us-west-2.amazonaws.com", - "verificationUriComplete": "https://device.sso.us-west-2.amazonaws.com?user_code=makdfsk83yJraWQiOiJrZXktMTU2Njk2sImFsZyI6IkhTMzIn0EXAMPLEUSERCODE", + "verificationUri": "https://directory-alias-example.awsapps.com/start/#/device", + "verificationUriComplete": "https://directory-alias-example.awsapps.com/start/#/device?user_code=makdfsk83yJraWQiOiJrZXktMTU2Njk2sImFsZyI6IkhTMzIn0EXAMPLEUSERCODE", "expiresIn": 1579729529, "interval": 1 } @@ -2060,7 +2103,7 @@ "startUrl": { "target": "com.amazonaws.ssooidc#URI", "traits": { - "smithy.api#documentation": "

The URL for the Amazon Web Services access portal. For more information, see Using\n the Amazon Web Services access portal in the IAM Identity Center User Guide.

", + "smithy.api#documentation": "

The URL for the Amazon Web Services access portal. For more information, see Using\n the Amazon Web Services access portal in the IAM Identity Center User Guide.

", "smithy.api#required": {} } } @@ -2136,13 +2179,13 @@ "error": { "target": "com.amazonaws.ssooidc#Error", "traits": { - "smithy.api#documentation": "

Single error code.\n For this exception the value will be unauthorized_client.

" + "smithy.api#documentation": "

Single error code. For this exception the value will be\n unauthorized_client.

" } }, "error_description": { "target": "com.amazonaws.ssooidc#ErrorDescription", "traits": { - "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the\n client developer in understanding the error that occurred.

" + "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the client developer\n in understanding the error that occurred.

" } } }, @@ -2158,13 +2201,13 @@ "error": { "target": "com.amazonaws.ssooidc#Error", "traits": { - "smithy.api#documentation": "

Single error code.\n For this exception the value will be unsupported_grant_type.

" + "smithy.api#documentation": "

Single error code. For this exception the value will be\n unsupported_grant_type.

" } }, "error_description": { "target": "com.amazonaws.ssooidc#ErrorDescription", "traits": { - "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the\n client developer in understanding the error that occurred.

" + "smithy.api#documentation": "

Human-readable text providing additional information, used to assist the client developer\n in understanding the error that occurred.

" } } }, diff --git a/aws/sdk/aws-models/sso.json b/aws/sdk/aws-models/sso.json index ab26fa26700..0cdb54058e2 100644 --- a/aws/sdk/aws-models/sso.json +++ b/aws/sdk/aws-models/sso.json @@ -1280,17 +1280,6 @@ "UseDualStack": true } }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -1304,17 +1293,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -1328,17 +1306,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -1352,17 +1319,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { diff --git a/aws/sdk/aws-models/sts.json b/aws/sdk/aws-models/sts.json index 746178d4f8f..f81e9c9cf3d 100644 --- a/aws/sdk/aws-models/sts.json +++ b/aws/sdk/aws-models/sts.json @@ -42,6 +42,9 @@ { "target": "com.amazonaws.sts#AssumeRoleWithWebIdentity" }, + { + "target": "com.amazonaws.sts#AssumeRoot" + }, { "target": "com.amazonaws.sts#DecodeAuthorizationMessage" }, @@ -1518,17 +1521,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -1542,17 +1534,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -1566,17 +1547,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -1590,17 +1560,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { @@ -2269,7 +2228,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a set of temporary security credentials that you can use to access Amazon Web Services\n resources. These temporary credentials consist of an access key ID, a secret access key,\n and a security token. Typically, you use AssumeRole within your account or for\n cross-account access. For a comparison of AssumeRole with other API operations\n that produce temporary credentials, see Requesting Temporary Security\n Credentials and Comparing the\n Amazon Web Services STS API operations in the IAM User Guide.

\n

\n Permissions\n

\n

The temporary security credentials created by AssumeRole can be used to\n make API calls to any Amazon Web Services service with the following exception: You cannot call the\n Amazon Web Services STS GetFederationToken or GetSessionToken API\n operations.

\n

(Optional) You can pass inline or managed session policies to\n this operation. You can pass a single JSON policy document to use as an inline session\n policy. You can also specify up to 10 managed policy Amazon Resource Names (ARNs) to use as\n managed session policies. The plaintext that you use for both inline and managed session\n policies can't exceed 2,048 characters. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

When you create a role, you create two policies: a role trust policy that specifies\n who can assume the role, and a permissions policy that specifies\n what can be done with the role. You specify the trusted principal\n that is allowed to assume the role in the role trust policy.

\n

To assume a role from a different account, your Amazon Web Services account must be trusted by the\n role. The trust relationship is defined in the role's trust policy when the role is\n created. That trust policy states which accounts are allowed to delegate that access to\n users in the account.

\n

A user who wants to access a role in a different account must also have permissions that\n are delegated from the account administrator. The administrator must attach a policy that\n allows the user to call AssumeRole for the ARN of the role in the other\n account.

\n

To allow a user to assume a role in the same account, you can do either of the\n following:

\n
    \n
  • \n

    Attach a policy to the user that allows the user to call AssumeRole\n (as long as the role's trust policy trusts the account).

    \n
  • \n
  • \n

    Add the user as a principal directly in the role's trust policy.

    \n
  • \n
\n

You can do either because the role’s trust policy acts as an IAM resource-based\n policy. When a resource-based policy grants access to a principal in the same account, no\n additional identity-based policy is required. For more information about trust policies and\n resource-based policies, see IAM Policies in the\n IAM User Guide.

\n

\n Tags\n

\n

(Optional) You can pass tag key-value pairs to your session. These tags are called\n session tags. For more information about session tags, see Passing Session Tags in STS in the\n IAM User Guide.

\n

An administrator must grant you the permissions necessary to pass session tags. The\n administrator can also create granular permissions to allow you to pass only specific\n session tags. For more information, see Tutorial: Using Tags\n for Attribute-Based Access Control in the\n IAM User Guide.

\n

You can set the session tags as transitive. Transitive tags persist during role\n chaining. For more information, see Chaining Roles\n with Session Tags in the IAM User Guide.

\n

\n Using MFA with AssumeRole\n

\n

(Optional) You can include multi-factor authentication (MFA) information when you call\n AssumeRole. This is useful for cross-account scenarios to ensure that the\n user that assumes the role has been authenticated with an Amazon Web Services MFA device. In that\n scenario, the trust policy of the role being assumed includes a condition that tests for\n MFA authentication. If the caller does not include valid MFA information, the request to\n assume the role is denied. The condition in a trust policy that tests for MFA\n authentication might look like the following example.

\n

\n \"Condition\": {\"Bool\": {\"aws:MultiFactorAuthPresent\": true}}\n

\n

For more information, see Configuring MFA-Protected API Access\n in the IAM User Guide guide.

\n

To use MFA with AssumeRole, you pass values for the\n SerialNumber and TokenCode parameters. The\n SerialNumber value identifies the user's hardware or virtual MFA device.\n The TokenCode is the time-based one-time password (TOTP) that the MFA device\n produces.

", + "smithy.api#documentation": "

Returns a set of temporary security credentials that you can use to access Amazon Web Services\n resources. These temporary credentials consist of an access key ID, a secret access key,\n and a security token. Typically, you use AssumeRole within your account or for\n cross-account access. For a comparison of AssumeRole with other API operations\n that produce temporary credentials, see Requesting Temporary Security\n Credentials and Compare STS\n credentials in the IAM User Guide.

\n

\n Permissions\n

\n

The temporary security credentials created by AssumeRole can be used to\n make API calls to any Amazon Web Services service with the following exception: You cannot call the\n Amazon Web Services STS GetFederationToken or GetSessionToken API\n operations.

\n

(Optional) You can pass inline or managed session policies to this operation. You can\n pass a single JSON policy document to use as an inline session policy. You can also specify\n up to 10 managed policy Amazon Resource Names (ARNs) to use as managed session policies.\n The plaintext that you use for both inline and managed session policies can't exceed 2,048\n characters. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

When you create a role, you create two policies: a role trust policy that specifies\n who can assume the role, and a permissions policy that specifies\n what can be done with the role. You specify the trusted principal\n that is allowed to assume the role in the role trust policy.

\n

To assume a role from a different account, your Amazon Web Services account must be trusted by the\n role. The trust relationship is defined in the role's trust policy when the role is\n created. That trust policy states which accounts are allowed to delegate that access to\n users in the account.

\n

A user who wants to access a role in a different account must also have permissions that\n are delegated from the account administrator. The administrator must attach a policy that\n allows the user to call AssumeRole for the ARN of the role in the other\n account.

\n

To allow a user to assume a role in the same account, you can do either of the\n following:

\n
    \n
  • \n

    Attach a policy to the user that allows the user to call AssumeRole\n (as long as the role's trust policy trusts the account).

    \n
  • \n
  • \n

    Add the user as a principal directly in the role's trust policy.

    \n
  • \n
\n

You can do either because the role’s trust policy acts as an IAM resource-based\n policy. When a resource-based policy grants access to a principal in the same account, no\n additional identity-based policy is required. For more information about trust policies and\n resource-based policies, see IAM Policies in the\n IAM User Guide.

\n

\n Tags\n

\n

(Optional) You can pass tag key-value pairs to your session. These tags are called\n session tags. For more information about session tags, see Passing Session Tags in STS in the\n IAM User Guide.

\n

An administrator must grant you the permissions necessary to pass session tags. The\n administrator can also create granular permissions to allow you to pass only specific\n session tags. For more information, see Tutorial: Using Tags\n for Attribute-Based Access Control in the\n IAM User Guide.

\n

You can set the session tags as transitive. Transitive tags persist during role\n chaining. For more information, see Chaining Roles\n with Session Tags in the IAM User Guide.

\n

\n Using MFA with AssumeRole\n

\n

(Optional) You can include multi-factor authentication (MFA) information when you call\n AssumeRole. This is useful for cross-account scenarios to ensure that the\n user that assumes the role has been authenticated with an Amazon Web Services MFA device. In that\n scenario, the trust policy of the role being assumed includes a condition that tests for\n MFA authentication. If the caller does not include valid MFA information, the request to\n assume the role is denied. The condition in a trust policy that tests for MFA\n authentication might look like the following example.

\n

\n \"Condition\": {\"Bool\": {\"aws:MultiFactorAuthPresent\": true}}\n

\n

For more information, see Configuring MFA-Protected API Access\n in the IAM User Guide guide.

\n

To use MFA with AssumeRole, you pass values for the\n SerialNumber and TokenCode parameters. The\n SerialNumber value identifies the user's hardware or virtual MFA device.\n The TokenCode is the time-based one-time password (TOTP) that the MFA device\n produces.

", "smithy.api#examples": [ { "title": "To assume a role", @@ -2328,7 +2287,7 @@ "RoleSessionName": { "target": "com.amazonaws.sts#roleSessionNameType", "traits": { - "smithy.api#documentation": "

An identifier for the assumed role session.

\n

Use the role session name to uniquely identify a session when the same role is assumed\n by different principals or for different reasons. In cross-account scenarios, the role\n session name is visible to, and can be logged by the account that owns the role. The role\n session name is also used in the ARN of the assumed role principal. This means that\n subsequent cross-account API requests that use the temporary security credentials will\n expose the role session name to the external account in their CloudTrail logs.

\n

The regex used to validate this parameter is a string of characters \n consisting of upper- and lower-case alphanumeric characters with no spaces. You can \n also include underscores or any of the following characters: =,.@-

", + "smithy.api#documentation": "

An identifier for the assumed role session.

\n

Use the role session name to uniquely identify a session when the same role is assumed\n by different principals or for different reasons. In cross-account scenarios, the role\n session name is visible to, and can be logged by the account that owns the role. The role\n session name is also used in the ARN of the assumed role principal. This means that\n subsequent cross-account API requests that use the temporary security credentials will\n expose the role session name to the external account in their CloudTrail logs.

\n

For security purposes, administrators can view this field in CloudTrail logs to help identify who performed an action in Amazon Web Services. Your\n administrator might require that you specify your user name as the session name when you\n assume the role. For more information, see \n sts:RoleSessionName\n .

\n

The regex used to validate this parameter is a string of characters \n consisting of upper- and lower-case alphanumeric characters with no spaces. You can \n also include underscores or any of the following characters: =,.@-

", "smithy.api#required": {} } }, @@ -2341,13 +2300,13 @@ "Policy": { "target": "com.amazonaws.sts#unrestrictedSessionPolicyDocumentType", "traits": { - "smithy.api#documentation": "

An IAM policy in JSON format that you want to use as an inline session policy.

\n

This parameter is optional. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

The plaintext that you use for both inline and managed session policies can't exceed\n 2,048 characters. The JSON policy characters can be any ASCII character from the space\n character to the end of the valid character list (\\u0020 through \\u00FF). It can also\n include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)\n characters.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
" + "smithy.api#documentation": "

An IAM policy in JSON format that you want to use as an inline session policy.

\n

This parameter is optional. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

The plaintext that you use for both inline and managed session policies can't exceed\n 2,048 characters. The JSON policy characters can be any ASCII character from the space\n character to the end of the valid character list (\\u0020 through \\u00FF). It can also\n include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)\n characters.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
\n

For more information about role session permissions, see Session\n policies.

" } }, "DurationSeconds": { "target": "com.amazonaws.sts#roleDurationSecondsType", "traits": { - "smithy.api#documentation": "

The duration, in seconds, of the role session. The value specified can range from 900\n seconds (15 minutes) up to the maximum session duration set for the role. The maximum\n session duration setting can have a value from 1 hour to 12 hours. If you specify a value\n higher than this setting or the administrator setting (whichever is lower), the operation\n fails. For example, if you specify a session duration of 12 hours, but your administrator\n set the maximum session duration to 6 hours, your operation fails.

\n

Role chaining limits your Amazon Web Services CLI or Amazon Web Services API role session to a maximum of one hour.\n When you use the AssumeRole API operation to assume a role, you can specify\n the duration of your role session with the DurationSeconds parameter. You can\n specify a parameter value of up to 43200 seconds (12 hours), depending on the maximum\n session duration setting for your role. However, if you assume a role using role chaining\n and provide a DurationSeconds parameter value greater than one hour, the\n operation fails. To learn how to view the maximum value for your role, see View the\n Maximum Session Duration Setting for a Role in the\n IAM User Guide.

\n

By default, the value is set to 3600 seconds.

\n \n

The DurationSeconds parameter is separate from the duration of a console\n session that you might request using the returned credentials. The request to the\n federation endpoint for a console sign-in token takes a SessionDuration\n parameter that specifies the maximum length of the console session. For more\n information, see Creating a URL\n that Enables Federated Users to Access the Amazon Web Services Management Console in the\n IAM User Guide.

\n
" + "smithy.api#documentation": "

The duration, in seconds, of the role session. The value specified can range from 900\n seconds (15 minutes) up to the maximum session duration set for the role. The maximum\n session duration setting can have a value from 1 hour to 12 hours. If you specify a value\n higher than this setting or the administrator setting (whichever is lower), the operation\n fails. For example, if you specify a session duration of 12 hours, but your administrator\n set the maximum session duration to 6 hours, your operation fails.

\n

Role chaining limits your Amazon Web Services CLI or Amazon Web Services API role session to a maximum of one hour.\n When you use the AssumeRole API operation to assume a role, you can specify\n the duration of your role session with the DurationSeconds parameter. You can\n specify a parameter value of up to 43200 seconds (12 hours), depending on the maximum\n session duration setting for your role. However, if you assume a role using role chaining\n and provide a DurationSeconds parameter value greater than one hour, the\n operation fails. To learn how to view the maximum value for your role, see Update the maximum session duration for a role.

\n

By default, the value is set to 3600 seconds.

\n \n

The DurationSeconds parameter is separate from the duration of a console\n session that you might request using the returned credentials. The request to the\n federation endpoint for a console sign-in token takes a SessionDuration\n parameter that specifies the maximum length of the console session. For more\n information, see Creating a URL\n that Enables Federated Users to Access the Amazon Web Services Management Console in the\n IAM User Guide.

\n
" } }, "Tags": { @@ -2359,7 +2318,7 @@ "TransitiveTagKeys": { "target": "com.amazonaws.sts#tagKeyListType", "traits": { - "smithy.api#documentation": "

A list of keys for session tags that you want to set as transitive. If you set a tag key\n as transitive, the corresponding key and value passes to subsequent sessions in a role\n chain. For more information, see Chaining Roles\n with Session Tags in the IAM User Guide.

\n

This parameter is optional. When you set session tags as transitive, the session policy\n and session tags packed binary limit is not affected.

\n

If you choose not to specify a transitive tag key, then no tags are passed from this\n session to any subsequent sessions.

" + "smithy.api#documentation": "

A list of keys for session tags that you want to set as transitive. If you set a tag key\n as transitive, the corresponding key and value passes to subsequent sessions in a role\n chain. For more information, see Chaining Roles\n with Session Tags in the IAM User Guide.

\n

This parameter is optional. The transitive status of a session tag does not impact its\n packed binary size.

\n

If you choose not to specify a transitive tag key, then no tags are passed from this\n session to any subsequent sessions.

" } }, "ExternalId": { @@ -2383,7 +2342,7 @@ "SourceIdentity": { "target": "com.amazonaws.sts#sourceIdentityType", "traits": { - "smithy.api#documentation": "

The source identity specified by the principal that is calling the\n AssumeRole operation.

\n

You can require users to specify a source identity when they assume a role. You do this\n by using the sts:SourceIdentity condition key in a role trust policy. You can\n use source identity information in CloudTrail logs to determine who took actions with a role.\n You can use the aws:SourceIdentity condition key to further control access to\n Amazon Web Services resources based on the value of source identity. For more information about using\n source identity, see Monitor and control\n actions taken with assumed roles in the\n IAM User Guide.

\n

The regex used to validate this parameter is a string of characters consisting of upper-\n and lower-case alphanumeric characters with no spaces. You can also include underscores or\n any of the following characters: =,.@-. You cannot use a value that begins with the text\n aws:. This prefix is reserved for Amazon Web Services internal use.

" + "smithy.api#documentation": "

The source identity specified by the principal that is calling the\n AssumeRole operation. The source identity value persists across chained role sessions.

\n

You can require users to specify a source identity when they assume a role. You do this\n by using the \n sts:SourceIdentity\n condition key in a role trust policy. You\n can use source identity information in CloudTrail logs to determine who took actions with a\n role. You can use the aws:SourceIdentity condition key to further control\n access to Amazon Web Services resources based on the value of source identity. For more information about\n using source identity, see Monitor and control\n actions taken with assumed roles in the\n IAM User Guide.

\n

The regex used to validate this parameter is a string of characters consisting of upper-\n and lower-case alphanumeric characters with no spaces. You can also include underscores or\n any of the following characters: +=,.@-. You cannot use a value that begins with the text\n aws:. This prefix is reserved for Amazon Web Services internal use.

" } }, "ProvidedContexts": { @@ -2459,7 +2418,8 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a set of temporary security credentials for users who have been authenticated\n via a SAML authentication response. This operation provides a mechanism for tying an\n enterprise identity store or directory to role-based Amazon Web Services access without user-specific\n credentials or configuration. For a comparison of AssumeRoleWithSAML with the\n other API operations that produce temporary credentials, see Requesting Temporary Security\n Credentials and Comparing the\n Amazon Web Services STS API operations in the IAM User Guide.

\n

The temporary security credentials returned by this operation consist of an access key\n ID, a secret access key, and a security token. Applications can use these temporary\n security credentials to sign calls to Amazon Web Services services.

\n

\n Session Duration\n

\n

By default, the temporary security credentials created by\n AssumeRoleWithSAML last for one hour. However, you can use the optional\n DurationSeconds parameter to specify the duration of your session. Your\n role session lasts for the duration that you specify, or until the time specified in the\n SAML authentication response's SessionNotOnOrAfter value, whichever is\n shorter. You can provide a DurationSeconds value from 900 seconds (15 minutes)\n up to the maximum session duration setting for the role. This setting can have a value from\n 1 hour to 12 hours. To learn how to view the maximum value for your role, see View the\n Maximum Session Duration Setting for a Role in the\n IAM User Guide. The maximum session duration limit applies when\n you use the AssumeRole* API operations or the assume-role* CLI\n commands. However the limit does not apply when you use those operations to create a\n console URL. For more information, see Using IAM Roles in the\n IAM User Guide.

\n \n

\n Role chaining limits your CLI or Amazon Web Services API role\n session to a maximum of one hour. When you use the AssumeRole API operation\n to assume a role, you can specify the duration of your role session with the\n DurationSeconds parameter. You can specify a parameter value of up to\n 43200 seconds (12 hours), depending on the maximum session duration setting for your\n role. However, if you assume a role using role chaining and provide a\n DurationSeconds parameter value greater than one hour, the operation\n fails.

\n
\n

\n Permissions\n

\n

The temporary security credentials created by AssumeRoleWithSAML can be\n used to make API calls to any Amazon Web Services service with the following exception: you cannot call\n the STS GetFederationToken or GetSessionToken API\n operations.

\n

(Optional) You can pass inline or managed session policies to\n this operation. You can pass a single JSON policy document to use as an inline session\n policy. You can also specify up to 10 managed policy Amazon Resource Names (ARNs) to use as\n managed session policies. The plaintext that you use for both inline and managed session\n policies can't exceed 2,048 characters. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

Calling AssumeRoleWithSAML does not require the use of Amazon Web Services security\n credentials. The identity of the caller is validated by using keys in the metadata document\n that is uploaded for the SAML provider entity for your identity provider.

\n \n

Calling AssumeRoleWithSAML can result in an entry in your CloudTrail logs.\n The entry includes the value in the NameID element of the SAML assertion.\n We recommend that you use a NameIDType that is not associated with any\n personally identifiable information (PII). For example, you could instead use the\n persistent identifier\n (urn:oasis:names:tc:SAML:2.0:nameid-format:persistent).

\n
\n

\n Tags\n

\n

(Optional) You can configure your IdP to pass attributes into your SAML assertion as\n session tags. Each session tag consists of a key name and an associated value. For more\n information about session tags, see Passing Session Tags in STS in the\n IAM User Guide.

\n

You can pass up to 50 session tags. The plaintext session tag keys can’t exceed 128\n characters and the values can’t exceed 256 characters. For these and additional limits, see\n IAM\n and STS Character Limits in the IAM User Guide.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
\n

You can pass a session tag with the same key as a tag that is attached to the role. When\n you do, session tags override the role's tags with the same key.

\n

An administrator must grant you the permissions necessary to pass session tags. The\n administrator can also create granular permissions to allow you to pass only specific\n session tags. For more information, see Tutorial: Using Tags\n for Attribute-Based Access Control in the\n IAM User Guide.

\n

You can set the session tags as transitive. Transitive tags persist during role\n chaining. For more information, see Chaining Roles\n with Session Tags in the IAM User Guide.

\n

\n SAML Configuration\n

\n

Before your application can call AssumeRoleWithSAML, you must configure\n your SAML identity provider (IdP) to issue the claims required by Amazon Web Services. Additionally, you\n must use Identity and Access Management (IAM) to create a SAML provider entity in your Amazon Web Services account that\n represents your identity provider. You must also create an IAM role that specifies this\n SAML provider in its trust policy.

\n

For more information, see the following resources:

\n ", + "smithy.api#auth": [], + "smithy.api#documentation": "

Returns a set of temporary security credentials for users who have been authenticated\n via a SAML authentication response. This operation provides a mechanism for tying an\n enterprise identity store or directory to role-based Amazon Web Services access without user-specific\n credentials or configuration. For a comparison of AssumeRoleWithSAML with the\n other API operations that produce temporary credentials, see Requesting Temporary Security\n Credentials and Compare STS\n credentials in the IAM User Guide.

\n

The temporary security credentials returned by this operation consist of an access key\n ID, a secret access key, and a security token. Applications can use these temporary\n security credentials to sign calls to Amazon Web Services services.

\n

\n Session Duration\n

\n

By default, the temporary security credentials created by\n AssumeRoleWithSAML last for one hour. However, you can use the optional\n DurationSeconds parameter to specify the duration of your session. Your\n role session lasts for the duration that you specify, or until the time specified in the\n SAML authentication response's SessionNotOnOrAfter value, whichever is\n shorter. You can provide a DurationSeconds value from 900 seconds (15 minutes)\n up to the maximum session duration setting for the role. This setting can have a value from\n 1 hour to 12 hours. To learn how to view the maximum value for your role, see View the\n Maximum Session Duration Setting for a Role in the\n IAM User Guide. The maximum session duration limit applies when\n you use the AssumeRole* API operations or the assume-role* CLI\n commands. However the limit does not apply when you use those operations to create a\n console URL. For more information, see Using IAM Roles in the\n IAM User Guide.

\n \n

\n Role chaining limits your CLI or Amazon Web Services API role\n session to a maximum of one hour. When you use the AssumeRole API operation\n to assume a role, you can specify the duration of your role session with the\n DurationSeconds parameter. You can specify a parameter value of up to\n 43200 seconds (12 hours), depending on the maximum session duration setting for your\n role. However, if you assume a role using role chaining and provide a\n DurationSeconds parameter value greater than one hour, the operation\n fails.

\n
\n

\n Permissions\n

\n

The temporary security credentials created by AssumeRoleWithSAML can be\n used to make API calls to any Amazon Web Services service with the following exception: you cannot call\n the STS GetFederationToken or GetSessionToken API\n operations.

\n

(Optional) You can pass inline or managed session policies to\n this operation. You can pass a single JSON policy document to use as an inline session\n policy. You can also specify up to 10 managed policy Amazon Resource Names (ARNs) to use as\n managed session policies. The plaintext that you use for both inline and managed session\n policies can't exceed 2,048 characters. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

Calling AssumeRoleWithSAML does not require the use of Amazon Web Services security\n credentials. The identity of the caller is validated by using keys in the metadata document\n that is uploaded for the SAML provider entity for your identity provider.

\n \n

Calling AssumeRoleWithSAML can result in an entry in your CloudTrail logs.\n The entry includes the value in the NameID element of the SAML assertion.\n We recommend that you use a NameIDType that is not associated with any\n personally identifiable information (PII). For example, you could instead use the\n persistent identifier\n (urn:oasis:names:tc:SAML:2.0:nameid-format:persistent).

\n
\n

\n Tags\n

\n

(Optional) You can configure your IdP to pass attributes into your SAML assertion as\n session tags. Each session tag consists of a key name and an associated value. For more\n information about session tags, see Passing Session Tags in STS in the\n IAM User Guide.

\n

You can pass up to 50 session tags. The plaintext session tag keys can’t exceed 128\n characters and the values can’t exceed 256 characters. For these and additional limits, see\n IAM\n and STS Character Limits in the IAM User Guide.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
\n

You can pass a session tag with the same key as a tag that is attached to the role. When\n you do, session tags override the role's tags with the same key.

\n

An administrator must grant you the permissions necessary to pass session tags. The\n administrator can also create granular permissions to allow you to pass only specific\n session tags. For more information, see Tutorial: Using Tags\n for Attribute-Based Access Control in the\n IAM User Guide.

\n

You can set the session tags as transitive. Transitive tags persist during role\n chaining. For more information, see Chaining Roles\n with Session Tags in the IAM User Guide.

\n

\n SAML Configuration\n

\n

Before your application can call AssumeRoleWithSAML, you must configure\n your SAML identity provider (IdP) to issue the claims required by Amazon Web Services. Additionally, you\n must use Identity and Access Management (IAM) to create a SAML provider entity in your Amazon Web Services account that\n represents your identity provider. You must also create an IAM role that specifies this\n SAML provider in its trust policy.

\n

For more information, see the following resources:

\n ", "smithy.api#examples": [ { "title": "To assume a role using a SAML assertion", @@ -2489,7 +2449,8 @@ "Subject": "SamlExample" } } - ] + ], + "smithy.api#optionalAuth": {} } }, "com.amazonaws.sts#AssumeRoleWithSAMLRequest": { @@ -2525,7 +2486,7 @@ "Policy": { "target": "com.amazonaws.sts#sessionPolicyDocumentType", "traits": { - "smithy.api#documentation": "

An IAM policy in JSON format that you want to use as an inline session policy.

\n

This parameter is optional. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

The plaintext that you use for both inline and managed session policies can't exceed\n 2,048 characters. The JSON policy characters can be any ASCII character from the space\n character to the end of the valid character list (\\u0020 through \\u00FF). It can also\n include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)\n characters.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
" + "smithy.api#documentation": "

An IAM policy in JSON format that you want to use as an inline session policy.

\n

This parameter is optional. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

The plaintext that you use for both inline and managed session policies can't exceed\n 2,048 characters. The JSON policy characters can be any ASCII character from the space\n character to the end of the valid character list (\\u0020 through \\u00FF). It can also\n include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)\n characters.

\n

For more information about role session permissions, see Session\n policies.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
" } }, "DurationSeconds": { @@ -2593,7 +2554,7 @@ "SourceIdentity": { "target": "com.amazonaws.sts#sourceIdentityType", "traits": { - "smithy.api#documentation": "

The value in the SourceIdentity attribute in the SAML assertion.

\n

You can require users to set a source identity value when they assume a role. You do\n this by using the sts:SourceIdentity condition key in a role trust policy.\n That way, actions that are taken with the role are associated with that user. After the\n source identity is set, the value cannot be changed. It is present in the request for all\n actions that are taken by the role and persists across chained\n role sessions. You can configure your SAML identity provider to use an attribute\n associated with your users, like user name or email, as the source identity when calling\n AssumeRoleWithSAML. You do this by adding an attribute to the SAML\n assertion. For more information about using source identity, see Monitor and control\n actions taken with assumed roles in the\n IAM User Guide.

\n

The regex used to validate this parameter is a string of characters \n consisting of upper- and lower-case alphanumeric characters with no spaces. You can \n also include underscores or any of the following characters: =,.@-

" + "smithy.api#documentation": "

The value in the SourceIdentity attribute in the SAML assertion. The source\n identity value persists across chained role\n sessions.

\n

You can require users to set a source identity value when they assume a role. You do\n this by using the sts:SourceIdentity condition key in a role trust policy.\n That way, actions that are taken with the role are associated with that user. After the\n source identity is set, the value cannot be changed. It is present in the request for all\n actions that are taken by the role and persists across chained role\n sessions. You can configure your SAML identity provider to use an attribute associated with\n your users, like user name or email, as the source identity when calling\n AssumeRoleWithSAML. You do this by adding an attribute to the SAML\n assertion. For more information about using source identity, see Monitor and control\n actions taken with assumed roles in the\n IAM User Guide.

\n

The regex used to validate this parameter is a string of characters \n consisting of upper- and lower-case alphanumeric characters with no spaces. You can \n also include underscores or any of the following characters: =,.@-

" } } }, @@ -2634,7 +2595,8 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a set of temporary security credentials for users who have been authenticated in\n a mobile or web application with a web identity provider. Example providers include the\n OAuth 2.0 providers Login with Amazon and Facebook, or any OpenID Connect-compatible\n identity provider such as Google or Amazon Cognito federated identities.

\n \n

For mobile applications, we recommend that you use Amazon Cognito. You can use Amazon Cognito with the\n Amazon Web Services SDK for iOS Developer Guide and the Amazon Web Services SDK for Android Developer Guide to uniquely\n identify a user. You can also supply the user with a consistent identity throughout the\n lifetime of an application.

\n

To learn more about Amazon Cognito, see Amazon Cognito identity\n pools in Amazon Cognito Developer Guide.

\n
\n

Calling AssumeRoleWithWebIdentity does not require the use of Amazon Web Services\n security credentials. Therefore, you can distribute an application (for example, on mobile\n devices) that requests temporary security credentials without including long-term Amazon Web Services\n credentials in the application. You also don't need to deploy server-based proxy services\n that use long-term Amazon Web Services credentials. Instead, the identity of the caller is validated by\n using a token from the web identity provider. For a comparison of\n AssumeRoleWithWebIdentity with the other API operations that produce\n temporary credentials, see Requesting Temporary Security\n Credentials and Comparing the\n Amazon Web Services STS API operations in the IAM User Guide.

\n

The temporary security credentials returned by this API consist of an access key ID, a\n secret access key, and a security token. Applications can use these temporary security\n credentials to sign calls to Amazon Web Services service API operations.

\n

\n Session Duration\n

\n

By default, the temporary security credentials created by\n AssumeRoleWithWebIdentity last for one hour. However, you can use the\n optional DurationSeconds parameter to specify the duration of your session.\n You can provide a value from 900 seconds (15 minutes) up to the maximum session duration\n setting for the role. This setting can have a value from 1 hour to 12 hours. To learn how\n to view the maximum value for your role, see View the\n Maximum Session Duration Setting for a Role in the\n IAM User Guide. The maximum session duration limit applies when\n you use the AssumeRole* API operations or the assume-role* CLI\n commands. However the limit does not apply when you use those operations to create a\n console URL. For more information, see Using IAM Roles in the\n IAM User Guide.

\n

\n Permissions\n

\n

The temporary security credentials created by AssumeRoleWithWebIdentity can\n be used to make API calls to any Amazon Web Services service with the following exception: you cannot\n call the STS GetFederationToken or GetSessionToken API\n operations.

\n

(Optional) You can pass inline or managed session policies to\n this operation. You can pass a single JSON policy document to use as an inline session\n policy. You can also specify up to 10 managed policy Amazon Resource Names (ARNs) to use as\n managed session policies. The plaintext that you use for both inline and managed session\n policies can't exceed 2,048 characters. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

\n Tags\n

\n

(Optional) You can configure your IdP to pass attributes into your web identity token as\n session tags. Each session tag consists of a key name and an associated value. For more\n information about session tags, see Passing Session Tags in STS in the\n IAM User Guide.

\n

You can pass up to 50 session tags. The plaintext session tag keys can’t exceed 128\n characters and the values can’t exceed 256 characters. For these and additional limits, see\n IAM\n and STS Character Limits in the IAM User Guide.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
\n

You can pass a session tag with the same key as a tag that is attached to the role. When\n you do, the session tag overrides the role tag with the same key.

\n

An administrator must grant you the permissions necessary to pass session tags. The\n administrator can also create granular permissions to allow you to pass only specific\n session tags. For more information, see Tutorial: Using Tags\n for Attribute-Based Access Control in the\n IAM User Guide.

\n

You can set the session tags as transitive. Transitive tags persist during role\n chaining. For more information, see Chaining Roles\n with Session Tags in the IAM User Guide.

\n

\n Identities\n

\n

Before your application can call AssumeRoleWithWebIdentity, you must have\n an identity token from a supported identity provider and create a role that the application\n can assume. The role that your application assumes must trust the identity provider that is\n associated with the identity token. In other words, the identity provider must be specified\n in the role's trust policy.

\n \n

Calling AssumeRoleWithWebIdentity can result in an entry in your\n CloudTrail logs. The entry includes the Subject of\n the provided web identity token. We recommend that you avoid using any personally\n identifiable information (PII) in this field. For example, you could instead use a GUID\n or a pairwise identifier, as suggested\n in the OIDC specification.

\n
\n

For more information about how to use web identity federation and the\n AssumeRoleWithWebIdentity API, see the following resources:

\n ", + "smithy.api#auth": [], + "smithy.api#documentation": "

Returns a set of temporary security credentials for users who have been authenticated in\n a mobile or web application with a web identity provider. Example providers include the\n OAuth 2.0 providers Login with Amazon and Facebook, or any OpenID Connect-compatible\n identity provider such as Google or Amazon Cognito federated identities.

\n \n

For mobile applications, we recommend that you use Amazon Cognito. You can use Amazon Cognito with the\n Amazon Web Services SDK for iOS Developer Guide and the Amazon Web Services SDK for Android Developer Guide to uniquely\n identify a user. You can also supply the user with a consistent identity throughout the\n lifetime of an application.

\n

To learn more about Amazon Cognito, see Amazon Cognito identity\n pools in Amazon Cognito Developer Guide.

\n
\n

Calling AssumeRoleWithWebIdentity does not require the use of Amazon Web Services\n security credentials. Therefore, you can distribute an application (for example, on mobile\n devices) that requests temporary security credentials without including long-term Amazon Web Services\n credentials in the application. You also don't need to deploy server-based proxy services\n that use long-term Amazon Web Services credentials. Instead, the identity of the caller is validated by\n using a token from the web identity provider. For a comparison of\n AssumeRoleWithWebIdentity with the other API operations that produce\n temporary credentials, see Requesting Temporary Security\n Credentials and Compare STS\n credentials in the IAM User Guide.

\n

The temporary security credentials returned by this API consist of an access key ID, a\n secret access key, and a security token. Applications can use these temporary security\n credentials to sign calls to Amazon Web Services service API operations.

\n

\n Session Duration\n

\n

By default, the temporary security credentials created by\n AssumeRoleWithWebIdentity last for one hour. However, you can use the\n optional DurationSeconds parameter to specify the duration of your session.\n You can provide a value from 900 seconds (15 minutes) up to the maximum session duration\n setting for the role. This setting can have a value from 1 hour to 12 hours. To learn how\n to view the maximum value for your role, see Update the maximum session duration for a role in the\n IAM User Guide. The maximum session duration limit applies when\n you use the AssumeRole* API operations or the assume-role* CLI\n commands. However the limit does not apply when you use those operations to create a\n console URL. For more information, see Using IAM Roles in the\n IAM User Guide.

\n

\n Permissions\n

\n

The temporary security credentials created by AssumeRoleWithWebIdentity can\n be used to make API calls to any Amazon Web Services service with the following exception: you cannot\n call the STS GetFederationToken or GetSessionToken API\n operations.

\n

(Optional) You can pass inline or managed session policies to\n this operation. You can pass a single JSON policy document to use as an inline session\n policy. You can also specify up to 10 managed policy Amazon Resource Names (ARNs) to use as\n managed session policies. The plaintext that you use for both inline and managed session\n policies can't exceed 2,048 characters. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

\n Tags\n

\n

(Optional) You can configure your IdP to pass attributes into your web identity token as\n session tags. Each session tag consists of a key name and an associated value. For more\n information about session tags, see Passing Session Tags in STS in the\n IAM User Guide.

\n

You can pass up to 50 session tags. The plaintext session tag keys can’t exceed 128\n characters and the values can’t exceed 256 characters. For these and additional limits, see\n IAM\n and STS Character Limits in the IAM User Guide.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
\n

You can pass a session tag with the same key as a tag that is attached to the role. When\n you do, the session tag overrides the role tag with the same key.

\n

An administrator must grant you the permissions necessary to pass session tags. The\n administrator can also create granular permissions to allow you to pass only specific\n session tags. For more information, see Tutorial: Using Tags\n for Attribute-Based Access Control in the\n IAM User Guide.

\n

You can set the session tags as transitive. Transitive tags persist during role\n chaining. For more information, see Chaining Roles\n with Session Tags in the IAM User Guide.

\n

\n Identities\n

\n

Before your application can call AssumeRoleWithWebIdentity, you must have\n an identity token from a supported identity provider and create a role that the application\n can assume. The role that your application assumes must trust the identity provider that is\n associated with the identity token. In other words, the identity provider must be specified\n in the role's trust policy.

\n \n

Calling AssumeRoleWithWebIdentity can result in an entry in your\n CloudTrail logs. The entry includes the Subject of\n the provided web identity token. We recommend that you avoid using any personally\n identifiable information (PII) in this field. For example, you could instead use a GUID\n or a pairwise identifier, as suggested\n in the OIDC specification.

\n
\n

For more information about how to use OIDC federation and the\n AssumeRoleWithWebIdentity API, see the following resources:

\n ", "smithy.api#examples": [ { "title": "To assume a role as an OpenID Connect-federated user", @@ -2664,7 +2626,8 @@ "Audience": "client.5498841531868486423.1548@apps.example.com" } } - ] + ], + "smithy.api#optionalAuth": {} } }, "com.amazonaws.sts#AssumeRoleWithWebIdentityRequest": { @@ -2673,21 +2636,21 @@ "RoleArn": { "target": "com.amazonaws.sts#arnType", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the role that the caller is assuming.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the role that the caller is assuming.

\n \n

Additional considerations apply to Amazon Cognito identity pools that assume cross-account IAM roles. The trust policies of these roles must accept the\n cognito-identity.amazonaws.com service principal and must contain the\n cognito-identity.amazonaws.com:aud condition key to restrict role\n assumption to users from your intended identity pools. A policy that trusts Amazon Cognito\n identity pools without this condition creates a risk that a user from an unintended\n identity pool can assume the role. For more information, see Trust policies for\n IAM roles in Basic (Classic) authentication in the Amazon Cognito\n Developer Guide.

\n
", "smithy.api#required": {} } }, "RoleSessionName": { "target": "com.amazonaws.sts#roleSessionNameType", "traits": { - "smithy.api#documentation": "

An identifier for the assumed role session. Typically, you pass the name or identifier\n that is associated with the user who is using your application. That way, the temporary\n security credentials that your application will use are associated with that user. This\n session name is included as part of the ARN and assumed role ID in the\n AssumedRoleUser response element.

\n

The regex used to validate this parameter is a string of characters \n consisting of upper- and lower-case alphanumeric characters with no spaces. You can \n also include underscores or any of the following characters: =,.@-

", + "smithy.api#documentation": "

An identifier for the assumed role session. Typically, you pass the name or identifier\n that is associated with the user who is using your application. That way, the temporary\n security credentials that your application will use are associated with that user. This\n session name is included as part of the ARN and assumed role ID in the\n AssumedRoleUser response element.

\n

For security purposes, administrators can view this field in CloudTrail logs to help identify who performed an action in Amazon Web Services. Your\n administrator might require that you specify your user name as the session name when you\n assume the role. For more information, see \n sts:RoleSessionName\n .

\n

The regex used to validate this parameter is a string of characters \n consisting of upper- and lower-case alphanumeric characters with no spaces. You can \n also include underscores or any of the following characters: =,.@-

", "smithy.api#required": {} } }, "WebIdentityToken": { "target": "com.amazonaws.sts#clientTokenType", "traits": { - "smithy.api#documentation": "

The OAuth 2.0 access token or OpenID Connect ID token that is provided by the identity\n provider. Your application must get this token by authenticating the user who is using your\n application with a web identity provider before the application makes an\n AssumeRoleWithWebIdentity call. Only tokens with RSA algorithms (RS256) are\n supported.

", + "smithy.api#documentation": "

The OAuth 2.0 access token or OpenID Connect ID token that is provided by the identity\n provider. Your application must get this token by authenticating the user who is using your\n application with a web identity provider before the application makes an\n AssumeRoleWithWebIdentity call. Timestamps in the token must be formatted\n as either an integer or a long integer. Tokens must be signed using either RSA keys (RS256,\n RS384, or RS512) or ECDSA keys (ES256, ES384, or ES512).

", "smithy.api#required": {} } }, @@ -2706,7 +2669,7 @@ "Policy": { "target": "com.amazonaws.sts#sessionPolicyDocumentType", "traits": { - "smithy.api#documentation": "

An IAM policy in JSON format that you want to use as an inline session policy.

\n

This parameter is optional. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

The plaintext that you use for both inline and managed session policies can't exceed\n 2,048 characters. The JSON policy characters can be any ASCII character from the space\n character to the end of the valid character list (\\u0020 through \\u00FF). It can also\n include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)\n characters.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
" + "smithy.api#documentation": "

An IAM policy in JSON format that you want to use as an inline session policy.

\n

This parameter is optional. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

The plaintext that you use for both inline and managed session policies can't exceed\n 2,048 characters. The JSON policy characters can be any ASCII character from the space\n character to the end of the valid character list (\\u0020 through \\u00FF). It can also\n include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)\n characters.

\n

For more information about role session permissions, see Session\n policies.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
" } }, "DurationSeconds": { @@ -2762,7 +2725,7 @@ "SourceIdentity": { "target": "com.amazonaws.sts#sourceIdentityType", "traits": { - "smithy.api#documentation": "

The value of the source identity that is returned in the JSON web token (JWT) from the\n identity provider.

\n

You can require users to set a source identity value when they assume a role. You do\n this by using the sts:SourceIdentity condition key in a role trust policy.\n That way, actions that are taken with the role are associated with that user. After the\n source identity is set, the value cannot be changed. It is present in the request for all\n actions that are taken by the role and persists across chained\n role sessions. You can configure your identity provider to use an attribute\n associated with your users, like user name or email, as the source identity when calling\n AssumeRoleWithWebIdentity. You do this by adding a claim to the JSON web\n token. To learn more about OIDC tokens and claims, see Using Tokens with User Pools in the Amazon Cognito Developer Guide.\n For more information about using source identity, see Monitor and control\n actions taken with assumed roles in the\n IAM User Guide.

\n

The regex used to validate this parameter is a string of characters \n consisting of upper- and lower-case alphanumeric characters with no spaces. You can \n also include underscores or any of the following characters: =,.@-

" + "smithy.api#documentation": "

The value of the source identity that is returned in the JSON web token (JWT) from the\n identity provider.

\n

You can require users to set a source identity value when they assume a role. You do\n this by using the sts:SourceIdentity condition key in a role trust policy.\n That way, actions that are taken with the role are associated with that user. After the\n source identity is set, the value cannot be changed. It is present in the request for all\n actions that are taken by the role and persists across chained role\n sessions. You can configure your identity provider to use an attribute associated with your\n users, like user name or email, as the source identity when calling\n AssumeRoleWithWebIdentity. You do this by adding a claim to the JSON web\n token. To learn more about OIDC tokens and claims, see Using Tokens with User Pools in the Amazon Cognito Developer Guide.\n For more information about using source identity, see Monitor and control\n actions taken with assumed roles in the\n IAM User Guide.

\n

The regex used to validate this parameter is a string of characters \n consisting of upper- and lower-case alphanumeric characters with no spaces. You can \n also include underscores or any of the following characters: =,.@-

" } } }, @@ -2771,6 +2734,96 @@ "smithy.api#output": {} } }, + "com.amazonaws.sts#AssumeRoot": { + "type": "operation", + "input": { + "target": "com.amazonaws.sts#AssumeRootRequest" + }, + "output": { + "target": "com.amazonaws.sts#AssumeRootResponse" + }, + "errors": [ + { + "target": "com.amazonaws.sts#ExpiredTokenException" + }, + { + "target": "com.amazonaws.sts#RegionDisabledException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns a set of short term credentials you can use to perform privileged tasks on a\n member account in your organization.

\n

Before you can launch a privileged session, you must have centralized root access in\n your organization. For steps to enable this feature, see Centralize root access for\n member accounts in the IAM User Guide.

\n \n

The STS global endpoint is not supported for AssumeRoot. You must send this request\n to a Regional STS endpoint. For more information, see Endpoints.

\n
\n

You can track AssumeRoot in CloudTrail logs to determine what actions were performed in a\n session. For more information, see Track privileged tasks\n in CloudTrail in the IAM User Guide.

", + "smithy.api#examples": [ + { + "title": "To launch a privileged session", + "documentation": "The following command retrieves a set of short-term credentials you can use to unlock an S3 bucket for a member account by removing the bucket policy.", + "input": { + "TargetPrincipal": "111122223333", + "TaskPolicyArn": { + "arn": "arn:aws:iam::aws:policy/root-task/S3UnlockBucketPolicy" + }, + "DurationSeconds": 900 + }, + "output": { + "Credentials": { + "SecretAccessKey": "9drTJvcXLB89EXAMPLELB8923FB892xMFI", + "SessionToken": "AQoXdzELDDY//////////wEaoAK1wvxJY12r2IrDFT2IvAzTCn3zHoZ7YNtpiQLF0MqZye/qwjzP2iEXAMPLEbw/m3hsj8VBTkPORGvr9jM5sgP+w9IZWZnU+LWhmg+a5fDi2oTGUYcdg9uexQ4mtCHIHfi4citgqZTgco40Yqr4lIlo4V2b2Dyauk0eYFNebHtYlFVgAUj+7Indz3LU0aTWk1WKIjHmmMCIoTkyYp/k7kUG7moeEYKSitwQIi6Gjn+nyzM+PtoA3685ixzv0R7i5rjQi0YE0lf1oeie3bDiNHncmzosRM6SFiPzSvp6h/32xQuZsjcypmwsPSDtTPYcs0+YN/8BRi2/IcrxSpnWEXAMPLEXSDFTAQAM6Dl9zR0tXoybnlrZIwMLlMi1Kcgo5OytwU=", + "Expiration": "2024-11-15T00:05:07Z", + "AccessKeyId": "ASIAJEXAMPLEXEG2JICEA" + }, + "SourceIdentity": "Alice" + } + } + ] + } + }, + "com.amazonaws.sts#AssumeRootRequest": { + "type": "structure", + "members": { + "TargetPrincipal": { + "target": "com.amazonaws.sts#TargetPrincipalType", + "traits": { + "smithy.api#documentation": "

The member account principal ARN or account ID.

", + "smithy.api#required": {} + } + }, + "TaskPolicyArn": { + "target": "com.amazonaws.sts#PolicyDescriptorType", + "traits": { + "smithy.api#documentation": "

The identity based policy that scopes the session to the privileged tasks that can be\n performed. You can use one of following Amazon Web Services managed policies to scope root session\n actions.

\n ", + "smithy.api#required": {} + } + }, + "DurationSeconds": { + "target": "com.amazonaws.sts#RootDurationSecondsType", + "traits": { + "smithy.api#documentation": "

The duration, in seconds, of the privileged session. The value can range from 0 seconds\n up to the maximum session duration of 900 seconds (15 minutes). If you specify a value\n higher than this setting, the operation fails.

\n

By default, the value is set to 900 seconds.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.sts#AssumeRootResponse": { + "type": "structure", + "members": { + "Credentials": { + "target": "com.amazonaws.sts#Credentials", + "traits": { + "smithy.api#documentation": "

The temporary security credentials, which include an access key ID, a secret access key,\n and a security token.

\n \n

The size of the security token that STS API operations return is not fixed. We\n strongly recommend that you make no assumptions about the maximum size.

\n
" + } + }, + "SourceIdentity": { + "target": "com.amazonaws.sts#sourceIdentityType", + "traits": { + "smithy.api#documentation": "

The source identity specified by the principal that is calling the\n AssumeRoot operation.

\n

You can use the aws:SourceIdentity condition key to control access based on\n the value of source identity. For more information about using source identity, see Monitor and control\n actions taken with assumed roles in the\n IAM User Guide.

\n

The regex used to validate this parameter is a string of characters consisting of upper-\n and lower-case alphanumeric characters with no spaces. You can also include underscores or\n any of the following characters: =,.@-

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.sts#AssumedRoleUser": { "type": "structure", "members": { @@ -3066,7 +3119,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a set of temporary security credentials (consisting of an access key ID, a\n secret access key, and a security token) for a user. A typical use is in a proxy\n application that gets temporary security credentials on behalf of distributed applications\n inside a corporate network.

\n

You must call the GetFederationToken operation using the long-term security\n credentials of an IAM user. As a result, this call is appropriate in\n contexts where those credentials can be safeguarded, usually in a server-based application.\n For a comparison of GetFederationToken with the other API operations that\n produce temporary credentials, see Requesting Temporary Security\n Credentials and Comparing the\n Amazon Web Services STS API operations in the IAM User Guide.

\n

Although it is possible to call GetFederationToken using the security\n credentials of an Amazon Web Services account root user rather than an IAM user that you\n create for the purpose of a proxy application, we do not recommend it. For more\n information, see Safeguard your root user credentials and don't use them for everyday tasks in the\n IAM User Guide.

\n \n

You can create a mobile-based or browser-based app that can authenticate users using\n a web identity provider like Login with Amazon, Facebook, Google, or an OpenID\n Connect-compatible identity provider. In this case, we recommend that you use Amazon Cognito or\n AssumeRoleWithWebIdentity. For more information, see Federation Through a Web-based Identity Provider in the\n IAM User Guide.

\n
\n

\n Session duration\n

\n

The temporary credentials are valid for the specified duration, from 900 seconds (15\n minutes) up to a maximum of 129,600 seconds (36 hours). The default session duration is\n 43,200 seconds (12 hours). Temporary credentials obtained by using the root user\n credentials have a maximum duration of 3,600 seconds (1 hour).

\n

\n Permissions\n

\n

You can use the temporary credentials created by GetFederationToken in any\n Amazon Web Services service with the following exceptions:

\n
    \n
  • \n

    You cannot call any IAM operations using the CLI or the Amazon Web Services API. This\n limitation does not apply to console sessions.

    \n
  • \n
  • \n

    You cannot call any STS operations except GetCallerIdentity.

    \n
  • \n
\n

You can use temporary credentials for single sign-on (SSO) to the console.

\n

You must pass an inline or managed session policy to\n this operation. You can pass a single JSON policy document to use as an inline session\n policy. You can also specify up to 10 managed policy Amazon Resource Names (ARNs) to use as\n managed session policies. The plaintext that you use for both inline and managed session\n policies can't exceed 2,048 characters.

\n

Though the session policy parameters are optional, if you do not pass a policy, then the\n resulting federated user session has no permissions. When you pass session policies, the\n session permissions are the intersection of the IAM user policies and the\n session policies that you pass. This gives you a way to further restrict the permissions\n for a federated user. You cannot use session policies to grant more permissions than those\n that are defined in the permissions policy of the IAM user. For more\n information, see Session Policies in\n the IAM User Guide. For information about using\n GetFederationToken to create temporary security credentials, see GetFederationToken—Federation Through a Custom Identity Broker.

\n

You can use the credentials to access a resource that has a resource-based policy. If\n that policy specifically references the federated user session in the\n Principal element of the policy, the session has the permissions allowed by\n the policy. These permissions are granted in addition to the permissions granted by the\n session policies.

\n

\n Tags\n

\n

(Optional) You can pass tag key-value pairs to your session. These are called session\n tags. For more information about session tags, see Passing Session Tags in STS in the\n IAM User Guide.

\n \n

You can create a mobile-based or browser-based app that can authenticate users using\n a web identity provider like Login with Amazon, Facebook, Google, or an OpenID\n Connect-compatible identity provider. In this case, we recommend that you use Amazon Cognito or\n AssumeRoleWithWebIdentity. For more information, see Federation Through a Web-based Identity Provider in the\n IAM User Guide.

\n
\n

An administrator must grant you the permissions necessary to pass session tags. The\n administrator can also create granular permissions to allow you to pass only specific\n session tags. For more information, see Tutorial: Using Tags\n for Attribute-Based Access Control in the\n IAM User Guide.

\n

Tag key–value pairs are not case sensitive, but case is preserved. This means that you\n cannot have separate Department and department tag keys. Assume\n that the user that you are federating has the\n Department=Marketing tag and you pass the\n department=engineering session tag. Department\n and department are not saved as separate tags, and the session tag passed in\n the request takes precedence over the user tag.

", + "smithy.api#documentation": "

Returns a set of temporary security credentials (consisting of an access key ID, a\n secret access key, and a security token) for a user. A typical use is in a proxy\n application that gets temporary security credentials on behalf of distributed applications\n inside a corporate network.

\n

You must call the GetFederationToken operation using the long-term security\n credentials of an IAM user. As a result, this call is appropriate in\n contexts where those credentials can be safeguarded, usually in a server-based application.\n For a comparison of GetFederationToken with the other API operations that\n produce temporary credentials, see Requesting Temporary Security\n Credentials and Compare STS\n credentials in the IAM User Guide.

\n

Although it is possible to call GetFederationToken using the security\n credentials of an Amazon Web Services account root user rather than an IAM user that you\n create for the purpose of a proxy application, we do not recommend it. For more\n information, see Safeguard your root user credentials and don't use them for everyday tasks in the\n IAM User Guide.

\n \n

You can create a mobile-based or browser-based app that can authenticate users using\n a web identity provider like Login with Amazon, Facebook, Google, or an OpenID\n Connect-compatible identity provider. In this case, we recommend that you use Amazon Cognito or\n AssumeRoleWithWebIdentity. For more information, see Federation Through a Web-based Identity Provider in the\n IAM User Guide.

\n
\n

\n Session duration\n

\n

The temporary credentials are valid for the specified duration, from 900 seconds (15\n minutes) up to a maximum of 129,600 seconds (36 hours). The default session duration is\n 43,200 seconds (12 hours). Temporary credentials obtained by using the root user\n credentials have a maximum duration of 3,600 seconds (1 hour).

\n

\n Permissions\n

\n

You can use the temporary credentials created by GetFederationToken in any\n Amazon Web Services service with the following exceptions:

\n
    \n
  • \n

    You cannot call any IAM operations using the CLI or the Amazon Web Services API. This\n limitation does not apply to console sessions.

    \n
  • \n
  • \n

    You cannot call any STS operations except GetCallerIdentity.

    \n
  • \n
\n

You can use temporary credentials for single sign-on (SSO) to the console.

\n

You must pass an inline or managed session policy to\n this operation. You can pass a single JSON policy document to use as an inline session\n policy. You can also specify up to 10 managed policy Amazon Resource Names (ARNs) to use as\n managed session policies. The plaintext that you use for both inline and managed session\n policies can't exceed 2,048 characters.

\n

Though the session policy parameters are optional, if you do not pass a policy, then the\n resulting federated user session has no permissions. When you pass session policies, the\n session permissions are the intersection of the IAM user policies and the\n session policies that you pass. This gives you a way to further restrict the permissions\n for a federated user. You cannot use session policies to grant more permissions than those\n that are defined in the permissions policy of the IAM user. For more\n information, see Session Policies in\n the IAM User Guide. For information about using\n GetFederationToken to create temporary security credentials, see GetFederationToken—Federation Through a Custom Identity Broker.

\n

You can use the credentials to access a resource that has a resource-based policy. If\n that policy specifically references the federated user session in the\n Principal element of the policy, the session has the permissions allowed by\n the policy. These permissions are granted in addition to the permissions granted by the\n session policies.

\n

\n Tags\n

\n

(Optional) You can pass tag key-value pairs to your session. These are called session\n tags. For more information about session tags, see Passing Session Tags in STS in the\n IAM User Guide.

\n \n

You can create a mobile-based or browser-based app that can authenticate users using\n a web identity provider like Login with Amazon, Facebook, Google, or an OpenID\n Connect-compatible identity provider. In this case, we recommend that you use Amazon Cognito or\n AssumeRoleWithWebIdentity. For more information, see Federation Through a Web-based Identity Provider in the\n IAM User Guide.

\n
\n

An administrator must grant you the permissions necessary to pass session tags. The\n administrator can also create granular permissions to allow you to pass only specific\n session tags. For more information, see Tutorial: Using Tags\n for Attribute-Based Access Control in the\n IAM User Guide.

\n

Tag key–value pairs are not case sensitive, but case is preserved. This means that you\n cannot have separate Department and department tag keys. Assume\n that the user that you are federating has the\n Department=Marketing tag and you pass the\n department=engineering session tag. Department\n and department are not saved as separate tags, and the session tag passed in\n the request takes precedence over the user tag.

", "smithy.api#examples": [ { "title": "To get temporary credentials for a role by using GetFederationToken", @@ -3183,7 +3236,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a set of temporary credentials for an Amazon Web Services account or IAM user.\n The credentials consist of an access key ID, a secret access key, and a security token.\n Typically, you use GetSessionToken if you want to use MFA to protect\n programmatic calls to specific Amazon Web Services API operations like Amazon EC2\n StopInstances.

\n

MFA-enabled IAM users must call GetSessionToken and submit\n an MFA code that is associated with their MFA device. Using the temporary security\n credentials that the call returns, IAM users can then make programmatic\n calls to API operations that require MFA authentication. An incorrect MFA code causes the\n API to return an access denied error. For a comparison of GetSessionToken with\n the other API operations that produce temporary credentials, see Requesting\n Temporary Security Credentials and Comparing the\n Amazon Web Services STS API operations in the IAM User Guide.

\n \n

No permissions are required for users to perform this operation. The purpose of the\n sts:GetSessionToken operation is to authenticate the user using MFA. You\n cannot use policies to control authentication operations. For more information, see\n Permissions for GetSessionToken in the\n IAM User Guide.

\n
\n

\n Session Duration\n

\n

The GetSessionToken operation must be called by using the long-term Amazon Web Services\n security credentials of an IAM user. Credentials that are created by IAM users are valid for the duration that you specify. This duration can range\n from 900 seconds (15 minutes) up to a maximum of 129,600 seconds (36 hours), with a default\n of 43,200 seconds (12 hours). Credentials based on account credentials can range from 900\n seconds (15 minutes) up to 3,600 seconds (1 hour), with a default of 1 hour.

\n

\n Permissions\n

\n

The temporary security credentials created by GetSessionToken can be used\n to make API calls to any Amazon Web Services service with the following exceptions:

\n
    \n
  • \n

    You cannot call any IAM API operations unless MFA authentication information is\n included in the request.

    \n
  • \n
  • \n

    You cannot call any STS API except\n AssumeRole or GetCallerIdentity.

    \n
  • \n
\n

The credentials that GetSessionToken returns are based on permissions\n associated with the IAM user whose credentials were used to call the\n operation. The temporary credentials have the same permissions as the IAM user.

\n \n

Although it is possible to call GetSessionToken using the security\n credentials of an Amazon Web Services account root user rather than an IAM user, we do\n not recommend it. If GetSessionToken is called using root user\n credentials, the temporary credentials have root user permissions. For more\n information, see Safeguard your root user credentials and don't use them for everyday tasks in the\n IAM User Guide\n

\n
\n

For more information about using GetSessionToken to create temporary\n credentials, see Temporary\n Credentials for Users in Untrusted Environments in the\n IAM User Guide.

", + "smithy.api#documentation": "

Returns a set of temporary credentials for an Amazon Web Services account or IAM user.\n The credentials consist of an access key ID, a secret access key, and a security token.\n Typically, you use GetSessionToken if you want to use MFA to protect\n programmatic calls to specific Amazon Web Services API operations like Amazon EC2\n StopInstances.

\n

MFA-enabled IAM users must call GetSessionToken and submit\n an MFA code that is associated with their MFA device. Using the temporary security\n credentials that the call returns, IAM users can then make programmatic\n calls to API operations that require MFA authentication. An incorrect MFA code causes the\n API to return an access denied error. For a comparison of GetSessionToken with\n the other API operations that produce temporary credentials, see Requesting\n Temporary Security Credentials and Compare STS\n credentials in the IAM User Guide.

\n \n

No permissions are required for users to perform this operation. The purpose of the\n sts:GetSessionToken operation is to authenticate the user using MFA. You\n cannot use policies to control authentication operations. For more information, see\n Permissions for GetSessionToken in the\n IAM User Guide.

\n
\n

\n Session Duration\n

\n

The GetSessionToken operation must be called by using the long-term Amazon Web Services\n security credentials of an IAM user. Credentials that are created by IAM users are valid for the duration that you specify. This duration can range\n from 900 seconds (15 minutes) up to a maximum of 129,600 seconds (36 hours), with a default\n of 43,200 seconds (12 hours). Credentials based on account credentials can range from 900\n seconds (15 minutes) up to 3,600 seconds (1 hour), with a default of 1 hour.

\n

\n Permissions\n

\n

The temporary security credentials created by GetSessionToken can be used\n to make API calls to any Amazon Web Services service with the following exceptions:

\n
    \n
  • \n

    You cannot call any IAM API operations unless MFA authentication information is\n included in the request.

    \n
  • \n
  • \n

    You cannot call any STS API except\n AssumeRole or GetCallerIdentity.

    \n
  • \n
\n

The credentials that GetSessionToken returns are based on permissions\n associated with the IAM user whose credentials were used to call the\n operation. The temporary credentials have the same permissions as the IAM user.

\n \n

Although it is possible to call GetSessionToken using the security\n credentials of an Amazon Web Services account root user rather than an IAM user, we do\n not recommend it. If GetSessionToken is called using root user\n credentials, the temporary credentials have root user permissions. For more\n information, see Safeguard your root user credentials and don't use them for everyday tasks in the\n IAM User Guide\n

\n
\n

For more information about using GetSessionToken to create temporary\n credentials, see Temporary\n Credentials for Users in Untrusted Environments in the\n IAM User Guide.

", "smithy.api#examples": [ { "title": "To get temporary credentials for an IAM user or an AWS account", @@ -3258,7 +3311,7 @@ "code": "IDPCommunicationError", "httpResponseCode": 400 }, - "smithy.api#documentation": "

The request could not be fulfilled because the identity provider (IDP) that\n was asked to verify the incoming identity token could not be reached. This is often a\n transient error caused by network conditions. Retry the request a limited number of\n times so that you don't exceed the request rate. If the error persists, the\n identity provider might be down or not responding.

", + "smithy.api#documentation": "

The request could not be fulfilled because the identity provider (IDP) that was asked\n to verify the incoming identity token could not be reached. This is often a transient\n error caused by network conditions. Retry the request a limited number of times so that\n you don't exceed the request rate. If the error persists, the identity provider might be\n down or not responding.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -3292,7 +3345,7 @@ "code": "InvalidAuthorizationMessageException", "httpResponseCode": 400 }, - "smithy.api#documentation": "

The error returned if the message passed to DecodeAuthorizationMessage\n was invalid. This can happen if the token contains invalid characters, such as\n linebreaks.

", + "smithy.api#documentation": "

The error returned if the message passed to DecodeAuthorizationMessage\n was invalid. This can happen if the token contains invalid characters, such as line\n breaks, or if the message has expired.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -3349,7 +3402,7 @@ "code": "PackedPolicyTooLarge", "httpResponseCode": 400 }, - "smithy.api#documentation": "

The request was rejected because the total packed size of the session policies and\n session tags combined was too large. An Amazon Web Services conversion compresses the session policy\n document, session policy ARNs, and session tags into a packed binary format that has a\n separate limit. The error message indicates by percentage how close the policies and\n tags are to the upper size limit. For more information, see Passing Session Tags in STS in\n the IAM User Guide.

\n

You could receive this error even though you meet other defined session policy and\n session tag limits. For more information, see IAM and STS Entity\n Character Limits in the IAM User Guide.

", + "smithy.api#documentation": "

The request was rejected because the total packed size of the session policies and\n session tags combined was too large. An Amazon Web Services conversion compresses the session policy\n document, session policy ARNs, and session tags into a packed binary format that has a\n separate limit. The error message indicates by percentage how close the policies and\n tags are to the upper size limit. For more information, see Passing Session Tags in STS in\n the IAM User Guide.

\n

You could receive this error even though you meet other defined session policy and\n session tag limits. For more information, see IAM and STS Entity Character Limits in the IAM User\n Guide.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -3412,11 +3465,20 @@ "code": "RegionDisabledException", "httpResponseCode": 403 }, - "smithy.api#documentation": "

STS is not activated in the requested region for the account that is being asked to\n generate credentials. The account administrator must use the IAM console to activate STS\n in that region. For more information, see Activating and\n Deactivating Amazon Web Services STS in an Amazon Web Services Region in the IAM User\n Guide.

", + "smithy.api#documentation": "

STS is not activated in the requested region for the account that is being asked to\n generate credentials. The account administrator must use the IAM console to activate\n STS in that region. For more information, see Activating and\n Deactivating STS in an Amazon Web Services Region in the IAM User\n Guide.

", "smithy.api#error": "client", "smithy.api#httpError": 403 } }, + "com.amazonaws.sts#RootDurationSecondsType": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 900 + } + } + }, "com.amazonaws.sts#SAMLAssertionType": { "type": "string", "traits": { @@ -3455,6 +3517,15 @@ "smithy.api#documentation": "

You can pass custom key-value pair attributes when you assume a role or federate a user.\n These are called session tags. You can then use the session tags to control access to\n resources. For more information, see Tagging Amazon Web Services STS Sessions in the\n IAM User Guide.

" } }, + "com.amazonaws.sts#TargetPrincipalType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 12, + "max": 2048 + } + } + }, "com.amazonaws.sts#accessKeyIdType": { "type": "string", "traits": { diff --git a/aws/sdk/aws-models/timestream-query.json b/aws/sdk/aws-models/timestream-query.json index 720ffb35606..4fe0dc8c7ed 100644 --- a/aws/sdk/aws-models/timestream-query.json +++ b/aws/sdk/aws-models/timestream-query.json @@ -41,11 +41,29 @@ "code": "AccessDenied", "httpResponseCode": 403 }, - "smithy.api#documentation": "

You are not authorized to perform this action.

", + "smithy.api#documentation": "

You do not have the necessary permissions to access the account settings.

", "smithy.api#error": "client", "smithy.api#httpError": 403 } }, + "com.amazonaws.timestreamquery#AccountSettingsNotificationConfiguration": { + "type": "structure", + "members": { + "SnsConfiguration": { + "target": "com.amazonaws.timestreamquery#SnsConfiguration" + }, + "RoleArn": { + "target": "com.amazonaws.timestreamquery#AmazonResourceName", + "traits": { + "smithy.api#documentation": "

An Amazon Resource Name (ARN) that grants Timestream permission to publish notifications. This field is only visible if SNS Topic is provided when updating the account settings.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Configuration settings for notifications related to account settings.

" + } + }, "com.amazonaws.timestreamquery#AmazonResourceName": { "type": "string", "traits": { @@ -164,6 +182,23 @@ "target": "com.amazonaws.timestreamquery#ColumnInfo" } }, + "com.amazonaws.timestreamquery#ComputeMode": { + "type": "enum", + "members": { + "ON_DEMAND": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ON_DEMAND" + } + }, + "PROVISIONED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PROVISIONED" + } + } + } + }, "com.amazonaws.timestreamquery#ConflictException": { "type": "structure", "members": { @@ -443,13 +478,19 @@ "MaxQueryTCU": { "target": "com.amazonaws.timestreamquery#MaxQueryCapacity", "traits": { - "smithy.api#documentation": "

The maximum number of Timestream compute units (TCUs) the service will use at any point in time to serve your queries.

" + "smithy.api#documentation": "

The maximum number of Timestream compute units (TCUs) the service will use at any point in time to serve your queries. To run queries, you must set a minimum capacity of 4 TCU. You can set the maximum number of TCU in multiples of 4, for example, 4, 8, 16, 32, and so on. This configuration is applicable only for on-demand usage of (TCUs). \n \n \n

" } }, "QueryPricingModel": { "target": "com.amazonaws.timestreamquery#QueryPricingModel", "traits": { - "smithy.api#documentation": "

The pricing model for queries in your account.

" + "smithy.api#documentation": "

The pricing model for queries in your account.

\n \n

The QueryPricingModel parameter is used by several Timestream operations; however, the UpdateAccountSettings API operation doesn't recognize any values other than COMPUTE_UNITS.

\n
" + } + }, + "QueryCompute": { + "target": "com.amazonaws.timestreamquery#QueryComputeResponse", + "traits": { + "smithy.api#documentation": "

An object that contains the usage settings for Timestream Compute Units (TCUs) in your account for the query workload.

" } } }, @@ -705,7 +746,7 @@ "aws.api#clientDiscoveredEndpoint": { "required": true }, - "smithy.api#documentation": "

You can use this API to run a scheduled query manually.

", + "smithy.api#documentation": "

You can use this API to run a scheduled query manually.

\n

If you enabled QueryInsights, this API also returns insights and metrics related to the query that you executed as part of an Amazon SNS notification. QueryInsights helps with performance tuning of your query. For more information about QueryInsights, see Using query insights to optimize queries in Amazon Timestream.

", "smithy.api#idempotent": {} } }, @@ -732,6 +773,12 @@ "smithy.api#documentation": "

Not used.

", "smithy.api#idempotencyToken": {} } + }, + "QueryInsights": { + "target": "com.amazonaws.timestreamquery#ScheduledQueryInsights", + "traits": { + "smithy.api#documentation": "

Encapsulates settings for enabling QueryInsights.

\n

Enabling QueryInsights returns insights and metrics as a part of the Amazon SNS notification for the query that you executed. You can use QueryInsights to tune your query performance and cost.

" + } } }, "traits": { @@ -796,7 +843,7 @@ } }, "traits": { - "smithy.api#documentation": "

\n The service was unable to fully process this request because of an internal\n server error.

", + "smithy.api#documentation": "

An internal server error occurred while processing the request.

", "smithy.api#error": "server", "smithy.api#httpError": 500 } @@ -809,11 +856,60 @@ } }, "traits": { - "smithy.api#documentation": "

The requested endpoint was not valid.

", + "smithy.api#documentation": "

The requested endpoint is invalid.

", "smithy.api#error": "client", "smithy.api#httpError": 421 } }, + "com.amazonaws.timestreamquery#LastUpdate": { + "type": "structure", + "members": { + "TargetQueryTCU": { + "target": "com.amazonaws.timestreamquery#QueryTCU", + "traits": { + "smithy.api#documentation": "

The number of TimeStream Compute Units (TCUs) requested in the last account settings update.

" + } + }, + "Status": { + "target": "com.amazonaws.timestreamquery#LastUpdateStatus", + "traits": { + "smithy.api#documentation": "

The status of the last update. Can be either PENDING, FAILED, or SUCCEEDED.

" + } + }, + "StatusMessage": { + "target": "com.amazonaws.timestreamquery#String", + "traits": { + "smithy.api#documentation": "

Error message describing the last account settings update status, visible only if an error occurred.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Configuration object that contains the most recent account settings update, visible only if settings have been updated previously.

" + } + }, + "com.amazonaws.timestreamquery#LastUpdateStatus": { + "type": "enum", + "members": { + "PENDING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PENDING" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" + } + }, + "SUCCEEDED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SUCCEEDED" + } + } + } + }, "com.amazonaws.timestreamquery#ListScheduledQueries": { "type": "operation", "input": { @@ -1169,7 +1265,7 @@ "SnsConfiguration": { "target": "com.amazonaws.timestreamquery#SnsConfiguration", "traits": { - "smithy.api#documentation": "

Details on SNS configuration.

", + "smithy.api#documentation": "

Details about the Amazon Simple Notification Service (SNS) configuration. This field is visible only when SNS Topic is provided when updating the account settings.

", "smithy.api#required": {} } } @@ -1217,6 +1313,15 @@ "target": "com.amazonaws.timestreamquery#ParameterMapping" } }, + "com.amazonaws.timestreamquery#PartitionKey": { + "type": "string" + }, + "com.amazonaws.timestreamquery#PartitionKeyList": { + "type": "list", + "member": { + "target": "com.amazonaws.timestreamquery#PartitionKey" + } + }, "com.amazonaws.timestreamquery#PrepareQuery": { "type": "operation", "input": { @@ -1300,6 +1405,53 @@ "smithy.api#output": {} } }, + "com.amazonaws.timestreamquery#ProvisionedCapacityRequest": { + "type": "structure", + "members": { + "TargetQueryTCU": { + "target": "com.amazonaws.timestreamquery#QueryTCU", + "traits": { + "smithy.api#documentation": "

The target compute capacity for querying data, specified in Timestream Compute Units (TCUs).

", + "smithy.api#required": {} + } + }, + "NotificationConfiguration": { + "target": "com.amazonaws.timestreamquery#AccountSettingsNotificationConfiguration", + "traits": { + "smithy.api#documentation": "

Configuration settings for notifications related to the provisioned capacity update.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A request to update the provisioned capacity settings for querying data.

" + } + }, + "com.amazonaws.timestreamquery#ProvisionedCapacityResponse": { + "type": "structure", + "members": { + "ActiveQueryTCU": { + "target": "com.amazonaws.timestreamquery#QueryTCU", + "traits": { + "smithy.api#documentation": "

The number of Timestream Compute Units (TCUs) provisioned in the account. This field is only visible when the compute mode is PROVISIONED.

" + } + }, + "NotificationConfiguration": { + "target": "com.amazonaws.timestreamquery#AccountSettingsNotificationConfiguration", + "traits": { + "smithy.api#documentation": "

An object that contains settings for notifications that are sent whenever the provisioned capacity settings are modified. This field is only visible when the compute mode is PROVISIONED.

" + } + }, + "LastUpdate": { + "target": "com.amazonaws.timestreamquery#LastUpdate", + "traits": { + "smithy.api#documentation": "

Information about the last update to the provisioned capacity settings.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The response to a request to update the provisioned capacity settings for querying data.

" + } + }, "com.amazonaws.timestreamquery#Query": { "type": "operation", "input": { @@ -1335,7 +1487,7 @@ "aws.api#clientDiscoveredEndpoint": { "required": true }, - "smithy.api#documentation": "

\n Query is a synchronous operation that enables you to run a query against\n your Amazon Timestream data. Query will time out after 60 seconds.\n You must update the default timeout in the SDK to support a timeout of 60 seconds. See\n the code\n sample for details.

\n

Your query request will fail in the following cases:

\n
    \n
  • \n

    If you submit a Query request with the same client token outside\n of the 5-minute idempotency window.

    \n
  • \n
  • \n

    If you submit a Query request with the same client token, but\n change other parameters, within the 5-minute idempotency window.

    \n
  • \n
  • \n

    If the size of the row (including the query metadata) exceeds 1 MB, then the\n query will fail with the following error message:

    \n

    \n Query aborted as max page response size has been exceeded by the output\n result row\n

    \n
  • \n
  • \n

    If the IAM principal of the query initiator and the result reader are not the\n same and/or the query initiator and the result reader do not have the same query\n string in the query requests, the query will fail with an Invalid\n pagination token error.

    \n
  • \n
", + "smithy.api#documentation": "

\n Query is a synchronous operation that enables you to run a query against\n your Amazon Timestream data.

\n

If you enabled QueryInsights, this API also returns insights and metrics related to the query that you executed. QueryInsights helps with performance tuning of your query. For more information about QueryInsights, see Using query insights to optimize queries in Amazon Timestream.

\n \n

The maximum number of Query API requests you're allowed to make with QueryInsights enabled is 1 query per second (QPS). If you exceed this query rate, it might result in throttling.

\n
\n

\n Query will time out after 60 seconds.\n You must update the default timeout in the SDK to support a timeout of 60 seconds. See\n the code\n sample for details.

\n

Your query request will fail in the following cases:

\n
    \n
  • \n

    If you submit a Query request with the same client token outside\n of the 5-minute idempotency window.

    \n
  • \n
  • \n

    If you submit a Query request with the same client token, but\n change other parameters, within the 5-minute idempotency window.

    \n
  • \n
  • \n

    If the size of the row (including the query metadata) exceeds 1 MB, then the\n query will fail with the following error message:

    \n

    \n Query aborted as max page response size has been exceeded by the output\n result row\n

    \n
  • \n
  • \n

    If the IAM principal of the query initiator and the result reader are not the\n same and/or the query initiator and the result reader do not have the same query\n string in the query requests, the query will fail with an Invalid\n pagination token error.

    \n
  • \n
", "smithy.api#idempotent": {}, "smithy.api#paginated": { "inputToken": "NextToken", @@ -1345,6 +1497,46 @@ } } }, + "com.amazonaws.timestreamquery#QueryComputeRequest": { + "type": "structure", + "members": { + "ComputeMode": { + "target": "com.amazonaws.timestreamquery#ComputeMode", + "traits": { + "smithy.api#documentation": "

The mode in which Timestream Compute Units (TCUs) are allocated and utilized within an account. Note that in the Asia Pacific (Mumbai) region, the API operation only recognizes the value PROVISIONED.

" + } + }, + "ProvisionedCapacity": { + "target": "com.amazonaws.timestreamquery#ProvisionedCapacityRequest", + "traits": { + "smithy.api#documentation": "

Configuration object that contains settings for provisioned Timestream Compute Units (TCUs) in your account.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A request to retrieve or update the compute capacity settings for querying data.

" + } + }, + "com.amazonaws.timestreamquery#QueryComputeResponse": { + "type": "structure", + "members": { + "ComputeMode": { + "target": "com.amazonaws.timestreamquery#ComputeMode", + "traits": { + "smithy.api#documentation": "

The mode in which Timestream Compute Units (TCUs) are allocated and utilized within an account. Note that in the Asia Pacific (Mumbai) region, the API operation only recognizes the value PROVISIONED.

" + } + }, + "ProvisionedCapacity": { + "target": "com.amazonaws.timestreamquery#ProvisionedCapacityResponse", + "traits": { + "smithy.api#documentation": "

Configuration object that contains settings for provisioned Timestream Compute Units (TCUs) in your account.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The response to a request to retrieve or update the compute capacity settings for querying data.

" + } + }, "com.amazonaws.timestreamquery#QueryExecutionException": { "type": "structure", "members": { @@ -1368,6 +1560,100 @@ "smithy.api#pattern": "^[a-zA-Z0-9]+$" } }, + "com.amazonaws.timestreamquery#QueryInsights": { + "type": "structure", + "members": { + "Mode": { + "target": "com.amazonaws.timestreamquery#QueryInsightsMode", + "traits": { + "smithy.api#documentation": "

Provides the following modes to enable QueryInsights:

\n
    \n
  • \n

    \n ENABLED_WITH_RATE_CONTROL – Enables QueryInsights for the queries being processed. This mode also includes a rate control mechanism, which limits the QueryInsights feature to 1 query per second (QPS).

    \n
  • \n
  • \n

    \n DISABLED – Disables QueryInsights.

    \n
  • \n
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

\n QueryInsights is a performance tuning feature that helps you optimize your queries, reducing costs and improving performance. With QueryInsights, you can assess the pruning efficiency of your queries and identify areas for improvement to enhance query performance. With QueryInsights, you can also analyze the effectiveness of your queries in terms of temporal and spatial pruning, and identify opportunities to improve performance. Specifically, you can evaluate how well your queries use time-based and partition key-based indexing strategies to optimize data retrieval. To optimize query performance, it's essential that you fine-tune both the temporal and spatial parameters that govern query execution.

\n

The key metrics provided by QueryInsights are QuerySpatialCoverage and QueryTemporalRange. QuerySpatialCoverage indicates how much of the spatial axis the query scans, with lower values being more efficient. QueryTemporalRange shows the time range scanned, with narrower ranges being more performant.

\n

\n Benefits of QueryInsights\n

\n

The following are the key benefits of using QueryInsights:

\n
    \n
  • \n

    \n Identifying inefficient queriesQueryInsights provides information on the time-based and attribute-based pruning of the tables accessed by the query. This information helps you identify the tables that are sub-optimally accessed.

    \n
  • \n
  • \n

    \n Optimizing your data model and partitioning – You can use the QueryInsights information to access and fine-tune your data model and partitioning strategy.

    \n
  • \n
  • \n

    \n Tuning queriesQueryInsights highlights opportunities to use indexes more effectively.

    \n
  • \n
\n \n

The maximum number of Query API requests you're allowed to make with QueryInsights enabled is 1 query per second (QPS). If you exceed this query rate, it might result in throttling.

\n
" + } + }, + "com.amazonaws.timestreamquery#QueryInsightsMode": { + "type": "enum", + "members": { + "ENABLED_WITH_RATE_CONTROL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENABLED_WITH_RATE_CONTROL" + } + }, + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED" + } + } + } + }, + "com.amazonaws.timestreamquery#QueryInsightsResponse": { + "type": "structure", + "members": { + "QuerySpatialCoverage": { + "target": "com.amazonaws.timestreamquery#QuerySpatialCoverage", + "traits": { + "smithy.api#documentation": "

Provides insights into the spatial coverage of the query, including the table with sub-optimal (max) spatial pruning. This information can help you identify areas for improvement in your partitioning strategy to enhance spatial pruning.

" + } + }, + "QueryTemporalRange": { + "target": "com.amazonaws.timestreamquery#QueryTemporalRange", + "traits": { + "smithy.api#documentation": "

Provides insights into the temporal range of the query, including the table with the largest (max) time range. Following are some of the potential options for optimizing time-based pruning:

\n
    \n
  • \n

    Add missing time-predicates.

    \n
  • \n
  • \n

    Remove functions around the time predicates.

    \n
  • \n
  • \n

    Add time predicates to all the sub-queries.

    \n
  • \n
" + } + }, + "QueryTableCount": { + "target": "com.amazonaws.timestreamquery#Long", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Indicates the number of tables in the query.

" + } + }, + "OutputRows": { + "target": "com.amazonaws.timestreamquery#Long", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Indicates the total number of rows returned as part of the query result set. You can use this data to validate if the number of rows in the result set have changed as part of the query tuning exercise.

" + } + }, + "OutputBytes": { + "target": "com.amazonaws.timestreamquery#Long", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Indicates the size of query result set in bytes. You can use this data to validate if the result set has changed as part of the query tuning exercise.

" + } + }, + "UnloadPartitionCount": { + "target": "com.amazonaws.timestreamquery#Long", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Indicates the partitions created by the Unload operation.

" + } + }, + "UnloadWrittenRows": { + "target": "com.amazonaws.timestreamquery#Long", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Indicates the rows written by the Unload query.

" + } + }, + "UnloadWrittenBytes": { + "target": "com.amazonaws.timestreamquery#Long", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Indicates the size, in bytes, written by the Unload operation.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides various insights and metrics related to the query that you executed.

" + } + }, "com.amazonaws.timestreamquery#QueryPricingModel": { "type": "enum", "members": { @@ -1413,6 +1699,12 @@ "traits": { "smithy.api#documentation": "

The total number of rows to be returned in the Query output. The initial\n run of Query with a MaxRows value specified will return the\n result set of the query in two cases:

\n
    \n
  • \n

    The size of the result is less than 1MB.

    \n
  • \n
  • \n

    The number of rows in the result set is less than the value of\n maxRows.

    \n
  • \n
\n

Otherwise, the initial invocation of Query only returns a\n NextToken, which can then be used in subsequent calls to fetch the\n result set. To resume pagination, provide the NextToken value in the\n subsequent command.

\n

If the row size is large (e.g. a row has many columns), Timestream may return\n fewer rows to keep the response size from exceeding the 1 MB limit. If\n MaxRows is not provided, Timestream will send the necessary\n number of rows to meet the 1 MB limit.

" } + }, + "QueryInsights": { + "target": "com.amazonaws.timestreamquery#QueryInsights", + "traits": { + "smithy.api#documentation": "

Encapsulates settings for enabling QueryInsights.

\n

Enabling QueryInsights returns insights and metrics in addition to query results for the query that you executed. You can use QueryInsights to tune your query performance.

" + } } }, "traits": { @@ -1454,12 +1746,59 @@ "traits": { "smithy.api#documentation": "

Information about the status of the query, including progress and bytes\n scanned.

" } + }, + "QueryInsightsResponse": { + "target": "com.amazonaws.timestreamquery#QueryInsightsResponse", + "traits": { + "smithy.api#documentation": "

Encapsulates QueryInsights containing insights and metrics related to the query that you executed.

" + } } }, "traits": { "smithy.api#output": {} } }, + "com.amazonaws.timestreamquery#QuerySpatialCoverage": { + "type": "structure", + "members": { + "Max": { + "target": "com.amazonaws.timestreamquery#QuerySpatialCoverageMax", + "traits": { + "smithy.api#documentation": "

Provides insights into the spatial coverage of the executed query and the table with the most inefficient spatial pruning.

\n
    \n
  • \n

    \n Value – The maximum ratio of spatial coverage.

    \n
  • \n
  • \n

    \n TableArn – The Amazon Resource Name (ARN) of the table with sub-optimal spatial pruning.

    \n
  • \n
  • \n

    \n PartitionKey – The partition key used for partitioning, which can be a default measure_name or a CDPK.

    \n
  • \n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides insights into the spatial coverage of the query, including the table with sub-optimal (max) spatial pruning. This information can help you identify areas for improvement in your partitioning strategy to enhance spatial pruning

\n

For example, you can do the following with the QuerySpatialCoverage information:

\n
    \n
  • \n

    Add measure_name or use customer-defined partition key (CDPK) predicates.

    \n
  • \n
  • \n

    If you've already done the preceding action, remove functions around them or clauses, such as LIKE.

    \n
  • \n
" + } + }, + "com.amazonaws.timestreamquery#QuerySpatialCoverageMax": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.timestreamquery#Double", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The maximum ratio of spatial coverage.

" + } + }, + "TableArn": { + "target": "com.amazonaws.timestreamquery#AmazonResourceName", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the table with the most sub-optimal spatial pruning.

" + } + }, + "PartitionKey": { + "target": "com.amazonaws.timestreamquery#PartitionKeyList", + "traits": { + "smithy.api#documentation": "

The partition key used for partitioning, which can be a default measure_name or a customer defined partition key.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides insights into the table with the most sub-optimal spatial range scanned by your query.

" + } + }, "com.amazonaws.timestreamquery#QueryStatus": { "type": "structure", "members": { @@ -1499,6 +1838,44 @@ "smithy.api#sensitive": {} } }, + "com.amazonaws.timestreamquery#QueryTCU": { + "type": "integer" + }, + "com.amazonaws.timestreamquery#QueryTemporalRange": { + "type": "structure", + "members": { + "Max": { + "target": "com.amazonaws.timestreamquery#QueryTemporalRangeMax", + "traits": { + "smithy.api#documentation": "

Encapsulates the following properties that provide insights into the most sub-optimal performing table on the temporal axis:

\n
    \n
  • \n

    \n Value – The maximum duration in nanoseconds between the start and end of the query.

    \n
  • \n
  • \n

    \n TableArn – The Amazon Resource Name (ARN) of the table which is queried with the largest time range.

    \n
  • \n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides insights into the temporal range of the query, including the table with the largest (max) time range.

" + } + }, + "com.amazonaws.timestreamquery#QueryTemporalRangeMax": { + "type": "structure", + "members": { + "Value": { + "target": "com.amazonaws.timestreamquery#Long", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The maximum duration in nanoseconds between the start and end of the query.

" + } + }, + "TableArn": { + "target": "com.amazonaws.timestreamquery#AmazonResourceName", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the table which is queried with the largest time range.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides insights into the table with the most sub-optimal temporal pruning scanned by your query.

" + } + }, "com.amazonaws.timestreamquery#ResourceName": { "type": "string" }, @@ -1931,10 +2308,83 @@ "smithy.api#documentation": "

Structure that describes scheduled query.

" } }, - "com.amazonaws.timestreamquery#ScheduledQueryList": { - "type": "list", - "member": { - "target": "com.amazonaws.timestreamquery#ScheduledQuery" + "com.amazonaws.timestreamquery#ScheduledQueryInsights": { + "type": "structure", + "members": { + "Mode": { + "target": "com.amazonaws.timestreamquery#ScheduledQueryInsightsMode", + "traits": { + "smithy.api#documentation": "

Provides the following modes to enable ScheduledQueryInsights:

\n
    \n
  • \n

    \n ENABLED_WITH_RATE_CONTROL – Enables ScheduledQueryInsights for the queries being processed. This mode also includes a rate control mechanism, which limits the QueryInsights feature to 1 query per second (QPS).

    \n
  • \n
  • \n

    \n DISABLED – Disables ScheduledQueryInsights.

    \n
  • \n
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Encapsulates settings for enabling QueryInsights on an ExecuteScheduledQueryRequest.

" + } + }, + "com.amazonaws.timestreamquery#ScheduledQueryInsightsMode": { + "type": "enum", + "members": { + "ENABLED_WITH_RATE_CONTROL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENABLED_WITH_RATE_CONTROL" + } + }, + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED" + } + } + } + }, + "com.amazonaws.timestreamquery#ScheduledQueryInsightsResponse": { + "type": "structure", + "members": { + "QuerySpatialCoverage": { + "target": "com.amazonaws.timestreamquery#QuerySpatialCoverage", + "traits": { + "smithy.api#documentation": "

Provides insights into the spatial coverage of the query, including the table with sub-optimal (max) spatial pruning. This information can help you identify areas for improvement in your partitioning strategy to enhance spatial pruning.

" + } + }, + "QueryTemporalRange": { + "target": "com.amazonaws.timestreamquery#QueryTemporalRange", + "traits": { + "smithy.api#documentation": "

Provides insights into the temporal range of the query, including the table with the largest (max) time range. Following are some of the potential options for optimizing time-based pruning:

\n
    \n
  • \n

    Add missing time-predicates.

    \n
  • \n
  • \n

    Remove functions around the time predicates.

    \n
  • \n
  • \n

    Add time predicates to all the sub-queries.

    \n
  • \n
" + } + }, + "QueryTableCount": { + "target": "com.amazonaws.timestreamquery#Long", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Indicates the number of tables in the query.

" + } + }, + "OutputRows": { + "target": "com.amazonaws.timestreamquery#Long", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Indicates the total number of rows returned as part of the query result set. You can use this data to validate if the number of rows in the result set have changed as part of the query tuning exercise.

" + } + }, + "OutputBytes": { + "target": "com.amazonaws.timestreamquery#Long", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

Indicates the size of query result set in bytes. You can use this data to validate if the result set has changed as part of the query tuning exercise.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides various insights and metrics related to the ExecuteScheduledQueryRequest that was executed.

" + } + }, + "com.amazonaws.timestreamquery#ScheduledQueryList": { + "type": "list", + "member": { + "target": "com.amazonaws.timestreamquery#ScheduledQuery" } }, "com.amazonaws.timestreamquery#ScheduledQueryName": { @@ -2003,6 +2453,12 @@ "smithy.api#documentation": "

Runtime statistics for a scheduled run.

" } }, + "QueryInsightsResponse": { + "target": "com.amazonaws.timestreamquery#ScheduledQueryInsightsResponse", + "traits": { + "smithy.api#documentation": "

Provides various insights and metrics related to the run summary of the scheduled query.

" + } + }, "ErrorReportLocation": { "target": "com.amazonaws.timestreamquery#ErrorReportLocation", "traits": { @@ -2292,7 +2748,7 @@ } }, "traits": { - "smithy.api#documentation": "

The request was denied due to request throttling.

", + "smithy.api#documentation": "

The request was throttled due to excessive requests.

", "smithy.api#error": "client", "smithy.api#httpError": 429 } @@ -2641,6 +3097,56 @@ } ], "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws", + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://timestream-query-fips.{Region}.api.aws", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws-us-gov", + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://timestream-query.{Region}.api.aws", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, { "conditions": [], "endpoint": { @@ -2693,6 +3199,31 @@ } ], "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + }, + "aws-us-gov" + ] + } + ], + "endpoint": { + "url": "https://query.timestream.{Region}.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, { "conditions": [], "endpoint": { @@ -2745,6 +3276,56 @@ } ], "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws", + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://timestream-query.{Region}.api.aws", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws-us-gov", + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://timestream-query.{Region}.api.aws", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, { "conditions": [], "endpoint": { @@ -2790,28 +3371,145 @@ "smithy.rules#endpointTests": { "testCases": [ { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://query.timestream-fips.us-east-1.api.aws" + "url": "https://query.timestream.ap-northeast-1.amazonaws.com" } }, "params": { - "Region": "us-east-1", - "UseFIPS": true, + "Region": "ap-northeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-query.ap-northeast-1.api.aws" + } + }, + "params": { + "Region": "ap-northeast-1", + "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://query.timestream-fips.us-east-1.amazonaws.com" + "url": "https://query.timestream.ap-south-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-query.ap-south-1.api.aws" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://query.timestream.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-query.ap-southeast-2.api.aws" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://query.timestream.eu-central-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-query.eu-central-1.api.aws" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://query.timestream.eu-west-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-query.eu-west-1.api.aws" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://query.timestream.us-east-1.amazonaws.com" } }, "params": { "Region": "us-east-1", - "UseFIPS": true, + "UseFIPS": false, "UseDualStack": false } }, @@ -2819,7 +3517,7 @@ "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://query.timestream.us-east-1.api.aws" + "url": "https://timestream-query.us-east-1.api.aws" } }, "params": { @@ -2829,18 +3527,109 @@ } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://query.timestream.us-east-1.amazonaws.com" + "url": "https://timestream-query-fips.us-east-1.api.aws" } }, "params": { "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://query.timestream.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", "UseFIPS": false, "UseDualStack": false } }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-query.us-east-2.api.aws" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-query-fips.us-east-2.api.aws" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://query.timestream.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-query.us-west-2.api.aws" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-query-fips.us-west-2.api.aws" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://query.timestream-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, { "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", "expect": { @@ -2894,138 +3683,146 @@ } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://query.timestream-fips.us-gov-east-1.api.aws" + "url": "https://query.timestream.us-gov-west-1.amazonaws.com" } }, "params": { - "Region": "us-gov-east-1", - "UseFIPS": true, - "UseDualStack": true + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://query.timestream-fips.us-gov-east-1.amazonaws.com" + "url": "https://query.timestream.us-gov-west-1.amazonaws.com" } }, "params": { - "Region": "us-gov-east-1", + "Region": "us-gov-west-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://query.timestream.us-gov-east-1.api.aws" + "url": "https://timestream-query.us-gov-west-1.api.aws" } }, "params": { - "Region": "us-gov-east-1", + "Region": "us-gov-west-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://query.timestream.us-gov-east-1.amazonaws.com" + "url": "https://timestream-query.us-gov-west-1.api.aws" } }, "params": { - "Region": "us-gov-east-1", - "UseFIPS": false, - "UseDualStack": false + "Region": "us-gov-west-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + "endpoint": { + "url": "https://timestream-query.us-gov-east-1.api.aws" + } }, "params": { - "Region": "us-iso-east-1", + "Region": "us-gov-east-1", "UseFIPS": true, "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://query.timestream-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://query.timestream.us-gov-east-1.amazonaws.com" } }, "params": { - "Region": "us-iso-east-1", + "Region": "us-gov-east-1", "UseFIPS": true, "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" + "endpoint": { + "url": "https://timestream-query.us-gov-east-1.api.aws" + } }, "params": { - "Region": "us-iso-east-1", + "Region": "us-gov-east-1", "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://query.timestream.us-iso-east-1.c2s.ic.gov" + "url": "https://query.timestream.us-gov-east-1.amazonaws.com" } }, "params": { - "Region": "us-iso-east-1", + "Region": "us-gov-east-1", "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + "endpoint": { + "url": "https://query.timestream-fips.us-iso-east-1.c2s.ic.gov" + } }, "params": { - "Region": "us-isob-east-1", + "Region": "us-iso-east-1", "UseFIPS": true, - "UseDualStack": true + "UseDualStack": false } }, { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://query.timestream-fips.us-isob-east-1.sc2s.sgov.gov" + "url": "https://query.timestream.us-iso-east-1.c2s.ic.gov" } }, "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, + "Region": "us-iso-east-1", + "UseFIPS": false, "UseDualStack": false } }, { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" + "endpoint": { + "url": "https://query.timestream-fips.us-isob-east-1.sc2s.sgov.gov" + } }, "params": { "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -3232,13 +4029,19 @@ "MaxQueryTCU": { "target": "com.amazonaws.timestreamquery#MaxQueryCapacity", "traits": { - "smithy.api#documentation": "

The maximum number of compute units the service will use at any point in time to serve your queries. To run queries, you must set a minimum capacity of 4 TCU. You can set the maximum number of TCU in multiples of 4, for example, 4, 8, 16, 32, and so on.

\n

The maximum value supported for MaxQueryTCU is 1000. To request an increase to this soft limit, contact Amazon Web Services Support. For information about the default quota for maxQueryTCU, see Default quotas.

" + "smithy.api#documentation": "

The maximum number of compute units the service will use at any point in time to serve your queries. To run queries, you must set a minimum capacity of 4 TCU. You can set the maximum number of TCU in multiples of 4, for example, 4, 8, 16, 32, and so on. The maximum value supported for MaxQueryTCU is 1000. To request an increase to this soft limit, contact Amazon Web Services Support. For information about the default quota for maxQueryTCU, see Default quotas. This configuration is applicable only for on-demand usage of Timestream Compute Units (TCUs).

\n

The maximum value supported for MaxQueryTCU is 1000. To request an increase to this soft limit, contact Amazon Web Services Support. For information about the default quota for maxQueryTCU, see Default quotas.

" } }, "QueryPricingModel": { "target": "com.amazonaws.timestreamquery#QueryPricingModel", "traits": { - "smithy.api#documentation": "

The pricing model for queries in an account.

" + "smithy.api#documentation": "

The pricing model for queries in an account.

\n \n

The QueryPricingModel parameter is used by several Timestream operations; however, the UpdateAccountSettings API operation doesn't recognize any values other than COMPUTE_UNITS.

\n
" + } + }, + "QueryCompute": { + "target": "com.amazonaws.timestreamquery#QueryComputeRequest", + "traits": { + "smithy.api#documentation": "

Modifies the query compute settings configured in your account, including the query pricing model and provisioned Timestream Compute Units (TCUs) in your account.

\n \n

This API is idempotent, meaning that making the same request multiple times will have the same effect as making the request once.

\n
" } } }, @@ -3260,6 +4063,12 @@ "traits": { "smithy.api#documentation": "

The pricing model for an account.

" } + }, + "QueryCompute": { + "target": "com.amazonaws.timestreamquery#QueryComputeResponse", + "traits": { + "smithy.api#documentation": "

Confirms the updated account settings for querying data in your account.

" + } } }, "traits": { diff --git a/aws/sdk/aws-models/timestream-write.json b/aws/sdk/aws-models/timestream-write.json index 72221496311..5ab7fc9efca 100644 --- a/aws/sdk/aws-models/timestream-write.json +++ b/aws/sdk/aws-models/timestream-write.json @@ -2987,6 +2987,56 @@ } ], "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws", + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://timestream-ingest-fips.{Region}.api.aws", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws-us-gov", + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://timestream-ingest.{Region}.api.aws", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, { "conditions": [], "endpoint": { @@ -3116,6 +3166,56 @@ } ], "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws", + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://timestream-ingest.{Region}.api.aws", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + "aws-us-gov", + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "name" + ] + } + ] + } + ], + "endpoint": { + "url": "https://timestream-ingest.{Region}.api.aws", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, { "conditions": [], "endpoint": { @@ -3161,28 +3261,145 @@ "smithy.rules#endpointTests": { "testCases": [ { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://ingest.timestream-fips.us-east-1.api.aws" + "url": "https://ingest.timestream.ap-northeast-1.amazonaws.com" } }, "params": { - "Region": "us-east-1", - "UseFIPS": true, + "Region": "ap-northeast-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-ingest.ap-northeast-1.api.aws" + } + }, + "params": { + "Region": "ap-northeast-1", + "UseFIPS": false, "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://ingest.timestream-fips.us-east-1.amazonaws.com" + "url": "https://ingest.timestream.ap-south-1.amazonaws.com" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-ingest.ap-south-1.api.aws" + } + }, + "params": { + "Region": "ap-south-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ingest.timestream.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-ingest.ap-southeast-2.api.aws" + } + }, + "params": { + "Region": "ap-southeast-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ingest.timestream.eu-central-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-ingest.eu-central-1.api.aws" + } + }, + "params": { + "Region": "eu-central-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ingest.timestream.eu-west-1.amazonaws.com" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-ingest.eu-west-1.api.aws" + } + }, + "params": { + "Region": "eu-west-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ingest.timestream.us-east-1.amazonaws.com" } }, "params": { "Region": "us-east-1", - "UseFIPS": true, + "UseFIPS": false, "UseDualStack": false } }, @@ -3190,7 +3407,7 @@ "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://ingest.timestream.us-east-1.api.aws" + "url": "https://timestream-ingest.us-east-1.api.aws" } }, "params": { @@ -3200,18 +3417,109 @@ } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://ingest.timestream.us-east-1.amazonaws.com" + "url": "https://timestream-ingest-fips.us-east-1.api.aws" } }, "params": { "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ingest.timestream.us-east-2.amazonaws.com" + } + }, + "params": { + "Region": "us-east-2", "UseFIPS": false, "UseDualStack": false } }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-ingest.us-east-2.api.aws" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-ingest-fips.us-east-2.api.aws" + } + }, + "params": { + "Region": "us-east-2", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ingest.timestream.us-west-2.amazonaws.com" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-ingest.us-west-2.api.aws" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-ingest-fips.us-west-2.api.aws" + } + }, + "params": { + "Region": "us-west-2", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ingest.timestream-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, { "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", "expect": { @@ -3290,11 +3598,37 @@ "UseDualStack": false } }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-ingest.us-gov-west-1.api.aws" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-ingest.us-gov-west-1.api.aws" + } + }, + "params": { + "Region": "us-gov-west-1", + "UseFIPS": true, + "UseDualStack": true + } + }, { "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://ingest.timestream-fips.us-gov-east-1.api.aws" + "url": "https://timestream-ingest.us-gov-east-1.api.aws" } }, "params": { @@ -3320,7 +3654,7 @@ "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://ingest.timestream.us-gov-east-1.api.aws" + "url": "https://timestream-ingest.us-gov-east-1.api.aws" } }, "params": { @@ -3342,17 +3676,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -3366,17 +3689,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -3390,17 +3702,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -3414,17 +3715,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { diff --git a/aws/sdk/aws-models/transcribe-streaming.json b/aws/sdk/aws-models/transcribe-streaming.json index aba0f389cca..1a4da25544a 100644 --- a/aws/sdk/aws-models/transcribe-streaming.json +++ b/aws/sdk/aws-models/transcribe-streaming.json @@ -70,7 +70,7 @@ "AudioChunk": { "target": "com.amazonaws.transcribestreaming#AudioChunk", "traits": { - "smithy.api#documentation": "

An audio blob that contains the next part of the audio that you want to transcribe. The\n maximum audio chunk size is 32 KB.

", + "smithy.api#documentation": "

\n An audio blob containing the next segment of audio from your application,\n with a maximum duration of 1 second. \n The maximum size in bytes varies based on audio properties.\n

\n

Find recommended size in Transcribing streaming best practices.\n

\n

\n Size calculation: Duration (s) * Sample Rate (Hz) * Number of Channels * 2 (Bytes per Sample)\n

\n

\n For example, a 1-second chunk of 16 kHz, 2-channel, 16-bit audio would be \n 1 * 16000 * 2 * 2 = 64000 bytes.\n

\n

\n For 8 kHz, 1-channel, 16-bit audio, a 1-second chunk would be \n 1 * 8000 * 1 * 2 = 16000 bytes.\n

", "smithy.api#eventPayload": {} } } @@ -108,7 +108,7 @@ } }, "traits": { - "smithy.api#documentation": "

One or more arguments to the StartStreamTranscription, \n StartMedicalStreamTranscription, or StartCallAnalyticsStreamTranscription \n operation was not valid. For example, MediaEncoding or LanguageCode \n used not valid values. Check the specified parameters and try your request again.

", + "smithy.api#documentation": "

One or more arguments to the StartStreamTranscription, \n StartMedicalStreamTranscription, or StartCallAnalyticsStreamTranscription \n operation was not valid. For example, MediaEncoding or LanguageCode \n used unsupported values. Check the specified parameters and try your request again.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -119,6 +119,16 @@ "smithy.api#default": false } }, + "com.amazonaws.transcribestreaming#BucketName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 64 + }, + "smithy.api#pattern": "^[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9]$" + } + }, "com.amazonaws.transcribestreaming#CallAnalyticsEntity": { "type": "structure", "members": { @@ -285,6 +295,33 @@ } } }, + "com.amazonaws.transcribestreaming#CallAnalyticsLanguageIdentification": { + "type": "list", + "member": { + "target": "com.amazonaws.transcribestreaming#CallAnalyticsLanguageWithScore" + } + }, + "com.amazonaws.transcribestreaming#CallAnalyticsLanguageWithScore": { + "type": "structure", + "members": { + "LanguageCode": { + "target": "com.amazonaws.transcribestreaming#CallAnalyticsLanguageCode", + "traits": { + "smithy.api#documentation": "

The language code of the identified language.

" + } + }, + "Score": { + "target": "com.amazonaws.transcribestreaming#Double", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The confidence score associated with the identified language code. Confidence scores are values between zero and one; larger values indicate a higher confidence in the identified language.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The language code that represents the language identified in your audio, including the associated\n confidence score.

" + } + }, "com.amazonaws.transcribestreaming#CallAnalyticsTranscriptResultStream": { "type": "union", "members": { @@ -317,7 +354,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains detailed information about your Call Analytics streaming session. These details are \n provided in the UtteranceEvent and CategoryEvent objects.

", + "smithy.api#documentation": "

Contains detailed information about your real-time Call Analytics session. These details are \n provided in the UtteranceEvent and CategoryEvent objects.

", "smithy.api#streaming": {} } }, @@ -406,6 +443,82 @@ "smithy.api#documentation": "

Provides the location, using character count, in your transcript where a match is identified. For example, \n the location of an issue or a category match within a segment.

" } }, + "com.amazonaws.transcribestreaming#ClinicalNoteGenerationResult": { + "type": "structure", + "members": { + "ClinicalNoteOutputLocation": { + "target": "com.amazonaws.transcribestreaming#Uri", + "traits": { + "smithy.api#documentation": "

Holds the Amazon S3 URI for the output Clinical Note.

" + } + }, + "TranscriptOutputLocation": { + "target": "com.amazonaws.transcribestreaming#Uri", + "traits": { + "smithy.api#documentation": "

Holds the Amazon S3 URI for the output Transcript.

" + } + }, + "Status": { + "target": "com.amazonaws.transcribestreaming#ClinicalNoteGenerationStatus", + "traits": { + "smithy.api#documentation": "

The status of the clinical note generation.

\n

Possible Values:

\n
    \n
  • \n

    \n IN_PROGRESS\n

    \n
  • \n
  • \n

    \n FAILED\n

    \n
  • \n
  • \n

    \n COMPLETED\n

    \n
  • \n
\n

\n After audio streaming finishes, and you send a MedicalScribeSessionControlEvent event (with END_OF_SESSION as the Type),\n the status is set to IN_PROGRESS.\n If the status is COMPLETED, the analytics completed successfully, and you can find the\n results at the locations specified in ClinicalNoteOutputLocation and TranscriptOutputLocation.\n If the status is FAILED, FailureReason provides details about the failure.\n

" + } + }, + "FailureReason": { + "target": "com.amazonaws.transcribestreaming#String", + "traits": { + "smithy.api#documentation": "

If ClinicalNoteGenerationResult is FAILED, information about why it failed.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The details for clinical note generation,\n including status, and output locations for clinical note and aggregated transcript if the analytics completed,\n or failure reason if the analytics failed.\n

" + } + }, + "com.amazonaws.transcribestreaming#ClinicalNoteGenerationSettings": { + "type": "structure", + "members": { + "OutputBucketName": { + "target": "com.amazonaws.transcribestreaming#BucketName", + "traits": { + "smithy.api#documentation": "

The name of the Amazon S3 bucket where you want the output of Amazon Web Services HealthScribe post-stream analytics stored. Don't include the S3:// prefix of the specified bucket.

\n

HealthScribe outputs transcript and clinical note files under the prefix:\n S3://$output-bucket-name/healthscribe-streaming/session-id/post-stream-analytics/clinical-notes\n

\n

The role ResourceAccessRoleArn specified in the MedicalScribeConfigurationEvent must have\n permission to use the specified location. You can change Amazon S3 permissions using the \n Amazon Web Services Management Console\n . See also Permissions Required for IAM User Roles .

", + "smithy.api#required": {} + } + }, + "NoteTemplate": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeNoteTemplate", + "traits": { + "smithy.api#documentation": "

Specify one of the following templates to use for the clinical note summary. The default is HISTORY_AND_PHYSICAL.

\n
    \n
  • \n

    HISTORY_AND_PHYSICAL: Provides summaries for key sections of the clinical documentation. Examples of sections include Chief Complaint, History of Present Illness, Review of Systems, Past Medical History, Assessment, and Plan.\n

    \n
  • \n
  • \n

    GIRPP: Provides summaries based on the patients progress toward goals. Examples of sections include Goal, Intervention,\n Response, Progress, and Plan.

    \n
  • \n
  • \n

    BIRP: Focuses on the patient's behavioral patterns and responses. Examples of sections include Behavior, Intervention, Response, and Plan.

    \n
  • \n
  • \n

    SIRP: Emphasizes the situational context of therapy. Examples of sections include Situation, Intervention, Response, and Plan.

    \n
  • \n
  • \n

    DAP: Provides a simplified format for clinical documentation. Examples of sections include Data, Assessment, and Plan.

    \n
  • \n
  • \n

    BEHAVIORAL_SOAP: Behavioral health focused documentation format. Examples of sections include Subjective, Objective, Assessment, and Plan.

    \n
  • \n
  • \n

    PHYSICAL_SOAP: Physical health focused documentation format. Examples of sections include Subjective, Objective, Assessment, and Plan.

    \n
  • \n
" + } + } + }, + "traits": { + "smithy.api#documentation": "

The output configuration for aggregated transcript and clinical note generation.

" + } + }, + "com.amazonaws.transcribestreaming#ClinicalNoteGenerationStatus": { + "type": "enum", + "members": { + "IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IN_PROGRESS" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" + } + }, + "COMPLETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLETED" + } + } + } + }, "com.amazonaws.transcribestreaming#Confidence": { "type": "double" }, @@ -421,7 +534,7 @@ "PostCallAnalyticsSettings": { "target": "com.amazonaws.transcribestreaming#PostCallAnalyticsSettings", "traits": { - "smithy.api#documentation": "

Provides additional optional settings for your Call Analytics post-call request, including \n encryption and output locations for your redacted and unredacted transcript.

" + "smithy.api#documentation": "

Provides additional optional settings for your Call Analytics post-call request, including \n encryption and output locations for your redacted transcript.

\n

\n PostCallAnalyticsSettings provides you with the same insights as a \n Call Analytics post-call transcription. Refer to Post-call analytics for more information \n on this feature.

" } } }, @@ -481,6 +594,9 @@ } } }, + "com.amazonaws.transcribestreaming#DateTime": { + "type": "timestamp" + }, "com.amazonaws.transcribestreaming#Double": { "type": "double", "traits": { @@ -494,14 +610,14 @@ "target": "com.amazonaws.transcribestreaming#Double", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The start time, in milliseconds, of the utterance that was identified as PII.

" + "smithy.api#documentation": "

The start time of the utterance that was identified as PII in seconds, with millisecond precision (e.g., 1.056)

" } }, "EndTime": { "target": "com.amazonaws.transcribestreaming#Double", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The end time, in milliseconds, of the utterance that was identified as PII.

" + "smithy.api#documentation": "

The end time of the utterance that was identified as PII in seconds, with millisecond precision (e.g., 1.056)

" } }, "Category": { @@ -539,6 +655,77 @@ "target": "com.amazonaws.transcribestreaming#Entity" } }, + "com.amazonaws.transcribestreaming#GetMedicalScribeStream": { + "type": "operation", + "input": { + "target": "com.amazonaws.transcribestreaming#GetMedicalScribeStreamRequest" + }, + "output": { + "target": "com.amazonaws.transcribestreaming#GetMedicalScribeStreamResponse" + }, + "errors": [ + { + "target": "com.amazonaws.transcribestreaming#BadRequestException" + }, + { + "target": "com.amazonaws.transcribestreaming#InternalFailureException" + }, + { + "target": "com.amazonaws.transcribestreaming#LimitExceededException" + }, + { + "target": "com.amazonaws.transcribestreaming#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "

Provides details about the specified Amazon Web Services HealthScribe streaming session.\n To view the status of the streaming session, check the StreamStatus field in the response. To get the\n details of post-stream analytics, including its status, check the PostStreamAnalyticsResult field in the response.\n

", + "smithy.api#http": { + "method": "GET", + "uri": "/medical-scribe-stream/{SessionId}", + "code": 200 + } + } + }, + "com.amazonaws.transcribestreaming#GetMedicalScribeStreamRequest": { + "type": "structure", + "members": { + "SessionId": { + "target": "com.amazonaws.transcribestreaming#SessionId", + "traits": { + "smithy.api#documentation": "

The identifier of the HealthScribe streaming session you want information about.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.transcribestreaming#GetMedicalScribeStreamResponse": { + "type": "structure", + "members": { + "MedicalScribeStreamDetails": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeStreamDetails", + "traits": { + "smithy.api#documentation": "

Provides details about a HealthScribe streaming session.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.transcribestreaming#IamRoleArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 20, + "max": 2048 + }, + "smithy.api#pattern": "^arn:(aws|aws-cn|aws-us-gov|aws-iso-{0,1}[a-z]{0,1}):iam::[0-9]{0,63}:role/[A-Za-z0-9:_/+=,@.-]{0,1024}$" + } + }, "com.amazonaws.transcribestreaming#Integer": { "type": "integer" }, @@ -582,14 +769,14 @@ "target": "com.amazonaws.transcribestreaming#Double", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The start time, in milliseconds, of the transcribed item.

" + "smithy.api#documentation": "

The start time of the transcribed item in seconds, with millisecond precision (e.g., 1.056)

" } }, "EndTime": { "target": "com.amazonaws.transcribestreaming#Double", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The end time, in milliseconds, of the transcribed item.

" + "smithy.api#documentation": "

The end time of the transcribed item in seconds, with millisecond precision (e.g., 1.056)

" } }, "Type": { @@ -657,6 +844,31 @@ } } }, + "com.amazonaws.transcribestreaming#KMSEncryptionContextMap": { + "type": "map", + "key": { + "target": "com.amazonaws.transcribestreaming#NonEmptyString" + }, + "value": { + "target": "com.amazonaws.transcribestreaming#NonEmptyString" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, + "com.amazonaws.transcribestreaming#KMSKeyId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,2048}$" + } + }, "com.amazonaws.transcribestreaming#LanguageCode": { "type": "enum", "members": { @@ -732,131 +944,371 @@ "smithy.api#enumValue": "zh-CN" } }, - "HI_IN": { + "TH_TH": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "hi-IN" + "smithy.api#enumValue": "th-TH" } }, - "TH_TH": { + "ES_ES": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "th-TH" + "smithy.api#enumValue": "es-ES" } - } - } - }, - "com.amazonaws.transcribestreaming#LanguageIdentification": { - "type": "list", - "member": { - "target": "com.amazonaws.transcribestreaming#LanguageWithScore" - } - }, - "com.amazonaws.transcribestreaming#LanguageOptions": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 200 }, - "smithy.api#pattern": "^[a-zA-Z-,]+$" - } - }, - "com.amazonaws.transcribestreaming#LanguageWithScore": { - "type": "structure", - "members": { - "LanguageCode": { - "target": "com.amazonaws.transcribestreaming#LanguageCode", + "AR_SA": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The language code of the identified language.

" + "smithy.api#enumValue": "ar-SA" } }, - "Score": { - "target": "com.amazonaws.transcribestreaming#Double", + "PT_PT": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

The confidence score associated with the identified language code. Confidence scores are values\n between zero and one; larger values indicate a higher confidence in the identified language.

" + "smithy.api#enumValue": "pt-PT" } - } - }, - "traits": { - "smithy.api#documentation": "

The language code that represents the language identified in your audio, including the associated\n confidence score. If you enabled channel identification in your request and each channel contained a \n different language, you will have more than one LanguageWithScore result.

" - } - }, - "com.amazonaws.transcribestreaming#LimitExceededException": { - "type": "structure", - "members": { - "Message": { - "target": "com.amazonaws.transcribestreaming#String" - } - }, - "traits": { - "smithy.api#documentation": "

Your client has exceeded one of the Amazon Transcribe limits. This is typically the audio length\n limit. Break your audio stream into smaller chunks and try your request again.

", - "smithy.api#error": "client", - "smithy.api#httpError": 429 - } - }, - "com.amazonaws.transcribestreaming#Long": { - "type": "long" - }, - "com.amazonaws.transcribestreaming#MatchedCategoryDetails": { - "type": "map", - "key": { - "target": "com.amazonaws.transcribestreaming#String" - }, - "value": { - "target": "com.amazonaws.transcribestreaming#PointsOfInterest" - } - }, - "com.amazonaws.transcribestreaming#MediaEncoding": { - "type": "enum", - "members": { - "PCM": { + }, + "CA_ES": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "pcm" + "smithy.api#enumValue": "ca-ES" } }, - "OGG_OPUS": { + "AR_AE": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "ogg-opus" + "smithy.api#enumValue": "ar-AE" } }, - "FLAC": { + "HI_IN": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "flac" + "smithy.api#enumValue": "hi-IN" } - } - } - }, - "com.amazonaws.transcribestreaming#MediaSampleRateHertz": { - "type": "integer", - "traits": { - "smithy.api#range": { - "min": 8000, - "max": 48000 - } - } - }, - "com.amazonaws.transcribestreaming#MedicalAlternative": { - "type": "structure", - "members": { - "Transcript": { - "target": "com.amazonaws.transcribestreaming#String", + }, + "ZH_HK": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Contains transcribed text.

" + "smithy.api#enumValue": "zh-HK" } }, - "Items": { - "target": "com.amazonaws.transcribestreaming#MedicalItemList", + "NL_NL": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Contains words, phrases, or punctuation marks in your transcription output.

" + "smithy.api#enumValue": "nl-NL" } }, - "Entities": { - "target": "com.amazonaws.transcribestreaming#MedicalEntityList", + "NO_NO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "no-NO" + } + }, + "SV_SE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "sv-SE" + } + }, + "PL_PL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pl-PL" + } + }, + "FI_FI": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "fi-FI" + } + }, + "ZH_TW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "zh-TW" + } + }, + "EN_IN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "en-IN" + } + }, + "EN_IE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "en-IE" + } + }, + "EN_NZ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "en-NZ" + } + }, + "EN_AB": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "en-AB" + } + }, + "EN_ZA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "en-ZA" + } + }, + "EN_WL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "en-WL" + } + }, + "DE_CH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "de-CH" + } + }, + "AF_ZA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "af-ZA" + } + }, + "EU_ES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "eu-ES" + } + }, + "HR_HR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "hr-HR" + } + }, + "CS_CZ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "cs-CZ" + } + }, + "DA_DK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "da-DK" + } + }, + "FA_IR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "fa-IR" + } + }, + "GL_ES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "gl-ES" + } + }, + "EL_GR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "el-GR" + } + }, + "HE_IL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "he-IL" + } + }, + "ID_ID": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "id-ID" + } + }, + "LV_LV": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "lv-LV" + } + }, + "MS_MY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ms-MY" + } + }, + "RO_RO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ro-RO" + } + }, + "RU_RU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ru-RU" + } + }, + "SR_RS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "sr-RS" + } + }, + "SK_SK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "sk-SK" + } + }, + "SO_SO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "so-SO" + } + }, + "TL_PH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "tl-PH" + } + }, + "UK_UA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "uk-UA" + } + }, + "VI_VN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "vi-VN" + } + }, + "ZU_ZA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "zu-ZA" + } + } + } + }, + "com.amazonaws.transcribestreaming#LanguageIdentification": { + "type": "list", + "member": { + "target": "com.amazonaws.transcribestreaming#LanguageWithScore" + } + }, + "com.amazonaws.transcribestreaming#LanguageOptions": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 200 + }, + "smithy.api#pattern": "^[a-zA-Z-,]+$" + } + }, + "com.amazonaws.transcribestreaming#LanguageWithScore": { + "type": "structure", + "members": { + "LanguageCode": { + "target": "com.amazonaws.transcribestreaming#LanguageCode", + "traits": { + "smithy.api#documentation": "

The language code of the identified language.

" + } + }, + "Score": { + "target": "com.amazonaws.transcribestreaming#Double", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The confidence score associated with the identified language code. Confidence scores are values\n between zero and one; larger values indicate a higher confidence in the identified language.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The language code that represents the language identified in your audio, including the associated\n confidence score. If you enabled channel identification in your request and each channel contained a \n different language, you will have more than one LanguageWithScore result.

" + } + }, + "com.amazonaws.transcribestreaming#LimitExceededException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.transcribestreaming#String" + } + }, + "traits": { + "smithy.api#documentation": "

Your client has exceeded one of the Amazon Transcribe limits. This is typically the audio length\n limit. Break your audio stream into smaller chunks and try your request again.

", + "smithy.api#error": "client", + "smithy.api#httpError": 429 + } + }, + "com.amazonaws.transcribestreaming#Long": { + "type": "long" + }, + "com.amazonaws.transcribestreaming#MatchedCategoryDetails": { + "type": "map", + "key": { + "target": "com.amazonaws.transcribestreaming#String" + }, + "value": { + "target": "com.amazonaws.transcribestreaming#PointsOfInterest" + } + }, + "com.amazonaws.transcribestreaming#MediaEncoding": { + "type": "enum", + "members": { + "PCM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pcm" + } + }, + "OGG_OPUS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ogg-opus" + } + }, + "FLAC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "flac" + } + } + } + }, + "com.amazonaws.transcribestreaming#MediaSampleRateHertz": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 8000, + "max": 48000 + } + } + }, + "com.amazonaws.transcribestreaming#MedicalAlternative": { + "type": "structure", + "members": { + "Transcript": { + "target": "com.amazonaws.transcribestreaming#String", + "traits": { + "smithy.api#documentation": "

Contains transcribed text.

" + } + }, + "Items": { + "target": "com.amazonaws.transcribestreaming#MedicalItemList", + "traits": { + "smithy.api#documentation": "

Contains words, phrases, or punctuation marks in your transcription output.

" + } + }, + "Entities": { + "target": "com.amazonaws.transcribestreaming#MedicalEntityList", "traits": { "smithy.api#documentation": "

Contains entities identified as personal health information (PHI) in your transcription \n output.

" } @@ -890,14 +1342,14 @@ "target": "com.amazonaws.transcribestreaming#Double", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The start time, in milliseconds, of the utterance that was identified as PHI.

" + "smithy.api#documentation": "

The start time, in seconds, of the utterance that was identified as PHI.

" } }, "EndTime": { "target": "com.amazonaws.transcribestreaming#Double", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The end time, in milliseconds, of the utterance that was identified as PHI.

" + "smithy.api#documentation": "

The end time, in seconds, of the utterance that was identified as PHI.

" } }, "Category": { @@ -936,14 +1388,14 @@ "target": "com.amazonaws.transcribestreaming#Double", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The start time, in milliseconds, of the transcribed item.

" + "smithy.api#documentation": "

The start time, in seconds, of the transcribed item.

" } }, "EndTime": { "target": "com.amazonaws.transcribestreaming#Double", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The end time, in milliseconds, of the transcribed item.

" + "smithy.api#documentation": "

The end time, in seconds, of the transcribed item.

" } }, "Type": { @@ -994,14 +1446,14 @@ "target": "com.amazonaws.transcribestreaming#Double", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The start time, in milliseconds, of the Result.

" + "smithy.api#documentation": "

The start time, in seconds, of the Result.

" } }, "EndTime": { "target": "com.amazonaws.transcribestreaming#Double", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The end time, in milliseconds, of the Result.

" + "smithy.api#documentation": "

The end time, in seconds, of the Result.

" } }, "IsPartial": { @@ -1034,21 +1486,697 @@ "target": "com.amazonaws.transcribestreaming#MedicalResult" } }, - "com.amazonaws.transcribestreaming#MedicalTranscript": { + "com.amazonaws.transcribestreaming#MedicalScribeAudioEvent": { "type": "structure", "members": { - "Results": { - "target": "com.amazonaws.transcribestreaming#MedicalResultList", + "AudioChunk": { + "target": "com.amazonaws.transcribestreaming#AudioChunk", "traits": { - "smithy.api#documentation": "

Contains a set of transcription results from one or more audio segments, along with \n additional information per your request parameters. This can include information relating to \n alternative transcriptions, channel identification, partial result stabilization, language \n identification, and other transcription-related data.

" + "smithy.api#documentation": "

\n An audio blob containing the next segment of audio from your application,\n with a maximum duration of 1 second. \n The maximum size in bytes varies based on audio properties.\n

\n

Find recommended size in Transcribing streaming best practices.\n

\n

\n Size calculation: Duration (s) * Sample Rate (Hz) * Number of Channels * 2 (Bytes per Sample)\n

\n

\n For example, a 1-second chunk of 16 kHz, 2-channel, 16-bit audio would be \n 1 * 16000 * 2 * 2 = 64000 bytes.\n

\n

\n For 8 kHz, 1-channel, 16-bit audio, a 1-second chunk would be \n 1 * 8000 * 1 * 2 = 16000 bytes.\n

", + "smithy.api#eventPayload": {}, + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

The MedicalTranscript associated with a \n .

\n

\n MedicalTranscript contains Results, which contains a set of \n transcription results from one or more audio segments, along with additional information per your \n request parameters.

" + "smithy.api#documentation": "

A wrapper for your audio chunks

\n

For more information, see Event stream encoding.\n

" } }, - "com.amazonaws.transcribestreaming#MedicalTranscriptEvent": { + "com.amazonaws.transcribestreaming#MedicalScribeChannelDefinition": { + "type": "structure", + "members": { + "ChannelId": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeChannelId", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

Specify the audio channel you want to define.

", + "smithy.api#required": {} + } + }, + "ParticipantRole": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeParticipantRole", + "traits": { + "smithy.api#documentation": "

Specify the participant that you want to flag.\n The allowed options are CLINICIAN and\n PATIENT.\n

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Makes it possible to specify which speaker is on which channel.\n For example, if the clinician is the first participant to speak, you would set the ChannelId of the first\n ChannelDefinition\n in the list to 0 (to indicate the first channel) and ParticipantRole to\n CLINICIAN\n (to indicate that it's the clinician speaking).\n Then you would set the ChannelId of the second ChannelDefinition in the list to\n 1\n (to indicate the second channel) and ParticipantRole to PATIENT (to indicate that it's the patient speaking).\n

\n

If you don't specify a channel definition, HealthScribe will diarize the transcription and identify speaker roles for each speaker.

" + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeChannelDefinitions": { + "type": "list", + "member": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeChannelDefinition" + }, + "traits": { + "smithy.api#length": { + "min": 2, + "max": 2 + } + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeChannelId": { + "type": "integer", + "traits": { + "smithy.api#default": 0, + "smithy.api#range": { + "min": 0, + "max": 1 + } + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeConfigurationEvent": { + "type": "structure", + "members": { + "VocabularyName": { + "target": "com.amazonaws.transcribestreaming#VocabularyName", + "traits": { + "smithy.api#documentation": "

Specify the name of the custom vocabulary you want to use for your streaming session.\n Custom vocabulary names are case-sensitive.\n

" + } + }, + "VocabularyFilterName": { + "target": "com.amazonaws.transcribestreaming#VocabularyFilterName", + "traits": { + "smithy.api#documentation": "

Specify the name of the custom vocabulary filter you want to include in your streaming session.\n Custom vocabulary filter names are case-sensitive.\n

\n

If you include VocabularyFilterName in the MedicalScribeConfigurationEvent,\n you must also include VocabularyFilterMethod.\n

" + } + }, + "VocabularyFilterMethod": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeVocabularyFilterMethod", + "traits": { + "smithy.api#documentation": "

Specify how you want your custom vocabulary filter applied to the streaming session.

\n

To replace words with ***, specify mask.\n

\n

To delete words, specify remove.\n

\n

To flag words without changing them, specify tag.\n

" + } + }, + "ResourceAccessRoleArn": { + "target": "com.amazonaws.transcribestreaming#IamRoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 output\n bucket you specified, and use your KMS key if supplied. If the role that you specify doesn’t have the\n appropriate permissions, your request fails.

\n

\n IAM\n role ARNs have the format\n arn:partition:iam::account:role/role-name-with-path.\n For example: arn:aws:iam::111122223333:role/Admin.\n

\n

For more information, see Amazon Web Services HealthScribe.

", + "smithy.api#required": {} + } + }, + "ChannelDefinitions": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeChannelDefinitions", + "traits": { + "smithy.api#documentation": "

Specify which speaker is on which audio channel.

" + } + }, + "EncryptionSettings": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeEncryptionSettings", + "traits": { + "smithy.api#documentation": "

Specify the encryption settings for your streaming session.

" + } + }, + "PostStreamAnalyticsSettings": { + "target": "com.amazonaws.transcribestreaming#MedicalScribePostStreamAnalyticsSettings", + "traits": { + "smithy.api#documentation": "

Specify settings for post-stream analytics.

", + "smithy.api#required": {} + } + }, + "MedicalScribeContext": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeContext", + "traits": { + "smithy.api#documentation": "

The MedicalScribeContext object that contains contextual information used to generate\n customized clinical notes.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specify details to configure the streaming session, including channel definitions, encryption settings, post-stream analytics\n settings, resource access role ARN and vocabulary settings.\n

\n

Whether you are starting a new session or resuming an existing session, \n your first event must be a MedicalScribeConfigurationEvent.\n If you are resuming a session, then this event must have the same configurations that you provided to start the session.\n

" + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeContext": { + "type": "structure", + "members": { + "PatientContext": { + "target": "com.amazonaws.transcribestreaming#MedicalScribePatientContext", + "traits": { + "smithy.api#documentation": "

Contains patient-specific information used to customize the clinical note generation.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The MedicalScribeContext object that contains contextual information which is used during clinical note generation\n to add relevant context to the note.

" + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeEncryptionSettings": { + "type": "structure", + "members": { + "KmsEncryptionContext": { + "target": "com.amazonaws.transcribestreaming#KMSEncryptionContextMap", + "traits": { + "smithy.api#documentation": "

A map of plain text, non-secret key:value pairs, known as encryption context pairs, that provide an added layer of\n security for your data. For more information, see KMSencryption context and Asymmetric keys in KMS\n .

" + } + }, + "KmsKeyId": { + "target": "com.amazonaws.transcribestreaming#KMSKeyId", + "traits": { + "smithy.api#documentation": "

The ID of the KMS key you want to use for your streaming session. You\n can specify its KMS key ID, key Amazon Resource Name (ARN), alias name, or alias ARN. When using an alias name, prefix it with \"alias/\". \n To specify a KMS key in a different Amazon Web Services account, you must use the key ARN or alias ARN.

\n

For example:

\n
    \n
  • \n

    Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab

    \n
  • \n
  • \n

    Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

    \n
  • \n
  • \n

    \n Alias name: alias/ExampleAlias

    \n
  • \n
  • \n

    \n Alias ARN: arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias \n

    \n
  • \n
\n

\n To get the key ID and key ARN for a KMS key, use the ListKeys or DescribeKey KMS API operations. \n To get the alias name and alias ARN, use ListKeys API operation. \n

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains encryption related settings to be used for data encryption with Key Management Service, including KmsEncryptionContext and KmsKeyId.\n The KmsKeyId is required, while KmsEncryptionContext is optional for additional layer of security.\n

\n

By default, Amazon Web Services HealthScribe provides encryption at rest to protect sensitive customer data using Amazon S3-managed keys. HealthScribe uses the KMS key you specify as a second layer of\n encryption.

\n

\n Your ResourceAccessRoleArn\n must permission to use your KMS key.\n For more information, see Data Encryption at rest for Amazon Web Services HealthScribe.\n

" + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeInputStream": { + "type": "union", + "members": { + "AudioEvent": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeAudioEvent" + }, + "SessionControlEvent": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeSessionControlEvent", + "traits": { + "smithy.api#documentation": "

Specify the lifecycle of your streaming session, such as ending the session.

" + } + }, + "ConfigurationEvent": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeConfigurationEvent", + "traits": { + "smithy.api#documentation": "

Specify additional streaming session configurations beyond those provided in your initial start request headers. For example, specify\n channel definitions, encryption settings, and post-stream analytics settings.\n

\n

Whether you are starting a new session or resuming an existing session, \n your first event must be a MedicalScribeConfigurationEvent.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An encoded stream of events. The stream is encoded as HTTP/2 data frames.

\n

An input stream consists of the following types of events. The first element of the input stream must be the MedicalScribeConfigurationEvent event type.

\n
    \n
  • \n

    \n MedicalScribeConfigurationEvent\n

    \n
  • \n
  • \n

    \n MedicalScribeAudioEvent\n

    \n
  • \n
  • \n

    \n MedicalScribeSessionControlEvent\n

    \n
  • \n
", + "smithy.api#streaming": {} + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeLanguageCode": { + "type": "enum", + "members": { + "EN_US": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "en-US" + } + } + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeMediaEncoding": { + "type": "enum", + "members": { + "PCM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pcm" + } + }, + "OGG_OPUS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ogg-opus" + } + }, + "FLAC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "flac" + } + } + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeMediaSampleRateHertz": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 16000, + "max": 48000 + } + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeNoteTemplate": { + "type": "enum", + "members": { + "HISTORY_AND_PHYSICAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HISTORY_AND_PHYSICAL" + } + }, + "GIRPP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GIRPP" + } + }, + "DAP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DAP" + } + }, + "SIRP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SIRP" + } + }, + "BIRP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BIRP" + } + }, + "BEHAVIORAL_SOAP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BEHAVIORAL_SOAP" + } + }, + "PHYSICAL_SOAP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PHYSICAL_SOAP" + } + } + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeParticipantRole": { + "type": "enum", + "members": { + "PATIENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PATIENT" + } + }, + "CLINICIAN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CLINICIAN" + } + } + } + }, + "com.amazonaws.transcribestreaming#MedicalScribePatientContext": { + "type": "structure", + "members": { + "Pronouns": { + "target": "com.amazonaws.transcribestreaming#Pronouns", + "traits": { + "smithy.api#documentation": "

The patient's preferred pronouns that the user wants to provide as a context for clinical note generation .

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains patient-specific information.

" + } + }, + "com.amazonaws.transcribestreaming#MedicalScribePostStreamAnalyticsResult": { + "type": "structure", + "members": { + "ClinicalNoteGenerationResult": { + "target": "com.amazonaws.transcribestreaming#ClinicalNoteGenerationResult", + "traits": { + "smithy.api#documentation": "

Provides the Clinical Note Generation result for post-stream analytics.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains details for the result of post-stream analytics.\n

" + } + }, + "com.amazonaws.transcribestreaming#MedicalScribePostStreamAnalyticsSettings": { + "type": "structure", + "members": { + "ClinicalNoteGenerationSettings": { + "target": "com.amazonaws.transcribestreaming#ClinicalNoteGenerationSettings", + "traits": { + "smithy.api#documentation": "

Specify settings for the post-stream clinical note generation.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The settings for post-stream analytics.\n

" + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeResultStream": { + "type": "union", + "members": { + "TranscriptEvent": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeTranscriptEvent", + "traits": { + "smithy.api#documentation": "

The transcript event that contains real-time transcription results.\n

" + } + }, + "BadRequestException": { + "target": "com.amazonaws.transcribestreaming#BadRequestException" + }, + "LimitExceededException": { + "target": "com.amazonaws.transcribestreaming#LimitExceededException" + }, + "InternalFailureException": { + "target": "com.amazonaws.transcribestreaming#InternalFailureException" + }, + "ConflictException": { + "target": "com.amazonaws.transcribestreaming#ConflictException" + }, + "ServiceUnavailableException": { + "target": "com.amazonaws.transcribestreaming#ServiceUnavailableException" + } + }, + "traits": { + "smithy.api#documentation": "

Result stream where you will receive the output events.\n The details are provided in the MedicalScribeTranscriptEvent object.\n

", + "smithy.api#streaming": {} + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeSessionControlEvent": { + "type": "structure", + "members": { + "Type": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeSessionControlEventType", + "traits": { + "smithy.api#documentation": "

The type of MedicalScribeSessionControlEvent.\n

\n

Possible Values:

\n
    \n
  • \n

    \n END_OF_SESSION - Indicates the audio streaming is complete. After you\n send an END_OF_SESSION event, Amazon Web Services HealthScribe starts the post-stream analytics.\n The session can't be resumed after this event is sent. After Amazon Web Services HealthScribe processes the event, the real-time StreamStatus is COMPLETED.\n You get the StreamStatus and other stream details with the GetMedicalScribeStream API operation.\n For more information about different streaming statuses, see the StreamStatus description in the MedicalScribeStreamDetails. \n

    \n
  • \n
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Specify the lifecycle of your streaming session.

" + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeSessionControlEventType": { + "type": "enum", + "members": { + "END_OF_SESSION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "END_OF_SESSION" + } + } + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeStreamDetails": { + "type": "structure", + "members": { + "SessionId": { + "target": "com.amazonaws.transcribestreaming#SessionId", + "traits": { + "smithy.api#documentation": "

The identifier of the HealthScribe streaming session.

" + } + }, + "StreamCreatedAt": { + "target": "com.amazonaws.transcribestreaming#DateTime", + "traits": { + "smithy.api#documentation": "

The date and time when the HealthScribe streaming session was created.

" + } + }, + "StreamEndedAt": { + "target": "com.amazonaws.transcribestreaming#DateTime", + "traits": { + "smithy.api#documentation": "

The date and time when the HealthScribe streaming session was ended.

" + } + }, + "LanguageCode": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeLanguageCode", + "traits": { + "smithy.api#documentation": "

The Language Code of the HealthScribe streaming session.

" + } + }, + "MediaSampleRateHertz": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeMediaSampleRateHertz", + "traits": { + "smithy.api#documentation": "

The sample rate (in hertz) of the HealthScribe streaming session.

" + } + }, + "MediaEncoding": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeMediaEncoding", + "traits": { + "smithy.api#documentation": "

The Media Encoding of the HealthScribe streaming session.

" + } + }, + "VocabularyName": { + "target": "com.amazonaws.transcribestreaming#VocabularyName", + "traits": { + "smithy.api#documentation": "

The vocabulary name of the HealthScribe streaming session.

" + } + }, + "VocabularyFilterName": { + "target": "com.amazonaws.transcribestreaming#VocabularyFilterName", + "traits": { + "smithy.api#documentation": "

The name of the vocabulary filter used for the HealthScribe streaming session .

" + } + }, + "VocabularyFilterMethod": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeVocabularyFilterMethod", + "traits": { + "smithy.api#documentation": "

The method of the vocabulary filter for the HealthScribe streaming session.

" + } + }, + "ResourceAccessRoleArn": { + "target": "com.amazonaws.transcribestreaming#IamRoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the role used in the HealthScribe streaming session.

" + } + }, + "ChannelDefinitions": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeChannelDefinitions", + "traits": { + "smithy.api#documentation": "

The Channel Definitions of the HealthScribe streaming session.

" + } + }, + "EncryptionSettings": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeEncryptionSettings", + "traits": { + "smithy.api#documentation": "

The Encryption Settings of the HealthScribe streaming session.

" + } + }, + "StreamStatus": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeStreamStatus", + "traits": { + "smithy.api#documentation": "

The streaming status of the HealthScribe streaming session.

\n

Possible Values:

\n
    \n
  • \n

    \n IN_PROGRESS\n

    \n
  • \n
  • \n

    \n PAUSED\n

    \n
  • \n
  • \n

    \n FAILED\n

    \n
  • \n
  • \n

    \n COMPLETED\n

    \n
  • \n
\n \n

This status is specific to real-time streaming.\n A COMPLETED status doesn't mean that the post-stream analytics is complete.\n To get status of an analytics result, check the Status field for the analytics result within the\n MedicalScribePostStreamAnalyticsResult. For example, you can view the status of the \n ClinicalNoteGenerationResult.\n

\n
" + } + }, + "PostStreamAnalyticsSettings": { + "target": "com.amazonaws.transcribestreaming#MedicalScribePostStreamAnalyticsSettings", + "traits": { + "smithy.api#documentation": "

The post-stream analytics settings of the HealthScribe streaming session.

" + } + }, + "PostStreamAnalyticsResult": { + "target": "com.amazonaws.transcribestreaming#MedicalScribePostStreamAnalyticsResult", + "traits": { + "smithy.api#documentation": "

The result of post-stream analytics for the HealthScribe streaming session.

" + } + }, + "MedicalScribeContextProvided": { + "target": "com.amazonaws.transcribestreaming#NullableBoolean", + "traits": { + "smithy.api#documentation": "

Indicates whether the MedicalScribeContext object was provided when the stream was started.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains details about a Amazon Web Services HealthScribe streaming session.

" + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeStreamStatus": { + "type": "enum", + "members": { + "IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IN_PROGRESS" + } + }, + "PAUSED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PAUSED" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" + } + }, + "COMPLETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLETED" + } + } + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeTranscriptEvent": { + "type": "structure", + "members": { + "TranscriptSegment": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeTranscriptSegment", + "traits": { + "smithy.api#documentation": "

The TranscriptSegment associated with a MedicalScribeTranscriptEvent.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The event associated with MedicalScribeResultStream.\n

\n

Contains MedicalScribeTranscriptSegment, which contains segment related information.\n

" + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeTranscriptItem": { + "type": "structure", + "members": { + "BeginAudioTime": { + "target": "com.amazonaws.transcribestreaming#Double", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The start time, in milliseconds, of the transcribed item.

" + } + }, + "EndAudioTime": { + "target": "com.amazonaws.transcribestreaming#Double", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The end time, in milliseconds, of the transcribed item.

" + } + }, + "Type": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeTranscriptItemType", + "traits": { + "smithy.api#documentation": "

The type of item identified. Options are: PRONUNCIATION (spoken words)\n and PUNCTUATION.\n

" + } + }, + "Confidence": { + "target": "com.amazonaws.transcribestreaming#Confidence", + "traits": { + "smithy.api#documentation": "

The confidence score associated with a word or phrase in your transcript.

\n

Confidence scores are values between 0 and 1. A larger value indicates a higher\n probability that the identified item correctly matches the item spoken in your media.\n

" + } + }, + "Content": { + "target": "com.amazonaws.transcribestreaming#String", + "traits": { + "smithy.api#documentation": "

The word, phrase or punctuation mark that was transcribed.

" + } + }, + "VocabularyFilterMatch": { + "target": "com.amazonaws.transcribestreaming#NullableBoolean", + "traits": { + "smithy.api#documentation": "

Indicates whether the specified item matches a word in the vocabulary filter included in\n your configuration event. If true, there is a vocabulary filter match.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A word, phrase, or punctuation mark in your transcription output, along with various associated\n attributes, such as confidence score, type, and start and end times.\n

" + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeTranscriptItemList": { + "type": "list", + "member": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeTranscriptItem" + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeTranscriptItemType": { + "type": "enum", + "members": { + "PRONUNCIATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "pronunciation" + } + }, + "PUNCTUATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "punctuation" + } + } + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeTranscriptSegment": { + "type": "structure", + "members": { + "SegmentId": { + "target": "com.amazonaws.transcribestreaming#String", + "traits": { + "smithy.api#documentation": "

The identifier of the segment.

" + } + }, + "BeginAudioTime": { + "target": "com.amazonaws.transcribestreaming#Double", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The start time, in milliseconds, of the segment.

" + } + }, + "EndAudioTime": { + "target": "com.amazonaws.transcribestreaming#Double", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The end time, in milliseconds, of the segment.

" + } + }, + "Content": { + "target": "com.amazonaws.transcribestreaming#String", + "traits": { + "smithy.api#documentation": "

Contains transcribed text of the segment.

" + } + }, + "Items": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeTranscriptItemList", + "traits": { + "smithy.api#documentation": "

Contains words, phrases, or punctuation marks in your segment.

" + } + }, + "IsPartial": { + "target": "com.amazonaws.transcribestreaming#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Indicates if the segment is complete.

\n

If IsPartial is true, the segment is not complete.\n If IsPartial is false, the segment is complete.\n

" + } + }, + "ChannelId": { + "target": "com.amazonaws.transcribestreaming#String", + "traits": { + "smithy.api#documentation": "

Indicates which audio channel is associated with the MedicalScribeTranscriptSegment.\n

\n

If MedicalScribeChannelDefinition is not provided in the MedicalScribeConfigurationEvent,\n then this field will not be included.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains a set of transcription results, along with additional information of the segment.

" + } + }, + "com.amazonaws.transcribestreaming#MedicalScribeVocabularyFilterMethod": { + "type": "enum", + "members": { + "REMOVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "remove" + } + }, + "MASK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "mask" + } + }, + "TAG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "tag" + } + } + } + }, + "com.amazonaws.transcribestreaming#MedicalTranscript": { + "type": "structure", + "members": { + "Results": { + "target": "com.amazonaws.transcribestreaming#MedicalResultList", + "traits": { + "smithy.api#documentation": "

Contains a set of transcription results from one or more audio segments, along with \n additional information per your request parameters. This can include information relating to \n alternative transcriptions, channel identification, partial result stabilization, language \n identification, and other transcription-related data.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The MedicalTranscript associated with a \n .

\n

\n MedicalTranscript contains Results, which contains a set of \n transcription results from one or more audio segments, along with additional information per your \n request parameters.

" + } + }, + "com.amazonaws.transcribestreaming#MedicalTranscriptEvent": { "type": "structure", "members": { "Transcript": { @@ -1102,6 +2230,19 @@ "smithy.api#pattern": "^[0-9a-zA-Z._-]+$" } }, + "com.amazonaws.transcribestreaming#NonEmptyString": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2000 + }, + "smithy.api#pattern": "\\S" + } + }, + "com.amazonaws.transcribestreaming#NullableBoolean": { + "type": "boolean" + }, "com.amazonaws.transcribestreaming#NumberOfChannels": { "type": "integer", "traits": { @@ -1200,17 +2341,56 @@ "OutputEncryptionKMSKeyId": { "target": "com.amazonaws.transcribestreaming#String", "traits": { - "smithy.api#documentation": "

The KMS key you want to use to encrypt your Call Analytics post-call\n output.

\n

If using a key located in the current\n Amazon Web Services account, you can specify your KMS key in one of four\n ways:

\n
    \n
  1. \n

    Use the KMS key ID itself. For example,\n 1234abcd-12ab-34cd-56ef-1234567890ab.

    \n
  2. \n
  3. \n

    Use an alias for the KMS key ID. For example,\n alias/ExampleAlias.

    \n
  4. \n
  5. \n

    Use the Amazon Resource Name (ARN) for the KMS key ID. For\n example,\n arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

    \n
  6. \n
  7. \n

    Use the ARN for the KMS key alias. For example,\n arn:aws:kms:region:account-ID:alias/ExampleAlias.

    \n
  8. \n
\n

If using a key located in a different\n Amazon Web Services account than the current Amazon Web Services account, you can specify\n your KMS key in one of two ways:

\n
    \n
  1. \n

    Use the ARN for the KMS key ID. For example,\n arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

    \n
  2. \n
  3. \n

    Use the ARN for the KMS key alias. For example,\n arn:aws:kms:region:account-ID:alias/ExampleAlias.

    \n
  4. \n
\n

Note that the user making the request must\n have permission to use the specified KMS key.

" + "smithy.api#documentation": "

The KMS key you want to use to encrypt your Call Analytics post-call\n output.

\n

If using a key located in the current\n Amazon Web Services account, you can specify your KMS key in one of four\n ways:

\n
    \n
  1. \n

    Use the KMS key ID itself. For example,\n 1234abcd-12ab-34cd-56ef-1234567890ab.

    \n
  2. \n
  3. \n

    Use an alias for the KMS key ID. For example,\n alias/ExampleAlias.

    \n
  4. \n
  5. \n

    Use the Amazon Resource Name (ARN) for the KMS key ID. For\n example,\n arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

    \n
  6. \n
  7. \n

    Use the ARN for the KMS key alias. For example,\n arn:aws:kms:region:account-ID:alias/ExampleAlias.

    \n
  8. \n
\n

If using a key located in a different\n Amazon Web Services account than the current Amazon Web Services account, you can specify\n your KMS key in one of two ways:

\n
    \n
  1. \n

    Use the ARN for the KMS key ID. For example,\n arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

    \n
  2. \n
  3. \n

    Use the ARN for the KMS key alias. For example,\n arn:aws:kms:region:account-ID:alias/ExampleAlias.

    \n
  4. \n
\n

Note that the role making the \n request must have permission to use the specified KMS key.

" } } }, "traits": { - "smithy.api#documentation": "

Allows you to specify additional settings for your streaming Call Analytics \n post-call request, including output locations for your redacted and unredacted \n transcript, which IAM role to use, and, optionally, which encryption key to \n use.

\n

\n ContentRedactionOutput, DataAccessRoleArn, and\n OutputLocation are required fields.

" + "smithy.api#documentation": "

Allows you to specify additional settings for your Call Analytics post-call request, \n including output locations for your redacted transcript, which IAM role to use, \n and which encryption key to use.

\n

\n DataAccessRoleArn and OutputLocation are required \n fields.

\n

\n PostCallAnalyticsSettings provides you with the same insights as a \n Call Analytics post-call transcription. Refer to Post-call analytics for more information \n on this feature.

" + } + }, + "com.amazonaws.transcribestreaming#Pronouns": { + "type": "enum", + "members": { + "HE_HIM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HE_HIM" + } + }, + "SHE_HER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SHE_HER" + } + }, + "THEY_THEM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "THEY_THEM" + } + } + }, + "traits": { + "smithy.api#sensitive": {} } }, "com.amazonaws.transcribestreaming#RequestId": { "type": "string" }, + "com.amazonaws.transcribestreaming#ResourceNotFoundException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.transcribestreaming#String" + } + }, + "traits": { + "smithy.api#documentation": "

The request references a resource which doesn't exist.

", + "smithy.api#error": "client", + "smithy.api#httpError": 404 + } + }, "com.amazonaws.transcribestreaming#Result": { "type": "structure", "members": { @@ -1224,14 +2404,14 @@ "target": "com.amazonaws.transcribestreaming#Double", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The start time, in milliseconds, of the Result.

" + "smithy.api#documentation": "

The start time of the Result in seconds, with millisecond precision (e.g., 1.056).

" } }, "EndTime": { "target": "com.amazonaws.transcribestreaming#Double", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The end time, in milliseconds, of the Result.

" + "smithy.api#documentation": "

The end time of the Result in seconds, with millisecond precision (e.g., 1.056).

" } }, "IsPartial": { @@ -1398,7 +2578,7 @@ } ], "traits": { - "smithy.api#documentation": "

Starts a bidirectional HTTP/2 or WebSocket stream where audio is streamed to \n Amazon Transcribe and the transcription results are streamed to your application. Use this operation\n for Call Analytics transcriptions.

\n

The following parameters are required:

\n
    \n
  • \n

    \n language-code\n

    \n
  • \n
  • \n

    \n media-encoding\n

    \n
  • \n
  • \n

    \n sample-rate\n

    \n
  • \n
\n

For more information on streaming with Amazon Transcribe, see Transcribing streaming audio.

", + "smithy.api#documentation": "

Starts a bidirectional HTTP/2 or WebSocket stream where audio is streamed to \n Amazon Transcribe and the transcription results are streamed to your application. Use this operation\n for Call Analytics transcriptions.

\n

The following parameters are required:

\n
    \n
  • \n

    \n language-code or identify-language\n

    \n
  • \n
  • \n

    \n media-encoding\n

    \n
  • \n
  • \n

    \n sample-rate\n

    \n
  • \n
\n

For more information on streaming with Amazon Transcribe, see Transcribing streaming audio.

", "smithy.api#http": { "method": "POST", "uri": "/call-analytics-stream-transcription", @@ -1412,9 +2592,8 @@ "LanguageCode": { "target": "com.amazonaws.transcribestreaming#CallAnalyticsLanguageCode", "traits": { - "smithy.api#documentation": "

Specify the language code that represents the language spoken in your audio.

\n

If you're unsure of the language spoken in your audio, consider using \n IdentifyLanguage to enable automatic language identification.

\n

For a list of languages supported with streaming Call Analytics, refer to the \n Supported \n languages table.

", - "smithy.api#httpHeader": "x-amzn-transcribe-language-code", - "smithy.api#required": {} + "smithy.api#documentation": "

Specify the language code that represents the language spoken in your audio.

\n

For a list of languages supported with real-time Call Analytics, refer to the \n Supported \n languages table.

", + "smithy.api#httpHeader": "x-amzn-transcribe-language-code" } }, "MediaSampleRateHertz": { @@ -1443,13 +2622,14 @@ "SessionId": { "target": "com.amazonaws.transcribestreaming#SessionId", "traits": { - "smithy.api#documentation": "

Specify a name for your Call Analytics transcription session. If you don't include this parameter\n in your request, Amazon Transcribe generates an ID and returns it in the response.

\n

You can use a session ID to retry a streaming session.

", + "smithy.api#documentation": "

Specify a name for your Call Analytics transcription session. If you don't include this parameter\n in your request, Amazon Transcribe generates an ID and returns it in the response.

", "smithy.api#httpHeader": "x-amzn-transcribe-session-id" } }, "AudioStream": { "target": "com.amazonaws.transcribestreaming#AudioStream", "traits": { + "smithy.api#documentation": "

An encoded stream of audio blobs. Audio streams are encoded as either HTTP/2 or WebSocket \n data frames.

\n

For more information, see Transcribing streaming audio.

", "smithy.api#httpPayload": {}, "smithy.api#required": {} } @@ -1475,6 +2655,42 @@ "smithy.api#httpHeader": "x-amzn-transcribe-language-model-name" } }, + "IdentifyLanguage": { + "target": "com.amazonaws.transcribestreaming#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Enables automatic language identification for your Call Analytics transcription.

\n

If you include IdentifyLanguage, you must include a list of\n language codes, using LanguageOptions, that you think may be present in \n your audio stream. You must provide a minimum of two language selections.

\n

You can also include a preferred language using PreferredLanguage. Adding a \n preferred language can help Amazon Transcribe identify the language faster than if you omit this \n parameter.

\n

Note that you must include either LanguageCode or \n IdentifyLanguage in your request. If you include both parameters, your transcription job\n fails.

", + "smithy.api#httpHeader": "x-amzn-transcribe-identify-language" + } + }, + "LanguageOptions": { + "target": "com.amazonaws.transcribestreaming#LanguageOptions", + "traits": { + "smithy.api#documentation": "

Specify two or more language codes that represent the languages you think may be present \n in your media.

\n

Including language options can improve the accuracy of language identification.

\n

If you include LanguageOptions in your request, you must also include \n IdentifyLanguage.

\n

For a list of languages supported with Call Analytics streaming, refer to the \n Supported \n languages table.

\n \n

You can only include one language dialect per language per stream. For example, you\n cannot include en-US and en-AU in the same request.

\n
", + "smithy.api#httpHeader": "x-amzn-transcribe-language-options" + } + }, + "PreferredLanguage": { + "target": "com.amazonaws.transcribestreaming#CallAnalyticsLanguageCode", + "traits": { + "smithy.api#documentation": "

Specify a preferred language from the subset of languages codes you specified in \n LanguageOptions.

\n

You can only use this parameter if you've included IdentifyLanguage and\n LanguageOptions in your request.

", + "smithy.api#httpHeader": "x-amzn-transcribe-preferred-language" + } + }, + "VocabularyNames": { + "target": "com.amazonaws.transcribestreaming#VocabularyNames", + "traits": { + "smithy.api#documentation": "

Specify the names of the custom vocabularies that you want to use when processing your\n Call Analytics transcription. Note that vocabulary names are case sensitive.

\n

If the custom vocabulary's language doesn't match the identified media language, it won't be applied to the transcription.

\n \n

This parameter is only intended for use with the\n IdentifyLanguage parameter. If you're not\n including IdentifyLanguage in your request and want to use a custom vocabulary\n with your transcription, use the VocabularyName parameter instead.

\n
\n

For more information, see Custom vocabularies.

", + "smithy.api#httpHeader": "x-amzn-transcribe-vocabulary-names" + } + }, + "VocabularyFilterNames": { + "target": "com.amazonaws.transcribestreaming#VocabularyFilterNames", + "traits": { + "smithy.api#documentation": "

Specify the names of the custom vocabulary filters that you want to use when processing\n your Call Analytics transcription. Note that vocabulary filter names are case sensitive.

\n

These filters serve to customize the transcript output.

\n \n

This parameter is only intended for use with \n the IdentifyLanguage parameter. If you're not \n including IdentifyLanguage in your request and want to use a custom vocabulary filter \n with your transcription, use the VocabularyFilterName parameter instead.

\n
\n

For more information, see Using vocabulary filtering with unwanted \n words.

", + "smithy.api#httpHeader": "x-amzn-transcribe-vocabulary-filter-names" + } + }, "EnablePartialResultsStabilization": { "target": "com.amazonaws.transcribestreaming#Boolean", "traits": { @@ -1493,21 +2709,21 @@ "ContentIdentificationType": { "target": "com.amazonaws.transcribestreaming#ContentIdentificationType", "traits": { - "smithy.api#documentation": "

Labels all personally identifiable information (PII) identified in your transcript.

\n

Content identification is performed at the segment level; PII specified in \n PiiEntityTypes is flagged upon complete transcription of an audio segment.

\n

You can’t set ContentIdentificationType and ContentRedactionType\n in the same request. If you set both, your request returns a\n BadRequestException.

\n

For more information, see Redacting or identifying personally identifiable\n information.

", + "smithy.api#documentation": "

Labels all personally identifiable information (PII) identified in your transcript.

\n

Content identification is performed at the segment level; PII specified in \n PiiEntityTypes is flagged upon complete transcription of an audio segment. If you don't\n include PiiEntityTypes in your request, all PII is identified.

\n

You can’t set ContentIdentificationType and ContentRedactionType\n in the same request. If you set both, your request returns a\n BadRequestException.

\n

For more information, see Redacting or identifying personally identifiable\n information.

", "smithy.api#httpHeader": "x-amzn-transcribe-content-identification-type" } }, "ContentRedactionType": { "target": "com.amazonaws.transcribestreaming#ContentRedactionType", "traits": { - "smithy.api#documentation": "

Redacts all personally identifiable information (PII) identified in your transcript.

\n

Content redaction is performed at the segment level; PII specified in \n PiiEntityTypes is redacted upon complete transcription of an audio segment.

\n

You can’t set ContentRedactionType and ContentIdentificationType\n in the same request. If you set both, your request returns a\n BadRequestException.

\n

For more information, see Redacting or identifying personally identifiable\n information.

", + "smithy.api#documentation": "

Redacts all personally identifiable information (PII) identified in your transcript.

\n

Content redaction is performed at the segment level; PII specified in \n PiiEntityTypes is redacted upon complete transcription of an audio segment. If you don't\n include PiiEntityTypes in your request, all PII is redacted.

\n

You can’t set ContentRedactionType and ContentIdentificationType\n in the same request. If you set both, your request returns a BadRequestException.

\n

For more information, see Redacting or identifying personally identifiable\n information.

", "smithy.api#httpHeader": "x-amzn-transcribe-content-redaction-type" } }, "PiiEntityTypes": { "target": "com.amazonaws.transcribestreaming#PiiEntityTypes", "traits": { - "smithy.api#documentation": "

Specify which types of personally identifiable information (PII) you want to redact in your \n transcript. You can include as many types as you'd like, or you can select \n ALL.

\n

To include PiiEntityTypes in your Call Analytics request, you must also include \n either ContentIdentificationType or ContentRedactionType.

\n

Values must be comma-separated and can include:\n BANK_ACCOUNT_NUMBER, BANK_ROUTING,\n CREDIT_DEBIT_NUMBER, CREDIT_DEBIT_CVV, \n CREDIT_DEBIT_EXPIRY, PIN, EMAIL, \n ADDRESS, NAME, PHONE, \n SSN, or ALL.

", + "smithy.api#documentation": "

Specify which types of personally identifiable information (PII) you want to redact in your \n transcript. You can include as many types as you'd like, or you can select \n ALL.

\n

Values must be comma-separated and can include: ADDRESS, \n BANK_ACCOUNT_NUMBER, BANK_ROUTING,\n CREDIT_DEBIT_CVV, CREDIT_DEBIT_EXPIRY,\n CREDIT_DEBIT_NUMBER, EMAIL, \n NAME, PHONE, PIN, \n SSN, or ALL.

\n

Note that if you include PiiEntityTypes in your request, you must also include \n ContentIdentificationType or ContentRedactionType.

\n

If you include ContentRedactionType or \n ContentIdentificationType in your request, but do not include \n PiiEntityTypes, all PII is redacted or identified.

", "smithy.api#httpHeader": "x-amzn-transcribe-pii-entity-types" } } @@ -1522,7 +2738,7 @@ "RequestId": { "target": "com.amazonaws.transcribestreaming#RequestId", "traits": { - "smithy.api#documentation": "

Provides the identifier for your Call Analytics streaming request.

", + "smithy.api#documentation": "

Provides the identifier for your real-time Call Analytics request.

", "smithy.api#httpHeader": "x-amzn-request-id" } }, @@ -1564,7 +2780,7 @@ "CallAnalyticsTranscriptResultStream": { "target": "com.amazonaws.transcribestreaming#CallAnalyticsTranscriptResultStream", "traits": { - "smithy.api#documentation": "

Provides detailed information about your Call Analytics streaming session.

", + "smithy.api#documentation": "

Provides detailed information about your real-time Call Analytics session.

", "smithy.api#httpPayload": {} } }, @@ -1589,6 +2805,42 @@ "smithy.api#httpHeader": "x-amzn-transcribe-language-model-name" } }, + "IdentifyLanguage": { + "target": "com.amazonaws.transcribestreaming#Boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Shows whether automatic language identification was enabled for your Call Analytics transcription.

", + "smithy.api#httpHeader": "x-amzn-transcribe-identify-language" + } + }, + "LanguageOptions": { + "target": "com.amazonaws.transcribestreaming#LanguageOptions", + "traits": { + "smithy.api#documentation": "

Provides the language codes that you specified in your Call Analytics request.

", + "smithy.api#httpHeader": "x-amzn-transcribe-language-options" + } + }, + "PreferredLanguage": { + "target": "com.amazonaws.transcribestreaming#CallAnalyticsLanguageCode", + "traits": { + "smithy.api#documentation": "

Provides the preferred language that you specified in your Call Analytics request.

", + "smithy.api#httpHeader": "x-amzn-transcribe-preferred-language" + } + }, + "VocabularyNames": { + "target": "com.amazonaws.transcribestreaming#VocabularyNames", + "traits": { + "smithy.api#documentation": "

Provides the names of the custom vocabularies that you specified in your Call Analytics request.

", + "smithy.api#httpHeader": "x-amzn-transcribe-vocabulary-names" + } + }, + "VocabularyFilterNames": { + "target": "com.amazonaws.transcribestreaming#VocabularyFilterNames", + "traits": { + "smithy.api#documentation": "

Provides the names of the custom vocabulary filters that you specified in your Call Analytics request.

", + "smithy.api#httpHeader": "x-amzn-transcribe-vocabulary-filter-names" + } + }, "EnablePartialResultsStabilization": { "target": "com.amazonaws.transcribestreaming#Boolean", "traits": { @@ -1630,6 +2882,137 @@ "smithy.api#output": {} } }, + "com.amazonaws.transcribestreaming#StartMedicalScribeStream": { + "type": "operation", + "input": { + "target": "com.amazonaws.transcribestreaming#StartMedicalScribeStreamRequest" + }, + "output": { + "target": "com.amazonaws.transcribestreaming#StartMedicalScribeStreamResponse" + }, + "errors": [ + { + "target": "com.amazonaws.transcribestreaming#BadRequestException" + }, + { + "target": "com.amazonaws.transcribestreaming#ConflictException" + }, + { + "target": "com.amazonaws.transcribestreaming#InternalFailureException" + }, + { + "target": "com.amazonaws.transcribestreaming#LimitExceededException" + }, + { + "target": "com.amazonaws.transcribestreaming#ServiceUnavailableException" + } + ], + "traits": { + "smithy.api#documentation": "

Starts a bidirectional HTTP/2 stream, where audio is streamed to\n Amazon Web Services HealthScribe\n and the transcription results are streamed to your application.

\n

When you start a stream, you first specify the stream configuration in a MedicalScribeConfigurationEvent. \n This event includes channel definitions, encryption settings, medical scribe context, and post-stream analytics settings, such as the output configuration for aggregated transcript and clinical note generation. These are additional\n streaming session configurations beyond those provided in your initial start request headers. Whether you are starting a new session or resuming an existing session, \n your first event must be a MedicalScribeConfigurationEvent.

\n

\n After you send a MedicalScribeConfigurationEvent, you start AudioEvents and Amazon Web Services HealthScribe \n responds with real-time transcription results. When you are finished, to start processing the results with the post-stream analytics, send a MedicalScribeSessionControlEvent with a Type of \n END_OF_SESSION and Amazon Web Services HealthScribe starts the analytics.\n

\n

You can pause or resume streaming.\n To pause streaming, complete the input stream without sending the\n MedicalScribeSessionControlEvent.\n To resume streaming, call the StartMedicalScribeStream and specify the same SessionId you used to start the stream.\n

\n

The following parameters are required:

\n
    \n
  • \n

    \n language-code\n

    \n
  • \n
  • \n

    \n media-encoding\n

    \n
  • \n
  • \n

    \n media-sample-rate-hertz\n

    \n
  • \n
\n

\n

For more information on streaming with\n Amazon Web Services HealthScribe,\n see Amazon Web Services HealthScribe.\n

", + "smithy.api#http": { + "method": "POST", + "uri": "/medical-scribe-stream", + "code": 200 + } + } + }, + "com.amazonaws.transcribestreaming#StartMedicalScribeStreamRequest": { + "type": "structure", + "members": { + "SessionId": { + "target": "com.amazonaws.transcribestreaming#SessionId", + "traits": { + "smithy.api#documentation": "

Specify an identifier for your streaming session (in UUID format).\n If you don't include a SessionId in your request,\n Amazon Web Services HealthScribe generates an ID and returns it in the response.\n

", + "smithy.api#httpHeader": "x-amzn-transcribe-session-id" + } + }, + "LanguageCode": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeLanguageCode", + "traits": { + "smithy.api#documentation": "

Specify the language code for your HealthScribe streaming session.

", + "smithy.api#httpHeader": "x-amzn-transcribe-language-code", + "smithy.api#required": {} + } + }, + "MediaSampleRateHertz": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeMediaSampleRateHertz", + "traits": { + "smithy.api#documentation": "

Specify the sample rate of the input audio (in hertz).\n Amazon Web Services HealthScribe supports a range from 16,000 Hz to 48,000 Hz.\n The sample rate you specify must match that of your audio.\n

", + "smithy.api#httpHeader": "x-amzn-transcribe-sample-rate", + "smithy.api#required": {} + } + }, + "MediaEncoding": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeMediaEncoding", + "traits": { + "smithy.api#documentation": "

Specify the encoding used for the input audio.

\n

Supported formats are:

\n
    \n
  • \n

    FLAC

    \n
  • \n
  • \n

    OPUS-encoded audio in an Ogg container

    \n
  • \n
  • \n

    PCM (only signed 16-bit little-endian audio formats, which does not include\n WAV)\n

    \n
  • \n
\n

For more information, see Media\n formats.\n

", + "smithy.api#httpHeader": "x-amzn-transcribe-media-encoding", + "smithy.api#required": {} + } + }, + "InputStream": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeInputStream", + "traits": { + "smithy.api#documentation": "

Specify the input stream where you will send events in real time.

\n

The first element of the input stream must be a MedicalScribeConfigurationEvent.\n

", + "smithy.api#httpPayload": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.transcribestreaming#StartMedicalScribeStreamResponse": { + "type": "structure", + "members": { + "SessionId": { + "target": "com.amazonaws.transcribestreaming#SessionId", + "traits": { + "smithy.api#documentation": "

The identifier (in UUID format) for your streaming session.

\n

If you already started streaming, this is same ID as the one you specified in your initial StartMedicalScribeStreamRequest.\n

", + "smithy.api#httpHeader": "x-amzn-transcribe-session-id" + } + }, + "RequestId": { + "target": "com.amazonaws.transcribestreaming#RequestId", + "traits": { + "smithy.api#documentation": "

The unique identifier for your streaming request.\n

", + "smithy.api#httpHeader": "x-amzn-request-id" + } + }, + "LanguageCode": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeLanguageCode", + "traits": { + "smithy.api#documentation": "

The Language Code that you specified in your request.\n Same as provided in the StartMedicalScribeStreamRequest.\n

", + "smithy.api#httpHeader": "x-amzn-transcribe-language-code" + } + }, + "MediaSampleRateHertz": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeMediaSampleRateHertz", + "traits": { + "smithy.api#documentation": "

The sample rate (in hertz) that you specified in your request.\n Same as provided in the\n StartMedicalScribeStreamRequest\n

", + "smithy.api#httpHeader": "x-amzn-transcribe-sample-rate" + } + }, + "MediaEncoding": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeMediaEncoding", + "traits": { + "smithy.api#documentation": "

The Media Encoding you specified in your request.\n Same as provided in the\n StartMedicalScribeStreamRequest\n

", + "smithy.api#httpHeader": "x-amzn-transcribe-media-encoding" + } + }, + "ResultStream": { + "target": "com.amazonaws.transcribestreaming#MedicalScribeResultStream", + "traits": { + "smithy.api#documentation": "

The result stream where you will receive the output events.\n

", + "smithy.api#httpPayload": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.transcribestreaming#StartMedicalStreamTranscription": { "type": "operation", "input": { @@ -1725,7 +3108,7 @@ "SessionId": { "target": "com.amazonaws.transcribestreaming#SessionId", "traits": { - "smithy.api#documentation": "

Specify a name for your transcription session. If you don't include this parameter in \n your request, Amazon Transcribe Medical generates an ID and returns it in the\n response.

\n

You can use a session ID to retry a streaming session.

", + "smithy.api#documentation": "

Specify a name for your transcription session. If you don't include this parameter in \n your request, Amazon Transcribe Medical generates an ID and returns it in the\n response.

", "smithy.api#httpHeader": "x-amzn-transcribe-session-id" } }, @@ -1740,14 +3123,14 @@ "target": "com.amazonaws.transcribestreaming#Boolean", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Enables channel identification in multi-channel audio.

\n

Channel identification transcribes the audio on each channel independently, then appends\n the output for each channel into one transcript.

\n

If you have multi-channel audio and do not enable channel identification, your audio is \n transcribed in a continuous manner and your transcript is not separated by channel.

\n

For more information, see Transcribing multi-channel audio.

", + "smithy.api#documentation": "

Enables channel identification in multi-channel audio.

\n

Channel identification transcribes the audio on each channel independently, then appends\n the output for each channel into one transcript.

\n

If you have multi-channel audio and do not enable channel identification, your audio is \n transcribed in a continuous manner and your transcript is not separated by channel.

\n

If you include EnableChannelIdentification in your request, you must also \n include NumberOfChannels.

\n

For more information, see Transcribing multi-channel audio.

", "smithy.api#httpHeader": "x-amzn-transcribe-enable-channel-identification" } }, "NumberOfChannels": { "target": "com.amazonaws.transcribestreaming#NumberOfChannels", "traits": { - "smithy.api#documentation": "

Specify the number of channels in your audio stream. Up to two channels are\n supported.

", + "smithy.api#documentation": "

Specify the number of channels in your audio stream. This value must be \n 2, as only two channels are supported. If your audio doesn't contain \n multiple channels, do not include this parameter in your request.

\n

If you include NumberOfChannels in your request, you must also \n include EnableChannelIdentification.

", "smithy.api#httpHeader": "x-amzn-transcribe-number-of-channels" } }, @@ -1934,7 +3317,7 @@ "SessionId": { "target": "com.amazonaws.transcribestreaming#SessionId", "traits": { - "smithy.api#documentation": "

Specify a name for your transcription session. If you don't include this parameter in your request, \n Amazon Transcribe generates an ID and returns it in the response.

\n

You can use a session ID to retry a streaming session.

", + "smithy.api#documentation": "

Specify a name for your transcription session. If you don't include this parameter in your request, \n Amazon Transcribe generates an ID and returns it in the response.

", "smithy.api#httpHeader": "x-amzn-transcribe-session-id" } }, @@ -1972,14 +3355,14 @@ "target": "com.amazonaws.transcribestreaming#Boolean", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Enables channel identification in multi-channel audio.

\n

Channel identification transcribes the audio on each channel independently, then appends the \n output for each channel into one transcript.

\n

If you have multi-channel audio and do not enable channel identification, your audio is \n transcribed in a continuous manner and your transcript is not separated by channel.

\n

For more information, see Transcribing multi-channel audio.

", + "smithy.api#documentation": "

Enables channel identification in multi-channel audio.

\n

Channel identification transcribes the audio on each channel independently, then appends the \n output for each channel into one transcript.

\n

If you have multi-channel audio and do not enable channel identification, your audio is \n transcribed in a continuous manner and your transcript is not separated by channel.

\n

If you include EnableChannelIdentification in your request, you must also \n include NumberOfChannels.

\n

For more information, see Transcribing multi-channel audio.

", "smithy.api#httpHeader": "x-amzn-transcribe-enable-channel-identification" } }, "NumberOfChannels": { "target": "com.amazonaws.transcribestreaming#NumberOfChannels", "traits": { - "smithy.api#documentation": "

Specify the number of channels in your audio stream. Up to two channels are\n supported.

", + "smithy.api#documentation": "

Specify the number of channels in your audio stream. This value must be \n 2, as only two channels are supported. If your audio doesn't contain \n multiple channels, do not include this parameter in your request.

\n

If you include NumberOfChannels in your request, you must also \n include EnableChannelIdentification.

", "smithy.api#httpHeader": "x-amzn-transcribe-number-of-channels" } }, @@ -2001,21 +3384,21 @@ "ContentIdentificationType": { "target": "com.amazonaws.transcribestreaming#ContentIdentificationType", "traits": { - "smithy.api#documentation": "

Labels all personally identifiable information (PII) identified in your transcript.

\n

Content identification is performed at the segment level; PII specified in \n PiiEntityTypes is flagged upon complete transcription of an audio segment.

\n

You can’t set ContentIdentificationType and ContentRedactionType\n in the same request. If you set both, your request returns a\n BadRequestException.

\n

For more information, see Redacting or identifying personally identifiable\n information.

", + "smithy.api#documentation": "

Labels all personally identifiable information (PII) identified in your transcript.

\n

Content identification is performed at the segment level; PII specified in \n PiiEntityTypes is flagged upon complete transcription of an audio segment. If you don't\n include PiiEntityTypes in your request, all PII is identified.

\n

You can’t set ContentIdentificationType and ContentRedactionType\n in the same request. If you set both, your request returns a\n BadRequestException.

\n

For more information, see Redacting or identifying personally identifiable\n information.

", "smithy.api#httpHeader": "x-amzn-transcribe-content-identification-type" } }, "ContentRedactionType": { "target": "com.amazonaws.transcribestreaming#ContentRedactionType", "traits": { - "smithy.api#documentation": "

Redacts all personally identifiable information (PII) identified in your transcript.

\n

Content redaction is performed at the segment level; PII specified in \n PiiEntityTypes is redacted upon complete transcription of an audio segment.

\n

You can’t set ContentRedactionType and ContentIdentificationType\n in the same request. If you set both, your request returns a\n BadRequestException.

\n

For more information, see Redacting or identifying personally identifiable\n information.

", + "smithy.api#documentation": "

Redacts all personally identifiable information (PII) identified in your transcript.

\n

Content redaction is performed at the segment level; PII specified in \n PiiEntityTypes is redacted upon complete transcription of an audio segment. If you don't\n include PiiEntityTypes in your request, all PII is redacted.

\n

You can’t set ContentRedactionType and ContentIdentificationType\n in the same request. If you set both, your request returns a BadRequestException.

\n

For more information, see Redacting or identifying personally identifiable\n information.

", "smithy.api#httpHeader": "x-amzn-transcribe-content-redaction-type" } }, "PiiEntityTypes": { "target": "com.amazonaws.transcribestreaming#PiiEntityTypes", "traits": { - "smithy.api#documentation": "

Specify which types of personally identifiable information (PII) you want to redact in your \n transcript. You can include as many types as you'd like, or you can select \n ALL.

\n

To include PiiEntityTypes in your request, you must also include either \n ContentIdentificationType or ContentRedactionType.

\n

Values must be comma-separated and can include:\n BANK_ACCOUNT_NUMBER, BANK_ROUTING,\n CREDIT_DEBIT_NUMBER, CREDIT_DEBIT_CVV, \n CREDIT_DEBIT_EXPIRY, PIN, EMAIL, \n ADDRESS, NAME, PHONE, \n SSN, or ALL.

", + "smithy.api#documentation": "

Specify which types of personally identifiable information (PII) you want to redact in your \n transcript. You can include as many types as you'd like, or you can select \n ALL.

\n

Values must be comma-separated and can include: ADDRESS, \n BANK_ACCOUNT_NUMBER, BANK_ROUTING,\n CREDIT_DEBIT_CVV, CREDIT_DEBIT_EXPIRY,\n CREDIT_DEBIT_NUMBER, EMAIL, \n NAME, PHONE, PIN, \n SSN, or ALL.

\n

Note that if you include PiiEntityTypes in your request, you must also include \n ContentIdentificationType or ContentRedactionType.

\n

If you include ContentRedactionType or \n ContentIdentificationType in your request, but do not include \n PiiEntityTypes, all PII is redacted or identified.

", "smithy.api#httpHeader": "x-amzn-transcribe-pii-entity-types" } }, @@ -2030,14 +3413,14 @@ "target": "com.amazonaws.transcribestreaming#Boolean", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Enables automatic language identification for your transcription.

\n

If you include IdentifyLanguage, you can optionally include a list of \n language codes, using LanguageOptions, that you think may be present in \n your audio stream. Including language options can improve transcription accuracy.

\n

You can also include a preferred language using PreferredLanguage. Adding a \n preferred language can help Amazon Transcribe identify the language faster than if you omit this \n parameter.

\n

If you have multi-channel audio that contains different languages on each channel, and you've \n enabled channel identification, automatic language identification identifies the dominant language on \n each audio channel.

\n

Note that you must include either LanguageCode or \n IdentifyLanguage or IdentifyMultipleLanguages in your request. If you include more than one of these parameters, your transcription job\n fails.

\n

Streaming language identification can't be combined with custom language models or \n redaction.

", + "smithy.api#documentation": "

Enables automatic language identification for your transcription.

\n

If you include IdentifyLanguage, you must include a list of\n language codes, using LanguageOptions, that you think may be present in \n your audio stream.

\n

You can also include a preferred language using PreferredLanguage. Adding a \n preferred language can help Amazon Transcribe identify the language faster than if you omit this \n parameter.

\n

If you have multi-channel audio that contains different languages on each channel, and you've \n enabled channel identification, automatic language identification identifies the dominant language on \n each audio channel.

\n

Note that you must include either LanguageCode or \n IdentifyLanguage or IdentifyMultipleLanguages in your request. If you include more than one of these parameters, your transcription job\n fails.

\n

Streaming language identification can't be combined with custom language models or \n redaction.

", "smithy.api#httpHeader": "x-amzn-transcribe-identify-language" } }, "LanguageOptions": { "target": "com.amazonaws.transcribestreaming#LanguageOptions", "traits": { - "smithy.api#documentation": "

Specify two or more language codes that represent the languages you think may be present \n in your media; including more than five is not recommended. If you're unsure what languages are present, do\n not include this parameter.

\n

Including language options can improve the accuracy of language identification.

\n

If you include LanguageOptions in your request, you must also include \n IdentifyLanguage.

\n

For a list of languages supported with Amazon Transcribe streaming, refer to the \n Supported \n languages table.

\n \n

You can only include one language dialect per language per stream. For example, you\n cannot include en-US and en-AU in the same request.

\n
", + "smithy.api#documentation": "

Specify two or more language codes that represent the languages you think may be present \n in your media; including more than five is not recommended.

\n

Including language options can improve the accuracy of language identification.

\n

If you include LanguageOptions in your request, you must also include \n IdentifyLanguage or IdentifyMultipleLanguages.

\n

For a list of languages supported with Amazon Transcribe streaming, refer to the \n Supported \n languages table.

\n \n

You can only include one language dialect per language per stream. For example, you\n cannot include en-US and en-AU in the same request.

\n
", "smithy.api#httpHeader": "x-amzn-transcribe-language-options" } }, @@ -2052,7 +3435,7 @@ "target": "com.amazonaws.transcribestreaming#Boolean", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Enables automatic multi-language identification in your transcription job request. Use this parameter if your stream contains more than one language. If your stream contains only one language, use IdentifyLanguage instead.

\n

If you include IdentifyMultipleLanguages, you can optionally include a list of language codes, using LanguageOptions, that you think may be present in your stream. Including LanguageOptions restricts IdentifyMultipleLanguages to only the language options that you specify, which can improve transcription accuracy.

\n

If you want to apply a custom vocabulary or a custom vocabulary filter to your automatic multiple language identification request, include VocabularyNames or VocabularyFilterNames.

\n

Note that you must include one of LanguageCode, IdentifyLanguage, or IdentifyMultipleLanguages in your request. If you include more than one of these parameters, your transcription job fails.

", + "smithy.api#documentation": "

Enables automatic multi-language identification in your transcription job request. Use this parameter if your stream contains more than one language. If your stream contains only one language, use IdentifyLanguage instead.

\n

If you include IdentifyMultipleLanguages, you must include a list of language codes, using LanguageOptions, that you think may be present in your stream.

\n

If you want to apply a custom vocabulary or a custom vocabulary filter to your automatic multiple language identification request, include VocabularyNames or VocabularyFilterNames.

\n

Note that you must include one of LanguageCode, IdentifyLanguage, or IdentifyMultipleLanguages in your request. If you include more than one of these parameters, your transcription job fails.

", "smithy.api#httpHeader": "x-amzn-transcribe-identify-multiple-languages" } }, @@ -2153,7 +3536,7 @@ "target": "com.amazonaws.transcribestreaming#Boolean", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Shows whether channel identification was enabled for your transcription.

", + "smithy.api#documentation": "

Shows whether channel identification was enabled for your transcription.

", "smithy.api#httpHeader": "x-amzn-transcribe-enable-channel-identification" } }, @@ -2295,9 +3678,15 @@ "type": "service", "version": "2017-10-26", "operations": [ + { + "target": "com.amazonaws.transcribestreaming#GetMedicalScribeStream" + }, { "target": "com.amazonaws.transcribestreaming#StartCallAnalyticsStreamTranscription" }, + { + "target": "com.amazonaws.transcribestreaming#StartMedicalScribeStream" + }, { "target": "com.amazonaws.transcribestreaming#StartMedicalStreamTranscription" }, @@ -2325,7 +3714,7 @@ "h2" ] }, - "smithy.api#documentation": "

Amazon Transcribe streaming offers three main types of real-time transcription: \n Standard, Medical, and \n Call Analytics.

\n
    \n
  • \n

    \n Standard transcriptions are the most common option. Refer\n to for details.

    \n
  • \n
  • \n

    \n Medical transcriptions are tailored to medical professionals \n and incorporate medical terms. A common use case for this service is transcribing doctor-patient \n dialogue in real time, so doctors can focus on their patient instead of taking notes. Refer to\n for details.

    \n
  • \n
  • \n

    \n Call Analytics transcriptions are designed for use with call\n center audio on two different channels; if you're looking for insight into customer service calls, use this \n option. Refer to for details.

    \n
  • \n
", + "smithy.api#documentation": "

Amazon Transcribe streaming offers four main types of real-time transcription:\n Standard, Medical,\n Call Analytics,\n and Health Scribe.

\n
    \n
  • \n

    \n Standard transcriptions are the most common option. Refer\n to for details.

    \n
  • \n
  • \n

    \n Medical transcriptions are tailored to medical professionals \n and incorporate medical terms. A common use case for this service is transcribing doctor-patient \n dialogue in real time, so doctors can focus on their patient instead of taking notes. Refer to\n for details.

    \n
  • \n
  • \n

    \n Call Analytics transcriptions are designed for use with call\n center audio on two different channels; if you're looking for insight into customer service calls, use this \n option. Refer to for details.

    \n
  • \n
  • \n

    \n HealthScribe transcriptions are designed to\n automatically create clinical notes from patient-clinician conversations using generative AI.\n Refer to [here] for details.

    \n
  • \n
", "smithy.api#title": "Amazon Transcribe Streaming Service", "smithy.rules#endpointRuleSet": { "version": "1.0", @@ -2968,17 +4357,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -2992,28 +4370,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-iso-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, - { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", - "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": true, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { @@ -3027,17 +4383,6 @@ "UseDualStack": false } }, - { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } - }, { "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", "expect": { @@ -3203,6 +4548,16 @@ } } }, + "com.amazonaws.transcribestreaming#Uri": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2000 + }, + "smithy.api#pattern": "^(s3://|http(s*)://).+$" + } + }, "com.amazonaws.transcribestreaming#UtteranceEvent": { "type": "structure", "members": { @@ -3266,6 +4621,18 @@ "traits": { "smithy.api#documentation": "

Provides the issue that was detected in the specified segment.

" } + }, + "LanguageCode": { + "target": "com.amazonaws.transcribestreaming#CallAnalyticsLanguageCode", + "traits": { + "smithy.api#documentation": "

The language code that represents the language spoken in your audio stream.

" + } + }, + "LanguageIdentification": { + "target": "com.amazonaws.transcribestreaming#CallAnalyticsLanguageIdentification", + "traits": { + "smithy.api#documentation": "

The language code of the dominant language identified in your stream.

" + } } }, "traits": { From 5cfb217a1839266a7d61c9a830af81fe96eb65bd Mon Sep 17 00:00:00 2001 From: ysaito1001 Date: Thu, 2 Oct 2025 11:55:44 -0500 Subject: [PATCH 2/5] Bump Smithy to 1.62 --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index b1632e20b81..bfa514e4f81 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -3,7 +3,7 @@ kotlin-version = "2.1.0" ktlint-version = "1.0.1" # codegen -smithy-version = "1.61.0" +smithy-version = "1.62.0" smithy-gradle-plugin-version = "1.3.0" # publishing From 8bf6933afadd6a3f4fe6ef7c3ca6a7e8dbcc1389 Mon Sep 17 00:00:00 2001 From: ysaito1001 Date: Thu, 2 Oct 2025 13:59:02 -0500 Subject: [PATCH 3/5] Remove unicode substring tests deleted upstream --- .../smithy/endpoint-tests/substring.smithy | 20 ------------------- 1 file changed, 20 deletions(-) diff --git a/codegen-client/src/test/resources/META-INF/smithy/endpoint-tests/substring.smithy b/codegen-client/src/test/resources/META-INF/smithy/endpoint-tests/substring.smithy index 42d93b922d4..ff7578da2bc 100644 --- a/codegen-client/src/test/resources/META-INF/smithy/endpoint-tests/substring.smithy +++ b/codegen-client/src/test/resources/META-INF/smithy/endpoint-tests/substring.smithy @@ -154,26 +154,6 @@ use smithy.rules#endpointTests "error": "No tests matched" } }, - { - "documentation": "unicode characters always return `None`", - "params": { - "TestCaseId": "1", - "Input": "abcdef\uD83D\uDC31" - }, - "expect": { - "error": "No tests matched" - } - }, - { - "documentation": "non-ascii cause substring to always return `None`", - "params": { - "TestCaseId": "1", - "Input": "abcdef\u0080" - }, - "expect": { - "error": "No tests matched" - } - }, { "documentation": "the full set of ascii is supported, including non-printable characters", "params": { From 5cde707c88ba8a41551fa0662da3578d749477a8 Mon Sep 17 00:00:00 2001 From: ysaito1001 Date: Thu, 2 Oct 2025 13:59:24 -0500 Subject: [PATCH 4/5] Bump codegen version --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 65c02d4a32f..0904cd7f966 100644 --- a/gradle.properties +++ b/gradle.properties @@ -18,4 +18,4 @@ allowLocalDeps=false isTestingEnabled=true # codegen publication version -codegenVersion=0.1.1 +codegenVersion=0.1.2 From 767d5cd1b572488f959d502b8bc4177a9320dc33 Mon Sep 17 00:00:00 2001 From: ysaito1001 Date: Thu, 2 Oct 2025 14:26:13 -0500 Subject: [PATCH 5/5] Allow `clippy::deprecated_semver` --- .../core/smithy/customizations/AllowLintsCustomization.kt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/codegen-core/src/main/kotlin/software/amazon/smithy/rust/codegen/core/smithy/customizations/AllowLintsCustomization.kt b/codegen-core/src/main/kotlin/software/amazon/smithy/rust/codegen/core/smithy/customizations/AllowLintsCustomization.kt index e87e15ef334..bb851ab7022 100644 --- a/codegen-core/src/main/kotlin/software/amazon/smithy/rust/codegen/core/smithy/customizations/AllowLintsCustomization.kt +++ b/codegen-core/src/main/kotlin/software/amazon/smithy/rust/codegen/core/smithy/customizations/AllowLintsCustomization.kt @@ -47,6 +47,8 @@ private val allowedClippyLints = "result_large_err", // Difficult to avoid in generated code "unnecessary_map_on_constructor", + // Service models can specify a date, such as 2024-01-08, as the "since" date for deprecation. + "deprecated_semver", ) private val allowedRustdocLints =